summaryrefslogtreecommitdiff
path: root/testsuite/tests/ghc-regress
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/tests/ghc-regress')
-rw-r--r--testsuite/tests/ghc-regress/KNOWN_FAILURES50
-rw-r--r--testsuite/tests/ghc-regress/Makefile18
-rw-r--r--testsuite/tests/ghc-regress/NOTES34
-rw-r--r--testsuite/tests/ghc-regress/annotations/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_compile/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_compile/all.T25
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_compile/ann01.hs38
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_compile/ann01.stderr0
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/Annfail04_Help.hs4
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/Annfail05_Help.hs3
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/Annfail06_Help.hs3
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/all.T34
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail01.hs5
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail01.stderr4
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail02.hs7
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail02.stderr4
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail03.hs18
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail03.stderr7
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail04.hs15
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail04.stderr7
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail05.hs12
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail05.stderr8
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail06.hs22
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail06.stderr7
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail07.hs10
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail07.stderr6
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail08.hs10
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail08.stderr16
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail09.hs12
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail09.stderr7
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail10.hs10
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail10.stderr9
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail11.hs4
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail11.stderr4
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail12.hs6
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail12.stderr8
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail13.hs6
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_fail/annfail13.stderr2
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_run/Annrun01_Help.hs27
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_run/Makefile12
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_run/all.T31
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_run/annrun01.hs49
-rw-r--r--testsuite/tests/ghc-regress/annotations/should_run/annrun01.stdout13
-rw-r--r--testsuite/tests/ghc-regress/arityanal/Main.hs303
-rw-r--r--testsuite/tests/ghc-regress/arityanal/Main.stderr1874
-rw-r--r--testsuite/tests/ghc-regress/arityanal/Makefile0
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f0.hs6
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f0.stderr12
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f1.hs10
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f1.stderr20
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f10.hs8
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f10.stderr27
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f11.hs10
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f11.stderr45
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f12.hs5
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f12.stderr8
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f13.hs8
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f13.stderr17
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f14.hs5
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f14.stderr26
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f15.hs5
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f15.stderr14
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f2.hs7
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f2.stderr18
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f3.hs8
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f3.stderr15
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f4.hs7
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f4.stderr22
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f5.hs7
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f5.stderr47
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f6.hs5
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f6.stderr16
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f7.hs5
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f7.stderr14
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f8.hs5
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f8.stderr20
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f9.hs4
-rw-r--r--testsuite/tests/ghc-regress/arityanal/f9.stderr15
-rw-r--r--testsuite/tests/ghc-regress/arityanal/prim.hs7
-rw-r--r--testsuite/tests/ghc-regress/arityanal/prim.stderr15
-rw-r--r--testsuite/tests/ghc-regress/array/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/all.T25
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr001.hs9
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr002.hs23
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr002.stdout3
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr003.hs16
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr003.stderr1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr003.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr004.hs15
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr004.stderr1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr004.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr005.hs16
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr005.stdout1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr006.hs11
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr006.stdout1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr007.hs11
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr007.stderr1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr007.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr008.hs14
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr008.stderr1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr008.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr008.stdout1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr008.stdout-hugs2
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr009.hs17
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr009.stdout2
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr010.hs18
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr010.stdout1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr011.hs20
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr011.stdout2
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr012.hs19
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr012.stdout3
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr013.hs17
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr013.stdout1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr014.hs26
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr014.stdout0
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr015.hs50
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr015.stdout5
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr016.hs511
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr016.stdout8
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr017.hs30
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr017.stdout1
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr018.hs16
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr018.stdout2
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr019.hs27
-rw-r--r--testsuite/tests/ghc-regress/array/should_run/arr019.stdout14
-rw-r--r--testsuite/tests/ghc-regress/arrows/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/T3964.hs10
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/T5283.hs20
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/all.T18
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/arrowapply1.hs8
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/arrowapply2.hs11
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/arrowapply3.hs8
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/arrowapply4.hs17
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/arrowapply5.hs13
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/arrowcase1.hs18
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/arrowdo1.hs17
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/arrowdo2.hs10
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/arrowdo3.hs222
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/arrowform1.hs30
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/arrowif1.hs11
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/arrowlet1.hs8
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/arrowpat.hs23
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_compile/arrowrec1.hs13
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_fail/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_fail/T2111.hs10
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_fail/T2111.stderr13
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_fail/T2111.stderr-ghc-7.010
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_fail/all.T7
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_fail/arrowfail001.hs21
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_fail/arrowfail001.stderr9
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_fail/arrowfail002.hs7
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_fail/arrowfail002.stderr2
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_fail/arrowfail003.hs9
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_fail/arrowfail003.stderr14
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_fail/arrowfail004.hs12
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_fail/arrowfail004.stderr7
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_run/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_run/T3822.hs17
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_run/T3822.stdout2
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_run/all.T8
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_run/arrowrun001.hs48
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_run/arrowrun001.stdout2
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_run/arrowrun002.hs225
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_run/arrowrun002.stdout4
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_run/arrowrun003.hs133
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_run/arrowrun003.stdout6
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_run/arrowrun004.hs128
-rw-r--r--testsuite/tests/ghc-regress/arrows/should_run/arrowrun004.stdout2
-rw-r--r--testsuite/tests/ghc-regress/boxy/Base1.hs30
-rw-r--r--testsuite/tests/ghc-regress/boxy/Church1.hs28
-rw-r--r--testsuite/tests/ghc-regress/boxy/Church2.hs27
-rw-r--r--testsuite/tests/ghc-regress/boxy/Church2.stderr12
-rw-r--r--testsuite/tests/ghc-regress/boxy/Compose.hs26
-rw-r--r--testsuite/tests/ghc-regress/boxy/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/boxy/PList1.hs26
-rw-r--r--testsuite/tests/ghc-regress/boxy/PList2.hs27
-rw-r--r--testsuite/tests/ghc-regress/boxy/SystemF.hs21
-rw-r--r--testsuite/tests/ghc-regress/boxy/T2193.hs13
-rw-r--r--testsuite/tests/ghc-regress/boxy/T2193.stdout1
-rw-r--r--testsuite/tests/ghc-regress/boxy/all.T11
-rw-r--r--testsuite/tests/ghc-regress/boxy/boxy.hs124
-rw-r--r--testsuite/tests/ghc-regress/cabal/1750.stderr5
-rw-r--r--testsuite/tests/ghc-regress/cabal/1750.stdout4
-rw-r--r--testsuite/tests/ghc-regress/cabal/1750A.pkg4
-rw-r--r--testsuite/tests/ghc-regress/cabal/1750B.pkg4
-rw-r--r--testsuite/tests/ghc-regress/cabal/Makefile184
-rw-r--r--testsuite/tests/ghc-regress/cabal/all.T61
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal01/A.hs4
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal01/B/A.hs4
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal01/B/MainB.hs5
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal01/MainA.hs5
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal01/Makefile41
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal01/Setup.lhs2
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal01/all.T16
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal01/c_src/hello.c1
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal01/cabal01.stdout12
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal01/cabal01.stdout-i386-unknown-mingw3212
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal01/hello.c1
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal01/test.cabal16
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal02/Makefile33
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal02/P1/A.hs3
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal02/P1/P1.cabal4
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal02/P2/A.hs3
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal02/P2/P2.cabal4
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal02/Q/B.hs5
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal02/Q/Q.cabal4
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal02/R/Main.hs4
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal02/R/R.cabal6
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal02/all.T8
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal03/Makefile41
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal03/Setup.lhs2
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal03/all.T9
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal03/p/P.hs3
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal03/p/p.cabal5
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal03/q/q.cabal5
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal03/r/r.cabal5
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal04/Library.hs6
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal04/Makefile23
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal04/Setup.lhs2
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal04/TH.hs6
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal04/all.T21
-rw-r--r--testsuite/tests/ghc-regress/cabal/cabal04/thtest.cabal11
-rw-r--r--testsuite/tests/ghc-regress/cabal/ghcpkg01.stderr2
-rw-r--r--testsuite/tests/ghc-regress/cabal/ghcpkg01.stdout223
-rw-r--r--testsuite/tests/ghc-regress/cabal/ghcpkg03.stderr31
-rw-r--r--testsuite/tests/ghc-regress/cabal/ghcpkg03.stderr-i386-unknown-mingw3231
-rw-r--r--testsuite/tests/ghc-regress/cabal/ghcpkg03.stdout5
-rw-r--r--testsuite/tests/ghc-regress/cabal/ghcpkg04.hs1
-rw-r--r--testsuite/tests/ghc-regress/cabal/ghcpkg04.stderr4
-rw-r--r--testsuite/tests/ghc-regress/cabal/ghcpkg05.stderr18
-rw-r--r--testsuite/tests/ghc-regress/cabal/ghcpkg05.stderr-i386-unknown-mingw3218
-rw-r--r--testsuite/tests/ghc-regress/cabal/ghcpkg05.stdout6
-rw-r--r--testsuite/tests/ghc-regress/cabal/ghcpkg06.stderr2
-rw-r--r--testsuite/tests/ghc-regress/cabal/ghcpkg06.stdout2
-rw-r--r--testsuite/tests/ghc-regress/cabal/pkg01.hs3
-rw-r--r--testsuite/tests/ghc-regress/cabal/pkg01.stderr0
-rw-r--r--testsuite/tests/ghc-regress/cabal/pkg02/A.hs5
-rw-r--r--testsuite/tests/ghc-regress/cabal/pkg02/Foreign.hs2
-rw-r--r--testsuite/tests/ghc-regress/cabal/pkg02/Makefile4
-rw-r--r--testsuite/tests/ghc-regress/cabal/pkg02/all.T10
-rw-r--r--testsuite/tests/ghc-regress/cabal/pkg02/pkg02.stderr0
-rw-r--r--testsuite/tests/ghc-regress/cabal/shadow.stderr4
-rw-r--r--testsuite/tests/ghc-regress/cabal/shadow.stdout10
-rw-r--r--testsuite/tests/ghc-regress/cabal/shadow1.pkg4
-rw-r--r--testsuite/tests/ghc-regress/cabal/shadow2.pkg4
-rw-r--r--testsuite/tests/ghc-regress/cabal/shadow3.pkg4
-rw-r--r--testsuite/tests/ghc-regress/cabal/test.pkg19
-rw-r--r--testsuite/tests/ghc-regress/cabal/test2.pkg19
-rw-r--r--testsuite/tests/ghc-regress/cabal/test3.pkg19
-rw-r--r--testsuite/tests/ghc-regress/cabal/test4.pkg19
-rw-r--r--testsuite/tests/ghc-regress/cabal/test5.pkg18
-rw-r--r--testsuite/tests/ghc-regress/cabal/testdup.pkg5
-rw-r--r--testsuite/tests/ghc-regress/codeGen/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/1916.hs3
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/2388.hs14
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/2578.hs17
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/3132.hs6
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/3579.hs7
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/Makefile7
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/T3286.hs45
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/T3286b.hs15
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/all.T19
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/cg001.hs15
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/cg002.hs5
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/cg003.hs7
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/cg004.hs30
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/cg005.hs20
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/cg006.hs8
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/cg007.hs26
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/cg008.hs21
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/jmp_tbl.hs128
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_compile/massive_array.hs520
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/1852.hs19
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/1852.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/1861.hs9
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/1861.stdout3
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/2080.hs25
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/2080.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/2838.hs9
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/2838.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/2838.stdout-ws-641
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/3207.hs29
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/3207.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/3561.hs10
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/3561.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/3677.hs15
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/3677.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/4441.hs20
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/4441.stdout2
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/5129.hs21
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/5149.hs8
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/5149.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/5149_cmm.cmm29
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/Cgrun067A.hs16
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/Makefile4
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/all.T89
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun001.hs6
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun002.hs12
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun003.hs11
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun003.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun004.hs1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun004.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun005.hs6
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun005.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun006.hs6
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun006.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun007.hs14
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun007.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun008.hs12
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun008.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun009.hs7
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun009.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun010.hs5
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun010.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun011.hs29
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun011.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun012.hs39
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun012.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun013.hs78
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun013.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun014.hs3
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun014.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun015.hs31
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun015.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun016.hs9
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun016.stderr1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun016.stdout0
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun017.hs33
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun017.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun018.hs25
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun018.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun019.hs3
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun019.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun020.hs3
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun020.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun021.hs60
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun021.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun022.hs10
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun022.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun023.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun024.hs8
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun024.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun025.hs23
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun025.stderr28
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun025.stdout0
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun026.hs250
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun026.stdout12
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun027.hs13
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun027.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun028.hs10
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun028.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun031.hs45
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun031.stdout2
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun032.hs22
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun032.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun033.hs79
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun033.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun034.hs161
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun034.stdout12
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun035.hs15
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun035.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun036.hs16
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun036.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun037.hs6
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun037.stdoutbin13 -> 0 bytes
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun038.hs13
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun038.stdout0
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun039.hs14
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun039.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun040.hs16
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun040.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun043.hs18
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun043.stdout0
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun044.hs195
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun044.stdout264
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun045.hs8
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun045.stderr1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun045.stdout0
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun046.hs10
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun046.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun047.hs18
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun047.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun048.hs24
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun048.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun049.hs22
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun049.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun050.hs23
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun050.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun051.hs9
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun051.stderr1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun052.hs13
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun052.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun053.hs3
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun054.hs29
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun054.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun055.hs46
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun055.stdout7
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun056.hs8
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun056.stdout2
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun057.hs7
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun057.stderr1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun058.hs30
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun058.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun059.hs34
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun059.stderr1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun059.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun060.hs18
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun060.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun061.hs17
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun061.stdout2
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun062.hs17
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun062.stdout2
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun063.hs20
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun063.stdout9
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun064.hs229
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun064.stdout16
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun065.hs33
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun065.stdout4
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun066.hs22
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun066.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun067.hs11
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun067.stdout1
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun068.hs386
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun068.stdout2
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun069.hs82
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun069.stdout2
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun069_cmm.cmm214
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun070.hs144
-rw-r--r--testsuite/tests/ghc-regress/codeGen/should_run/cgrun070.stdout6
-rw-r--r--testsuite/tests/ghc-regress/concurrent/2317/2317.hs34
-rw-r--r--testsuite/tests/ghc-regress/concurrent/2317/2317.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/2317/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/concurrent/2317/all.T5
-rw-r--r--testsuite/tests/ghc-regress/concurrent/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog001/Arithmetic.hs235
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog001/Converter.hs130
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog001/Main.hs3
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog001/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog001/Mult.hs237
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog001/Stream.hs156
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog001/Thread.hs114
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog001/Trit.hs112
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog001/Utilities.hs17
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog001/all.T26
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog001/concprog001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog002/Event.hs6
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog002/FileIO.hs9
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog002/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog002/Scheduler.hs74
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog002/Server.hs18
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog002/Thread.hs38
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog002/all.T17
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog002/concprog002.stderr1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog002/concprog002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/BackList2.lhs185
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/CASList.hs254
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/Collate.hs64
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/Collection.hs11
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/IOList.lhs138
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/ImmList.hs71
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/MVarListLockCoupling.hs183
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/Main.lhs217
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/MainMVarList.lhs237
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/RefInterface.hs15
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/TestData.hs32
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/TestDataParser.hs103
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/TestRun.hs219
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/all.T33
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/concprog003.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/prog003/test-8-3000-3000-2-1-413
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/1980.hs13
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/2910.hs9
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/2910.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/2910a.hs9
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/2910a.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/3279.hs25
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/3279.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/3429.hs22
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/3429.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/4030.hs8
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/4030.stderr1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/4262.hs27
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/4262.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/4811.hs14
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/4813.hs12
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/Makefile6
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/all.T200
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/allowinterrupt001.hs13
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/async001.hs19
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/async001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc001.hs15
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc002.hs14
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc003.hs28
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc003.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc004.hs19
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc004.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc006.hs23
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc006.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc007.hs23
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc007.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc008.hs12
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc008.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc009.hs9
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc009.stderr1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc010.hs28
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc010.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc012.hs23
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc012.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc013.hs10
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc013.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc014.hs27
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc014.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc015.hs44
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc015.stdout5
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc015a.hs47
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc015a.stdout5
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc016.hs27
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc016.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc017.hs45
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc017.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc017a.hs44
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc017a.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc018.hs26
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc018.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc019.hs14
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc019.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc020.hs10
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc020.stderr1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc021.hs11
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc021.stderr1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc022.hs40
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc022.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc023.hs23
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc024.hs15
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc024.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc025.hs16
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc025.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc026.hs8
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc027.hs9
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc028.hs11
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc028.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc029.hs11
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc029.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc030.hs15
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc030.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc031.hs30
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc031.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc032.hs74
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc032.stdout9
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc033.hs10
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc033.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc034.hs31
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc034.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc035.hs49
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc035.stdout5
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc036.hs35
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc036.stdout4
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc037.hs27
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc037.stdout6
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc038.hs37
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc038.stdout7
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc039.hs31
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc040.hs28
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc040.stderr1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc041.hs9
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc041.stderr0
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc041.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc042.hs11
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc042.stderr0
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc042.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc043.hs13
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc043.stderr0
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc043.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc044.hs13
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc044.stderr0
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc044.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc045.hs39
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc045.stderr0
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc045.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc051.hs32
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc058.hs13
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc058.stderr1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc059.hs26
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc059.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc059_c.c30
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc064.hs30
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc064.stderr1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc065.hs13
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc066.hs13
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc067.hs16
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc068.hs14
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc068.stderr1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc069.hs19
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc069.stdout4
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc069a.hs19
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc069a.stdout4
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc070.hs18
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc070.stdout1
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc071.hs11
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc071.stdout3
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc072.hs9
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/conc072.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/foreignInterruptible.hs32
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/foreignInterruptible.stdout5
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/mask001.hs70
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/mask002.hs32
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/mask002.stdout2
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/numsparks001.hs11
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/numsparks001.stdout5
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/throwto001.hs38
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/throwto002.hs25
-rw-r--r--testsuite/tests/ghc-regress/concurrent/should_run/throwto003.hs17
-rw-r--r--testsuite/tests/ghc-regress/cpranal/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/cpranal/should_compile/Cpr001.hs16
-rw-r--r--testsuite/tests/ghc-regress/cpranal/should_compile/Cpr001_imp.hs55
-rw-r--r--testsuite/tests/ghc-regress/cpranal/should_compile/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/cpranal/should_compile/all.T10
-rw-r--r--testsuite/tests/ghc-regress/cps/all.T35
-rw-r--r--testsuite/tests/ghc-regress/cps/cmm001.cmm5
-rw-r--r--testsuite/tests/ghc-regress/cps/cmm002.cmm8
-rw-r--r--testsuite/tests/ghc-regress/cps/cps001.cmm9
-rw-r--r--testsuite/tests/ghc-regress/cps/cps002.cmm7
-rw-r--r--testsuite/tests/ghc-regress/cps/cps003.cmm15
-rw-r--r--testsuite/tests/ghc-regress/cps/cps004.cmm17
-rw-r--r--testsuite/tests/ghc-regress/cps/cps005.cmm7
-rw-r--r--testsuite/tests/ghc-regress/cps/cps006.cmm7
-rw-r--r--testsuite/tests/ghc-regress/cps/cps007.cmm4
-rw-r--r--testsuite/tests/ghc-regress/cps/cps008.cmm9
-rw-r--r--testsuite/tests/ghc-regress/cps/cps009.cmm7
-rw-r--r--testsuite/tests/ghc-regress/cps/cps010.cmm9
-rw-r--r--testsuite/tests/ghc-regress/cps/cps011.cmm7
-rw-r--r--testsuite/tests/ghc-regress/cps/cps012.cmm23
-rw-r--r--testsuite/tests/ghc-regress/cps/cps013.cmm21
-rw-r--r--testsuite/tests/ghc-regress/cps/cps014.cmm14
-rw-r--r--testsuite/tests/ghc-regress/cps/cps015.cmm17
-rw-r--r--testsuite/tests/ghc-regress/cps/cps016.cmm14
-rw-r--r--testsuite/tests/ghc-regress/cps/cps017.cmm16
-rw-r--r--testsuite/tests/ghc-regress/cps/cps018.cmm9
-rw-r--r--testsuite/tests/ghc-regress/cps/cps019.cmm12
-rw-r--r--testsuite/tests/ghc-regress/cps/cps020.cmm15
-rw-r--r--testsuite/tests/ghc-regress/cps/cps021.cmm11
-rw-r--r--testsuite/tests/ghc-regress/cps/cps022.cmm18
-rw-r--r--testsuite/tests/ghc-regress/cps/cps023.cmm18
-rw-r--r--testsuite/tests/ghc-regress/cps/cps024.cmm12
-rw-r--r--testsuite/tests/ghc-regress/cps/cps025.cmm3
-rw-r--r--testsuite/tests/ghc-regress/cps/cps026.cmm18
-rw-r--r--testsuite/tests/ghc-regress/cps/cps027.cmm29
-rw-r--r--testsuite/tests/ghc-regress/cps/cps028.cmm17
-rw-r--r--testsuite/tests/ghc-regress/deSugar/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/GadtOverlap.hs20
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/GadtOverlap.stderr4
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/Makefile8
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T2395.hs13
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T2395.stderr4
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T2409.hs11
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T3263-1.hs36
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T3263-1.stderr13
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T3263-2.hs38
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T3263-2.stderr13
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T4371.hs12
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T4439.hs15
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T4488.hs29
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T4488.stderr20
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T4870.hs10
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T4870a.hs8
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T5117.hs17
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T5117.stderr4
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T5252.hs13
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/T5252a.hs5
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/all.T90
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds-wildcard.hs3
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds-wildcard.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds001.hs25
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds001.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds002.hs16
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds002.stderr-ghc10
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds003.hs8
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds003.stderr-ghc6
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds004.hs9
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds004.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds005.hs15
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds005.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds006.hs6
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds006.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds007.hs6
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds007.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds008.hs11
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds008.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds009.hs13
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds009.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds010.hs15
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds010.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds011.hs11
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds011.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds012.hs10
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds012.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds013.hs23
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds013.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds014.hs76
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds014.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds015.hs9
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds015.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds016.hs15
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds016.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds017.hs12
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds017.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds018.hs57
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds018.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds019.hs8
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds019.stderr-ghc7
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds020.hs57
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds020.stderr-ghc18
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds021.hs8
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds021.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds022.hs32
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds022.stderr-ghc6
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds023.hs7
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds023.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds024.hs11
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds024.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds025.hs16
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds025.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds026.hs14
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds026.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds027.hs9
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds027.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds028.hs13
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds028.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds029.hs9
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds029.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds030.hs5
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds030.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds031.hs7
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds031.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds032.hs17
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds032.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds033.hs15
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds033.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds034.hs11
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds034.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds035.hs23
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds035.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds036.hs47
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds036.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds037.hs6
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds037.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds038.hs12
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds038.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds039.hs7
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds039.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds040.hs18
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds040.stderr-ghc0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds041.hs17
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds041.stderr-ghc8
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds042.hs8
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds043.hs11
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds043.stderr-ghc4
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds044.hs10
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds045.hs18
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds046.hs41
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds047.hs9
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds048.hs7
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds050.hs8
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds051.hs33
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds051.stderr-ghc12
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds052.hs7
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds052.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds053.hs5
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds053.stderr-ghc2
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds054.hs8
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds055.hs30
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds056.hs14
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds056.stderr4
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds057.hs13
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds058.hs8
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds058.stderr4
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds059.hs33
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds060.hs25
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds061.hs14
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds062.hs11
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_compile/ds063.hs11
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/T246.hs25
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/T246.stdout2
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/T3126.hs54
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/T3126.stdout4
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/T3382.hs14
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/T3382.stdout2
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/all.T39
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun001.hs12
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun002.hs14
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun003.hs13
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun003.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun004.hs13
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun004.stdout2
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.hs46
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.stderr2
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.stdout0
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun006.hs33
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun006.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun007.hs5
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun007.stderr2
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun007.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun008.hs2
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun008.stderr2
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun008.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun009.hs16
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun009.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun010.hs22
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun010.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun011.hs93
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun011.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun012.hs12
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun012.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun013.hs16
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun013.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun014.hs16
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun014.stderr2
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun014.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun015.hs34
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun015.stdout2
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun016.hs14
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun016.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun017.hs13
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun017.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun018.hs18
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun018.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun019.hs11
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun019.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun020.hs14
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun020.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun021.hs22
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun021.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun022.hs26
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun022.stdout2
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun023.hs41
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/dsrun023.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc01.hs26
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc01.stdout2
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc02.hs22
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc02.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc03.hs41
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc03.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc04.hs14
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc04.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc05.hs11
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc05.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc06.hs18
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc06.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc07.hs14
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc07.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc08.hs13
-rw-r--r--testsuite/tests/ghc-regress/deSugar/should_run/mc08.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/T2378.hs10
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/T2856.hs28
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/T3012.hs10
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/T3057.hs6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/T3965.hs23
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/T4220.hs7
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/T4302.hs18
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/T4325.hs7
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/T4325.stderr3
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/T4816.hs10
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/T4966.hs44
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/T4966.stderr3
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/all.T32
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/deriving-1935.hs22
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv-foldable-traversable1.hs33
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv-foldable-traversable1.stderr3
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv-functor1.hs65
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv-functor1.stderr3
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv-functor2.hs9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv001.hs21
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv001.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv002.hs14
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv002.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv003.hs17
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv003.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv004.hs9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv004.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv005.hs6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv005.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv006.hs9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv006.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv007.hs6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv007.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv008.hs7
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv008.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv009.hs6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv009.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv010.hs4
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv010.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv011.hs6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv012.hs10
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv013.hs11
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv014.hs11
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv015.hs14
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv020.hs34
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_compile/drv021.hs16
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/Makefile8
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T2394.hs9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T2394.stderr6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T2604.hs9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T2604.stderr10
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T2604.stderr-7.011
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T2701.hs10
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T2701.stderr5
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T2721.hs15
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T2721.stderr6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T2851.hs9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T2851.stderr9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T3101.hs9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T3101.stderr6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T3621.hs36
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T3621.stderr13
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T3833.hs9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T3833.stderr6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T3834.hs9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T3834.stderr6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T4528.hs11
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/T4528.stderr14
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/all.T35
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail-foldable-traversable1.hs21
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail-foldable-traversable1.stderr38
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor1.hs6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor1.stderr5
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor2.hs26
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor2.stderr32
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail001.hs26
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail001.stderr9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail002.hs20
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail002.stderr6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail002.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail003.hs16
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail003.stderr9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail003.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail004.hs9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail004.stderr9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail004.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail005.hs4
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail005.stderr5
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail006.hs11
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail006.stderr6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail006.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail007.hs4
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail007.stderr9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail007.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail008.hs14
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail008.stderr6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail009.hs20
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail009.stderr23
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail009.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail010.hs10
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail010.stderr11
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail010.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail011.hs8
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail011.stderr10
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail012.hs8
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail012.stderr9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail013.hs6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail013.stderr18
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail014.hs13
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail014.stderr9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail015.hs13
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail015.stderr13
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail015.stderr-7.012
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail016.hs-boot7
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail016.stderr4
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_fail/drvfail016.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/T2529.hs21
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/T2529.stdout2
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/T3087.hs33
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/T3087.stdout4
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/T4136.hs9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/T4136.stdout2
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/T4528a.hs7
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/T4528a.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/T5041.hs10
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/T5041.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/all.T34
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun-foldable1.hs15
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun-foldable1.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun-functor1.hs49
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun-functor1.stdout8
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun001.hs13
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun002.hs17
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun002.stdout2
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun003.hs30
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun003.stdout3
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun004.hs10
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun004.stdout2
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun005.hs27
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun005.stderr0
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun005.stdout2
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun006.hs49
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun006.stdout6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun007.hs6
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun007.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun008.hs8
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun008.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun009.hs20
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun009.stdout2
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun010.hs12
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun010.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun011.hs16
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun011.stdout2
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun012.hs11
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun012.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun013.hs19
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun013.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun014.hs19
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun014.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun015.hs8
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun015.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun016.hs18
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun016.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun017.hs10
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun017.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun018.hs9
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun018.stdout2
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun019.hs15
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun019.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun020.hs46
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun020.stdout1
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun021.hs20
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun021.stdout5
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun022.hs12
-rw-r--r--testsuite/tests/ghc-regress/deriving/should_run/drvrun022.stdout1
-rw-r--r--testsuite/tests/ghc-regress/dph/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/dph/diophantine/DiophantineVect.hs38
-rw-r--r--testsuite/tests/ghc-regress/dph/diophantine/Main.hs43
-rw-r--r--testsuite/tests/ghc-regress/dph/diophantine/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/dph/diophantine/dph-diophantine-fast.stdout3
-rw-r--r--testsuite/tests/ghc-regress/dph/diophantine/dph-diophantine-opt.stdout3
-rw-r--r--testsuite/tests/ghc-regress/dph/diophantine/dph-diophantine.T20
-rw-r--r--testsuite/tests/ghc-regress/dph/dotp/DotPVect.hs15
-rw-r--r--testsuite/tests/ghc-regress/dph/dotp/Main.hs54
-rw-r--r--testsuite/tests/ghc-regress/dph/dotp/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/dph/dotp/dph-dotp-fast.stdout2
-rw-r--r--testsuite/tests/ghc-regress/dph/dotp/dph-dotp-opt.stdout2
-rw-r--r--testsuite/tests/ghc-regress/dph/dotp/dph-dotp.T20
-rw-r--r--testsuite/tests/ghc-regress/dph/primespj/Main.hs30
-rw-r--r--testsuite/tests/ghc-regress/dph/primespj/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/dph/primespj/PrimesVect.hs25
-rw-r--r--testsuite/tests/ghc-regress/dph/primespj/dph-primespj-fast.stdout3
-rw-r--r--testsuite/tests/ghc-regress/dph/primespj/dph-primespj-opt.stdout3
-rw-r--r--testsuite/tests/ghc-regress/dph/primespj/dph-primespj.T20
-rw-r--r--testsuite/tests/ghc-regress/dph/quickhull/Main.hs43
-rw-r--r--testsuite/tests/ghc-regress/dph/quickhull/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/dph/quickhull/QuickHullVect.hs41
-rw-r--r--testsuite/tests/ghc-regress/dph/quickhull/SVG.hs34
-rw-r--r--testsuite/tests/ghc-regress/dph/quickhull/TestData.hs92
-rw-r--r--testsuite/tests/ghc-regress/dph/quickhull/Types.hs32
-rw-r--r--testsuite/tests/ghc-regress/dph/quickhull/dph-quickhull-fast.stdout1019
-rw-r--r--testsuite/tests/ghc-regress/dph/quickhull/dph-quickhull-opt.stdout1019
-rw-r--r--testsuite/tests/ghc-regress/dph/quickhull/dph-quickhull.T20
-rw-r--r--testsuite/tests/ghc-regress/dph/smvm/Main.hs65
-rw-r--r--testsuite/tests/ghc-regress/dph/smvm/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/dph/smvm/SMVMVect.hs17
-rw-r--r--testsuite/tests/ghc-regress/dph/smvm/dph-smvm.T30
-rw-r--r--testsuite/tests/ghc-regress/dph/smvm/dph-smvm.stdout1
-rw-r--r--testsuite/tests/ghc-regress/dph/smvm/result-i386.txt101
-rw-r--r--testsuite/tests/ghc-regress/dph/smvm/result-sparc.txt101
-rw-r--r--testsuite/tests/ghc-regress/dph/smvm/result-x86_64.txt101
-rw-r--r--testsuite/tests/ghc-regress/dph/smvm/test-i386.datbin22384 -> 0 bytes
-rw-r--r--testsuite/tests/ghc-regress/dph/smvm/test-sparc.datbin11632 -> 0 bytes
-rw-r--r--testsuite/tests/ghc-regress/dph/smvm/test-x86_64.datbin16416 -> 0 bytes
-rw-r--r--testsuite/tests/ghc-regress/dph/sumnats/Main.hs21
-rw-r--r--testsuite/tests/ghc-regress/dph/sumnats/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/dph/sumnats/SumNatsVect.hs14
-rw-r--r--testsuite/tests/ghc-regress/dph/sumnats/dph-sumnats.T10
-rw-r--r--testsuite/tests/ghc-regress/dph/sumnats/dph-sumnats.stdout3
-rw-r--r--testsuite/tests/ghc-regress/dph/words/Main.hs37
-rw-r--r--testsuite/tests/ghc-regress/dph/words/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/dph/words/WordsVect.hs123
-rw-r--r--testsuite/tests/ghc-regress/dph/words/dph-words-fast.stdout3
-rw-r--r--testsuite/tests/ghc-regress/dph/words/dph-words-opt.stdout3
-rw-r--r--testsuite/tests/ghc-regress/dph/words/dph-words.T21
-rw-r--r--testsuite/tests/ghc-regress/driver/1372/1372.stderr2
-rw-r--r--testsuite/tests/ghc-regress/driver/1372/Makefile37
-rw-r--r--testsuite/tests/ghc-regress/driver/1372/all.T5
-rw-r--r--testsuite/tests/ghc-regress/driver/1372/p1/A1.hs2
-rw-r--r--testsuite/tests/ghc-regress/driver/1372/p1/A2.hs2
-rw-r--r--testsuite/tests/ghc-regress/driver/1372/p1/Setup.hs6
-rw-r--r--testsuite/tests/ghc-regress/driver/1372/p1/p1.cabal4
-rw-r--r--testsuite/tests/ghc-regress/driver/1372/p2/Main.hs7
-rw-r--r--testsuite/tests/ghc-regress/driver/1372/p2/Setup.hs6
-rw-r--r--testsuite/tests/ghc-regress/driver/1372/p2/p2.cabal5
-rw-r--r--testsuite/tests/ghc-regress/driver/1959/1959.stdout2
-rw-r--r--testsuite/tests/ghc-regress/driver/1959/B.hs6
-rw-r--r--testsuite/tests/ghc-regress/driver/1959/C.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/1959/D.hs7
-rw-r--r--testsuite/tests/ghc-regress/driver/1959/E1.hs4
-rw-r--r--testsuite/tests/ghc-regress/driver/1959/E2.hs4
-rw-r--r--testsuite/tests/ghc-regress/driver/1959/Makefile25
-rw-r--r--testsuite/tests/ghc-regress/driver/1959/test.T5
-rw-r--r--testsuite/tests/ghc-regress/driver/2464.hs12
-rw-r--r--testsuite/tests/ghc-regress/driver/2464.stderr3
-rw-r--r--testsuite/tests/ghc-regress/driver/2499.hs2
-rw-r--r--testsuite/tests/ghc-regress/driver/2499.stderr4
-rw-r--r--testsuite/tests/ghc-regress/driver/2566.stderr3
-rw-r--r--testsuite/tests/ghc-regress/driver/3674.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/3674_pre.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/5313.hs18
-rw-r--r--testsuite/tests/ghc-regress/driver/A011.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A012.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A013.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A014.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A015.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A031.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A032.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A033.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A061a.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A061b.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A063.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A064.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A065.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A066.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A067.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A070.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A071.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/A200.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/B021/C.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/B022/C.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/B023/C.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/B024/C.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/B025/C.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/B027/F.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/B028/F.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/B041/C.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/B042/C.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/B043/C.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/B044/F.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/B045/F.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/B200/C.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/D063.hs2
-rw-r--r--testsuite/tests/ghc-regress/driver/D200.hs2
-rw-r--r--testsuite/tests/ghc-regress/driver/F016.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/F017.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/F018.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/F018a.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/F019.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/F034.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/F035.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/Makefile487
-rw-r--r--testsuite/tests/ghc-regress/driver/Shared001.hs9
-rw-r--r--testsuite/tests/ghc-regress/driver/T3007/A/A.cabal7
-rw-r--r--testsuite/tests/ghc-regress/driver/T3007/A/A.hs7
-rw-r--r--testsuite/tests/ghc-regress/driver/T3007/A/Internal.hs7
-rw-r--r--testsuite/tests/ghc-regress/driver/T3007/A/Setup.hs2
-rw-r--r--testsuite/tests/ghc-regress/driver/T3007/B/B.cabal8
-rw-r--r--testsuite/tests/ghc-regress/driver/T3007/B/B.hs7
-rw-r--r--testsuite/tests/ghc-regress/driver/T3007/B/Internal.hs3
-rw-r--r--testsuite/tests/ghc-regress/driver/T3007/B/Internal.hs-boot1
-rw-r--r--testsuite/tests/ghc-regress/driver/T3007/B/Setup.hs2
-rw-r--r--testsuite/tests/ghc-regress/driver/T3007/Makefile21
-rw-r--r--testsuite/tests/ghc-regress/driver/T3007/all.T5
-rw-r--r--testsuite/tests/ghc-regress/driver/T3364.stderr2
-rw-r--r--testsuite/tests/ghc-regress/driver/T3389.hs12
-rw-r--r--testsuite/tests/ghc-regress/driver/T3389.stdout1
-rw-r--r--testsuite/tests/ghc-regress/driver/T4437.hs26
-rw-r--r--testsuite/tests/ghc-regress/driver/T706.stdout1
-rw-r--r--testsuite/tests/ghc-regress/driver/T706a.hs7
-rw-r--r--testsuite/tests/ghc-regress/driver/T706b.hs3
-rw-r--r--testsuite/tests/ghc-regress/driver/all.T333
-rw-r--r--testsuite/tests/ghc-regress/driver/bug1677/Bar.hs2
-rw-r--r--testsuite/tests/ghc-regress/driver/bug1677/Foo.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/bug1677/Makefile7
-rw-r--r--testsuite/tests/ghc-regress/driver/bug1677/all.T1
-rw-r--r--testsuite/tests/ghc-regress/driver/bug1677/bug1677.stderr5
-rw-r--r--testsuite/tests/ghc-regress/driver/conflicting_flags/Makefile7
-rw-r--r--testsuite/tests/ghc-regress/driver/conflicting_flags/conflicting_flags.stdout1
-rw-r--r--testsuite/tests/ghc-regress/driver/conflicting_flags/test.T3
-rw-r--r--testsuite/tests/ghc-regress/driver/d026/P/Q.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/d051_1/P/Q.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/d051_2/R/S.hs2
-rw-r--r--testsuite/tests/ghc-regress/driver/d052_1/P/Q.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/d052_2/R/S.hs2
-rw-r--r--testsuite/tests/ghc-regress/driver/d053_1/P/Q.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/d053_2/R/S.hs2
-rw-r--r--testsuite/tests/ghc-regress/driver/driver062a.stdout1
-rw-r--r--testsuite/tests/ghc-regress/driver/driver062b.stdout1
-rw-r--r--testsuite/tests/ghc-regress/driver/driver062c.stdout1
-rw-r--r--testsuite/tests/ghc-regress/driver/driver062d.stdout1
-rw-r--r--testsuite/tests/ghc-regress/driver/driver062e.stdout1
-rw-r--r--testsuite/tests/ghc-regress/driver/driver063.stderr4
-rw-r--r--testsuite/tests/ghc-regress/driver/dynHelloWorld.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/dynHelloWorld.stdout1
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_001/A.hs13
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_001/B.hs13
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_001/C.hs17
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_001/Makefile14
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_001/all.T6
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/A_First.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/A_Main.hs6
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/A_Second.hs6
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/B_First.hs6
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/B_Main.hs6
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/B_Second.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/C_Child.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/C_Main.hs8
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/D_Child.hs6
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/D_Main.hs7
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/Makefile4
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/ManyFirst.hs6
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/ManySecond.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/ManyThird.hs6
-rw-r--r--testsuite/tests/ghc-regress/driver/dynamic_flags_002/all.T6
-rw-r--r--testsuite/tests/ghc-regress/driver/mode001.stdout8
-rw-r--r--testsuite/tests/ghc-regress/driver/objc/Makefile4
-rw-r--r--testsuite/tests/ghc-regress/driver/objc/all.T10
-rw-r--r--testsuite/tests/ghc-regress/driver/objc/objc-hi.m35
-rw-r--r--testsuite/tests/ghc-regress/driver/objc/objc-hi.stdout1
-rw-r--r--testsuite/tests/ghc-regress/driver/overlap/List.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/overlap/Overlap.hs2
-rw-r--r--testsuite/tests/ghc-regress/driver/pragma001.hs29
-rw-r--r--testsuite/tests/ghc-regress/driver/pragma002.hs10
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp001/A.hs4
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp001/B1.hs3
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp001/B2.hs3
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp001/C.hs6
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp001/Makefile19
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp001/all.T6
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp001/recomp001.stderr2
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp002/Makefile16
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp002/Q.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp002/W.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp002/W.hs-boot3
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp002/all.T6
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp002/recomp002.stderr1
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp002/recomp002.stdout3
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp003/A.hs3
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp003/Makefile18
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp003/all.T6
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp004/Main.hs10
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp004/Makefile24
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp004/all.T4
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp004/c.h5
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp004/c1.c6
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp004/c2.c6
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp004/recomp004.stdout2
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp005/A.hs4
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp005/B.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp005/C1.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp005/C2.hs7
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp005/D.hs3
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp005/E.hs7
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp005/Makefile16
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp005/all.T5
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp005/recomp005.stderr0
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp005/recomp005.stdout8
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp006/A.hs9
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp006/B1.hs8
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp006/B2.hs8
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp006/Makefile16
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp006/all.T3
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp006/recomp006.stderr14
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp006/recomp006.stdout2
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp007/Makefile28
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp007/Setup.hs2
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp007/a1/A.hs3
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp007/a1/a.cabal7
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp007/a2/A.hs3
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp007/a2/a.cabal7
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp007/all.T9
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp007/b/B.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp007/b/Main.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp007/b/b.cabal10
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp007/recomp007.stderr1
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp007/recomp007.stdout4
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp008/A1.hs8
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp008/A2.hs8
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp008/B.hs4
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp008/Main.hs5
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp008/Makefile28
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp008/all.T7
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp008/recomp008.stdout2
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp009/Main.hs4
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp009/Makefile20
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp009/Sub1.hs3
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp009/Sub2.hs3
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp009/all.T7
-rw-r--r--testsuite/tests/ghc-regress/driver/recomp009/recomp009.stdout2
-rw-r--r--testsuite/tests/ghc-regress/driver/rtsOpts.hs3
-rw-r--r--testsuite/tests/ghc-regress/driver/rtsopts001.stdout3
-rw-r--r--testsuite/tests/ghc-regress/driver/rtsopts002.hs1
-rw-r--r--testsuite/tests/ghc-regress/driver/rtsopts002.stderr2
-rw-r--r--testsuite/tests/ghc-regress/driver/rtsopts002.stdout2
-rw-r--r--testsuite/tests/ghc-regress/driver/shared001.stderr1
-rw-r--r--testsuite/tests/ghc-regress/driver/werror.hs13
-rw-r--r--testsuite/tests/ghc-regress/driver/werror.stderr28
-rw-r--r--testsuite/tests/ghc-regress/driver/withRtsOpts.hs3
-rw-r--r--testsuite/tests/ghc-regress/driver/withRtsOpts.stdout1
-rw-r--r--testsuite/tests/ghc-regress/dynlibs/Makefile32
-rw-r--r--testsuite/tests/ghc-regress/dynlibs/T3807-export.c21
-rw-r--r--testsuite/tests/ghc-regress/dynlibs/T3807-load.c39
-rw-r--r--testsuite/tests/ghc-regress/dynlibs/T3807.stdout1
-rw-r--r--testsuite/tests/ghc-regress/dynlibs/T3807Export.hs11
-rw-r--r--testsuite/tests/ghc-regress/dynlibs/T4464.stderr4
-rw-r--r--testsuite/tests/ghc-regress/dynlibs/T4464.stdout2
-rw-r--r--testsuite/tests/ghc-regress/dynlibs/T4464B.c21
-rw-r--r--testsuite/tests/ghc-regress/dynlibs/T4464C.c15
-rw-r--r--testsuite/tests/ghc-regress/dynlibs/T4464H.hs7
-rw-r--r--testsuite/tests/ghc-regress/dynlibs/all.T21
-rw-r--r--testsuite/tests/ghc-regress/esc/F123.hs28
-rw-r--r--testsuite/tests/ghc-regress/esc/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/esc/Sum.hs22
-rw-r--r--testsuite/tests/ghc-regress/esc/TestData.hs37
-rw-r--r--testsuite/tests/ghc-regress/esc/TestDataCon.hs25
-rw-r--r--testsuite/tests/ghc-regress/esc/TestImport.hs27
-rw-r--r--testsuite/tests/ghc-regress/esc/TestList.hs24
-rw-r--r--testsuite/tests/ghc-regress/esc/all.T5
-rw-r--r--testsuite/tests/ghc-regress/esc/synonym.hs10
-rw-r--r--testsuite/tests/ghc-regress/eyeball/IOList.lhs64
-rw-r--r--testsuite/tests/ghc-regress/eyeball/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/eyeball/README5
-rw-r--r--testsuite/tests/ghc-regress/eyeball/T3116.hs34
-rw-r--r--testsuite/tests/ghc-regress/eyeball/dead1.hs42
-rw-r--r--testsuite/tests/ghc-regress/eyeball/dmd-on-polymorphic-floatouts.hs23
-rw-r--r--testsuite/tests/ghc-regress/eyeball/inline1.hs37
-rw-r--r--testsuite/tests/ghc-regress/eyeball/inline2.hs40
-rw-r--r--testsuite/tests/ghc-regress/eyeball/inline3.hs35
-rw-r--r--testsuite/tests/ghc-regress/eyeball/inline4.hs40
-rw-r--r--testsuite/tests/ghc-regress/eyeball/record1.hs17
-rw-r--r--testsuite/tests/ghc-regress/eyeball/spec-constr1.hs36
-rw-r--r--testsuite/tests/ghc-regress/eyeball/state-hack.hs19
-rw-r--r--testsuite/tests/ghc-regress/ffi/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/1357.hs5
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/1357.stderr3
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/3624.hs4
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/3742.hs12
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/all.T38
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/cc001.hs21
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/cc001.stderr0
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/cc004.hs67
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/cc005.hs108
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/cc007.hs4
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/cc008.hs8
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/cc009.hs8
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/cc009_inc.h1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/cc010.hs5
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/cc011.hs9
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/cc011.stderr-hugs2
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/cc012.hs6
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/cc013.hs14
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/cc014.hs4
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_compile/ffi-deriv1.hs23
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_fail/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_fail/T3066.hs7
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_fail/T3066.stderr6
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_fail/all.T8
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_fail/ccfail001.hs10
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_fail/ccfail001.stderr6
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_fail/ccfail002.hs11
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_fail/ccfail002.stderr7
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_fail/ccfail003.hs11
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_fail/ccfail003.stderr8
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/1288.hs6
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/1288.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/1288_c.c6
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/1288_ghci.hs6
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/1288_ghci.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/1288_ghci_c.c6
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/1679.hs19
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/1679.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/2276.hs7
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/2276.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/2276_c.c6
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/2276_ghci.hs7
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/2276_ghci.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/2276_ghci_c.c6
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/2469.hs15
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/2594.hs38
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/2594.stdout4
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/2594_c.c7
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/2594_c.h15
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/2917a.hs42
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/4038.hs33
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/4038.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/4221.hs42
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/4221.stdout1003
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/4221_c.c26
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/Makefile15
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/all.T167
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/fed001.hs30
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/fed001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi001.hs19
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi002.hs12
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi002.stdout5
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi002_c.c21
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi003.hs8
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi003.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi004.hs22
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi004.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi005.hs111
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi005.stdout19
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi006.hs27
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi006.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi007.hs14
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi007.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi008.hs14
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi008.stderr1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi009.hs552
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi009.stdout165
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi010.hs9
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi011.hs19
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi011.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi012.hs53
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi012.stdout4
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi013.hs26
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi013.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi014.hs29
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi014.stdout100
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi014_cbits.c6
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi014_cbits.h3
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi015.hs12
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi015.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi015_cbits.c1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi015_cbits.h1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi016.hs28
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi016.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi017.hs13
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi018.h4
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi018.hs10
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi018.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi018_c.c7
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci.h4
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci.hs10
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci_c.c7
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi019.hs28
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi019.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi020.hs25
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi020.stderr4
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi021.hs22
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi021.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi022.hs36
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/ffi022.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/fptr01.h10
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/fptr01.hs40
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/fptr01.stdout12
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/fptr01_c.c29
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/fptr02.hs10
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.h6
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.hs19
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.stderr1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ffi/should_run/fptrfail01_c.c11
-rw-r--r--testsuite/tests/ghc-regress/gadt/Arith.hs146
-rw-r--r--testsuite/tests/ghc-regress/gadt/CasePrune.hs28
-rw-r--r--testsuite/tests/ghc-regress/gadt/CasePrune.stdout1
-rw-r--r--testsuite/tests/ghc-regress/gadt/Gadt17_help.hs34
-rw-r--r--testsuite/tests/ghc-regress/gadt/Gadt23_AST.hs10
-rw-r--r--testsuite/tests/ghc-regress/gadt/Makefile22
-rw-r--r--testsuite/tests/ghc-regress/gadt/Nilsson.hs293
-rw-r--r--testsuite/tests/ghc-regress/gadt/Session.hs45
-rw-r--r--testsuite/tests/ghc-regress/gadt/Session.stdout1
-rw-r--r--testsuite/tests/ghc-regress/gadt/T1999.hs12
-rw-r--r--testsuite/tests/ghc-regress/gadt/T1999a.hs10
-rw-r--r--testsuite/tests/ghc-regress/gadt/T2040.hs27
-rw-r--r--testsuite/tests/ghc-regress/gadt/T2151.hs13
-rw-r--r--testsuite/tests/ghc-regress/gadt/T2587.hs18
-rw-r--r--testsuite/tests/ghc-regress/gadt/T3013.hs13
-rw-r--r--testsuite/tests/ghc-regress/gadt/T3163.hs9
-rw-r--r--testsuite/tests/ghc-regress/gadt/T3163.stderr5
-rw-r--r--testsuite/tests/ghc-regress/gadt/T3169.hs16
-rw-r--r--testsuite/tests/ghc-regress/gadt/T3169.stderr11
-rw-r--r--testsuite/tests/ghc-regress/gadt/T3638.hs10
-rw-r--r--testsuite/tests/ghc-regress/gadt/T3651.hs17
-rw-r--r--testsuite/tests/ghc-regress/gadt/T3651.stderr21
-rw-r--r--testsuite/tests/ghc-regress/gadt/all.T110
-rw-r--r--testsuite/tests/ghc-regress/gadt/arrow.hs24
-rw-r--r--testsuite/tests/ghc-regress/gadt/data1.hs17
-rw-r--r--testsuite/tests/ghc-regress/gadt/data2.hs19
-rw-r--r--testsuite/tests/ghc-regress/gadt/doaitse.hs55
-rw-r--r--testsuite/tests/ghc-regress/gadt/equal.hs30
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt-dim1.hs11
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt-dim2.hs11
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt-dim3.hs25
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt-dim4.hs21
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt-dim5.hs13
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt-dim6.hs13
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt-dim7.hs24
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt-dim8.hs26
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt-escape1.hs20
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt-escape1.stderr0
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt-fd.hs23
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt1.hs7
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt10.hs6
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt10.stderr7
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt11.hs12
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt11.stderr6
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt13.hs14
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt13.stderr0
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt14.hs8
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt15.hs11
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt16.hs47
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt17.hs14
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt18.hs18
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt19.hs16
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt2.hs18
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt2.stdout2
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt20.hs19
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt21.hs23
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt21.stderr20
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt22.hs26
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt23.hs15
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt24.hs14
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt25.hs41
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt3.hs18
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt4.hs18
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt4.stdout1
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt5.hs23
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt5.stdout1
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt6.hs9
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt7.hs34
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt7.stderr0
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt8.hs15
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadt9.hs15
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadtSyntax001.hs9
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadtSyntaxFail001.hs9
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadtSyntaxFail001.stderr6
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadtSyntaxFail002.hs9
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadtSyntaxFail002.stderr6
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadtSyntaxFail003.hs9
-rw-r--r--testsuite/tests/ghc-regress/gadt/gadtSyntaxFail003.stderr6
-rw-r--r--testsuite/tests/ghc-regress/gadt/josef.hs69
-rw-r--r--testsuite/tests/ghc-regress/gadt/karl1.hs79
-rw-r--r--testsuite/tests/ghc-regress/gadt/karl2.hs136
-rw-r--r--testsuite/tests/ghc-regress/gadt/lazypat.hs7
-rw-r--r--testsuite/tests/ghc-regress/gadt/lazypat.stderr7
-rw-r--r--testsuite/tests/ghc-regress/gadt/lazypatok.hs14
-rw-r--r--testsuite/tests/ghc-regress/gadt/lazypatok.stderr0
-rw-r--r--testsuite/tests/ghc-regress/gadt/nbe.hs176
-rw-r--r--testsuite/tests/ghc-regress/gadt/nbe.stdout1
-rw-r--r--testsuite/tests/ghc-regress/gadt/records-fail1.hs11
-rw-r--r--testsuite/tests/ghc-regress/gadt/records-fail1.stderr5
-rw-r--r--testsuite/tests/ghc-regress/gadt/records.hs25
-rw-r--r--testsuite/tests/ghc-regress/gadt/records.stdout2
-rw-r--r--testsuite/tests/ghc-regress/gadt/red-black.hs41
-rw-r--r--testsuite/tests/ghc-regress/gadt/rw.hs29
-rw-r--r--testsuite/tests/ghc-regress/gadt/rw.stderr19
-rw-r--r--testsuite/tests/ghc-regress/gadt/scoped.hs33
-rw-r--r--testsuite/tests/ghc-regress/gadt/set.hs45
-rw-r--r--testsuite/tests/ghc-regress/gadt/tc.hs122
-rw-r--r--testsuite/tests/ghc-regress/gadt/tc.stdout1
-rw-r--r--testsuite/tests/ghc-regress/gadt/tdpe.hs24
-rw-r--r--testsuite/tests/ghc-regress/gadt/termination.hs183
-rw-r--r--testsuite/tests/ghc-regress/gadt/type-rep.hs38
-rw-r--r--testsuite/tests/ghc-regress/gadt/type-rep.stdout1
-rw-r--r--testsuite/tests/ghc-regress/gadt/ubx-records.hs30
-rw-r--r--testsuite/tests/ghc-regress/gadt/ubx-records.stdout3
-rw-r--r--testsuite/tests/ghc-regress/gadt/while.hs216
-rw-r--r--testsuite/tests/ghc-regress/gadt/while.stdout1
-rw-r--r--testsuite/tests/ghc-regress/generics/GEq/GEq.hs44
-rw-r--r--testsuite/tests/ghc-regress/generics/GEq/GEq1.stdout4
-rw-r--r--testsuite/tests/ghc-regress/generics/GEq/GEq2.hs78
-rw-r--r--testsuite/tests/ghc-regress/generics/GEq/GEq2.stdout4
-rw-r--r--testsuite/tests/ghc-regress/generics/GEq/Main.hs41
-rw-r--r--testsuite/tests/ghc-regress/generics/GEq/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/generics/GEq/test.T4
-rw-r--r--testsuite/tests/ghc-regress/generics/GShow/GShow.hs124
-rw-r--r--testsuite/tests/ghc-regress/generics/GShow/GShow1.stdout3
-rw-r--r--testsuite/tests/ghc-regress/generics/GShow/Main.hs23
-rw-r--r--testsuite/tests/ghc-regress/generics/GShow/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/generics/GShow/test.T3
-rw-r--r--testsuite/tests/ghc-regress/generics/GenCanDoRep0.hs23
-rw-r--r--testsuite/tests/ghc-regress/generics/GenCannotDoRep0.hs9
-rw-r--r--testsuite/tests/ghc-regress/generics/GenCannotDoRep0.stderr5
-rw-r--r--testsuite/tests/ghc-regress/generics/GenCannotDoRep1.hs8
-rw-r--r--testsuite/tests/ghc-regress/generics/GenCannotDoRep1.stderr8
-rw-r--r--testsuite/tests/ghc-regress/generics/GenCannotDoRep2.hs13
-rw-r--r--testsuite/tests/ghc-regress/generics/GenCannotDoRep2.stderr5
-rw-r--r--testsuite/tests/ghc-regress/generics/GenDeprecated.stderr3
-rw-r--r--testsuite/tests/ghc-regress/generics/GenShouldFail0.hs11
-rw-r--r--testsuite/tests/ghc-regress/generics/GenShouldFail0.stderr5
-rw-r--r--testsuite/tests/ghc-regress/generics/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/generics/Uniplate/GUniplate.hs53
-rw-r--r--testsuite/tests/ghc-regress/generics/Uniplate/GUniplate1.stdout1
-rw-r--r--testsuite/tests/ghc-regress/generics/Uniplate/Main.hs20
-rw-r--r--testsuite/tests/ghc-regress/generics/Uniplate/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/generics/Uniplate/test.T3
-rw-r--r--testsuite/tests/ghc-regress/generics/all.T8
-rw-r--r--testsuite/tests/ghc-regress/ghc-api/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ghc-api/T4891/Makefile13
-rw-r--r--testsuite/tests/ghc-regress/ghc-api/T4891/T4891.hs70
-rw-r--r--testsuite/tests/ghc-regress/ghc-api/T4891/T4891.stdout20
-rw-r--r--testsuite/tests/ghc-regress/ghc-api/T4891/X.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghc-api/T4891/all.T3
-rw-r--r--testsuite/tests/ghc-regress/ghc-api/apirecomp001/A.hs9
-rw-r--r--testsuite/tests/ghc-regress/ghc-api/apirecomp001/B.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghc-api/apirecomp001/Makefile11
-rw-r--r--testsuite/tests/ghc-regress/ghc-api/apirecomp001/all.T1
-rw-r--r--testsuite/tests/ghc-regress/ghc-api/apirecomp001/apirecomp001.stderr32
-rw-r--r--testsuite/tests/ghc-regress/ghc-api/apirecomp001/apirecomp001.stdout4
-rw-r--r--testsuite/tests/ghc-regress/ghc-api/apirecomp001/myghc.hs57
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/2228.hs4
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/2228.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/2636.hs2
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/2636.stderr4
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/3890.hs9
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/3890.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/Makefile29
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/all.T12
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e002.hs3
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e003.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e004.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e005.hs13
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e005.stderr1
-rw-r--r--testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e005.stdout3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/GADT.hs20
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/HappyTest.hs525
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/QSort.hs11
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/Test.hs40
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/Test2.hs6
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/Test3.hs4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/Test4.hs3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/Test6.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/Test7.hs2
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/getargs.hs3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/mdo.hs37
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/2740.hs4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/2740.script7
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/2740.stdout10
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/Break007.hs4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/Break020b.hs4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/TupleN.hs10
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/all.T84
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break001.script14
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break001.stderr7
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break001.stdout18
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break002.script5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break002.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break003.script10
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break003.stderr6
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break003.stdout6
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break004.script5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break005.script5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break005.stdout9
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break006.script14
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break006.stderr14
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break006.stdout20
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break007.script5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break007.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break008.script5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break008.stdout3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break009.script7
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break009.stdout4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break010.script6
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break010.stdout5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break011.script18
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break011.stdout23
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break012.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break012.script9
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break012.stdout16
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break013.hs4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break013.script5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break013.stdout11
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break014.hs4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break014.script5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break014.stdout5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break015.hs3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break015.script8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break016.hs4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break016.script11
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break016.stdout3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break017.script11
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break017.stdout12
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break018.script9
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break018.stderr3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break018.stdout13
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break019.script3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break019.stderr2
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break020.hs15
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break020.script8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break020.stdout42
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break021.script23
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break021.stdout135
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/A.hs4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/B.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/B.hs-boot3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/C.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/all.T4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/break022.script20
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/break022.stdout8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/A.hs2
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/B.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/B.hs-boot3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/C.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/all.T4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/break023.script17
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/break023.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.hs4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.script16
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.stdout19
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.stdout-ghc-7.028
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break025.script4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break025.stdout3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break026.hs7
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break026.script23
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break026.stdout58
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break027.script5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break027.stdout9
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break028.hs15
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break028.script4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/break028.stdout5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk001.script22
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk001.stderr4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk001.stdout5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk002.script7
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk002.stdout6
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk003.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk003.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk004.script8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk004.stderr3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk004.stdout4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk005.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk005.script13
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk005.stdout11
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk007.hs6
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk007.script7
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk007.stdout11
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk008.hs4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk008.script9
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk008.stdout15
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk009.hs8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk009.script10
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk009.stdout11
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/getargs.script4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/getargs.stdout3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/hist001.script15
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/hist001.stdout31
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand001.script13
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand001.stdout15
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand002.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand002.script4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand002.stdout6
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print001.script12
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print001.stdout10
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print002.script19
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print002.stdout8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print003.script15
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print003.stdout15
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print004.script28
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print004.stdout19
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print005.script15
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print005.stdout19
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print006.script19
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print006.stdout14
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print007.script30
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print007.stderr3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print007.stdout6
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print008.script14
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print008.stdout7
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print009.script8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print009.stdout3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print010.script12
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print010.stdout6
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print011.script13
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print011.stdout7
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print012.script11
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print012.stdout6
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print013.script10
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print013.stdout3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print014.script9
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print014.stdout3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print015.script8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print015.stdout5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print016.script10
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print016.stdout5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print017.script12
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print017.stdout7
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print018.script15
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print018.stderr0
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print018.stdout12
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print019.script11
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print019.stderr7
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print019.stdout9
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print020.script5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print020.stdout14
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print021.hs18
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print021.script3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print021.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print022.hs11
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print022.script9
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print022.stdout10
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print023.script8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print023.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print024.script10
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print024.stdout3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print025.hs2
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print025.script8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print025.stdout8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print026.script8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print026.stdout6
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print027.script8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print027.stdout6
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print028.script8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print028.stdout6
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print029.hs7
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print029.script10
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print029.stdout8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print030.script10
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print030.stdout7
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print031.hs7
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print031.script10
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print031.stdout8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print032.script8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print032.stdout8
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print033.script5
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print033.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print034.script11
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/print034.stdout4
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/result001.hs3
-rw-r--r--testsuite/tests/ghc-regress/ghci.debugger/scripts/result001.script5
-rw-r--r--testsuite/tests/ghc-regress/ghci/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog001/A.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog001/B.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog001/C.hs9
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog001/D1.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog001/D2.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog001/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog001/prog001.T2
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog001/prog001.script40
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog001/prog001.stdout4
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog002/A.hs6
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog002/A1.hs6
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog002/A2.hs6
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog002/B.hs7
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog002/C.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog002/D.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog002/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog002/prog002.T2
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog002/prog002.script45
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog002/prog002.stdout12
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog003/A.hs8
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog003/B.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog003/C.hs6
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog003/D.hs13
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog003/D1.hs13
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog003/D2.hs13
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog003/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog003/prog003.T6
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog003/prog003.script90
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog003/prog003.stdout43
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog004/Makefile11
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog004/prog004.T11
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog005/A.hs2
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog005/B.hs4
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog005/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog005/prog005.T2
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog005/prog005.script17
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog005/prog005.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog006/A.hs6
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog006/Boot.hs-boot3
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog006/Boot1.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog006/Boot2.hs6
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog006/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog006/prog006.T1
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog006/prog006.script6
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog006/prog006.stderr4
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog007/A.hs8
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog007/B.hs7
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog007/C.hs10
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog007/C.hs-boot2
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog007/ghci.prog007.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog007/ghci.prog007.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog007/prog007.T2
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog008/A.hs14
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog008/ghci.prog008.script4
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog008/ghci.prog008.stdout8
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog008/prog008.T2
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog009/A1.hs3
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog009/A2.hs1
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog009/A3.hs2
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog009/B.hs3
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog009/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.T4
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.script36
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.stderr8
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.stdout8
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog010/A.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog010/B.hs3
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog010/ghci.prog010.script33
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog010/ghci.prog010.stderr2
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog010/ghci.prog010.stdout9
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog011/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog011/prog011.T2
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog011/prog011.hx16
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog011/prog011.script3
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog011/prog011.stderr2
-rw-r--r--testsuite/tests/ghc-regress/ghci/prog011/prog011.stdout3
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/1914.script16
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/1914.stderr2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/1914.stdout7
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/2452.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/2452.stderr2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/2816.script5
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/2816.stderr2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/2816.stdout3
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/2976.script8
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/2976.stdout6
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/4051.hs2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/4051.script4
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/4051.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/Makefile33
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T2766.script4
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T2766.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T3263.hs9
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T3263.script1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T3263.stderr5
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T4015.hs7
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T4015.script9
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T4015.stdout20
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T4087.hs6
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T4087.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T4087.stdout3
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T4127.script3
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T4127.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T4127a.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T4127a.stderr7
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T4316.script23
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T4316.stdout5
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T4832.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T4832.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T5045.hs44
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T5045.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T5130.script3
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T5130.stderr6
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T789.hs808
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T789.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/T789.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/all.T77
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci001.script3
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci001.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci002.script4
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci002.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci003.script7
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci003.stdout6
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci004.hs2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci004.script4
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci004.stderr0
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci004.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci005.script18
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci005.stdout9
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci006.hs8
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci006.script6
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci006.stderr0
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci006.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci007.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci007.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci008.script7
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci008.stdout36
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci009.script20
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci009.stdout16
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci010.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci010.stdout14
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci011.script4
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci011.stdout21
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci012.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci012.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci013.script5
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci013.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci014.hs7
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci014.script983
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci014.stdout982
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci015.hs43
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci015.script388
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci015.stdout387
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci016.hs18
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci016.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci016.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci017.script1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci017.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci018.script4
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci018.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci019.hs9
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci019.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci019.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci020.script1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci020.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci021.script4
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci021.stderr2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci021.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci022.hs2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci022.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci022.stderr3
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci022.stdout0
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci023.ghci10
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci023.script17
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci023.stdout16
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci024.script10
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci024.stderr1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci024.stdout18
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci025.hs22
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci025.script27
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci025.stdout111
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci025.stdout-ghc-7.0111
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci026.script6
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci026.stdout15
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci027.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci027.script8
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci027.stdout6
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci027_1.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci027_2.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci028.script4
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci028.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci029.script11
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci029.stdout7
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci030.hs9
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci030.script3
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci030.stdout6
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci031.hs8
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci031.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci031.stderr3
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci031.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci032.script8
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci032.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci033.hs5
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci033.script2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci033.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci034.script3
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci034.stderr2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci034.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci035.script4
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci035.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci036.script19
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci036.stderr22
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci036.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci037.script3
-rw-r--r--testsuite/tests/ghc-regress/ghci/scripts/ghci037.stdout2
-rw-r--r--testsuite/tests/ghc-regress/ghci/shell.hs9
-rw-r--r--testsuite/tests/ghc-regress/ghci/should_run/2589.hs8
-rw-r--r--testsuite/tests/ghc-regress/ghci/should_run/2589.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/should_run/2881.hs8
-rw-r--r--testsuite/tests/ghc-regress/ghci/should_run/2881.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/should_run/3171.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/should_run/Makefile9
-rw-r--r--testsuite/tests/ghc-regress/ghci/should_run/all.T18
-rw-r--r--testsuite/tests/ghc-regress/ghci/should_run/ghcirun001.hs30
-rw-r--r--testsuite/tests/ghc-regress/ghci/should_run/ghcirun001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/should_run/ghcirun002.hs72
-rw-r--r--testsuite/tests/ghc-regress/ghci/should_run/ghcirun002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/ghci/should_run/ghcirun003.hs50
-rw-r--r--testsuite/tests/ghc-regress/ghci/should_run/ghcirun003.stdout1
-rw-r--r--testsuite/tests/ghc-regress/haddock/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/haddock/haddock_examples/Hidden.hs4
-rw-r--r--testsuite/tests/ghc-regress/haddock/haddock_examples/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/haddock/haddock_examples/Test.hs407
-rw-r--r--testsuite/tests/ghc-regress/haddock/haddock_examples/Visible.hs3
-rw-r--r--testsuite/tests/ghc-regress/haddock/haddock_examples/haddock.Test.stderr159
-rw-r--r--testsuite/tests/ghc-regress/haddock/haddock_examples/header.h5
-rw-r--r--testsuite/tests/ghc-regress/haddock/haddock_examples/test.T6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/all.T33
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA001.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA001.stderr7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA002.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA002.stderr7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA003.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA003.stderr7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA004.hs8
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA004.stderr7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA005.hs4
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA005.stderr7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA006.hs6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA006.stderr6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA007.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA007.stderr7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA008.hs7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA008.stderr7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA009.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA009.stderr7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA010.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA010.stderr7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA011.hs8
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA011.stderr7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA012.hs11
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA012.stderr11
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA013.hs13
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA013.stderr13
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA014.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA014.stderr8
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA015.hs14
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA015.stderr14
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA016.hs4
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA016.stderr6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA017.hs2
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA017.stderr5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA018.hs4
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA018.stderr6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA019.hs7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA019.stderr7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA020.hs15
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA020.stderr8
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA021.hs25
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA021.stderr11
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA022.hs11
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA022.stderr9
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA023.hs6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA023.stderr10
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA024.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA024.stderr7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA025.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA025.stderr7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA026.hs6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA026.stderr10
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA027.hs7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA027.stderr11
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA028.hs6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA028.stderr8
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA029.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA029.stderr6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA030.hs10
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA030.stderr6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA031.hs6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA031.stderr9
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA032.hs8
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA032.stderr10
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA033.hs11
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA033.stderr11
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/all.T4
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB001.hs3
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB002.hs3
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB003.hs2
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB004.hs17
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/all.T33
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC001.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC002.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC003.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC004.hs8
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC005.hs4
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC006.hs6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC007.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC008.hs7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC009.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC010.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC011.hs8
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC012.hs11
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC013.hs14
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC014.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC015.hs14
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC016.hs4
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC017.hs2
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC018.hs4
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC019.hs7
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC020.hs15
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC021.hs25
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC022.hs11
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC023.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC024.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC025.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC026.hs6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC027.hs21
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC028.hs6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC029.hs5
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC030.hs10
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC031.hs6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC032.hs8
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockSimplUtilsBug.hs44
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockSimplUtilsBug.stderr0
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/all.T4
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD001.hs3
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD002.hs3
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD003.hs2
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD004.hs17
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/all.T4
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE001.comp.stderr0
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE001.hs2
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE001.stderr2
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE002.hs6
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE002.stderr2
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE003.hs9
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE003.stderr2
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE004.hs3
-rw-r--r--testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE004.stderr2
-rw-r--r--testsuite/tests/ghc-regress/hsc2hs/3837.hsc7
-rw-r--r--testsuite/tests/ghc-regress/hsc2hs/Makefile16
-rw-r--r--testsuite/tests/ghc-regress/hsc2hs/all.T20
-rw-r--r--testsuite/tests/ghc-regress/hsc2hs/hsc2hs001.hsc6
-rw-r--r--testsuite/tests/ghc-regress/hsc2hs/hsc2hs002.hsc6
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ATLoop.hs22
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ATLoop_help.hs10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Class1.hs21
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Class2.hs15
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Class3.hs11
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Class3.stderr4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ClassEqContext.hs5
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ClassEqContext2.hs6
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ClassEqContext3.hs8
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/CoTest3.hs26
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Col.hs16
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Col2.hs14
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ColGivenCheck.hs20
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ColGivenCheck2.hs31
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference.hs19
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference2.hs17
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference3.hs44
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference4.hs17
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference5.hs17
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference6.hs13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/DataFamDeriv.hs11
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Deriving.hs30
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/DerivingNewType.hs14
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Exp.hs10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT1.hs27
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT10.hs44
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT11.hs20
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT12.hs38
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT12.stderr0
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT13.hs8
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT14.hs11
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT2.hs14
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT3.hs29
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT4.hs13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT5.hs14
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT6.hs12
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT7.hs15
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT8.hs12
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GADT9.hs16
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Gentle.hs50
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Gentle.stderr0
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheck.hs12
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheckDecomp.hs11
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheckSwap.hs12
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheckTop.hs13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/HO.hs18
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Imp.hs11
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Ind2_help.hs14
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/IndTypesPerf.hs11
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/IndTypesPerfMerge.hs120
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Infix.hs9
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/InstContextNorm.hs36
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/InstEqContext.hs17
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/InstEqContext2.hs15
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/InstEqContext3.hs20
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Kind.hs10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Makefile15
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/NewTyCo1.hs9
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/NewTyCo2.hs7
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/NonLinearLHS.hs38
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Numerals.hs29
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/OversatDecomp.hs12
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/PushedInAsGivens.hs24
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Records.hs41
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Refl.hs17
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Refl2.hs19
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/RelaxedExamples.hs13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Roman1.hs41
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Rules1.hs23
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple1.hs13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple10.hs10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple11.hs16
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple12.hs17
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple13.hs18
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple14.hs24
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple14.stderr13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple15.hs25
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple16.hs13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple17.hs9
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple18.hs10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple19.hs10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple2.hs41
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple2.stderr40
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple20.hs9
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple20.stderr4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple21.hs18
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple22.hs15
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple23.hs6
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple24.hs13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple3.hs9
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple4.hs9
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple5.hs16
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple6.hs17
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple7.hs10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple8.hs15
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/Simple9.hs18
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T1769.hs12
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T1981.hs8
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T2102.hs19
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T2203b.hs26
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T2219.hs28
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T2238.hs39
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T2291.hs15
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T2448.hs17
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T2627.hs22
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T2639.hs17
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T2715.hs32
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T2767.hs23
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T2850.hs21
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T2944.hs12
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3017.hs20
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3017.stderr19
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3023.hs17
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3023.stderr4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3208a.hs14
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3208b.hs22
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3208b.stderr22
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3220.hs23
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3418.hs4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3418.stderr3
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3423.hs12
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3460.hs14
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3484.hs42
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3590.hs22
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3787.hs475
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3826.hs15
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T3851.hs24
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4120.hs26
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4120.stderr8
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4160.hs18
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4178.hs35
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4200.hs12
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4338.hs23
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4356.hs8
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4358.hs11
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4484.hs30
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4492.hs12
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4494.hs12
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4497.hs15
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4935.hs24
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4981-V1.hs34
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4981-V2.hs31
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T4981-V3.hs31
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/T5002.hs29
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/TF_GADT.hs21
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/all.T184
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/impexp.stderr2
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ind1.hs15
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_compile/ind2.hs9
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/DerivUnsatFam.hs8
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/DerivUnsatFam.stderr5
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/GADTwrong1.hs12
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/GADTwrong1.stderr18
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/NoMatchErr.hs21
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/NoMatchErr.stderr13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/NonLinearSigErr.hs8
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/NonLinearSigErr.stderr0
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/NotRelaxedExamples.hs11
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/NotRelaxedExamples.stderr18
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/Over.stderr10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/OverA.hs8
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/OverB.hs9
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/OverC.hs9
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/OverD.hs3
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail10.hs13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail10.stderr6
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11a.hs13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11a.stderr10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11b.hs18
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11b.stderr10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11c.hs21
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11c.stderr10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11d.hs10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11d.stderr5
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail12.hs9
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail12.stderr4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail13.hs13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail13.stderr8
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail14.hs6
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail14.stderr6
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail15.hs6
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail15.stderr6
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail16.hs11
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail16.stderr6
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1a.hs4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1a.stderr4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1b.hs4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1b.stderr4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2a.hs14
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2a.stderr5
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2b.hs12
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2b.stderr5
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail3a.hs10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail3a.stderr5
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail3b.stderr3
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail4.hs8
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail4.stderr4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5a.hs31
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5a.stderr10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5b.hs31
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5b.stderr7
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail6.hs7
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail6.stderr2
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail7.hs8
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail7.stderr4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail8.hs10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail8.stderr4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail9.hs13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail9.stderr6
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SkolemOccursLoop.hs31
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/SkolemOccursLoop.stderr10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T1900.hs73
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T1900.stderr18
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2157.hs7
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2157.stderr4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2203a.hs15
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2203a.stderr5
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2239.hs51
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2239.stderr30
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2334.hs16
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2334.stderr17
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2544.hs15
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2544.stderr22
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2627b.hs20
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2627b.stderr7
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2664.hs31
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2664.stderr18
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2664a.hs30
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2677.hs7
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2677.stderr5
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2693.hs11
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2693.stderr7
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T2888.hs7
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T3092.hs9
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T3092.stderr10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T3330a.hs25
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T3330a.stderr9
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T3330b.hs19
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T3330b.stderr5
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T3330c.hs58
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T3330c.stderr18
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T3440.hs11
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T3440.stderr19
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4093a.hs8
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4093a.stderr14
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4093b.hs40
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4093b.stderr32
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4099.hs14
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4099.stderr13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4174.hs60
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4174.stderr5
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4174.stderr-ghc-7.07
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4179.hs26
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4179.stderr63
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4246.hs15
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4246.stderr10
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4254.hs21
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4254.stderr18
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4272.hs22
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4272.stderr8
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4485.hs66
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/T4485.stderr19
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity1.hs4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity1.stderr4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity2.hs4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity2.stderr4
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamUndec.hs8
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamUndec.stderr18
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_fail/all.T72
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_run/GMapAssoc.hs67
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_run/GMapAssoc.stdout1
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_run/GMapTop.hs69
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_run/GMapTop.stdout1
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_run/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_run/T2985.hs13
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_run/T2985.stdout1
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_run/T4235.hs30
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_run/T4235.stdout3
-rw-r--r--testsuite/tests/ghc-regress/indexed-types/should_run/all.T8
-rw-r--r--testsuite/tests/ghc-regress/layout/Makefile15
-rw-r--r--testsuite/tests/ghc-regress/layout/all.T57
-rw-r--r--testsuite/tests/ghc-regress/layout/layout001.hs6
-rw-r--r--testsuite/tests/ghc-regress/layout/layout001.stdout9
-rw-r--r--testsuite/tests/ghc-regress/layout/layout002.hs5
-rw-r--r--testsuite/tests/ghc-regress/layout/layout002.stdout3
-rw-r--r--testsuite/tests/ghc-regress/layout/layout003.hs12
-rw-r--r--testsuite/tests/ghc-regress/layout/layout003.stdout9
-rw-r--r--testsuite/tests/ghc-regress/layout/layout004.hs10
-rw-r--r--testsuite/tests/ghc-regress/layout/layout004.stdout7
-rw-r--r--testsuite/tests/ghc-regress/layout/layout005.hs10
-rw-r--r--testsuite/tests/ghc-regress/layout/layout005.stdout3
-rw-r--r--testsuite/tests/ghc-regress/layout/layout006.hs13
-rw-r--r--testsuite/tests/ghc-regress/layout/layout006.stdout9
-rw-r--r--testsuite/tests/ghc-regress/layout/layout007.hs11
-rw-r--r--testsuite/tests/ghc-regress/layout/layout007.stdout3
-rw-r--r--testsuite/tests/ghc-regress/layout/layout008.hs22
-rw-r--r--testsuite/tests/ghc-regress/layout/layout008.stdout3
-rw-r--r--testsuite/tests/ghc-regress/layout/layout009.hs6
-rw-r--r--testsuite/tests/ghc-regress/layout/layout009.stdout3
-rw-r--r--testsuite/tests/ghc-regress/lib/CPUTime/CPUTime001.hs26
-rw-r--r--testsuite/tests/ghc-regress/lib/CPUTime/CPUTime001.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/CPUTime/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/CPUTime/all.T1
-rw-r--r--testsuite/tests/ghc-regress/lib/Char/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/Char/all.T10
-rw-r--r--testsuite/tests/ghc-regress/lib/Char/readLitChar.hs12
-rw-r--r--testsuite/tests/ghc-regress/lib/Char/readLitChar.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/Char/unicode001.hs46
-rw-r--r--testsuite/tests/ghc-regress/lib/Char/unicode001.stdout14
-rw-r--r--testsuite/tests/ghc-regress/lib/Char/unicode001.stdout-hugs14
-rw-r--r--testsuite/tests/ghc-regress/lib/Char/unicode002.hs44
-rw-r--r--testsuite/tests/ghc-regress/lib/Char/unicode002.stdout6555
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/4876.hs19
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/4876.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/Chan001.hs109
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/Chan001.stdout3
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/MVar001.hs148
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/MVar001.stdout6
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/QSem001.hs93
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/QSem001.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/QSemN001.hs96
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/QSemN001.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/SampleVar001.hs132
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/SampleVar001.stdout6
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/ThreadDelay001.hs26
-rw-r--r--testsuite/tests/ghc-regress/lib/Concurrent/all.T10
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/all.T18
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring001.hs948
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring001.stdout185
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring002.hs6
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring002.stdin1000
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring003.hs36
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring003.stdin1000
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring003.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring004.hs564
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring004.stdout45
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring005.hs1138
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring005.stdout226
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring006.hs10
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring006.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.Fixed/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.Fixed/all.T1
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.Fixed/data-fixed-show-read.hs22
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.Fixed/data-fixed-show-read.stdout18
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.HashTable/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.HashTable/all.T1
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.HashTable/hash001.hs14
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.Ix/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.Ix/all.T1
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.Ix/ix001.hs4
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.Ix/ix001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.List/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.List/all.T2
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.List/genericNegative001.hs8
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.List/genericNegative001.stdout3
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.List/take001.hs5
-rw-r--r--testsuite/tests/ghc-regress/lib/Data.List/take001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/2122.hs76
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/3307.hs52
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/3307.stdout12
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/4808.hs12
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/4808.stderr1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/4808.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/4855.hs3
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/4855.stderr1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/4895.hs9
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/4895.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/IOError001.hs7
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/IOError001.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/IOError001.stdout-hugs2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/IOError002.hs5
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/IOError002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/Makefile48
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/T4113.hs20
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/T4113.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/T4113.stdout-i386-unknown-mingw322
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/T4144.hs115
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/T4144.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/all.T173
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/concio001.hs6
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/concio001.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/concio001.thr.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/concio002.hs14
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/concio002.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/countReaders001.hs17
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/countReaders001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/countReaders001.stdout-i386-unknown-mingw321
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/decodingerror001.hs22
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/decodingerror001.in11
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/decodingerror001.in21
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/decodingerror001.stdout10
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/encoding001.hs71
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/encoding002.hs67
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/encoding002.stdout61
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/encodingerror001.hs27
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/encodingerror001.stdout36
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/environment001.hs16
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/environment001.stdout6
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/finalization001.hs26
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/finalization001.stdout200
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hClose001.hs8
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hClose001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hClose002.hs32
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hClose002.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hClose002.stdout-i386-unknown-solaris24
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hClose003.hs42
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hClose003.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hDuplicateTo001.hs24
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hDuplicateTo001.stderr2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hFileSize001.hs8
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hFileSize001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hFileSize001.stdout-mingw1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hFileSize002.hs35
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hFileSize002.stdout5
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hFlush001.hs31
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hFlush001.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetBuf001.hs218
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetBuf001.stdout117
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetBuffering001.hs21
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetBuffering001.stdout7
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetChar001.hs18
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetChar001.stdin2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetChar001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetLine001.hs25
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetLine001.stdout100
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetLine002.hs16
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetLine002.stdin1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetLine002.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetLine002.stdout-hugs2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetLine003.hs9
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetLine003.stdin1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetLine003.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetPosn001.hs28
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetPosn001.in2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetPosn001.stdout5
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hGetPosn001.stdout-hugs5
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hIsEOF001.hs7
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hIsEOF001.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hIsEOF002.hs48
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hIsEOF002.stdout16
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hReady001.hs11
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hReady001.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hReady002.hs10
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hReady002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSeek001.hs30
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSeek001.in1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSeek001.stdout7
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSeek002.hs25
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSeek002.stdout5
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSeek003.hs51
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSeek003.stdout24
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSeek004.hs8
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSeek004.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSeek004.stdout-mingw5
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSetBuffering002.hs6
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSetBuffering002.stdout6
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSetBuffering003.hs79
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSetBuffering003.stderr1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSetBuffering003.stdout22
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSetBuffering004.hs9
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSetBuffering004.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSetEncoding001.hs49
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSetEncoding001.inbin2076 -> 0 bytes
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSetEncoding001.stdout90
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSetEncoding002.hs13
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/hSetEncoding002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/ioeGetErrorString001.hs13
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/ioeGetErrorString001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/ioeGetFileName001.hs12
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/ioeGetFileName001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/ioeGetHandle001.hs13
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/ioeGetHandle001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/isEOF001.hs3
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/isEOF001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/latin15
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/misc001.hs24
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/misc001.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/newline001.hs121
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile001.hs11
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile002.hs6
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile002.stderr1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile002.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile003.hs14
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile003.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-i386-unknown-mingw324
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-i386-unknown-solaris24
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-mingw16
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-mips-sgi-irix4
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-sparc-sun-solaris24
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile004.hs23
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile004.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile005.hs45
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile005.stdout12
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile005.stdout-i386-unknown-mingw3212
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile006.hs14
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile006.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile007.hs18
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile007.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile007.stdout-i386-unknown-mingw322
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openFile008.hs22
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/openTempFile001.hs13
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/putStr001.hs6
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/putStr001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/readFile001.hs26
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/readFile001.stdout30
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/readFile001.stdout-i386-unknown-mingw3230
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/readwrite001.hs23
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/readwrite001.stdout3
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/readwrite002.hs49
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/readwrite002.stdout9
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/readwrite003.hs12
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/readwrite003.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/IO/utf8-test3
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/all.T15
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/echo001.hs13
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/echo001.stdout14
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/hGetBuf002.hs22
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/hGetBuf002.stdout44
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/hGetBuf003.hs26
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/hGetBuf003.stdout52
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/hPutBuf001.hs7
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/hPutBuf001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/hPutBuf002.hs9
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/hPutBuf002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/hTell001.hs63
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/hTell001.stdout38
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/hTell002.hs33
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/hTell002.stdoutbin51 -> 0 bytes
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/performGC001.hs5
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/performGC001.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/trace001.hs10
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/trace001.stderr14
-rw-r--r--testsuite/tests/ghc-regress/lib/IOExts/trace001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/IORef/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/IORef/all.T4
-rw-r--r--testsuite/tests/ghc-regress/lib/IORef/ioref001.hs9
-rw-r--r--testsuite/tests/ghc-regress/lib/IORef/ioref001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/Lex/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/Lex/all.T2
-rw-r--r--testsuite/tests/ghc-regress/lib/Lex/lexNum.hs28
-rw-r--r--testsuite/tests/ghc-regress/lib/Lex/lexNum.stdout17
-rw-r--r--testsuite/tests/ghc-regress/lib/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/all.T10
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num001.hs6
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num002.hs20
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num002.stdout6
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-alpha-dec-osf36
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-mips-sgi-irix6
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-ws-646
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-x86_64-unknown-openbsd6
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num003.hs20
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num003.stdout6
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-alpha-dec-osf36
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-mips-sgi-irix6
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-ws-646
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-x86_64-unknown-openbsd6
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num004.hs20
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num004.stdout6
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-alpha-dec-osf36
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-mips-sgi-irix6
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-ws-646
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-x86_64-unknown-openbsd6
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num005.hs23
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num005.stdout55
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-alpha-dec-osf355
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-mips-sgi-irix55
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-ws-6455
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-x86_64-unknown-openbsd55
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num006.hs28
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num006.stdout6
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num007.hs17
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num007.stdout9
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num008.hs57
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num008.stdout148
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num009.hs39
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num009.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num010.hs29
-rw-r--r--testsuite/tests/ghc-regress/lib/Numeric/num010.stdout189
-rw-r--r--testsuite/tests/ghc-regress/lib/OldException/Makefile4
-rw-r--r--testsuite/tests/ghc-regress/lib/OldException/OldException001.hs22
-rw-r--r--testsuite/tests/ghc-regress/lib/OldException/OldException001.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/OldException/all.T3
-rw-r--r--testsuite/tests/ghc-regress/lib/PrettyPrint/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/PrettyPrint/T3911.hs23
-rw-r--r--testsuite/tests/ghc-regress/lib/PrettyPrint/T3911.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/PrettyPrint/all.T2
-rw-r--r--testsuite/tests/ghc-regress/lib/PrettyPrint/pp1.hs18
-rw-r--r--testsuite/tests/ghc-regress/lib/PrettyPrint/pp1.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/Regex/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/Regex/all.T3
-rw-r--r--testsuite/tests/ghc-regress/lib/Regex/regex001.hs11
-rw-r--r--testsuite/tests/ghc-regress/lib/Regex/regex002.hs13
-rw-r--r--testsuite/tests/ghc-regress/lib/Regex/regex002.stdout3
-rw-r--r--testsuite/tests/ghc-regress/lib/Regex/regex003.hs43
-rw-r--r--testsuite/tests/ghc-regress/lib/Regex/regex003.stdout8
-rw-r--r--testsuite/tests/ghc-regress/lib/Show/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/Show/all.T2
-rw-r--r--testsuite/tests/ghc-regress/lib/Show/showDouble.hs41
-rw-r--r--testsuite/tests/ghc-regress/lib/Show/showDouble.stdout22
-rw-r--r--testsuite/tests/ghc-regress/lib/System/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/System/all.T8
-rw-r--r--testsuite/tests/ghc-regress/lib/System/exitWith001.hs3
-rw-r--r--testsuite/tests/ghc-regress/lib/System/exitWith001.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/System/getArgs001.hs9
-rw-r--r--testsuite/tests/ghc-regress/lib/System/getArgs001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/System/getEnv001.hs15
-rw-r--r--testsuite/tests/ghc-regress/lib/System/getEnv001.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/System/system001.hs14
-rw-r--r--testsuite/tests/ghc-regress/lib/System/system001.stdout14
-rw-r--r--testsuite/tests/ghc-regress/lib/Text.Printf/1548.hs11
-rw-r--r--testsuite/tests/ghc-regress/lib/Text.Printf/1548.stdout3
-rw-r--r--testsuite/tests/ghc-regress/lib/Text.Printf/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/Text.Printf/all.T1
-rw-r--r--testsuite/tests/ghc-regress/lib/Time/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/Time/all.T3
-rw-r--r--testsuite/tests/ghc-regress/lib/Time/time002.hs16
-rw-r--r--testsuite/tests/ghc-regress/lib/Time/time002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/Time/time003.hs24
-rw-r--r--testsuite/tests/ghc-regress/lib/Time/time003.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/Time/time004.hs10
-rw-r--r--testsuite/tests/ghc-regress/lib/Time/time004.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/exceptions/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/exceptions/all.T1
-rw-r--r--testsuite/tests/ghc-regress/lib/exceptions/exceptions001.hs7
-rw-r--r--testsuite/tests/ghc-regress/lib/haskell98/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/haskell98/all.T1
-rw-r--r--testsuite/tests/ghc-regress/lib/haskell98/instance-leaks.hs27
-rw-r--r--testsuite/tests/ghc-regress/lib/integer/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/integer/all.T3
-rw-r--r--testsuite/tests/ghc-regress/lib/integer/integerBits.hs134
-rw-r--r--testsuite/tests/ghc-regress/lib/integer/integerBits.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/integer/integerConversions.hs80
-rw-r--r--testsuite/tests/ghc-regress/lib/integer/integerConversions.stdout299
-rw-r--r--testsuite/tests/ghc-regress/lib/integer/integerConversions.stdout-ws-64299
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix001.hs24
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix001.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix002.hs4
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix002.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix003.hs6
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix003.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix004.hs58
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix004.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix005.hs25
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix005.stdout7
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix006.hs14
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix006.stdout6
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix007.hs34
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix007.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix008.hs12
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix008.stdout3
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix009.hs15
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix009.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix010.hs24
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix010.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix011.hs22
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix011.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix012.hs59
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix012.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix013.hs21
-rw-r--r--testsuite/tests/ghc-regress/lib/libposix/posix014.hs19
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/4006.hs8
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/4006.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/Memo1.lhs142
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/Memo2.lhs142
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/addr001.hs10
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/addr001.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-alpha-dec-osf32
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-mips-sgi-irix2
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-ws-642
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-x86_64-unknown-openbsd2
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/all.T70
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/array001.hs34
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/array001.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/char001.hs43
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/char001.stdout18
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/char002.hs7
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/char002.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/cstring001.hs18
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/dynamic001.hs107
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/dynamic001.stdout42
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/dynamic002.hs91
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/dynamic002.stdout64
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/dynamic003.hs12
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/dynamic003.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/dynamic004.hs36
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/dynamic004.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/dynamic005.hs14
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/dynamic005.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum01.hs526
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum01.stdout246
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum01.stdout-alpha-dec-osf3230
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum01.stdout-hugs246
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum01.stdout-ws-64246
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum02.hs263
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum02.stdout141
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-alpha-dec-osf3141
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-hugs141
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-mips-sgi-irix141
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-ws-64141
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-x86_64-unknown-openbsd141
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum03.hs266
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum03.stdout142
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-alpha-dec-osf3142
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-hugs142
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-mips-sgi-irix142
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-ws-64142
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-x86_64-unknown-openbsd142
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum04.hs15
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/enum04.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/exceptionsrun001.hs56
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/exceptionsrun001.stdout6
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/exceptionsrun002.hs105
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/exceptionsrun002.stdout40
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/length001.hs8
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/length001.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/list001.hs152
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/list001.stdout54
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/list001.stdout-ghc54
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/list002.hs6
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/list002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/list003.hs7
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/list003.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/memo001.hs19
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/memo001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/memo002.hs30
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/memo002.stdout44
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/packedstring001.hs11
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/packedstring001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/rand001.hs22
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/rand001.stdout5
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/ratio001.hs4
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/ratio001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/ratio001.stdout-ghc1
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/reads001.hs10
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/reads001.stdout4
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/show001.hs24
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/show001.stdout15
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/stableptr001.hs19
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/stableptr001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/stableptr003.hs16
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/stableptr004.hs12
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/stableptr004.stdout2
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/stableptr005.hs22
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/stableptr005.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/text001.hs15
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/text001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/tup001.hs33
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/tup001.stdout7
-rw-r--r--testsuite/tests/ghc-regress/lib/should_run/weak001.hs12
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket001.hs58
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket001.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket002.hs45
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket002.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket003.hs43
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket003.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket004.hs38
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket004.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket005.hs37
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket005.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket006.hs27
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket006.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket007.hs44
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket007.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket008.hs21
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket008.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket009.hs28
-rw-r--r--testsuite/tests/ghc-regress/lib/socket/socket009.stdout0
-rw-r--r--testsuite/tests/ghc-regress/lib/win32/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/lib/win32/all.T10
-rw-r--r--testsuite/tests/ghc-regress/lib/win32/win32001.hs104
-rw-r--r--testsuite/tests/ghc-regress/lib/win32/win32002.hs19
-rw-r--r--testsuite/tests/ghc-regress/mdo/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_compile/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_compile/all.T8
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_compile/mdo001.hs36
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_compile/mdo001.stdout5
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_compile/mdo002.hs23
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_compile/mdo002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_compile/mdo003.hs16
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_compile/mdo003.stdout1
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_compile/mdo004.hs17
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_compile/mdo004.stdout1
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_compile/mdo005.hs15
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_compile/mdo005.stdout1
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_compile/mdo006.hs17
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_compile/mdo006.stderr3
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/all.T7
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.hs16
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.stderr11
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.stderr-ghc-7.08
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.hs15
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.stderr8
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.stderr-ghc-7.05
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.hs15
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.stderr8
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.stderr-ghc-7.05
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.hs22
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.stderr3
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.stderr-ghc-7.07
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail005.hs12
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail005.stderr2
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_fail/mdofail005.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_run/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_run/all.T5
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_run/mdorun001.hs33
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_run/mdorun001.stdout5
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_run/mdorun002.hs56
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_run/mdorun002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_run/mdorun003.hs8
-rw-r--r--testsuite/tests/ghc-regress/mdo/should_run/mdorun003.stdout2
-rw-r--r--testsuite/tests/ghc-regress/module/Makefile70
-rw-r--r--testsuite/tests/ghc-regress/module/Mod101_AuxA.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/Mod101_AuxB.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/Mod102_AuxA.hs9
-rw-r--r--testsuite/tests/ghc-regress/module/Mod102_AuxB.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/Mod114_Help.hs1
-rw-r--r--testsuite/tests/ghc-regress/module/Mod115_A.hs11
-rw-r--r--testsuite/tests/ghc-regress/module/Mod115_B.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/Mod117_A.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/Mod117_B.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/Mod118_A.hs11
-rw-r--r--testsuite/tests/ghc-regress/module/Mod118_B.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/Mod119_A.hs2
-rw-r--r--testsuite/tests/ghc-regress/module/Mod119_B.hs2
-rw-r--r--testsuite/tests/ghc-regress/module/Mod120_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod121_A.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/Mod122_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod123_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod124_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod125_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod126_A.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/Mod127_A.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/Mod128_A.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/Mod131_A.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/Mod131_B.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/Mod132_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod132_B.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/Mod136_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod137_A.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/Mod138_A.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/Mod139_A.hs14
-rw-r--r--testsuite/tests/ghc-regress/module/Mod139_B.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/Mod140_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod141_A.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/Mod142_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod143_A.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/Mod144_A.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/Mod145_A.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/Mod147_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod157_A.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/Mod157_B.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod157_C.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod157_D.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/Mod159_A.hs13
-rw-r--r--testsuite/tests/ghc-regress/module/Mod159_B.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod159_C.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod159_D.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/Mod162_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod163_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod164_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod164_B.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod170_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod171_A.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/Mod171_B.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/Mod172_B.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/Mod172_C.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/Mod173_Aux.hs9
-rw-r--r--testsuite/tests/ghc-regress/module/Mod178_2.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/Mod179_A.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/Mod180_A.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/Mod180_B.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/T1074.hs8
-rw-r--r--testsuite/tests/ghc-regress/module/T1074.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/T1074a.hs28
-rw-r--r--testsuite/tests/ghc-regress/module/T1148.hs19
-rw-r--r--testsuite/tests/ghc-regress/module/T2267.hs12
-rw-r--r--testsuite/tests/ghc-regress/module/T3776.hs12
-rw-r--r--testsuite/tests/ghc-regress/module/T414.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/T414.stderr3
-rw-r--r--testsuite/tests/ghc-regress/module/T414a.hs2
-rw-r--r--testsuite/tests/ghc-regress/module/T414b.hs2
-rw-r--r--testsuite/tests/ghc-regress/module/all.T336
-rw-r--r--testsuite/tests/ghc-regress/module/base01/GHC/Base.hs25
-rw-r--r--testsuite/tests/ghc-regress/module/base01/GHC/Foo.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/base01/Makefile14
-rw-r--r--testsuite/tests/ghc-regress/module/base01/all.T9
-rw-r--r--testsuite/tests/ghc-regress/module/base01/base01.stdout1
-rw-r--r--testsuite/tests/ghc-regress/module/convert-tests.sh12
-rw-r--r--testsuite/tests/ghc-regress/module/mod1.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod1.stderr4
-rw-r--r--testsuite/tests/ghc-regress/module/mod1.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod10.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod10.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod10.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod100.hs28
-rw-r--r--testsuite/tests/ghc-regress/module/mod101.hs8
-rw-r--r--testsuite/tests/ghc-regress/module/mod101.stderr4
-rw-r--r--testsuite/tests/ghc-regress/module/mod101.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod102.hs8
-rw-r--r--testsuite/tests/ghc-regress/module/mod102.stderr4
-rw-r--r--testsuite/tests/ghc-regress/module/mod102.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod103.hs12
-rw-r--r--testsuite/tests/ghc-regress/module/mod104.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod105.hs9
-rw-r--r--testsuite/tests/ghc-regress/module/mod106.hs8
-rw-r--r--testsuite/tests/ghc-regress/module/mod107.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod108.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod109.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod11.hs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod110.hs15
-rw-r--r--testsuite/tests/ghc-regress/module/mod110.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod110.stderr-hugs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod111.hs12
-rw-r--r--testsuite/tests/ghc-regress/module/mod112.hs12
-rw-r--r--testsuite/tests/ghc-regress/module/mod113.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod114.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod114.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod114.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod115.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod116.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod116.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod116.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod117.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod118.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod119.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod12.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod120.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod120.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod120.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod121.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod121.stderr4
-rw-r--r--testsuite/tests/ghc-regress/module/mod121.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod122.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod122.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod122.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod123.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod123.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod123.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod124.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod124.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod124.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod125.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod125.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod125.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod126.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod126.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod126.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod127.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod127.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod127.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod128.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod128.stderr-ghc2
-rw-r--r--testsuite/tests/ghc-regress/module/mod129.hs8
-rw-r--r--testsuite/tests/ghc-regress/module/mod13.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod130.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod130.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod130.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod131.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod131.stderr7
-rw-r--r--testsuite/tests/ghc-regress/module/mod131.stderr-hugs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod132.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod132.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod132.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod133.hs17
-rw-r--r--testsuite/tests/ghc-regress/module/mod134.hs9
-rw-r--r--testsuite/tests/ghc-regress/module/mod134.stderr7
-rw-r--r--testsuite/tests/ghc-regress/module/mod134.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod135.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod135.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod135.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod136.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod136.stderr6
-rw-r--r--testsuite/tests/ghc-regress/module/mod136.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod137.hs9
-rw-r--r--testsuite/tests/ghc-regress/module/mod138.hs9
-rw-r--r--testsuite/tests/ghc-regress/module/mod138.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod138.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod139.hs11
-rw-r--r--testsuite/tests/ghc-regress/module/mod14.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod14.stderr-ghc4
-rw-r--r--testsuite/tests/ghc-regress/module/mod140.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod141.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod142.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod142.stderr6
-rw-r--r--testsuite/tests/ghc-regress/module/mod142.stderr-hugs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod143.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod143.stderr6
-rw-r--r--testsuite/tests/ghc-regress/module/mod143.stderr-hugs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod144.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod144.stderr6
-rw-r--r--testsuite/tests/ghc-regress/module/mod144.stderr-hugs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod145.hs9
-rw-r--r--testsuite/tests/ghc-regress/module/mod145.stderr6
-rw-r--r--testsuite/tests/ghc-regress/module/mod145.stderr-hugs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod146.hs8
-rw-r--r--testsuite/tests/ghc-regress/module/mod146.stderr6
-rw-r--r--testsuite/tests/ghc-regress/module/mod146.stderr-hugs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod147.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod147.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod147.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod148.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod149.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod15.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod150.hs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod150.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod150.stderr-hugs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod151.hs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod151.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod151.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod152.hs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod152.stderr10
-rw-r--r--testsuite/tests/ghc-regress/module/mod152.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod153.hs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod153.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod153.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod154.hs9
-rw-r--r--testsuite/tests/ghc-regress/module/mod155.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod155.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod155.stderr-hugs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod156.hs2
-rw-r--r--testsuite/tests/ghc-regress/module/mod157.hs13
-rw-r--r--testsuite/tests/ghc-regress/module/mod158.hs14
-rw-r--r--testsuite/tests/ghc-regress/module/mod158.stderr3
-rw-r--r--testsuite/tests/ghc-regress/module/mod158.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod159.hs10
-rw-r--r--testsuite/tests/ghc-regress/module/mod16.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod160.hs12
-rw-r--r--testsuite/tests/ghc-regress/module/mod160.stderr6
-rw-r--r--testsuite/tests/ghc-regress/module/mod160.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod161.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod161.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod161.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod162.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod163.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod164.hs10
-rw-r--r--testsuite/tests/ghc-regress/module/mod164.stderr7
-rw-r--r--testsuite/tests/ghc-regress/module/mod164.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod165.hs10
-rw-r--r--testsuite/tests/ghc-regress/module/mod165.stderr7
-rw-r--r--testsuite/tests/ghc-regress/module/mod165.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod166.hs10
-rw-r--r--testsuite/tests/ghc-regress/module/mod167.hs9
-rw-r--r--testsuite/tests/ghc-regress/module/mod168.hs20
-rw-r--r--testsuite/tests/ghc-regress/module/mod169.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod17.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod17.stderr4
-rw-r--r--testsuite/tests/ghc-regress/module/mod17.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod170.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod171.hs11
-rw-r--r--testsuite/tests/ghc-regress/module/mod172.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod173.hs12
-rw-r--r--testsuite/tests/ghc-regress/module/mod174.hs9
-rw-r--r--testsuite/tests/ghc-regress/module/mod174.stderr3
-rw-r--r--testsuite/tests/ghc-regress/module/mod175/Makefile19
-rw-r--r--testsuite/tests/ghc-regress/module/mod175/Test.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod175/Test2.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod175/all.T8
-rw-r--r--testsuite/tests/ghc-regress/module/mod175/mod175.stdout2
-rw-r--r--testsuite/tests/ghc-regress/module/mod176.hs10
-rw-r--r--testsuite/tests/ghc-regress/module/mod176.stderr4
-rw-r--r--testsuite/tests/ghc-regress/module/mod177.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod177.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod178.hs8
-rw-r--r--testsuite/tests/ghc-regress/module/mod178.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod179.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod179.stdout1
-rw-r--r--testsuite/tests/ghc-regress/module/mod18.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod18.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod18.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod180.hs13
-rw-r--r--testsuite/tests/ghc-regress/module/mod180.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod19.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod19.stderr10
-rw-r--r--testsuite/tests/ghc-regress/module/mod19.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod2.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod2.stderr4
-rw-r--r--testsuite/tests/ghc-regress/module/mod2.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod20.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod20.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod20.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod21.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod21.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod21.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod22.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod22.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod22.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod23.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod23.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod23.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod24.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod24.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod24.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod25.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod25.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod25.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod26.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod26.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod26.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod27.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod27.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod27.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod29.hs6
-rw-r--r--testsuite/tests/ghc-regress/module/mod29.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod29.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod3.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod3.stderr4
-rw-r--r--testsuite/tests/ghc-regress/module/mod3.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod30.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod31.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod32.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod33.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod34.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod35.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod36.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod36.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod36.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod37.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod38.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod38.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod38.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod39.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod4.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod4.stderr4
-rw-r--r--testsuite/tests/ghc-regress/module/mod4.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod40.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod40.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod40.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod41.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod41.stderr8
-rw-r--r--testsuite/tests/ghc-regress/module/mod41.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod42.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod42.stderr8
-rw-r--r--testsuite/tests/ghc-regress/module/mod42.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod43.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod43.stderr7
-rw-r--r--testsuite/tests/ghc-regress/module/mod43.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod44.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod44.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod44.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod45.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod45.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod45.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod46.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod46.stderr6
-rw-r--r--testsuite/tests/ghc-regress/module/mod46.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod47.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod47.stderr9
-rw-r--r--testsuite/tests/ghc-regress/module/mod47.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod48.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod48.stderr4
-rw-r--r--testsuite/tests/ghc-regress/module/mod48.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod49.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod49.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod49.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod5.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod5.stderr-ghc3
-rw-r--r--testsuite/tests/ghc-regress/module/mod50.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod50.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod50.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod51.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod51.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod51.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod52.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod52.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod52.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod53.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod53.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod53.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod54.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod54.stderr9
-rw-r--r--testsuite/tests/ghc-regress/module/mod54.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod55.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod55.stderr6
-rw-r--r--testsuite/tests/ghc-regress/module/mod55.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod56.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod56.stderr8
-rw-r--r--testsuite/tests/ghc-regress/module/mod56.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod58.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod58.stderr4
-rw-r--r--testsuite/tests/ghc-regress/module/mod58.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod59.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod59.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod59.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod6.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod60.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod60.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod60.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod61.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod61.stderr4
-rw-r--r--testsuite/tests/ghc-regress/module/mod61.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod62.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod62.stderr6
-rw-r--r--testsuite/tests/ghc-regress/module/mod62.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod63.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod63.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod63.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod64.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod64.stderr0
-rw-r--r--testsuite/tests/ghc-regress/module/mod65.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod65.stderr0
-rw-r--r--testsuite/tests/ghc-regress/module/mod66.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod66.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod66.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod67.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod67.stderr3
-rw-r--r--testsuite/tests/ghc-regress/module/mod67.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod68.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod68.stderr5
-rw-r--r--testsuite/tests/ghc-regress/module/mod68.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod69.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod69.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod69.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod7.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod7.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod7.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod70.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod70.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod70.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod71.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod71.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod71.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod72.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod72.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod72.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod73.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod73.stderr7
-rw-r--r--testsuite/tests/ghc-regress/module/mod73.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod74.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod74.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod74.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod75.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod76.hs7
-rw-r--r--testsuite/tests/ghc-regress/module/mod76.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod76.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod77.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod77.stderr3
-rw-r--r--testsuite/tests/ghc-regress/module/mod77.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod79.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod79.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod79.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod8.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod8.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod8.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod80.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod80.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod80.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod81.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod81.stderr3
-rw-r--r--testsuite/tests/ghc-regress/module/mod81.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod82.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod83.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod84.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod85.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod86.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod87.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod87.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod87.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod88.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod88.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod88.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod89.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod89.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod89.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod9.hs3
-rw-r--r--testsuite/tests/ghc-regress/module/mod9.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod9.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod90.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod90.stderr8
-rw-r--r--testsuite/tests/ghc-regress/module/mod90.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod91.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod91.stderr3
-rw-r--r--testsuite/tests/ghc-regress/module/mod91.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod92.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod93.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod94.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod95.hs5
-rw-r--r--testsuite/tests/ghc-regress/module/mod96.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod97.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod97.stderr2
-rw-r--r--testsuite/tests/ghc-regress/module/mod97.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod98.hs4
-rw-r--r--testsuite/tests/ghc-regress/module/mod98.stderr4
-rw-r--r--testsuite/tests/ghc-regress/module/mod98.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/module/mod99.hs4
-rw-r--r--testsuite/tests/ghc-regress/numeric/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/1603.hs7
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/1603.stdout1
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/3676.hs32
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/3676.stdout48
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/4381.hs5
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/4381.stdout2
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/4383.hs1
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/4383.stdout1
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/all.T50
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith001.hs28
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith001.stdout5
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith001.stdout-ghc5
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith002.hs52
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith002.stdout4
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith002.stdout-ghc4
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith003.hs84
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout1109
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout-alpha-dec-osf31053
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout-mips-sgi-irix1053
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout-ws-641109
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith004.hs86
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith004.stdout12
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith005.hs60
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith005.stdout22
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith005.stdout-ws-6422
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith006.hs4
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith006.stdout1
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith007.hs23
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith007.stdout1
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith008.hs24
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith008.stdout1000
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith009.hs6
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith009.stdout1
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith010.hs11
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith010.stdout8
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith011.hs174
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout15418
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout-alpha-dec-osf314508
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout-mips-sgi-irix15138
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout-ws-6415418
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith012.hs90
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith012.stdout32
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith013.hs13
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith013.stdout32
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith014.hs11
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith014.stdout1
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith015.hs5
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith015.stdout2
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith016.hs33
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith016.stdout55
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith017.hs10
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith017.stdout2
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith018.hs12
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith018.stdout2
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith019.hs10
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/arith019.stdout1
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/expfloat.hs7
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/expfloat.stdout1
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun009.hs17
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout12
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-alpha-dec-osf312
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-mips-sgi-irix12
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-ws-6412
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-x86_64-unknown-openbsd12
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun010.hs13
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun010.stdout1
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun011.hs2
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun011.stdout1
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun012.hs35
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun012.stdout5
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun012.stdout-ws-649
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun013.hs17
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun013.stdout5
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun014.hs211
-rw-r--r--testsuite/tests/ghc-regress/numeric/should_run/numrun014.stdout172
-rw-r--r--testsuite/tests/ghc-regress/parser/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/parser/prog001/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/parser/prog001/Read006.hs5
-rw-r--r--testsuite/tests/ghc-regress/parser/prog001/Read007.hs8
-rw-r--r--testsuite/tests/ghc-regress/parser/prog001/test.T4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/DoAndIfThenElse.hs9
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/EmptyDecls.hs9
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/NondecreasingIndentation.hs10
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/T2245.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/T2245.stderr34
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/T3303.hs8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/T3303.stderr7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/T3303A.hs10
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/T3741.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/T5243.hs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/T5243.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/T5243A.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/all.T94
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/mc15.hs13
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/mc16.hs16
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read001.hs8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read002.hs14
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read002.stderr0
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read003.hs20
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read004.hs16
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read005.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read007.stderr0
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read008.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read009.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read010.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read010.stderr0
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read011.hs24
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read014.hs8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read014.stderr-ghc28
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read015.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read016.hs10
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read017.hs15
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read018.hs17
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read018.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read019.hs10
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read021.hs6
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read022.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read023.hs23
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read024.hs33
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read025.hs9
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read026.hs6
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read027.hs14
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read028.hs3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read029.hs14
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read030.hs10
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read031.hs10
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read032.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read033.hs3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read034.hs12
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read036.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read037.hs6
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read038.hs5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read039.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read040.hs8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read041.lhs10
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read042.hs29
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read043.hs11
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read043.stderr4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read044.hs5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read045.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read046.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read047.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read048.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read049.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read050.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read051.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read052.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read053.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read054.hs10
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read055.hs10
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read056.hs11
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read057.hs11
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read058.hs11
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read058.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read059.hs11
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read059.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read060.hs8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read061.hs8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read062.hs16
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read063.hs51
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read064.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read064.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read066.hs8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read066.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read067.hs8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read068.hs27
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read069.hs8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_compile/read_1821.hs10
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/NoDoAndIfThenElse.hs9
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/NoDoAndIfThenElse.stderr5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/NondecreasingIndentationFail.hs10
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/NondecreasingIndentationFail.stderr4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T1344a.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T1344a.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T1344b.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T1344b.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T1344c.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T1344c.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3095.hs5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3095.stderr5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3153.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3153.stderr6
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3751.hs3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3751.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3811.hs5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3811.stderr4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3811b.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3811b.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3811c.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3811c.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3811d.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3811d.stderr5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3811e.hs6
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3811e.stderr5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3811f.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3811f.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3811g.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/T3811g.stderr4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/all.T71
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/position001.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/position001.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/position002.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/position002.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail001.hs113
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail001.stderr24
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail001.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail001.stdout87
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail002.hs6
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail002.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail002.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail003.hs8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail003.stderr36
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail003.stderr-hugs5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail003.stdout11
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail004.hs41
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail004.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail004.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail005.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail005.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail005.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail006.hs9
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail006.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail006.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail007.hs8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail007.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail007.stdout9
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail008.hs5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail008.stderr6
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail008.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail009.hs15
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail009.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail009.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail009.stdout0
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail011.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail011.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail011.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail012.hs9
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail012.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail012.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail013.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail013.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail013.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail014.hs3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail014.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail014.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail015.hs5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail015.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail015.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail016.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail016.stderr4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail016.stdout7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail017.hs6
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail017.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail017.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail018.hs8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail018.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail018.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail019.hs3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail019.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail019.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail020.hs3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail020.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail020.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail021.hs0
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail021.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail022.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail022.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail022.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail023.hs12
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail023.stderr6
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail024.hs5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail024.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail024.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail025.hs5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail025.stderr4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail025.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail026.hs3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail026.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail026.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail027.hs15
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail027.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail028.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail028.stderr4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail029.hs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail029.stderr6
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail030.hs1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail030.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail031.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail031.stderr4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail032.hs22
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail032.stderr8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail033.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail033.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail034.hs5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail034.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail035.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail035.stderr4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail036.hs5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail036.stderr4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail037.hs5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail037.stderr5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail038.hs8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail038.stderr4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail039.hs9
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail039.stderr6
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail040.hs9
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail040.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail041.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail041.stderr5
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail042.hs12
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail042.stderr12
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail043.hs14
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail043.stderr24
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail044.hs9
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail044.stderr6
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail045.stderr-ghc-7.02
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail046.hs4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail046.stderr4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail047.hs9
-rw-r--r--testsuite/tests/ghc-regress/parser/should_fail/readFail047.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/T1344.hs10
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/T1344.stdout3
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/all.T7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/operator.hs23
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/operator.stdout8
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/operator2.hs7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/operator2.stdout1
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/readRun001.hs57
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/readRun001.stdout11
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/readRun002.hs35
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/readRun002.stdout7
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/readRun003.hs13
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/readRun003.stdout4
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/readRun004.hs28
-rw-r--r--testsuite/tests/ghc-regress/parser/should_run/readRun004.stdout2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/1103.hs13
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/1744.hs3
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/1744.stdout1
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/2302.hs1
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/2302.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/4373.hs3
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/all.T22
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_001.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_001.stderr0
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_002.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_002.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_003.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_003.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_004.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_004.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_005.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_005.stderr2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_010.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_010.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_011.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_011.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_020.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_020.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_021.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_021.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_022.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_022.stderr3
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_023.hs2
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_023.stderr0
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_024.hs194
-rw-r--r--testsuite/tests/ghc-regress/parser/unicode/utf8_024.stdout1
-rw-r--r--testsuite/tests/ghc-regress/perf/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/perf/compiler/Makefile9
-rw-r--r--testsuite/tests/ghc-regress/perf/compiler/T1969.hs1210
-rw-r--r--testsuite/tests/ghc-regress/perf/compiler/T3064.hs63
-rw-r--r--testsuite/tests/ghc-regress/perf/compiler/T3294.hs206
-rw-r--r--testsuite/tests/ghc-regress/perf/compiler/T4007.hs5
-rw-r--r--testsuite/tests/ghc-regress/perf/compiler/T4007.stderr6
-rw-r--r--testsuite/tests/ghc-regress/perf/compiler/T4801.hs13
-rw-r--r--testsuite/tests/ghc-regress/perf/compiler/T5030.hs194
-rw-r--r--testsuite/tests/ghc-regress/perf/compiler/all.T153
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/3586.hs20
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/3586.stdout1
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/Makefile36
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/MethSharing.hs97
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/MethSharing.stdout1
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T149_A.hs25
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T149_B.hs26
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T2902_A.hs18
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T2902_A_PairingSum.hs49
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T2902_B.hs18
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T2902_B_PairingSum.hs37
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T2902_Sum.hs14
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T3245.hs50
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T3245.stdout15
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T3736.hs212
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T3736.stdout1
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T3738.hs10
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T3738.stdout1
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T3738a.hs6
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T4321.hs15
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T4321.stdout1
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T4830.hs15
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T4830.stdout1
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T4978.hs125
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T4978.stdout1
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T5113.hs31
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T5113.stdout1
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T5205.hs13
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/T5205.stdout1
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/all.T148
-rw-r--r--testsuite/tests/ghc-regress/perf/should_run/lazy-bs-alloc.hs9
-rw-r--r--testsuite/tests/ghc-regress/perf/space_leaks/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/perf/space_leaks/T2762.hs18
-rw-r--r--testsuite/tests/ghc-regress/perf/space_leaks/T2762A.hs15
-rw-r--r--testsuite/tests/ghc-regress/perf/space_leaks/T4334.hs18
-rw-r--r--testsuite/tests/ghc-regress/perf/space_leaks/T4334.stdout3
-rw-r--r--testsuite/tests/ghc-regress/perf/space_leaks/all.T39
-rw-r--r--testsuite/tests/ghc-regress/perf/space_leaks/space_leak_001.hs5
-rw-r--r--testsuite/tests/ghc-regress/perf/space_leaks/space_leak_001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/plugins/HomePackagePlugin.hs34
-rw-r--r--testsuite/tests/ghc-regress/plugins/LinkerTicklingPlugin.hs15
-rw-r--r--testsuite/tests/ghc-regress/plugins/Makefile20
-rw-r--r--testsuite/tests/ghc-regress/plugins/all.T18
-rw-r--r--testsuite/tests/ghc-regress/plugins/plugins01.hs15
-rw-r--r--testsuite/tests/ghc-regress/plugins/plugins01.stderr4
-rw-r--r--testsuite/tests/ghc-regress/plugins/plugins01.stdout3
-rw-r--r--testsuite/tests/ghc-regress/plugins/plugins02.hs5
-rw-r--r--testsuite/tests/ghc-regress/plugins/plugins02.stderr1
-rw-r--r--testsuite/tests/ghc-regress/plugins/plugins03.hs5
-rw-r--r--testsuite/tests/ghc-regress/plugins/plugins03.stderr1
-rw-r--r--testsuite/tests/ghc-regress/plugins/plugins04.hs5
-rw-r--r--testsuite/tests/ghc-regress/plugins/plugins04.stderr2
-rw-r--r--testsuite/tests/ghc-regress/plugins/plugins05.hs7
-rw-r--r--testsuite/tests/ghc-regress/plugins/plugins05.stdout1
-rw-r--r--testsuite/tests/ghc-regress/plugins/plugins06.hs6
-rw-r--r--testsuite/tests/ghc-regress/plugins/plugins06.stdout0
-rw-r--r--testsuite/tests/ghc-regress/plugins/simple-plugin/LICENSE10
-rw-r--r--testsuite/tests/ghc-regress/plugins/simple-plugin/Makefile23
-rw-r--r--testsuite/tests/ghc-regress/plugins/simple-plugin/Setup.hs3
-rw-r--r--testsuite/tests/ghc-regress/plugins/simple-plugin/Simple/BadlyTypedPlugin.hs4
-rw-r--r--testsuite/tests/ghc-regress/plugins/simple-plugin/Simple/DataStructures.hs9
-rw-r--r--testsuite/tests/ghc-regress/plugins/simple-plugin/Simple/Plugin.hs82
-rw-r--r--testsuite/tests/ghc-regress/plugins/simple-plugin/simple-plugin.cabal20
-rw-r--r--testsuite/tests/ghc-regress/profiling/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_compile/2410.hs10
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_compile/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_compile/all.T8
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_compile/prof001.hs5
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_compile/prof002.hs17
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_compile/prof002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_fail/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_fail/all.T3
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_fail/proffail001.hs6
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_fail/proffail001.stderr2
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/2592.hs1
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/2592.stderr3
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/5314.hs10
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/5314.stdout1
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/Makefile25
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/T3001-2.hs279
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/T3001-2.stdout1
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/T3001.hs8
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/T3001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/all.T34
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/bio001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/heapprof001.hs182
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/heapprof001.stdout7
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/scc001.hs17
-rw-r--r--testsuite/tests/ghc-regress/profiling/should_run/scc001.stdout8
-rw-r--r--testsuite/tests/ghc-regress/programs/10queens/10queens.stdout1
-rw-r--r--testsuite/tests/ghc-regress/programs/10queens/Main.hs30
-rw-r--r--testsuite/tests/ghc-regress/programs/10queens/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/10queens/test.T6
-rw-r--r--testsuite/tests/ghc-regress/programs/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/Makefile-OLD43
-rw-r--r--testsuite/tests/ghc-regress/programs/Queens/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/Queens/queens.hs50
-rw-r--r--testsuite/tests/ghc-regress/programs/Queens/queens.stdout24
-rw-r--r--testsuite/tests/ghc-regress/programs/Queens/test.T6
-rw-r--r--testsuite/tests/ghc-regress/programs/andre_monad/Main.hs89
-rw-r--r--testsuite/tests/ghc-regress/programs/andre_monad/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/andre_monad/andre_monad.stdout1
-rw-r--r--testsuite/tests/ghc-regress/programs/andre_monad/test.T8
-rw-r--r--testsuite/tests/ghc-regress/programs/andy_cherry/DataTypes.hs622
-rw-r--r--testsuite/tests/ghc-regress/programs/andy_cherry/GenUtils.hs244
-rw-r--r--testsuite/tests/ghc-regress/programs/andy_cherry/Interp.hs262
-rw-r--r--testsuite/tests/ghc-regress/programs/andy_cherry/InterpUtils.hs371
-rw-r--r--testsuite/tests/ghc-regress/programs/andy_cherry/Main.hs204
-rw-r--r--testsuite/tests/ghc-regress/programs/andy_cherry/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/andy_cherry/Parser.hs98
-rw-r--r--testsuite/tests/ghc-regress/programs/andy_cherry/PrintTEX.hs182
-rw-r--r--testsuite/tests/ghc-regress/programs/andy_cherry/andy_cherry.stdout7258
-rw-r--r--testsuite/tests/ghc-regress/programs/andy_cherry/mygames.pgn1323
-rw-r--r--testsuite/tests/ghc-regress/programs/andy_cherry/test.T14
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/Basic.hs287
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/Bug.hs6
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/Expected.hs5009
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/Main.hs28
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/Physical.hs302
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/Plot.lhs79
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/PlotExample.lhs21
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/TypesettingTricks.hs21
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/barton-mangler-bug.stdout5009
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/piece.gnp4
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/piece.plt2500
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/sine.gnp4
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/sine.plt2500
-rw-r--r--testsuite/tests/ghc-regress/programs/barton-mangler-bug/test.T14
-rw-r--r--testsuite/tests/ghc-regress/programs/cholewo-eval/Arr.lhs395
-rw-r--r--testsuite/tests/ghc-regress/programs/cholewo-eval/Main.lhs109
-rw-r--r--testsuite/tests/ghc-regress/programs/cholewo-eval/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/cholewo-eval/cholewo-eval.stdout1
-rw-r--r--testsuite/tests/ghc-regress/programs/cholewo-eval/test.T5
-rw-r--r--testsuite/tests/ghc-regress/programs/cvh_unboxing/Append.lhs142
-rw-r--r--testsuite/tests/ghc-regress/programs/cvh_unboxing/Main.lhs10
-rw-r--r--testsuite/tests/ghc-regress/programs/cvh_unboxing/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/cvh_unboxing/README4
-rw-r--r--testsuite/tests/ghc-regress/programs/cvh_unboxing/Types.lhs63
-rw-r--r--testsuite/tests/ghc-regress/programs/cvh_unboxing/cvh_unboxing.stdout1
-rw-r--r--testsuite/tests/ghc-regress/programs/cvh_unboxing/test.T10
-rw-r--r--testsuite/tests/ghc-regress/programs/fast2haskell/Fast2haskell.hs50
-rw-r--r--testsuite/tests/ghc-regress/programs/fast2haskell/Main.hs296
-rw-r--r--testsuite/tests/ghc-regress/programs/fast2haskell/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/fast2haskell/fast2haskell.stdout2
-rw-r--r--testsuite/tests/ghc-regress/programs/fast2haskell/test.T8
-rw-r--r--testsuite/tests/ghc-regress/programs/fun_insts/Main.hs26
-rw-r--r--testsuite/tests/ghc-regress/programs/fun_insts/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/fun_insts/fun_insts.stdout1
-rw-r--r--testsuite/tests/ghc-regress/programs/fun_insts/test.T6
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/CSG.hs16
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/Construct.hs265
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/Data.hs408
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/Eval.hs355
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/Geometry.hs314
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/Illumination.hs224
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/Intersections.hs404
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/Interval.hs121
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/Main.hs17
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/Misc.hs11
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/Parse.hs137
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/Pixmap.hs64
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/Primitives.hs24
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/RayTrace.hs9
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/Surface.hs115
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/galois.gml147
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/galois_raytrace.stdout205
-rw-r--r--testsuite/tests/ghc-regress/programs/galois_raytrace/test.T26
-rw-r--r--testsuite/tests/ghc-regress/programs/hs-boot/A.hs6
-rw-r--r--testsuite/tests/ghc-regress/programs/hs-boot/A.hs-boot4
-rw-r--r--testsuite/tests/ghc-regress/programs/hs-boot/B.hs5
-rw-r--r--testsuite/tests/ghc-regress/programs/hs-boot/C.hs2
-rw-r--r--testsuite/tests/ghc-regress/programs/hs-boot/Main.hs8
-rw-r--r--testsuite/tests/ghc-regress/programs/hs-boot/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/hs-boot/all.T9
-rw-r--r--testsuite/tests/ghc-regress/programs/hs-boot/hs-boot.stderr2
-rw-r--r--testsuite/tests/ghc-regress/programs/jl_defaults/Main.hs24
-rw-r--r--testsuite/tests/ghc-regress/programs/jl_defaults/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/jl_defaults/jl_defaults.stdin97
-rw-r--r--testsuite/tests/ghc-regress/programs/jl_defaults/jl_defaults.stdout81
-rw-r--r--testsuite/tests/ghc-regress/programs/jl_defaults/test.T6
-rw-r--r--testsuite/tests/ghc-regress/programs/joao-circular/Data_Lazy.hs273
-rw-r--r--testsuite/tests/ghc-regress/programs/joao-circular/Funcs_Lexer.hs111
-rw-r--r--testsuite/tests/ghc-regress/programs/joao-circular/Funcs_Parser_Lazy.hs1549
-rw-r--r--testsuite/tests/ghc-regress/programs/joao-circular/LrcPrelude.hs72
-rw-r--r--testsuite/tests/ghc-regress/programs/joao-circular/Main.hs77
-rw-r--r--testsuite/tests/ghc-regress/programs/joao-circular/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/joao-circular/README6
-rw-r--r--testsuite/tests/ghc-regress/programs/joao-circular/Visfun_Lazy.hs1145
-rw-r--r--testsuite/tests/ghc-regress/programs/joao-circular/inp22
-rw-r--r--testsuite/tests/ghc-regress/programs/joao-circular/joao-circular.stdout86
-rw-r--r--testsuite/tests/ghc-regress/programs/joao-circular/test.T11
-rw-r--r--testsuite/tests/ghc-regress/programs/jq_readsPrec/Main.hs20
-rw-r--r--testsuite/tests/ghc-regress/programs/jq_readsPrec/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/jq_readsPrec/jq_readsPrec.stdin1
-rw-r--r--testsuite/tests/ghc-regress/programs/jq_readsPrec/jq_readsPrec.stdout1
-rw-r--r--testsuite/tests/ghc-regress/programs/jq_readsPrec/test.T6
-rw-r--r--testsuite/tests/ghc-regress/programs/jtod_circint/Bit.hs183
-rw-r--r--testsuite/tests/ghc-regress/programs/jtod_circint/LogFun.hs34
-rw-r--r--testsuite/tests/ghc-regress/programs/jtod_circint/Main.hs12
-rw-r--r--testsuite/tests/ghc-regress/programs/jtod_circint/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/jtod_circint/Signal.hs146
-rw-r--r--testsuite/tests/ghc-regress/programs/jtod_circint/jtod_circint.stdout1
-rw-r--r--testsuite/tests/ghc-regress/programs/jtod_circint/test.T10
-rw-r--r--testsuite/tests/ghc-regress/programs/jules_xref/Main.hs174
-rw-r--r--testsuite/tests/ghc-regress/programs/jules_xref/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/jules_xref/jules_xref.stdin1105
-rw-r--r--testsuite/tests/ghc-regress/programs/jules_xref/jules_xref.stdout500
-rw-r--r--testsuite/tests/ghc-regress/programs/jules_xref/test.T8
-rw-r--r--testsuite/tests/ghc-regress/programs/jules_xref2/Main.hs73
-rw-r--r--testsuite/tests/ghc-regress/programs/jules_xref2/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/jules_xref2/jules_xref2.stdin1105
-rw-r--r--testsuite/tests/ghc-regress/programs/jules_xref2/jules_xref2.stdout499
-rw-r--r--testsuite/tests/ghc-regress/programs/jules_xref2/test.T6
-rw-r--r--testsuite/tests/ghc-regress/programs/launchbury/Main.hs18
-rw-r--r--testsuite/tests/ghc-regress/programs/launchbury/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/launchbury/launchbury.stdin18
-rw-r--r--testsuite/tests/ghc-regress/programs/launchbury/launchbury.stdout18
-rw-r--r--testsuite/tests/ghc-regress/programs/launchbury/test.T6
-rw-r--r--testsuite/tests/ghc-regress/programs/lennart_range/Main.hs24
-rw-r--r--testsuite/tests/ghc-regress/programs/lennart_range/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/lennart_range/lennart_range.stdout1
-rw-r--r--testsuite/tests/ghc-regress/programs/lennart_range/test.T6
-rw-r--r--testsuite/tests/ghc-regress/programs/lex/Main.hs9
-rw-r--r--testsuite/tests/ghc-regress/programs/lex/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/lex/lex.stdin170
-rw-r--r--testsuite/tests/ghc-regress/programs/lex/lex.stdout1
-rw-r--r--testsuite/tests/ghc-regress/programs/lex/test.T6
-rw-r--r--testsuite/tests/ghc-regress/programs/life_space_leak/Main.hs360
-rw-r--r--testsuite/tests/ghc-regress/programs/life_space_leak/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/life_space_leak/life.test17
-rw-r--r--testsuite/tests/ghc-regress/programs/life_space_leak/life_space_leak.stdout3201
-rw-r--r--testsuite/tests/ghc-regress/programs/life_space_leak/test.T8
-rw-r--r--testsuite/tests/ghc-regress/programs/maessen-hashtab/Data/HashTab.hs339
-rw-r--r--testsuite/tests/ghc-regress/programs/maessen-hashtab/HashTest.hs278
-rw-r--r--testsuite/tests/ghc-regress/programs/maessen-hashtab/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/maessen-hashtab/maessen_hashtab.stdout15
-rw-r--r--testsuite/tests/ghc-regress/programs/maessen-hashtab/test.T11
-rw-r--r--testsuite/tests/ghc-regress/programs/north_array/Main.hs10
-rw-r--r--testsuite/tests/ghc-regress/programs/north_array/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/north_array/north_array.stdout1
-rw-r--r--testsuite/tests/ghc-regress/programs/north_array/test.T6
-rw-r--r--testsuite/tests/ghc-regress/programs/okeefe_neural/Main.hs1533
-rw-r--r--testsuite/tests/ghc-regress/programs/okeefe_neural/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/okeefe_neural/test.T12
-rw-r--r--testsuite/tests/ghc-regress/programs/record_upd/Main.hs25
-rw-r--r--testsuite/tests/ghc-regress/programs/record_upd/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/record_upd/record_upd.stdout1
-rw-r--r--testsuite/tests/ghc-regress/programs/record_upd/test.T6
-rw-r--r--testsuite/tests/ghc-regress/programs/rittri/Main.hs39
-rw-r--r--testsuite/tests/ghc-regress/programs/rittri/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/rittri/rittri.stdin39
-rw-r--r--testsuite/tests/ghc-regress/programs/rittri/rittri.stdout39
-rw-r--r--testsuite/tests/ghc-regress/programs/rittri/test.T6
-rw-r--r--testsuite/tests/ghc-regress/programs/sanders_array/Main.hs52
-rw-r--r--testsuite/tests/ghc-regress/programs/sanders_array/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/sanders_array/sanders_array.stdout1
-rw-r--r--testsuite/tests/ghc-regress/programs/sanders_array/test.T6
-rw-r--r--testsuite/tests/ghc-regress/programs/seward-space-leak/Main.lhs650
-rw-r--r--testsuite/tests/ghc-regress/programs/seward-space-leak/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/seward-space-leak/README13
-rw-r--r--testsuite/tests/ghc-regress/programs/seward-space-leak/cg023.stdout1
-rw-r--r--testsuite/tests/ghc-regress/programs/seward-space-leak/seward-space-leak.stdout1
-rw-r--r--testsuite/tests/ghc-regress/programs/seward-space-leak/test.T7
-rw-r--r--testsuite/tests/ghc-regress/programs/strict_anns/Main.hs13
-rw-r--r--testsuite/tests/ghc-regress/programs/strict_anns/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/strict_anns/strict_anns.stdout2
-rw-r--r--testsuite/tests/ghc-regress/programs/strict_anns/test.T6
-rw-r--r--testsuite/tests/ghc-regress/programs/thurston-modular-arith/Main.hs62
-rw-r--r--testsuite/tests/ghc-regress/programs/thurston-modular-arith/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/programs/thurston-modular-arith/TypeVal.hs89
-rw-r--r--testsuite/tests/ghc-regress/programs/thurston-modular-arith/test.T8
-rw-r--r--testsuite/tests/ghc-regress/programs/thurston-modular-arith/thurston-modular-arith.stdout1
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/Makefile11
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/T3953.hs6
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/T3953.stderr2
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/T4150.hs16
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/T4150.stderr3
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/T4150A.hs13
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/T4150template.txt3
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/all.T7
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq001/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq001/qq001.hs7
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq001/qq001.stderr4
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq001/test.T2
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq002/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq002/qq002.hs9
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq002/qq002.stderr4
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq002/test.T2
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq003/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq003/qq003.hs5
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq003/qq003.stderr4
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq003/test.T2
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq004/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq004/qq004.hs9
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq004/qq004.stderr4
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq004/test.T2
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq005/Expr.hs99
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq005/Main.hs13
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq005/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq005/qq005.stderr0
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq005/qq005.stdout3
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq005/test.T11
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq006/Expr.hs99
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq006/Main.hs9
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq006/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq006/qq006.stderr4
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq006/test.T7
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq007/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq007/QQ.hs11
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq007/Test.hs13
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq007/test.T10
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq008/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq008/QQ.hs11
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq008/Test.hs13
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq008/qq008.stderr4
-rw-r--r--testsuite/tests/ghc-regress/quasiquotation/qq008/test.T10
-rw-r--r--testsuite/tests/ghc-regress/rebindable/DoParamM.hs303
-rw-r--r--testsuite/tests/ghc-regress/rebindable/DoParamM.stderr25
-rw-r--r--testsuite/tests/ghc-regress/rebindable/DoRestrictedM.hs99
-rw-r--r--testsuite/tests/ghc-regress/rebindable/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/rebindable/T303.hs30
-rw-r--r--testsuite/tests/ghc-regress/rebindable/T4851.hs12
-rw-r--r--testsuite/tests/ghc-regress/rebindable/T5038.hs10
-rw-r--r--testsuite/tests/ghc-regress/rebindable/T5038.stdout1
-rw-r--r--testsuite/tests/ghc-regress/rebindable/all.T31
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable1.hs55
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable1.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable10.hs13
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable10.stdout2
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable2.hs122
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable2.stdout43
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable3.hs119
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable3.stdout43
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable4.hs127
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable4.stdout43
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable5.hs196
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable5.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable5.stdout43
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable6.hs184
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable6.stderr64
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable6.stdout43
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable7.hs38
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable7.stdout1
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable8.hs26
-rw-r--r--testsuite/tests/ghc-regress/rebindable/rebindable9.hs43
-rw-r--r--testsuite/tests/ghc-regress/rename/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/rename/prog001/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/rename/prog001/Rn037Help.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/prog001/rn037.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/prog001/test.T4
-rw-r--r--testsuite/tests/ghc-regress/rename/prog002/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/rename/prog002/Rn037Help.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/prog002/rename.prog002.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/prog002/rename.prog002.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/prog002/rnfail037.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/prog002/test.T4
-rw-r--r--testsuite/tests/ghc-regress/rename/prog003/A.hs2
-rw-r--r--testsuite/tests/ghc-regress/rename/prog003/B.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/prog003/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/rename/prog003/rename.prog003.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/prog003/rename.prog003.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/prog003/test.T4
-rw-r--r--testsuite/tests/ghc-regress/rename/prog004/A.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/prog004/B.hs4
-rw-r--r--testsuite/tests/ghc-regress/rename/prog004/C.hs7
-rw-r--r--testsuite/tests/ghc-regress/rename/prog004/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/rename/prog004/rename.prog004.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/prog004/test.T4
-rw-r--r--testsuite/tests/ghc-regress/rename/prog005/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/rename/prog005/VersionGraphClient.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/prog005/VersionGraphClient.hs-boot3
-rw-r--r--testsuite/tests/ghc-regress/rename/prog005/View.hs42
-rw-r--r--testsuite/tests/ghc-regress/rename/prog005/ViewType.hs12
-rw-r--r--testsuite/tests/ghc-regress/rename/prog005/test.T7
-rw-r--r--testsuite/tests/ghc-regress/rename/prog006/A.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/prog006/B/C.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/prog006/Main.hs7
-rw-r--r--testsuite/tests/ghc-regress/rename/prog006/Makefile39
-rw-r--r--testsuite/tests/ghc-regress/rename/prog006/Setup.lhs5
-rw-r--r--testsuite/tests/ghc-regress/rename/prog006/all.T7
-rw-r--r--testsuite/tests/ghc-regress/rename/prog006/pwd.hs12
-rw-r--r--testsuite/tests/ghc-regress/rename/prog006/rn.prog006.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/prog006/test.cabal4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/2334.hs7
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Imp100Aux.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Imp100Aux.hs-boot11
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Imp10Aux.hs13
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Imp10Aux.hs-boot11
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Imp500Aux.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Imp500Aux.hs-boot11
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Makefile44
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Rn042_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Rn043_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Rn043_B.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Rn044_A.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Rn044_B.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Rn050_A.hs10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Rn052Aux.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Rn053_A.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Rn053_B.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Rn059_A.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Rn059_B.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Rn065A.hs4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Rn066_A.hs10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/Rn067_A.hs4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/RnAux017.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/RnAux017.hs-boot8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T1074b.hs4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T1789.hs11
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T1789.stderr12
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T1789_2.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T1792_imports.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T1792_imports.stdout1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T1954.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T1972.hs20
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T1972.stderr11
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T2205.hs17
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T2436.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T2436a.hs4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T2506.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T2914.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3221.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3262.hs21
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3262.stderr-ghc8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3371.hs10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3371.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3449.hs13
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3449.hs-boot9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3449.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3449A.hs10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3640.hs11
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3823.stderr6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3823A.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3823A.hs-boot5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3823B.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3901.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T3943.hs10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T4003A.hs15
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T4003A.hs-boot8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T4003B.hs19
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T4239.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T4239A.hs10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T4240.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T4240.stdout1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T4240A.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T4240B.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T4478.hs7
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T4489.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T4489.stderr6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T4534.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T5331.hs19
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T5331.stderr18
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T5334.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/T5334.stderr13
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/all.T179
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/mc09.hs10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/mc10.hs15
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/mc10.stderr-ghc2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/mc11.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/mc12.hs11
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn003.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn003.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn005.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn005.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn006.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn006.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn009.hs2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn009.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn010.hs12
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn010.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn011.hs101
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn011.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn012.hs503
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn012.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn013.hs21
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn013.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn016.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn017.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn018.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn019.hs4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn020.hs11
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn022.hs11
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn022.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn023.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn024.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn025.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn025.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn026.hs12
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn027.hs12
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn028.hs18
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn029.hs17
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn031.hs12
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn032.hs18
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn033.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn034.hs12
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn035.hs10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn036.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn037.hs4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn037.stderr-ghc5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn039.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn039.stderr-ghc4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn040.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn040.stderr-ghc4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn041.hs13
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn041.stderr-ghc6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn042.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn043.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn044.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn045.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn046.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn046.stderr-ghc8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn047.hs13
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn047.stderr-ghc2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn048.hs15
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn049.hs13
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn049.stderr4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn050.hs13
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn050.stderr10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn051.hs13
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn052.hs10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn053.hs7
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn054.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn055.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn055.stderr-ghc2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn056.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn056.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn057.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn057.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn058.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn059.hs13
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn060.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn061.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn062.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn063.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn063.stderr4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn064.hs17
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn064.stderr4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn065.hs10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn066.hs13
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn066.stderr10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/rn067.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/timing001.hs507
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/timing001.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/timing002.hs504
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/timing002.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/timing003.hs508
-rw-r--r--testsuite/tests/ghc-regress/rename/should_compile/timing003.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/RnFail047_A.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/RnFail047_A.hs-boot6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/RnFail055.hs48
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/RnFail055.hs-boot29
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/RnFail055_aux.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/Rnfail040_A.hs2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T1595a.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T1595a.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T2310.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T2310.stderr10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T2490.hs10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T2490.stderr15
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T2723.hs16
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T2723.stderr4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T2901.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T2901.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T2993.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T2993.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T3265.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T3265.stderr8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T3792.hs4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T3792.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T4042.hs12
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T4042.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T5211.hs16
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/T5211.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/all.T83
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/mc13.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/mc13.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/mc14.hs16
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/mc14.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rn_dup.hs19
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rn_dup.stderr22
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail001.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail001.stderr6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail001.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail002.hs10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail002.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail002.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail003.hs4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail003.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail003.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail004.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail004.stderr10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail004.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail005.stderr8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail007.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail007.stderr3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail008.hs19
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail008.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail008.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail009.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail009.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail009.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail010.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail010.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail010.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail011.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail011.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail011.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail012.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail012.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail012.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail013.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail013.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail013.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail015.hs20
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail015.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail015.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail016.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail016.stderr6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail016.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail017.hs17
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail017.stderr8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail018.hs15
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail018.stderr8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail019.hs7
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail019.stderr6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail019.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail020.hs21
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail020.stderr0
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail021.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail021.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail021.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail022.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail022.stderr4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail022.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail023.hs15
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail023.stderr9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail023.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail024.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail024.stderr6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail024.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail025.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail025.stderr4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail025.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail026.hs19
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail026.stderr10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail026.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail027.hs5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail027.stderr3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail027.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail028.hs2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail028.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail028.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail029.hs4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail029.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail029.stderr-hugs2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail030.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail030.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail030.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail031.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail031.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail031.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail032.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail032.stderr7
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail032.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail033.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail033.stderr7
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail033.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail034.hs4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail034.stderr6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail034.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail035.hs3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail035.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail035.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail038.hs4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail038.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail038.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail039.hs12
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail039.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail039.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail040.hs11
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail040.stderr6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail040.stderr-hugs2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail041.hs7
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail041.stderr6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail041.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail042.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail042.stderr8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail042.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail043.hs10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail043.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail044.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail044.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail045.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail045.stderr10
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail046.hs4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail046.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail047.hs9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail047.stderr3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail048.hs13
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail048.stderr9
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail049.hs14
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail049.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail050.hs12
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail050.stderr2
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail051.hs11
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail051.stderr3
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail052.hs15
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail052.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail053.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail053.stderr4
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail054.hs6
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail054.stderr5
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail055.stderr107
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail056.hs8
-rw-r--r--testsuite/tests/ghc-regress/rename/should_fail/rnfail056.stderr4
-rw-r--r--testsuite/tests/ghc-regress/rts/2047.hs102
-rw-r--r--testsuite/tests/ghc-regress/rts/2783.hs1
-rw-r--r--testsuite/tests/ghc-regress/rts/2783.stderr1
-rw-r--r--testsuite/tests/ghc-regress/rts/3236.c7
-rw-r--r--testsuite/tests/ghc-regress/rts/3236.stderr1
-rw-r--r--testsuite/tests/ghc-regress/rts/3424.hs611
-rw-r--r--testsuite/tests/ghc-regress/rts/3424.stdout1
-rw-r--r--testsuite/tests/ghc-regress/rts/4059.hs22
-rw-r--r--testsuite/tests/ghc-regress/rts/4059_c.c4
-rw-r--r--testsuite/tests/ghc-regress/rts/4850.hs31
-rw-r--r--testsuite/tests/ghc-regress/rts/4850.stdout1
-rw-r--r--testsuite/tests/ghc-regress/rts/5250.hs60
-rw-r--r--testsuite/tests/ghc-regress/rts/Makefile38
-rw-r--r--testsuite/tests/ghc-regress/rts/T2615.hs9
-rw-r--r--testsuite/tests/ghc-regress/rts/T2615.stdout1
-rw-r--r--testsuite/tests/ghc-regress/rts/T4059.stdout2
-rw-r--r--testsuite/tests/ghc-regress/rts/all.T117
-rw-r--r--testsuite/tests/ghc-regress/rts/atomicinc.c21
-rw-r--r--testsuite/tests/ghc-regress/rts/bug1010.hs16
-rw-r--r--testsuite/tests/ghc-regress/rts/bug1010.stdout1
-rw-r--r--testsuite/tests/ghc-regress/rts/derefnull.hs14
-rw-r--r--testsuite/tests/ghc-regress/rts/derefnull.stderr-x86_64-unknown-openbsd1
-rw-r--r--testsuite/tests/ghc-regress/rts/derefnull.stdout-i386-unknown-mingw321
-rw-r--r--testsuite/tests/ghc-regress/rts/divbyzero.hs13
-rw-r--r--testsuite/tests/ghc-regress/rts/divbyzero.stderr-x86_64-unknown-openbsd1
-rw-r--r--testsuite/tests/ghc-regress/rts/divbyzero.stdout-i386-unknown-mingw321
-rw-r--r--testsuite/tests/ghc-regress/rts/exec_signals.hs20
-rw-r--r--testsuite/tests/ghc-regress/rts/exec_signals_child.c47
-rw-r--r--testsuite/tests/ghc-regress/rts/exec_signals_prepare.c29
-rw-r--r--testsuite/tests/ghc-regress/rts/libfoo_T2615.c2
-rw-r--r--testsuite/tests/ghc-regress/rts/libfoo_script_T2615.so5
-rw-r--r--testsuite/tests/ghc-regress/rts/outofmem.hs7
-rw-r--r--testsuite/tests/ghc-regress/rts/outofmem.stderr1
-rw-r--r--testsuite/tests/ghc-regress/rts/outofmem.stderr-i386-apple-darwin1
-rw-r--r--testsuite/tests/ghc-regress/rts/outofmem.stderr-i386-unknown-mingw321
-rw-r--r--testsuite/tests/ghc-regress/rts/outofmem.stderr-powerpc-apple-darwin1
-rw-r--r--testsuite/tests/ghc-regress/rts/outofmem.stderr-ws-321
-rw-r--r--testsuite/tests/ghc-regress/rts/outofmem.stderr-ws-641
-rw-r--r--testsuite/tests/ghc-regress/rts/outofmem.stdout1
-rw-r--r--testsuite/tests/ghc-regress/rts/outofmem2.hs10
-rw-r--r--testsuite/tests/ghc-regress/rts/outofmem2.stderr3
-rw-r--r--testsuite/tests/ghc-regress/rts/outofmem2.stdout1
-rw-r--r--testsuite/tests/ghc-regress/rts/return_mem_to_os.hs21
-rw-r--r--testsuite/tests/ghc-regress/rts/return_mem_to_os.stdout21
-rw-r--r--testsuite/tests/ghc-regress/rts/rtsflags001.hs1
-rw-r--r--testsuite/tests/ghc-regress/rts/rtsflags001.stderr-ws-321
-rw-r--r--testsuite/tests/ghc-regress/rts/rtsflags001.stderr-ws-641
-rw-r--r--testsuite/tests/ghc-regress/rts/spalign.c30
-rw-r--r--testsuite/tests/ghc-regress/rts/stack001.hs9
-rw-r--r--testsuite/tests/ghc-regress/rts/stack002.hs2
-rw-r--r--testsuite/tests/ghc-regress/rts/stack003.hs17
-rw-r--r--testsuite/tests/ghc-regress/rts/stack003.stdout1
-rw-r--r--testsuite/tests/ghc-regress/rts/testblockalloc.c75
-rw-r--r--testsuite/tests/ghc-regress/rts/testheapalloced.c100
-rw-r--r--testsuite/tests/ghc-regress/rts/testwsdeque.c167
-rw-r--r--testsuite/tests/ghc-regress/rts/traceEvent.hs5
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check01.hs9
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check01.stderr4
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check01_A.hs15
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check01_B.hs10
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check02.hs9
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check02.stderr1
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check02_A.hs16
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check02_B.hs10
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check03.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check03.stderr1
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check03_A.hs15
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check03_B.hs10
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check04.hs7
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check04.stderr2
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check04_1.hs9
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check04_A.hs15
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Check04_B.hs10
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/CheckA.hs15
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/CheckB.hs10
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/CheckB.stderr2
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/CheckB_Aux.hs15
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/all.T38
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafe01.hs12
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafe01.stderr3
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly01.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly02.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly03.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly03.stderr3
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg.hs6
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg2.hs6
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg3.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg4.hs11
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/Makefile46
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/Setup.hs4
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/all.T24
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/p.cabal15
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/check/pkg01/safePkg01.stdout24
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/Flags01.hs11
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/Flags01_A.cpp3
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/Flags02.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags01.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags02.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags03.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags04.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags04.stderr2
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags05.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags06.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags07.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags07.stderr2
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags08.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags08.stderr2
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags09.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags09.stderr2
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags10.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags10.stderr2
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags11.hs9
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/flags/all.T29
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang01.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang01.stderr3
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang02.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang02.stderr3
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang03.hs10
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang03.stderr4
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang04.hs32
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang04.stdout4
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang05.hs34
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang05.stdout4
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang06.hs40
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang06.stdout2
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang06_A.hs24
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang07.hs41
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang07.stderr7
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang07_A.hs24
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang08.hs21
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang08.stderr7
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang08_A.c6
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09.hs10
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09.stderr1
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09_A.hs15
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09_B.hs19
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10.hs12
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10.stderr20
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10.stdout3
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10_A.hs16
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10_B.hs20
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11.hs12
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11.stdout1
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11_A.hs9
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11_B.hs16
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang12.hs14
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang12.stderr11
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang12_B.hs18
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/safeLanguage/all.T19
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport01.hs11
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport01.stderr3
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport02.hs27
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport02.stdout3
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport02_A.hs16
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport03.hs29
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport03.stderr5
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep01.hs13
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep01.stderr5
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep02.hs16
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep02.stderr5
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep03.hs7
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep03.stderr5
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep04.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep04.stderr5
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep05.hs13
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep05.stderr0
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep06.hs6
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep06.stderr0
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep07.hs6
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep07.stderr0
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep08.hs9
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep08.stderr0
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep09.hs6
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep09.stderr0
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep10.hs8
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep10.stderr0
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/all.T21
-rw-r--r--testsuite/tests/ghc-regress/simplCore/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/simplCore/prog001/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/simplCore/prog001/Simpl006Help.hs3
-rw-r--r--testsuite/tests/ghc-regress/simplCore/prog001/simpl006.hs19
-rw-r--r--testsuite/tests/ghc-regress/simplCore/prog001/test.T5
-rw-r--r--testsuite/tests/ghc-regress/simplCore/prog002/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/simplCore/prog002/Simpl009Help.hs39
-rw-r--r--testsuite/tests/ghc-regress/simplCore/prog002/simpl009.hs23
-rw-r--r--testsuite/tests/ghc-regress/simplCore/prog002/test.T5
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/EvalTest.hs48
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/EvalTest.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/Makefile51
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/Simpl020_A.hs27
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T1647.hs5
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T2520.hs28
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T3016.hs584
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T3055.hs9
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T3055.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T3118.hs40
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T3234.hs8
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T3234.stderr69
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T3717.hs10
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T3717.stderr33
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T3717.stderr-ghc-7.047
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T3772.hs21
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T3772.stdout26
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T3772.stdout-ghc-7.025
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T3772_A.hs48
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T3831.hs107
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4201.hs15
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4201.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4203.hs37
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4306.hs12
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4306.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4345.hs16
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4398.hs13
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4398.stderr4
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4903.hs10
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4903a.hs56
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4908.hs10
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4908.stderr73
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4908.stderr-ghc-7.077
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4918.hs6
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4918.stdout2
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4918a.hs8
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4930.hs5
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4930.stderr35
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4945.hs30
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T4957.hs19
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T5168.hs32
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/T5329.hs129
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/all.T125
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/dfun-loop.hs41
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/rule1.hs19
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/rule2.hs18
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/rule2.stderr33
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl-T1370.hs7
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl001.hs13
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl001.stderr0
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl002.hs10
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl002.stderr0
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl003.hs42
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl003.stderr0
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl004.hs18
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl004.stderr0
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl005.hs25
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl005.stderr0
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl007.hs235
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl009.hs12
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl010.hs19
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl011.hs56
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl012.hs23
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl013.hs19
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl014.hs30
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl015.hs1683
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl016.hs12
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl016.stderr4
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl017.hs64
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl017.stderr20
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl018.hs12
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl019.hs14
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl020.hs9
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/simpl020.stderr8
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/spec-inline.hs29
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/spec-inline.stderr152
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/spec-inline.stderr-ghc-7.0154
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/spec001.hs425
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/spec002.hs17
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/spec003.hs11
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_compile/strict-float.hs13
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/SeqRule.hs16
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/SeqRule.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T2486.hs37
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T2486.stderr24
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T2756.hs15
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T2756.stdout0
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3403.hs32
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3403.stdout2
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3437.hs19
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3437.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3591.hs206
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3591.stderr456
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3591.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3959.hs67
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3959.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3972.hs25
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3972A.hs86
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3983.hs5
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3983.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3983_Bar.hs15
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T3983_Foo.hs8
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T4814.hs39
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T4814.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T5315.hs89
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/T5315.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/all.T47
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun001.hs14
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun001.stderr0
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun002.hs23
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun002.stderr1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun003.hs23
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun003.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun004.hs34
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun004.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun005.hs47
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun005.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun007.hs27
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun007.stdout5
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun007.stdout-ws-645
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun008.hs18
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun008.stdout2
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun009.hs149
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun009.stdout1
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun010.hs313
-rw-r--r--testsuite/tests/ghc-regress/simplCore/should_run/simplrun010.stderr1
-rw-r--r--testsuite/tests/ghc-regress/stranal/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/T1988.hs12
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/all.T18
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/default.hs16
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/default.stderr0
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/fact.hs3
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/fact.stderr0
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/fun.hs6
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/fun.stderr0
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/goo.hs10
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/goo.stderr0
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/ins.hs27
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/ins.stderr0
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/map.hs32
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/map.stderr0
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/newtype.hs14
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/sim.hs103
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/sim.stderr0
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/str001.hs10
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/str001.stderr4
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/str002.hs12
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/str002.stderr0
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/syn.hs15
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/syn.stderr0
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/test.hs6
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/test.stderr0
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/tst.hs3
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/tst.stderr0
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/unu.hs76
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_compile/unu.stderr0
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_run/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_run/T2756b.hs15
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_run/all.T9
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_run/strun001.hs15
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_run/strun001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_run/strun002.hs12
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_run/strun002.stderr1
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_run/strun003.hs23
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_run/strun003.stdout1
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_run/strun004.hs10
-rw-r--r--testsuite/tests/ghc-regress/stranal/should_run/strun004.stdout1
-rw-r--r--testsuite/tests/ghc-regress/th/2014/A.hs1
-rw-r--r--testsuite/tests/ghc-regress/th/2014/A.hs-boot1
-rw-r--r--testsuite/tests/ghc-regress/th/2014/B.hs9
-rw-r--r--testsuite/tests/ghc-regress/th/2014/C.hs8
-rw-r--r--testsuite/tests/ghc-regress/th/2014/Makefile9
-rw-r--r--testsuite/tests/ghc-regress/th/2014/all.T8
-rw-r--r--testsuite/tests/ghc-regress/th/Makefile19
-rw-r--r--testsuite/tests/ghc-regress/th/T1835.hs37
-rw-r--r--testsuite/tests/ghc-regress/th/T1835.stdout14
-rw-r--r--testsuite/tests/ghc-regress/th/T2386.hs9
-rw-r--r--testsuite/tests/ghc-regress/th/T2386_Lib.hs7
-rw-r--r--testsuite/tests/ghc-regress/th/T2597a.hs8
-rw-r--r--testsuite/tests/ghc-regress/th/T2597a_Lib.hs12
-rw-r--r--testsuite/tests/ghc-regress/th/T2597b.hs9
-rw-r--r--testsuite/tests/ghc-regress/th/T2597b.stderr6
-rw-r--r--testsuite/tests/ghc-regress/th/T2597b_Lib.hs9
-rw-r--r--testsuite/tests/ghc-regress/th/T2632.hs16
-rw-r--r--testsuite/tests/ghc-regress/th/T2674.hs9
-rw-r--r--testsuite/tests/ghc-regress/th/T2674.stderr4
-rw-r--r--testsuite/tests/ghc-regress/th/T2685.hs6
-rw-r--r--testsuite/tests/ghc-regress/th/T2685a.hs9
-rw-r--r--testsuite/tests/ghc-regress/th/T2700.hs10
-rw-r--r--testsuite/tests/ghc-regress/th/T2700.stderr1
-rw-r--r--testsuite/tests/ghc-regress/th/T2700.stderr-ghc-7.01
-rw-r--r--testsuite/tests/ghc-regress/th/T2713.hs9
-rw-r--r--testsuite/tests/ghc-regress/th/T2713.stderr4
-rw-r--r--testsuite/tests/ghc-regress/th/T2817.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/T2931.hs8
-rw-r--r--testsuite/tests/ghc-regress/th/T3100.hs20
-rw-r--r--testsuite/tests/ghc-regress/th/T3177.hs14
-rw-r--r--testsuite/tests/ghc-regress/th/T3177a.hs13
-rw-r--r--testsuite/tests/ghc-regress/th/T3177a.stderr11
-rw-r--r--testsuite/tests/ghc-regress/th/T3319.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/T3319.stderr8
-rw-r--r--testsuite/tests/ghc-regress/th/T3395.hs9
-rw-r--r--testsuite/tests/ghc-regress/th/T3395.stderr16
-rw-r--r--testsuite/tests/ghc-regress/th/T3467.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/T3572.hs10
-rw-r--r--testsuite/tests/ghc-regress/th/T3572.stdout1
-rw-r--r--testsuite/tests/ghc-regress/th/T3600.hs5
-rw-r--r--testsuite/tests/ghc-regress/th/T3600.stderr5
-rw-r--r--testsuite/tests/ghc-regress/th/T3600a.hs19
-rw-r--r--testsuite/tests/ghc-regress/th/T3845.hs21
-rw-r--r--testsuite/tests/ghc-regress/th/T3899.hs6
-rw-r--r--testsuite/tests/ghc-regress/th/T3899.stderr2
-rw-r--r--testsuite/tests/ghc-regress/th/T3899a.hs14
-rw-r--r--testsuite/tests/ghc-regress/th/T3920.hs15
-rw-r--r--testsuite/tests/ghc-regress/th/T3920.stdout2
-rw-r--r--testsuite/tests/ghc-regress/th/T4056.hs15
-rw-r--r--testsuite/tests/ghc-regress/th/T4169.hs15
-rw-r--r--testsuite/tests/ghc-regress/th/T4188.hs28
-rw-r--r--testsuite/tests/ghc-regress/th/T4188.stderr6
-rw-r--r--testsuite/tests/ghc-regress/th/T4233.hs9
-rw-r--r--testsuite/tests/ghc-regress/th/T4255.hs5
-rw-r--r--testsuite/tests/ghc-regress/th/T4255.stderr2
-rw-r--r--testsuite/tests/ghc-regress/th/T4436.hs9
-rw-r--r--testsuite/tests/ghc-regress/th/T4436.stderr11
-rw-r--r--testsuite/tests/ghc-regress/th/T4949.hs8
-rw-r--r--testsuite/tests/ghc-regress/th/T5037.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/T5037.stderr3
-rw-r--r--testsuite/tests/ghc-regress/th/T5126.hs12
-rw-r--r--testsuite/tests/ghc-regress/th/T5217.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/T5217.stderr14
-rw-r--r--testsuite/tests/ghc-regress/th/TH_1tuple.hs15
-rw-r--r--testsuite/tests/ghc-regress/th/TH_1tuple.stderr6
-rw-r--r--testsuite/tests/ghc-regress/th/TH_NestedSplices.hs31
-rw-r--r--testsuite/tests/ghc-regress/th/TH_NestedSplices_Lib.hs14
-rw-r--r--testsuite/tests/ghc-regress/th/TH_bracket1.hs7
-rw-r--r--testsuite/tests/ghc-regress/th/TH_bracket2.hs7
-rw-r--r--testsuite/tests/ghc-regress/th/TH_bracket3.hs10
-rw-r--r--testsuite/tests/ghc-regress/th/TH_class1.hs7
-rw-r--r--testsuite/tests/ghc-regress/th/TH_dataD1.hs10
-rw-r--r--testsuite/tests/ghc-regress/th/TH_dataD1.stderr3
-rw-r--r--testsuite/tests/ghc-regress/th/TH_dupdecl.hs10
-rw-r--r--testsuite/tests/ghc-regress/th/TH_dupdecl.stderr5
-rw-r--r--testsuite/tests/ghc-regress/th/TH_emptycase.hs12
-rw-r--r--testsuite/tests/ghc-regress/th/TH_emptycase.stderr6
-rw-r--r--testsuite/tests/ghc-regress/th/TH_exn1.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/TH_exn1.stderr6
-rw-r--r--testsuite/tests/ghc-regress/th/TH_exn2.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/TH_exn2.stderr6
-rw-r--r--testsuite/tests/ghc-regress/th/TH_fail.hs7
-rw-r--r--testsuite/tests/ghc-regress/th/TH_fail.stderr2
-rw-r--r--testsuite/tests/ghc-regress/th/TH_foreignInterruptible.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/TH_foreignInterruptible.stderr13
-rw-r--r--testsuite/tests/ghc-regress/th/TH_genEx.hs14
-rw-r--r--testsuite/tests/ghc-regress/th/TH_genEx.stderr6
-rw-r--r--testsuite/tests/ghc-regress/th/TH_genExLib.hs20
-rw-r--r--testsuite/tests/ghc-regress/th/TH_ghci1.script6
-rw-r--r--testsuite/tests/ghc-regress/th/TH_ghci1.stdout2
-rw-r--r--testsuite/tests/ghc-regress/th/TH_import_loop/Main.hs7
-rw-r--r--testsuite/tests/ghc-regress/th/TH_import_loop/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/th/TH_import_loop/ModuleA.hs5
-rw-r--r--testsuite/tests/ghc-regress/th/TH_import_loop/ModuleA.hs-boot3
-rw-r--r--testsuite/tests/ghc-regress/th/TH_import_loop/ModuleB.hs9
-rw-r--r--testsuite/tests/ghc-regress/th/TH_import_loop/ModuleC.hs9
-rw-r--r--testsuite/tests/ghc-regress/th/TH_import_loop/TH_import_loop.T5
-rw-r--r--testsuite/tests/ghc-regress/th/TH_mkName.hs20
-rw-r--r--testsuite/tests/ghc-regress/th/TH_ppr1.hs37
-rw-r--r--testsuite/tests/ghc-regress/th/TH_ppr1.stdout14
-rw-r--r--testsuite/tests/ghc-regress/th/TH_pragma.hs12
-rw-r--r--testsuite/tests/ghc-regress/th/TH_pragma.stderr18
-rw-r--r--testsuite/tests/ghc-regress/th/TH_raiseErr1.hs4
-rw-r--r--testsuite/tests/ghc-regress/th/TH_recompile/Main.hs7
-rw-r--r--testsuite/tests/ghc-regress/th/TH_recompile/Makefile22
-rw-r--r--testsuite/tests/ghc-regress/th/TH_recompile/Sub1.hs5
-rw-r--r--testsuite/tests/ghc-regress/th/TH_recompile/Sub2.hs5
-rw-r--r--testsuite/tests/ghc-regress/th/TH_recompile/TH_recompile.stdout2
-rw-r--r--testsuite/tests/ghc-regress/th/TH_recompile/all.T16
-rw-r--r--testsuite/tests/ghc-regress/th/TH_recover.hs12
-rw-r--r--testsuite/tests/ghc-regress/th/TH_recover.stdout1
-rw-r--r--testsuite/tests/ghc-regress/th/TH_reifyDecl1.hs46
-rw-r--r--testsuite/tests/ghc-regress/th/TH_reifyDecl1.stderr30
-rw-r--r--testsuite/tests/ghc-regress/th/TH_reifyDecl2.hs12
-rw-r--r--testsuite/tests/ghc-regress/th/TH_reifyDecl2.stderr2
-rw-r--r--testsuite/tests/ghc-regress/th/TH_reifyMkName.hs13
-rw-r--r--testsuite/tests/ghc-regress/th/TH_reifyMkName.stderr3
-rw-r--r--testsuite/tests/ghc-regress/th/TH_reifyType1.hs13
-rw-r--r--testsuite/tests/ghc-regress/th/TH_reifyType2.hs9
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repE1.hs30
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repE2.hs36
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repE2.stdout8
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repE3.hs19
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repGuard.hs35
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repGuard.stderr7
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repGuardOutput.hs29
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repGuardOutput.stdout4
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repPatSig.hs18
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repPatSig.stderr4
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repPrim.hs33
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repPrim.stderr8
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repPrim2.hs33
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repPrim2.stderr8
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repPrimOutput.hs23
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repPrimOutput.stdout4
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repPrimOutput2.hs23
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repPrimOutput2.stdout4
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repUnboxedTuples.hs27
-rw-r--r--testsuite/tests/ghc-regress/th/TH_repUnboxedTuples.stderr5
-rw-r--r--testsuite/tests/ghc-regress/th/TH_runIO.hs12
-rw-r--r--testsuite/tests/ghc-regress/th/TH_runIO.stderr7
-rw-r--r--testsuite/tests/ghc-regress/th/TH_scope.hs8
-rw-r--r--testsuite/tests/ghc-regress/th/TH_scopedTvs.hs7
-rw-r--r--testsuite/tests/ghc-regress/th/TH_scopedTvs.stderr4
-rw-r--r--testsuite/tests/ghc-regress/th/TH_sections.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceD1.hs10
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceD1.stderr6
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceD1_Lib.hs13
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceD2.hs5
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceD2_Lib.hs3
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceDecl1.hs10
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceDecl2.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceDecl3.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceDecl3_Lib.hs12
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceDecl4.hs12
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceDecl4_Lib.hs21
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceE1.hs6
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceE1.stdout1
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceE3.hs25
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceE4.hs13
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceE4.stdout1
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceE5.hs15
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceE5.stdout1
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceE5_Lib.hs10
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceE5_prof.hs15
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceE5_prof.stdout1
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceE5_prof_Lib.hs10
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceE6.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceExpr1.hs10
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceGuard.hs13
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceInst.hs15
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceViewPat/A.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceViewPat/Main.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceViewPat/TH_spliceViewPat.stdout2
-rw-r--r--testsuite/tests/ghc-regress/th/TH_spliceViewPat/test.T11
-rw-r--r--testsuite/tests/ghc-regress/th/TH_tf1.hs21
-rw-r--r--testsuite/tests/ghc-regress/th/TH_tf2.hs25
-rw-r--r--testsuite/tests/ghc-regress/th/TH_tf3.hs11
-rw-r--r--testsuite/tests/ghc-regress/th/TH_tuple1.hs15
-rw-r--r--testsuite/tests/ghc-regress/th/TH_unboxedSingleton.hs7
-rw-r--r--testsuite/tests/ghc-regress/th/TH_viewPatPrint.hs10
-rw-r--r--testsuite/tests/ghc-regress/th/TH_viewPatPrint.stdout2
-rw-r--r--testsuite/tests/ghc-regress/th/TH_where.hs8
-rw-r--r--testsuite/tests/ghc-regress/th/TH_where.stdout1
-rw-r--r--testsuite/tests/ghc-regress/th/all.T185
-rw-r--r--testsuite/tests/ghc-regress/typecheck/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/bug1465/B1.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/bug1465/B2.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/bug1465/C.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/bug1465/Makefile33
-rw-r--r--testsuite/tests/ghc-regress/typecheck/bug1465/all.T4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/bug1465/bug1465.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/bug1465/v1/A.hs2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/bug1465/v1/Setup.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/bug1465/v1/bug1465.cabal4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/bug1465/v2/A.hs2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/bug1465/v2/Setup.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/bug1465/v2/bug1465.cabal4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/prog001/A.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/prog001/B.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/prog001/C.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/prog001/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/prog001/test.T6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/prog001/typecheck.prog001.stderr-ghc4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/prog002/A.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/prog002/B.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/prog002/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/prog002/test.T7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/FD1.hs17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/FD1.stderr12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/FD2.hs26
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/FD2.stderr25
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/FD3.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/FD3.stderr13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/FD4.hs28
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/GivenOverlapping.hs21
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/GivenTypeSynonym.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/HasKey.hs22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/LoopOfTheDay1.hs31
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/LoopOfTheDay2.hs38
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/LoopOfTheDay3.hs22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/Makefile26
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/PolyRec.hs29
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/SilentParametersOverlapping.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T1123.hs42
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T1470.hs38
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T1495.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T1634.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2045.hs126
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2412.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2412.hs-boot4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2412A.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2433.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2433_Help.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2478.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2478.stderr3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2494-2.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2494.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2494.stderr22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2497.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2497.stderr2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2572.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2683.hs31
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2735.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2799.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2846.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T2846.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T3018.hs106
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T3219.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T3342.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T3346.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T3391.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T3409.hs53
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T3692.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T3696.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T3696.stderr3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T3955.hs24
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4284.hs17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4355.hs60
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4355.stderr3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4361.hs29
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4401.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4404.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4418.hs20
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4444.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4498.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4524.hs251
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4912.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4912.stderr4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4912a.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4917.hs21
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4952.hs27
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T4969.hs87
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T5051.hs33
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T5120.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/T700.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/Tc170_Aux.hs24
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/Tc173a.hs17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/Tc173b.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/Tc239_Help.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/Tc245_A.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/all.T348
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/faxen.hs30
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/mc18.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/syn-perf.hs108
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/syn-perf2.hs33
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc001.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc002.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc003.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc004.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc005.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc006.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc007.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc008.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc009.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc010.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc011.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc012.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc013.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc014.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc015.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc016.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc017.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc018.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc019.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc020.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc021.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc022.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc023.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc024.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc025.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc026.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc027.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc028.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc029.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc030.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc031.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc032.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc033.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc034.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc035.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc036.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc037.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc038.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc039.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc040.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc041.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc042.hs73
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc043.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc044.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc045.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc046.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc047.hs23
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc048.hs21
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc049.hs39
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc050.hs23
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc051.hs30
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc052.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc053.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc054.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc055.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc056.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc056.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc057.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc058.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc059.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc060.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc061.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc062.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc063.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc064.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc065.hs108
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc066.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc067.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc068.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc069.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc070.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc073.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc074.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc076.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc077.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc078.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc079.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc080.hs58
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc081.hs29
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc082.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc084.hs23
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc085.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc086.hs60
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc087.hs32
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc088.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc089.hs77
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc090.hs22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc091.hs67
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc092.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc093.hs25
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc094.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc095.hs237
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc096.hs36
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc097.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc098.hs31
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc099.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc100.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc101.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc102.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc104.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc105.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc106.hs20
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc107.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc108.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc109.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc111.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc112.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc113.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc114.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc115.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc115.stderr-ghc4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc116.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc116.stderr-ghc4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc117.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc118.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc119.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc120.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc121.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc122.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc123.hs17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc124.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc125.hs38
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc125.stderr-ghc20
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc126.hs36
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc126.stderr-ghc8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc127.hs27
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc128.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc129.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc130.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc131.hs30
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc132.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc133.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc134.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc134.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc135.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc136.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc137.hs34
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc140.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc141.hs17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc141.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc142.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc143.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc144.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc145.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc146.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc147.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc148.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc149.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc150.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc151.hs30
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc152.hs28
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc153.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc154.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc155.hs17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc156.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc157.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc158.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc159.hs21
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc159.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc160.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc161.hs17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc161.stderr-ghc4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc162.hs27
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc162.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc163.hs39
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc164.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc165.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc166.hs25
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc167.hs23
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc168.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc168.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc169.hs27
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc170.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc171.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc172.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc174.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc175.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc176.hs36
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc177.hs108
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc178.hs35
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc179.hs23
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc180.hs63
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc181.hs46
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc182.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc182.stderr3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc183.hs26
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc184.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc185.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc186.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc187.hs31
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc188.hs26
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc189.hs26
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc190.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc191.hs29
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc192.hs145
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc193.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc194.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc195.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc196.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc197.hs40
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc198.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc199.hs34
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc200.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc201.hs25
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc202.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc203.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc204.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc205.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc206.hs17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc207.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc208.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc209.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc210.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc211.hs73
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc211.stderr30
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc212.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc213.hs49
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc214.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc215.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc216.hs39
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc216.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc217.hs20
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc218.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc219.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc220.hs26
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc221.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc222.hs38
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc223.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc224.hs26
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc225.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc226.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc227.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc228.hs20
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc229.hs35
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc230.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc231.hs29
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc231.stderr22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc232.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc233.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc234.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc235.hs39
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc236.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc237.hs20
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc238.hs20
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc239.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc240.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc241.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc242.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc243.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc243.stderr4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc244.hs30
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc245.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc245.stdout3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc246.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc247.hs17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc248.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/tc249.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_compile/twins.hs27
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/FailDueToGivenOverlapping.hs27
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/FailDueToGivenOverlapping.stderr13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/FrozenErrorTests.hs56
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/FrozenErrorTests.stderr73
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/IPFail.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/IPFail.stderr13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/LongWayOverlapping.hs44
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/LongWayOverlapping.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/SCLoop.hs55
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/SCLoop.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T1595.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T1595.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T1633.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T1633.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T1899.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T1899.stderr15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2126.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2126.stderr4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2307.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2307.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2414.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2414.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2538.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2538.stderr14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2688.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2688.stderr13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2714.hs26
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2714.stderr22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2806.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2806.stderr12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2846b.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2846b.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2994.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T2994.stderr15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3102.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3102.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3155.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3155.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3176.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3176.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3323.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3323.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3406.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3406.stderr10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3468.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3468.hs-boot4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3468.stderr11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3540.hs17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3540.stderr25
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3613.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3613.stderr17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3950.hs17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3950.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3966.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T3966.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T4875.hs28
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T4875.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T5084.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T5084.stderr3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T5236.hs21
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T5236.stderr20
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T5246.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T5246.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T5300.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/T5300.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/Tcfail186_Help.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/all.T245
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/fd-loop.hs32
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/fd-loop.stderr12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/mc19.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/mc19.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/mc20.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/mc20.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/mc21.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/mc21.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/mc22.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/mc22.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/mc23.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/mc23.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/mc24.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/mc24.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/mc25.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/mc25.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail001.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail001.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail001.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail002.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail002.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail002.stderr-hugs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail003.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail003.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail003.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail004.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail004.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail004.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail005.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail005.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail005.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail006.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail006.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail006.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail007.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail007.stderr11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail007.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail008.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail008.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail008.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail009.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail009.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail009.stderr-hugs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail010.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail010.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail010.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail011.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail011.stderr2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail011.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail012.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail012.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail012.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail013.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail013.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail013.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail014.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail014.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail014.stderr-hugs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail015.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail015.stderr10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail015.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.stderr-ghc-7.08
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.stderr-hugs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail017.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail017.stderr10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail017.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail018.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail018.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail018.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail019.hs20
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail019.stderr12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail019.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail020.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail020.stderr10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail020.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail021.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail021.stderr4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail021.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail023.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail023.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail023.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail025.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail026.stderr13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail027.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail027.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail027.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail028.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail028.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail028.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail029.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail029.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail029.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail030.hs2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail030.stderr3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail031.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail031.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail031.stderr-hugs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail032.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail032.stderr14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail032.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail033.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail033.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail033.stderr-hugs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail034.hs39
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail034.stderr12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail035.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail035.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail035.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail036.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail036.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail036.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail037.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail037.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail037.stderr-hugs2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail038.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail038.stderr10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail038.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail040.hs29
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail040.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail040.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail042.hs30
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail042.stderr24
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail042.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail043.hs219
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail043.stderr21
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail043.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail044.hs22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail044.stderr16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail044.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail046.hs27
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail046.stderr18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail046.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail047.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail047.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail047.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail048.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail048.stderr2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail048.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail049.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail049.stderr2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail049.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail050.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail050.stderr2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail050.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail051.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail051.stderr4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail051.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail052.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail052.stderr2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail052.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail053.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail053.stderr2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail053.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail054.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail054.stderr2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail054.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail055.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail055.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail055.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail056.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail056.stderr2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail056.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail057.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail057.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail057.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail058.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail058.stderr4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail058.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail061.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail061.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail061.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail062.hs37
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail062.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail062.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail063.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail063.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail063.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail065.hs37
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail065.stderr11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail065.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail067.hs98
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail067.stderr82
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail067.stderr-hugs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail068.hs90
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail068.stderr92
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail069.hs48
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail069.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail069.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail070.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail070.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail070.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail071.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail071.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail072.hs24
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail072.stderr14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail072.stderr-hugs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail073.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail073.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail073.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail075.hs20
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail075.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail076.hs30
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail076.stderr13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail076.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail077.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail077.stderr2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail077.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail078.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail078.stderr4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail078.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail079.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail079.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail080.hs27
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail080.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail080.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail082.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail082.stderr4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail082.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail083.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail083.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail083.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail084.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail084.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail084.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail085.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail085.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail085.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail086.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail086.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail086.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail087.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail087.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail088.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail088.stderr4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail088.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail089.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail089.stderr2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail089.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail090.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail090.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail091.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail091.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail091.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail092.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail092.stderr3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail093.hs36
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail094.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail094.stderr2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail094.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail095.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail095.stderr3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail096.hs25
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail096.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail096.stderr-hugs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail097.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail097.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail097.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail098.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail098.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail098.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail099.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail099.stderr13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail099.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail100.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail100.stderr4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail100.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail101.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail101.stderr4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail101.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail102.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail102.stderr17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail102.stderr-hugs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail103.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail103.stderr11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail104.hs23
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail104.stderr16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail105.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail105.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail106.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail106.stderr12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail106.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail107.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail107.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail107.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail108.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail108.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail108.stderr-hugs2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail109.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail109.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail109.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail110.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail110.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail110.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail111.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail112.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail112.stderr15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail112.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail113.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail113.stderr18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail113.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail114.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail114.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail114.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail115.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail115.stderr14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail116.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail116.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail116.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail117.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail117.stderr13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail117.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail118.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail118.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail118.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail119.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail119.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail119.stderr-hugs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail120.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail120.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail121.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail121.stderr13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail122.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail122.stderr26
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail123.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail123.stderr16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail124.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail124.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail125.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail125.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail125.stderr-hugs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail126.hs31
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail126.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail127.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail127.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail128.hs29
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail128.stderr20
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail128.stderr-hugs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail129.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail129.stderr12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail129.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail130.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail130.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail130.stderr-hugs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail131.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail131.stderr11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail132.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail132.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail132.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail133.hs79
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail133.stderr15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail134.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail134.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail134.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail135.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail135.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail135.stderr-hugs1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail136.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail136.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail137.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail137.stderr10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail138.hs36
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail138.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail139.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail139.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail140.hs22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail140.stderr29
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail141.hs17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail141.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail142.hs21
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail142.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail143.hs116
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail143.stderr11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail144.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail144.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail145.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail145.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail146.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail146.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail147.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail147.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail148.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail148.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail149.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail149.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail149.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail150.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail150.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail151.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail151.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail152.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail152.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail153.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail153.stderr12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail154.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail154.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail155.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail155.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail156.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail156.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail157.hs39
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail157.stderr12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail158.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail158.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail159.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail159.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail160.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail160.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail161.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail161.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail162.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail162.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail164.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail164.stderr15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail165.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail165.stderr12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail166.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail166.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail167.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail167.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail168.hs66
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail168.stderr12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail169.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail169.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail170.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail170.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail171.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail171.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail172.hs22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail172.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail173.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail173.stderr3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail174.hs17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail174.stderr23
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail175.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail175.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail176.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail176.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail177.hs34
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail177.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail178.hs19
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail178.stderr13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail179.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail179.stderr14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail180.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail180.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail181.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail181.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail182.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail182.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail183.hs4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail183.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail184.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail184.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail185.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail185.stderr17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail186.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail186.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail186.stderr-ghc-7.07
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail187.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail187.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail188.hs17
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail188.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail189.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail189.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail190.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail190.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail191.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail191.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail192.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail192.stderr18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail193.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail193.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail194.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail194.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail195.hs6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail195.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail196.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail196.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail197.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail197.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail198.hs7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail198.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail199.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail199.stderr5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail200.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail200.stderr8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail201.hs23
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail201.stderr14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail202.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail202.stderr7
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203.hs54
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203.stderr36
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203a.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203a.stderr6
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail204.hs11
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail204.stderr13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail205.hs3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail205.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail206.hs22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail206.stderr46
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail207.hs9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail207.stderr16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail208.hs5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_fail/tcfail208.stderr13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/IPRun.hs26
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/IPRun.stdout4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T1624.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T1624.stdout2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T1735.hs61
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T1735.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Basics.hs492
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Context.hs57
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Instances.hs41
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Main.hs62
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/State.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Xml.hs143
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T2722.hs34
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T2722.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T3500a.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T3500a.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T3500b.hs20
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T3500b.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T3731-short.hs88
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T3731-short.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T3731.hs213
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T3731.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T4809.hs18
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T4809.stdout5
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T4809_IdentityT.hs41
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/T4809_XMLGenerator.hs74
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/TcRun025_B.hs38
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/TcRun038_B.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/all.T83
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/church.hs44
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/church.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/mc17.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/mc17.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun001.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun001.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-alpha-dec-osf31
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-mips-sgi-irix1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-ws-641
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-x86_64-unknown-openbsd1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun003.hs27
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun003.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun003.stdout-ghc1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun004.hs72
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun004.stdout2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun005.hs25
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun005.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun006.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun006.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun008.hs26
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun008.stdout2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun009.hs25
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun009.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun010.hs44
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun010.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun011.hs25
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun011.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun012.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun012.stdout2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun013.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun013.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun014.hs22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun014.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun015.hs21
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun015.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun016.hs48
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun016.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun017.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun017.stdout2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun018.hs84
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun018.stdout2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun019.hs21
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun019.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun020.hs22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun020.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun021.hs60
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun021.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun022.hs23
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun022.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun023.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun023.stdout2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun024.hs43
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun024.stdout4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun025.hs15
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun025.stdout4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun026.hs22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun026.stderr0
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun026.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun027.hs12
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun027.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun028.hs63
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun028.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun029.hs29
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun029.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun030.hs20
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun030.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun031.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun031.stdout2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun032.hs20
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun032.stdout2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun033.hs31
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun033.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun034.hs14
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun034.stdout2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun035.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun035.stderr9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun036.hs58
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun036.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun037.hs13
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun037.stdout2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun038.hs8
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun038.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun039.hs22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun039.stdout2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun040.hs27
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun040.stdout4
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun041.hs37
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun041.stdout2
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun042.hs10
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/tcrun042.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/testeq2.hs68
-rw-r--r--testsuite/tests/ghc-regress/typecheck/should_run/testeq2.stdout1
-rw-r--r--testsuite/tests/ghc-regress/typecheck/testeq1/FakePrelude.hs41
-rw-r--r--testsuite/tests/ghc-regress/typecheck/testeq1/Main.hs24
-rw-r--r--testsuite/tests/ghc-regress/typecheck/testeq1/Makefile3
-rw-r--r--testsuite/tests/ghc-regress/typecheck/testeq1/TypeCast.hs16
-rw-r--r--testsuite/tests/ghc-regress/typecheck/testeq1/TypeEq.hs22
-rw-r--r--testsuite/tests/ghc-regress/typecheck/testeq1/test.T9
-rw-r--r--testsuite/tests/ghc-regress/typecheck/testeq1/typecheck.testeq1.stdout1
6220 files changed, 0 insertions, 233439 deletions
diff --git a/testsuite/tests/ghc-regress/KNOWN_FAILURES b/testsuite/tests/ghc-regress/KNOWN_FAILURES
deleted file mode 100644
index cb9b5e0f9b..0000000000
--- a/testsuite/tests/ghc-regress/KNOWN_FAILURES
+++ /dev/null
@@ -1,50 +0,0 @@
-Current known failures
-~~~~~~~~~~~~~~~~~~~~~~
-
-deSugar/should_compile/ds052
- -- inaccuracy in non-exhaustive pattern warnings
-
-lib/IO/hReady001
- -- IO.hReady doesn't detect the end of a file
-
-lib/IO/openFile005, openFile007, readFile001 [Windows]
- -- file locking is broken on Windows
-
-lib/IOExts/hTell001, hTell002 [Windows]
- -- seeking on text handles not implemented on Windows
-
-lib/net/net001 [Windows]
- -- getProtocolByName seems not to be working on Windows
-
-lib/system/system001 [Windows]
- -- probably a failure due to System.system using Cmd.exe?
-
-parser/should_fail/read002
- -- we don't disallow certain characters in strings (eg. newline)
-
-parser/should_fail/read024
- -- parser bug related to layout processing
-
-rename/should_fail/rnfail034
- -- duplicated "in" in an error message
-
-typecheck/should_fail/tcfail080
- -- ambiguity test: ambiguity isn't detected early enough
- -- (behaviour is sound but could be more helpful, according
- -- to SPJ)
-
-typecheck/should_run/tcrun007
- -- tests for generics, which are currently broken in 5.02
-
-programs/okeefe_neural
- -- causes the compiler to run out of heap in the simplifier
- -- (problem with large constant data structures?)
-
--- These tests fail the 'optasm' way, due to inconsistent floating
--- point results on x86. The inconsistency is caused
-
-numeric/should_run/arith008
-numeric/should_run/arith012
-programs/barton_mangler_bug
-programs/cholewo-eval
-programs/galois_raytrace
diff --git a/testsuite/tests/ghc-regress/Makefile b/testsuite/tests/ghc-regress/Makefile
deleted file mode 100644
index 4ec5d82c91..0000000000
--- a/testsuite/tests/ghc-regress/Makefile
+++ /dev/null
@@ -1,18 +0,0 @@
-TOP=../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-# The libraries that we actually know about. We don't want to test
-# extralibs that are in our tree but which we haven't built.
-LIBRARIES := $(shell '$(GHC_PKG)' list --simple-output --names-only)
-
-ifeq "$(findstring base,$(LIBRARIES))" ""
-$(error base library does not seem to be installed)
-endif
-
-# XXX Do this better?
-# Now find the "tests" directories of those libraries, where they exist
-LIBRARY_TEST_PATHS := $(wildcard $(patsubst %, $(TOP)/../libraries/%/tests, $(LIBRARIES)))
-
-# Add tests from packages
-RUNTEST_OPTS += $(patsubst %, --rootdir=%, $(LIBRARY_TEST_PATHS))
diff --git a/testsuite/tests/ghc-regress/NOTES b/testsuite/tests/ghc-regress/NOTES
deleted file mode 100644
index a376f1db04..0000000000
--- a/testsuite/tests/ghc-regress/NOTES
+++ /dev/null
@@ -1,34 +0,0 @@
-
-Deficiencies
-~~~~~~~~~~~~
-
-typecheck/should_compile tc056,tc115,tc116: stderr not checked
- (maybe fixed; ToDo: check)
-
-typecheck/should_fail
- Data82.hs Digraph.hs Digraph.stderr Inst82_1.hs Inst82_2.hs
- have not been assimilated.
- (are needed by tcfail082 but am not sure how to do multi-module
- tests yet)
-
-rename/should_compile
- rn037 issues
-
-stranal/should_compile
- There are some failures in here due to unexpected stdouts
- (the compiler isn't asked to generate any?)
-
-specialise/
- Contains complete progs. Not done yet.
-
-simpleCore/should_compile
- simpl006 has extra bits
-
-deSugar/should_compile
- cvh-ds-unboxed/ not done
-
-specialise/
- none of these are run in the old framework, so not included
- in new.
-
-
diff --git a/testsuite/tests/ghc-regress/annotations/Makefile b/testsuite/tests/ghc-regress/annotations/Makefile
deleted file mode 100644
index bced01ff9b..0000000000
--- a/testsuite/tests/ghc-regress/annotations/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_compile/Makefile b/testsuite/tests/ghc-regress/annotations/should_compile/Makefile
deleted file mode 100644
index 9ce1411567..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_compile/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_compile/all.T b/testsuite/tests/ghc-regress/annotations/should_compile/all.T
deleted file mode 100644
index e13c24e72b..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_compile/all.T
+++ /dev/null
@@ -1,25 +0,0 @@
-
-setTestOpts(if_compiler_profiled(skip))
-
-# Annotations, like Template Haskell, require runtime evaluation. In
-# order for this to work with profiling, we would have to build the
-# program twice and use -osuf p_o (see the TH_splitE5_prof test). For
-# now, just disable the profiling ways.
-test('ann01',
- [req_interp, omit_ways(['profasm','profthreaded'])],
- compile,
- ['-v0'])
-
-""""
-Helpful things to C+P:
-
-test('', normal, compile_fail, [''])
-
-test('', normal, compile, [''])
-
-test('', extra_clean(['.hi', '.o']),
- multimod_compile_fail, ['', '-v0'])
-
-test('', extra_clean(['.hi', '.o']),
- multimod_compile, ['', '-v0'])
-"""
diff --git a/testsuite/tests/ghc-regress/annotations/should_compile/ann01.hs b/testsuite/tests/ghc-regress/annotations/should_compile/ann01.hs
deleted file mode 100644
index 134930787f..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_compile/ann01.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
-module Ann01 where
-
-{-# ANN module (1 :: Int) #-}
-{-# ANN module (1 :: Integer) #-}
-{-# ANN module (1 :: Double) #-}
-{-# ANN module $([| 1 :: Int |]) #-}
-{-# ANN module "Hello" #-}
-{-# ANN module (Just (1 :: Int)) #-}
-{-# ANN module [1 :: Int, 2, 3] #-}
-{-# ANN module ([1..10] :: [Integer]) #-}
-{-# ANN module ''Foo #-}
-{-# ANN module (-1 :: Int) #-}
-
-{-# ANN type Foo (1 :: Int) #-}
-{-# ANN type Foo (1 :: Integer) #-}
-{-# ANN type Foo (1 :: Double) #-}
-{-# ANN type Foo $([| 1 :: Int |]) #-}
-{-# ANN type Foo "Hello" #-}
-{-# ANN type Foo (Just (1 :: Int)) #-}
-{-# ANN type Foo [1 :: Int, 2, 3] #-}
-{-# ANN type Foo ([1..10] :: [Integer]) #-}
-{-# ANN type Foo ''Foo #-}
-{-# ANN type Foo (-1 :: Int) #-}
-data Foo = Bar Int
-
-{-# ANN f (1 :: Int) #-}
-{-# ANN f (1 :: Integer) #-}
-{-# ANN f (1 :: Double) #-}
-{-# ANN f $([| 1 :: Int |]) #-}
-{-# ANN f "Hello" #-}
-{-# ANN f (Just (1 :: Int)) #-}
-{-# ANN f [1 :: Int, 2, 3] #-}
-{-# ANN f ([1..10] :: [Integer]) #-}
-{-# ANN f 'f #-}
-{-# ANN f (-1 :: Int) #-}
-f x = x
diff --git a/testsuite/tests/ghc-regress/annotations/should_compile/ann01.stderr b/testsuite/tests/ghc-regress/annotations/should_compile/ann01.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_compile/ann01.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/Annfail04_Help.hs b/testsuite/tests/ghc-regress/annotations/should_fail/Annfail04_Help.hs
deleted file mode 100644
index 55cbe99884..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/Annfail04_Help.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Annfail04_Help where
-
-class Thing a where
- thing :: a \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/Annfail05_Help.hs b/testsuite/tests/ghc-regress/annotations/should_fail/Annfail05_Help.hs
deleted file mode 100644
index 1300c091ca..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/Annfail05_Help.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Annfail05_Help where
-
-data NoInstances = NoInstances \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/Annfail06_Help.hs b/testsuite/tests/ghc-regress/annotations/should_fail/Annfail06_Help.hs
deleted file mode 100644
index 224181f261..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/Annfail06_Help.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Annfail06_Help where
-
-data InstancesInWrongModule = InstancesInWrongModule \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/Makefile b/testsuite/tests/ghc-regress/annotations/should_fail/Makefile
deleted file mode 100644
index 9ce1411567..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/all.T b/testsuite/tests/ghc-regress/annotations/should_fail/all.T
deleted file mode 100644
index 21eaa765c3..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/all.T
+++ /dev/null
@@ -1,34 +0,0 @@
-
-test('annfail01', normal, compile_fail, [''])
-test('annfail02', normal, compile_fail, [''])
-test('annfail03', req_interp, compile_fail, [''])
-test('annfail04',
- [req_interp, extra_clean(['Annfail04_Help.hi', 'Annfail04_Help.o'])],
- multimod_compile_fail, ['annfail04', '-v0'])
-test('annfail05',
- [req_interp, extra_clean(['Annfail05_Help.hi', 'Annfail05_Help.o'])],
- multimod_compile_fail, ['annfail05', '-v0'])
-test('annfail06',
- [req_interp, extra_clean(['Annfail06_Help.hi', 'Annfail06_Help.o'])],
- multimod_compile_fail, ['annfail06', '-v0'])
-test('annfail07', req_interp, compile_fail, [''])
-test('annfail08', req_interp, compile_fail, [''])
-test('annfail09', req_interp, compile_fail, [''])
-test('annfail10', req_interp, compile_fail, [''])
-test('annfail11', normal, compile_fail, [''])
-test('annfail12', req_interp, compile_fail, ['-v0'])
-test('annfail13', normal, compile_fail, [''])
-
-""""
-Helpful things to C+P:
-
-test('', normal, compile_fail, [''])
-
-test('', normal, compile, [''])
-
-test('', extra_clean(['.hi', '.o']),
- multimod_compile_fail, ['', '-v0'])
-
-test('', extra_clean(['.hi', '.o']),
- multimod_compile, ['', '-v0'])
-"""
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail01.hs b/testsuite/tests/ghc-regress/annotations/should_fail/annfail01.hs
deleted file mode 100644
index c5a8c29e5b..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail01.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Annfail01 where
--- Testing annotating things that don't exist
-
-{-# ANN type Foo (1 :: Int) #-}
-{-# ANN f (1 :: Int) #-} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail01.stderr b/testsuite/tests/ghc-regress/annotations/should_fail/annfail01.stderr
deleted file mode 100644
index 70553f983f..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail01.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-annfail01.hs:4:1: Not in scope: type constructor or class `Foo'
-
-annfail01.hs:5:1: Not in scope: `f'
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail02.hs b/testsuite/tests/ghc-regress/annotations/should_fail/annfail02.hs
deleted file mode 100644
index 50154e752c..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail02.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Annfail02 where
--- Testing annotating things that don't exist in the right namespace
-
-data Foo = Bar
-
-{-# ANN Foo (1 :: Int) #-}
-{-# ANN type Bar (2 :: Int) #-} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail02.stderr b/testsuite/tests/ghc-regress/annotations/should_fail/annfail02.stderr
deleted file mode 100644
index 83d54f9840..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail02.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-annfail02.hs:6:1: Not in scope: data constructor `Foo'
-
-annfail02.hs:7:1: Not in scope: type constructor or class `Bar'
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail03.hs b/testsuite/tests/ghc-regress/annotations/should_fail/annfail03.hs
deleted file mode 100644
index c3e2a82323..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail03.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-
-module Annfail03 where
--- Testing annotating something with a value defined + Typeabled / Dataed in same module
-
-import Data.Data
-import Data.Typeable
-
-data InModule = InModule
- deriving (Typeable, Data)
-
-{-# ANN module InModule #-}
-
-{-# ANN type Foo InModule #-}
-data Foo = Bar
-
-{-# ANN f InModule #-}
-f x = x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail03.stderr b/testsuite/tests/ghc-regress/annotations/should_fail/annfail03.stderr
deleted file mode 100644
index a7be7feb93..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail03.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-annfail03.hs:17:1:
- GHC stage restriction: instance for `Data InModule'
- is used in a top-level splice or annotation,
- and must be imported, not defined locally
- In the expression: InModule
- In the annotation: {-# ANN f InModule #-}
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail04.hs b/testsuite/tests/ghc-regress/annotations/should_fail/annfail04.hs
deleted file mode 100644
index 352850e07d..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail04.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-module Annfail04 where
-
-import Annfail04_Help
--- Testing that we detect the use of instances defined in the same module
-
-instance Thing Int where
- thing = 1
-
-{-# ANN module (thing :: Int) #-}
-
-{-# ANN type Foo (thing :: Int) #-}
-data Foo = Bar
-
-{-# ANN f (thing :: Int) #-}
-f x = x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail04.stderr b/testsuite/tests/ghc-regress/annotations/should_fail/annfail04.stderr
deleted file mode 100644
index dcbe0e7945..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail04.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-annfail04.hs:14:12:
- GHC stage restriction: instance for `Thing Int'
- is used in a top-level splice or annotation,
- and must be imported, not defined locally
- In the expression: (thing :: Int)
- In the annotation: {-# ANN f (thing :: Int) #-}
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail05.hs b/testsuite/tests/ghc-regress/annotations/should_fail/annfail05.hs
deleted file mode 100644
index 8657fd4ab6..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail05.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module Annfail05 where
-
-import Annfail05_Help
--- Testing annotating with a value that is not Typeable or Data-able
-
-{-# ANN module NoInstances #-}
-
-{-# ANN type Foo NoInstances #-}
-data Foo = Bar
-
-{-# ANN f NoInstances #-}
-f x = x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail05.stderr b/testsuite/tests/ghc-regress/annotations/should_fail/annfail05.stderr
deleted file mode 100644
index 4e861c6b97..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail05.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-annfail05.hs:11:1:
- No instance for (Data.Data.Data NoInstances)
- arising from an annotation
- Possible fix:
- add an instance declaration for (Data.Data.Data NoInstances)
- In the expression: NoInstances
- In the annotation: {-# ANN f NoInstances #-}
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail06.hs b/testsuite/tests/ghc-regress/annotations/should_fail/annfail06.hs
deleted file mode 100644
index 51c922098a..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail06.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-module Annfail06 where
--- Testing that we don't accept Typeable or Data instances defined in the same module
-
-import Annfail06_Help
-
-import Data.Data
-import Data.Typeable
-
-instance Typeable InstancesInWrongModule where
- typeOf _ = undefined
-
-instance Data InstancesInWrongModule where
- gfoldl = undefined
- gunfold = undefined
-
-{-# ANN module InstancesInWrongModule #-}
-
-{-# ANN type Foo InstancesInWrongModule #-}
-data Foo = Bar
-
-{-# ANN f InstancesInWrongModule #-}
-f x = x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail06.stderr b/testsuite/tests/ghc-regress/annotations/should_fail/annfail06.stderr
deleted file mode 100644
index c5082c386e..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail06.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-annfail06.hs:21:1:
- GHC stage restriction: instance for `Data InstancesInWrongModule'
- is used in a top-level splice or annotation,
- and must be imported, not defined locally
- In the expression: InstancesInWrongModule
- In the annotation: {-# ANN f InstancesInWrongModule #-}
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail07.hs b/testsuite/tests/ghc-regress/annotations/should_fail/annfail07.hs
deleted file mode 100644
index 732a66a3e4..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail07.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module Annfail07 where
--- Testing normal type errors in annotations
-
-{-# ANN module (head True) #-}
-
-{-# ANN type Foo (head True) #-}
-data Foo = Bar
-
-{-# ANN f (head True) #-}
-f x = x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail07.stderr b/testsuite/tests/ghc-regress/annotations/should_fail/annfail07.stderr
deleted file mode 100644
index 01f4b62c45..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail07.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-annfail07.hs:9:17:
- Couldn't match expected type `[a0]' with actual type `Bool'
- In the first argument of `head', namely `True'
- In the expression: (head True)
- In the annotation: {-# ANN f (head True) #-}
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail08.hs b/testsuite/tests/ghc-regress/annotations/should_fail/annfail08.hs
deleted file mode 100644
index c2b3a1ae19..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail08.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module Annfail08 where
--- Testing instance type errors in annotations
-
-{-# ANN module (id + 1) #-}
-
-{-# ANN type Foo (id + 1) #-}
-data Foo = Bar
-
-{-# ANN f (id + 1) #-}
-f x = x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail08.stderr b/testsuite/tests/ghc-regress/annotations/should_fail/annfail08.stderr
deleted file mode 100644
index e8b14d1f8a..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail08.stderr
+++ /dev/null
@@ -1,16 +0,0 @@
-
-annfail08.hs:9:1:
- No instance for (Data.Data.Data (a0 -> a0))
- arising from an annotation
- Possible fix:
- add an instance declaration for (Data.Data.Data (a0 -> a0))
- In the expression: (id + 1)
- In the annotation: {-# ANN f (id + 1) #-}
-
-annfail08.hs:9:17:
- No instance for (Num (a0 -> a0))
- arising from the literal `1'
- Possible fix: add an instance declaration for (Num (a0 -> a0))
- In the second argument of `(+)', namely `1'
- In the expression: (id + 1)
- In the annotation: {-# ANN f (id + 1) #-}
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail09.hs b/testsuite/tests/ghc-regress/annotations/should_fail/annfail09.hs
deleted file mode 100644
index 871dd11895..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail09.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module Annfail09 where
--- Testing that we detect references to ids defined in module being compiled in annotations
-
-g = 10
-
-{-# ANN module g #-}
-
-{-# ANN type Foo g #-}
-data Foo = Bar
-
-{-# ANN f g #-}
-f x = x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail09.stderr b/testsuite/tests/ghc-regress/annotations/should_fail/annfail09.stderr
deleted file mode 100644
index 5eae63a012..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail09.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-annfail09.hs:11:11:
- GHC stage restriction: `g'
- is used in a top-level splice or annotation,
- and must be imported, not defined locally
- In the expression: g
- In the annotation: {-# ANN f g #-}
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail10.hs b/testsuite/tests/ghc-regress/annotations/should_fail/annfail10.hs
deleted file mode 100644
index d03b6a73fb..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail10.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module Annfail10 where
--- Testing ambiguity in annotations
-
-{-# ANN module 1 #-}
-
-{-# ANN type Foo 1 #-}
-data Foo = Bar
-
-{-# ANN f 1 #-}
-f x = x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail10.stderr b/testsuite/tests/ghc-regress/annotations/should_fail/annfail10.stderr
deleted file mode 100644
index eac3002efa..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail10.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-annfail10.hs:9:1:
- Ambiguous type variable `a0' in the constraints:
- (Data.Data.Data a0) arising from an annotation
- at annfail10.hs:9:1-15
- (Num a0) arising from the literal `1' at annfail10.hs:9:11
- Probable fix: add a type signature that fixes these type variable(s)
- In the expression: 1
- In the annotation: {-# ANN f 1 #-}
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail11.hs b/testsuite/tests/ghc-regress/annotations/should_fail/annfail11.hs
deleted file mode 100644
index 2eebcb6b63..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail11.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Annfail11 where
-
-{-# ANN length "Cannot annotate other modules yet" #-}
-{-# ANN type Integer "Cannot annotate other modules yet" #-} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail11.stderr b/testsuite/tests/ghc-regress/annotations/should_fail/annfail11.stderr
deleted file mode 100644
index 18769f7466..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail11.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-annfail11.hs:3:1: Not in scope: `length'
-
-annfail11.hs:4:1: Not in scope: type constructor or class `Integer'
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail12.hs b/testsuite/tests/ghc-regress/annotations/should_fail/annfail12.hs
deleted file mode 100644
index 7fe23073d1..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail12.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Annfail12 where
-
--- Testing errors hidden in annotations
-
-{-# ANN f (error "You were meant to see this error!" :: Int) #-}
-f x = x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail12.stderr b/testsuite/tests/ghc-regress/annotations/should_fail/annfail12.stderr
deleted file mode 100644
index 6b08c0a814..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail12.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-annfail12.hs:5:1:
- Exception when trying to run compile-time code:
- You were meant to see this error!
- In the expression:
- (error "You were meant to see this error!" :: Int)
- In the annotation:
- {-# ANN f (error "You were meant to see this error!" :: Int) #-}
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail13.hs b/testsuite/tests/ghc-regress/annotations/should_fail/annfail13.hs
deleted file mode 100644
index 0de17ce5c0..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail13.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Annfail13 where
--- Testing that brackets are mandatory in the ANN syntax
-
-{-# ANN f id 1 #-}
-{-# ANN f 1 :: Int #-}
-f x = x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_fail/annfail13.stderr b/testsuite/tests/ghc-regress/annotations/should_fail/annfail13.stderr
deleted file mode 100644
index fb30c66f73..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_fail/annfail13.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-annfail13.hs:4:14: parse error on input `1'
diff --git a/testsuite/tests/ghc-regress/annotations/should_run/Annrun01_Help.hs b/testsuite/tests/ghc-regress/annotations/should_run/Annrun01_Help.hs
deleted file mode 100644
index c27f85fef6..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_run/Annrun01_Help.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
-module Annrun01_Help where
-
-{-# ANN module "Module" #-}
-{-# ANN module "Annotations" #-}
-{-# ANN module (10 :: Int) #-}
-{-# ANN module "Rock!!!!" #-}
-
-
-{-# ANN foo "Hello" #-}
-{-# ANN foo "World!" #-}
-{-# ANN bar 'foo #-}
-foo = "Never seen"
-
-{-# ANN bar "Hello World Again!" #-}
-{-# ANN bar (1 :: Int) #-}
-{-# ANN bar 'bar #-}
-bar = "Also never seen"
-
-baz = "Especially never seen"
-
-
-{-# ANN type Baz "Type Annotation" #-}
-{-# ANN type Baz (Just True) #-}
-{-# ANN type Baz ''Baz #-}
-data Baz = Spqr \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/annotations/should_run/Makefile b/testsuite/tests/ghc-regress/annotations/should_run/Makefile
deleted file mode 100644
index b1639ecd2a..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_run/Makefile
+++ /dev/null
@@ -1,12 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-CONFIG_HS=Config.hs
-
-config :
- rm -f $(CONFIG_HS)
- @echo "Creating $(CONFIG_HS) ... "
- echo "module Config where" >>$(CONFIG_HS)
- echo "cTop :: String" >> $(CONFIG_HS)
- echo 'cTop = "$(subst \,\\,$(shell '$(TEST_HC)' --print-libdir))"' >> $(CONFIG_HS)
diff --git a/testsuite/tests/ghc-regress/annotations/should_run/all.T b/testsuite/tests/ghc-regress/annotations/should_run/all.T
deleted file mode 100644
index 22256b2f85..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_run/all.T
+++ /dev/null
@@ -1,31 +0,0 @@
-setTestOpts(if_compiler_profiled(skip))
-# These tests are very slow due to their use of package GHC
-setTestOpts(skip_if_fast)
-
-# Annotations, like Template Haskell, require runtime evaluation. In
-# order for this to work with profiling, we would have to build the
-# program twice and use -osuf p_o (see the TH_splitE5_prof test). For
-# now, just disable the profiling and dynamic ways.
-test('annrun01',
- [extra_clean(['Annrun01_Help.hi', 'Annrun01_Help.o',
- 'annrun01.hi', 'annrun01.o',
- 'Config.hs', 'Config.hi', 'Config.o']),
- pre_cmd('$MAKE -s config'),
- omit_ways(['profasm','profthreaded', 'dyn'])],
- multimod_compile_and_run,
- ['annrun01', '-package ghc']
- )
-
-""""
-Helpful things to C+P:
-
-test('', normal, compile_fail, [''])
-
-test('', normal, compile, [''])
-
-test('', extra_clean(['.hi', '.o']),
- multimod_compile_fail, ['', '-v0'])
-
-test('', extra_clean(['.hi', '.o']),
- multimod_compile, ['', '-v0'])
-"""
diff --git a/testsuite/tests/ghc-regress/annotations/should_run/annrun01.hs b/testsuite/tests/ghc-regress/annotations/should_run/annrun01.hs
deleted file mode 100644
index e626dadebc..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_run/annrun01.hs
+++ /dev/null
@@ -1,49 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
-
-module Main where
-
-import GHC
-import MonadUtils ( liftIO )
-import DynFlags ( defaultLogAction )
-import Annotations ( AnnTarget(..), CoreAnnTarget )
-import Serialized ( deserializeWithData )
-import Panic
-
-import Config
-import Annrun01_Help
-
-import qualified Language.Haskell.TH as TH
-import Data.List
-import Data.Function
-
-main = defaultErrorHandler defaultLogAction
- $ runGhc (Just cTop) $ do
- liftIO $ putStrLn "Initializing Package Database"
- dflags <- getSessionDynFlags
- let dflags' = dflags
- setSessionDynFlags dflags'
-
- let mod_nm = mkModuleName "Annrun01_Help"
-
- liftIO $ putStrLn "Setting Target"
- setTargets [Target (TargetModule mod_nm) True Nothing]
- liftIO $ putStrLn "Loading Targets"
- load LoadAllTargets
-
- liftIO $ putStrLn "Finding Module"
- mod <- findModule mod_nm Nothing
- liftIO $ putStrLn "Getting Module Info"
- Just mod_info <- getModuleInfo mod
-
- liftIO $ putStrLn "Showing Details For Module"
- showTargetAnns (ModuleTarget mod)
- liftIO $ putStrLn "Showing Details For Exports"
- mapM (showTargetAnns . NamedTarget) $ sortBy (compare `on` getOccName) $ modInfoExports mod_info
-
-showTargetAnns :: CoreAnnTarget -> Ghc ()
-showTargetAnns target = do
- (int_anns :: [Int]) <- findGlobalAnns deserializeWithData target
- (mb_bool_anns :: [Maybe Bool]) <- findGlobalAnns deserializeWithData target
- (string_anns :: [String]) <- findGlobalAnns deserializeWithData target
- (name_anns :: [TH.Name]) <- findGlobalAnns deserializeWithData target
- liftIO $ print (int_anns, mb_bool_anns, string_anns, name_anns)
diff --git a/testsuite/tests/ghc-regress/annotations/should_run/annrun01.stdout b/testsuite/tests/ghc-regress/annotations/should_run/annrun01.stdout
deleted file mode 100644
index b57394b563..0000000000
--- a/testsuite/tests/ghc-regress/annotations/should_run/annrun01.stdout
+++ /dev/null
@@ -1,13 +0,0 @@
-Initializing Package Database
-Setting Target
-Loading Targets
-Finding Module
-Getting Module Info
-Showing Details For Module
-([10],[],["Rock!!!!","Annotations","Module"],[])
-Showing Details For Exports
-([],[Just True],["Type Annotation"],[Annrun01_Help.Baz])
-([],[],[],[])
-([1],[],["Hello World Again!"],[Annrun01_Help.bar,Annrun01_Help.foo])
-([],[],[],[])
-([],[],["World!","Hello"],[])
diff --git a/testsuite/tests/ghc-regress/arityanal/Main.hs b/testsuite/tests/ghc-regress/arityanal/Main.hs
deleted file mode 100644
index 25419fbc65..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/Main.hs
+++ /dev/null
@@ -1,303 +0,0 @@
-{-# LANGUAGE CPP #-}
-
--- Optimisation problem. There are two missed opportunities for optimisation in alex_scan_tkn, below.
-
-module Main (main) where
-
-import Data.Char ( ord )
-import Control.Monad.ST
-import Control.Monad (when)
-import Data.STRef
-import GHC.ST
-#if __GLASGOW_HASKELL__ >= 503
-import Data.Array
-import Data.Char (ord)
-import Data.Array.Base (unsafeAt)
-#else
-import Array
-import Char (ord)
-#endif
-#if __GLASGOW_HASKELL__ >= 503
-import GHC.Exts
-#else
-import GlaExts
-#endif
-alex_base :: AlexAddr
-alex_base = AlexA# "\xf8\xff\xfd\xff\x02\x00\x4c\x00"#
-
-alex_table :: AlexAddr
-alex_table = AlexA# "\x00\x00\x02\x00\x02\x00\x02\x00\x02\x00\x02\x00\x02\x00\x02\x00\x02\x00\x02\x00\x02\x00\x02\x00\x02\x00\x02\x00\x02\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x03\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x03\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#
-
-alex_check :: AlexAddr
-alex_check = AlexA# "\xff\xff\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\x09\x00\x0a\x00\x0b\x00\x0c\x00\x0d\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\xff\xff\xff\xff\xff\xff\x20\x00\xff\xff\x27\x00\xff\xff\xff\xff\x20\x00\xff\xff\xff\xff\x2d\x00\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\x27\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x2d\x00\xff\xff\xff\xff\x30\x00\x31\x00\x32\x00\x33\x00\x34\x00\x35\x00\x36\x00\x37\x00\x38\x00\x39\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x41\x00\x42\x00\x43\x00\x44\x00\x45\x00\x46\x00\x47\x00\x48\x00\x49\x00\x4a\x00\x4b\x00\x4c\x00\x4d\x00\x4e\x00\x4f\x00\x50\x00\x51\x00\x52\x00\x53\x00\x54\x00\x55\x00\x56\x00\x57\x00\x58\x00\x59\x00\x5a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\x61\x00\x62\x00\x63\x00\x64\x00\x65\x00\x66\x00\x67\x00\x68\x00\x69\x00\x6a\x00\x6b\x00\x6c\x00\x6d\x00\x6e\x00\x6f\x00\x70\x00\x71\x00\x72\x00\x73\x00\x74\x00\x75\x00\x76\x00\x77\x00\x78\x00\x79\x00\x7a\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"#
-
-alex_deflt :: AlexAddr
-alex_deflt = AlexA# "\xff\xff\xff\xff\xff\xff\xff\xff"#
-
-alex_accept = listArray (0::Int,3) [[],[],[(AlexAcc 0 (alex_action_0) Nothing Nothing)],[(AlexAcc 1 (alex_action_1) Nothing Nothing)]]
-word (_,_,input) len = return (take len input)
-
-scanner str = runAlex str $ do
- let loop i = do tok <- alexScan;
- if tok == "stopped." || tok == "error."
- then return i
- else do let i' = i+1 in i' `seq` loop i'
- loop 0
-
-alexEOF (_,_,"") = return "stopped."
-alexEOF (_,_,rest) = return "error."
-
-main = do
- s <- getContents
- print (scanner s)
-alex_action_0 = skip
-alex_action_1 = word
--- {-# LINE 1 "GenericTemplate.hs" #-}
---
-------------------------------------------------------------------------
------
--- ALEX TEMPLATE
---
--- (c) Chris Dornan and Simon Marlow 2003
-
---
-------------------------------------------------------------------------
------
--- Token positions
-
--- `Posn' records the location of a token in the input text. It has three
--- fields: the address (number of chacaters preceding the token), line number
--- and column of a token within the file. `start_pos' gives the position of the
--- start of the file and `eof_pos' a standard encoding for the end of file.
--- `move_pos' calculates the new position after traversing a given character,
--- assuming the usual eight character tab stops.
-
-data AlexPosn = AlexPn !Int !Int !Int
- deriving (Eq,Show)
-
-alexStartPos :: AlexPosn
-alexStartPos = AlexPn 0 1 1
-
-alexMove :: AlexPosn -> Char -> AlexPosn
-alexMove (AlexPn a l c) '\t' = AlexPn (a+1) l (((c+7) `div` 8)*8+1)
-alexMove (AlexPn a l c) '\n' = AlexPn (a+1) (l+1) 1
-alexMove (AlexPn a l c) _ = AlexPn (a+1) l (c+1)
-
---
-------------------------------------------------------------------------
------
--- The Alex monad
---
--- Compile with -funbox-strict-fields for best results!
-
-data AlexState s = AlexState {
- alex_pos :: !(STRef s AlexPosn),-- position at current input location
- alex_inp :: !(STRef s String), -- the current input
- alex_chr :: !(STRef s Char), -- the character before the input
- alex_scd :: !(STRef s Int) -- the current startcode
- }
-
-type AlexInput = (AlexPosn,Char,String)
-
-alexInputPrevChar :: AlexInput -> Char
-alexInputPrevChar (p,c,s) = c
-
-runAlex :: String -> Alex a -> a
-runAlex input (Alex f)
- = runST (do
- inp_r <- newSTRef input
- chr_r <- newSTRef '\n'
- pos_r <- newSTRef alexStartPos
- scd_r <- newSTRef 0
- f (AlexState {alex_pos = pos_r,
- alex_inp = inp_r,
- alex_chr = chr_r,
- alex_scd = scd_r}))
-
---TODO include error support
-newtype Alex a = Alex { unAlex :: forall s. AlexState s -> ST s a }
-
-instance Monad Alex where
- (Alex m) >>= k = Alex (\s -> m s >>= \a -> unAlex (k a) s)
- return a = Alex (\s -> return a)
-
-alexGetChar :: Alex (Maybe Char)
-alexGetChar = Alex (\st@AlexState{ alex_inp=inp_r,
- alex_chr=chr_r,
- alex_pos=pos_r } -> do
- inp <- readSTRef inp_r
- pos <- readSTRef pos_r
- case inp of
- [] -> return Nothing
- (c:s) -> do writeSTRef inp_r s
- writeSTRef chr_r c
- let p' = alexMove pos c
- p' `seq` writeSTRef pos_r p'
- return (Just c)
- )
-
-alexGetInput :: Alex AlexInput
-alexGetInput
- = Alex (\s@AlexState{alex_pos=pos_r,alex_chr=chr_r,alex_inp=inp_r} -> do
- inp <- readSTRef inp_r
- chr <- readSTRef chr_r
- pos <- readSTRef pos_r
- return (pos,chr,inp)
- )
-
-alexSetInput :: AlexInput -> Alex ()
-alexSetInput (pos,chr,inp)
- = Alex (\s@AlexState{alex_pos=pos_r,alex_chr=chr_r,alex_inp=inp_r} -> do
- writeSTRef inp_r inp
- writeSTRef pos_r pos
- writeSTRef chr_r chr
- )
-
-alexGetStartCode :: Alex Int
-alexGetStartCode = Alex (\s@AlexState{alex_scd=scd_r} -> do
- readSTRef scd_r)
-
-alexSetStartCode :: Int -> Alex ()
-alexSetStartCode sc = Alex (\s@AlexState{alex_scd=scd_r} -> do
- writeSTRef scd_r sc)
-
---
------------------------------------------------------------------------------
--- Useful token actions
-
-
--- just ignore this token and scan another one
-skip input len = alexScan
-
--- ignore this token, but set the start code to a new value
-begin code input len = do alexSetStartCode code; alexScan
-
--- perform an action for this token, and set the start code to a new value
-(token `andBegin` code) input len = do alexSetStartCode code; token input len
-
---
------------------------------------------------------------------------------
--- INTERNALS and main scanner engine
-
--- {-# LINE 144 "GenericTemplate.hs" #-}
-
-data AlexAddr = AlexA# Addr#
-
-{-# INLINE alexIndexShortOffAddr #-}
-alexIndexShortOffAddr (AlexA# arr) off =
-#if __GLASGOW_HASKELL__ > 500
- narrow16Int# i
-#elif __GLASGOW_HASKELL__ == 500
- intToInt16# i
-#else
- (i `iShiftL#` 16#) `iShiftRA#` 16#
-#endif
- where
-#if __GLASGOW_HASKELL__ >= 503
- i = word2Int# ((high `uncheckedShiftL#` 8#) `or#` low)
-#else
- i = word2Int# ((high `shiftL#` 8#) `or#` low)
-#endif
- high = int2Word# (ord# (indexCharOffAddr# arr (off' +# 1#)))
- low = int2Word# (ord# (indexCharOffAddr# arr off'))
- off' = off *# 2#
-
-
---
------------------------------------------------------------------------------
--- Main lexing routines
-
-
-
--- alexScan :: some a . Alex a
-alexScan = do
- (I# (startcode)) <- alexGetStartCode -- the startcode is the initial state
- cur_input <- alexGetInput
- let c = alexInputPrevChar cur_input
- c `seq` do
- r <- alex_scan_tkn c 0# startcode AlexNone
- case r of
- AlexNone ->
-
-
-
- alexEOF cur_input
- AlexLastAcc k input len -> do
-
-
-
- alexSetInput input
- k cur_input len
-
--- {-# LINE 221 "GenericTemplate.hs" #-}
-
-
--- Push the input through the DFA, remembering the most recent accepting
--- state it encountered.
-
-alex_scan_tkn lc len (-1#) last_acc = return last_acc
-alex_scan_tkn lc len s last_acc = do
- new_acc <- check_accs s lc len last_acc --danaxu extends arguments
- c <- alexGetChar
- let {-# INLINE [0] join #-}
- -- This is a *hack*, the compiler doesn't eliminate the Maybe return
- -- from alexGetChar unless we extract this join point and inline
- -- it later.
- join c' =
-
-
-
- alex_scan_tkn lc
- (len +# 1#) s' new_acc
- where
- base = alexIndexShortOffAddr alex_base s
- (I# (ord_c)) = ord c'
- offset = (base +# ord_c)
- check = alexIndexShortOffAddr alex_check offset
-
- s' =
- if (offset >=# 0#) && (check ==# ord_c)
- then alexIndexShortOffAddr alex_table offset
- else alexIndexShortOffAddr alex_deflt s
- case c of
- Nothing -> return new_acc -- end of input
- Just c' -> join c'
- -- where
- -- OPTIMISATION PROBLEM. We need to eta-expand
- -- check_accs and check_accs1. This needs a simple
- -- one-shot analysis of some kind, but note that
- -- check_accs1 is recursive.
-check_accs s lc len last_acc = check_accs1 (alex_accept `unsafeAt` (I# (s))) lc len last_acc
-check_accs1 accs lc len last_acc =
- case accs of
- [] -> return last_acc
- (AlexAcc _ a lctx rctx : rest) ->
-
- case lctx of
- Nothing -> check_rctx a rctx rest lc len last_acc
- Just arr | arr!lc -> check_rctx a rctx rest lc len last_acc
- | otherwise -> check_accs1 rest lc len last_acc
- -- where
-
-ok a len = do inp <- alexGetInput
- return (AlexLastAcc a inp (I# (len)))
-
-check_rctx a rctx rest lc len last_acc =
- case rctx of
- Nothing -> ok a len
- Just (I# (sn)) -> do
- inp <- alexGetInput
- let c = alexInputPrevChar inp
- c `seq` do
- acc <- alex_scan_tkn c 0# sn AlexNone
- alexSetInput inp
- case acc of
- AlexNone -> check_accs1 rest lc len last_acc
- AlexLastAcc{} -> ok a len
- -- TODO: there's no need to find the longest
- -- match when checking the right context, just
- -- the first match will do.
-
-data AlexLastAcc a = AlexNone | AlexLastAcc a !AlexInput !Int
-
-data AlexAcc a = AlexAcc Int a (Maybe (Array Char Bool)) (Maybe Int)
diff --git a/testsuite/tests/ghc-regress/arityanal/Main.stderr b/testsuite/tests/ghc-regress/arityanal/Main.stderr
deleted file mode 100644
index 5a816d67a6..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/Main.stderr
+++ /dev/null
@@ -1,1874 +0,0 @@
-
-==================== Arity analysis ====================
-$w==_s4mH :: GHC.Prim.Int#
- -> GHC.Base.Int
- -> GHC.Base.Int
- -> GHC.Prim.Int#
- -> GHC.Base.Int
- -> GHC.Base.Int
- -> GHC.Base.Bool
-[Arity 6
- 0 -> 0 -> 0 -> 0 -> 0 -> 0 -> *
- Str: DmdType LLLLLL]
-$w==_s4mH = \ (ww_s4lF :: GHC.Prim.Int#)
- (ww_s4lH :: GHC.Base.Int)
- (ww_s4lI :: GHC.Base.Int)
- (ww_s4lO :: GHC.Prim.Int#)
- (ww_s4lQ :: GHC.Base.Int)
- (ww_s4lR :: GHC.Base.Int) ->
- case GHC.Base.Bool GHC.Prim.==# ww_s4lF ww_s4lO of wild_X45N {
- GHC.Base.False -> GHC.Base.False;
- GHC.Base.True ->
- case GHC.Base.Bool ww_s4lH of wild_X45G { GHC.Base.I# x_X45H ->
- case GHC.Base.Bool ww_s4lQ of wild1_X45M { GHC.Base.I# y_X45Q ->
- case GHC.Base.Bool GHC.Prim.==# x_X45H y_X45Q of wild_X45X {
- GHC.Base.False -> GHC.Base.False;
- GHC.Base.True ->
- case GHC.Base.Bool ww_s4lI of wild_X47o { GHC.Base.I# x_X47r ->
- case GHC.Base.Bool ww_s4lR of wild1_X47y { GHC.Base.I# y_X47E ->
- GHC.Prim.==# x_X47r y_X47E
- }
- }
- }
- }
- }
- }
-
-a_s40I :: [GHC.Base.Char]
-[*
- Str: DmdType]
-a_s40I = GHC.Base.unpackCString# "AlexPn "
-
-$wshowsPrec_s4mG :: GHC.Prim.Int#
- -> GHC.Base.Int
- -> GHC.Base.Int
- -> GHC.Base.Int
- -> GHC.Base.String
- -> GHC.Base.String
-[Arity 5
- 0 -> 0 -> 0 -> 0 -> 0 -> *
- Str: DmdType LLLLL]
-$wshowsPrec_s4mG = \ (ww_s4lp :: GHC.Prim.Int#)
- (ww_s4lt :: GHC.Base.Int)
- (ww_s4lu :: GHC.Base.Int)
- (ww_s4lv :: GHC.Base.Int)
- (w_s4lx :: GHC.Base.String) ->
- let {
- p_s4p5 :: GHC.Show.ShowS
- [Arity 1
- *
- Str: DmdType L]
- p_s4p5 = \ (x_a41d :: GHC.Base.String) ->
- GHC.Base.++
- @ GHC.Base.Char
- a_s40I
- (case [GHC.Base.Char] ww_s4lt of w_X42m { GHC.Base.I# ww_a40t ->
- GHC.Show.$wshowSignedInt
- 11
- ww_a40t
- (GHC.Base.:
- @ GHC.Base.Char
- GHC.Show.lvl1
- (case [GHC.Base.Char] ww_s4lu of w_X44A { GHC.Base.I# ww_X42J ->
- GHC.Show.$wshowSignedInt
- 11
- ww_X42J
- (GHC.Base.:
- @ GHC.Base.Char
- GHC.Show.lvl1
- (case [GHC.Base.Char] ww_s4lv of w_X44r { GHC.Base.I# ww_X42A ->
- GHC.Show.$wshowSignedInt 11 ww_X42A x_a41d
- }))
- }))
- })
- } in
- case GHC.Base.String GHC.Prim.>=# ww_s4lp 11 of wild_a42t {
- GHC.Base.False -> p_s4p5 w_s4lx;
- GHC.Base.True ->
- GHC.Base.:
- @ GHC.Base.Char
- GHC.Show.a2
- (p_s4p5 (GHC.Base.: @ GHC.Base.Char GHC.Show.a w_s4lx))
- }
-
-lvl_s3Z7 :: [GHC.Base.Char]
-[*
- Str: DmdType]
-lvl_s3Z7 = GHC.Base.unpackCString# "error."
-
-lvl_s3Z6 :: [GHC.Base.Char]
-[*
- Str: DmdType]
-lvl_s3Z6 = GHC.Base.unpackCString# "stopped."
-
-lit_s3Yy :: GHC.Num.Integer
-[*
- Str: DmdType]
-lit_s3Yy = GHC.Num.S# 1
-
-lit_a3m9 :: GHC.Base.Int
-[*
- Str: DmdType m]
-lit_a3m9 = GHC.Base.I# 0
-
-return_a3fW :: forall a_a2mR. a_a2mR -> Main.Alex a_a2mR
-[Arity 2
- 0 -> T
- Str: DmdType LA]
-return_a3fW = \ (@ a_a3g1)
- (a_X2cH :: a_a3g1)
- (@ s_a3g7)
- (s_a2bU :: Main.AlexState s_a3g7) ->
- GHC.ST.poly_return @ s_a3g7 @ a_a3g1 a_X2cH
-
->>_a3fv :: forall a_a2kH b_a2kJ.
- Main.Alex a_a2kH -> Main.Alex b_a2kJ -> Main.Alex b_a2kJ
-[Arity 4
- 3 -> 3 -> 0 -> 0 -> *
- Str: DmdType C(C(U(LA)))C(C(S))LL]
->>_a3fv = \ (@ a_a3fM)
- (@ b_a3fN)
- (eta_a3Ts :: Main.Alex a_a3fM)
- (eta1_a3Tr :: Main.Alex b_a3fN)
- (@ s_a3eY)
- (eta_s40h :: Main.AlexState s_a3eY)
- (eta_s40i :: GHC.Prim.State# s_a3eY) ->
- case (# GHC.Prim.State# s_a3eY, b_a3fN #) eta_a3Ts @ s_a3eY eta_s40h eta_s40i
- of wild_a3ZB { (# new_s_a3Zz, r_a3ZA #) ->
- eta1_a3Tr @ s_a3eY eta_s40h new_s_a3Zz
- }
-
->>=_a3eM :: forall a_a2n6 b_a2n8.
- Main.Alex a_a2n6 -> (a_a2n6 -> Main.Alex b_a2n8) -> Main.Alex b_a2n8
-[Arity 4
- 3 -> 4 -> 0 -> 0 -> *
- Str: DmdType C(C(U(LL)))C(C(C(S)))LL]
->>=_a3eM = \ (@ a_a3eR)
- (@ b_a3eS)
- (ds_d3nC :: Main.Alex a_a3eR)
- (k_X2cv :: a_a3eR -> Main.Alex b_a3eS)
- (@ s_a3eY)
- (s_a2bI :: Main.AlexState s_a3eY)
- (s_a3Zr :: GHC.Prim.State# s_a3eY) ->
- case (# GHC.Prim.State# s_a3eY, b_a3eS #) ds_d3nC @ s_a3eY s_a2bI s_a3Zr
- of wild_a3ZB { (# new_s_a3Zz, r_a3ZA #) ->
- k_X2cv r_a3ZA @ s_a3eY s_a2bI new_s_a3Zz
- }
-
-showsPrec_a3cJ :: GHC.Base.Int -> Main.AlexPosn -> GHC.Show.ShowS
-[T
- Worker $wshowsPrec_s4mG
- Str: DmdType U(L)U(LLL)L]
-showsPrec_a3cJ = __inline_me (\ (w_s4ln :: GHC.Base.Int)
- (w_s4lr :: Main.AlexPosn)
- (w_s4lx :: GHC.Base.String) ->
- case GHC.Base.String w_s4ln of w_X4mv { GHC.Base.I# ww_s4lp ->
- case GHC.Base.String w_s4lr of w_X4mD { Main.AlexPn ww_s4lt ww_s4lu ww_s4lv ->
- $wshowsPrec_s4mG ww_s4lp ww_s4lt ww_s4lu ww_s4lv w_s4lx
- }
- })
-
-showList_a3eh :: [Main.AlexPosn] -> GHC.Show.ShowS
-[Arity 2
- 0 -> 0 -> *
- Str: DmdType SL]
-showList_a3eh = \ (ds1_a3Hj :: [Main.AlexPosn]) (s_a3Hi :: GHC.Base.String) ->
- case GHC.Base.String ds1_a3Hj of wild_a3Hu {
- [] -> GHC.Base.++ @ GHC.Base.Char GHC.Show.lvl16 s_a3Hi;
- : x_a3Hs xs_a3Ht ->
- GHC.Base.:
- @ GHC.Base.Char
- GHC.Show.lvl14
- (case [GHC.Base.Char] x_a3Hs of w_X4mD { Main.AlexPn ww_s4lt ww_s4lu ww_s4lv ->
- $wshowsPrec_s4mG
- 0
- ww_s4lt
- ww_s4lu
- ww_s4lv
- (__letrec {
- showl1_s4p9 :: [Main.AlexPosn] -> [GHC.Base.Char]
- [Arity 1
- 0 -> *
- Str: DmdType S]
- showl1_s4p9 = \ (ds2_a3Hq :: [Main.AlexPosn]) ->
- case [GHC.Base.Char] ds2_a3Hq of wild1_a42z {
- [] -> GHC.Base.: @ GHC.Base.Char GHC.Show.lvl15 s_a3Hi;
- : y_a42x ys_a42y ->
- GHC.Base.:
- @ GHC.Base.Char
- GHC.Show.a1
- (case [GHC.Base.Char] y_a42x
- of w_X4o5 { Main.AlexPn ww_X4mX ww_X4mZ ww_X4n1 ->
- $wshowsPrec_s4mG 0 ww_X4mX ww_X4mZ ww_X4n1 (showl1_s4p9 ys_a42y)
- })
- };
- } in showl1_s4p9 xs_a3Ht)
- })
- }
-
-$dmshow_a3m7 :: Main.AlexPosn -> GHC.Base.String
-[Arity 1
- 0 -> *
- Str: DmdType U(LLL)]
-$dmshow_a3m7 = \ (x_a42G :: Main.AlexPosn) ->
- case GHC.Base.String x_a42G of w_X4mD { Main.AlexPn ww_s4lt ww_s4lu ww_s4lv ->
- $wshowsPrec_s4mG 0 ww_s4lt ww_s4lu ww_s4lv (GHC.Base.[] @ GHC.Base.Char)
- }
-
-==_a3c8 :: Main.AlexPosn -> Main.AlexPosn -> GHC.Base.Bool
-[T
- Worker $w==_s4mH
- Str: DmdType U(U(L)LL)U(U(L)LL)]
-==_a3c8 = __inline_me (\ (w_s4lB :: Main.AlexPosn) (w_s4lK :: Main.AlexPosn) ->
- case GHC.Base.Bool w_s4lB of w_X4mO { Main.AlexPn ww_s4lD ww_s4lH ww_s4lI ->
- case GHC.Base.Bool ww_s4lD of ww_X4mW { GHC.Base.I# ww_s4lF ->
- case GHC.Base.Bool w_s4lK of w_X4n7 { Main.AlexPn ww_s4lM ww_s4lQ ww_s4lR ->
- case GHC.Base.Bool ww_s4lM of ww_X4nf { GHC.Base.I# ww_s4lO ->
- $w==_s4mH ww_s4lF ww_s4lH ww_s4lI ww_s4lO ww_s4lQ ww_s4lR
- }
- }
- }
- })
-
-/=_a3cr :: Main.AlexPosn -> Main.AlexPosn -> GHC.Base.Bool
-[Arity 2
- 0 -> 0 -> *
- Str: DmdType U(U(L)LL)U(U(L)LL)]
-/=_a3cr = \ (a_a2jh :: Main.AlexPosn) (b_a2ji :: Main.AlexPosn) ->
- case GHC.Base.Bool a_a2jh of w_X4mO { Main.AlexPn ww_s4lD ww_s4lH ww_s4lI ->
- case GHC.Base.Bool ww_s4lD of ww_X4mW { GHC.Base.I# ww_s4lF ->
- case GHC.Base.Bool b_a2ji of w_X4n7 { Main.AlexPn ww_s4lM ww_s4lQ ww_s4lR ->
- case GHC.Base.Bool ww_s4lM of ww_X4nf { GHC.Base.I# ww_s4lO ->
- case GHC.Base.Bool GHC.Prim.==# ww_s4lF ww_s4lO of wild_X45N {
- GHC.Base.False -> GHC.Base.True;
- GHC.Base.True ->
- case GHC.Base.Bool ww_s4lH of wild_X45G { GHC.Base.I# x_X45H ->
- case GHC.Base.Bool ww_s4lQ of wild1_X45M { GHC.Base.I# y_X45Q ->
- case GHC.Base.Bool GHC.Prim.==# x_X45H y_X45Q of wild_X45X {
- GHC.Base.False -> GHC.Base.True;
- GHC.Base.True ->
- case GHC.Base.Bool ww_s4lI of wild_X47o { GHC.Base.I# x_X47r ->
- case GHC.Base.Bool ww_s4lR of wild1_X47y { GHC.Base.I# y_X47E ->
- case GHC.Base.Bool GHC.Prim.==# x_X47r y_X47E of wild_a43s {
- GHC.Base.False -> GHC.Base.True; GHC.Base.True -> GHC.Base.False
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
-
-$fShowAlexPosn_a2iT :: {GHC.Show.Show Main.AlexPosn}
-[Exported]
-[*
- Str: DmdType m]
-$fShowAlexPosn_a2iT = GHC.Show.:DShow
- @ Main.AlexPosn showsPrec_a3cJ $dmshow_a3m7 showList_a3eh
-
-$fEqAlexPosn_a2iS :: {GHC.Base.Eq Main.AlexPosn}
-[Exported]
-[*
- Str: DmdType m]
-$fEqAlexPosn_a2iS = GHC.Base.:DEq @ Main.AlexPosn ==_a3c8 /=_a3cr
-
-Rec {
-$fMonadAlex_a2dQ :: {GHC.Base.Monad Main.Alex}
-[Exported]
-[*
- Str: DmdType m]
-$fMonadAlex_a2dQ = GHC.Base.:DMonad
- @ Main.Alex >>=_a3eM >>_a3fv return_a3fW fail_a3gq
-fail_a3gq :: forall a_a3eL. GHC.Base.String -> Main.Alex a_a3eL
-[Arity 1
- *
- Str: DmdType Sb]
-fail_a3gq = \ (@ a_a3gE) (eta_x1 :: GHC.Base.String) ->
- GHC.Base.$dmfail @ Main.Alex $fMonadAlex_a2dQ @ a_a3gE eta_x1
-end Rec }
-
-lvl_s4pX :: GHC.Base.Int
-[*]
-lvl_s4pX = GHC.Base.I# 3
-
-lvl_s4pU :: (Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]
-[Arity 2
- 0 -> 0 -> T]
-lvl_s4pU = \ (ds_d3nZ :: (Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char]))
- (len_a1Rn :: GHC.Base.Int) ->
- case (Main.Alex [GHC.Base.Char]) ds_d3nZ
- of wild_X3c { (ds_d3o0, ds_d3o1, input_a1Rm) ->
- let {
- a_s4pV :: [GHC.Base.Char]
- [*
- Str: DmdType]
- a_s4pV = GHC.List.take @ GHC.Base.Char len_a1Rn input_a1Rm
- } in
- \ (@ s_X3jq)
- (s_X2fe :: Main.AlexState s_X3jq)
- (s_a3ZV :: GHC.Prim.State# s_X3jq) ->
- (# s_a3ZV, a_s4pV #)
- }
-
-lvl_s4pT :: GHC.Base.Int
-[*]
-lvl_s4pT = GHC.Base.I# 1
-
-lvl_s4pS :: Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])
-[*]
-lvl_s4pS = Main.AlexAcc
- @ ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])
- lvl_s4pT
- lvl_s4pU
- (Data.Maybe.Nothing @ (GHC.Arr.Array GHC.Base.Char GHC.Base.Bool))
- (Data.Maybe.Nothing @ GHC.Base.Int)
-
-lvl_s4pR :: [Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]
-[*]
-lvl_s4pR = GHC.Base.:
- @ (Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))
- lvl_s4pS
- (GHC.Base.[]
- @ (Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])))
-
-lvl_s4pQ :: [[Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]]
-[*]
-lvl_s4pQ = GHC.Base.:
- @ [Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]
- lvl_s4pR
- (GHC.Base.[]
- @ [Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])])
-
-Rec {
-$wk_s4mM :: GHC.Prim.Int#
- -> forall s_a2bs.
- Main.AlexState s_a2bs
- -> GHC.Prim.State# s_a2bs
- -> (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #)
-[Arity 3
- 0 -> 0 -> 0 -> *
- Str: DmdType LS(U(L)U(L)U(L)L)L]
-$wk_s4mM = \ (ww_s4mz :: GHC.Prim.Int#)
- (@ s_a2bs)
- (w_s4mC :: Main.AlexState s_a2bs)
- (w_s4mD :: GHC.Prim.State# s_a2bs) ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) w_s4mC
- of wild_X2B { Main.AlexState pos_r_a21Q inp_r_a21S chr_r_a21R ds_d3od ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) inp_r_a21S
- of wild_a43y { GHC.STRef.STRef var#_a43z ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) GHC.Prim.readMutVar#
- @ s_a2bs @ GHC.Base.String var#_a43z w_s4mD
- of wild_a3ZB { (# new_s_a3Zz, r_a3ZA #) ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) chr_r_a21R
- of wild_X46u { GHC.STRef.STRef var#_X46x ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) GHC.Prim.readMutVar#
- @ s_a2bs @ GHC.Base.Char var#_X46x new_s_a3Zz
- of wild_X42B { (# new_s_X42A, r_X42C #) ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) pos_r_a21Q
- of wild_X46v { GHC.STRef.STRef var#_X46y ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) GHC.Prim.readMutVar#
- @ s_a2bs @ Main.AlexPosn var#_X46y new_s_X42A
- of wild_X45K { (# new_s_X48T, r_X42D #) ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) r_X42C
- of tpl_X4U { GHC.Base.C# a_s3Wm ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) alex_scan_tkn_a2zF
- tpl_X4U
- 0
- ww_s4mz
- (Main.AlexNone
- @ (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))
- @ s_a2bs
- wild_X2B
- new_s_X48T
- of wild_X42t { (# new_s_X42s, r_X42u #) ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) r_X42u of wild_X4V {
- Main.AlexNone ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) r_a3ZA of wild_X4y {
- [] -> (# new_s_X42s, lvl_s3Z6 #); : a_s3Tv a_s3Tw -> (# new_s_X42s, lvl_s3Z7 #)
- };
- Main.AlexLastAcc k_a23z input_a23A len_a23B ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) input_a23A
- of wild_X2D { (pos_a225, chr_a226, inp_a227) ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) GHC.Prim.writeMutVar#
- @ s_a2bs
- @ GHC.Base.String
- var#_a43z
- inp_a227
- new_s_X42s
- of s2#_a43F { __DEFAULT ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) GHC.Prim.writeMutVar#
- @ s_a2bs
- @ Main.AlexPosn
- var#_X46y
- pos_a225
- s2#_a43F
- of s2#_X46S { __DEFAULT ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) GHC.Prim.writeMutVar#
- @ s_a2bs
- @ GHC.Base.Char
- var#_X46x
- chr_a226
- s2#_X46S
- of s2#_X46O { __DEFAULT ->
- k_a23z (r_X42D, tpl_X4U, r_a3ZA) len_a23B @ s_a2bs wild_X2B s2#_X46O
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
-lvl_s4pP :: (Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> forall s_a2bs.
- Main.AlexState s_a2bs
- -> GHC.Prim.State# s_a2bs
- -> (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #)
-[Arity 4
- T]
-lvl_s4pP = \ (input_a22z :: (Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char]))
- (len_a22A :: GHC.Base.Int)
- (@ s_a2bs)
- (eta_s47H :: Main.AlexState s_a2bs)
- (eta_s47I :: GHC.Prim.State# s_a2bs) ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) eta_s47H
- of wild_X34 { Main.AlexState ds_d3og ds_d3oh ds_d3oi scd_r_a22m ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) scd_r_a22m
- of wild_a43y { GHC.STRef.STRef var#_a43z ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) GHC.Prim.readMutVar#
- @ s_a2bs @ GHC.Base.Int var#_a43z eta_s47I
- of wild_a3ZB { (# new_s_a3Zz, r_a3ZA #) ->
- case (# GHC.Prim.State# s_a2bs, [GHC.Base.Char] #) r_a3ZA
- of w_X4o2 { GHC.Base.I# ww_s4mz ->
- $wk_s4mM ww_s4mz @ s_a2bs wild_X34 new_s_a3Zz
- }
- }
- }
- }
-lvl_s4pN :: Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])
-[*]
-lvl_s4pN = Main.AlexAcc
- @ ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])
- lit_a3m9
- lvl_s4pP
- (Data.Maybe.Nothing @ (GHC.Arr.Array GHC.Base.Char GHC.Base.Bool))
- (Data.Maybe.Nothing @ GHC.Base.Int)
-lvl_s4pM :: [Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]
-[*]
-lvl_s4pM = GHC.Base.:
- @ (Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))
- lvl_s4pN
- (GHC.Base.[]
- @ (Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])))
-lvl_s4pL :: [[Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]]
-[*]
-lvl_s4pL = GHC.Base.:
- @ [Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]
- lvl_s4pM
- lvl_s4pQ
-lvl_s4pK :: [[Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]]
-[*]
-lvl_s4pK = GHC.Base.:
- @ [Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]
- (GHC.Base.[]
- @ (Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])))
- lvl_s4pL
-lvl_s4pJ :: [[Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]]
-[*]
-lvl_s4pJ = GHC.Base.:
- @ [Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]
- (GHC.Base.[]
- @ (Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])))
- lvl_s4pK
-alex_accept_a2Bg :: GHC.Arr.Array GHC.Base.Int
- [Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]
-[*
- Str: DmdType]
-alex_accept_a2Bg = case (GHC.Arr.Array GHC.Base.Int
- [Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]) GHC.Prim.newArray#
- @ [Main.AlexAcc ((Main.AlexPosn,
- GHC.Base.Char,
- [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]
- @ GHC.Prim.RealWorld
- 4
- (GHC.Arr.arrEleBottom
- @ [Main.AlexAcc ((Main.AlexPosn,
- GHC.Base.Char,
- [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])])
- GHC.Prim.realWorld#
- of wild2_a3Up { (# s2#_a3Un, marr#_a3Uo #) ->
- __letrec {
- fillFromList_s4pc :: GHC.Prim.Int#
- -> [[Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]]
- -> GHC.Prim.State# GHC.Prim.RealWorld
- -> GHC.Prim.State# GHC.Prim.RealWorld
- [Arity 3
- 0 -> 0 -> 0 -> *
- Str: DmdType LLL]
- fillFromList_s4pc = \ (i#_a3Ul :: GHC.Prim.Int#)
- (xs_a3Uk :: [[Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]])
- (s3#_a3Uj :: GHC.Prim.State# GHC.Prim.RealWorld) ->
- case (GHC.Prim.State# GHC.Prim.RealWorld) i#_a3Ul of wild_X3y {
- __DEFAULT ->
- case (GHC.Prim.State# GHC.Prim.RealWorld) xs_a3Uk of wild4_a47j {
- [] -> s3#_a3Uj;
- : y_a47h ys_a47i ->
- case (GHC.Prim.State# GHC.Prim.RealWorld) GHC.Prim.writeArray#
- @ GHC.Prim.RealWorld
- @ [Main.AlexAcc ((Main.AlexPosn,
- GHC.Base.Char,
- [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]
- marr#_a3Uo
- wild_X3y
- y_a47h
- s3#_a3Uj
- of s4#_a47g { __DEFAULT ->
- fillFromList_s4pc (GHC.Prim.+# wild_X3y 1) ys_a47i s4#_a47g
- }
- };
- 4 -> s3#_a3Uj
- };
- } in
- case (GHC.Arr.Array GHC.Base.Int
- [Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]) fillFromList_s4pc
- 0 lvl_s4pJ s2#_a3Un
- of s3#_a47k { __DEFAULT ->
- case (GHC.Arr.Array GHC.Base.Int
- [Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]) GHC.Prim.unsafeFreezeArray#
- @ GHC.Prim.RealWorld
- @ [Main.AlexAcc ((Main.AlexPosn,
- GHC.Base.Char,
- [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]
- marr#_a3Uo
- s3#_a47k
- of wild_a488 { (# s2#_a48a, arr#_a48b #) ->
- GHC.Arr.Array
- @ GHC.Base.Int
- @ [Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]
- lit_a3m9
- lvl_s4pX
- arr#_a48b
- }
- }
- }
-check_rctx_a2B6 :: ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])
- -> Data.Maybe.Maybe GHC.Base.Int
- -> [Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]
- -> GHC.Base.Char
- -> GHC.Prim.Int#
- -> Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])
- -> Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))
-[Arity 8
- 0 -> 0 -> 0 -> 0 -> 0 -> 0 -> 0 -> 0 -> *
- Str: DmdType LSLLLL]
-check_rctx_a2B6 = \ (a_a2aL :: (Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])
- (rctx_a2aM :: Data.Maybe.Maybe GHC.Base.Int)
- (rest_a2aN :: [Main.AlexAcc ((Main.AlexPosn, GHC.Base.Char, [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])])
- (lc_a2aO :: GHC.Base.Char)
- (len_a2aP :: GHC.Prim.Int#)
- (last_acc_a2aQ :: Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))
- (@ s_a2bs)
- (eta_x1 :: Main.AlexState s_a2bs)
- (eta_x2 :: GHC.Prim.State# s_a2bs) ->
- (case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) rctx_a2aM
- of wild_X3t {
- Data.Maybe.Nothing ->
- \ (@ s_a2bs)
- (w_s4m0 :: Main.AlexState s_a2bs)
- (w_s4mg :: GHC.Prim.State# s_a2bs) ->
- case (# GHC.Prim.State# s_a2bs,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) w_s4m0
- of w_X4n1 { Main.AlexState ww_s4m2 ww_s4m6 ww_s4ma ww_s4me ->
- case (# GHC.Prim.State# s_a2bs,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) ww_s4m2
- of ww_X4na { GHC.STRef.STRef ww_s4m4 ->
- case (# GHC.Prim.State# s_a2bs,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) ww_s4m6
- of ww_X4ni { GHC.STRef.STRef ww_s4m8 ->
- case (# GHC.Prim.State# s_a2bs,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) ww_s4ma
- of ww_X4nq { GHC.STRef.STRef ww_s4mc ->
- case (# GHC.Prim.State# s_a2bs,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.readMutVar#
- @ s_a2bs
- @ GHC.Base.String
- ww_s4m8
- w_s4mg
- of wild_a3ZB { (# new_s_a3Zz, r_a3ZA #) ->
- case (# GHC.Prim.State# s_a2bs,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.readMutVar#
- @ s_a2bs
- @ GHC.Base.Char
- ww_s4mc
- new_s_a3Zz
- of wild_X42B { (# new_s_X42A, r_X42C #) ->
- case (# GHC.Prim.State# s_a2bs,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.readMutVar#
- @ s_a2bs
- @ Main.AlexPosn
- ww_s4m4
- new_s_X42A
- of wild_X45K { (# new_s_X48T, r_X42D #) ->
- (# new_s_X48T,
- (Main.AlexLastAcc
- @ (Main.AlexInput -> GHC.Base.Int -> Main.Alex [GHC.Base.Char])
- a_a2aL
- (r_X42D, r_X42C, r_a3ZA)
- (GHC.Base.I# len_a2aP)) #)
- }
- }
- }
- }
- }
- }
- };
- Data.Maybe.Just ds_d3nH ->
- case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) ds_d3nH
- of wild_X4X { GHC.Base.I# ds_d3nI ->
- let {
- lvl_s4pt :: Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))
- [*
- Str: DmdType]
- lvl_s4pt = check_accs1_a2B8 rest_a2aN lc_a2aO len_a2aP last_acc_a2aQ
- } in
- \ (@ s_X3iB)
- (s_X2fm :: Main.AlexState s_X3iB)
- (s_X436 :: GHC.Prim.State# s_X3iB) ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) s_X2fm
- of wild_X2B { Main.AlexState pos_r_a21Q inp_r_a21S chr_r_a21R ds_d3od ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) inp_r_a21S
- of wild_a43y { GHC.STRef.STRef var#_a43z ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.readMutVar#
- @ s_X3iB
- @ GHC.Base.String
- var#_a43z
- s_X436
- of wild_a3ZB { (# new_s_a3Zz, r_a3ZA #) ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) chr_r_a21R
- of wild_X46u { GHC.STRef.STRef var#_X46x ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.readMutVar#
- @ s_X3iB
- @ GHC.Base.Char
- var#_X46x
- new_s_a3Zz
- of wild_X42B { (# new_s_X42A, r_X42C #) ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) pos_r_a21Q
- of wild_X46v { GHC.STRef.STRef var#_X46y ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.readMutVar#
- @ s_X3iB
- @ Main.AlexPosn
- var#_X46y
- new_s_X42A
- of wild_X45K { (# new_s_X48T, r_X42D #) ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) r_X42C
- of tpl_X56 { GHC.Base.C# a_s3Wu ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) alex_scan_tkn_a2zF
- tpl_X56
- 0
- ds_d3nI
- (Main.AlexNone
- @ (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))
- @ s_X3iB
- wild_X2B
- new_s_X48T
- of wild_X42y { (# new_s_X42x, r_X42z #) ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.writeMutVar#
- @ s_X3iB
- @ GHC.Base.String
- var#_a43z
- r_a3ZA
- new_s_X42x
- of s2#_a43F { __DEFAULT ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.writeMutVar#
- @ s_X3iB
- @ Main.AlexPosn
- var#_X46y
- r_X42D
- s2#_a43F
- of s2#_X46S { __DEFAULT ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.writeMutVar#
- @ s_X3iB
- @ GHC.Base.Char
- var#_X46x
- tpl_X56
- s2#_X46S
- of s2#_X46O { __DEFAULT ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) r_X42z
- of wild_X57 {
- Main.AlexNone -> lvl_s4pt @ s_X3iB wild_X2B s2#_X46O;
- Main.AlexLastAcc ds_d3nK ds_d3nL ds_d3nM ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.readMutVar#
- @ s_X3iB
- @ GHC.Base.String
- var#_a43z
- s2#_X46O
- of wild_X42f { (# new_s_X42e, r_X42g #) ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.readMutVar#
- @ s_X3iB
- @ GHC.Base.Char
- var#_X46x
- new_s_X42e
- of wild_X45j { (# new_s_X482, r_X45m #) ->
- case (# GHC.Prim.State# s_X3iB,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.readMutVar#
- @ s_X3iB
- @ Main.AlexPosn
- var#_X46y
- new_s_X482
- of wild_X48w { (# new_s_X4bG, r_X45r #) ->
- (# new_s_X4bG,
- (Main.AlexLastAcc
- @ (Main.AlexInput -> GHC.Base.Int -> Main.Alex [GHC.Base.Char])
- a_a2aL
- (r_X45r, r_X45m, r_X42g)
- (GHC.Base.I# len_a2aP)) #)
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- })
- @ s_a2bs eta_x1 eta_x2
-check_accs1_a2B8 :: [Main.AlexAcc ((Main.AlexPosn,
- GHC.Base.Char,
- [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]
- -> GHC.Base.Char
- -> GHC.Prim.Int#
- -> Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])
- -> Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))
-[Arity 4
- 0 -> 0 -> 0 -> 0 -> *
- Str: DmdType SLLL]
-check_accs1_a2B8 = \ (accs_a24C :: [Main.AlexAcc ((Main.AlexPosn,
- GHC.Base.Char,
- [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])])
- (lc_a24D :: GHC.Base.Char)
- (len_a24E :: GHC.Prim.Int#)
- (last_acc_a24F :: Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])) ->
- case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) accs_a24C
- of wild_X3t {
- [] ->
- return_a3fW
- @ (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))
- last_acc_a24F;
- : ds_d3nO rest_a24P ->
- case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) ds_d3nO
- of wild_X4Y { Main.AlexAcc ds_d3nP a_a24M lctx_a24N rctx_a24O ->
- case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) lctx_a24N
- of wild_X54 {
- Data.Maybe.Nothing ->
- check_rctx_a2B6 a_a24M rctx_a24O rest_a24P lc_a24D len_a24E last_acc_a24F;
- Data.Maybe.Just arr_a24W ->
- case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) arr_a24W
- of wild_a48O { GHC.Arr.Array l_a48P u_a48Q ds_a48R ->
- case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) l_a48P
- of ww_a48V { GHC.Base.C# ww_a48X ->
- case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) u_a48Q
- of ww_a48Z { GHC.Base.C# ww_a491 ->
- case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) lc_a24D
- of w_a494 { GHC.Base.C# ww_a496 ->
- case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) GHC.Arr.$windex2
- ww_a48X
- ww_a491
- ww_a496
- of ww_a49b { __DEFAULT ->
- case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) GHC.Prim.indexArray#
- @ GHC.Base.Bool
- ds_a48R
- ww_a49b
- of wild2_a49K { (# e_a49M #) ->
- case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) e_a49M
- of wild_X57 {
- GHC.Base.False -> check_accs1_a2B8 rest_a24P w_a494 len_a24E last_acc_a24F;
- GHC.Base.True ->
- check_rctx_a2B6 a_a24M rctx_a24O rest_a24P w_a494 len_a24E last_acc_a24F
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
-alex_scan_tkn_a2zF :: GHC.Base.Char
- -> GHC.Prim.Int#
- -> GHC.Prim.Int#
- -> Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])
- -> Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))
-[Arity 4
- 0 -> 0 -> 0 -> 0 -> 0 -> 0 -> *
- Str: DmdType LLLL]
-alex_scan_tkn_a2zF = \ (lc_a23F :: GHC.Base.Char)
- (len_a23G :: GHC.Prim.Int#)
- (ds_d3n1 :: GHC.Prim.Int#)
- (last_acc_a23H :: Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])) ->
- case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) ds_d3n1
- of ds_X3rY {
- __DEFAULT ->
- let {
- ds_s4pv :: Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))
- [*
- Str: DmdType]
- ds_s4pv = case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) alex_accept_a2Bg
- of wild_a4cx { GHC.Arr.Array ds2_a4cu ds3_a4cv arr#_a4cw ->
- case (Main.Alex (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))) GHC.Prim.indexArray#
- @ [Main.AlexAcc ((Main.AlexPosn,
- GHC.Base.Char,
- [GHC.Base.Char])
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char])]
- arr#_a4cw
- ds_X3rY
- of wild2_a4cD { (# e_a4cF #) ->
- check_accs1_a2B8 e_a4cF lc_a23F len_a23G last_acc_a23H
- }
- }
- } in
- \ (@ s_X3iz)
- (s_X2fk :: Main.AlexState s_X3iz)
- (s_X434 :: GHC.Prim.State# s_X3iz) ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) ds_s4pv @ s_X3iz s_X2fk s_X434
- of wild_a3ZB { (# new_s_a3Zz, r_a3ZA #) ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) s_X2fk
- of wild_X2w { Main.AlexState pos_r_a21o inp_r_a21m chr_r_a21n ds_d3o7 ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) inp_r_a21m
- of wild_a43y { GHC.STRef.STRef var#_a43z ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.readMutVar#
- @ s_X3iz
- @ GHC.Base.String
- var#_a43z
- new_s_a3Zz
- of wild_X420 { (# new_s_X41Z, r_X421 #) ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) pos_r_a21o
- of wild_X46p { GHC.STRef.STRef var#_X46s ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.readMutVar#
- @ s_X3iz
- @ Main.AlexPosn
- var#_X46s
- new_s_X41Z
- of wild_X42w { (# new_s_X42v, r_X42x #) ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) r_X421
- of wild_X4j {
- [] -> (# new_s_X42v, r_a3ZA #);
- : c_a21B s_a21C ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.writeMutVar#
- @ s_X3iz
- @ GHC.Base.String
- var#_a43z
- s_a21C
- new_s_X42v
- of s2#_a43F { __DEFAULT ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) chr_r_a21n
- of wild_X46I { GHC.STRef.STRef var#_X46M ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.writeMutVar#
- @ s_X3iz
- @ GHC.Base.Char
- var#_X46M
- c_a21B
- s2#_a43F
- of s2#_X46N { __DEFAULT ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) r_X42x
- of wild_X4p { Main.AlexPn a_a1UD l_a1UE c_a1UF ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) c_a21B
- of wild_X3V { GHC.Base.C# ds_d3my ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) ds_d3my
- of ds_X3qv {
- __DEFAULT ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) a_a1UD
- of wild_a437 { GHC.Base.I# x_a436 ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) c_a1UF
- of wild_X469 { GHC.Base.I# x_X46a ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) l_a1UE
- of tpl_X3b { GHC.Base.I# a_s43O ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.writeMutVar#
- @ s_X3iz
- @ Main.AlexPosn
- var#_X46s
- (Main.AlexPn
- (GHC.Base.I#
- (GHC.Prim.+#
- x_a436 1))
- tpl_X3b
- (GHC.Base.I#
- (GHC.Prim.+#
- x_X46a 1)))
- s2#_X46N
- of s2#_X461 { __DEFAULT ->
- let {
- off'_s3XM :: GHC.Prim.Int#
- [*
- Str: DmdType]
- off'_s3XM = GHC.Prim.*# ds_X3rY 2 } in
- let {
- arr_a22R :: GHC.Prim.Addr#
- [*
- Str: DmdType]
- arr_a22R = "\248\255\253\255\STX\NULL\NUL" } in
- let {
- ds_d3nX :: GHC.Prim.Int#
- [*
- Str: DmdType]
- ds_d3nX = GHC.Prim.ord# ds_X3qv } in
- let {
- offset_s3XK :: GHC.Prim.Int#
- [*
- Str: DmdType]
- offset_s3XK = GHC.Prim.+#
- (GHC.Prim.narrow16Int#
- (GHC.Prim.word2Int#
- (GHC.Prim.or#
- (GHC.Prim.uncheckedShiftL#
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_a22R (GHC.Prim.+# off'_s3XM 1))))
- 8)
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_a22R off'_s3XM))))))
- ds_d3nX } in
- let {
- $w$j_s4px :: GHC.Prim.State# GHC.Prim.RealWorld
- -> (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #)
- [Arity 1
- *
- Str: DmdType A]
- $w$j_s4px = \ (w_s4mk :: GHC.Prim.State# GHC.Prim.RealWorld) ->
- let {
- arr_X26b :: GHC.Prim.Addr#
- [*
- Str: DmdType]
- arr_X26b = "\255\255\255\255\255\255\255\255"
- } in
- alex_scan_tkn_a2zF
- lc_a23F
- (GHC.Prim.+# len_a23G 1)
- (GHC.Prim.narrow16Int#
- (GHC.Prim.word2Int#
- (GHC.Prim.or#
- (GHC.Prim.uncheckedShiftL#
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X26b (GHC.Prim.+# off'_s3XM 1))))
- 8)
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X26b off'_s3XM))))))
- r_a3ZA
- @ s_X3iz
- wild_X2w
- s2#_X461
- } in
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.>=#
- offset_s3XK 0
- of wild_a43m {
- GHC.Base.False -> $w$j_s4px GHC.Prim.realWorld#;
- GHC.Base.True ->
- let {
- off'_X40Z :: GHC.Prim.Int#
- [*
- Str: DmdType]
- off'_X40Z = GHC.Prim.*# offset_s3XK 2 } in
- let {
- arr_X262 :: GHC.Prim.Addr#
- [*
- Str: DmdType]
- arr_X262 = "\255\255\t\NUL\n\NUL\v\NUL\f\NUL\r\NUL\t\NUL\n\NUL\v\NUL\f\NUL\r\NUL\t\NUL\n\NUL\v\NUL\f\NUL\r\NUL\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255 \NUL\255\255\255\255\255\255\255\255 \NUL\255\255'\NUL\255\255\255\255 \NUL\255\255\255\255-\NUL\255\255\255\255\&0\NUL1\NUL2\NUL3\NUL4\NUL5\NUL6\NUL7\NUL8\NUL9\NUL\255\255\255\255\255\255\255\255\255\255\255\255\255\255A\NULB\NULC\NULD\NULE\NULF\NULG\NULH\NULI\NULJ\NULK\NULL\NULM\NULN\NULO\NULP\NULQ\NULR\NULS\NULT\NULU\NULV\NULW\NULX\NULY\NULZ\NUL\255\255\255\255\255\255\255\255\255\255\255\255a\NULb\NULc\NULd\NULe\NULf\NULg\NULh\NULi\NULj\NULk\NULl\NULm\NULn\NULo\NULp\NULq\NULr\NULs\NULt\NULu\NULv\NULw\NULx\NULy\NULz\NUL'\NUL\255\255\255\255\255\255\255\255\255\255-\NUL\255\255\255\255\&0\NUL1\NUL2\NUL3\NUL4\NUL5\NUL6\NUL7\NUL8\NUL9\NUL\255\255\255\255\255\255\255\255\255\255\255\255\255\255A\NULB\NULC\NULD\NULE\NULF\NULG\NULH\NULI\NULJ\NULK\NULL\NULM\NULN\NULO\NULP\NULQ\NULR\NULS\NULT\NULU\NULV\NULW\NULX\NULY\NULZ\NUL\255\255\255\255\255\255\255\255\255\255\255\255a\NULb\NULc\NULd\NULe\NULf\NULg\NULh\NULi\NULj\NULk\NULl\NULm\NULn\NULo\NULp\NULq\NULr\NULs\NULt\NULu\NULv\NULw\NULx\NULy\NULz\NUL\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255"
- } in
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.==#
- (GHC.Prim.narrow16Int#
- (GHC.Prim.word2Int#
- (GHC.Prim.or#
- (GHC.Prim.uncheckedShiftL#
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X262
- (GHC.Prim.+#
- off'_X40Z
- 1))))
- 8)
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X262
- off'_X40Z))))))
- ds_d3nX
- of wild_X8K {
- GHC.Base.False -> $w$j_s4px GHC.Prim.realWorld#;
- GHC.Base.True ->
- let {
- arr_X26c :: GHC.Prim.Addr#
- [*
- Str: DmdType]
- arr_X26c = "\NUL\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\STX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\STX\NUL\NUL\NUL\ETX\NUL\NUL\NUL\NUL\NUL\STX\NUL\NUL\NUL\NUL\NUL\ETX\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL"
- } in
- alex_scan_tkn_a2zF
- lc_a23F
- (GHC.Prim.+# len_a23G 1)
- (GHC.Prim.narrow16Int#
- (GHC.Prim.word2Int#
- (GHC.Prim.or#
- (GHC.Prim.uncheckedShiftL#
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X26c (GHC.Prim.+# off'_X40Z 1))))
- 8)
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X26c off'_X40Z))))))
- r_a3ZA
- @ s_X3iz
- wild_X2w
- s2#_X461
- }
- }
- }
- }
- }
- };
- '\t' ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) a_a1UD
- of wild_a437 { GHC.Base.I# x_a436 ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) c_a1UF
- of wild_X469 { GHC.Base.I# x_X46a ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Base.divInt#
- (GHC.Prim.+#
- x_X46a 7)
- 8
- of x_a44T { __DEFAULT ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) l_a1UE
- of tpl_X3c { GHC.Base.I# a_s452 ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.writeMutVar#
- @ s_X3iz
- @ Main.AlexPosn
- var#_X46s
- (Main.AlexPn
- (GHC.Base.I#
- (GHC.Prim.+#
- x_a436 1))
- tpl_X3c
- (GHC.Base.I#
- (GHC.Prim.+#
- (GHC.Prim.*#
- x_a44T
- 8)
- 1)))
- s2#_X46N
- of s2#_X461 { __DEFAULT ->
- let {
- off'_s3XM :: GHC.Prim.Int#
- [*
- Str: DmdType]
- off'_s3XM = GHC.Prim.*# ds_X3rY 2 } in
- let {
- arr_a22R :: GHC.Prim.Addr#
- [*
- Str: DmdType]
- arr_a22R = "\248\255\253\255\STX\NULL\NUL" } in
- let {
- offset_s3XK :: GHC.Prim.Int#
- [*
- Str: DmdType]
- offset_s3XK = GHC.Prim.+#
- (GHC.Prim.narrow16Int#
- (GHC.Prim.word2Int#
- (GHC.Prim.or#
- (GHC.Prim.uncheckedShiftL#
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_a22R (GHC.Prim.+# off'_s3XM 1))))
- 8)
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_a22R off'_s3XM))))))
- 9 } in
- let {
- $w$j_s4pz :: GHC.Prim.State# GHC.Prim.RealWorld
- -> (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #)
- [Arity 1
- *
- Str: DmdType A]
- $w$j_s4pz = \ (w_s4mo :: GHC.Prim.State# GHC.Prim.RealWorld) ->
- let {
- arr_X26c :: GHC.Prim.Addr#
- [*
- Str: DmdType]
- arr_X26c = "\255\255\255\255\255\255\255\255"
- } in
- alex_scan_tkn_a2zF
- lc_a23F
- (GHC.Prim.+# len_a23G 1)
- (GHC.Prim.narrow16Int#
- (GHC.Prim.word2Int#
- (GHC.Prim.or#
- (GHC.Prim.uncheckedShiftL#
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X26c (GHC.Prim.+# off'_s3XM 1))))
- 8)
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X26c off'_s3XM))))))
- r_a3ZA
- @ s_X3iz
- wild_X2w
- s2#_X461
- } in
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.>=#
- offset_s3XK 0
- of wild_a43m {
- GHC.Base.False -> $w$j_s4pz GHC.Prim.realWorld#;
- GHC.Base.True ->
- let {
- off'_X410 :: GHC.Prim.Int#
- [*
- Str: DmdType]
- off'_X410 = GHC.Prim.*# offset_s3XK 2 } in
- let {
- arr_X263 :: GHC.Prim.Addr#
- [*
- Str: DmdType]
- arr_X263 = "\255\255\t\NUL\n\NUL\v\NUL\f\NUL\r\NUL\t\NUL\n\NUL\v\NUL\f\NUL\r\NUL\t\NUL\n\NUL\v\NUL\f\NUL\r\NUL\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255 \NUL\255\255\255\255\255\255\255\255 \NUL\255\255'\NUL\255\255\255\255 \NUL\255\255\255\255-\NUL\255\255\255\255\&0\NUL1\NUL2\NUL3\NUL4\NUL5\NUL6\NUL7\NUL8\NUL9\NUL\255\255\255\255\255\255\255\255\255\255\255\255\255\255A\NULB\NULC\NULD\NULE\NULF\NULG\NULH\NULI\NULJ\NULK\NULL\NULM\NULN\NULO\NULP\NULQ\NULR\NULS\NULT\NULU\NULV\NULW\NULX\NULY\NULZ\NUL\255\255\255\255\255\255\255\255\255\255\255\255a\NULb\NULc\NULd\NULe\NULf\NULg\NULh\NULi\NULj\NULk\NULl\NULm\NULn\NULo\NULp\NULq\NULr\NULs\NULt\NULu\NULv\NULw\NULx\NULy\NULz\NUL'\NUL\255\255\255\255\255\255\255\255\255\255-\NUL\255\255\255\255\&0\NUL1\NUL2\NUL3\NUL4\NUL5\NUL6\NUL7\NUL8\NUL9\NUL\255\255\255\255\255\255\255\255\255\255\255\255\255\255A\NULB\NULC\NULD\NULE\NULF\NULG\NULH\NULI\NULJ\NULK\NULL\NULM\NULN\NULO\NULP\NULQ\NULR\NULS\NULT\NULU\NULV\NULW\NULX\NULY\NULZ\NUL\255\255\255\255\255\255\255\255\255\255\255\255a\NULb\NULc\NULd\NULe\NULf\NULg\NULh\NULi\NULj\NULk\NULl\NULm\NULn\NULo\NULp\NULq\NULr\NULs\NULt\NULu\NULv\NULw\NULx\NULy\NULz\NUL\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255"
- } in
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.narrow16Int#
- (GHC.Prim.word2Int#
- (GHC.Prim.or#
- (GHC.Prim.uncheckedShiftL#
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X263
- (GHC.Prim.+#
- off'_X410
- 1))))
- 8)
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X263
- off'_X410)))))
- of wild_X3k {
- __DEFAULT -> $w$j_s4pz GHC.Prim.realWorld#;
- 9 ->
- let {
- arr_X26d :: GHC.Prim.Addr#
- [*
- Str: DmdType]
- arr_X26d = "\NUL\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\STX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\STX\NUL\NUL\NUL\ETX\NUL\NUL\NUL\NUL\NUL\STX\NUL\NUL\NUL\NUL\NUL\ETX\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL"
- } in
- alex_scan_tkn_a2zF
- lc_a23F
- (GHC.Prim.+# len_a23G 1)
- (GHC.Prim.narrow16Int#
- (GHC.Prim.word2Int#
- (GHC.Prim.or#
- (GHC.Prim.uncheckedShiftL#
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X26d (GHC.Prim.+# off'_X410 1))))
- 8)
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X26d off'_X410))))))
- r_a3ZA
- @ s_X3iz
- wild_X2w
- s2#_X461
- }
- }
- }
- }
- }
- }
- };
- '\n' ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) a_a1UD
- of wild_a437 { GHC.Base.I# x_a436 ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) l_a1UE
- of wild_X469 { GHC.Base.I# x_X46a ->
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.writeMutVar#
- @ s_X3iz
- @ Main.AlexPosn
- var#_X46s
- (Main.AlexPn
- (GHC.Base.I#
- (GHC.Prim.+#
- x_a436 1))
- (GHC.Base.I#
- (GHC.Prim.+#
- x_X46a 1))
- lvl_s4pT)
- s2#_X46N
- of s2#_X461 { __DEFAULT ->
- let {
- off'_s3XM :: GHC.Prim.Int#
- [*
- Str: DmdType]
- off'_s3XM = GHC.Prim.*# ds_X3rY 2 } in
- let {
- arr_a22R :: GHC.Prim.Addr#
- [*
- Str: DmdType]
- arr_a22R = "\248\255\253\255\STX\NULL\NUL" } in
- let {
- offset_s3XK :: GHC.Prim.Int#
- [*
- Str: DmdType]
- offset_s3XK = GHC.Prim.+#
- (GHC.Prim.narrow16Int#
- (GHC.Prim.word2Int#
- (GHC.Prim.or#
- (GHC.Prim.uncheckedShiftL#
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_a22R (GHC.Prim.+# off'_s3XM 1))))
- 8)
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_a22R off'_s3XM))))))
- 10 } in
- let {
- $w$j_s4pC :: GHC.Prim.State# GHC.Prim.RealWorld
- -> (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #)
- [Arity 1
- *
- Str: DmdType A]
- $w$j_s4pC = \ (w_s4ms :: GHC.Prim.State# GHC.Prim.RealWorld) ->
- let {
- arr_X266 :: GHC.Prim.Addr#
- [*
- Str: DmdType]
- arr_X266 = "\255\255\255\255\255\255\255\255"
- } in
- alex_scan_tkn_a2zF
- lc_a23F
- (GHC.Prim.+# len_a23G 1)
- (GHC.Prim.narrow16Int#
- (GHC.Prim.word2Int#
- (GHC.Prim.or#
- (GHC.Prim.uncheckedShiftL#
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X266 (GHC.Prim.+# off'_s3XM 1))))
- 8)
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X266 off'_s3XM))))))
- r_a3ZA
- @ s_X3iz
- wild_X2w
- s2#_X461
- } in
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.>=#
- offset_s3XK 0
- of wild_a43m {
- GHC.Base.False -> $w$j_s4pC GHC.Prim.realWorld#;
- GHC.Base.True ->
- let {
- off'_X40U :: GHC.Prim.Int#
- [*
- Str: DmdType]
- off'_X40U = GHC.Prim.*# offset_s3XK 2 } in
- let {
- arr_X25X :: GHC.Prim.Addr#
- [*
- Str: DmdType]
- arr_X25X = "\255\255\t\NUL\n\NUL\v\NUL\f\NUL\r\NUL\t\NUL\n\NUL\v\NUL\f\NUL\r\NUL\t\NUL\n\NUL\v\NUL\f\NUL\r\NUL\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255 \NUL\255\255\255\255\255\255\255\255 \NUL\255\255'\NUL\255\255\255\255 \NUL\255\255\255\255-\NUL\255\255\255\255\&0\NUL1\NUL2\NUL3\NUL4\NUL5\NUL6\NUL7\NUL8\NUL9\NUL\255\255\255\255\255\255\255\255\255\255\255\255\255\255A\NULB\NULC\NULD\NULE\NULF\NULG\NULH\NULI\NULJ\NULK\NULL\NULM\NULN\NULO\NULP\NULQ\NULR\NULS\NULT\NULU\NULV\NULW\NULX\NULY\NULZ\NUL\255\255\255\255\255\255\255\255\255\255\255\255a\NULb\NULc\NULd\NULe\NULf\NULg\NULh\NULi\NULj\NULk\NULl\NULm\NULn\NULo\NULp\NULq\NULr\NULs\NULt\NULu\NULv\NULw\NULx\NULy\NULz\NUL'\NUL\255\255\255\255\255\255\255\255\255\255-\NUL\255\255\255\255\&0\NUL1\NUL2\NUL3\NUL4\NUL5\NUL6\NUL7\NUL8\NUL9\NUL\255\255\255\255\255\255\255\255\255\255\255\255\255\255A\NULB\NULC\NULD\NULE\NULF\NULG\NULH\NULI\NULJ\NULK\NULL\NULM\NULN\NULO\NULP\NULQ\NULR\NULS\NULT\NULU\NULV\NULW\NULX\NULY\NULZ\NUL\255\255\255\255\255\255\255\255\255\255\255\255a\NULb\NULc\NULd\NULe\NULf\NULg\NULh\NULi\NULj\NULk\NULl\NULm\NULn\NULo\NULp\NULq\NULr\NULs\NULt\NULu\NULv\NULw\NULx\NULy\NULz\NUL\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255\255"
- } in
- case (# GHC.Prim.State# s_X3iz,
- Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]) #) GHC.Prim.narrow16Int#
- (GHC.Prim.word2Int#
- (GHC.Prim.or#
- (GHC.Prim.uncheckedShiftL#
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X25X
- (GHC.Prim.+#
- off'_X40U
- 1))))
- 8)
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X25X
- off'_X40U)))))
- of wild_X3e {
- __DEFAULT -> $w$j_s4pC GHC.Prim.realWorld#;
- 10 ->
- let {
- arr_X267 :: GHC.Prim.Addr#
- [*
- Str: DmdType]
- arr_X267 = "\NUL\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\STX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\STX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\STX\NUL\NUL\NUL\ETX\NUL\NUL\NUL\NUL\NUL\STX\NUL\NUL\NUL\NUL\NUL\ETX\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\ETX\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL\NUL"
- } in
- alex_scan_tkn_a2zF
- lc_a23F
- (GHC.Prim.+# len_a23G 1)
- (GHC.Prim.narrow16Int#
- (GHC.Prim.word2Int#
- (GHC.Prim.or#
- (GHC.Prim.uncheckedShiftL#
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X267 (GHC.Prim.+# off'_X40U 1))))
- 8)
- (GHC.Prim.int2Word#
- (GHC.Prim.ord#
- (GHC.Prim.indexCharOffAddr#
- arr_X267 off'_X40U))))))
- r_a3ZA
- @ s_X3iz
- wild_X2w
- s2#_X461
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- }
- };
- (-1) ->
- return_a3fW
- @ (Main.AlexLastAcc (Main.AlexInput
- -> GHC.Base.Int
- -> Main.Alex [GHC.Base.Char]))
- last_acc_a23H
- }
-end Rec }
-
-Rec {
-loop_s3YA :: GHC.Num.Integer -> Main.Alex GHC.Num.Integer
-[Arity 1
- 0 -> 0 -> 0 -> *
- Str: DmdType L]
-loop_s3YA = \ (i_a1Ry :: GHC.Num.Integer) ->
- let {
- lvl_s4pE :: Main.Alex GHC.Num.Integer
- [*
- Str: DmdType]
- lvl_s4pE = case (Main.Alex GHC.Num.Integer) GHC.Num.plusInteger i_a1Ry lit_s3Yy
- of tpl_X5k { __DEFAULT ->
- loop_s3YA tpl_X5k
- }
- } in
- \ (@ s_X3iH)
- (s_X2fs :: Main.AlexState s_X3iH)
- (s_X43c :: GHC.Prim.State# s_X3iH) ->
- case (# GHC.Prim.State# s_X3iH, GHC.Num.Integer #) s_X2fs
- of wild_X34 { Main.AlexState ds_d3og ds_d3oh ds_d3oi scd_r_a22m ->
- case (# GHC.Prim.State# s_X3iH, GHC.Num.Integer #) scd_r_a22m
- of wild_a43y { GHC.STRef.STRef var#_a43z ->
- case (# GHC.Prim.State# s_X3iH, GHC.Num.Integer #) GHC.Prim.readMutVar#
- @ s_X3iH @ GHC.Base.Int var#_a43z s_X43c
- of wild_a3ZB { (# new_s_a3Zz, r_a3ZA #) ->
- case (# GHC.Prim.State# s_X3iH, GHC.Num.Integer #) r_a3ZA
- of w_X4o2 { GHC.Base.I# ww_s4mz ->
- case (# GHC.Prim.State# s_X3iH, GHC.Num.Integer #) $wk_s4mM
- ww_s4mz @ s_X3iH wild_X34 new_s_a3Zz
- of wild_X43C { (# new_s_X43B, r_X43D #) ->
- case (# GHC.Prim.State# s_X3iH, GHC.Num.Integer #) GHC.Base.==1 r_X43D lvl_s3Z6
- of wild_a4d2 {
- GHC.Base.False ->
- case (# GHC.Prim.State# s_X3iH, GHC.Num.Integer #) GHC.Base.==1 r_X43D lvl_s3Z7
- of wild_X3O {
- GHC.Base.False -> lvl_s4pE @ s_X3iH wild_X34 new_s_X43B;
- GHC.Base.True -> (# new_s_X43B, i_a1Ry #)
- };
- GHC.Base.True -> (# new_s_X43B, i_a1Ry #)
- }
- }
- }
- }
- }
- }
-end Rec }
-
-lvl_s4pZ :: GHC.Num.Integer
-[*]
-lvl_s4pZ = GHC.Num.S# 0
-
-lvl_s3Z5 :: Main.Alex GHC.Num.Integer
-[0 -> 0 -> *
- Str: DmdType]
-lvl_s3Z5 = loop_s3YA lvl_s4pZ
-
-Main.alexStartPos :: Main.AlexPosn
-[*
- Str: DmdType m]
-Main.alexStartPos = Main.AlexPn lit_a3m9 lvl_s4pT lvl_s4pT
-
-lvl_s4q0 :: GHC.Base.Char
-[*]
-lvl_s4q0 = GHC.Base.C# '\n'
-
-k_a4es :: GHC.Base.String -> GHC.IOBase.IO ()
-[Arity 2
- 0 -> 0 -> *
- Str: DmdType LL]
-k_a4es = \ (s_a1Uq :: GHC.Base.String)
- (eta_s4ed :: GHC.Prim.State# GHC.Prim.RealWorld) ->
- case (# GHC.Prim.State# GHC.Prim.RealWorld, () #) GHC.IO.hPutStr
- GHC.Handle.stdout
- (case GHC.Base.String GHC.Prim.newMutVar#
- @ GHC.Base.String
- @ GHC.Prim.RealWorld
- s_a1Uq
- GHC.Prim.realWorld#
- of wild_a4cU { (# s2#_a4cV, var#_a4cW #) ->
- case GHC.Base.String GHC.Prim.newMutVar#
- @ GHC.Base.Char
- @ GHC.Prim.RealWorld
- lvl_s4q0
- s2#_a4cV
- of wild_X4fc { (# s2#_X4fe, var#_X4fg #) ->
- case GHC.Base.String GHC.Prim.newMutVar#
- @ Main.AlexPosn
- @ GHC.Prim.RealWorld
- Main.alexStartPos
- s2#_X4fe
- of wild_X4gU { (# s2#_X4gW, var#_X4gY #) ->
- case GHC.Base.String GHC.Prim.newMutVar#
- @ GHC.Base.Int
- @ GHC.Prim.RealWorld
- lit_a3m9
- s2#_X4gW
- of wild_X4gS { (# s2#_X4l2, var#_X4l5 #) ->
- case GHC.Base.String lvl_s3Z5
- @ GHC.Prim.RealWorld
- (Main.AlexState
- @ GHC.Prim.RealWorld
- (GHC.STRef.STRef
- @ GHC.Prim.RealWorld
- @ Main.AlexPosn
- var#_X4gY)
- (GHC.STRef.STRef
- @ GHC.Prim.RealWorld
- @ GHC.Base.String
- var#_a4cW)
- (GHC.STRef.STRef
- @ GHC.Prim.RealWorld
- @ GHC.Base.Char
- var#_X4fg)
- (GHC.STRef.STRef
- @ GHC.Prim.RealWorld
- @ GHC.Base.Int
- var#_X4l5))
- s2#_X4l2
- of wild_a4jy { (# ds_a4jz, r_a4jA #) ->
- GHC.Num.$wshowsPrec
- 0 r_a4jA (GHC.Base.[] @ GHC.Base.Char)
- }
- }
- }
- }
- })
- eta_s4ed
- of wild_a4dA { (# new_s_a4dB, a89_a4dC #) ->
- GHC.IO.$whPutChar GHC.Handle.stdout '\n' new_s_a4dB
- }
-
-Main.main :: GHC.IOBase.IO ()
-[Exported]
-[Arity 1
- 0 -> *
- Str: DmdType L]
-Main.main = \ (s_a4er :: GHC.Prim.State# GHC.Prim.RealWorld) ->
- case (# GHC.Prim.State# GHC.Prim.RealWorld, () #) GHC.IO.hGetContents
- GHC.Handle.stdin s_a4er
- of wild_a4eA { (# new_s_a4ey, a89_a4ez #) ->
- k_a4es a89_a4ez new_s_a4ey
- }
-
-lvl_s4q1 :: GHC.Prim.State# GHC.Prim.RealWorld
- -> (# GHC.Prim.State# GHC.Prim.RealWorld, () #)
-[Arity 1
- 0 -> *]
-lvl_s4q1 = \ (s_a3VF :: GHC.Prim.State# GHC.Prim.RealWorld) ->
- case (# GHC.Prim.State# GHC.Prim.RealWorld, () #) GHC.IO.hGetContents
- GHC.Handle.stdin s_a3VF
- of wild_a4eA { (# new_s_a4ey, a89_a4ez #) ->
- case (# GHC.Prim.State# GHC.Prim.RealWorld, () #) k_a4es a89_a4ez new_s_a4ey
- of wild_a4eD { (# new_s_a4eK, a89_a4eL #) ->
- case (# GHC.Prim.State# GHC.Prim.RealWorld, () #) GHC.Prim.catch#
- @ ()
- @ GHC.IOBase.Exception
- GHC.TopHandler.ds
- GHC.TopHandler.k
- new_s_a4eK
- of wild1_a4eE { (# new_s1_a4eI, a891_a4eJ #) ->
- case (# GHC.Prim.State# GHC.Prim.RealWorld, () #) GHC.Prim.catch#
- @ ()
- @ GHC.IOBase.Exception
- GHC.TopHandler.ds1
- GHC.TopHandler.k1
- new_s1_a4eI
- of wild2_a4eF { (# new_s2_a4eG, a892_a4eH #) ->
- (# new_s2_a4eG, a89_a4eL #)
- }
- }
- }
- }
-
-:Main.main :: GHC.IOBase.IO ()
-[Exported]
-[Arity 1
- 0 -> *
- Str: DmdType L]
-:Main.main = \ (eta_a3VG :: GHC.Prim.State# GHC.Prim.RealWorld) ->
- GHC.Prim.catch#
- @ () @ GHC.IOBase.Exception lvl_s4q1 (GHC.TopHandler.topHandler @ ()) eta_a3VG
-
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/Makefile b/testsuite/tests/ghc-regress/arityanal/Makefile
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/Makefile
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/arityanal/f0.hs b/testsuite/tests/ghc-regress/arityanal/f0.hs
deleted file mode 100644
index f2b7794b99..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f0.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module F0 where
-
-f0 :: Int -> Int -> Int -> Int
-f0 x y = if (x>0) then let v = x + y
- in \z -> v+z
- else \z-> 1 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/arityanal/f0.stderr b/testsuite/tests/ghc-regress/arityanal/f0.stderr
deleted file mode 100644
index 29ce90589b..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f0.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-==================== IdInfo ====================
-lvl_s1yb :: GHC.Base.Int :: [*
- Str: DmdType m]
-F0.f0 :: GHC.Base.Int
- -> GHC.Base.Int
- -> GHC.Base.Int
- -> GHC.Base.Int :: [Arity 3
- 0 -> 0 -> 0 -> *
- Str: DmdType U(L)LLm]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f1.hs b/testsuite/tests/ghc-regress/arityanal/f1.hs
deleted file mode 100644
index 5de291945e..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f1.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module F1 where
-
-f1 = let h1 n x = if x<n then let v = h1 n (x+1)
- in \y -> v (x+y)
- else \y -> y
- in h1 5 1 5
-
-g = \x1-> \x2-> \x3-> \x4-> \x5-> x1+x2+x3+x4+x5
-s f = f 3
-h = s g 6 7 8 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/arityanal/f1.stderr b/testsuite/tests/ghc-regress/arityanal/f1.stderr
deleted file mode 100644
index afafd7d71b..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f1.stderr
+++ /dev/null
@@ -1,20 +0,0 @@
-***Arity is changed: h1{v a19i} 3 2
-
-==================== IdInfo ====================
-lvl_s1AI :: GHC.Num.Integer -> GHC.Num.Integer :: [Arity 1
- 0 -> *
- Str: DmdType S]
-lit_a1hu :: GHC.Num.Integer :: [*
- Str: DmdType]
-lit_a1ho :: GHC.Num.Integer :: [*
- Str: DmdType]
-h1_a19i :: GHC.Num.Integer
- -> GHC.Num.Integer
- -> GHC.Num.Integer
- -> GHC.Num.Integer :: [Arity 2
- 0 -> 0 -> 0 -> *
- Str: DmdType SS]
-F1.f1 :: GHC.Num.Integer :: [*
- Str: DmdType]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f10.hs b/testsuite/tests/ghc-regress/arityanal/f10.hs
deleted file mode 100644
index bee91d7820..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f10.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module F10 where
-
-f10f = \h -> (h 1 2, h 3)
-f10g = \x -> \y -> x+y
-f10h = f10f f10g
-f10x1 = fst f10h
-f10x2 = snd f10h
-f10 = f10x2 f10x1
diff --git a/testsuite/tests/ghc-regress/arityanal/f10.stderr b/testsuite/tests/ghc-regress/arityanal/f10.stderr
deleted file mode 100644
index cd3a95fbe4..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f10.stderr
+++ /dev/null
@@ -1,27 +0,0 @@
-***Arity is changed as occur many times: F10.f10f{v r155} 2 1
-
-==================== IdInfo ====================
-lit_s1Ll :: GHC.Num.Integer :: [*
- Str: DmdType]
-lit_s1Lj :: GHC.Num.Integer :: [*
- Str: DmdType]
-lit_s1Lh :: GHC.Num.Integer :: [*
- Str: DmdType]
-F10.f10g :: GHC.Num.Integer -> GHC.Num.Integer -> GHC.Num.Integer :: [Arity 2
- *
- Str: DmdType SS]
-F10.f10f :: forall a_a1fu.
- (GHC.Num.Integer -> GHC.Num.Integer -> a_a1fu)
- -> (a_a1fu, GHC.Num.Integer -> a_a1fu) :: [Arity 1
- 1 -> *
- Str: DmdType Lm]
-F10.f10h :: (GHC.Num.Integer, GHC.Num.Integer -> GHC.Num.Integer) :: [*
- Str: DmdType]
-F10.f10x1 :: GHC.Num.Integer :: [*
- Str: DmdType]
-F10.f10x2 :: GHC.Num.Integer -> GHC.Num.Integer :: [*
- Str: DmdType]
-F10.f10 :: GHC.Num.Integer :: [*
- Str: DmdType]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f11.hs b/testsuite/tests/ghc-regress/arityanal/f11.hs
deleted file mode 100644
index f94d3adec0..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f11.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module F11 where
-
-fib 0 = 1
-fib 1 = 1
-fib n = fib (n-1) + fib (n-2)
-
-f11f = \z -> let x = fib 1000
- in \y -> x+y
-
-f11 = (f11f 5 6, f11f 7 8)
diff --git a/testsuite/tests/ghc-regress/arityanal/f11.stderr b/testsuite/tests/ghc-regress/arityanal/f11.stderr
deleted file mode 100644
index fc78dad48d..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f11.stderr
+++ /dev/null
@@ -1,45 +0,0 @@
-***expensive e1 0
-***expensive e1 0
-***expensive e1 0
-***expensive e1 0
-***expensive e1 0
-
-==================== IdInfo ====================
-lvl_s1Fz :: GHC.Num.Integer :: [*
- Str: DmdType]
-lvl_s1Fv :: GHC.Num.Integer :: [*
- Str: DmdType]
-lvl_s1Fu :: GHC.Num.Integer :: [*
- Str: DmdType]
-fib_s1Fj :: GHC.Num.Integer -> GHC.Num.Integer :: [Arity 1
- 0 -> *
- Str: DmdType S]
-lvl_s1IP :: GHC.Num.Integer :: [*]
-x_s1Fr :: GHC.Num.Integer :: [*
- Str: DmdType]
-lvl_s1IQ :: GHC.Num.Integer :: [*]
-a_s1rF :: GHC.Num.Integer :: [*
- Str: DmdType]
-lvl_s1IR :: GHC.Num.Integer :: [*]
-a_s1rE :: GHC.Num.Integer :: [*
- Str: DmdType]
-F11.f11 :: (GHC.Num.Integer, GHC.Num.Integer) :: [*
- Str: DmdType m]
-F11.f11f :: forall t_a1gd.
- t_a1gd -> GHC.Num.Integer -> GHC.Num.Integer :: [Arity 2
- T
- Str: DmdType AS]
-F11.fib :: forall a_a19x a_a1eN.
- (GHC.Num.Num a_a1eN, GHC.Num.Num a_a19x) =>
- a_a19x -> a_a1eN :: [Arity 2
- 0 -> 0 -> 0 -> *
- Str: DmdType LL
- RULES: "SPEC F11.fib" __forall {$dNum_X1Fo :: {GHC.Num.Num GHC.Num.Integer}
- $dNum_X1Fq :: {GHC.Num.Num GHC.Num.Integer}}
- F11.fib @ GHC.Num.Integer
- @ GHC.Num.Integer
- $dNum_X1Fo
- $dNum_X1Fq
- = fib_s1Fj ;]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f12.hs b/testsuite/tests/ghc-regress/arityanal/f12.hs
deleted file mode 100644
index 35e82edc9f..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f12.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module F12 where
-
-f12 = let f g x = g x
- h = (+)
- in f h 4 5
diff --git a/testsuite/tests/ghc-regress/arityanal/f12.stderr b/testsuite/tests/ghc-regress/arityanal/f12.stderr
deleted file mode 100644
index 9cd69ed7e2..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f12.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-==================== IdInfo ====================
-lvl_s1Bx :: GHC.Num.Integer :: [*]
-lvl_s1By :: GHC.Num.Integer :: [*]
-F12.f12 :: GHC.Num.Integer :: [*
- Str: DmdType]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f13.hs b/testsuite/tests/ghc-regress/arityanal/f13.hs
deleted file mode 100644
index 1b7a779c37..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f13.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module F13 where
-
-f13 x y = let f13f = if (x>0) then \z -> z x y
- else \z -> y
- f13h = let v = f13f 5
- in \w -> w + v
- in \u -> f13h u
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f13.stderr b/testsuite/tests/ghc-regress/arityanal/f13.stderr
deleted file mode 100644
index 37718205b0..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f13.stderr
+++ /dev/null
@@ -1,17 +0,0 @@
-***expensive e1 0
-
-==================== IdInfo ====================
-lvl_s1AR :: GHC.Num.Integer :: [*
- Str: DmdType]
-lvl_s1AQ :: GHC.Num.Integer :: [*
- Str: DmdType]
-F13.f13 :: forall a_a19A a_a1gc.
- (GHC.Num.Num a_a19A,
- GHC.Base.Ord a_a19A,
- GHC.Num.Num a_a1gc,
- GHC.Num.Num (a_a19A -> a_a1gc -> a_a1gc)) =>
- a_a19A -> a_a1gc -> a_a1gc -> a_a1gc :: [Arity 6
- 0 -> 0 -> 0 -> 0 -> 0 -> 0 -> 0 -> *
- Str: DmdType LLLLLL]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f14.hs b/testsuite/tests/ghc-regress/arityanal/f14.hs
deleted file mode 100644
index a908b6622b..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f14.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module F14 where
-
-f14 n x = if x<n then let v = f14 n (x+1)
- in \y -> v (x+y)
- else \y -> y
diff --git a/testsuite/tests/ghc-regress/arityanal/f14.stderr b/testsuite/tests/ghc-regress/arityanal/f14.stderr
deleted file mode 100644
index 8a3e8382ba..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f14.stderr
+++ /dev/null
@@ -1,26 +0,0 @@
-***expensive e1 0
-***Arity is changed as occur many times: F14.f14{v r16A} 4 0
-
-==================== IdInfo ====================
-lvl_s1zz :: forall a_a19p. a_a19p -> a_a19p :: [Arity 1
- 0 -> *
- Str: DmdType S]
-lvl_s1zy :: GHC.Num.Integer :: [*
- Str: DmdType]
-$wf14_s1Ak :: forall a_a19p.
- (a_a19p -> a_a19p -> GHC.Base.Bool)
- -> {GHC.Num.Num a_a19p}
- -> a_a19p
- -> a_a19p
- -> a_a19p
- -> a_a19p :: [Arity 4
- 2 -> 0 -> 0 -> 0 -> 0 -> *
- Str: DmdType C(C(S))LLL]
-F14.f14 :: forall a_a19p.
- (GHC.Base.Ord a_a19p, GHC.Num.Num a_a19p) =>
- a_a19p -> a_a19p -> a_a19p -> a_a19p :: [Arity 4
- T
- Worker $wf14_s1Ak
- Str: DmdType U(AAC(C(S))AAAAA)LLL]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f15.hs b/testsuite/tests/ghc-regress/arityanal/f15.hs
deleted file mode 100644
index 7e1d5dfa16..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f15.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module F15 where
-
-f15f = \h -> h 1
-f15g = \x -> x+1
-f15 = f15f f15g \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/arityanal/f15.stderr b/testsuite/tests/ghc-regress/arityanal/f15.stderr
deleted file mode 100644
index a68ecb25e4..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f15.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-
-==================== IdInfo ====================
-lit_s1zs :: GHC.Num.Integer :: [*
- Str: DmdType]
-F15.f15f :: forall t_a1fm. (GHC.Num.Integer -> t_a1fm) -> t_a1fm :: [Arity 1
- 1 -> *
- Str: DmdType C(S)]
-F15.f15g :: GHC.Num.Integer -> GHC.Num.Integer :: [Arity 1
- 0 -> *
- Str: DmdType S]
-F15.f15 :: GHC.Num.Integer :: [*
- Str: DmdType]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f2.hs b/testsuite/tests/ghc-regress/arityanal/f2.hs
deleted file mode 100644
index bdc06e45f2..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f2.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module F2 where
-
-f2f = \h -> \x -> h x 0
-f2 = let g = \x -> \y -> if (x > 0)
- then g (x-1) (x+y)
- else y
- in f2f g 5 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/arityanal/f2.stderr b/testsuite/tests/ghc-regress/arityanal/f2.stderr
deleted file mode 100644
index d3fe22cc80..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f2.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-
-==================== IdInfo ====================
-lit_s1Bh :: GHC.Num.Integer :: [*
- Str: DmdType]
-F2.f2f :: forall t_a19s t_a19u.
- (t_a19u -> GHC.Num.Integer -> t_a19s) -> t_a19u -> t_a19s :: [Arity 2
- 2 -> 0 -> *
- Str: DmdType C(C(S))L]
-lit_a1i8 :: GHC.Num.Integer :: [*
- Str: DmdType]
-g_a1fp :: GHC.Num.Integer -> GHC.Num.Integer -> GHC.Num.Integer :: [Arity 2
- 0 -> 0 -> *
- Str: DmdType SS]
-lvl_s1DV :: GHC.Num.Integer :: [*]
-F2.f2 :: GHC.Num.Integer :: [*
- Str: DmdType]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f3.hs b/testsuite/tests/ghc-regress/arityanal/f3.hs
deleted file mode 100644
index f8210e6f0f..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f3.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module F3 where
-
-fac :: Int -> Int
-fac x = if (x==0) then 1
- else x*fac (x-1)
-
-f3 = let v = fac
- in \y -> v y \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/arityanal/f3.stderr b/testsuite/tests/ghc-regress/arityanal/f3.stderr
deleted file mode 100644
index 863713ebe4..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f3.stderr
+++ /dev/null
@@ -1,15 +0,0 @@
-***Arity is changed as occur many times: F3.f3{v r157} 1 0
-
-==================== IdInfo ====================
-$wfac_s1Bz :: GHC.Prim.Int# -> GHC.Prim.Int# :: [Arity 1
- 0 -> *
- Str: DmdType L]
-F3.fac :: GHC.Base.Int -> GHC.Base.Int :: [Arity 1
- T
- Worker $wfac_s1Bz
- Str: DmdType U(L)m]
-F3.f3 :: GHC.Base.Int -> GHC.Base.Int :: [Arity 1
- T
- Str: DmdType U(L)m]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f4.hs b/testsuite/tests/ghc-regress/arityanal/f4.hs
deleted file mode 100644
index 29c3e8d4ab..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f4.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module F4 where
-
-f4h :: (Int -> Int) -> Int -> Int
-f4h f x = if x==0 then (f x)
- else f4h f (x-1) -- + (f x)
-f4g = \y->y+1
-f4 = f4h f4g 9 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/arityanal/f4.stderr b/testsuite/tests/ghc-regress/arityanal/f4.stderr
deleted file mode 100644
index 48b617f3ae..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f4.stderr
+++ /dev/null
@@ -1,22 +0,0 @@
-***Arity is changed as occur many times: F4.f4h{v r155} 2 0
-
-==================== IdInfo ====================
-F4.f4g :: GHC.Base.Int -> GHC.Base.Int :: [Arity 1
- 0 -> *
- Str: DmdType U(L)m]
-lvl_s1Cq :: GHC.Base.Int :: [*]
-$wf4h_s1C9 :: (GHC.Base.Int -> GHC.Base.Int)
- -> GHC.Prim.Int#
- -> GHC.Base.Int :: [Arity 2
- 0 -> 0 -> *
- Str: DmdType C(S)L]
-F4.f4h :: (GHC.Base.Int -> GHC.Base.Int)
- -> GHC.Base.Int
- -> GHC.Base.Int :: [Arity 2
- T
- Worker $wf4h_s1C9
- Str: DmdType C(S)U(L)]
-F4.f4 :: GHC.Base.Int :: [*
- Str: DmdType]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f5.hs b/testsuite/tests/ghc-regress/arityanal/f5.hs
deleted file mode 100644
index 96c8450270..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f5.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module F5 where
-
--- result not satisfiable
-f5g h z = (h z) + 1
-f5h f x g = f x + f5g g x -- + (f (x+1))
-f5y = (\y -> y+1)
-f5 = f5h f5y 0 f5y \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/arityanal/f5.stderr b/testsuite/tests/ghc-regress/arityanal/f5.stderr
deleted file mode 100644
index 757cd3d35e..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f5.stderr
+++ /dev/null
@@ -1,47 +0,0 @@
-
-==================== IdInfo ====================
-lvl_s1B7 :: GHC.Num.Integer :: [*
- Str: DmdType]
-$sf5h_s1B2 :: forall t_a1gj.
- (t_a1gj -> GHC.Num.Integer)
- -> t_a1gj
- -> (t_a1gj -> GHC.Num.Integer)
- -> GHC.Num.Integer :: [Arity 3
- 1 -> 0 -> 1 -> *
- Str: DmdType C(S)LC(S)]
-$sf5g_s1B1 :: forall t_a1fy.
- (t_a1fy -> GHC.Num.Integer) -> t_a1fy -> GHC.Num.Integer :: [Arity 2
- 1 -> 0 -> *
- Str: DmdType C(S)L]
-eta_s1or :: GHC.Num.Integer :: [*
- Str: DmdType]
-F5.f5h :: forall a_a1gd t_a1gj.
- (GHC.Num.Num a_a1gd) =>
- (t_a1gj -> a_a1gd) -> t_a1gj -> (t_a1gj -> a_a1gd) -> a_a1gd :: [Arity 4
- 0 -> 1 -> 0 -> 1 -> *
- Str: DmdType U(AAC(C(S))AAAAAL)LLL
- RULES: "SPEC F5.f5h" __forall {@ t_a1gj
- $dNum_X1Bl :: {GHC.Num.Num GHC.Num.Integer}}
- F5.f5h @ GHC.Num.Integer
- @ t_a1gj
- $dNum_X1Bl
- = $sf5h_s1B2
- @ t_a1gj ;]
-F5.f5g :: forall t_a1fy a_a1fB.
- (GHC.Num.Num a_a1fB) =>
- (t_a1fy -> a_a1fB) -> t_a1fy -> a_a1fB :: [Arity 3
- 0 -> 1 -> 0 -> *
- Str: DmdType U(AAC(C(S))AAAAAL)LL
- RULES: "SPEC F5.f5g" __forall {@ t_a1fy
- $dNum_X1Bk :: {GHC.Num.Num GHC.Num.Integer}}
- F5.f5g @ t_a1fy @ GHC.Num.Integer $dNum_X1Bk
- = $sf5g_s1B1 @ t_a1fy ;]
-F5.f5y :: GHC.Num.Integer -> GHC.Num.Integer :: [Arity 1
- 0 -> *
- Str: DmdType S]
-lvl_s1DK :: GHC.Num.Integer :: [*]
-lvl_s1DL :: GHC.Num.Integer :: [*]
-F5.f5 :: GHC.Num.Integer :: [*
- Str: DmdType]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f6.hs b/testsuite/tests/ghc-regress/arityanal/f6.hs
deleted file mode 100644
index ba1e453c3f..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f6.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module F6 where
-
-f6f = \h -> \x -> h x 0
-f6t = \y -> \z -> y + z
-f6 = f6f f6t 3 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/arityanal/f6.stderr b/testsuite/tests/ghc-regress/arityanal/f6.stderr
deleted file mode 100644
index 68c03c44a3..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f6.stderr
+++ /dev/null
@@ -1,16 +0,0 @@
-
-==================== IdInfo ====================
-lit_s1zR :: GHC.Num.Integer :: [*
- Str: DmdType]
-lvl_s1C2 :: GHC.Num.Integer :: [*]
-F6.f6 :: GHC.Num.Integer :: [*
- Str: DmdType]
-F6.f6t :: GHC.Num.Integer -> GHC.Num.Integer -> GHC.Num.Integer :: [Arity 2
- *
- Str: DmdType SS]
-F6.f6f :: forall t_a1fp t_a1fr.
- (t_a1fr -> GHC.Num.Integer -> t_a1fp) -> t_a1fr -> t_a1fp :: [Arity 2
- 2 -> 0 -> *
- Str: DmdType C(C(S))L]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f7.hs b/testsuite/tests/ghc-regress/arityanal/f7.hs
deleted file mode 100644
index 44241c5ae1..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f7.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module F7 where
-
-f7f = \x -> x
-f7g = \z -> \y -> z+y
-f7 = f7f f7g 2 3
diff --git a/testsuite/tests/ghc-regress/arityanal/f7.stderr b/testsuite/tests/ghc-regress/arityanal/f7.stderr
deleted file mode 100644
index 7cef2a7c36..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f7.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-
-==================== IdInfo ====================
-lvl_s1BI :: GHC.Num.Integer :: [*]
-lvl_s1BJ :: GHC.Num.Integer :: [*]
-F7.f7 :: GHC.Num.Integer :: [*
- Str: DmdType]
-F7.f7g :: GHC.Num.Integer -> GHC.Num.Integer -> GHC.Num.Integer :: [Arity 2
- *
- Str: DmdType SS]
-F7.f7f :: forall t_a1fh. t_a1fh -> t_a1fh :: [Arity 1
- 0 -> *
- Str: DmdType S]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f8.hs b/testsuite/tests/ghc-regress/arityanal/f8.hs
deleted file mode 100644
index 1c960556b5..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f8.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module F8 where
-
-f8f b x y = let g = \z -> x+y+z
- in if b then y else g (x*x)
-f8 = f8f True 1 2 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/arityanal/f8.stderr b/testsuite/tests/ghc-regress/arityanal/f8.stderr
deleted file mode 100644
index e297ceb722..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f8.stderr
+++ /dev/null
@@ -1,20 +0,0 @@
-
-==================== IdInfo ====================
-$sf8f_s1zR :: GHC.Base.Bool
- -> GHC.Num.Integer
- -> GHC.Num.Integer
- -> GHC.Num.Integer :: [Arity 3
- 0 -> 0 -> 0 -> *
- Str: DmdType SLS]
-F8.f8 :: GHC.Num.Integer :: [*
- Str: DmdType]
-F8.f8f :: forall a_a1ex.
- (GHC.Num.Num a_a1ex) =>
- GHC.Base.Bool -> a_a1ex -> a_a1ex -> a_a1ex :: [Arity 4
- 0 -> 0 -> 0 -> 0 -> *
- Str: DmdType LSLL
- RULES: "SPEC F8.f8f" __forall {$dNum_X1zY :: {GHC.Num.Num GHC.Num.Integer}}
- F8.f8f @ GHC.Num.Integer $dNum_X1zY
- = $sf8f_s1zR ;]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/f9.hs b/testsuite/tests/ghc-regress/arityanal/f9.hs
deleted file mode 100644
index e991cfd478..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f9.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module F9 where
-
-f91 = let f = \n -> if n<=100 then f (f (n+11)) else n-10
- in f 10 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/arityanal/f9.stderr b/testsuite/tests/ghc-regress/arityanal/f9.stderr
deleted file mode 100644
index 267b96b858..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/f9.stderr
+++ /dev/null
@@ -1,15 +0,0 @@
-
-==================== IdInfo ====================
-lit_a1hg :: GHC.Num.Integer :: [*
- Str: DmdType]
-lit_a1he :: GHC.Num.Integer :: [*
- Str: DmdType]
-lit_a1h9 :: GHC.Num.Integer :: [*
- Str: DmdType]
-f_a19b :: GHC.Num.Integer -> GHC.Num.Integer :: [Arity 1
- 0 -> *
- Str: DmdType S]
-F9.f91 :: GHC.Num.Integer :: [*
- Str: DmdType]
-
-
diff --git a/testsuite/tests/ghc-regress/arityanal/prim.hs b/testsuite/tests/ghc-regress/arityanal/prim.hs
deleted file mode 100644
index 5b91ad24f2..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/prim.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Prim where
-
-map2 f [] = []
-map2 f (x:xs) = f x : map2 f xs
-
-zipWith2 f [] [] = []
-zipWith2 f (a:x) (b:y) = (f a b):zipWith2 f x y \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/arityanal/prim.stderr b/testsuite/tests/ghc-regress/arityanal/prim.stderr
deleted file mode 100644
index b5f76d493e..0000000000
--- a/testsuite/tests/ghc-regress/arityanal/prim.stderr
+++ /dev/null
@@ -1,15 +0,0 @@
-***Arity is changed as occur in Lambda: polyzufail_s1tt{v} 1 0
-
-==================== IdInfo ====================
-poly_fail_s1tt :: forall a_a175. [a_a175] :: [*
- Str: DmdType b]
-Prim.zipWith2 :: forall a_a16Z a_a171 a_a175.
- (a_a16Z -> a_a171 -> a_a175) -> [a_a16Z] -> [a_a171] -> [a_a175] :: [Arity 3
- 0 -> 0 -> 0 -> *
- Str: DmdType LSS]
-Prim.map2 :: forall a_a17C a_a17G.
- (a_a17C -> a_a17G) -> [a_a17C] -> [a_a17G] :: [Arity 2
- 0 -> 0 -> *
- Str: DmdType LS]
-
-
diff --git a/testsuite/tests/ghc-regress/array/Makefile b/testsuite/tests/ghc-regress/array/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/array/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/array/should_run/Makefile b/testsuite/tests/ghc-regress/array/should_run/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/array/should_run/all.T b/testsuite/tests/ghc-regress/array/should_run/all.T
deleted file mode 100644
index 8b1ab2dd4d..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/all.T
+++ /dev/null
@@ -1,25 +0,0 @@
-
-# Args to compile_and_run are:
-# extra compile flags
-# extra run flags
-# expected process return value, if not zero
-
-test('arr001', skip_if_fast, compile_and_run, [''])
-test('arr002', skip_if_fast, compile_and_run, [''])
-test('arr003', compose(skip_if_fast,exit_code(1)), compile_and_run, [''])
-test('arr004', compose(skip_if_fast,exit_code(1)), compile_and_run, [''])
-test('arr005', skip_if_fast, compile_and_run, [''])
-test('arr006', skip_if_fast, compile_and_run, [''])
-test('arr007', compose(skip_if_fast,exit_code(1)), compile_and_run, [''])
-test('arr008', compose(skip_if_fast,exit_code(1)), compile_and_run, [''])
-test('arr009', skip_if_fast, compile_and_run, [''])
-test('arr010', skip_if_fast, compile_and_run, [''])
-test('arr011', skip_if_fast, compile_and_run, [''])
-test('arr012', skip_if_fast, compile_and_run, [''])
-test('arr013', skip_if_fast, compile_and_run, [''])
-test('arr014', skip_if_fast, compile_and_run, [''])
-test('arr015', skip_if_fast, compile_and_run, [''])
-test('arr016', reqlib('random'), compile_and_run, [''])
-test('arr017', skip_if_fast, compile_and_run, [''])
-test('arr018', skip_if_fast, compile_and_run, [''])
-test('arr019', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr001.hs b/testsuite/tests/ghc-regress/array/should_run/arr001.hs
deleted file mode 100644
index 325ce1bc09..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr001.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! Simple array creation
-
-import Data.Array
-
-main =
- let a1 = array (1,3) (zip [2,3,1] ['a'..'d']) in
- print a1
-
--- Result:
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr001.stdout b/testsuite/tests/ghc-regress/array/should_run/arr001.stdout
deleted file mode 100644
index 5d4420352e..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-array (1,3) [(1,'c'),(2,'a'),(3,'b')]
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr002.hs b/testsuite/tests/ghc-regress/array/should_run/arr002.hs
deleted file mode 100644
index a26a60281c..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr002.hs
+++ /dev/null
@@ -1,23 +0,0 @@
--- !!! Array creation, (index,value) list with duplicates.
---
--- Haskell library report 1.3 (and earlier) specifies
--- that `array' values created with lists containing dups,
--- are undefined ( _|_ ).
---
--- GHC-2.02 (and earlier) does not flag this as such, the
--- last (index,value) is instead used.
---
--- The report also specifies `array' is spine strict in
--- the (index,value) list argument and to check the
--- validity of the index values upon creation, it also
--- strict for the indices. To test this, we do (a!1)
--- twice, expecting to see the same value..
---
-import Data.Array
-
-main =
- let a1 = array (1,3) (zip (1:[1..3]) ['a'..'d']) in
- print (a1!1) >>
- print a1 >>
- print (a1!1)
-
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr002.stdout b/testsuite/tests/ghc-regress/array/should_run/arr002.stdout
deleted file mode 100644
index ca55f16bbc..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr002.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-'b'
-array (1,3) [(1,'b'),(2,'c'),(3,'d')]
-'b'
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr003.hs b/testsuite/tests/ghc-regress/array/should_run/arr003.hs
deleted file mode 100644
index 8f156ab6d9..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr003.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- !!! Array creation, (index,value) list with out of bound index.
---
--- Haskell library report 1.3 (and earlier) specifies
--- that `array' values created with lists containing out-of-bounds indices,
--- are undefined ( _|_ ).
---
--- GHC implementation of `array' catches this (or, rather,
--- `index' does) - the argument list to `array' is defined
--- to have its spine be evaluated - so the indexing below
--- should cause a failure.
---
-import Data.Array
-
-main =
- let a1 = array (1::Int,3) (zip ([1..4]) ['a'..'d']) in
- print (a1!2)
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr003.stderr b/testsuite/tests/ghc-regress/array/should_run/arr003.stderr
deleted file mode 100644
index 8f3945286b..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr003.stderr
+++ /dev/null
@@ -1 +0,0 @@
-arr003: Ix{Int}.index: Index (4) out of range ((1,3))
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr003.stderr-hugs b/testsuite/tests/ghc-regress/array/should_run/arr003.stderr-hugs
deleted file mode 100644
index 0f838fa8cd..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr003.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-arr003: Ix.index: index out of range
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr004.hs b/testsuite/tests/ghc-regress/array/should_run/arr004.hs
deleted file mode 100644
index 0d7e5b445f..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr004.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- !!! Array - accessing undefined element
---
--- Sample Haskell implementation in the 1.3 Lib report defines
--- this as being undefined/error.
-
-import Data.Array
-
-main =
- let a1 = array (1,3) (zip ([1,2]) ['a'..'d']) in
- print (a1!3)
-
--- output: Fail: (Array.!): undefined array element
-
-
-
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr004.stderr b/testsuite/tests/ghc-regress/array/should_run/arr004.stderr
deleted file mode 100644
index b69cbf5b62..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr004.stderr
+++ /dev/null
@@ -1 +0,0 @@
-arr004: (Array.!): undefined array element
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr004.stderr-hugs b/testsuite/tests/ghc-regress/array/should_run/arr004.stderr-hugs
deleted file mode 100644
index 2d1decd612..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr004.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-arr004: undefined array element
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr005.hs b/testsuite/tests/ghc-regress/array/should_run/arr005.hs
deleted file mode 100644
index 274f8bb1c1..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr005.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- !!! Array - recurrences
---
--- array does not evaluate the elements.
---
-import Data.Array
-
-main =
- let
- a1 = array (1,100) ((1,1::Integer):[(i,i*a1!(i-1))|i<-[2..100]])
- in
- print a1
-
---
-
-
-
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr005.stdout b/testsuite/tests/ghc-regress/array/should_run/arr005.stdout
deleted file mode 100644
index 5048dd0479..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr005.stdout
+++ /dev/null
@@ -1 +0,0 @@
-array (1,100) [(1,1),(2,2),(3,6),(4,24),(5,120),(6,720),(7,5040),(8,40320),(9,362880),(10,3628800),(11,39916800),(12,479001600),(13,6227020800),(14,87178291200),(15,1307674368000),(16,20922789888000),(17,355687428096000),(18,6402373705728000),(19,121645100408832000),(20,2432902008176640000),(21,51090942171709440000),(22,1124000727777607680000),(23,25852016738884976640000),(24,620448401733239439360000),(25,15511210043330985984000000),(26,403291461126605635584000000),(27,10888869450418352160768000000),(28,304888344611713860501504000000),(29,8841761993739701954543616000000),(30,265252859812191058636308480000000),(31,8222838654177922817725562880000000),(32,263130836933693530167218012160000000),(33,8683317618811886495518194401280000000),(34,295232799039604140847618609643520000000),(35,10333147966386144929666651337523200000000),(36,371993326789901217467999448150835200000000),(37,13763753091226345046315979581580902400000000),(38,523022617466601111760007224100074291200000000),(39,20397882081197443358640281739902897356800000000),(40,815915283247897734345611269596115894272000000000),(41,33452526613163807108170062053440751665152000000000),(42,1405006117752879898543142606244511569936384000000000),(43,60415263063373835637355132068513997507264512000000000),(44,2658271574788448768043625811014615890319638528000000000),(45,119622220865480194561963161495657715064383733760000000000),(46,5502622159812088949850305428800254892961651752960000000000),(47,258623241511168180642964355153611979969197632389120000000000),(48,12413915592536072670862289047373375038521486354677760000000000),(49,608281864034267560872252163321295376887552831379210240000000000),(50,30414093201713378043612608166064768844377641568960512000000000000),(51,1551118753287382280224243016469303211063259720016986112000000000000),(52,80658175170943878571660636856403766975289505440883277824000000000000),(53,4274883284060025564298013753389399649690343788366813724672000000000000),(54,230843697339241380472092742683027581083278564571807941132288000000000000),(55,12696403353658275925965100847566516959580321051449436762275840000000000000),(56,710998587804863451854045647463724949736497978881168458687447040000000000000),(57,40526919504877216755680601905432322134980384796226602145184481280000000000000),(58,2350561331282878571829474910515074683828862318181142924420699914240000000000000),(59,138683118545689835737939019720389406345902876772687432540821294940160000000000000),(60,8320987112741390144276341183223364380754172606361245952449277696409600000000000000),(61,507580213877224798800856812176625227226004528988036003099405939480985600000000000000),(62,31469973260387937525653122354950764088012280797258232192163168247821107200000000000000),(63,1982608315404440064116146708361898137544773690227268628106279599612729753600000000000000),(64,126886932185884164103433389335161480802865516174545192198801894375214704230400000000000000),(65,8247650592082470666723170306785496252186258551345437492922123134388955774976000000000000000),(66,544344939077443064003729240247842752644293064388798874532860126869671081148416000000000000000),(67,36471110918188685288249859096605464427167635314049524593701628500267962436943872000000000000000),(68,2480035542436830599600990418569171581047399201355367672371710738018221445712183296000000000000000),(69,171122452428141311372468338881272839092270544893520369393648040923257279754140647424000000000000000),(70,11978571669969891796072783721689098736458938142546425857555362864628009582789845319680000000000000000),(71,850478588567862317521167644239926010288584608120796235886430763388588680378079017697280000000000000000),(72,61234458376886086861524070385274672740778091784697328983823014963978384987221689274204160000000000000000),(73,4470115461512684340891257138125051110076800700282905015819080092370422104067183317016903680000000000000000),(74,330788544151938641225953028221253782145683251820934971170611926835411235700971565459250872320000000000000000),(75,24809140811395398091946477116594033660926243886570122837795894512655842677572867409443815424000000000000000000),(76,1885494701666050254987932260861146558230394535379329335672487982961844043495537923117729972224000000000000000000),(77,145183092028285869634070784086308284983740379224208358846781574688061991349156420080065207861248000000000000000000),(78,11324281178206297831457521158732046228731749579488251990048962825668835325234200766245086213177344000000000000000000),(79,894618213078297528685144171539831652069808216779571907213868063227837990693501860533361810841010176000000000000000000),(80,71569457046263802294811533723186532165584657342365752577109445058227039255480148842668944867280814080000000000000000000),(81,5797126020747367985879734231578109105412357244731625958745865049716390179693892056256184534249745940480000000000000000000),(82,475364333701284174842138206989404946643813294067993328617160934076743994734899148613007131808479167119360000000000000000000),(83,39455239697206586511897471180120610571436503407643446275224357528369751562996629334879591940103770870906880000000000000000000),(84,3314240134565353266999387579130131288000666286242049487118846032383059131291716864129885722968716753156177920000000000000000000),(85,281710411438055027694947944226061159480056634330574206405101912752560026159795933451040286452340924018275123200000000000000000000),(86,24227095383672732381765523203441259715284870552429381750838764496720162249742450276789464634901319465571660595200000000000000000000),(87,2107757298379527717213600518699389595229783738061356212322972511214654115727593174080683423236414793504734471782400000000000000000000),(88,185482642257398439114796845645546284380220968949399346684421580986889562184028199319100141244804501828416633516851200000000000000000000),(89,16507955160908461081216919262453619309839666236496541854913520707833171034378509739399912570787600662729080382999756800000000000000000000),(90,1485715964481761497309522733620825737885569961284688766942216863704985393094065876545992131370884059645617234469978112000000000000000000000),(91,135200152767840296255166568759495142147586866476906677791741734597153670771559994765685283954750449427751168336768008192000000000000000000000),(92,12438414054641307255475324325873553077577991715875414356840239582938137710983519518443046123837041347353107486982656753664000000000000000000000),(93,1156772507081641574759205162306240436214753229576413535186142281213246807121467315215203289516844845303838996289387078090752000000000000000000000),(94,108736615665674308027365285256786601004186803580182872307497374434045199869417927630229109214583415458560865651202385340530688000000000000000000000),(95,10329978488239059262599702099394727095397746340117372869212250571234293987594703124871765375385424468563282236864226607350415360000000000000000000000),(96,991677934870949689209571401541893801158183648651267795444376054838492222809091499987689476037000748982075094738965754305639874560000000000000000000000),(97,96192759682482119853328425949563698712343813919172976158104477319333745612481875498805879175589072651261284189679678167647067832320000000000000000000000),(98,9426890448883247745626185743057242473809693764078951663494238777294707070023223798882976159207729119823605850588608460429412647567360000000000000000000000),(99,933262154439441526816992388562667004907159682643816214685929638952175999932299156089414639761565182862536979208272237582511852109168640000000000000000000000),(100,93326215443944152681699238856266700490715968264381621468592963895217599993229915608941463976156518286253697920827223758251185210916864000000000000000000000000)]
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr006.hs b/testsuite/tests/ghc-regress/array/should_run/arr006.hs
deleted file mode 100644
index 52d21c6f3d..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr006.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! Array - empty arrays
---
--- print a couple of them to try to expose empty arrays
--- to a GC or two.
-import Data.Array
-
-main =
- let
- a1 = array (1,0) []
- in
- print (take 300 $ repeat (a1 :: Array Int Int))
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr006.stdout b/testsuite/tests/ghc-regress/array/should_run/arr006.stdout
deleted file mode 100644
index 289deeec07..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr006.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) [],array (1,0) []]
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr007.hs b/testsuite/tests/ghc-regress/array/should_run/arr007.hs
deleted file mode 100644
index d4461d8d5e..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr007.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! Array - accessing empty arrays
---
--- empty arrays are legal, but indexing them is undefined!
---
-import Data.Array
-
-main =
- let
- a1 = array (1::Int,0) [(1,'a')]
- in
- print (a1!0)
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr007.stderr b/testsuite/tests/ghc-regress/array/should_run/arr007.stderr
deleted file mode 100644
index feaa5d8363..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr007.stderr
+++ /dev/null
@@ -1 +0,0 @@
-arr007: Ix{Int}.index: Index (1) out of range ((1,0))
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr007.stderr-hugs b/testsuite/tests/ghc-regress/array/should_run/arr007.stderr-hugs
deleted file mode 100644
index aa4c83b32e..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr007.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-arr007: Ix.index: index out of range
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr008.hs b/testsuite/tests/ghc-regress/array/should_run/arr008.hs
deleted file mode 100644
index 14152c5a9d..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr008.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !!! Array - out-of-range (index,value) pairs
---
--- supplying a list containing one or more pairs
--- with out-of-range index is undefined.
---
---
-import Data.Array
-
-main =
- let
- a1 = array (1::Int,0) []
- a2 = array (0::Int,1) (zip [0..] ['a'..'z'])
- in
- print (a1::Array Int Int) >> print a2
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr008.stderr b/testsuite/tests/ghc-regress/array/should_run/arr008.stderr
deleted file mode 100644
index f926f7288c..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr008.stderr
+++ /dev/null
@@ -1 +0,0 @@
-arr008: Ix{Int}.index: Index (2) out of range ((0,1))
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr008.stderr-hugs b/testsuite/tests/ghc-regress/array/should_run/arr008.stderr-hugs
deleted file mode 100644
index 4de58dad3b..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr008.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-arr008: Ix.index: index out of range
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr008.stdout b/testsuite/tests/ghc-regress/array/should_run/arr008.stdout
deleted file mode 100644
index 825444d25b..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr008.stdout
+++ /dev/null
@@ -1 +0,0 @@
-array (1,0) []
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr008.stdout-hugs b/testsuite/tests/ghc-regress/array/should_run/arr008.stdout-hugs
deleted file mode 100644
index bbad9774f5..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr008.stdout-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-array (1,0) []
-array \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr009.hs b/testsuite/tests/ghc-regress/array/should_run/arr009.hs
deleted file mode 100644
index 290147d0a0..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr009.hs
+++ /dev/null
@@ -1,17 +0,0 @@
--- !!! Array - derived ops
---
--- testing the well-behavedness of
--- derived ops for empty and non-empty arrays
---
-import Data.Array
-
-main =
- let
- a1 = array (1,0) ([]::[(Int,Int)])
- a2 = array (1,26) (zip [1..] ['a'..'z'])
-
- dump a = (bounds a, indices a, elems a, assocs a)
- in
- print (dump a1) >>
- print (dump a2)
-
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr009.stdout b/testsuite/tests/ghc-regress/array/should_run/arr009.stdout
deleted file mode 100644
index 5816fd7906..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr009.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-((1,0),[],[],[])
-((1,26),[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26],"abcdefghijklmnopqrstuvwxyz",[(1,'a'),(2,'b'),(3,'c'),(4,'d'),(5,'e'),(6,'f'),(7,'g'),(8,'h'),(9,'i'),(10,'j'),(11,'k'),(12,'l'),(13,'m'),(14,'n'),(15,'o'),(16,'p'),(17,'q'),(18,'r'),(19,'s'),(20,'t'),(21,'u'),(22,'v'),(23,'w'),(24,'x'),(25,'y'),(26,'z')])
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr010.hs b/testsuite/tests/ghc-regress/array/should_run/arr010.hs
deleted file mode 100644
index d5b7f38c1c..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr010.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- !!! Array - accumulated arrays
---
---
-module Main(main) where
-
-import Data.Array
-import Data.Ix
-
-hist :: (Ix a, Num b) => (a,a) -> [a] -> Array a b
-hist bnds is = accumArray (+) 0 bnds [(i,1) | i <- is , inRange bnds i]
-
-main =
- let
- a1 = hist (0,10) (concat $ take 2 $ repeat [1..20])
- in
- print a1
-
-
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr010.stdout b/testsuite/tests/ghc-regress/array/should_run/arr010.stdout
deleted file mode 100644
index cc8297ea19..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr010.stdout
+++ /dev/null
@@ -1 +0,0 @@
-array (0,10) [(0,0),(1,2),(2,2),(3,2),(4,2),(5,2),(6,2),(7,2),(8,2),(9,2),(10,2)]
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr011.hs b/testsuite/tests/ghc-regress/array/should_run/arr011.hs
deleted file mode 100644
index 1516b0e866..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr011.hs
+++ /dev/null
@@ -1,20 +0,0 @@
--- !!! Array - array difference operator
---
---
-module Main(main) where
-
-import Data.Array
-import Data.Ix
-
-hist :: (Ix a, Num b) => (a,a) -> [a] -> Array a b
-hist bnds is = accumArray (+) 0 bnds [(i,1) | i <- is , inRange bnds i]
-
-main =
- let
- a1 = hist (0,10) (concat $ take 2 $ repeat [1..20])
- in
- print a1 >>
- print (a1 // [ (i,0) | i<-[0..10], odd i])
-
-
-
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr011.stdout b/testsuite/tests/ghc-regress/array/should_run/arr011.stdout
deleted file mode 100644
index 9491d9c780..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr011.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-array (0,10) [(0,0),(1,2),(2,2),(3,2),(4,2),(5,2),(6,2),(7,2),(8,2),(9,2),(10,2)]
-array (0,10) [(0,0),(1,0),(2,2),(3,0),(4,2),(5,0),(6,2),(7,0),(8,2),(9,0),(10,2)]
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr012.hs b/testsuite/tests/ghc-regress/array/should_run/arr012.hs
deleted file mode 100644
index 231d625812..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr012.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- !!! Array map operations
---
---
-module Main(main) where
-
-import Data.Array
-import Data.Char
-
-main =
- let
- a1 = array (0,10) (zip [0..10] ['a'..'z'])
- in
- print a1 >>
- print (fmap (toUpper) a1) >>
- print (ixmap (3,8) (+1) a1)
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr012.stdout b/testsuite/tests/ghc-regress/array/should_run/arr012.stdout
deleted file mode 100644
index b8c8fda13a..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr012.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-array (0,10) [(0,'a'),(1,'b'),(2,'c'),(3,'d'),(4,'e'),(5,'f'),(6,'g'),(7,'h'),(8,'i'),(9,'j'),(10,'k')]
-array (0,10) [(0,'A'),(1,'B'),(2,'C'),(3,'D'),(4,'E'),(5,'F'),(6,'G'),(7,'H'),(8,'I'),(9,'J'),(10,'K')]
-array (3,8) [(3,'e'),(4,'f'),(5,'g'),(6,'h'),(7,'i'),(8,'j')]
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr013.hs b/testsuite/tests/ghc-regress/array/should_run/arr013.hs
deleted file mode 100644
index f9e63aa5ba..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr013.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-import Data.Ratio -- 1.3
-import Data.Array -- 1.3
-infix 1 =:
-(=:) a b = (a,b)
-
-main = putStr (shows sub_b "\n")
- where
- sub_b :: Array Int Double
- sub_b = ixmap (102, 113) id b
-
- b :: Array Int Double
- b = fmap ( \ r -> fromRational r / pi )
- (ixmap (101,200) (\ i -> toInteger i - 100) a)
-
- a :: Array Integer (Ratio Integer)
- a = array (1,100) ((1 =: 1) : [i =: fromInteger i * a!(i-1)
- | i <- [2..100]])
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr013.stdout b/testsuite/tests/ghc-regress/array/should_run/arr013.stdout
deleted file mode 100644
index 4d9bf4f505..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr013.stdout
+++ /dev/null
@@ -1 +0,0 @@
-array (102,113) [(102,0.6366197723675814),(103,1.909859317102744),(104,7.639437268410976),(105,38.197186342054884),(106,229.1831180523293),(107,1604.281826366305),(108,12834.25461093044),(109,115508.29149837396),(110,1155082.9149837396),(111,1.2705912064821135e7),(112,1.5247094477785364e8),(113,1.9821222821120973e9)]
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr014.hs b/testsuite/tests/ghc-regress/array/should_run/arr014.hs
deleted file mode 100644
index 59541c09ff..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr014.hs
+++ /dev/null
@@ -1,26 +0,0 @@
--- !!! multi-dimensional arrays
-
-module Main ( main ) where
-import Control.Monad.ST
-import Data.Array.ST
-
-type TwoD s = STArray s Int (STArray s Int Int)
-
-setup :: ST s (TwoD s)
-setup = let isz = 10
- imax = isz - 1
- osz = 2
- omax = osz - 1 in
- do
- -- gives : undefined reference to `IOBase_error_closure'
--- x <- newArray (0, omax) (error "uninitialised")
- dmy <- newArray (0, imax) 0
- x <- newArray (0, omax) dmy
- as <- (sequence . replicate osz) (newArray (0, imax) 6)
- mapM_ (\(i,v) -> writeArray x i v) (zip [0..omax] as)
- return x
-
-main :: IO ()
-main = do
- a <- stToIO setup
- return ()
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr014.stdout b/testsuite/tests/ghc-regress/array/should_run/arr014.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr014.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr015.hs b/testsuite/tests/ghc-regress/array/should_run/arr015.hs
deleted file mode 100644
index 4a6e8c431a..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr015.hs
+++ /dev/null
@@ -1,50 +0,0 @@
--- !!! Array test
--- This one fails in Hugs (Feb 2001)
-
-module Main where
-
-import Data.Array
-
--- All in main is only to show the strange behaviour.
---
--- arrS is the array that foo (NB (1.0,1)) shows in Hugs.
--- But (foo (NB (1.0,1)))==arrS is False.
-
--- If I write NB (f,p) -> hCMt [(p,listArray ((1,1),(1,1)) [f])] instead of line 16
--- the bug disappears. That is also the reason why I have to keep the data declaration RD.
--- If I put the type signature of line 18 in scope the bug also disappears.
--- If I write hCMt po_arL = (accumArray (\a _-> a) ZM ((1,1),(1,2)) []) //
--- (map (\(po,ar) -> ((1,po),M ar)) po_arL)
--- instead of line 19 and 20 it also vanishes.
-
-data CM a = ZM | M (Array (Int,Int) a) deriving (Show,Eq)
-
-data RD = NB !(Double,Int)
-
-main = do
- let arr = foo (NB (1.0,1))
- -- arr = { (1,1) -> M { (1,1) -> 1.0 }, (1,2) -> ZM }
-
- -- All these should return True
- putStr ("arr==arrS "++show (arr==arrS)++"\n")
- putStr ("arrS==arr "++show (arrS==arr)++"\n")
- putStr ("bnds arr arrS "++show ((bounds arr)==(bounds arrS))++"\n")
- putStr ("bnds +id arr arrS "++show (((bounds.id) arr)==((bounds) arrS))++"\n")
- putStr ("id +bnds arr arrS "++show (((id.bounds) arr)==((bounds) arrS))++"\n")
-
-
-foo :: RD -> Array (Int,Int) (CM Double)
-foo rd = case rd of
- NB (f,p) -> h where h = hCMt [(p,listArray ((1,1),(1,1)) [f])]
- -- h = { (1,p) -> M { (1,1) -> f }, other -> ZM }
- where
- --h0CMt :: Array (Int, Int) (CM Double)
- -- h0CMt = { (1,1) -> ZM, (1,2) -> ZM }
- h0CMt = accumArray (\a _-> a) ZM ((1,1),(1,2)) []
-
- hCMt prs = h0CMt // (map (\(po,ar) -> ((1,po),M ar)) prs)
- -- [ (1,p), M { (1,1) -> f } ]
-
-
-arrS :: Array (Int,Int) (CM Double)
-arrS = listArray ((1,1),(1,2)) [M (listArray ((1,1),(1,1)) [1.0]),ZM]
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr015.stdout b/testsuite/tests/ghc-regress/array/should_run/arr015.stdout
deleted file mode 100644
index be8c55085c..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr015.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-arr==arrS True
-arrS==arr True
-bnds arr arrS True
-bnds +id arr arrS True
-id +bnds arr arrS True
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr016.hs b/testsuite/tests/ghc-regress/array/should_run/arr016.hs
deleted file mode 100644
index 055e6602be..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr016.hs
+++ /dev/null
@@ -1,511 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables, DatatypeContexts #-}
-
-module Main where
-
-{-
- - This is a test framework for Arrays, using QuickCheck
- -
- -}
-
-import qualified Data.Array as Array
-import Data.List
-import Control.Monad ( liftM2, liftM3, liftM4 )
-import System.Random
-
-
-import Data.Ix
-import Data.List( (\\) )
-
-infixl 9 !, //
-infixr 0 ==>
-infix 1 `classify`
-
-prop_array =
- forAll genBounds $ \ (b :: (Int,Int)) ->
- forAll (genIVPs b 10) $ \ (vs :: [(Int,Int)]) ->
- Array.array b vs
- `same_arr`
- array b vs
-prop_listArray =
- forAll genBounds $ \ (b :: (Int,Int)) ->
- forAll (vector (length [fst b..snd b]))
- $ \ (vs :: [Bool]) ->
- Array.listArray b vs == Array.array b (zipWith (\ a b -> (a,b))
- (Array.range b) vs)
-
-prop_indices =
- forAll genBounds $ \ (b :: (Int,Int)) ->
- forAll (genIVPs b 10) $ \ (vs :: [(Int,Int)]) ->
- let arr = Array.array b vs
- in Array.indices arr == ((Array.range . Array.bounds) arr)
-
-prop_elems =
- forAll genBounds $ \ (b :: (Int,Int)) ->
- forAll (genIVPs b 10) $ \ (vs :: [(Int,Int)]) ->
- let arr = Array.array b vs
- in Array.elems arr == [arr Array.! i | i <- Array.indices arr]
-
-prop_assocs =
- forAll genBounds $ \ (b :: (Int,Int)) ->
- forAll (genIVPs b 10) $ \ (vs :: [(Int,Int)]) ->
- let arr = Array.array b vs
- in Array.assocs arr == [(i, arr Array.! i) | i <- Array.indices arr]
-
-prop_slashslash =
- forAll genBounds $ \ (b :: (Int,Int)) ->
- forAll (genIVPs b 10) $ \ (vs :: [(Int,Int)]) ->
- let arr = Array.array b vs
- us = []
- in arr Array.// us == Array.array (Array.bounds arr)
- ([(i,arr Array.! i)
- | i <- Array.indices arr \\ [i | (i,_) <- us]]
- ++ us)
-prop_accum =
- forAll genBounds $ \ (b :: (Int,Int)) ->
- forAll (genIVPs b 10) $ \ (vs :: [(Int,Int)]) ->
-
- forAll (genIVPs b 10) $ \ (us :: [(Int,Int)]) ->
- forAll (choose (0,length us))
- $ \ n ->
- let us' = take n us in
- forAll arbitrary $ \ (fn :: Int -> Int -> Int) ->
- let arr = Array.array b vs
- in Array.accum fn arr us'
- == foldl (\a (i,v) -> a Array.// [(i,fn (a Array.! i) v)]) arr us'
-
-prop_accumArray =
- forAll arbitrary $ \ (f :: Int -> Int -> Int) ->
- forAll arbitrary $ \ (z :: Int) ->
- forAll genBounds $ \ (b :: (Int,Int)) ->
- forAll (genIVPs b 10) $ \ (vs :: [(Int,Int)]) ->
- Array.accumArray f z b vs == Array.accum f
- (Array.array b [(i,z) | i <- Array.range b]) vs
-
-
-same_arr :: (Eq b) => Array.Array Int b -> Array Int b -> Bool
-same_arr a1 a2 = a == c && b == d
- && all (\ n -> (a1 Array.! n) == (a2 ! n)) [a..b]
- where (a,b) = Array.bounds a1 :: (Int,Int)
- (c,d) = bounds a2 :: (Int,Int)
-
-genBounds :: Gen (Int,Int)
-genBounds = do m <- choose (0,20)
- n <- choose (minBound,maxBound-m)
- return (n,n+m-1)
-
-genIVP :: Arbitrary a => (Int,Int) -> Gen (Int,a)
-genIVP b = do { i <- choose b
- ; v <- arbitrary
- ; return (i,v)
- }
-
-genIVPs :: Arbitrary a => (Int,Int) -> Int -> Gen [(Int,a)]
-genIVPs b@(low,high) s
- = do { let is = [low..high]
- ; vs <- vector (length is)
- ; shuffle s (zip is vs)
- }
-
-prop_id = forAll genBounds $ \ (b :: (Int,Int)) ->
- forAll (genIVPs b 10) $ \ (ivps :: [(Int,Int)]) ->
- label (show (ivps :: [(Int,Int)])) True
-
--- rift takes a list, split it (using an Int argument),
--- and then rifts together the split lists into one.
--- Think: rifting a pack of cards.
-rift :: Int -> [a] -> [a]
-rift n xs = comb (drop n xs) (take n xs)
- where
- comb (a:as) (b:bs) = a : b : comb as bs
- comb (a:as) [] = a : as
- comb [] (b:bs) = b : bs
- comb [] [] = []
-
-
--- suffle makes n random rifts. Typically after
--- log n rifts, the list is in a pretty random order.
--- (where n is the number of elements in the list)
-
-shuffle :: Int -> [a] -> Gen [a]
-shuffle 0 m = return m
-shuffle n m = do { r <- choose (1,length m)
- ; shuffle (n-1) (rift r m)
- }
-prop_shuffle =
- forAll (shuffle 10 [1..10::Int]) $ \ lst ->
- label (show lst) True
-
-------------------------------------------------------------------------------
-
-main = do test prop_array
- test prop_listArray
- test prop_indices
- test prop_elems
- test prop_assocs
- test prop_slashslash
- test prop_accum
- test prop_accumArray
-
-
-instance Show (a -> b) where { show _ = "<FN>" }
-
-------------------------------------------------------------------------------
-
-data (Ix a) => Array a b = MkArray (a,a) (a -> b) deriving ()
-
-array :: (Ix a) => (a,a) -> [(a,b)] -> Array a b
-array b ivs =
- if and [inRange b i | (i,_) <- ivs]
- then MkArray b
- (\j -> case [v | (i,v) <- ivs, i == j] of
- [v] -> v
- [] -> error "Array.!: \
- \undefined array element"
- _ -> error "Array.!: \
- \multiply defined array element")
- else error "Array.array: out-of-range array association"
-
-listArray :: (Ix a) => (a,a) -> [b] -> Array a b
-listArray b vs = array b (zipWith (\ a b -> (a,b)) (range b) vs)
-
-(!) :: (Ix a) => Array a b -> a -> b
-(!) (MkArray _ f) = f
-
-bounds :: (Ix a) => Array a b -> (a,a)
-bounds (MkArray b _) = b
-
-indices :: (Ix a) => Array a b -> [a]
-indices = range . bounds
-
-elems :: (Ix a) => Array a b -> [b]
-elems a = [a!i | i <- indices a]
-
-assocs :: (Ix a) => Array a b -> [(a,b)]
-assocs a = [(i, a!i) | i <- indices a]
-
-(//) :: (Ix a) => Array a b -> [(a,b)] -> Array a b
-a // us = array (bounds a)
- ([(i,a!i) | i <- indices a \\ [i | (i,_) <- us]]
- ++ us)
-
-accum :: (Ix a) => (b -> c -> b) -> Array a b -> [(a,c)]
- -> Array a b
-accum f = foldl (\a (i,v) -> a // [(i,f (a!i) v)])
-
-accumArray :: (Ix a) => (b -> c -> b) -> b -> (a,a) -> [(a,c)]
- -> Array a b
-accumArray f z b = accum f (array b [(i,z) | i <- range b])
-
-ixmap :: (Ix a, Ix b) => (a,a) -> (a -> b) -> Array b c
- -> Array a c
-ixmap b f a = array b [(i, a ! f i) | i <- range b]
-
-instance (Ix a) => Functor (Array a) where
- fmap fn (MkArray b f) = MkArray b (fn . f)
-
-instance (Ix a, Eq b) => Eq (Array a b) where
- a == a' = assocs a == assocs a'
-
-instance (Ix a, Ord b) => Ord (Array a b) where
- a <= a' = assocs a <= assocs a'
-
-instance (Ix a, Show a, Show b) => Show (Array a b) where
- showsPrec p a = showParen (p > 9) (
- showString "array " .
- shows (bounds a) . showChar ' ' .
- shows (assocs a) )
-
-instance (Ix a, Read a, Read b) => Read (Array a b) where
- readsPrec p = readParen (p > 9)
- (\r -> [(array b as, u) | ("array",s) <- lex r,
- (b,t) <- reads s,
- (as,u) <- reads t ])
---------------------------------------------------------------------
-
--- QuickCheck v.0.2
--- DRAFT implementation; last update 000104.
--- Koen Claessen, John Hughes.
--- This file represents work in progress, and might change at a later date.
-
-
---------------------------------------------------------------------
--- Generator
-
-newtype Gen a
- = Gen (Int -> StdGen -> a)
-
-sized :: (Int -> Gen a) -> Gen a
-sized fgen = Gen (\n r -> let Gen m = fgen n in m n r)
-
-resize :: Int -> Gen a -> Gen a
-resize n (Gen m) = Gen (\_ r -> m n r)
-
-rand :: Gen StdGen
-rand = Gen (\n r -> r)
-
-promote :: (a -> Gen b) -> Gen (a -> b)
-promote f = Gen (\n r -> \a -> let Gen m = f a in m n r)
-
-variant :: Int -> Gen a -> Gen a
-variant v (Gen m) = Gen (\n r -> m n (rands r !! (v+1)))
- where
- rands r0 = r1 : rands r2 where (r1, r2) = split r0
-
-generate :: Int -> StdGen -> Gen a -> a
-generate n rnd (Gen m) = m size rnd'
- where
- (size, rnd') = randomR (0, n) rnd
-
-instance Functor Gen where
- fmap f m = m >>= return . f
-
-instance Monad Gen where
- return a = Gen (\n r -> a)
- Gen m >>= k =
- Gen (\n r0 -> let (r1,r2) = split r0
- Gen m' = k (m n r1)
- in m' n r2)
-
--- derived
-
---choose :: Random a => (a, a) -> Gen a
-choose bounds = ((fst . randomR bounds) `fmap` rand)
-
-elements :: [a] -> Gen a
-elements xs = (xs !!) `fmap` choose (0, length xs - 1)
-
-vector :: Arbitrary a => Int -> Gen [a]
-vector n = sequence [ arbitrary | i <- [1..n] ]
-
-oneof :: [Gen a] -> Gen a
-oneof gens = elements gens >>= id
-
-frequency :: [(Int, Gen a)] -> Gen a
-frequency xs = choose (1, tot) >>= (`pick` xs)
- where
- tot = sum (map fst xs)
-
- pick n ((k,x):xs)
- | n <= k = x
- | otherwise = pick (n-k) xs
-
--- general monadic
-
-two :: Monad m => m a -> m (a, a)
-two m = liftM2 (,) m m
-
-three :: Monad m => m a -> m (a, a, a)
-three m = liftM3 (,,) m m m
-
-four :: Monad m => m a -> m (a, a, a, a)
-four m = liftM4 (,,,) m m m m
-
---------------------------------------------------------------------
--- Arbitrary
-
-class Arbitrary a where
- arbitrary :: Gen a
- coarbitrary :: a -> Gen b -> Gen b
-
-instance Arbitrary () where
- arbitrary = return ()
- coarbitrary _ = variant 0
-
-instance Arbitrary Bool where
- arbitrary = elements [True, False]
- coarbitrary b = if b then variant 0 else variant 1
-
-instance Arbitrary Int where
- arbitrary = sized $ \n -> choose (-n,n)
- coarbitrary n = variant (if n >= 0 then 2*n else 2*(-n) + 1)
-
-instance Arbitrary Integer where
- arbitrary = sized $ \n -> choose (-fromIntegral n,fromIntegral n)
- coarbitrary n = variant (fromInteger (if n >= 0 then 2*n else 2*(-n) + 1))
-
-instance Arbitrary Float where
- arbitrary = liftM3 fraction arbitrary arbitrary arbitrary
- coarbitrary x = coarbitrary (decodeFloat x)
-
-instance Arbitrary Double where
- arbitrary = liftM3 fraction arbitrary arbitrary arbitrary
- coarbitrary x = coarbitrary (decodeFloat x)
-
-fraction a b c = fromInteger a + (fromInteger b / (abs (fromInteger c) + 1))
-
-instance (Arbitrary a, Arbitrary b) => Arbitrary (a, b) where
- arbitrary = liftM2 (,) arbitrary arbitrary
- coarbitrary (a, b) = coarbitrary a . coarbitrary b
-
-instance (Arbitrary a, Arbitrary b, Arbitrary c) => Arbitrary (a, b, c) where
- arbitrary = liftM3 (,,) arbitrary arbitrary arbitrary
- coarbitrary (a, b, c) = coarbitrary a . coarbitrary b . coarbitrary c
-
-instance (Arbitrary a, Arbitrary b, Arbitrary c, Arbitrary d)
- => Arbitrary (a, b, c, d)
- where
- arbitrary = liftM4 (,,,) arbitrary arbitrary arbitrary arbitrary
- coarbitrary (a, b, c, d) =
- coarbitrary a . coarbitrary b . coarbitrary c . coarbitrary d
-
-instance Arbitrary a => Arbitrary [a] where
- arbitrary = sized (\n -> choose (0,n) >>= vector)
- coarbitrary [] = variant 0
- coarbitrary (a:as) = coarbitrary a . variant 1 . coarbitrary as
-
-instance (Arbitrary a, Arbitrary b) => Arbitrary (a -> b) where
- arbitrary = promote (`coarbitrary` arbitrary)
- coarbitrary f gen = arbitrary >>= ((`coarbitrary` gen) . f)
-
---------------------------------------------------------------------
--- Testable
-
-data Result
- = Result { ok :: Maybe Bool, stamp :: [String], arguments :: [String] }
-
-nothing :: Result
-nothing = Result{ ok = Nothing, stamp = [], arguments = [] }
-
-newtype Property
- = Prop (Gen Result)
-
-result :: Result -> Property
-result res = Prop (return res)
-
-evaluate :: Testable a => a -> Gen Result
-evaluate a = gen where Prop gen = property a
-
-class Testable a where
- property :: a -> Property
-
-instance Testable () where
- property _ = result nothing
-
-instance Testable Bool where
- property b = result (nothing{ ok = Just b })
-
-instance Testable Result where
- property res = result res
-
-instance Testable Property where
- property prop = prop
-
-instance (Arbitrary a, Show a, Testable b) => Testable (a -> b) where
- property f = forAll arbitrary f
-
-forAll :: (Show a, Testable b) => Gen a -> (a -> b) -> Property
-forAll gen body = Prop $
- do a <- gen
- res <- evaluate (body a)
- return (argument a res)
- where
- argument a res = res{ arguments = show a : arguments res }
-
-(==>) :: Testable a => Bool -> a -> Property
-True ==> a = property a
-False ==> a = property ()
-
-label :: Testable a => String -> a -> Property
-label s a = Prop (add `fmap` evaluate a)
- where
- add res = res{ stamp = s : stamp res }
-
-classify :: Testable a => Bool -> String -> a -> Property
-classify True name = label name
-classify False _ = property
-
-trivial :: Testable a => Bool -> a -> Property
-trivial = (`classify` "trivial")
-
-collect :: (Show a, Testable b) => a -> b -> Property
-collect v = label (show v)
-
---------------------------------------------------------------------
--- Testing
-
-data Config = Config
- { configMaxTest :: Int
- , configMaxFail :: Int
- , configSize :: Int -> Int
- , configEvery :: Int -> [String] -> String
- }
-
-quick :: Config
-quick = Config
- { configMaxTest = 100
- , configMaxFail = 1000
- , configSize = (+ 3) . (`div` 2)
- , configEvery = \n args -> let s = show n in s ++ ","
- }
-
-verbose :: Config
-verbose = quick
- { configEvery = \n args -> show n ++ ":\n" ++ unlines args
- }
-
-test, quickCheck, verboseCheck :: Testable a => a -> IO ()
-test = check quick
-quickCheck = check quick
-verboseCheck = check verbose
-
-check :: Testable a => Config -> a -> IO ()
-check config a =
- do rnd <- newStdGen
- tests config (evaluate a) rnd 0 0 []
-
-tests :: Config -> Gen Result -> StdGen -> Int -> Int -> [[String]] -> IO ()
-tests config gen rnd0 ntest nfail stamps
- | ntest == configMaxTest config = do done "OK, passed" ntest stamps
- | nfail == configMaxFail config = do done "Arguments exhausted after" ntest stamps
- | otherwise =
- do putStr (configEvery config ntest (arguments result))
- case ok result of
- Nothing ->
- tests config gen rnd1 ntest (nfail+1) stamps
- Just True ->
- tests config gen rnd1 (ntest+1) nfail (stamp result:stamps)
- Just False ->
- putStr ( "Falsifiable, after "
- ++ show ntest
- ++ " tests:\n"
- ++ unlines (arguments result)
- )
- where
- result = generate (configSize config ntest) rnd2 gen
- (rnd1,rnd2) = split rnd0
-
-done :: String -> Int -> [[String]] -> IO ()
-done mesg ntest stamps =
- do putStr ( mesg ++ " " ++ show ntest ++ " tests" ++ table )
- where
- table = display
- . map entry
- . reverse
- . sort
- . map pairLength
- . group
- . sort
- . filter (not . null)
- $ stamps
-
- display [] = ".\n"
- display [x] = " (" ++ x ++ ").\n"
- display xs = ".\n" ++ unlines (map (++ ".") xs)
-
- pairLength xss@(xs:_) = (length xss, xs)
- entry (n, xs) = percentage n ntest
- ++ " "
- ++ concat (intersperse ", " xs)
-
- percentage n m = show ((100 * n) `div` m) ++ "%"
-
---------------------------------------------------------------------
--- the end.
-
-{-
-instance Observable StdGen where { observer = observeBase }
-
-instance Observable a => Observable (Gen a) where
- observer (Gen a) = send "Gen" (return (Gen) << a)
-
--} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr016.stdout b/testsuite/tests/ghc-regress/array/should_run/arr016.stdout
deleted file mode 100644
index 1e7413dfb1..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr016.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,OK, passed 100 tests.
-0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,OK, passed 100 tests.
-0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,OK, passed 100 tests.
-0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,OK, passed 100 tests.
-0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,OK, passed 100 tests.
-0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,OK, passed 100 tests.
-0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,OK, passed 100 tests.
-0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,OK, passed 100 tests.
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr017.hs b/testsuite/tests/ghc-regress/array/should_run/arr017.hs
deleted file mode 100644
index 18314b8e28..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr017.hs
+++ /dev/null
@@ -1,30 +0,0 @@
--- Caused a crash in GHC 6.4 when optimising, due to inlining of runST too early.
-
--- Spectral Norm benchmark
-
-import Data.Array
-import System.Environment (getArgs)
-
-main = do
- --[arg] <- getArgs
- --let n = (read arg) - 1
- let n = 80
- let init = listArray (0,n) (repeat 1.0)
- let (v:u:rest) = drop 19 $ iterate (eval_AtA_times_u n) init
- let vBv = sum [(u!i)*(v!i) |i<-[0..n]]
- let vv = sum [(v!i)*(v!i) |i<-[0..n]]
- print $ sqrt (vBv/vv)
-
-eval_AtA_times_u n u = eval_At_times_u n v
- where v = eval_A_times_u n u
-
-eval_A x y = 1.0/((i+j)*(i+j+1)/2+i+1)
- where i = fromIntegral x
- j = fromIntegral y
-
-eval_A_times_u n u = accumArray (+) 0 (0,n)
- [(i,(eval_A i j) * u!j)|i<-[0..n], j<-[0..n]]
-
-eval_At_times_u n u = accumArray (+) 0 (0,n)
- [(i,(eval_A j i) * u!j)|i<-[0..n], j<-[0..n]]
-
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr017.stdout b/testsuite/tests/ghc-regress/array/should_run/arr017.stdout
deleted file mode 100644
index 12e7cb0720..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr017.stdout
+++ /dev/null
@@ -1 +0,0 @@
-1.2742165080678525
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr018.hs b/testsuite/tests/ghc-regress/array/should_run/arr018.hs
deleted file mode 100644
index 27896aae39..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr018.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- test for #1131
-import Control.Monad.ST
-import Data.Array.ST
-import Data.Array
-import System.Mem
-
-tickle :: Int
-tickle = runST (do {
- x <- newArray_ (0,100) ;
- (readArray :: STUArray s Int Int -> Int -> ST s Int) x 3
- })
-
-main :: IO ()
-main = do print $ length (replicate 100000 'a')
- performGC
- print tickle
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr018.stdout b/testsuite/tests/ghc-regress/array/should_run/arr018.stdout
deleted file mode 100644
index 08ca4fc84f..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr018.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-100000
-0
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr019.hs b/testsuite/tests/ghc-regress/array/should_run/arr019.hs
deleted file mode 100644
index 9992dd2315..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr019.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-
--- Test for trac #2158
-
-import Data.Array
-
-data Pos = Pos Integer Integer
- deriving (Show, Eq, Ord, Ix)
-
-myBounds :: (Pos, Pos)
-myBounds = (Pos 0 0, Pos 2 3)
-
-main :: IO ()
-main = do print $ range myBounds
- print $ index myBounds (Pos 0 0)
- print $ index myBounds (Pos 0 1)
- print $ index myBounds (Pos 0 2)
- print $ index myBounds (Pos 0 3)
- print $ index myBounds (Pos 1 0)
- print $ index myBounds (Pos 1 1)
- print $ index myBounds (Pos 1 2)
- print $ index myBounds (Pos 1 3)
- print $ index myBounds (Pos 2 0)
- print $ index myBounds (Pos 2 1)
- print $ index myBounds (Pos 2 2)
- print $ index myBounds (Pos 2 3)
- print $ listArray myBounds [(123 :: Integer) ..]
-
diff --git a/testsuite/tests/ghc-regress/array/should_run/arr019.stdout b/testsuite/tests/ghc-regress/array/should_run/arr019.stdout
deleted file mode 100644
index f99db4ec8d..0000000000
--- a/testsuite/tests/ghc-regress/array/should_run/arr019.stdout
+++ /dev/null
@@ -1,14 +0,0 @@
-[Pos 0 0,Pos 0 1,Pos 0 2,Pos 0 3,Pos 1 0,Pos 1 1,Pos 1 2,Pos 1 3,Pos 2 0,Pos 2 1,Pos 2 2,Pos 2 3]
-0
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-array (Pos 0 0,Pos 2 3) [(Pos 0 0,123),(Pos 0 1,124),(Pos 0 2,125),(Pos 0 3,126),(Pos 1 0,127),(Pos 1 1,128),(Pos 1 2,129),(Pos 1 3,130),(Pos 2 0,131),(Pos 2 1,132),(Pos 2 2,133),(Pos 2 3,134)]
diff --git a/testsuite/tests/ghc-regress/arrows/Makefile b/testsuite/tests/ghc-regress/arrows/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/arrows/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/Makefile b/testsuite/tests/ghc-regress/arrows/should_compile/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/T3964.hs b/testsuite/tests/ghc-regress/arrows/should_compile/T3964.hs
deleted file mode 100644
index 713c7e2303..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/T3964.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE Arrows, ViewPatterns #-}
-
-module T3964 where
-
-import Control.Arrow
-
-testF :: Eq a => a -> (Maybe (Maybe a)) -> Maybe a
-testF v = proc x -> case x of
- Just (Just ((==v) -> True)) -> returnA -< Just v
- _ -> returnA -< Nothing
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/T5283.hs b/testsuite/tests/ghc-regress/arrows/should_compile/T5283.hs
deleted file mode 100644
index 9216d3cd67..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/T5283.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE Arrows #-}
--- Failed in ghci
-
-module T where
-
-import Prelude
-import Control.Arrow
-
-mapAC :: Arrow arr => Integer -> arr (env, b) c -> arr (env, [b]) [c]
-mapAC n farr = go 1
- where
- go i | i == succ n = arr (\(_env, []) -> [])
- | otherwise = proc ~(env, b : bs) ->
- do c <- farr -< (env, b)
- cs <- go (succ i) -< (env, bs)
- returnA -< c : cs
-
-t :: Arrow arr => arr [a] [a]
-t = proc ys ->
- (| (mapAC 3) (\y -> returnA -< y) |) ys
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/all.T b/testsuite/tests/ghc-regress/arrows/should_compile/all.T
deleted file mode 100644
index 3351b9f4ba..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/all.T
+++ /dev/null
@@ -1,18 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-test('arrowapply1', normal, compile, [''])
-test('arrowapply2', normal, compile, [''])
-test('arrowapply3', normal, compile, [''])
-test('arrowapply4', normal, compile, [''])
-test('arrowapply5', normal, compile, [''])
-test('arrowcase1', normal, compile, [''])
-test('arrowdo1', normal, compile, [''])
-test('arrowdo2', normal, compile, [''])
-# test('arrowdo3', normal, compile, ['']) # takes too long
-test('arrowform1', normal, compile, [''])
-test('arrowif1', normal, compile, [''])
-test('arrowlet1', normal, compile, [''])
-test('arrowrec1', normal, compile, [''])
-test('arrowpat', normal, compile, [''])
-test('T3964', normal, compile, [''])
-test('T5283', normal, compile, [''])
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply1.hs b/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply1.hs
deleted file mode 100644
index abad47de26..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply1.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
-module ShouldCompile where
-
-import Control.Arrow
-
-f :: Arrow a => a (Int,Int,Int) Int
-f = proc (x,y,z) -> returnA -< x+y
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply2.hs b/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply2.hs
deleted file mode 100644
index 16cf2f3039..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply2.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
-module ShouldCompile where
-
-import Control.Arrow
-
-f :: ArrowApply a => a (a Int Int,Int,Int) Int
-f = proc (x,y,z) -> x -<< 2+y
-
-g :: ArrowApply a => Int -> a (a Int Int,Int) Int
-g y = proc (x,z) -> x -<< 2+y
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply3.hs b/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply3.hs
deleted file mode 100644
index 3a9b49da92..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply3.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
-module ShouldCompile where
-
-import Control.Arrow
-
-g :: Arrow a => a Int c -> a Int c
-g f = proc b -> f -< b+2
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply4.hs b/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply4.hs
deleted file mode 100644
index af0dac4cee..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply4.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
-module ShouldCompile where
-
--- example from Sebastian Boldt <Sebastian.Boldt@arcor.de>:
--- (f -< a) b === f -< (a,b)
-
-import Control.Arrow
-
-mshowA :: (Arrow a, Show b) => a (b, String) String
-mshowA = proc (x,s) -> returnA -< s ++ show x ++ s
-
-f :: Arrow a => a Int String
-f = proc x -> (mshowA -< x) "***"
-
-g :: ArrowApply a => a Int String
-g = proc x -> (mshowA -<< x) "***"
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply5.hs b/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply5.hs
deleted file mode 100644
index 46d1dc587f..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/arrowapply5.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
-module ShouldCompile where
-
--- variables bound inside the left argument of -< should be in scope
-
-import Control.Arrow
-
-f :: (Num b, Arrow a) => a b b
-f = proc x -> arr (\y -> y-1) -< x
-
-g :: (Num b, Arrow a) => a b b
-g = proc x -> (proc y -> returnA -< y-1) -< x
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/arrowcase1.hs b/testsuite/tests/ghc-regress/arrows/should_compile/arrowcase1.hs
deleted file mode 100644
index 6d39b0be73..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/arrowcase1.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
-module ShouldCompile where
-
-import Control.Arrow
-
-h :: ArrowChoice a => Int -> a (Int,Int) Int
-h x = proc (y,z) -> case compare x y of
- LT -> returnA -< x
- EQ -> returnA -< y+z
- GT -> returnA -< z+x
-
-g :: ArrowChoice a => Int -> a (Int,Int) Int
-g x = proc (y,z) -> (case compare x y of
- LT -> \ a -> returnA -< x+a
- EQ -> \ b -> returnA -< y+z+b
- GT -> \ c -> returnA -< z+x
- ) 1
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/arrowdo1.hs b/testsuite/tests/ghc-regress/arrows/should_compile/arrowdo1.hs
deleted file mode 100644
index b70eedd460..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/arrowdo1.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
-module ShouldCompile where
-
-import Control.Arrow
-
-f :: Arrow a => a (Int,Int,Int) Int
-f = proc (x,y,z) -> returnA -< x+y
-
-g :: Arrow a => Int -> a Int Int
-g x = proc y -> returnA -< x*y
-
-h :: Arrow a => Int -> a (Int,Int) Int
-h x = proc (y,z) -> do
- a <- f -< (x,y,3)
- b <- g (2+x) -< y+a
- returnA -< a*b+z
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/arrowdo2.hs b/testsuite/tests/ghc-regress/arrows/should_compile/arrowdo2.hs
deleted file mode 100644
index 3562dc23b9..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/arrowdo2.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
-module ShouldCompile where
-
-import Control.Arrow
-
-f :: Arrow a => a (Int,Int) Int
-f = proc (x,y) -> do
- let z = x*y
- returnA -< y+z
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/arrowdo3.hs b/testsuite/tests/ghc-regress/arrows/should_compile/arrowdo3.hs
deleted file mode 100644
index 3b6a8c8d35..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/arrowdo3.hs
+++ /dev/null
@@ -1,222 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
--- test for out-size tuples: takes a _long_ time to compile
-
-module ShouldCompile where
-
-import Control.Arrow
-
-data T1 = C1
-data T2 = C2
-data T3 = C3
-data T4 = C4
-data T5 = C5
-data T6 = C6
-data T7 = C7
-data T8 = C8
-data T9 = C9
-data T10 = C10
-data T11 = C11
-data T12 = C12
-data T13 = C13
-data T14 = C14
-data T15 = C15
-data T16 = C16
-data T17 = C17
-data T18 = C18
-data T19 = C19
-data T20 = C20
-data T21 = C21
-data T22 = C22
-data T23 = C23
-data T24 = C24
-data T25 = C25
-data T26 = C26
-data T27 = C27
-data T28 = C28
-data T29 = C29
-data T30 = C30
-data T31 = C31
-data T32 = C32
-data T33 = C33
-data T34 = C34
-data T35 = C35
-data T36 = C36
-data T37 = C37
-data T38 = C38
-data T39 = C39
-data T40 = C40
-data T41 = C41
-data T42 = C42
-data T43 = C43
-data T44 = C44
-data T45 = C45
-data T46 = C46
-data T47 = C47
-data T48 = C48
-data T49 = C49
-data T50 = C50
-data T51 = C51
-data T52 = C52
-data T53 = C53
-data T54 = C54
-data T55 = C55
-data T56 = C56
-data T57 = C57
-data T58 = C58
-data T59 = C59
-data T60 = C60
-data T61 = C61
-data T62 = C62
-data T63 = C63
-data T64 = C64
-data T65 = C65
-data T66 = C66
-data T67 = C67
-data T68 = C68
-data T69 = C69
-data T70 = C70
-
-f :: Arrow a => a Int Int
-f = proc x0 -> do
- x1 <- returnA -< C1
- x2 <- returnA -< C2
- x3 <- returnA -< C3
- x4 <- returnA -< C4
- x5 <- returnA -< C5
- x6 <- returnA -< C6
- x7 <- returnA -< C7
- x8 <- returnA -< C8
- x9 <- returnA -< C9
- x10 <- returnA -< C10
- x11 <- returnA -< C11
- x12 <- returnA -< C12
- x13 <- returnA -< C13
- x14 <- returnA -< C14
- x15 <- returnA -< C15
- x16 <- returnA -< C16
- x17 <- returnA -< C17
- x18 <- returnA -< C18
- x19 <- returnA -< C19
- x20 <- returnA -< C20
- x21 <- returnA -< C21
- x22 <- returnA -< C22
- x23 <- returnA -< C23
- x24 <- returnA -< C24
- x25 <- returnA -< C25
- x26 <- returnA -< C26
- x27 <- returnA -< C27
- x28 <- returnA -< C28
- x29 <- returnA -< C29
- x30 <- returnA -< C30
- x31 <- returnA -< C31
- x32 <- returnA -< C32
- x33 <- returnA -< C33
- x34 <- returnA -< C34
- x35 <- returnA -< C35
- x36 <- returnA -< C36
- x37 <- returnA -< C37
- x38 <- returnA -< C38
- x39 <- returnA -< C39
- x40 <- returnA -< C40
- x41 <- returnA -< C41
- x42 <- returnA -< C42
- x43 <- returnA -< C43
- x44 <- returnA -< C44
- x45 <- returnA -< C45
- x46 <- returnA -< C46
- x47 <- returnA -< C47
- x48 <- returnA -< C48
- x49 <- returnA -< C49
- x50 <- returnA -< C50
- x51 <- returnA -< C51
- x52 <- returnA -< C52
- x53 <- returnA -< C53
- x54 <- returnA -< C54
- x55 <- returnA -< C55
- x56 <- returnA -< C56
- x57 <- returnA -< C57
- x58 <- returnA -< C58
- x59 <- returnA -< C59
- x60 <- returnA -< C60
- x61 <- returnA -< C61
- x62 <- returnA -< C62
- x63 <- returnA -< C63
- x64 <- returnA -< C64
- x65 <- returnA -< C65
- x66 <- returnA -< C66
- x67 <- returnA -< C67
- x68 <- returnA -< C68
- x69 <- returnA -< C69
- x70 <- returnA -< C70
- returnA -< x70
- returnA -< x69
- returnA -< x68
- returnA -< x67
- returnA -< x66
- returnA -< x65
- returnA -< x64
- returnA -< x63
- returnA -< x62
- returnA -< x61
- returnA -< x60
- returnA -< x59
- returnA -< x58
- returnA -< x57
- returnA -< x56
- returnA -< x55
- returnA -< x54
- returnA -< x53
- returnA -< x52
- returnA -< x51
- returnA -< x50
- returnA -< x49
- returnA -< x48
- returnA -< x47
- returnA -< x46
- returnA -< x45
- returnA -< x44
- returnA -< x43
- returnA -< x42
- returnA -< x41
- returnA -< x40
- returnA -< x39
- returnA -< x38
- returnA -< x37
- returnA -< x36
- returnA -< x35
- returnA -< x34
- returnA -< x33
- returnA -< x32
- returnA -< x31
- returnA -< x30
- returnA -< x29
- returnA -< x28
- returnA -< x27
- returnA -< x26
- returnA -< x25
- returnA -< x24
- returnA -< x23
- returnA -< x22
- returnA -< x21
- returnA -< x20
- returnA -< x19
- returnA -< x18
- returnA -< x17
- returnA -< x16
- returnA -< x15
- returnA -< x14
- returnA -< x13
- returnA -< x12
- returnA -< x11
- returnA -< x10
- returnA -< x9
- returnA -< x8
- returnA -< x7
- returnA -< x6
- returnA -< x5
- returnA -< x4
- returnA -< x3
- returnA -< x2
- returnA -< x1
- returnA -< x0
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/arrowform1.hs b/testsuite/tests/ghc-regress/arrows/should_compile/arrowform1.hs
deleted file mode 100644
index a282d71ed7..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/arrowform1.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
-module ShouldCompile where
-
-import Control.Arrow
-
-handle :: ArrowPlus a => a b c -> a (b,String) c -> a b c
-handle f h = proc b -> (f -< b) <+> (h -< (b,""))
-
-f :: ArrowPlus a => a (Int,Int) String
-f = proc (x,y) ->
- (|handle
- (returnA -< show y)
- (\s -> returnA -< s ++ show x)
- |)
-
-g :: ArrowPlus a => a (Int,Int) String
-g = proc (x,y) ->
- (|handle
- (\msg -> returnA -< msg ++ show y)
- (\s msg -> returnA -< s ++ show x)
- |) ("hello " ++ show x)
-
-h :: ArrowPlus a => a (Int,Int) Int
-h = proc (x,y) ->
- (
- (\z -> returnA -< x + z)
- <+>
- (\z -> returnA -< y + z)
- ) (x*y)
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/arrowif1.hs b/testsuite/tests/ghc-regress/arrows/should_compile/arrowif1.hs
deleted file mode 100644
index 404b1f164c..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/arrowif1.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
-module ShouldCompile where
-
-import Control.Arrow
-
-f :: ArrowChoice a => a (Int,Int,Int) Int
-f = proc (x,y,z) -> if x < y then returnA -< x+y else returnA -< x+z
-
-g :: ArrowChoice a => Int -> a (Int,Int) Int
-g x = proc (y,z) -> if x < y then returnA -< x+y else returnA -< x+z
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/arrowlet1.hs b/testsuite/tests/ghc-regress/arrows/should_compile/arrowlet1.hs
deleted file mode 100644
index b08e030d1c..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/arrowlet1.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
-module ShouldCompile where
-
-import Control.Arrow
-
-f :: Arrow a => a (Int,Int) Int
-f = proc (x,y) -> let z = x*y in returnA -< y+z
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/arrowpat.hs b/testsuite/tests/ghc-regress/arrows/should_compile/arrowpat.hs
deleted file mode 100644
index 56b1117e9a..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/arrowpat.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# OPTIONS -XArrows #-}
-
--- Test for Trac #1662
-
-module Arrow where
-
-import Control.Arrow
-
-expr' :: Arrow a => a Int Int
-expr' = error "urk"
-
-term :: Arrow a => a () Int
-term = error "urk"
-
-expr1 :: Arrow a => a () Int
-expr1 = proc () -> do
- x <- term -< ()
- expr' -< x
-
-expr2 :: Arrow a => a () Int
-expr2 = proc y -> do
- x <- term -< y
- expr' -< x
diff --git a/testsuite/tests/ghc-regress/arrows/should_compile/arrowrec1.hs b/testsuite/tests/ghc-regress/arrows/should_compile/arrowrec1.hs
deleted file mode 100644
index 57b6de783c..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_compile/arrowrec1.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
-module ShouldCompile where
-
-import Control.Arrow
-import Data.Char
-
-f :: ArrowLoop a => a Char Int
-f = proc x -> do
- a <- returnA -< ord x
- rec b <- returnA -< ord c - ord x
- c <- returnA -< chr a
- returnA -< b + ord c
diff --git a/testsuite/tests/ghc-regress/arrows/should_fail/Makefile b/testsuite/tests/ghc-regress/arrows/should_fail/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_fail/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/arrows/should_fail/T2111.hs b/testsuite/tests/ghc-regress/arrows/should_fail/T2111.hs
deleted file mode 100644
index eb242cdd6b..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_fail/T2111.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# OPTIONS_GHC -XArrows -XDoRec -XRecursiveDo#-}
--- Test Trac #2111
-
-module Foo where
-
-foo = do { rec { x <- undefined -< x }; undefined -< x }
-
-bar1 = do { rec { x <- return ('a':x); }; putStrLn (take 20 x) }
-
-bar2 = mdo { rec { x <- return ('a':x); }; putStrLn (take 20 x) }
diff --git a/testsuite/tests/ghc-regress/arrows/should_fail/T2111.stderr b/testsuite/tests/ghc-regress/arrows/should_fail/T2111.stderr
deleted file mode 100644
index 9c6c17fb53..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_fail/T2111.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-T2111.hs:1:16:
- Warning: -XRecursiveDo is deprecated: use -XDoRec or pragma {-# LANGUAGE DoRec #-} instead
-
-T2111.hs:6:23:
- The arrow command
- undefined -< x
- was found where an expression was expected
- In a stmt of a 'do' block: x <- undefined -< x
- In a stmt of a 'do' block: rec {x <- undefined -< x}
- In the expression:
- do { rec {x <- undefined -< x};
- undefined -< x }
diff --git a/testsuite/tests/ghc-regress/arrows/should_fail/T2111.stderr-ghc-7.0 b/testsuite/tests/ghc-regress/arrows/should_fail/T2111.stderr-ghc-7.0
deleted file mode 100644
index 79eb1daaee..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_fail/T2111.stderr-ghc-7.0
+++ /dev/null
@@ -1,10 +0,0 @@
-
-T2111.hs:6:23:
- The arrow command
- undefined -< x
- was found where an expression was expected
- In a stmt of a 'do' expression: x <- undefined -< x
- In a stmt of a 'do' expression: rec {x <- undefined -< x}
- In the expression:
- do { rec {x <- undefined -< x};
- undefined -< x }
diff --git a/testsuite/tests/ghc-regress/arrows/should_fail/all.T b/testsuite/tests/ghc-regress/arrows/should_fail/all.T
deleted file mode 100644
index 4da90faba3..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_fail/all.T
+++ /dev/null
@@ -1,7 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-test('arrowfail001', normal, compile_fail, [''])
-test('arrowfail002', normal, compile_fail, [''])
-test('arrowfail003', normal, compile_fail, [''])
-test('arrowfail004', normal, compile_fail, [''])
-test('T2111', normal, compile_fail, [''])
diff --git a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail001.hs b/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail001.hs
deleted file mode 100644
index e106c214aa..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail001.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-
-{-# LANGUAGE Arrows, ExistentialQuantification #-}
-
--- Crashed GHC 6.4 with a lint error
--- because of the existential
-
--- Esa Pulkkinen <esa.pulkkinen@kotiposti.net>
--- Thomas Jäger <ThJaeger@gmail.com>
-
-module ShouldFail where
-
-class Foo a where foo :: a -> ()
-data Bar = forall a. Foo a => Bar a
-
-get :: Bar -> ()
-get = proc x -> case x of Bar a -> foo -< a
-
--- This should be rejected because the left side of -< (here foo)
--- should be treated as being outside the scope of the proc: it can't
--- refer to the local variables x and a (this is enforced), nor the
--- existentially quantified type variable introduced by unwrapping x.
diff --git a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail001.stderr b/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail001.stderr
deleted file mode 100644
index 91ec965715..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail001.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-arrowfail001.hs:16:36:
- Ambiguous type variable `a' in the constraint:
- (Foo a) arising from a use of `foo'
- Probable fix: add a type signature that fixes these type variable(s)
- In the expression: foo
- In the expression: proc x -> case x of { Bar a -> foo -< a }
- In an equation for `get':
- get = proc x -> case x of { Bar a -> foo -< a }
diff --git a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail002.hs b/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail002.hs
deleted file mode 100644
index 96cc930565..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail002.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
-module ShouldFail where
-
-g :: Int -> Int
-g = proc x -> f x -< x+1
- where f = (*)
diff --git a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail002.stderr b/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail002.stderr
deleted file mode 100644
index c653acc339..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail002.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-arrowfail002.hs:6:17: Not in scope: `x'
diff --git a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail003.hs b/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail003.hs
deleted file mode 100644
index 2f8cfeeaed..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail003.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE Arrows #-}
--- Arrow commands where an expression is expected
-
-module ShouldFail where
-
-import Control.Arrow
-
-foo = returnA -< []
-bar = (|zeroArrow|)
diff --git a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail003.stderr b/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail003.stderr
deleted file mode 100644
index 39a6b48139..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail003.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-
-arrowfail003.hs:8:7:
- The arrow command
- returnA -< []
- was found where an expression was expected
- In the expression: returnA -< []
- In an equation for `foo': foo = returnA -< []
-
-arrowfail003.hs:9:7:
- The arrow command
- (|zeroArrow |)
- was found where an expression was expected
- In the expression: (|zeroArrow |)
- In an equation for `bar': bar = (|zeroArrow |)
diff --git a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail004.hs b/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail004.hs
deleted file mode 100644
index 3e0835a0e4..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail004.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE Arrows, ExistentialQuantification #-}
-
--- Trac #1662
-
-module ShouldFail where
-
-import Control.Arrow
-
-data T = forall a. T a
-
-panic :: (Arrow arrow) => arrow T T
-panic = proc (T x) -> do returnA -< T x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail004.stderr b/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail004.stderr
deleted file mode 100644
index 8a20c6bcbb..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_fail/arrowfail004.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-arrowfail004.hs:12:15:
- Proc patterns cannot use existential or GADT data constructors
- In the pattern: T x
- In the expression: proc (T x) -> do { returnA -< T x }
- In an equation for `panic':
- panic = proc (T x) -> do { returnA -< T x }
diff --git a/testsuite/tests/ghc-regress/arrows/should_run/Makefile b/testsuite/tests/ghc-regress/arrows/should_run/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_run/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/arrows/should_run/T3822.hs b/testsuite/tests/ghc-regress/arrows/should_run/T3822.hs
deleted file mode 100644
index 93e6dc5797..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_run/T3822.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-
-{-# LANGUAGE Arrows #-}
-
-import Control.Arrow
-import qualified Control.Category as Cat
-
-test :: Int -> Int
-test = proc x -> do
- let neg = x < 0
- case x of
- x | neg -> returnA -< 0 -- GHC panics
- --x | x < 0 -> returnA -< 0 -- GHC doesn't panic
- _ -> returnA -< 10
-
-main = do
- print $ test (-1)
- print $ test 1
diff --git a/testsuite/tests/ghc-regress/arrows/should_run/T3822.stdout b/testsuite/tests/ghc-regress/arrows/should_run/T3822.stdout
deleted file mode 100644
index 25e7f55667..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_run/T3822.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-0
-10
diff --git a/testsuite/tests/ghc-regress/arrows/should_run/all.T b/testsuite/tests/ghc-regress/arrows/should_run/all.T
deleted file mode 100644
index a9867dd395..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_run/all.T
+++ /dev/null
@@ -1,8 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-test('arrowrun001', normal, compile_and_run, [''])
-test('arrowrun002', skip_if_fast, compile_and_run, [''])
-test('arrowrun003', normal, compile_and_run, [''])
-test('arrowrun004', skip_if_fast, compile_and_run, [''])
-test('T3822', normal, compile_and_run, [''])
-
diff --git a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun001.hs b/testsuite/tests/ghc-regress/arrows/should_run/arrowrun001.hs
deleted file mode 100644
index c686b32546..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun001.hs
+++ /dev/null
@@ -1,48 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
--- Toy lambda-calculus interpreter from John Hughes's arrows paper (s5)
-
-module Main(main) where
-
-import Data.Maybe(fromJust)
-import Control.Arrow
-
-type Id = String
-data Val a = Num Int | Bl Bool | Fun (a (Val a) (Val a))
-data Exp = Var Id | Add Exp Exp | If Exp Exp Exp | Lam Id Exp | App Exp Exp
-
-eval :: (ArrowChoice a, ArrowApply a) => Exp -> a [(Id, Val a)] (Val a)
-eval (Var s) = proc env ->
- returnA -< fromJust (lookup s env)
-eval (Add e1 e2) = proc env -> do
- ~(Num u) <- eval e1 -< env
- ~(Num v) <- eval e2 -< env
- returnA -< Num (u + v)
-eval (If e1 e2 e3) = proc env -> do
- ~(Bl b) <- eval e1 -< env
- if b then eval e2 -< env
- else eval e3 -< env
-eval (Lam x e) = proc env ->
- returnA -< Fun (proc v -> eval e -< (x,v):env)
-eval (App e1 e2) = proc env -> do
- ~(Fun f) <- eval e1 -< env
- v <- eval e2 -< env
- f -<< v
-
--- some tests
-
-i = Lam "x" (Var "x")
-k = Lam "x" (Lam "y" (Var "x"))
-double = Lam "x" (Add (Var "x") (Var "x"))
-
--- if b then k (double x) x else x + x + x
-
-text_exp = If (Var "b")
- (App (App k (App double (Var "x"))) (Var "x"))
- (Add (Var "x") (Add (Var "x") (Var "x")))
-
-unNum (Num n) = n
-
-main = do
- print (unNum (eval text_exp [("b", Bl True), ("x", Num 5)]))
- print (unNum (eval text_exp [("b", Bl False), ("x", Num 5)]))
diff --git a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun001.stdout b/testsuite/tests/ghc-regress/arrows/should_run/arrowrun001.stdout
deleted file mode 100644
index 349103a876..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun001.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-10
-15
diff --git a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun002.hs b/testsuite/tests/ghc-regress/arrows/should_run/arrowrun002.hs
deleted file mode 100644
index 16f29806ac..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun002.hs
+++ /dev/null
@@ -1,225 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
--- Homogeneous (or depth-preserving) functions over perfectly balanced trees.
-
-module Main where
-
-import Control.Arrow
-import Control.Category
-import Data.Complex
-import Prelude hiding (id, (.))
-
-infixr 4 :&:
-
--- Consider the following non-regular type of perfectly balanced trees,
--- or `powertrees' (cf Jayadev Misra's powerlists):
-
-data Pow a = Zero a | Succ (Pow (Pair a))
- deriving Show
-
-type Pair a = (a, a)
-
--- Here are some example elements:
-
-tree0 = Zero 1
-tree1 = Succ (Zero (1, 2))
-tree2 = Succ (Succ (Zero ((1, 2), (3, 4))))
-tree3 = Succ (Succ (Succ (Zero (((1, 2), (3, 4)), ((5, 6), (7, 8))))))
-
--- The elements of this type have a string of constructors expressing
--- a depth n as a Peano numeral, enclosing a nested pair tree of 2^n
--- elements. The type definition ensures that all elements of this type
--- are perfectly balanced binary trees of this form. (Such things arise
--- in circuit design, eg Ruby, and descriptions of parallel algorithms.)
--- And the type system will ensure that all legal programs preserve
--- this structural invariant.
---
--- The only problem is that the type constraint is too restrictive, rejecting
--- many of the standard operations on these trees. Typically you want to
--- split a tree into two subtrees, do some processing on the subtrees and
--- combine the results. But the type system cannot discover that the two
--- results are of the same depth (and thus combinable). We need a type
--- that says a function preserves depth. Here it is:
-
-data Hom a b = (a -> b) :&: Hom (Pair a) (Pair b)
-
--- A homogeneous (or depth-preserving) function is an infinite sequence of
--- functions of type Pair^n a -> Pair^n b, one for each depth n. We can
--- apply a homogeneous function to a powertree by selecting the function
--- for the required depth:
-
-apply :: Hom a b -> Pow a -> Pow b
-apply (f :&: fs) (Zero x) = Zero (f x)
-apply (f :&: fs) (Succ t) = Succ (apply fs t)
-
--- Having defined apply, we can forget about powertrees and do all our
--- programming with Hom's. Firstly, Hom is an arrow:
-
-instance Category Hom where
- id = id :&: id
- (f :&: fs) . (g :&: gs) = (f . g) :&: (fs . gs)
-
-instance Arrow Hom where
- arr f = f :&: arr (f *** f)
- first (f :&: fs) =
- first f :&: (arr transpose >>> first fs >>> arr transpose)
-
-transpose :: ((a,b), (c,d)) -> ((a,c), (b,d))
-transpose ((a,b), (c,d)) = ((a,c), (b,d))
-
--- arr maps f over the leaves of a powertree.
-
--- The composition >>> composes sequences of functions pairwise.
---
--- The *** operator unriffles a powertree of pairs into a pair of powertrees,
--- applies the appropriate function to each and riffles the results.
--- It defines a categorical product for this arrow category.
-
--- When describing algorithms, one often provides a pure function for the
--- base case (trees of one element) and a (usually recursive) expression
--- for trees of pairs.
-
--- For example, a common divide-and-conquer pattern is the butterfly, where
--- one recursive call processes the odd-numbered elements and the other
--- processes the even ones (cf Geraint Jones and Mary Sheeran's Ruby papers):
-
-butterfly :: (Pair a -> Pair a) -> Hom a a
-butterfly f = id :&: proc (x, y) -> do
- x' <- butterfly f -< x
- y' <- butterfly f -< y
- returnA -< f (x', y')
-
--- The recursive calls operate on halves of the original tree, so the
--- recursion is well-defined.
-
--- Some examples of butterflies:
-
-rev :: Hom a a
-rev = butterfly swap
- where swap (x, y) = (y, x)
-
-unriffle :: Hom (Pair a) (Pair a)
-unriffle = butterfly transpose
-
--- Batcher's sorter for bitonic sequences:
-
-bisort :: Ord a => Hom a a
-bisort = butterfly cmp
- where cmp (x, y) = (min x y, max x y)
-
--- This can be used (with rev) as the merge phase of a merge sort.
---
-sort :: Ord a => Hom a a
-sort = id :&: proc (x, y) -> do
- x' <- sort -< x
- y' <- sort -< y
- yr <- rev -< y'
- p <- unriffle -< (x', yr)
- bisort2 -< p
- where _ :&: bisort2 = bisort
-
--- Here is the scan operation, using the algorithm of Ladner and Fischer:
-
-scan :: (a -> a -> a) -> a -> Hom a a
-scan op b = id :&: proc (x, y) -> do
- y' <- scan op b -< op x y
- l <- rsh b -< y'
- returnA -< (op l x, y')
-
--- The auxiliary function rsh b shifts each element in the tree one place to
--- the right, placing b in the now-vacant leftmost position, and discarding
--- the old rightmost element:
-
-rsh :: a -> Hom a a
-rsh b = const b :&: proc (x, y) -> do
- w <- rsh b -< y
- returnA -< (w, x)
-
--- Finally, here is the Fast Fourier Transform:
-
-type C = Complex Double
-
-fft :: Hom C C
-fft = id :&: proc (x, y) -> do
- x' <- fft -< x
- y' <- fft -< y
- r <- roots (-1) -< ()
- let z = r*y'
- unriffle -< (x' + z, x' - z)
-
--- The auxiliary function roots r (where r is typically a root of unity)
--- populates a tree of size n (necessarily a power of 2) with the values
--- 1, w, w^2, ..., w^(n-1), where w^n = r.
-
-roots :: C -> Hom () C
-roots r = const 1 :&: proc _ -> do
- x <- roots r' -< ()
- unriffle -< (x, x*r')
- where r' = if imagPart s >= 0 then -s else s
- s = sqrt r
-
--- Miscellaneous functions:
-
-rrot :: Hom a a
-rrot = id :&: proc (x, y) -> do
- w <- rrot -< y
- returnA -< (w, x)
-
-ilv :: Hom a a -> Hom (Pair a) (Pair a)
-ilv f = proc (x, y) -> do
- x' <- f -< x
- y' <- f -< y
- returnA -< (x', y')
-
-scan' :: (a -> a -> a) -> a -> Hom a a
-scan' op b = proc x -> do
- l <- rsh b -< x
- (id :&: ilv (scan' op b)) -< op l x
-
-riffle :: Hom (Pair a) (Pair a)
-riffle = id :&: proc ((x1, y1), (x2, y2)) -> do
- x <- riffle -< (x1, x2)
- y <- riffle -< (y1, y2)
- returnA -< (x, y)
-
-invert :: Hom a a
-invert = id :&: proc (x, y) -> do
- x' <- invert -< x
- y' <- invert -< y
- unriffle -< (x', y')
-
-carryLookaheadAdder :: Hom (Bool, Bool) Bool
-carryLookaheadAdder = proc (x, y) -> do
- carryOut <- rsh (Just False) -<
- if x == y then Just x else Nothing
- Just carryIn <- scan plusMaybe Nothing -< carryOut
- returnA -< x `xor` y `xor` carryIn
- where plusMaybe x Nothing = x
- plusMaybe x (Just y) = Just y
- False `xor` b = b
- True `xor` b = not b
-
--- Global conditional for SIMD
-
-ifAll :: Hom a b -> Hom a b -> Hom (a, Bool) b
-ifAll fs gs = ifAllAux snd (arr fst >>> fs) (arr fst >>> gs)
- where ifAllAux :: (a -> Bool) -> Hom a b -> Hom a b -> Hom a b
- ifAllAux p (f :&: fs) (g :&: gs) =
- liftIf p f g :&: ifAllAux (liftAnd p) fs gs
- liftIf p f g x = if p x then f x else g x
- liftAnd p (x, y) = p x && p y
-
-maybeAll :: Hom a c -> Hom (a, b) c -> Hom (a, Maybe b) c
-maybeAll (n :&: ns) (j :&: js) =
- choose :&: (arr dist >>> maybeAll ns (arr transpose >>> js))
- where choose (a, Nothing) = n a
- choose (a, Just b) = j (a, b)
- dist ((a1, b1), (a2, b2)) = ((a1, a2), zipMaybe b1 b2)
- zipMaybe (Just x) (Just y) = Just (x, y)
- zipMaybe _ _ = Nothing
-
-main = do
- print (apply rev tree3)
- print (apply invert tree3)
- print (apply (invert >>> sort) tree3)
- print (apply (scan (+) 0) tree3)
diff --git a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun002.stdout b/testsuite/tests/ghc-regress/arrows/should_run/arrowrun002.stdout
deleted file mode 100644
index b13ce3b37a..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun002.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-Succ (Succ (Succ (Zero (((8,7),(6,5)),((4,3),(2,1))))))
-Succ (Succ (Succ (Zero (((1,5),(3,7)),((2,6),(4,8))))))
-Succ (Succ (Succ (Zero (((1,2),(3,4)),((5,6),(7,8))))))
-Succ (Succ (Succ (Zero (((1,3),(6,10)),((15,21),(28,36))))))
diff --git a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun003.hs b/testsuite/tests/ghc-regress/arrows/should_run/arrowrun003.hs
deleted file mode 100644
index 5f4580ab87..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun003.hs
+++ /dev/null
@@ -1,133 +0,0 @@
-{-# LANGUAGE Arrows #-}
-
-module Main(main) where
-
-import Control.Arrow
-import Control.Category
-import Prelude hiding (id, (.))
-
-class ArrowLoop a => ArrowCircuit a where
- delay :: b -> a b b
-
--- stream map instance
-
-data Stream a = Cons a (Stream a)
-
-instance Functor Stream where
- fmap f ~(Cons a as) = Cons (f a) (fmap f as)
-
-zipStream :: Stream a -> Stream b -> Stream (a,b)
-zipStream ~(Cons a as) ~(Cons b bs) = Cons (a,b) (zipStream as bs)
-
-unzipStream :: Stream (a,b) -> (Stream a, Stream b)
-unzipStream abs = (fmap fst abs, fmap snd abs)
-
-newtype StreamMap a b = StreamMap (Stream a -> Stream b)
-unStreamMap (StreamMap f) = f
-
-instance Category StreamMap where
- id = StreamMap id
- StreamMap f . StreamMap g = StreamMap (f . g)
-
-instance Arrow StreamMap where
- arr f = StreamMap (fmap f)
- first (StreamMap f) =
- StreamMap (uncurry zipStream . first f . unzipStream)
-
-instance ArrowLoop StreamMap where
- loop (StreamMap f) =
- StreamMap (loop (unzipStream . f . uncurry zipStream))
-
-instance ArrowCircuit StreamMap where
- delay a = StreamMap (Cons a)
-
-listToStream :: [a] -> Stream a
-listToStream = foldr Cons undefined
-
-streamToList :: Stream a -> [a]
-streamToList (Cons a as) = a:streamToList as
-
-runStreamMap :: StreamMap a b -> [a] -> [b]
-runStreamMap (StreamMap f) as =
- take (length as) (streamToList (f (listToStream as)))
-
--- simple automaton instance
-
-data Auto a b = Auto (a -> (b, Auto a b))
-
-instance Category Auto where
- id = Auto $ \a -> (a, id)
- Auto f . Auto g = Auto $ \b ->
- let (c, g') = g b
- (d, f') = f c
- in (d, f' . g')
-
-instance Arrow Auto where
- arr f = Auto $ \a -> (f a, arr f)
- first (Auto f) = Auto $ \(b,d) -> let (c,f') = f b in ((c,d), first f')
-
-instance ArrowLoop Auto where
- loop (Auto f) = Auto $ \b ->
- let (~(c,d), f') = f (b,d)
- in (c, loop f')
-
-instance ArrowCircuit Auto where
- delay a = Auto $ \a' -> (a, delay a')
-
-runAuto :: Auto a b -> [a] -> [b]
-runAuto (Auto f) [] = []
-runAuto (Auto f) (a:as) = let (b, f') = f a in b:runAuto f' as
-
--- Some simple example circuits
-
--- A resettable counter (first example in several Hawk papers):
-
-counter :: ArrowCircuit a => a Bool Int
-counter = proc reset -> do
- rec output <- returnA -< if reset then 0 else next
- next <- delay 0 -< output+1
- returnA -< output
-
--- Some other basic circuits from the Hawk library.
-
--- flush: when reset is True, return d for n ticks, otherwise copy value.
--- (a variation on the resettable counter)
-
-flush :: ArrowCircuit a => Int -> b -> a (b, Bool) b
-flush n d = proc (value, reset) -> do
- rec count <- returnA -< if reset then n else max (next-1) 0
- next <- delay 0 -< count
- returnA -< if count > 0 then d else value
-
--- latch: on each tick, return the last value for which reset was True,
--- or init if there was none.
---
-latch :: ArrowCircuit a => b -> a (b, Bool) b
-latch init = proc (value, reset) -> do
- rec out <- returnA -< if reset then value else last
- last <- delay init -< out
- returnA -< out
-
--- Some tests using the counter
-
-test_input = [True, False, True, False, False, True, False, True]
-test_input2 = zip [1..] test_input
-
--- A test of the resettable counter.
-
-main = do
- print (runStreamMap counter test_input)
- print (runAuto counter test_input)
- print (runStreamMap (flush 2 0) test_input2)
- print (runAuto (flush 2 0) test_input2)
- print (runStreamMap (latch 0) test_input2)
- print (runAuto (latch 0) test_input2)
-
--- A step function (cf current in Lustre)
-
-step :: ArrowCircuit a => b -> a (Either b c) b
-step b = proc x -> do
- rec last_b <- delay b -< getLeft last_b x
- returnA -< last_b
- where getLeft _ (Left b) = b
- getLeft b (Right _) = b
diff --git a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun003.stdout b/testsuite/tests/ghc-regress/arrows/should_run/arrowrun003.stdout
deleted file mode 100644
index 21a7156d60..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun003.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-[0,1,0,1,2,0,1,0]
-[0,1,0,1,2,0,1,0]
-[0,0,0,0,5,0,0,0]
-[0,0,0,0,5,0,0,0]
-[1,1,3,3,3,6,6,8]
-[1,1,3,3,3,6,6,8]
diff --git a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun004.hs b/testsuite/tests/ghc-regress/arrows/should_run/arrowrun004.hs
deleted file mode 100644
index c0275065f2..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun004.hs
+++ /dev/null
@@ -1,128 +0,0 @@
-{-# LANGUAGE Arrows, MultiParamTypeClasses, FlexibleInstances #-}
-
--- Simple expression parser
--- (uses do-notation and operators)
-
-module Main(main) where
-
-import Control.Arrow
-import Control.Category
-import Data.Char
-import Prelude hiding (id, (.))
-
--- Parsers
-
-class (Eq s, Show s, ArrowPlus a) => ArrowParser s a where
- symbol :: s -> a b String
-
-data Sym s = Sym { token :: s, value :: String }
-
--- Simple backtracking instance
-
-newtype BTParser s a b = BTParser (a -> [Sym s] -> [(b, [Sym s])])
-
-instance Category (BTParser s) where
- id = BTParser $ \a ss -> [(a, ss)]
- BTParser f . BTParser g = BTParser $ \b ss ->
- [(d, ss'') | (c, ss') <- g b ss, (d, ss'') <- f c ss']
-
-instance Arrow (BTParser s) where
- arr f = BTParser $ \a ss -> [(f a, ss)]
- first (BTParser f) = BTParser $ \(b,d) ss ->
- [((c,d), ss') | (c,ss') <- f b ss]
-
-instance ArrowZero (BTParser s) where
- zeroArrow = BTParser $ \b ss -> []
-
-instance ArrowPlus (BTParser s) where
- BTParser f <+> BTParser g = BTParser $ \b ss -> f b ss ++ g b ss
-
-instance (Eq s, Show s) => ArrowParser s (BTParser s) where
- symbol s = BTParser $ \b ss ->
- case ss of
- Sym s' v:ss' | s' == s -> [(v, ss')]
- _ -> []
-
-runBTParser :: BTParser s () c -> [Sym s] -> c
-runBTParser (BTParser parser) syms =
- head [c | (c, []) <- parser () syms]
-
--- Expressions
-
-data ESym = LPar | RPar | Plus | Minus | Mult | Div | Number | Unknown
- deriving (Show, Eq, Ord)
-
-type ExprParser = BTParser ESym
-type ExprSym = Sym ESym
-
--- The grammar
-
-expr :: ExprParser () Int
-expr = proc () -> do
- x <- term -< ()
- expr' -< x
-
-expr' :: ExprParser Int Int
-expr' = proc x -> do
- returnA -< x
- <+> do
- (|(symbol Plus)|)
- y <- term -< ()
- expr' -< x + y
- <+> do
- (|(symbol Minus)|)
- y <- term -< ()
- expr' -< x - y
-
-term :: ExprParser () Int
-term = proc () -> do
- x <- factor -< ()
- term' -< x
-
-term' :: ExprParser Int Int
-term' = proc x -> do
- returnA -< x
- <+> do
- (|(symbol Mult)|)
- y <- factor -< ()
- term' -< x * y
- <+> do
- (|(symbol Div)|)
- y <- factor -< ()
- term' -< x `div` y
-
-factor :: ExprParser () Int
-factor = proc () -> do
- v <- (|(symbol Number)|)
- returnA -< read v::Int
- <+> do
- (|(symbol Minus)|)
- v <- factor -< ()
- returnA -< -v
- <+> do
- (|(symbol LPar)|)
- v <- expr -< ()
- (|(symbol RPar)|)
- returnA -< v
-
--- Lexical analysis
-
-lexer :: String -> [ExprSym]
-lexer [] = []
-lexer ('(':cs) = Sym LPar "(":lexer cs
-lexer (')':cs) = Sym RPar ")":lexer cs
-lexer ('+':cs) = Sym Plus "+":lexer cs
-lexer ('-':cs) = Sym Minus "-":lexer cs
-lexer ('*':cs) = Sym Mult "*":lexer cs
-lexer ('/':cs) = Sym Div "/":lexer cs
-lexer (c:cs)
- | isSpace c = lexer cs
- | isDigit c = Sym Number (c:w):lexer cs'
- | otherwise = Sym Unknown [c]:lexer cs
- where (w,cs') = span isDigit cs
-
-parse = runBTParser expr . lexer
-
-main = do
- print (parse "1+2*(3+4)")
- print (parse "3*5-17/3+4")
diff --git a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun004.stdout b/testsuite/tests/ghc-regress/arrows/should_run/arrowrun004.stdout
deleted file mode 100644
index cbb71fdd82..0000000000
--- a/testsuite/tests/ghc-regress/arrows/should_run/arrowrun004.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-15
-14
diff --git a/testsuite/tests/ghc-regress/boxy/Base1.hs b/testsuite/tests/ghc-regress/boxy/Base1.hs
deleted file mode 100644
index 88e7e80f17..0000000000
--- a/testsuite/tests/ghc-regress/boxy/Base1.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# OPTIONS_GHC -XImpredicativeTypes -fno-warn-deprecated-flags #-}
-
-module Base1 where
--- basic examples of impredicative instantiation of variables
-
-data MEither a b = MLeft a
- | MRight b
- | MEmpty
-
-type Sid = forall a. a -> a
-
--- no need for impredicativity
-test0 = MRight id
-
--- requires impredicativity
-test1 :: Sid -> MEither Sid b
-test1 fid = MLeft fid
-
-test2 :: MEither b Sid -> Maybe (Sid,Sid)
-test2 m = case (test1 id) of
- MLeft x -> case m of
- MRight y -> Just (x,y)
- _ -> Nothing
- _ -> Nothing
-
-test3 :: MEither a b -> b
-test3 (MRight x) = x
-
-test4 = test3 (test1 id)
-
diff --git a/testsuite/tests/ghc-regress/boxy/Church1.hs b/testsuite/tests/ghc-regress/boxy/Church1.hs
deleted file mode 100644
index fccaac7d8c..0000000000
--- a/testsuite/tests/ghc-regress/boxy/Church1.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-
-module Church1 where
--- Church numerals w/o extra type constructors
-
-type CNat = forall a. (a->a) -> a -> a
-
-n0 :: CNat
-n0 = \f z -> z
-
-n1 :: CNat
-n1 = \f z -> f z
-
-nsucc :: CNat -> CNat
-nsucc n = \f z -> f (n f z)
-
-add, mul :: CNat -> CNat -> CNat
-add m n = \f -> \a -> m f (n f a)
-mul m n = \f -> \a -> m (n f) a
-
--- already works with GHC 6.4
-exp0 :: CNat -> CNat -> CNat
-exp0 m n = n m
-
-
-exp1 :: CNat -> CNat -> CNat
-exp1 m n = (n::((CNat -> CNat) -> CNat -> CNat)) (mul m) n1 -- checks with app rule
-
diff --git a/testsuite/tests/ghc-regress/boxy/Church2.hs b/testsuite/tests/ghc-regress/boxy/Church2.hs
deleted file mode 100644
index c360bb3a8b..0000000000
--- a/testsuite/tests/ghc-regress/boxy/Church2.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-
-module Church2 where
--- Church numerals w/o extra type constructors: Should fail
-
-type CNat = forall a. (a->a) -> a -> a
-
-n0 :: CNat
-n0 = \f z -> z
-
-n1 :: CNat
-n1 = \f z -> f z
-
-nsucc :: CNat -> CNat
-nsucc n = \f z -> f (n f z)
-
-add, mul :: CNat -> CNat -> CNat
-add m n = \f -> \a -> m f (n f a)
-mul m n = \f -> \a -> m (n f) a
-
--- already works with GHC 6.4
-exp0 :: CNat -> CNat -> CNat
-exp0 m n = n m
-
--- should fail!
-exp2 :: CNat -> CNat -> CNat
-exp2 m n = n (mul m) n1
diff --git a/testsuite/tests/ghc-regress/boxy/Church2.stderr b/testsuite/tests/ghc-regress/boxy/Church2.stderr
deleted file mode 100644
index ea7613733b..0000000000
--- a/testsuite/tests/ghc-regress/boxy/Church2.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-Church2.hs:27:14:
- Couldn't match expected type `CNat'
- against inferred type `(a -> a) -> a -> a'
- In the first argument of `n', namely `(mul m)'
- In the expression: n (mul m) n1
- In the definition of `exp2': exp2 m n = n (mul m) n1
-
-*** This error message is not helpful,
-*** and the test should fail, not pass
-*** These comments are here to make sure the output
-*** doesn't match!
diff --git a/testsuite/tests/ghc-regress/boxy/Compose.hs b/testsuite/tests/ghc-regress/boxy/Compose.hs
deleted file mode 100644
index 0caa84cbe1..0000000000
--- a/testsuite/tests/ghc-regress/boxy/Compose.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# OPTIONS_GHC -XImpredicativeTypes -fno-warn-deprecated-flags -XEmptyDataDecls -XGADTs #-}
-
--- Trac #1118
-
-module Compose where
-
-data Z
-data S n
-
-data List n a where
- Nil :: List Z a
- (:-) :: a -> List n a -> List (S n) a
-
-data Hold a = Hold (forall m . a m -> a (S m))
-
-compose' :: List n (Hold a) -> a (S Z) -> a (S n)
-compose' Nil x = x
-compose' ((Hold f) :- fs) x = f (compose' fs x)
-
-compose :: List n (forall m . a m -> a (S m)) -> a (S Z) -> a (S n)
-compose Nil x = x
-compose (f :- fs) x = f (compose fs x)
-
-composeS :: [forall m . a m -> a m] -> a n -> a n
-composeS [] x = x
-composeS (f:fs) x = f (composeS fs x)
diff --git a/testsuite/tests/ghc-regress/boxy/Makefile b/testsuite/tests/ghc-regress/boxy/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/boxy/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/boxy/PList1.hs b/testsuite/tests/ghc-regress/boxy/PList1.hs
deleted file mode 100644
index 80fac96d9f..0000000000
--- a/testsuite/tests/ghc-regress/boxy/PList1.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# OPTIONS_GHC -XImpredicativeTypes -fno-warn-deprecated-flags #-}
-
-module PList1 where
--- Polymorphic lists 1: requires smart-app-res
-
-type Sid = forall a . a -> a
-
-ids :: [Sid]
-ids = []
-
--- requires smart-app-res
-test0 :: [Sid]
-test0 = (\x->x) : ids
-
-test1 :: [Sid] -- SLPJ added
-test1 = ids ++ test0
-
-test2 :: [Sid]
-test2 = tail test1
-
-
-test3 :: [Sid] -- SLPJ added
-test3 = reverse test2
-test4 = (tail::([Sid]->[Sid])) test2
-
-test5 = (head::([Sid]->Sid)) test2 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/boxy/PList2.hs b/testsuite/tests/ghc-regress/boxy/PList2.hs
deleted file mode 100644
index 581ce086a9..0000000000
--- a/testsuite/tests/ghc-regress/boxy/PList2.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# OPTIONS_GHC -XImpredicativeTypes -fno-warn-deprecated-flags #-}
-
-module PList2 where
--- Polymorphic lists 2: require smart-app-arg & smart-app-res: Should fail w/o smart-app-arg
-
-type Sid = forall a. a -> a
-
-ids :: [Sid]
-ids = []
-
-test0 :: [Sid]
-test0 = (\x -> x):ids -- requires smart-app-res
-
-test1 :: [Sid] -- Added SLPJ
-test1 = ids ++ test0
-
-test2 :: [Sid]
-test2 = tail test1 -- requires smart-app-arg
-
-test3 :: [Sid] -- Added SLPJ
-test3 = reverse test2
-
-test4 :: Sid
-test4 = head ids --requires smart-app-arg
-
-test5 :: Sid
-test5 = head ids -- still requires smart-app-arg
diff --git a/testsuite/tests/ghc-regress/boxy/SystemF.hs b/testsuite/tests/ghc-regress/boxy/SystemF.hs
deleted file mode 100644
index 3f5b4b957a..0000000000
--- a/testsuite/tests/ghc-regress/boxy/SystemF.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
-module SystemF where
--- System-F examples
-
-
-type Sid = forall a. a -> a
-
-apply :: forall a b . (a -> b) -> a -> b
-apply f g = f g
-
-hr :: (forall a. a -> a) -> (Int,Bool)
-hr f = (f 3,f True)
-
-test0 = apply hr id -- requires smart-app-arg
-
-selfApp :: Sid -> Sid
-selfApp x = (x::(Sid -> Sid)) x
-
-
-
diff --git a/testsuite/tests/ghc-regress/boxy/T2193.hs b/testsuite/tests/ghc-regress/boxy/T2193.hs
deleted file mode 100644
index 904a13721c..0000000000
--- a/testsuite/tests/ghc-regress/boxy/T2193.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# OPTIONS_GHC -XImpredicativeTypes -fno-warn-deprecated-flags #-}
-
-module Main where
-
-data Foo x y = Foo {foo1 :: x, foo2 :: y}
-instance Functor (Foo x) where
- fmap f (Foo x y) = Foo x (f y)
-
-bar :: a -> Foo (forall s. s) a
-bar a = Foo undefined a
-
-main = print (foo2 (fmap (*2) (bar 2)))
-
diff --git a/testsuite/tests/ghc-regress/boxy/T2193.stdout b/testsuite/tests/ghc-regress/boxy/T2193.stdout
deleted file mode 100644
index b8626c4cff..0000000000
--- a/testsuite/tests/ghc-regress/boxy/T2193.stdout
+++ /dev/null
@@ -1 +0,0 @@
-4
diff --git a/testsuite/tests/ghc-regress/boxy/all.T b/testsuite/tests/ghc-regress/boxy/all.T
deleted file mode 100644
index 0294d01629..0000000000
--- a/testsuite/tests/ghc-regress/boxy/all.T
+++ /dev/null
@@ -1,11 +0,0 @@
-# Boxy-type tests
-
-test('Base1', expect_broken(4295), compile, [''])
-test('Church1', expect_broken(4295), compile, [''])
-test('Church2', expect_broken(1330), compile_fail, [''])
-test('PList1', expect_broken(4295), compile, [''])
-test('PList2', expect_broken(4295), compile, [''])
-test('SystemF', expect_broken(4295), compile, [''])
-test('boxy', expect_broken(4295), compile, [''])
-test('Compose', normal, compile, [''])
-test('T2193', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/boxy/boxy.hs b/testsuite/tests/ghc-regress/boxy/boxy.hs
deleted file mode 100644
index 4d2bd029b1..0000000000
--- a/testsuite/tests/ghc-regress/boxy/boxy.hs
+++ /dev/null
@@ -1,124 +0,0 @@
-{-# OPTIONS_GHC -XImpredicativeTypes -fno-warn-deprecated-flags -XScopedTypeVariables #-}
-
-module ShouldCompile where
-
-
-{-------- Examples from the paper ---------}
-
-f :: (forall a. [a] -> a) -> (Int, Char)
-f get = (get [1,2], get ['a', 'b', 'c'])
-
-g :: Maybe (forall a. [a] -> a) -> (Int, Char)
-g Nothing = (0, '0')
-g (Just get) = (get [1,2], get ['a','b','c'])
-
-sing x = [x]
-
-id1 :: forall a. a -> a
-id1 = id
-
-{-
-ids :: [forall a. a -> a]
-ids = [id1,id1]
-
-t1 :: [forall a. a -> a]
-t1 = tail ids
-
-t2 :: [forall a. a -> a]
-t2 = sing id
-
-t3 :: forall a. a -> a
-t3 = head ids
--}
-
-{--------------- Examples from QMLF paper -------------------}
-
-qF :: (forall a. a -> a -> a) -> (Bool, Char)
-qF choose = (choose True False, choose 'a' 'b')
-
-qG :: (forall a. a -> a -> a) -> (forall a. a -> a) -> (forall g. (g -> g) -> (g -> g))
-qG choose id = choose id
-
-qH :: (forall a. a -> a -> a) -> (forall a. a -> a) -> (forall b. b -> b) -> (forall b. b -> b)
-qH choose id = choose id
-
-choose :: forall a. a -> a -> a
-choose x y = x
-
-{-
-impred1 :: (Bool, Char)
-impred1 = qF $ choose --- impredicative instantiation for $
-
-impred2 :: (forall a. a -> a -> a) -> (Bool, Char)
-impred2 = id qF
--}
-
-{------ Examples for Garrique/Remy paper -------}
-
---- all of these currently work in GHC with higher-rank types
-
-self1 :: (forall a. a -> a) -> (forall a. a -> a)
-self1 f = f f
-
-self2 :: (forall a. a -> a) -> b -> b
-self2 f = f f
-
-gr1 = self1 id
-
-gr2 = self2 id
-
-gr3 = (\(u :: (forall a. a -> a) -> (forall a. a -> a)) -> u id) self1
-
-{------------ Church numerals ----------}
-
-type Church = forall a. a -> (a -> a) -> a
-
-z :: Church
-z = \z -> \f -> z
-
-s :: Church -> Church
-s = \n -> \z -> \f -> f (n z f)
-
-fold :: Church -> a -> (a -> a) -> a
-fold n f z = n f z
-
-{-
-mul :: Church -> Church -> Church
-mul m n = \f -> \a -> m (n f) a
-
-exp :: Church -> Church -> Church
-exp m n = n (mul m) (s z)
-
-idC :: Church -> Church
-idC x = fold x s z
-
-inc :: Church -> Church
-inc x = fold x s (s z)
--}
-
-{------- fix for higher rank types ---------}
-
-data Tree a = Branch a (Tree (a,a)) | Leaf
-
-type MapTree = forall a b. (a -> b) -> Tree a -> Tree b
-cross f (a,b) = (f a,f b)
-
--- I think this should work in GHC now, but it doesn't
--- fix specialized to higher-rank type
-fixMT :: (MapTree -> MapTree) -> MapTree
-fixMT f = f (fixMT f)
-
-mapTree' = fixMT (\ (mapTree :: MapTree) -> \f tree -> case tree of
- Branch a t -> Branch (f a) (mapTree (cross f) t)
- Leaf -> Leaf)
-
--- polymorphic fix
-fix :: (a -> a) -> a
-fix f = f (fix f)
-
-
--- mapTree'' :: MapTree
-mapTree'' = (fix :: (MapTree -> MapTree) -> MapTree)
- (\ mapTree -> \f tree -> case tree of
- Branch a t -> Branch (f a) (mapTree (cross f) t)
- Leaf -> Leaf)
diff --git a/testsuite/tests/ghc-regress/cabal/1750.stderr b/testsuite/tests/ghc-regress/cabal/1750.stderr
deleted file mode 100644
index 71bed0745b..0000000000
--- a/testsuite/tests/ghc-regress/cabal/1750.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-WARNING: there are broken packages. Run 'ghc-pkg check' for more details.
-<command line>: cannot satisfy -package 1750A:
- 1750A-1-XXX is unusable due to missing or recursive dependencies:
- 1750B-1-XXX
- (use -v for more information)
diff --git a/testsuite/tests/ghc-regress/cabal/1750.stdout b/testsuite/tests/ghc-regress/cabal/1750.stdout
deleted file mode 100644
index dac998e2ac..0000000000
--- a/testsuite/tests/ghc-regress/cabal/1750.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-local1750.package.conf:
- {1750A-1}
- {1750B-1}
-
diff --git a/testsuite/tests/ghc-regress/cabal/1750A.pkg b/testsuite/tests/ghc-regress/cabal/1750A.pkg
deleted file mode 100644
index e32c97ff8b..0000000000
--- a/testsuite/tests/ghc-regress/cabal/1750A.pkg
+++ /dev/null
@@ -1,4 +0,0 @@
-name: 1750A
-version: 1
-id: 1750A-1-XXX
-depends: 1750B-1-XXX
diff --git a/testsuite/tests/ghc-regress/cabal/1750B.pkg b/testsuite/tests/ghc-regress/cabal/1750B.pkg
deleted file mode 100644
index 5e9ff1f56d..0000000000
--- a/testsuite/tests/ghc-regress/cabal/1750B.pkg
+++ /dev/null
@@ -1,4 +0,0 @@
-name: 1750B
-version: 1
-id: 1750B-1-XXX
-depends: 1750A-1-XXX
diff --git a/testsuite/tests/ghc-regress/cabal/Makefile b/testsuite/tests/ghc-regress/cabal/Makefile
deleted file mode 100644
index a820fb3714..0000000000
--- a/testsuite/tests/ghc-regress/cabal/Makefile
+++ /dev/null
@@ -1,184 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-PKGCONF01=local01.package.conf
-LOCAL_GHC_PKG01 = '$(GHC_PKG)' --no-user-package-conf -f $(PKGCONF01)
-
-STRIP_PKGROOT=sed 's/^pkgroot: .*$$/pkgroot: /'
-
-# a bunch of tests for ghc-pkg
-ghcpkg01 :
- @rm -rf $(PKGCONF01)
- $(LOCAL_GHC_PKG01) init $(PKGCONF01)
- $(LOCAL_GHC_PKG01) list
- $(LOCAL_GHC_PKG01) register --force test.pkg 2>/dev/null
- $(LOCAL_GHC_PKG01) describe testpkg | $(STRIP_PKGROOT)
- $(LOCAL_GHC_PKG01) describe testpkg-1.2.3.4 | $(STRIP_PKGROOT)
- $(LOCAL_GHC_PKG01) field testpkg-1.2.3.4 import-dirs
-
- @: # test2.pkg is a later version of testpkg-1.2.3.4
- $(LOCAL_GHC_PKG01) register --force test2.pkg 2>/dev/null
- $(LOCAL_GHC_PKG01) list
- $(LOCAL_GHC_PKG01) describe testpkg-2.0 | $(STRIP_PKGROOT)
- $(LOCAL_GHC_PKG01) describe testpkg-* | $(STRIP_PKGROOT)
- $(LOCAL_GHC_PKG01) field testpkg-* version
-
- @: # test hiding/exposing
- $(LOCAL_GHC_PKG01) hide testpkg-1.2.3.4
- $(LOCAL_GHC_PKG01) field testpkg-1.2.3.4 exposed | grep False
- $(LOCAL_GHC_PKG01) expose testpkg-2.0
- $(LOCAL_GHC_PKG01) field testpkg-2.0 exposed | grep True
- $(LOCAL_GHC_PKG01) hide testpkg-*
- $(LOCAL_GHC_PKG01) field testpkg-* exposed
-
- @: # test3.pkg depends on testpkg-2.0
- $(LOCAL_GHC_PKG01) register test3.pkg
-
- @: # unregistering testpkg-2.0 should fail now, testpkg-3.0 depends on it
- if $(LOCAL_GHC_PKG01) unregister testpkg-2.0; then false; else true; fi
-
- $(LOCAL_GHC_PKG01) unregister testpkg-3.0
-
- $(LOCAL_GHC_PKG01) unregister testpkg-2.0
- $(LOCAL_GHC_PKG01) describe testpkg | $(STRIP_PKGROOT)
- $(LOCAL_GHC_PKG01) unregister testpkg-*
- $(LOCAL_GHC_PKG01) list
-
- @: # registering test3.pkg should fail now, its dependency has gone
- if $(LOCAL_GHC_PKG01) register test3.pkg; then false; else true; fi
-
-PKGCONF03=local03.package.conf
-LOCAL_GHC_PKG03 = '$(GHC_PKG)' --no-user-package-conf -f $(PKGCONF03)
-
-ghcpkg03 :
- @rm -rf $(PKGCONF03)
- $(LOCAL_GHC_PKG03) init $(PKGCONF03)
- @: # update should hide conflicting packages
- $(LOCAL_GHC_PKG03) register --force test.pkg
- $(LOCAL_GHC_PKG03) register --force test2.pkg
-
- @: # test4.pkg depends on testpkg-2.0, which conflicts with testpkg-1.2.3.4,
- @: # ghc-pkg will happily register it now (it didn't in GHC 6.4)
- $(LOCAL_GHC_PKG03) register test4.pkg
- $(LOCAL_GHC_PKG03) update test4.pkg
-
- @: # and another update of test.pkg will now hide dep-2.0
- $(LOCAL_GHC_PKG03) update --force test.pkg
-
-PKGCONF04=local04.package.conf
-LOCAL_GHC_PKG04 = '$(GHC_PKG)' --no-user-package-conf -f $(PKGCONF04)
-
-# Test that importing a module exposed by two packages reports a conflict
-ghcpkg04 :
- rm -rf $(PKGCONF04)
- $(LOCAL_GHC_PKG04) init $(PKGCONF04)
- $(LOCAL_GHC_PKG04) register --force test.pkg >/dev/null 2>&1
- $(LOCAL_GHC_PKG04) update --force test5.pkg >/dev/null 2>&1
- $(LOCAL_GHC_PKG04) expose testpkg-1.2.3.4 >/dev/null 2>&1
- @: # testpkg-1.2.3.4 and newtestpkg-2.0 are both exposed now
- '$(TEST_HC)' $(TEST_HC_OPTS) -package-conf $(PKGCONF04) -c ghcpkg04.hs || true
-
-# Test stacking of package.confs (also #2441)
-PKGCONF05a=local05a.package.conf
-PKGCONF05b=local05b.package.conf
-LOCAL_GHC_PKG05a = '$(GHC_PKG)' --no-user-package-conf -f $(PKGCONF05a)
-LOCAL_GHC_PKG05b = '$(GHC_PKG)' --no-user-package-conf -f $(PKGCONF05a) -f $(PKGCONF05b)
-
-ghcpkg05 :
- rm -rf $(PKGCONF05a) $(PKGCONF05b)
- $(LOCAL_GHC_PKG05a) init $(PKGCONF05a)
- $(LOCAL_GHC_PKG05b) init $(PKGCONF05b)
- $(LOCAL_GHC_PKG05a) register --force test2.pkg >/dev/null 2>&1
- $(LOCAL_GHC_PKG05b) register --force test3.pkg >/dev/null 2>&1
- $(LOCAL_GHC_PKG05b) check || true
- $(LOCAL_GHC_PKG05b) list
- $(LOCAL_GHC_PKG05b) expose testpkg-2.0
- $(LOCAL_GHC_PKG05b) hide testpkg-2.0
- if $(LOCAL_GHC_PKG05b) unregister testpkg-2.0; then false; else true; fi
- $(LOCAL_GHC_PKG05b) unregister testpkg-3.0
- $(LOCAL_GHC_PKG05b) unregister testpkg-2.0
-
-# Test for #2330: reject duplicate dependencies
-PKGCONF06=local06.package.conf
-LOCAL_GHC_PKG06 = '$(GHC_PKG)' --no-user-package-conf -f $(PKGCONF06)
-
-ghcpkg06 :
- rm -rf $(PKGCONF06)
- $(LOCAL_GHC_PKG06) init $(PKGCONF06)
- $(LOCAL_GHC_PKG06) register --force test.pkg >/dev/null 2>&1
- if $(LOCAL_GHC_PKG06) register testdup.pkg; then false else true; fi
- $(LOCAL_GHC_PKG06) register --force testdup.pkg
-
-PKGCONF1750=local1750.package.conf
-LOCAL_GHC_PKG1750 = '$(GHC_PKG)' --no-user-package-conf -f $(PKGCONF1750)
-
-1750:
- rm -rf $(PKGCONF1750) 1750.hs 1750.o 1750.hi 1750.out
- $(LOCAL_GHC_PKG1750) init $(PKGCONF1750)
- $(LOCAL_GHC_PKG1750) register --force 1750A.pkg >1750.out 2>&1
- $(LOCAL_GHC_PKG1750) register --force 1750B.pkg >1750.out 2>&1
- GHC_PACKAGE_PATH=$(PKGCONF1750) '$(GHC_PKG)' --no-user-package-conf list
-# GHC_PACKAGE_PATH trick is to make this work with 6.8.2 which doesn't have
-# the patch "Change the command-line semantics for query commands" to
-# ghc-pkg
- echo "main = return ()" >1750.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -package-conf $(PKGCONF1750) -package 1750A 1750.hs || true
-
-PKGCONFSHADOW1=localshadow1.package.conf
-PKGCONFSHADOW2=localshadow2.package.conf
-LOCAL_GHC_PKGSHADOW1 = '$(GHC_PKG)' --no-user-package-conf -f $(PKGCONFSHADOW1)
-LOCAL_GHC_PKGSHADOW2 = '$(GHC_PKG)' --no-user-package-conf -f $(PKGCONFSHADOW2)
-LOCAL_GHC_PKGSHADOW3 = '$(GHC_PKG)' --no-user-package-conf -f $(PKGCONFSHADOW1) -f $(PKGCONFSHADOW2)
-
-# Test package shadowing behaviour.
-#
-# localshadow1.package.conf: shadowdep-1-XXX <- shadow-1-XXX
-# localshadow2.package.conf: shadow-1-YYY
-#
-# shadow-1-XXX will be shadowed by shadow-1-YYY, thus invalidating
-# shadowdep-1-XXX.
-shadow:
- rm -rf $(PKGCONFSHADOW1) $(PKGCONFSHADOW2) shadow.hs shadow.o shadow.hi shadow.out shadow.hs shadow.hi
- $(LOCAL_GHC_PKGSHADOW1) init $(PKGCONFSHADOW1)
- $(LOCAL_GHC_PKGSHADOW2) init $(PKGCONFSHADOW2)
- $(LOCAL_GHC_PKGSHADOW1) register --force shadow1.pkg >shadow1.out 2>&1
- $(LOCAL_GHC_PKGSHADOW1) register --force shadow2.pkg >shadow2.out 2>&1
- $(LOCAL_GHC_PKGSHADOW2) register --force shadow3.pkg >shadow3.out 2>&1
- $(LOCAL_GHC_PKGSHADOW3) list
- echo "main = return ()" >shadow.hs
-#
-# In this test, shadow-1-XXX is shadowed by shadow-1-YYY, which causes
-# shadowdep-1-XXX to be unavailable:
-#
- @echo "should FAIL:"
- '$(TEST_HC)' $(TEST_HC_OPTS) -package-conf $(PKGCONFSHADOW1) -package-conf $(PKGCONFSHADOW2) -package shadowdep -c shadow.hs -fno-code || true
-#
-# Reversing the order of the package.conf files should fix the problem:
-#
- @echo "should SUCCEED:"
- '$(TEST_HC)' $(TEST_HC_OPTS) -package-conf $(PKGCONFSHADOW2) -package-conf $(PKGCONFSHADOW1) -package shadowdep -c shadow.hs -fno-code || true
-#
-# We can also fix the problem by using an explicit -package-id flag to
-# specify a package we really want to use:
-#
- @echo "should SUCCEED:"
- '$(TEST_HC)' $(TEST_HC_OPTS) -package-conf $(PKGCONFSHADOW1) -package-conf $(PKGCONFSHADOW2) -package-id shadowdep-1-XXX -c shadow.hs -fno-code
-
-
-# -----------------------------------------------------------------------------
-# Try piping the output of "ghc-pkg describe" into "ghc-pkg update" for
-# every package we know about. This is for testing the pretty printing/parsing
-# of InstalledPackageInfo.
-
-PACKAGE_CONF_ghcpkg02 = package.conf.ghcpkg02
-GHC_PKG_ghcpkg02 = '$(GHC_PKG)' --no-user-package-conf --global-conf=$(PACKAGE_CONF_ghcpkg02)
-
-ghcpkg02:
- rm -rf $(PACKAGE_CONF_ghcpkg02)
- $(GHC_PKG_ghcpkg02) init $(PACKAGE_CONF_ghcpkg02)
- set -e; \
- for i in `$(GHC_PKG) list --global --simple-output -v0`; do \
- echo Updating $$i; \
- $(GHC_PKG) describe --global $$i | $(GHC_PKG_ghcpkg02) update --global --force -; \
- done
diff --git a/testsuite/tests/ghc-regress/cabal/all.T b/testsuite/tests/ghc-regress/cabal/all.T
deleted file mode 100644
index 2ec0fa8ff7..0000000000
--- a/testsuite/tests/ghc-regress/cabal/all.T
+++ /dev/null
@@ -1,61 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-test('ghcpkg01',
- extra_clean(['local01.package.conf',
- 'local01.package.conf.old']),
- run_command,
- ['$MAKE -s --no-print-directory ghcpkg01'])
-test('ghcpkg02',
- [ignore_output,
- extra_clean(['package.conf.ghcpkg02', 'package.conf.ghcpkg02.old'])],
- run_command,
- ['$MAKE -s --no-print-directory ghcpkg02'])
-test('ghcpkg03',
- extra_clean(['local03.package.conf',
- 'local03.package.conf.old']),
- run_command,
- ['$MAKE -s --no-print-directory ghcpkg03'])
-test('ghcpkg04',
- [ignore_output,
- extra_clean(['local04.package.conf',
- 'local04.package.conf.old'])],
- run_command,
- ['$MAKE -s --no-print-directory ghcpkg04'])
-
-# Sometimes we get spurious warnings from ghc-pkg about missing
-# haddock-interfaces; this filters them out.
-def normalise_haddock_junk( str ):
- return re.sub(r'Warning: haddock.*\n', '', str)
-
-test('ghcpkg05',
- [ extra_clean(['local05a.package.conf',
- 'local05a.package.conf.old',
- 'local05b.package.conf',
- 'local05b.package.conf.old']),
- normalise_fun(normalise_haddock_junk)
- ],
- run_command,
- ['$MAKE -s --no-print-directory ghcpkg05'])
-test('ghcpkg06',
- [extra_clean(['local06.package.conf',
- 'local06.package.conf.old'])],
- run_command,
- ['$MAKE -s --no-print-directory ghcpkg06'])
-
-# Test that we *can* compile a module that also belongs to a package
-# (this was disallowed in GHC 6.4 and earlier)
-test('pkg01', normal, compile, [''])
-
-test('1750',
- extra_clean(['1750.hs', '1750.out',
- 'local1750.package.conf',
- 'local1750.package.conf.old']),
- run_command, ['$MAKE -s --no-print-directory 1750'])
-
-test('shadow',
- extra_clean(['shadow.out', 'shadow.hs', 'shadow.hi',
- 'local1shadow1.package.conf',
- 'local1shadow1.package.conf.old',
- 'local1shadow2.package.conf',
- 'local1shadow2.package.conf.old']),
- run_command, ['$MAKE -s --no-print-directory shadow'])
diff --git a/testsuite/tests/ghc-regress/cabal/cabal01/A.hs b/testsuite/tests/ghc-regress/cabal/cabal01/A.hs
deleted file mode 100644
index c5227050f9..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal01/A.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module A where
-a = 42 :: Int
-
-main2 = print a
diff --git a/testsuite/tests/ghc-regress/cabal/cabal01/B/A.hs b/testsuite/tests/ghc-regress/cabal/cabal01/B/A.hs
deleted file mode 100644
index 3e1183b315..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal01/B/A.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module B.A where
-a = 42 :: Int
-
-main = print a
diff --git a/testsuite/tests/ghc-regress/cabal/cabal01/B/MainB.hs b/testsuite/tests/ghc-regress/cabal/cabal01/B/MainB.hs
deleted file mode 100644
index 823fb19c43..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal01/B/MainB.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Main where
-
-import A
-
-main = print a
diff --git a/testsuite/tests/ghc-regress/cabal/cabal01/MainA.hs b/testsuite/tests/ghc-regress/cabal/cabal01/MainA.hs
deleted file mode 100644
index 823fb19c43..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal01/MainA.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Main where
-
-import A
-
-main = print a
diff --git a/testsuite/tests/ghc-regress/cabal/cabal01/Makefile b/testsuite/tests/ghc-regress/cabal/cabal01/Makefile
deleted file mode 100644
index 84c2f6195f..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal01/Makefile
+++ /dev/null
@@ -1,41 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-clean:
- rm -rf setup a.out dist/build/testA
- rm -rf ,tmp dist ,tmp2
- find . -name "*.o" |xargs rm -f
- find . -name "*.hi" |xargs rm -f
- rm -fr install-tmp
- rm -fr install
- rm -f .setup-config .installed-pkg-config
- rm -rf local.db
-
-# We use the global package database as there's no easy way to tell
-# ghc-pkg (via Cabal) to use one in ., and the global one at least
-# won't affect the installed GHC and is more likely to work
-
-PREFIX := $(abspath install)
-$(eval $(call canonicalise,PREFIX))
-
-cabal01:
- $(MAKE) clean
- '$(TEST_HC)' --make -o setup Setup.lhs -v0
-
- '$(GHC_PKG)' init local.db
- ./setup configure -v0 --prefix=$(PREFIX) --with-compiler='$(TEST_HC)' --ghc-options='$(TEST_HC_OPTS)' --with-hc-pkg='$(GHC_PKG)' --package-db=local.db $(PROF)
- ./setup build -v0
- ./setup copy -v0
- echo install1:
- ls -1 install
- rm -r install
-# install w/ register!
- ./setup install -v0
- echo install2:
- ls -1 install
- ./setup sdist -v0
- echo dist:
- ls -1 dist
- if [ "$(CLEANUP)" != "" ]; then $(MAKE) clean; fi
-
diff --git a/testsuite/tests/ghc-regress/cabal/cabal01/Setup.lhs b/testsuite/tests/ghc-regress/cabal/cabal01/Setup.lhs
deleted file mode 100644
index b2dccbe310..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal01/Setup.lhs
+++ /dev/null
@@ -1,2 +0,0 @@
-> import Distribution.Simple
-> main = defaultMain
diff --git a/testsuite/tests/ghc-regress/cabal/cabal01/all.T b/testsuite/tests/ghc-regress/cabal/cabal01/all.T
deleted file mode 100644
index 299b0b8a06..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal01/all.T
+++ /dev/null
@@ -1,16 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-if config.have_profiling:
- prof = '--enable-library-profiling'
-else:
- prof = ''
-
-if default_testopts.cleanup != '':
- cleanup = 'CLEANUP=1'
-else:
- cleanup = ''
-
-test('cabal01',
- normal,
- run_command,
- ['$MAKE -s --no-print-directory cabal01 PROF=' + prof + ' ' + cleanup])
diff --git a/testsuite/tests/ghc-regress/cabal/cabal01/c_src/hello.c b/testsuite/tests/ghc-regress/cabal/cabal01/c_src/hello.c
deleted file mode 100644
index 2ae1c276eb..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal01/c_src/hello.c
+++ /dev/null
@@ -1 +0,0 @@
-int foo () {return 9;}
diff --git a/testsuite/tests/ghc-regress/cabal/cabal01/cabal01.stdout b/testsuite/tests/ghc-regress/cabal/cabal01/cabal01.stdout
deleted file mode 100644
index e828cbe68a..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal01/cabal01.stdout
+++ /dev/null
@@ -1,12 +0,0 @@
-install1:
-bin
-lib
-install2:
-bin
-lib
-dist:
-build
-package.conf.inplace
-setup-config
-src
-test-1.0.tar.gz
diff --git a/testsuite/tests/ghc-regress/cabal/cabal01/cabal01.stdout-i386-unknown-mingw32 b/testsuite/tests/ghc-regress/cabal/cabal01/cabal01.stdout-i386-unknown-mingw32
deleted file mode 100644
index 647a2324b0..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal01/cabal01.stdout-i386-unknown-mingw32
+++ /dev/null
@@ -1,12 +0,0 @@
-install1:
-bin
-test-1.0
-install2:
-bin
-test-1.0
-dist:
-build
-package.conf.inplace
-setup-config
-src
-test-1.0.tar.gz
diff --git a/testsuite/tests/ghc-regress/cabal/cabal01/hello.c b/testsuite/tests/ghc-regress/cabal/cabal01/hello.c
deleted file mode 100644
index de051f6f6b..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal01/hello.c
+++ /dev/null
@@ -1 +0,0 @@
-int main () {return 9;}
diff --git a/testsuite/tests/ghc-regress/cabal/cabal01/test.cabal b/testsuite/tests/ghc-regress/cabal/cabal01/test.cabal
deleted file mode 100644
index f49d8742da..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal01/test.cabal
+++ /dev/null
@@ -1,16 +0,0 @@
-Name: test
-Version: 1.0
-Exposed-Modules: A
-Other-Modules: B.A
-C-Sources: hello.c, c_src/hello.c
-Extensions: ForeignFunctionInterface
-Build-depends: base>=1.0
-
-Executable: testA
-Other-Modules: A, MainA
-Main-is: MainA.hs
-Extensions: OverlappingInstances
-
-Executable: testB
-Other-Modules: B.A, B.MainB
-Main-is: B/MainB.hs
diff --git a/testsuite/tests/ghc-regress/cabal/cabal02/Makefile b/testsuite/tests/ghc-regress/cabal/cabal02/Makefile
deleted file mode 100644
index 578e6fa7ed..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal02/Makefile
+++ /dev/null
@@ -1,33 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-CABAL_SETUP = $(FPTOOLS_TOP_ABS)/libraries/Cabal/cabal-setup/cabal-setup
-
-CONFIG_ARGS = --with-compiler=$(TEST_HC) --ghc-options='$(TEST_HC_OPTS)' --with-hc-pkg=$(GHC_PKG)
-
-# We have 3 packages, P-1.0, P-2.0, and Q. Q depends on P-1.0.
-# We have an executable R, that depends on P-2.0 and Q, so the resulting
-# executable will link to both P-1.0 and P-2.0.
-
-cabal02 :
- (cd P1 && $(CABAL_SETUP) configure $(CONFIG_ARGS))
- (cd P1 && $(CABAL_SETUP) build)
- (cd P1 && $(CABAL_SETUP) register --inplace --user)
- (cd P2 && $(CABAL_SETUP) configure $(CONFIG_ARGS))
- (cd P2 && $(CABAL_SETUP) build)
- (cd P2 && $(CABAL_SETUP) register --inplace --user)
- (cd Q && $(CABAL_SETUP) configure $(CONFIG_ARGS))
- (cd Q && $(CABAL_SETUP) build)
- (cd Q && $(CABAL_SETUP) register --inplace --user)
- (cd R && $(CABAL_SETUP) configure $(CONFIG_ARGS))
- (cd R && $(CABAL_SETUP) build)
- $(MAKE) clean
-
-clean ::
- (cd P1 && $(CABAL_SETUP) unregister --user)
- (cd P2 && $(CABAL_SETUP) unregister --user)
- (cd Q && $(CABAL_SETUP) unregister --user)
- (cd P1 && $(CABAL_SETUP) clean)
- (cd P2 && $(CABAL_SETUP) clean)
- (cd Q && $(CABAL_SETUP) clean)
diff --git a/testsuite/tests/ghc-regress/cabal/cabal02/P1/A.hs b/testsuite/tests/ghc-regress/cabal/cabal02/P1/A.hs
deleted file mode 100644
index 411d1dd4ef..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal02/P1/A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module A where
-
-a = 1 :: Int
diff --git a/testsuite/tests/ghc-regress/cabal/cabal02/P1/P1.cabal b/testsuite/tests/ghc-regress/cabal/cabal02/P1/P1.cabal
deleted file mode 100644
index c4b2161cea..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal02/P1/P1.cabal
+++ /dev/null
@@ -1,4 +0,0 @@
-Name: P
-Version: 1.0
-Exposed-Modules: A
-Build-depends: base>=1.0, haskell98
diff --git a/testsuite/tests/ghc-regress/cabal/cabal02/P2/A.hs b/testsuite/tests/ghc-regress/cabal/cabal02/P2/A.hs
deleted file mode 100644
index 3db5ca96ef..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal02/P2/A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module A where
-
-a = 2
diff --git a/testsuite/tests/ghc-regress/cabal/cabal02/P2/P2.cabal b/testsuite/tests/ghc-regress/cabal/cabal02/P2/P2.cabal
deleted file mode 100644
index 3991b20839..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal02/P2/P2.cabal
+++ /dev/null
@@ -1,4 +0,0 @@
-Name: P
-Version: 2.0
-Exposed-Modules: A
-Build-depends: base>=1.0, haskell98
diff --git a/testsuite/tests/ghc-regress/cabal/cabal02/Q/B.hs b/testsuite/tests/ghc-regress/cabal/cabal02/Q/B.hs
deleted file mode 100644
index 0fd13a9ff3..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal02/Q/B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module B where
-
-import A -- from package P
-
-b = a
diff --git a/testsuite/tests/ghc-regress/cabal/cabal02/Q/Q.cabal b/testsuite/tests/ghc-regress/cabal/cabal02/Q/Q.cabal
deleted file mode 100644
index e439f49175..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal02/Q/Q.cabal
+++ /dev/null
@@ -1,4 +0,0 @@
-Name: Q
-Version: 1.0
-Build-depends: base>=1.0, haskell98, P==1.0
-Exposed-modules: B
diff --git a/testsuite/tests/ghc-regress/cabal/cabal02/R/Main.hs b/testsuite/tests/ghc-regress/cabal/cabal02/R/Main.hs
deleted file mode 100644
index a6ddcdf6c1..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal02/R/Main.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-import A
-import B
-
-main = do print a; print b
diff --git a/testsuite/tests/ghc-regress/cabal/cabal02/R/R.cabal b/testsuite/tests/ghc-regress/cabal/cabal02/R/R.cabal
deleted file mode 100644
index 73c6bfc881..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal02/R/R.cabal
+++ /dev/null
@@ -1,6 +0,0 @@
-Name: R
-Version: 1.0
-Build-depends: base>=1.0, haskell98, P==2.0, Q
-
-Executable: R
-Main-is: Main.hs
diff --git a/testsuite/tests/ghc-regress/cabal/cabal02/all.T b/testsuite/tests/ghc-regress/cabal/cabal02/all.T
deleted file mode 100644
index bfa809109b..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal02/all.T
+++ /dev/null
@@ -1,8 +0,0 @@
-# cabal-setup isn't in the GHC tree any more; this test should probably
-# be moved to the cabal-setup package.
-test('cabal02',
- [skip,
- skip_if_fast,
- if_platform('i386-unknown-mingw32', expect_broken(1196))],
- run_command,
- ['$MAKE -s --no-print-directory cabal02'])
diff --git a/testsuite/tests/ghc-regress/cabal/cabal03/Makefile b/testsuite/tests/ghc-regress/cabal/cabal03/Makefile
deleted file mode 100644
index 641d27c7be..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal03/Makefile
+++ /dev/null
@@ -1,41 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-# SETUP=../Setup
-SETUP=../Setup -v0
-
-# This test is for overlapping/shadowing packages with Cabal. We
-# 1. install p-1.0 to the global DB
-# 2. install q-1.0 (depending on p-1.0) to a temporary DB
-# 3. install a differnet p-1.0 to the temp DB
-# 4. attempt to configure and buidl r, which depends on p-1.0 and q-1.0
-#
-# step 4 will elicit a warning from Cabal's configure step that the
-# packages are inconsistent, and will cause an error from GHC.
-# Currently the error message from GHC is swallowed by Cabal.
-
-cabal03: clean
- $(MAKE) clean
- '$(GHC_PKG)' init tmp.d
- '$(TEST_HC)' -v0 --make Setup
- cd p && $(SETUP) clean
- cd p && $(SETUP) configure --with-ghc='$(TEST_HC)' --ghc-options='$(TEST_HC_OPTS)' --package-db=../tmp.d --disable-optimisation --ghc-pkg-option=--force
- cd p && $(SETUP) build
- cd p && $(SETUP) register
- cd q && $(SETUP) configure --with-ghc='$(TEST_HC)' --ghc-options='$(TEST_HC_OPTS)' --package-db=../tmp.d --ghc-pkg-option=--force
- cd q && $(SETUP) build
- cd q && $(SETUP) register
- cd p && $(SETUP) clean
- cd p && $(SETUP) configure --with-ghc='$(TEST_HC)' --ghc-options='$(TEST_HC_OPTS)' --package-db=../tmp.d --ghc-pkg-option=--force
- cd p && $(SETUP) build
- cd p && $(SETUP) register
- cd r && ! ../Setup configure --with-ghc='$(TEST_HC)' --ghc-options='$(TEST_HC_OPTS)' --package-db=../tmp.d --ghc-pkg-option=--force
-ifneq "$(CLEANUP)" ""
- $(MAKE) clean
-endif
-
-clean :
- '$(GHC_PKG)' unregister --force p >/dev/null 2>&1 || true
- '$(GHC_PKG)' unregister --force q >/dev/null 2>&1 || true
- $(RM) -r tmp.d *.o *.hi */*.o */*.hi */Setup$(exeext) */dist Setup$(exeext)
diff --git a/testsuite/tests/ghc-regress/cabal/cabal03/Setup.lhs b/testsuite/tests/ghc-regress/cabal/cabal03/Setup.lhs
deleted file mode 100644
index b2dccbe310..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal03/Setup.lhs
+++ /dev/null
@@ -1,2 +0,0 @@
-> import Distribution.Simple
-> main = defaultMain
diff --git a/testsuite/tests/ghc-regress/cabal/cabal03/all.T b/testsuite/tests/ghc-regress/cabal/cabal03/all.T
deleted file mode 100644
index 01d3882a84..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal03/all.T
+++ /dev/null
@@ -1,9 +0,0 @@
-if default_testopts.cleanup != '':
- cleanup = 'CLEANUP=1'
-else:
- cleanup = ''
-
-test('cabal03',
- ignore_output,
- run_command,
- ['$MAKE -s --no-print-directory cabal03 ' + cleanup])
diff --git a/testsuite/tests/ghc-regress/cabal/cabal03/p/P.hs b/testsuite/tests/ghc-regress/cabal/cabal03/p/P.hs
deleted file mode 100644
index 801fa390bd..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal03/p/P.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module P (p) where
-p = ()
-
diff --git a/testsuite/tests/ghc-regress/cabal/cabal03/p/p.cabal b/testsuite/tests/ghc-regress/cabal/cabal03/p/p.cabal
deleted file mode 100644
index 5ef93a0b92..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal03/p/p.cabal
+++ /dev/null
@@ -1,5 +0,0 @@
-name: p
-version: 1.0
-exposed-modules: P
-build-depends: base
-build-type: Simple
diff --git a/testsuite/tests/ghc-regress/cabal/cabal03/q/q.cabal b/testsuite/tests/ghc-regress/cabal/cabal03/q/q.cabal
deleted file mode 100644
index 691e60b623..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal03/q/q.cabal
+++ /dev/null
@@ -1,5 +0,0 @@
-name: q
-version: 1.0
-build-depends: p
-exposed-modules:
-build-type: Simple
diff --git a/testsuite/tests/ghc-regress/cabal/cabal03/r/r.cabal b/testsuite/tests/ghc-regress/cabal/cabal03/r/r.cabal
deleted file mode 100644
index b874bb4e15..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal03/r/r.cabal
+++ /dev/null
@@ -1,5 +0,0 @@
-name: r
-version: 1.0
-build-depends: p, q
-exposed-modules:
-build-type: Simple
diff --git a/testsuite/tests/ghc-regress/cabal/cabal04/Library.hs b/testsuite/tests/ghc-regress/cabal/cabal04/Library.hs
deleted file mode 100644
index e21ed20bdf..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal04/Library.hs
+++ /dev/null
@@ -1,6 +0,0 @@
- {-# LANGUAGE TemplateHaskell #-}
- module Library where
-
-import TH
-
-main = print ($(spliceMe) [1, 2])
diff --git a/testsuite/tests/ghc-regress/cabal/cabal04/Makefile b/testsuite/tests/ghc-regress/cabal/cabal04/Makefile
deleted file mode 100644
index 3c6a73cb1b..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal04/Makefile
+++ /dev/null
@@ -1,23 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-SETUP=./Setup -v0
-
-# This tests that we can build a Cabal package that uses TH with both
-# profiling and dynamic linking. (#3604)
-
-cabal04:
- $(MAKE) clean
- '$(TEST_HC)' -v0 --make Setup
- $(SETUP) clean
- $(SETUP) configure --with-ghc='$(TEST_HC)' --ghc-options='$(TEST_HC_OPTS)' $(PROF) $(DYN)
- $(SETUP) build 2> err
- ! grep -v "Creating library file" err
-ifneq "$(CLEANUP)" ""
- $(MAKE) clean
-endif
-
-clean :
- $(RM) -r *.o *.hi dist Setup$(exeext) err
-
diff --git a/testsuite/tests/ghc-regress/cabal/cabal04/Setup.lhs b/testsuite/tests/ghc-regress/cabal/cabal04/Setup.lhs
deleted file mode 100644
index b2dccbe310..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal04/Setup.lhs
+++ /dev/null
@@ -1,2 +0,0 @@
-> import Distribution.Simple
-> main = defaultMain
diff --git a/testsuite/tests/ghc-regress/cabal/cabal04/TH.hs b/testsuite/tests/ghc-regress/cabal/cabal04/TH.hs
deleted file mode 100644
index 8719c7d550..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal04/TH.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module TH where
-
-import Language.Haskell.TH
-
-spliceMe = [| (\xs -> tail xs ++ init xs) |]
diff --git a/testsuite/tests/ghc-regress/cabal/cabal04/all.T b/testsuite/tests/ghc-regress/cabal/cabal04/all.T
deleted file mode 100644
index 81c11f12b5..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal04/all.T
+++ /dev/null
@@ -1,21 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-if config.have_profiling:
- prof = '--enable-library-profiling'
-else:
- prof = ''
-
-if config.have_shared_libs:
- dyn = '--enable-shared'
-else:
- dyn = ''
-
-if default_testopts.cleanup != '':
- cleanup = 'CLEANUP=1'
-else:
- cleanup = ''
-
-test('cabal04',
- normal,
- run_command,
- ['$MAKE -s --no-print-directory cabal04 PROF=' + prof + ' DYN=' + dyn + ' ' + cleanup])
diff --git a/testsuite/tests/ghc-regress/cabal/cabal04/thtest.cabal b/testsuite/tests/ghc-regress/cabal/cabal04/thtest.cabal
deleted file mode 100644
index 73d63ca236..0000000000
--- a/testsuite/tests/ghc-regress/cabal/cabal04/thtest.cabal
+++ /dev/null
@@ -1,11 +0,0 @@
-name: thtest
-version: 1.0
-cabal-version: >= 1.2
-build-type: Simple
-
-library {
- build-depends: base, template-haskell
- extensions: TemplateHaskell
- exposed-modules: Library
- other-modules: TH
-}
diff --git a/testsuite/tests/ghc-regress/cabal/ghcpkg01.stderr b/testsuite/tests/ghc-regress/cabal/ghcpkg01.stderr
deleted file mode 100644
index 585c7aaa83..0000000000
--- a/testsuite/tests/ghc-regress/cabal/ghcpkg01.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-ghc-pkg: unregistering testpkg-2.0 would break the following packages: testpkg-3.0 (use --force to override)
-testpkg-3.0: dependency "testpkg-2.0-XXX" doesn't exist (use --force to override)
diff --git a/testsuite/tests/ghc-regress/cabal/ghcpkg01.stdout b/testsuite/tests/ghc-regress/cabal/ghcpkg01.stdout
deleted file mode 100644
index fb3ecdf6e8..0000000000
--- a/testsuite/tests/ghc-regress/cabal/ghcpkg01.stdout
+++ /dev/null
@@ -1,223 +0,0 @@
-local01.package.conf:
-
-Reading package info from "test.pkg" ... done.
-name: testpkg
-version: 1.2.3.4
-id: testpkg-1.2.3.4-XXX
-license: BSD3
-copyright: (c) The Univsersity of Glasgow 2004
-maintainer: glasgow-haskell-users@haskell.org
-stability: stable
-homepage: http://www.haskell.org/ghc
-package-url: http://www.haskell.org/ghc
-synopsis:
-description: A Test Package
-category: none
-author: simonmar@microsoft.com
-exposed: True
-exposed-modules: A
-hidden-modules: B C.D
-trusted: False
-import-dirs: /usr/local/lib/testpkg "c:/Program Files/testpkg"
-library-dirs: /usr/local/lib/testpkg "c:/Program Files/testpkg"
-hs-libraries: testpkg-1.2.3.4
-extra-libraries:
-extra-ghci-libraries:
-include-dirs: /usr/local/include/testpkg "c:/Program Files/testpkg"
-includes:
-depends:
-hugs-options:
-cc-options:
-ld-options:
-framework-dirs:
-frameworks:
-haddock-interfaces:
-haddock-html:
-pkgroot:
-
-name: testpkg
-version: 1.2.3.4
-id: testpkg-1.2.3.4-XXX
-license: BSD3
-copyright: (c) The Univsersity of Glasgow 2004
-maintainer: glasgow-haskell-users@haskell.org
-stability: stable
-homepage: http://www.haskell.org/ghc
-package-url: http://www.haskell.org/ghc
-synopsis:
-description: A Test Package
-category: none
-author: simonmar@microsoft.com
-exposed: True
-exposed-modules: A
-hidden-modules: B C.D
-trusted: False
-import-dirs: /usr/local/lib/testpkg "c:/Program Files/testpkg"
-library-dirs: /usr/local/lib/testpkg "c:/Program Files/testpkg"
-hs-libraries: testpkg-1.2.3.4
-extra-libraries:
-extra-ghci-libraries:
-include-dirs: /usr/local/include/testpkg "c:/Program Files/testpkg"
-includes:
-depends:
-hugs-options:
-cc-options:
-ld-options:
-framework-dirs:
-frameworks:
-haddock-interfaces:
-haddock-html:
-pkgroot:
-
-import-dirs: /usr/local/lib/testpkg "c:/Program Files/testpkg"
-Reading package info from "test2.pkg" ... done.
-local01.package.conf:
- testpkg-1.2.3.4
- (testpkg-2.0)
-
-name: testpkg
-version: 2.0
-id: testpkg-2.0-XXX
-license: BSD3
-copyright: (c) The Univsersity of Glasgow 2004
-maintainer: glasgow-haskell-users@haskell.org
-stability: unstable
-homepage: http://www.haskell.org/ghc
-package-url: http://www.haskell.org/ghc
-synopsis:
-description: A Test Package (new version)
-category: none
-author: simonmar@microsoft.com
-exposed: False
-exposed-modules: A
-hidden-modules: B C.D C.E
-trusted: False
-import-dirs: /usr/local/lib/testpkg "c:/Program Files/testpkg"
-library-dirs: /usr/local/lib/testpkg "c:/Program Files/testpkg"
-hs-libraries: testpkg-2.0
-extra-libraries:
-extra-ghci-libraries:
-include-dirs: /usr/local/include/testpkg "c:/Program Files/testpkg"
-includes:
-depends:
-hugs-options:
-cc-options:
-ld-options:
-framework-dirs:
-frameworks:
-haddock-interfaces:
-haddock-html:
-pkgroot:
-
-name: testpkg
-version: 2.0
-id: testpkg-2.0-XXX
-license: BSD3
-copyright: (c) The Univsersity of Glasgow 2004
-maintainer: glasgow-haskell-users@haskell.org
-stability: unstable
-homepage: http://www.haskell.org/ghc
-package-url: http://www.haskell.org/ghc
-synopsis:
-description: A Test Package (new version)
-category: none
-author: simonmar@microsoft.com
-exposed: False
-exposed-modules: A
-hidden-modules: B C.D C.E
-trusted: False
-import-dirs: /usr/local/lib/testpkg "c:/Program Files/testpkg"
-library-dirs: /usr/local/lib/testpkg "c:/Program Files/testpkg"
-hs-libraries: testpkg-2.0
-extra-libraries:
-extra-ghci-libraries:
-include-dirs: /usr/local/include/testpkg "c:/Program Files/testpkg"
-includes:
-depends:
-hugs-options:
-cc-options:
-ld-options:
-framework-dirs:
-frameworks:
-haddock-interfaces:
-haddock-html:
-pkgroot:
----
-name: testpkg
-version: 1.2.3.4
-id: testpkg-1.2.3.4-XXX
-license: BSD3
-copyright: (c) The Univsersity of Glasgow 2004
-maintainer: glasgow-haskell-users@haskell.org
-stability: stable
-homepage: http://www.haskell.org/ghc
-package-url: http://www.haskell.org/ghc
-synopsis:
-description: A Test Package
-category: none
-author: simonmar@microsoft.com
-exposed: True
-exposed-modules: A
-hidden-modules: B C.D
-trusted: False
-import-dirs: /usr/local/lib/testpkg "c:/Program Files/testpkg"
-library-dirs: /usr/local/lib/testpkg "c:/Program Files/testpkg"
-hs-libraries: testpkg-1.2.3.4
-extra-libraries:
-extra-ghci-libraries:
-include-dirs: /usr/local/include/testpkg "c:/Program Files/testpkg"
-includes:
-depends:
-hugs-options:
-cc-options:
-ld-options:
-framework-dirs:
-frameworks:
-haddock-interfaces:
-haddock-html:
-pkgroot:
-
-version: 2.0
-version: 1.2.3.4
-exposed: False
-exposed: True
-exposed: False
-exposed: False
-Reading package info from "test3.pkg" ... done.
-name: testpkg
-version: 1.2.3.4
-id: testpkg-1.2.3.4-XXX
-license: BSD3
-copyright: (c) The Univsersity of Glasgow 2004
-maintainer: glasgow-haskell-users@haskell.org
-stability: stable
-homepage: http://www.haskell.org/ghc
-package-url: http://www.haskell.org/ghc
-synopsis:
-description: A Test Package
-category: none
-author: simonmar@microsoft.com
-exposed: False
-exposed-modules: A
-hidden-modules: B C.D
-trusted: False
-import-dirs: /usr/local/lib/testpkg "c:/Program Files/testpkg"
-library-dirs: /usr/local/lib/testpkg "c:/Program Files/testpkg"
-hs-libraries: testpkg-1.2.3.4
-extra-libraries:
-extra-ghci-libraries:
-include-dirs: /usr/local/include/testpkg "c:/Program Files/testpkg"
-includes:
-depends:
-hugs-options:
-cc-options:
-ld-options:
-framework-dirs:
-frameworks:
-haddock-interfaces:
-haddock-html:
-pkgroot:
-
-local01.package.conf:
-
-Reading package info from "test3.pkg" ... done.
diff --git a/testsuite/tests/ghc-regress/cabal/ghcpkg03.stderr b/testsuite/tests/ghc-regress/cabal/ghcpkg03.stderr
deleted file mode 100644
index f30d7fd1e8..0000000000
--- a/testsuite/tests/ghc-regress/cabal/ghcpkg03.stderr
+++ /dev/null
@@ -1,31 +0,0 @@
-testpkg-1.2.3.4: Warning: library-dirs: /usr/local/lib/testpkg doesn't exist or isn't a directory
-testpkg-1.2.3.4: Warning: include-dirs: /usr/local/include/testpkg doesn't exist or isn't a directory
-testpkg-1.2.3.4: import-dirs: /usr/local/lib/testpkg doesn't exist or isn't a directory (ignoring)
-testpkg-1.2.3.4: import-dirs: c:/Program Files/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-1.2.3.4: library-dirs: c:/Program Files/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-1.2.3.4: include-dirs: c:/Program Files/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-1.2.3.4: file A.hi is missing (ignoring)
-testpkg-1.2.3.4: file B.hi is missing (ignoring)
-testpkg-1.2.3.4: file C/D.hi is missing (ignoring)
-testpkg-1.2.3.4: cannot find libtestpkg-1.2.3.4.a on library path (ignoring)
-testpkg-2.0: Warning: library-dirs: /usr/local/lib/testpkg doesn't exist or isn't a directory
-testpkg-2.0: Warning: include-dirs: /usr/local/include/testpkg doesn't exist or isn't a directory
-testpkg-2.0: import-dirs: /usr/local/lib/testpkg doesn't exist or isn't a directory (ignoring)
-testpkg-2.0: import-dirs: c:/Program Files/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-2.0: library-dirs: c:/Program Files/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-2.0: include-dirs: c:/Program Files/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-2.0: file A.hi is missing (ignoring)
-testpkg-2.0: file B.hi is missing (ignoring)
-testpkg-2.0: file C/D.hi is missing (ignoring)
-testpkg-2.0: file C/E.hi is missing (ignoring)
-testpkg-2.0: cannot find libtestpkg-2.0.a on library path (ignoring)
-testpkg-1.2.3.4: Warning: library-dirs: /usr/local/lib/testpkg doesn't exist or isn't a directory
-testpkg-1.2.3.4: Warning: include-dirs: /usr/local/include/testpkg doesn't exist or isn't a directory
-testpkg-1.2.3.4: import-dirs: /usr/local/lib/testpkg doesn't exist or isn't a directory (ignoring)
-testpkg-1.2.3.4: import-dirs: c:/Program Files/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-1.2.3.4: library-dirs: c:/Program Files/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-1.2.3.4: include-dirs: c:/Program Files/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-1.2.3.4: file A.hi is missing (ignoring)
-testpkg-1.2.3.4: file B.hi is missing (ignoring)
-testpkg-1.2.3.4: file C/D.hi is missing (ignoring)
-testpkg-1.2.3.4: cannot find libtestpkg-1.2.3.4.a on library path (ignoring)
diff --git a/testsuite/tests/ghc-regress/cabal/ghcpkg03.stderr-i386-unknown-mingw32 b/testsuite/tests/ghc-regress/cabal/ghcpkg03.stderr-i386-unknown-mingw32
deleted file mode 100644
index 71ff88a16b..0000000000
--- a/testsuite/tests/ghc-regress/cabal/ghcpkg03.stderr-i386-unknown-mingw32
+++ /dev/null
@@ -1,31 +0,0 @@
-testpkg-1.2.3.4: Warning: library-dirs: c:/Program Files/testpkg doesn't exist or isn't a directory
-testpkg-1.2.3.4: Warning: include-dirs: c:/Program Files/testpkg doesn't exist or isn't a directory
-testpkg-1.2.3.4: import-dirs: /usr/local/lib/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-1.2.3.4: import-dirs: c:/Program Files/testpkg doesn't exist or isn't a directory (ignoring)
-testpkg-1.2.3.4: library-dirs: /usr/local/lib/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-1.2.3.4: include-dirs: /usr/local/include/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-1.2.3.4: file A.hi is missing (ignoring)
-testpkg-1.2.3.4: file B.hi is missing (ignoring)
-testpkg-1.2.3.4: file C\D.hi is missing (ignoring)
-testpkg-1.2.3.4: cannot find libtestpkg-1.2.3.4.a on library path (ignoring)
-testpkg-2.0: Warning: library-dirs: c:/Program Files/testpkg doesn't exist or isn't a directory
-testpkg-2.0: Warning: include-dirs: c:/Program Files/testpkg doesn't exist or isn't a directory
-testpkg-2.0: import-dirs: /usr/local/lib/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-2.0: import-dirs: c:/Program Files/testpkg doesn't exist or isn't a directory (ignoring)
-testpkg-2.0: library-dirs: /usr/local/lib/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-2.0: include-dirs: /usr/local/include/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-2.0: file A.hi is missing (ignoring)
-testpkg-2.0: file B.hi is missing (ignoring)
-testpkg-2.0: file C\D.hi is missing (ignoring)
-testpkg-2.0: file C\E.hi is missing (ignoring)
-testpkg-2.0: cannot find libtestpkg-2.0.a on library path (ignoring)
-testpkg-1.2.3.4: Warning: library-dirs: c:/Program Files/testpkg doesn't exist or isn't a directory
-testpkg-1.2.3.4: Warning: include-dirs: c:/Program Files/testpkg doesn't exist or isn't a directory
-testpkg-1.2.3.4: import-dirs: /usr/local/lib/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-1.2.3.4: import-dirs: c:/Program Files/testpkg doesn't exist or isn't a directory (ignoring)
-testpkg-1.2.3.4: library-dirs: /usr/local/lib/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-1.2.3.4: include-dirs: /usr/local/include/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}. (ignoring)
-testpkg-1.2.3.4: file A.hi is missing (ignoring)
-testpkg-1.2.3.4: file B.hi is missing (ignoring)
-testpkg-1.2.3.4: file C\D.hi is missing (ignoring)
-testpkg-1.2.3.4: cannot find libtestpkg-1.2.3.4.a on library path (ignoring)
diff --git a/testsuite/tests/ghc-regress/cabal/ghcpkg03.stdout b/testsuite/tests/ghc-regress/cabal/ghcpkg03.stdout
deleted file mode 100644
index 9f148b82e4..0000000000
--- a/testsuite/tests/ghc-regress/cabal/ghcpkg03.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-Reading package info from "test.pkg" ... done.
-Reading package info from "test2.pkg" ... done.
-Reading package info from "test4.pkg" ... done.
-Reading package info from "test4.pkg" ... done.
-Reading package info from "test.pkg" ... done.
diff --git a/testsuite/tests/ghc-regress/cabal/ghcpkg04.hs b/testsuite/tests/ghc-regress/cabal/ghcpkg04.hs
deleted file mode 100644
index 9da260a695..0000000000
--- a/testsuite/tests/ghc-regress/cabal/ghcpkg04.hs
+++ /dev/null
@@ -1 +0,0 @@
-import A
diff --git a/testsuite/tests/ghc-regress/cabal/ghcpkg04.stderr b/testsuite/tests/ghc-regress/cabal/ghcpkg04.stderr
deleted file mode 100644
index 29a912b991..0000000000
--- a/testsuite/tests/ghc-regress/cabal/ghcpkg04.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-ghcpkg04.hs:1:0:
- Failed to load interface for `A':
- it was found in multiple packages: testpkg-1.2.3.4 newtestpkg-2.0
diff --git a/testsuite/tests/ghc-regress/cabal/ghcpkg05.stderr b/testsuite/tests/ghc-regress/cabal/ghcpkg05.stderr
deleted file mode 100644
index 5d30ba0381..0000000000
--- a/testsuite/tests/ghc-regress/cabal/ghcpkg05.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-There are problems in package testpkg-2.0:
- Warning: library-dirs: /usr/local/lib/testpkg doesn't exist or isn't a directory
- Warning: include-dirs: /usr/local/include/testpkg doesn't exist or isn't a directory
- import-dirs: /usr/local/lib/testpkg doesn't exist or isn't a directory
- import-dirs: c:/Program Files/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}.
- library-dirs: c:/Program Files/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}.
- include-dirs: c:/Program Files/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}.
- file A.hi is missing
- file B.hi is missing
- file C/D.hi is missing
- file C/E.hi is missing
- cannot find libtestpkg-2.0.a on library path
-
-The following packages are broken, either because they have a problem
-listed above, or because they depend on a broken package.
-testpkg-2.0
-testpkg-3.0
-ghc-pkg: unregistering testpkg-2.0 would break the following packages: testpkg-3.0 (use --force to override)
diff --git a/testsuite/tests/ghc-regress/cabal/ghcpkg05.stderr-i386-unknown-mingw32 b/testsuite/tests/ghc-regress/cabal/ghcpkg05.stderr-i386-unknown-mingw32
deleted file mode 100644
index 360783bd78..0000000000
--- a/testsuite/tests/ghc-regress/cabal/ghcpkg05.stderr-i386-unknown-mingw32
+++ /dev/null
@@ -1,18 +0,0 @@
-There are problems in package testpkg-2.0:
- Warning: library-dirs: c:/Program Files/testpkg doesn't exist or isn't a directory
- Warning: include-dirs: c:/Program Files/testpkg doesn't exist or isn't a directory
- import-dirs: /usr/local/lib/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}.
- import-dirs: c:/Program Files/testpkg doesn't exist or isn't a directory
- library-dirs: /usr/local/lib/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}.
- include-dirs: /usr/local/include/testpkg is a relative path which makes no sense (as there is nothing for it to be relative to). You can make paths relative to the package database itself by using ${pkgroot}.
- file A.hi is missing
- file B.hi is missing
- file C\D.hi is missing
- file C\E.hi is missing
- cannot find libtestpkg-2.0.a on library path
-
-The following packages are broken, either because they have a problem
-listed above, or because they depend on a broken package.
-testpkg-2.0
-testpkg-3.0
-ghc-pkg.exe: unregistering testpkg-2.0 would break the following packages: testpkg-3.0 (use --force to override)
diff --git a/testsuite/tests/ghc-regress/cabal/ghcpkg05.stdout b/testsuite/tests/ghc-regress/cabal/ghcpkg05.stdout
deleted file mode 100644
index f89d332351..0000000000
--- a/testsuite/tests/ghc-regress/cabal/ghcpkg05.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-local05a.package.conf:
- (testpkg-2.0)
-
-local05b.package.conf:
- (testpkg-3.0)
-
diff --git a/testsuite/tests/ghc-regress/cabal/ghcpkg06.stderr b/testsuite/tests/ghc-regress/cabal/ghcpkg06.stderr
deleted file mode 100644
index d33eef7b8e..0000000000
--- a/testsuite/tests/ghc-regress/cabal/ghcpkg06.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-testdup-1.0: package has duplicate dependencies: testpkg-1.2.3.4-XXX (use --force to override)
-testdup-1.0: package has duplicate dependencies: testpkg-1.2.3.4-XXX (ignoring)
diff --git a/testsuite/tests/ghc-regress/cabal/ghcpkg06.stdout b/testsuite/tests/ghc-regress/cabal/ghcpkg06.stdout
deleted file mode 100644
index 3bc1858b6a..0000000000
--- a/testsuite/tests/ghc-regress/cabal/ghcpkg06.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Reading package info from "testdup.pkg" ... done.
-Reading package info from "testdup.pkg" ... done.
diff --git a/testsuite/tests/ghc-regress/cabal/pkg01.hs b/testsuite/tests/ghc-regress/cabal/pkg01.hs
deleted file mode 100644
index b06b8e0276..0000000000
--- a/testsuite/tests/ghc-regress/cabal/pkg01.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Data.Map where
--- conflicts with module from containers package
-import Data.Set
diff --git a/testsuite/tests/ghc-regress/cabal/pkg01.stderr b/testsuite/tests/ghc-regress/cabal/pkg01.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/cabal/pkg01.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/cabal/pkg02/A.hs b/testsuite/tests/ghc-regress/cabal/pkg02/A.hs
deleted file mode 100644
index fa288c35e6..0000000000
--- a/testsuite/tests/ghc-regress/cabal/pkg02/A.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module A where
-import Foreign -- a local module
-import Foreign.C -- a package module
-
-y = Foreign.x
diff --git a/testsuite/tests/ghc-regress/cabal/pkg02/Foreign.hs b/testsuite/tests/ghc-regress/cabal/pkg02/Foreign.hs
deleted file mode 100644
index 3970ce1896..0000000000
--- a/testsuite/tests/ghc-regress/cabal/pkg02/Foreign.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module Foreign (x) where
-x = "test"
diff --git a/testsuite/tests/ghc-regress/cabal/pkg02/Makefile b/testsuite/tests/ghc-regress/cabal/pkg02/Makefile
deleted file mode 100644
index 50191fd8b9..0000000000
--- a/testsuite/tests/ghc-regress/cabal/pkg02/Makefile
+++ /dev/null
@@ -1,4 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
diff --git a/testsuite/tests/ghc-regress/cabal/pkg02/all.T b/testsuite/tests/ghc-regress/cabal/pkg02/all.T
deleted file mode 100644
index b3dfecc0b5..0000000000
--- a/testsuite/tests/ghc-regress/cabal/pkg02/all.T
+++ /dev/null
@@ -1,10 +0,0 @@
-# This used to be a test for conflicting module names, but the error
-# case that it was testing for went away (conflicting module names in
-# separate packages are allowed). Now it is a straightforward test
-# for shadowing: the local Foreign module shadows the base package
-# one.
-test('pkg02',
- [extra_clean(['A.o', 'A.hi', 'Foreign.o', 'Foreign.hi'])],
- multimod_compile,
- ['A','-v0'])
-
diff --git a/testsuite/tests/ghc-regress/cabal/pkg02/pkg02.stderr b/testsuite/tests/ghc-regress/cabal/pkg02/pkg02.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/cabal/pkg02/pkg02.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/cabal/shadow.stderr b/testsuite/tests/ghc-regress/cabal/shadow.stderr
deleted file mode 100644
index a0a38cde22..0000000000
--- a/testsuite/tests/ghc-regress/cabal/shadow.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-<command line>: cannot satisfy -package shadowdep:
- shadowdep-1-XXX is unusable due to missing or recursive dependencies:
- shadow-1-XXX
- (use -v for more information)
diff --git a/testsuite/tests/ghc-regress/cabal/shadow.stdout b/testsuite/tests/ghc-regress/cabal/shadow.stdout
deleted file mode 100644
index 0d14e9cb8a..0000000000
--- a/testsuite/tests/ghc-regress/cabal/shadow.stdout
+++ /dev/null
@@ -1,10 +0,0 @@
-localshadow1.package.conf:
- (shadow-1)
- (shadowdep-1)
-
-localshadow2.package.conf:
- (shadow-1)
-
-should FAIL:
-should SUCCEED:
-should SUCCEED:
diff --git a/testsuite/tests/ghc-regress/cabal/shadow1.pkg b/testsuite/tests/ghc-regress/cabal/shadow1.pkg
deleted file mode 100644
index 7bf047f3d2..0000000000
--- a/testsuite/tests/ghc-regress/cabal/shadow1.pkg
+++ /dev/null
@@ -1,4 +0,0 @@
-name: shadow
-version: 1
-id: shadow-1-XXX
-depends:
diff --git a/testsuite/tests/ghc-regress/cabal/shadow2.pkg b/testsuite/tests/ghc-regress/cabal/shadow2.pkg
deleted file mode 100644
index b720dc9479..0000000000
--- a/testsuite/tests/ghc-regress/cabal/shadow2.pkg
+++ /dev/null
@@ -1,4 +0,0 @@
-name: shadowdep
-version: 1
-id: shadowdep-1-XXX
-depends: shadow-1-XXX
diff --git a/testsuite/tests/ghc-regress/cabal/shadow3.pkg b/testsuite/tests/ghc-regress/cabal/shadow3.pkg
deleted file mode 100644
index 933ed3f67d..0000000000
--- a/testsuite/tests/ghc-regress/cabal/shadow3.pkg
+++ /dev/null
@@ -1,4 +0,0 @@
-name: shadow
-version: 1
-id: shadow-1-YYY
-depends:
diff --git a/testsuite/tests/ghc-regress/cabal/test.pkg b/testsuite/tests/ghc-regress/cabal/test.pkg
deleted file mode 100644
index 02a07ab7b6..0000000000
--- a/testsuite/tests/ghc-regress/cabal/test.pkg
+++ /dev/null
@@ -1,19 +0,0 @@
-name: testpkg
-version: 1.2.3.4
-id: testpkg-1.2.3.4-XXX
-license: BSD3
-copyright: (c) The Univsersity of Glasgow 2004
-maintainer: glasgow-haskell-users@haskell.org
-stability: stable
-homepage: http://www.haskell.org/ghc
-package-url: http://www.haskell.org/ghc
-description: A Test Package
-category: none
-author: simonmar@microsoft.com
-exposed: True
-exposed-modules: A
-hidden-modules: B, "C.D"
-import-dirs: /usr/local/lib/testpkg, "c:/Program Files/testpkg"
-library-dirs: /usr/local/lib/testpkg, "c:/Program Files/testpkg"
-include-dirs: /usr/local/include/testpkg, "c:/Program Files/testpkg"
-hs-libraries: testpkg-1.2.3.4
diff --git a/testsuite/tests/ghc-regress/cabal/test2.pkg b/testsuite/tests/ghc-regress/cabal/test2.pkg
deleted file mode 100644
index a6d28d629a..0000000000
--- a/testsuite/tests/ghc-regress/cabal/test2.pkg
+++ /dev/null
@@ -1,19 +0,0 @@
-name: "testpkg"
-version: 2.0
-id: testpkg-2.0-XXX
-license: BSD3
-copyright: (c) The Univsersity of Glasgow 2004
-maintainer: glasgow-haskell-users@haskell.org
-stability: unstable
-homepage: http://www.haskell.org/ghc
-package-url: http://www.haskell.org/ghc
-description: A Test Package (new version)
-category: none
-author: simonmar@microsoft.com
-exposed: False
-exposed-modules: A
-hidden-modules: B, "C.D", "C.E"
-import-dirs: /usr/local/lib/testpkg, "c:/Program Files/testpkg"
-library-dirs: /usr/local/lib/testpkg, "c:/Program Files/testpkg"
-include-dirs: /usr/local/include/testpkg, "c:/Program Files/testpkg"
-hs-libraries: testpkg-2.0
diff --git a/testsuite/tests/ghc-regress/cabal/test3.pkg b/testsuite/tests/ghc-regress/cabal/test3.pkg
deleted file mode 100644
index 6d3257126b..0000000000
--- a/testsuite/tests/ghc-regress/cabal/test3.pkg
+++ /dev/null
@@ -1,19 +0,0 @@
-name: "testpkg"
-version: 3.0
-id: testpkg-3.0-XXX
-license: BSD3
-copyright: (c) The Univsersity of Glasgow 2004
-maintainer: glasgow-haskell-users@haskell.org
-stability: unstable
-homepage: http://www.haskell.org/ghc
-package-url: http://www.haskell.org/ghc
-description: A Test Package (failure)
-category: none
-author: simonmar@microsoft.com
-exposed: False
-exposed-modules:
-hidden-modules:
-import-dirs:
-library-dirs:
-hs-libraries:
-depends: testpkg-2.0-XXX
diff --git a/testsuite/tests/ghc-regress/cabal/test4.pkg b/testsuite/tests/ghc-regress/cabal/test4.pkg
deleted file mode 100644
index 598559a80f..0000000000
--- a/testsuite/tests/ghc-regress/cabal/test4.pkg
+++ /dev/null
@@ -1,19 +0,0 @@
-name: "testpkg"
-version: 4.0
-id: testpkg-4.0-XXX
-license: BSD3
-copyright: (c) The Univsersity of Glasgow 2004
-maintainer: glasgow-haskell-users@haskell.org
-stability: unstable
-homepage: http://www.haskell.org/ghc
-package-url: http://www.haskell.org/ghc
-description: A Test Package (failure)
-category: none
-author: simonmar@microsoft.com
-exposed: True
-exposed-modules:
-hidden-modules:
-import-dirs:
-library-dirs:
-hs-libraries:
-depends: testpkg-2.0-XXX
diff --git a/testsuite/tests/ghc-regress/cabal/test5.pkg b/testsuite/tests/ghc-regress/cabal/test5.pkg
deleted file mode 100644
index fc27bc9ba5..0000000000
--- a/testsuite/tests/ghc-regress/cabal/test5.pkg
+++ /dev/null
@@ -1,18 +0,0 @@
-name: "newtestpkg"
-version: 2.0
-id: newtestpkg-2.0-XXX
-license: BSD3
-copyright: (c) The Univsersity of Glasgow 2004
-maintainer: glasgow-haskell-users@haskell.org
-stability: unstable
-homepage: http://www.haskell.org/ghc
-package-url: http://www.haskell.org/ghc
-description: A Test Package (new version)
-category: none
-author: simonmar@microsoft.com
-exposed: True
-exposed-modules: A
-hidden-modules: B, "C.D", "C.E"
-import-dirs: /usr/local/lib/testpkg, "c:/Program Files/testpkg"
-library-dirs: /usr/local/lib/testpkg, "c:/Program Files/testpkg"
-hs-libraries: testpkg-2.0
diff --git a/testsuite/tests/ghc-regress/cabal/testdup.pkg b/testsuite/tests/ghc-regress/cabal/testdup.pkg
deleted file mode 100644
index 77000eda27..0000000000
--- a/testsuite/tests/ghc-regress/cabal/testdup.pkg
+++ /dev/null
@@ -1,5 +0,0 @@
-name: testdup
-version: 1.0
-id: testdup-1.0-XXX
-license: BSD3
-depends: testpkg-1.2.3.4-XXX testpkg-1.2.3.4-XXX
diff --git a/testsuite/tests/ghc-regress/codeGen/Makefile b/testsuite/tests/ghc-regress/codeGen/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/1916.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/1916.hs
deleted file mode 100644
index 7210aaf41c..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/1916.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Bug (tst) where
-tst :: Float -> Bool
-tst x = truncate x > (0::Int)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/2388.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/2388.hs
deleted file mode 100644
index f3364f5b6e..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/2388.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-module Q where
-
-import Data.Bits
-import Data.Word
-import Data.Int
-
-test1 :: Word32 -> Char
-test1 w | w .&. 0x80000000 /= 0 = 'a'
-test1 _ = 'b'
-
--- this should use a testq instruction on x86_64
-test2 :: Int64 -> Char
-test2 w | w .&. (-3) /= 0 = 'a'
-test2 _ = 'b'
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/2578.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/2578.hs
deleted file mode 100644
index c851b54f88..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/2578.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-
-{-# LANGUAGE EmptyDataDecls #-}
-
--- This used to give warnings:
--- ld: atom sorting error for _Main_MyType_closure_tbl and _Main_MyType2_closure_tbl in q.o
--- ld: atom sorting error for _Main_MyType_closure_tbl and _Main_MyType2_closure_tbl in q.o
--- ld: atom sorting error for _Main_MyType_closure_tbl and _Main_MyType2_closure_tbl in q.o
--- when compiling on OS X (trac #2578).
-
-module Main (main) where
-
-data MyType
-data MyType2
-
-main :: IO ()
-main = print ()
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/3132.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/3132.hs
deleted file mode 100644
index c6aa2579e9..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/3132.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Spring where
-
-import Data.Array.Unboxed
-
-step :: UArray Int Double -> [Double]
-step y = [y!1 + y!0]
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/3579.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/3579.hs
deleted file mode 100644
index 29711e147b..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/3579.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Bug where
-
-compose :: [a -> a] -> a -> a
-compose = foldr (.) id
-
-class Compose a where
- compose1 :: a -> a -> a
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/Makefile b/testsuite/tests/ghc-regress/codeGen/should_compile/Makefile
deleted file mode 100644
index 416e9ed6f5..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/Makefile
+++ /dev/null
@@ -1,7 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-2578:
- '$(TEST_HC)' $(TEST_HC_OPTS) --make 2578 -fforce-recomp -v0
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/T3286.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/T3286.hs
deleted file mode 100644
index 0cc852db94..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/T3286.hs
+++ /dev/null
@@ -1,45 +0,0 @@
-
-module T3286 (train) where
-
-import qualified Data.Map as M
-import Data.List (groupBy, foldl')
-import Data.Maybe (fromMaybe, fromJust)
-import Data.Function (on)
-import T3286b
-
-type Prob = LogFloat
-
-learn_states :: (Ord state) => [(observation, state)] -> M.Map state Prob
-learn_states xs = histogram $ map snd xs
-
-learn_observations :: (Ord state, Ord observation) =>
- M.Map state Prob
- -> [(observation, state)]
- -> M.Map (observation, state) Prob
-learn_observations state_prob = M.mapWithKey f . histogram
- where f (_, state) prob = prob / (fromJust $ M.lookup state state_prob)
-
-histogram :: (Ord a) => [a] -> M.Map a Prob
-histogram xs = let hist = foldl' undefined M.empty xs in
- M.map (/ M.foldrWithKey (\_ a b -> a + b) 0 hist) hist
-
-train :: (Ord observation, Ord state) =>
- [(observation, state)]
- -> (observation -> [Prob])
-train sample = model
- where
- states = learn_states sample
- state_list = M.keys states
-
- observations = learn_observations states sample
- observation_probs = fromMaybe (fill state_list []) . (flip M.lookup $
- M.fromList $ map (\ (e, xs) -> (e, fill state_list xs)) $
- map (\ xs -> (fst $ head xs, map snd xs)) $
- groupBy ((==) `on` fst)
- [(observation, (state, prob))
- | ((observation, state), prob) <- M.toAscList observations])
-
- model = observation_probs
-
- fill :: Eq state => [state] -> [(state, Prob)] -> [Prob]
- fill = undefined
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/T3286b.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/T3286b.hs
deleted file mode 100644
index f6c1fdbeac..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/T3286b.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-
-module T3286b (LogFloat) where
-
-newtype LogFloat = LogFloat Double
- deriving (Eq, Ord, Num, Show)
-
-instance Fractional LogFloat where
- (/) (LogFloat x) (LogFloat y)
- | x == 1
- && y == 1 = error "(/)"
- | otherwise = LogFloat (x-y)
- fromRational = LogFloat . fromRational
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/all.T b/testsuite/tests/ghc-regress/codeGen/should_compile/all.T
deleted file mode 100644
index ba29c2a145..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/all.T
+++ /dev/null
@@ -1,19 +0,0 @@
-test('cg001', only_compiler_types(['ghc']), compile, [''])
-test('cg002', normal, compile, [''])
-test('cg003', only_ways(['optasm']), compile, [''])
-test('cg004', normal, compile, [''])
-test('cg005', only_ways(['optasm']), compile, [''])
-test('cg006', normal, compile, [''])
-test('cg007', normal, compile, [''])
-test('cg008', normal, compile, [''])
-
-test('1916', normal, compile, [''])
-test('2388', normal, compile, [''])
-test('3132', normal, compile, ['-dcmm-lint'])
-test('T3286', extra_clean(['T3286b.o','T3286b.hi']),
- multimod_compile, ['T3286', '-v0'])
-test('3579', normal, compile, [''])
-test('2578', normal, run_command, ['$MAKE -s --no-print-directory 2578'])
-# skip llvm on i386 as we don't support fPIC
-test('jmp_tbl', if_arch('i386', omit_ways(['llvm', 'optllvm'])), compile, ['-fPIC -O'])
-test('massive_array', if_arch('i386', omit_ways(['llvm', 'optllvm'])), compile, ['-fPIC'])
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/cg001.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/cg001.hs
deleted file mode 100644
index ad00a8f89c..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/cg001.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
-module ShouldCompile where
-
-import GHC.Exts
-
-data STRef s a = STRef (MutVar# s a)
-
--- ghc 4.08 had a problem with returning a MutVar#.
-
-from :: STRef s a -> MutVar# s a
-from (STRef x) = x
-
-to :: MutVar# s a -> STRef s a
-to x = STRef x
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/cg002.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/cg002.hs
deleted file mode 100644
index 9d655d9d12..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/cg002.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module M where
-import Data.Char
-{-# INLINE f #-}
-f = map ord . map chr
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/cg003.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/cg003.hs
deleted file mode 100644
index e7cea2e0b3..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/cg003.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Test where
-
--- !!! caused compiler to generate bogus HC code, fixed in
--- basicTypes/Literal.lhs rev. 1.36.
-
-f :: Double -> Int
-f x = round (x - (-5.0))
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/cg004.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/cg004.hs
deleted file mode 100644
index fb8e3cc413..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/cg004.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-module ShouldCompile where
-
--- Killed GHC 6.0 in isCrossDllArg
---
--- ghc-6.0: panic! (the `impossible' happened, GHC version 6.0):
--- coreSyn/CoreUtils.lhs:1188: Non-exhaustive patterns in function isCrossDllArg
---
--- The reason was that newST had the form
--- newST = \ @ v -> GHC.Base.:
--- @ (Environment.Scope v)
--- (case $fScopeOpersScope @ v
--- of tpl_B1 { Environment.:DScopeOpers tpl_B2 tpl_B3 ->
--- tpl_B2
--- })
--- (GHC.Base.[] @ (Environment.Scope v))
-
-class ScopeOpers s where
- emptyScope :: s
- op :: s -> s
-
-data Scope v = NewScope
-
-instance ScopeOpers (Scope v) where
- emptyScope = error "emptyScope"
- op = error "op"
-
-newtype SymbolTable v = SymbolTable [Scope v]
-
-newST :: SymbolTable v
-newST = SymbolTable [emptyScope]
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/cg005.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/cg005.hs
deleted file mode 100644
index a25ad4250a..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/cg005.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-module Bug where
-
-import Foreign hiding ( unsafePerformIO )
-import Foreign.ForeignPtr
-import Data.Char
-import System.IO.Unsafe
-
-data PackedString = PS !(ForeignPtr Word8) !Int !Int
-
-(!) :: PackedString -> Int -> Word8
-(PS x s _l) ! i
- = unsafePerformIO $ withForeignPtr x $ \p -> peekElemOff p (s+i)
-
-w2c :: Word8 -> Char
-w2c = chr . fromIntegral
-
-indexPS :: PackedString -> Int -> Char
-indexPS theps i | i < 0 = error "Negative index in indexPS"
- | otherwise = w2c $ theps ! i
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/cg006.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/cg006.hs
deleted file mode 100644
index 494b37937b..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/cg006.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-module ShouldCompile where
-
--- exposed a bug in the NCG in 6.4.2
-import GHC.Base
-class Unboxable a where
- writeUnboxable :: MutableByteArray# RealWorld -> a -> State# RealWorld -> State# RealWorld
- writeUnboxable arr a s = writeInt8Array# arr 0# (getTag 0) s
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/cg007.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/cg007.hs
deleted file mode 100644
index 5ef739bd47..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/cg007.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module ShouldCompile where
-
-import Foreign.C.Types
-
-{-
-During 6.11, this was failing like this:
-
-In file included from /ghc/includes/Stg.h:207,
-
- from /tmp/ghc2904_0/ghc2904_0.hc:3:0:
-/tmp/ghc2904_0/ghc2904_0.hc: In function `swM_ret':
-
-/tmp/ghc2904_0/ghc2904_0.hc:22:0:
- error: `gamma' undeclared (first use in this function)
-
-/tmp/ghc2904_0/ghc2904_0.hc:22:0:
- error: (Each undeclared identifier is reported only once
-
-/tmp/ghc2904_0/ghc2904_0.hc:22:0:
- error: for each function it appears in.)
--}
-
-foreign import ccall unsafe "math.h gamma"
- gamma :: CDouble -> CDouble
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/cg008.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/cg008.hs
deleted file mode 100644
index 10099c1b48..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/cg008.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE MagicHash, BangPatterns #-}
-{-# OPTIONS_GHC -O0 #-}
-
--- Variant of cgrun066; compilation as a module is different.
-
-module Cg008 (hashStr) where
-
-import Foreign.C
-import Data.Word
-import Foreign.Ptr
-import GHC.Exts
-
-import Control.Exception
-
-hashStr :: Ptr Word8 -> Int -> Int
-hashStr (Ptr a#) (I# len#) = loop 0# 0#
- where
- loop h n | n GHC.Exts.==# len# = I# h
- | otherwise = loop h2 (n GHC.Exts.+# 1#)
- where !c = ord# (indexCharOffAddr# a# n)
- !h2 = (c GHC.Exts.+# (h GHC.Exts.*# 128#)) `remInt#` 4091#
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/jmp_tbl.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/jmp_tbl.hs
deleted file mode 100644
index 56904ed7a1..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/jmp_tbl.hs
+++ /dev/null
@@ -1,128 +0,0 @@
-{-# LANGUAGE NamedFieldPuns #-}
-
-{-
-This funny module was reduced from a failing build of stage2 using
-the new code generator and the linear register allocator, with this bug:
-
-"inplace/bin/ghc-stage1" -fPIC -dynamic -H32m -O -Wall -H64m -O0 -package-name ghc-7.1.20110414 -hide-all-packages -i -icompiler/basicTypes -icompiler/cmm -icompiler/codeGen -icompiler/coreSyn -icompiler/deSugar -icompiler/ghci -icompiler/hsSyn -icompiler/iface -icompiler/llvmGen -icompiler/main -icompiler/nativeGen -icompiler/parser -icompiler/prelude -icompiler/profiling -icompiler/rename -icompiler/simplCore -icompiler/simplStg -icompiler/specialise -icompiler/stgSyn -icompiler/stranal -icompiler/typecheck -icompiler/types -icompiler/utils -icompiler/vectorise -icompiler/stage2/build -icompiler/stage2/build/autogen -Icompiler/stage2/build -Icompiler/stage2/build/autogen -Icompiler/../libffi/build/include -Icompiler/stage2 -Icompiler/../libraries/base/cbits -Icompiler/../libraries/base/include -Icompiler/. -Icompiler/parser -Icompiler/utils -optP-DGHCI -optP-include -optPcompiler/stage2/build/autogen/cabal_macros.h -package Cabal-1.11.0 -package array-0.3.0.2 -package base-4.3.1.0 -package bin-package-db-0.0.0.0 -package bytestring-0.9.1.10 -package containers-0.4.0.0 -package directory-1.1.0.0 -package filepath-1.2.0.0 -package hoopl-3.8.7.0 -package hpc-0.5.0.6 -package old-time-1.0.0.6 -package process-1.0.1.4 -package template-haskell-2.5.0.0 -package unix-2.4.1.0 -Wall -fno-warn-name-shadowing -fno-warn-orphans -XHaskell98 -XNondecreasingIndentation -XCPP -XMagicHash -XUnboxedTuples -XPatternGuards -XForeignFunctionInterface -XEmptyDataDecls -XTypeSynonymInstances -XMultiParamTypeClasses -XFlexibleInstances -XRank2Types -XScopedTypeVariables -XDeriveDataTypeable -DGHCI_TABLES_NEXT_TO_CODE -DSTAGE=2 -O2 -O -DGHC_DEFAULT_NEW_CODEGEN -no-user-package-conf -rtsopts -odir compiler/stage2/build -hidir compiler/stage2/build -stubdir compiler/stage2/build -hisuf dyn_hi -osuf dyn_o -hcsuf dyn_hc -c compiler/main/DriverPipeline.hs -o compiler/stage2/build/DriverPipeline.dyn_o -fforce-recomp -dno-debug-output -fno-warn-unused-binds
-
-ghc-stage1: panic! (the 'impossible' happened)
- (GHC version 7.1.20110414 for x86_64-unknown-linux):
- Cannot patch JMP_TBL
-
-This panic only appears to show up on x86-64 and with -fPIC. I wasn't
-able to get the produced optimized C-- to crash the linear register
-allocator. To see the bug, you need some extra patches for the new code
-generator, in particular, this set (which can be acquired from the
-jmp_tbl_bug tag at <https://github.com/ezyang/ghc>):
-
- commit 7b275c93df7944f0a9b51034cf1f64e3e70582a5
- Author: Edward Z. Yang <ezyang@mit.edu>
- Date: Thu Apr 14 21:20:21 2011 +0100
-
- Give manifestSP better information about the actual SP location.
-
- This patch fixes silliness where the SP pointer is continually
- bumped up and down.
-
- Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
-
- commit 5b5add4246d3997670ae995f7d2a028db92fff95
- Author: Edward Z. Yang <ezyang@mit.edu>
- Date: Wed Apr 13 11:16:36 2011 +0100
-
- Generalized assignment rewriting pass.
-
- This assignment rewriting pass subsumes the previous reload
- sinking pass, and also performs basic inlining.
-
- Signed-off-by: Edward Z. Yang <ezyang@mit.edu>
-
-The ostensible cause is that the linear register allocator is getting
-really unlucky and needs to insert a fixup block after precisely one
-jump in a jump table, because the block it jumps to was processed
-already. As you can see, actually getting the linear register allocator
-into this funk is /very/ difficult.
-
--}
-
-module DriverPipeline (compileFile) where
-
-import Control.Exception
-
-data Phase
- = Unlit ()
- | Ccpp
- | Cc
- | Cobjc
- | HCc
- | SplitAs
- | As
- | LlvmOpt
- | LlvmLlc
- | LlvmMangle
- | MergeStub
- | StopLn
- deriving (Show)
-
-data PipeState = PipeState {
- stop_phase :: Phase,
- src_basename :: String,
- output_spec :: (),
- hsc_env :: Maybe String,
- maybe_loc :: Maybe String
- }
-
-newtype CompPipeline a = P { unP :: PipeState -> IO (PipeState, a) }
-
-instance Monad CompPipeline where
- return a = P $ \state -> return (state, a)
- P m >>= k = P $ \state -> do (state',a) <- m state
- unP (k a) state'
-
-eqPhase :: Phase -> Phase -> Bool
-eqPhase (Unlit _) (Unlit _) = True
-eqPhase Ccpp Ccpp = True
-eqPhase Cc Cc = True
-eqPhase HCc HCc = True
-eqPhase SplitAs SplitAs = True
-eqPhase As As = True
-eqPhase LlvmOpt LlvmOpt = True
-eqPhase LlvmLlc LlvmLlc = True
-eqPhase LlvmMangle LlvmMangle = True
-eqPhase MergeStub MergeStub = True
-eqPhase StopLn StopLn = True
-eqPhase _ _ = False
-
-compileFile start_phase state = do
- unP (pipeLoop start_phase) state
- getOutputFilename undefined undefined undefined undefined undefined undefined
-
-pipeLoop phase = do
- dflags@PipeState{stop_phase} <- getPipeState
- io $ evaluate (phase `eqPhase` stop_phase)
- runPhase phase dflags
- pipeLoop phase
-
-getOutputFilename :: Phase -> () -> String -> Maybe String -> Phase -> Maybe String -> IO String
-getOutputFilename p o b md p' ml
- | p' `eqPhase` p, () <- o = undefined
- | Just l <- ml = return l
- | Just d <- md = return $ d ++ b
- | otherwise = undefined
-
-runPhase p _ | p `eqPhase` Cc || p `eqPhase` Ccpp || p `eqPhase` HCc || p `eqPhase` Cobjc = undefined
-runPhase LlvmMangle _ = undefined
-runPhase SplitAs _ = undefined
-runPhase LlvmOpt _ = undefined
-runPhase LlvmLlc dflags = phaseOutputFilename >> io (evaluate dflags) >> return undefined
-runPhase MergeStub _ = phaseOutputFilename >> undefined
-runPhase other _ = io (evaluate (show other)) >> undefined
-
-phaseOutputFilename :: CompPipeline ()
-phaseOutputFilename = do
- PipeState{stop_phase, src_basename, output_spec, maybe_loc, hsc_env} <- getPipeState
- io $ getOutputFilename stop_phase output_spec src_basename hsc_env StopLn maybe_loc
-
-getPipeState = P $ \state -> return (state, state)
-io m = P $ \state -> do a <- m; return (state, ())
diff --git a/testsuite/tests/ghc-regress/codeGen/should_compile/massive_array.hs b/testsuite/tests/ghc-regress/codeGen/should_compile/massive_array.hs
deleted file mode 100644
index a9db12bc4c..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_compile/massive_array.hs
+++ /dev/null
@@ -1,520 +0,0 @@
-{-# OPTIONS_GHC -fno-ignore-interface-pragmas -fasm #-}
-
--- This test breaks the linear register allocator when compiled the
--- flags -fnew-codegen, -fPIC and -dynamic, running out of stack
--- slots. You actually don't need 500 elements; 32-bit fails
--- with only about 260 or so. Works for stage1 too! It's a bit touchy
--- about optimization flags; if you specify -O or -O0 in OPTIONS_GHC
--- the bug goes away. Shows up in GHC 7.0.3.
---
--- The -fno-ignore-interface-pragmas flag is pretty important! (Though I
--- don't quite know why yet.) Gigantic arrays like this show up in
--- generated code, in particular Parser.hs from Happy in GHC.
-
-module MassiveArray where
-
-import Data.Array
-
-f = array (0, 499)
- $ [
- (0, 0),
- (1, 1),
- (2, 2),
- (3, 3),
- (4, 4),
- (5, 5),
- (6, 6),
- (7, 7),
- (8, 8),
- (9, 9),
- (10, 10),
- (11, 11),
- (12, 12),
- (13, 13),
- (14, 14),
- (15, 15),
- (16, 16),
- (17, 17),
- (18, 18),
- (19, 19),
- (20, 20),
- (21, 21),
- (22, 22),
- (23, 23),
- (24, 24),
- (25, 25),
- (26, 26),
- (27, 27),
- (28, 28),
- (29, 29),
- (30, 30),
- (31, 31),
- (32, 32),
- (33, 33),
- (34, 34),
- (35, 35),
- (36, 36),
- (37, 37),
- (38, 38),
- (39, 39),
- (40, 40),
- (41, 41),
- (42, 42),
- (43, 43),
- (44, 44),
- (45, 45),
- (46, 46),
- (47, 47),
- (48, 48),
- (49, 49),
- (50, 50),
- (51, 51),
- (52, 52),
- (53, 53),
- (54, 54),
- (55, 55),
- (56, 56),
- (57, 57),
- (58, 58),
- (59, 59),
- (60, 60),
- (61, 61),
- (62, 62),
- (63, 63),
- (64, 64),
- (65, 65),
- (66, 66),
- (67, 67),
- (68, 68),
- (69, 69),
- (70, 70),
- (71, 71),
- (72, 72),
- (73, 73),
- (74, 74),
- (75, 75),
- (76, 76),
- (77, 77),
- (78, 78),
- (79, 79),
- (80, 80),
- (81, 81),
- (82, 82),
- (83, 83),
- (84, 84),
- (85, 85),
- (86, 86),
- (87, 87),
- (88, 88),
- (89, 89),
- (90, 90),
- (91, 91),
- (92, 92),
- (93, 93),
- (94, 94),
- (95, 95),
- (96, 96),
- (97, 97),
- (98, 98),
- (99, 99),
- (100, 100),
- (101, 101),
- (102, 102),
- (103, 103),
- (104, 104),
- (105, 105),
- (106, 106),
- (107, 107),
- (108, 108),
- (109, 109),
- (110, 110),
- (111, 111),
- (112, 112),
- (113, 113),
- (114, 114),
- (115, 115),
- (116, 116),
- (117, 117),
- (118, 118),
- (119, 119),
- (120, 120),
- (121, 121),
- (122, 122),
- (123, 123),
- (124, 124),
- (125, 125),
- (126, 126),
- (127, 127),
- (128, 128),
- (129, 129),
- (130, 130),
- (131, 131),
- (132, 132),
- (133, 133),
- (134, 134),
- (135, 135),
- (136, 136),
- (137, 137),
- (138, 138),
- (139, 139),
- (140, 140),
- (141, 141),
- (142, 142),
- (143, 143),
- (144, 144),
- (145, 145),
- (146, 146),
- (147, 147),
- (148, 148),
- (149, 149),
- (150, 150),
- (151, 151),
- (152, 152),
- (153, 153),
- (154, 154),
- (155, 155),
- (156, 156),
- (157, 157),
- (158, 158),
- (159, 159),
- (160, 160),
- (161, 161),
- (162, 162),
- (163, 163),
- (164, 164),
- (165, 165),
- (166, 166),
- (167, 167),
- (168, 168),
- (169, 169),
- (170, 170),
- (171, 171),
- (172, 172),
- (173, 173),
- (174, 174),
- (175, 175),
- (176, 176),
- (177, 177),
- (178, 178),
- (179, 179),
- (180, 180),
- (181, 181),
- (182, 182),
- (183, 183),
- (184, 184),
- (185, 185),
- (186, 186),
- (187, 187),
- (188, 188),
- (189, 189),
- (190, 190),
- (191, 191),
- (192, 192),
- (193, 193),
- (194, 194),
- (195, 195),
- (196, 196),
- (197, 197),
- (198, 198),
- (199, 199),
- (200, 200),
- (201, 201),
- (202, 202),
- (203, 203),
- (204, 204),
- (205, 205),
- (206, 206),
- (207, 207),
- (208, 208),
- (209, 209),
- (210, 210),
- (211, 211),
- (212, 212),
- (213, 213),
- (214, 214),
- (215, 215),
- (216, 216),
- (217, 217),
- (218, 218),
- (219, 219),
- (220, 220),
- (221, 221),
- (222, 222),
- (223, 223),
- (224, 224),
- (225, 225),
- (226, 226),
- (227, 227),
- (228, 228),
- (229, 229),
- (230, 230),
- (231, 231),
- (232, 232),
- (233, 233),
- (234, 234),
- (235, 235),
- (236, 236),
- (237, 237),
- (238, 238),
- (239, 239),
- (240, 240),
- (241, 241),
- (242, 242),
- (243, 243),
- (244, 244),
- (245, 245),
- (246, 246),
- (247, 247),
- (248, 248),
- (249, 249),
- (250, 250),
- (251, 251),
- (252, 252),
- (253, 253),
- (254, 254),
- (255, 255),
- (256, 256),
- (257, 257),
- (258, 258),
- (259, 259),
- (260, 260),
- (261, 261),
- (262, 262),
- (263, 263),
- (264, 264),
- (265, 265),
- (266, 266),
- (267, 267),
- (268, 268),
- (269, 269),
- (270, 270),
- (271, 271),
- (272, 272),
- (273, 273),
- (274, 274),
- (275, 275),
- (276, 276),
- (277, 277),
- (278, 278),
- (279, 279),
- (280, 280),
- (281, 281),
- (282, 282),
- (283, 283),
- (284, 284),
- (285, 285),
- (286, 286),
- (287, 287),
- (288, 288),
- (289, 289),
- (290, 290),
- (291, 291),
- (292, 292),
- (293, 293),
- (294, 294),
- (295, 295),
- (296, 296),
- (297, 297),
- (298, 298),
- (299, 299),
- (300, 300),
- (301, 301),
- (302, 302),
- (303, 303),
- (304, 304),
- (305, 305),
- (306, 306),
- (307, 307),
- (308, 308),
- (309, 309),
- (310, 310),
- (311, 311),
- (312, 312),
- (313, 313),
- (314, 314),
- (315, 315),
- (316, 316),
- (317, 317),
- (318, 318),
- (319, 319),
- (320, 320),
- (321, 321),
- (322, 322),
- (323, 323),
- (324, 324),
- (325, 325),
- (326, 326),
- (327, 327),
- (328, 328),
- (329, 329),
- (330, 330),
- (331, 331),
- (332, 332),
- (333, 333),
- (334, 334),
- (335, 335),
- (336, 336),
- (337, 337),
- (338, 338),
- (339, 339),
- (340, 340),
- (341, 341),
- (342, 342),
- (343, 343),
- (344, 344),
- (345, 345),
- (346, 346),
- (347, 347),
- (348, 348),
- (349, 349),
- (350, 350),
- (351, 351),
- (352, 352),
- (353, 353),
- (354, 354),
- (355, 355),
- (356, 356),
- (357, 357),
- (358, 358),
- (359, 359),
- (360, 360),
- (361, 361),
- (362, 362),
- (363, 363),
- (364, 364),
- (365, 365),
- (366, 366),
- (367, 367),
- (368, 368),
- (369, 369),
- (370, 370),
- (371, 371),
- (372, 372),
- (373, 373),
- (374, 374),
- (375, 375),
- (376, 376),
- (377, 377),
- (378, 378),
- (379, 379),
- (380, 380),
- (381, 381),
- (382, 382),
- (383, 383),
- (384, 384),
- (385, 385),
- (386, 386),
- (387, 387),
- (388, 388),
- (389, 389),
- (390, 390),
- (391, 391),
- (392, 392),
- (393, 393),
- (394, 394),
- (395, 395),
- (396, 396),
- (397, 397),
- (398, 398),
- (399, 399),
- (400, 400),
- (401, 401),
- (402, 402),
- (403, 403),
- (404, 404),
- (405, 405),
- (406, 406),
- (407, 407),
- (408, 408),
- (409, 409),
- (410, 410),
- (411, 411),
- (412, 412),
- (413, 413),
- (414, 414),
- (415, 415),
- (416, 416),
- (417, 417),
- (418, 418),
- (419, 419),
- (420, 420),
- (421, 421),
- (422, 422),
- (423, 423),
- (424, 424),
- (425, 425),
- (426, 426),
- (427, 427),
- (428, 428),
- (429, 429),
- (430, 430),
- (431, 431),
- (432, 432),
- (433, 433),
- (434, 434),
- (435, 435),
- (436, 436),
- (437, 437),
- (438, 438),
- (439, 439),
- (440, 440),
- (441, 441),
- (442, 442),
- (443, 443),
- (444, 444),
- (445, 445),
- (446, 446),
- (447, 447),
- (448, 448),
- (449, 449),
- (450, 450),
- (451, 451),
- (452, 452),
- (453, 453),
- (454, 454),
- (455, 455),
- (456, 456),
- (457, 457),
- (458, 458),
- (459, 459),
- (460, 460),
- (461, 461),
- (462, 462),
- (463, 463),
- (464, 464),
- (465, 465),
- (466, 466),
- (467, 467),
- (468, 468),
- (469, 469),
- (470, 470),
- (471, 471),
- (472, 472),
- (473, 473),
- (474, 474),
- (475, 475),
- (476, 476),
- (477, 477),
- (478, 478),
- (479, 479),
- (480, 480),
- (481, 481),
- (482, 482),
- (483, 483),
- (484, 484),
- (485, 485),
- (486, 486),
- (487, 487),
- (488, 488),
- (489, 489),
- (490, 490),
- (491, 491),
- (492, 492),
- (493, 493),
- (494, 494),
- (495, 495),
- (496, 496),
- (497, 497),
- (498, 498),
- (499, 499)
- ]
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/1852.hs b/testsuite/tests/ghc-regress/codeGen/should_run/1852.hs
deleted file mode 100644
index f5d9370741..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/1852.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# OPTIONS_GHC -funbox-strict-fields #-}
-import Data.List
-
-data Vec4 = Vec4 !Float !Float !Float !Float
-
-
-main :: IO ()
-main = print traceList
-
-traceList = concatMap (\(x,y) -> let (r,g,b,a) = getPixel (x,y) in [r,g,b,a])
- [(0,0)]
- where
- getPixel (x,y) = (red,green,blue,alpha)
- where
- Vec4 fr fg fb fa = seq x (Vec4 1 2 3 4)
- red = round fr
- green = round fg
- blue = round fb
- alpha = round fa
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/1852.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/1852.stdout
deleted file mode 100644
index 8adb9bb604..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/1852.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[1,2,3,4]
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/1861.hs b/testsuite/tests/ghc-regress/codeGen/should_run/1861.hs
deleted file mode 100644
index b6136f4ea2..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/1861.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-import System.Environment
-main = do [x] <- getArgs
- print (read x < (1e400 :: Double))
- print (read x < (-1e400 :: Double))
- print (read x == (0/0 :: Double))
- -- the last doesn't get constant-folded to NaN, so we're not really
- -- testing properly here. Still, we might manage to constant fold
- -- this in the future, so I'll leave it in place.
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/1861.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/1861.stdout
deleted file mode 100644
index 06eb4d10ee..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/1861.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-True
-False
-False
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/2080.hs b/testsuite/tests/ghc-regress/codeGen/should_run/2080.hs
deleted file mode 100644
index a1baf757f5..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/2080.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# OPTIONS_GHC -XMagicHash #-}
-module Main where
-import GHC.Base
-
-import Foreign
-import Foreign.C
-import GHC.Ptr (Ptr(..))
-
-utf8DecodeChar# :: Addr# -> Bool -> Bool
-{-# NOINLINE utf8DecodeChar# #-}
-utf8DecodeChar# a# fred =
- case () of
- _ | word2Int# (indexWord8OffAddr# a# 0#) <=# 0x7F# -> True
-
--- Omitting the next line gives an ASSERT error:
--- ghc-6.9: panic! (the 'impossible' happened)
--- (GHC version 6.9 for x86_64-unknown-linux):
--- ASSERT failed! file nativeGen/MachCodeGen.hs line 1049
--- %MO_S_Le_I8(I8[R2], 127 :: I8)
- | fred -> True
-
- | otherwise -> False
-
-main = print (utf8DecodeChar# "\128"# False) -- should be False
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/2080.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/2080.stdout
deleted file mode 100644
index bc59c12aa1..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/2080.stdout
+++ /dev/null
@@ -1 +0,0 @@
-False
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/2838.hs b/testsuite/tests/ghc-regress/codeGen/should_run/2838.hs
deleted file mode 100644
index 0933c1203e..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/2838.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE MagicHash, UnboxedTuples #-}
-module Main(main,complement) where
-
-import GHC.Base
-import GHC.Num
-
-complement (I# x#) = I# (word2Int# (int2Word# (4294967295#) `xor#` int2Word# (-1#)))
-
-main = print (complement (-1))
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/2838.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/2838.stdout
deleted file mode 100644
index 573541ac97..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/2838.stdout
+++ /dev/null
@@ -1 +0,0 @@
-0
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/2838.stdout-ws-64 b/testsuite/tests/ghc-regress/codeGen/should_run/2838.stdout-ws-64
deleted file mode 100644
index 1862ace676..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/2838.stdout-ws-64
+++ /dev/null
@@ -1 +0,0 @@
--4294967296
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/3207.hs b/testsuite/tests/ghc-regress/codeGen/should_run/3207.hs
deleted file mode 100644
index 4738fca343..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/3207.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-module Main where
-
-import Control.Monad.ST.Lazy
-import Data.STRef.Lazy
-import Data.Array.ST
-import Data.Int
-import Debug.Trace
-
-data Refs s = Refs
- { memory :: STArray s Int8 Int8
- , pc :: STRef s Int8
- }
-
-main :: IO ()
-main = do
- print $ runST m
- where
- m = do
- m <- newArray_ (0,30)
- p <- newSTRef 0
- let r = Refs m p
- writeArray m 0 0x4
- v <- readSTRef p
- modifySTRef p (+1)
--- trace ("v: " ++ show v) $ return ()
- op <- readArray m v
- case {- trace ("v: " ++ show v) $ -} op of
- 0x4 -> modifySTRef p (+100) -- should run this
- n -> error ("should never match this: " ++ show n)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/3207.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/3207.stdout
deleted file mode 100644
index 6a452c185a..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/3207.stdout
+++ /dev/null
@@ -1 +0,0 @@
-()
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/3561.hs b/testsuite/tests/ghc-regress/codeGen/should_run/3561.hs
deleted file mode 100644
index 44258a839c..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/3561.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-main = print $ pqr' 0 1
-
-pqr' :: Int -> Int -> Integer
-pqr' a b | a == b - 1 = rab
- | otherwise = ram * rmb
- where m = (a + b) `div` 2
- ram = pqr' a m
- rmb = pqr' m b
- rab = toInteger (6 * b - 5) * toInteger (2 * b - 1) *
- toInteger (6 * b - 1)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/3561.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/3561.stdout
deleted file mode 100644
index 7ed6ff82de..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/3561.stdout
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/3677.hs b/testsuite/tests/ghc-regress/codeGen/should_run/3677.hs
deleted file mode 100644
index 67b12b2672..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/3677.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-module Main(main) where
-
-main = print (take 2 (edi2 0))
-
--- In 6.12, edi2 lead to a stack overflow (see #3677)
-
-edi :: Integer -> [Integer]
-edi x | x `mod` 1000000 == 0 = x : edi (x+1)
- | otherwise = edi (x+1)
-
-edi2 :: Integer -> [Integer]
-edi2 x | x `mod` 1000000 == 0 = x : y
- | otherwise = y
- where
- y = edi2 (x+1)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/3677.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/3677.stdout
deleted file mode 100644
index 53b22189de..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/3677.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[0,1000000]
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/4441.hs b/testsuite/tests/ghc-regress/codeGen/should_run/4441.hs
deleted file mode 100644
index ee96170af8..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/4441.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-module Main where
-
-import Numeric
-import System.IO
-
-main = do
- let d = read "2.0e-2" :: Double
- print $ "Float Version : " ++ (fToStr $ realToFrac d)
- print $ "Double Version: " ++ (dToStr d)
-
-double :: IO Double
-double = do
- x <- getLine
- return $ read x
-
-dToStr :: Double -> String
-dToStr d = show d
-
-fToStr :: Float -> String
-fToStr = (dToStr . realToFrac)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/4441.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/4441.stdout
deleted file mode 100644
index 865b73fb17..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/4441.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-"Float Version : 1.9999999552965164e-2"
-"Double Version: 2.0e-2"
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/5129.hs b/testsuite/tests/ghc-regress/codeGen/should_run/5129.hs
deleted file mode 100644
index 6bc1912754..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/5129.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-import Control.Exception as E
-import Data.Typeable
-
-throwIfNegative :: Int -> String
-throwIfNegative n | n < 0 = error "negative"
- | otherwise = "no worries"
-{-# NOINLINE throwIfNegative #-}
-
-data HUnitFailure = HUnitFailure String deriving (Show,Typeable)
-instance Exception HUnitFailure
-
-assertFailure msg = E.throw (HUnitFailure msg)
-
-case_negative =
- handleJust errorCalls (const $ return ()) $ do
- evaluate $ throwIfNegative (-1)
- assertFailure "must throw when given a negative number"
- where errorCalls (ErrorCall _) = Just ()
-
-main = case_negative
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/5149.hs b/testsuite/tests/ghc-regress/codeGen/should_run/5149.hs
deleted file mode 100644
index c0c88e3015..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/5149.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE MagicHash,GHCForeignImportPrim,UnliftedFFITypes #-}
-module Main where
-
-import GHC.Exts
-
-foreign import prim "f5149" f :: Int# -> Int# -> Double# -> Int#
-
-main = print (I# (f 1# 2# 1.0##))
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/5149.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/5149.stdout
deleted file mode 100644
index d00491fd7e..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/5149.stdout
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/5149_cmm.cmm b/testsuite/tests/ghc-regress/codeGen/should_run/5149_cmm.cmm
deleted file mode 100644
index b1e3dd6c43..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/5149_cmm.cmm
+++ /dev/null
@@ -1,29 +0,0 @@
-#include "Cmm.h"
-
-/* This code is carefully arranged to tickle the bug reported in #5149 */
-f5149
-{
- D_ z;
-
- z = D1;
-
- W_ x,y;
- x = R1;
- y = R2;
-
- if (x > y) {
- goto a; /* this jump is shortcutted to g5149 */
- } else {
- goto b;
- }
-
- a:
- jump g5149;
- b:
- RET_N(TO_W_(%f2i32(z)));
-}
-
-g5149
-{
- jump %ENTRY_CODE(Sp(0));
-}
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/Cgrun067A.hs b/testsuite/tests/ghc-regress/codeGen/should_run/Cgrun067A.hs
deleted file mode 100644
index 96e944ed25..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/Cgrun067A.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- Bug doesn't show up on -O0
-{-# OPTIONS_GHC -O #-}
-module Cgrun067A (miscompiledFn) where
-
-import Foreign.C
-import Foreign
-
-miscompiledFn :: CString -> IO String
-miscompiledFn cp = do
- l <- lengthArray0 0 cp
- if l <= 0 then return "" else loop "" (l-1)
- where
- loop s i = do
- xval <- peekElemOff cp i
- let val = castCCharToChar xval
- val `seq` if i <= 0 then return (val:s) else loop (val:s) (i-1)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/Makefile b/testsuite/tests/ghc-regress/codeGen/should_run/Makefile
deleted file mode 100644
index 50191fd8b9..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/Makefile
+++ /dev/null
@@ -1,4 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/all.T b/testsuite/tests/ghc-regress/codeGen/should_run/all.T
deleted file mode 100644
index f4a5dc66af..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/all.T
+++ /dev/null
@@ -1,89 +0,0 @@
-# Test +RTS -G1 here (it isn't tested anywhere else)
-setTestOpts(extra_ways(['g1']))
-
-test('cgrun001', normal, compile_and_run, [''])
-test('cgrun002', normal, compile_and_run, [''])
-test('cgrun003', normal, compile_and_run, [''])
-test('cgrun004', normal, compile_and_run, [''])
-test('cgrun005', normal, compile_and_run, [''])
-test('cgrun006', normal, compile_and_run, [''])
-test('cgrun007', normal, compile_and_run, [''])
-test('cgrun008', normal, compile_and_run, [''])
-test('cgrun009', normal, compile_and_run, [''])
-test('cgrun010', normal, compile_and_run, [''])
-test('cgrun011', normal, compile_and_run, [''])
-test('cgrun012', only_compiler_types(['ghc']), compile_and_run, [''])
-test('cgrun013', normal, compile_and_run, [''])
-test('cgrun014', normal, compile_and_run, [''])
-test('cgrun015', only_compiler_types(['ghc']), compile_and_run, [''])
-test('cgrun016', exit_code(1), compile_and_run, [''])
-test('cgrun017', normal, compile_and_run, [''])
-test('cgrun018', only_compiler_types(['ghc']), compile_and_run, [''])
-test('cgrun019', normal, compile_and_run, [''])
-test('cgrun020', normal, compile_and_run, [''])
-test('cgrun021', normal, compile_and_run, [''])
-test('cgrun022', normal, compile_and_run, [''])
-test('cgrun024', normal, compile_and_run, [''])
-test('cgrun025', compose(reqlib('regex-compat'), compose(extra_run_opts('cg025.hs'),exit_code(1))),
- compile_and_run, ['-package regex-compat'])
-test('cgrun026', only_compiler_types(['ghc']), compile_and_run, [''])
-test('cgrun027', normal, compile_and_run, [''])
-test('cgrun028', normal, compile_and_run, [''])
-test('cgrun031', only_compiler_types(['ghc']), compile_and_run, [''])
-test('cgrun032', only_compiler_types(['ghc']), compile_and_run, [''])
-test('cgrun033', only_compiler_types(['ghc']), compile_and_run, [''])
-test('cgrun034', normal, compile_and_run, [''])
-test('cgrun035', normal, compile_and_run, [''])
-test('cgrun036', normal, compile_and_run, [''])
-test('cgrun037', normal, compile_and_run, [''])
-test('cgrun038', normal, compile_and_run, [''])
-test('cgrun039', normal, compile_and_run, [''])
-test('cgrun040', normal, compile_and_run, [''])
-test('cgrun043', normal, compile_and_run, [''])
-test('cgrun044', normal, compile_and_run, [''])
-test('cgrun045', exit_code(1), compile_and_run, [''])
-test('cgrun046', normal, compile_and_run, [''])
-test('cgrun047', normal, compile_and_run, [''])
-test('cgrun048', normal, compile_and_run, [''])
-test('cgrun049', normal, compile_and_run, ['-funbox-strict-fields'])
-test('cgrun050', normal, compile_and_run, [''])
-# Doesn't work with External Core due to datatype declaration with no constructors
-test('cgrun051', (compose (expect_fail_for(['extcore','optextcore']),exit_code(1))), compile_and_run, [''])
-test('cgrun052', only_ways(['optasm']), compile_and_run, ['-funbox-strict-fields'])
-test('cgrun053', normal, compile_and_run, [''])
-test('cgrun054', normal, compile_and_run, [''])
-test('cgrun055', normal, compile_and_run, [''])
-test('cgrun056', normal, compile_and_run, [''])
-test('cgrun057', composes([expect_broken(948),
- only_ways(['prof','profasm']),
- extra_run_opts('+RTS -xc')]),
- compile_and_run, [''])
-test('cgrun058', normal, compile_and_run, [''])
-test('cgrun059', exit_code(1), compile_and_run, [''])
-test('cgrun060',
- extra_run_opts('+RTS -K64k -RTS'),
- compile_and_run, [''])
-test('cgrun061', normal, compile_and_run, [''])
-test('cgrun062', normal, compile_and_run, [''])
-test('cgrun063', normal, compile_and_run, [''])
-test('cgrun064', normal, compile_and_run, [''])
-test('cgrun065', normal, compile_and_run, [''])
-test('cgrun066', normal, compile_and_run, [''])
-test('cgrun067', extra_clean(['Cgrun067A.hi', 'Cgrun067A.o']),
- compile_and_run, [''])
-test('cgrun068', reqlib('random'), compile_and_run, [''])
-test('cgrun069', omit_ways(['ghci']), multisrc_compile_and_run,
- ['cgrun069', ['cgrun069_cmm.cmm'], ''])
-test('cgrun070', normal, compile_and_run, [''])
-
-test('1852', normal, compile_and_run, [''])
-test('1861', extra_run_opts('0'), compile_and_run, [''])
-test('2080', normal, compile_and_run, [''])
-test('2838', normal, compile_and_run, [''])
-test('3207', normal, compile_and_run, [''])
-test('3561', normal, compile_and_run, [''])
-test('3677', extra_run_opts('+RTS -K8k -RTS'), compile_and_run, [''])
-test('4441', normal, compile_and_run, [''])
-test('5149', omit_ways(['ghci']), multisrc_compile_and_run,
- ['5149', ['5149_cmm.cmm'], ''])
-test('5129', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun001.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun001.hs
deleted file mode 100644
index 5482f13127..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun001.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !! cg001: main = -42 -- take 1
-
-main = print ( f () )
- where
- f :: a -> Int
- f x = -42
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun001.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun001.stdout
deleted file mode 100644
index 6a0e60d48b..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun001.stdout
+++ /dev/null
@@ -1 +0,0 @@
--42
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun002.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun002.hs
deleted file mode 100644
index dddaabd66f..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun002.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-main = print ((f id2) (10 + thirty_two))
- where
- f x = g x
- where
- g x = h x
- where
- h x = x
-
- thirty_two :: Int
- thirty_two = 32
-
-id2 x = x
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun002.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun002.stdout
deleted file mode 100644
index d81cc0710e..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-42
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun003.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun003.hs
deleted file mode 100644
index 47b2d9e7bf..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun003.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-main = print (id2 (id2 id2) (42::Int))
--- where
--- id2 = s k k
-
--- id2 x = s k k x
-
-id2 = s k k
-
-s x y z = x z (y z)
-
-k x y = x
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun003.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun003.stdout
deleted file mode 100644
index d81cc0710e..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun003.stdout
+++ /dev/null
@@ -1 +0,0 @@
-42
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun004.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun004.hs
deleted file mode 100644
index 1f4a2737c3..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun004.hs
+++ /dev/null
@@ -1 +0,0 @@
-main = print (length ([9,8,7,6,5,4,3,2,1] :: [Int]))
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun004.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun004.stdout
deleted file mode 100644
index ec635144f6..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun004.stdout
+++ /dev/null
@@ -1 +0,0 @@
-9
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun005.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun005.hs
deleted file mode 100644
index 4159d4c882..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun005.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !! answer: 65532
-
-main = print foo
-
-foo :: Int
-foo = ((1 + 2 + 32767 - 4) * 6) --later? `div` 3
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun005.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun005.stdout
deleted file mode 100644
index 12bd33f964..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun005.stdout
+++ /dev/null
@@ -1 +0,0 @@
-196596
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun006.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun006.hs
deleted file mode 100644
index 609c3c2b4b..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun006.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-main = print (length thirteen_ones)
- where
- thirteen_ones = take (13::Int) ones
-
- ones :: [Int]
- ones = 1 : ones
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun006.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun006.stdout
deleted file mode 100644
index b1bd38b62a..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun006.stdout
+++ /dev/null
@@ -1 +0,0 @@
-13
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun007.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun007.hs
deleted file mode 100644
index 317b921a42..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun007.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-data Tree a = Leaf a | Branch (Tree a) (Tree a)
-
-main = print (height our_tree)
- where
- our_tree :: Tree Int
- our_tree =
- Branch (Branch (Leaf 1) (Branch (Branch (Leaf 1) (Leaf 1)) (Leaf 1)))
- (Branch (Leaf 1) (Leaf 1))
-
-
-height :: Tree a -> Int
-
-height (Leaf _) = 1
-height (Branch t1 t2) = 1 + max (height t1) (height t2)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun007.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun007.stdout
deleted file mode 100644
index 7ed6ff82de..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun007.stdout
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun008.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun008.hs
deleted file mode 100644
index 1713b4834e..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun008.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-main = print (length comp_list)
- where
- comp_list :: [(Int,Int)]
- comp_list = [ (elem1,elem2)
- | elem1 <- given_list,
- elem2 <- given_list,
- elem1 >= (4::Int),
- elem2 < (3::Int)
- ]
-
- given_list :: [Int]
- given_list = [1,2,3,4,5,6,7,8,9]
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun008.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun008.stdout
deleted file mode 100644
index 48082f72f0..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun008.stdout
+++ /dev/null
@@ -1 +0,0 @@
-12
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun009.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun009.hs
deleted file mode 100644
index de03fc42cd..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun009.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-main = print (length take_list)
- where
- take_list :: [Int]
- take_list = takeWhile (\ x -> x < 6) given_list
-
- given_list :: [Int]
- given_list = [1,2,3,4,5,6,7,8,9]
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun009.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun009.stdout
deleted file mode 100644
index 7ed6ff82de..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun009.stdout
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun010.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun010.hs
deleted file mode 100644
index ccc323d4cf..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun010.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-main = print a
- where
- a :: Int
- b :: Int
- (a, b) = (3 + 4, 5 + 6)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun010.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun010.stdout
deleted file mode 100644
index 7f8f011eb7..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun010.stdout
+++ /dev/null
@@ -1 +0,0 @@
-7
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun011.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun011.hs
deleted file mode 100644
index c687e50272..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun011.hs
+++ /dev/null
@@ -1,29 +0,0 @@
--- !!! simple overloading example
-
-class Foo a where
- foo :: a -> a -> Bool
-
-class (Foo a) => Bar a where
- bar :: a -> a -> Bool
-
-instance Foo Int where
- foo a b = a /= b
-
-instance Foo Bool where
- foo a b = a /= b
-
-instance Bar Int where
- bar a b = a < b
-
-instance Bar Bool where
- bar a b = a < b
-
-foO = if bar (2::Int) (3::Int) then
- if bar False True then
- (42::Int)
- else
- (888::Int)
- else
- (999::Int)
-
-main = print foO
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun011.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun011.stdout
deleted file mode 100644
index d81cc0710e..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun011.stdout
+++ /dev/null
@@ -1 +0,0 @@
-42
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun012.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun012.hs
deleted file mode 100644
index 8fe0a869c4..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun012.hs
+++ /dev/null
@@ -1,39 +0,0 @@
-{-# LANGUAGE MagicHash #-}
--- !!! move arguments around on the stacks, mainly the B stack
-
-import GHC.Base ( Float#, Double#, Int#, Int(..) )
-
-
-main = print foo
-
-foo = I#
- ( f 1.1##
- 2.1#
- True
- 3.1##
- 4.1#
- 5.1##
- 6.1##
- 42# -- the answer!
- 7.1#
- 8.1# )
- where
- f :: Double# -> Float# -> Bool -> Double# -> Float#
- -> Double# -> Double# -> Int# -> Float# -> Float#
- -> Int#
- f b1 s2 t b3 s4 b5 b6 i42 s7 s8
- -- evens, then odds
- = g s2 b3 b5 i42 s8 b1 t s4 b6 s7
-
- g :: Float# -> Double# -> Double# -> Int# -> Float#
- -> Double# -> Bool -> Float# -> Double# -> Float#
- -> Int#
- g s2 b3 b5 i42 s8 b1 t s4 b6 s7
- -- powers of 2 backwards, then others forwards
- = h s7 b6 t b5 s2 b3 i42 s8 b1 s4
-
- h :: Float# -> Double# -> Bool -> Double# -> Float#
- -> Double# -> Int# -> Float# -> Double# -> Float#
- -> Int#
- h s7 b6 t b5 s2 b3 i42 s8 b1 s4
- = i42
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun012.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun012.stdout
deleted file mode 100644
index d81cc0710e..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun012.stdout
+++ /dev/null
@@ -1 +0,0 @@
-42
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun013.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun013.hs
deleted file mode 100644
index 4d2f06de6c..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun013.hs
+++ /dev/null
@@ -1,78 +0,0 @@
-{-
-From: Kevin Hammond <kh>
-To: partain
-Subject: Nasty Overloading
-Date: Wed, 23 Oct 91 16:19:46 BST
--}
-module Main where
-
-class Foo a where
- o1 :: a -> a -> Bool
- o2 :: a -> Int
-
--- o2 :: Int
- -- Lennart: The type of method o2 does not contain the variable a
- -- (and it must according to line 1 page 29 of the manual).
-
-class Foo tyvar => Bar tyvar where
- o3 :: a -> tyvar -> tyvar
-
--- class (Eq a, Foo a) => Baz a where
-class (Ord a, Foo a) => Baz a where
- o4 :: a -> a -> (String,String,String,a)
-
-instance (Ord a, Foo a) => Foo [a] where
- o2 x = 100
- o1 a b = a < b || o1 (head a) (head b)
-
--- instance Bar [a] where
-instance (Ord a, Foo a) => Bar [a] where
- o3 x l = []
- --
- -- Lennart: I guess the instance declaration
- -- instance Bar [w] where
- -- o3 x l = []
- -- is wrong because to be a Bar you have to be a Foo. For [w] to
- -- be a Foo, w has to be Ord and Foo. But w is not Ord or Foo in
- -- this instance declaration so it must be wrong. (Page 31, line
- -- 7: The context c' must imply ...)
-
-instance Baz a => Baz [a] where
- o4 [] [] = ("Nil", "Nil", "Nil", [])
- o4 l1 l2 =
- (if o1 l1 l2 then "Y" else "N",
- if l1 == l2 then "Y" else "N",
--- if o4 (head l1) (head l2) then "Y" else "N",
- case o4 (head l1) (head l2) of
- (_,_,_,l3) -> if (o1 (head l1) l3) then "Y" else "N",
- l1 ++ l2 )
-
-instance Foo Int where
- o2 x = x
- o1 i j = i == j
-
-instance Bar Int where
- o3 _ j = j + 1
-
-instance Baz Int where
--- o4 i j = i > j
- o4 i j = (if i>j then "Y" else "Z", "p", "q", i+j)
---simpl:o4 i j = ("Z", "p", "q", i+j)
-
-{- also works w/ glhc! -}
-
-main = if o4 [1,2,3] [1,3,2::Int] /= ("Y","N","Y",[1,2,3,1,3,2]) then
- (print "43\n")
- else (print "144\n")
-
-{- works: glhc
-main = case o4 [1,2,3] [1,3,2::Int] of
- (s1,s2,s3,x) -> print s1
-
-main = case o4 ([]::[Int]) ([]::[Int]) of
- (s1,s2,s3,x) -> print s1
--}
-
-{- simple main: breaks nhc, works w/ glhc
-main = case o4 (3::Int) (4::Int) of (s1,s2,s3,x) -> print s1
--}
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun013.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun013.stdout
deleted file mode 100644
index a865e6b929..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun013.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"43\n"
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun014.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun014.hs
deleted file mode 100644
index a01c1017ad..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun014.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !! cg014: main = -42 -- twice: in Float and Double
-
-main = print ((show ( (-42) :: Float )) ++ " " ++ (show ( (-42) :: Double )) ++ "\n")
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun014.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun014.stdout
deleted file mode 100644
index 6f6cbc5cba..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun014.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"-42.0 -42.0\n"
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun015.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun015.hs
deleted file mode 100644
index eba3b8ab30..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun015.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-module Main ( main ) where
-
-import Foreign
-import Foreign.C
-import GHC.Exts
-
-data CList = CNil | CCons Int# CList
-
-mk :: Int# -> CList
-mk n = if (n ==# 0#)
- then CNil
- else CCons 1# (mk (n -# 1#))
-
-clen :: CList -> Int#
-clen CNil = 0#
-clen (CCons _ cl) = 1# +# (clen cl)
-
-main = case (clen list4) of
- len4 ->
- case (len4 +# len4) of
- 8# -> finish 65# -- 'A'
- _ -> finish 66# -- 'B'
- where
- list4 = mk 4#
-
-finish :: Int# -> IO ()
-finish n = c_putchar (castCharToCChar (C# (chr# n))) >> return ()
-
-foreign import ccall unsafe "putchar"
- c_putchar :: CChar -> IO CInt
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun015.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun015.stdout
deleted file mode 100644
index 8c7e5a667f..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun015.stdout
+++ /dev/null
@@ -1 +0,0 @@
-A \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun016.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun016.hs
deleted file mode 100644
index ba5dd04fea..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun016.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! tests calls of `error' (that make calls of `error'...)
---
-main = error ("1st call to error\n"++(
- error ("2nd call to error\n"++(
- error ("3rd call to error\n"++(
- error ("4th call to error\n"++(
- error ("5th call to error\n"++(
- error ("6th call to error"
- )))))))))))
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun016.stderr b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun016.stderr
deleted file mode 100644
index 03635bfa36..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun016.stderr
+++ /dev/null
@@ -1 +0,0 @@
-cgrun016: 6th call to error
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun016.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun016.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun016.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun017.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun017.hs
deleted file mode 100644
index 275eb9b31b..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun017.hs
+++ /dev/null
@@ -1,33 +0,0 @@
--- !!! test of cyclic default methods
---
-class Foo a where
- op1 :: Fractional b => a -> b -> Bool
- op2 :: Fractional b => a -> b -> Bool
- op3 :: Fractional b => a -> b -> Bool
- op4 :: Fractional b => a -> b -> Bool
- op5 :: Fractional b => a -> b -> Bool
- op6 :: Fractional b => a -> b -> Bool
-
- -- each depends on the next:
- op1 a b = not (op2 a b)
- op2 a b = not (op3 a b)
- op3 a b = not (op4 a b)
- op4 a b = not (op5 a b)
- op5 a b = not (op6 a b)
- op6 a b = not (op1 a b)
-
--- now some instance decls to break the cycle:
-instance Foo Int where
- op1 a b = a == 42
-
-instance Foo Char where
- op1 a b = a == 'c'
-
-instance Foo a => Foo [a] where
- op1 a b = null a
-
--- try it:
-main = do
- putStr (show (op2 (3::Int) 3.14159))
- putStr (show (op2 'X' 3.14159))
- putStr (show (op2 ([]::[Char])3.14159))
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun017.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun017.stdout
deleted file mode 100644
index c5b23b39d2..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun017.stdout
+++ /dev/null
@@ -1 +0,0 @@
-TrueTrueFalse \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun018.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun018.hs
deleted file mode 100644
index 49f9800cb6..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun018.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE MagicHash #-}
--- !!! test of datatype with many unboxed fields
---
-import GHC.Base( Float# )
-import GHC.Float
-
-main = print (selectee1 + selectee2)
-
-data Tfo = Tfo Float# Float# Float# Float# Float# Float# Float# Float# Float# Float# Float# Float#
-
-yyy = (Tfo (-0.0018#) (-0.8207#) (0.5714#)
- (0.2679#) (-0.5509#) (-0.7904#)
- (0.9634#) (0.1517#) (0.2209#)
- (0.0073#) (8.4030#) (0.6232#))
-
-xxx = (Tfo (-0.8143#) (-0.5091#) (-0.2788#)
- (-0.0433#) (-0.4257#) (0.9038#)
- (-0.5788#) (0.7480#) (0.3246#)
- (1.5227#) (6.9114#) (-7.0765#))
-
-selectee1 = F# (case xxx of
- Tfo _ _ _ _ _ _ _ x _ _ _ _ -> x)
-
-selectee2 = F# (case xxx of
- Tfo _ _ y _ _ _ _ _ _ _ _ _ -> y)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun018.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun018.stdout
deleted file mode 100644
index 805ee30112..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun018.stdout
+++ /dev/null
@@ -1 +0,0 @@
-0.46920002
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun019.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun019.hs
deleted file mode 100644
index 242ea3b4df..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun019.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! printing of floating-pt numbers
---
-main = print (1.234e5 :: Float)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun019.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun019.stdout
deleted file mode 100644
index 9ed4dbb21c..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun019.stdout
+++ /dev/null
@@ -1 +0,0 @@
-123400.0
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun020.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun020.hs
deleted file mode 100644
index 9f4b7c64e1..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun020.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! reading/showing of Ints/Integers
---
-main = print ((read "-1") :: Integer)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun020.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun020.stdout
deleted file mode 100644
index 3a2e3f4984..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun020.stdout
+++ /dev/null
@@ -1 +0,0 @@
--1
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun021.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun021.hs
deleted file mode 100644
index 190f8dd155..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun021.hs
+++ /dev/null
@@ -1,60 +0,0 @@
--- !!! Tests garbage collection in the branch of a case
--- !!! alternative where the constructor is returned in the heap.
-
-{- This is also a rather stressful test for another reason.
- The mutual recursion between munch and f causes lots of
- closures to be built, of the form (munch n s), for some n and s.
- Now, all of these closures are entered and each has as its value
- the result delivere by the next; so the result is that there is
- a massive chain of identical updates.
-
- As it turns out, they are mostly garbage, so the GC could eliminate
- them (though this isn't implemented at present), but that isn't
- necessarily the case.
-
- The only correct solution is to spot that the updates are all
- updating with the same value (update frames stacked on top of each
- other), and update all but one with indirections to the last
- remaining one. This could be done by GC, or at the moment the
- frame is pushed.
-
- Incidentally, hbc won't have this particular problem, because it
- updates immediately.
-
- NOTE: [March 97] Now that stack squeezing happens when GC happens,
- the stack is squished at GC. So this program uses a small stack
- in a small heap (eg 4m heap 2m stack), but in a big heap (no GC)
- it needs a much bigger stack (10m)! It would be better to try GC/stack
- squeezing on stack oflo.
--}
-
-module Main where
-
-main = munch 100000 (inf 3)
-
-data Stream a
- = MkStream a a a a a a a a a (Stream a)
- | Empty
-
-inf :: Int -> Stream Int
-inf n = MkStream n n n n n n n n n (inf n)
-
-munch :: Int -> Stream a -> IO ()
-
-munch n Empty = return () -- error "this never happens!\n"
- -- this first equation mks it non-strict in "n"
- -- (NB: call the "error" makes it strict)
-
-munch 0 _ = putStr "I succeeded!\n"
-munch n s = case (f n s) of
- (True, rest) -> rest
- (False, _) -> error "this never happens either\n"
-
---f :: Int -> Stream a -> (Bool, [Request])
-
-f n (MkStream _ _ _ _ _ _ _ _ _ rest)
- = -- garbage collection *HERE*, please!
- -- (forced by the closure for n-1)
- (True, munch (n - 1) rest)
-
--- munch and f are mutually recursive, just to be nasty
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun021.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun021.stdout
deleted file mode 100644
index 17203effa1..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun021.stdout
+++ /dev/null
@@ -1 +0,0 @@
-I succeeded!
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun022.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun022.hs
deleted file mode 100644
index e69675431c..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun022.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! tests stack stubbing: if "f" doesn't stub "ns",
--- !!! the program has a space leak.
-
-module Main where
-
-main = f (putStr "a")
- (take 1000000 (repeat True))
- (putStr "b")
-
-f a ns b = if last ns then a else b
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun022.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun022.stdout
deleted file mode 100644
index 2e65efe2a1..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun022.stdout
+++ /dev/null
@@ -1 +0,0 @@
-a \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun023.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun023.stdout
deleted file mode 100644
index c1f22fbc23..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun023.stdout
+++ /dev/null
@@ -1 +0,0 @@
-False \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun024.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun024.hs
deleted file mode 100644
index 7a695474e5..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun024.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! test super-dictionary grabification
---
-
-main = putStr (show (is_one (1.2::Double)))
-
-is_one :: RealFloat a => a -> Bool
-
-is_one x = x == 1.0
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun024.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun024.stdout
deleted file mode 100644
index c1f22fbc23..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun024.stdout
+++ /dev/null
@@ -1 +0,0 @@
-False \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun025.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun025.hs
deleted file mode 100644
index 8df8945088..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun025.hs
+++ /dev/null
@@ -1,23 +0,0 @@
--- !!! test various I/O Requests
---
---
-import IO
-import System
-import Debug.Trace (trace)
-import Text.Regex
-import Maybe
-
-main = do
- prog <- getProgName
- let Just (name:_) = matchRegex (mkRegex ".*(cg025)") prog
- hPutStr stderr (shows name "\n")
- args <- getArgs
- hPutStr stderr (shows args "\n")
- path <- getEnv "PATH"
- hPutStr stderr ("GOT PATH\n")
- stdin_txt <- getContents
- putStr stdin_txt
- file_cts <- readFile (head args)
- hPutStr stderr file_cts
- trace "hello, trace" $
- catch (getEnv "__WURBLE__" >> return ()) (\ e -> error "hello, error")
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun025.stderr b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun025.stderr
deleted file mode 100644
index a62fc44c04..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun025.stderr
+++ /dev/null
@@ -1,28 +0,0 @@
-"cgrun025"
-["cgrun025.hs"]
-GOT PATH
--- !!! test various I/O Requests
---
---
-import IO
-import System
-import Debug.Trace (trace)
-import Text.Regex
-import Maybe
-
-main = do
- prog <- getProgName
- let Just (name:_) = matchRegex (mkRegex ".*(cgrun025)") prog
- hPutStr stderr (shows name "\n")
- args <- getArgs
- hPutStr stderr (shows args "\n")
- path <- getEnv "PATH"
- hPutStr stderr ("GOT PATH\n")
- stdin_txt <- getContents
- putStr stdin_txt
- file_cts <- readFile (head args)
- hPutStr stderr file_cts
- trace "hello, trace" $
- catch (getEnv "__WURBLE__" >> return ()) (\ e -> error "hello, error")
-hello, trace
-cgrun025: hello, error
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun025.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun025.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun025.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun026.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun026.hs
deleted file mode 100644
index 4f15f93f8e..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun026.hs
+++ /dev/null
@@ -1,250 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
--- !!! simple tests of primitive arrays
---
-module Main ( main ) where
-
-import GHC.Exts
-import Data.Char ( chr )
-
-import Control.Monad.ST
-import Data.Array.ST
-import Data.Array.Unboxed
-
-import Data.Ratio
-
-main = putStr
- (test_chars ++ "\n" ++
- test_ints ++ "\n" ++
- test_addrs ++ "\n" ++
- test_floats ++ "\n" ++
- test_doubles ++ "\n" ++
- test_ptrs ++ "\n")
-
-
--- Arr# Char# -------------------------------------------
--- (main effort is in packString#)
-
-test_chars :: String
-test_chars
- = let arr# = f 1000
- in
- shows (lookup_range arr# 42# 416#) "\n"
- where
- f :: Int -> UArray Int Char
-
- f size@(I# size#)
- = runST (
- -- allocate an array of the specified size
- newArray_ (0, (size-1)) >>= \ arr# ->
-
- -- fill in all elements; elem i has "i" put in it
- fill_in arr# 0# (size# -# 1#) >>
-
- -- freeze the puppy:
- freeze arr#
- )
-
- fill_in :: STUArray s Int Char -> Int# -> Int# -> ST s ()
-
- fill_in arr_in# first# last#
- = if (first# ># last#)
- then return ()
- else writeArray arr_in# (I# first#) ((chr (I# first#))) >>
- fill_in arr_in# (first# +# 1#) last#
-
- lookup_range :: UArray Int Char -> Int# -> Int# -> [Char]
- lookup_range arr from# to#
- = if (from# ># to#)
- then []
- else (arr ! (I# from#))
- : (lookup_range arr (from# +# 1#) to#)
-
--- Arr# Int# -------------------------------------------
-
-test_ints :: String
-test_ints
- = let arr# = f 1000
- in
- shows (lookup_range arr# 42# 416#) "\n"
- where
- f :: Int -> UArray Int Int
-
- f size@(I# size#)
- = runST (
- -- allocate an array of the specified size
- newArray_ (0, (size-1)) >>= \ arr# ->
-
- -- fill in all elements; elem i has i^2 put in it
- fill_in arr# 0# (size# -# 1#) >>
-
- -- freeze the puppy:
- freeze arr#
- )
-
- fill_in :: STUArray s Int Int -> Int# -> Int# -> ST s ()
-
- fill_in arr_in# first# last#
- = if (first# ># last#)
- then return ()
- else writeArray arr_in# (I# first#) (I# (first# *# first#)) >>
- fill_in arr_in# (first# +# 1#) last#
-
- lookup_range :: UArray Int Int -> Int# -> Int# -> [Int]
- lookup_range arr from# to#
- = if (from# ># to#)
- then []
- else (arr ! (I# from#))
- : (lookup_range arr (from# +# 1#) to#)
-
--- Arr# Addr# -------------------------------------------
-
-test_addrs :: String
-test_addrs
- = let arr# = f 1000
- in
- shows (lookup_range arr# 42# 416#) "\n"
- where
- f :: Int -> UArray Int (Ptr ())
-
- f size@(I# size#)
- = runST (
- -- allocate an array of the specified size
- newArray_ (0, (size-1)) >>= \ arr# ->
-
- -- fill in all elements; elem i has i^2 put in it
- fill_in arr# 0# (size# -# 1#) >>
-
- -- freeze the puppy:
- freeze arr#
- )
-
- fill_in :: STUArray s Int (Ptr ()) -> Int# -> Int# -> ST s ()
-
- fill_in arr_in# first# last#
- = if (first# ># last#)
- then return ()
- else writeArray arr_in# (I# first#)
- (Ptr (int2Addr# (first# *# first#))) >>
- fill_in arr_in# (first# +# 1#) last#
-
- lookup_range :: UArray Int (Ptr ()) -> Int# -> Int# -> [ Int ]
- lookup_range arr from# to#
- = let
- a2i (Ptr a#) = I# (addr2Int# a#)
- in
- if (from# ># to#)
- then []
- else (a2i (arr ! (I# from#)))
- : (lookup_range arr (from# +# 1#) to#)
-
--- Arr# Float# -------------------------------------------
-
-test_floats :: String
-test_floats
- = let arr# = f 1000
- in
- shows (lookup_range arr# 42# 416#) "\n"
- where
- f :: Int -> UArray Int Float
-
- f size@(I# size#)
- = runST (
- -- allocate an array of the specified size
- newArray_ (0, (size-1)) >>= \ arr# ->
-
- -- fill in all elements; elem i has "i * pi" put in it
- fill_in arr# 0# (size# -# 1#) >>
-
- -- freeze the puppy:
- freeze arr#
- )
-
- fill_in :: STUArray s Int Float -> Int# -> Int# -> ST s ()
-
- fill_in arr_in# first# last#
- = if (first# ># last#)
- then return ()
-{- else let e = ((fromIntegral (I# first#)) * pi)
- in trace (show e) $ writeFloatArray arr_in# (I# first#) e >>
- fill_in arr_in# (first# +# 1#) last#
--}
- else writeArray arr_in# (I# first#) ((fromIntegral (I# first#)) * pi) >>
- fill_in arr_in# (first# +# 1#) last#
-
- lookup_range :: UArray Int Float -> Int# -> Int# -> [Float]
- lookup_range arr from# to#
- = if (from# ># to#)
- then []
- else (arr ! (I# from#))
- : (lookup_range arr (from# +# 1#) to#)
-
--- Arr# Double# -------------------------------------------
-
-test_doubles :: String
-test_doubles
- = let arr# = f 1000
- in
- shows (lookup_range arr# 42# 416#) "\n"
- where
- f :: Int -> UArray Int Double
-
- f size@(I# size#)
- = runST (
- -- allocate an array of the specified size
- newArray_ (0, (size-1)) >>= \ arr# ->
-
- -- fill in all elements; elem i has "i * pi" put in it
- fill_in arr# 0# (size# -# 1#) >>
-
- -- freeze the puppy:
- freeze arr#
- )
-
- fill_in :: STUArray s Int Double -> Int# -> Int# -> ST s ()
-
- fill_in arr_in# first# last#
- = if (first# ># last#)
- then return ()
- else writeArray arr_in# (I# first#) ((fromIntegral (I# first#)) * pi) >>
- fill_in arr_in# (first# +# 1#) last#
-
- lookup_range :: UArray Int Double -> Int# -> Int# -> [Double]
- lookup_range arr from# to#
- = if (from# ># to#)
- then []
- else (arr ! (I# from#))
- : (lookup_range arr (from# +# 1#) to#)
-
--- Arr# (Ratio Int) (ptrs) ---------------------------------
--- just like Int# test
-
-test_ptrs :: String
-test_ptrs
- = let arr# = f 1000
- in
- shows (lookup_range arr# 42 416) "\n"
- where
- f :: Int -> Array Int (Ratio Int)
-
- f size
- = runST (
- newArray (1, size) (3 % 5) >>= \ arr# ->
- -- don't fill in the whole thing
- fill_in arr# 1 400 >>
- freeze arr#
- )
-
- fill_in :: STArray s Int (Ratio Int) -> Int -> Int -> ST s ()
-
- fill_in arr_in# first last
- = if (first > last)
- then return ()
- else writeArray arr_in# first (fromIntegral (first * first)) >>
- fill_in arr_in# (first + 1) last
-
- lookup_range :: Array Int (Ratio Int) -> Int -> Int -> [Ratio Int]
- lookup_range array from too
- = if (from > too)
- then []
- else (array ! from) : (lookup_range array (from + 1) too)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun026.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun026.stdout
deleted file mode 100644
index 92043490a7..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun026.stdout
+++ /dev/null
@@ -1,12 +0,0 @@
-"*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\DEL\128\129\130\131\132\133\134\135\136\137\138\139\140\141\142\143\144\145\146\147\148\149\150\151\152\153\154\155\156\157\158\159\160\161\162\163\164\165\166\167\168\169\170\171\172\173\174\175\176\177\178\179\180\181\182\183\184\185\186\187\188\189\190\191\192\193\194\195\196\197\198\199\200\201\202\203\204\205\206\207\208\209\210\211\212\213\214\215\216\217\218\219\220\221\222\223\224\225\226\227\228\229\230\231\232\233\234\235\236\237\238\239\240\241\242\243\244\245\246\247\248\249\250\251\252\253\254\255\256\257\258\259\260\261\262\263\264\265\266\267\268\269\270\271\272\273\274\275\276\277\278\279\280\281\282\283\284\285\286\287\288\289\290\291\292\293\294\295\296\297\298\299\300\301\302\303\304\305\306\307\308\309\310\311\312\313\314\315\316\317\318\319\320\321\322\323\324\325\326\327\328\329\330\331\332\333\334\335\336\337\338\339\340\341\342\343\344\345\346\347\348\349\350\351\352\353\354\355\356\357\358\359\360\361\362\363\364\365\366\367\368\369\370\371\372\373\374\375\376\377\378\379\380\381\382\383\384\385\386\387\388\389\390\391\392\393\394\395\396\397\398\399\400\401\402\403\404\405\406\407\408\409\410\411\412\413\414\415\416"
-
-[1764,1849,1936,2025,2116,2209,2304,2401,2500,2601,2704,2809,2916,3025,3136,3249,3364,3481,3600,3721,3844,3969,4096,4225,4356,4489,4624,4761,4900,5041,5184,5329,5476,5625,5776,5929,6084,6241,6400,6561,6724,6889,7056,7225,7396,7569,7744,7921,8100,8281,8464,8649,8836,9025,9216,9409,9604,9801,10000,10201,10404,10609,10816,11025,11236,11449,11664,11881,12100,12321,12544,12769,12996,13225,13456,13689,13924,14161,14400,14641,14884,15129,15376,15625,15876,16129,16384,16641,16900,17161,17424,17689,17956,18225,18496,18769,19044,19321,19600,19881,20164,20449,20736,21025,21316,21609,21904,22201,22500,22801,23104,23409,23716,24025,24336,24649,24964,25281,25600,25921,26244,26569,26896,27225,27556,27889,28224,28561,28900,29241,29584,29929,30276,30625,30976,31329,31684,32041,32400,32761,33124,33489,33856,34225,34596,34969,35344,35721,36100,36481,36864,37249,37636,38025,38416,38809,39204,39601,40000,40401,40804,41209,41616,42025,42436,42849,43264,43681,44100,44521,44944,45369,45796,46225,46656,47089,47524,47961,48400,48841,49284,49729,50176,50625,51076,51529,51984,52441,52900,53361,53824,54289,54756,55225,55696,56169,56644,57121,57600,58081,58564,59049,59536,60025,60516,61009,61504,62001,62500,63001,63504,64009,64516,65025,65536,66049,66564,67081,67600,68121,68644,69169,69696,70225,70756,71289,71824,72361,72900,73441,73984,74529,75076,75625,76176,76729,77284,77841,78400,78961,79524,80089,80656,81225,81796,82369,82944,83521,84100,84681,85264,85849,86436,87025,87616,88209,88804,89401,90000,90601,91204,91809,92416,93025,93636,94249,94864,95481,96100,96721,97344,97969,98596,99225,99856,100489,101124,101761,102400,103041,103684,104329,104976,105625,106276,106929,107584,108241,108900,109561,110224,110889,111556,112225,112896,113569,114244,114921,115600,116281,116964,117649,118336,119025,119716,120409,121104,121801,122500,123201,123904,124609,125316,126025,126736,127449,128164,128881,129600,130321,131044,131769,132496,133225,133956,134689,135424,136161,136900,137641,138384,139129,139876,140625,141376,142129,142884,143641,144400,145161,145924,146689,147456,148225,148996,149769,150544,151321,152100,152881,153664,154449,155236,156025,156816,157609,158404,159201,160000,160801,161604,162409,163216,164025,164836,165649,166464,167281,168100,168921,169744,170569,171396,172225,173056]
-
-[1764,1849,1936,2025,2116,2209,2304,2401,2500,2601,2704,2809,2916,3025,3136,3249,3364,3481,3600,3721,3844,3969,4096,4225,4356,4489,4624,4761,4900,5041,5184,5329,5476,5625,5776,5929,6084,6241,6400,6561,6724,6889,7056,7225,7396,7569,7744,7921,8100,8281,8464,8649,8836,9025,9216,9409,9604,9801,10000,10201,10404,10609,10816,11025,11236,11449,11664,11881,12100,12321,12544,12769,12996,13225,13456,13689,13924,14161,14400,14641,14884,15129,15376,15625,15876,16129,16384,16641,16900,17161,17424,17689,17956,18225,18496,18769,19044,19321,19600,19881,20164,20449,20736,21025,21316,21609,21904,22201,22500,22801,23104,23409,23716,24025,24336,24649,24964,25281,25600,25921,26244,26569,26896,27225,27556,27889,28224,28561,28900,29241,29584,29929,30276,30625,30976,31329,31684,32041,32400,32761,33124,33489,33856,34225,34596,34969,35344,35721,36100,36481,36864,37249,37636,38025,38416,38809,39204,39601,40000,40401,40804,41209,41616,42025,42436,42849,43264,43681,44100,44521,44944,45369,45796,46225,46656,47089,47524,47961,48400,48841,49284,49729,50176,50625,51076,51529,51984,52441,52900,53361,53824,54289,54756,55225,55696,56169,56644,57121,57600,58081,58564,59049,59536,60025,60516,61009,61504,62001,62500,63001,63504,64009,64516,65025,65536,66049,66564,67081,67600,68121,68644,69169,69696,70225,70756,71289,71824,72361,72900,73441,73984,74529,75076,75625,76176,76729,77284,77841,78400,78961,79524,80089,80656,81225,81796,82369,82944,83521,84100,84681,85264,85849,86436,87025,87616,88209,88804,89401,90000,90601,91204,91809,92416,93025,93636,94249,94864,95481,96100,96721,97344,97969,98596,99225,99856,100489,101124,101761,102400,103041,103684,104329,104976,105625,106276,106929,107584,108241,108900,109561,110224,110889,111556,112225,112896,113569,114244,114921,115600,116281,116964,117649,118336,119025,119716,120409,121104,121801,122500,123201,123904,124609,125316,126025,126736,127449,128164,128881,129600,130321,131044,131769,132496,133225,133956,134689,135424,136161,136900,137641,138384,139129,139876,140625,141376,142129,142884,143641,144400,145161,145924,146689,147456,148225,148996,149769,150544,151321,152100,152881,153664,154449,155236,156025,156816,157609,158404,159201,160000,160801,161604,162409,163216,164025,164836,165649,166464,167281,168100,168921,169744,170569,171396,172225,173056]
-
-[131.9469,135.08849,138.23009,141.37167,144.51326,147.65486,150.79645,153.93805,157.07964,160.22124,163.36282,166.50441,169.64601,172.7876,175.9292,179.07079,182.21237,185.35397,188.49556,191.63716,194.77875,197.92035,201.06194,204.20352,207.34512,210.48671,213.62831,216.7699,219.9115,223.05309,226.19467,229.33627,232.47786,235.61946,238.76105,241.90263,245.04424,248.18582,251.32742,254.46901,257.6106,260.7522,263.8938,267.03537,270.17697,273.31857,276.46017,279.60175,282.74335,285.88495,289.02652,292.16812,295.30972,298.45132,301.5929,304.7345,307.8761,311.01767,314.15927,317.30087,320.44247,323.58405,326.72565,329.86725,333.00882,336.15042,339.29202,342.4336,345.5752,348.7168,351.8584,354.99997,358.14157,361.28317,364.42474,367.56635,370.70795,373.84955,376.99112,380.13272,383.27432,386.4159,389.5575,392.6991,395.8407,398.98227,402.12387,405.26547,408.40704,411.54865,414.69025,417.83185,420.97342,424.11502,427.25662,430.3982,433.5398,436.6814,439.823,442.96457,446.10617,449.24777,452.38934,455.53094,458.67255,461.81415,464.95572,468.09732,471.23892,474.3805,477.5221,480.6637,483.80527,486.94687,490.08847,493.23007,496.37164,499.51324,502.65485,505.79642,508.93802,512.0796,515.2212,518.3628,521.5044,524.646,527.7876,530.9292,534.07074,537.21234,540.35394,543.49554,546.63715,549.77875,552.92035,556.0619,559.2035,562.3451,565.4867,568.6283,571.7699,574.9115,578.05304,581.19464,584.33624,587.47784,590.61945,593.76105,596.90265,600.0442,603.1858,606.3274,609.469,612.6106,615.7522,618.8938,622.03534,625.17694,628.31854,631.46014,634.60175,637.74335,640.88495,644.0265,647.1681,650.3097,653.4513,656.5929,659.7345,662.8761,666.01764,669.15924,672.30084,675.44244,678.58405,681.72565,684.8672,688.0088,691.1504,694.292,697.4336,700.5752,703.7168,706.85834,709.99994,713.14154,716.28314,719.42474,722.56635,725.70795,728.8495,731.9911,735.1327,738.2743,741.4159,744.5575,747.6991,750.84064,753.98224,757.12384,760.26544,763.40704,766.54865,769.69025,772.8318,775.9734,779.115,782.2566,785.3982,788.5398,791.6814,794.82294,797.96454,801.10614,804.24774,807.38934,810.53094,813.67255,816.8141,819.9557,823.0973,826.2389,829.3805,832.5221,835.6637,838.80524,841.94684,845.08844,848.23004,851.37164,854.51324,857.65485,860.7964,863.938,867.0796,870.2212,873.3628,876.5044,879.646,882.78754,885.92914,889.07074,892.21234,895.35394,898.49554,901.63715,904.7787,907.9203,911.0619,914.2035,917.3451,920.4867,923.6283,926.76984,929.91144,933.05304,936.19464,939.33624,942.47784,945.6194,948.761,951.9026,955.0442,958.1858,961.3274,964.469,967.61053,970.75214,973.89374,977.03534,980.17694,983.31854,986.46014,989.6017,992.7433,995.8849,999.0265,1002.1681,1005.3097,1008.4513,1011.59283,1014.73444,1017.87604,1021.01764,1024.1592,1027.3008,1030.4424,1033.584,1036.7256,1039.8672,1043.0088,1046.1504,1049.292,1052.4336,1055.5752,1058.7168,1061.8584,1065.0,1068.1415,1071.2831,1074.4247,1077.5663,1080.7079,1083.8495,1086.9911,1090.1327,1093.2743,1096.4159,1099.5575,1102.6991,1105.8407,1108.9822,1112.1238,1115.2654,1118.407,1121.5486,1124.6902,1127.8318,1130.9734,1134.115,1137.2566,1140.3982,1143.5398,1146.6814,1149.823,1152.9645,1156.1061,1159.2477,1162.3893,1165.5309,1168.6725,1171.8141,1174.9557,1178.0973,1181.2389,1184.3805,1187.5221,1190.6637,1193.8053,1196.9468,1200.0884,1203.23,1206.3716,1209.5132,1212.6548,1215.7964,1218.938,1222.0796,1225.2212,1228.3628,1231.5044,1234.646,1237.7876,1240.9291,1244.0707,1247.2123,1250.3539,1253.4955,1256.6371,1259.7787,1262.9203,1266.0619,1269.2035,1272.3451,1275.4867,1278.6283,1281.7699,1284.9114,1288.053,1291.1946,1294.3362,1297.4778,1300.6194,1303.761,1306.9026]
-
-[131.94689145077132,135.0884841043611,138.23007675795088,141.3716694115407,144.51326206513048,147.6548547187203,150.79644737231007,153.93804002589985,157.07963267948966,160.22122533307945,163.36281798666926,166.50441064025904,169.64600329384882,172.78759594743863,175.92918860102841,179.0707812546182,182.212373908208,185.3539665617978,188.49555921538757,191.63715186897738,194.77874452256717,197.92033717615698,201.06192982974676,204.20352248333654,207.34511513692635,210.48670779051614,213.62830044410595,216.76989309769573,219.9114857512855,223.05307840487532,226.1946710584651,229.3362637120549,232.4778563656447,235.61944901923448,238.76104167282426,241.90263432641407,245.04422698000386,248.18581963359367,251.32741228718345,254.46900494077323,257.610597594363,260.75219024795285,263.89378290154264,267.0353755551324,270.1769682087222,273.318560862312,276.46015351590177,279.6017461694916,282.7433388230814,285.88493147667117,289.02652413026095,292.16811678385073,295.3097094374406,298.45130209103036,301.59289474462014,304.7344873982099,307.8760800517997,311.01767270538954,314.1592653589793,317.3008580125691,320.4424506661589,323.5840433197487,326.7256359733385,329.8672286269283,333.0088212805181,336.15041393410786,339.29200658769764,342.4335992412874,345.57519189487726,348.71678454846705,351.85837720205683,354.9999698556466,358.1415625092364,361.28315516282623,364.424747816416,367.5663404700058,370.7079331235956,373.84952577718536,376.99111843077515,380.132711084365,383.27430373795477,386.41589639154455,389.55748904513433,392.6990816987241,395.84067435231395,398.98226700590374,402.1238596594935,405.2654523130833,408.4070449666731,411.5486376202629,414.6902302738527,417.8318229274425,420.97341558103227,424.11500823462205,427.2566008882119,430.3981935418017,433.53978619539146,436.68137884898124,439.822971502571,442.9645641561608,446.10615680975064,449.2477494633404,452.3893421169302,455.53093477052,458.6725274241098,461.8141200776996,464.9557127312894,468.0973053848792,471.23889803846896,474.38049069205874,477.5220833456485,480.66367599923836,483.80526865282815,486.94686130641793,490.0884539600077,493.2300466135975,496.37163926718733,499.5132319207771,502.6548245743669,505.7964172279567,508.93800988154646,512.0796025351362,515.221195188726,518.3627878423158,521.5043804959057,524.6459731494955,527.7875658030853,530.929158456675,534.0707511102648,537.2123437638546,540.3539364174444,543.4955290710342,546.637121724624,549.7787143782137,552.9203070318035,556.0618996853934,559.2034923389832,562.345084992573,565.4866776461628,568.6282702997526,571.7698629533423,574.9114556069321,578.0530482605219,581.1946409141117,584.3362335677015,587.4778262212914,590.6194188748811,593.7610115284709,596.9026041820607,600.0441968356505,603.1857894892403,606.3273821428301,609.4689747964198,612.6105674500096,615.7521601035994,618.8937527571892,622.0353454107791,625.1769380643689,628.3185307179587,631.4601233715484,634.6017160251382,637.743308678728,640.8849013323178,644.0264939859076,647.1680866394973,650.3096792930871,653.451271946677,656.5928646002668,659.7344572538566,662.8760499074464,666.0176425610362,669.1592352146259,672.3008278682157,675.4424205218055,678.5840131753953,681.7256058289851,684.8671984825748,688.0087911361647,691.1503837897545,694.2919764433443,697.4335690969341,700.5751617505239,703.7167544041137,706.8583470577034,709.9999397112932,713.141532364883,716.2831250184728,719.4247176720626,722.5663103256525,725.7079029792422,728.849495632832,731.9910882864218,735.1326809400116,738.2742735936014,741.4158662471912,744.557458900781,747.6990515543707,750.8406442079605,753.9822368615503,757.1238295151402,760.26542216873,763.4070148223198,766.5486074759095,769.6902001294993,772.8317927830891,775.9733854366789,779.1149780902687,782.2565707438584,785.3981633974482,788.5397560510381,791.6813487046279,794.8229413582177,797.9645340118075,801.1061266653973,804.247719318987,807.3893119725768,810.5309046261666,813.6724972797564,816.8140899333462,819.955682586936,823.0972752405258,826.2388678941156,829.3804605477054,832.5220532012952,835.663645854885,838.8052385084748,841.9468311620645,845.0884238156543,848.2300164692441,851.3716091228339,854.5132017764238,857.6547944300136,860.7963870836033,863.9379797371931,867.0795723907829,870.2211650443727,873.3627576979625,876.5043503515523,879.645943005142,882.7875356587318,885.9291283123216,889.0707209659115,892.2123136195013,895.3539062730911,898.4954989266809,901.6370915802706,904.7786842338604,907.9202768874502,911.06186954104,914.2034621946298,917.3450548482195,920.4866475018093,923.6282401553992,926.769832808989,929.9114254625788,933.0530181161686,936.1946107697584,939.3362034233481,942.4777960769379,945.6193887305277,948.7609813841175,951.9025740377073,955.044166691297,958.185759344887,961.3273519984767,964.4689446520665,967.6105373056563,970.7521299592461,973.8937226128359,977.0353152664256,980.1769079200154,983.3185005736052,986.460093227195,989.6016858807849,992.7432785343747,995.8848711879644,999.0264638415542,1002.168056495144,1005.3096491487338,1008.4512418023236,1011.5928344559134,1014.7344271095031,1017.8760197630929,1021.0176124166827,1024.1592050702725,1027.3007977238624,1030.442390377452,1033.583983031042,1036.7255756846316,1039.8671683382215,1043.0087609918114,1046.150353645401,1049.291946298991,1052.4335389525806,1055.5751316061705,1058.7167242597602,1061.85831691335,1064.9999095669398,1068.1415022205297,1071.2830948741193,1074.4246875277092,1077.5662801812991,1080.7078728348888,1083.8494654884787,1086.9910581420684,1090.1326507956583,1093.274243449248,1096.4158361028378,1099.5574287564275,1102.6990214100174,1105.840614063607,1108.982206717197,1112.1237993707869,1115.2653920243765,1118.4069846779664,1121.548577331556,1124.690169985146,1127.8317626387357,1130.9733552923256,1134.1149479459152,1137.2565405995051,1140.398133253095,1143.5397259066847,1146.6813185602746,1149.8229112138642,1152.9645038674541,1156.1060965210438,1159.2476891746337,1162.3892818282234,1165.5308744818133,1168.672467135403,1171.8140597889928,1174.9556524425827,1178.0972450961724,1181.2388377497623,1184.380430403352,1187.5220230569419,1190.6636157105315,1193.8052083641214,1196.946801017711,1200.088393671301,1203.2299863248907,1206.3715789784806,1209.5131716320705,1212.6547642856601,1215.79635693925,1218.9379495928397,1222.0795422464296,1225.2211349000193,1228.3627275536091,1231.5043202071988,1234.6459128607887,1237.7875055143784,1240.9290981679683,1244.0706908215582,1247.2122834751478,1250.3538761287377,1253.4954687823274,1256.6370614359173,1259.778654089507,1262.9202467430969,1266.0618393966865,1269.2034320502764,1272.345024703866,1275.486617357456,1278.628210011046,1281.7698026646356,1284.9113953182255,1288.0529879718151,1291.194580625405,1294.3361732789947,1297.4777659325846,1300.6193585861743,1303.7609512397642,1306.902543893354]
-
-[1764 % 1,1849 % 1,1936 % 1,2025 % 1,2116 % 1,2209 % 1,2304 % 1,2401 % 1,2500 % 1,2601 % 1,2704 % 1,2809 % 1,2916 % 1,3025 % 1,3136 % 1,3249 % 1,3364 % 1,3481 % 1,3600 % 1,3721 % 1,3844 % 1,3969 % 1,4096 % 1,4225 % 1,4356 % 1,4489 % 1,4624 % 1,4761 % 1,4900 % 1,5041 % 1,5184 % 1,5329 % 1,5476 % 1,5625 % 1,5776 % 1,5929 % 1,6084 % 1,6241 % 1,6400 % 1,6561 % 1,6724 % 1,6889 % 1,7056 % 1,7225 % 1,7396 % 1,7569 % 1,7744 % 1,7921 % 1,8100 % 1,8281 % 1,8464 % 1,8649 % 1,8836 % 1,9025 % 1,9216 % 1,9409 % 1,9604 % 1,9801 % 1,10000 % 1,10201 % 1,10404 % 1,10609 % 1,10816 % 1,11025 % 1,11236 % 1,11449 % 1,11664 % 1,11881 % 1,12100 % 1,12321 % 1,12544 % 1,12769 % 1,12996 % 1,13225 % 1,13456 % 1,13689 % 1,13924 % 1,14161 % 1,14400 % 1,14641 % 1,14884 % 1,15129 % 1,15376 % 1,15625 % 1,15876 % 1,16129 % 1,16384 % 1,16641 % 1,16900 % 1,17161 % 1,17424 % 1,17689 % 1,17956 % 1,18225 % 1,18496 % 1,18769 % 1,19044 % 1,19321 % 1,19600 % 1,19881 % 1,20164 % 1,20449 % 1,20736 % 1,21025 % 1,21316 % 1,21609 % 1,21904 % 1,22201 % 1,22500 % 1,22801 % 1,23104 % 1,23409 % 1,23716 % 1,24025 % 1,24336 % 1,24649 % 1,24964 % 1,25281 % 1,25600 % 1,25921 % 1,26244 % 1,26569 % 1,26896 % 1,27225 % 1,27556 % 1,27889 % 1,28224 % 1,28561 % 1,28900 % 1,29241 % 1,29584 % 1,29929 % 1,30276 % 1,30625 % 1,30976 % 1,31329 % 1,31684 % 1,32041 % 1,32400 % 1,32761 % 1,33124 % 1,33489 % 1,33856 % 1,34225 % 1,34596 % 1,34969 % 1,35344 % 1,35721 % 1,36100 % 1,36481 % 1,36864 % 1,37249 % 1,37636 % 1,38025 % 1,38416 % 1,38809 % 1,39204 % 1,39601 % 1,40000 % 1,40401 % 1,40804 % 1,41209 % 1,41616 % 1,42025 % 1,42436 % 1,42849 % 1,43264 % 1,43681 % 1,44100 % 1,44521 % 1,44944 % 1,45369 % 1,45796 % 1,46225 % 1,46656 % 1,47089 % 1,47524 % 1,47961 % 1,48400 % 1,48841 % 1,49284 % 1,49729 % 1,50176 % 1,50625 % 1,51076 % 1,51529 % 1,51984 % 1,52441 % 1,52900 % 1,53361 % 1,53824 % 1,54289 % 1,54756 % 1,55225 % 1,55696 % 1,56169 % 1,56644 % 1,57121 % 1,57600 % 1,58081 % 1,58564 % 1,59049 % 1,59536 % 1,60025 % 1,60516 % 1,61009 % 1,61504 % 1,62001 % 1,62500 % 1,63001 % 1,63504 % 1,64009 % 1,64516 % 1,65025 % 1,65536 % 1,66049 % 1,66564 % 1,67081 % 1,67600 % 1,68121 % 1,68644 % 1,69169 % 1,69696 % 1,70225 % 1,70756 % 1,71289 % 1,71824 % 1,72361 % 1,72900 % 1,73441 % 1,73984 % 1,74529 % 1,75076 % 1,75625 % 1,76176 % 1,76729 % 1,77284 % 1,77841 % 1,78400 % 1,78961 % 1,79524 % 1,80089 % 1,80656 % 1,81225 % 1,81796 % 1,82369 % 1,82944 % 1,83521 % 1,84100 % 1,84681 % 1,85264 % 1,85849 % 1,86436 % 1,87025 % 1,87616 % 1,88209 % 1,88804 % 1,89401 % 1,90000 % 1,90601 % 1,91204 % 1,91809 % 1,92416 % 1,93025 % 1,93636 % 1,94249 % 1,94864 % 1,95481 % 1,96100 % 1,96721 % 1,97344 % 1,97969 % 1,98596 % 1,99225 % 1,99856 % 1,100489 % 1,101124 % 1,101761 % 1,102400 % 1,103041 % 1,103684 % 1,104329 % 1,104976 % 1,105625 % 1,106276 % 1,106929 % 1,107584 % 1,108241 % 1,108900 % 1,109561 % 1,110224 % 1,110889 % 1,111556 % 1,112225 % 1,112896 % 1,113569 % 1,114244 % 1,114921 % 1,115600 % 1,116281 % 1,116964 % 1,117649 % 1,118336 % 1,119025 % 1,119716 % 1,120409 % 1,121104 % 1,121801 % 1,122500 % 1,123201 % 1,123904 % 1,124609 % 1,125316 % 1,126025 % 1,126736 % 1,127449 % 1,128164 % 1,128881 % 1,129600 % 1,130321 % 1,131044 % 1,131769 % 1,132496 % 1,133225 % 1,133956 % 1,134689 % 1,135424 % 1,136161 % 1,136900 % 1,137641 % 1,138384 % 1,139129 % 1,139876 % 1,140625 % 1,141376 % 1,142129 % 1,142884 % 1,143641 % 1,144400 % 1,145161 % 1,145924 % 1,146689 % 1,147456 % 1,148225 % 1,148996 % 1,149769 % 1,150544 % 1,151321 % 1,152100 % 1,152881 % 1,153664 % 1,154449 % 1,155236 % 1,156025 % 1,156816 % 1,157609 % 1,158404 % 1,159201 % 1,160000 % 1,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5,3 % 5]
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun027.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun027.hs
deleted file mode 100644
index 646d05c38b..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun027.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- !!! simple test of 0-method classes
---
-
-class (Num a, Integral a) => Foo a
-
-main = putStr (shows (f ((fromInteger 21)::Int)
- ((fromInteger 37))) "\n")
-
-instance Foo Int
-
-f :: Foo a => a -> a -> Integer
-
-f a b = toInteger (a + b)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun027.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun027.stdout
deleted file mode 100644
index 8c61d23e12..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun027.stdout
+++ /dev/null
@@ -1 +0,0 @@
-58
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun028.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun028.hs
deleted file mode 100644
index 3fa877cdb8..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun028.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-main = putStr (shows (f (read "42.0")) "\n")
-
--- f compiled to bogus code with ghc 0.18 and earlier
--- switch() on a DoubleReg
-
-f :: Double -> Int
-f 1.0 = 1
-f 2.0 = 2
-f 3.0 = 3
-f x = round x
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun028.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun028.stdout
deleted file mode 100644
index d81cc0710e..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun028.stdout
+++ /dev/null
@@ -1 +0,0 @@
-42
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun031.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun031.hs
deleted file mode 100644
index 2a2c7a9b64..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun031.hs
+++ /dev/null
@@ -1,45 +0,0 @@
-{-# LANGUAGE MagicHash #-}
--- !! test GEN reps w/ unboxed values in them
--- !! NB: it was the static ones that were hosed...
---
-module Main ( main ) where
-
---import PrelBase
-import GHC.Base
-
-main = do
- putStr (shows (sum ([1..1{-30-}]++[1..1{-40-}]++[11,22])) "\n")
- putStr (shows (prog 1{-30-} 1{-40-}) "\n")
-
-data Foo a
- = MkFoo [a] Int# [Int] Int# [(a,Int)] Int#
- -- The above will cause a *horrible* GEN rep'n.
-
-prog :: Int -> Int -> Int
-
-prog size_1 size_2
- = let
- list1 = static1 : (map mk_foo [1 .. size_1])
- list2 = static2 : (map mk_foo [1 .. size_2])
- in
- I# (add_up 0# list1 (reverse list2))
-
-static1 = MkFoo (error "static11") 11# [] 11# (error "static12") 11#
-static2 = MkFoo (error "static21") 22# [] 22# (error "static22") 22#
-
-one, two :: Int
-one = 1; two = 2
-
-mk_foo i@(I# i#)
- = MkFoo (error "list1") i# [i,i] i# (error "list2") i#
-
-add_up :: Int# -> [Foo a] -> [Foo a] -> Int#
-
-add_up acc [] [] = acc
-add_up acc [] ys = add_up acc ys []
-add_up acc (x:xs) (y:ys) = add_up (acc +# add x y) xs ys
-add_up acc (x:xs) [] = add_up acc xs []
-
-add :: Foo a -> Foo a -> Int#
-add (MkFoo _ _ _ _ _ x) (MkFoo _ _ _ _ _ y)
- = x +# y
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun031.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun031.stdout
deleted file mode 100644
index a91166f4a3..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun031.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-35
-35
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun032.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun032.hs
deleted file mode 100644
index 3c1404b319..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun032.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE MagicHash #-}
--- !! pattern-matching failure on functions that return Int#
-
---import PrelBase --ghc1.3
-import GHC.Base
-
-main = putStr (shows (I# (foo bar1 bar2)) "\n")
- where
- bar1 = Bar1 40 (39,38) resps
- bar2 = Bar1 2 ( 1, 0) resps
- resps = error "1.2 responses"
-
-data Response = Response -- stub
-
-data Bar
- = Bar1 Int (Int,Int) [Response]
- | Bar2 Int Int#
- | Bar3 Int
-
-foo :: Bar -> Bar -> Int#
-
-foo (Bar1 (I# i) _ _) (Bar1 (I# j) _ _) = i +# j
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun032.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun032.stdout
deleted file mode 100644
index d81cc0710e..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun032.stdout
+++ /dev/null
@@ -1 +0,0 @@
-42
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun033.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun033.hs
deleted file mode 100644
index 6e4a0b9a9d..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun033.hs
+++ /dev/null
@@ -1,79 +0,0 @@
-{-# LANGUAGE MagicHash #-}
--- !! worker/wrapper turns ( \ <absent> -> Int# ) function
--- !! into Int# -- WRONG
-
---import PrelBase --ghc1.3
-import GHC.Base
-
-main = putStr (shows true_or_false "\n")
- where
- true_or_false
- = case (cmp_name True imp1 imp2) of
- -1# -> False
- 0# -> True
- 1# -> False
-
- imp1 = Imp s "Imp1" s s
- imp2 = Imp s "Imp2" s s
-
- s = "String!"
-
--- taken from compiler: basicTypes/ProtoName.lhs
-
-cmp_name :: Bool -> ProtoName -> ProtoName -> Int#
-
-cmp_name by_local (Unk n1) (Unk n2) = cmpString n1 n2
-cmp_name by_local (Unk n1) (Imp m n2 _ o2) = cmpString n1 (if by_local then o2 else n2)
-cmp_name by_local (Unk n1) (Prel nm)
- = let (_, n2) = getOrigName nm in
- cmpString n1 n2
-
-cmp_name by_local (Prel n1) (Prel n2) = cmpName n1 n2
-
-cmp_name True (Imp _ _ _ o1) (Imp _ _ _ o2) = cmpString o1 o2
-
-cmp_name False (Imp m1 n1 _ _) (Imp m2 n2 _ _)
- = case cmpString n1 n2 of {
- -1# -> -1#;
- 0# -> case cmpString m1 m2 of {
- 0# -> 0#;
- xxx -> if null m1 || null m2
- then 0#
- else xxx
- };
- _ -> 1#
- }
-
-cmp_name True (Imp _ _ _ o1) (Prel nm)
- = let
- (_, n2) = getOrigName nm
- in
- cmpString o1 n2
-
-cmp_name False (Imp m1 n1 _ _) (Prel nm)
- = case getOrigName nm of { (m2, n2) ->
- case cmpString n1 n2 of { -1# -> -1#; 0# -> cmpString m1 m2; _ -> 1# }}
-
-cmp_name by_local other_p1 other_p2
- = case cmp_name by_local other_p2 other_p1 of -- compare the other way around
- -1# -> 1#
- 0# -> 0#
- _ -> -1#
-
-data ProtoName
- = Unk String -- local name in module
-
- | Imp String -- name of defining module
- String -- name used in defining name
- String -- name of the module whose interface told me
- -- about this thing
- String -- occurrence name
-
- | Prel String{-Name-}
-
-cmpString, cmpName :: String -> String -> Int#
-cmpString a b = 0#
-cmpName = cmpString
-
-getOrigName :: String -> (String, String)
-getOrigName x = ("MODULE", x)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun033.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun033.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun033.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun034.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun034.hs
deleted file mode 100644
index 0f7f05297e..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun034.hs
+++ /dev/null
@@ -1,161 +0,0 @@
--- !! fromRational woes
-import Data.Ratio -- 1.3
-
-main = putStr (
- shows tinyFloat ( '\n'
- : shows t_f ( '\n'
- : shows hugeFloat ( '\n'
- : shows h_f ( '\n'
- : shows tinyDouble ( '\n'
- : shows t_d ( '\n'
- : shows hugeDouble ( '\n'
- : shows h_d ( '\n'
- : shows x_f ( '\n'
- : shows x_d ( '\n'
- : shows y_f ( '\n'
- : shows y_d ( "\n"
- )))))))))))))
- where
- t_f :: Float
- t_d :: Double
- h_f :: Float
- h_d :: Double
- x_f :: Float
- x_d :: Double
- y_f :: Float
- y_d :: Double
- t_f = fromRationalX (toRational tinyFloat)
- t_d = fromRationalX (toRational tinyDouble)
- h_f = fromRationalX (toRational hugeFloat)
- h_d = fromRationalX (toRational hugeDouble)
- x_f = fromRationalX (1.82173691287639817263897126389712638972163e-300 :: Rational)
- x_d = fromRationalX (1.82173691287639817263897126389712638972163e-300 :: Rational)
- y_f = 1.82173691287639817263897126389712638972163e-300
- y_d = 1.82173691287639817263897126389712638972163e-300
-
-fromRationalX :: (RealFloat a) => Rational -> a
-fromRationalX r =
- let
- h = ceiling (huge `asTypeOf` x)
- b = toInteger (floatRadix x)
- x = fromRat 0 r
- fromRat e0 r' =
- let d = denominator r'
- n = numerator r'
- in if d > h then
- let e = integerLogBase b (d `div` h) + 1
- in fromRat (e0-e) (n % (d `div` (b^e)))
- else if abs n > h then
- let e = integerLogBase b (abs n `div` h) + 1
- in fromRat (e0+e) ((n `div` (b^e)) % d)
- else
- scaleFloat e0 (rationalToRealFloat {-fromRational-} r')
- in x
-
-{-
-fromRationalX r =
- rationalToRealFloat r
-{- Hmmm...
- let
- h = ceiling (huge `asTypeOf` x)
- b = toInteger (floatRadix x)
- x = fromRat 0 r
-
- fromRat e0 r' =
-{--} trace (shows e0 ('/' : shows r' ('/' : shows h "\n"))) (
- let d = denominator r'
- n = numerator r'
- in if d > h then
- let e = integerLogBase b (d `div` h) + 1
- in fromRat (e0-e) (n % (d `div` (b^e)))
- else if abs n > h then
- let e = integerLogBase b (abs n `div` h) + 1
- in fromRat (e0+e) ((n `div` (b^e)) % d)
- else
- scaleFloat e0 (rationalToRealFloat r')
- -- now that we know things are in-bounds,
- -- we use the "old" Prelude code.
-{--} )
- in x
--}
--}
-
--- Compute the discrete log of i in base b.
--- Simplest way would be just divide i by b until it's smaller then b, but that would
--- be very slow! We are just slightly more clever.
-integerLogBase :: Integer -> Integer -> Int
-integerLogBase b i =
- if i < b then
- 0
- else
- -- Try squaring the base first to cut down the number of divisions.
- let l = 2 * integerLogBase (b*b) i
- doDiv :: Integer -> Int -> Int
- doDiv i l = if i < b then l else doDiv (i `div` b) (l+1)
- in doDiv (i `div` (b^l)) l
-
-
-------------
-
--- Compute smallest and largest floating point values.
-tiny :: (RealFloat a) => a
-tiny =
- let (l, _) = floatRange x
- x = encodeFloat 1 (l-1)
- in x
-
-huge :: (RealFloat a) => a
-huge =
- let (_, u) = floatRange x
- d = floatDigits x
- x = encodeFloat (floatRadix x ^ d - 1) (u - d)
- in x
-
-tinyDouble = tiny :: Double
-tinyFloat = tiny :: Float
-hugeDouble = huge :: Double
-hugeFloat = huge :: Float
-
-{-
-[In response to a request by simonpj, Joe Fasel writes:]
-
-A quite reasonable request! This code was added to the Prelude just
-before the 1.2 release, when Lennart, working with an early version
-of hbi, noticed that (read . show) was not the identity for
-floating-point numbers. (There was a one-bit error about half the time.)
-The original version of the conversion function was in fact simply
-a floating-point divide, as you suggest above. The new version is,
-I grant you, somewhat denser.
-
-How's this?
-
---Joe
--}
-
-
-rationalToRealFloat :: (RealFloat a) => Rational -> a
-
-rationalToRealFloat x = x'
- where x' = f e
-
--- If the exponent of the nearest floating-point number to x
--- is e, then the significand is the integer nearest xb^(-e),
--- where b is the floating-point radix. We start with a good
--- guess for e, and if it is correct, the exponent of the
--- floating-point number we construct will again be e. If
--- not, one more iteration is needed.
-
- f e = if e' == e then y else f e'
- where y = encodeFloat (round (x * (1%b)^^e)) e
- (_,e') = decodeFloat y
- b = floatRadix x'
-
--- We obtain a trial exponent by doing a floating-point
--- division of x's numerator by its denominator. The
--- result of this division may not itself be the ultimate
--- result, because of an accumulation of three rounding
--- errors.
-
- (s,e) = decodeFloat (fromInteger (numerator x) `asTypeOf` x'
- / fromInteger (denominator x))
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun034.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun034.stdout
deleted file mode 100644
index 0c2be1c979..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun034.stdout
+++ /dev/null
@@ -1,12 +0,0 @@
-1.1754944e-38
-1.1754944e-38
-3.4028235e38
-3.4028235e38
-2.2250738585072014e-308
-2.2250738585072014e-308
-1.7976931348623157e308
-1.7976931348623157e308
-0.0
-1.821736912876398e-300
-0.0
-1.821736912876398e-300
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun035.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun035.hs
deleted file mode 100644
index dfd73cb40a..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun035.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-module Main (main) where
-
-import Foreign.C
-import System.IO.Unsafe ( unsafePerformIO )
-
-c :: Double -> Double
-c x = cos x
- where
- cos :: Double -> Double
- cos x = realToFrac (unsafePerformIO (c_cos (realToFrac x)))
-
-foreign import ccall unsafe "cos"
- c_cos :: CDouble -> IO CDouble
-
-main = putStr (shows (c 0.0) "\n")
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun035.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun035.stdout
deleted file mode 100644
index d3827e75a5..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun035.stdout
+++ /dev/null
@@ -1 +0,0 @@
-1.0
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun036.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun036.hs
deleted file mode 100644
index 40bfa74328..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun036.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- !! Won't compile unless the compile succeeds on
--- !! the "single occurrence of big thing in a duplicated small thing"
--- !! inlining old-chestnut. WDP 95/03
---
-module Main ( main, g ) where
-
-main = putStr (shows (g 42 45 45) "\n")
-
-g :: Int -> Int -> Int -> [Int]
-
-g x y z
- = let
- f a b = a + b * a * b - a + a + b + b * a * b - a + a + b + b * a * b - a + a + b + b * a * b - a + a + b + b * a * b - a + a + b + b * a * b - a + a + b + b * a * b - a + a + b + b * a * b - a + a + b + b * a * b - a + a + b + b * a * b - a + a + b + b * a * b - a + a + b + b * a * b - a + a + b + b * a * b - a + a + b + b * a * b - a + a + b
- g c = f c c
- in
- [g x, g y, g z, g x, g y, g z, g x, g y, g z, g x, g y, g z, g x, g y, g z, g x, g y, g z, g x, g y, g z, g x, g y, g z, g x, g y, g z, g x, g y, g z, g x, g y]
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun036.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun036.stdout
deleted file mode 100644
index 7b74638be6..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun036.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[1037862,1276425,1276425,1037862,1276425,1276425,1037862,1276425,1276425,1037862,1276425,1276425,1037862,1276425,1276425,1037862,1276425,1276425,1037862,1276425,1276425,1037862,1276425,1276425,1037862,1276425,1276425,1037862,1276425,1276425,1037862,1276425]
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun037.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun037.hs
deleted file mode 100644
index 9c16f37962..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun037.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- Andy Gill bug report 95/08:
--- Constant strings with '\0' in them don't work :-
---
-main = putStrLn "hello\0 world"
---main = putStrLn "hello0 world"
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun037.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun037.stdout
deleted file mode 100644
index fa50190f4c..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun037.stdout
+++ /dev/null
Binary files differ
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun038.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun038.hs
deleted file mode 100644
index 57669c6d29..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun038.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-
-From: Rajiv Mirani <mirani>
-Date: Sat, 26 Aug 95 21:14:47 -0400
-Subject: GHC bug
-
-GHC can't parse the following program when there is no newline at the
-end of the last line:
--}
-
-module Main where
-main :: IO ()
-main = return ()
--- random comment \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun038.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun038.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun038.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun039.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun039.hs
deleted file mode 100644
index b7b301794d..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun039.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !!! From a Rick Morgan bug report:
--- !!! Single-method class with a locally-polymorphic
--- !!! method.
-
-module Main where
-
-class Poly a where
- poly :: a -> b -> b
-
-instance Poly [a] where
- poly [] y = y
- poly x y = y
-
-main = print ("hurrah" `poly` "Hello, world!\n")
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun039.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun039.stdout
deleted file mode 100644
index 1c2d5d620b..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun039.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"Hello, world!\n"
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun040.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun040.hs
deleted file mode 100644
index d747d4ab8b..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun040.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-module Main(main) where
-
-data Burble a = B1 { op1 :: a -> Int, op2 :: Int -> a, op3 :: Int}
- | B2 { op2 :: Int -> a, op4 :: Int -> Int }
-
-
-f1 :: Int -> Burble Int
-f1 n = B1 { op1 = \x->x+n, op2 = \x -> x, op3 = n }
-
-f2 :: Burble a -> Int -> Int
-f2 r@(B1 {op1 = op1 , op2 = op2 }) n = op1 (op2 n) + op3 r
-
-f3 :: Burble a -> Burble a
-f3 x@(B1 {op3=op3}) = x {op3 = op3+1}
-
-main = print (f2 (f3 (f1 3)) 4)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun040.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun040.stdout
deleted file mode 100644
index b4de394767..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun040.stdout
+++ /dev/null
@@ -1 +0,0 @@
-11
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun043.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun043.hs
deleted file mode 100644
index 88de4c92f2..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun043.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- !!! Tickled a bug in core2stg
--- !!! (CoreSyn.Coerce constructors were not peeled off
--- !!! when converting CoreSyn.App)
-
-module Main where
-
-getData :: String -> IO ()
-getData filename = case leng filename of {0 -> return ()}
-leng :: String -> Int
-leng [] = 0 --case ls of {[] -> 0 ; (_:xs) -> 1 + leng xs }
-leng ls = leng ls
-
-f [] [] = []
-f xs ys = f xs ys
-
-main =
- return () >>= \ _ ->
- case f [] [] of { [] -> getData [] }
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun043.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun043.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun043.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun044.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun044.hs
deleted file mode 100644
index cc2c5d64e5..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun044.hs
+++ /dev/null
@@ -1,195 +0,0 @@
-{-# OPTIONS -cpp #-}
--- !!! Testing IEEE Float and Double extremity predicates.
-module Main(main) where
-
-import Data.Char
-import Control.Monad.ST
-import Data.Word
-import Data.Array.ST
-
-#include "ghcconfig.h"
-
-reverse_if_bigendian :: [a] -> [a]
-#ifdef WORDS_BIGENDIAN
-reverse_if_bigendian = reverse
-#else
-reverse_if_bigendian = id
-#endif
-
-
-main :: IO ()
-main = do
- sequence_ (map putStrLn double_tests)
- sequence_ (map putStrLn float_tests)
- where
- double_tests = run_tests double_numbers
- float_tests = run_tests float_numbers
-
- run_tests nums =
- map ($ nums)
- [ denorm
- , pos_inf
- , neg_inf
- , nan
- , neg_zero
- , pos_zero
- ]
-
--------------
-double_numbers :: [Double]
-double_numbers =
- [ 0
- , encodeFloat 0 0 -- 0 using encodeFloat method
- , mkDouble (reverse_if_bigendian [0,0,0,0,0,0, 0xf0, 0x7f]) -- +inf
- , encodeFloat 1 2047 -- +Inf
- , encodeFloat 1 2048
- , encodeFloat 1 2047 -- signalling NaN
- , encodeFloat 0xf000000000000 2047 -- quiet NaN
- , 0/(0::Double)
- -- misc
- , 1.82173691287639817263897126389712638972163e-300
- , 1.82173691287639817263897126389712638972163e+300
- , 4.9406564558412465e-324 -- smallest possible denorm number
- -- (as reported by enquire running
- -- on a i686-pc-linux.)
- , 2.2250738585072014e-308
- , 0.11
- , 0.100
- , -3.4
- -- smallest
- , let (l, _) = floatRange x
- x = encodeFloat 1 (l-1)
- in x
- -- largest
- , let (_, u) = floatRange x
- d = floatDigits x
- x = encodeFloat (floatRadix x ^ d - 1) (u - d)
- in x
- ]
-
-float_numbers :: [Float]
-float_numbers =
- [ 0
- , encodeFloat 0 0 -- 0 using encodeFloat method
- , encodeFloat 1 255 -- +Inf
- , encodeFloat 1 256
- , encodeFloat 11 255 -- signalling NaN
- , encodeFloat 0xf00000 255 -- quiet NaN
- , 0/(0::Float)
- -- misc
- , 1.82173691287639817263897126389712638972163e-300
- , 1.82173691287639817263897126389712638972163e+300
- , 1.40129846e-45
- , 1.17549435e-38
- , 2.98023259e-08
- , 0.11
- , 0.100
- , -3.4
- -- smallest
- , let (l, _) = floatRange x
- x = encodeFloat 1 (l-1)
- in x
- -- largest
- , let (_, u) = floatRange x
- d = floatDigits x
- x = encodeFloat (floatRadix x ^ d - 1) (u - d)
- in x
- ]
-
--------------
-
-denorm :: RealFloat a => [a] -> String
-denorm numbers =
- unlines
- ( ""
- : "*********************************"
- : ("Denormalised numbers: " ++ doubleOrFloat numbers)
- : ""
- : map showPerform numbers)
- where
- showPerform = showAndPerform (isDenormalized) "isDenormalised"
-
-pos_inf :: RealFloat a => [a] -> String
-pos_inf numbers =
- unlines
- ( ""
- : "*********************************"
- : ("Positive Infinity: " ++ doubleOrFloat numbers)
- : ""
- : map showPerform numbers)
- where
- showPerform = showAndPerform (isInfinite) "isInfinite"
-
-neg_inf :: RealFloat a => [a] -> String
-neg_inf numbers =
- unlines
- ( ""
- : "*********************************"
- : ("Negative Infinity: " ++ doubleOrFloat numbers)
- : ""
- : map showPerform numbers)
- where
- showPerform = showAndPerform (\ x -> isInfinite x && x < 0) "isNegInfinite"
-
-nan :: RealFloat a => [a] -> String
-nan numbers =
- unlines
- ( ""
- : "*********************************"
- : ("NaN: " ++ doubleOrFloat numbers)
- : ""
- : map showPerform numbers)
- where
- showPerform = showAndPerform (isNaN) "isNaN"
-
-pos_zero :: RealFloat a => [a] -> String
-pos_zero numbers =
- unlines
- ( ""
- : "*********************************"
- : ("Positive zero: " ++ doubleOrFloat numbers)
- : ""
- : map showPerform numbers)
- where
- showPerform = showAndPerform (==0) "isPosZero"
-
-neg_zero :: RealFloat a => [a] -> String
-neg_zero numbers =
- unlines
- ( ""
- : "*********************************"
- : ("Negative zero: " ++ doubleOrFloat numbers)
- : ""
- : map showPerform numbers)
- where
- showPerform = showAndPerform (isNegativeZero) "isNegativeZero"
-
--- what a hack.
-doubleOrFloat :: RealFloat a => [a] -> String
-doubleOrFloat ls
- | (floatDigits atType) == (floatDigits (0::Double)) = "Double"
- | (floatDigits atType) == (floatDigits (0::Float)) = "Float"
- | otherwise = "unknown RealFloat type"
- where
- atType = undefined `asTypeOf` (head ls)
-
--- make a double from a list of 8 bytes
--- (caller deals with byte ordering.)
-mkDouble :: [Word8] -> Double
-mkDouble ls =
- runST (( do
- arr <- newArray_ (0,7)
- sequence (zipWith (writeArray arr) [(0::Int)..] (take 8 ls))
- arr' <- castSTUArray arr
- readArray arr' 0
- ) :: ST s Double )
-
-showAndPerform :: (Show a, Show b)
- => (a -> b)
- -> String
- -> a
- -> String
-showAndPerform fun name_fun val =
- name_fun ++ ' ':show val ++ " = " ++ show (fun val)
-
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun044.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun044.stdout
deleted file mode 100644
index 0eb505e236..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun044.stdout
+++ /dev/null
@@ -1,264 +0,0 @@
-
-*********************************
-Denormalised numbers: Double
-
-isDenormalised 0.0 = False
-isDenormalised 0.0 = False
-isDenormalised Infinity = False
-isDenormalised Infinity = False
-isDenormalised Infinity = False
-isDenormalised Infinity = False
-isDenormalised Infinity = False
-isDenormalised NaN = False
-isDenormalised 1.821736912876398e-300 = False
-isDenormalised 1.8217369128763983e300 = False
-isDenormalised 5.0e-324 = True
-isDenormalised 2.2250738585072014e-308 = False
-isDenormalised 0.11 = False
-isDenormalised 0.1 = False
-isDenormalised -3.4 = False
-isDenormalised 2.2250738585072014e-308 = False
-isDenormalised 1.7976931348623157e308 = False
-
-
-*********************************
-Positive Infinity: Double
-
-isInfinite 0.0 = False
-isInfinite 0.0 = False
-isInfinite Infinity = True
-isInfinite Infinity = True
-isInfinite Infinity = True
-isInfinite Infinity = True
-isInfinite Infinity = True
-isInfinite NaN = False
-isInfinite 1.821736912876398e-300 = False
-isInfinite 1.8217369128763983e300 = False
-isInfinite 5.0e-324 = False
-isInfinite 2.2250738585072014e-308 = False
-isInfinite 0.11 = False
-isInfinite 0.1 = False
-isInfinite -3.4 = False
-isInfinite 2.2250738585072014e-308 = False
-isInfinite 1.7976931348623157e308 = False
-
-
-*********************************
-Negative Infinity: Double
-
-isNegInfinite 0.0 = False
-isNegInfinite 0.0 = False
-isNegInfinite Infinity = False
-isNegInfinite Infinity = False
-isNegInfinite Infinity = False
-isNegInfinite Infinity = False
-isNegInfinite Infinity = False
-isNegInfinite NaN = False
-isNegInfinite 1.821736912876398e-300 = False
-isNegInfinite 1.8217369128763983e300 = False
-isNegInfinite 5.0e-324 = False
-isNegInfinite 2.2250738585072014e-308 = False
-isNegInfinite 0.11 = False
-isNegInfinite 0.1 = False
-isNegInfinite -3.4 = False
-isNegInfinite 2.2250738585072014e-308 = False
-isNegInfinite 1.7976931348623157e308 = False
-
-
-*********************************
-NaN: Double
-
-isNaN 0.0 = False
-isNaN 0.0 = False
-isNaN Infinity = False
-isNaN Infinity = False
-isNaN Infinity = False
-isNaN Infinity = False
-isNaN Infinity = False
-isNaN NaN = True
-isNaN 1.821736912876398e-300 = False
-isNaN 1.8217369128763983e300 = False
-isNaN 5.0e-324 = False
-isNaN 2.2250738585072014e-308 = False
-isNaN 0.11 = False
-isNaN 0.1 = False
-isNaN -3.4 = False
-isNaN 2.2250738585072014e-308 = False
-isNaN 1.7976931348623157e308 = False
-
-
-*********************************
-Negative zero: Double
-
-isNegativeZero 0.0 = False
-isNegativeZero 0.0 = False
-isNegativeZero Infinity = False
-isNegativeZero Infinity = False
-isNegativeZero Infinity = False
-isNegativeZero Infinity = False
-isNegativeZero Infinity = False
-isNegativeZero NaN = False
-isNegativeZero 1.821736912876398e-300 = False
-isNegativeZero 1.8217369128763983e300 = False
-isNegativeZero 5.0e-324 = False
-isNegativeZero 2.2250738585072014e-308 = False
-isNegativeZero 0.11 = False
-isNegativeZero 0.1 = False
-isNegativeZero -3.4 = False
-isNegativeZero 2.2250738585072014e-308 = False
-isNegativeZero 1.7976931348623157e308 = False
-
-
-*********************************
-Positive zero: Double
-
-isPosZero 0.0 = True
-isPosZero 0.0 = True
-isPosZero Infinity = False
-isPosZero Infinity = False
-isPosZero Infinity = False
-isPosZero Infinity = False
-isPosZero Infinity = False
-isPosZero NaN = False
-isPosZero 1.821736912876398e-300 = False
-isPosZero 1.8217369128763983e300 = False
-isPosZero 5.0e-324 = False
-isPosZero 2.2250738585072014e-308 = False
-isPosZero 0.11 = False
-isPosZero 0.1 = False
-isPosZero -3.4 = False
-isPosZero 2.2250738585072014e-308 = False
-isPosZero 1.7976931348623157e308 = False
-
-
-*********************************
-Denormalised numbers: Float
-
-isDenormalised 0.0 = False
-isDenormalised 0.0 = False
-isDenormalised Infinity = False
-isDenormalised Infinity = False
-isDenormalised Infinity = False
-isDenormalised Infinity = False
-isDenormalised NaN = False
-isDenormalised 0.0 = False
-isDenormalised Infinity = False
-isDenormalised 1.0e-45 = True
-isDenormalised 1.1754944e-38 = False
-isDenormalised 2.9802326e-8 = False
-isDenormalised 0.11 = False
-isDenormalised 0.1 = False
-isDenormalised -3.4 = False
-isDenormalised 1.1754944e-38 = False
-isDenormalised 3.4028235e38 = False
-
-
-*********************************
-Positive Infinity: Float
-
-isInfinite 0.0 = False
-isInfinite 0.0 = False
-isInfinite Infinity = True
-isInfinite Infinity = True
-isInfinite Infinity = True
-isInfinite Infinity = True
-isInfinite NaN = False
-isInfinite 0.0 = False
-isInfinite Infinity = True
-isInfinite 1.0e-45 = False
-isInfinite 1.1754944e-38 = False
-isInfinite 2.9802326e-8 = False
-isInfinite 0.11 = False
-isInfinite 0.1 = False
-isInfinite -3.4 = False
-isInfinite 1.1754944e-38 = False
-isInfinite 3.4028235e38 = False
-
-
-*********************************
-Negative Infinity: Float
-
-isNegInfinite 0.0 = False
-isNegInfinite 0.0 = False
-isNegInfinite Infinity = False
-isNegInfinite Infinity = False
-isNegInfinite Infinity = False
-isNegInfinite Infinity = False
-isNegInfinite NaN = False
-isNegInfinite 0.0 = False
-isNegInfinite Infinity = False
-isNegInfinite 1.0e-45 = False
-isNegInfinite 1.1754944e-38 = False
-isNegInfinite 2.9802326e-8 = False
-isNegInfinite 0.11 = False
-isNegInfinite 0.1 = False
-isNegInfinite -3.4 = False
-isNegInfinite 1.1754944e-38 = False
-isNegInfinite 3.4028235e38 = False
-
-
-*********************************
-NaN: Float
-
-isNaN 0.0 = False
-isNaN 0.0 = False
-isNaN Infinity = False
-isNaN Infinity = False
-isNaN Infinity = False
-isNaN Infinity = False
-isNaN NaN = True
-isNaN 0.0 = False
-isNaN Infinity = False
-isNaN 1.0e-45 = False
-isNaN 1.1754944e-38 = False
-isNaN 2.9802326e-8 = False
-isNaN 0.11 = False
-isNaN 0.1 = False
-isNaN -3.4 = False
-isNaN 1.1754944e-38 = False
-isNaN 3.4028235e38 = False
-
-
-*********************************
-Negative zero: Float
-
-isNegativeZero 0.0 = False
-isNegativeZero 0.0 = False
-isNegativeZero Infinity = False
-isNegativeZero Infinity = False
-isNegativeZero Infinity = False
-isNegativeZero Infinity = False
-isNegativeZero NaN = False
-isNegativeZero 0.0 = False
-isNegativeZero Infinity = False
-isNegativeZero 1.0e-45 = False
-isNegativeZero 1.1754944e-38 = False
-isNegativeZero 2.9802326e-8 = False
-isNegativeZero 0.11 = False
-isNegativeZero 0.1 = False
-isNegativeZero -3.4 = False
-isNegativeZero 1.1754944e-38 = False
-isNegativeZero 3.4028235e38 = False
-
-
-*********************************
-Positive zero: Float
-
-isPosZero 0.0 = True
-isPosZero 0.0 = True
-isPosZero Infinity = False
-isPosZero Infinity = False
-isPosZero Infinity = False
-isPosZero Infinity = False
-isPosZero NaN = False
-isPosZero 0.0 = True
-isPosZero Infinity = False
-isPosZero 1.0e-45 = False
-isPosZero 1.1754944e-38 = False
-isPosZero 2.9802326e-8 = False
-isPosZero 0.11 = False
-isPosZero 0.1 = False
-isPosZero -3.4 = False
-isPosZero 1.1754944e-38 = False
-isPosZero 3.4028235e38 = False
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun045.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun045.hs
deleted file mode 100644
index efd0b5c119..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun045.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-module Main( main ) where
-
-
-main :: IO ()
-main = seq (error "hello world!" :: Int) (return ())
-
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun045.stderr b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun045.stderr
deleted file mode 100644
index 711048f792..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun045.stderr
+++ /dev/null
@@ -1 +0,0 @@
-cgrun045: hello world!
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun045.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun045.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun045.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun046.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun046.hs
deleted file mode 100644
index be414a8a75..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun046.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module Main where
-
-import System.IO
-
--- !!! CAF space leaks
-
-main = lots_of_xs 10000
-
-lots_of_xs 0 = return ()
-lots_of_xs n = putChar 'x' >> lots_of_xs (n-1)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun046.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun046.stdout
deleted file mode 100644
index f2776bdd89..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun046.stdout
+++ /dev/null
@@ -1 +0,0 @@
-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun047.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun047.hs
deleted file mode 100644
index 234c6671b6..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun047.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-module Main where
-
--- GHC 4.04
--- I've been having problems getting GHC to compile some code I'm working
--- on with optimisation (-O) turned on. Compilation is fine without -O
--- specified. Through a process of elimination I've managed to reproduce
--- the problemin the following (much simpler) piece of code:
-
-import Data.List
-
-test es =
- concat (groupBy eq (zip [0..(length es) - 1] es))
- where
- eq a b = (fst a) == (fst b)
-
-main = putStr (show (test [1,2,3,4]))
-
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun047.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun047.stdout
deleted file mode 100644
index 732d4fe8ff..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun047.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[(0,1),(1,2),(2,3),(3,4)] \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun048.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun048.hs
deleted file mode 100644
index 30f0b3e387..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun048.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-
--- The new register allocator in 4.08 had a bug wherein
--- flow edges away from an insn which does a jump through
--- a switch table were not being added to the flow graph,
--- which causes computation of live ranges and thus register
--- assignment to be wrong in the alternatives and default.
--- This was fixed properly in the head branch (pre 4.09)
--- and avoided in 4.08.1 by disabling jump table generation
--- in the NCG -- it generates trees of ifs instead.
-
-module Main ( main ) where
-
-main = print (map f [1 .. 7])
-
-
-
-{-# NOINLINE f #-}
-f :: Int -> Bool
-f 7 = False
-f 1 = False
-f 4 = False
-f 6 = False
-f 5 = False
-f x = if x * 10 == 20 then True else False
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun048.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun048.stdout
deleted file mode 100644
index ff596497db..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun048.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[False,True,False,False,False,False,False]
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun049.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun049.hs
deleted file mode 100644
index d4b6a77908..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun049.hs
+++ /dev/null
@@ -1,22 +0,0 @@
--- !! Data constructors with strict fields
--- This test should use -funbox-strict-fields
-
-module Main ( main ) where
-
-main = print (g (f t))
-
-t = MkT 1 2 (3,4) (MkS 5 6)
-
-g (MkT x _ _ _) = x
-
-data T = MkT Int !Int !(Int,Int) !(S Int)
-
-data S a = MkS a a
-
-
-{-# NOINLINE f #-}
-f :: T -> T -- Takes apart the thing and puts it
- -- back together differently
-f (MkT x y (a,b) (MkS p q)) = MkT a b (p,q) (MkS x y)
-
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun049.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun049.stdout
deleted file mode 100644
index 00750edc07..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun049.stdout
+++ /dev/null
@@ -1 +0,0 @@
-3
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun050.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun050.hs
deleted file mode 100644
index 7eb2cee05f..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun050.hs
+++ /dev/null
@@ -1,23 +0,0 @@
--- !! Test strict, recursive newtypes
--- This test made a pre-5.02 fall over
--- Reason: the seq arising from the !F didn't see that
--- the represtation of F is a function.
-
--- NB It's crucial to compile this test *without* -O
--- The $ then prevents the 'F' from seeing the '\x'
--- and hence makes the evaluation happen at runtime
-
-module Main ( main ) where
-
-newtype F = F (Int -> Val) -- NB: F and Val are
-data Val = VFn !F | VInt !Int -- mutually recursive
-
-f :: Val -> Val
-f (VFn (F f)) = f 4
-
-main = print (f (VFn (F $ (\x -> VInt (x+3)))))
-
-instance Show Val where
- show (VInt n) = show n
-
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun050.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun050.stdout
deleted file mode 100644
index 7f8f011eb7..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun050.stdout
+++ /dev/null
@@ -1 +0,0 @@
-7
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun051.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun051.hs
deleted file mode 100644
index c8ebb7f5e3..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun051.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-module Main where
-
-data T1 -- No constructors
-data T2 = T2 !T1 Int
-
-main = print (case (T2 (error "OK") 1) of { T2 x y -> y })
-
--- We should hit the (error "OK") case \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun051.stderr b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun051.stderr
deleted file mode 100644
index fddcb81968..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun051.stderr
+++ /dev/null
@@ -1 +0,0 @@
-cgrun051: OK
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun052.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun052.hs
deleted file mode 100644
index cfce05442f..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun052.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- !!! Caused a crash in GHC 5.04.2, fixed in CoreToStg.lhs rev. 1.98
-
-data T1 = T1
-data T2 = C1 !T1 | C2
-data T3 = C3 !T2 Int
-
-{-# NOINLINE f #-}
-f 0 = C3 (C1 T1) 42
-f n = C3 (C1 T1) n
-
-main = case f 23 of
- C3 y z -> case y of
- C1 T1 -> putStrLn "ok"
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun052.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun052.stdout
deleted file mode 100644
index 9766475a41..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun052.stdout
+++ /dev/null
@@ -1 +0,0 @@
-ok
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun053.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun053.hs
deleted file mode 100644
index f100cc983d..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun053.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- should run successfully and exit, i.e. without evaluating the
--- argument to return.
-main = return undefined
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun054.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun054.hs
deleted file mode 100644
index cff967e9bb..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun054.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-module Main where
-
-data Y = X1 | X2 | X3 | X4 | X5 | X6 | X7 | X8
- deriving( Show )
-
-data X = WithY Y
- | A1 | A2 | A3 | A4 | A5 | A6 | A7 | A8
-
-foo :: X -> Y
-foo A1 = X1
-foo A2 = X2
-foo A3 = X3
-foo A4 = X4
-foo A5 = X5
-foo A6 = X6
-foo A7 = X7
-foo A8 = X8
-foo (WithY _) = X1
-
-bar :: X -> Y
-bar (WithY x) = x
-bar y = foobar (foo y) -- The WithY case can't occur, and in an
- -- earlier version that confused the code generator
-
-{-# NOINLINE foobar #-}
-foobar x = x
-
-
-main = print (map bar [WithY X2, A4, A5])
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun054.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun054.stdout
deleted file mode 100644
index 8b7f679ed1..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun054.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[X2,X4,X5]
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun055.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun055.hs
deleted file mode 100644
index 737632748d..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun055.hs
+++ /dev/null
@@ -1,46 +0,0 @@
--- This program broke GHC 6.3, becuase dataToTag was called with
--- an unevaluated argument
-
-module Main where
-
-import System.Environment (getArgs)
-
--- NOTE: When if you remove Eight (or any other constructor) everything works
--- Having at least 9 constructors has something to do with the bug
-data Digit = Zero | One | Two | Three | Four | Five | Six | Seven | Eight
- deriving (Eq,Enum)
-
-instance Show Digit where
- show Five = "Five"
- show Six = "Six"
- show _ = undefined
-
--- Use either of these instances (instead of derived) and everything works
-{-instance Enum Digit where
- fromEnum Five = 5
- fromEnum _ = undefined
- toEnum 6 = Six
- toEnum _ = undefined-}
-
-{-instance Eq Digit where
- Five == Five = True
- Six == Six = True
- _ == _ = undefined-}
-
-isFive :: Digit -> Bool
-isFive a = succ a == Six
-
-main :: IO()
-main = do
- putStrLn ("======")
- -- These next two lines are just here to keep ghc from optimizing away stuff
- args <- getArgs
- let x = if length args == -1 then undefined else Five
- putStrLn ("x: " ++ show x)
- let y = succ x
- putStrLn ("let y = succ x")
- putStrLn ("y: " ++ show y)
- putStrLn ("y == Six: " ++ show (y == Six))
- putStrLn ("succ x == Six: " ++ show (succ x == Six))
- putStrLn ("isFive x: " ++ show (isFive x))
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun055.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun055.stdout
deleted file mode 100644
index c5907cac04..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun055.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-======
-x: Five
-let y = succ x
-y: Six
-y == Six: True
-succ x == Six: True
-isFive x: True
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun056.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun056.hs
deleted file mode 100644
index e1a10511a7..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun056.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- Another test for the evaluated-ness of data2tag
-
-module Main where
-
- data S e = A | B | C | D | E | F | G | H | I deriving (Eq)
- newtype R = T (S R) deriving (Eq)
-
- main = do { print (T A == T B) ; print (T I == T I) }
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun056.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun056.stdout
deleted file mode 100644
index 91d6f80f27..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun056.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-False
-True
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun057.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun057.hs
deleted file mode 100644
index 09119546fb..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun057.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- For testing +RTS -xc
-import Control.Exception
-main = try (evaluate (f ()))
-
-f x = g x
-
-g x = error (show x)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun057.stderr b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun057.stderr
deleted file mode 100644
index d3d46dacf3..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun057.stderr
+++ /dev/null
@@ -1 +0,0 @@
-<Main.g,Main.f,Main.main,Main.CAF> \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun058.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun058.hs
deleted file mode 100644
index f0001584d1..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun058.hs
+++ /dev/null
@@ -1,30 +0,0 @@
--- Not really a code-gen test, but this program gave
--- incorrect results in Hugs (Hugs Trac #37), so I
--- thought I'd add it to GHC's test suite.
-
-module Main where
-
-data MInt = Zero | Succ MInt | Pred MInt deriving Show
-
-tn :: Int -> MInt
-tn x | x<0 = Pred (tn (x+1))
-tn 0 = Zero
-tn n = Succ (tn (n - 1))
-
-ti :: MInt -> Int
-ti Zero = 0
-ti (Succ x) = 1+(ti x)
-ti (Pred x) = (ti x) -1
-
-testi :: (MInt -> MInt -> MInt) -> (Int -> Int -> Int) -> Int -> Int -> Bool
-testi f g x y = (ti (f (tn x) (tn y))) /= (g x y)
-
-myMul x y = tn ((ti x) * (ti y))
-
--- test should be empty!
-test = [ (x,y,ti (myMul (tn x) (tn y)),x * y)
- | x<-[-100, -99, -98, -97, -2, -1, 0, 1, 2, 97, 98, 99, 100],
- y<-([-100..(-1)]++[1..100]),
- testi myMul (*) x y ]
-
-main = print test
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun058.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun058.stdout
deleted file mode 100644
index fe51488c70..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun058.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[]
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun059.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun059.hs
deleted file mode 100644
index 52d2ee88a5..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun059.hs
+++ /dev/null
@@ -1,34 +0,0 @@
--- GHC 6.6 compiled YHC wrong; this is a cutdown testcase (from trac #1171).
-
-module Main where
-
-import System.Directory
-
-data Error
- = ErrorFileNone
- | ErrorFileMany
- FilePath -- file you were looking for
-
-raiseError ErrorFileNone = error "Error: File not found"
-raiseError (ErrorFileMany file) = error $ "Error: Found file multiple times: "++file
-
-data PackageData = PackageData [FilePath] deriving Show
-
-getModule :: PackageData -> String -> IO ()
-getModule (PackageData rs@(root:rest)) file =
- do local <- testPackage root
- res <- testPackage root
- print (local, res)
- case (local,res) of
- ([x], _) -> return ()
- (_, [x]) -> return ()
- ([], []) -> raiseError $ ErrorFileNone
- (as, bs) -> if as++bs == [] then error "Empty as++bs" else raiseError $ ErrorFileMany file
- where
- testPackage pkg =
- do
- bHi <- doesFileExist ""
- return [("","") | bHi]
-
-main = getModule (PackageData ["7"]) "13"
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun059.stderr b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun059.stderr
deleted file mode 100644
index 005f06e295..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun059.stderr
+++ /dev/null
@@ -1 +0,0 @@
-cgrun059: Error: File not found
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun059.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun059.stdout
deleted file mode 100644
index 929ec8f128..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun059.stdout
+++ /dev/null
@@ -1 +0,0 @@
-([],[])
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun060.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun060.hs
deleted file mode 100644
index a7558029d4..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun060.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- tickled a bug in stack squeezing in 6.8.2. unsafePerformIO calls
--- noDuplicate#, which marks the update frames on the stack, and was
--- preventing subsequent update frames from being collapsed with the
--- marked frame.
-
-module Main where
-
-import System.IO.Unsafe
-
-main = print (sim (replicate 100000 ()))
-
-sim [] = True
-sim (_:xs) = badStack (sim xs)
-
-goodStack x = fromJust (Just x) --no stack overflow
-badStack x = unsafePerformIO (return x) --stack overflow
-
-fromJust (Just x) = x
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun060.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun060.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun060.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun061.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun061.hs
deleted file mode 100644
index 9e32c654db..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun061.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-
-module Main where
-
-newtype Test = Test { var :: String }
-
-{-
-hugs (Sept 2006) gives
-Program error: pattern match failure: instShow_v16_v1443 (Test_Test "a")
-Program error: pattern match failure: instShow_v16_v1443 (Test_Test "b")
-hugs trac #46
--}
-
-main = do print (var x)
- print (var (y{var="b"}))
- where x = Test { var = "a" }
- y = Test "a"
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun061.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun061.stdout
deleted file mode 100644
index 071144f214..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun061.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-"a"
-"b"
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun062.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun062.hs
deleted file mode 100644
index 915f84c397..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun062.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-
-module Main where
-
-newtype T = C { f :: String }
-
-{-
-hugs (Sept 2006) gives
-"bc"
-Program error: Prelude.undefined
-hugs trac #48
--}
-
-main = do print $ case C "abc" of
- C { f = v } -> v
- print $ case undefined of
- C {} -> True
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun062.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun062.stdout
deleted file mode 100644
index 3bb22bbe9a..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun062.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-"abc"
-True
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun063.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun063.hs
deleted file mode 100644
index 14f3cb8d14..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun063.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-
-{-
-Check that we aren't making gcc misinterpret our strings as trigraphs.
-Trac #2968.
-http://gcc.gnu.org/onlinedocs/cpp/Initial-processing.html
--}
-
-module Main where
-
-main :: IO ()
-main = do putStrLn "??("
- putStrLn "??)"
- putStrLn "??<"
- putStrLn "??>"
- putStrLn "??="
- putStrLn "??/"
- putStrLn "??'"
- putStrLn "??!"
- putStrLn "??-"
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun063.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun063.stdout
deleted file mode 100644
index 73f45448d9..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun063.stdout
+++ /dev/null
@@ -1,9 +0,0 @@
-??(
-??)
-??<
-??>
-??=
-??/
-??'
-??!
-??-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun064.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun064.hs
deleted file mode 100644
index aa037e8782..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun064.hs
+++ /dev/null
@@ -1,229 +0,0 @@
-{-# LANGUAGE MagicHash, UnboxedTuples #-}
-
--- !!! simple tests of copying/cloning primitive arrays
---
-
-module Main ( main ) where
-
-import GHC.Exts
-import GHC.Prim
-import GHC.ST
-
-main = putStr
- (test_copyArray
- ++ "\n" ++ test_copyMutableArray
- ++ "\n" ++ test_copyMutableArrayOverlap
- ++ "\n" ++ test_cloneArray
- ++ "\n" ++ test_cloneMutableArray
- ++ "\n" ++ test_cloneMutableArrayEmpty
- ++ "\n" ++ test_freezeArray
- ++ "\n" ++ test_thawArray
- ++ "\n"
- )
-
-------------------------------------------------------------------------
--- Constants
-
--- All allocated arrays are of this size
-len :: Int
-len = 130
-
--- We copy these many elements
-copied :: Int
-copied = len - 2
-
-------------------------------------------------------------------------
--- copyArray#
-
--- Copy a slice of the source array into a destination array and check
--- that the copy succeeded.
-test_copyArray :: String
-test_copyArray =
- let dst = runST $ do
- src <- newArray len 0
- fill src 0 len
- src <- unsafeFreezeArray src
- dst <- newArray len (-1)
- -- Leave the first and last element untouched
- copyArray src 1 dst 1 copied
- unsafeFreezeArray dst
- in shows (toList dst len) "\n"
-
-------------------------------------------------------------------------
--- copyMutableArray#
-
--- Copy a slice of the source array into a destination array and check
--- that the copy succeeded.
-test_copyMutableArray :: String
-test_copyMutableArray =
- let dst = runST $ do
- src <- newArray len 0
- fill src 0 len
- dst <- newArray len (-1)
- -- Leave the first and last element untouched
- copyMutableArray src 1 dst 1 copied
- unsafeFreezeArray dst
- in shows (toList dst len) "\n"
-
--- Perform a copy where the source and destination part overlap.
-test_copyMutableArrayOverlap :: String
-test_copyMutableArrayOverlap =
- let arr = runST $ do
- marr <- fromList inp
- -- Overlap of two elements
- copyMutableArray marr 5 marr 7 8
- unsafeFreezeArray marr
- in shows (toList arr (length inp)) "\n"
- where
- -- This case was known to fail at some point.
- inp = [0,169,196,9,16,25,36,16,25,81,100,121,144,169,196]
-
-------------------------------------------------------------------------
--- cloneArray#
-
--- Clone a slice of the source array into a destination array and
--- check that the clone succeeded.
-test_cloneArray :: String
-test_cloneArray =
- let dst = runST $ do
- src <- newArray len 0
- fill src 0 len
- src <- unsafeFreezeArray src
- -- Don't include the first and last element.
- return $ cloneArray src 1 copied
- in shows (toList dst copied) "\n"
-
-------------------------------------------------------------------------
--- cloneMutableArray#
-
--- Clone a slice of the source array into a destination array and
--- check that the clone succeeded.
-test_cloneMutableArray :: String
-test_cloneMutableArray =
- let dst = runST $ do
- src <- newArray len 0
- fill src 0 len
- -- Don't include the first and last element.
- dst <- cloneMutableArray src 1 copied
- unsafeFreezeArray dst
- in shows (toList dst copied) "\n"
-
--- Check that zero-length clones work.
-test_cloneMutableArrayEmpty :: String
-test_cloneMutableArrayEmpty =
- let dst = runST $ do
- src <- newArray len 0
- dst <- cloneMutableArray src 0 0
- unsafeFreezeArray dst
- in shows (toList dst 0) "\n"
-
-------------------------------------------------------------------------
--- freezeArray#
-
--- Clone a slice of the source array into a destination array and
--- check that the clone succeeded.
-test_freezeArray :: String
-test_freezeArray =
- let dst = runST $ do
- src <- newArray len 0
- fill src 0 len
- -- Don't include the first and last element.
- freezeArray src 1 copied
- in shows (toList dst copied) "\n"
-
-------------------------------------------------------------------------
--- thawArray#
-
--- Clone a slice of the source array into a destination array and
--- check that the clone succeeded.
-test_thawArray :: String
-test_thawArray =
- let dst = runST $ do
- src <- newArray len 0
- fill src 0 len
- src <- unsafeFreezeArray src
- -- Don't include the first and last element.
- dst <- thawArray src 1 copied
- unsafeFreezeArray dst
- in shows (toList dst copied) "\n"
-
-------------------------------------------------------------------------
--- Test helpers
-
--- Initialize the elements of this array, starting at the given
--- offset. The last parameter specifies the number of elements to
--- initialize. Element at index @i@ takes the value @i*i@ (i.e. the
--- first actually modified element will take value @off*off@).
-fill :: MArray s Int -> Int -> Int -> ST s ()
-fill marr off count = go 0
- where
- go i
- | i >= count = return ()
- | otherwise = writeArray marr (off + i) (i*i) >> go (i + 1)
-
-fromList :: [Int] -> ST s (MArray s Int)
-fromList xs0 = do
- marr <- newArray (length xs0) bottomElem
- let go [] i = i `seq` return marr
- go (x:xs) i = writeArray marr i x >> go xs (i + 1)
- go xs0 0
- where
- bottomElem = error "undefined element"
-
-------------------------------------------------------------------------
--- Convenience wrappers for Array# and MutableArray#
-
-data Array a = Array { unArray :: Array# a }
-data MArray s a = MArray { unMArray :: MutableArray# s a }
-
-newArray :: Int -> a -> ST s (MArray s a)
-newArray (I# n#) a = ST $ \s# -> case newArray# n# a s# of
- (# s2#, marr# #) -> (# s2#, MArray marr# #)
-
-indexArray :: Array a -> Int -> a
-indexArray arr (I# i#) = case indexArray# (unArray arr) i# of
- (# a #) -> a
-
-writeArray :: MArray s a -> Int -> a -> ST s ()
-writeArray marr (I# i#) a = ST $ \ s# ->
- case writeArray# (unMArray marr) i# a s# of
- s2# -> (# s2#, () #)
-
-unsafeFreezeArray :: MArray s a -> ST s (Array a)
-unsafeFreezeArray marr = ST $ \ s# ->
- case unsafeFreezeArray# (unMArray marr) s# of
- (# s2#, arr# #) -> (# s2#, Array arr# #)
-
-copyArray :: Array a -> Int -> MArray s a -> Int -> Int -> ST s ()
-copyArray src (I# six#) dst (I# dix#) (I# n#) = ST $ \ s# ->
- case copyArray# (unArray src) six# (unMArray dst) dix# n# s# of
- s2# -> (# s2#, () #)
-
-copyMutableArray :: MArray s a -> Int -> MArray s a -> Int -> Int -> ST s ()
-copyMutableArray src (I# six#) dst (I# dix#) (I# n#) = ST $ \ s# ->
- case copyMutableArray# (unMArray src) six# (unMArray dst) dix# n# s# of
- s2# -> (# s2#, () #)
-
-cloneArray :: Array a -> Int -> Int -> Array a
-cloneArray src (I# six#) (I# n#) = Array (cloneArray# (unArray src) six# n#)
-
-cloneMutableArray :: MArray s a -> Int -> Int -> ST s (MArray s a)
-cloneMutableArray src (I# six#) (I# n#) = ST $ \ s# ->
- case cloneMutableArray# (unMArray src) six# n# s# of
- (# s2#, marr# #) -> (# s2#, MArray marr# #)
-
-freezeArray :: MArray s a -> Int -> Int -> ST s (Array a)
-freezeArray src (I# six#) (I# n#) = ST $ \ s# ->
- case freezeArray# (unMArray src) six# n# s# of
- (# s2#, arr# #) -> (# s2#, Array arr# #)
-
-thawArray :: Array a -> Int -> Int -> ST s (MArray s a)
-thawArray src (I# six#) (I# n#) = ST $ \ s# ->
- case thawArray# (unArray src) six# n# s# of
- (# s2#, marr# #) -> (# s2#, MArray marr# #)
-
-toList :: Array a -> Int -> [a]
-toList arr n = go 0
- where
- go i | i >= n = []
- | otherwise = indexArray arr i : go (i+1)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun064.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun064.stdout
deleted file mode 100644
index 8e741ceec6..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun064.stdout
+++ /dev/null
@@ -1,16 +0,0 @@
-[-1,1,4,9,16,25,36,49,64,81,100,121,144,169,196,225,256,289,324,361,400,441,484,529,576,625,676,729,784,841,900,961,1024,1089,1156,1225,1296,1369,1444,1521,1600,1681,1764,1849,1936,2025,2116,2209,2304,2401,2500,2601,2704,2809,2916,3025,3136,3249,3364,3481,3600,3721,3844,3969,4096,4225,4356,4489,4624,4761,4900,5041,5184,5329,5476,5625,5776,5929,6084,6241,6400,6561,6724,6889,7056,7225,7396,7569,7744,7921,8100,8281,8464,8649,8836,9025,9216,9409,9604,9801,10000,10201,10404,10609,10816,11025,11236,11449,11664,11881,12100,12321,12544,12769,12996,13225,13456,13689,13924,14161,14400,14641,14884,15129,15376,15625,15876,16129,16384,-1]
-
-[-1,1,4,9,16,25,36,49,64,81,100,121,144,169,196,225,256,289,324,361,400,441,484,529,576,625,676,729,784,841,900,961,1024,1089,1156,1225,1296,1369,1444,1521,1600,1681,1764,1849,1936,2025,2116,2209,2304,2401,2500,2601,2704,2809,2916,3025,3136,3249,3364,3481,3600,3721,3844,3969,4096,4225,4356,4489,4624,4761,4900,5041,5184,5329,5476,5625,5776,5929,6084,6241,6400,6561,6724,6889,7056,7225,7396,7569,7744,7921,8100,8281,8464,8649,8836,9025,9216,9409,9604,9801,10000,10201,10404,10609,10816,11025,11236,11449,11664,11881,12100,12321,12544,12769,12996,13225,13456,13689,13924,14161,14400,14641,14884,15129,15376,15625,15876,16129,16384,-1]
-
-[0,169,196,9,16,25,36,25,36,16,25,81,100,121,144]
-
-[1,4,9,16,25,36,49,64,81,100,121,144,169,196,225,256,289,324,361,400,441,484,529,576,625,676,729,784,841,900,961,1024,1089,1156,1225,1296,1369,1444,1521,1600,1681,1764,1849,1936,2025,2116,2209,2304,2401,2500,2601,2704,2809,2916,3025,3136,3249,3364,3481,3600,3721,3844,3969,4096,4225,4356,4489,4624,4761,4900,5041,5184,5329,5476,5625,5776,5929,6084,6241,6400,6561,6724,6889,7056,7225,7396,7569,7744,7921,8100,8281,8464,8649,8836,9025,9216,9409,9604,9801,10000,10201,10404,10609,10816,11025,11236,11449,11664,11881,12100,12321,12544,12769,12996,13225,13456,13689,13924,14161,14400,14641,14884,15129,15376,15625,15876,16129,16384]
-
-[1,4,9,16,25,36,49,64,81,100,121,144,169,196,225,256,289,324,361,400,441,484,529,576,625,676,729,784,841,900,961,1024,1089,1156,1225,1296,1369,1444,1521,1600,1681,1764,1849,1936,2025,2116,2209,2304,2401,2500,2601,2704,2809,2916,3025,3136,3249,3364,3481,3600,3721,3844,3969,4096,4225,4356,4489,4624,4761,4900,5041,5184,5329,5476,5625,5776,5929,6084,6241,6400,6561,6724,6889,7056,7225,7396,7569,7744,7921,8100,8281,8464,8649,8836,9025,9216,9409,9604,9801,10000,10201,10404,10609,10816,11025,11236,11449,11664,11881,12100,12321,12544,12769,12996,13225,13456,13689,13924,14161,14400,14641,14884,15129,15376,15625,15876,16129,16384]
-
-[]
-
-[1,4,9,16,25,36,49,64,81,100,121,144,169,196,225,256,289,324,361,400,441,484,529,576,625,676,729,784,841,900,961,1024,1089,1156,1225,1296,1369,1444,1521,1600,1681,1764,1849,1936,2025,2116,2209,2304,2401,2500,2601,2704,2809,2916,3025,3136,3249,3364,3481,3600,3721,3844,3969,4096,4225,4356,4489,4624,4761,4900,5041,5184,5329,5476,5625,5776,5929,6084,6241,6400,6561,6724,6889,7056,7225,7396,7569,7744,7921,8100,8281,8464,8649,8836,9025,9216,9409,9604,9801,10000,10201,10404,10609,10816,11025,11236,11449,11664,11881,12100,12321,12544,12769,12996,13225,13456,13689,13924,14161,14400,14641,14884,15129,15376,15625,15876,16129,16384]
-
-[1,4,9,16,25,36,49,64,81,100,121,144,169,196,225,256,289,324,361,400,441,484,529,576,625,676,729,784,841,900,961,1024,1089,1156,1225,1296,1369,1444,1521,1600,1681,1764,1849,1936,2025,2116,2209,2304,2401,2500,2601,2704,2809,2916,3025,3136,3249,3364,3481,3600,3721,3844,3969,4096,4225,4356,4489,4624,4761,4900,5041,5184,5329,5476,5625,5776,5929,6084,6241,6400,6561,6724,6889,7056,7225,7396,7569,7744,7921,8100,8281,8464,8649,8836,9025,9216,9409,9604,9801,10000,10201,10404,10609,10816,11025,11236,11449,11664,11881,12100,12321,12544,12769,12996,13225,13456,13689,13924,14161,14400,14641,14884,15129,15376,15625,15876,16129,16384]
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun065.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun065.hs
deleted file mode 100644
index 6934832013..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun065.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-{-# LANGUAGE MagicHash, UnboxedTuples #-}
-
-module Main ( main ) where
-
-import GHC.Exts
-import GHC.Prim
-import GHC.ST
-
-main = putStr
- (test_sizeofArray
- ++ "\n" ++ test_sizeofMutableArray
- ++ "\n"
- )
-
-test_sizeofArray :: String
-test_sizeofArray = flip shows "\n" $ runST $ ST $ \ s# -> go 0 [] s#
- where
- go i@(I# i#) acc s#
- | i < 1000 = case newArray# i# 0 s# of
- (# s2#, marr# #) -> case unsafeFreezeArray# marr# s2# of
- (# s3#, arr# #) -> case sizeofArray# arr# of
- j# -> go (i+1) ((I# j#):acc) s3#
- | otherwise = (# s#, reverse acc #)
-
-test_sizeofMutableArray :: String
-test_sizeofMutableArray = flip shows "\n" $ runST $ ST $ \ s# -> go 0 [] s#
- where
- go i@(I# i#) acc s#
- | i < 1000 = case newArray# i# 0 s# of
- (# s2#, marr# #) -> case sizeofMutableArray# marr# of
- j# -> go (i+1) ((I# j#):acc) s2#
- | otherwise = (# s#, reverse acc #)
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun065.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun065.stdout
deleted file mode 100644
index bf895d50ef..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun065.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999]
-
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999]
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun066.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun066.hs
deleted file mode 100644
index aa1c621d71..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun066.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE MagicHash, BangPatterns #-}
-{-# OPTIONS_GHC -O0 #-}
-
-import Foreign.C
-import Data.Word
-import Foreign.Ptr
-import GHC.Exts
-
-import Control.Exception
-
-hashStr :: Ptr Word8 -> Int -> Int
-hashStr (Ptr a#) (I# len#) = loop 0# 0#
- where
- loop h n | n GHC.Exts.==# len# = I# h
- | otherwise = loop h2 (n GHC.Exts.+# 1#)
- where !c = ord# (indexCharOffAddr# a# n)
- !h2 = (c GHC.Exts.+# (h GHC.Exts.*# 128#)) `remInt#` 4091#
-
--- Infinite loops with new code generator + C-- optimizations
-main = do
- withCStringLen "ff" $ \(ptr, l) -> do
- print (hashStr (castPtr ptr) l)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun066.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun066.stdout
deleted file mode 100644
index b9cb48f6e4..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun066.stdout
+++ /dev/null
@@ -1 +0,0 @@
-885
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun067.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun067.hs
deleted file mode 100644
index 74666c1ee6..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun067.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- This test-case tickled a bug where an optimization pass incorrectly
--- reloaded a stack slot before the slot was initialized. It was a bit
--- tricky to reproduce, and I don't really know why this particular
--- harness was necessary.
-
--- Miscompiled code must be in another module, otherwise problem doesn't
--- show up.
-import Cgrun067A (miscompiledFn)
-import Foreign.C.String
-
-main = withCString "foobar" $ \p -> print =<< miscompiledFn p
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun067.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun067.stdout
deleted file mode 100644
index 14e24d4190..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun067.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"foobar"
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun068.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun068.hs
deleted file mode 100644
index f5096ad998..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun068.hs
+++ /dev/null
@@ -1,386 +0,0 @@
-{-# LANGUAGE BangPatterns, GeneralizedNewtypeDeriving, MagicHash,
- UnboxedTuples #-}
-
--- !!! stress tests of copying/cloning primitive arrays
-
--- Note: You can run this test manually with an argument
--- (i.e. ./cgrun068 10000) if you want to run the stress test for
--- longer.
-
-{-
-Test strategy
-=============
-
-We create an array of arrays of integers. Repeatedly we then either
-
-* allocate a new array in place of an old, or
-
-* copy a random segment of an array into another array (which might be
- the source array).
-
-By running this process long enough we hope to trigger any bugs
-related to garbage collection or edge cases.
-
-We only test copyMutableArray# and cloneArray# as they are
-representative of all the primops.
--}
-
-module Main ( main ) where
-
-import Debug.Trace (trace)
-
-import Control.Exception (assert)
-import Control.Monad
-import Control.Monad.State.Strict
-import GHC.Exts
-import GHC.ST hiding (liftST)
-import Prelude hiding (length, read)
-import qualified Prelude as P
-import qualified Prelude as P
-import System.Environment
-import System.Random
-
-main :: IO ()
-main = do
- args <- getArgs
- -- Number of copies to perform
- let numMods = case args of
- [] -> 100
- [n] -> P.read n :: Int
- putStr (test_copyMutableArray numMods ++ "\n" ++
- test_cloneMutableArray numMods ++ "\n"
- )
-
--- Number of arrays
-numArrays :: Int
-numArrays = 100
-
--- Maxmimum length of a sub-array
-maxLen :: Int
-maxLen = 1024
-
--- Create an array of arrays, with each sub-array having random length
--- and content.
-setup :: Rng s (MArray s (MArray s Int))
-setup = do
- len <- rnd (1, numArrays)
- marr <- liftST $ new_ len
- let go i
- | i >= len = return ()
- | otherwise = do
- n <- rnd (1, maxLen)
- subarr <- liftST $ fromList [j*j | j <- [(0::Int)..n-1]]
- liftST $ write marr i subarr
- go (i+1)
- go 0
- return marr
-
--- Replace one of the sub-arrays with a newly allocated array.
-allocate :: MArray s (MArray s Int) -> Rng s ()
-allocate marr = do
- ix <- rnd (0, length marr - 1)
- n <- rnd (1, maxLen)
- subarr <- liftST $ fromList [j*j | j <- [(0::Int)..n-1]]
- liftST $ write marr ix subarr
-
-type CopyFunction s a =
- MArray s a -> Int -> MArray s a -> Int -> Int -> ST s ()
-
--- Copy a random segment of an array onto another array, using the
--- supplied copy function.
-copy :: MArray s (MArray s a) -> CopyFunction s a
- -> Rng s (Int, Int, Int, Int, Int)
-copy marr f = do
- six <- rnd (0, length marr - 1)
- dix <- rnd (0, length marr - 1)
- src <- liftST $ read marr six
- dst <- liftST $ read marr dix
- let srcLen = length src
- srcOff <- rnd (0, srcLen - 1)
- let dstLen = length dst
- dstOff <- rnd (0, dstLen - 1)
- n <- rnd (0, min (srcLen - srcOff) (dstLen - dstOff))
- liftST $ f src srcOff dst dstOff n
- return (six, dix, srcOff, dstOff, n)
-
-type CloneFunction s a = MArray s a -> Int -> Int -> ST s (MArray s a)
-
--- Clone a random segment of an array, replacing another array, using
--- the supplied clone function.
-clone :: MArray s (MArray s a) -> CloneFunction s a
- -> Rng s (Int, Int, Int, Int)
-clone marr f = do
- six <- rnd (0, length marr - 1)
- dix <- rnd (0, length marr - 1)
- src <- liftST $ read marr six
- let srcLen = length src
- -- N.B. The array length might be zero if we previously cloned
- -- zero elements from some array.
- srcOff <- rnd (0, max 0 (srcLen - 1))
- n <- rnd (0, srcLen - srcOff)
- dst <- liftST $ f src srcOff n
- liftST $ write marr dix dst
- return (six, dix, srcOff, n)
-
-------------------------------------------------------------------------
--- copyMutableArray#
-
--- Copy a slice of the source array into a destination array and check
--- that the copy succeeded.
-test_copyMutableArray :: Int -> String
-test_copyMutableArray numMods = runST $ run $ do
- marr <- local setup
- marrRef <- setup
- let go i
- | i >= numMods = return "test_copyMutableArray: OK"
- | otherwise = do
- -- Either allocate or copy
- alloc <- rnd (True, False)
- if alloc then doAlloc else doCopy
- go (i+1)
-
- doAlloc = do
- local $ allocate marr
- allocate marrRef
-
- doCopy = do
- inp <- liftST $ asList marr
- _ <- local $ copy marr copyMArray
- (six, dix, srcOff, dstOff, n) <- copy marrRef copyMArraySlow
- el <- liftST $ asList marr
- elRef <- liftST $ asList marrRef
- when (el /= elRef) $
- fail inp el elRef six dix srcOff dstOff n
- go 0
- where
- fail inp el elRef six dix srcOff dstOff n =
- error $ "test_copyMutableArray: FAIL\n"
- ++ " Input: " ++ unlinesShow inp
- ++ " Copy: six: " ++ show six ++ " dix: " ++ show dix ++ " srcOff: "
- ++ show srcOff ++ " dstOff: " ++ show dstOff ++ " n: " ++ show n ++ "\n"
- ++ "Expected: " ++ unlinesShow elRef
- ++ " Actual: " ++ unlinesShow el
-
-asList :: MArray s (MArray s a) -> ST s [[a]]
-asList marr = toListM =<< mapArrayM toListM marr
-
-unlinesShow :: Show a => [a] -> String
-unlinesShow = concatMap (\ x -> show x ++ "\n")
-
-------------------------------------------------------------------------
--- cloneMutableArray#
-
--- Copy a slice of the source array into a destination array and check
--- that the copy succeeded.
-test_cloneMutableArray :: Int -> String
-test_cloneMutableArray numMods = runST $ run $ do
- marr <- local setup
- marrRef <- setup
- let go i
- | i >= numMods = return "test_cloneMutableArray: OK"
- | otherwise = do
- -- Either allocate or clone
- alloc <- rnd (True, False)
- if alloc then doAlloc else doClone
- go (i+1)
-
- doAlloc = do
- local $ allocate marr
- allocate marrRef
-
- doClone = do
- inp <- liftST $ asList marr
- _ <- local $ clone marr cloneMArray
- (six, dix, srcOff, n) <- clone marrRef cloneMArraySlow
- el <- liftST $ asList marr
- elRef <- liftST $ asList marrRef
- when (el /= elRef) $
- fail inp el elRef six dix srcOff n
- go 0
- where
- fail inp el elRef six dix srcOff n =
- error $ "test_cloneMutableArray: FAIL\n"
- ++ " Input: " ++ unlinesShow inp
- ++ " Clone: six: " ++ show six ++ " dix: " ++ show dix ++ " srcOff: "
- ++ show srcOff ++ " n: " ++ show n ++ "\n"
- ++ "Expected: " ++ unlinesShow elRef
- ++ " Actual: " ++ unlinesShow el
-
-------------------------------------------------------------------------
--- Convenience wrappers for Array# and MutableArray#
-
-data Array a = Array
- { unArray :: Array# a
- , lengthA :: {-# UNPACK #-} !Int}
-
-data MArray s a = MArray
- { unMArray :: MutableArray# s a
- , lengthM :: {-# UNPACK #-} !Int}
-
-class IArray a where
- length :: a -> Int
-instance IArray (Array a) where
- length = lengthA
-instance IArray (MArray s a) where
- length = lengthM
-
-instance Eq a => Eq (Array a) where
- arr1 == arr2 = toList arr1 == toList arr2
-
-new :: Int -> a -> ST s (MArray s a)
-new n@(I# n#) a =
- assert (n >= 0) $
- ST $ \s# -> case newArray# n# a s# of
- (# s2#, marr# #) -> (# s2#, MArray marr# n #)
-
-new_ :: Int -> ST s (MArray s a)
-new_ n = new n (error "Undefined element")
-
-write :: MArray s a -> Int -> a -> ST s ()
-write marr i@(I# i#) a =
- assert (i >= 0) $
- assert (i < length marr) $
- ST $ \ s# ->
- case writeArray# (unMArray marr) i# a s# of
- s2# -> (# s2#, () #)
-
-read :: MArray s a -> Int -> ST s a
-read marr i@(I# i#) =
- assert (i >= 0) $
- assert (i < length marr) $
- ST $ \ s# ->
- readArray# (unMArray marr) i# s#
-
-index :: Array a -> Int -> a
-index arr i@(I# i#) =
- assert (i >= 0) $
- assert (i < length arr) $
- case indexArray# (unArray arr) i# of
- (# a #) -> a
-
-unsafeFreeze :: MArray s a -> ST s (Array a)
-unsafeFreeze marr = ST $ \ s# ->
- case unsafeFreezeArray# (unMArray marr) s# of
- (# s2#, arr# #) -> (# s2#, Array arr# (length marr) #)
-
-toList :: Array a -> [a]
-toList arr = go 0
- where
- go i | i >= length arr = []
- | otherwise = index arr i : go (i+1)
-
-fromList :: [e] -> ST s (MArray s e)
-fromList es = do
- marr <- new_ n
- let go !_ [] = return ()
- go i (x:xs) = write marr i x >> go (i+1) xs
- go 0 es
- return marr
- where
- n = P.length es
-
-mapArrayM :: (a -> ST s b) -> MArray s a -> ST s (MArray s b)
-mapArrayM f src = do
- dst <- new_ n
- let go i
- | i >= n = return dst
- | otherwise = do
- el <- read src i
- el' <- f el
- write dst i el'
- go (i+1)
- go 0
- where
- n = length src
-
-toListM :: MArray s e -> ST s [e]
-toListM marr =
- sequence [read marr i | i <- [0..(length marr)-1]]
-
-------------------------------------------------------------------------
--- Wrappers around copy/clone primops
-
-copyMArray :: MArray s a -> Int -> MArray s a -> Int -> Int -> ST s ()
-copyMArray src six@(I# six#) dst dix@(I# dix#) n@(I# n#) =
- assert (six >= 0) $
- assert (six + n <= length src) $
- assert (dix >= 0) $
- assert (dix + n <= length dst) $
- ST $ \ s# ->
- case copyMutableArray# (unMArray src) six# (unMArray dst) dix# n# s# of
- s2# -> (# s2#, () #)
-
-cloneMArray :: MArray s a -> Int -> Int -> ST s (MArray s a)
-cloneMArray marr off@(I# off#) n@(I# n#) =
- assert (off >= 0) $
- assert (off + n <= length marr) $
- ST $ \ s# ->
- case cloneMutableArray# (unMArray marr) off# n# s# of
- (# s2#, marr2 #) -> (# s2#, MArray marr2 n #)
-
-------------------------------------------------------------------------
--- Manual versions of copy/clone primops. Used to validate the
--- primops
-
-copyMArraySlow :: MArray s e -> Int -> MArray s e -> Int -> Int -> ST s ()
-copyMArraySlow !src !six !dst !dix n =
- assert (six >= 0) $
- assert (six + n <= length src) $
- assert (dix >= 0) $
- assert (dix + n <= length dst) $
- if six < dix
- then goB (six+n-1) (dix+n-1) 0 -- Copy backwards
- else goF six dix 0 -- Copy forwards
- where
- goF !i !j c
- | c >= n = return ()
- | otherwise = do b <- read src i
- write dst j b
- goF (i+1) (j+1) (c+1)
- goB !i !j c
- | c >= n = return ()
- | otherwise = do b <- read src i
- write dst j b
- goB (i-1) (j-1) (c+1)
-
-cloneMArraySlow :: MArray s a -> Int -> Int -> ST s (MArray s a)
-cloneMArraySlow !marr !off n =
- assert (off >= 0) $
- assert (off + n <= length marr) $ do
- marr2 <- new_ n
- let go !i !j c
- | c >= n = return marr2
- | otherwise = do
- b <- read marr i
- write marr2 j b
- go (i+1) (j+1) (c+1)
- go off 0 0
-
-------------------------------------------------------------------------
--- Utilities for simplifying RNG passing
-
-newtype Rng s a = Rng { unRng :: StateT StdGen (ST s) a }
- deriving Monad
-
--- Same as 'randomR', but using the RNG state kept in the 'Rng' monad.
-rnd :: Random a => (a, a) -> Rng s a
-rnd r = Rng $ do
- g <- get
- let (x, g') = randomR r g
- put g'
- return x
-
--- Run a sub-computation without affecting the RNG state.
-local :: Rng s a -> Rng s a
-local m = Rng $ do
- g <- get
- x <- unRng m
- put g
- return x
-
-liftST :: ST s a -> Rng s a
-liftST m = Rng $ lift m
-
-run :: Rng s a -> ST s a
-run = flip evalStateT (mkStdGen 13) . unRng
-
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun068.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun068.stdout
deleted file mode 100644
index 122a125a8e..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun068.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-test_copyMutableArray: OK
-test_cloneMutableArray: OK
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun069.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun069.hs
deleted file mode 100644
index 076abc211e..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun069.hs
+++ /dev/null
@@ -1,82 +0,0 @@
-{-# LANGUAGE MagicHash,GHCForeignImportPrim,UnliftedFFITypes #-}
-module Main where
-
-import GHC.Exts
-import Control.Exception
-import System.IO
-
-foreign import prim "memintrinTest" basicTest :: Int# -> Int#
-
-foreign import prim "testMemset8_0" testMemset8_0 :: Int# -> Int#
-foreign import prim "testMemset8_8" testMemset8_8 :: Int# -> Int#
-foreign import prim "testMemset8_9" testMemset8_9 :: Int# -> Int#
-foreign import prim "testMemset8_10" testMemset8_10 :: Int# -> Int#
-foreign import prim "testMemset8_11" testMemset8_11 :: Int# -> Int#
-foreign import prim "testMemset8_12" testMemset8_12 :: Int# -> Int#
-foreign import prim "testMemset8_13" testMemset8_13 :: Int# -> Int#
-foreign import prim "testMemset8_14" testMemset8_14 :: Int# -> Int#
-foreign import prim "testMemset8_15" testMemset8_15 :: Int# -> Int#
-foreign import prim "testMemset8_16" testMemset8_16 :: Int# -> Int#
-foreign import prim "testMemset4_0" testMemset4_0 :: Int# -> Int#
-foreign import prim "testMemset4_4" testMemset4_4 :: Int# -> Int#
-foreign import prim "testMemset4_5" testMemset4_5 :: Int# -> Int#
-foreign import prim "testMemset4_6" testMemset4_6 :: Int# -> Int#
-foreign import prim "testMemset4_7" testMemset4_7 :: Int# -> Int#
-foreign import prim "testMemset4_8" testMemset4_8 :: Int# -> Int#
-
-foreign import prim "testMemcpy8_0" testMemcpy8_0 :: Int# -> Int#
-foreign import prim "testMemcpy8_8" testMemcpy8_8 :: Int# -> Int#
-foreign import prim "testMemcpy8_9" testMemcpy8_9 :: Int# -> Int#
-foreign import prim "testMemcpy8_10" testMemcpy8_10 :: Int# -> Int#
-foreign import prim "testMemcpy8_11" testMemcpy8_11 :: Int# -> Int#
-foreign import prim "testMemcpy8_12" testMemcpy8_12 :: Int# -> Int#
-foreign import prim "testMemcpy8_13" testMemcpy8_13 :: Int# -> Int#
-foreign import prim "testMemcpy8_14" testMemcpy8_14 :: Int# -> Int#
-foreign import prim "testMemcpy8_15" testMemcpy8_15 :: Int# -> Int#
-foreign import prim "testMemcpy8_16" testMemcpy8_16 :: Int# -> Int#
-foreign import prim "testMemcpy4_0" testMemcpy4_0 :: Int# -> Int#
-foreign import prim "testMemcpy4_4" testMemcpy4_4 :: Int# -> Int#
-foreign import prim "testMemcpy4_5" testMemcpy4_5 :: Int# -> Int#
-foreign import prim "testMemcpy4_6" testMemcpy4_6 :: Int# -> Int#
-foreign import prim "testMemcpy4_7" testMemcpy4_7 :: Int# -> Int#
-foreign import prim "testMemcpy4_8" testMemcpy4_8 :: Int# -> Int#
-
-main = do
- putStrLn "Mem{cpy,set,move} Intrinsics Test..."
- _ <- evaluate (I# (basicTest 1#))
-
- _ <- evaluate (I# (testMemset8_0 1#))
- _ <- evaluate (I# (testMemset8_8 1#))
- _ <- evaluate (I# (testMemset8_9 1#))
- _ <- evaluate (I# (testMemset8_10 1#))
- _ <- evaluate (I# (testMemset8_11 1#))
- _ <- evaluate (I# (testMemset8_12 1#))
- _ <- evaluate (I# (testMemset8_13 1#))
- _ <- evaluate (I# (testMemset8_14 1#))
- _ <- evaluate (I# (testMemset8_15 1#))
- _ <- evaluate (I# (testMemset8_16 1#))
- _ <- evaluate (I# (testMemset4_0 1#))
- _ <- evaluate (I# (testMemset4_4 1#))
- _ <- evaluate (I# (testMemset4_5 1#))
- _ <- evaluate (I# (testMemset4_6 1#))
- _ <- evaluate (I# (testMemset4_7 1#))
- _ <- evaluate (I# (testMemset4_8 1#))
-
- _ <- evaluate (I# (testMemcpy8_0 1#))
- _ <- evaluate (I# (testMemcpy8_8 1#))
- _ <- evaluate (I# (testMemcpy8_9 1#))
- _ <- evaluate (I# (testMemcpy8_10 1#))
- _ <- evaluate (I# (testMemcpy8_11 1#))
- _ <- evaluate (I# (testMemcpy8_12 1#))
- _ <- evaluate (I# (testMemcpy8_13 1#))
- _ <- evaluate (I# (testMemcpy8_14 1#))
- _ <- evaluate (I# (testMemcpy8_15 1#))
- _ <- evaluate (I# (testMemcpy8_16 1#))
- _ <- evaluate (I# (testMemcpy4_0 1#))
- _ <- evaluate (I# (testMemcpy4_4 1#))
- _ <- evaluate (I# (testMemcpy4_5 1#))
- _ <- evaluate (I# (testMemcpy4_6 1#))
- _ <- evaluate (I# (testMemcpy4_7 1#))
- _ <- evaluate (I# (testMemcpy4_8 1#))
- putStrLn "Test Passed!"
- return ()
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun069.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun069.stdout
deleted file mode 100644
index bee6602b04..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun069.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Mem{cpy,set,move} Intrinsics Test...
-Test Passed!
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun069_cmm.cmm b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun069_cmm.cmm
deleted file mode 100644
index b2f563bbf6..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun069_cmm.cmm
+++ /dev/null
@@ -1,214 +0,0 @@
-#include "Cmm.h"
-
-// Test that the Memcpy, Memmove, Memset GHC intrinsic functions
-// are working correctly.
-
-section "rodata" { memsetErr : bits8[] "Memset Error - align: %d size: %d\n"; }
-section "rodata" { memcpyErr : bits8[] "Memcpy Error - align: %d size: %d\n"; }
-// You have to call printf with the same number of args for every call.
-// This is as the LLVM backend doesn't support vararg functions.
-section "rodata" { memmoveErr : bits8[] "Memmove Error Occured\n"; }
-
-memintrinTest
-{
- W_ size, src, dst, off, alignV, set;
- bits8 set8;
-
- // Need two versions as memset takes a word for historical reasons
- // but really its a bits8. We check that setting has ben done correctly
- // at the bits8 level, so need bits8 version for checking.
- set = 4;
- set8 = 4::bits8;
-
- size = 1024;
- alignV = 4;
-
- ("ptr" src) = foreign "C" malloc(size);
- ("ptr" dst) = foreign "C" malloc(size);
-
- // Test memset
- prim %memset(src "ptr", set, size, alignV) [];
-
- // Check memset worked
- off = 0;
-while1:
- if (off == size) {
- goto while1_end;
- }
-
- if (bits8[src + off] != set8) {
- // call with two dummy args for LLVM's benefit.
- // they'll be ignored by printf
- foreign "C" printf(memsetErr "ptr", 0, 0) [];
- goto while1_end;
- }
-
- off = off + 1;
- goto while1;
-
-while1_end:
-
- // Test memcpy
- prim %memcpy(dst "ptr", src "ptr", size, alignV) [];
-
- // Check memcpy worked
- off = 0;
-while2:
- if (off == size) {
- goto while2_end;
- }
-
- if (bits8[dst + off] != set8) {
- foreign "C" printf(memcpyErr "ptr", 0, 0) [];
- goto while2_end;
- }
-
- off = off + 1;
- goto while2;
-
-while2_end:
-
- // Test memove
- set = 8;
- set8 = 8::bits8;
- size = 100;
- W_ src2;
- src2 = src + 50;
-
- prim %memset(src "ptr", set, size, alignV) [];
- prim %memmove(src2 "ptr", src "ptr", size, alignV) [];
-
- // Check memmove worked
- off = 0;
-while3:
- if (off == size) {
- goto while3_end;
- }
-
- if (bits8[src2 + off] != set8) {
- foreign "C" printf(memmoveErr "ptr", 0, 0) [];
- goto while3_end;
- }
-
- off = off + 1;
- goto while3;
-
-while3_end:
-
- foreign "C" free(src);
- foreign "C" free(dst);
-
- jump %ENTRY_CODE(Sp(0));
-}
-
-// ---------------------------------------------------------------------
-// Tests for unrolling
-
-// We generate code for each configuration of alignment and size rather
-// than looping over the possible alignments/sizes as the alignment and
-// size needs to be statically known for unrolling to happen.
-
-// Below we need both 'set' and 'set8' as memset takes a word for
-// historical reasons but really its a bits8. We check that setting
-// has ben done correctly at the bits8 level, so need bits8 version
-// for checking.
-#define TEST_MEMSET(ALIGN,SIZE) \
- W_ size, src, dst, off, alignV, set; \
- bits8 set8; \
- set = 4; \
- set8 = 4::bits8; \
- size = SIZE; \
- alignV = ALIGN; \
- ("ptr" src) = foreign "C" malloc(size); \
- ("ptr" dst) = foreign "C" malloc(size); \
- prim %memset(src "ptr", set, size, alignV) []; \
- off = 0; \
-loop: \
- if (off == size) { \
- goto loop_end; \
- } \
- if (bits8[src + off] != set8) { \
- foreign "C" printf(memsetErr "ptr", ALIGN, SIZE) []; \
- goto loop_end; \
- } \
- off = off + 1; \
- goto loop; \
-loop_end: \
- foreign "C" free(src); \
- foreign "C" free(dst); \
- jump %ENTRY_CODE(Sp(0));
-
-// This is not exactly beutiful but we need the separate functions to
-// avoid collisions between labels.
-//
-// The specific tests are selected with knowledge of the implementation
-// in mind in order to try to cover all branches and interesting corner
-// cases.
-
-testMemset8_0 { TEST_MEMSET(8,0); }
-testMemset8_8 { TEST_MEMSET(8,8); }
-testMemset8_9 { TEST_MEMSET(8,9); }
-testMemset8_10 { TEST_MEMSET(8,10); }
-testMemset8_11 { TEST_MEMSET(8,11); }
-testMemset8_12 { TEST_MEMSET(8,12); }
-testMemset8_13 { TEST_MEMSET(8,13); }
-testMemset8_14 { TEST_MEMSET(8,14); }
-testMemset8_15 { TEST_MEMSET(8,15); }
-testMemset8_16 { TEST_MEMSET(8,16); }
-
-testMemset4_0 { TEST_MEMSET(4,0); }
-testMemset4_4 { TEST_MEMSET(4,4); }
-testMemset4_5 { TEST_MEMSET(4,5); }
-testMemset4_6 { TEST_MEMSET(4,6); }
-testMemset4_7 { TEST_MEMSET(4,7); }
-testMemset4_8 { TEST_MEMSET(4,8); }
-
-#define TEST_MEMCPY(ALIGN,SIZE) \
- W_ size, src, dst, off, alignV; \
- size = SIZE; \
- alignV = ALIGN; \
- ("ptr" src) = foreign "C" malloc(size); \
- ("ptr" dst) = foreign "C" malloc(size); \
- off = 0; \
-init: \
- if (off == size) { \
- goto init_end; \
- } \
- bits8[src + off] = 0xaa; \
- off = off + 1; \
- goto init; \
-init_end: \
- prim %memcpy(dst "ptr", src "ptr", size, alignV) []; \
- off = 0; \
-loop: \
- if (off == size) { \
- goto loop_end; \
- } \
- if (bits8[dst + off] != bits8[src + off]) { \
- foreign "C" printf(memcpyErr "ptr", ALIGN, SIZE) []; \
- goto loop_end; \
- } \
- off = off + 1; \
- goto loop; \
-loop_end: \
- foreign "C" free(src); \
- foreign "C" free(dst); \
- jump %ENTRY_CODE(Sp(0));
-
-testMemcpy8_0 { TEST_MEMCPY(8,0); }
-testMemcpy8_8 { TEST_MEMCPY(8,8); }
-testMemcpy8_9 { TEST_MEMCPY(8,9); }
-testMemcpy8_10 { TEST_MEMCPY(8,10); }
-testMemcpy8_11 { TEST_MEMCPY(8,11); }
-testMemcpy8_12 { TEST_MEMCPY(8,12); }
-testMemcpy8_13 { TEST_MEMCPY(8,13); }
-testMemcpy8_14 { TEST_MEMCPY(8,14); }
-testMemcpy8_15 { TEST_MEMCPY(8,15); }
-testMemcpy8_16 { TEST_MEMCPY(8,16); }
-
-testMemcpy4_0 { TEST_MEMCPY(4,0); }
-testMemcpy4_4 { TEST_MEMCPY(4,4); }
-testMemcpy4_5 { TEST_MEMCPY(4,5); }
-testMemcpy4_6 { TEST_MEMCPY(4,6); }
-testMemcpy4_7 { TEST_MEMCPY(4,7); }
-testMemcpy4_8 { TEST_MEMCPY(4,8); }
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun070.hs b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun070.hs
deleted file mode 100644
index 1f6b5622ba..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun070.hs
+++ /dev/null
@@ -1,144 +0,0 @@
-{-# LANGUAGE MagicHash, UnboxedTuples #-}
-
--- !!! simple tests of copying/cloning byte arrays
---
-
-module Main ( main ) where
-
-import GHC.Word
-import GHC.Exts
-import GHC.Prim
-import GHC.ST
-
-main = putStr
- (test_copyByteArray
- ++ "\n" ++ test_copyMutableByteArray
- ++ "\n" ++ test_copyMutableByteArrayOverlap
- ++ "\n"
- )
-
-------------------------------------------------------------------------
--- Constants
-
--- All allocated arrays are of this size
-len :: Int
-len = 130
-
--- We copy these many elements
-copied :: Int
-copied = len - 2
-
-------------------------------------------------------------------------
--- copyByteArray#
-
--- Copy a slice of the source array into a destination array and check
--- that the copy succeeded.
-test_copyByteArray :: String
-test_copyByteArray =
- let dst = runST $ do
- src <- newByteArray len
- fill src 0 len
- src <- unsafeFreezeByteArray src
- dst <- newByteArray len
- -- Markers to detect errors
- writeWord8Array dst 0 255
- writeWord8Array dst (len-1) 255
- -- Leave the first and last element untouched
- copyByteArray src 1 dst 1 copied
- unsafeFreezeByteArray dst
- in shows (toList dst len) "\n"
-
-------------------------------------------------------------------------
--- copyMutableByteArray#
-
--- Copy a slice of the source array into a destination array and check
--- that the copy succeeded.
-test_copyMutableByteArray :: String
-test_copyMutableByteArray =
- let dst = runST $ do
- src <- newByteArray len
- fill src 0 len
- dst <- newByteArray len
- -- Markers to detect errors
- writeWord8Array dst 0 255
- writeWord8Array dst (len-1) 255
- -- Leave the first and last element untouched
- copyMutableByteArray src 1 dst 1 copied
- unsafeFreezeByteArray dst
- in shows (toList dst len) "\n"
-
--- Perform a copy where the source and destination part overlap.
-test_copyMutableByteArrayOverlap :: String
-test_copyMutableByteArrayOverlap =
- let arr = runST $ do
- marr <- fromList inp
- -- Overlap of two elements
- copyMutableByteArray marr 5 marr 7 8
- unsafeFreezeByteArray marr
- in shows (toList arr (length inp)) "\n"
- where
- -- This case was known to fail at some point.
- inp = [0,169,196,9,16,25,36,16,25,81,100,121,144,169,196]
-
-------------------------------------------------------------------------
--- Test helpers
-
--- Initialize the elements of this array, starting at the given
--- offset. The last parameter specifies the number of elements to
--- initialize. Element at index @i@ takes the value @i@ (i.e. the
--- first actually modified element will take value @off@).
-fill :: MByteArray s -> Int -> Int -> ST s ()
-fill marr off count = go 0
- where
- go i
- | i >= fromIntegral count = return ()
- | otherwise = do writeWord8Array marr (off + i) (fromIntegral i)
- go (i + 1)
-
-fromList :: [Word8] -> ST s (MByteArray s)
-fromList xs0 = do
- marr <- newByteArray (length xs0)
- let go [] i = i `seq` return marr
- go (x:xs) i = writeWord8Array marr i x >> go xs (i + 1)
- go xs0 0
-
-------------------------------------------------------------------------
--- Convenience wrappers for ByteArray# and MutableByteArray#
-
-data ByteArray = ByteArray { unBA :: ByteArray# }
-data MByteArray s = MByteArray { unMBA :: MutableByteArray# s }
-
-newByteArray :: Int -> ST s (MByteArray s)
-newByteArray (I# n#) = ST $ \s# -> case newByteArray# n# s# of
- (# s2#, marr# #) -> (# s2#, MByteArray marr# #)
-
-indexWord8Array :: ByteArray -> Int -> Word8
-indexWord8Array arr (I# i#) = case indexWord8Array# (unBA arr) i# of
- a -> W8# a
-
-writeWord8Array :: MByteArray s -> Int -> Word8 -> ST s ()
-writeWord8Array marr (I# i#) (W8# a) = ST $ \ s# ->
- case writeWord8Array# (unMBA marr) i# a s# of
- s2# -> (# s2#, () #)
-
-unsafeFreezeByteArray :: MByteArray s -> ST s (ByteArray)
-unsafeFreezeByteArray marr = ST $ \ s# ->
- case unsafeFreezeByteArray# (unMBA marr) s# of
- (# s2#, arr# #) -> (# s2#, ByteArray arr# #)
-
-copyByteArray :: ByteArray -> Int -> MByteArray s -> Int -> Int -> ST s ()
-copyByteArray src (I# six#) dst (I# dix#) (I# n#) = ST $ \ s# ->
- case copyByteArray# (unBA src) six# (unMBA dst) dix# n# s# of
- s2# -> (# s2#, () #)
-
-copyMutableByteArray :: MByteArray s -> Int -> MByteArray s -> Int -> Int
- -> ST s ()
-copyMutableByteArray src (I# six#) dst (I# dix#) (I# n#) = ST $ \ s# ->
- case copyMutableByteArray# (unMBA src) six# (unMBA dst) dix# n# s# of
- s2# -> (# s2#, () #)
-
-toList :: ByteArray -> Int -> [Word8]
-toList arr n = go 0
- where
- go i | i >= n = []
- | otherwise = indexWord8Array arr i : go (i+1)
diff --git a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun070.stdout b/testsuite/tests/ghc-regress/codeGen/should_run/cgrun070.stdout
deleted file mode 100644
index db95c83d7b..0000000000
--- a/testsuite/tests/ghc-regress/codeGen/should_run/cgrun070.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-[255,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,255]
-
-[255,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,255]
-
-[0,169,196,9,16,25,36,25,36,16,25,81,100,121,144]
-
diff --git a/testsuite/tests/ghc-regress/concurrent/2317/2317.hs b/testsuite/tests/ghc-regress/concurrent/2317/2317.hs
deleted file mode 100644
index 5025582ebe..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/2317/2317.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-{-# LANGUAGE PatternSignatures #-}
-
-import Control.Monad
-import Control.Parallel
-import System.Environment
-import System.Random
-
-sort (x:xs) = sort lesser ++ [x] ++ sort greater
- where lesser = filter (< x) xs
- greater = filter (>= x) xs
-sort _ = []
-
-
-psort xs 10 = sort xs
-psort (x:xs) d = let d' = d + 1
- l = psort lesser d'
- g = psort greater d'
- in l `par` g `par` (l ++ [x] ++ g)
- where lesser = filter (< x) xs
- greater = filter (>= x) xs
-psort _ _ = []
-
-main = do
- args <- getArgs
- let counts | null args = [100000]
- | otherwise = map read args
- rs :: [Int] <- randoms `fmap` getStdGen
- forM_ counts $ \k -> do
- let xs = take k rs
- print . length $ xs
--- s <- getCurrentTime
- print . length $ psort xs 0
--- e <- getCurrentTime
--- print (e `diffUTCTime` s)
diff --git a/testsuite/tests/ghc-regress/concurrent/2317/2317.stdout b/testsuite/tests/ghc-regress/concurrent/2317/2317.stdout
deleted file mode 100644
index 7ab314964e..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/2317/2317.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-100000
-100000
diff --git a/testsuite/tests/ghc-regress/concurrent/2317/Makefile b/testsuite/tests/ghc-regress/concurrent/2317/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/2317/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/concurrent/2317/all.T b/testsuite/tests/ghc-regress/concurrent/2317/all.T
deleted file mode 100644
index 80b46f8c75..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/2317/all.T
+++ /dev/null
@@ -1,5 +0,0 @@
-test('2317',
- [skip_if_fast,
- reqlib('parallel')],
- multimod_compile_and_run,
- ['2317',''])
diff --git a/testsuite/tests/ghc-regress/concurrent/Makefile b/testsuite/tests/ghc-regress/concurrent/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/concurrent/prog001/Arithmetic.hs b/testsuite/tests/ghc-regress/concurrent/prog001/Arithmetic.hs
deleted file mode 100644
index c1c18c549b..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog001/Arithmetic.hs
+++ /dev/null
@@ -1,235 +0,0 @@
-module Arithmetic where
-
-import Control.Concurrent
-import Control.Concurrent.MVar
-import System.IO.Unsafe
-import Utilities
-import Converter
-import Stream
-import Data.Ratio
-import Trit
-
-
--- Negate a stream of Gray code
-negateGray :: Gray -> Gray
-negateGray = fl
-
-
--- Multiply a Gray code stream by 2
--- The stream must represent a real number in (-1/2, 1/2) only
-mul2 :: Gray -> Gray
-mul2 (x:1:xs) = (x:fl xs)
-
-
--- Division by 2, the result is to be in (-1/2, 1/2)
-div2 :: Gray -> Gray
-div2 (x:xs) = x:1:(fl xs)
-
-
--- Addition by 1, the input must be in (-1,0)
-plusOne :: Gray -> Gray
-plusOne (0:xs) = 1:fl xs
-
-
-
--- Substraction by 1, the input must be in (0,1)
-minusOne :: Gray -> Gray
-minusOne (1:xs) = 0:fl xs
-
-
-
-
-threadTesting :: Gray -> Gray -> IO Int
-threadTesting xs ys = do
- m <- newEmptyMVar
- c1 <- forkIO (t1 m xs ys)
- c2 <- forkIO (t2 m xs ys)
- c3 <- forkIO (t3 m xs ys)
- c4 <- forkIO (t4 m xs ys)
- c5 <- forkIO (t5 m xs ys)
- c6 <- forkIO (t6 m xs ys)
- c <- takeMVar m
- killThread c1
- killThread c2
- killThread c3
- killThread c4
- killThread c5
- killThread c6
- return c
-
-
-
-
-addition :: Gray -> Gray -> IO Gray
-addition xs ys = do
- c <- threadTesting xs ys
- case c of
- 1 -> do
- let tx = tail xs
- let ty = tail ys
- t <- unsafeInterleaveIO (addition tx ty)
- return (0:t)
- 2 -> do
- let tx = tail xs
- let ty = tail ys
- t <- unsafeInterleaveIO (addition tx ty)
- return (1:t)
- 3 -> do
- let tx = tail xs
- let ty = tail ys
- cs <- unsafeInterleaveIO (addition tx (fl ty))
- let c1 = cs !! 0
- let c2 = tail cs
- return (c1:1:fl c2)
- 4 -> do
- let tx = tail xs
- let ty = tail ys
- (cs) <- unsafeInterleaveIO (addition (fl tx) ty)
- let c1 = cs !! 0
- let c2 = tail cs
- return (c1:1:(fl c2))
- 5 -> do
- let x1 = xs!!0
- let y1 = ys!!0
- let tx = (drop 2) xs
- let ty = (drop 2) ys
- cs <- unsafeInterleaveIO (addition (x1:(fl tx)) (y1:(fl ty)))
- let c1 = cs !! 0
- let c2 = tail cs
- return (c1:(1:(fl c2)))
- 6 -> do
- let x1 = xs !! 0
- let tx = drop 3 xs
- let ty = drop 2 ys
- t <- unsafeInterleaveIO (addition (x1:1:tx) (1:fl ty))
- return (0:t)
- 7 -> do
- let x1 = xs !! 0
- let tx = drop 3 xs
- let ty = drop 2 ys
- t <- unsafeInterleaveIO (addition (fl (x1:1:tx)) (1:(fl ty)))
- return (1:t)
- 8 -> do
- let x1 = xs !! 0
- let y2 = ys !! 1
- let tx = drop 3 xs
- let ty = drop 3 ys
- t <- unsafeInterleaveIO (addition (fl (x1:fl tx)) (fl (y2:fl ty)))
- return (0:1:t)
- 9 -> do
- let x1 = xs !! 0
- let y2 = ys !! 1
- let tx = drop 3 xs
- let ty = drop 3 ys
- t <- unsafeInterleaveIO (addition (x1:fl tx) (fl (y2:fl ty)))
- return (1:1:t)
- 10 -> do
- let y1 = ys !! 0
- let ty = drop 3 ys
- let tx = drop 2 xs
- t <- unsafeInterleaveIO (addition (1:fl tx) (y1:1:ty))
- return (0:t)
- 11 -> do
- let y1 = ys !! 0
- let ty = drop 3 ys
- let tx = drop 2 xs
- t <- unsafeInterleaveIO (addition (1:fl tx) (fl (y1:1:ty)))
- return (1:t)
- 12 -> do
- let y1 = ys !! 0
- let x2 = xs !! 1
- let tx = drop 3 xs
- let ty = drop 3 ys
- t <- unsafeInterleaveIO (addition (fl (x2:fl tx)) (fl (y1:fl ty)))
- return (0:1:t)
- 13 -> do
- let y1 = ys !! 0
- let x2 = xs !! 1
- let tx = drop 3 xs
- let ty = drop 3 ys
- t <- unsafeInterleaveIO (addition (fl (x2:fl tx)) (y1:fl ty))
- return (1:1:t)
-
-
-
-
-
-
-
-
-
-
-
-
-
--- Compute (a-b)/2
-substraction :: Gray -> Gray -> IO Gray
-substraction xs ys = addition xs (negateGray ys)
-
-
-
-
-
-t1 :: MVar Int -> Stream -> Stream -> IO()
-t1 m (0:as) (0:bs) = putMVar m 1
-t1 m (1:as) (1:bs) = putMVar m 2
-t1 m (0:as) (1:bs) = putMVar m 3
-t1 m (1:as) (0:bs) = putMVar m 4
-
-
-t2 :: MVar Int -> Stream -> Stream -> IO()
-t2 m (a:1:x) (b:1:y) = putMVar m 5
-t2 m x y = yield
-
-
-t3 m (a:1:0:x) (0:0:y) = putMVar m 6
-t3 m (a:1:0:x) (1:0:y) = putMVar m 7
-t3 m x y = yield
-
-
-t4 m (a:1:0:x) (0:b:1:y) = putMVar m 8
-t4 m (a:1:0:x) (1:b:1:y) = putMVar m 9
-t4 m x y = yield
-
-
-t5 m (0:0:x) (b:1:0:y) = putMVar m 10
-t5 m (1:0:x) (b:1:0:y) = putMVar m 11
-t5 m x y = yield
-
-
-t6 m (0:a:1:x) (b:1:0:y) = putMVar m 12
-t6 m (1:a:1:x) (b:1:0:y) = putMVar m 13
-t6 m x y = yield
-
-
-
-
-
-multiplyIO :: Gray -> Gray -> IO Gray
-multiplyIO xs ys = do
- s1 <- unsafeInterleaveIO (grayToSignIO xs)
- s2 <- unsafeInterleaveIO (grayToSignIO ys)
- let s = Trit.multiply s1 s2
- let g = signToGray s
- return g
-
-
-
-start :: IO()
-start = do
- c <- unsafeInterleaveIO(multiplyIO z1 z1)
- putStrLn (show c)
-
-
-startA :: IO()
-startA = do
- c <- unsafeInterleaveIO(addition (1:1:z0) (1:1:z0))
- putStrLn (show (take 30 c))
-
-z0 = (0:z0)
-z1 = (1:z1)
-
-zl = 0:loop:z0
-
-loop = loop
-loop01 = 0:1:loop01
diff --git a/testsuite/tests/ghc-regress/concurrent/prog001/Converter.hs b/testsuite/tests/ghc-regress/concurrent/prog001/Converter.hs
deleted file mode 100644
index d3dfe2a34f..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog001/Converter.hs
+++ /dev/null
@@ -1,130 +0,0 @@
-
-module Converter (rationalToGray, grayToSignIO, signToGray, Gray, startF, startC) where
-
-import Stream
-import Data.Ratio
-import Control.Concurrent
-import Control.Concurrent.MVar
-import System.IO.Unsafe
-
-
-type Gray = [Integer]
-type State = (Integer, Integer)
-
-
--- Convert a rational number (in (-1,1)) to its Gray representation
-rationalToGray :: Rational -> Gray
-rationalToGray x
- |x<0 = f (negate' (rationalToStream (-x))) (0,0)
- |otherwise = f (rationalToStream x) (0,0)
-
-
--- Function to implement the two heads Turing machine that convert a
--- signed-digit stream to the corresponding Gray-code representation
-f :: Stream -> State -> Stream
-f (x:xs) (0,0)
- |x==(-1) = 0:f xs (0,0)
- |x==0 = c:1:ds
- |x==1 = 1:f xs (1,0)
- where c:ds = f xs (0,1)
-
-f (x:xs) (0,1)
- |x==(-1) = 0:f xs (1,0)
- |x==0 = c:0:ds
- |x==1 = 1:f xs (0,0)
- where c:ds = f xs (0,1)
-
-f (x:xs) (1,0)
- |x==(-1) = 1:f xs (0,0)
- |x==0 = c:1:ds
- |x==1 = 0:f xs (1,0)
- where c:ds = f xs (1,1)
-
-f (x:xs) (1,1)
- |x==(-1) = 1:f xs (1,0)
- |x==0 = c:0:ds
- |x==1 = 0:f xs (0,0)
- where c:ds = f xs (1,1)
-
-
-
-
--- Anotherway to convert from a rational to Gray code representation
--- Behave exactly the same like above
-rationalToGray' :: Rational -> Gray
-rationalToGray' x
- |x<0 = signToGray (negate' (rationalToStream (-x)))
- |otherwise = signToGray (rationalToStream x)
-
-
--- Function to convert a signed-digit stream to Gray representation
--- Is much shorter than above
-signToGray :: Stream -> Stream
-signToGray (1:xs) = 1:f'(signToGray xs)
-signToGray ((-1):xs) = 0:signToGray xs
-signToGray (0:xs) = c:1:(f' ds)
- where c:ds = signToGray xs
-
-
-
--- Convert a Gray-code stream to the corresponding signed-digit representation
--- Make use of threads
-grayToSignIO :: Stream -> IO Stream
-grayToSignIO (x1:x2:xs) = do
- c <- threadTesting(x1:x2:xs)
- if (c==1)
- then (do co <- unsafeInterleaveIO (grayToSignIO (f'(x2:xs)))
- return (1:co))
- else if (c==2)
- then (do co <- unsafeInterleaveIO (grayToSignIO (x2:xs))
- return ((-1):co))
- else (do co <- unsafeInterleaveIO (grayToSignIO (x1:f' xs))
- return (0:co))
-
--- Flip the first bit of an infinite stream
-f' (x:xs) = (f'' x):xs
- where f'' 1 = 0
- f'' 0 = 1
-
-
--- Launch two threads which run concurrently, test for the first digit of the stream (1, 0 or bottom)
--- As soon as one thread terminate, grab that result and proceed
-threadTesting :: Stream -> IO Int
-threadTesting xs = do m <- newEmptyMVar
- c1 <- forkIO (f1 m xs)
- c2 <- forkIO (f2 m xs)
- c <- takeMVar m
- killThread c1
- killThread c2
- return c
-
--- Test case 1, when the first bit is either 1 or 0.
--- In case of bottom, f1 will never terminate, then f2 will definitely terminate
-f1 :: MVar Int -> Stream -> IO()
-f1 m (0:xs) = putMVar m 2
-f1 m (1:xs) = putMVar m 1
-
--- Test case 2, when the first bit is completely ignored, esp in case it was a bottom
--- If the second bit is 1, then we can output, don't care value of the first bit
--- If the second bit is 0, then loop forever, give chances to f1 to terminate
-f2 :: MVar Int -> Stream -> IO()
-f2 m (c1:c2:xs)
- |c2==1 = putMVar m 3
- |otherwise = yield
-
-
-
-
--- Testing
-startC :: IO()
-startC = do
- c<- unsafeInterleaveIO (grayToSignIO (1:1:z0))
- putStrLn (show (take 100 c))
-
-
-startF = signToGray ((-1):1:z0)
-
-
-z0 = 0:z0
-loop' = loop'
-z1' = (1:z1')
diff --git a/testsuite/tests/ghc-regress/concurrent/prog001/Main.hs b/testsuite/tests/ghc-regress/concurrent/prog001/Main.hs
deleted file mode 100644
index b90fe11c5d..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog001/Main.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-import Mutiply
-
-main = startM1
diff --git a/testsuite/tests/ghc-regress/concurrent/prog001/Makefile b/testsuite/tests/ghc-regress/concurrent/prog001/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog001/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/concurrent/prog001/Mult.hs b/testsuite/tests/ghc-regress/concurrent/prog001/Mult.hs
deleted file mode 100644
index e387244f68..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog001/Mult.hs
+++ /dev/null
@@ -1,237 +0,0 @@
-
-module Main where
-
-import Arithmetic
-import Trit
-import Converter
-import System.IO.Unsafe
-import Data.Ratio
-import Utilities
-import Thread
-
-main = startM1
-
-startM1 :: IO()
-startM1 = do
- c <- unsafeInterleaveIO (mult (rationalToGray (1%3)) (rationalToGray (0%1)))
- putStrLn (show (take 100 (drop 1 c)))
-
-
-
-
-mult :: Gray -> Gray -> IO Gray
-mult xs ys = do
- c <- threadTesting1 xs ys
- case c of
-
- 101 -> do
- --putStrLn ("In case 101")
- let tx = drop 2 xs
- let ty = drop 2 ys
- t1 <- unsafeInterleaveIO (addition tx ty)
- t2 <- unsafeInterleaveIO (addition (fl t1) (1:t1))
- t3 <- unsafeInterleaveIO (mult tx ty)
- c' <- unsafeInterleaveIO (addition t2 (1:0:0:(fl t3)))
- return c'
-
- 102 -> do
- --putStrLn ("In case 102")
- let tx = drop 2 xs
- let ty = drop 2 ys
- t1 <- unsafeInterleaveIO (addition (fl tx) ty)
- t2 <- unsafeInterleaveIO (addition tx ty)
- t0 <- unsafeInterleaveIO (addition t1 (1:fl t2))
- t3 <- unsafeInterleaveIO (mult tx ty)
- c' <- unsafeInterleaveIO (addition t0 (1:1:0:fl t3))
- return c'
-
- 103 -> do
- --putStrLn ("In case 103")
- let tx = drop 2 xs
- let ty = drop 2 ys
- t <- unsafeInterleaveIO (mult (0:0:tx) (0:0:ty))
- return (fl t)
-
- 104 -> do
- --putStrLn ("In case 104")
- let tx = drop 2 xs
- let ty = drop 2 ys
- t <- unsafeInterleaveIO (mult (0:0:tx) (0:1:ty))
- return (fl t)
-
- 201 -> do
- c' <- unsafeInterleaveIO (mult ys xs)
- return c'
-
- 202 -> do
- --putStrLn ("In case 202")
- let tx = drop 2 xs
- let ty = drop 2 ys
- t1 <- unsafeInterleaveIO (addition tx ty)
- t2 <- unsafeInterleaveIO (addition t1 (0:fl t1))
- t3 <- unsafeInterleaveIO (mult tx ty)
- c' <- unsafeInterleaveIO (addition t2 (1:1:1:fl t3))
- return c'
-
- 203 -> do
- --putStrLn ("In case 203")
- let tx = drop 2 xs
- let ty = drop 2 ys
- t <- unsafeInterleaveIO (mult (0:1:tx) (0:0:ty))
- return (fl t)
-
- 204 -> do
- --putStrLn ("In case 204")
- let tx = drop 2 xs
- let ty = drop 2 ys
- t <- unsafeInterleaveIO (mult (0:1:tx) (0:1:ty))
- return (fl t)
-
- 30 -> do
- --putStrLn ("In case 30")
- let y1 = ys !! 0
- let tx = drop 2 xs
- let ty = drop 3 ys
- t1 <- unsafeInterleaveIO (addition ((f0' y1):1:ty) ((f0' y1):1:0:ty))
- t0 <- unsafeInterleaveIO (mult tx (y1: fl ty))
- let c4 = head t0
- let d4 = fl (tail t0)
- c' <- unsafeInterleaveIO (addition t1 (c4:1:0:0:d4))
- return c'
-
- 31 -> do
- --putStrLn ("In case 31")
- let tx = drop 2 xs
- c' <- unsafeInterleaveIO (mult (0:0:tx) ys)
- return (fl c')
-
- 40 -> do
- --putStrLn ("In case 40")
- let tx = drop 2 xs
- let y2 = ys !! 1
- let ty = drop 3 ys
- t1 <- unsafeInterleaveIO (addition (y2:fl ty) tx)
- t2 <- unsafeInterleaveIO (addition (fl t1) (1:y2:1:ty))
- t0 <- unsafeInterleaveIO (mult tx (y2:fl ty))
- let c2 = f0' (head t0)
- let d2 = fl (tail t0)
- c' <- unsafeInterleaveIO (addition t2 (1:c2:1:0:d2))
- return c'
-
- 41 -> do
- --putStrLn ("In case 41")
- let tx = drop 2 xs
- let y2 = ys !! 1
- let ty = drop 3 ys
- c' <- unsafeInterleaveIO (mult (0:0:tx) (0:y2:1:ty))
- return (fl c')
-
- 50 -> do
- --putStrLn ("In case 50")
- let tx = drop 2 xs
- let y2 = ys !! 1
- let ty = drop 3 ys
- t1 <- unsafeInterleaveIO (addition tx (fl (y2:fl ty)))
- t2 <- unsafeInterleaveIO (addition t1 (0:y2:1:ty))
- t0 <- unsafeInterleaveIO (mult (fl tx) (y2:fl ty))
- let c1 = f0' (head t0)
- let d1 = fl (tail t0)
- c' <- unsafeInterleaveIO (addition t2 (1:c1:1:0:d1))
- return c'
-
- 51 -> do
- --putStrLn ("In case 51")
- let tx = drop 2 xs
- let y2 = ys !! 1
- let ty = drop 3 ys
- c' <- unsafeInterleaveIO (mult (0:1:tx) (0:y2:1:ty))
- return (fl c')
-
-
- 60 -> do
- --putStrLn ("In case 60")
- let tx = drop 2 xs
- let y1 = ys !! 0
- let ty = drop 3 ys
- t1 <- unsafeInterleaveIO (addition ((f0' y1):1:ty) (y1:1:0:ty))
- t0 <- unsafeInterleaveIO (mult (fl tx) (y1:fl ty))
- let c1 = head t0
- let d1 = fl (tail t0)
- c' <- unsafeInterleaveIO (addition t1 (c1:1:0:0:d1))
- return c'
-
- 61 -> do
- --putStrLn ("In case 61")
- let tx = drop 2 xs
- let y1 = ys !! 0
- let ty = drop 3 ys
- c' <- unsafeInterleaveIO (mult (0:1:tx) (y1:1:0:ty))
- return (fl c')
-
-
- 70 -> do
- --putStrLn ("In case 70")
- c' <- unsafeInterleaveIO (mult ys xs)
- return c'
-
- 80 -> do
- --putStrLn ("In case 80")
- let x2 = xs !! 1
- let y2 = ys !! 1
- let tx = drop 3 xs
- let ty = drop 3 ys
- t1 <- unsafeInterleaveIO (addition (x2:fl tx) (y2:fl ty))
- t0 <- unsafeInterleaveIO (mult (x2:fl tx) (y2:fl ty))
- let c1 = head (fl t1)
- let d1 = tail (fl t1)
- let c2 = f0' (head t0)
- let d2 = fl (tail t0)
- c' <- unsafeInterleaveIO (addition (c1:1:(fl d1)) (1:c2:1:0:d2))
- return c'
-
- 81 -> do
- --putStrLn ("In case 81")
- let x2 = xs !! 1
- let y2 = ys !! 1
- let tx = drop 3 xs
- let ty = drop 3 ys
- c' <- unsafeInterleaveIO (mult (0:x2:1:tx) (0:y2:1:ty))
- return (fl c')
-
- 90 -> do
- --putStrLn ("In case 90")
- let x2 = xs!!1
- let y1 = ys!!0
- let tx = drop 3 xs
- let ty = drop 3 ys
- t0 <- unsafeInterleaveIO (mult (x2:fl tx) (y1:fl ty))
- let c1 = head t0
- let d1 = fl (tail t0)
- c' <- unsafeInterleaveIO (addition ((f0' y1):1:0:ty) (c1:1:0:0:d1))
- return c'
-
- 91 -> do
- --putStrLn ("In case 91")
- let x2 = xs!!1
- let y1 = ys!!0
- let tx = drop 3 xs
- let ty = drop 3 ys
- c' <- unsafeInterleaveIO (mult (0:x2:1:tx) (y1:1:0:ty))
- return (fl c')
-
- 100 -> do
- --putStrLn ("In case 100")
- let x1 = head xs
- let y1 = head ys
- let tx = drop 3 xs
- let ty = drop 3 ys
- t0 <- unsafeInterleaveIO (mult (x1:fl tx) (y1:fl ty))
- let c4 = head t0
- let d4 = fl (tail t0)
- return (c4:1:0:0:0:d4)
-
-
-
-f0' 0 = 1
-f0' 1 = 0
-
diff --git a/testsuite/tests/ghc-regress/concurrent/prog001/Stream.hs b/testsuite/tests/ghc-regress/concurrent/prog001/Stream.hs
deleted file mode 100644
index 349af32962..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog001/Stream.hs
+++ /dev/null
@@ -1,156 +0,0 @@
-module Stream (Stream, carry, addStream, rationalToStream,
- streamToFloat, addFiniteStream, negate', average) where
-
-import Data.Ratio
-
-
-type Digit = Integer
-type Stream = [Integer]
-
-
-
--- Convert from a Rational fraction to its stream representation
-rationalToStream :: Rational -> Stream
-rationalToStream x
- |t<1 = 0:rationalToStream t
- |otherwise = 1:rationalToStream (t-1)
- where t = 2*x
-
-
-
-
--- Convert from a stream to the Float value
-streamToFloat :: Stream -> Float
-streamToFloat x = f x (1)
-
-f :: Stream -> Integer -> Float
-f [] n = 0
-f (y:ys) n = (fromIntegral)y/(fromIntegral(2^n)) + f ys (n+1)
-
-
-
-
-
--- Add two stream
-addStream :: Stream -> Stream -> Stream
-addStream (x1:x2:x3:xs) (y1:y2:y3:ys) = (u+c):(addStream (x2:x3:xs) (y2:y3:ys))
- where u = interim x1 x2 y1 y2
- c = carry x2 x3 y2 y3
-
-
-
--- Compute carry, the C(i) value, given x(i) and y(i)
-carry :: Digit -> Digit -> Digit -> Digit -> Digit
-carry x1 x2 y1 y2
- |t>1 = 1
- |t<(-1) = -1
- |t==1 && (minus1 x2 y2) = 0
- |t==1 && not (minus1 x2 y2) = 1
- |t==(-1) && (minus1 x2 y2) = -1
- |t==(-1) && not (minus1 x2 y2) = 0
- |t==0 = 0
- where t = x1+y1
-
-
-
--- Computer the interim sum, the U(i) value, given x(i), y(i) and c(i)
-interim :: Digit -> Digit -> Digit -> Digit -> Digit
-interim x1 x2 y1 y2
- |t>1 = 0
- |t<(-1) = 0
- |t==1 && (minus1 x2 y2) = 1
- |t==1 && not (minus1 x2 y2) = -1
- |t==(-1) && (minus1 x2 y2) = 1
- |t==(-1) && not (minus1 x2 y2) = -1
- |t==0 = 0
- where t = x1+y1
-
-
-
--- Check if at least one of 2 digits is -1
-minus1 :: Digit -> Digit -> Bool
-minus1 x y = (x==(-1))|| (y==(-1))
-
-
-
-
-
-
--- Algin two stream so that they have the same length
-align :: Stream -> Stream -> (Stream, Stream)
-align xs ys
- |x>y = (xs, (copy 0 (x-y)) ++ys)
- |otherwise = ((copy 0 (y-x)) ++ xs, ys)
- where x = toInteger(length xs)
- y = toInteger(length ys)
-
-
-
--- Generate a list of x
-copy :: Integer -> Integer -> [Integer]
-copy x n = [x| i<- [1..n]]
-
-
-
-
-
-
-
--- Add two finite stream (to add the integral part)
-addFiniteStream :: Stream -> Stream -> Stream
-addFiniteStream xs ys = add' u v
- where (u,v) = align xs ys
-
-
-
--- Utility function for addFinitieStream
-add' :: Stream -> Stream -> Stream
-add' u v = normalise (f u v)
- where f [] [] = []
- f (x:xs) (y:ys) = (x+y):f xs ys
-
-
--- Normalise the sum
-normalise :: Stream -> Stream
-normalise = foldr f [0]
- where f x (y:ys) = (u:v:ys)
- where u = (x+y) `div` 2
- v = (x+y) `mod` 2
-
-
--- Negate a stream
-negate' :: Stream -> Stream
-negate' = map (*(-1))
-
-
-
--- Compute average of two stream
--- Using [-2,-1,0,1,2] to add, and then divide by 2
-average :: Stream -> Stream -> Stream
-average xs ys = div2 (add xs ys)
-
-
--- Addition of two streams, using [-2,-1,0,1,2]
-add :: Stream -> Stream -> Stream
-add (x:xs) (y:ys) = (x+y):(add xs ys)
-
-
--- Then divided by 2, [-2,-1,0,1,2] -> [-1,0,1]
-div2 :: Stream -> Stream
-div2 (2:xs) = 1:div2 xs
-div2 ((-2):xs) = (-1):div2 xs
-div2 (0:xs) = 0:div2 xs
-div2 (1:(-2):xs) = div2 (0:0:xs)
-div2 (1:(-1):xs) = div2 (0:1:xs)
-div2 (1:0:xs) = div2 (0:2:xs)
-div2 (1:1:xs) = div2 (2:(-1):xs)
-div2 (1:2:xs) = div2 (2:0:xs)
-div2 ((-1):(-2):xs) = div2 ((-2):0:xs)
-div2 ((-1):(-1):xs) = div2 ((-2):1:xs)
-div2 ((-1):0:xs) = div2 (0:(-2):xs)
-div2 ((-1):1:xs) = div2 (0:(-1):xs)
-div2 ((-1):2:xs) = div2 (0:0:xs)
-
-
-
-test = take 100 (average (rationalToStream (1%2)) (rationalToStream (1%3)))
diff --git a/testsuite/tests/ghc-regress/concurrent/prog001/Thread.hs b/testsuite/tests/ghc-regress/concurrent/prog001/Thread.hs
deleted file mode 100644
index 62bb7dd3c3..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog001/Thread.hs
+++ /dev/null
@@ -1,114 +0,0 @@
-
-module Thread (threadTesting1) where
-
-import Control.Concurrent
-import Control.Concurrent.MVar
-import Stream
-import Converter
-
-threadTesting1 :: Gray -> Gray -> IO Int
-threadTesting1 xs ys = do
- m <- newEmptyMVar
- c1 <- forkIO (t1 m xs ys)
- c2 <- forkIO (t2 m xs ys)
- c3 <- forkIO (t3 m xs ys)
- c4 <- forkIO (t4 m xs ys)
- c5 <- forkIO (t5 m xs ys)
- c6 <- forkIO (t6 m xs ys)
- c7 <- forkIO (t7 m xs ys)
- c8 <- forkIO (t8 m xs ys)
- c9 <- forkIO (t9 m xs ys)
- c <- takeMVar m
- killThread c1
- killThread c2
- killThread c3
- killThread c4
- killThread c5
- killThread c6
- killThread c7
- killThread c8
- killThread c9
- return c
-
-
-
-
-
-
-
-
-t1 :: MVar Int -> Stream -> Stream -> IO()
-t1 m (0:0:x) (0:0:y) = putMVar m 101
-t1 m (0:0:x) (0:1:y) = putMVar m 102
-t1 m (0:0:x) (1:0:y) = putMVar m 103
-t1 m (0:0:x) (1:1:y) = putMVar m 104
-
-t1 m (0:1:x) (0:0:y) = putMVar m 201
-t1 m (0:1:x) (0:1:y) = putMVar m 202
-t1 m (0:1:x) (1:0:y) = putMVar m 203
-t1 m (0:1:x) (1:1:y) = putMVar m 204
-
-t1 m (1:0:x) (0:0:y) = putMVar m 103
-t1 m (1:0:x) (0:1:y) = putMVar m 104
-t1 m (1:0:x) (1:0:y) = putMVar m 101
-t1 m (1:0:x) (1:1:y) = putMVar m 102
-
-
-t1 m (1:1:x) (0:0:y) = putMVar m 203
-t1 m (1:1:x) (0:1:y) = putMVar m 204
-t1 m (1:1:x) (1:0:y) = putMVar m 201
-t1 m (1:1:x) (1:1:y) = putMVar m 202
-
-
-t2 :: MVar Int -> Stream -> Stream -> IO()
-t2 m (0:0:x) (b:1:0:y) = putMVar m 30
-t2 m (1:0:x) (b:1:0:y) = putMVar m 31
-t2 m (0:1:x) (b:1:0:y) = putMVar m 60
-t2 m (1:1:x) (b:1:0:y) = putMVar m 61
-t2 m x y = yield
-
-
-t3 m (0:0:x) (0:b:1:y) = putMVar m 40
-t3 m (1:0:x) (1:b:1:y) = putMVar m 40
-t3 m (0:0:x) (1:b:1:y) = putMVar m 41
-t3 m (1:0:x) (0:b:1:y) = putMVar m 41
-
-t3 m (0:1:x) (0:b:1:y) = putMVar m 50
-t3 m (1:1:x) (1:b:1:y) = putMVar m 50
-t3 m (0:1:x) (1:b:1:y) = putMVar m 51
-t3 m (1:1:x) (0:b:1:y) = putMVar m 51
-t3 m x y = yield
-
-t4 m (0:a:1:y) (0:0:x) = putMVar m 70
-t4 m (1:a:1:y) (1:0:x) = putMVar m 70
-t4 m (1:a:1:y) (0:0:x) = putMVar m 70
-t4 m (0:a:1:y) (1:0:x) = putMVar m 70
-t4 m (0:a:1:y) (0:1:x) = putMVar m 70
-t4 m (1:a:1:y) (1:1:x) = putMVar m 70
-t4 m (1:a:1:y) (0:1:x) = putMVar m 70
-t4 m (0:a:1:y) (1:1:x) = putMVar m 70
-t4 m x y = yield
-
-
-t5 m (a:1:0:y) (0:0:x) = putMVar m 70
-t5 m (a:1:0:y) (1:0:x) = putMVar m 70
-t5 m (a:1:0:y) (0:1:x) = putMVar m 70
-t5 m (a:1:0:y) (1:1:x) = putMVar m 70
-t5 m x y = yield
-
-t6 m (0:a:1:x) (0:b:1:y) = putMVar m 80
-t6 m (1:a:1:x) (1:b:1:y) = putMVar m 80
-t6 m (0:a:1:x) (1:b:1:y) = putMVar m 81
-t6 m (1:a:1:x) (0:b:1:y) = putMVar m 81
-t6 m x y = yield
-
-t7 m (0:a:1:x) (b:1:0:y) = putMVar m 90
-t7 m (1:a:1:x) (b:1:0:y) = putMVar m 91
-t7 m x y = yield
-
-t8 m (a:1:0:x) (b:1:0:y) = putMVar m 100
-t8 m x y = yield
-
-t9 m (a:1:0:x) (0:b:1:y) = putMVar m 70
-t9 m (a:1:0:x) (1:b:1:y) = putMVar m 70
-t9 m x y = yield
diff --git a/testsuite/tests/ghc-regress/concurrent/prog001/Trit.hs b/testsuite/tests/ghc-regress/concurrent/prog001/Trit.hs
deleted file mode 100644
index bb6d03c9e2..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog001/Trit.hs
+++ /dev/null
@@ -1,112 +0,0 @@
-module Trit (Trit, rationalToTrit, getIntegral, getFraction, getFraction',
- neg, addTrits, subTrits, shiftLeft, shiftRight, multiply
- ) where
-
-import Stream
-import Utilities
-import Data.Ratio
-
-type Mantissa = Stream
-type Fraction = Stream
-type Trit = (Mantissa, Fraction)
-
-
--- Convert from a Rational number to its Trit representation (Integral, Fraction)
-rationalToTrit :: Rational -> Trit
-rationalToTrit x
- |x<1 = ([0], rationalToStream x)
- |otherwise = (u', rationalToStream v)
- where u = n `div` d
- u' = toBinary u
- v = x - (toRational u)
- n = numerator x
- d = denominator x
-
-
--- Get the integral part of Trit
-getIntegral :: Trit -> Mantissa
-getIntegral = fst
-
-
-
--- Get the fraction part of Trit, with n digit of the stream
-getFraction :: Int -> Trit -> Stream
-getFraction n = take n. snd
-
-
--- Get the fraction part of Trit
-getFraction' :: Trit -> Stream
-getFraction' = snd
-
-
-
--- Negate a Trit
-neg :: Trit -> Trit
-neg (a, b) = (negate' a, negate' b)
-
-
-
--- Add two Trits
-addTrits :: Trit -> Trit -> Trit
-addTrits (m1, (x1:x2:xs)) (m2, (y1:y2:ys)) = (u,addStream (x1:x2:xs) (y1:y2:ys))
- where u' = addFiniteStream m1 m2
- c = [carry x1 x2 y1 y2]
- u = addFiniteStream u' c
-
-
-
--- Substraction of 2 Trits
-subTrits :: Trit -> Trit -> Trit
-subTrits x y = addTrits x (neg y)
-
-
-
--- Shift left = *2 opertaion with Trit
-shiftLeft :: Trit -> Trit
-shiftLeft (x, (y:ys)) = (x++ [y], ys)
-
-
--- Shift right = /2 operation with Trit
-shiftRight :: Trit -> Integer -> Trit
-shiftRight (x, xs) 1 = (init x, (u:xs))
- where u = last x
-shiftRight (x, xs) n = shiftRight (init x, (u:xs)) (n-1)
- where u = last x
-
-
-
--- Multiply a Trit stream by 1,0 or -1, simply return the stream
-mulOneDigit :: Integer -> Stream -> Stream
-mulOneDigit x xs
- |x==1 = xs
- |x==0 = zero'
- |otherwise = negate' xs
- where zero' = (0:zero')
-
-
-
-
-
-
--- Multiplication of two streams
-multiply :: Stream -> Stream -> Stream
-multiply (a0:a1:x) (b0:b1:y) = average p q
- where p = average (a1*b0: (average (mulOneDigit b1 x)
- (mulOneDigit a1 y)))
- (average (mulOneDigit b0 x)
- (mulOneDigit a0 y))
- q = (a0*b0:a0*b1:a1*b1:(multiply x y))
-
-
-
-
-start0 = take 30 (multiply (rationalToStream (1%2)) zo)
-
-zo :: Stream
-zo = 1:(-1):zero
- where zero = 0:zero
-
-start1 = take 30 (average (rationalToStream (1%2)) (negate' (rationalToStream (1%4))))
-
-
-
diff --git a/testsuite/tests/ghc-regress/concurrent/prog001/Utilities.hs b/testsuite/tests/ghc-regress/concurrent/prog001/Utilities.hs
deleted file mode 100644
index 9e8a39187d..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog001/Utilities.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-module Utilities (toBinary, fl) where
-
-import Stream
-import Data.Ratio
-
--- Convert from an Integer to its signed-digit representation
-toBinary :: Integer -> Stream
-toBinary 0 = [0]
-toBinary x = toBinary t ++ [x `mod` 2]
- where t = x `div` 2
-
-
-
-fl :: Stream -> Stream
-fl (x:xs) = (f x):xs
- where f 0 = 1
- f 1 = 0
diff --git a/testsuite/tests/ghc-regress/concurrent/prog001/all.T b/testsuite/tests/ghc-regress/concurrent/prog001/all.T
deleted file mode 100644
index 70f38dca4f..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog001/all.T
+++ /dev/null
@@ -1,26 +0,0 @@
-# Test for bug #1285326, results in "internal error: scavenge_one:
-# strange object 47" with GHC 6.4, fixed in 6.4.1.
-
-# Also tests for bug #1466.
-
-# NB. This is a VERY IMPORTANT test! It is the only good test we have
-# for throwTo. It has shown up several bugs that were not caught by the
-# other concurrency tests.
-
-# The program appears to be sensitive to scheduling, and can diverge
-# in some cases. I find that it only reliably completes when given
-# multiple cores, which is why it is only running the 'threaded2' way
-# right now. --SDM 1/4/2010
-
-test('concprog001',
- [skip_if_fast,
- only_ways(['threaded2']),
- extra_clean(['Arithmetic.hi', 'Arithmetic.o',
- 'Converter.hi', 'Converter.o',
- 'Mult.hi', 'Mult.o',
- 'Stream.hi', 'Stream.o',
- 'Thread.hi', 'Thread.o',
- 'Trit.hi', 'Trit.o',
- 'Utilities.hi', 'Utilities.o'])],
- multimod_compile_and_run,
- ['Mult',''])
diff --git a/testsuite/tests/ghc-regress/concurrent/prog001/concprog001.stdout b/testsuite/tests/ghc-regress/concurrent/prog001/concprog001.stdout
deleted file mode 100644
index fb69b5b792..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog001/concprog001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
diff --git a/testsuite/tests/ghc-regress/concurrent/prog002/Event.hs b/testsuite/tests/ghc-regress/concurrent/prog002/Event.hs
deleted file mode 100644
index 4abf6878c4..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog002/Event.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Event
-where
-
-data SysReq = SysReq
-
-data SysRsp = SysRsp
diff --git a/testsuite/tests/ghc-regress/concurrent/prog002/FileIO.hs b/testsuite/tests/ghc-regress/concurrent/prog002/FileIO.hs
deleted file mode 100644
index bf97712287..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog002/FileIO.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module FileIO where
-import System.IO
-import Foreign
-import Foreign.C
-
-
-foreign import ccall safe "fileio.h c_file_getresult"
- c_file_getresult :: CInt -> IO CInt
-
diff --git a/testsuite/tests/ghc-regress/concurrent/prog002/Makefile b/testsuite/tests/ghc-regress/concurrent/prog002/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog002/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/concurrent/prog002/Scheduler.hs b/testsuite/tests/ghc-regress/concurrent/prog002/Scheduler.hs
deleted file mode 100644
index bbfd374c43..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog002/Scheduler.hs
+++ /dev/null
@@ -1,74 +0,0 @@
-module Scheduler
-( runTIO
-, module Event
-, module Thread
-, TTree
-, TIO
-)
-where
-
-import Event
-import Thread
-import Control.Concurrent
-import System.IO
-
---------------------------------
-type TTree = ThreadTree SysReq SysRsp IO
-type TIO = ContM SysReq SysRsp IO
-
-
-runTIO :: [TIO ()] -> IO ()
-runTIO l = runThreads $ map buildThread l
-
-data World = World
- { mReadyQ :: ! (Chan (TTree)) }
-
-max_steps = 1
-worker_pure world=
- do
- t <- readChan readyq
- case t of
- (Atom _) -> return ()
- _ -> return ()
- exec_thread max_steps t
- return ()
- where
- readyq = mReadyQ world
-
- exec_thread 0 t =
- do putStr "."; hFlush stdout
- writeChan readyq t
- exec_thread c (Atom mx) =
- do
- x <- mx
- exec_thread (c-1) x
- exec_thread c (Stop) = return ()
-
-runThreads :: [TTree] -> IO ()
-runThreads l =
- do
- mready <- newChan
- writeList2Chan mready l
- let world = World mready
- multiloop world
-
-loop_p world = do worker_pure world; loop_p world
-
-multiloop world =
- do
- -- a mixture of bound threads & lightweight threads
- -- to make things interesting...
- forkOS (loop_p world)
- forkOS (loop_p world)
- forkOS (loop_p world)
- forkOS (loop_p world)
- forkOS (loop_p world)
- forkOS (loop_p world)
- forkIO (loop_p world)
- forkIO (loop_p world)
- forkIO (loop_p world)
- forkIO (loop_p world)
- forkIO (loop_p world)
- forkIO (loop_p world)
- forkIO (loop_p world)
- loop_p world
diff --git a/testsuite/tests/ghc-regress/concurrent/prog002/Server.hs b/testsuite/tests/ghc-regress/concurrent/prog002/Server.hs
deleted file mode 100644
index 2ff1ccb8c8..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog002/Server.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-import Scheduler
-import Foreign
-import Foreign.C
-import System.Random
-import Control.Concurrent
-
-expensive = f (500 :: Int)
- where f 0 = stop
- f n = do
- r <- atom $ getStdRandom (randomR (0,99::Int))
- r `seq` f $! n-1
-
-main = do
- m <- newEmptyMVar
- forkIO (do
- runTIO $ map (\x->expensive) [1..500]
- putMVar m ())
- takeMVar m
diff --git a/testsuite/tests/ghc-regress/concurrent/prog002/Thread.hs b/testsuite/tests/ghc-regress/concurrent/prog002/Thread.hs
deleted file mode 100644
index 9e342ac977..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog002/Thread.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-module Thread
-( ThreadTree (..)
-, ContM (..)
-, atom
-, stop
-, buildThread
-)
-where
-
-----------------------------------
-data ThreadTree req rsp m =
- Atom (m (ThreadTree req rsp m))
- | Stop
-----------------------------------
-newtype ContM req rsp m a = ContM ((a-> ThreadTree req rsp m)-> ThreadTree req rsp m)
-
-instance Monad m => Monad (ContM req rsp m) where
- m >>= f = contmBind m f
- return = contmReturn
-
-contmBind :: (ContM req rsp m a) -> (a -> (ContM req rsp m b)) -> (ContM req rsp m b)
-contmBind (ContM x) f =
- ContM(\y-> x (\z-> let ContM f' = f z in f' y))
-contmReturn :: a -> (ContM req rsp m a)
-contmReturn x = ContM(\c -> c x)
-
-{-- how to build primitive ContM blocks... --}
-
-atom :: Monad m => (m a) -> (ContM req rsp m a)
-atom mx = ContM( \c -> Atom( do x <- mx; return (c x) ))
-
-stop :: (ContM req rsp m a)
-stop = ContM( \c -> Stop )
-
-buildThread :: (ContM req rsp m a) -> ThreadTree req rsp m
-buildThread (ContM f) = f (\c->Stop)
-
-----------------------------------
diff --git a/testsuite/tests/ghc-regress/concurrent/prog002/all.T b/testsuite/tests/ghc-regress/concurrent/prog002/all.T
deleted file mode 100644
index f87bc8b77f..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog002/all.T
+++ /dev/null
@@ -1,17 +0,0 @@
-# Test for bug #713, results in crashes in GHC prior to 20060315 with +RTS -N2
-
-# the conditions are fairly delicate. It must be compiled without optimisation,
-# hence -O0:
-
-test('concprog002',
- # Add 'threaded2_hT' so that we have at least one test for bug #5127
- [only_ways(['threaded2','threaded2_hT']),
- extra_ways(['threaded2_hT']),
- exit_code(1),
- skip_if_fast,
- extra_clean(['Event.hi', 'Event.o',
- 'Scheduler.hi', 'Scheduler.o',
- 'Server.hi', 'Server.o',
- 'Thread.hi', 'Thread.o'])],
- multimod_compile_and_run,
- ['Server','-O0'])
diff --git a/testsuite/tests/ghc-regress/concurrent/prog002/concprog002.stderr b/testsuite/tests/ghc-regress/concurrent/prog002/concprog002.stderr
deleted file mode 100644
index 268fccc3f6..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog002/concprog002.stderr
+++ /dev/null
@@ -1 +0,0 @@
-concprog002: thread blocked indefinitely in an MVar operation
diff --git a/testsuite/tests/ghc-regress/concurrent/prog002/concprog002.stdout b/testsuite/tests/ghc-regress/concurrent/prog002/concprog002.stdout
deleted file mode 100644
index f8d8e8defa..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog002/concprog002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................ \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/BackList2.lhs b/testsuite/tests/ghc-regress/concurrent/prog003/BackList2.lhs
deleted file mode 100644
index b856beb4c3..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/BackList2.lhs
+++ /dev/null
@@ -1,185 +0,0 @@
-
-> module BackList2 where
-
-> import Data.IORef
-> import Control.Concurrent
-> --import Control.Concurrent.STM
-
-> import RefInterface
-
-> data List r a = Node { val :: a, next :: (r (List r a)) }
-> | Head { next :: r (List r a) }
-> | DelNode (r (List r a)) -- backpointer
-> | Null
-
-> data ListHandle r a = ListHandle { headList :: r (r (List r a)),
-> tailList :: r (r (List r a)) }
-
-
- abbreviations
-
-> newAtomic x = atomicRef (newRef x)
-
-> readAtomic x = atomicRef (readRef x)
-
-> writeAtomic ptr x = atomicRef (writeRef ptr x)
-
-
-> -- we create a new list
-> newList :: Ref r m => IO (ListHandle r a)
-> newList =
-> do null <- newAtomic Null
-> hd <- newAtomic (Head {next = null })
-> hdPtr <- newAtomic hd
-> tailPtr <- newAtomic null
-> return (ListHandle {headList = hdPtr, tailList = tailPtr})
-
-
-
-> find :: (Eq a, Ref r m) => ListHandle r a -> a -> IO Bool
-> find (ListHandle {headList = ptrPtr}) i =
-> do startPtr <- atomicRef (readRef ptrPtr)
-> find2 startPtr i
-
-
-NOTE: I thought we can catch the 'head' case here,
- so we don't need to check for 'head' in findNode,
- but this leads to a non-exhaustive pattern failure
-
-> {-
-> do startptr <- atomically (
-> do ptr <- readTVar ptrPtr
-> Head {next = startptr} <- readTVar ptr
-> return startptr)
-> find2 startptr i
-> -}
-
-> find2 :: (Eq a, Ref r m) => r (List r a) -> a -> IO Bool
-> find2 curNodePtr i =
-> do
-> { comp <- atomicRef (findNode curNodePtr i)
-> ; comp }
-
-
-We atomically check for lhs and guards
-
-f1 @ node(X,P,Next) \ find(X,P,R) <=> R=tt..
-f2 @ nil(P) \ find(Y,P,R) <=> R=ff.
-f3 @ node(X,P,Next) \ find(Y,P,R) <=> X /= Y | find(Y,Next,R).
-f4 @ nodeDel(P,Q) \ find(X,P,R) <=> find(X,Q,R).
-
-
-
-> findNode :: (Eq a, Ref r m) => r (List r a) -> a -> m (IO Bool)
-> findNode curNodePtr x = do
-> { curNode <- readRef curNodePtr
-> ; case curNode of
-> Node {val = y, next = q} ->
-> if (y == x) then return (return True) -- f1
-> else return (find2 q x) -- f3
-> Null -> return (return False) -- f2
-> Head p-> return (find2 p x) --error "findNode: impossible"
-> DelNode p -> return (find2 p x) -- f4
-> }
-
-
-> -- we add a new node, by overwriting the null tail node
-> -- we only need to adjust tailList but not headList because
-> -- of the static Head
-> -- we return the location of the newly added node
-> addToTail :: Ref r m => ListHandle r a -> a -> IO (r (List r a))
-> addToTail (ListHandle {tailList = tailPtrPtr}) x =
-> do tPtr <- atomicRef (
-> do null <- newRef Null
-> tailPtr <- readRef tailPtrPtr
-> writeRef tailPtr (Node {val = x, next = null})
-> writeRef tailPtrPtr null
-> return tailPtr
-> )
-> return tPtr
-
-
-> delete :: (Eq a, Ref r m) => ListHandle r a -> a -> IO Bool
-> delete (ListHandle {headList = ptrPtr}) i =
-> do prevPtr <- atomicRef (readRef ptrPtr)
-> delete2 prevPtr i
-
-
-> delete2 :: (Eq a, Ref r m) => r (List r a) -> a -> IO Bool
-> delete2 prevPtr i =
-> do
-> { comp <- atomicRef (deleteNode prevPtr i)
-> ; comp }
-
-
-> deleteNode :: (Eq a,Ref r m) => r (List r a) -> a -> m (IO Bool)
-> deleteNode prevPtr x =
-> do
-> { prevNode <- readRef prevPtr
-> ; case prevNode of
-> Null -> error "impossible case"
-> DelNode q -> return (delete2 q x)
-> nodeOrhead ->
-> do let curPtr = next prevNode
-> curNode <- readRef curPtr
-> case curNode of
-> Node {val = y, next= nextNode} ->
-> if (y /= x)
-> then return (delete2 curPtr x)
-> else -- (delink node)
-> do writeRef curPtr (DelNode prevPtr) -- add backpointer
-> case prevNode of
-> Head {} -> do writeRef prevPtr (Head {next = nextNode})
-> return (return True)
-> Node {} -> do writeRef prevPtr
-> (Node {val = val prevNode, next = nextNode})
-> return (return True)
-> Null -> return (return False)
-> DelNode _ -> retryRef
-> -- means that the prevNode points to next of delNode
-> -- we simply retry therefore
-> }
-
-
-printing and counting
-
-> printList :: (Show a, Ref r m) => ListHandle r a -> IO ()
-> printList (ListHandle {headList = ptrPtr}) =
-> do startptr <- atomicRef (
-> do ptr <- readRef ptrPtr
-> Head {next = startptr} <- readRef ptr
-> return startptr)
-> printListHelp startptr
-
-
-> printListHelp :: (Show a, Ref r m) => r (List r a) -> IO ()
-> printListHelp curNodePtr =
-> do { curNode <- atomicRef (readRef curNodePtr)
-> ; case curNode of
-> Null -> putStr "Nil"
-> Node {val = curval, next = curnext} ->
-> do { putStr (show curval ++ " -> ")
-> ; printListHelp curnext }
-> DelNode curnext ->
-> printListHelp curnext
-> }
-
-> cntList :: (Show a, Ref r m) => ListHandle r a -> IO Int
-> cntList (ListHandle {headList = ptrPtr}) =
-> do startptr <- atomicRef (
-> do ptr <- readRef ptrPtr
-> Head {next = startptr} <- readRef ptr
-> return startptr)
-> cntListHelp startptr 0
-
-> cntListHelp :: (Show a, Ref r m) => r (List r a) -> Int -> IO Int
-> cntListHelp curNodePtr i =
-> do { curNode <- atomicRef (readRef curNodePtr)
-> ; case curNode of
-> Null -> return i
-> Node {val = curval, next = curnext} ->
-> cntListHelp curnext (i+1)
-> DelNode curnext ->
-> cntListHelp curnext i
-> }
-
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/CASList.hs b/testsuite/tests/ghc-regress/concurrent/prog003/CASList.hs
deleted file mode 100644
index 445af790a3..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/CASList.hs
+++ /dev/null
@@ -1,254 +0,0 @@
-{-# LANGUAGE BangPatterns,CPP #-}
-module CASList where
-
-import Control.Monad
-import Data.IORef
-import Control.Concurrent
-import Control.Concurrent.Chan
-import System.Environment
-import Data.Time
-
--- #define USE_UNPACK
--- #define USE_STRICT
-
-#if defined(USE_UNPACK)
-#define UNPACK(p) {-# UNPACK #-} !(p)
-#elif defined(USE_STRICT)
-#define UNPACK(p) !(p)
-#else
-#define UNPACK(p) p
-#endif
-
-data List a = Node { val :: a
- , next :: UNPACK(IORef (List a)) }
- | DelNode { next :: UNPACK(IORef (List a)) }
- | Null
- | Head { next :: UNPACK(IORef (List a)) } deriving Eq
-
-data ListHandle a = ListHandle { headList :: UNPACK(IORef (IORef (List a))),
- tailList :: UNPACK(IORef (IORef (List a))) }
-
-{-# INLINE myNext #-}
-myNext :: List a -> IORef (List a)
-myNext Node{next = n} = n
-myNext DelNode{next = n} = n
-myNext Head{next = n} = n
-myNext _ = error "myNext"
-
--- we assume a static head pointer, pointing to the first node which must be Head
--- the deleted field of Head is always False, it's only there to make some of the code
--- more uniform
--- tail points to the last node which must be Null
-
-
-type Iterator a = IORef (IORef (List a))
-
-
--------------------------------------------
--- auxilliary functions
-
-
-
-while b cmd = if b then do {cmd; while b cmd}
- else return ()
-
-repeatUntil cmd = do { b <- cmd; if b then return ()
- else repeatUntil cmd }
-
-atomCAS :: Eq a => IORef a -> a -> a -> IO Bool
-atomCAS ptr old new =
- atomicModifyIORef ptr (\ cur -> if cur == old
- then (new, True)
- else (cur, False))
-
-atomicWrite :: IORef a -> a -> IO ()
-atomicWrite ptr x =
- atomicModifyIORef ptr (\ _ -> (x,()))
-
-
-----------------------------------------------
--- functions operating on lists
-
-
--- we create a new list
-newList :: IO (ListHandle a)
-newList =
- do null <- newIORef Null
- hd <- newIORef (Head {next = null })
- hdPtr <- newIORef hd
- tailPtr <- newIORef null
- return (ListHandle {headList = hdPtr, tailList = tailPtr})
-
-
--- we add a new node, by overwriting the null tail node
--- we only need to adjust tailList but not headList because
--- of the static Head
--- we return the location of the newly added node
-addToTail :: Eq a => ListHandle a -> a -> IO ()
-addToTail (ListHandle {tailList = tailPtrPtr}) x =
- do null <- newIORef Null
- repeatUntil
- (do tailPtr <- readIORef tailPtrPtr
- b <- atomCAS tailPtr Null (Node {val = x, next = null})
- return b )
- -- we atomically update the tail
- -- (by spinning on the tailPtr)
- atomicWrite tailPtrPtr null
-
-
-find :: Eq a => ListHandle a -> a -> IO Bool
-find (ListHandle { headList = head }) x =
- let go !prevPtr =
- do prevNode <- readIORef prevPtr
- let curPtr = myNext prevNode -- head/node/delnode have all next
- curNode <- readIORef curPtr
- case curNode of
- Node {val = y, next = nextNode } ->
- if (x == y)
- then -- node found and alive
- return True
- else go curPtr -- continue
- Null -> return False -- reached end of list
- DelNode {next = nextNode } ->
- -- atomically delete curNode by setting the next of prevNode to next of curNode
- -- if this fails we simply move ahead
- case prevNode of
- Node {} -> do b <- atomCAS prevPtr prevNode (Node {val = val prevNode,
- next = nextNode})
- if b then go prevPtr
- else go curPtr
- Head {} -> do b <- atomCAS prevPtr prevNode (Head {next = nextNode})
- if b then go prevPtr
- else go curPtr
- DelNode {} -> go curPtr -- if parent deleted simply move ahead
- {-
- correct as well, but a deleted parent deleting a child is (for certain cases) a useless operation
- do atomicModifyIORef prevPtr ( \ cur -> (cur{next = nextNode},True))
- go prevPtr
- -}
-
- in do startPtr <- readIORef head
- go startPtr
-
-
-
-
-delete :: Eq a => ListHandle a -> a -> IO Bool
-delete (ListHandle { headList = head }) x =
- let go prevPtr =
- do do prevNode <- readIORef prevPtr
- let curPtr = next prevNode -- head/node/delnode have all next
- curNode <- readIORef curPtr
- case curNode of
- Node {val = y, next = nextNode } ->
- if (x == y)
- then -- node found and alive
- do b <- atomCAS curPtr curNode (DelNode {next = nextNode})
- if b then return True
- else go prevPtr -- spin
- else go curPtr -- continue
- Null -> return False -- reached end of list
- DelNode {next = nextNode } ->
- -- atomically delete curNode by setting the next of prevNode to next of curNode
- -- if this fails we simply move ahead
- case prevNode of
- Node {} -> do b <- atomCAS prevPtr prevNode (Node {val = val prevNode,
- next = nextNode})
- if b then go prevPtr
- else go curPtr
- Head {} -> do b <- atomCAS prevPtr prevNode (Head {next = nextNode})
- if b then go prevPtr
- else go curPtr
- DelNode {} -> go curPtr -- if parent deleted simply move ahead
-
- in do startPtr <- readIORef head
- go startPtr
-
-
-
--- the iterator always points to the PREVIOUS node,
--- recall that there's a static dummy new Head
--- Assumption: iterators are private,
--- ie they won't be shared among threads
-newIterator :: ListHandle a -> IO (Iterator a)
-newIterator (ListHandle {headList = hd}) =
- do hdPtr <- readIORef hd
- it <- newIORef hdPtr
- return it
-
--- we iterate through the list and return the first "not deleted" node
--- we delink deleted nodes
--- there's no need to adjust headList, tailList
--- cause headList has a static Head and
--- tailList points to Null
-iterateList :: Eq a => Iterator a -> IO (Maybe (IORef (List a)))
-iterateList itPtrPtr =
- let go prevPtr =
- do do prevNode <- readIORef prevPtr
- let curPtr = next prevNode -- head/node/delnode have all next
- curNode <- readIORef curPtr
- case curNode of
- Node {} -> do writeIORef itPtrPtr curPtr
- -- adjust iterator
- return (Just curPtr)
- Null -> return Nothing -- reached end of list
- DelNode {next = nextNode} ->
- -- atomically delete curNode by setting the next of prevNode to next of curNode
- -- if this fails we simply move ahead
- case prevNode of
- Node {} -> do b <- atomCAS prevPtr prevNode (Node {val = val prevNode,
- next = nextNode})
- if b then go prevPtr
- else go curPtr
- Head {} -> do b <- atomCAS prevPtr prevNode (Head {next = nextNode})
- if b then go prevPtr
- else go curPtr
- DelNode {} -> go curPtr -- if parent deleted simply move ahead
-
- in do startPtr <- readIORef itPtrPtr
- go startPtr
-
-
---printing and counting
-
-printList :: Show a => ListHandle a -> IO ()
-printList (ListHandle {headList = ptrPtr}) =
- do startptr <- (
- do ptr <- readIORef ptrPtr
- Head {next = startptr} <- readIORef ptr
- return startptr)
- printListHelp startptr
-
-
-printListHelp :: Show a => IORef (List a) -> IO ()
-printListHelp curNodePtr =
- do { curNode <- readIORef curNodePtr
- ; case curNode of
- Null -> putStr "Nil"
- Node {val = curval, next = curnext} ->
- do { putStr (show curval ++ " -> ")
- ; printListHelp curnext }
- DelNode {next = curnext} ->
- do { putStr ("DEAD -> ")
- ; printListHelp curnext }
- }
-
-cntList :: Show a => ListHandle a -> IO Int
-cntList (ListHandle {headList = ptrPtr}) =
- do startptr <- (
- do ptr <- readIORef ptrPtr
- Head {next = startptr} <- readIORef ptr
- return startptr)
- cntListHelp startptr 0
-
-
-cntListHelp :: Show a => IORef (List a) -> Int -> IO Int
-cntListHelp curNodePtr i =
- do { curNode <- readIORef curNodePtr
- ; case curNode of
- Null -> return i
- Node {val = curval, next = curnext} ->
- cntListHelp curnext (i+1)
- DelNode {next = curnext} ->
- cntListHelp curnext (i+1)
- }
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/Collate.hs b/testsuite/tests/ghc-regress/concurrent/prog003/Collate.hs
deleted file mode 100644
index 2c1879d450..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/Collate.hs
+++ /dev/null
@@ -1,64 +0,0 @@
-{-# LANGUAGE PatternGuards #-}
-module Main (main) where
-
-import qualified Data.Map as M
-import Data.Map (Map)
-
-import System.Environment
-import System.IO
-import Text.Regex
-import Data.List
-import Control.Monad
-import Data.Maybe
-
-type RawResults = Map (String,Int) [Double]
-
-main = do
- [time,speedup] <- getArgs
- s <- getContents
- let raw = slurp_raw (lines s)
- avg = M.map calc_average raw
-
- let keys = M.keys avg
- modes = nub (map fst keys)
- cores = sort (nub (map snd keys))
-
- h <- openFile time WriteMode
- forM modes $ \m -> do
- hPutStrLn h (m ++ concatMap (',':) [ show (fromJust (M.lookup (m,n) avg))
- | n <- cores ])
- hClose h
-
- let
- baselines = M.fromList [ (m, fromJust (M.lookup (m,1) avg)) | m <- modes ]
- spd = M.mapWithKey (calc_speedup baselines) avg
-
- h <- openFile speedup WriteMode
- forM modes $ \m -> do
- hPutStrLn h (m ++ concatMap (',':) [ show (fromJust (M.lookup (m,n) spd))
- | n <- cores ])
- hClose h
-
-calc_average :: [Double] -> Double
-calc_average = foldl f 0 . zip [(1::Int)..]
- where f mean (i,x) = mean + (x - mean) / fromIntegral i
-
-calc_speedup :: Map String Double -> (String,Int) -> Double -> Double
-calc_speedup baselines (mode,_) result = base / result
- where Just base = M.lookup mode baselines
-
-slurp_raw :: [String] -> RawResults
-slurp_raw lines = add_results ("",1) M.empty lines
- where
- add_results m results [] = results
- add_results m results (line:lines)
- | Just [mode,cores] <- matchRegex header line
- = add_results (mode, read cores :: Int) results lines
- | Just [time] <- matchRegex result line
- = let t = read time :: Double in
- add_results m (M.insertWith (\_ o -> t:o) m [t] results) lines
- | otherwise
- = add_results m results lines
-
-header = mkRegex "run\\.([^\\.]*)\\.N([0-9]*)"
-result = mkRegex "time: ([0-9\\.]+)s"
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/Collection.hs b/testsuite/tests/ghc-regress/concurrent/prog003/Collection.hs
deleted file mode 100644
index 73a71f6714..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/Collection.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-module Collection where
-
-
-class Show e => Col c e | c -> e where
- newCol :: IO c
- insertCol :: c -> e -> IO ()
- deleteCol :: c -> e -> IO Bool
- findCol :: c -> e -> IO Bool
- printCol :: c -> IO ()
- cntCol :: c -> IO Int
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/IOList.lhs b/testsuite/tests/ghc-regress/concurrent/prog003/IOList.lhs
deleted file mode 100644
index 72aa1dee46..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/IOList.lhs
+++ /dev/null
@@ -1,138 +0,0 @@
-> {-# LANGUAGE BangPatterns,CPP #-}
-> module IOList where
-
--- #define USE_UNPACK
--- #define USE_STRICT
-
-#if defined(USE_UNPACK)
-#define UNPACK(p) {-# UNPACK #-} !(p)
-#elif defined(USE_STRICT)
-#define UNPACK(p) !(p)
-#else
-#define UNPACK(p) p
-#endif
-
-> import Data.IORef
-
-
-> data List a = Node { val :: a, next :: UNPACK(IORef (List a))}
-> | Null
-> | Head {next :: UNPACK(IORef (List a)) }
-
-> data ListHandle a = ListHandle { headList :: UNPACK(IORef (IORef (List a))),
-> tailList :: UNPACK(IORef (IORef (List a))) }
-
-> atomically = \x -> x
-
-
-> -- we create a new list
-> newList :: IO (ListHandle a)
-> newList =
-> do null <- newIORef Null
-> hd <- newIORef (Head {next = null })
-> hdPtr <- newIORef hd
-> tailPtr <- newIORef null
-> return (ListHandle {headList = hdPtr, tailList = tailPtr})
-
-> find :: Eq a => ListHandle a -> a -> IO Bool
-> find (ListHandle {headList = ptrPtr}) i = do
-> ptr <- readIORef ptrPtr
-> Head {next = startptr} <- readIORef ptr
-> find2 startptr i
-> where
-> find2 :: Eq a => IORef (List a) -> a -> IO Bool
-> find2 curNodePtr i = do
-> { curNode <- readIORef curNodePtr
-> ; case curNode of
-> Null -> return False -- we've reached the end of the list
-> -- element not found
-> Node {val = curval, next = curnext} ->
-> if (curval == i) then return True -- element found
-> else find2 curnext i -- keep searching
-> }
-
-
-> -- we add a new node, by overwriting the null tail node
-> -- we only need to adjust tailList but not headList because
-> -- of the static Head
-> -- we return the location of the newly added node
-> addToTail :: ListHandle a -> a -> IO (IORef (List a))
-> addToTail (ListHandle {tailList = tailPtrPtr}) x =
-> do tPtr <- atomically (
-> do null <- newIORef Null
-> tailPtr <- readIORef tailPtrPtr
-> writeIORef tailPtr (Node {val = x, next = null})
-> writeIORef tailPtrPtr null
-> return tailPtr
-> )
-> return tPtr
-
-
-> delete :: Eq a => ListHandle a -> a -> IO Bool
-> delete (ListHandle {headList = ptrPtr}) i =
-> atomically (
-> do startptr <- readIORef ptrPtr
-> delete2 startptr i)
-> where
-> delete2 :: Eq a => IORef (List a) -> a -> IO Bool
-> delete2 prevPtr i =
-> do
-> { prevNode <- readIORef prevPtr
-> ; let curNodePtr = next prevNode -- head/node have both next
-> ; curNode <- readIORef curNodePtr
-> ; case curNode of
-> Null -> return False -- we've reached the end of the list
-> -- element not found
-> Node {val = curval, next = nextNode} ->
-> if (curval /= i)
-> then delete2 curNodePtr i -- keep searching
-> else
-> -- delete element (ie delink node)
-> do { case prevNode of
-> Head {} -> do writeIORef prevPtr (Head {next = nextNode})
-> return True
-> Node {} -> do writeIORef prevPtr
-> (Node {val = val prevNode, next = nextNode})
-> return True
-> }
-> }
-
-
-printing and counting
-
-> printList :: Show a => ListHandle a -> IO ()
-> printList (ListHandle {headList = ptrPtr}) =
-> do startptr <- (
-> do ptr <- readIORef ptrPtr
-> Head {next = startptr} <- readIORef ptr
-> return startptr)
-> printListHelp startptr
-
-
-> printListHelp :: Show a => IORef (List a) -> IO ()
-> printListHelp curNodePtr =
-> do { curNode <- readIORef curNodePtr
-> ; case curNode of
-> Null -> putStr "Nil"
-> Node {val = curval, next = curnext} ->
-> do { putStr (show curval ++ " -> ")
-> ; printListHelp curnext }
-> }
-
-> cntList :: Show a => ListHandle a -> IO Int
-> cntList (ListHandle {headList = ptrPtr}) =
-> do startptr <- (
-> do ptr <- readIORef ptrPtr
-> Head {next = startptr} <- readIORef ptr
-> return startptr)
-> cntListHelp startptr 0
-
-
-> cntListHelp :: Show a => IORef (List a) -> Int -> IO Int
-> cntListHelp curNodePtr i =
-> do { curNode <- readIORef curNodePtr
-> ; case curNode of
-> Null -> return i
-> Node {val = curval, next = curnext} ->
-> cntListHelp curnext (i+1)
-> }
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/ImmList.hs b/testsuite/tests/ghc-regress/concurrent/prog003/ImmList.hs
deleted file mode 100644
index 70d81633d2..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/ImmList.hs
+++ /dev/null
@@ -1,71 +0,0 @@
-{-# LANGUAGE CPP,PatternGuards #-}
-module ImmList where
-
-import Control.Concurrent
-import Data.IORef
-import qualified Data.Sequence as S
-import Data.Sequence (Seq, (|>), (<|), (><), ViewL(..))
-import Data.Maybe
-import Data.Foldable
-
-#if 0
-newtype ListHandle a = ListHandle (IORef (Seq a))
-
-newList :: IO (ListHandle a)
-newList = do
- r <- newIORef S.empty
- return (ListHandle r)
-
-addToTail :: Eq a => ListHandle a -> a -> IO ()
-addToTail (ListHandle r) x =
- atomicModifyIORef r $ \s -> (s |> x, ())
-
-find :: Eq a => ListHandle a -> a -> IO Bool
-find (ListHandle r) x = do
- s <- readIORef r
- return (isJust (S.elemIndexL x s))
-
-delete :: Eq a => ListHandle a -> a -> IO Bool
-delete (ListHandle r) x = atomicModifyIORef r $ \s ->
- case S.breakl (== x) s of
- (xs, ys) | c :< zs <- S.viewl ys, c == x -> (xs >< zs, True)
- | otherwise -> (xs >< ys, False)
-
-printList :: Show a => ListHandle a -> IO ()
-printList (ListHandle r) = do
- s <- readIORef r
- print (toList s)
-
-cntList :: Show a => ListHandle a -> IO Int
-cntList (ListHandle r) = readIORef r >>= return . S.length
-#else
-newtype ListHandle a = ListHandle (IORef [a])
-
-newList :: IO (ListHandle a)
-newList = do
- r <- newIORef []
- return (ListHandle r)
-
-addToTail :: Eq a => ListHandle a -> a -> IO ()
-addToTail (ListHandle r) x =
- atomicModifyIORef r $ \s -> (s ++ [x], ())
-
-find :: Eq a => ListHandle a -> a -> IO Bool
-find (ListHandle r) x = do
- s <- readIORef r
- return (x `Prelude.elem` s)
-
-delete :: Eq a => ListHandle a -> a -> IO Bool
-delete (ListHandle r) x = atomicModifyIORef r $ \s ->
- case break (== x) s of
- (xs, ys) | (c:zs) <- ys, c == x -> (xs ++ zs, True)
- | otherwise -> (xs ++ ys, False)
-
-printList :: Show a => ListHandle a -> IO ()
-printList (ListHandle r) = do
- s <- readIORef r
- print s
-
-cntList :: Show a => ListHandle a -> IO Int
-cntList (ListHandle r) = readIORef r >>= return . length
-#endif
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/MVarListLockCoupling.hs b/testsuite/tests/ghc-regress/concurrent/prog003/MVarListLockCoupling.hs
deleted file mode 100644
index 0820ccd0d2..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/MVarListLockCoupling.hs
+++ /dev/null
@@ -1,183 +0,0 @@
-{-# LANGUAGE BangPatterns,CPP #-}
-module MVarListLockCoupling where
-
-import Control.Monad
-import Data.IORef
-import Control.Concurrent
-import Control.Concurrent.Chan
-import System.Environment
-import Data.Time
-
-
--- #define USE_UNPACK
--- #define USE_STRICT
-
-#if defined(USE_UNPACK)
-#define UNPACK(p) {-# UNPACK #-} !(p)
-#elif defined(USE_STRICT)
-#define UNPACK(p) !(p)
-#else
-#define UNPACK(p) p
-#endif
-
-
-data List a = Node { val :: a
- , next :: UNPACK(MVar (List a)) }
- | Null
- | Head { next :: UNPACK(MVar (List a)) } deriving Eq
-
-data ListHandle a = ListHandle { headList :: IORef (MVar (List a)),
- tailList :: IORef (MVar (List a)) }
-
-
--- we assume a static head pointer, pointing to the first node which must be Head
--- the deleted field of Head is always False, it's only there to make some of the code
--- more uniform
--- tail points to the last node which must be Null
-
--- head is static, therefore IORef
--- tail will be adjusted, therefore MVar
-
-
-type Iterator a = IORef (MVar (List a))
-
--- iterators are private
-
--------------------------------------------
--- auxilliary functions
-
-
-
-while b cmd = if b then do {cmd; while b cmd}
- else return ()
-
-repeatUntil cmd = do { b <- cmd; if b then return ()
- else repeatUntil cmd }
-
-atomCAS :: Eq a => IORef a -> a -> a -> IO Bool
-atomCAS ptr old new =
- atomicModifyIORef ptr (\ cur -> if cur == old
- then (new, True)
- else (cur, False))
-
-atomicWrite :: IORef a -> a -> IO ()
-atomicWrite ptr x =
- atomicModifyIORef ptr (\ _ -> (x,()))
-
-
-----------------------------------------------
--- functions operating on lists
-
-
--- we create a new list
-newList :: IO (ListHandle a)
-newList =
- do null <- newMVar Null
- hd <- newMVar (Head {next = null })
- hdPtr <- newIORef hd
- tailPtr <- newIORef null
- return (ListHandle {headList = hdPtr, tailList = tailPtr})
-
-
--- we add a new node, by overwriting the null tail node
--- we only need to adjust tailList but not headList because
--- of the static Head
--- we return the location of the newly added node
-addToTail :: Eq a => ListHandle a -> a -> IO ()
-addToTail (ListHandle {tailList = tailPtrPtr}) x =
- do null <- newMVar Null
- tailPtr <- readIORef tailPtrPtr
- takeMVar tailPtr
- writeIORef tailPtrPtr null
- putMVar tailPtr (Node {val = x, next = null})
-
-
-find :: Eq a => ListHandle a -> a -> IO Bool
-find (ListHandle { headList = head }) x =
- let go prevPtr prevNode =
- do let curPtr = next prevNode -- head/node/delnode have all next
- curNode <- takeMVar curPtr
- case curNode of
- Node {val = y, next = nextNode } ->
- if (x == y)
- then -- node found
- do putMVar prevPtr prevNode
- putMVar curPtr curNode
- return True
- else
- do putMVar prevPtr prevNode
- go curPtr curNode -- continue
- Null -> do putMVar prevPtr prevNode
- putMVar curPtr curNode
- return False -- reached end of list
- in do startPtr <- readIORef head
- startNode <- takeMVar startPtr
- go startPtr startNode
-
-delete :: Eq a => ListHandle a -> a -> IO Bool
-delete (ListHandle { headList = head }) x =
- let go prevPtr prevNode =
- do do let curPtr = next prevNode -- head/node/delnode have all next
- curNode <- takeMVar curPtr
- case curNode of
- Node {val = y, next = nextNode } ->
- if (x == y)
- then -- delink node
- do case prevNode of
- Node {} -> do putMVar prevPtr (Node {val = val prevNode,
- next = nextNode})
- putMVar curPtr curNode
- return True
- Head {} -> do putMVar prevPtr (Head {next = nextNode})
- putMVar curPtr curNode
- return True
- else do putMVar prevPtr prevNode
- go curPtr curNode -- continue
- Null -> do putMVar curPtr curNode
- putMVar prevPtr prevNode
- return False -- reached end of list
-
- in do startPtr <- readIORef head
- startNode <- takeMVar startPtr
- go startPtr startNode
-
-
-
---printing and counting
-
-printList :: Show a => ListHandle a -> IO ()
-printList (ListHandle {headList = ptrPtr}) =
- do startptr <- (
- do ptr <- readIORef ptrPtr
- Head {next = startptr} <- readMVar ptr
- return startptr)
- printListHelp startptr
-
-
-printListHelp :: Show a => MVar (List a) -> IO ()
-printListHelp curNodePtr =
- do { curNode <- readMVar curNodePtr
- ; case curNode of
- Null -> putStr "Nil"
- Node {val = curval, next = curnext} ->
- do { putStr (show curval ++ " -> ")
- ; printListHelp curnext }
- }
-
-cntList :: Show a => ListHandle a -> IO Int
-cntList (ListHandle {headList = ptrPtr}) =
- do startptr <- (
- do ptr <- readIORef ptrPtr
- Head {next = startptr} <- readMVar ptr
- return startptr)
- cntListHelp startptr 0
-
-
-cntListHelp :: Show a => MVar (List a) -> Int -> IO Int
-cntListHelp curNodePtr i =
- do { curNode <- readMVar curNodePtr
- ; case curNode of
- Null -> return i
- Node {val = curval, next = curnext} ->
- cntListHelp curnext (i+1)
- }
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/Main.lhs b/testsuite/tests/ghc-regress/concurrent/prog003/Main.lhs
deleted file mode 100644
index e4e8ad790e..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/Main.lhs
+++ /dev/null
@@ -1,217 +0,0 @@
-
-> {-# LANGUAGE UndecidableInstances, PatternSignatures, FlexibleInstances, MultiParamTypeClasses, FlexibleContexts #-}
-
-> module Main where
-
-> import Data.IORef
-> import Control.Concurrent
-> --import Control.Concurrent.STM
-> import System.Environment
-> import Data.Time
-
-> import System.Mem
-> import Data.List
-
-> import Collection
-> import RefInterface
-
-> import TestData
-> import TestRun
-
--- the contenders (we can run stand-alone for a fixed test case mainPar)
-
-> import qualified CASList as CAS
->-- import qualified CASusingSTMList as CASusingSTM
-> import qualified MVarListLockCoupling as MLC
->-- import qualified MVarusingSTM as MLCusingSTM
->-- import qualified LazyList2 as Lazy
-> import qualified IOList as I
->-- import qualified STMList as S
-> import qualified ImmList as IMM
-
-
-create List
-
-> createList :: Col c e => [e] -> IO c
-> createList n =
-> do nl <- newCol
-> mapM (insertCol nl) n
-> return nl
-
-
-
-> createTasks :: [a] -> [Op a]
-> createTasks xs = task 1 xs
-> where
-> insCnt = 5 -- every 5th op is insert
-> delCnt = 9 -- ever 9th op is delete
-> task _ [] = []
-> task cnt (x:xs)
-> | (cnt `mod` insCnt) == 0 = (Insert x) : task (cnt+1) xs
-> | (cnt `mod` delCnt) == 0 = (Delete x) : task (cnt+1) xs
-> | otherwise = (Find x) : task (cnt+1) xs
-
-
-
-mainly finds, some deletes which will be inserted again
-
-> specificTask1 :: [a] -> [Op a]
-> specificTask1 xs = task 1 xs []
-> where
-> delCnt = 6 -- every 6th op is delete
-> insCnt = 50 -- after 5 deletes we'll insert them again
-> task _ [] _ = []
-> task cnt (x:xs) deletes
-> | length deletes == insCnt = map Insert deletes ++ task (cnt+1) (x:xs) []
-> | (cnt `mod` delCnt) == 0 = (Delete x) : task (cnt+1) xs (x:deletes)
-> | otherwise = (Find x) : task (cnt+1) xs deletes
-
-> executeTasks :: Col c e => c -> [Op e] -> IO ()
-> executeTasks lh ops =
-> do mapM (\ task ->
-> case task of
-> Find x -> do { findCol lh x; return () }
-> Insert x -> do { insertCol lh x; return () }
-> Delete x -> do { deleteCol lh x; return () })
-> ops
-> return ()
-
- put number into threads buckets
-
-> distribution :: [Int] -> Int -> [[Int]]
-> distribution no threads =
-> let init = map (\ _ -> []) [1..threads]
-> go :: [Int] -> Int -> [[Int]] -> [[Int]]
-> go [] _ acc = acc
-> go (x:xs) cnt acc =
-> let idx = cnt `mod` threads
-> acc' = take idx acc ++ [x : (acc !! idx)] ++ drop (idx+1) acc
-> in go xs (cnt+1) acc'
->
-> in go no 1 init
-
-
-runnable version
-
- main = mainPar
-
-parallel version
-
-> type RUN = CAS.ListHandle Int
-
-> main :: IO ()
-> main =
-> do args <- getArgs
-> case args of
-> (mode:"-t":in_fname:rest) -> run_testdata in_fname mode
->-- [mode, t, l] ->
->-- do let len = read l :: Int
->-- let threads = read t :: Int
->-- let run nl = mainPar nl threads len
->-- case mode of
->-- "CAS" -> do nl :: CAS.ListHandle Int <- createList [0..len]
->-- run nl
->-- "CASusingSTM" -> do nl :: CASusingSTM.ListHandle Int <- createList [0..len]
->-- run nl
->-- "LAZY" -> do nl :: Lazy.ListHandle Int <- createList [0..len]
->-- run nl
->-- "MLC" -> do nl :: MLC.ListHandle Int <- createList [0..len]
->-- run nl
->-- "MLCusingSTM" -> do nl :: MLCusingSTM.ListHandle Int <- createList [0..len]
->-- run nl
->-- "IO" -> do nl :: I.ListHandle Int <- createList [0..len]
->-- run nl
->-- "STM" -> do nl :: S.ListHandle Int <- createList [0..len]
->-- run nl
->-- "IMM" -> do nl :: IMM.ListHandle Int <- createList [0..len]
->-- run nl
-
-
-
- mainPar :: Col c Int => c -> Int -> Int -> IO ()
- mainPar nl threads len =
- do let numbers = [1..len] ++ (reverse [1..len]) ++ [1..len] ++ (reverse [1..len])
- ++ [1..len] ++ (reverse [1..len]) ++ [1..len] ++ (reverse [1..len])
- let ds = distribution numbers threads
- let ts = ds
- wait <- atomically (newTVar 0)
- putStrLn "Start"
- start <- getCurrentTime
- mapM (\ t -> forkIO (do executeTasks nl (specificTask1 t)
- atomically(do counter <- readTVar wait
- writeTVar wait (counter+1))))
- ts
- atomically ( do counter <- readTVar wait
- if counter < threads then retry
- else return () )
- fin <- getCurrentTime
- putStrLn "Done"
- putStrLn $ "Time: " ++ show (diffUTCTime fin start)
-
-
-
- mainPar2 nl len =
- do cnt <- atomically (newTVar 0)
- printCol nl
- mapM (\ e -> forkIO ( do insertCol nl e
- atomically(do i <- readTVar cnt
- writeTVar cnt (i+1))))
- [6..len]
-
- atomically ( do i <- readTVar cnt
- if i <= len-6 then retry
- else return () )
-
- printCol nl
- n <- cntCol nl
- putStrLn $ "Overall: " ++ show n
-
-
-sequential version
-
-> mainSeq nl len =
-> do let threads = 4
-> let numbers = [1..len] ++ (reverse [1..len]) ++ [1..len] ++ (reverse [1..len])
-> ++ [1..len] ++ (reverse [1..len]) ++ [1..len] ++ (reverse [1..len])
-> let [d1,d2,d3,d4] = distribution numbers threads
-> let t1 = d1++d2++d3++d4
-> let t2 = d2++d3++d4++d1
-> let t3 = d3++d4++d1++d2
-> let t4 = d4++d1++d2++d3
-> putStrLn "Start"
-> start <- getCurrentTime
-> mapM (\ t -> executeTasks nl (specificTask1 t)) [t1,t2,t3,t4]
-> fin <- getCurrentTime
-> putStrLn "Done"
-> putStrLn $ "Time: " ++ show (diffUTCTime fin start)
-
-
-just testing
-
-> mainTest nl len =
-> do
-> printCol nl
-
- r <- deleteCol nl 3
- putStrLn ("Result : " ++ show r)
- find nl 10
-
-> insertCol nl 11
-
-> deleteCol nl 3
-> findCol nl 11
-
-
-> mapM (\x -> forkIO (insertCol nl x)) [12..50]
-
-> threadDelay 1000000
-
-> {-
-> putStrLn "Start"
-> executeTasks nl $ createTasks [1..len]
-> find nl (len+1) -- we try to find a non-existant element
-> -- this way, in the LazyList case, we will physically delete all (logically deleted) elements
-> -}
-> putStrLn "End"
-> printCol nl
-
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/MainMVarList.lhs b/testsuite/tests/ghc-regress/concurrent/prog003/MainMVarList.lhs
deleted file mode 100644
index 9bcf9b1240..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/MainMVarList.lhs
+++ /dev/null
@@ -1,237 +0,0 @@
-
-> module Main where
-
-> import Data.IORef
-> import Control.Concurrent
-> --import Control.Concurrent.STM
-> import System.Environment
-> import Data.Time
-
-
-> import MVarList
-
-
-printing
-
-> printList :: Show a => ListHandle a -> IO ()
-> printList (ListHandle {headList = ptrPtr}) =
-> do startptr <- (
-> do ptr <- readIORef ptrPtr
-> Head {next = startptr} <- readMVar ptr
-> return startptr)
-> printListHelp startptr
-
-
-> printListHelp :: Show a => MVar (List a) -> IO ()
-> printListHelp curNodePtr =
-> do { curNode <- readMVar curNodePtr
-> ; case curNode of
-> Null -> putStr "Nil"
-> Node {val = curval, next = curnext} ->
-> do { putStr (show curval ++ " -> ")
-> ; printListHelp curnext }
-> DelNode {val = curval, next = curnext} ->
-> do { putStr (show curval ++ "DEAD -> ")
-> ; printListHelp curnext }
-> }
-
-> cntList :: Show a => ListHandle a -> IO Int
-> cntList (ListHandle {headList = ptrPtr}) =
-> do startptr <- (
-> do ptr <- readIORef ptrPtr
-> Head {next = startptr} <- readMVar ptr
-> return startptr)
-> cntListHelp startptr 0
-
-
-> cntListHelp :: Show a => MVar (List a) -> Int -> IO Int
-> cntListHelp curNodePtr i =
-> do { curNode <- readMVar curNodePtr
-> ; case curNode of
-> Null -> return i
-> Node {val = curval, next = curnext} ->
-> cntListHelp curnext (i+1)
-> DelNode {val = curval, next = curnext} ->
-> cntListHelp curnext (i+1)
-> }
-
-
-create List
-
-> createList :: Int -> IO (ListHandle Int)
-> createList n =
-> do nl <- newList
-> mapM (addToTail nl) [1..n]
-> return nl
-
-
-> data Op a = Find a | Insert a | Delete a deriving Show
-
-
-> createTasks :: [a] -> [Op a]
-> createTasks xs = task 1 xs
-> where
-> insCnt = 5 -- every 5th op is insert
-> delCnt = 9 -- ever 9th op is delete
-> task _ [] = []
-> task cnt (x:xs)
-> | (cnt `mod` insCnt) == 0 = (Insert x) : task (cnt+1) xs
-> | (cnt `mod` delCnt) == 0 = (Delete x) : task (cnt+1) xs
-> | otherwise = (Find x) : task (cnt+1) xs
-
-
-
-mainly finds, some deletes which will be inserted again
-
-> specificTask1 :: [a] -> [Op a]
-> specificTask1 xs = task 1 xs []
-> where
-> delCnt = 5 -- every 6th op is delete
-> insCnt = 50 -- after 5 deletes we'll insert them again
-> task _ [] _ = []
-> task cnt (x:xs) deletes
-> | length deletes == insCnt = map Insert deletes ++ task (cnt+1) (x:xs) []
-> | (cnt `mod` delCnt) == 0 = (Delete x) : task (cnt+1) xs (x:deletes)
-> | otherwise = (Find x) : task (cnt+1) xs deletes
-
-> executeTasks :: Eq a => ListHandle a -> [Op a] -> IO ()
-> executeTasks lh ops =
-> do mapM (\ task ->
-> case task of
-> Find x -> do { find lh x; return () }
-> Insert x -> do { addToTail lh x; return () }
-> Delete x -> do { delete lh x; return () })
-> ops
-> return ()
-
- put number into threads buckets
-
-> distribution :: [Int] -> Int -> [[Int]]
-> distribution no threads =
-> let init = map (\ _ -> []) [1..threads]
-> go :: [Int] -> Int -> [[Int]] -> [[Int]]
-> go [] _ acc = acc
-> go (x:xs) cnt acc =
-> let idx = cnt `mod` threads
-> acc' = take idx acc ++ [x : (acc !! idx)] ++ drop (idx+1) acc
-> in go xs (cnt+1) acc'
->
-> in go no 1 init
-
-> insert :: Eq a => ListHandle a -> a -> IO ()
-> insert = addToTail
-
-
-runnable version
-
-> main = mainPar
-
-parallel version
-
-> mainPar :: IO ()
-> mainPar =
-> do let len = 3000
-> let threads = 4
-> nl <- createList len
-> let numbers = [1..len] ++ (reverse [1..len]) ++ [1..len] ++ (reverse [1..len])
-> ++ [1..len] ++ (reverse [1..len]) ++ [1..len] ++ (reverse [1..len])
-> let [d1,d2,d3,d4] = distribution numbers threads
-> let t1 = d1++d2++d3++d4
-> let t2 = d2++d3++d4++d1
-> let t3 = d3++d4++d1++d2
-> let t4 = d4++d1++d2++d3
-> wait <- atomically (newTVar 0)
-> putStrLn "Start"
-> start <- getCurrentTime
-> mapM (\ t -> forkIO (do executeTasks nl (specificTask1 t)
-> atomically(do counter <- readTVar wait
-> writeTVar wait (counter+1))))
-> [t1,t2,t3,t4]
-> atomically ( do counter <- readTVar wait
-> if counter < 4 then retry
-> else return () )
-> fin <- getCurrentTime
-> putStrLn "Done"
-> putStrLn $ "Time: " ++ show (diffUTCTime fin start)
-
-
-> mainPar2 :: IO ()
-> mainPar2 =
-> do nl <- createList 5
-> let len = 5 + 200
-> cnt <- atomically (newTVar 0)
-> printList nl
-> mapM (\ e -> forkIO ( do insert nl e
-> atomically(do i <- readTVar cnt
-> writeTVar cnt (i+1))))
-> [6..len]
-
-> atomically ( do i <- readTVar cnt
-> if i <= len-6 then retry
-> else return () )
-
-> printList nl
-> n <- cntList nl
-> putStrLn $ "Overall: " ++ show n
-
-
-sequential version
-
-> mainSeq :: IO ()
-> mainSeq =
-> do let len = 3000
-> let threads = 4
-> nl <- createList len
-> let numbers = [1..len] ++ (reverse [1..len]) ++ [1..len] ++ (reverse [1..len])
-> ++ [1..len] ++ (reverse [1..len]) ++ [1..len] ++ (reverse [1..len])
-> let [d1,d2,d3,d4] = distribution numbers threads
-> let t1 = d1++d2++d3++d4
-> let t2 = d2++d3++d4++d1
-> let t3 = d3++d4++d1++d2
-> let t4 = d4++d1++d2++d3
-> putStrLn "Start"
-> start <- getCurrentTime
-> mapM (\ t -> executeTasks nl (specificTask1 t)) [t1,t2,t3,t4]
-> fin <- getCurrentTime
-> putStrLn "Done"
-> putStrLn $ "Time: " ++ show (diffUTCTime fin start)
-
-
-just testing
-
-> mainTest2 :: IO ()
-> mainTest2 =
-> do let len = 10
-> nl <- createList len
-> printList nl
-> addToTail nl 1
-> printList nl
-
-> mainTest :: IO ()
-> mainTest =
-> do let len = 10
-> nl <- createList len
-> printList nl
-
- r <- delete nl 3
- putStrLn ("Result : " ++ show r)
- find nl 10
-
-> insert nl 11
-
-> delete nl 3
-> find nl 11
-
-
-> mapM (\x -> forkIO (insert nl x)) [12..50]
-
-> threadDelay 1000000
-
-> {-
-> putStrLn "Start"
-> executeTasks nl $ createTasks [1..len]
-> find nl (len+1) -- we try to find a non-existant element
-> -- this way, in the LazyList case, we will physically delete all (logically deleted) elements
-> -}
-> putStrLn "End"
-> printList nl
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/Makefile b/testsuite/tests/ghc-regress/concurrent/prog003/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/RefInterface.hs b/testsuite/tests/ghc-regress/concurrent/prog003/RefInterface.hs
deleted file mode 100644
index 95ecbcdb49..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/RefInterface.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-
-module RefInterface where
-
-
-import Control.Monad
-
-
-
-class Monad m => Ref r m | m -> r, r -> m where
- newRef :: a -> m (r a)
- readRef :: (r a) -> m a
- writeRef :: (r a) -> a -> m ()
- atomicRef :: m a -> IO a
- retryRef :: m a
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/TestData.hs b/testsuite/tests/ghc-regress/concurrent/prog003/TestData.hs
deleted file mode 100644
index 4be06adcb2..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/TestData.hs
+++ /dev/null
@@ -1,32 +0,0 @@
-
-module TestData where
-
--- Test Data Data Type
-
--- Operation Tokens
-data Op a = Find a | Delete a | Insert a deriving Show
-
--- A test Data.
--- t_name : Name of the test data.
--- t_threads : Number of concurrent threads to run
--- t_modes : Concurrent modes selected. Multiple modes
--- will be batch tested in specified sequence
--- t_repeats : Number of runs to conduct on each mode.
--- t_init_list : Elements of the initial list
--- t_tasks : Sequence of operation each node
--- executes. Note this must correspond to
--- number of threads.
-data TestData a = TestData { t_name :: String
- , t_threads :: Int
- , t_init_list :: [a]
- , t_tasks :: [[Op a]] }
-
-instance Show a => Show (TestData a) where
- show tc = "Name: " ++ (t_name tc) ++ "\n" ++
- "Threads: " ++ (show $ t_threads tc) ++ "\n" ++
- "Initial-List:\n" ++ (show $ t_init_list tc) ++ "\n" ++
- "Tasks:\n" ++ (printOps $ t_tasks tc)
- where
- printOps (op:ops) = (show op) ++ "\n" ++ (printOps ops)
- printOps [] = ""
-
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/TestDataParser.hs b/testsuite/tests/ghc-regress/concurrent/prog003/TestDataParser.hs
deleted file mode 100644
index 4a85d9576e..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/TestDataParser.hs
+++ /dev/null
@@ -1,103 +0,0 @@
-
-module TestDataParser (
- parse_testdata, -- Read a => FilePath -> IO (TestData a)
- write_testdata -- Show a => TestData -> IO ()
-) where
-
-import TestData
-
--- Parser for parsing TestData. The following is a sample of a test data:
---
---
--- Name: sample
--- Threads: 4
--- Modes: ["CAS","IO","BACK"]
--- Repeat: 6
--- Initial-List:
--- [4,5,6,7,8,4,5,754,345,23432,6547,4]
--- Tasks:
--- [Find 3,Delete 4,Insert 34,Find 45]
--- [Delete 34,Insert 43,Delete 3,Delete 45,Find 87]
--- [Insert 3 , Find 6]
--- [Find 3,Find 67, Insert 3]
---
---
--- Some assumptions:
--- - Number of tasks must correspond to number of threads.
--- - Fields must come in the exact sequence specified above.
-
--- Auxiliary Functions
-
-partitionAt :: Eq a => (a -> Bool) -> [a] -> [[a]]
-partitionAt f as =
- filter (/=[]) (partitionAt' f as)
- where
- partitionAt' _ [] = []
- partitionAt' f as = let (v,rest) = span f as
- in v:(partitionAt' f (drop 1 rest))
-
-is_delimit :: Char -> Bool
-is_delimit ' ' = True
-is_delimit '\n' = True
-is_delimit _ = False
-
-not_delimit :: Char -> Bool
-not_delimit x = not (is_delimit x)
-
--- Parsing Functions
-
-parse_token :: String -> (String,String)
-parse_token str = let str' = dropWhile is_delimit str
- in span not_delimit str'
-
-parse_list :: String -> ([String],String)
-parse_list str =
- let str' = dropWhile is_delimit str
- in parse_list (tail str')
- where
- parse_list str = let comma x = x == ','
- close x = x == ']'
- commaOrClose x = or [comma x,close x]
- (a,rest) = span (\x -> not $ commaOrClose x) str
- in case head rest of
- ',' -> let (as,rest') = parse_list (tail rest)
- in (a:as,rest')
- ']' -> ([a],tail rest)
-
-parse_list_many :: Int -> String -> ([[String]],String)
-parse_list_many 0 str = ([],str)
-parse_list_many n str = let (a,rest) = parse_list str
- (as,rest') = parse_list_many (n-1) rest
- in (a:as,rest')
-
-drop_token :: String -> String
-drop_token str = let (_,rest) = parse_token str
- in rest
-
--- Main function for parseing testcases from file
-parse_testdata :: Read a => FilePath -> IO (TestData a)
-parse_testdata fname = do
- { input <- readFile fname
- ; let (name,input1) = parse_token (drop_token input)
- (t,input2) = parse_token (drop_token input1)
- (list,input3) = parse_list (drop_token input2)
- (ops,_) = parse_list_many (read t) (drop_token input3)
- ; return $ TestData { t_name = name
- , t_threads = read t
- , t_init_list = map read list
- , t_tasks = map readops ops } }
- where
- readops (s:ss) = let (oper,rest) = parse_token s
- (arg,_) = parse_token rest
- x = read arg
- op = case oper of
- "Find" -> Find x
- "Delete" -> Delete x
- "Insert" -> Insert x
- _ -> error ("parse_testdata: " ++ oper ++ "\n" ++ rest ++ "\n" ++ arg)
- in op:(readops ss)
- readops [] = []
-
--- Main function for writing test data to file
-write_testdata :: Show a => TestData a -> IO ()
-write_testdata tc = writeFile (t_name tc) (show tc)
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/TestRun.hs b/testsuite/tests/ghc-regress/concurrent/prog003/TestRun.hs
deleted file mode 100644
index fd6e19de1d..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/TestRun.hs
+++ /dev/null
@@ -1,219 +0,0 @@
-
-{-# LANGUAGE UndecidableInstances, PatternSignatures, FlexibleInstances, MultiParamTypeClasses #-}
-
-module TestRun (
- run_testdata -- FilePath -> FilePath -> IO ()
-) where
-
-import TestData
-import TestDataParser
-import Collection
-
-import Control.Monad
-import GHC.Conc
-import Text.Printf
-import Data.List
-import Data.IORef
-import Control.Concurrent
---import Control.Concurrent.STM
-import System.Environment
-import Data.Time
-import System.Mem
-import System.Random
-import Control.Exception
-
--- the contenders
-import qualified CASList as CAS
-import qualified ImmList as IMM
---import qualified CASusingSTMList as CASusingSTM
-import qualified MVarListLockCoupling as MLC
---import qualified MVarusingSTM as MLCusingSTM
---import qualified LazyList2 as Lazy
-import qualified IOList as I
---import qualified STMList as S
-
-
-
-instance (Eq e, Show e) => Col (CAS.ListHandle e) e where
- newCol = CAS.newList
- insertCol c e = do CAS.addToTail c e
- return ()
- deleteCol = CAS.delete
- findCol = CAS.find
- printCol = CAS.printList
- cntCol = CAS.cntList
-
-instance (Eq e, Show e) => Col (IMM.ListHandle e) e where
- newCol = IMM.newList
- insertCol c e = do IMM.addToTail c e
- return ()
- deleteCol = IMM.delete
- findCol = IMM.find
- printCol = IMM.printList
- cntCol = IMM.cntList
-
---instance (Eq e, Show e) => Col (CASusingSTM.ListHandle e) e where
--- newCol = CASusingSTM.newList
--- insertCol c e = do CASusingSTM.addToTail c e
--- return ()
--- deleteCol = CASusingSTM.delete
--- findCol = CASusingSTM.find
--- printCol = CASusingSTM.printList
--- cntCol = CASusingSTM.cntList
-
-
---instance (Eq e, Show e) => Col (Lazy.ListHandle e) e where
--- newCol = Lazy.newList
--- insertCol c e = do Lazy.addToTail c e
--- return ()
--- deleteCol = Lazy.delete
--- findCol = Lazy.find
--- printCol = Lazy.printList
--- cntCol = Lazy.cntList
-
-
-instance (Eq e, Show e) => Col (I.ListHandle e) e where
- newCol = I.newList
- insertCol c e = do I.addToTail c e
- return ()
- deleteCol = I.delete
- findCol = I.find
- printCol = I.printList
- cntCol = I.cntList
-
---instance (Eq e, Show e) => Col (MLCusingSTM.ListHandle e) e where
--- newCol = MLCusingSTM.newList
--- insertCol c e = do MLCusingSTM.addToTail c e
--- return ()
--- deleteCol = MLCusingSTM.delete
--- findCol = MLCusingSTM.find
--- printCol = MLCusingSTM.printList
--- cntCol = MLCusingSTM.cntList
-
-
-instance (Eq e, Show e) => Col (MLC.ListHandle e) e where
- newCol = MLC.newList
- insertCol c e = do MLC.addToTail c e
- return ()
- deleteCol = MLC.delete
- findCol = MLC.find
- printCol = MLC.printList
- cntCol = MLC.cntList
-
---instance (Eq e, Show e) => Col (S.ListHandle e) e where
--- newCol = S.newList
--- insertCol c e = do S.addToTail c e
--- return ()
--- deleteCol = S.delete
--- findCol = S.find
--- printCol = S.printList
--- cntCol = S.cntList
-
--- Auxiliary functions
-
-createList :: Col c e => [e] -> IO c
-createList n =
- do nl <- newCol
- mapM (insertCol nl) n
- return nl
-
-executeTasks :: Col c e => c -> [Op e] -> IO ()
-executeTasks lh ops =
- do mapM (\ task ->
- case task of
- Find x -> do { findCol lh x; return () }
- Insert x -> do { insertCol lh x; return () }
- Delete x -> do { deleteCol lh x; return () })
- ops
- return ()
-
-appendIORef :: IORef [a] -> a -> IO ()
-appendIORef ref a = do
- { as <- readIORef ref
- ; writeIORef ref (a:as) }
-
-showComma :: [String] -> String
-showComma (s:ss) = "," ++ s ++ (showComma ss)
-showComma [] = ""
-
--- Main interface
-
-run_testdata :: FilePath -> String -> IO ()
-run_testdata testdata_fname mode = do
- { tc <- parse_testdata testdata_fname
- ; putStrLn "Test Initiated: "
- ; let init_elems = t_init_list tc
- works = t_tasks tc
- ; medians <- newIORef []
- ; highlows <- newIORef []
- ; runtests mode init_elems works (medians,highlows)
- }
- where
- runtests m elems works refs =
- case m of
- "CAS" -> do nl :: CAS.ListHandle Int <- createList elems
- runtest m works nl refs
- "IMM" -> do nl :: IMM.ListHandle Int <- createList elems
- runtest m works nl refs
--- "CASusingSTM" -> do nl :: CASusingSTM.ListHandle Int <- createList elems
--- runtest m works nl refs
--- "LAZY" -> do nl :: Lazy.ListHandle Int <- createList elems
--- runtest m works nl refs
- "MLC" -> do nl :: MLC.ListHandle Int <- createList elems
- runtest m works nl refs
--- "MLCusingSTM" -> do nl :: MLCusingSTM.ListHandle Int <- createList elems
--- runtest m works nl refs
- "IO" -> do nl :: I.ListHandle Int <- createList elems
- runtest m works nl refs
--- "STM" -> do nl :: S.ListHandle Int <- createList elems
--- runtest m works nl refs
- trash -> fail $ "Oi! No such concurrency mode: " ++ trash
-
-
- runtest m works nl (medians,highlows) = do
- { putStrLn $ "Test Started: " ++ m
- ; performGC
--- ; wait <- atomically (newTVar 0)
- ; wait <- newEmptyMVar
- ; start <- getCurrentTime
- ; zipWithM (\n work -> forkOnIO n (do { executeTasks nl work
- ; putMVar wait () }))
- --atomically(do counter <- readTVar wait
--- writeTVar wait (counter+1)) }))
- [0..] works
- ; replicateM_ (length works) (takeMVar wait)
--- ; atomically ( do { counter <- readTVar wait
--- ; if counter < length works then retry
--- else return () } )
- ; fin <- getCurrentTime
- ; let result = diffUTCTime fin start
- ; -- printf "time: %.2fs\n" (realToFrac result :: Double)
- ; return () }
-
- output_fname = "out"
-
- write_output mod ms mref hlref = do
- { if mod == 1
- then do { writeFile output_fname ""
- ; output_header output_fname ms
- ; appendFile output_fname ",,"
- ; output_header output_fname ms
- ; appendFile output_fname "\n1Core" }
- else appendFile output_fname ("\n" ++ (show mod) ++ "Cores")
- ; medians <- readIORef mref
- ; highlows <- readIORef hlref
- ; let mstr = reverse $ map show medians
- hlstr = reverse $ highlows
- ; appendFile output_fname (filter (/='s') (showComma mstr))
- ; appendFile output_fname ",,"
- ; appendFile output_fname (filter (/='s') (showComma hlstr)) }
-
- output_header output_fname (m:ms) = do
- { appendFile output_fname ("," ++ m)
- ; output_header output_fname ms }
- output_header output_fname [] = return ()
-
- high_low results =
- let fst = head results
- lst = head $ drop ((length results) - 1) results
- in (fst,lst)
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/all.T b/testsuite/tests/ghc-regress/concurrent/prog003/all.T
deleted file mode 100644
index fc342e9fd0..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/all.T
+++ /dev/null
@@ -1,33 +0,0 @@
-# This is a program for benchmarking mutable linked list
-# implementations by Martin Sulzmann and Simon Marlow. The reason it
-# is here is that one variant of it demonstrated a nasty bug in the
-# RTS, see the patch "Fix a bug that can lead to noDuplicate# not
-# working sometimes", and the comments with stg_noDuplicatzh in
-# rts/PrimOps.cmm.
-#
-# This test won't actually demonstrate the bug since it needs -N3 or
-# greater (and hence a 3-core box) and the bug only manifests very
-# occasionally, but at least the test is here for posterity.
-
-test('concprog003',
- [skip_if_fast,
- extra_clean([
- 'BackList2.hi', 'BackList2.o',
- 'ImmList.hi', 'ImmList.o',
- 'MainMVarList.hi', 'MainMVarList.o',
- 'TestDataParser.hi', 'TestDataParser.o',
- 'CASList.hi', 'CASList.o',
- 'IOList.hi', 'IOList.o',
- 'MVarListLockCoupling.hi', 'MVarListLockCoupling.o',
- 'TestRun.hi', 'TestRun.o',
- 'Collate.hi', 'Collate.o',
- 'LazyList2.hi', 'LazyList2.o',
- 'RefInterface.hi', 'RefInterface.o',
- 'Collection.hi', 'Collection.o',
- 'Main.hi', 'Main.o',
- 'TestData.hi', 'TestData.o'
- ]),
- extra_run_opts('IMM -t test-8-3000-3000-2-1-4'),
- ],
- multimod_compile_and_run,
- ['Main',''])
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/concprog003.stdout b/testsuite/tests/ghc-regress/concurrent/prog003/concprog003.stdout
deleted file mode 100644
index 2839764088..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/concprog003.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Test Initiated:
-Test Started: IMM
diff --git a/testsuite/tests/ghc-regress/concurrent/prog003/test-8-3000-3000-2-1-4 b/testsuite/tests/ghc-regress/concurrent/prog003/test-8-3000-3000-2-1-4
deleted file mode 100644
index c287bf71ba..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/prog003/test-8-3000-3000-2-1-4
+++ /dev/null
@@ -1,13 +0,0 @@
-Name: test-8-3000-3000-2-1-4
-Threads: 8
-Initial-List:
-[1491,2657,2846,296,1177,2063,1505,3668,1596,2341,3147,97,3426,2458,214,2118,1382,3171,2886,825,3316,930,2643,3003,3091,2858,3694,1567,2041,2984,645,50,34,3408,1694,2130,3055,1343,273,466,1327,2218,1830,3406,1806,3598,720,1758,1320,1099,3974,3122,3242,1080,3516,3499,2357,3076,2864,1997,1593,1319,3730,1669,3121,589,3723,2992,686,302,3461,788,1565,2631,949,1311,1390,3866,1685,604,3774,907,179,2943,2862,210,496,2727,1539,360,1912,857,2749,3205,2945,1507,533,1029,3944,3895,2089,1817,3147,1627,2072,2493,3537,1740,478,3191,2735,2620,225,677,1257,1620,1345,2337,2356,928,150,2383,1652,405,3875,717,1340,2426,3220,542,308,1052,674,1467,387,3250,3499,2609,367,147,2010,1358,3803,3843,1455,3638,295,699,1816,2215,246,569,3936,3578,2971,1311,3858,1564,2377,3248,3621,3033,2823,3676,3415,1719,941,554,2206,1180,2146,795,366,2786,1674,1908,501,212,628,3819,1881,950,1570,2788,3170,3207,1083,239,3888,397,1646,65,3839,996,1695,1238,3753,1326,450,2242,1056,3049,1322,577,3365,3958,2783,1811,508,2016,2360,1752,2183,3691,2454,487,2628,1539,64,3711,2275,3714,1009,3429,1297,3616,1899,3069,3161,948,3482,3817,2749,62,2907,2686,1216,2008,2985,2636,3918,243,2263,1751,2110,3451,1215,2593,3739,65,1884,3923,2080,2402,1984,1962,1884,448,1944,590,3948,1900,840,2951,1595,608,1662,458,3298,3677,3741,2995,2401,3687,1886,3811,2302,2706,2690,1184,798,3698,2269,972,3937,2248,1629,1442,3141,848,3812,3655,2161,1344,2078,3663,2949,1090,481,2540,1874,2848,20,2209,1340,1824,1139,2818,1547,3124,1476,2242,3485,1246,3331,2766,725,2393,1450,2353,3917,1884,2962,1510,603,1746,1181,288,3995,1305,3193,1871,160,2980,1879,675,2539,674,3760,2702,1561,2925,527,2595,2503,1417,3464,918,1544,2412,405,2068,1406,3406,2045,511,2065,1159,2778,199,1375,2266,580,3718,2170,756,188,682,3983,2078,1633,2509,3857,1805,742,1219,3675,1128,1228,760,2817,2310,550,1589,392,2938,2892,2296,552,2533,1477,2669,962,2189,2673,1948,650,2056,3569,2052,2270,5,1752,1192,2323,1350,322,3728,91,3109,2960,3625,3096,2472,1560,3339,183,282,1116,2386,2191,1699,346,2908,125,1923,3620,606,207,1646,3973,2168,1643,2173,2854,895,1650,3062,26,304,2993,2352,2,1118,612,20,3881,1241,728,1938,3512,2040,3185,3345,817,3599,629,3561,2735,2517,1094,3620,2043,1003,287,746,2021,1340,224,1905,931,904,2883,3790,1839,3093,100,3819,28,1895,2214,2031,2466,501,8,3190,224,2554,2164,3247,2145,111,2651,936,1434,632,3661,1358,3411,1614,723,1485,3218,900,1957,1831,3529,996,1778,2516,3840,2189,3536,2677,3842,2921,2784,3337,3664,2931,935,2829,2922,290,1266,838,3561,604,2469,1753,3277,1737,2858,2806,918,1192,1419,1859,3361,2515,3893,3538,2278,2629,531,698,539,1242,3929,1038,2552,148,518,2259,3249,2223,414,3364,1523,2496,3930,1163,3587,3154,3645,324,566,2558,2442,733,2443,1297,3325,2915,632,497,2221,3112,376,1431,3459,2394,1039,3572,1940,1521,1385,2559,1043,665,2431,926,3730,497,1599,3655,2783,2509,3589,1967,3786,1841,3703,1134,4,1375,3051,2499,18,2166,1603,834,2279,219,3083,3122,1960,2872,1843,1781,613,1822,2604,1101,1806,3422,1254,1808,166,3442,107,2956,668,2805,1302,3649,3916,432,328,2957,860,1892,3305,1266,34,1868,2250,2719,2043,1747,332,1188,3572,3917,2375,2264,2497,76,1742,280,3336,2956,807,3798,3146,1337,3927,3220,2167,297,3652,1384,1862,3612,3180,2877,2044,1446,767,2666,748,1799,451,3186,675,1619,877,2438,1201,3436,2386,3125,3615,3524,1208,2608,2060,2129,396,3761,3408,918,1823,1629,1457,3372,1943,3647,2208,2048,3181,1436,197,2457,2879,3567,3505,1480,3343,1531,1671,1318,54,60,1306,1298,2439,3673,2166,2177,1347,3101,1589,3452,1906,1194,1796,1426,372,3437,1973,7,2254,1353,861,1497,128,2323,2735,2358,1970,3279,1640,1166,1290,3864,187,3756,1022,1314,2487,2776,1890,3083,1469,1981,2101,1534,2230,1513,2826,1082,1909,2323,2343,866,3369,1447,589,2455,2103,3197,3664,1567,2356,3269,3261,2087,3615,3227,1783,2858,223,1158,3716,2073,1195,1231,3869,1413,871,2380,2702,2370,3945,686,3041,2834,2875,3002,913,2478,1180,1070,1269,2957,119,3766,622,417,2084,3129,2133,780,3666,1250,3658,1921,3346,826,1754,1457,1945,903,2435,3407,1284,2660,2394,2663,1547,2753,72,1373,3312,1926,472,120,3095,3614,1789,2487,659,2896,1757,2790,3552,145,2935,710,1542,14,2280,2861,2590,539,1436,853,1930,3142,358,12,1941,1871,3889,1191,3922,2964,1568,3128,3621,1003,1141,517,3995,1065,1029,847,3270,3765,2171,3024,2026,1325,262,622,3209,3687,2353,1242,728,1663,1784,189,1431,480,456,3161,1894,3506,1473,1603,1541,1503,248,966,2180,1815,118,3945,2684,2528,358,349,3634,1575,3211,2508,2755,237,3715,1565,3194,2200,3707,3233,871,1649,2590,1787,2671,3627,2258,1236,2268,149,1834,2779,3739,2735,1241,970,219,2659,3726,1605,1311,2710,2257,2595,530,3072,1216,3405,1856,711,3243,2356,3498,2389,1070,1285,411,2857,2838,680,1043,2874,3969,3316,554,1460,3204,551,3892,2897,2761,3199,900,1683,648,3390,1600,2737,770,1260,2469,982,3527,2945,3625,2944,3541,578,278,2400,2645,2301,3339,1458,2217,2051,2918,2415,1256,354,82,1570,2983,682,251,799,1203,1628,1632,2978,112,3778,1157,1062,1685,16,568,2917,766,3424,2109,1654,1976,1046,2939,2060,3525,2495,1845,1884,1786,1133,1866,2814,1280,1548,40,2416,3388,980,290,3885,2214,2839,792,3562,375,1815,848,265,788,1528,3985,909,986,1105,1192,3473,2396,2940,3190,2139,2,2342,495,3870,1815,3256,3095,3061,366,3481,1493,1994,1011,2635,3212,2919,2412,3235,3175,3965,1753,3564,2221,3804,1690,2139,2707,3543,1020,2292,1378,2455,2863,3486,3189,3457,3153,310,234,2971,149,3940,1470,532,3851,1472,2148,2667,3114,2622,3545,1601,3218,1599,1621,1474,2699,290,1700,2834,2680,2216,889,564,2679,1109,2669,3761,3277,3079,2852,3985,1708,3720,842,727,1751,2043,571,1508,2046,524,2895,2773,2393,1948,182,2290,188,437,235,2259,821,7,210,1278,1041,3986,3389,106,1742,3286,106,1245,2008,230,3320,1446,1364,3884,782,901,2745,3536,1593,3911,2281,1222,1380,3455,2403,3661,3612,2966,3396,205,3957,3699,2492,3449,3405,2230,3596,2297,2631,2208,241,410,2810,3717,103,1217,2933,3825,1547,3578,1075,3102,1619,1919,3161,1392,784,525,329,2929,416,679,266,2222,3557,1604,3887,342,450,2609,3271,1320,973,2652,2800,34,2428,2680,1137,3252,8,2307,1694,391,104,2550,1389,3797,2231,2165,1847,823,2735,754,1136,3421,2361,1053,3629,2651,1487,693,3799,1082,1813,1951,1710,1182,3134,3700,2977,3809,792,3528,1137,1903,683,916,1393,12,1337,116,3044,3681,2545,775,3409,3065,1466,3389,1624,3958,796,3727,2377,3942,276,3704,3016,1580,2544,3382,1190,3318,3978,2077,920,870,1860,1709,3781,1860,487,3638,989,3136,3874,3074,1717,2792,2688,2131,1630,2590,3117,1339,3036,3688,2877,2348,1930,368,2332,343,3628,410,2506,1889,3595,3143,2203,771,1290,1733,253,1084,1043,707,2919,2958,2356,946,257,1105,2969,3075,2303,1500,2752,2986,3242,310,1165,1682,1078,206,1043,3762,2893,1769,2200,3537,3588,3732,1317,1792,3993,3718,2718,1953,1501,1464,59,2771,2467,1355,620,2199,1331,2213,244,2124,2529,2432,3029,1315,2286,3834,2151,3159,2925,2345,2655,3398,1935,3365,1419,1915,3030,1906,851,857,3130,656,2441,607,395,1387,3730,668,2223,1071,401,3147,1316,519,658,2817,1606,1661,860,999,2346,996,1377,1919,1863,1179,3250,3329,2155,508,712,2241,1395,2917,2689,324,669,2855,986,2107,1157,1228,1983,3769,819,125,155,3589,1357,909,3271,3628,1601,3366,1653,1870,766,1888,3681,2815,107,2849,220,1399,1083,3314,2320,662,1986,3575,2769,2335,2747,3680,96,3090,2455,1319,2157,1372,3893,511,651,2147,2627,1835,748,2745,678,2440,2462,3522,2917,1541,2295,700,2358,1405,1835,87,1464,3882,3748,2870,1682,3435,521,3491,186,51,593,1937,24,2239,3622,2044,3025,1876,3274,1092,859,3535,3475,3816,146,3973,537,3884,645,536,3466,1617,3973,1714,3528,2535,784,982,1157,3013,30,687,3451,2269,943,59,854,1294,3727,3249,25,1147,1624,1485,354,1367,2892,166,2680,302,2155,3244,2970,346,1811,432,150,3541,2651,1667,2078,3028,2861,2657,3048,3995,1502,128,1556,3083,1609,3311,1051,3317,3082,1448,3772,997,460,9,750,1976,2632,1550,3326,10,3775,1730,370,1518,2686,156,3936,3741,70,1864,1875,2332,2192,1582,1491,1818,159,3979,1039,2928,108,2235,798,3672,985,3028,3435,2173,418,1650,2798,3665,897,256,732,2619,753,861,488,2222,1392,2897,3592,3343,3530,115,3039,3056,1818,1435,1597,2217,3225,3584,3072,1412,3517,3471,978,1324,3372,169,3981,2058,60,942,1085,115,3364,1048,1187,440,1658,2738,1443,2324,388,2859,105,2025,3692,2315,2921,45,1191,1482,93,341,3802,2529,2454,1320,1884,861,923,3829,2742,36,3192,1066,1989,2792,2348,3042,1212,3379,525,563,1172,2660,855,2761,1557,1969,3307,1305,2210,1302,22,1797,1548,2917,1464,3533,485,238,939,469,2773,2621,654,2786,801,3339,640,1710,916,2408,2794,1511,2761,544,3497,3967,917,2888,2965,3493,2664,2010,3466,1721,2855,1409,2641,175,2972,3804,119,2097,1030,2,2754,221,454,2360,3386,2895,2405,3303,1138,1271,3778,1708,324,490,2993,3446,3817,1504,671,673,3109,2920,1559,26,2718,3566,3640,1044,2899,779,2096,2184,770,3263,604,197,1685,236,1352,577,781,3953,2875,900,1185,1519,2887,1934,2377,3606,3815,2819,2615,1552,1976,1508,973,331,2855,1363,3010,2294,2181,1485,3641,1365,2440,2049,2172,3784,2885,2472,3678,2878,2282,372,3644,3887,3636,2528,773,436,217,1896,1026,18,1575,1451,2651,1921,1682,2994,2374,1301,3076,1289,596,724,1323,3,1419,854,3234,2142,317,3299,2037,2731,622,567,703,1331,516,1967,348,3834,1047,739,1974,3740,1730,3815,1868,2644,2953,3573,1398,182,2791,3258,2302,2367,3402,678,2413,1442,2007,2237,2865,2990,674,1273,333,2183,3074,589,3685,3791,110,3504,415,224,3787,2214,2045,1359,2594,802,1180,1428,1046,2317,1982,2109,1694,3437,1682,1737,2875,1783,390,1868,2117,2518,3980,3629,2136,1800,3067,130,1935,2922,2143,1620,1131,867,3880,1586,2883,1849,1576,66,1670,3698,2343,3481,2436,1007,618,3760,922,3034,203,3933,1886,1889,3199,1481,3755,747,3385,236,2269,2124,3529,2888,3628,1745,350,87,1810,1875,3425,1552,2683,3136,3350,1141,1853,2002,885,2248,3935,364,2886,1550,2624,3119,3012,2905,3854,2829,3731,2242,2961,186,1627,2052,3662,1345,3244,668,1029,1875,2614,1442,2361,2829,2237,2976,1260,2485,3128,133,3294,2769,1774,2470,1535,3819,706,1249,768,2239,2380,3580,282,1332,1526,1605,2695,888,2475,2960,451,1115,2992,3092,1257,2063,1289,303,1497,3730,3152,2223,3363,3477,3705,3724,2184,1986,1938,2522,3640,747,1957,1889,3429,2374,2987,832,2063,3515,2793,2632,2529,2385,3520,1248,751,2900,3436,3514,64,282,2006,2400,3835,3816,1788,3527,3333,918,3405,3554,2786,3736,1645,2379,3531,1702,3610,1915,1278,2245,3755,2772,809,588,1858,812,1657,248,2557,557,75,3633,757,493,1891,1595,435,3209,3348,1553,459,1769,3644,220,615,2635,1636,185,226,227,3481,2968,901,2785,1130,2569,2933,1454,2582,671,2494,1107,3824,738,3219,2534,3719,1177,208,2331,642,3983,1824,3755,970,3074,1217,914,1693,320,2866,2965,3455,3427,3990,2138,2143,1313,2270,1141,1713,1288,1273,3921,2521,13,2900,3673,3067,2418,2140,2542,2604,3927,1395,1220,3288,941,2650,475,3465,773,3398,2197,3755,3046,351,1065,1110,2890,2706,2945,1511,93,3822,1598,3094,3012,2431,2518,2617,2070,365,1902,966,875,1724,1145,3240,3789,1924,344,3332,3648,2985,3153,163,272,832,3969,93,1625,1419,495,2333,2823,3395,630,1716,1204,3563,1421,3291,2632,1147,74,2303,1980,3728,1104,3081,1960,3084,3356,983,3583,660,1703,3898,1719,3270,2365,1228,2218,384,3832,2664,2749,3789,287,2867,905,1701,3353,2587,1714,3608,3874,349,1258,453,731,1382,3615,801,2785,2462,3767,2402,2419,529,1731,2688,408,1310,1254,1050,484,3501,2883,1777,3514,3111,1128,579,2036,3539,462,3858,2318,3428,1512,1000,2767,597,3127,2432,594,3711,385,3207,2000,2685,1318,704,1065,1231,1823,3682,548,32,3771,1226,878,3331,3645,2639,1514,2533,3725,3459,2430,3253,696,3840,595,2650,372,3398,2518,889,1619,615,3986,2997,119,1689,3527,872,2879,2750,1943,1358,2815,3656,2668,83,1308,2253,936,1917,3755,792,3432,1574,146,1286,2313,2321,928,3065,2091,2419,3640,3121,1180,2460,3920,3899,1525,1466,3764,3080,1254,2878,375,3192,387,3819,1210,1672,872,2438,395,631,853,3199,2335,907,1119,2855,1925,1015,3185,3490,2962,383,1214,2161,271,3983,857,1116,1678,376,3182,2833,2969,836,2863,2837,3738,3170,1643,2122,68,34,3716,601,2303,3326,1051,2424,1155,189,131,2318,2767,2861,1683,1758,2278,3355,1628,2732,3448,2795,2108,1311,772,1402,2716,3082,3915,2582,2017,2466,3277,2309,783,1268,2992,2230,2626,1683,3560,643,2507,1463,2239,2256,1843,3038,3255,411,1353,2960,3021,1584,3094,2914,2994,3398,2515,1419,2252,2080,3994,3141,1622,3189,1819,341,610,2763,3259,3282,3983,3628,2746,112,3734,2284,2723,1112,1724,386,202,2742,601,2782,666,2061,779,313,1803,2867,3910,3216,3533,2444,1731,2426,3936,2922,120,2237,2906,1210,3082,714,95,3689,328,1832,3104,3922,3077,1711,1585,1031,2393,1739,2043,1797,1096,3353,2776,144,1044,880,2870,1558,1040,3435,878,1652,3386,1241,2569,894,2487,1526,2789,3787,1907,3114,1325,197,3867,1946,1490,1088,3014,2417,1517,398,3895,3823,3584,1501,1015,3838,3116,3176,3050,828,1832,3297,262,378,1386,2138,1589,2680,2280,166,127,2814,2521,3799,3975,3194,3056,2054,1707,2032,346,577,3401,1439,1516,3460,2259,202,67,2933,2417,1223,1614,3468,1146,3737,2366,3737,3360,76,204,515,1712,3745,3664,2168,3848,315,1973,3129,2412,3009,2943,2200,178,2617,1792,1207,3566,2910,2087,1199,896,3559,2872,2067,3805,831,238,1579,2509,901,1263,3431,632,1659,952,1794,1251,2797,3113,2945,3565,1709,2826,1905,3794,3913,3078,2745,719,1444,3325,2289,2493,1369,2481,3709,293,740,38,153,1806,3414,3664,1044,3769,3986,2792,455,20,1952,3425,1861,955,1648,1596,1407,1595,573,681,1382,2593,594,2266,510,3693,3148,3656,1066,2964,2043,2758,2353,320,2555,1565,3987,2473,3184,2300,1967,1073,2016,1972,755,246,2299,2511,2830,994,617,1569,3452,3849,3622,183,787,2804,1021,1385,774,3599,2502,1131,2770,1156,2039,1817,3287,3562,862,2622,1411,3340,2862,1662,2601,3823,1316,1517,3336,1345,1912,3306,423,3347,1893,1014,1288,2244,2287,2845,837,1183,2201,2674,1326,2059,3403,1668,2821,3945,2475,854,2133,3016,3922,567,700,2921,3327,1233,3507,3257,1654,73,3256,24,799,2890,3808,556,530,2217,1868,3265,1362,1675,496,2363,1226,3841,2961,839,1606,3673,2448,3885,2692,3143,938,2197,824,825,867,873,161,3122,2144,583,567,2107,2188,2555,1677,1921,1171,3725,3872,1835,2388,3171,1020,974,3023,1286,3421,932,220,2063,1696,1418,3592,3361,1876,1190,1554,3118,2230,1864,1849,3768,2678,627,3627,585,3542,3089,136,469,1937,2225,293,330,1040,3463,1647,3157,1828,3735,100,3310,2802,2738,2014,1638,1027,2204,1020,3834,2336,3765,3500,2364,2128,3020,452,175,3901,2957,721,1337,757,3472,433,3080,3024,1351,1555,1613,673,1062,1137,626,355,3152,1617,3700,918,1978,2322,3556,1216,3974,1795,1128,2138,3328,2275,3337,3543,1918,1090,68,3464,3772,744,3688,2007,502,1111,1101,895,1826,3958,2359,2230,933,3931,2502,2739,2971]
-Tasks:
-[Find 450,Find 2236,Insert 1905,Insert 2320,Delete 2544,Insert 3574,Insert 584,Find 2459,Find 3301,Insert 3005,Insert 458,Delete 1468,Insert 40,Insert 112,Insert 1177,Delete 3073,Find 645,Find 1422,Insert 3854,Insert 2305,Insert 3017,Insert 3342,Insert 3973,Insert 267,Delete 3012,Find 142,Delete 2784,Delete 563,Insert 3949,Insert 2113,Find 628,Find 3621,Insert 3814,Delete 3844,Delete 2514,Insert 3003,Insert 3066,Insert 2259,Find 3836,Insert 3550,Find 1672,Delete 2998,Delete 1243,Find 3079,Insert 1173,Insert 3893,Find 115,Insert 1542,Insert 1389,Insert 664,Insert 1500,Delete 3320,Insert 2019,Find 3373,Find 1497,Insert 2185,Find 3299,Insert 174,Insert 537,Delete 682,Insert 1612,Insert 1811,Find 831,Insert 2057,Find 180,Insert 3287,Delete 347,Insert 2939,Delete 690,Insert 1757,Insert 3102,Insert 2281,Delete 2222,Insert 3889,Insert 589,Insert 71,Find 3959,Insert 3413,Find 284,Insert 2024,Find 3996,Insert 2663,Insert 28,Find 1364,Insert 1391,Insert 2566,Find 3708,Insert 1836,Insert 1077,Delete 551,Find 1292,Find 232,Insert 1599,Find 2693,Find 2621,Find 3323,Insert 1319,Delete 3487,Insert 1644,Insert 1405,Delete 470,Insert 994,Delete 1360,Find 3695,Insert 1952,Find 828,Find 3993,Insert 907,Insert 598,Delete 2425,Insert 784,Insert 1721,Insert 3764,Insert 1041,Insert 599,Find 92,Insert 3698,Delete 3955,Insert 2944,Insert 427,Find 954,Insert 3582,Insert 1748,Insert 2709,Find 1106,Find 1377,Insert 3453,Insert 770,Insert 1187,Insert 2944,Find 3144,Insert 525,Insert 2526,Delete 3269,Find 1251,Find 2352,Insert 340,Insert 3751,Insert 2483,Insert 460,Insert 3438,Find 2167,Insert 1229,Find 2283,Find 1793,Find 1368,Insert 1113,Delete 3091,Find 3830,Find 1791,Insert 30,Find 328,Delete 3020,Insert 3763,Find 2948,Find 1831,Insert 2928,Find 2889,Find 14,Insert 3445,Insert 3341,Insert 3981,Insert 932,Insert 126,Insert 1964,Insert 3688,Delete 734,Insert 176,Insert 641,Insert 3063,Delete 3958,Insert 1371,Find 3270,Insert 1738,Insert 2960,Insert 1017,Insert 443,Insert 211,Insert 1962,Find 133,Insert 1340,Insert 2083,Find 3005,Insert 2604,Insert 1632,Insert 1876,Delete 2402,Find 456,Find 2093,Insert 1744,Insert 1872,Insert 2856,Insert 3804,Insert 683,Insert 2703,Insert 647,Insert 56,Insert 3111,Insert 1258,Insert 1786,Insert 1971,Insert 3738,Delete 2521,Insert 2046,Insert 3865,Insert 807,Find 2828,Find 1602,Find 676,Insert 3690,Insert 3148,Find 1604,Insert 1892,Delete 207,Insert 1361,Insert 2667,Find 2502,Insert 1827,Insert 732,Delete 2706,Insert 3977,Insert 1249,Find 482,Find 1575,Delete 3327,Insert 2510,Insert 3959,Find 1032,Insert 197,Insert 1722,Insert 1191,Delete 1831,Insert 1895,Insert 872,Insert 3883,Delete 214,Insert 1833,Insert 1531,Insert 3927,Insert 1626,Insert 1053,Insert 2571,Delete 3236,Insert 1708,Insert 2127,Insert 3891,Insert 1271,Find 3492,Find 2704,Insert 2349,Find 2054,Insert 3832,Find 2036,Delete 3132,Delete 291,Insert 2976,Find 2516,Delete 1012,Delete 2506,Insert 2213,Insert 1129,Insert 1686,Insert 2370,Insert 1440,Insert 3673,Delete 2163,Find 2437,Insert 1973,Find 3507,Insert 3376,Find 365,Insert 580,Insert 3306,Delete 3263,Delete 1567,Insert 1400,Insert 1636,Insert 2123,Find 642,Insert 2367,Insert 3492,Delete 1072,Insert 2175,Insert 3949,Insert 3999,Find 2849,Find 498,Delete 3653,Insert 1304,Find 1472,Find 3370,Insert 1818,Find 955,Find 1986,Insert 1743,Find 3986,Insert 328,Delete 424,Insert 3512,Delete 185,Insert 2354,Insert 221,Find 3226,Delete 2356,Delete 3701,Delete 3923,Insert 429,Delete 1173,Delete 3126,Insert 3109,Find 2867,Insert 2119,Insert 742,Insert 1473,Find 2406,Insert 2791,Insert 90,Insert 478,Find 465,Insert 2209,Find 3199,Insert 3447,Insert 997,Insert 779,Find 1671,Insert 863,Find 655,Find 1896,Find 3092,Insert 3524,Delete 1888,Insert 834,Find 991,Delete 930,Insert 742,Insert 1922,Delete 3861,Insert 3726,Find 3735,Insert 2133,Insert 1050,Insert 3423,Insert 3396,Insert 1694,Insert 1155,Insert 1867,Insert 2584,Find 2469,Insert 2490,Insert 2694,Insert 3089,Delete 646,Delete 555,Find 3564,Insert 1199,Insert 2004,Insert 2551,Insert 1061,Find 3841,Insert 3093,Insert 3529,Insert 814,Insert 2175,Insert 2275,Insert 2235,Insert 3775,Insert 326,Insert 2433,Insert 3267,Find 2195,Insert 1139,Insert 1316,Insert 2237,Insert 3623,Delete 3353,Find 2750,Find 135,Insert 2366,Insert 1331,Find 3911,Insert 944,Insert 3573,Insert 3686,Delete 2674,Insert 1927,Insert 439,Find 1891,Insert 3047,Insert 2047,Insert 1745,Insert 3524,Find 660,Insert 3153,Delete 668,Insert 3645,Insert 413,Find 494,Find 3781,Find 709,Insert 3752,Find 569,Insert 1551,Insert 3364,Insert 3971,Insert 1672,Insert 2063,Insert 3682,Insert 1752,Insert 465,Insert 3082,Find 3820,Insert 1156,Insert 3492,Insert 54,Insert 223,Delete 2728,Find 2970,Delete 1530,Insert 3963,Find 2930,Insert 3201,Insert 3262,Insert 285,Find 3275,Insert 1203,Find 1622,Insert 3289,Insert 2968,Insert 2267,Find 3036,Insert 2622,Find 3055,Find 2361,Delete 2299,Find 1906,Find 2665,Find 2207,Insert 1339,Delete 1427,Insert 3158,Insert 2075,Find 221,Insert 2714,Insert 3383,Insert 541,Insert 3385,Insert 1415,Insert 2020,Find 1911,Find 2294,Insert 3325,Insert 725,Delete 3017,Find 1537,Find 2682,Insert 3973,Find 3560,Insert 1363,Insert 2696,Find 1370,Delete 3698,Insert 2894,Insert 475,Find 2388,Insert 2620,Find 1524,Delete 775,Insert 2713,Delete 1304,Delete 391,Insert 3668,Insert 3157,Insert 1459,Find 1146,Insert 3796,Find 1795,Delete 2303,Insert 3792,Delete 3281,Insert 576,Insert 1193,Find 846,Insert 2529,Find 2585,Insert 301,Insert 814,Insert 227,Find 2070,Delete 3071,Insert 735,Find 1323,Find 1832,Find 3195,Insert 3282,Insert 3365,Find 2988,Insert 795,Delete 2220,Insert 3255,Insert 3535,Insert 780,Insert 759,Insert 522,Insert 2790,Delete 1751,Find 3634,Insert 2991,Insert 1207,Insert 2374,Insert 101,Delete 176,Insert 2934,Insert 312,Find 683,Insert 3415,Find 1981,Insert 3718,Insert 2971,Insert 2719,Delete 522,Find 3649,Find 197,Find 2461,Delete 2884,Find 896,Find 3585,Insert 3237,Find 2049,Find 1636,Insert 340,Insert 3926,Delete 414,Delete 2620,Find 344,Insert 54,Insert 1070,Delete 2707,Find 3454,Insert 171,Insert 3625,Find 2084,Insert 950,Insert 2351,Find 2469,Insert 571,Insert 411,Find 1534,Insert 3017,Insert 882,Insert 2042,Insert 487,Insert 3214,Find 1809,Find 2201,Insert 2543,Delete 653,Delete 2843,Find 580,Delete 2840,Insert 1875,Insert 711,Insert 1204,Delete 552,Insert 261,Find 2336,Insert 1016,Find 98,Find 1537,Find 3441,Find 1775,Insert 3953,Find 2547,Find 3983,Insert 3109,Insert 1662,Delete 2097,Find 1237,Insert 3294,Delete 3205,Insert 3641,Find 1322,Insert 419,Find 3935,Insert 796,Find 1399,Delete 1437,Insert 2838,Insert 3365,Insert 1280,Insert 3384,Insert 1904,Insert 755,Find 2154,Insert 813,Delete 849,Find 2408,Insert 2561,Find 66,Find 167,Find 2478,Insert 785,Insert 2682,Insert 190,Insert 3863,Delete 422,Insert 2377,Find 733,Insert 1204,Insert 1198,Insert 1802,Delete 2977,Insert 395,Delete 1364,Delete 748,Delete 2428,Find 3264,Delete 1574,Find 2826,Insert 928,Insert 3356,Insert 1210,Insert 2786,Find 2170,Find 2202,Insert 3977,Find 3013,Insert 883,Find 936,Find 113,Delete 2130,Insert 3926,Find 2712,Insert 1664,Insert 1215,Delete 2678,Find 168,Insert 1396,Insert 903,Insert 3857,Delete 3775,Find 468,Insert 3292,Find 2780,Delete 2533,Insert 243,Insert 469,Insert 2117,Insert 1602,Delete 3155,Insert 3614,Insert 3311,Insert 3804,Insert 1520,Insert 917,Insert 967,Insert 451,Insert 3802,Insert 111,Find 1265,Insert 831,Insert 3255,Insert 519,Insert 3964,Find 2145,Insert 3552,Insert 2284,Insert 825,Find 2893,Find 580,Insert 3169,Insert 2932,Delete 3008,Insert 1107,Insert 287,Delete 1933,Insert 687,Insert 222,Delete 618,Insert 2277,Insert 284,Insert 2147,Find 1778,Insert 2510,Insert 97,Delete 903,Insert 1620,Insert 2288,Find 2612,Find 2812,Insert 586,Insert 2846,Insert 867,Insert 2496,Insert 1049,Insert 676,Insert 1162,Delete 267,Insert 894,Insert 2572,Insert 2320,Insert 1100,Delete 1897,Delete 1599,Find 1380,Insert 408,Insert 2067,Insert 638,Insert 2468,Find 1206,Delete 3593,Find 260,Delete 2091,Find 3919,Delete 1535,Insert 3251,Delete 2093,Insert 3028,Delete 2344,Delete 2182,Insert 455,Insert 1457,Delete 2615,Find 2471,Insert 95,Find 1110,Insert 1853,Find 1006,Insert 1445,Insert 546,Find 1561,Insert 54,Delete 2527,Delete 2051,Insert 3166,Insert 3326,Insert 2701,Find 2409,Delete 488,Insert 2835,Insert 3892,Insert 1116,Find 2819,Find 3742,Find 3845,Find 1455,Insert 3550,Find 3500,Find 2939,Delete 926,Insert 2992,Insert 3653,Insert 3691,Insert 1482,Insert 3098,Insert 2845,Insert 2435,Insert 3265,Insert 2971,Insert 1136,Insert 2833,Insert 527,Insert 3245,Insert 1473,Insert 992,Find 2789,Insert 683,Insert 847,Delete 3619,Insert 530,Delete 2471,Insert 3405,Find 123,Insert 549,Find 2350,Insert 2774,Delete 3600,Find 2874,Find 552,Insert 3395,Find 315,Find 953,Find 1460,Insert 1648,Find 494,Insert 1181,Delete 272,Insert 830,Insert 3390,Insert 3451,Find 2474,Delete 644,Insert 108,Insert 2808,Delete 2963,Find 2330,Insert 3575,Find 399,Find 1753,Insert 1197,Insert 3403,Insert 309,Delete 2861,Insert 1987,Find 3912,Delete 979,Find 293,Insert 66,Find 2467,Delete 2113,Insert 343,Insert 2981,Insert 1788,Insert 3870,Delete 3717,Insert 1596,Insert 1329,Delete 1803,Find 1564,Insert 396,Find 2728,Delete 3049,Find 936,Find 2753,Find 867,Insert 3591,Insert 750,Insert 2140,Insert 3643,Insert 3079,Delete 2887,Insert 1467,Find 1581,Insert 1109,Find 830,Delete 2949,Find 3676,Insert 3201,Insert 3201,Insert 917,Find 3990,Insert 2187,Find 2200,Insert 9,Insert 1167,Find 1141,Insert 1424,Find 2812,Find 3087,Insert 3241,Insert 305,Find 1145,Insert 3078,Insert 175,Insert 2073,Insert 1105,Insert 2428,Insert 313,Find 975,Find 2681,Find 355,Delete 2291,Insert 1828,Insert 2154,Delete 3486,Insert 3751,Find 3820,Insert 2095,Insert 3893,Insert 14,Delete 1358,Find 1046,Insert 198,Insert 2543,Insert 69,Find 1623,Insert 208,Delete 1471,Insert 3613,Insert 2814,Find 815,Find 3239,Find 2143,Delete 1496,Insert 1600,Delete 3258,Delete 1260,Insert 3540,Delete 459,Insert 66,Find 2180,Insert 3466,Find 3485,Insert 315,Delete 449,Find 930,Find 3835,Delete 2386,Insert 2074,Find 1568,Insert 553,Insert 3409,Insert 2994,Insert 2518,Insert 820,Insert 1972,Insert 3002,Delete 782,Insert 1455,Insert 3633,Insert 1489,Insert 3037,Find 1336,Find 367,Insert 2484,Delete 178,Insert 1055,Insert 3848,Find 927,Insert 3539,Insert 3541,Insert 362,Insert 1645,Find 3400,Find 2924,Insert 2091,Find 1067,Find 2686,Insert 2778,Insert 3213,Find 483,Find 3926,Find 1786,Insert 60,Insert 439,Find 1097,Insert 247,Insert 809,Insert 3883,Insert 3150,Find 3553,Find 2679,Find 3045,Find 3242,Find 1911,Delete 38,Insert 3754,Find 286,Find 3896,Find 2835,Insert 2348,Find 3337,Insert 3219,Find 3697,Insert 3315,Insert 3119,Delete 3228,Insert 2114,Find 259,Insert 1420,Insert 3585,Insert 872,Insert 1473,Find 1951,Delete 1698,Find 2552,Insert 182,Insert 3708,Insert 2058,Find 2816,Insert 2037,Insert 3319,Insert 1760,Insert 2605,Insert 2630,Insert 2535,Insert 2291,Find 166,Insert 2431,Delete 3568,Find 3522,Insert 2154,Insert 997,Find 203,Insert 3570,Insert 987,Insert 3469,Insert 3085,Delete 1439,Insert 1742,Insert 1932,Insert 3593,Insert 1772,Insert 773,Insert 843,Insert 3047,Insert 3517,Find 876,Find 1236,Insert 3194,Delete 940,Insert 1517,Find 2556,Insert 3054,Insert 2980,Find 1454,Delete 2017,Insert 3140,Find 2409,Delete 3672,Insert 3177,Insert 2740,Find 2972,Find 2173,Insert 999,Find 3069,Insert 462,Insert 97,Find 2429,Find 3812,Delete 1602,Find 1888,Insert 2237,Insert 2255,Insert 1062,Insert 3868,Insert 1683,Insert 2227,Insert 396,Find 1538,Insert 147,Delete 2605,Insert 3722,Delete 3556,Delete 1660,Insert 1711,Find 854,Delete 3024,Insert 3433,Find 1193,Delete 55,Insert 975,Find 1110,Find 2247,Find 231,Insert 2653,Insert 464,Find 3021,Insert 2123,Insert 873,Insert 3989,Insert 1870,Insert 2732,Find 1118,Insert 1493,Insert 3311,Find 2102,Insert 3397,Find 3755,Delete 3992,Insert 3808,Delete 440,Insert 1885,Insert 1439,Find 2010,Insert 1991,Delete 1952,Delete 1556,Find 3742,Insert 3427,Find 328,Find 153,Insert 3925,Insert 521,Insert 1309,Find 679,Delete 2139,Delete 2801,Insert 3240,Find 474,Insert 2250,Find 1885,Insert 2691,Delete 3450,Insert 1439,Insert 1410,Insert 2768,Insert 1956,Insert 829,Insert 2751,Insert 3837,Find 2006,Insert 1828,Find 3834,Insert 2859,Find 1754,Insert 3373,Find 3162,Insert 396,Insert 160,Insert 129,Insert 2752,Delete 3189,Delete 2444,Insert 440,Insert 1065,Insert 1644,Insert 2852,Insert 2773,Find 2393,Delete 3112,Insert 2002,Insert 158,Insert 3553,Insert 2175,Delete 913,Delete 2542,Insert 2515,Find 622,Find 1639,Find 704,Insert 1742,Insert 1000,Find 2637,Delete 1413,Insert 3916,Insert 1761,Insert 139,Insert 391,Delete 3311,Find 1922,Delete 1568,Delete 2373,Find 1259,Find 3722,Insert 2773,Find 2653,Insert 2397,Delete 1061,Find 986,Find 589,Insert 405,Insert 601,Insert 2633,Insert 2946,Insert 1807,Delete 2547,Find 3185,Find 2995,Find 1224,Find 561,Insert 3487,Insert 903,Find 1925,Insert 3453,Delete 2020,Find 1540,Insert 2933,Insert 2467,Insert 1812,Insert 982,Find 1444,Insert 3391,Insert 426,Find 2735,Insert 2050,Insert 2964,Delete 1148,Find 1791,Insert 1170,Insert 637,Delete 3737,Insert 369,Find 3808,Delete 2033,Find 1710,Insert 3856,Insert 1401,Find 1484,Delete 2168,Insert 1787,Insert 131,Insert 2042,Insert 2248,Find 1866,Insert 3642,Insert 1964,Find 3823,Insert 3086,Find 813,Insert 767,Find 2453,Find 3338,Insert 69,Insert 1238,Find 2394,Insert 3,Insert 1965,Insert 3803,Insert 2490,Find 1267,Find 2373,Insert 3411,Find 894,Delete 1013,Find 5,Delete 1643,Insert 498,Delete 3913,Insert 469,Find 2706,Find 1539,Insert 3579,Insert 816,Find 2074,Find 2978,Insert 464,Insert 3141,Insert 1488,Find 991,Delete 1761,Insert 1201,Find 712,Insert 854,Insert 1801,Find 1797,Insert 48,Find 1102,Insert 367,Insert 2560,Insert 2364,Insert 858,Insert 1136,Insert 3577,Insert 1265,Insert 3396,Insert 3179,Find 1013,Insert 3968,Insert 1545,Insert 1727,Insert 238,Delete 2707,Insert 1305,Find 1005,Insert 3668,Insert 76,Insert 1885,Insert 3578,Insert 1256,Find 1327,Find 3004,Insert 343,Insert 1448,Delete 3503,Find 1007,Delete 1491,Insert 2445,Delete 2708,Delete 1623,Delete 3905,Delete 2169,Insert 3675,Find 2067,Delete 1737,Delete 3903,Insert 450,Find 3577,Find 2862,Insert 488,Delete 1028,Find 685,Insert 694,Insert 2343,Insert 993,Insert 2626,Find 1335,Insert 1399,Insert 925,Insert 3010,Insert 3490,Find 1755,Insert 1949,Insert 69,Find 3544,Insert 865,Find 2568,Insert 924,Insert 2336,Insert 3208,Insert 2450,Insert 1162,Find 3072,Insert 579,Find 3892,Insert 1513,Insert 2724,Delete 2626,Insert 3277,Delete 2718,Find 2806,Insert 3296,Find 1363,Insert 170,Delete 1957,Insert 3560,Find 689,Insert 71,Delete 2056,Insert 744,Find 2392,Insert 2196,Find 3061,Find 248,Insert 1446,Insert 1140,Insert 989,Insert 2007,Find 849,Find 1548,Find 941,Insert 1977,Insert 3731,Insert 3489,Find 2983,Insert 1074,Delete 908,Insert 1716,Delete 1416,Find 3855,Insert 504,Insert 1641,Delete 1789,Insert 996,Insert 2328,Insert 3119,Delete 2778,Delete 340,Delete 1427,Insert 2289,Insert 195,Find 2964,Insert 645,Insert 785,Insert 422,Insert 2311,Delete 2472,Find 3520,Insert 2426,Insert 3791,Find 2757,Insert 3434,Find 506,Find 448,Delete 2577,Insert 2861,Insert 1943,Insert 627,Find 2494,Find 1757,Insert 2042,Insert 2267,Insert 3503,Insert 451,Insert 1653,Find 3542,Delete 2824,Insert 2063,Find 3065,Insert 1412,Insert 3379,Delete 401,Insert 719,Find 3930,Delete 3310,Insert 2944,Find 3357,Insert 3819,Insert 290,Insert 3554,Delete 3474,Insert 1079,Insert 826,Insert 3440,Delete 13,Insert 578,Insert 958,Insert 2388,Insert 793,Insert 3922,Insert 255,Insert 3832,Delete 167,Find 3112,Insert 3504,Delete 954,Find 239,Insert 3054,Find 2019,Find 3168,Insert 1060,Insert 1465,Insert 3640,Insert 2557,Find 3664,Find 3410,Find 1414,Find 1960,Find 850,Insert 738,Insert 1910,Insert 1593,Insert 809,Insert 3013,Insert 2522,Delete 2710,Insert 2720,Find 2693,Insert 986,Insert 3542,Insert 1217,Find 1637,Find 1820,Insert 1476,Find 3310,Delete 1882,Insert 339,Insert 496,Insert 3707,Insert 2359,Insert 3089,Insert 3029,Delete 573,Delete 2291,Find 1570,Insert 1190,Find 3138,Delete 3247,Find 3568,Insert 1394,Insert 94,Delete 2219,Find 3257,Insert 3962,Insert 626,Find 653,Insert 3631,Insert 3726,Find 2893,Insert 2813,Insert 1994,Insert 544,Insert 2796,Delete 765,Insert 2768,Insert 2615,Find 100,Insert 1529,Find 2544,Insert 2099,Find 1202,Delete 2939,Insert 451,Insert 3149,Insert 3661,Insert 1699,Delete 2680,Insert 1596,Insert 2503,Insert 3478,Delete 2655,Delete 3909,Find 776,Find 1498,Insert 252,Find 2697,Find 131,Insert 2786,Find 1330,Insert 1733,Find 964,Insert 287,Find 968,Insert 2046,Find 3313,Find 3926,Insert 1828,Insert 3539,Find 1232,Delete 3522,Delete 2699,Find 3012,Insert 2024,Insert 443,Insert 119,Insert 2863,Find 187,Insert 1424,Insert 983,Find 328,Insert 3130,Insert 1102,Insert 2069,Find 666,Find 1411,Insert 1213,Find 1206,Delete 2061,Delete 2298,Insert 240,Find 2618,Find 3966,Insert 544,Delete 416,Find 1996,Delete 2146,Insert 2895,Find 3554,Insert 1893,Insert 1162,Find 444,Insert 3212,Insert 162,Insert 1522,Insert 1431,Insert 225,Insert 886,Insert 2036,Insert 196,Insert 3425,Find 2313,Delete 1725,Insert 3941,Insert 1936,Delete 1756,Find 678,Insert 1767,Insert 2502,Find 2813,Insert 3806,Delete 3804,Insert 3675,Find 270,Insert 2289,Find 3463,Insert 3994,Insert 3250,Insert 2717,Find 3289,Insert 3776,Find 716,Insert 2828,Insert 3132,Insert 3039,Insert 3808,Insert 3261,Find 1429,Insert 2598,Find 338,Insert 1242,Insert 562,Insert 667,Delete 1260,Insert 3592,Insert 1838,Find 169,Insert 3648,Delete 3662,Insert 1885,Insert 1981,Insert 3976,Find 2762,Insert 332,Delete 2651,Insert 1070,Insert 3676,Insert 2977,Insert 3504,Insert 753,Find 57,Insert 519,Delete 1607,Delete 3794,Find 2090,Insert 2822,Delete 2886,Delete 1918,Insert 3200,Insert 1742,Find 3314,Insert 680,Insert 2550,Find 1080,Insert 2400,Insert 2087,Insert 209,Insert 22,Find 2327,Insert 3965,Insert 1545,Delete 1161,Insert 353,Delete 1389,Insert 3166,Insert 852,Insert 906,Insert 1433,Insert 3035,Find 416,Insert 2685,Insert 1273,Insert 2965,Insert 1826,Insert 357,Find 2059,Find 1471,Insert 1784,Insert 2564,Insert 2517,Find 3445,Find 609,Find 2084,Insert 1967,Insert 1767,Insert 2251,Find 3942,Find 2380,Insert 1766,Find 2429,Delete 900,Find 1476,Insert 1760,Insert 2193,Find 2042,Find 376,Insert 3442,Delete 1367,Find 207,Find 138,Insert 3856,Delete 3731,Insert 2577,Find 1709,Insert 2875,Insert 2299,Insert 932,Insert 908,Insert 2947,Insert 1989,Insert 1732,Find 1738,Insert 937,Insert 3720,Delete 140,Find 2696,Insert 876,Insert 1360,Insert 3574,Insert 1228,Find 3748,Insert 1088,Find 3242,Insert 2183,Insert 3938,Find 3981,Insert 849,Find 2233,Find 1363,Insert 58,Insert 2685,Insert 3270,Find 2966,Insert 2365,Find 1375,Insert 3196,Insert 2339,Find 3265,Insert 321,Insert 1546,Find 2393,Insert 664,Find 428,Insert 792,Find 1227,Delete 445,Insert 1598,Insert 288,Delete 3480,Insert 3353,Find 1872,Find 157,Find 115,Find 3020,Insert 575,Insert 315,Insert 3426,Insert 3628,Insert 1637,Find 2629,Insert 2714,Insert 3884,Find 622,Insert 106,Insert 1157,Insert 2449,Insert 2948,Find 324,Insert 3047,Insert 3916,Find 2735,Delete 3796,Insert 651,Insert 712,Find 2303,Find 833,Insert 3142,Delete 2980,Delete 3272,Insert 2893,Find 1083,Find 367,Find 3290,Find 3489,Insert 2188,Find 2191,Insert 2929,Find 1184,Insert 3957,Insert 3376,Insert 2866,Insert 3903,Find 1524,Delete 1746,Insert 2066,Insert 2710,Insert 396,Insert 1931,Find 1500,Insert 608,Insert 125,Delete 2526,Insert 2366,Find 2408,Find 2241,Find 3680,Insert 2926,Insert 3966,Delete 1340,Find 174,Insert 210,Find 2318,Insert 1604,Insert 343,Insert 2610,Insert 216,Insert 3993,Insert 3893,Insert 3513,Insert 1491,Insert 2719,Find 2415,Insert 3992,Insert 3863,Find 1720,Find 1725,Insert 3266,Insert 2495,Insert 487,Insert 2244,Insert 127,Insert 985,Find 3613,Find 1179,Find 1003,Insert 3099,Insert 2113,Insert 2006,Find 502,Insert 3243,Delete 3267,Delete 1020,Insert 2491,Delete 3813,Find 3203,Insert 3626,Insert 1925,Insert 448,Insert 1205,Find 774,Insert 17,Delete 1627,Insert 2785,Insert 1799,Insert 2506,Insert 1864,Find 2671,Insert 1276,Find 262,Insert 516,Insert 659,Insert 2604,Insert 983,Find 1138,Insert 2210,Insert 1894,Find 2607,Find 2723,Insert 1415,Find 517,Insert 3955,Insert 1969,Insert 2499,Find 3759,Insert 796,Insert 3252,Insert 606,Delete 2657,Insert 2459,Delete 1398,Find 373,Insert 3846,Find 3528,Find 716,Insert 3762,Insert 2578,Insert 2584,Find 1267,Insert 3130,Delete 2463,Insert 3771,Find 752,Insert 1087,Find 1171,Insert 822,Insert 119,Insert 1263,Insert 409,Find 3282,Insert 3070,Find 2054,Insert 2096,Delete 2310,Insert 3287,Insert 2925,Find 121,Delete 649,Insert 1921,Find 3962,Find 2853,Find 1329,Insert 1454,Insert 2455,Delete 72,Insert 2725,Find 2622,Insert 310,Insert 1674,Find 428,Insert 2805,Find 1016,Find 1093,Find 3743,Insert 2815,Insert 1223,Delete 3107,Find 727,Insert 2607,Insert 1913,Find 1629,Insert 1006,Insert 1209,Insert 3749,Insert 3994,Insert 3467,Find 3708,Insert 604,Delete 3454,Find 3711,Insert 3764,Insert 1715,Insert 9,Insert 557,Insert 1406,Insert 208,Find 910,Find 6,Insert 1914,Insert 2685,Delete 1863,Insert 1102,Insert 1436,Delete 1996,Insert 3986,Delete 93,Insert 1954,Insert 2434,Delete 2878,Insert 799,Delete 306,Insert 3784,Find 1906,Insert 3290,Insert 828,Find 2802,Insert 313,Find 3501,Insert 2924,Insert 1422,Delete 2141,Insert 316,Insert 1618,Delete 3439,Delete 3792,Insert 3557,Delete 3773,Insert 1803,Insert 1985,Insert 3740,Find 1213,Delete 1330,Find 1851,Insert 2288,Insert 1160,Insert 1076,Insert 3953,Insert 205,Insert 1769,Insert 921,Insert 561,Insert 3959,Find 1135,Find 3682,Insert 2226,Insert 1622,Find 3533,Delete 2097,Insert 532,Delete 1634,Insert 1409,Insert 2731,Insert 2770,Insert 675,Delete 2521,Find 388,Insert 906,Find 3719,Insert 1995,Find 637,Delete 2056,Insert 2805,Insert 1029,Find 981,Find 3282,Insert 1416,Find 3442,Find 179,Find 1692,Find 3081,Insert 1301,Insert 1410,Find 634,Insert 1785,Insert 1680,Insert 3745,Insert 2313,Insert 2541,Delete 3904,Find 1085,Insert 1506,Delete 2190,Insert 1918,Find 3653,Insert 716,Delete 1957,Insert 2976,Insert 1338,Find 1682,Find 935,Insert 687,Insert 2863,Delete 3021,Insert 2607,Find 1475,Find 2551,Delete 805,Insert 2873,Insert 654,Delete 152,Find 626,Find 1943,Find 2119,Find 299,Insert 1703,Insert 3208,Insert 2336,Find 274,Insert 809,Delete 3371,Insert 3843,Delete 1158,Insert 2053,Insert 165,Insert 3513,Insert 3979,Find 2308,Find 3015,Insert 702,Find 1573,Insert 3991,Insert 2825,Insert 1966,Find 2203,Insert 1099,Insert 3397,Insert 3387,Insert 1349,Insert 2620,Find 2580,Insert 1079,Insert 1751,Insert 3980,Insert 3508,Delete 668,Find 1096,Find 151,Delete 2695,Insert 1492,Find 2686,Insert 2585,Insert 27,Insert 2410,Find 3696,Insert 3979,Insert 3781,Delete 3864,Insert 2658,Find 860,Insert 1827,Insert 3159,Find 2620,Insert 3248,Insert 2788,Insert 947,Insert 3576,Insert 1859,Find 1601,Insert 1574,Find 3468,Insert 3949,Insert 3200,Insert 1187,Insert 594,Insert 2467,Insert 3102,Delete 217,Insert 1414,Insert 3114,Insert 1541,Find 1921,Insert 3143,Find 573,Delete 403,Insert 3674,Find 3329,Insert 1997,Insert 3778,Insert 44,Delete 1334,Insert 3089,Insert 2760,Insert 2093,Insert 5,Insert 3565,Find 2748,Insert 3054,Insert 1612,Delete 3924,Find 2302,Insert 3019,Insert 3645,Find 3237,Insert 3583,Insert 2430,Insert 10,Find 647,Find 2856,Find 3561,Find 3333,Insert 2399,Insert 2540,Find 1642,Insert 1606,Insert 2250,Insert 3326,Insert 1497,Find 2678,Insert 1412,Find 1325,Insert 3132,Find 3775,Insert 1890,Find 443,Insert 1775,Insert 162,Delete 3429,Find 251,Insert 3035,Find 3540,Find 3604,Insert 1754,Insert 1711,Insert 2930,Insert 2351,Delete 480,Find 210,Find 1196,Insert 1772,Delete 43,Find 1073,Insert 1830,Insert 3736,Insert 751,Find 3320,Find 2862,Delete 766,Find 478,Find 3856,Insert 2036,Insert 357,Find 3669,Delete 1798,Find 3936,Insert 3526,Insert 623,Insert 3545,Find 348,Find 2072,Find 65,Insert 2049,Delete 369,Insert 1876,Insert 1552,Find 2989,Insert 716,Find 3378,Insert 2348,Find 1685,Insert 1586,Insert 976,Insert 40,Insert 1799,Find 3961,Insert 894,Delete 1665,Insert 3162,Insert 1100,Find 1219,Insert 3094,Insert 759,Delete 780,Insert 813,Insert 1647,Find 3084,Insert 3761,Insert 1744,Insert 1756,Find 621,Find 3810,Insert 1905,Find 2173,Find 1733,Insert 406,Find 1388,Find 3441,Insert 898,Insert 3161,Insert 111,Insert 481,Insert 3579,Delete 549,Insert 1361,Delete 791,Insert 1288,Delete 2425,Insert 3508,Find 2316,Delete 2449,Insert 3295,Find 1547,Delete 2325,Find 2479,Find 1649,Delete 2502,Insert 1740,Insert 1776,Find 2412,Insert 1407,Insert 2721,Insert 1649,Insert 644,Find 2401,Insert 1666,Insert 3924,Insert 939,Insert 2947,Insert 249,Insert 1975,Insert 423,Insert 3450,Delete 666,Find 1682,Find 3150,Insert 827,Insert 2523,Insert 1600,Find 419,Delete 1361,Find 2337,Insert 1211,Find 575,Delete 881,Insert 2330,Find 2092,Find 2885,Find 715,Insert 2349,Find 2116,Insert 3988,Insert 235,Insert 1762,Insert 767,Find 2870,Insert 3055,Find 832,Find 458,Delete 1052,Delete 3986,Find 2259,Insert 1621,Insert 3562,Delete 553,Insert 378,Insert 1621,Insert 34,Find 2444,Find 2298,Find 3914,Find 3264,Delete 857,Find 3355,Insert 2296,Insert 2915,Insert 1082,Insert 645,Insert 2174,Find 3512,Insert 3119,Find 1153,Delete 1792,Find 3710,Insert 94,Find 925,Insert 3931,Find 834,Insert 3323,Find 2410,Insert 2397,Find 3630,Find 1666,Insert 1062,Insert 3235,Insert 3279,Find 2473,Insert 3335,Find 1720,Insert 531,Insert 2759,Insert 1768,Delete 104,Insert 82,Insert 3559,Delete 2567,Insert 1775,Find 1649,Find 1639,Insert 2012,Insert 1448,Find 495,Insert 3507,Find 2061,Insert 3115,Find 2321,Find 2123,Find 1958,Insert 3231,Insert 1078,Find 3157,Insert 948,Insert 3849,Delete 1497,Find 3884,Insert 3026,Insert 607,Find 3402,Find 2935,Insert 1653,Find 1254,Find 295,Insert 3411,Insert 3889,Find 2342,Insert 601,Insert 2676,Insert 2959,Delete 1220,Find 1393,Insert 3948,Insert 3018,Insert 1383,Find 2572,Find 2867,Insert 1689,Insert 1550,Delete 2268,Insert 881,Insert 3590,Find 17,Insert 1738,Insert 1038,Insert 2708,Insert 817,Insert 151,Insert 443,Insert 401,Insert 1418,Insert 3346,Find 2423,Find 3577,Insert 2221,Insert 52,Insert 483,Insert 1625,Insert 795,Insert 2668,Insert 3316,Insert 1192,Insert 3667,Insert 347,Insert 1958,Delete 2982,Find 3158,Insert 3462,Insert 2855,Insert 781,Insert 1342,Find 171,Insert 1801,Insert 32,Insert 2323,Find 3546,Find 2208,Insert 973,Delete 2980,Insert 3496,Insert 214,Find 1487,Insert 300,Find 2810,Insert 1162,Insert 3358,Insert 2012,Insert 2684,Find 70,Insert 1942,Insert 1184,Find 2001,Insert 1260,Find 2080,Insert 3259,Insert 851,Insert 2054,Insert 1428,Insert 769,Insert 1686,Insert 3750,Insert 2518,Find 3007,Insert 859,Delete 2715,Insert 170,Find 1316,Insert 1088,Insert 1687,Find 3073,Find 3751,Insert 1091,Insert 3851,Insert 2524,Delete 824,Insert 309,Find 2942,Delete 1367,Insert 1208,Insert 2875,Insert 3052,Delete 505,Insert 2178,Insert 1084,Delete 1898,Find 2392,Insert 2627,Insert 2053,Insert 1060,Insert 1698,Insert 1338,Insert 109,Find 1722,Find 1829,Delete 1242,Insert 778,Insert 2865,Insert 1054,Insert 1008,Delete 73,Delete 1907,Find 1461,Insert 2755,Insert 3579,Insert 1465,Find 1048,Delete 3416,Find 402,Insert 701,Delete 1090,Find 3643,Insert 3940,Find 1477,Insert 3345,Insert 2771,Find 2107,Find 133,Insert 607,Insert 1331,Insert 1226,Insert 2889,Insert 1728,Insert 1957,Delete 2236,Find 2733,Insert 3090,Insert 2358,Insert 1296,Insert 258,Insert 3259,Find 3691,Insert 838,Insert 160,Insert 1692,Delete 1997,Insert 3495,Insert 672,Insert 3541,Insert 2916,Insert 2731,Insert 2901,Insert 29,Insert 90,Insert 3771,Insert 25,Find 1077,Delete 969,Insert 3743,Delete 1636,Insert 3879,Insert 476,Delete 1025,Find 504,Insert 2133,Insert 76,Find 2592,Insert 3011,Insert 2933,Insert 1175,Insert 2079,Insert 1978,Insert 2900,Insert 3746,Insert 125,Find 1886,Insert 137,Find 2092,Find 488,Insert 3783,Insert 3913,Insert 3137,Find 1115,Insert 1702,Insert 3954,Insert 2122,Insert 1264,Find 3052,Insert 2078,Insert 2180,Insert 2875,Insert 1979,Delete 2982,Delete 1979,Delete 2390,Insert 216,Find 2870,Find 456,Find 1766,Insert 1168,Insert 1604,Insert 1916,Insert 1269,Insert 2978,Find 2700,Insert 1165,Delete 2547,Delete 2044,Delete 1835,Find 1544,Find 1176,Insert 2230,Insert 1335,Insert 567,Insert 2834,Find 2937,Insert 2086,Insert 1612,Find 2452,Insert 3208,Insert 449,Insert 2011,Insert 1400,Insert 1849,Insert 29,Insert 3831,Insert 1590,Insert 2525,Insert 1117,Find 283,Insert 2534,Insert 1612,Insert 1240,Insert 1518,Delete 3598,Insert 1260,Find 2756,Insert 403,Find 977,Find 3212,Find 2593,Find 2556,Find 1406,Find 698,Find 2218,Insert 3000,Insert 2267,Delete 3926,Insert 1824,Insert 3570,Delete 796,Insert 552,Find 1253,Find 1035,Find 666,Insert 164,Insert 1384,Insert 3038,Insert 1599,Find 3105,Find 2015,Insert 491,Find 2419,Insert 3062,Insert 238,Find 2466,Insert 83,Delete 3778,Find 771,Find 165,Find 3553,Insert 2228,Find 1552,Insert 3469,Insert 2381,Find 1911,Insert 2564,Delete 989,Delete 1221,Find 1477,Delete 838,Insert 1304,Insert 1838,Insert 3386,Delete 555,Insert 381,Insert 1876,Insert 1302,Insert 2901,Insert 3037,Find 1881,Insert 696,Insert 1719,Insert 30,Find 1153,Find 1007,Insert 220,Insert 3847,Insert 626,Find 2954,Insert 956,Find 178,Insert 3837,Find 1119,Insert 288,Insert 2939,Insert 3283,Find 1171,Insert 2709,Insert 1793,Delete 1615,Insert 2032,Insert 3317,Delete 2971,Insert 1826,Delete 3772,Insert 3328,Insert 1978,Insert 1062,Find 3472,Insert 3020,Insert 2204,Find 3735,Delete 2225,Insert 627,Insert 1190,Delete 932,Find 1835,Insert 2107,Find 825,Find 3673,Insert 1675,Insert 2890,Insert 1233,Find 854,Insert 2674,Find 1014,Delete 1517,Find 2622,Find 1131,Find 183,Find 2511,Insert 2300,Find 2758,Insert 2266,Find 1596,Insert 2792,Insert 38,Delete 3325,Insert 2826,Insert 952,Find 238,Insert 2087,Insert 2943,Insert 3664,Insert 2366,Find 67,Find 346,Insert 2521,Delete 1386,Insert 3116,Insert 1517,Insert 1325,Delete 2569,Find 2870,Delete 2043,Insert 3104,Insert 2906,Find 3533,Insert 666,Find 2723,Insert 3259,Insert 3994,Delete 3094,Insert 1843,Insert 2626,Insert 2017,Insert 2108,Insert 1683,Find 1051,Insert 1643,Find 3182,Delete 1214,Insert 1119,Insert 872,Insert 1254,Insert 1180,Delete 2313,Find 936,Find 1943,Find 3986,Insert 595,Find 1514,Insert 548,Find 2000,Insert 2767,Insert 2036,Insert 484,Find 2419,Insert 731,Find 3353,Find 3832,Insert 1703,Find 1104,Insert 1421,Find 495,Insert 3153,Delete 1145,Find 2518,Insert 2945,Insert 2197,Delete 1220,Delete 3673,Insert 1141,Insert 2965,Find 3755,Insert 2534,Find 1454,Insert 227,Find 1769,Find 493,Find 812,Insert 1915,Find 3554,Find 2400,Delete 1248,Insert 832,Insert 2522,Insert 2223,Insert 3092,Insert 1605,Delete 1249,Find 133,Delete 1442,Delete 2052,Delete 2905,Delete 2248,Insert 1552,Delete 2888,Insert 1481,Find 3760,Find 66,Delete 1620,Insert 3629,Insert 1737,Insert 1428,Find 224,Find 2183,Insert 1442,Find 182,Insert 3740,Insert 1331,Find 2142,Insert 1289,Insert 1451,Insert 2528,Delete 2472,Insert 1485,Find 1508,Insert 1934,Find 577,Find 2184,Delete 26,Insert 3446,Insert 3303,Find 2,Insert 1409,Insert 2888,Find 2408,Insert 2621,Insert 2917,Find 1969,Insert 3379,Find 36,Delete 2529,Find 2315,Insert 2738,Find 942,Insert 3471,Find 1435,Insert 2897,Insert 256,Insert 3028,Delete 3979,Insert 1864,Find 1730,Insert 9,Find 3311,Find 2657,Delete 432,Find 166,Insert 3249,Insert 687,Insert 1714,Insert 3973,Insert 1876,Insert 51,Insert 3882,Insert 1541,Delete 1835,Insert 1319,Insert 3575,Find 2849,Insert 3366,Delete 125,Insert 2855,Insert 508,Delete 996,Find 519,Delete 1387,Insert 1906,Delete 2345,Find 2432,Insert 1355,Insert 3718,Insert 1769,Insert 310,Find 1105,Insert 1084,Find 1889,Find 2348,Find 2131,Insert 3638,Insert 2077,Delete 3704,Insert 3389,Find 116,Insert 3528,Find 1951,Insert 1053,Insert 2165,Insert 2307,Find 2652,Insert 1604,Insert 525,Insert 3578,Insert 410,Insert 3449,Insert 3661,Delete 3536,Insert 230,Find 3986,Insert 437,Insert 524,Insert 3720,Insert 1109,Insert 290,Insert 2622,Delete 3940,Insert 3486,Find 2139,Delete 3235,Find 3481,Delete 2342,Insert 1105,Find 1815,Find 980,Insert 1133,Find 1046,Insert 16,Insert 1628,Insert 354,Insert 2301,Insert 2945,Insert 3390,Insert 551,Insert 680,Insert 2356,Find 2595,Insert 970,Insert 1236,Insert 3233,Insert 2508,Insert 3945,Insert 1603,Insert 189,Find 622,Find 847,Insert 3128,Insert 12,Insert 2861,Insert 2790,Find 120,Insert 2663,Find 1457,Insert 780,Insert 2957,Delete 2834,Insert 1413,Insert 2858,Insert 1567,Insert 866,Insert 1534,Find 1314,Find 3279,Insert 1353,Find 1194,Insert 3673,Insert 1531,Find 1436,Insert 1629,Insert 2608,Insert 2438,Insert 2666,Insert 1384,Insert 3798,Insert 2264,Find 2719,Insert 2957,Find 2956,Insert 1101,Delete 3122,Delete 2499,Find 1967,Insert 926,Insert 3572,Delete 497,Insert 2558,Insert 2496,Find 148,Find 2629,Insert 1192,Insert 604,Insert 2931,Insert 2189,Find 900,Find 632,Insert 2554,Insert 1895,Insert 904,Insert 1003,Insert 3599,Insert 1241,Delete 304,Find 2168,Insert 2908,Insert 3339,Find 3728,Insert 2052,Find 2669,Find 1589,Delete 1219,Delete 682,Delete 199,Find 2068,Insert 2595,Insert 675,Insert 288,Delete 2353,Insert 2242,Find 2209,Find 3663,Insert 1442,Insert 1184,Insert 2995,Find 2951,Insert 1962,Insert 2593,Delete 2636,Delete 3817,Insert 3429,Insert 487,Insert 1811,Delete 2242,Find 65,Insert 2788,Delete 1908,Find 554,Find 3248,Find 569,Find 3843,Insert 3250,Insert 2426,Find 928,Insert 2620,Insert 1627,Insert 1507,Insert 2727,Insert 604,Find 788,Find 1669,Insert 3499,Find 1758,Insert 466,Find 50,Insert 3003,Delete 2118,Delete 3668]
-[Find 1921,Insert 318,Insert 2447,Find 3844,Insert 3381,Insert 3223,Insert 611,Find 418,Insert 1256,Find 241,Insert 388,Delete 897,Insert 235,Insert 2931,Insert 2213,Insert 1008,Insert 1266,Find 543,Insert 3531,Find 3709,Insert 979,Find 1120,Insert 1365,Find 3344,Delete 1991,Insert 2522,Insert 1521,Insert 2683,Insert 1721,Insert 1422,Find 3709,Find 1375,Insert 2610,Find 1176,Insert 3924,Insert 1686,Insert 1852,Delete 3158,Insert 3195,Find 3325,Insert 2829,Insert 2861,Delete 3155,Insert 2846,Find 2540,Insert 2409,Insert 2671,Insert 3349,Insert 2035,Insert 2888,Find 646,Find 3725,Insert 131,Insert 697,Insert 1789,Delete 1654,Find 967,Find 1749,Insert 2788,Insert 2963,Find 949,Find 917,Insert 889,Find 1666,Find 1724,Delete 1877,Insert 3122,Insert 1074,Find 2214,Insert 123,Delete 513,Insert 1610,Insert 1426,Delete 986,Insert 561,Find 405,Insert 870,Delete 3646,Insert 2533,Find 3934,Delete 3550,Insert 3488,Find 3416,Insert 3621,Delete 1233,Insert 273,Insert 70,Delete 632,Find 689,Find 3051,Insert 16,Insert 2991,Insert 1540,Find 3691,Insert 130,Delete 3715,Delete 610,Delete 1885,Insert 2284,Find 1359,Delete 3143,Find 3585,Find 920,Find 3908,Find 1301,Insert 597,Find 2537,Find 2600,Find 895,Insert 400,Insert 292,Insert 1436,Find 2614,Find 2061,Delete 3206,Insert 982,Insert 383,Insert 3160,Find 710,Find 2580,Insert 3158,Insert 2121,Find 3884,Insert 3917,Delete 3940,Find 3979,Delete 79,Insert 2488,Find 2939,Delete 1498,Delete 2409,Insert 1177,Insert 2667,Insert 1234,Find 3480,Delete 3055,Insert 2622,Insert 2435,Delete 726,Insert 2096,Insert 1462,Insert 720,Insert 1563,Find 982,Insert 1593,Find 3833,Insert 3186,Delete 1715,Insert 500,Delete 179,Insert 2297,Find 839,Insert 1288,Find 343,Insert 551,Insert 1200,Insert 196,Insert 1562,Insert 1626,Insert 1345,Insert 2801,Insert 1711,Insert 3709,Delete 1240,Insert 302,Delete 1841,Insert 3516,Insert 1969,Insert 1593,Delete 2716,Find 3641,Insert 609,Insert 3131,Find 3433,Insert 2205,Insert 3913,Delete 1966,Insert 1240,Find 2947,Delete 3085,Find 3279,Find 374,Insert 2548,Insert 185,Insert 3639,Find 446,Insert 3290,Insert 591,Find 265,Insert 574,Insert 1463,Find 2933,Insert 1270,Find 2014,Find 1101,Find 2330,Delete 2077,Insert 3388,Insert 3379,Insert 982,Find 3366,Insert 1665,Insert 382,Find 453,Insert 572,Insert 3683,Insert 2868,Insert 3372,Find 2746,Insert 1936,Find 3210,Find 340,Find 145,Find 2431,Insert 2673,Insert 2416,Insert 665,Insert 1940,Delete 312,Insert 2249,Delete 1493,Insert 3719,Delete 80,Insert 1405,Insert 1077,Find 3021,Insert 3336,Find 1414,Insert 2495,Insert 7,Insert 3087,Delete 81,Insert 2770,Insert 3138,Delete 2566,Insert 887,Find 2186,Insert 2568,Find 3895,Insert 2806,Insert 2437,Insert 3803,Delete 1729,Delete 3843,Delete 2108,Insert 2940,Find 511,Find 165,Insert 2321,Insert 3665,Delete 2475,Insert 3413,Delete 2944,Insert 361,Insert 3113,Delete 3808,Find 1839,Insert 3912,Insert 2197,Insert 2561,Insert 2226,Insert 2725,Insert 2633,Insert 3059,Delete 1747,Insert 1219,Insert 3731,Find 1953,Insert 1511,Delete 3167,Find 2558,Insert 2799,Delete 1395,Delete 3481,Insert 2162,Insert 3727,Delete 1106,Insert 1262,Delete 2920,Delete 2800,Find 2967,Find 653,Insert 1830,Delete 3793,Delete 832,Insert 3301,Insert 3446,Insert 254,Insert 58,Insert 3561,Find 1977,Insert 513,Find 2172,Find 376,Insert 484,Insert 3961,Delete 1607,Insert 1157,Insert 2399,Insert 566,Insert 3263,Find 3673,Delete 976,Insert 1263,Find 2996,Find 811,Insert 1206,Insert 1814,Insert 480,Find 1113,Find 216,Insert 3601,Insert 3477,Insert 3635,Insert 2151,Insert 3652,Insert 2199,Find 3787,Find 903,Delete 721,Insert 3058,Insert 3917,Find 2445,Insert 1986,Delete 105,Delete 1826,Insert 2793,Insert 1440,Insert 1808,Find 3236,Find 842,Delete 826,Insert 3631,Find 1804,Find 1333,Insert 1352,Insert 2184,Insert 2315,Insert 2217,Insert 3760,Insert 3277,Insert 3069,Insert 2950,Insert 259,Delete 1423,Find 949,Insert 799,Insert 1409,Find 635,Find 1900,Insert 1256,Delete 1640,Delete 1435,Delete 853,Insert 862,Find 3381,Insert 1294,Insert 1008,Delete 303,Find 2946,Insert 3685,Find 1848,Insert 3867,Insert 3028,Insert 408,Insert 1168,Insert 2009,Find 183,Insert 920,Delete 2335,Insert 2167,Insert 1402,Insert 3469,Insert 1637,Insert 3306,Delete 2080,Delete 3879,Insert 590,Insert 1047,Insert 784,Insert 1002,Insert 711,Insert 2108,Delete 1125,Find 1642,Find 2953,Insert 1951,Find 3339,Find 2750,Insert 2361,Insert 813,Insert 1063,Find 1680,Find 337,Insert 2813,Find 1074,Insert 1558,Find 3092,Insert 195,Insert 1132,Find 3175,Insert 1548,Find 2212,Insert 2719,Insert 14,Find 1251,Insert 1879,Find 2345,Delete 468,Insert 3294,Find 2009,Insert 1576,Insert 148,Delete 2123,Insert 2451,Insert 2714,Insert 2718,Find 1142,Insert 448,Find 1104,Insert 3415,Insert 2038,Insert 1808,Insert 1150,Insert 2061,Find 3800,Insert 2478,Insert 1471,Insert 1757,Insert 918,Find 2710,Delete 1861,Insert 689,Insert 612,Insert 327,Find 1365,Insert 3623,Insert 449,Find 946,Insert 3223,Insert 3445,Find 2242,Find 1363,Delete 1217,Find 3944,Insert 281,Find 2817,Insert 2219,Insert 2011,Insert 2433,Find 2838,Insert 1923,Insert 821,Find 1004,Find 332,Delete 2502,Insert 3744,Find 1861,Insert 1064,Delete 2572,Insert 3882,Find 1141,Find 1893,Insert 610,Insert 1378,Insert 138,Delete 1122,Insert 1694,Find 1320,Insert 15,Insert 197,Insert 1581,Insert 3860,Insert 68,Insert 2417,Find 1982,Insert 3432,Insert 1867,Insert 3364,Delete 1898,Insert 3279,Find 2159,Insert 40,Insert 1723,Find 2353,Find 1598,Find 2769,Find 2680,Insert 3633,Insert 573,Insert 3371,Delete 2051,Insert 3812,Insert 796,Insert 522,Find 3692,Insert 1914,Find 912,Insert 1202,Insert 470,Insert 2047,Find 3046,Insert 3057,Delete 2055,Find 787,Find 854,Insert 1264,Find 1819,Find 91,Insert 1582,Insert 2498,Insert 729,Insert 1241,Insert 2489,Find 1867,Insert 1656,Insert 3429,Delete 2986,Find 2583,Delete 2061,Find 158,Find 2093,Find 115,Find 3027,Find 1844,Insert 2530,Insert 1698,Delete 1118,Delete 531,Insert 2529,Insert 1653,Delete 1993,Insert 1994,Insert 2016,Find 1487,Insert 1773,Insert 3156,Insert 3817,Insert 1248,Delete 3453,Insert 1386,Insert 3468,Delete 436,Find 2151,Delete 1942,Find 1837,Find 3981,Find 3322,Delete 609,Insert 931,Insert 3726,Find 2889,Insert 3827,Insert 2330,Insert 3719,Find 3474,Delete 3293,Insert 516,Insert 2624,Find 981,Insert 2887,Insert 1696,Insert 472,Insert 3559,Insert 3701,Insert 2750,Find 213,Insert 2631,Insert 418,Insert 312,Find 861,Insert 3114,Insert 554,Delete 326,Find 3674,Insert 3398,Find 2927,Insert 3515,Delete 1932,Delete 621,Find 1891,Insert 248,Insert 2943,Insert 2852,Insert 351,Insert 20,Insert 2617,Find 3176,Insert 803,Find 2963,Insert 1066,Insert 980,Insert 2923,Find 1507,Insert 595,Find 1891,Delete 3447,Insert 547,Delete 480,Delete 1075,Insert 3970,Find 1858,Insert 2726,Find 3739,Find 2385,Find 1621,Delete 746,Delete 3110,Find 156,Insert 683,Insert 1785,Find 3349,Insert 3412,Delete 2870,Find 1696,Insert 1557,Insert 2500,Insert 1713,Find 2050,Find 1303,Insert 2280,Find 2049,Find 349,Insert 1086,Find 3151,Find 2561,Find 1881,Insert 3481,Delete 2197,Insert 2227,Find 63,Insert 3586,Insert 1370,Find 119,Insert 3224,Find 3925,Insert 2533,Find 1853,Insert 3634,Insert 2129,Delete 1474,Insert 257,Insert 3867,Delete 2726,Insert 3905,Insert 2764,Insert 1192,Insert 1477,Insert 657,Find 836,Insert 571,Find 2035,Insert 2433,Delete 3053,Delete 2824,Find 3919,Insert 3798,Insert 1700,Find 3139,Insert 748,Find 3513,Insert 247,Insert 996,Insert 2597,Insert 6,Insert 20,Insert 69,Insert 3242,Delete 2359,Insert 3281,Insert 2201,Insert 139,Insert 1264,Insert 728,Insert 2137,Insert 2137,Find 1511,Insert 1658,Insert 3169,Insert 399,Delete 932,Find 564,Insert 1765,Insert 3335,Insert 2945,Insert 1171,Delete 319,Insert 180,Insert 769,Insert 1166,Insert 2529,Insert 3953,Insert 1611,Insert 311,Insert 1812,Find 1250,Insert 2704,Insert 2316,Delete 2172,Insert 3086,Insert 307,Insert 1180,Find 2605,Insert 3420,Find 406,Insert 2032,Find 2217,Insert 1984,Insert 2113,Insert 710,Delete 1379,Insert 1646,Insert 2303,Delete 750,Insert 1327,Delete 1482,Delete 262,Find 2189,Delete 534,Insert 2391,Insert 1613,Insert 2037,Delete 3856,Find 3303,Find 984,Find 3498,Find 2745,Insert 1740,Insert 3687,Insert 2286,Find 3146,Find 37,Find 3701,Find 1988,Insert 3787,Find 962,Delete 370,Find 2935,Insert 472,Insert 3173,Insert 696,Insert 2384,Insert 2682,Find 3954,Insert 1297,Insert 1914,Find 488,Insert 1833,Insert 13,Find 1835,Find 575,Delete 172,Insert 2003,Insert 2110,Find 2194,Delete 678,Delete 3150,Find 2099,Insert 3001,Find 1259,Insert 853,Delete 2479,Insert 499,Insert 3988,Insert 367,Find 2405,Insert 3578,Insert 1137,Insert 3290,Insert 3791,Insert 750,Insert 1830,Insert 3004,Find 1131,Find 560,Insert 2667,Delete 3576,Find 2039,Insert 2345,Delete 229,Find 3272,Insert 2301,Insert 714,Insert 3291,Insert 706,Find 3168,Find 892,Find 605,Find 912,Delete 2812,Insert 1989,Insert 1718,Insert 1788,Delete 335,Delete 2539,Find 3385,Insert 508,Insert 525,Insert 582,Insert 770,Insert 3009,Insert 1940,Delete 2214,Delete 1507,Find 3680,Insert 2177,Delete 46,Find 2921,Delete 275,Insert 1403,Insert 1593,Find 1477,Insert 3573,Insert 549,Insert 1566,Find 624,Find 44,Insert 1903,Insert 2281,Insert 1366,Find 1611,Insert 2798,Find 218,Insert 604,Insert 982,Insert 1026,Insert 2192,Insert 3714,Find 1179,Find 1023,Find 3348,Insert 1168,Insert 658,Insert 2395,Find 1405,Insert 3281,Insert 3762,Insert 786,Insert 2524,Insert 3095,Insert 3213,Insert 313,Find 3934,Delete 464,Insert 2647,Insert 496,Insert 2267,Insert 566,Insert 1121,Insert 1940,Insert 2112,Insert 2039,Insert 1780,Insert 321,Find 2860,Delete 3761,Insert 3549,Insert 3627,Insert 3659,Insert 653,Insert 1676,Find 364,Insert 282,Insert 1332,Insert 2055,Find 3937,Insert 2124,Insert 3859,Find 3163,Insert 367,Insert 3576,Find 1544,Insert 429,Find 1385,Find 93,Find 3508,Find 2680,Insert 114,Find 1729,Insert 663,Insert 1196,Insert 230,Find 825,Insert 521,Insert 2455,Insert 1947,Find 368,Insert 531,Find 6,Find 3239,Delete 1313,Insert 3124,Find 645,Find 1858,Insert 1156,Delete 1308,Insert 3789,Find 2086,Insert 3519,Find 3944,Delete 3386,Delete 1620,Find 2875,Find 594,Find 700,Insert 171,Insert 243,Delete 2183,Insert 3832,Delete 1047,Delete 2521,Insert 996,Find 903,Delete 1730,Insert 948,Insert 1721,Insert 1719,Delete 2228,Insert 199,Insert 2203,Insert 3728,Find 272,Insert 2852,Insert 2366,Insert 569,Delete 3585,Find 2061,Insert 3688,Insert 3493,Insert 3866,Delete 3206,Insert 3325,Find 1055,Delete 3210,Insert 3105,Insert 1337,Insert 3977,Insert 2645,Find 615,Find 381,Insert 192,Find 3320,Find 2365,Insert 229,Find 3816,Find 1202,Find 1329,Find 884,Insert 3845,Insert 1189,Insert 1708,Insert 458,Find 1132,Insert 257,Insert 3375,Insert 1742,Find 192,Insert 2091,Insert 3832,Find 1773,Find 3789,Insert 3306,Insert 2457,Insert 3281,Insert 1120,Delete 1843,Find 221,Delete 2279,Delete 1831,Delete 3738,Find 549,Insert 1460,Insert 466,Insert 450,Delete 1144,Find 2922,Find 266,Find 552,Delete 2259,Insert 3017,Find 2462,Insert 2451,Insert 430,Insert 3924,Delete 2316,Find 2748,Insert 2251,Insert 279,Delete 2190,Insert 2776,Insert 3318,Find 829,Delete 770,Insert 3510,Find 1361,Insert 2885,Insert 3947,Insert 1653,Insert 187,Insert 137,Insert 612,Insert 906,Delete 3680,Insert 359,Delete 1823,Delete 3741,Insert 1202,Find 3691,Find 3710,Insert 2557,Insert 3574,Find 2891,Find 1128,Insert 3568,Insert 3216,Find 935,Delete 2791,Insert 2897,Delete 488,Insert 906,Insert 3499,Insert 2996,Find 3571,Insert 29,Insert 2221,Find 3733,Insert 2714,Insert 1346,Insert 2329,Insert 3801,Insert 1408,Find 3570,Insert 1580,Find 3089,Insert 1854,Insert 1173,Insert 722,Insert 1126,Insert 201,Insert 2281,Insert 1159,Delete 2318,Find 555,Insert 431,Insert 2102,Find 1110,Insert 3616,Find 1590,Insert 181,Insert 2404,Find 3960,Insert 1162,Insert 2655,Insert 544,Find 3583,Insert 3328,Insert 3824,Insert 1303,Insert 1801,Insert 2246,Insert 411,Insert 1543,Find 2569,Find 1052,Insert 3283,Delete 3688,Insert 2352,Insert 1407,Delete 30,Insert 2300,Insert 2350,Insert 3528,Insert 3135,Insert 680,Insert 1150,Find 3449,Insert 2330,Insert 2687,Delete 1159,Find 717,Delete 453,Insert 1116,Insert 2899,Delete 351,Insert 3543,Insert 1544,Insert 595,Insert 3364,Insert 30,Insert 1907,Find 2944,Find 3530,Insert 3418,Find 3684,Delete 3370,Insert 3808,Find 3192,Insert 203,Insert 1469,Insert 432,Insert 3801,Insert 1563,Find 3049,Delete 1466,Find 3313,Find 1210,Insert 2475,Delete 3022,Insert 1906,Find 3244,Find 1613,Insert 25,Insert 434,Find 2793,Find 1265,Insert 458,Find 477,Insert 3109,Insert 606,Insert 442,Delete 1047,Insert 3695,Insert 984,Insert 1820,Find 1779,Insert 547,Insert 2797,Insert 2075,Insert 2055,Find 1215,Find 82,Find 1141,Find 2063,Find 3776,Find 1908,Insert 1306,Insert 474,Insert 1615,Find 3397,Find 2511,Insert 641,Delete 3080,Insert 1085,Delete 746,Insert 3008,Insert 859,Find 2476,Insert 594,Insert 943,Delete 349,Delete 1819,Find 2350,Find 2607,Insert 1515,Delete 3523,Insert 2559,Find 2612,Insert 1154,Insert 384,Delete 3669,Insert 2247,Delete 2274,Insert 437,Find 320,Find 3340,Find 3752,Find 497,Insert 379,Find 268,Insert 3656,Insert 2386,Delete 1123,Insert 75,Delete 3327,Insert 586,Find 2457,Insert 1672,Delete 1481,Find 1352,Insert 512,Insert 1952,Insert 3157,Find 2166,Find 1190,Insert 284,Find 3877,Insert 2688,Find 397,Delete 2360,Find 2592,Insert 3213,Find 2645,Find 392,Insert 3335,Find 3509,Insert 3409,Insert 118,Insert 3422,Find 25,Delete 3346,Insert 3301,Find 2868,Insert 2448,Insert 539,Insert 29,Find 3723,Insert 2972,Find 662,Find 3533,Insert 3227,Find 2659,Delete 2498,Insert 3812,Find 1658,Find 3404,Insert 2420,Delete 1991,Insert 3786,Insert 2972,Insert 160,Find 1669,Insert 1300,Find 2895,Insert 95,Insert 574,Insert 3380,Insert 3865,Find 1526,Delete 1064,Insert 2305,Insert 624,Insert 3999,Insert 1307,Insert 626,Insert 3088,Insert 2109,Find 332,Insert 2067,Insert 3672,Insert 1518,Insert 2013,Find 2124,Find 2642,Insert 1750,Insert 1476,Find 714,Find 3636,Insert 2069,Insert 1784,Insert 413,Insert 1876,Insert 1609,Insert 444,Insert 1484,Insert 2949,Find 3902,Insert 535,Insert 1872,Find 650,Insert 2480,Insert 3838,Delete 1345,Insert 2474,Insert 3800,Insert 2053,Delete 1070,Find 162,Insert 337,Find 366,Insert 2838,Find 2538,Find 3687,Delete 3988,Insert 2304,Delete 2919,Insert 760,Insert 3316,Insert 3922,Insert 2743,Insert 734,Find 243,Insert 1984,Find 3761,Insert 1857,Insert 1658,Insert 2301,Delete 2210,Insert 2673,Find 3406,Find 1668,Find 3587,Find 679,Insert 3953,Find 3380,Find 1611,Find 1345,Insert 2909,Insert 3395,Insert 2404,Insert 2868,Insert 2140,Insert 3997,Insert 105,Find 603,Find 2008,Insert 2518,Delete 3148,Insert 1480,Insert 550,Delete 2285,Delete 2189,Find 2724,Delete 1359,Insert 1319,Delete 656,Insert 698,Delete 1587,Delete 2669,Insert 2281,Insert 2689,Insert 1413,Insert 2655,Insert 83,Insert 2895,Insert 2654,Insert 538,Insert 3907,Insert 1413,Delete 3965,Insert 2505,Insert 1151,Insert 3318,Find 1501,Insert 3638,Insert 2999,Insert 1744,Delete 1172,Insert 3087,Insert 3138,Find 179,Insert 202,Insert 1790,Insert 1887,Find 2376,Find 2631,Delete 640,Insert 1846,Insert 3703,Insert 3379,Delete 1587,Insert 3879,Find 2631,Insert 1715,Insert 640,Find 502,Insert 3752,Find 1762,Insert 3022,Find 346,Find 1875,Insert 1219,Find 1895,Insert 512,Insert 384,Insert 935,Insert 1954,Insert 3240,Find 790,Insert 1430,Insert 826,Find 1622,Insert 2989,Find 2637,Insert 2867,Insert 3535,Find 1178,Find 2101,Insert 2230,Insert 2066,Insert 3738,Find 1782,Insert 96,Insert 3236,Insert 2247,Insert 1780,Insert 2244,Delete 1991,Insert 1919,Insert 506,Insert 1997,Find 466,Insert 3003,Insert 3559,Delete 744,Delete 2824,Insert 1318,Insert 2430,Insert 3258,Find 3052,Insert 1036,Find 848,Delete 3421,Insert 28,Insert 3174,Insert 3124,Insert 353,Find 1431,Find 1468,Insert 2015,Insert 3726,Insert 653,Insert 3821,Insert 1452,Find 3147,Insert 365,Insert 922,Insert 2496,Insert 134,Find 1563,Delete 2369,Insert 2847,Insert 1752,Find 253,Insert 1886,Insert 2303,Insert 3097,Delete 2125,Insert 130,Insert 2854,Find 377,Find 3348,Insert 1787,Insert 2323,Insert 2212,Delete 3389,Insert 2180,Insert 11,Find 3530,Delete 77,Insert 1767,Insert 1296,Delete 1460,Delete 894,Delete 378,Insert 2825,Insert 2013,Find 306,Insert 1050,Insert 1085,Delete 3131,Find 3171,Insert 923,Find 2087,Find 2704,Find 1492,Find 3693,Find 2779,Find 320,Insert 3319,Delete 3337,Delete 3992,Insert 1828,Delete 2021,Insert 2330,Delete 1287,Insert 1435,Insert 3098,Find 1549,Find 153,Delete 171,Insert 417,Find 447,Insert 2663,Insert 331,Insert 1525,Insert 2772,Find 2444,Insert 3201,Find 1693,Insert 3976,Find 339,Find 1389,Insert 3599,Delete 1508,Insert 2661,Find 1938,Insert 1892,Insert 1514,Insert 2028,Insert 1287,Delete 2787,Find 3949,Insert 1976,Delete 3430,Find 85,Delete 1729,Delete 3128,Insert 2644,Insert 1689,Insert 541,Insert 3538,Insert 2431,Insert 3091,Find 1338,Find 1700,Find 585,Insert 2390,Insert 1990,Insert 3243,Insert 3198,Insert 1798,Insert 630,Insert 2237,Insert 3609,Find 2306,Delete 1538,Delete 2670,Find 1228,Find 2540,Find 1693,Find 961,Insert 3298,Insert 1856,Find 399,Insert 1495,Insert 1647,Insert 439,Find 2467,Insert 3889,Find 249,Insert 47,Insert 2246,Insert 3533,Find 1039,Find 3344,Insert 957,Find 692,Insert 552,Insert 3471,Insert 3717,Insert 1520,Insert 2166,Insert 55,Insert 3027,Insert 3733,Insert 2094,Find 744,Find 252,Insert 1642,Insert 3031,Insert 2070,Find 505,Insert 2174,Insert 2473,Insert 2645,Find 2607,Find 3219,Insert 832,Insert 2338,Insert 3879,Insert 376,Insert 3712,Insert 225,Insert 2564,Insert 1614,Find 2690,Find 1145,Insert 2601,Insert 742,Insert 1337,Insert 2372,Find 3802,Insert 2434,Insert 1239,Insert 20,Find 2257,Insert 1116,Insert 3701,Insert 3021,Insert 3909,Find 115,Find 852,Insert 3823,Insert 2143,Insert 3577,Insert 3056,Find 880,Delete 3874,Find 3471,Insert 2971,Insert 391,Insert 549,Insert 2241,Insert 2546,Insert 258,Insert 3842,Insert 1380,Insert 3991,Find 878,Insert 2498,Insert 3655,Insert 2737,Insert 3943,Find 78,Insert 30,Insert 1940,Insert 1211,Find 3742,Delete 2521,Find 357,Find 2066,Find 710,Delete 3855,Insert 1855,Insert 801,Find 1048,Delete 2438,Insert 1786,Delete 2261,Insert 3212,Delete 2825,Insert 1515,Insert 1616,Insert 3566,Insert 2661,Find 734,Insert 3499,Delete 3982,Insert 2648,Delete 2057,Insert 1503,Find 1895,Insert 856,Insert 2128,Insert 926,Delete 2179,Find 1017,Insert 3807,Find 1806,Insert 421,Find 2590,Insert 2569,Insert 1101,Find 3826,Delete 854,Insert 3677,Delete 2552,Insert 3578,Insert 3827,Delete 2661,Find 683,Insert 1924,Find 1209,Delete 3953,Insert 1886,Find 2733,Find 925,Insert 2025,Find 3697,Find 2292,Delete 3262,Find 817,Insert 1374,Insert 1460,Insert 2373,Insert 160,Find 3657,Insert 2356,Delete 1263,Insert 1691,Insert 1042,Find 168,Delete 3587,Find 3074,Find 498,Find 2814,Insert 2146,Find 156,Insert 1367,Find 1573,Insert 1917,Find 3038,Delete 1441,Find 1838,Find 3529,Find 3158,Insert 2085,Delete 390,Insert 119,Find 517,Insert 2920,Delete 1095,Find 590,Delete 3048,Insert 2782,Insert 906,Insert 3361,Insert 3104,Find 264,Insert 3068,Insert 1785,Insert 762,Insert 2935,Delete 3322,Insert 219,Insert 882,Insert 2629,Insert 3547,Insert 2053,Delete 3348,Delete 255,Insert 1457,Insert 1391,Find 2934,Insert 1171,Find 3555,Find 2704,Insert 3494,Delete 3301,Insert 1552,Find 164,Insert 2052,Find 1615,Find 3391,Insert 1775,Find 564,Insert 2157,Find 3052,Insert 3291,Insert 2974,Insert 3917,Delete 2262,Find 2453,Insert 2151,Insert 1864,Delete 2281,Find 571,Find 2695,Insert 901,Insert 2871,Insert 1257,Insert 2190,Insert 1019,Delete 1700,Insert 2230,Insert 443,Insert 2592,Insert 803,Delete 1200,Find 1335,Find 333,Insert 1126,Find 2015,Find 2217,Insert 339,Insert 162,Insert 1640,Insert 2166,Find 1982,Insert 560,Insert 632,Insert 2528,Find 2689,Find 3045,Insert 2715,Insert 3891,Insert 3960,Insert 1797,Find 1944,Delete 3743,Insert 2613,Find 1503,Insert 410,Insert 1670,Delete 2101,Find 668,Find 2046,Insert 375,Find 527,Insert 1054,Insert 492,Delete 3841,Find 2172,Delete 227,Insert 1911,Insert 2579,Find 571,Find 2013,Delete 1524,Insert 3723,Insert 2351,Insert 1682,Insert 2600,Insert 1568,Insert 1587,Insert 3663,Find 2002,Delete 3603,Find 3025,Find 1096,Insert 767,Find 588,Insert 953,Insert 796,Find 597,Insert 2529,Insert 3147,Insert 2694,Insert 3005,Insert 1649,Find 3490,Find 1281,Delete 313,Insert 1438,Insert 1764,Insert 1738,Insert 3160,Insert 1501,Insert 1286,Find 2108,Find 3045,Insert 58,Insert 1676,Find 2624,Find 782,Insert 1774,Find 133,Insert 2981,Find 1180,Insert 350,Insert 299,Insert 1196,Insert 2242,Insert 1808,Insert 2504,Delete 108,Insert 1458,Insert 851,Find 527,Insert 1618,Delete 1227,Insert 241,Insert 347,Insert 1382,Insert 3366,Insert 1154,Insert 1124,Find 2298,Insert 2013,Insert 224,Find 3161,Insert 1696,Find 2284,Insert 3261,Find 3440,Delete 1871,Find 973,Delete 2695,Find 3802,Insert 133,Insert 3098,Insert 3674,Delete 3757,Find 1651,Insert 443,Insert 3296,Insert 1952,Insert 1919,Find 40,Delete 2228,Insert 604,Find 218,Insert 1193,Insert 2973,Insert 3025,Find 1518,Insert 3400,Insert 1864,Delete 2244,Insert 1727,Insert 976,Find 1128,Find 446,Delete 688,Insert 3975,Find 3763,Insert 3434,Find 3663,Find 2594,Find 222,Find 2123,Insert 1295,Find 1161,Find 2578,Insert 3710,Insert 995,Find 2983,Insert 1040,Insert 3781,Delete 2267,Find 816,Find 2628,Insert 1372,Insert 2902,Insert 1620,Insert 2351,Insert 3616,Insert 141,Insert 21,Find 2691,Insert 800,Find 201,Find 966,Delete 3708,Delete 330,Insert 3499,Insert 1907,Insert 3039,Find 1913,Insert 1663,Delete 3026,Find 2603,Find 3715,Find 1276,Insert 1487,Delete 626,Insert 2282,Insert 547,Insert 3664,Insert 823,Find 3871,Insert 3257,Find 534,Find 2664,Insert 2873,Insert 2685,Find 2506,Find 3535,Insert 3330,Insert 2853,Insert 1405,Insert 1792,Find 3474,Insert 2337,Find 3865,Insert 1116,Find 1293,Insert 3858,Find 2910,Find 192,Insert 613,Insert 3911,Insert 1213,Insert 168,Delete 291,Insert 3205,Insert 3303,Insert 2717,Insert 137,Delete 153,Insert 3650,Delete 2713,Delete 3091,Find 794,Insert 3758,Insert 2990,Insert 3957,Find 3138,Insert 2127,Find 310,Find 1652,Delete 1168,Find 716,Insert 2718,Find 1894,Find 942,Find 2320,Insert 2202,Insert 3792,Insert 716,Find 2020,Insert 2442,Find 3360,Insert 2591,Insert 262,Insert 1956,Insert 2853,Delete 568,Insert 670,Find 2071,Insert 2401,Delete 338,Insert 1736,Insert 1536,Delete 3933,Insert 2954,Delete 3069,Insert 3165,Find 674,Insert 2839,Insert 2629,Find 1329,Delete 3152,Insert 1081,Find 1706,Find 962,Find 807,Find 2589,Find 1359,Insert 876,Insert 2153,Insert 307,Delete 293,Insert 3509,Find 2302,Insert 1140,Delete 3416,Find 914,Insert 1021,Insert 3483,Find 99,Insert 3093,Insert 1281,Insert 177,Insert 598,Insert 1221,Find 3527,Insert 27,Insert 1417,Find 756,Insert 351,Insert 75,Insert 3004,Insert 2367,Insert 2605,Insert 2588,Find 2525,Insert 3706,Insert 2096,Delete 2991,Insert 1612,Insert 2642,Insert 3873,Delete 1357,Insert 3119,Insert 3217,Insert 1166,Find 560,Insert 3307,Insert 661,Insert 2828,Insert 357,Insert 163,Insert 10,Find 2529,Find 847,Insert 612,Insert 1025,Insert 873,Delete 3895,Delete 1166,Find 78,Insert 2573,Insert 1114,Insert 2632,Insert 1384,Delete 1901,Insert 1746,Find 3229,Find 462,Insert 117,Insert 2156,Insert 391,Insert 941,Delete 999,Insert 3853,Find 1720,Delete 3426,Insert 3506,Insert 504,Insert 1671,Insert 1024,Insert 1644,Find 3112,Delete 2226,Insert 3612,Insert 2952,Find 1503,Insert 2024,Insert 3916,Find 2618,Insert 2873,Insert 3747,Insert 829,Insert 698,Insert 2494,Insert 1196,Delete 2721,Delete 1077,Find 2174,Find 3739,Insert 3180,Insert 1497,Insert 3615,Find 2195,Insert 917,Insert 3937,Find 2711,Find 93,Find 1467,Insert 2611,Insert 3302,Insert 802,Insert 2248,Find 1252,Find 3715,Insert 344,Insert 657,Insert 1991,Insert 652,Delete 1896,Insert 1528,Find 2751,Insert 1968,Delete 3967,Insert 1699,Insert 3615,Find 2609,Insert 3332,Insert 2942,Insert 2011,Insert 3622,Delete 674,Insert 772,Insert 2793,Find 1780,Insert 2601,Insert 959,Insert 637,Insert 464,Delete 1787,Find 3455,Insert 3439,Delete 3857,Insert 3939,Insert 1934,Insert 723,Insert 1837,Insert 119,Insert 1014,Insert 840,Insert 810,Find 2369,Find 1254,Insert 62,Insert 2768,Find 3117,Delete 3940,Insert 3480,Insert 3821,Delete 3057,Find 1205,Insert 2503,Insert 514,Insert 1835,Find 2906,Insert 422,Insert 1024,Insert 2020,Insert 1845,Insert 189,Find 648,Insert 1814,Find 2839,Find 1507,Insert 3994,Insert 3407,Insert 400,Find 2049,Insert 2511,Find 1167,Delete 3796,Insert 3315,Insert 3970,Delete 3814,Delete 2791,Insert 3252,Insert 883,Insert 1010,Find 2968,Insert 113,Insert 997,Find 313,Insert 905,Find 2105,Find 2013,Insert 1044,Insert 733,Insert 2270,Delete 3803,Insert 3328,Insert 2949,Delete 3336,Find 3108,Delete 981,Delete 497,Find 2144,Delete 3203,Insert 687,Insert 2454,Find 1671,Insert 1385,Insert 175,Delete 3770,Insert 899,Delete 2353,Insert 3302,Find 3328,Insert 2260,Find 2550,Find 2081,Insert 1003,Insert 847,Insert 1901,Insert 3557,Insert 2897,Find 1509,Find 324,Find 509,Find 315,Find 3302,Insert 1581,Insert 2176,Find 1850,Insert 1558,Insert 3461,Find 503,Delete 2994,Find 1214,Insert 3642,Insert 1373,Insert 1465,Delete 2007,Insert 3082,Find 182,Find 2161,Find 790,Insert 1368,Insert 1878,Find 1550,Insert 3836,Insert 961,Find 531,Insert 2604,Insert 3803,Find 2919,Delete 3159,Insert 305,Find 2732,Delete 25,Insert 2142,Insert 464,Delete 115,Insert 2115,Insert 2009,Insert 1639,Find 849,Delete 33,Insert 2678,Insert 3293,Delete 989,Insert 381,Insert 1571,Insert 566,Find 1692,Insert 2096,Insert 2745,Insert 204,Find 3159,Find 2238,Insert 1600,Find 698,Find 747,Insert 265,Insert 1600,Insert 3810,Insert 1147,Insert 1117,Insert 739,Insert 3578,Insert 878,Find 1359,Delete 1382,Insert 2418,Insert 889,Insert 1945,Find 1882,Find 2668,Insert 2480,Delete 858,Insert 708,Find 208,Insert 3389,Insert 2437,Delete 1781,Insert 3019,Insert 1795,Insert 2946,Insert 2648,Find 3516,Insert 833,Insert 3702,Find 3290,Insert 3102,Insert 383,Insert 1675,Delete 764,Insert 3604,Find 447,Insert 87,Find 2048,Find 2826,Delete 2098,Find 365,Delete 3536,Insert 2029,Find 1465,Insert 2119,Insert 3037,Find 3843,Insert 229,Delete 3511,Insert 969,Find 1465,Insert 125,Insert 367,Insert 2027,Delete 3172,Find 1216,Insert 1865,Find 1781,Find 3898,Find 2252,Find 1169,Insert 3284,Delete 3741,Insert 298,Insert 2006,Find 2472,Insert 3186,Find 133,Find 3527,Insert 2595,Find 1271,Insert 514,Find 2210,Insert 2750,Insert 3883,Delete 2334,Find 3386,Insert 1656,Insert 3583,Delete 86,Find 2225,Insert 3536,Insert 1307,Insert 3441,Insert 3857,Insert 3586,Insert 2993,Delete 100,Insert 2211,Insert 2374,Insert 3766,Insert 3321,Delete 2181,Delete 1034,Insert 1189,Insert 2040,Find 1877,Find 606,Find 633,Insert 2393,Insert 1453,Insert 355,Insert 3295,Insert 3008,Insert 1659,Delete 867,Delete 3135,Delete 2861,Delete 2989,Find 1623,Find 3886,Delete 2370,Delete 2920,Insert 218,Find 323,Insert 897,Delete 3685,Insert 420,Delete 1908,Insert 1699,Insert 3847,Insert 145,Insert 868,Delete 1030,Find 3166,Insert 2469,Insert 881,Insert 2598,Find 3065,Delete 1526,Delete 202,Insert 232,Insert 45,Find 933,Delete 2297,Insert 2121,Insert 293,Insert 2819,Delete 315,Insert 517,Delete 792,Delete 3158,Insert 1602,Find 448,Insert 2518,Find 1256,Find 359,Insert 2053,Delete 2271,Insert 638,Find 1969,Delete 167,Insert 3697,Find 851,Insert 3415,Delete 830,Find 2889,Insert 1397,Delete 1336,Insert 3657,Insert 1931,Insert 3797,Insert 991,Insert 2454,Find 679,Insert 2971,Find 3086,Insert 1006,Insert 2393,Delete 735,Insert 2239,Insert 2938,Insert 651,Insert 136,Find 1038,Find 859,Find 891,Find 2552,Find 215,Find 1396,Insert 3359,Find 1235,Find 3880,Find 3869,Insert 2998,Insert 2608,Find 794,Delete 603,Delete 545,Delete 3822,Delete 568,Insert 3892,Delete 736,Insert 3275,Find 3741,Insert 416,Insert 2684,Insert 3832,Find 1909,Insert 2819,Find 3108,Delete 860,Insert 3029,Insert 150,Insert 831,Insert 120,Find 416,Insert 348,Find 1106,Insert 1130,Insert 1271,Find 1149,Insert 2908,Delete 1688,Insert 214,Insert 1583,Delete 3560,Insert 624,Insert 194,Find 2028,Insert 2139,Delete 2600,Delete 2413,Delete 2842,Insert 2213,Insert 3340,Find 2696,Insert 3520,Insert 1992,Insert 2819,Insert 3210,Find 1588,Find 432,Insert 1285,Find 1064,Insert 424,Find 2671,Find 812,Insert 14,Insert 53,Insert 2245,Insert 3429,Insert 3664,Insert 3933,Delete 1034,Insert 2592,Delete 2387,Insert 2810,Find 1090,Find 3188,Find 2477,Insert 3160,Insert 745,Delete 1636,Insert 3620,Find 477,Insert 916,Insert 3838,Insert 2833,Insert 3155,Insert 2069,Find 1769,Insert 1444,Insert 38,Find 2792,Insert 1958,Insert 375,Insert 1519,Delete 772,Insert 3428,Delete 1074,Find 3180,Insert 3482,Insert 984,Find 3575,Delete 1310,Insert 2879,Insert 800,Insert 2786,Find 3883,Find 3600,Find 3451,Insert 1078,Insert 1163,Delete 2900,Insert 643,Insert 555,Insert 1759,Find 1236,Insert 280,Insert 3756,Find 1437,Insert 2919,Insert 2812,Insert 3957,Insert 896,Delete 858,Insert 3468,Find 1660,Insert 3701,Find 2873,Delete 2023,Delete 1397,Insert 1904,Find 2356,Find 556,Delete 1434,Delete 3069,Insert 1152,Find 2987,Insert 2900,Find 3286,Insert 660,Insert 2054,Insert 2258,Insert 28,Find 1492,Find 3182,Insert 947,Delete 2200,Delete 2820,Find 2894,Insert 551,Insert 28,Insert 3983,Insert 30,Find 2799,Insert 3005,Insert 3536,Find 2872,Find 3096,Delete 3919,Insert 774,Find 1705,Insert 3321,Find 595,Find 50,Find 2117,Insert 3656,Insert 2223,Insert 1387,Delete 1323,Insert 3958,Find 744,Delete 2275,Find 2322,Insert 1137,Find 433,Insert 452,Delete 1020,Insert 100,Delete 293,Find 3627,Insert 1554,Insert 220,Insert 2388,Insert 2188,Insert 867,Insert 2448,Delete 496,Insert 3808,Insert 3507,Insert 2133,Find 1326,Find 1288,Find 3336,Find 1411,Insert 2770,Insert 787,Insert 2830,Insert 1967,Insert 2353,Insert 510,Insert 1407,Find 455,Find 153,Delete 2289,Insert 1905,Insert 1794,Insert 1579,Insert 1199,Find 2200,Delete 2168,Insert 3737,Insert 2933,Find 577,Insert 3799,Insert 2138,Delete 3176,Insert 398,Delete 197,Find 894,Insert 1558,Find 1797,Find 3922,Find 1210,Delete 2444,Find 2061,Delete 1112,Find 3282,Insert 3141,Find 2914,Delete 3038,Insert 1683,Insert 2466,Insert 1311,Insert 1758,Insert 2424,Insert 2122,Find 2833,Delete 2161,Insert 2855,Delete 2438,Find 2878,Find 2460,Insert 2321,Find 1917,Find 1358,Find 2997,Delete 2650,Insert 2533,Find 32,Insert 2685,Insert 597,Insert 3539,Delete 3501,Insert 529,Insert 1382,Find 2587,Insert 2664,Find 3898,Find 3081,Insert 3291,Find 2333,Insert 163,Insert 3240,Insert 2617,Delete 1511,Insert 3755,Find 3288,Delete 3067,Find 1713,Insert 3455,Insert 970,Insert 3719,Insert 2582,Find 3481,Find 3644,Find 1891,Insert 1657,Insert 1278,Insert 2786,Find 3835,Find 751,Insert 2063,Insert 3640,Insert 3363,Find 1257,Insert 2695,Insert 768,Delete 3294,Insert 2361,Find 3662,Insert 3854,Insert 3935,Insert 2683,Find 3628,Insert 3755,Insert 922,Insert 1670,Delete 1131,Insert 2136,Insert 2875,Find 1046,Find 3787,Find 3074,Insert 2007,Find 2791,Insert 1730,Insert 516,Insert 317,Insert 596,Find 2651,Insert 773,Insert 3678,Insert 3641,Insert 973,Find 2377,Find 781,Find 770,Find 2718,Insert 3817,Find 1138,Insert 2754,Insert 2641,Insert 2965,Insert 2794,Insert 654,Find 1464,Find 3307,Insert 525,Find 3192,Find 2454,Insert 2921,Find 1443,Insert 1085,Insert 978,Insert 1597,Find 3592,Insert 732,Delete 3435,Insert 1039,Insert 1875,Insert 370,Find 750,Insert 1051,Insert 3048,Insert 150,Insert 2680,Delete 25,Insert 3451,Insert 3528,Insert 537,Insert 3274,Insert 593,Insert 3748,Delete 2295,Insert 748,Find 2157,Delete 2769,Insert 220,Find 1653,Find 155,Delete 986,Insert 712,Insert 1377,Delete 658,Find 3730,Delete 851,Insert 2655,Delete 3029,Find 620,Insert 2718,Insert 2200,Insert 1165,Insert 2969,Insert 1043,Insert 3595,Find 1930,Find 1630,Insert 989,Find 920,Find 3016,Insert 1624,Insert 3044,Insert 1137,Insert 1710,Insert 3629,Delete 1847,Find 1694,Insert 2800,Insert 3887,Insert 329,Find 1075,Insert 2810,Insert 3405,Insert 3612,Insert 1593,Find 3320,Find 3389,Insert 235,Delete 2895,Insert 842,Find 2669,Find 1700,Insert 3545,Insert 1470,Find 3189,Delete 2707,Insert 3175,Insert 1493,Find 495,Insert 1192,Insert 848,Delete 290,Insert 1866,Find 2939,Delete 568,Insert 1632,Insert 82,Insert 3339,Insert 3625,Insert 1600,Insert 3892,Find 1043,Delete 3498,Find 530,Insert 219,Insert 2268,Insert 871,Insert 2755,Delete 2684,Insert 1541,Find 1431,Insert 3209,Insert 3270,Delete 3621,Insert 1941,Find 2590,Insert 3552,Delete 3095,Find 1547,Insert 1945,Delete 3666,Find 119,Insert 2875,Delete 871,Insert 223,Insert 2356,Insert 3369,Insert 2230,Insert 2487,Find 1640,Delete 861,Find 1796,Insert 2166,Find 1671,Delete 197,Find 1457,Find 2060,Delete 1201,Find 748,Insert 1862,Delete 3146,Delete 2497,Insert 2043,Insert 860,Insert 668,Insert 1806,Insert 1960,Insert 18,Find 3786,Find 3730,Delete 1940,Insert 2221,Delete 2442,Insert 3930,Delete 518,Insert 531,Insert 1419,Insert 2469,Insert 935,Insert 3536,Find 1957,Insert 3661,Insert 2164,Insert 2214,Insert 2883,Find 287,Insert 629,Insert 728,Insert 2993,Insert 1643,Insert 125,Insert 183,Insert 91,Insert 2270,Find 962,Find 392,Find 3675,Insert 3983,Find 1375,Delete 1406,Insert 2503,Insert 2539,Insert 3995,Find 3917,Find 3485,Delete 1340,Insert 2949,Find 3141,Find 798,Insert 2401,Insert 1595,Insert 1884,Insert 3739,Insert 3918,Delete 2749,Insert 1297,Insert 2628,Delete 508,Insert 1056,Insert 3839,Insert 3170,Insert 501,Insert 2206,Find 3621,Insert 3936,Insert 1455,Insert 3499,Find 3220,Insert 150,Find 225,Insert 2072,Insert 533,Insert 1539,Find 3774,Find 1565,Find 3121,Delete 2357,Insert 1320,Find 1327,Find 34,Find 3091,Insert 1382,Delete 1596,Insert 1491]
-[Find 826,Insert 49,Insert 3620,Insert 1816,Insert 517,Delete 1676,Find 2943,Insert 93,Insert 3559,Insert 1683,Delete 1123,Insert 1627,Insert 3387,Insert 2784,Insert 3774,Insert 2816,Find 254,Find 430,Insert 2044,Insert 2641,Insert 1059,Delete 1539,Insert 432,Delete 1181,Insert 3730,Delete 1688,Insert 1866,Delete 572,Insert 2170,Insert 3785,Insert 3763,Find 2271,Find 1364,Insert 3699,Find 1926,Insert 3407,Insert 2309,Insert 2518,Insert 3547,Insert 2111,Delete 3743,Insert 3651,Find 3332,Insert 3009,Delete 1223,Insert 2077,Insert 2843,Insert 3108,Delete 975,Insert 816,Insert 1095,Find 249,Insert 2268,Insert 3572,Find 366,Insert 789,Delete 2384,Find 2835,Delete 2736,Insert 1250,Insert 3763,Insert 2337,Find 2976,Insert 3114,Insert 2513,Insert 3025,Insert 2704,Insert 490,Insert 2991,Insert 2850,Insert 3168,Insert 3219,Insert 3709,Insert 195,Insert 3892,Insert 3992,Find 1986,Insert 1933,Find 1322,Find 3447,Find 3728,Delete 1047,Insert 1998,Find 1149,Insert 308,Insert 3198,Insert 2193,Insert 373,Delete 3957,Delete 1153,Insert 1641,Insert 3933,Delete 201,Find 2132,Insert 1048,Find 3615,Insert 2751,Insert 1635,Insert 2444,Insert 2045,Insert 2345,Insert 3355,Insert 417,Find 3265,Find 2652,Delete 2131,Insert 1568,Insert 2933,Find 2899,Delete 1786,Insert 1148,Find 1978,Insert 2731,Find 2875,Insert 2416,Find 1101,Insert 3266,Find 769,Delete 393,Find 3419,Find 1444,Delete 79,Find 3838,Find 1648,Delete 2380,Find 2114,Find 3335,Find 3521,Insert 1018,Find 2644,Insert 795,Insert 1429,Insert 3639,Find 127,Insert 1184,Find 825,Insert 987,Insert 2412,Insert 3070,Find 684,Delete 661,Insert 3724,Insert 3045,Insert 1596,Insert 1581,Insert 3754,Find 1786,Find 1307,Insert 3994,Find 1694,Delete 3846,Insert 2130,Insert 3729,Insert 1085,Insert 2260,Find 3897,Insert 1031,Insert 1715,Insert 1430,Insert 3168,Delete 1633,Insert 623,Find 3620,Delete 3471,Insert 2468,Insert 3398,Insert 494,Find 221,Find 1282,Insert 1411,Insert 3700,Find 3097,Find 3418,Insert 2770,Delete 1219,Find 3801,Insert 75,Find 3342,Insert 769,Find 1006,Insert 3760,Insert 2945,Delete 2451,Find 2994,Find 3989,Insert 2404,Insert 1995,Find 1948,Insert 3070,Insert 2907,Insert 1776,Insert 3595,Insert 3528,Insert 3186,Insert 2308,Find 3076,Insert 3770,Insert 2093,Insert 3456,Insert 3747,Delete 2271,Insert 1556,Insert 1375,Insert 3240,Insert 2068,Find 2854,Insert 880,Insert 3091,Insert 3060,Find 462,Insert 2219,Find 3214,Insert 3736,Find 203,Insert 2829,Insert 3225,Insert 1635,Insert 875,Delete 3743,Insert 2418,Insert 2841,Insert 3820,Find 1334,Insert 3195,Insert 3041,Find 2633,Insert 3810,Delete 2271,Find 3109,Insert 3491,Insert 3375,Find 2137,Insert 570,Find 450,Insert 1360,Delete 2623,Insert 3173,Find 1834,Find 3081,Insert 181,Find 1149,Insert 2027,Insert 1286,Insert 594,Insert 2843,Find 300,Insert 3472,Insert 982,Find 2925,Find 2311,Insert 331,Insert 2671,Insert 1549,Find 3722,Insert 2828,Find 960,Insert 2357,Insert 3912,Insert 155,Insert 811,Insert 1807,Insert 3492,Delete 1282,Insert 3823,Insert 3088,Insert 3289,Find 1139,Delete 2274,Find 3466,Insert 2804,Insert 3466,Find 589,Delete 2998,Find 109,Delete 2635,Find 3092,Find 1754,Insert 675,Find 1784,Insert 2904,Insert 3571,Find 854,Insert 3182,Find 280,Insert 3071,Insert 1007,Find 3226,Insert 1509,Delete 406,Find 3056,Delete 2091,Insert 3822,Insert 1604,Delete 3644,Insert 1711,Insert 25,Insert 1449,Insert 1357,Find 2287,Find 1230,Delete 2511,Insert 3237,Find 1743,Find 909,Insert 2823,Insert 2161,Insert 2964,Delete 496,Insert 3990,Insert 3791,Insert 2728,Insert 1242,Insert 2486,Insert 2254,Insert 1060,Delete 616,Insert 2416,Insert 362,Insert 3985,Delete 3859,Find 465,Insert 2656,Insert 3608,Insert 1310,Find 2969,Insert 3440,Find 3111,Insert 3993,Insert 837,Find 396,Delete 1509,Find 1641,Find 1844,Insert 3336,Insert 3953,Insert 3921,Find 2473,Delete 3574,Insert 3293,Insert 1792,Delete 3842,Find 604,Insert 1170,Find 2075,Find 319,Insert 1898,Insert 430,Insert 3478,Insert 1275,Find 2509,Find 3894,Insert 911,Insert 2870,Find 346,Insert 2337,Find 710,Find 3121,Insert 3787,Insert 1699,Delete 2537,Find 849,Insert 3626,Find 1709,Insert 2972,Find 2553,Insert 2244,Delete 2008,Insert 315,Find 170,Delete 2913,Insert 3306,Find 704,Insert 3957,Delete 337,Insert 2349,Insert 1694,Insert 2967,Delete 640,Insert 3662,Delete 351,Delete 3794,Insert 166,Delete 201,Insert 2128,Delete 448,Delete 1416,Delete 1401,Insert 2573,Find 313,Insert 1585,Insert 2406,Delete 3571,Find 1469,Insert 492,Insert 3097,Find 3798,Insert 1479,Insert 223,Find 3896,Insert 3142,Insert 1569,Delete 1182,Insert 29,Insert 2429,Find 821,Insert 1845,Find 1774,Find 3996,Delete 1312,Insert 2616,Insert 3835,Insert 1746,Insert 3401,Find 3997,Insert 3747,Insert 2086,Insert 3222,Find 3693,Find 2984,Insert 1320,Insert 2897,Insert 1447,Insert 905,Find 910,Insert 773,Insert 1271,Insert 326,Insert 649,Find 3713,Find 3360,Insert 2905,Insert 1466,Find 3382,Delete 80,Insert 2705,Find 888,Find 50,Find 240,Delete 3763,Find 262,Find 3207,Find 3747,Insert 456,Insert 896,Find 3676,Insert 185,Insert 3978,Insert 2113,Find 3859,Insert 2971,Insert 671,Insert 1918,Insert 2519,Find 200,Insert 768,Insert 1348,Insert 3332,Insert 1173,Insert 3493,Find 3921,Delete 279,Insert 2029,Insert 3503,Insert 518,Insert 259,Delete 2239,Find 128,Insert 1100,Insert 3573,Delete 2633,Find 2797,Find 2115,Insert 2728,Insert 2104,Insert 3202,Insert 665,Delete 1499,Insert 1044,Delete 3265,Insert 2753,Delete 1769,Insert 3626,Insert 1697,Insert 1410,Delete 3420,Find 2049,Find 3457,Insert 2840,Insert 788,Insert 3793,Insert 1273,Insert 2230,Insert 1496,Insert 2173,Find 2636,Insert 2091,Insert 755,Insert 2364,Find 885,Insert 3103,Insert 17,Insert 717,Delete 315,Find 1537,Insert 654,Find 133,Find 824,Delete 3023,Insert 598,Insert 2996,Insert 3641,Find 3422,Insert 2371,Insert 2778,Delete 1636,Find 212,Insert 3132,Insert 2958,Delete 1510,Insert 2556,Find 3714,Insert 2575,Delete 841,Insert 1618,Insert 3310,Delete 3580,Find 1342,Insert 371,Insert 39,Delete 428,Find 2197,Insert 963,Insert 1146,Insert 2098,Insert 2658,Insert 3305,Insert 8,Insert 920,Find 2508,Insert 1459,Delete 2592,Insert 3356,Insert 443,Delete 784,Find 2720,Insert 1402,Insert 3682,Find 3639,Insert 3504,Insert 2357,Delete 846,Find 2032,Delete 1191,Insert 3891,Find 759,Insert 3277,Insert 1607,Insert 2471,Insert 3474,Insert 1434,Delete 2848,Find 1879,Find 1765,Insert 1859,Find 171,Insert 684,Find 3863,Find 3125,Insert 691,Insert 401,Insert 2359,Find 2354,Insert 3903,Find 469,Insert 1805,Insert 1272,Find 2046,Delete 2979,Insert 1106,Insert 881,Insert 1854,Insert 1153,Insert 3139,Find 1817,Insert 160,Insert 913,Insert 2734,Insert 2066,Insert 2038,Delete 912,Find 2517,Insert 3662,Find 3225,Find 2246,Insert 2187,Insert 1887,Insert 2923,Delete 3661,Find 1294,Insert 3757,Delete 93,Delete 487,Find 1613,Delete 2846,Insert 2074,Find 150,Insert 2073,Find 2165,Find 3270,Delete 3535,Delete 2710,Find 1935,Insert 467,Insert 687,Insert 2021,Insert 1506,Find 3444,Delete 24,Insert 1174,Delete 3195,Find 1818,Find 709,Insert 2010,Insert 2024,Find 1686,Find 1713,Find 2215,Find 5,Insert 1052,Insert 2809,Find 1898,Find 3420,Delete 1489,Insert 2729,Insert 1090,Insert 526,Insert 3567,Insert 3050,Find 36,Find 3690,Find 1443,Find 2125,Insert 1822,Delete 1069,Insert 347,Delete 2626,Delete 878,Insert 2175,Insert 3547,Insert 3299,Insert 2278,Delete 1750,Insert 253,Insert 2064,Find 3923,Insert 652,Insert 1334,Insert 3147,Find 3630,Insert 1246,Insert 2937,Insert 1591,Delete 2282,Delete 3244,Insert 106,Insert 2536,Delete 2526,Find 2433,Insert 785,Insert 456,Insert 3204,Find 2252,Insert 2399,Find 243,Insert 3554,Find 1834,Insert 3951,Delete 1065,Insert 367,Delete 3144,Insert 799,Insert 419,Insert 600,Find 517,Find 455,Find 3614,Insert 3238,Insert 1101,Insert 2567,Insert 793,Find 1103,Find 722,Insert 81,Delete 3755,Find 2357,Find 1237,Insert 1139,Insert 3207,Insert 3782,Insert 3118,Insert 1229,Insert 736,Insert 308,Find 262,Find 2132,Insert 973,Find 156,Delete 3628,Delete 1770,Insert 3541,Insert 1121,Find 2730,Find 3894,Insert 3769,Find 1538,Find 2608,Insert 962,Find 902,Delete 1002,Find 3849,Find 2745,Insert 1815,Delete 1027,Find 1380,Find 2523,Delete 3876,Delete 1013,Insert 3897,Insert 3193,Insert 3844,Insert 3452,Delete 2112,Delete 1644,Find 518,Insert 1052,Insert 3280,Insert 2379,Insert 3981,Insert 1749,Delete 2234,Delete 3726,Insert 3314,Insert 1503,Insert 305,Find 3791,Insert 2579,Insert 3629,Find 262,Insert 1051,Find 2535,Insert 3298,Insert 105,Delete 1543,Delete 17,Delete 1547,Insert 3487,Delete 1894,Insert 2580,Insert 3117,Insert 1020,Find 3294,Find 2464,Delete 1485,Insert 3529,Find 1070,Delete 1742,Find 216,Insert 3387,Find 1405,Insert 3505,Insert 1813,Find 3002,Insert 3894,Find 1792,Insert 1243,Find 1434,Insert 96,Find 3873,Find 3605,Find 584,Insert 3237,Insert 2105,Find 1613,Insert 3265,Delete 3864,Delete 402,Insert 3649,Find 3549,Insert 2545,Insert 1952,Delete 2784,Insert 2992,Insert 3703,Find 3637,Insert 512,Delete 2585,Delete 1022,Find 1290,Insert 579,Find 3857,Delete 2478,Insert 2605,Find 3923,Insert 1591,Insert 3277,Delete 3532,Find 1069,Delete 1700,Delete 153,Delete 3881,Find 477,Insert 74,Insert 48,Insert 3353,Insert 2459,Delete 2230,Insert 2618,Find 762,Find 3069,Insert 1545,Insert 1327,Insert 3220,Find 3650,Find 2777,Delete 3241,Find 1167,Find 1611,Delete 3987,Insert 2844,Insert 2316,Insert 3649,Find 1258,Insert 3829,Find 3943,Find 355,Insert 1157,Find 3829,Delete 1225,Insert 3368,Find 3809,Insert 3118,Find 3615,Insert 845,Find 248,Insert 1564,Insert 2069,Insert 2667,Find 2091,Insert 2112,Find 2971,Find 2527,Find 2777,Find 3417,Insert 2836,Find 3151,Find 3692,Insert 1854,Delete 3435,Insert 2773,Insert 1255,Insert 3769,Insert 2289,Insert 248,Find 3961,Find 3817,Insert 1835,Delete 224,Find 374,Insert 1848,Find 2333,Find 3817,Find 2105,Insert 1363,Find 136,Delete 3159,Insert 2940,Find 1040,Insert 1623,Insert 3184,Insert 2892,Insert 3224,Insert 2654,Insert 3728,Insert 2606,Insert 1107,Insert 3584,Insert 2336,Insert 3545,Insert 662,Delete 1112,Find 2398,Insert 3433,Insert 1155,Find 263,Insert 1230,Insert 2638,Find 987,Insert 1867,Insert 3370,Insert 3838,Find 2475,Insert 1971,Insert 339,Insert 1586,Insert 2151,Find 3480,Insert 7,Insert 2208,Insert 3780,Find 2414,Insert 421,Insert 838,Delete 271,Insert 75,Insert 2160,Find 1010,Insert 1930,Find 3732,Insert 3724,Insert 3571,Find 2386,Insert 2389,Insert 2147,Insert 1544,Insert 3075,Insert 2826,Insert 3182,Insert 53,Insert 2068,Insert 257,Insert 3782,Delete 2567,Insert 1825,Insert 1817,Find 1939,Insert 3413,Insert 3447,Find 3330,Insert 193,Insert 3872,Insert 251,Find 3464,Insert 1808,Find 1661,Insert 2189,Insert 3507,Insert 2764,Insert 2552,Insert 288,Insert 101,Insert 198,Find 1728,Delete 914,Insert 562,Insert 1786,Find 795,Insert 2964,Insert 3097,Insert 1756,Insert 499,Find 491,Insert 789,Insert 3007,Find 51,Insert 3365,Delete 1812,Insert 2130,Insert 35,Insert 2953,Find 480,Insert 601,Find 3151,Delete 570,Delete 2949,Find 2626,Insert 2410,Insert 1865,Find 1014,Insert 1807,Insert 1342,Find 1974,Insert 313,Insert 2832,Find 1352,Find 3914,Find 1933,Find 1165,Insert 3071,Find 2731,Insert 2507,Delete 674,Insert 992,Delete 876,Insert 2599,Find 296,Insert 2874,Insert 41,Insert 3555,Find 840,Find 2552,Insert 2252,Insert 1579,Insert 2693,Delete 2847,Find 1167,Insert 1689,Insert 1257,Find 2512,Find 2073,Insert 1351,Find 3838,Insert 3744,Insert 2685,Insert 2991,Insert 3526,Insert 1986,Insert 443,Insert 2538,Find 1956,Insert 846,Insert 3355,Find 3711,Insert 1941,Find 2914,Find 2301,Find 3697,Insert 2884,Insert 2231,Delete 1578,Delete 2278,Insert 2033,Insert 153,Insert 1827,Insert 3286,Insert 768,Delete 558,Insert 979,Insert 48,Insert 1728,Insert 313,Insert 1518,Insert 1921,Insert 3477,Insert 3956,Insert 1607,Insert 492,Insert 2868,Insert 3078,Delete 3773,Insert 1499,Find 2000,Insert 31,Insert 1588,Find 3109,Insert 1205,Find 3950,Find 3329,Insert 1507,Find 2699,Delete 1903,Find 3565,Delete 3179,Find 2297,Insert 72,Find 2928,Insert 175,Insert 3056,Find 3655,Insert 3780,Insert 456,Delete 3137,Delete 3940,Insert 923,Find 782,Insert 2903,Insert 2420,Delete 281,Insert 1235,Delete 1716,Insert 1615,Insert 1185,Insert 1114,Find 416,Delete 1929,Delete 3267,Delete 3179,Delete 273,Insert 2982,Insert 2121,Find 1024,Insert 439,Insert 3505,Insert 3950,Insert 3555,Find 434,Insert 872,Insert 487,Find 699,Insert 1692,Insert 2703,Insert 1648,Insert 3983,Delete 486,Find 2789,Insert 3135,Insert 3255,Insert 3887,Insert 3491,Find 2682,Find 1063,Insert 48,Insert 1053,Insert 2135,Insert 974,Find 6,Insert 3436,Insert 723,Insert 3504,Insert 3399,Find 2308,Delete 890,Insert 2716,Insert 2367,Insert 88,Insert 468,Find 1899,Delete 3505,Find 2139,Insert 2958,Find 2599,Find 900,Find 3747,Insert 2654,Insert 507,Insert 730,Find 2277,Delete 397,Find 1329,Insert 3696,Find 135,Insert 2771,Insert 1135,Insert 3932,Insert 1119,Insert 1861,Insert 3772,Insert 50,Delete 3071,Insert 3261,Insert 2672,Insert 2956,Insert 3451,Insert 802,Find 3792,Find 1619,Insert 1837,Find 1078,Insert 1621,Insert 4000,Insert 3086,Insert 2286,Insert 985,Insert 433,Find 1131,Delete 2424,Find 1841,Insert 2295,Insert 2749,Insert 3014,Insert 2196,Find 2562,Insert 3337,Insert 1507,Insert 1103,Delete 64,Insert 214,Insert 1389,Insert 3597,Find 272,Find 1545,Insert 3101,Delete 1037,Insert 882,Insert 3951,Insert 506,Insert 116,Find 3755,Find 782,Delete 498,Delete 1256,Find 186,Find 3340,Insert 354,Delete 3247,Find 459,Find 3189,Find 1927,Insert 1375,Delete 2577,Insert 2035,Find 1021,Insert 1896,Find 1778,Insert 1306,Delete 459,Insert 3206,Insert 1958,Insert 354,Insert 798,Insert 377,Delete 3735,Insert 2465,Delete 3483,Insert 3013,Insert 3895,Find 239,Delete 1288,Insert 2833,Delete 3149,Insert 2957,Delete 1595,Insert 31,Insert 1054,Insert 3913,Insert 1908,Insert 3815,Delete 981,Insert 2061,Insert 115,Find 1506,Delete 3217,Insert 76,Delete 362,Insert 1368,Delete 1893,Delete 3501,Find 2744,Find 393,Insert 3062,Insert 305,Insert 1663,Find 3042,Delete 524,Find 1510,Delete 742,Insert 1490,Insert 527,Insert 2400,Insert 698,Insert 577,Find 3208,Insert 517,Insert 3168,Insert 2760,Insert 356,Insert 3790,Find 3328,Delete 516,Insert 1075,Find 106,Insert 3920,Find 1281,Find 3942,Insert 3479,Insert 1531,Insert 3053,Find 2906,Find 3478,Find 956,Find 167,Insert 969,Delete 2868,Delete 1132,Insert 1932,Insert 3196,Find 210,Insert 2665,Delete 109,Delete 599,Delete 396,Insert 53,Insert 33,Insert 2900,Delete 399,Find 3571,Insert 2791,Delete 1970,Insert 881,Find 3174,Find 309,Insert 2335,Delete 1936,Insert 2901,Insert 2173,Insert 1786,Insert 3267,Find 53,Delete 824,Insert 3415,Find 1438,Insert 1753,Insert 1375,Insert 534,Insert 3543,Find 3297,Find 2165,Insert 390,Insert 694,Find 163,Insert 2984,Insert 2810,Delete 962,Insert 1529,Find 2603,Delete 2465,Insert 3106,Insert 3252,Insert 2463,Find 3121,Find 2323,Insert 2389,Find 1131,Find 3081,Insert 549,Insert 112,Find 2414,Insert 1340,Insert 2768,Find 2622,Find 3641,Insert 51,Insert 3835,Find 3305,Insert 272,Insert 3643,Delete 2593,Find 529,Find 1625,Delete 3551,Delete 2684,Insert 3737,Insert 2036,Insert 308,Delete 2759,Insert 1395,Delete 2895,Insert 2159,Insert 436,Insert 3004,Insert 3794,Insert 1081,Insert 1703,Find 2689,Insert 3617,Find 860,Insert 793,Insert 3508,Insert 1745,Insert 2449,Insert 698,Insert 1310,Insert 3773,Insert 1379,Find 99,Delete 536,Insert 1151,Insert 522,Insert 1223,Insert 2817,Insert 2457,Insert 2037,Insert 3859,Insert 1648,Find 3535,Find 3195,Insert 876,Find 3224,Insert 1222,Find 997,Insert 3261,Delete 3468,Find 561,Find 1232,Insert 807,Find 2837,Find 1934,Find 3698,Find 385,Insert 1036,Insert 72,Insert 2197,Find 2818,Insert 2775,Insert 3127,Find 2561,Insert 1464,Find 3328,Insert 2894,Find 759,Delete 1533,Find 1006,Insert 673,Insert 1657,Insert 2909,Insert 3467,Find 1054,Insert 786,Find 2237,Insert 3,Insert 857,Insert 1526,Delete 3316,Delete 1373,Find 37,Insert 2176,Insert 10,Insert 788,Find 1902,Find 386,Insert 3612,Insert 2465,Find 3432,Delete 1841,Find 2521,Insert 693,Insert 163,Find 3568,Insert 505,Find 3607,Delete 671,Find 2858,Find 1037,Insert 3751,Delete 1911,Insert 3408,Insert 2580,Insert 2727,Delete 1168,Insert 1676,Delete 1647,Insert 3766,Insert 1186,Insert 1799,Find 1622,Delete 1503,Insert 3502,Insert 15,Insert 87,Insert 759,Insert 2545,Insert 304,Find 1300,Delete 1872,Find 369,Insert 1911,Insert 2464,Find 1353,Find 837,Insert 754,Delete 2578,Insert 623,Delete 3500,Insert 2961,Find 3832,Find 2080,Delete 243,Insert 3876,Insert 1593,Find 2331,Insert 2321,Insert 3752,Insert 1487,Insert 3458,Insert 2619,Insert 2302,Insert 2177,Delete 1202,Delete 3844,Find 78,Insert 221,Insert 3337,Find 2886,Delete 2911,Find 79,Insert 3194,Insert 3274,Find 12,Find 3190,Insert 2111,Delete 235,Find 1996,Insert 3629,Insert 2444,Insert 3858,Find 1857,Insert 1042,Delete 2172,Find 244,Find 1310,Find 1235,Insert 610,Insert 1749,Find 239,Find 2544,Insert 734,Insert 2220,Insert 1319,Find 383,Insert 1451,Insert 3603,Delete 350,Delete 3498,Delete 3973,Find 315,Insert 3220,Find 3424,Find 3534,Insert 1028,Find 3108,Insert 3063,Insert 292,Insert 3950,Insert 2762,Insert 1074,Insert 1913,Insert 1124,Insert 3980,Insert 3451,Insert 362,Find 2338,Insert 1452,Insert 2588,Find 105,Find 3058,Delete 858,Find 685,Delete 483,Insert 228,Insert 1884,Find 2781,Insert 763,Find 1268,Delete 103,Find 1255,Insert 3118,Delete 2312,Insert 1347,Find 2308,Insert 865,Insert 1276,Find 405,Find 3305,Insert 3114,Insert 3866,Delete 1966,Find 3010,Insert 2070,Insert 1889,Find 2189,Find 3325,Insert 3384,Insert 3250,Insert 2729,Insert 2609,Find 3906,Find 1828,Insert 1499,Insert 1099,Find 2696,Find 1304,Insert 1732,Insert 1203,Insert 15,Find 3527,Insert 3299,Insert 1391,Insert 3648,Insert 891,Insert 858,Insert 3045,Find 498,Insert 2879,Delete 483,Insert 3879,Find 83,Insert 2665,Insert 2765,Insert 2967,Insert 480,Insert 2267,Insert 1031,Find 3915,Find 1702,Delete 3306,Insert 241,Insert 3702,Find 2428,Insert 716,Insert 1159,Insert 3383,Insert 1197,Find 2183,Insert 481,Insert 2393,Insert 905,Insert 671,Find 902,Insert 1072,Delete 3584,Insert 3583,Find 3719,Find 687,Insert 1378,Find 3807,Delete 509,Insert 2977,Find 2761,Insert 3176,Delete 2653,Find 3837,Insert 512,Insert 2901,Insert 690,Delete 525,Insert 3732,Delete 1725,Find 1469,Insert 3797,Delete 1745,Insert 3640,Insert 15,Insert 3173,Insert 394,Insert 960,Insert 3308,Find 425,Delete 3969,Find 2022,Insert 904,Insert 1907,Delete 3302,Find 1220,Insert 253,Insert 2805,Insert 2435,Insert 3234,Insert 2110,Find 3380,Insert 192,Find 970,Insert 3494,Find 1867,Insert 2037,Insert 3306,Find 2448,Find 3406,Insert 3050,Find 1746,Insert 1765,Insert 3252,Delete 1345,Insert 2676,Insert 2699,Insert 1916,Find 2140,Insert 2468,Find 292,Find 427,Delete 1027,Insert 1675,Insert 264,Find 700,Insert 3830,Delete 1323,Delete 776,Insert 1626,Delete 294,Insert 1923,Delete 1650,Find 3101,Delete 2058,Insert 1776,Delete 2328,Find 770,Find 3278,Insert 2858,Find 250,Insert 1515,Delete 2583,Insert 3735,Insert 3708,Insert 904,Insert 256,Delete 3363,Insert 1736,Delete 224,Insert 1710,Insert 3037,Find 2987,Insert 2972,Insert 2894,Delete 1740,Delete 2137,Insert 2197,Insert 645,Delete 464,Insert 2025,Insert 1765,Find 31,Find 1390,Find 3821,Find 1873,Insert 2673,Insert 3386,Insert 2634,Delete 2726,Insert 452,Insert 2573,Insert 3777,Insert 746,Delete 577,Insert 1770,Insert 2013,Delete 1164,Find 1425,Insert 1327,Insert 476,Delete 832,Insert 3863,Insert 3558,Insert 1861,Find 125,Insert 1701,Insert 606,Insert 3738,Find 2913,Find 948,Insert 1110,Delete 3162,Insert 1186,Find 1982,Insert 2496,Insert 336,Insert 674,Find 277,Insert 2010,Find 775,Insert 251,Insert 899,Find 3709,Insert 534,Insert 318,Insert 3198,Insert 746,Insert 1275,Delete 3370,Find 3554,Find 65,Insert 3406,Find 1806,Delete 3247,Find 2055,Find 2068,Insert 639,Find 3987,Insert 3223,Insert 1202,Delete 2425,Insert 2492,Insert 419,Delete 3839,Insert 3068,Delete 1028,Insert 2399,Find 2656,Insert 3325,Delete 1652,Insert 528,Insert 477,Find 973,Insert 3803,Find 3448,Insert 3788,Find 1651,Insert 388,Insert 2787,Insert 1558,Find 1048,Delete 37,Find 1642,Insert 3829,Insert 718,Delete 435,Delete 388,Insert 1994,Delete 1568,Insert 573,Insert 3508,Delete 3452,Find 3881,Insert 1715,Find 445,Delete 3802,Insert 631,Insert 971,Insert 3985,Delete 1085,Insert 580,Insert 1930,Insert 1335,Delete 3804,Find 3820,Insert 2973,Insert 2369,Find 1374,Find 1442,Delete 854,Insert 3279,Find 3871,Find 2962,Find 1822,Insert 2691,Insert 800,Delete 3498,Insert 2519,Insert 2833,Insert 2418,Find 681,Find 941,Insert 1678,Insert 1595,Insert 1449,Find 1046,Insert 1608,Find 1078,Find 1627,Insert 1535,Find 1561,Insert 2258,Insert 416,Insert 2684,Delete 3043,Insert 3989,Find 1259,Insert 327,Insert 3948,Find 1288,Find 2465,Insert 1618,Insert 2517,Insert 1048,Insert 803,Delete 2997,Find 2933,Insert 2853,Find 2478,Insert 2672,Insert 1866,Delete 2334,Find 1078,Insert 3342,Insert 507,Find 1379,Insert 3787,Find 3054,Find 2095,Insert 1425,Insert 2281,Delete 625,Insert 2617,Insert 2729,Find 3794,Find 2187,Insert 1686,Insert 690,Insert 2491,Find 2724,Insert 1647,Insert 2473,Delete 1450,Insert 2244,Insert 3042,Insert 1533,Insert 1047,Delete 3210,Insert 2293,Insert 2060,Find 2192,Delete 311,Insert 1173,Delete 3949,Find 3688,Insert 2636,Insert 2321,Insert 2329,Find 3724,Insert 3254,Find 641,Insert 2309,Insert 188,Find 2130,Insert 1817,Insert 43,Delete 545,Find 2782,Insert 335,Delete 3145,Insert 1993,Find 3459,Find 3477,Find 2742,Insert 1803,Insert 3670,Find 1950,Insert 923,Insert 2790,Insert 1649,Insert 533,Insert 2038,Insert 975,Find 2956,Find 861,Find 2058,Insert 1261,Insert 3857,Find 1128,Insert 1954,Insert 730,Delete 1365,Find 2870,Insert 643,Find 947,Insert 991,Insert 2668,Find 178,Insert 332,Find 464,Insert 2177,Delete 3536,Insert 2865,Find 1573,Find 3446,Insert 289,Delete 3571,Insert 3595,Insert 1677,Insert 3247,Insert 2065,Insert 2807,Delete 2873,Insert 2323,Delete 560,Insert 3108,Insert 80,Insert 102,Insert 3625,Find 3081,Insert 1158,Insert 3227,Find 2441,Delete 3707,Delete 1764,Delete 2510,Find 2691,Find 3642,Insert 2163,Find 2406,Insert 2910,Find 1530,Delete 2721,Insert 2680,Find 1026,Insert 2639,Delete 2027,Find 2156,Insert 3894,Insert 3376,Insert 398,Find 2925,Insert 2640,Insert 2186,Delete 692,Insert 2836,Insert 1021,Delete 1327,Insert 812,Insert 537,Insert 493,Insert 3991,Insert 2091,Insert 3916,Insert 1746,Insert 210,Insert 3920,Insert 1175,Insert 931,Insert 1472,Insert 1323,Find 254,Insert 2015,Insert 1282,Insert 294,Find 3285,Insert 763,Insert 1620,Find 1725,Insert 266,Insert 2881,Insert 741,Insert 2775,Insert 1188,Insert 1292,Insert 3328,Delete 1895,Insert 1206,Delete 1448,Insert 3299,Insert 1124,Find 956,Find 2674,Insert 3579,Delete 2068,Insert 1238,Insert 1039,Find 2085,Insert 3173,Find 2544,Insert 1211,Insert 2362,Insert 3700,Delete 2141,Find 3892,Find 1185,Insert 870,Insert 2552,Insert 1277,Insert 3478,Insert 3526,Find 1377,Delete 446,Insert 1172,Insert 3214,Insert 2372,Find 397,Insert 3385,Insert 2144,Find 1972,Find 1274,Insert 3391,Insert 32,Insert 2956,Insert 3176,Insert 3967,Insert 1874,Insert 2133,Insert 2762,Insert 1260,Delete 2818,Delete 1564,Find 3588,Delete 24,Find 260,Find 2933,Insert 1849,Delete 1574,Delete 2045,Insert 527,Insert 3536,Insert 2202,Find 3258,Insert 2903,Delete 1123,Find 2824,Find 3446,Insert 1333,Insert 578,Delete 2317,Delete 2049,Insert 3018,Find 2578,Find 1199,Insert 396,Find 2184,Delete 3614,Find 3088,Delete 1450,Delete 2272,Delete 1462,Delete 1789,Insert 1492,Insert 3279,Insert 2534,Insert 1103,Find 2842,Insert 829,Find 2990,Find 1193,Insert 1722,Find 557,Find 1912,Insert 3311,Delete 3195,Find 2454,Find 364,Insert 3266,Insert 1692,Delete 2328,Delete 489,Insert 572,Find 2072,Insert 3684,Insert 887,Insert 1511,Insert 3843,Insert 2549,Insert 197,Insert 2707,Insert 3794,Delete 2821,Insert 1903,Insert 2893,Find 290,Insert 2996,Insert 1383,Insert 970,Insert 2610,Insert 327,Find 199,Insert 403,Insert 2946,Insert 170,Insert 861,Find 1732,Find 3658,Insert 2988,Insert 29,Insert 398,Delete 3939,Insert 1356,Insert 2361,Insert 1082,Delete 2308,Find 3121,Insert 555,Insert 1354,Insert 2988,Insert 1339,Insert 124,Delete 2924,Find 2047,Find 154,Insert 2698,Find 2868,Insert 1028,Find 2811,Insert 627,Insert 3152,Find 840,Insert 2507,Insert 2453,Insert 352,Insert 3420,Delete 0,Find 3553,Insert 3200,Find 2181,Find 2475,Delete 3325,Insert 405,Insert 1459,Find 2507,Insert 845,Insert 2428,Insert 2215,Delete 376,Insert 1264,Find 2948,Insert 2627,Insert 1656,Insert 1017,Insert 798,Insert 3237,Insert 2597,Insert 3636,Find 1513,Insert 243,Insert 2775,Delete 3303,Insert 663,Insert 2606,Insert 3281,Insert 811,Insert 2843,Insert 1575,Find 1999,Insert 546,Insert 2402,Insert 783,Delete 2502,Delete 3189,Insert 3628,Delete 1345,Find 1264,Insert 1353,Delete 201,Insert 468,Delete 243,Insert 2705,Find 1538,Insert 2460,Delete 107,Find 672,Insert 548,Find 2275,Insert 441,Find 2581,Find 2573,Find 267,Insert 3951,Find 286,Insert 512,Insert 181,Insert 1789,Insert 2485,Find 3125,Insert 2157,Insert 2621,Insert 296,Insert 3514,Insert 2975,Insert 2384,Insert 2793,Insert 270,Delete 3491,Insert 3657,Insert 1709,Insert 3009,Insert 1571,Find 3017,Insert 2925,Find 2508,Insert 3286,Find 49,Insert 2426,Insert 2175,Insert 654,Find 789,Insert 3282,Find 3772,Insert 1899,Find 1448,Find 1601,Delete 1776,Insert 1250,Find 1951,Find 869,Find 3695,Insert 3516,Find 155,Find 3766,Find 3366,Find 2038,Find 1329,Insert 6,Find 36,Find 2396,Insert 247,Insert 3801,Find 2879,Insert 437,Delete 1728,Insert 3330,Insert 1671,Insert 1029,Insert 2743,Insert 3528,Insert 1983,Insert 1565,Insert 975,Delete 3239,Find 712,Insert 1698,Find 3341,Find 3229,Insert 1810,Insert 3956,Insert 3315,Insert 2897,Insert 2578,Insert 2793,Insert 269,Insert 2503,Insert 3658,Find 631,Delete 3474,Insert 946,Insert 3436,Insert 3143,Insert 1429,Insert 3241,Insert 187,Insert 1882,Insert 1746,Insert 2638,Insert 2516,Find 1772,Insert 2690,Delete 717,Find 1571,Insert 2756,Find 658,Delete 2429,Insert 3619,Insert 2152,Insert 3540,Find 2484,Insert 2887,Find 1929,Insert 852,Find 1903,Insert 1829,Insert 1917,Insert 1205,Find 1921,Delete 306,Insert 2906,Find 516,Insert 969,Find 3734,Delete 3992,Delete 3801,Insert 3592,Delete 3872,Delete 2349,Delete 1284,Insert 3205,Delete 3144,Delete 326,Find 152,Insert 3003,Insert 3800,Insert 1002,Delete 1250,Insert 97,Find 2136,Delete 1952,Find 1532,Insert 2145,Find 1126,Delete 1453,Delete 2440,Insert 1478,Insert 333,Insert 2721,Find 1015,Find 863,Delete 2292,Find 3868,Insert 1278,Insert 3928,Insert 333,Find 3871,Insert 3001,Insert 1620,Insert 3168,Find 882,Find 1125,Insert 1860,Delete 1400,Insert 3826,Insert 2465,Insert 1824,Insert 2258,Insert 3324,Insert 282,Find 2410,Insert 714,Find 683,Insert 2643,Delete 1423,Delete 695,Insert 815,Insert 1148,Delete 3575,Insert 1394,Insert 3413,Find 2892,Insert 3169,Insert 792,Insert 913,Find 2470,Insert 1024,Insert 807,Find 2854,Insert 3141,Insert 2819,Insert 3938,Insert 852,Delete 563,Find 3956,Insert 575,Find 1194,Delete 1025,Delete 673,Insert 117,Insert 1632,Find 3751,Insert 1584,Delete 671,Insert 3106,Insert 633,Insert 3731,Find 2587,Insert 2811,Insert 2906,Insert 2402,Insert 1595,Insert 2966,Find 3980,Insert 308,Insert 1413,Insert 3921,Insert 399,Insert 2152,Insert 1980,Insert 3840,Insert 3215,Insert 1739,Insert 1307,Insert 2879,Delete 993,Insert 3689,Delete 3845,Delete 1819,Insert 3796,Insert 2763,Insert 790,Insert 3581,Delete 2174,Find 874,Insert 1619,Insert 1457,Insert 1627,Find 3838,Insert 1828,Insert 3282,Insert 2591,Find 2954,Insert 2912,Find 2003,Find 3932,Find 3996,Delete 1994,Insert 1150,Insert 2755,Delete 2818,Insert 1883,Delete 2251,Insert 1627,Insert 2786,Insert 2335,Insert 1875,Delete 560,Delete 2370,Find 1669,Insert 2377,Insert 871,Find 1382,Insert 11,Insert 2469,Insert 1192,Insert 3353,Insert 2947,Insert 1919,Insert 2754,Find 2236,Insert 3816,Find 2186,Insert 2362,Insert 1007,Find 172,Insert 887,Delete 2579,Find 1602,Insert 3386,Insert 517,Insert 903,Insert 3057,Insert 1903,Insert 3853,Insert 2884,Insert 1834,Delete 1092,Find 2081,Insert 2989,Delete 2773,Insert 1081,Insert 2918,Delete 3621,Insert 1554,Insert 105,Insert 3491,Find 781,Insert 175,Insert 2136,Find 1166,Insert 2394,Find 1121,Insert 3387,Insert 385,Insert 2613,Insert 1249,Find 247,Insert 2609,Find 3128,Insert 589,Delete 2259,Find 2659,Find 2587,Insert 1437,Insert 61,Find 1551,Find 1988,Find 3527,Insert 3334,Find 493,Insert 2234,Insert 2188,Find 2315,Insert 1062,Delete 3607,Insert 811,Insert 708,Insert 816,Find 57,Insert 2495,Insert 2682,Insert 1224,Delete 1503,Delete 2198,Insert 2270,Delete 1710,Insert 2157,Insert 3458,Insert 470,Delete 1508,Find 525,Delete 3897,Insert 3330,Find 111,Insert 1658,Find 3919,Insert 1959,Find 2206,Insert 2474,Delete 2644,Insert 3618,Insert 3066,Insert 552,Find 733,Find 1646,Delete 1406,Delete 2161,Find 3974,Find 477,Insert 3390,Find 1701,Insert 1987,Delete 1264,Find 3507,Insert 3522,Find 3936,Find 1676,Insert 386,Insert 2117,Insert 1591,Insert 850,Delete 847,Insert 668,Insert 2718,Find 1878,Insert 328,Insert 1127,Insert 3293,Delete 1164,Find 2888,Insert 2409,Insert 3129,Insert 1349,Find 219,Delete 3241,Insert 3604,Insert 114,Insert 227,Insert 408,Insert 2807,Find 875,Insert 3762,Delete 830,Insert 1321,Insert 2553,Insert 64,Insert 289,Delete 3665,Delete 2245,Insert 1682,Insert 483,Delete 1049,Insert 518,Find 2779,Insert 38,Find 2774,Insert 3505,Insert 2017,Insert 2438,Insert 556,Delete 1329,Insert 3932,Find 3479,Insert 1070,Insert 2629,Insert 2136,Find 818,Delete 2161,Insert 2614,Delete 2359,Find 3688,Delete 3337,Insert 3556,Insert 626,Insert 3080,Find 175,Insert 3834,Insert 3310,Find 330,Insert 585,Find 3118,Delete 2063,Delete 3171,Insert 2555,Insert 873,Find 3885,Delete 2363,Insert 556,Find 3257,Find 3016,Find 2059,Insert 2244,Insert 1345,Insert 3340,Find 1156,Find 2804,Insert 994,Find 1073,Insert 320,Insert 3693,Insert 1595,Insert 20,Insert 1806,Find 2493,Insert 3794,Delete 1251,Insert 2509,Insert 896,Find 178,Insert 3848,Insert 3360,Insert 2417,Insert 3401,Insert 3975,Insert 1589,Find 3050,Insert 3895,Delete 3867,Delete 2487,Insert 1040,Insert 1096,Insert 3077,Find 3082,Insert 1731,Insert 779,Insert 1724,Find 3983,Find 1622,Insert 2994,Find 3255,Insert 3560,Insert 3277,Insert 772,Find 2278,Insert 1155,Find 68,Delete 2969,Insert 271,Delete 1925,Insert 395,Delete 375,Insert 3920,Find 928,Find 3755,Insert 2815,Find 119,Find 372,Insert 3725,Find 3771,Insert 1318,Insert 3127,Insert 462,Insert 2883,Insert 1731,Delete 3615,Insert 1714,Insert 2749,Insert 1719,Insert 1960,Insert 2632,Insert 2823,Insert 272,Insert 3789,Find 2070,Find 93,Insert 3046,Insert 941,Insert 2418,Find 1288,Delete 3427,Find 3074,Insert 1177,Find 671,Find 2968,Insert 220,Insert 1595,Insert 248,Delete 2245,Delete 3736,Insert 3816,Find 2900,Insert 3515,Insert 747,Find 3477,Insert 2063,Insert 888,Insert 2239,Insert 2769,Find 2829,Insert 1345,Delete 2829,Insert 364,Find 3136,Insert 1745,Insert 747,Find 3034,Find 3698,Find 867,Find 1800,Insert 1783,Insert 2317,Find 2214,Find 589,Insert 2237,Delete 3258,Insert 3815,Insert 1967,Insert 3299,Insert 724,Find 1921,Find 436,Insert 2878,Insert 1365,Delete 331,Find 3606,Insert 3953,Insert 3263,Insert 3566,Insert 1504,Insert 1271,Find 221,Find 175,Delete 3493,Insert 1511,Find 2786,Insert 3533,Insert 1305,Delete 563,Delete 1066,Find 1320,Insert 45,Insert 2324,Find 115,Find 1324,Insert 2217,Insert 3343,Find 2619,Find 2173,Delete 2928,Insert 2332,Find 1518,Delete 1976,Find 3317,Insert 3995,Insert 3541,Find 302,Insert 1147,Insert 2269,Insert 2535,Find 3884,Insert 1092,Insert 1937,Insert 2870,Insert 700,Insert 2745,Insert 1372,Insert 2335,Insert 1399,Find 1870,Delete 3589,Find 2107,Delete 2241,Insert 1919,Insert 2817,Find 668,Insert 857,Insert 3398,Insert 1315,Insert 2199,Find 1953,Insert 3537,Insert 1682,Insert 3075,Insert 707,Insert 3143,Insert 368,Insert 2590,Find 3136,Find 870,Insert 1580,Find 3958,Find 3681,Insert 1903,Find 1182,Insert 2651,Insert 823,Insert 391,Insert 34,Insert 342,Insert 2929,Insert 3102,Delete 3717,Delete 2230,Insert 2966,Find 3911,Find 1446,Insert 106,Delete 2259,Delete 2773,Insert 727,Insert 3761,Insert 2834,Delete 1601,Insert 532,Insert 3457,Delete 3543,Insert 3965,Insert 1994,Insert 3870,Insert 3473,Insert 265,Insert 3885,Delete 2814,Insert 2060,Insert 2917,Delete 2978,Insert 1570,Insert 1458,Insert 2944,Insert 2737,Insert 2897,Insert 2874,Insert 2389,Insert 3072,Delete 2659,Insert 149,Insert 1649,Insert 237,Insert 2528,Insert 1503,Insert 480,Insert 3687,Find 3765,Insert 1003,Insert 1871,Find 539,Delete 145,Insert 3614,Delete 2753,Insert 903,Insert 1250,Find 3766,Insert 3002,Insert 2380,Find 1158,Delete 3269,Insert 1447,Find 1513,Insert 2776,Find 1166,Insert 1497,Insert 1426,Delete 2177,Insert 1318,Insert 2457,Insert 3372,Insert 2129,Insert 3436,Insert 1799,Find 3612,Insert 1337,Insert 76,Delete 1747,Insert 1892,Find 2805,Find 3422,Insert 2872,Delete 2166,Insert 1841,Insert 497,Find 1521,Find 3112,Insert 733,Find 1163,Find 2259,Find 698,Delete 1859,Find 1753,Insert 2829,Find 2677,Insert 1831,Find 1358,Delete 3247,Insert 2031,Find 3790,Find 746,Insert 3561,Delete 1938,Find 2352,Delete 2173,Insert 1923,Delete 282,Delete 3109,Delete 5,Insert 2189,Delete 2938,Insert 1128,Insert 2078,Delete 2266,Delete 3406,Find 1417,Insert 674,Delete 1305,Insert 1884,Insert 1246,Find 1824,Insert 1090,Find 848,Find 3698,Insert 3687,Insert 608,Insert 448,Find 65,Insert 243,Insert 62,Insert 3616,Insert 1539,Insert 2016,Delete 3049,Insert 996,Insert 3207,Find 212,Insert 1180,Find 3033,Insert 3578,Insert 3638,Delete 2609,Find 542,Delete 2383,Find 677,Find 2493,Find 1029,Find 360,Insert 907,Find 2631,Delete 589,Insert 3076,Insert 1099,Insert 2218,Insert 3408,Insert 2858,Delete 3171,Delete 2341,Insert 2657]
-[Insert 148,Find 1166,Find 1772,Insert 2042,Insert 3157,Find 1572,Insert 3462,Find 3157,Insert 538,Find 2634,Find 1111,Insert 143,Find 3537,Insert 3246,Insert 1107,Find 2524,Insert 2407,Find 161,Insert 1321,Insert 3525,Insert 3636,Insert 2173,Delete 2301,Insert 516,Insert 1557,Delete 3458,Insert 3497,Find 339,Find 314,Find 2185,Insert 864,Insert 358,Delete 86,Insert 863,Insert 360,Insert 582,Insert 1798,Insert 2677,Insert 1391,Find 2942,Insert 3928,Insert 685,Find 187,Find 266,Insert 756,Insert 319,Insert 2814,Delete 2271,Insert 2752,Insert 597,Insert 506,Insert 3823,Delete 2903,Insert 2625,Insert 3776,Delete 2870,Find 1343,Insert 3461,Insert 2852,Insert 1086,Find 3397,Insert 2822,Insert 1775,Delete 3787,Find 3903,Find 2336,Delete 254,Insert 410,Insert 3167,Insert 845,Find 243,Insert 1735,Find 2104,Insert 3072,Insert 1389,Find 3630,Insert 22,Find 2074,Insert 2557,Insert 2466,Insert 543,Delete 3575,Find 954,Insert 247,Insert 3209,Insert 1514,Insert 2561,Insert 3577,Insert 358,Insert 2772,Insert 1059,Insert 1860,Delete 1902,Insert 2403,Delete 894,Delete 421,Find 2165,Insert 3809,Insert 187,Find 1441,Find 3310,Insert 2020,Delete 1909,Insert 1591,Insert 395,Find 3672,Find 1587,Insert 1990,Delete 3744,Insert 3366,Find 3835,Delete 2399,Insert 3873,Find 546,Insert 3550,Insert 2577,Delete 980,Insert 2953,Find 1282,Insert 3720,Insert 991,Insert 2097,Delete 2355,Insert 784,Insert 2300,Find 760,Insert 1878,Find 2731,Find 26,Insert 2771,Find 3890,Delete 1185,Find 1052,Insert 3295,Insert 2545,Insert 1849,Find 3622,Insert 965,Insert 1309,Find 1312,Insert 1363,Insert 2239,Insert 1532,Find 1233,Find 3202,Insert 634,Insert 1928,Insert 928,Insert 749,Insert 2406,Insert 2581,Find 2791,Insert 2220,Insert 3102,Find 1951,Find 1045,Insert 3653,Insert 2415,Find 257,Find 2080,Insert 2286,Insert 1740,Find 415,Find 1679,Insert 3244,Insert 360,Insert 3669,Find 3572,Find 60,Find 2233,Insert 2752,Insert 2297,Insert 2427,Insert 2600,Find 1628,Find 1029,Insert 2113,Insert 3747,Insert 1180,Find 612,Insert 1914,Insert 764,Delete 3687,Find 1170,Insert 51,Insert 1129,Insert 1041,Insert 2798,Find 2581,Insert 212,Find 2890,Find 3542,Insert 3285,Insert 592,Insert 2615,Insert 2589,Find 1901,Insert 2811,Delete 103,Insert 1502,Insert 352,Insert 160,Find 1454,Insert 2624,Find 200,Delete 1113,Insert 1629,Insert 1220,Find 904,Find 2663,Insert 3781,Insert 146,Insert 1108,Find 2689,Find 116,Insert 2490,Insert 1113,Insert 2031,Delete 2835,Insert 877,Find 2748,Insert 2265,Insert 3448,Delete 3549,Delete 2202,Insert 1278,Insert 1741,Find 1778,Insert 432,Insert 2293,Delete 706,Insert 2049,Insert 1569,Insert 3364,Find 124,Insert 2124,Find 2430,Insert 777,Insert 2484,Insert 3883,Insert 1748,Delete 684,Insert 3819,Find 1692,Insert 3151,Insert 1394,Insert 1957,Delete 2927,Insert 524,Insert 685,Insert 2600,Find 2552,Insert 36,Delete 3247,Insert 2424,Insert 1825,Find 2782,Delete 3620,Delete 3784,Find 1646,Delete 2456,Insert 744,Insert 3113,Insert 2760,Insert 3903,Insert 3312,Insert 796,Find 2741,Insert 2688,Find 2400,Insert 2044,Delete 2741,Insert 2001,Insert 848,Insert 2293,Find 1023,Insert 1897,Insert 2080,Find 751,Find 1113,Delete 1301,Insert 3111,Insert 1225,Delete 2904,Find 2454,Insert 3161,Find 2286,Insert 1622,Delete 1693,Insert 3310,Delete 1892,Insert 1709,Find 3481,Find 251,Find 2963,Insert 1339,Insert 2315,Insert 1089,Find 2132,Insert 2766,Insert 1260,Insert 1337,Insert 2973,Insert 2057,Insert 1003,Find 3937,Insert 2999,Delete 2159,Insert 633,Find 2595,Find 2691,Insert 2848,Find 3955,Delete 1938,Find 3600,Delete 2423,Insert 499,Insert 1256,Delete 3675,Insert 172,Insert 1831,Insert 3726,Delete 1132,Insert 828,Insert 3460,Insert 3280,Insert 1075,Delete 3749,Delete 313,Find 1030,Insert 1042,Insert 1121,Find 1838,Insert 1219,Insert 720,Insert 277,Insert 212,Insert 3399,Insert 332,Insert 2540,Insert 3419,Insert 1072,Find 2388,Insert 464,Insert 2700,Insert 1270,Insert 2724,Delete 3634,Insert 1650,Insert 2520,Insert 549,Find 1649,Insert 1762,Insert 3398,Insert 3093,Insert 1483,Insert 1029,Delete 978,Insert 3348,Delete 1460,Find 1709,Delete 2214,Insert 3963,Insert 1518,Insert 222,Insert 965,Find 773,Delete 711,Delete 3008,Insert 2639,Find 560,Insert 1776,Delete 820,Insert 3245,Insert 673,Insert 241,Find 3427,Insert 3948,Insert 134,Find 1312,Insert 1522,Insert 1316,Insert 3322,Find 1678,Insert 1299,Insert 301,Delete 723,Insert 3726,Find 961,Find 651,Insert 314,Insert 3056,Insert 1029,Delete 97,Find 2464,Insert 3443,Insert 3302,Insert 500,Find 1259,Insert 3081,Find 1088,Insert 985,Insert 1460,Insert 3936,Insert 3754,Insert 246,Find 1455,Insert 243,Insert 1685,Insert 1071,Delete 3550,Insert 3176,Insert 289,Insert 3162,Insert 501,Insert 789,Insert 747,Find 2030,Insert 1025,Find 3932,Delete 1141,Insert 3069,Find 138,Find 968,Insert 3992,Insert 3671,Insert 1621,Insert 3090,Insert 557,Delete 2072,Insert 2784,Insert 337,Delete 3760,Insert 641,Find 2192,Find 511,Insert 2040,Find 782,Delete 3992,Find 2230,Find 3141,Insert 838,Delete 646,Insert 303,Find 2994,Insert 3225,Find 1365,Find 1519,Find 814,Find 1323,Find 2466,Insert 1079,Insert 437,Find 109,Delete 3862,Insert 3194,Insert 2892,Delete 576,Delete 2412,Insert 1435,Find 807,Find 2601,Insert 3683,Find 1833,Insert 999,Find 3710,Insert 2065,Insert 455,Delete 1261,Insert 1019,Insert 1554,Insert 1343,Find 3068,Insert 3514,Find 2282,Delete 2274,Delete 2540,Insert 3593,Delete 3668,Insert 1183,Insert 2616,Delete 2324,Delete 1835,Find 3322,Find 165,Find 3084,Insert 2425,Insert 1104,Insert 3138,Find 2206,Insert 376,Insert 2613,Insert 474,Insert 1504,Insert 3253,Insert 3654,Insert 3569,Delete 2574,Insert 1478,Insert 1296,Insert 3186,Find 2261,Insert 2473,Insert 1144,Insert 1871,Insert 3092,Insert 3089,Insert 173,Insert 1433,Insert 2051,Insert 3495,Insert 3753,Delete 801,Delete 1655,Insert 526,Insert 3979,Insert 1574,Insert 928,Insert 2589,Delete 1415,Find 122,Delete 1279,Insert 3248,Find 569,Insert 1400,Find 3091,Insert 2151,Insert 2781,Insert 3357,Insert 429,Insert 3135,Find 926,Delete 3988,Insert 3357,Insert 2747,Insert 2131,Insert 2634,Find 34,Insert 3381,Insert 2380,Insert 2256,Find 3126,Insert 1430,Insert 1780,Insert 2816,Insert 3182,Insert 3315,Find 1175,Insert 3057,Insert 2452,Find 1875,Insert 3316,Find 1926,Delete 3374,Insert 3547,Insert 1693,Insert 2939,Insert 3226,Insert 3725,Find 1162,Delete 1693,Insert 1828,Insert 1643,Delete 1287,Insert 1243,Insert 703,Insert 1748,Insert 1957,Insert 1293,Find 330,Insert 3981,Find 2603,Find 17,Insert 52,Delete 153,Find 2729,Delete 2459,Find 2376,Find 950,Find 1653,Insert 3175,Insert 2357,Insert 3553,Delete 1693,Insert 2526,Insert 644,Insert 2753,Insert 2580,Find 3072,Find 2470,Find 627,Insert 3550,Insert 311,Insert 3559,Insert 1596,Insert 657,Insert 2590,Insert 1059,Find 1799,Insert 1720,Find 940,Insert 2628,Insert 2645,Insert 707,Insert 687,Insert 1781,Insert 2922,Find 1947,Find 485,Delete 561,Insert 1234,Insert 1841,Insert 1965,Insert 1128,Find 875,Find 869,Insert 3723,Insert 3115,Delete 30,Find 313,Find 1547,Delete 1747,Find 2460,Insert 600,Insert 2008,Find 1474,Find 1473,Insert 18,Insert 1440,Insert 1266,Find 1066,Insert 1109,Insert 3183,Find 1639,Insert 2357,Insert 3553,Insert 3516,Insert 1882,Insert 1741,Insert 2913,Insert 57,Insert 2411,Delete 328,Insert 943,Insert 784,Find 3081,Insert 1121,Find 1572,Delete 393,Insert 1753,Insert 1018,Insert 3225,Insert 931,Find 1373,Find 532,Find 107,Find 1948,Find 1716,Insert 2866,Find 941,Find 2887,Insert 2487,Delete 149,Find 3568,Find 118,Delete 2983,Find 100,Insert 3393,Find 2166,Insert 3713,Insert 2132,Delete 549,Insert 3325,Delete 2987,Insert 2761,Insert 845,Find 860,Find 2894,Insert 3068,Find 52,Insert 2595,Insert 883,Insert 3615,Insert 3749,Find 3603,Find 387,Insert 2279,Insert 3038,Insert 2276,Insert 1840,Delete 1754,Insert 3626,Find 1351,Insert 598,Insert 3470,Find 1486,Insert 666,Insert 3797,Insert 3896,Delete 3283,Insert 740,Find 2111,Insert 1175,Insert 1427,Insert 555,Insert 1989,Find 1957,Insert 2057,Insert 51,Delete 3044,Insert 966,Insert 2138,Find 3737,Insert 3065,Find 2002,Insert 1896,Find 3767,Insert 310,Find 1738,Delete 827,Insert 1817,Insert 1809,Find 208,Insert 2394,Insert 2568,Find 2767,Insert 156,Find 879,Find 3577,Find 367,Find 2700,Find 1208,Insert 2266,Insert 530,Delete 229,Insert 52,Find 3507,Insert 984,Find 596,Delete 2869,Insert 1032,Find 1180,Delete 621,Insert 2192,Find 788,Delete 2319,Find 3719,Find 1716,Insert 2194,Find 1854,Insert 2376,Find 2074,Find 2745,Find 496,Find 3988,Insert 1189,Insert 1483,Delete 3634,Find 213,Delete 561,Insert 652,Insert 3501,Insert 3121,Find 3860,Insert 243,Insert 1183,Insert 3390,Insert 185,Insert 1125,Insert 3313,Insert 3586,Insert 442,Insert 477,Insert 1039,Find 3138,Insert 1781,Insert 3115,Insert 2700,Delete 1672,Find 1011,Insert 3835,Delete 77,Insert 2112,Find 659,Insert 2822,Delete 3413,Find 1980,Find 1264,Delete 2643,Insert 1977,Find 2587,Insert 3607,Insert 2660,Insert 3344,Find 2051,Insert 2052,Insert 3540,Insert 1975,Insert 2652,Find 499,Insert 1932,Insert 2980,Delete 2089,Insert 427,Delete 2095,Insert 2577,Find 3866,Insert 1350,Insert 1177,Delete 3514,Insert 355,Insert 3511,Insert 3531,Find 3744,Delete 2463,Insert 1062,Insert 2494,Find 3621,Find 1652,Insert 3945,Find 1922,Insert 3102,Insert 1352,Insert 1549,Find 1507,Delete 2454,Delete 2014,Insert 705,Insert 501,Find 1520,Find 912,Insert 1485,Insert 3536,Insert 2142,Insert 662,Insert 237,Delete 3797,Insert 3686,Find 2850,Find 1640,Find 3811,Insert 1105,Insert 1859,Insert 3533,Insert 1584,Find 1872,Find 1031,Insert 1679,Insert 2333,Insert 1639,Find 188,Insert 2372,Insert 12,Insert 2204,Insert 1562,Insert 1084,Insert 2468,Find 81,Delete 1938,Insert 3276,Insert 1191,Insert 2624,Find 823,Delete 811,Delete 538,Find 3474,Insert 3901,Delete 3617,Insert 1523,Insert 3458,Insert 531,Insert 2638,Insert 425,Find 3745,Insert 689,Find 2939,Insert 3930,Find 1794,Delete 3415,Insert 461,Insert 1686,Insert 2479,Insert 241,Insert 47,Insert 2572,Insert 887,Insert 53,Find 2261,Insert 2698,Insert 3064,Insert 3788,Insert 2941,Insert 2176,Find 2161,Find 788,Insert 2884,Insert 1094,Find 2801,Insert 2710,Find 1476,Find 2739,Find 1799,Insert 3419,Delete 2044,Insert 3944,Insert 1491,Find 1915,Find 1580,Insert 3337,Insert 2890,Insert 1436,Insert 1452,Delete 3666,Find 3454,Find 3607,Insert 1913,Find 1202,Insert 708,Insert 380,Insert 862,Insert 297,Insert 2076,Insert 1175,Insert 91,Insert 3849,Insert 1364,Find 1358,Insert 2324,Find 3352,Find 2999,Insert 3944,Find 3296,Delete 3611,Find 3482,Insert 1857,Insert 2411,Insert 1099,Delete 2676,Find 2771,Insert 3548,Insert 3601,Insert 564,Insert 866,Insert 1387,Insert 235,Delete 1432,Find 2588,Find 1630,Delete 2116,Delete 3910,Find 165,Insert 3930,Insert 1789,Insert 2141,Insert 3187,Insert 225,Find 3333,Insert 1854,Insert 1528,Insert 2945,Delete 2315,Insert 715,Insert 707,Find 3967,Insert 1216,Delete 2831,Delete 1172,Delete 112,Find 3391,Find 1548,Delete 2163,Find 3156,Insert 3795,Insert 3688,Delete 90,Insert 2881,Insert 2956,Insert 653,Find 242,Insert 3143,Find 3797,Insert 2343,Insert 2559,Insert 993,Find 2160,Insert 3238,Insert 1766,Insert 1712,Insert 1345,Insert 560,Find 1789,Insert 2068,Find 401,Insert 801,Insert 1261,Insert 3331,Find 312,Find 1428,Insert 519,Insert 3805,Insert 3824,Delete 434,Find 593,Find 3508,Find 226,Insert 2952,Insert 2495,Insert 1752,Find 954,Insert 1744,Find 3665,Insert 1137,Insert 3032,Insert 3844,Insert 2335,Find 917,Insert 52,Insert 2862,Delete 813,Find 1283,Insert 829,Insert 252,Delete 1162,Find 2279,Insert 3858,Insert 299,Insert 3728,Find 926,Insert 3931,Insert 2353,Find 2214,Find 1576,Insert 3201,Delete 77,Delete 2599,Insert 3870,Insert 548,Delete 146,Insert 184,Insert 1342,Insert 3604,Insert 3116,Insert 990,Delete 2905,Find 886,Insert 3583,Insert 3630,Find 1152,Insert 2395,Insert 2095,Find 3383,Find 1426,Delete 1026,Delete 2886,Delete 966,Find 3026,Find 2139,Insert 1427,Insert 2620,Insert 1666,Insert 2665,Insert 2146,Delete 912,Delete 1619,Insert 2054,Find 3734,Insert 2761,Find 978,Insert 2049,Find 1216,Delete 3906,Insert 2898,Delete 4,Find 3235,Insert 227,Delete 1223,Insert 304,Find 3733,Insert 3305,Insert 656,Insert 904,Insert 3876,Find 2717,Insert 1363,Insert 3378,Delete 1381,Find 1461,Insert 2195,Insert 1406,Find 1929,Find 3170,Insert 220,Delete 2418,Insert 3162,Insert 1529,Delete 730,Insert 3794,Insert 1957,Delete 3107,Delete 1983,Insert 3499,Insert 2418,Delete 2383,Find 1252,Insert 1629,Find 72,Find 3904,Find 191,Insert 2491,Insert 2624,Insert 217,Find 479,Insert 3160,Find 2864,Insert 4000,Insert 2693,Delete 1509,Find 765,Insert 3587,Insert 2963,Insert 1616,Insert 3871,Insert 649,Insert 2901,Insert 3717,Insert 1426,Find 3224,Insert 2090,Find 3242,Insert 3408,Find 1094,Find 2832,Insert 480,Insert 1859,Find 1413,Delete 2705,Insert 143,Find 3033,Insert 3360,Insert 2225,Insert 2257,Insert 88,Find 2320,Delete 1885,Insert 2480,Find 3421,Insert 2113,Insert 948,Delete 541,Find 2751,Insert 1356,Insert 1118,Insert 1810,Insert 53,Insert 1235,Delete 2859,Find 3955,Insert 3928,Insert 2053,Insert 941,Find 3324,Insert 411,Insert 3950,Insert 3646,Find 3396,Find 2898,Insert 1167,Insert 365,Find 864,Find 2711,Delete 1829,Insert 2658,Find 1004,Delete 1345,Insert 2775,Insert 3129,Insert 2879,Delete 2696,Insert 1299,Insert 108,Find 2187,Find 189,Insert 3821,Insert 1836,Insert 2117,Find 3795,Delete 1991,Insert 1552,Find 3189,Insert 2558,Find 2959,Find 1948,Insert 1555,Insert 2665,Insert 2376,Find 2308,Insert 2987,Delete 3270,Insert 3147,Insert 3586,Find 2733,Find 2183,Insert 471,Insert 2189,Insert 2596,Insert 576,Insert 2545,Insert 2027,Insert 582,Insert 241,Delete 3562,Find 276,Insert 1513,Insert 2099,Find 1516,Find 3130,Find 3050,Find 82,Find 1557,Insert 3559,Find 3679,Find 978,Delete 403,Insert 3572,Insert 1298,Find 2316,Delete 3047,Find 1501,Insert 2350,Insert 3459,Insert 3374,Find 3272,Find 2941,Insert 2280,Insert 3203,Insert 1292,Find 1268,Delete 1682,Insert 2315,Insert 2647,Find 805,Insert 1728,Insert 439,Delete 2772,Insert 1115,Insert 690,Insert 231,Insert 3806,Insert 2629,Insert 1178,Insert 1728,Find 2090,Find 3551,Insert 1172,Insert 3114,Find 1187,Insert 1326,Insert 3353,Insert 2776,Find 1665,Insert 2250,Find 1765,Insert 1440,Find 954,Find 3078,Insert 817,Insert 463,Delete 2545,Insert 2393,Insert 2888,Insert 943,Insert 202,Insert 339,Delete 1732,Delete 3548,Delete 1259,Insert 2727,Insert 1449,Find 1042,Delete 60,Delete 2978,Find 764,Find 1103,Find 3033,Insert 4,Find 2572,Insert 1469,Delete 1236,Find 2113,Find 1694,Delete 1910,Insert 3168,Insert 1473,Insert 3294,Insert 1264,Insert 764,Insert 3794,Insert 1210,Insert 2796,Insert 2361,Insert 452,Find 1789,Insert 3911,Find 3852,Insert 2387,Insert 1701,Find 251,Insert 1467,Insert 409,Insert 232,Insert 1081,Insert 3776,Insert 3821,Find 2145,Insert 1535,Insert 4000,Insert 1463,Find 430,Delete 3743,Insert 1021,Insert 1123,Insert 75,Delete 1782,Find 3746,Insert 2405,Insert 2080,Insert 1042,Find 3061,Insert 3917,Insert 2455,Find 1161,Insert 766,Find 1574,Insert 858,Insert 2054,Find 2211,Insert 1987,Insert 649,Insert 178,Insert 3931,Find 2573,Insert 1991,Delete 1604,Find 2995,Find 3305,Insert 101,Insert 3660,Insert 1695,Insert 2332,Insert 3665,Insert 1055,Insert 1221,Insert 300,Delete 1536,Find 2142,Delete 1913,Insert 365,Find 1055,Insert 2835,Insert 1062,Find 3353,Find 2286,Delete 3254,Find 1433,Insert 3481,Insert 3977,Delete 2180,Insert 649,Find 324,Insert 424,Find 2105,Find 3449,Insert 270,Insert 359,Delete 2860,Insert 2842,Find 82,Insert 547,Insert 3727,Insert 3141,Insert 3439,Find 2531,Insert 3053,Insert 227,Insert 1767,Insert 1067,Insert 1399,Delete 685,Find 257,Insert 2600,Find 2753,Find 2205,Insert 95,Insert 676,Insert 3354,Delete 1007,Find 597,Find 3853,Insert 687,Insert 206,Find 2323,Insert 2929,Find 2877,Delete 900,Insert 3210,Find 246,Insert 1575,Find 1177,Insert 638,Insert 2928,Insert 1664,Delete 262,Insert 3739,Insert 0,Insert 1275,Insert 1807,Insert 3228,Find 3438,Find 3766,Insert 3319,Insert 3348,Insert 2681,Find 2874,Insert 2733,Insert 1377,Delete 272,Delete 1922,Insert 3613,Insert 3012,Insert 3772,Insert 1350,Find 3709,Insert 1457,Delete 3806,Insert 53,Insert 580,Delete 3546,Insert 1918,Insert 554,Insert 236,Find 843,Delete 2473,Insert 2689,Insert 1535,Insert 3861,Find 3861,Insert 322,Insert 3094,Insert 1038,Find 756,Insert 1748,Insert 3976,Insert 3853,Insert 654,Delete 2971,Find 836,Find 1328,Insert 3304,Insert 1436,Find 2240,Insert 1608,Insert 713,Insert 1319,Insert 764,Delete 2901,Find 3251,Insert 1695,Insert 1624,Delete 3450,Insert 1755,Insert 810,Insert 2358,Delete 3904,Insert 2916,Insert 50,Find 3844,Delete 1337,Insert 502,Insert 950,Insert 3459,Insert 151,Find 1386,Delete 2326,Find 1250,Delete 1744,Find 2479,Insert 2253,Insert 1031,Delete 2073,Insert 1700,Insert 3718,Find 3688,Insert 106,Insert 3525,Delete 2710,Find 3861,Insert 3119,Delete 1443,Insert 1654,Find 3223,Insert 2308,Insert 1350,Insert 201,Insert 3084,Find 2697,Insert 2523,Delete 2585,Find 474,Delete 3494,Find 1139,Find 3414,Insert 3837,Insert 3039,Insert 2083,Insert 292,Find 2778,Insert 608,Delete 1278,Insert 3304,Delete 534,Find 646,Insert 752,Delete 28,Insert 3759,Find 2783,Find 2775,Insert 1399,Insert 1802,Insert 2590,Insert 977,Find 531,Insert 2457,Delete 474,Insert 1489,Find 2357,Find 2315,Delete 3934,Insert 1950,Insert 3316,Insert 2461,Find 3489,Insert 285,Insert 487,Delete 3616,Delete 1150,Insert 390,Find 573,Insert 3646,Insert 2780,Insert 608,Find 2369,Find 147,Find 2895,Insert 2315,Delete 3902,Insert 2828,Delete 2610,Insert 3342,Insert 2691,Find 2313,Find 2018,Insert 2930,Insert 978,Find 679,Insert 426,Find 1787,Insert 3605,Insert 3177,Find 899,Find 505,Insert 3485,Find 3320,Find 3513,Delete 3470,Insert 3430,Insert 416,Insert 2580,Delete 2948,Find 411,Delete 1813,Insert 1803,Find 1902,Find 2254,Find 3107,Insert 3692,Insert 179,Insert 814,Insert 2853,Find 3956,Insert 1444,Find 206,Insert 1478,Delete 187,Find 3785,Insert 2100,Insert 3726,Insert 1058,Insert 500,Delete 2057,Insert 8,Insert 863,Find 1400,Delete 498,Insert 3118,Delete 2356,Find 2983,Find 308,Find 2424,Insert 252,Insert 1848,Insert 1474,Find 1661,Find 2945,Insert 1551,Find 566,Delete 483,Find 3980,Insert 325,Delete 3268,Delete 1395,Find 285,Delete 547,Find 3995,Insert 1012,Insert 2382,Insert 2825,Find 3068,Insert 172,Insert 3644,Insert 1309,Find 1561,Insert 602,Find 1629,Find 2762,Insert 1687,Find 2969,Find 18,Delete 3683,Insert 1524,Insert 3634,Insert 895,Find 2255,Delete 3076,Insert 2033,Insert 2242,Find 2762,Insert 3321,Find 1652,Insert 138,Insert 1591,Delete 1025,Insert 3952,Find 1768,Insert 3783,Find 3141,Find 616,Find 168,Insert 3625,Find 1989,Insert 2960,Find 1033,Find 1974,Insert 3741,Find 340,Find 1572,Insert 3256,Insert 3686,Find 2565,Insert 3971,Insert 3755,Insert 2740,Find 1789,Insert 1722,Insert 1812,Find 3155,Insert 1597,Insert 3843,Find 2644,Insert 387,Insert 1607,Insert 1221,Insert 146,Insert 3190,Insert 64,Insert 2035,Delete 3257,Delete 1756,Insert 1489,Insert 899,Find 346,Find 1405,Insert 3265,Find 425,Delete 3202,Insert 3406,Find 2361,Find 353,Insert 9,Insert 2393,Insert 810,Find 1176,Insert 1389,Delete 3414,Insert 2553,Delete 3965,Find 3686,Insert 1657,Find 2844,Find 3273,Find 314,Find 3002,Insert 3751,Insert 2809,Insert 1494,Insert 1799,Find 1413,Find 1222,Insert 2081,Find 19,Find 350,Delete 2196,Insert 3587,Insert 146,Insert 1010,Insert 3054,Insert 1786,Insert 399,Insert 503,Insert 1082,Insert 3168,Insert 3476,Insert 2573,Insert 2370,Insert 2889,Insert 3334,Insert 2514,Insert 2437,Find 3577,Insert 3492,Find 384,Find 3420,Insert 651,Find 3671,Find 1512,Insert 3985,Insert 1613,Insert 1149,Find 2843,Delete 601,Find 1969,Find 130,Insert 2816,Insert 2527,Insert 2675,Find 3401,Insert 1359,Insert 3150,Insert 2922,Find 3571,Delete 1937,Find 2182,Insert 1648,Insert 3564,Insert 423,Delete 2525,Find 2655,Insert 810,Insert 3645,Insert 2601,Insert 2712,Find 1864,Insert 1224,Delete 951,Find 2018,Insert 1540,Insert 2958,Insert 2863,Insert 3529,Insert 1368,Find 823,Delete 2307,Delete 1501,Insert 3396,Delete 3317,Insert 2702,Insert 523,Insert 1577,Insert 1435,Insert 1434,Find 1305,Insert 2829,Insert 1572,Find 3237,Insert 688,Find 1011,Insert 2232,Delete 1834,Insert 3306,Delete 78,Insert 3591,Insert 2215,Find 1410,Find 944,Insert 292,Insert 3427,Insert 2786,Insert 277,Insert 1710,Find 1416,Insert 1818,Insert 2357,Insert 3008,Insert 2089,Delete 499,Insert 744,Delete 2193,Find 2459,Find 3549,Insert 444,Find 1922,Find 820,Insert 3258,Insert 392,Find 3721,Insert 1881,Delete 1275,Insert 3629,Delete 2576,Insert 1699,Insert 3756,Insert 148,Delete 1868,Insert 1501,Insert 3820,Find 3829,Find 1657,Find 3306,Insert 2740,Insert 826,Insert 2762,Insert 2073,Insert 1680,Insert 2177,Find 1967,Insert 2793,Insert 1313,Find 35,Insert 2747,Find 2248,Find 569,Find 2434,Delete 511,Insert 1291,Insert 3301,Insert 605,Insert 1694,Insert 3102,Insert 372,Find 3924,Insert 564,Insert 3368,Delete 3841,Insert 2420,Insert 1886,Insert 3825,Find 668,Find 594,Delete 504,Insert 2270,Insert 2060,Find 3224,Insert 2971,Find 95,Delete 1038,Delete 312,Delete 735,Insert 1445,Insert 3822,Insert 68,Insert 1598,Insert 2448,Insert 1092,Insert 156,Delete 2451,Insert 3287,Insert 1736,Insert 3974,Find 1632,Insert 1969,Insert 1696,Delete 2518,Insert 3368,Find 2631,Insert 3544,Insert 3608,Insert 857,Find 465,Find 1774,Insert 852,Find 3000,Insert 2352,Find 1339,Find 3857,Insert 2849,Find 775,Delete 3928,Insert 2419,Find 983,Insert 1346,Delete 1040,Insert 1773,Insert 3319,Insert 473,Insert 926,Find 3818,Find 3937,Find 3266,Insert 939,Insert 2535,Delete 2267,Insert 985,Insert 3993,Delete 1482,Insert 3417,Find 3110,Insert 3193,Insert 406,Insert 3734,Delete 1629,Find 3623,Insert 2602,Insert 1516,Insert 2284,Insert 763,Insert 1946,Delete 352,Find 2053,Insert 1421,Delete 2866,Find 3697,Find 663,Insert 1545,Insert 2299,Insert 2242,Insert 3187,Find 3628,Insert 3841,Insert 1432,Delete 3840,Delete 1571,Delete 3958,Insert 1160,Insert 3409,Insert 3872,Insert 634,Find 1424,Delete 2101,Insert 2750,Insert 3672,Insert 2447,Delete 108,Insert 683,Insert 424,Insert 3434,Find 3406,Find 279,Delete 2205,Insert 1550,Insert 610,Delete 3998,Insert 2393,Insert 1316,Insert 1924,Insert 532,Delete 2014,Insert 1892,Delete 743,Insert 2155,Insert 1528,Insert 1967,Insert 2361,Delete 2029,Find 3529,Delete 3726,Insert 606,Insert 1709,Insert 3603,Insert 971,Delete 1095,Insert 3806,Delete 2953,Delete 3288,Find 3545,Insert 676,Insert 2513,Insert 486,Insert 3653,Insert 3479,Insert 1537,Find 1118,Insert 3710,Insert 3994,Insert 2727,Find 3781,Insert 3449,Find 3441,Insert 3893,Insert 2691,Find 227,Insert 3919,Delete 2866,Delete 752,Insert 2721,Find 3681,Insert 2680,Find 1777,Insert 2713,Delete 3409,Insert 2962,Insert 3384,Insert 899,Find 3197,Delete 3776,Find 2376,Insert 3476,Find 888,Find 1539,Insert 3053,Find 3160,Insert 3673,Delete 739,Insert 2770,Delete 2936,Find 1131,Insert 1594,Insert 3278,Delete 3590,Find 2597,Find 3941,Insert 3277,Insert 3412,Delete 2995,Delete 1656,Insert 1274,Find 2447,Delete 1938,Insert 202,Insert 3657,Insert 1228,Insert 2934,Insert 1424,Insert 2100,Delete 2047,Insert 2714,Delete 903,Find 1061,Insert 658,Insert 3673,Find 2177,Insert 2057,Find 1181,Insert 2726,Insert 3289,Insert 522,Delete 770,Insert 2855,Find 3791,Insert 124,Insert 2626,Find 1906,Insert 2724,Insert 1250,Insert 1720,Insert 3409,Find 3300,Find 1020,Insert 701,Insert 1230,Insert 3315,Find 3803,Insert 299,Find 725,Insert 3015,Delete 210,Insert 3878,Find 1138,Find 802,Insert 3095,Insert 1942,Insert 2118,Find 3330,Insert 3994,Insert 3443,Insert 2670,Find 3216,Insert 1145,Find 3363,Insert 3276,Delete 2738,Insert 2279,Find 3719,Find 2637,Find 139,Insert 430,Insert 2083,Insert 307,Insert 1267,Insert 1355,Find 334,Find 1104,Find 1240,Insert 3914,Find 442,Insert 2338,Insert 384,Insert 2521,Insert 2070,Insert 1355,Delete 3532,Delete 3928,Find 2884,Find 68,Insert 2802,Insert 1797,Insert 1818,Find 3452,Delete 929,Insert 2253,Insert 2548,Insert 612,Insert 2848,Insert 2090,Find 3691,Insert 819,Insert 3929,Insert 2531,Insert 420,Delete 2750,Insert 1235,Insert 1092,Find 2481,Find 3460,Delete 2623,Find 667,Insert 3831,Insert 518,Delete 2720,Delete 1703,Insert 3035,Insert 3688,Insert 224,Insert 2066,Insert 1212,Insert 2024,Insert 3110,Find 954,Insert 1193,Find 712,Find 2986,Delete 1280,Insert 126,Insert 693,Find 2735,Insert 1869,Delete 391,Find 1769,Insert 2122,Insert 1740,Find 3932,Find 1909,Insert 1543,Find 668,Insert 1217,Find 2298,Insert 2907,Delete 1296,Insert 954,Delete 1501,Delete 1707,Insert 2903,Insert 3958,Delete 3095,Insert 1243,Insert 3450,Find 2766,Insert 2415,Insert 2654,Insert 1584,Insert 2935,Insert 160,Find 1704,Find 2752,Insert 862,Insert 465,Find 3363,Find 3472,Insert 2727,Insert 2306,Find 3035,Insert 2231,Insert 3365,Find 2983,Insert 354,Insert 109,Find 3571,Insert 3373,Insert 2094,Find 3678,Find 2520,Find 1685,Find 3372,Insert 1289,Delete 2825,Insert 2091,Insert 3912,Insert 2566,Delete 688,Insert 550,Find 2995,Find 2958,Insert 3854,Find 2329,Insert 1744,Insert 3974,Find 1507,Insert 3819,Insert 2226,Insert 3951,Delete 3368,Insert 3798,Insert 672,Insert 1467,Insert 3622,Insert 1633,Find 2893,Find 1789,Insert 3725,Insert 1986,Find 1509,Insert 2912,Insert 2830,Insert 1135,Insert 1368,Insert 846,Delete 3535,Insert 364,Insert 998,Insert 1014,Insert 1154,Delete 1527,Insert 204,Insert 3405,Find 3156,Find 1864,Insert 2712,Insert 2376,Insert 2620,Find 3986,Delete 3644,Delete 1758,Insert 3298,Find 1904,Insert 1101,Insert 1840,Find 3914,Delete 3581,Insert 2935,Insert 3164,Find 3975,Find 915,Delete 3999,Insert 3723,Delete 758,Insert 234,Insert 1324,Delete 1891,Find 2659,Find 2801,Insert 2131,Insert 826,Insert 2370,Insert 1120,Find 2444,Insert 3490,Insert 2219,Insert 1214,Insert 3723,Insert 2392,Find 2650,Delete 1979,Insert 3042,Insert 1237,Find 1570,Insert 793,Delete 2952,Insert 2325,Find 775,Find 2778,Delete 187,Find 71,Find 3923,Find 884,Insert 3112,Find 1295,Insert 1088,Insert 2659,Insert 1588,Insert 279,Insert 2808,Insert 2426,Insert 1757,Find 3042,Find 3903,Insert 153,Insert 3717,Delete 2248,Delete 653,Insert 792,Find 3945,Insert 2262,Find 2857,Insert 470,Insert 2736,Insert 442,Find 2590,Insert 3590,Insert 3256,Insert 1898,Find 3787,Insert 2866,Delete 3731,Find 325,Insert 3178,Find 2950,Find 2896,Insert 3733,Insert 2197,Insert 3836,Delete 2427,Insert 194,Delete 41,Insert 3607,Insert 64,Insert 1357,Find 605,Find 1522,Delete 153,Insert 3334,Insert 2020,Find 2800,Insert 1505,Delete 3918,Insert 3284,Find 2441,Find 1712,Insert 1223,Find 2523,Insert 69,Find 489,Insert 3265,Insert 95,Insert 1496,Insert 2274,Insert 1930,Delete 529,Find 2735,Find 820,Insert 1326,Insert 1014,Insert 583,Insert 631,Find 2352,Insert 462,Insert 3063,Insert 3857,Insert 539,Find 184,Find 2757,Insert 2205,Insert 3365,Find 2107,Find 2453,Insert 3063,Delete 662,Insert 3775,Find 3482,Find 808,Find 1051,Delete 3341,Find 267,Find 3990,Insert 79,Insert 2196,Find 997,Find 3615,Find 2615,Insert 3740,Delete 3655,Find 2632,Insert 977,Insert 549,Insert 3329,Find 3885,Find 651,Insert 3603,Find 1629,Find 1225,Insert 1885,Find 2583,Insert 2180,Find 2952,Insert 254,Delete 2654,Insert 1008,Insert 2305,Find 1581,Insert 3068,Insert 2451,Insert 816,Insert 1588,Insert 2088,Insert 1900,Insert 3178,Insert 2641,Insert 570,Delete 3616,Delete 3099,Insert 3459,Insert 2055,Find 63,Insert 871,Insert 3087,Insert 1063,Insert 117,Find 3483,Insert 572,Insert 2503,Find 186,Delete 274,Insert 227,Find 2332,Insert 1413,Insert 1480,Find 1188,Insert 1134,Delete 1568,Insert 597,Insert 989,Find 211,Insert 3046,Insert 22,Insert 1093,Insert 3554,Delete 836,Insert 3753,Delete 1521,Find 3337,Delete 1367,Insert 2925,Insert 2069,Find 2565,Insert 2607,Insert 1575,Insert 2024,Insert 3052,Insert 590,Insert 2904,Delete 3779,Find 2693,Insert 393,Find 85,Delete 807,Find 3265,Insert 2103,Find 2146,Insert 761,Insert 1696,Insert 2420,Find 3936,Find 2568,Find 3305,Find 2110,Insert 960,Insert 2843,Delete 3505,Insert 1482,Insert 3504,Insert 3658,Insert 3350,Delete 1963,Find 715,Find 1812,Insert 1546,Insert 957,Delete 2229,Find 3036,Insert 1679,Insert 3008,Find 1611,Insert 2962,Find 1567,Insert 1450,Insert 3194,Insert 620,Find 1268,Insert 2540,Insert 2984,Find 3017,Insert 3613,Insert 3490,Insert 1954,Insert 2639,Find 2737,Find 1886,Find 2883,Delete 456,Find 3897,Insert 226,Delete 1739,Insert 1690,Find 1838,Delete 1160,Delete 999,Delete 3423,Insert 2430,Delete 2850,Insert 2148,Find 3132,Find 1404,Insert 521,Find 1173,Insert 1703,Insert 0,Find 2513,Insert 2154,Find 1750,Insert 2907,Find 2357,Delete 2000,Find 68,Find 2568,Insert 403,Insert 3107,Insert 1063,Find 3517,Find 396,Insert 500,Insert 1330,Insert 3684,Find 459,Find 272,Insert 1790,Insert 1417,Find 3211,Delete 77,Delete 3664,Find 990,Insert 1108,Find 1552,Find 1323,Insert 2176,Insert 1449,Delete 2126,Insert 1151,Delete 434,Insert 1980,Delete 3399,Insert 3242,Insert 1022,Delete 3387,Find 1732,Insert 2978,Insert 2093,Delete 2956,Insert 3415,Insert 674,Find 3702,Find 3703,Insert 2501,Insert 221,Find 1156,Delete 222,Delete 1822,Find 614,Insert 307,Find 1157,Find 3510,Insert 3599,Insert 2140,Find 2898,Insert 137,Find 2434,Find 189,Insert 3388,Insert 2132,Insert 1714,Find 1886,Find 2219,Delete 1523,Insert 2975,Insert 2843,Delete 47,Find 786,Find 2358,Insert 1433,Find 1375,Insert 1671,Delete 3724,Insert 2956,Insert 2670,Insert 244,Find 3290,Insert 1717,Insert 603,Insert 2474,Find 2142,Find 2749,Delete 1316,Find 329,Insert 54,Insert 1901,Delete 1680,Delete 3672,Insert 3636,Insert 1966,Insert 2230,Find 2007,Insert 3543,Delete 1216,Insert 355,Find 3024,Insert 3901,Insert 2336,Delete 2802,Insert 1040,Find 3542,Insert 2230,Find 1696,Insert 1020,Insert 1677,Insert 161,Find 2692,Delete 1226,Insert 530,Find 1654,Insert 3922,Insert 3403,Insert 2287,Insert 1912,Find 2862,Find 2039,Delete 1021,Insert 617,Find 2016,Insert 2555,Find 3148,Find 573,Insert 1952,Insert 3414,Insert 1369,Insert 3913,Find 2797,Find 901,Insert 3559,Insert 2617,Insert 315,Insert 76,Insert 1223,Insert 1439,Insert 3194,Insert 2680,Insert 828,Insert 3823,Insert 1946,Find 1526,Delete 3435,Insert 3353,Insert 1711,Find 714,Delete 2426,Insert 313,Find 386,Find 3628,Find 3189,Insert 3398,Insert 411,Insert 643,Find 2309,Insert 1402,Find 3355,Find 189,Insert 34,Insert 836,Find 3983,Find 1015,Insert 631,Insert 3192,Delete 3899,Find 3065,Insert 792,Delete 3656,Find 1689,Insert 3398,Insert 3459,Find 1226,Find 704,Insert 2432,Insert 3858,Insert 1777,Insert 2688,Find 801,Insert 3608,Find 3789,Delete 3270,Find 3084,Delete 1147,Insert 3395,Insert 832,Insert 1924,Insert 365,Insert 3822,Delete 351,Insert 2650,Insert 2140,Insert 1273,Delete 3990,Insert 1217,Delete 208,Delete 2494,Find 901,Insert 615,Insert 435,Insert 2557,Insert 3755,Delete 1645,Insert 1788,Insert 3436,Insert 2793,Find 1957,Find 3705,Find 1289,Insert 2475,Insert 2380,Find 1774,Delete 2237,Find 3244,Find 3731,Delete 2886,Find 3350,Insert 350,Find 3385,Insert 203,Insert 2343,Insert 3880,Insert 3067,Insert 390,Insert 1982,Find 2045,Insert 3685,Find 2865,Find 2302,Delete 1868,Insert 348,Insert 2037,Insert 1323,Delete 1682,Find 217,Insert 2282,Find 2440,Insert 2855,Insert 3815,Find 2875,Delete 604,Find 3640,Insert 671,Insert 3778,Find 454,Insert 2972,Insert 2664,Insert 2761,Find 801,Delete 485,Insert 2210,Find 1172,Insert 1989,Insert 1884,Insert 1191,Insert 388,Insert 3364,Delete 3372,Insert 3225,Insert 3530,Insert 753,Insert 418,Insert 108,Find 2192,Insert 2686,Insert 2632,Insert 3082,Insert 1502,Insert 2651,Insert 2155,Insert 1624,Find 943,Insert 784,Delete 645,Insert 859,Delete 24,Delete 1682,Find 2358,Insert 678,Insert 3893,Find 2747,Delete 1083,Find 766,Insert 1357,Find 1157,Insert 1395,Insert 1863,Delete 1606,Delete 2223,Insert 3130,Insert 1935,Insert 2286,Find 1331,Insert 1501,Insert 3588,Find 1078,Insert 2303,Insert 2919,Insert 2203,Delete 2332,Find 3117,Delete 3874,Insert 1860,Find 2544,Insert 796,Insert 2545,Find 683,Find 3134,Insert 1487,Insert 2735,Insert 104,Delete 2428,Delete 450,Insert 416,Find 1619,Insert 103,Insert 3596,Insert 3396,Insert 2281,Insert 1364,Find 1742,Insert 821,Find 2393,Insert 1751,Insert 3277,Find 2680,Find 3218,Insert 3851,Delete 3153,Insert 1020,Find 1753,Insert 1011,Find 1815,Delete 2396,Insert 788,Delete 2214,Delete 1280,Insert 3525,Delete 766,Find 112,Delete 2983,Find 2217,Find 3541,Find 770,Find 2761,Insert 3969,Find 1070,Find 1216,Insert 3726,Find 1834,Delete 2590,Insert 3715,Find 358,Insert 248,Insert 456,Insert 2353,Insert 2171,Find 1141,Insert 3889,Find 1436,Find 2935,Insert 1789,Insert 72,Insert 2435,Insert 3658,Delete 622,Insert 913,Delete 2702,Insert 3716,Delete 3261,Insert 589,Delete 2826,Find 1890,Insert 1290,Insert 128,Find 372,Insert 1347,Find 54,Insert 2879,Insert 1943,Insert 396,Insert 2386,Insert 451,Insert 3180,Insert 3927,Find 1742,Insert 332,Insert 3305,Find 1302,Delete 1254,Insert 1843,Insert 1603,Insert 3703,Find 1599,Insert 1385,Find 376,Insert 2443,Delete 3587,Find 3249,Insert 539,Find 3361,Insert 3277,Insert 2922,Insert 3842,Delete 3529,Insert 3411,Find 2145,Delete 2466,Find 1839,Insert 2021,Insert 2735,Insert 3512,Insert 2,Find 2854,Find 3620,Find 1116,Find 2960,Find 1752,Insert 2673,Insert 2892,Find 1228,Insert 1633,Find 580,Find 2045,Find 3464,Find 3760,Insert 3193,Insert 2962,Find 3331,Insert 1139,Delete 481,Insert 3812,Delete 2269,Find 1886,Insert 1662,Insert 1944,Find 1884,Find 2263,Insert 2907,Insert 1899,Insert 64,Find 2360,Insert 1322,Insert 1695,Insert 1083,Find 628,Delete 2146,Insert 2823,Insert 2971,Insert 295,Delete 367,Insert 308,Delete 1652,Insert 1257,Find 3537,Find 3944,Insert 1912,Find 179,Insert 949,Insert 3723,Insert 2864,Find 3974,Find 1830,Find 1694,Insert 3694,Insert 2886,Insert 3147,Find 2846]
-[Insert 2149,Insert 492,Insert 3713,Insert 3909,Find 899,Insert 2191,Find 3520,Find 1317,Insert 2705,Insert 213,Delete 3056,Insert 1862,Insert 1386,Find 3878,Find 3447,Insert 2340,Insert 3635,Insert 1434,Find 3705,Insert 908,Insert 2151,Insert 1191,Insert 2027,Insert 2191,Find 1374,Insert 924,Insert 3741,Insert 728,Insert 3293,Insert 241,Find 3431,Find 423,Insert 2788,Insert 1296,Find 604,Insert 3140,Insert 1758,Insert 1171,Find 1928,Delete 464,Delete 3456,Insert 2213,Delete 3363,Insert 1406,Find 3973,Find 2375,Find 3117,Find 932,Insert 2002,Find 2858,Insert 2862,Delete 3885,Insert 3010,Insert 3784,Insert 772,Insert 2387,Insert 2793,Insert 839,Insert 929,Insert 2513,Insert 1482,Find 3575,Insert 522,Insert 1741,Insert 1904,Insert 3757,Insert 2189,Insert 2262,Find 1982,Delete 3873,Insert 1959,Insert 3920,Insert 2519,Insert 3690,Delete 3537,Insert 915,Delete 3373,Insert 3716,Insert 2534,Find 922,Insert 3788,Insert 2592,Insert 2150,Delete 124,Insert 756,Insert 1877,Insert 66,Insert 1632,Find 1193,Find 3106,Find 2465,Delete 29,Find 852,Find 1388,Delete 1401,Find 3027,Find 728,Delete 84,Insert 274,Insert 1819,Insert 936,Insert 3764,Find 3807,Insert 2519,Find 2806,Insert 3244,Insert 773,Insert 2885,Insert 2725,Insert 2360,Insert 627,Find 1687,Delete 480,Insert 3895,Delete 3437,Find 3977,Insert 3846,Delete 6,Insert 3765,Insert 2576,Find 3894,Insert 271,Find 3409,Find 3003,Insert 3960,Insert 1724,Insert 1503,Delete 1586,Delete 2186,Find 728,Insert 2264,Insert 2868,Find 436,Insert 454,Insert 1439,Delete 2144,Insert 398,Delete 3326,Delete 538,Insert 2318,Find 1248,Insert 3604,Insert 1946,Insert 540,Find 2900,Delete 2466,Find 3606,Find 772,Insert 3505,Find 3805,Find 453,Find 1081,Insert 2504,Insert 1113,Insert 1704,Find 3765,Insert 1187,Insert 2732,Insert 3317,Insert 991,Delete 3592,Find 3547,Delete 3180,Delete 3076,Insert 1902,Find 3020,Find 796,Insert 1786,Insert 840,Insert 3615,Insert 1071,Delete 1726,Insert 2062,Insert 2306,Delete 3420,Find 3087,Find 3080,Insert 111,Delete 2737,Find 865,Find 403,Insert 214,Insert 2452,Insert 2984,Find 1078,Delete 1874,Insert 776,Insert 631,Find 854,Find 2642,Insert 143,Find 953,Insert 236,Insert 2588,Insert 2975,Insert 1461,Find 3153,Insert 2510,Find 1855,Find 3539,Delete 3504,Delete 2928,Insert 1383,Insert 1768,Insert 386,Delete 1356,Find 2759,Find 2304,Find 3163,Insert 605,Insert 2158,Find 3135,Insert 3787,Insert 3166,Find 1557,Delete 3554,Delete 3677,Insert 1669,Find 923,Insert 647,Insert 234,Find 2211,Insert 1745,Insert 2116,Find 2893,Delete 3000,Insert 1789,Delete 2292,Insert 1963,Delete 3488,Insert 3196,Insert 2628,Insert 1158,Insert 257,Insert 992,Insert 1518,Find 1804,Insert 2,Insert 2175,Insert 636,Insert 197,Delete 338,Insert 3099,Insert 2146,Insert 3365,Insert 2301,Insert 2275,Insert 2889,Find 3536,Insert 836,Insert 167,Insert 1227,Delete 716,Find 3037,Find 2833,Insert 91,Insert 1830,Insert 2297,Insert 2643,Insert 2700,Delete 438,Delete 2044,Delete 3086,Insert 3198,Insert 107,Find 3576,Insert 1133,Insert 1712,Find 438,Delete 3991,Insert 2548,Find 808,Find 256,Insert 2399,Insert 2403,Find 2980,Find 3790,Find 97,Insert 2278,Insert 3881,Insert 341,Delete 2226,Insert 2179,Insert 481,Insert 436,Insert 2040,Insert 2025,Find 1996,Insert 3319,Find 1405,Find 2492,Find 2731,Insert 770,Find 3448,Find 269,Find 2322,Find 488,Insert 3757,Delete 2434,Find 1621,Insert 2526,Find 715,Find 3568,Insert 1097,Find 3293,Insert 1578,Insert 424,Insert 1624,Insert 2500,Insert 1203,Find 3482,Delete 2591,Insert 3946,Find 1296,Insert 1562,Find 2035,Insert 3975,Insert 224,Delete 1918,Insert 3123,Insert 609,Insert 3783,Insert 2690,Find 921,Insert 3266,Insert 25,Insert 2271,Insert 2529,Insert 1836,Insert 3253,Find 348,Insert 2464,Insert 1434,Find 1160,Insert 2510,Find 1790,Find 62,Insert 3690,Insert 3890,Find 1948,Delete 2363,Insert 1244,Insert 3002,Insert 418,Find 3477,Find 2912,Insert 267,Insert 677,Find 1693,Find 718,Insert 104,Insert 1607,Insert 2474,Insert 1493,Find 1887,Insert 3780,Find 1530,Insert 334,Insert 1162,Insert 1612,Insert 2848,Insert 3600,Insert 207,Insert 1105,Insert 1019,Find 357,Insert 260,Find 912,Find 2406,Delete 391,Insert 2822,Find 3119,Insert 1363,Find 1063,Insert 1630,Find 3433,Delete 527,Delete 889,Find 3103,Insert 3788,Insert 2093,Insert 2611,Find 1110,Insert 450,Find 2832,Find 106,Insert 1424,Delete 3240,Insert 1739,Insert 1254,Insert 629,Insert 910,Find 2581,Insert 1763,Insert 1152,Find 1155,Insert 1693,Insert 72,Delete 781,Find 2323,Insert 2997,Find 1387,Delete 2541,Insert 1800,Find 3830,Find 3,Insert 3920,Insert 2825,Insert 1165,Delete 954,Insert 311,Find 3413,Delete 3493,Insert 848,Insert 2173,Insert 2917,Delete 2556,Insert 1250,Find 3493,Delete 308,Insert 293,Find 3750,Find 1971,Find 203,Insert 3797,Find 2253,Delete 382,Insert 1799,Delete 1276,Delete 1938,Insert 3040,Delete 1565,Find 1996,Insert 3664,Insert 612,Insert 553,Insert 2883,Delete 3625,Find 898,Insert 3958,Insert 163,Insert 3086,Insert 3732,Insert 2992,Insert 2384,Insert 315,Find 1445,Insert 910,Delete 1796,Find 184,Insert 437,Insert 2210,Delete 915,Insert 3489,Insert 644,Insert 170,Insert 1080,Find 2733,Find 2404,Insert 3601,Delete 2324,Insert 384,Insert 1105,Insert 1038,Insert 1934,Insert 655,Delete 1727,Insert 2671,Find 2586,Insert 2064,Insert 1719,Find 516,Insert 1076,Insert 2596,Insert 778,Insert 3473,Insert 2257,Insert 3981,Insert 2586,Insert 3104,Find 1846,Insert 2859,Insert 3195,Find 3536,Insert 1614,Insert 2020,Find 3402,Insert 3894,Insert 3423,Find 1865,Insert 2231,Delete 3881,Insert 1328,Delete 298,Find 440,Insert 3825,Delete 3911,Insert 3488,Insert 1380,Insert 661,Insert 1398,Insert 3517,Delete 862,Find 3549,Find 1713,Insert 37,Find 2860,Find 1488,Insert 1234,Delete 3655,Insert 2795,Insert 1112,Insert 3996,Insert 3699,Find 2210,Insert 316,Find 301,Find 1763,Insert 3775,Find 1405,Insert 475,Insert 294,Insert 874,Insert 924,Find 3944,Insert 2591,Insert 112,Find 1828,Insert 2660,Insert 1719,Insert 2407,Delete 959,Insert 366,Insert 962,Insert 3952,Insert 206,Insert 1052,Insert 2633,Delete 1354,Insert 1992,Delete 309,Insert 3590,Find 1338,Insert 466,Find 1870,Insert 2184,Insert 1564,Insert 132,Insert 3702,Find 3837,Insert 630,Insert 1265,Delete 2331,Find 2254,Insert 2515,Insert 3190,Insert 3109,Delete 1559,Insert 515,Insert 177,Delete 3377,Insert 556,Insert 2650,Find 2202,Insert 1087,Insert 1318,Insert 1245,Insert 2165,Find 2442,Find 747,Insert 1427,Find 557,Insert 2274,Insert 2757,Insert 785,Insert 1939,Insert 3311,Delete 955,Insert 2057,Find 2158,Find 3727,Find 3360,Insert 89,Insert 96,Insert 2274,Delete 732,Find 2245,Find 3385,Insert 1695,Insert 3775,Delete 3495,Insert 3173,Insert 1631,Insert 1116,Insert 3291,Find 2724,Find 3094,Insert 782,Insert 2005,Insert 2819,Insert 1114,Delete 1273,Find 142,Insert 2930,Delete 699,Insert 1491,Find 686,Insert 1176,Find 114,Insert 2208,Insert 1658,Insert 415,Insert 12,Insert 3850,Insert 2127,Find 3741,Insert 3559,Insert 2498,Insert 3391,Insert 995,Find 292,Insert 3001,Insert 3489,Insert 425,Delete 3375,Insert 2232,Find 590,Insert 2718,Insert 3658,Insert 2323,Insert 2518,Insert 1700,Insert 1583,Find 564,Find 1950,Insert 429,Insert 2134,Insert 3219,Insert 854,Delete 3120,Find 1256,Insert 871,Insert 35,Delete 95,Insert 1606,Delete 812,Find 1396,Find 1499,Insert 3922,Insert 396,Delete 1670,Find 956,Find 581,Insert 535,Insert 3259,Find 3774,Find 3590,Delete 3208,Insert 3657,Delete 2616,Delete 3321,Delete 2301,Insert 87,Find 2819,Delete 3377,Insert 2876,Find 2156,Insert 516,Find 3251,Insert 1345,Insert 1685,Insert 1463,Insert 3553,Find 1984,Insert 3571,Find 1882,Find 3487,Find 2368,Delete 3130,Insert 2641,Insert 1580,Insert 3738,Insert 1863,Find 52,Find 2434,Delete 3074,Find 415,Delete 3568,Insert 2949,Delete 3193,Insert 1081,Insert 3586,Insert 2619,Insert 685,Insert 2513,Find 805,Delete 3294,Find 2086,Find 3370,Find 3518,Insert 188,Delete 974,Insert 2015,Insert 490,Insert 2221,Insert 741,Find 3858,Insert 1170,Insert 1915,Insert 3736,Insert 1611,Delete 384,Find 3760,Find 2952,Find 45,Find 935,Delete 3225,Insert 2379,Find 2086,Delete 810,Delete 1021,Insert 94,Delete 1426,Delete 3350,Insert 331,Find 1287,Insert 543,Insert 3398,Insert 2234,Find 2930,Insert 3957,Insert 2859,Find 584,Insert 2497,Find 659,Find 3701,Delete 3607,Find 2159,Delete 2743,Find 47,Find 153,Insert 14,Insert 729,Insert 3770,Delete 559,Delete 1333,Insert 672,Insert 2359,Insert 1547,Insert 3922,Delete 77,Find 1177,Insert 1662,Delete 3023,Find 2531,Insert 655,Insert 3321,Find 7,Find 2321,Insert 775,Insert 3657,Delete 1718,Insert 1421,Insert 1670,Insert 1395,Insert 64,Insert 2957,Find 1827,Find 1024,Insert 1793,Insert 1097,Insert 1151,Insert 324,Delete 2681,Insert 1595,Find 3119,Find 1821,Find 1850,Insert 1178,Insert 2234,Insert 264,Insert 3804,Find 206,Insert 2561,Find 3553,Find 1156,Delete 3579,Insert 2581,Insert 477,Delete 2620,Insert 3693,Insert 3299,Find 1474,Delete 942,Find 639,Insert 1875,Insert 633,Find 313,Insert 2565,Insert 3506,Insert 2820,Delete 2748,Insert 1573,Find 685,Find 2049,Find 3680,Find 3148,Insert 2920,Insert 3128,Insert 3993,Insert 3774,Insert 2785,Insert 750,Find 748,Insert 2130,Delete 3252,Find 1763,Insert 1190,Find 974,Find 838,Delete 2394,Insert 89,Insert 3792,Insert 1871,Insert 2284,Find 3796,Insert 3672,Find 1650,Insert 3509,Insert 596,Insert 2090,Find 2910,Insert 3285,Insert 2122,Insert 1736,Insert 3715,Insert 3447,Insert 2104,Find 336,Insert 2464,Find 791,Delete 2742,Insert 2733,Insert 598,Insert 1240,Find 3749,Insert 2930,Find 2829,Insert 3924,Insert 804,Insert 2086,Insert 338,Delete 633,Find 2641,Insert 3090,Insert 3542,Insert 1357,Delete 1463,Delete 1933,Insert 604,Insert 455,Insert 665,Insert 3638,Insert 3229,Insert 1049,Delete 1319,Insert 989,Insert 724,Insert 3059,Delete 3100,Insert 1693,Find 2570,Insert 2040,Insert 1400,Find 2940,Find 3444,Insert 2284,Insert 2132,Insert 427,Insert 1815,Find 1428,Insert 1295,Insert 1442,Find 2059,Find 1604,Insert 332,Find 2323,Delete 3792,Insert 922,Insert 1318,Find 1290,Insert 255,Insert 641,Insert 536,Find 3814,Insert 1078,Insert 3994,Insert 3248,Insert 3028,Find 3510,Find 1186,Insert 3636,Find 3991,Delete 2396,Find 1443,Insert 3863,Insert 3491,Insert 1252,Insert 3079,Find 1089,Find 388,Find 582,Insert 2683,Insert 2769,Delete 3833,Find 2812,Insert 3729,Insert 3816,Delete 1910,Insert 1992,Insert 1459,Insert 2136,Insert 1256,Insert 766,Delete 1845,Find 1925,Insert 3548,Delete 1706,Find 2161,Insert 913,Insert 1749,Find 1247,Insert 2625,Delete 3889,Insert 252,Delete 402,Insert 1193,Insert 2504,Insert 1552,Find 3444,Insert 1497,Find 3581,Insert 584,Insert 2082,Insert 2672,Find 2472,Delete 3825,Insert 162,Insert 3709,Find 473,Insert 2954,Insert 3391,Delete 965,Insert 4,Insert 1232,Insert 74,Insert 2260,Find 2978,Find 3338,Find 1891,Insert 3069,Insert 1990,Insert 296,Insert 2054,Find 1735,Insert 2376,Find 370,Insert 3125,Delete 3465,Insert 2444,Insert 206,Delete 3197,Find 380,Find 3778,Delete 735,Insert 1144,Insert 2806,Find 3775,Find 1847,Insert 3683,Find 1764,Delete 717,Insert 1458,Insert 1067,Insert 59,Insert 2938,Find 2716,Delete 79,Insert 553,Insert 3641,Insert 2964,Find 1194,Insert 568,Find 3529,Insert 109,Insert 2334,Find 1179,Delete 2549,Delete 3008,Find 2738,Insert 3526,Find 216,Insert 2202,Find 2344,Find 3774,Insert 3056,Insert 2312,Insert 2765,Insert 71,Insert 2356,Insert 3602,Delete 1161,Insert 768,Insert 127,Insert 1204,Insert 2043,Find 2184,Insert 3828,Insert 453,Insert 1512,Insert 3892,Insert 1646,Insert 2680,Insert 1749,Insert 3670,Insert 2090,Find 1902,Insert 2368,Delete 3537,Insert 3764,Find 3565,Insert 3732,Insert 1199,Find 3503,Insert 3752,Find 3320,Delete 1227,Insert 1087,Find 2296,Find 1463,Insert 3492,Insert 2302,Insert 153,Find 125,Insert 1014,Insert 2968,Insert 502,Insert 420,Insert 3473,Find 1693,Find 1179,Find 106,Insert 1356,Find 3348,Insert 2190,Insert 3427,Insert 3305,Find 3422,Insert 2601,Insert 771,Insert 132,Find 1255,Delete 1547,Delete 2478,Insert 3998,Insert 2261,Insert 1145,Delete 812,Insert 945,Find 923,Insert 2755,Find 1244,Find 516,Find 1362,Insert 3467,Find 528,Delete 610,Insert 2030,Insert 558,Find 2260,Insert 3645,Insert 2252,Delete 2002,Find 3645,Insert 1673,Delete 3257,Delete 3390,Insert 2100,Insert 616,Insert 419,Find 3525,Delete 3799,Insert 3369,Insert 768,Find 1812,Insert 3654,Insert 1170,Find 350,Insert 1317,Delete 2171,Insert 2802,Insert 2554,Delete 3379,Find 2553,Delete 2069,Delete 896,Find 1057,Insert 3094,Insert 1354,Insert 2435,Insert 3322,Insert 618,Insert 813,Find 1782,Insert 238,Insert 3205,Find 2099,Delete 833,Insert 1940,Find 565,Find 3392,Find 447,Insert 2325,Find 3531,Delete 479,Insert 20,Find 2813,Insert 1718,Insert 1990,Find 3746,Insert 3031,Insert 3432,Insert 26,Find 1240,Insert 2963,Insert 2913,Find 607,Insert 2221,Insert 3770,Insert 634,Find 1280,Insert 3992,Insert 2570,Find 2291,Insert 3292,Insert 3525,Insert 3170,Insert 3016,Find 2196,Insert 2916,Insert 52,Insert 497,Insert 3496,Insert 1487,Insert 2689,Insert 783,Insert 356,Insert 880,Insert 1051,Insert 2547,Delete 876,Insert 244,Find 2362,Delete 1927,Insert 2373,Find 3152,Find 987,Insert 745,Insert 2265,Insert 410,Delete 2659,Find 935,Insert 2556,Insert 1505,Find 1989,Insert 726,Insert 2023,Insert 915,Insert 2953,Find 3949,Insert 3008,Insert 1683,Delete 3372,Insert 2328,Delete 1249,Insert 1213,Find 239,Insert 153,Insert 3293,Insert 60,Insert 2115,Insert 1833,Insert 818,Insert 1732,Insert 1338,Delete 143,Insert 42,Find 3314,Insert 2977,Insert 953,Find 1955,Insert 1121,Insert 7,Delete 3536,Insert 757,Find 3234,Insert 2595,Insert 3751,Insert 92,Insert 3939,Find 1611,Find 2676,Insert 2160,Insert 645,Delete 163,Insert 3050,Insert 3680,Insert 1330,Insert 570,Find 1327,Find 1566,Insert 2633,Insert 3929,Insert 3743,Find 591,Delete 3526,Find 1060,Insert 328,Insert 3902,Insert 1557,Find 2779,Find 1265,Insert 1902,Find 709,Insert 360,Insert 2055,Insert 3529,Insert 676,Insert 170,Insert 657,Delete 1547,Insert 1669,Delete 1829,Insert 864,Insert 3976,Find 619,Find 2611,Insert 2462,Insert 229,Insert 1016,Insert 883,Insert 3612,Insert 471,Insert 1400,Delete 1312,Delete 1657,Insert 3926,Delete 1096,Find 338,Delete 376,Insert 3044,Delete 3664,Delete 3032,Insert 3851,Insert 356,Insert 3046,Find 2806,Insert 1477,Insert 1127,Find 3177,Insert 905,Insert 1680,Find 2276,Insert 860,Find 1925,Insert 1814,Find 2890,Insert 1659,Insert 81,Insert 1166,Find 3053,Delete 3422,Find 2482,Insert 475,Delete 1430,Insert 3704,Insert 2325,Delete 3854,Insert 760,Delete 539,Insert 1551,Find 59,Find 3153,Insert 349,Find 2589,Insert 888,Insert 747,Insert 433,Find 2383,Insert 685,Delete 3331,Insert 1194,Find 3086,Find 31,Insert 3,Find 2089,Find 3662,Find 158,Delete 279,Insert 2050,Insert 1604,Insert 3607,Find 3866,Find 3257,Insert 2464,Find 10,Delete 3626,Insert 2593,Insert 2275,Insert 940,Insert 1018,Insert 2039,Delete 153,Insert 3452,Insert 1513,Insert 1473,Delete 2995,Insert 819,Insert 1032,Insert 3516,Insert 1226,Delete 1656,Delete 380,Insert 350,Insert 1746,Insert 763,Find 1527,Find 3919,Insert 3704,Insert 3995,Delete 1850,Delete 1218,Find 3492,Find 2932,Insert 2459,Find 189,Find 2453,Insert 3117,Insert 3062,Insert 2090,Find 3887,Find 3438,Insert 1953,Delete 3288,Insert 2018,Find 1176,Insert 514,Find 2262,Delete 850,Find 3163,Insert 2163,Insert 1110,Delete 1999,Insert 918,Insert 3528,Delete 196,Insert 262,Insert 3440,Delete 1595,Insert 1597,Find 3300,Find 692,Insert 2966,Insert 3065,Insert 2454,Find 82,Insert 1520,Delete 1485,Insert 2200,Insert 2627,Insert 2842,Insert 561,Insert 658,Insert 3916,Insert 2105,Find 2448,Delete 1626,Find 2491,Find 2843,Insert 551,Insert 1044,Insert 2778,Insert 2720,Insert 3769,Find 1978,Delete 2884,Find 1958,Find 3341,Insert 3827,Delete 2243,Insert 1615,Find 446,Find 997,Insert 95,Insert 2925,Find 1975,Find 12,Insert 424,Find 2685,Insert 2274,Find 2661,Find 2106,Delete 2190,Insert 1158,Insert 3487,Find 290,Insert 3580,Insert 3446,Find 2238,Insert 1926,Insert 3893,Delete 1203,Find 2318,Find 3028,Find 2885,Insert 978,Delete 2857,Insert 1206,Delete 3937,Insert 3819,Insert 2143,Insert 2798,Find 3596,Insert 1095,Find 1964,Insert 2304,Delete 661,Insert 2808,Insert 3619,Find 1051,Find 2867,Insert 3018,Insert 3884,Find 2185,Delete 486,Insert 2311,Find 1223,Find 1059,Insert 160,Find 1564,Insert 273,Find 2364,Delete 3763,Find 3082,Insert 3037,Insert 1701,Find 623,Insert 521,Insert 1807,Insert 3389,Find 339,Find 3571,Insert 1808,Delete 448,Insert 843,Insert 1010,Delete 3736,Find 3042,Find 3957,Find 2555,Insert 1197,Delete 3519,Insert 546,Insert 2573,Find 2797,Find 1186,Find 1615,Insert 1461,Find 3884,Insert 63,Insert 2451,Insert 1304,Find 3702,Delete 3449,Find 2592,Find 2400,Insert 3791,Find 1436,Delete 1629,Find 1127,Insert 3972,Find 2685,Find 1870,Find 3772,Delete 717,Find 2669,Find 2684,Insert 3679,Insert 2162,Insert 3671,Insert 3695,Insert 2017,Delete 3162,Insert 1320,Insert 3350,Insert 2687,Insert 3894,Find 1721,Find 267,Insert 2756,Insert 3717,Insert 3473,Insert 2557,Find 479,Insert 1904,Insert 1149,Delete 3572,Insert 3571,Delete 1777,Delete 1801,Delete 947,Find 3484,Delete 2253,Find 2148,Insert 2989,Find 3919,Find 3836,Find 1395,Delete 509,Insert 1232,Find 3929,Insert 1584,Find 579,Insert 1166,Insert 3282,Insert 2777,Find 1598,Insert 2883,Insert 2338,Find 1202,Find 1583,Find 2586,Find 3047,Delete 3264,Delete 3968,Insert 1245,Find 1389,Insert 151,Insert 2939,Insert 2878,Delete 561,Delete 1534,Insert 1461,Delete 1569,Find 2805,Find 1179,Find 1170,Insert 698,Insert 2672,Insert 89,Insert 242,Insert 3831,Find 906,Delete 866,Insert 1243,Find 1245,Insert 1656,Insert 879,Insert 2994,Insert 316,Find 69,Insert 3260,Find 989,Insert 2720,Insert 3261,Delete 1510,Insert 220,Find 2911,Insert 483,Insert 1835,Insert 3314,Insert 1079,Insert 474,Insert 1069,Delete 2877,Find 568,Insert 1590,Insert 1818,Insert 2570,Find 3687,Insert 1328,Find 1701,Insert 1484,Find 587,Delete 357,Insert 3392,Delete 2848,Delete 1757,Insert 440,Find 241,Insert 2779,Find 104,Insert 3962,Insert 1659,Insert 294,Delete 1033,Insert 1176,Insert 2911,Insert 3673,Insert 127,Insert 53,Find 731,Find 956,Insert 2460,Insert 1598,Find 1738,Insert 3549,Insert 983,Find 1278,Delete 2930,Insert 1487,Insert 3417,Delete 816,Delete 2159,Find 162,Insert 350,Insert 3507,Delete 2508,Insert 3491,Insert 833,Find 1037,Find 792,Delete 3431,Insert 3978,Insert 134,Find 438,Insert 1174,Insert 987,Delete 3280,Find 2766,Find 628,Find 393,Insert 905,Delete 752,Insert 1318,Find 2877,Find 2493,Insert 1347,Insert 455,Find 226,Insert 3084,Find 2732,Insert 3942,Delete 717,Insert 2442,Insert 1423,Find 439,Find 740,Insert 121,Insert 1512,Find 882,Insert 939,Find 1957,Find 640,Delete 215,Insert 2179,Find 3582,Insert 1299,Insert 2576,Insert 1663,Find 912,Find 3574,Insert 942,Insert 3855,Insert 929,Insert 3628,Insert 1083,Find 1,Delete 2395,Delete 2973,Insert 3668,Insert 1228,Insert 912,Find 941,Delete 897,Delete 3639,Delete 6,Find 1403,Delete 2995,Find 3595,Insert 3073,Insert 687,Delete 437,Delete 3159,Insert 1040,Insert 1038,Delete 2189,Insert 3150,Find 2609,Find 2056,Insert 3883,Delete 2708,Insert 3512,Insert 3424,Insert 1357,Insert 3851,Delete 299,Insert 3964,Insert 3471,Find 1476,Insert 1220,Insert 3294,Insert 2453,Insert 1733,Find 2775,Find 2896,Insert 3603,Find 95,Insert 2695,Insert 252,Insert 1343,Insert 1434,Delete 349,Insert 3773,Insert 152,Find 456,Find 1945,Insert 3736,Insert 3875,Delete 1248,Find 3368,Insert 3658,Delete 2246,Delete 2992,Find 1285,Insert 2632,Delete 3835,Delete 513,Delete 1141,Insert 2297,Insert 3880,Insert 824,Find 166,Insert 2779,Find 2931,Insert 385,Delete 1037,Find 1879,Insert 1857,Find 2498,Find 2038,Insert 1331,Insert 1900,Insert 3119,Insert 377,Delete 3567,Insert 571,Insert 485,Insert 1108,Insert 3640,Insert 3316,Delete 2881,Insert 3965,Find 834,Insert 772,Delete 2734,Insert 3062,Insert 169,Find 1568,Find 1667,Insert 3048,Find 3214,Find 2976,Find 2702,Insert 1041,Insert 3010,Delete 1555,Insert 322,Find 1770,Find 1887,Delete 2646,Insert 2796,Find 698,Insert 3756,Delete 838,Find 2202,Delete 3539,Find 3682,Insert 2149,Delete 349,Find 2383,Find 1687,Insert 151,Insert 671,Delete 3547,Insert 1277,Delete 288,Insert 3131,Find 1948,Insert 1413,Delete 1528,Insert 3641,Insert 703,Insert 1460,Find 3243,Insert 2513,Insert 910,Insert 606,Find 3404,Insert 1508,Insert 1742,Insert 2263,Insert 1586,Find 3950,Find 690,Delete 893,Find 1173,Find 16,Find 2543,Insert 495,Insert 3962,Delete 3342,Insert 827,Insert 2462,Insert 2904,Insert 1771,Insert 864,Insert 445,Insert 1950,Delete 2842,Insert 3045,Insert 717,Insert 1456,Insert 758,Insert 1436,Find 1417,Insert 660,Insert 2708,Insert 600,Delete 2485,Find 2457,Find 2014,Insert 461,Find 3308,Insert 379,Insert 2367,Insert 1923,Insert 1199,Insert 2740,Find 35,Insert 2488,Insert 1890,Insert 1385,Insert 369,Find 749,Find 3237,Insert 2743,Insert 2002,Insert 3764,Insert 2525,Insert 2978,Find 3471,Insert 206,Delete 1011,Find 1942,Insert 1828,Insert 3455,Insert 2996,Insert 2714,Delete 3511,Insert 841,Insert 953,Insert 1414,Insert 479,Insert 1613,Find 1275,Delete 1777,Find 1893,Find 3198,Find 771,Delete 3788,Find 3152,Find 3709,Insert 2507,Insert 3941,Delete 1093,Find 3900,Delete 2659,Insert 2933,Insert 3373,Insert 3692,Insert 2556,Find 530,Delete 917,Insert 93,Find 2246,Insert 2321,Find 1547,Find 3085,Find 233,Insert 2526,Insert 47,Delete 2255,Insert 60,Insert 3649,Insert 536,Insert 3286,Insert 182,Find 209,Insert 1705,Insert 1512,Insert 3802,Find 3928,Find 3952,Insert 3693,Find 32,Delete 767,Insert 1285,Find 2859,Find 2626,Insert 3835,Find 2616,Insert 3232,Find 3339,Find 3380,Find 2791,Delete 2297,Find 2015,Insert 3067,Find 1803,Find 2401,Find 3478,Insert 758,Find 3276,Find 153,Insert 3760,Insert 2328,Find 473,Insert 3640,Insert 3969,Insert 2035,Delete 843,Find 1923,Insert 2261,Insert 1015,Insert 3248,Delete 1087,Find 534,Insert 1707,Find 1531,Insert 3127,Delete 3106,Delete 1423,Delete 2893,Insert 1039,Find 1661,Find 2153,Find 2598,Find 85,Insert 2677,Find 3088,Delete 472,Insert 828,Delete 1354,Find 1248,Delete 3259,Insert 1245,Delete 3123,Find 2774,Find 293,Insert 2588,Insert 2942,Insert 3616,Insert 1640,Insert 3997,Insert 294,Find 2315,Insert 743,Insert 808,Insert 241,Insert 892,Insert 1350,Insert 3962,Find 3983,Find 3153,Delete 3451,Insert 1615,Insert 2764,Insert 2190,Delete 2892,Find 3444,Insert 266,Insert 1011,Insert 3269,Delete 1185,Insert 892,Delete 2676,Insert 3177,Insert 1913,Insert 1638,Delete 2613,Insert 305,Insert 2385,Delete 734,Find 2274,Find 607,Find 997,Find 887,Find 3740,Delete 3176,Delete 388,Delete 3440,Insert 1599,Find 2778,Find 196,Insert 878,Find 1195,Insert 1056,Insert 905,Insert 3334,Find 3987,Delete 816,Find 1116,Insert 1206,Find 3275,Delete 2503,Find 1153,Insert 1865,Insert 2631,Insert 203,Insert 1205,Insert 775,Find 27,Delete 1917,Find 3540,Insert 3778,Delete 84,Delete 205,Find 242,Find 3614,Insert 805,Delete 2243,Delete 1010,Delete 2955,Insert 2284,Insert 3353,Delete 2319,Insert 1280,Insert 2498,Find 1248,Insert 1736,Delete 194,Find 1411,Insert 216,Find 2628,Insert 3058,Insert 3603,Find 3457,Insert 2320,Find 482,Find 3917,Insert 439,Delete 1796,Insert 90,Find 748,Insert 2576,Insert 3510,Insert 3364,Delete 1537,Insert 3141,Insert 3398,Find 405,Find 2776,Insert 1655,Insert 3373,Find 3853,Insert 1734,Insert 2129,Delete 2799,Insert 2502,Delete 3007,Find 923,Find 884,Insert 3212,Find 2864,Find 869,Find 1823,Insert 2386,Find 3926,Insert 565,Insert 881,Find 2966,Insert 2121,Insert 1962,Find 471,Delete 549,Find 845,Insert 2555,Find 3138,Find 920,Find 1495,Find 662,Insert 741,Insert 2828,Insert 1601,Insert 1723,Insert 3805,Insert 1812,Insert 2796,Insert 548,Insert 1629,Insert 267,Insert 624,Find 211,Delete 102,Find 3690,Find 1696,Insert 677,Find 2826,Insert 83,Insert 3835,Find 3371,Insert 937,Insert 1351,Find 218,Insert 950,Delete 3713,Find 1488,Insert 3835,Delete 1251,Insert 578,Insert 474,Insert 2469,Insert 72,Insert 3424,Find 1964,Find 3510,Find 1151,Insert 0,Find 3266,Find 527,Insert 2520,Find 3343,Delete 2980,Insert 1075,Delete 2871,Insert 2832,Insert 350,Insert 1406,Insert 2520,Delete 2963,Insert 3360,Insert 1284,Insert 1175,Find 3806,Find 2123,Find 2168,Insert 577,Find 3797,Insert 536,Delete 425,Find 3299,Find 2197,Insert 2955,Find 1643,Insert 3970,Find 2016,Insert 1040,Find 3449,Find 3347,Delete 454,Insert 1252,Insert 232,Insert 3777,Insert 1505,Insert 2396,Find 3265,Delete 2771,Insert 1736,Insert 3049,Insert 1860,Delete 236,Find 277,Insert 213,Find 2320,Insert 3820,Delete 1644,Delete 160,Insert 1915,Insert 3138,Insert 834,Insert 2369,Find 1172,Insert 3245,Insert 1833,Insert 823,Insert 1594,Insert 73,Insert 2199,Delete 965,Find 1991,Find 111,Find 3683,Insert 2572,Delete 995,Find 3603,Delete 3467,Insert 551,Insert 1044,Find 150,Delete 3235,Find 3438,Find 1836,Find 771,Insert 3077,Find 3414,Find 705,Insert 3474,Find 3197,Insert 132,Insert 3298,Delete 3767,Find 3632,Insert 1297,Insert 6,Find 2676,Find 2581,Insert 2452,Find 2783,Insert 343,Insert 2174,Insert 565,Delete 232,Find 1546,Delete 3849,Insert 2837,Find 3414,Insert 498,Insert 1775,Insert 1093,Find 2875,Find 1326,Insert 3639,Find 2187,Insert 3670,Delete 2084,Insert 1590,Insert 2155,Find 231,Insert 1308,Insert 3929,Find 2235,Insert 3383,Insert 2248,Find 1245,Find 3305,Insert 2252,Find 2913,Find 258,Insert 236,Delete 2256,Insert 407,Insert 975,Delete 2318,Insert 909,Find 1378,Find 3961,Insert 2271,Insert 618,Find 593,Insert 114,Find 1919,Find 3010,Insert 2341,Insert 2531,Insert 3863,Insert 3079,Find 2277,Insert 1145,Find 2078,Find 2943,Find 158,Insert 3181,Find 3291,Find 3553,Find 1993,Insert 635,Find 2590,Delete 483,Find 835,Insert 3524,Insert 2419,Insert 3352,Find 3014,Delete 2202,Insert 2014,Find 363,Find 1039,Insert 1780,Delete 3760,Insert 1935,Delete 2397,Insert 3181,Insert 2374,Delete 3012,Insert 346,Insert 2521,Delete 3216,Insert 2116,Delete 102,Insert 2397,Find 2093,Delete 3758,Delete 584,Insert 3074,Insert 1015,Insert 1842,Insert 2964,Insert 1304,Insert 458,Find 2670,Insert 3656,Insert 1919,Insert 2612,Insert 356,Find 1142,Insert 2482,Delete 3359,Delete 2724,Insert 3340,Find 915,Insert 1756,Find 1497,Insert 2862,Insert 448,Insert 2539,Insert 2930,Find 1884,Delete 3413,Insert 2918,Find 2309,Find 379,Insert 702,Find 3752,Insert 2986,Delete 3395,Insert 2410,Insert 1508,Insert 3335,Insert 3608,Insert 2824,Insert 313,Insert 1888,Delete 1747,Find 3120,Find 2121,Insert 3717,Insert 2145,Insert 1432,Insert 3253,Insert 423,Delete 1838,Insert 2042,Insert 1356,Insert 1298,Find 3098,Insert 1967,Delete 1541,Find 2498,Insert 49,Insert 3375,Insert 1470,Insert 933,Insert 523,Find 2598,Insert 773,Find 20,Insert 2464,Insert 3320,Insert 1405,Insert 3416,Insert 3537,Insert 352,Insert 3442,Delete 3503,Delete 175,Insert 428,Delete 3250,Find 102,Find 3001,Delete 92,Insert 973,Insert 333,Delete 2921,Find 1447,Find 1752,Find 3605,Find 3530,Insert 2211,Find 3744,Insert 1091,Insert 52,Insert 715,Find 1088,Insert 2119,Delete 816,Find 1817,Insert 2153,Find 3710,Insert 1860,Insert 743,Insert 3755,Insert 1013,Find 11,Insert 1033,Insert 1013,Find 3336,Insert 3306,Insert 1166,Insert 3671,Insert 2944,Find 3139,Insert 2713,Find 1059,Insert 1087,Insert 2321,Insert 1339,Find 2164,Insert 113,Insert 1571,Find 2919,Insert 3543,Find 690,Insert 717,Insert 3286,Insert 413,Insert 700,Insert 932,Insert 1335,Find 1112,Delete 1371,Find 18,Insert 2452,Find 604,Find 887,Delete 2467,Find 1482,Find 1258,Find 102,Insert 749,Insert 3112,Insert 1201,Insert 49,Insert 2379,Find 1338,Insert 2937,Insert 2658,Find 621,Find 2374,Find 3436,Insert 2665,Insert 3082,Find 918,Find 88,Delete 849,Insert 368,Insert 3632,Insert 132,Delete 1405,Insert 2034,Insert 1811,Insert 879,Insert 1518,Find 2670,Insert 2065,Insert 2483,Find 3815,Find 3199,Find 3794,Insert 1655,Find 357,Find 2372,Delete 3526,Insert 732,Find 257,Insert 3839,Insert 220,Find 2103,Insert 1756,Delete 3518,Find 1998,Insert 3422,Find 2076,Find 793,Insert 46,Insert 3718,Delete 1723,Insert 781,Delete 1089,Insert 1724,Insert 1866,Find 1115,Find 3244,Insert 207,Find 3498,Insert 3564,Insert 2332,Find 3719,Delete 901,Find 2716,Insert 3775,Find 1216,Find 884,Find 2631,Insert 2449,Find 3441,Insert 537,Insert 3500,Find 2945,Find 3116,Find 1374,Find 2067,Find 2791,Find 18,Delete 1060,Find 269,Insert 1274,Find 1015,Insert 2630,Delete 624,Find 764,Find 2132,Insert 3736,Delete 2880,Find 664,Insert 1430,Insert 1998,Insert 2639,Find 1016,Find 1258,Insert 200,Insert 343,Insert 1759,Insert 14,Insert 2967,Find 1121,Insert 650,Insert 896,Insert 3541,Insert 945,Insert 3049,Insert 3571,Insert 1838,Insert 3169,Delete 3088,Delete 1073,Find 3064,Insert 3224,Find 166,Find 3931,Insert 2870,Delete 1579,Insert 2889,Find 2764,Delete 1349,Insert 3432,Find 3520,Delete 3398,Insert 510,Find 645,Delete 247,Find 1742,Find 1188,Find 1143,Insert 1723,Insert 2983,Insert 3038,Find 3788,Find 2367,Insert 1428,Delete 3122,Insert 3855,Insert 1355,Insert 1671,Insert 3300,Find 2531,Insert 3079,Insert 2451,Find 2301,Insert 400,Delete 1700,Delete 1175,Find 942,Find 3922,Delete 2544,Insert 1291,Find 1565,Find 426,Insert 2303,Insert 1104,Find 1107,Find 1377,Insert 3915,Insert 1792,Insert 2863,Insert 886,Find 2855,Delete 1603,Insert 647,Insert 35,Insert 186,Find 3105,Delete 105,Delete 3316,Insert 562,Insert 3312,Find 633,Insert 2993,Delete 2089,Insert 1667,Find 1067,Insert 3063,Find 188,Find 3755,Insert 2088,Find 933,Insert 502,Insert 1918,Insert 3974,Insert 3152,Delete 1351,Insert 2957,Insert 3765,Delete 2738,Delete 3463,Insert 3089,Find 1864,Find 1418,Insert 974,Insert 1921,Find 3122,Insert 3143,Insert 3841,Delete 2217,Find 73,Insert 567,Insert 1668,Insert 2845,Insert 3306,Insert 1662,Insert 1817,Delete 1385,Insert 1569,Insert 1972,Insert 1565,Delete 3656,Insert 681,Find 3425,Insert 3664,Find 2481,Find 3078,Find 3113,Find 1263,Insert 2872,Insert 1792,Insert 1973,Insert 204,Insert 1614,Insert 1516,Insert 3056,Find 2280,Find 1832,Find 3584,Find 1490,Find 2789,Delete 878,Insert 2776,Insert 1585,Insert 95,Insert 3936,Find 1803,Insert 202,Find 2746,Insert 1819,Insert 2515,Insert 1353,Insert 2507,Insert 783,Insert 2716,Delete 1628,Find 131,Find 3716,Delete 2863,Find 857,Delete 3185,Insert 853,Insert 387,Insert 1525,Insert 2091,Insert 3432,Insert 2668,Insert 3527,Insert 2518,Insert 2430,Insert 878,Insert 1065,Find 594,Insert 2318,Insert 3514,Insert 408,Insert 2785,Find 3874,Delete 287,Delete 2365,Insert 3356,Insert 74,Find 630,Insert 3969,Insert 344,Insert 1902,Find 1598,Find 1065,Insert 475,Insert 2542,Delete 3921,Find 2138,Insert 914,Find 2331,Find 1107,Insert 2785,Find 2635,Delete 3209,Insert 557,Delete 2772,Find 2379,Insert 3527,Find 3514,Delete 2632,Find 1889,Find 3724,Delete 303,Find 2960,Find 3580,Delete 2470,Insert 2976,Find 668,Insert 2242,Delete 1550,Find 1141,Delete 87,Find 236,Insert 3933,Find 3481,Insert 1586,Insert 130,Insert 1868,Find 2109,Insert 1359,Find 3791,Find 2990,Find 2367,Insert 2644,Insert 3834,Insert 2731,Insert 3,Insert 2994,Insert 1896,Find 372,Insert 2049,Insert 1363,Insert 2819,Insert 900,Insert 197,Insert 1044,Find 673,Find 1708,Insert 2360,Delete 3804,Insert 2010,Delete 544,Insert 3339,Insert 238,Insert 1302,Insert 2660,Find 2792,Insert 861,Delete 1482,Insert 2859,Delete 1048,Find 169,Insert 3584,Insert 115,Find 861,Insert 1650,Find 2235,Find 1582,Delete 156,Find 1550,Find 1448,Insert 128,Insert 1667,Insert 3244,Insert 1485,Insert 59,Insert 982,Find 536,Insert 3535,Insert 2239,Find 3435,Find 1405,Find 2440,Insert 511,Find 3680,Insert 3314,Insert 1888,Find 909,Find 1228,Insert 2917,Insert 1179,Find 1661,Insert 1071,Insert 656,Delete 3365,Insert 3834,Find 2213,Insert 1464,Insert 3732,Find 206,Insert 1500,Insert 2958,Find 771,Delete 343,Insert 1339,Find 3074,Insert 1709,Insert 3382,Find 3727,Insert 775,Delete 916,Find 3700,Find 693,Find 754,Delete 2550,Delete 2680,Insert 2609,Find 679,Find 1919,Insert 1217,Find 2297,Insert 205,Find 1222,Insert 3884,Insert 3286,Delete 7,Insert 1948,Insert 2043,Find 3079,Insert 2216,Insert 1599,Delete 1472,Insert 310,Insert 2292,Insert 3564,Find 2635,Insert 3256,Insert 2940,Find 1528,Find 2839,Insert 1548,Delete 2495,Insert 3424,Insert 3778,Insert 682,Find 2051,Insert 578,Find 1260,Insert 3199,Find 3316,Insert 1285,Find 3405,Find 1605,Insert 2779,Insert 1787,Insert 1565,Insert 349,Delete 966,Find 3161,Insert 1242,Insert 3024,Find 517,Insert 1191,Delete 853,Insert 710,Insert 2487,Insert 1373,Find 3407,Insert 1921,Insert 417,Delete 2478,Insert 2370,Delete 2073,Insert 2087,Find 2455,Insert 1082,Insert 3083,Find 3864,Insert 2323,Find 3437,Insert 3101,Insert 60,Insert 3567,Insert 3647,Insert 3761,Insert 3125,Delete 3186,Insert 2877,Delete 3220,Insert 280,Insert 1188,Find 1266,Find 3649,Insert 1808,Find 1781,Find 834,Insert 1134,Insert 3655,Find 2559,Find 1431,Delete 1297,Find 3154,Insert 2223,Insert 1242,Insert 2515,Insert 1737,Insert 290,Find 2921,Find 996,Insert 1614,Insert 111,Find 501,Find 3093,Insert 1340,Find 2517,Delete 2040,Insert 1118,Insert 895,Insert 606,Insert 2386,Insert 3625,Find 1192,Find 1948,Insert 2296,Insert 760,Find 2509,Insert 3718,Insert 511,Insert 918,Insert 2702,Insert 1871,Delete 1510,Insert 2766,Find 2818,Find 2540,Insert 3655,Insert 972,Insert 3811,Insert 458,Insert 590,Insert 3923,Insert 1751,Delete 2686,Find 3069,Find 3711,Find 1752,Find 577,Delete 1238,Insert 239,Insert 3819,Find 795,Insert 3676,Insert 1311,Delete 699,Insert 147,Delete 1052,Insert 405,Insert 1620,Insert 1740,Insert 3895,Delete 857,Insert 2943,Insert 1311,Find 2992,Insert 1997,Delete 3122,Insert 3406,Find 2130,Delete 1567,Insert 825,Find 97,Find 296]
-[Find 2428,Find 3647,Insert 896,Insert 1151,Insert 2663,Insert 2716,Insert 273,Find 3780,Insert 1258,Delete 3028,Find 254,Find 3971,Insert 3642,Insert 3548,Find 898,Delete 3768,Insert 1742,Find 1378,Insert 161,Insert 2907,Find 2538,Insert 484,Insert 1928,Find 885,Insert 2731,Find 3537,Find 346,Delete 2910,Find 53,Find 1941,Insert 3014,Insert 2850,Find 2453,Delete 1025,Find 1659,Insert 1211,Insert 2017,Insert 3357,Insert 2248,Find 2794,Find 1726,Delete 1521,Find 3048,Find 1736,Insert 253,Find 801,Insert 1258,Find 1562,Insert 2245,Insert 1018,Insert 3063,Find 3117,Delete 2394,Insert 2345,Insert 3598,Insert 1121,Find 61,Delete 1492,Delete 3718,Insert 1224,Find 314,Find 1384,Insert 1358,Find 184,Find 3736,Find 3148,Find 2138,Insert 3250,Insert 1733,Insert 614,Insert 2892,Insert 1726,Insert 1477,Insert 2451,Find 196,Insert 605,Find 1114,Insert 2617,Insert 623,Insert 991,Insert 1404,Insert 703,Find 549,Insert 1404,Insert 3116,Delete 2667,Insert 1590,Find 3219,Find 2328,Insert 644,Delete 871,Find 2096,Insert 1878,Delete 1242,Find 3792,Insert 2624,Insert 2160,Insert 1514,Find 3342,Insert 1659,Find 2582,Insert 3374,Insert 2649,Insert 2512,Insert 2007,Insert 2957,Find 792,Insert 2744,Insert 1430,Insert 1121,Insert 1800,Insert 1611,Insert 3486,Insert 1461,Insert 2095,Insert 2933,Delete 1704,Find 2988,Delete 3787,Delete 3491,Insert 3270,Insert 1329,Insert 1764,Find 3751,Insert 1760,Find 2329,Insert 3285,Find 3819,Find 1246,Insert 2711,Insert 3513,Find 1179,Insert 1294,Insert 2568,Insert 918,Find 284,Insert 1978,Delete 1044,Find 627,Insert 1664,Insert 854,Find 2787,Find 282,Delete 3387,Insert 1962,Insert 3947,Find 636,Insert 937,Insert 2256,Insert 2430,Find 293,Insert 2714,Insert 3389,Delete 3202,Delete 23,Insert 3750,Find 3360,Delete 771,Find 942,Delete 261,Find 293,Find 193,Insert 1112,Insert 3427,Delete 2051,Find 17,Find 3669,Insert 1357,Insert 3110,Insert 2427,Delete 3021,Find 3716,Insert 846,Insert 959,Delete 797,Insert 2487,Find 2805,Insert 2456,Insert 2517,Insert 3943,Find 1313,Insert 1310,Find 2033,Insert 2100,Insert 2997,Insert 3418,Insert 95,Insert 1592,Find 1171,Delete 3068,Find 2550,Find 827,Insert 468,Delete 890,Find 2917,Find 1592,Find 414,Insert 973,Insert 3383,Insert 2171,Delete 237,Insert 2283,Find 1601,Insert 1011,Insert 127,Delete 3532,Insert 397,Insert 1229,Insert 1004,Insert 592,Insert 1013,Insert 2272,Insert 2208,Delete 1522,Insert 2510,Find 199,Insert 1931,Delete 725,Insert 3344,Insert 2075,Insert 860,Delete 1879,Insert 1407,Find 3059,Find 3246,Delete 2748,Insert 2181,Insert 1556,Delete 28,Delete 2270,Insert 3619,Find 147,Insert 551,Delete 2122,Delete 796,Find 3950,Insert 2022,Insert 2288,Delete 3010,Insert 2281,Insert 3644,Insert 2008,Insert 50,Insert 563,Find 2828,Delete 87,Insert 3310,Insert 3324,Find 2838,Find 3965,Insert 2193,Insert 1657,Find 2816,Insert 1298,Insert 3692,Delete 2018,Find 3796,Find 794,Insert 863,Find 1737,Insert 1166,Insert 3421,Find 24,Insert 2823,Insert 135,Insert 3005,Insert 945,Insert 1635,Insert 3213,Insert 3861,Find 984,Find 1228,Delete 1413,Insert 2711,Find 314,Delete 3460,Find 1920,Find 2102,Find 1207,Insert 2788,Delete 1339,Delete 3800,Insert 2537,Find 3303,Find 1731,Insert 194,Find 430,Find 1559,Find 1058,Insert 2996,Insert 3881,Delete 2325,Insert 3426,Find 1451,Find 2569,Find 1445,Insert 3362,Insert 2733,Insert 2385,Delete 1047,Insert 3832,Insert 1059,Find 2694,Find 1275,Insert 2738,Insert 1084,Insert 1537,Find 656,Insert 3905,Find 1959,Insert 1901,Find 68,Find 961,Insert 3616,Find 2632,Insert 576,Insert 946,Find 213,Delete 3780,Insert 2001,Insert 528,Insert 1836,Delete 1204,Insert 3266,Insert 3925,Insert 1433,Find 3502,Insert 1708,Insert 2421,Insert 3695,Find 2472,Insert 1692,Find 71,Insert 3277,Delete 1108,Insert 3453,Insert 2947,Insert 3100,Find 3276,Find 2048,Find 1468,Insert 3636,Insert 1592,Delete 3846,Find 1716,Insert 1970,Insert 1563,Find 2359,Find 1145,Find 3621,Insert 3779,Find 1021,Insert 2329,Find 3869,Insert 1379,Insert 1278,Insert 2742,Find 831,Delete 2486,Find 1823,Insert 1290,Find 3314,Insert 117,Insert 85,Insert 1734,Find 1453,Insert 2615,Find 3432,Insert 3583,Insert 1200,Find 3080,Find 3907,Insert 1333,Insert 1563,Delete 2662,Delete 476,Delete 318,Insert 757,Insert 2543,Insert 2720,Delete 3745,Insert 1204,Find 1480,Find 3380,Insert 2131,Insert 3149,Delete 2011,Find 2357,Find 2933,Insert 1333,Insert 2846,Insert 1068,Insert 3293,Insert 3324,Find 1987,Find 1505,Find 2471,Delete 1148,Find 2279,Insert 834,Find 1659,Insert 3053,Find 2568,Insert 1223,Find 3799,Find 1317,Find 3074,Insert 3975,Insert 3999,Insert 0,Insert 318,Insert 2122,Insert 2216,Insert 2632,Find 1507,Insert 1467,Insert 956,Find 1890,Insert 1168,Insert 1710,Delete 612,Find 1572,Insert 3448,Insert 374,Find 899,Insert 1306,Insert 2772,Insert 3096,Find 2772,Insert 456,Insert 1285,Insert 795,Find 1772,Insert 3475,Insert 252,Insert 2953,Find 2575,Insert 1708,Insert 17,Delete 3068,Insert 1001,Find 1394,Find 477,Insert 1141,Delete 2205,Insert 1458,Find 505,Insert 3266,Insert 1844,Find 2100,Find 379,Find 2999,Find 1251,Insert 325,Find 1948,Insert 3287,Insert 2108,Find 1614,Find 2221,Insert 3616,Insert 2757,Insert 46,Insert 1398,Delete 1887,Insert 3252,Insert 852,Insert 1331,Find 3268,Delete 3054,Delete 319,Find 2500,Insert 2971,Delete 2526,Insert 3915,Insert 2118,Insert 243,Find 3805,Delete 3323,Insert 2300,Delete 223,Insert 940,Find 1625,Find 399,Insert 466,Insert 3443,Find 3187,Insert 835,Insert 2712,Insert 2852,Find 2854,Delete 822,Insert 1101,Insert 3117,Insert 3578,Find 286,Delete 3584,Insert 2379,Insert 2229,Delete 3460,Find 2869,Find 55,Insert 2182,Insert 1063,Insert 975,Insert 1508,Insert 692,Insert 1719,Delete 1811,Find 3311,Delete 3241,Find 2342,Find 1975,Insert 3552,Insert 3920,Find 2723,Find 2877,Find 3516,Delete 299,Insert 1896,Insert 2160,Insert 3199,Find 3876,Delete 789,Insert 3196,Delete 2677,Insert 703,Insert 3423,Insert 3086,Delete 1513,Insert 105,Delete 2580,Find 849,Find 2574,Find 421,Find 1306,Delete 2625,Insert 2077,Insert 3458,Insert 2746,Insert 675,Find 3500,Insert 1930,Insert 3984,Insert 3035,Insert 1029,Insert 3486,Insert 409,Insert 5,Insert 3820,Find 726,Insert 2445,Insert 3850,Insert 1192,Delete 278,Delete 875,Delete 1282,Insert 3218,Insert 1054,Find 2383,Find 3457,Find 1278,Insert 2936,Find 1259,Delete 2275,Insert 3147,Find 1851,Insert 637,Delete 782,Insert 709,Insert 3750,Insert 2299,Find 682,Find 3138,Delete 3408,Insert 1211,Find 2605,Find 2336,Delete 1920,Insert 3440,Insert 2835,Insert 3213,Delete 472,Find 1163,Insert 1577,Insert 517,Insert 2534,Insert 1042,Find 2915,Insert 763,Delete 1618,Find 3735,Insert 1185,Find 1545,Insert 1226,Insert 3970,Delete 3933,Find 1351,Insert 2915,Insert 2529,Insert 346,Insert 81,Find 496,Insert 2308,Find 3839,Insert 974,Find 2753,Insert 1675,Insert 465,Insert 1475,Find 1593,Insert 2476,Find 3799,Insert 1490,Find 3124,Insert 388,Insert 52,Delete 3247,Insert 1505,Insert 2245,Insert 323,Insert 3077,Find 714,Find 1970,Insert 812,Insert 3017,Delete 2700,Find 3035,Insert 2229,Insert 14,Delete 2856,Insert 1644,Find 2883,Delete 2437,Find 2415,Find 1587,Insert 306,Find 3478,Find 2805,Insert 2397,Insert 566,Insert 3543,Delete 1471,Find 1277,Insert 739,Insert 3752,Insert 698,Find 3877,Delete 1444,Find 3237,Insert 2248,Find 2191,Delete 2613,Find 1455,Insert 468,Insert 37,Insert 3868,Delete 3553,Find 3428,Find 1459,Delete 2286,Insert 2882,Find 959,Insert 3956,Insert 3422,Insert 623,Find 246,Delete 1404,Insert 1609,Delete 3522,Insert 1103,Insert 489,Find 1859,Insert 2590,Insert 1872,Find 3504,Insert 2044,Find 2533,Delete 3057,Delete 3736,Insert 3020,Insert 3536,Find 212,Insert 2916,Insert 2256,Delete 490,Find 1503,Delete 1525,Insert 1004,Insert 2290,Insert 3868,Insert 3340,Delete 1235,Insert 503,Find 1113,Delete 3149,Find 1268,Find 237,Insert 2568,Find 3082,Find 1099,Delete 1760,Insert 669,Delete 3492,Find 3759,Insert 781,Insert 2187,Insert 1331,Insert 3387,Insert 1736,Delete 3140,Insert 3709,Insert 214,Insert 3543,Insert 1731,Insert 1877,Insert 1110,Delete 626,Find 1957,Insert 1812,Insert 784,Insert 1812,Insert 1281,Find 2461,Insert 2356,Find 3748,Insert 3660,Find 2893,Find 2594,Find 281,Delete 1016,Insert 1949,Insert 948,Delete 2891,Insert 521,Insert 3409,Insert 1958,Insert 1400,Insert 3307,Find 3586,Insert 3918,Insert 968,Find 92,Find 1831,Insert 706,Insert 2251,Delete 3177,Find 916,Find 1133,Insert 404,Insert 1742,Find 3658,Find 1257,Insert 3094,Find 2030,Insert 2504,Find 1944,Insert 7,Insert 3883,Find 3162,Insert 2135,Insert 3433,Insert 3267,Insert 1131,Insert 2071,Insert 2788,Find 3947,Delete 988,Insert 3573,Insert 3878,Find 2873,Insert 3171,Insert 167,Find 2253,Insert 1359,Find 2330,Insert 3093,Find 2494,Insert 3180,Insert 2222,Delete 421,Find 864,Find 3591,Find 2283,Insert 3125,Insert 1289,Insert 1254,Insert 3122,Find 2843,Insert 379,Insert 1682,Find 2852,Find 2947,Insert 1803,Find 3879,Insert 972,Find 3887,Delete 819,Delete 3317,Find 110,Find 1179,Delete 406,Insert 1614,Insert 1499,Delete 3946,Find 2222,Insert 3496,Find 852,Insert 267,Insert 1730,Insert 3277,Insert 2888,Insert 1221,Insert 2764,Insert 2951,Insert 1386,Find 723,Find 1680,Insert 1171,Insert 3766,Delete 3380,Insert 3450,Find 1421,Delete 2056,Insert 1736,Delete 2321,Delete 206,Insert 3897,Find 3125,Insert 997,Insert 3622,Delete 3312,Insert 3519,Delete 343,Find 206,Delete 2451,Find 2766,Find 100,Find 1422,Insert 380,Insert 2340,Find 1338,Insert 205,Delete 1889,Insert 2027,Insert 1990,Insert 2025,Insert 1640,Insert 1147,Find 1173,Delete 1441,Insert 3798,Find 2360,Insert 3824,Delete 957,Insert 3207,Insert 2706,Delete 2677,Insert 20,Insert 2780,Insert 1057,Delete 1063,Insert 375,Insert 732,Insert 3160,Find 2719,Insert 3904,Insert 1163,Find 2209,Find 3497,Insert 2594,Insert 597,Find 2414,Insert 1734,Insert 1143,Insert 3963,Find 3595,Insert 1172,Insert 2214,Find 1540,Insert 541,Find 2135,Insert 1090,Find 2012,Find 1258,Insert 3304,Find 279,Find 692,Insert 2408,Insert 1284,Find 3903,Find 2967,Insert 833,Delete 2571,Insert 2328,Insert 2518,Insert 421,Insert 3784,Find 3982,Find 714,Insert 1447,Insert 1391,Insert 3284,Find 3334,Delete 784,Insert 3673,Find 3948,Insert 956,Insert 222,Find 3440,Find 2051,Insert 1907,Insert 186,Insert 188,Delete 3406,Insert 1091,Insert 3728,Insert 1532,Find 3610,Insert 1882,Insert 1727,Insert 25,Delete 2005,Delete 3840,Delete 3588,Insert 2901,Find 1939,Delete 2752,Insert 800,Insert 991,Insert 3915,Find 2100,Insert 249,Insert 1778,Insert 3137,Insert 529,Find 1233,Insert 2265,Find 37,Delete 2498,Insert 3100,Insert 3922,Find 2224,Insert 3585,Insert 1318,Insert 2931,Insert 3328,Find 2720,Insert 1609,Insert 899,Insert 209,Insert 3422,Insert 3230,Find 3474,Find 1180,Insert 2828,Insert 2242,Find 3650,Insert 1162,Delete 3909,Delete 202,Find 3202,Insert 40,Insert 669,Delete 291,Insert 1140,Insert 1460,Insert 3242,Insert 367,Insert 1966,Find 393,Find 385,Find 1109,Insert 1078,Insert 656,Insert 1279,Delete 3984,Insert 2326,Insert 3753,Find 1137,Insert 1594,Find 2766,Find 2495,Insert 811,Delete 3403,Find 238,Find 2788,Find 2070,Delete 2465,Insert 1649,Insert 2337,Delete 3832,Insert 706,Find 3128,Find 3540,Find 763,Find 3557,Insert 3950,Find 2493,Find 301,Insert 1260,Delete 2333,Find 2301,Insert 28,Delete 3852,Find 1114,Find 3753,Find 3963,Find 2935,Insert 1177,Find 3468,Find 690,Find 2928,Insert 3143,Delete 2745,Insert 1590,Insert 3352,Delete 2564,Find 2041,Find 688,Find 3492,Find 1133,Delete 142,Find 2330,Insert 3479,Insert 3353,Find 2703,Find 1594,Find 915,Insert 2685,Insert 2365,Insert 3666,Insert 2797,Delete 2268,Insert 2550,Insert 3800,Insert 3589,Find 2453,Insert 2411,Insert 1656,Insert 1240,Delete 103,Find 1983,Find 651,Delete 1918,Insert 1972,Find 481,Find 1408,Delete 1422,Insert 2111,Find 620,Insert 2365,Insert 1811,Find 782,Delete 394,Insert 451,Insert 3816,Insert 2866,Insert 390,Find 261,Delete 3271,Insert 1017,Insert 1250,Insert 2018,Insert 892,Find 2513,Insert 2255,Insert 3291,Delete 129,Find 2937,Insert 710,Insert 3746,Insert 165,Insert 2758,Delete 3243,Insert 2029,Insert 2514,Insert 384,Insert 1068,Insert 841,Find 3837,Find 691,Delete 2032,Find 1066,Delete 2290,Find 1010,Insert 1398,Find 2446,Insert 3413,Insert 3123,Find 3685,Find 1506,Find 3174,Insert 2388,Insert 539,Delete 393,Insert 2397,Insert 3749,Delete 1864,Find 1737,Find 53,Find 1872,Insert 419,Insert 3428,Find 1369,Delete 3317,Insert 2536,Insert 1510,Insert 133,Insert 2255,Find 2276,Insert 3567,Find 1381,Insert 3228,Insert 1302,Find 2331,Find 2049,Insert 73,Find 2950,Insert 283,Insert 2382,Delete 2388,Find 1775,Insert 1408,Insert 1564,Find 27,Insert 1502,Find 325,Find 189,Insert 115,Delete 3360,Insert 3042,Insert 2481,Insert 748,Insert 1173,Insert 2199,Find 3178,Delete 1137,Delete 346,Insert 1845,Find 3394,Find 1138,Insert 3513,Insert 1639,Insert 3985,Insert 180,Insert 1260,Find 999,Insert 1478,Insert 3555,Insert 3021,Insert 1995,Insert 594,Delete 2232,Find 1850,Insert 3361,Insert 3637,Find 3792,Find 3715,Insert 687,Insert 3579,Insert 3657,Delete 1082,Find 2612,Insert 1043,Find 509,Find 2625,Delete 3408,Delete 3486,Insert 750,Insert 3132,Find 3761,Insert 2268,Find 3158,Find 739,Find 2169,Find 117,Find 2109,Insert 1522,Insert 1495,Insert 1466,Find 620,Delete 1058,Insert 2077,Insert 3908,Insert 584,Insert 970,Insert 3473,Insert 3889,Insert 1449,Insert 3186,Insert 2215,Delete 3956,Find 884,Delete 2214,Find 2238,Insert 2411,Find 623,Insert 2808,Find 3611,Insert 830,Delete 1626,Find 3793,Insert 3614,Delete 3968,Insert 1224,Insert 3969,Insert 1357,Insert 1880,Insert 945,Insert 2537,Insert 1082,Insert 2522,Insert 2980,Find 370,Insert 1522,Insert 2267,Insert 1854,Delete 954,Insert 1290,Insert 3031,Insert 1071,Insert 510,Delete 730,Find 674,Insert 547,Insert 2652,Find 3607,Insert 3269,Find 3602,Insert 3799,Find 588,Find 1466,Insert 3217,Find 396,Insert 897,Delete 3350,Insert 3971,Insert 967,Insert 1263,Insert 910,Insert 1018,Find 2502,Find 1972,Insert 341,Insert 26,Delete 3873,Find 2552,Delete 3047,Insert 1039,Find 251,Find 749,Delete 3999,Delete 3781,Insert 939,Insert 760,Delete 2454,Insert 3939,Find 2136,Insert 3197,Find 970,Insert 690,Insert 3787,Insert 3840,Find 564,Insert 1740,Insert 1844,Insert 1887,Find 1805,Find 2663,Find 3215,Delete 404,Insert 826,Delete 1064,Delete 3771,Find 2953,Insert 4,Delete 3579,Insert 1332,Insert 1909,Find 1547,Insert 1834,Find 3685,Find 1797,Delete 3389,Delete 2325,Insert 2126,Insert 2142,Insert 1926,Find 3501,Insert 2624,Find 3542,Insert 3640,Delete 1466,Find 2740,Insert 928,Insert 2389,Delete 2993,Insert 148,Insert 1783,Insert 938,Find 2456,Find 1939,Insert 2245,Find 3564,Find 3862,Find 128,Insert 3686,Insert 2480,Find 2028,Insert 2757,Find 949,Find 459,Insert 875,Find 3865,Insert 3678,Insert 294,Insert 2034,Insert 54,Insert 2739,Delete 843,Insert 1276,Insert 1386,Insert 297,Insert 2949,Find 2214,Find 2591,Insert 3486,Insert 3084,Insert 2707,Insert 59,Delete 1727,Insert 325,Delete 933,Delete 553,Find 2294,Find 256,Insert 398,Insert 3145,Insert 333,Insert 1308,Insert 91,Insert 2261,Insert 1932,Insert 317,Find 1781,Find 2128,Insert 1109,Insert 1373,Insert 2540,Find 3638,Insert 828,Insert 2747,Insert 3062,Insert 2773,Find 1129,Find 2661,Find 3051,Insert 1149,Find 2621,Delete 1945,Find 2685,Find 2747,Insert 3998,Insert 1896,Insert 3111,Find 946,Insert 3872,Delete 3025,Insert 2398,Find 3585,Delete 769,Insert 369,Insert 1927,Insert 1587,Insert 3030,Insert 3258,Find 2739,Find 1399,Insert 3737,Insert 957,Delete 3725,Insert 3321,Insert 1860,Find 1858,Insert 426,Delete 2286,Find 3755,Insert 1996,Find 2923,Find 1040,Insert 908,Find 3298,Insert 623,Insert 3651,Delete 2008,Insert 1888,Find 843,Insert 3886,Insert 2844,Find 3005,Find 3762,Find 2727,Insert 2197,Insert 2320,Insert 978,Delete 3536,Insert 3553,Insert 1742,Find 2173,Insert 3003,Insert 2207,Insert 1203,Find 914,Insert 688,Insert 3852,Insert 2468,Find 3367,Insert 1944,Delete 3408,Insert 3750,Insert 1539,Find 1395,Delete 1066,Find 1630,Insert 3194,Insert 3033,Delete 571,Find 429,Insert 1566,Find 496,Find 2577,Insert 641,Delete 2713,Insert 2502,Insert 2542,Insert 3678,Insert 1149,Insert 1270,Find 1545,Insert 943,Find 531,Insert 516,Delete 3262,Insert 1306,Find 431,Insert 419,Find 2861,Find 2510,Find 1663,Find 3522,Find 2275,Find 3821,Insert 191,Insert 223,Find 1167,Delete 3116,Insert 206,Find 2700,Find 319,Insert 1202,Find 3217,Insert 363,Find 2693,Find 517,Insert 407,Insert 2055,Delete 220,Insert 1402,Find 2933,Insert 1504,Delete 3138,Delete 55,Find 958,Insert 1307,Insert 2687,Insert 480,Insert 1911,Insert 1908,Find 3344,Insert 2848,Delete 1485,Insert 3888,Find 1813,Insert 1049,Insert 3070,Find 2146,Delete 1715,Delete 183,Insert 735,Delete 2282,Find 1050,Delete 2640,Insert 2262,Insert 717,Insert 332,Insert 3656,Find 3077,Find 1897,Find 1407,Insert 2619,Insert 2539,Delete 2155,Insert 3267,Find 1580,Find 2792,Insert 424,Insert 881,Insert 3644,Find 2692,Insert 876,Insert 1971,Delete 249,Find 3329,Insert 3798,Find 3096,Insert 2604,Insert 1054,Insert 517,Insert 3886,Insert 2817,Delete 1125,Find 3101,Insert 793,Insert 2019,Insert 2248,Delete 421,Insert 1624,Delete 2702,Find 1802,Insert 510,Insert 3337,Find 2871,Find 1537,Insert 2661,Insert 839,Insert 1157,Insert 2367,Insert 466,Delete 1497,Find 302,Insert 3641,Insert 318,Insert 1756,Insert 657,Delete 3411,Find 3318,Find 3502,Insert 3994,Insert 2055,Delete 1789,Find 3326,Delete 459,Insert 1182,Insert 2000,Delete 3019,Find 2493,Find 2259,Insert 692,Delete 3979,Insert 984,Delete 2885,Delete 1410,Find 2705,Delete 1534,Delete 2182,Delete 632,Insert 1650,Find 732,Insert 1949,Insert 1422,Find 2909,Insert 2325,Insert 2991,Find 3486,Delete 33,Insert 2699,Insert 3417,Delete 3268,Insert 2029,Delete 2449,Insert 2279,Insert 3510,Find 1528,Find 3572,Insert 1960,Insert 161,Insert 446,Find 2833,Find 3026,Find 739,Insert 3523,Insert 1188,Insert 3711,Insert 3102,Insert 3162,Delete 1848,Delete 2389,Find 3758,Find 529,Insert 1652,Insert 2761,Insert 2946,Insert 1476,Insert 1387,Insert 1904,Insert 2316,Find 746,Insert 1750,Find 2909,Insert 3622,Insert 1328,Insert 2093,Find 169,Insert 2828,Insert 2645,Insert 2176,Insert 3192,Insert 2937,Find 2828,Insert 1158,Insert 249,Insert 1164,Find 1639,Insert 1728,Find 1654,Insert 878,Insert 1036,Find 918,Find 1605,Insert 2379,Insert 3792,Delete 3085,Delete 2166,Insert 3145,Find 2382,Insert 3830,Insert 2347,Insert 3299,Insert 3526,Delete 3977,Find 1879,Insert 224,Find 3807,Insert 553,Insert 3522,Insert 1299,Delete 985,Insert 1224,Find 3974,Delete 2048,Delete 3322,Insert 1765,Find 3727,Delete 3961,Insert 618,Insert 2956,Insert 2044,Delete 772,Insert 2589,Find 2044,Delete 1855,Find 3907,Delete 2794,Find 3118,Insert 3944,Insert 2854,Insert 403,Insert 2213,Insert 532,Find 2139,Insert 1000,Insert 289,Find 175,Find 1958,Delete 1566,Insert 2691,Insert 2622,Insert 3589,Insert 3258,Find 1177,Insert 446,Find 3013,Find 3114,Insert 673,Insert 312,Insert 3345,Delete 3978,Insert 458,Insert 262,Insert 1093,Insert 1024,Find 2001,Insert 728,Insert 2534,Insert 3083,Delete 2250,Insert 1273,Insert 962,Insert 1234,Delete 2135,Delete 2374,Insert 1937,Delete 3205,Delete 247,Insert 2467,Find 2901,Insert 173,Delete 3791,Insert 1793,Insert 3152,Find 3862,Insert 1575,Insert 1897,Delete 1095,Insert 17,Find 1342,Delete 1876,Insert 1562,Find 288,Insert 125,Find 3146,Find 1941,Insert 1600,Insert 1483,Find 2044,Insert 3842,Delete 2747,Find 305,Insert 1110,Insert 1292,Delete 3349,Insert 2691,Find 1273,Insert 1011,Delete 372,Delete 1362,Insert 2838,Find 3312,Find 2151,Delete 2455,Insert 268,Insert 1056,Insert 2932,Find 907,Insert 838,Insert 1424,Find 3265,Insert 3718,Insert 1714,Insert 653,Insert 1617,Delete 1390,Insert 3457,Insert 2125,Insert 2358,Find 2015,Delete 765,Find 3693,Find 3676,Insert 625,Insert 3602,Delete 2318,Delete 1008,Insert 3732,Insert 516,Find 3614,Insert 1814,Find 422,Insert 3462,Delete 2749,Insert 577,Find 1699,Insert 3816,Find 3525,Insert 3835,Find 2791,Find 3051,Find 2504,Delete 1618,Find 2213,Insert 55,Find 3110,Find 2542,Delete 502,Insert 459,Insert 3375,Insert 458,Insert 2982,Insert 3538,Find 2782,Insert 1431,Insert 2428,Insert 1034,Insert 1436,Insert 3247,Find 2967,Insert 1044,Insert 390,Insert 2987,Insert 3395,Insert 103,Insert 2539,Delete 2165,Insert 1832,Delete 996,Insert 235,Find 768,Find 2727,Find 704,Find 3701,Find 2651,Find 1886,Insert 2831,Insert 3449,Insert 559,Insert 2709,Find 1508,Insert 3008,Find 1499,Delete 2048,Insert 1255,Insert 3603,Insert 177,Delete 1072,Insert 10,Insert 2375,Insert 2969,Insert 3569,Find 1019,Find 2261,Delete 1068,Delete 272,Find 3245,Find 1154,Find 2449,Insert 2638,Insert 3753,Find 645,Insert 2744,Delete 3946,Find 3107,Find 1019,Insert 3537,Insert 1391,Insert 361,Insert 252,Insert 1633,Insert 2079,Find 1113,Insert 378,Find 2478,Insert 2297,Find 1394,Find 861,Insert 943,Insert 3876,Insert 1095,Find 1167,Delete 3054,Find 2999,Find 3118,Insert 3876,Insert 2366,Find 3191,Insert 1566,Insert 3702,Delete 1133,Insert 2815,Insert 2511,Insert 33,Delete 2832,Insert 1454,Find 3585,Insert 584,Insert 3892,Insert 3143,Find 2258,Insert 1406,Insert 2724,Insert 1983,Find 458,Find 2962,Find 3290,Delete 1677,Find 3823,Insert 1355,Delete 1735,Find 2140,Insert 1579,Insert 529,Insert 2064,Insert 906,Insert 1069,Delete 1258,Insert 589,Insert 3976,Insert 1501,Insert 853,Find 3846,Insert 1750,Insert 2800,Insert 2082,Find 3761,Insert 1177,Insert 2456,Insert 3017,Insert 5,Insert 2915,Insert 506,Find 1727,Insert 591,Insert 960,Find 2399,Insert 540,Insert 3586,Insert 2377,Find 637,Find 3671,Find 2766,Insert 2112,Insert 3037,Delete 3934,Insert 2594,Insert 3502,Insert 2680,Delete 1733,Insert 3953,Insert 2393,Find 910,Find 3010,Insert 3118,Insert 1817,Delete 1016,Insert 23,Find 2413,Insert 3138,Insert 2536,Find 75,Insert 2036,Find 3122,Insert 3222,Insert 2659,Delete 2625,Insert 1630,Insert 1906,Delete 2684,Delete 2694,Delete 1097,Insert 1664,Insert 270,Delete 3014,Find 868,Insert 719,Find 2063,Find 1284,Insert 1756,Find 2733,Delete 160,Insert 3033,Insert 3360,Insert 3522,Insert 3681,Find 1720,Insert 1224,Find 1130,Insert 2520,Insert 1597,Delete 514,Find 1210,Find 1541,Insert 3179,Find 2287,Insert 35,Insert 280,Delete 2051,Find 2532,Insert 3280,Find 245,Insert 2644,Insert 2261,Insert 3070,Insert 2413,Insert 3159,Find 2461,Insert 2207,Insert 2963,Insert 515,Insert 167,Find 3677,Insert 2897,Find 2907,Insert 3136,Insert 1602,Insert 3881,Insert 2067,Find 2398,Delete 3168,Insert 1549,Insert 164,Insert 1425,Insert 3272,Delete 1853,Insert 2753,Find 1718,Insert 3176,Find 1079,Find 38,Insert 3931,Insert 1777,Insert 800,Delete 369,Insert 3604,Insert 1023,Insert 3719,Insert 3099,Insert 3730,Insert 3922,Insert 1311,Insert 3066,Find 2018,Insert 388,Delete 1466,Insert 3468,Insert 1014,Insert 376,Find 2316,Insert 269,Insert 3908,Delete 2666,Delete 3991,Insert 1495,Insert 845,Insert 958,Insert 263,Insert 1315,Insert 2638,Insert 2324,Insert 2112,Insert 1877,Find 1656,Insert 2437,Find 2769,Insert 3773,Find 2878,Insert 1298,Find 2514,Insert 3461,Delete 1637,Delete 3402,Insert 846,Find 2998,Insert 1338,Find 3926,Find 3473,Delete 2324,Find 3739,Insert 3624,Insert 1659,Find 900,Delete 2561,Insert 1339,Insert 2698,Find 484,Insert 1642,Insert 1208,Find 3955,Delete 1555,Insert 3609,Insert 2712,Insert 2623,Insert 720,Find 1955,Insert 2821,Insert 1884,Insert 21,Insert 1414,Insert 1399,Insert 3172,Insert 1580,Insert 3751,Insert 812,Find 190,Find 773,Insert 3793,Insert 3815,Delete 1065,Insert 2995,Delete 3524,Insert 3270,Insert 3656,Delete 813,Insert 3005,Find 2327,Insert 3509,Insert 583,Insert 546,Find 2507,Insert 848,Insert 1300,Insert 3936,Insert 2494,Find 1004,Insert 3761,Insert 1468,Insert 1628,Insert 839,Insert 988,Find 2563,Insert 459,Insert 852,Insert 2170,Find 2953,Insert 3634,Find 3802,Find 2777,Delete 384,Find 3015,Find 550,Insert 638,Insert 2213,Insert 3983,Insert 277,Insert 3357,Insert 1845,Insert 2284,Insert 266,Find 1127,Find 1396,Find 1176,Delete 3393,Find 3148,Find 383,Delete 3728,Find 3191,Find 3188,Insert 1681,Delete 2686,Find 226,Find 2975,Find 2581,Find 3888,Insert 3249,Insert 3565,Insert 1011,Insert 1660,Insert 3277,Delete 1736,Find 1409,Find 79,Find 3251,Insert 266,Insert 3022,Delete 1016,Insert 3424,Find 523,Find 1060,Insert 3015,Insert 3519,Insert 2124,Insert 3364,Delete 1131,Find 340,Insert 1136,Find 2982,Insert 337,Find 429,Insert 2881,Find 3032,Insert 2464,Insert 3850,Insert 17,Insert 575,Insert 2571,Insert 235,Insert 1606,Insert 3585,Insert 3227,Insert 3591,Insert 3463,Insert 2066,Insert 3397,Delete 3195,Delete 2268,Delete 3426,Insert 177,Insert 484,Insert 120,Insert 1494,Insert 1527,Insert 1937,Insert 1918,Insert 931,Find 1068,Insert 771,Insert 210,Find 3326,Insert 2004,Insert 1718,Find 2210,Insert 920,Find 1688,Insert 1307,Insert 894,Insert 3558,Delete 187,Insert 1802,Insert 3084,Insert 2633,Find 3299,Find 3549,Insert 1593,Find 308,Find 608,Insert 1964,Insert 290,Insert 2927,Find 14,Find 868,Find 3602,Delete 2830,Insert 2365,Find 354,Insert 2599,Insert 1438,Find 2902,Find 2345,Insert 3517,Insert 2198,Insert 2381,Delete 2699,Insert 1436,Insert 745,Insert 3186,Find 1080,Insert 168,Delete 3953,Insert 2900,Insert 2300,Insert 2680,Insert 3832,Find 1084,Insert 3719,Find 2335,Delete 429,Find 3517,Find 3452,Find 563,Insert 2759,Delete 534,Insert 2106,Insert 2225,Find 614,Insert 504,Find 1200,Find 1011,Insert 216,Insert 2818,Find 3075,Insert 3266,Insert 151,Insert 2012,Insert 96,Find 974,Insert 1402,Insert 3220,Find 2062,Insert 2332,Find 1210,Insert 3292,Insert 3426,Delete 28,Find 3830,Find 2278,Delete 3593,Insert 1694,Insert 2718,Delete 2371,Insert 3651,Insert 637,Delete 3271,Insert 3072,Find 716,Delete 2324,Insert 3310,Find 1085,Insert 600,Find 1840,Delete 39,Insert 3195,Delete 761,Find 1529,Insert 275,Find 3033,Delete 1842,Find 137,Delete 568,Insert 3412,Delete 2334,Insert 150,Find 2252,Find 2225,Insert 3760,Insert 176,Insert 2527,Find 1128,Find 1146,Insert 2324,Find 3396,Find 1618,Insert 2500,Insert 320,Insert 3897,Insert 1498,Insert 2813,Insert 109,Delete 3019,Insert 334,Insert 3385,Insert 3480,Insert 1307,Find 3645,Find 3309,Insert 1984,Insert 1175,Find 1393,Insert 993,Delete 2956,Insert 2246,Insert 2000,Insert 3814,Find 2928,Delete 3482,Find 794,Insert 2217,Insert 3315,Delete 2377,Find 2732,Insert 403,Insert 567,Insert 3699,Insert 2012,Find 506,Find 935,Delete 708,Insert 3885,Insert 3339,Find 3907,Insert 2730,Insert 3397,Insert 3136,Insert 193,Insert 518,Delete 1309,Delete 2933,Insert 747,Insert 263,Insert 2413,Find 1057,Insert 3933,Insert 3747,Insert 3028,Delete 2995,Insert 2373,Insert 2183,Insert 2693,Insert 3226,Insert 3745,Insert 2199,Insert 190,Find 3910,Insert 2000,Insert 2453,Find 1506,Insert 916,Insert 0,Find 781,Insert 271,Delete 942,Insert 1195,Delete 3530,Find 931,Insert 532,Find 634,Find 1192,Find 1996,Find 1705,Insert 1102,Insert 3558,Insert 438,Find 2226,Insert 2231,Insert 1060,Find 4000,Insert 3665,Find 787,Insert 3641,Find 2637,Insert 746,Insert 3512,Insert 104,Insert 2042,Insert 3122,Find 1315,Find 3134,Delete 1814,Insert 1365,Delete 2,Insert 3501,Insert 2965,Insert 3638,Delete 3935,Find 206,Insert 3014,Find 3672,Find 2166,Insert 555,Find 3510,Insert 1536,Insert 3405,Insert 25,Find 2039,Insert 1396,Delete 706,Find 1388,Insert 3389,Delete 1958,Insert 3797,Find 3738,Find 737,Find 3775,Insert 917,Insert 1073,Insert 1471,Insert 1146,Insert 2360,Insert 2412,Delete 259,Insert 2534,Find 3795,Insert 1650,Find 2058,Insert 3946,Find 2681,Find 134,Delete 1826,Insert 2586,Delete 3975,Delete 3302,Find 2101,Delete 2392,Insert 288,Delete 492,Find 2166,Find 726,Insert 3989,Delete 886,Insert 1090,Insert 1416,Insert 1691,Find 244,Find 2990,Find 811,Insert 425,Insert 2662,Insert 2659,Delete 1888,Insert 504,Insert 1422,Find 1009,Delete 1436,Insert 1389,Insert 3897,Find 307,Find 845,Insert 2775,Insert 2357,Find 728,Insert 261,Insert 63,Insert 1520,Insert 341,Delete 2179,Insert 3075,Insert 3110,Find 2819,Insert 2777,Find 1630,Insert 1545,Find 1532,Insert 1065,Find 796,Delete 2044,Insert 587,Find 1313,Insert 2789,Insert 2912,Insert 2471,Insert 291,Insert 2236,Find 2709,Find 3969,Insert 857,Insert 1000,Insert 1956,Insert 1598,Insert 2631,Delete 2968,Find 3372,Delete 1889,Find 2516,Find 3269,Delete 1010,Insert 3942,Insert 2409,Insert 3490,Find 2777,Insert 992,Insert 1161,Insert 2045,Find 896,Find 2350,Insert 3578,Find 1050,Find 154,Find 760,Find 2413,Find 282,Insert 1705,Insert 3933,Find 251,Insert 550,Insert 634,Delete 1199,Insert 1102,Find 1239,Find 1750,Delete 767,Insert 2824,Insert 952,Insert 2121,Delete 2621,Find 1067,Find 978,Delete 181,Find 1391,Insert 537,Find 1718,Insert 572,Insert 2089,Insert 342,Find 1214,Find 1677,Insert 1453,Insert 3183,Insert 3579,Insert 1519,Insert 1585,Delete 556,Find 2099,Find 1457,Insert 1670,Insert 3432,Insert 3428,Find 829,Delete 1801,Delete 807,Find 914,Find 1714,Insert 1405,Insert 1869,Insert 189,Delete 2360,Delete 904,Insert 1472,Find 3156,Insert 3648,Insert 3877,Delete 2464,Delete 2715,Delete 1101,Find 1790,Insert 1651,Insert 1819,Insert 3081,Find 497,Insert 130,Find 2774,Find 2073,Delete 930,Insert 1328,Delete 529,Insert 3753,Insert 3071,Insert 984,Find 1046,Insert 1967,Find 1622,Find 347,Insert 2577,Find 1216,Find 2672,Insert 427,Insert 980,Find 559,Insert 2132,Insert 2583,Insert 1679,Find 3473,Insert 3668,Insert 1868,Insert 526,Find 303,Find 384,Insert 3591,Insert 416,Insert 2091,Insert 2362,Find 285,Find 1287,Insert 3486,Insert 2135,Delete 2554,Find 1815,Insert 3040,Find 824,Insert 3931,Find 1111,Insert 1090,Insert 1795,Insert 1617,Find 1555,Delete 721,Delete 3500,Insert 2014,Insert 1647,Insert 136,Delete 1849,Insert 3592,Insert 3023,Find 1171,Find 2144,Find 938,Find 2961,Insert 1868,Insert 3256,Find 700,Insert 2821,Delete 837,Insert 423,Insert 2601,Insert 3287,Find 774,Find 3452,Insert 755,Insert 3987,Find 1066,Insert 1382,Delete 1861,Find 1044,Insert 3709,Insert 2745,Find 2945,Find 3431,Insert 2067,Insert 1207,Insert 3129,Insert 515,Delete 3468,Delete 3460,Delete 2054,Insert 166,Insert 3297,Insert 1501,Find 1088,Delete 3787,Insert 1652,Insert 144,Insert 1031,Find 3689,Insert 2922,Insert 2867,Insert 2742,Insert 112,Find 341,Insert 1419,Find 2960,Find 1463,Insert 1268,Insert 3082,Find 2732,Insert 2318,Delete 601,Insert 2837,Find 1116,Insert 3490,Delete 3199,Find 3819,Find 1466,Insert 2419,Find 1574,Find 83,Delete 872,Find 889,Insert 3253,Insert 3331,Find 1231,Insert 3711,Insert 3428,Find 3111,Insert 1310,Delete 2462,Find 349,Insert 2867,Find 1228,Insert 983,Find 2303,Insert 1716,Insert 93,Find 3332,Insert 966,Insert 3094,Find 1110,Insert 3465,Find 2604,Find 2521,Insert 2143,Insert 1693,Find 642,Insert 3824,Find 1130,Insert 1636,Delete 3348,Insert 75,Insert 809,Insert 3531,Insert 3333,Delete 64,Find 2529,Insert 3429,Insert 2184,Insert 1497,Insert 451,Insert 282,Insert 1535,Insert 1260,Delete 1029,Find 2961,Delete 2624,Find 1853,Find 1810,Insert 2269,Insert 1886,Insert 2436,Find 2883,Insert 1935,Insert 2117,Insert 1694,Insert 2594,Insert 110,Insert 674,Find 3402,Insert 2953,Insert 1047,Insert 622,Insert 1419,Find 2374,Find 1026,Delete 3644,Insert 2172,Delete 3010,Insert 2615,Find 1185,Find 1685,Find 2899,Insert 3109,Find 324,Find 3386,Insert 119,Insert 3466,Insert 3497,Find 640,Insert 939,Insert 22,Insert 855,Find 2348,Insert 923,Insert 93,Insert 105,Find 1187,Delete 3981,Insert 3072,Insert 3039,Insert 488,Find 2798,Find 798,Insert 1491,Find 3936,Delete 3326,Insert 3772,Find 1556,Insert 2078,Insert 2970,Insert 354,Find 854,Insert 1157,Insert 3466,Find 3475,Find 3622,Insert 521,Delete 1835,Find 2462,Insert 651,Insert 96,Find 2320,Find 3681,Insert 3271,Find 1983,Insert 2689,Find 3250,Find 860,Insert 401,Insert 2441,Insert 1419,Find 2151,Find 244,Delete 59,Find 1317,Insert 1043,Find 2752,Find 2356,Delete 1290,Insert 3628,Find 3036,Insert 1717,Delete 3781,Find 1190,Insert 2377,Delete 3409,Insert 1393,Find 2977,Insert 3799,Find 1136,Insert 1389,Delete 1137,Insert 3271,Delete 266,Insert 3161,Insert 2933,Find 2631,Insert 3957,Find 1380,Insert 782,Insert 106,Delete 210,Insert 182,Insert 571,Find 2852,Insert 889,Insert 1621,Insert 2148,Insert 234,Find 1378,Insert 2221,Find 3212,Insert 3095,Insert 3190,Insert 3985,Find 792,Delete 40,Insert 1845,Delete 2109,Delete 1157,Insert 251,Insert 2918,Delete 278,Insert 2469,Insert 900,Insert 554,Insert 411,Find 1856,Delete 1311,Find 3739,Insert 2671,Find 3194,Insert 3634,Insert 2180,Insert 1894,Find 728,Find 2026,Insert 3995,Insert 3922,Delete 1930,Insert 1542,Insert 659,Insert 3312,Delete 1284,Find 3346,Find 2084,Find 1180,Insert 3945,Insert 1195,Insert 3615,Insert 2103,Insert 1909,Insert 1469,Insert 187,Insert 2735,Insert 1973,Delete 1589,Find 1306,Insert 3505,Insert 2208,Insert 3408,Insert 3615,Insert 675,Insert 2044,Delete 2167,Insert 3336,Delete 3572,Insert 34,Insert 3916,Find 166,Insert 613,Insert 2279,Insert 4,Insert 2783,Insert 1043,Delete 3459,Insert 3325,Delete 3645,Insert 414,Insert 3929,Find 3893,Find 2858,Insert 1266,Insert 2784,Insert 1778,Find 723,Insert 2651,Insert 8,Find 100,Find 224,Insert 1094,Find 3185,Find 612,Insert 1650,Delete 207,Insert 2191,Find 3096,Insert 2323,Delete 650,Delete 552,Find 2817,Insert 3857,Insert 2170,Insert 2065,Find 1544,Delete 1561,Insert 160,Insert 603,Insert 725,Insert 1547,Insert 1874,Insert 2161,Insert 3937,Find 2302,Delete 3298,Insert 3948,Delete 2080,Find 2110,Find 1216,Insert 3161,Insert 2275,Insert 2183,Delete 3365,Insert 3753,Insert 3888,Find 1881,Insert 366,Insert 3415,Find 3858,Delete 1816,Find 2010,Insert 674,Insert 3875,Insert 1345,Find 478,Insert 2089,Insert 2749,Insert 2862,Insert 1390,Insert 686,Delete 1593,Insert 3242,Insert 1806,Insert 3055,Insert 2041,Insert 3316,Find 3426,Insert 1177]
-[Find 3862,Insert 599,Delete 2914,Insert 2113,Find 3397,Insert 686,Find 1640,Delete 3845,Insert 3548,Insert 1340,Find 2427,Delete 815,Delete 3341,Insert 1510,Find 1503,Insert 3750,Insert 2358,Insert 448,Find 1830,Insert 1213,Find 1753,Insert 913,Insert 2336,Insert 3581,Insert 1813,Insert 187,Insert 3377,Insert 1322,Insert 3875,Insert 3067,Find 1126,Insert 261,Find 2230,Insert 2219,Insert 3031,Find 1484,Insert 910,Insert 3014,Insert 303,Find 2073,Find 2260,Delete 61,Insert 3969,Insert 2523,Insert 1087,Insert 233,Insert 3764,Insert 3506,Insert 3548,Insert 3362,Insert 3694,Insert 1503,Find 3734,Insert 2703,Find 2217,Insert 898,Find 1854,Insert 1194,Insert 2330,Insert 3223,Insert 1638,Delete 3390,Insert 1853,Insert 1050,Find 1844,Find 3192,Find 3579,Insert 3472,Delete 364,Find 977,Insert 309,Find 1349,Insert 3126,Find 3835,Insert 1926,Find 3559,Insert 3484,Delete 2964,Insert 30,Insert 3564,Delete 824,Insert 3921,Insert 3443,Insert 3692,Find 438,Find 3108,Insert 36,Insert 3156,Insert 3500,Find 1626,Insert 2007,Delete 3801,Insert 347,Insert 1702,Find 1975,Delete 3335,Insert 1717,Delete 1871,Insert 731,Insert 2209,Insert 2376,Insert 1958,Insert 1683,Delete 3362,Find 2200,Insert 97,Find 1283,Find 1496,Insert 1427,Insert 1262,Insert 2938,Insert 2470,Insert 1470,Delete 3388,Insert 949,Insert 100,Delete 429,Insert 3969,Insert 331,Delete 2259,Insert 1786,Insert 175,Insert 2573,Insert 3938,Find 453,Find 1281,Find 1231,Insert 938,Delete 928,Find 1632,Insert 242,Insert 914,Insert 2987,Find 1753,Insert 2083,Insert 1954,Insert 1971,Insert 2404,Insert 614,Insert 401,Insert 2434,Insert 3008,Insert 2528,Delete 936,Find 2395,Insert 2451,Insert 1842,Find 3341,Insert 864,Insert 195,Insert 3318,Insert 2062,Find 1893,Insert 810,Find 2975,Find 2981,Insert 3428,Insert 3012,Find 1795,Insert 1867,Insert 2822,Insert 3957,Insert 447,Delete 2786,Insert 1716,Insert 664,Find 2437,Delete 1115,Insert 2891,Insert 2198,Find 982,Insert 821,Delete 222,Find 904,Insert 2642,Insert 970,Insert 1961,Insert 2200,Find 917,Delete 3461,Insert 538,Insert 1093,Delete 2440,Insert 3663,Insert 2973,Insert 961,Insert 3588,Insert 99,Insert 1144,Find 3065,Find 2968,Insert 1459,Insert 2638,Find 174,Find 100,Insert 3778,Insert 2847,Insert 1125,Delete 2993,Insert 2658,Delete 1057,Delete 157,Insert 3682,Delete 2222,Find 2291,Find 1957,Insert 3126,Delete 1652,Insert 3102,Delete 1484,Find 3291,Insert 2928,Insert 227,Find 910,Insert 213,Find 302,Insert 2760,Find 2366,Find 2476,Insert 300,Insert 608,Delete 1916,Insert 32,Insert 3702,Insert 1403,Insert 1213,Insert 3723,Find 1785,Find 3274,Insert 2618,Insert 1476,Delete 2569,Find 387,Delete 2516,Insert 377,Delete 1812,Delete 1319,Insert 3543,Delete 2829,Insert 2888,Insert 541,Insert 3895,Delete 1269,Find 946,Find 139,Insert 3122,Insert 978,Delete 3504,Find 288,Delete 224,Insert 3027,Delete 2283,Insert 3725,Find 1255,Find 3243,Insert 1125,Delete 2980,Insert 3552,Find 2424,Delete 3983,Insert 895,Insert 908,Delete 3088,Find 2570,Insert 3613,Insert 482,Insert 1651,Insert 3727,Insert 3247,Delete 14,Find 1691,Insert 358,Find 3810,Insert 1038,Insert 3142,Find 2841,Insert 486,Find 931,Find 2869,Insert 53,Insert 543,Insert 2883,Find 3733,Find 3189,Find 207,Delete 2445,Insert 2615,Delete 2126,Find 1730,Insert 2750,Find 688,Insert 2743,Insert 946,Delete 2044,Find 747,Insert 622,Delete 1084,Insert 1483,Delete 1590,Delete 990,Find 223,Insert 1611,Insert 2405,Find 2445,Insert 3279,Delete 3373,Insert 465,Delete 1720,Insert 651,Find 1757,Insert 2083,Insert 3054,Insert 3853,Find 36,Insert 3197,Delete 903,Delete 3399,Insert 1940,Insert 194,Find 3819,Insert 1441,Find 2346,Find 2961,Delete 12,Find 3932,Find 1217,Insert 3024,Insert 2637,Delete 2284,Insert 2080,Insert 1813,Insert 1531,Delete 390,Delete 1931,Delete 1416,Insert 3633,Insert 1076,Find 1992,Find 1942,Delete 3066,Insert 932,Find 1069,Insert 1400,Insert 2857,Find 3912,Insert 1047,Insert 3385,Delete 3601,Delete 2973,Insert 3222,Find 166,Delete 1335,Insert 2226,Find 2702,Insert 3548,Delete 3845,Insert 521,Insert 1492,Insert 2886,Insert 1884,Find 2579,Insert 1671,Insert 940,Insert 3421,Insert 3961,Insert 80,Delete 391,Insert 1895,Insert 1782,Insert 1884,Insert 478,Insert 410,Insert 1200,Find 2958,Insert 2636,Find 541,Insert 181,Insert 1515,Insert 998,Insert 3788,Insert 173,Insert 1946,Find 402,Find 3267,Insert 487,Insert 52,Insert 2032,Insert 1714,Insert 3800,Insert 2214,Insert 2741,Insert 2852,Insert 644,Insert 3987,Insert 1890,Insert 2868,Find 109,Insert 3063,Insert 2006,Insert 1936,Find 3083,Find 2720,Find 619,Insert 58,Find 1882,Insert 196,Insert 3426,Insert 1001,Insert 327,Insert 1463,Find 2384,Insert 336,Delete 571,Insert 1597,Delete 3474,Find 2527,Insert 2378,Delete 1779,Insert 2216,Insert 2661,Insert 3959,Insert 2644,Find 2293,Insert 2622,Insert 668,Find 303,Insert 159,Insert 3909,Delete 964,Insert 2756,Find 1685,Find 1656,Find 1822,Insert 3433,Insert 1229,Find 139,Delete 1657,Insert 3112,Insert 3105,Find 2795,Insert 2188,Delete 2314,Insert 3614,Insert 1404,Insert 3638,Find 2847,Insert 1916,Insert 3118,Find 876,Insert 197,Insert 2630,Delete 3101,Insert 2406,Delete 338,Delete 2893,Insert 1746,Insert 508,Find 1673,Insert 3168,Insert 2273,Insert 423,Insert 3024,Insert 1108,Insert 2683,Insert 263,Insert 925,Insert 3762,Find 3953,Insert 3772,Find 531,Insert 744,Insert 3901,Find 399,Delete 215,Delete 836,Insert 2512,Insert 567,Insert 3701,Delete 985,Insert 1396,Insert 2094,Find 1240,Insert 145,Insert 233,Insert 904,Insert 1133,Insert 1536,Delete 3853,Delete 36,Find 1912,Find 1681,Insert 3774,Insert 3328,Insert 422,Insert 404,Find 2881,Insert 689,Insert 1060,Delete 61,Insert 2543,Find 1222,Insert 972,Find 2502,Find 344,Insert 2475,Insert 306,Insert 3898,Insert 248,Insert 2123,Insert 1981,Insert 3072,Insert 3054,Find 1907,Insert 3365,Insert 1289,Insert 209,Delete 2847,Insert 3280,Delete 1962,Find 2839,Insert 1495,Insert 674,Insert 1473,Insert 943,Insert 1738,Insert 2417,Delete 518,Find 2354,Delete 273,Delete 2667,Find 2025,Find 2416,Insert 2000,Insert 2568,Find 248,Find 476,Insert 2259,Find 369,Insert 529,Insert 486,Insert 65,Delete 3205,Insert 622,Find 2736,Insert 252,Delete 218,Find 291,Find 1404,Insert 2466,Insert 3167,Insert 163,Insert 488,Find 95,Insert 3304,Delete 1831,Delete 88,Insert 1342,Insert 3968,Insert 431,Insert 3235,Delete 1300,Find 2662,Insert 2193,Insert 311,Insert 245,Insert 3989,Insert 909,Find 311,Insert 2355,Insert 3428,Insert 1441,Find 3278,Insert 2546,Insert 1462,Find 36,Find 1336,Delete 2249,Insert 1463,Insert 2912,Find 638,Insert 2675,Insert 3316,Find 658,Delete 1913,Delete 3537,Insert 862,Find 627,Find 2915,Insert 3767,Find 2478,Insert 357,Insert 287,Insert 1356,Insert 2144,Delete 199,Delete 1065,Insert 2039,Insert 827,Insert 465,Find 3335,Insert 1374,Find 2416,Insert 2688,Insert 2772,Insert 1212,Insert 3334,Find 3763,Find 70,Insert 2352,Delete 356,Insert 1540,Find 2639,Insert 1714,Insert 1487,Insert 1828,Insert 3051,Find 3371,Insert 657,Find 1647,Find 1548,Delete 1277,Find 1638,Find 3324,Find 3752,Delete 1290,Delete 1358,Insert 1314,Insert 1764,Find 1051,Insert 165,Insert 2072,Find 2957,Insert 526,Delete 2657,Insert 3235,Insert 260,Insert 3711,Find 834,Insert 3286,Find 96,Find 1066,Delete 3492,Find 1854,Insert 3016,Find 1138,Find 2929,Insert 3966,Insert 2070,Insert 3004,Insert 3630,Insert 1470,Delete 39,Insert 1639,Find 707,Insert 1336,Insert 3781,Insert 3002,Delete 2018,Insert 602,Delete 1028,Find 1192,Insert 3124,Find 3883,Find 2024,Insert 833,Insert 1777,Insert 650,Delete 2833,Insert 3357,Insert 2871,Find 2379,Insert 2227,Insert 2013,Insert 1816,Delete 3293,Insert 239,Insert 2558,Insert 2413,Find 2597,Insert 1444,Delete 1633,Find 1696,Find 2198,Find 3319,Find 1671,Insert 1623,Insert 570,Insert 3254,Find 1,Find 689,Find 559,Insert 3231,Insert 2021,Insert 2926,Insert 2513,Insert 3343,Insert 1745,Insert 3639,Insert 3141,Delete 3254,Insert 1637,Find 614,Find 1257,Find 1443,Insert 836,Find 2698,Insert 2723,Insert 1019,Insert 2705,Insert 1433,Find 3846,Find 3355,Insert 2197,Delete 2216,Insert 1278,Find 3877,Insert 3601,Insert 1468,Insert 3382,Find 1154,Find 1793,Insert 1445,Insert 902,Insert 2664,Insert 802,Delete 2,Find 3201,Insert 606,Delete 861,Insert 1019,Insert 703,Insert 2152,Find 3928,Insert 3983,Delete 337,Insert 1110,Insert 3610,Insert 261,Insert 2451,Find 408,Insert 2372,Delete 3227,Insert 1175,Insert 651,Find 3701,Find 32,Delete 3691,Insert 3677,Delete 1904,Insert 2898,Insert 3107,Insert 2616,Delete 3966,Insert 3942,Delete 1318,Insert 3399,Find 854,Delete 3024,Insert 375,Find 3314,Delete 2999,Insert 3682,Insert 443,Delete 2845,Find 2623,Insert 476,Insert 2638,Insert 860,Insert 3240,Insert 3005,Insert 16,Insert 1071,Find 751,Insert 2449,Delete 836,Insert 353,Find 297,Insert 317,Insert 41,Insert 923,Find 1736,Delete 346,Delete 2641,Insert 2874,Delete 3185,Insert 2327,Find 926,Find 3001,Delete 3029,Find 2788,Insert 1878,Insert 2355,Find 1436,Find 1122,Insert 387,Delete 3472,Delete 1335,Insert 2227,Insert 3703,Insert 45,Insert 3645,Delete 1608,Insert 1958,Insert 2622,Insert 3674,Insert 1742,Find 3983,Find 2551,Find 3457,Insert 4,Insert 1318,Insert 589,Find 2598,Find 2754,Delete 2383,Find 198,Insert 901,Delete 3828,Find 2881,Find 1810,Find 3756,Insert 3465,Delete 2142,Find 2749,Insert 2252,Delete 3721,Find 491,Insert 999,Insert 1582,Insert 2081,Insert 1422,Insert 751,Insert 790,Delete 296,Insert 1498,Find 731,Insert 584,Insert 2268,Find 2955,Delete 927,Delete 500,Insert 1152,Find 2771,Delete 1509,Find 2865,Find 3963,Find 1837,Delete 2551,Delete 601,Insert 1845,Delete 905,Insert 2904,Find 552,Insert 3350,Find 965,Insert 3381,Insert 3285,Insert 1425,Insert 3320,Find 1815,Insert 665,Insert 3411,Insert 3112,Insert 3765,Find 2133,Find 118,Delete 2665,Find 842,Find 2321,Insert 594,Insert 1017,Insert 3775,Delete 3716,Insert 3202,Insert 780,Insert 2768,Insert 2681,Insert 60,Insert 2341,Insert 2898,Insert 3145,Insert 2587,Insert 583,Insert 1514,Insert 1079,Insert 3031,Insert 46,Insert 1424,Insert 6,Find 2888,Insert 3387,Insert 3490,Find 1632,Find 1165,Insert 2086,Insert 1065,Delete 2316,Find 2930,Insert 2130,Insert 435,Insert 417,Insert 1028,Insert 3271,Insert 1649,Insert 1174,Find 2717,Insert 2040,Insert 3718,Insert 1333,Find 1265,Insert 711,Insert 755,Find 1249,Find 3553,Insert 1767,Insert 3916,Find 1210,Insert 954,Insert 198,Insert 3457,Insert 1339,Insert 1981,Delete 284,Insert 2110,Insert 1359,Find 1904,Insert 3808,Find 2520,Insert 956,Delete 3209,Insert 65,Insert 3609,Insert 3938,Delete 751,Insert 2428,Delete 3712,Find 1565,Insert 1701,Insert 830,Delete 3658,Delete 3034,Insert 977,Delete 2604,Find 1494,Insert 3579,Insert 3951,Find 1385,Find 525,Insert 2578,Find 3229,Find 1767,Insert 2169,Insert 1745,Insert 284,Insert 2816,Insert 553,Delete 2287,Find 188,Find 1165,Insert 2717,Delete 3332,Insert 1794,Insert 3173,Find 1424,Find 495,Find 2903,Find 1947,Insert 2690,Insert 104,Insert 3180,Find 697,Insert 1641,Find 378,Insert 3029,Insert 2921,Insert 580,Insert 3756,Insert 2494,Delete 236,Find 394,Insert 1468,Insert 3598,Insert 3013,Insert 2192,Find 1350,Insert 2673,Find 38,Insert 1423,Insert 2990,Insert 630,Find 3572,Find 414,Insert 1883,Delete 2504,Delete 349,Insert 3986,Find 3733,Insert 2486,Insert 3014,Find 1101,Find 1936,Insert 3395,Delete 3166,Insert 395,Insert 135,Insert 1185,Find 1903,Insert 2784,Find 140,Find 2023,Insert 1784,Insert 2840,Delete 1560,Delete 2227,Delete 605,Insert 3564,Find 347,Insert 2581,Find 1913,Insert 3129,Insert 477,Insert 1361,Find 3124,Insert 3261,Insert 1488,Insert 275,Insert 2665,Insert 2670,Delete 1461,Insert 827,Find 2193,Insert 3975,Insert 2786,Insert 149,Insert 901,Insert 3125,Find 3266,Find 3209,Insert 3473,Insert 1874,Insert 3109,Insert 2674,Insert 2135,Find 3074,Find 3421,Insert 1299,Insert 31,Find 3754,Find 3069,Insert 3485,Insert 1979,Insert 1292,Find 2007,Find 2508,Insert 3999,Delete 806,Insert 2919,Insert 566,Insert 1121,Insert 2896,Insert 3232,Insert 215,Insert 243,Find 1334,Delete 1947,Insert 3070,Find 3710,Insert 650,Insert 1132,Insert 2927,Insert 1014,Delete 374,Insert 2102,Find 271,Insert 3735,Find 1091,Find 3290,Insert 3739,Insert 2124,Delete 464,Insert 2794,Find 2891,Insert 3758,Insert 3639,Find 3422,Delete 2426,Insert 2812,Insert 1022,Insert 3039,Find 3571,Find 86,Insert 2110,Insert 3572,Insert 487,Insert 3983,Insert 3078,Insert 1067,Find 1933,Delete 3489,Insert 2556,Insert 9,Delete 1978,Insert 253,Delete 634,Insert 1107,Find 3092,Insert 3156,Find 2781,Insert 2780,Insert 2830,Insert 2890,Insert 1566,Find 3108,Insert 3804,Find 2958,Find 1436,Find 2037,Delete 1167,Insert 85,Find 2809,Find 3512,Insert 3521,Insert 3773,Insert 3360,Find 2859,Find 2763,Find 627,Insert 1288,Find 1703,Find 3604,Delete 1535,Insert 3808,Find 1488,Find 983,Insert 2213,Insert 1203,Insert 3278,Insert 2936,Insert 2978,Find 2084,Insert 3164,Find 1238,Delete 856,Find 1334,Insert 298,Find 3850,Delete 1248,Find 591,Find 559,Insert 3124,Insert 2510,Insert 3576,Insert 3302,Insert 3746,Insert 3918,Insert 847,Find 1334,Find 592,Insert 316,Delete 3022,Insert 419,Delete 3796,Find 763,Insert 3905,Find 414,Find 2552,Insert 2358,Find 2480,Delete 2349,Delete 2650,Find 1810,Find 276,Insert 3348,Insert 3009,Insert 746,Insert 220,Delete 1361,Delete 2729,Find 1090,Insert 1938,Insert 3038,Insert 1671,Insert 1188,Insert 2979,Find 3627,Find 41,Insert 2425,Insert 891,Insert 791,Delete 750,Find 3400,Delete 1433,Insert 2290,Insert 1794,Insert 1015,Insert 86,Insert 3061,Delete 531,Find 1017,Insert 799,Delete 1124,Insert 2347,Insert 310,Insert 361,Insert 579,Insert 1326,Insert 3635,Delete 2732,Find 3867,Find 2697,Find 2110,Insert 2442,Find 560,Insert 2461,Insert 1039,Insert 1433,Find 3058,Insert 3674,Insert 3969,Find 860,Find 945,Insert 3355,Insert 136,Insert 240,Find 3978,Insert 3144,Insert 164,Insert 790,Insert 662,Insert 713,Delete 2860,Insert 2326,Insert 2033,Find 2343,Insert 3611,Insert 499,Find 3943,Find 1667,Find 1923,Insert 385,Find 483,Find 3078,Insert 1222,Insert 3075,Insert 3751,Delete 2150,Insert 3708,Insert 691,Find 3556,Find 1854,Insert 958,Insert 3759,Insert 11,Find 1278,Insert 1358,Find 3224,Find 2139,Insert 2878,Find 3728,Insert 3609,Insert 2291,Insert 221,Find 1051,Insert 581,Find 18,Insert 2053,Delete 1697,Insert 1767,Delete 1803,Insert 497,Find 2450,Insert 1362,Find 602,Find 1390,Insert 1323,Insert 284,Find 1855,Delete 119,Insert 3817,Insert 937,Insert 1827,Find 3813,Insert 2026,Find 1758,Insert 3238,Insert 237,Find 1668,Insert 3297,Find 3882,Insert 3582,Find 1046,Insert 1367,Delete 1725,Find 3445,Insert 722,Find 1827,Insert 3289,Insert 535,Find 755,Insert 3784,Insert 3395,Insert 1358,Insert 660,Find 3076,Find 2473,Insert 253,Insert 680,Insert 1218,Insert 3573,Insert 1941,Insert 1563,Insert 3067,Insert 3623,Insert 3169,Insert 2581,Find 1381,Find 973,Delete 1159,Insert 2698,Insert 307,Find 1590,Insert 1271,Find 1730,Insert 2525,Find 2959,Insert 778,Insert 1359,Insert 432,Insert 2470,Insert 3827,Insert 2935,Insert 1955,Insert 1023,Insert 3065,Delete 2251,Insert 2788,Delete 2702,Find 168,Insert 3629,Find 2180,Find 991,Insert 3569,Insert 2467,Find 1465,Find 3335,Insert 2092,Insert 2839,Find 589,Find 3071,Insert 764,Insert 3761,Insert 302,Insert 1136,Find 1549,Insert 149,Insert 2973,Insert 2020,Insert 1002,Delete 1133,Insert 1470,Insert 3123,Insert 3736,Insert 858,Insert 78,Insert 1036,Insert 941,Insert 972,Insert 282,Delete 8,Insert 3305,Insert 1018,Insert 1012,Insert 250,Insert 71,Insert 1262,Find 3019,Find 769,Insert 560,Insert 1641,Find 603,Insert 3017,Find 2638,Find 2899,Insert 1845,Find 1843,Insert 2995,Find 1759,Insert 2947,Insert 2290,Insert 2506,Insert 59,Insert 670,Find 2729,Insert 1157,Find 500,Find 2447,Insert 1922,Insert 677,Insert 3982,Delete 781,Insert 1976,Insert 3998,Delete 1996,Delete 1168,Find 861,Insert 3943,Insert 722,Insert 2122,Insert 3962,Insert 1032,Insert 660,Insert 1196,Insert 3528,Find 1485,Find 3022,Delete 104,Insert 2410,Insert 3609,Insert 2765,Insert 1097,Delete 2562,Find 1756,Insert 3522,Insert 879,Insert 263,Find 3984,Insert 3620,Find 2195,Find 2277,Delete 2679,Find 2452,Insert 1693,Find 2256,Insert 1380,Insert 2419,Insert 3461,Insert 3482,Find 1135,Insert 332,Insert 1128,Insert 3104,Find 1423,Find 3598,Find 2103,Delete 394,Insert 1978,Insert 3798,Insert 820,Insert 3939,Delete 3738,Delete 648,Insert 702,Insert 2149,Find 931,Insert 2516,Delete 1474,Delete 3645,Insert 3759,Insert 2533,Delete 1219,Find 3372,Insert 1457,Insert 1004,Insert 3332,Insert 2976,Insert 945,Find 22,Find 2611,Find 286,Find 2330,Delete 1968,Insert 3801,Insert 516,Insert 1961,Find 693,Delete 743,Delete 682,Find 2702,Find 656,Insert 2170,Insert 1955,Insert 2256,Find 2927,Find 1675,Find 921,Insert 1720,Delete 3922,Insert 3207,Find 2763,Find 928,Insert 2780,Delete 552,Insert 2138,Find 3559,Find 2156,Insert 3677,Find 1694,Find 706,Find 3471,Insert 3681,Delete 3536,Delete 2905,Insert 735,Insert 3118,Find 655,Find 569,Insert 1642,Find 2040,Insert 3505,Insert 3666,Find 1743,Insert 2466,Insert 314,Delete 3896,Insert 2887,Insert 3231,Find 3715,Insert 2632,Insert 926,Find 2125,Insert 277,Insert 3680,Find 3156,Delete 2778,Insert 3287,Find 1077,Insert 642,Delete 2513,Delete 2713,Insert 1499,Find 1480,Insert 313,Delete 2254,Insert 1019,Insert 1085,Delete 2894,Insert 717,Find 2050,Delete 1497,Insert 3904,Find 3125,Insert 3713,Insert 159,Insert 2177,Insert 3373,Delete 720,Insert 3621,Insert 3645,Insert 3715,Insert 2095,Insert 2785,Find 546,Delete 1747,Insert 2945,Insert 3395,Delete 432,Insert 348,Insert 3711,Find 1229,Insert 1963,Insert 2851,Insert 486,Insert 360,Insert 1978,Insert 2676,Insert 3604,Find 1828,Find 2711,Insert 3901,Delete 3555,Insert 2629,Insert 206,Delete 3840,Delete 2600,Insert 1057,Insert 1526,Insert 1058,Delete 1354,Delete 754,Insert 254,Insert 3237,Find 3818,Find 2190,Insert 2643,Delete 365,Delete 3360,Insert 3236,Insert 3133,Find 747,Find 2837,Delete 1350,Delete 707,Insert 2490,Delete 194,Insert 3800,Insert 3633,Insert 3076,Insert 3857,Insert 3850,Insert 226,Find 2566,Insert 3596,Insert 3706,Find 3505,Insert 3768,Insert 226,Delete 778,Find 2356,Insert 3432,Delete 1084,Find 2020,Insert 1609,Insert 1778,Find 693,Insert 109,Insert 2892,Insert 3912,Find 2545,Insert 1639,Delete 2058,Find 2241,Find 1187,Find 3675,Insert 470,Insert 1502,Insert 551,Insert 2183,Insert 2004,Insert 3377,Insert 1538,Insert 3001,Insert 3833,Delete 94,Find 1460,Insert 3439,Insert 3033,Insert 1815,Insert 3844,Insert 2495,Insert 3706,Insert 768,Insert 2229,Find 3258,Insert 1597,Insert 3520,Insert 3888,Delete 1295,Find 269,Insert 2565,Delete 236,Find 81,Find 2834,Insert 2288,Insert 849,Delete 3381,Insert 2307,Find 2419,Find 1515,Delete 1286,Insert 3578,Insert 1300,Find 2104,Delete 1702,Insert 3645,Insert 752,Find 965,Insert 2430,Find 2246,Delete 3716,Insert 3266,Insert 1632,Delete 2678,Insert 2189,Insert 3428,Delete 3491,Insert 1520,Find 2535,Find 1914,Insert 3264,Insert 1658,Find 2811,Find 2209,Insert 1233,Find 2637,Insert 2061,Find 1565,Insert 28,Find 2194,Insert 2515,Delete 1255,Insert 453,Insert 3299,Insert 3663,Insert 1272,Delete 3794,Insert 1619,Insert 2844,Insert 2934,Insert 3718,Insert 669,Insert 2696,Insert 128,Find 420,Insert 1127,Find 2735,Insert 2724,Insert 1160,Delete 2305,Delete 2712,Insert 2960,Insert 467,Insert 246,Find 2882,Insert 3906,Insert 3764,Insert 686,Insert 2757,Insert 3752,Insert 987,Find 348,Find 3039,Find 3163,Find 1378,Insert 2013,Find 334,Insert 399,Find 2721,Insert 2851,Find 1337,Find 328,Delete 397,Find 3862,Insert 2141,Find 970,Find 151,Insert 557,Find 1008,Insert 3536,Delete 994,Insert 955,Insert 1634,Insert 1571,Find 3355,Insert 3295,Insert 3077,Delete 1390,Find 2164,Insert 3380,Delete 2376,Insert 880,Insert 1018,Insert 3263,Insert 3904,Insert 1411,Find 3960,Insert 2267,Insert 67,Insert 1902,Delete 3126,Insert 1431,Insert 1230,Find 893,Find 3622,Find 2430,Insert 3644,Insert 2033,Delete 2045,Insert 151,Insert 262,Find 3436,Insert 2014,Insert 1088,Insert 1521,Insert 373,Insert 3924,Find 1675,Delete 3549,Insert 1154,Find 1542,Insert 1470,Find 3544,Insert 3327,Find 2372,Insert 3985,Delete 2720,Find 676,Insert 278,Insert 3228,Insert 2348,Insert 2456,Find 1637,Insert 1829,Find 2633,Delete 3909,Find 958,Insert 2315,Insert 314,Find 3278,Find 2757,Insert 2585,Find 3431,Find 404,Insert 3432,Insert 2822,Insert 3625,Insert 1152,Insert 328,Insert 3246,Insert 2892,Find 3986,Insert 1483,Insert 3928,Find 308,Find 3094,Insert 772,Insert 329,Insert 1330,Insert 1593,Insert 2404,Find 891,Insert 715,Find 505,Delete 3915,Insert 3001,Insert 3441,Insert 1700,Find 3665,Insert 826,Find 1426,Insert 2696,Insert 2960,Insert 3130,Find 2360,Find 1728,Find 2130,Insert 2531,Find 191,Insert 1322,Delete 3212,Insert 324,Find 588,Find 1545,Find 503,Insert 3208,Insert 640,Insert 3752,Delete 265,Insert 1646,Find 818,Insert 3404,Insert 1449,Insert 378,Insert 3884,Find 2155,Insert 985,Insert 974,Delete 2061,Insert 1364,Delete 1747,Find 2018,Find 947,Insert 179,Find 2593,Insert 445,Insert 958,Insert 3323,Insert 896,Delete 553,Insert 2660,Insert 3565,Insert 3874,Find 3048,Insert 3334,Insert 2031,Insert 2418,Find 471,Find 3923,Find 3762,Insert 1876,Insert 3417,Find 3567,Insert 1291,Insert 2713,Insert 3350,Delete 1376,Insert 796,Insert 1464,Insert 314,Insert 839,Insert 2807,Insert 1537,Find 3352,Insert 3306,Insert 2190,Find 2321,Insert 1796,Insert 2365,Insert 524,Find 2234,Find 1280,Insert 2646,Insert 1704,Find 3421,Insert 1708,Insert 2670,Insert 3024,Insert 2078,Insert 1620,Delete 2290,Insert 3857,Delete 686,Find 3834,Insert 2355,Find 3059,Delete 3130,Insert 1286,Find 1371,Insert 2338,Insert 323,Insert 1131,Delete 2747,Insert 1110,Insert 1404,Delete 3341,Insert 2015,Insert 2577,Insert 1754,Insert 3255,Insert 1609,Find 2964,Insert 2097,Find 838,Find 3487,Insert 2523,Insert 1573,Insert 3502,Insert 3351,Insert 2873,Insert 548,Insert 3362,Delete 1911,Insert 1478,Delete 3587,Delete 885,Insert 1962,Insert 343,Insert 767,Insert 91,Delete 2205,Delete 2034,Insert 3404,Find 3083,Insert 3751,Find 2414,Find 3235,Insert 2383,Find 133,Insert 2034,Insert 3315,Insert 2729,Find 3561,Delete 740,Insert 341,Find 3806,Insert 1624,Insert 2096,Find 3743,Find 1737,Insert 3669,Find 1411,Find 468,Delete 19,Find 795,Insert 1338,Find 2740,Insert 837,Delete 425,Find 1968,Delete 3226,Find 2668,Insert 3078,Insert 1252,Insert 785,Insert 693,Find 2786,Insert 2246,Find 2173,Insert 2608,Find 1207,Find 3860,Find 2990,Delete 2855,Insert 2376,Insert 3067,Insert 1492,Insert 403,Insert 2147,Insert 3251,Find 1181,Find 243,Insert 3540,Insert 1359,Delete 3602,Insert 2319,Find 1688,Insert 3490,Find 271,Insert 2845,Insert 1587,Delete 743,Find 755,Delete 3042,Insert 2746,Find 3655,Find 1770,Insert 2468,Insert 982,Insert 2302,Insert 2303,Insert 3258,Insert 3531,Find 1039,Insert 3254,Insert 1931,Insert 902,Insert 1335,Find 3431,Find 2005,Find 1706,Insert 1178,Insert 2913,Insert 1396,Find 1719,Find 2048,Insert 2532,Delete 3154,Insert 3659,Delete 2290,Insert 1499,Find 1473,Find 922,Delete 2518,Insert 3241,Delete 3789,Insert 1866,Insert 713,Insert 1973,Find 1637,Delete 2838,Find 1958,Insert 2797,Delete 3646,Delete 3813,Delete 1119,Insert 3859,Delete 2036,Insert 1398,Delete 2677,Insert 559,Delete 3489,Delete 20,Delete 3050,Find 300,Insert 1725,Insert 1768,Insert 3446,Insert 2837,Insert 3042,Insert 3278,Insert 138,Insert 3864,Find 3280,Insert 3079,Delete 2849,Insert 3272,Insert 817,Find 1589,Find 465,Find 3963,Insert 1620,Insert 815,Insert 1085,Insert 679,Insert 840,Insert 1282,Delete 569,Find 1362,Insert 2586,Insert 3077,Find 3902,Insert 2815,Delete 388,Insert 775,Delete 2517,Insert 177,Find 611,Insert 86,Insert 1700,Insert 2454,Delete 3222,Find 3707,Insert 2156,Find 1166,Delete 267,Find 3540,Insert 2050,Insert 1838,Insert 2826,Insert 3532,Insert 343,Insert 1755,Insert 2477,Insert 2119,Delete 3891,Insert 1800,Insert 3859,Insert 2806,Find 1620,Find 3054,Insert 855,Insert 3240,Find 3493,Insert 2936,Find 3186,Insert 792,Delete 3744,Insert 68,Delete 2486,Insert 698,Delete 3577,Delete 2391,Insert 3375,Insert 2484,Insert 3043,Insert 570,Find 1538,Find 95,Insert 3997,Insert 2000,Insert 171,Insert 1791,Insert 1687,Insert 1579,Delete 1311,Insert 3873,Insert 3142,Delete 2632,Insert 2839,Insert 1400,Insert 941,Find 165,Delete 2829,Find 2488,Insert 2726,Find 606,Delete 84,Insert 1701,Delete 3490,Find 2821,Find 3460,Find 2875,Find 1046,Find 958,Delete 1639,Insert 2055,Insert 1734,Insert 2958,Find 2867,Find 3612,Find 2189,Insert 3145,Find 195,Delete 3232,Insert 1959,Find 1915,Find 2258,Delete 441,Insert 3181,Insert 448,Insert 3510,Insert 2763,Delete 3495,Insert 2115,Insert 3137,Insert 1037,Insert 1126,Delete 118,Insert 1539,Insert 2360,Find 3507,Find 800,Find 3020,Insert 218,Insert 229,Insert 2169,Insert 2761,Find 1893,Find 2129,Insert 3142,Insert 2147,Insert 315,Delete 3251,Find 1473,Delete 1541,Delete 3697,Insert 1203,Delete 626,Find 3401,Insert 3113,Delete 3374,Find 476,Insert 2736,Find 2695,Insert 350,Find 3840,Insert 1258,Insert 554,Insert 2499,Delete 3818,Find 3434,Insert 3283,Delete 1759,Insert 3921,Insert 3771,Insert 3276,Delete 3118,Insert 2659,Insert 3328,Insert 284,Insert 3971,Insert 2273,Insert 1913,Delete 1076,Insert 2602,Find 3065,Delete 3468,Delete 1782,Delete 3187,Insert 1372,Insert 1931,Find 3493,Find 3178,Insert 2083,Insert 3612,Insert 3241,Insert 3386,Insert 2119,Delete 2741,Insert 3439,Insert 398,Insert 285,Insert 1612,Insert 1596,Insert 1124,Find 2343,Insert 748,Insert 951,Insert 860,Insert 2969,Find 1226,Insert 350,Insert 2753,Delete 2407,Find 2300,Insert 3293,Insert 2555,Insert 2289,Delete 3647,Find 1360,Delete 1490,Find 3488,Insert 1142,Insert 150,Insert 3000,Find 484,Delete 3503,Insert 548,Insert 4000,Find 1931,Find 2641,Delete 3965,Insert 83,Insert 2576,Insert 1985,Insert 755,Delete 1882,Find 493,Find 908,Insert 2452,Delete 3931,Insert 1464,Find 1628,Delete 2156,Insert 808,Find 3265,Delete 2059,Delete 671,Find 2757,Insert 3569,Find 20,Insert 3463,Insert 304,Insert 1081,Delete 3766,Find 577,Insert 1614,Insert 1155,Find 3084,Insert 2834,Find 2556,Delete 56,Insert 3310,Insert 1128,Find 1582,Delete 2714,Insert 159,Insert 582,Insert 3616,Find 232,Insert 3790,Insert 1333,Delete 2092,Find 1830,Insert 2855,Insert 327,Insert 520,Insert 2190,Delete 235,Delete 456,Insert 2060,Insert 1378,Insert 535,Insert 2137,Delete 996,Insert 2053,Find 1998,Insert 1139,Find 1988,Insert 3718,Insert 2439,Insert 296,Delete 2291,Find 386,Insert 3236,Insert 3361,Find 1361,Insert 2952,Insert 2636,Delete 3241,Insert 2094,Insert 65,Find 2852,Find 2773,Insert 1474,Insert 295,Insert 2206,Insert 1316,Find 1207,Insert 2654,Insert 544,Insert 631,Find 3500,Find 358,Find 2163,Find 1441,Insert 504,Find 3031,Delete 1740,Find 2409,Find 535,Delete 2338,Delete 3860,Insert 1571,Find 1790,Delete 817,Insert 2597,Insert 3874,Find 400,Insert 590,Find 966,Delete 2975,Insert 170,Find 2039,Insert 1254,Insert 1745,Delete 3635,Find 1819,Find 3106,Insert 2413,Find 1397,Insert 2822,Insert 3483,Delete 2928,Find 1893,Insert 1393,Find 3275,Insert 1447,Insert 837,Insert 3541,Insert 111,Find 2215,Find 700,Insert 642,Insert 1898,Find 2699,Insert 3376,Find 2228,Find 3777,Delete 3141,Insert 1129,Find 495,Find 3130,Delete 1450,Insert 1832,Insert 1440,Delete 489,Insert 2757,Delete 210,Insert 209,Insert 3217,Insert 2463,Insert 3697,Delete 3356,Insert 1862,Find 3012,Insert 946,Insert 2729,Insert 1281,Find 2641,Insert 3570,Find 1780,Find 345,Delete 2476,Insert 3063,Insert 1184,Find 1135,Delete 3175,Delete 250,Delete 2687,Insert 665,Insert 2143,Delete 3679,Insert 1043,Insert 509,Insert 2191,Insert 1615,Insert 2528,Insert 2192,Insert 3318,Insert 2940,Find 201,Insert 2446,Insert 1215,Insert 186,Delete 1152,Insert 3953,Insert 1150,Find 1832,Find 114,Delete 529,Insert 1079,Insert 818,Find 3766,Insert 12,Insert 545,Find 141,Insert 893,Find 2360,Delete 2020,Insert 1635,Insert 3696,Insert 1516,Delete 1541,Insert 2891,Find 2908,Insert 2822,Find 3700,Find 1403,Delete 3016,Insert 3451,Insert 3677,Find 1105,Insert 1447,Insert 2319,Find 1822,Find 3082,Insert 2329,Find 2761,Delete 1176,Insert 2150,Find 2483,Delete 3726,Find 1441,Insert 1150,Insert 1898,Insert 3604,Insert 2392,Insert 1307,Insert 3711,Insert 1023,Find 427,Insert 565,Insert 2095,Find 1513,Delete 2530,Find 3843,Find 2110,Insert 1506,Find 1534,Insert 1442,Insert 1170,Insert 2047,Find 480,Delete 709,Insert 1976,Insert 3866,Insert 938,Find 3939,Find 1272,Delete 1855,Insert 2327,Delete 1210,Insert 3092,Insert 3183,Insert 1050,Insert 402,Insert 1047,Delete 1155,Insert 1619,Find 3181,Find 3158,Insert 570,Insert 1695,Find 960,Find 889,Insert 2620,Insert 1116,Insert 3966,Find 3081,Insert 783,Insert 1789,Insert 38,Find 3679,Insert 2174,Find 3042,Insert 2475,Find 2493,Delete 1889,Insert 1907,Insert 1173,Find 1609,Insert 630,Insert 3635,Insert 2999,Delete 1898,Insert 2257,Insert 1283,Find 3231,Find 2359,Delete 1798,Insert 590,Find 1983,Insert 573,Insert 1326,Delete 660,Insert 3562,Insert 1218,Delete 2714,Find 1072,Insert 3171,Insert 2200,Find 3663,Insert 852,Insert 2529,Find 3680,Find 1037,Insert 2770,Insert 1395,Insert 1118,Insert 3574,Find 1347,Find 3709,Find 1634,Insert 538,Insert 3693,Insert 2602,Insert 574,Insert 1926,Insert 395,Insert 32,Find 1740,Insert 879,Insert 3232,Delete 1301,Insert 1696,Insert 3960,Insert 3193,Insert 167,Insert 2804,Delete 1731,Insert 3812,Delete 2492,Insert 1962,Insert 1700,Delete 3050,Delete 2680,Insert 2731,Insert 809,Insert 3246,Delete 192,Find 3497,Insert 68,Find 1317,Insert 2398,Find 3150,Insert 1418,Insert 3290,Delete 1556,Insert 3752,Insert 2061,Find 2448,Insert 1575,Find 1220,Insert 3051,Find 532,Insert 2502,Insert 1101,Find 68,Insert 1128,Find 3700,Insert 1613,Find 1337,Insert 2364,Delete 1638,Delete 3157,Insert 469,Find 3768,Insert 3361,Insert 1286,Find 3725,Find 583,Find 2197,Insert 839,Find 3265,Insert 24,Find 2921,Insert 3945,Insert 1183,Insert 3347,Insert 3823,Find 3562,Insert 3599,Insert 3849,Insert 246,Insert 2473,Find 2964,Find 2593,Insert 955,Find 3769,Insert 293,Find 719,Delete 3565,Insert 632,Find 3805,Insert 3566,Insert 2412,Insert 1712,Find 1146,Insert 2259,Insert 1707,Insert 127,Insert 262,Find 1015,Find 3014,Find 1907,Insert 3386,Insert 1044,Insert 2393,Insert 328,Delete 120,Insert 3910,Insert 601,Insert 3734,Insert 610,Insert 2252,Insert 3021,Find 2239,Insert 2992,Delete 3915,Insert 3448,Find 2767,Find 2303,Insert 3738,Find 1678,Insert 2962,Insert 2335,Delete 1210,Insert 3764,Insert 3640,Find 146,Insert 1308,Find 2879,Find 1619,Insert 696,Find 3645,Find 1823,Insert 385,Insert 1512,Insert 1128,Insert 1254,Insert 3767,Find 1258,Delete 905,Insert 2218,Delete 3583,Insert 1980,Insert 1204,Find 1625,Insert 3648,Insert 875,Find 3012,Insert 2890,Find 773,Insert 3927,Insert 13,Insert 1313,Insert 320,Insert 3983,Insert 738,Insert 2569,Insert 185,Delete 1553,Find 3633,Insert 588,Find 1702,Find 918,Find 282,Find 2385,Insert 2374,Insert 1986,Find 3730,Find 1115,Insert 1332,Delete 3819,Find 2485,Insert 1875,Insert 186,Insert 3119,Find 2002,Delete 1875,Find 2124,Delete 1889,Insert 1007,Delete 1849,Find 2922,Insert 2518,Find 3437,Insert 802,Find 3504,Insert 1273,Find 678,Insert 3573,Insert 739,Delete 567,Delete 854,Find 1301,Insert 18,Find 3887,Find 3784,Find 2294,Find 1552,Insert 1519,Insert 236,Find 779,Insert 2920,Insert 490,Find 2895,Delete 2097,Delete 1721,Delete 3967,Insert 1710,Find 469,Insert 1797,Delete 2761,Find 3042,Find 3829,Insert 341,Insert 2025,Find 440,Insert 2058,Insert 1412,Find 3056,Find 2222,Find 3665,Insert 3672,Insert 1818,Insert 3741,Insert 10,Insert 997,Insert 3083,Insert 3028,Insert 346,Insert 1367,Insert 1294,Find 3013,Find 1617,Insert 3816,Find 2044,Find 3491,Find 87,Insert 3522,Insert 2147,Find 3090,Find 662,Insert 2815,Insert 3628,Insert 3769,Insert 324,Insert 3329,Insert 999,Insert 3147,Insert 607,Insert 1915,Insert 3159,Insert 2124,Insert 2771,Insert 1792,Insert 3762,Insert 2986,Insert 946,Find 1733,Insert 410,Find 3688,Insert 2792,Insert 1860,Insert 3318,Find 3942,Find 3065,Delete 12,Insert 3809,Insert 1082,Insert 3421,Insert 3797,Insert 3252,Insert 1320,Find 2222,Delete 1392,Insert 3825,Find 2208,Find 3699,Find 3455,Insert 901,Insert 1245,Insert 1278,Insert 2290,Delete 1508,Insert 3985,Find 564,Find 1474,Find 2667,Find 2971,Insert 2455,Delete 3804,Insert 2919,Insert 3061,Insert 2139,Insert 909,Find 3562,Find 2416,Insert 1884,Insert 1654,Insert 1062,Insert 799,Insert 2415,Insert 2400,Insert 982,Find 1683,Insert 1460,Insert 2857,Insert 711,Find 2710,Find 2735,Find 3627,Delete 2200,Insert 1575,Insert 1815,Insert 3506,Insert 1663,Delete 1325,Insert 1065,Delete 2964,Insert 3142,Find 14,Insert 2896,Insert 1926,Insert 2660,Insert 826,Find 3129,Insert 1070,Insert 686,Find 1231,Find 3227,Insert 3197,Insert 2323,Find 1981,Insert 3756,Find 2358,Find 7,Insert 3452,Insert 1298,Insert 1480,Find 2048,Find 918,Insert 3524,Insert 1619,Delete 1446,Find 297,Find 2956,Find 3917,Find 1868,Insert 432,Insert 3442,Find 1822,Insert 219,Find 1375,Delete 2509,Find 665,Insert 2394,Find 2915,Insert 324,Delete 3364,Delete 1038,Insert 3538,Find 2806,Insert 838,Insert 3337,Insert 2516,Insert 1485,Delete 936,Insert 3190,Delete 3819,Insert 1905,Insert 3620,Insert 3345,Insert 20,Delete 3062,Insert 1646,Insert 1699,Insert 2472,Insert 1350,Insert 2056,Insert 2533,Insert 2310,Insert 1805,Insert 756,Insert 1159,Find 2412,Find 2925,Find 2980,Insert 1746,Insert 2393,Insert 3124,Insert 2848,Insert 1344,Insert 2248,Insert 2706,Find 3677,Insert 1900,Insert 2402,Find 3451,Insert 2008,Insert 948,Insert 3714,Delete 3691,Insert 3958,Insert 1326,Insert 397,Find 950,Insert 2786,Find 1719,Insert 1564,Insert 2215,Find 1358,Find 1467,Find 717,Insert 2337,Find 3191,Insert 1817,Find 3205,Find 210,Delete 3866,Find 302,Insert 1319,Insert 1080,Find 3598,Insert 1343,Insert 2984,Find 930,Insert 2458,Insert 2063]
-[Find 452,Delete 1744,Insert 910,Insert 3160,Delete 890,Insert 1265,Find 2219,Insert 1309,Insert 2785,Insert 3400,Insert 1085,Find 2959,Find 1459,Insert 1228,Insert 1381,Insert 480,Insert 3332,Insert 3359,Insert 1430,Insert 3572,Insert 3694,Find 311,Insert 3342,Delete 2464,Insert 1221,Insert 2280,Find 3228,Insert 3749,Insert 3809,Insert 3934,Delete 2886,Delete 3363,Insert 377,Insert 578,Insert 2459,Insert 2486,Insert 2730,Insert 2906,Find 3106,Insert 3435,Delete 170,Insert 1750,Find 1873,Delete 1972,Insert 2450,Find 174,Insert 1097,Find 240,Insert 1414,Insert 3308,Find 3748,Insert 641,Insert 2262,Insert 737,Insert 1654,Delete 6,Delete 2223,Insert 3683,Insert 1095,Delete 17,Insert 1604,Find 3623,Delete 1955,Find 3436,Insert 2736,Find 2838,Find 2043,Find 1783,Insert 488,Insert 2879,Find 2167,Insert 2009,Insert 630,Find 2785,Insert 3576,Delete 3424,Find 997,Find 1554,Find 94,Insert 879,Insert 394,Insert 2599,Insert 675,Find 361,Insert 490,Insert 1254,Find 1777,Find 434,Insert 3849,Insert 3920,Delete 245,Insert 95,Find 2054,Delete 1450,Delete 233,Find 2201,Insert 3588,Find 731,Find 2636,Insert 1746,Delete 1227,Find 1169,Find 2842,Insert 1645,Insert 3926,Insert 2354,Insert 926,Insert 1915,Delete 708,Insert 3460,Delete 1713,Delete 1080,Delete 1987,Insert 923,Insert 871,Insert 2873,Find 3381,Delete 533,Find 2697,Insert 3015,Insert 2427,Find 2149,Find 1529,Delete 3368,Find 3913,Insert 3189,Insert 171,Insert 3071,Find 2666,Insert 1858,Delete 2926,Delete 3555,Insert 862,Find 3987,Find 203,Find 2679,Find 2064,Find 1007,Delete 3104,Insert 2924,Insert 1388,Insert 1402,Insert 2360,Insert 3904,Insert 2071,Insert 934,Find 674,Insert 1578,Insert 2222,Insert 1825,Insert 998,Insert 313,Insert 3689,Delete 685,Insert 858,Insert 781,Insert 3284,Insert 1925,Delete 3249,Insert 1492,Insert 3343,Delete 2584,Find 1732,Insert 2151,Insert 2091,Find 556,Insert 1046,Insert 2584,Insert 142,Insert 920,Insert 1397,Delete 78,Insert 579,Insert 1800,Insert 3942,Insert 3500,Find 580,Insert 1679,Insert 2433,Insert 2680,Insert 2955,Find 2239,Find 1146,Find 392,Delete 2009,Delete 822,Insert 2309,Insert 206,Insert 1534,Delete 1170,Insert 962,Insert 3493,Find 1306,Find 1671,Insert 1998,Delete 3917,Delete 3200,Delete 2275,Insert 2880,Find 3753,Find 3880,Find 3788,Insert 945,Find 3550,Delete 3814,Insert 2549,Insert 276,Delete 3857,Insert 3807,Find 1993,Find 341,Find 2297,Find 1923,Find 3834,Insert 3836,Delete 3387,Find 3029,Insert 1808,Insert 3933,Insert 1143,Insert 324,Find 519,Find 1374,Find 483,Find 3504,Delete 3810,Insert 989,Find 941,Insert 2060,Insert 1294,Insert 2092,Find 1725,Find 3692,Find 2291,Insert 620,Insert 2331,Insert 174,Insert 1553,Insert 503,Find 3212,Delete 2903,Find 1551,Find 3461,Find 42,Insert 3785,Find 30,Insert 98,Find 438,Delete 1599,Delete 3172,Insert 2993,Insert 2046,Insert 2075,Insert 168,Insert 530,Find 2179,Find 3128,Insert 2384,Find 555,Find 3510,Delete 910,Find 2524,Delete 3725,Insert 3332,Find 1128,Find 1828,Insert 1856,Insert 1240,Insert 3727,Find 2718,Insert 1379,Insert 2655,Insert 2275,Insert 589,Insert 2882,Insert 2949,Find 940,Insert 1674,Insert 2154,Find 273,Insert 2694,Insert 1690,Find 66,Delete 2394,Delete 842,Insert 3086,Delete 555,Delete 1539,Insert 1195,Insert 1308,Insert 2136,Insert 3591,Delete 2746,Insert 625,Insert 1618,Delete 3291,Insert 2071,Delete 3994,Delete 702,Insert 2695,Insert 891,Find 3002,Insert 1869,Delete 325,Delete 643,Insert 1877,Insert 1373,Insert 3871,Insert 116,Find 700,Find 1658,Find 2693,Insert 75,Find 1232,Insert 3489,Insert 1270,Insert 1998,Find 1401,Insert 720,Insert 3819,Insert 2039,Find 2503,Insert 3497,Insert 1077,Insert 3893,Insert 534,Insert 2123,Insert 3727,Find 2094,Insert 712,Insert 625,Find 2357,Insert 2157,Insert 852,Find 612,Find 3852,Insert 2999,Find 3313,Insert 1870,Delete 2666,Delete 607,Find 1116,Insert 3540,Insert 3377,Insert 1114,Insert 2326,Find 3346,Insert 3989,Delete 89,Find 877,Find 1618,Find 2266,Insert 671,Insert 896,Insert 823,Find 3314,Insert 127,Find 1086,Insert 2295,Insert 2793,Find 2432,Insert 131,Insert 3637,Insert 3452,Insert 483,Find 2275,Insert 3823,Delete 1103,Find 3091,Insert 316,Find 948,Delete 51,Find 3955,Insert 574,Insert 3682,Insert 1,Insert 3862,Insert 3580,Find 1049,Insert 941,Find 1353,Insert 3201,Delete 3716,Delete 2926,Delete 1565,Find 2040,Insert 975,Insert 697,Insert 3942,Delete 3226,Insert 424,Find 646,Insert 482,Find 144,Insert 1316,Delete 1594,Insert 1226,Insert 3540,Find 1183,Insert 1648,Find 1363,Find 157,Insert 1425,Insert 3693,Insert 434,Find 715,Insert 1529,Delete 1494,Insert 210,Find 1383,Insert 34,Insert 1402,Insert 1529,Delete 2018,Insert 493,Find 909,Insert 3939,Find 722,Insert 3910,Insert 3355,Delete 2543,Insert 918,Insert 2232,Insert 887,Insert 3390,Insert 1774,Insert 3307,Insert 1637,Find 400,Find 2614,Delete 3397,Insert 360,Delete 3784,Delete 1963,Insert 1295,Insert 2077,Find 1199,Insert 2911,Delete 1913,Insert 3881,Insert 1893,Insert 1676,Insert 225,Insert 1889,Find 2594,Insert 3383,Insert 1973,Insert 1148,Insert 1774,Find 3757,Find 2102,Insert 139,Find 430,Delete 2551,Insert 872,Find 3413,Insert 1090,Insert 1945,Delete 3975,Delete 2856,Find 2058,Find 1594,Delete 3190,Insert 2528,Insert 1727,Insert 3953,Find 3720,Insert 1777,Insert 2414,Find 1267,Insert 1955,Find 1376,Delete 1042,Find 758,Find 2541,Insert 3971,Insert 2143,Insert 2956,Insert 2832,Insert 2211,Delete 2252,Insert 2967,Find 1387,Find 3150,Insert 1441,Find 1117,Insert 3642,Find 1889,Insert 2117,Insert 316,Insert 3568,Insert 3778,Insert 2430,Insert 595,Insert 3887,Insert 73,Delete 57,Insert 703,Insert 21,Insert 2802,Insert 2037,Find 3286,Find 443,Insert 2639,Insert 144,Insert 2769,Insert 1965,Find 1109,Insert 3670,Insert 2737,Insert 3783,Find 3767,Insert 1501,Find 2372,Delete 3898,Find 2776,Insert 2232,Insert 2631,Find 1829,Find 1450,Find 2600,Find 2619,Find 2485,Find 2148,Insert 1282,Insert 1847,Find 1111,Insert 2967,Insert 634,Delete 2378,Insert 1650,Find 2013,Insert 2195,Insert 512,Insert 695,Find 2773,Find 1384,Delete 965,Insert 1837,Insert 488,Insert 3824,Insert 3702,Insert 853,Insert 111,Insert 2620,Insert 1440,Insert 2984,Insert 3874,Insert 1382,Find 597,Insert 616,Insert 1285,Find 3923,Insert 3192,Insert 3945,Insert 2558,Find 614,Insert 3387,Insert 936,Insert 1265,Delete 227,Find 697,Find 894,Insert 1359,Delete 1213,Delete 1484,Delete 3377,Find 37,Find 3550,Insert 384,Delete 1564,Find 456,Insert 483,Insert 3930,Delete 3070,Insert 1940,Find 2128,Insert 1953,Insert 1657,Insert 915,Find 2456,Delete 3337,Insert 1624,Insert 1674,Insert 2268,Delete 1853,Insert 888,Insert 3415,Find 263,Insert 1487,Insert 1448,Find 1719,Insert 3081,Insert 1739,Insert 596,Insert 1894,Insert 1630,Insert 120,Find 557,Find 491,Find 1762,Insert 205,Find 942,Insert 3347,Insert 3807,Insert 2089,Find 2748,Find 2707,Insert 964,Insert 3535,Insert 2432,Find 2483,Insert 1971,Find 1716,Insert 2707,Insert 417,Find 2714,Insert 1554,Insert 245,Find 3296,Insert 266,Insert 3681,Find 1836,Insert 3289,Insert 1478,Insert 543,Delete 2414,Insert 3596,Find 2687,Insert 2024,Insert 1847,Find 10,Insert 571,Insert 3154,Insert 1358,Insert 3879,Find 2745,Insert 2456,Insert 3865,Insert 1828,Find 2447,Delete 2305,Insert 1775,Insert 143,Insert 3789,Delete 1016,Insert 485,Insert 1558,Find 2470,Insert 3849,Insert 336,Insert 605,Find 1425,Insert 1932,Insert 1244,Insert 3470,Insert 2600,Insert 2416,Insert 1034,Insert 2381,Insert 3600,Find 1812,Insert 849,Find 3155,Insert 1079,Delete 3920,Insert 1339,Insert 2557,Insert 3761,Find 2192,Insert 837,Insert 269,Insert 2875,Delete 2719,Find 447,Insert 809,Insert 1300,Insert 1251,Find 3182,Find 3161,Find 3,Insert 732,Insert 2669,Find 2090,Insert 3709,Insert 95,Insert 474,Insert 2242,Insert 1192,Insert 2801,Find 970,Insert 2686,Insert 2660,Insert 2619,Insert 2962,Insert 3014,Find 3082,Insert 3073,Find 1987,Find 1733,Find 3498,Insert 868,Insert 1383,Insert 753,Find 431,Find 3697,Insert 3015,Insert 2711,Find 3800,Insert 1843,Delete 3223,Insert 1335,Insert 3435,Insert 102,Delete 3644,Delete 1207,Insert 1386,Insert 1331,Find 3347,Insert 1837,Insert 3096,Insert 3569,Insert 965,Insert 2787,Insert 138,Find 3718,Insert 2082,Find 2562,Insert 1949,Delete 3926,Insert 3934,Insert 1305,Insert 3528,Insert 1221,Insert 1269,Find 846,Insert 3531,Insert 3951,Insert 96,Insert 301,Find 2359,Insert 2961,Delete 2103,Insert 561,Delete 3109,Find 3280,Find 420,Find 81,Delete 3210,Find 1712,Delete 3545,Insert 1158,Delete 2197,Insert 1674,Insert 2320,Find 1369,Find 1622,Insert 1699,Insert 2168,Find 2967,Insert 2750,Insert 529,Insert 2946,Insert 14,Insert 2243,Find 1645,Find 591,Delete 3694,Find 1592,Insert 3061,Insert 3972,Insert 1157,Find 2588,Find 2355,Find 3067,Insert 2545,Insert 2189,Insert 1941,Insert 825,Delete 3374,Find 412,Insert 2308,Insert 2454,Find 859,Insert 1707,Insert 2168,Insert 3382,Insert 1001,Delete 1997,Find 955,Insert 3876,Insert 425,Insert 3532,Insert 1365,Insert 1981,Find 788,Insert 96,Insert 2409,Insert 3974,Insert 779,Insert 419,Delete 1731,Insert 41,Find 670,Delete 1722,Find 492,Delete 2261,Insert 2491,Find 1919,Insert 1321,Find 2000,Find 3254,Insert 421,Insert 3082,Find 177,Find 1598,Insert 852,Delete 1963,Insert 2452,Find 2462,Insert 3849,Insert 2733,Delete 3878,Insert 3349,Find 18,Find 2005,Insert 1671,Delete 3418,Insert 3119,Insert 3083,Find 2399,Insert 1512,Find 2867,Insert 155,Find 1866,Find 1697,Delete 1829,Find 3162,Insert 1676,Delete 1240,Insert 1336,Insert 120,Find 941,Insert 1585,Delete 3413,Delete 2943,Insert 1087,Insert 1553,Insert 339,Delete 1935,Delete 1084,Find 2388,Delete 1112,Insert 3454,Find 3992,Find 224,Delete 1245,Insert 1852,Delete 1488,Insert 1875,Insert 439,Delete 920,Insert 3039,Insert 2910,Find 581,Find 1791,Insert 2640,Find 3124,Find 1088,Insert 1482,Insert 1841,Insert 1805,Find 2421,Insert 3253,Find 1681,Insert 751,Insert 1971,Find 1487,Delete 3281,Delete 3084,Find 800,Insert 1368,Delete 1458,Find 3418,Delete 266,Insert 3134,Insert 3195,Find 3839,Insert 1768,Delete 2661,Insert 1286,Find 315,Insert 2434,Find 2184,Insert 2551,Insert 589,Find 3882,Insert 2820,Insert 498,Delete 2651,Insert 2861,Insert 2280,Find 3003,Delete 3036,Insert 2140,Find 1216,Find 2500,Find 2588,Insert 3397,Find 1222,Find 1054,Delete 59,Insert 2190,Insert 248,Insert 3975,Find 3200,Insert 919,Insert 506,Insert 1704,Insert 200,Insert 3632,Delete 105,Find 803,Insert 2624,Insert 3604,Insert 3708,Insert 3669,Insert 674,Find 1558,Find 3084,Find 2846,Insert 428,Insert 991,Insert 2179,Insert 801,Insert 2725,Insert 453,Insert 2319,Insert 2403,Insert 2966,Delete 3196,Insert 3565,Find 3834,Insert 3915,Insert 2031,Find 310,Insert 1854,Find 659,Insert 2731,Insert 393,Find 3158,Insert 2352,Insert 3033,Insert 3336,Find 151,Insert 2325,Insert 3108,Delete 1923,Insert 3853,Find 2959,Delete 1742,Insert 2826,Delete 3216,Insert 3999,Delete 3447,Insert 989,Insert 3083,Find 659,Delete 1018,Find 1052,Find 2420,Insert 2639,Insert 1635,Insert 3998,Insert 182,Insert 635,Insert 564,Insert 3483,Insert 1636,Insert 1648,Insert 3288,Find 3791,Delete 3222,Insert 1586,Find 1096,Insert 1073,Insert 550,Insert 3838,Find 2601,Find 1313,Find 2633,Find 3285,Insert 2495,Insert 3764,Find 2487,Find 2627,Delete 2639,Find 226,Find 2124,Insert 2486,Insert 828,Insert 3239,Insert 3231,Delete 2822,Delete 3101,Insert 1238,Find 1072,Insert 1344,Insert 2820,Delete 209,Find 1981,Delete 3861,Find 3368,Insert 2672,Find 3788,Insert 2533,Find 778,Insert 2001,Find 615,Insert 2926,Insert 1616,Insert 2444,Delete 1051,Find 2895,Insert 3274,Insert 2851,Find 2379,Find 1601,Find 103,Insert 636,Insert 164,Delete 2550,Find 3452,Insert 3152,Find 3790,Delete 2530,Find 3192,Delete 1398,Find 549,Insert 506,Insert 1469,Find 6,Insert 1844,Insert 806,Find 2846,Insert 3574,Delete 674,Find 945,Insert 2944,Delete 3206,Insert 168,Delete 3387,Find 3844,Insert 2665,Insert 512,Insert 3285,Insert 923,Insert 3152,Insert 2375,Insert 3125,Insert 2665,Insert 431,Insert 574,Insert 2204,Insert 2005,Insert 248,Insert 505,Delete 1693,Insert 247,Insert 1408,Delete 2496,Insert 3694,Insert 2736,Insert 2791,Find 2696,Delete 3242,Find 3025,Find 3675,Insert 3616,Insert 1159,Find 1457,Find 58,Insert 410,Find 3939,Find 2645,Find 1975,Insert 3772,Delete 1778,Insert 663,Insert 801,Insert 2810,Insert 2742,Insert 3411,Find 1796,Insert 434,Insert 18,Insert 107,Insert 471,Delete 1322,Insert 643,Insert 2554,Insert 1090,Insert 1,Find 2231,Find 734,Delete 3879,Insert 2033,Insert 3206,Insert 1678,Insert 3822,Insert 1766,Insert 3565,Insert 823,Insert 3032,Insert 480,Insert 2551,Find 2865,Find 1528,Find 3538,Delete 3217,Insert 2376,Insert 2009,Find 3574,Insert 3741,Delete 1521,Insert 513,Insert 769,Insert 3881,Insert 651,Find 3042,Insert 2839,Insert 1338,Find 178,Insert 657,Find 770,Delete 3721,Insert 1736,Insert 2835,Insert 3308,Insert 193,Find 2707,Find 3768,Insert 3752,Insert 1524,Insert 1868,Find 2085,Insert 2247,Find 1131,Insert 897,Find 416,Insert 1387,Find 101,Insert 260,Find 3299,Find 739,Delete 406,Insert 53,Insert 3911,Find 2491,Find 3545,Delete 3068,Find 562,Insert 991,Insert 2264,Insert 3594,Find 3871,Delete 1596,Insert 108,Delete 3747,Insert 934,Insert 1822,Find 2188,Insert 1230,Insert 3918,Insert 2472,Insert 2549,Delete 955,Insert 3905,Insert 3269,Insert 2358,Find 3621,Find 3900,Insert 2293,Find 3266,Insert 3395,Insert 3828,Insert 3738,Find 2885,Find 2963,Delete 716,Find 1582,Insert 428,Find 1833,Insert 81,Find 2693,Insert 548,Insert 1755,Insert 2515,Insert 2279,Insert 1560,Insert 3301,Find 3434,Find 2148,Insert 306,Delete 2541,Find 1190,Insert 679,Insert 1182,Find 1405,Delete 2571,Find 683,Insert 3631,Find 859,Insert 1832,Insert 1790,Insert 3068,Find 1649,Find 1998,Insert 2545,Find 1271,Insert 1509,Insert 1998,Insert 1618,Find 719,Delete 86,Insert 3521,Find 2713,Find 1507,Insert 1847,Insert 2819,Insert 2904,Delete 469,Find 316,Insert 3999,Insert 2694,Insert 1188,Insert 3830,Insert 2548,Find 521,Insert 1344,Insert 2573,Insert 2319,Insert 3262,Insert 2886,Insert 155,Find 1094,Insert 1826,Delete 3956,Find 1455,Find 1735,Find 524,Find 3504,Find 1509,Insert 1228,Delete 497,Find 1900,Insert 1567,Insert 2873,Insert 3370,Insert 194,Find 3171,Insert 1930,Insert 255,Insert 1079,Insert 370,Insert 3094,Insert 1095,Find 692,Insert 1773,Insert 3464,Insert 1238,Delete 1065,Find 750,Find 2615,Insert 2719,Find 265,Find 3361,Insert 1267,Find 3726,Insert 2223,Find 3636,Delete 2690,Insert 1588,Insert 3190,Find 1775,Find 2177,Insert 59,Find 1219,Insert 1491,Insert 514,Insert 1641,Find 3362,Insert 2866,Insert 1764,Delete 1191,Insert 3780,Insert 860,Insert 1373,Insert 2720,Insert 369,Insert 1637,Insert 2055,Insert 1173,Find 1896,Delete 243,Insert 3303,Find 30,Insert 2412,Find 221,Insert 3212,Delete 9,Find 133,Insert 1640,Insert 1219,Insert 103,Find 2905,Find 1301,Insert 855,Insert 2675,Delete 450,Find 1163,Insert 3555,Delete 3009,Insert 2859,Insert 2072,Find 1433,Insert 3274,Find 2413,Find 2642,Insert 1497,Insert 1192,Find 1061,Find 2251,Delete 1678,Insert 2758,Delete 825,Insert 2648,Insert 2326,Insert 1953,Find 1052,Insert 1827,Insert 2678,Find 3535,Insert 3530,Delete 3326,Find 1961,Insert 3718,Insert 2914,Insert 3412,Insert 1175,Insert 2594,Find 1011,Delete 2627,Insert 3238,Insert 58,Insert 769,Find 882,Insert 3024,Find 1929,Insert 443,Find 3827,Find 2859,Find 1993,Find 407,Insert 2437,Insert 703,Insert 1959,Insert 1085,Find 1316,Insert 3623,Insert 2144,Find 3574,Insert 3069,Insert 832,Insert 1959,Insert 1475,Find 1806,Insert 2155,Insert 3088,Delete 3625,Find 3885,Find 826,Insert 209,Insert 3093,Delete 2378,Insert 1590,Delete 3278,Insert 3594,Find 89,Find 190,Insert 1443,Find 3927,Insert 1664,Insert 3476,Find 916,Find 1674,Find 2576,Insert 3376,Insert 2053,Insert 214,Insert 1833,Delete 1672,Find 923,Find 3559,Insert 386,Insert 2501,Find 1749,Insert 487,Insert 3362,Find 2366,Insert 1853,Find 1061,Insert 3966,Find 1495,Find 1858,Insert 3859,Find 2071,Insert 2377,Insert 3212,Insert 436,Insert 3944,Insert 1386,Insert 893,Insert 1683,Insert 3492,Insert 2413,Insert 2339,Insert 1947,Delete 2693,Insert 1340,Find 715,Delete 2360,Insert 3602,Insert 1618,Insert 2606,Insert 2505,Find 1246,Insert 190,Find 2843,Insert 3102,Insert 3052,Find 1010,Insert 927,Find 482,Insert 1915,Insert 1970,Find 930,Find 3723,Find 3990,Find 2327,Insert 1492,Find 2754,Insert 329,Insert 2208,Insert 2706,Find 2752,Insert 2865,Delete 2664,Delete 3570,Find 3391,Insert 1169,Insert 788,Find 3797,Find 1370,Insert 3499,Find 3558,Find 3540,Find 2935,Insert 2191,Delete 3336,Find 3672,Find 980,Insert 689,Insert 921,Insert 1244,Insert 456,Delete 3079,Insert 3619,Insert 2021,Delete 222,Find 2026,Insert 3500,Find 1952,Delete 1756,Insert 3690,Insert 2649,Insert 1856,Insert 695,Insert 2096,Delete 3458,Insert 2953,Insert 3664,Insert 2786,Delete 699,Find 1904,Find 1183,Find 956,Find 1819,Delete 2901,Find 670,Find 1476,Insert 46,Delete 3088,Insert 680,Delete 1119,Insert 1830,Delete 258,Find 2574,Insert 1215,Find 2408,Find 1006,Delete 3054,Delete 1099,Insert 1575,Insert 2369,Delete 3249,Insert 1521,Insert 364,Insert 2692,Insert 389,Insert 2289,Find 737,Insert 3674,Find 3416,Find 3366,Insert 2294,Find 952,Insert 1098,Find 2180,Insert 3646,Find 1376,Insert 2956,Insert 1080,Insert 3566,Find 2536,Find 1953,Find 3507,Insert 1713,Insert 1566,Insert 3090,Insert 862,Insert 3751,Insert 2063,Insert 633,Insert 1560,Insert 2376,Find 2002,Insert 1226,Insert 2252,Insert 2647,Find 2369,Insert 954,Delete 2632,Find 3196,Insert 3331,Insert 388,Find 2294,Insert 412,Delete 914,Insert 3428,Insert 1738,Insert 2291,Insert 2177,Insert 1717,Delete 3201,Delete 3008,Find 3124,Insert 1906,Insert 2932,Delete 1339,Insert 671,Insert 224,Insert 3345,Insert 180,Delete 3674,Insert 1855,Find 647,Find 68,Insert 2938,Find 3981,Find 2216,Insert 393,Insert 1912,Insert 2400,Insert 1523,Delete 1646,Find 925,Find 1375,Delete 1352,Insert 1505,Delete 3546,Insert 362,Delete 3006,Insert 3004,Insert 1947,Delete 55,Insert 2634,Insert 280,Find 3526,Delete 2638,Insert 597,Find 3984,Insert 190,Find 2017,Find 3592,Insert 3699,Insert 2378,Find 973,Find 1164,Delete 3238,Insert 1888,Find 1955,Insert 3086,Insert 2086,Insert 2053,Insert 1038,Insert 2035,Insert 953,Find 3189,Insert 2524,Find 3037,Delete 3948,Find 3726,Delete 3511,Insert 1509,Find 1378,Insert 1816,Delete 1233,Delete 1274,Find 2178,Insert 2692,Find 268,Find 2781,Find 1411,Find 3858,Insert 1851,Insert 91,Find 1209,Find 2930,Insert 1159,Find 1752,Find 3872,Insert 679,Find 2571,Delete 2023,Insert 1155,Insert 2071,Delete 1739,Insert 234,Insert 159,Insert 764,Insert 3674,Insert 3780,Insert 3071,Delete 21,Insert 1096,Insert 669,Insert 1017,Insert 3971,Insert 2130,Insert 3858,Find 2793,Insert 1222,Insert 9,Find 2179,Insert 230,Insert 1907,Delete 3758,Insert 666,Insert 3917,Find 3950,Find 301,Insert 1180,Find 1116,Find 3314,Insert 3293,Find 1685,Insert 2527,Find 4000,Find 3725,Find 2024,Find 1159,Insert 1280,Insert 1261,Insert 915,Insert 2493,Insert 3878,Delete 2515,Find 2743,Find 1162,Delete 1124,Find 547,Insert 2570,Insert 1590,Insert 1074,Find 1623,Delete 1821,Find 3718,Insert 2263,Insert 3443,Delete 308,Delete 103,Find 3234,Delete 3153,Insert 1312,Insert 3627,Insert 84,Insert 2344,Find 1161,Find 1692,Find 3118,Insert 552,Insert 3336,Insert 2763,Insert 3094,Insert 1111,Delete 1434,Insert 74,Insert 1028,Insert 972,Insert 3626,Insert 3702,Find 608,Insert 2853,Insert 2127,Insert 3355,Insert 2984,Insert 2048,Insert 3001,Delete 511,Insert 297,Delete 2389,Find 3638,Insert 3270,Insert 1268,Delete 2058,Insert 2265,Insert 2878,Insert 304,Find 3742,Insert 266,Insert 2656,Insert 2474,Insert 714,Find 1415,Insert 847,Delete 2123,Insert 832,Delete 707,Delete 139,Find 994,Insert 458,Find 1809,Insert 1153,Delete 1587,Insert 876,Insert 645,Find 931,Insert 715,Insert 2679,Insert 316,Insert 1909,Insert 3169,Insert 926,Insert 3715,Insert 986,Insert 1669,Find 563,Insert 1801,Find 1302,Insert 1891,Insert 1813,Find 2343,Find 2320,Find 1553,Insert 365,Find 1119,Find 3331,Find 2157,Insert 540,Find 3024,Delete 3552,Find 1741,Delete 3982,Insert 1991,Insert 2013,Insert 3536,Insert 1140,Insert 389,Insert 1765,Find 576,Delete 3087,Find 288,Find 3042,Insert 247,Insert 23,Find 218,Delete 1930,Insert 1662,Insert 2319,Insert 3163,Insert 2126,Delete 106,Insert 3563,Insert 640,Delete 983,Find 981,Delete 573,Insert 871,Find 73,Delete 2218,Insert 2060,Insert 2664,Find 1238,Delete 2099,Insert 2915,Insert 3361,Delete 3130,Find 662,Insert 3199,Insert 311,Find 619,Find 441,Insert 2038,Delete 1177,Insert 545,Insert 733,Insert 1832,Insert 3529,Find 1239,Insert 2675,Find 782,Insert 310,Insert 697,Find 3803,Delete 3845,Insert 2489,Insert 474,Insert 739,Insert 364,Insert 3241,Insert 2266,Insert 1494,Find 1828,Delete 1648,Insert 3740,Delete 3051,Insert 1078,Insert 2684,Insert 2198,Insert 1518,Delete 3967,Insert 1098,Find 718,Delete 504,Insert 3887,Find 3675,Insert 1575,Insert 2768,Insert 3568,Insert 2083,Delete 2696,Insert 2375,Delete 2888,Insert 543,Find 2645,Find 3931,Find 2403,Find 304,Delete 1175,Insert 2413,Insert 2363,Insert 2635,Find 3664,Delete 3380,Insert 1956,Insert 3510,Insert 1630,Find 358,Insert 1882,Insert 2690,Delete 2925,Find 3960,Insert 3862,Insert 429,Find 2267,Insert 1679,Insert 1597,Delete 2290,Insert 709,Insert 82,Find 2059,Insert 1793,Delete 1958,Insert 1105,Insert 2112,Insert 1420,Find 1730,Find 44,Find 1826,Find 3088,Insert 863,Find 1213,Delete 3475,Insert 1945,Insert 3485,Find 593,Find 3343,Insert 823,Insert 2600,Insert 1213,Insert 2185,Find 2686,Insert 2036,Find 1917,Insert 2230,Find 2932,Insert 3918,Insert 2918,Insert 2348,Find 1245,Find 845,Insert 3269,Insert 2566,Insert 2254,Delete 2196,Insert 3165,Delete 1825,Insert 315,Insert 759,Insert 2061,Find 3390,Insert 3330,Find 2621,Insert 3748,Insert 3956,Insert 3472,Insert 2985,Insert 2284,Insert 59,Insert 1092,Delete 2075,Insert 828,Insert 2222,Find 1276,Find 3109,Insert 3468,Insert 1115,Find 2480,Insert 2570,Find 2533,Insert 881,Insert 3722,Find 260,Find 2634,Insert 2603,Delete 2137,Insert 986,Insert 3650,Find 1053,Insert 945,Insert 3833,Find 75,Find 3585,Find 1524,Insert 1684,Find 3001,Delete 2385,Insert 943,Insert 3144,Insert 93,Find 916,Delete 1315,Delete 50,Delete 1545,Insert 48,Delete 1397,Insert 1363,Insert 888,Find 3131,Find 1000,Insert 3635,Insert 1259,Find 190,Insert 3908,Insert 284,Insert 1327,Insert 903,Insert 3755,Insert 1916,Delete 2062,Insert 605,Insert 3197,Find 1469,Find 3335,Find 3799,Insert 3225,Insert 1706,Insert 3721,Insert 237,Find 2996,Find 2929,Insert 1968,Find 2103,Insert 1408,Find 1816,Delete 2306,Insert 314,Insert 1856,Delete 1027,Insert 1935,Insert 855,Delete 2777,Insert 285,Delete 2427,Insert 962,Insert 1372,Delete 1943,Insert 2193,Insert 292,Insert 1620,Insert 2242,Insert 326,Insert 2531,Delete 128,Insert 119,Insert 3350,Insert 1381,Insert 75,Insert 1814,Find 2455,Insert 2282,Find 668,Find 685,Insert 1140,Insert 2937,Insert 1311,Insert 954,Insert 1843,Insert 3207,Insert 362,Insert 1747,Find 3602,Insert 1084,Insert 495,Insert 687,Find 627,Delete 2695,Insert 3743,Delete 1082,Insert 3190,Insert 2470,Insert 1299,Insert 2334,Insert 2774,Insert 3782,Insert 3055,Insert 93,Insert 3527,Find 234,Find 1292,Insert 2365,Delete 2358,Delete 1879,Insert 3570,Insert 2306,Delete 2260,Insert 2729,Insert 788,Find 1286,Find 241,Insert 3556,Find 3631,Insert 2260,Insert 3311,Insert 2672,Insert 2198,Insert 775,Delete 2921,Insert 3063,Insert 3407,Insert 1668,Insert 1120,Find 3022,Delete 2975,Delete 3393,Insert 1890,Delete 3483,Insert 665,Insert 1793,Find 6,Delete 2720,Insert 2388,Insert 3535,Insert 3441,Find 3747,Insert 3968,Insert 2849,Insert 3599,Insert 1467,Find 513,Find 3486,Insert 762,Insert 1193,Insert 39,Insert 185,Insert 2077,Insert 3385,Find 3804,Insert 563,Insert 2306,Insert 220,Find 3400,Find 1770,Insert 1061,Insert 538,Insert 1772,Find 1401,Find 815,Insert 32,Insert 3593,Insert 556,Insert 2672,Find 1294,Insert 132,Find 603,Insert 3483,Delete 1690,Insert 3787,Delete 3658,Delete 1746,Insert 1797,Insert 3047,Insert 1460,Insert 768,Insert 578,Delete 1301,Find 1162,Insert 549,Insert 2799,Delete 1207,Find 612,Insert 1461,Find 2057,Delete 2520,Insert 2790,Insert 2312,Insert 2488,Insert 2196,Insert 3817,Find 2432,Insert 767,Insert 2100,Insert 1409,Delete 1982,Insert 1306,Insert 1320,Find 249,Insert 1551,Insert 3656,Delete 24,Delete 2262,Insert 3752,Find 1455,Delete 3616,Delete 1168,Insert 1979,Find 1947,Find 1207,Insert 3209,Insert 1021,Delete 2324,Insert 2750,Delete 387,Insert 1488,Insert 1617,Find 937,Find 1582,Insert 2174,Find 3419,Insert 3957,Find 352,Find 2505,Insert 2353,Insert 156,Delete 467,Insert 3977,Find 1748,Insert 3774,Find 79,Insert 1626,Delete 1960,Delete 2604,Insert 2344,Insert 2070,Find 2261,Insert 1226,Insert 2591,Insert 3886,Delete 1570,Find 1879,Find 2344,Delete 1474,Find 1824,Insert 1438,Delete 1293,Insert 2019,Insert 3545,Insert 2061,Find 2405,Delete 1580,Find 1170,Insert 115,Insert 2086,Insert 1027,Insert 3388,Insert 1961,Insert 3884,Find 2860,Find 3079,Find 2912,Insert 3955,Delete 381,Insert 2363,Insert 1678,Insert 2579,Delete 2650,Find 1326,Insert 2602,Delete 260,Find 1048,Insert 1903,Insert 2419,Insert 1354,Find 892,Delete 502,Find 485,Insert 2515,Insert 283,Insert 1545,Find 3603,Delete 3932,Insert 3945,Delete 3756,Insert 3311,Insert 2814,Insert 3008,Insert 209,Insert 691,Find 1099,Find 2660,Insert 105,Insert 604,Insert 1493,Insert 1936,Insert 727,Insert 1649,Delete 2370,Insert 3598,Find 3465,Insert 38,Insert 3426,Find 3059,Find 2743,Find 2764,Insert 409,Insert 3231,Insert 1390,Find 1068,Find 2222,Insert 2990,Insert 2799,Insert 2839,Find 813,Insert 1628,Insert 2117,Insert 3509,Find 1281,Insert 1576,Delete 1842,Insert 20,Insert 178,Insert 1499,Insert 1626,Delete 2087,Insert 194,Insert 2682,Insert 3277,Insert 316,Insert 2309,Find 173,Insert 2731,Delete 1429,Insert 2182,Insert 1372,Insert 1995,Find 2385,Insert 3706,Find 563,Find 1303,Find 3725,Insert 3116,Delete 2477,Find 3270,Find 2264,Insert 595,Insert 1558,Insert 831,Insert 3787,Find 3770,Insert 2987,Insert 3843,Insert 3803,Delete 3355,Insert 364,Find 1863,Insert 182,Find 2585,Insert 1274,Find 1511,Insert 1797,Insert 2090,Insert 2886,Find 1092,Find 2982,Insert 1313,Find 1177,Delete 1191,Insert 2402,Find 3793,Find 2315,Delete 2140,Insert 1084,Insert 3155,Insert 3393,Delete 490,Delete 3733,Insert 3399,Insert 3599,Delete 1209,Insert 3329,Find 496,Insert 1249,Insert 3328,Delete 3552,Insert 2604,Find 2815,Insert 3632,Find 45,Find 1961,Insert 3244,Insert 236,Find 1844,Find 2238,Delete 2742,Insert 589,Insert 791,Find 1897,Insert 1724,Delete 3650,Insert 408,Insert 2189,Insert 3631,Find 1946,Insert 2974,Find 1752,Insert 1690,Find 2904,Delete 2706,Find 2901,Delete 569,Delete 1231,Insert 1486,Delete 2806,Insert 1964,Insert 580,Find 1367,Insert 916,Find 3256,Find 3161,Insert 207,Delete 1783,Insert 997,Find 1767,Delete 2727,Find 614,Delete 2760,Delete 2781,Insert 3521,Insert 1679,Insert 2848,Insert 3747,Find 3998,Find 3321,Insert 389,Insert 347,Insert 2629,Insert 267,Insert 435,Insert 3434,Insert 917,Insert 2465,Find 979,Insert 649,Insert 2141,Insert 2487,Insert 1361,Insert 1091,Delete 146,Insert 3363,Insert 324,Find 1155,Find 2250,Find 1799,Find 2362,Insert 830,Insert 3311,Insert 239,Delete 3121,Find 3775,Find 2182,Find 785,Find 669,Insert 2879,Find 3355,Insert 2735,Insert 312,Find 1852,Delete 3704,Insert 3616,Delete 2398,Delete 183,Insert 415,Find 3282,Insert 1391,Find 3906,Delete 3730,Insert 2231,Find 3091,Insert 1348,Insert 725,Insert 1670,Insert 3008,Find 178,Find 3366,Insert 1213,Insert 2924,Insert 2252,Insert 1506,Insert 309,Insert 1748,Insert 1425,Delete 3256,Insert 3632,Insert 2940,Insert 1254,Find 136,Insert 3883,Insert 1795,Insert 1621,Insert 2058,Insert 2130,Insert 3688,Insert 1829,Delete 1337,Insert 2221,Insert 43,Delete 1960,Delete 2500,Delete 3443,Find 233,Insert 3577,Insert 3168,Find 3040,Insert 1818,Delete 894,Insert 3479,Insert 2861,Delete 224,Delete 1887,Find 3238,Find 1952,Insert 1771,Insert 1668,Insert 581,Insert 685,Insert 2700,Insert 2332,Insert 3784,Find 1791,Insert 459,Delete 2420,Find 2719,Find 3816,Find 342,Insert 299,Insert 1645,Insert 925,Delete 3932,Find 2449,Insert 2403,Find 1811,Insert 210,Insert 1155,Insert 317,Insert 3238,Insert 2976,Insert 3540,Insert 916,Insert 3751,Insert 121,Insert 2453,Insert 2705,Delete 839,Insert 2540,Insert 2838,Find 697,Find 3187,Find 2992,Insert 342,Find 1918,Insert 642,Find 3907,Insert 3666,Insert 1000,Insert 3600,Delete 279,Insert 2630,Delete 1328,Find 1861,Find 541,Insert 1513,Delete 197,Find 3679,Insert 3375,Find 1405,Find 2051,Insert 3938,Insert 2008,Delete 994,Delete 3720,Insert 2452,Insert 3390,Insert 216,Find 1907,Insert 809,Insert 1068,Insert 3402,Insert 2265,Insert 2176,Find 1860,Insert 2923,Insert 1913,Insert 1564,Insert 3047,Insert 562,Insert 1505,Find 2659,Insert 687,Insert 754,Find 2923,Insert 705,Find 2301,Insert 1323,Delete 3993,Find 2749,Insert 2629,Insert 158,Find 3554,Delete 1319,Insert 3451,Insert 2510,Delete 3362,Insert 789,Insert 2026,Find 832,Insert 3923,Find 3254,Insert 1605,Delete 2055,Insert 1958,Insert 3436,Insert 1766,Insert 3085,Insert 2680,Find 611,Find 2620,Insert 3151,Find 990,Find 1920,Insert 24,Insert 629,Delete 3483,Insert 2770,Insert 973,Find 1701,Insert 3707,Find 1849,Insert 3246,Insert 3641,Delete 3814,Insert 2360,Insert 2651,Insert 908,Find 2864,Insert 966,Insert 2391,Delete 2830,Find 1348,Find 859,Insert 2584,Find 1062,Find 2186,Insert 3714,Find 2987,Delete 2765,Find 739,Find 593,Insert 3653,Delete 3355,Find 1277,Insert 2848,Find 2717,Insert 547,Insert 1644,Insert 2739,Delete 895,Delete 3464,Find 2138,Insert 918,Insert 673,Find 757,Insert 2128,Insert 1027,Insert 1828,Insert 1937,Insert 2678,Insert 1876,Find 3421,Insert 3872,Insert 567,Insert 824,Insert 1606,Insert 1362,Find 799,Insert 3327,Insert 2475,Insert 2201,Insert 1893,Insert 1316,Find 862,Insert 2502,Find 3622,Find 2299,Delete 3184,Insert 2043,Insert 594,Find 1648,Insert 3986,Insert 740,Insert 1444,Find 1709,Find 1659,Delete 831,Find 2910,Insert 3009,Insert 3745,Insert 3737,Insert 202,Insert 2032,Delete 2814,Find 378,Insert 3838,Find 2417,Delete 3114,Insert 1241,Delete 880,Find 1739,Insert 1832,Insert 2237,Insert 3216,Find 2782,Find 2284,Delete 2763,Delete 2080,Find 1584,Insert 2256,Find 2230,Insert 2582,Insert 2795,Delete 2861,Insert 3326,Insert 3170,Insert 376,Insert 383,Insert 907,Find 1672,Find 3080,Find 3121,Insert 1286,Delete 2253,Find 2750,Insert 615,Find 3840,Insert 2639,Insert 3682,Delete 3207,Insert 1000,Find 579,Insert 1050,Insert 2402,Delete 453,Insert 1701,Find 384,Insert 660,Insert 3728,Insert 3563,Find 1419,Insert 2985,Find 1724,Find 2431,Delete 2706,Insert 3398,Find 1395,Insert 2900,Insert 2270,Insert 2866,Find 1824,Insert 3219,Insert 2933,Insert 226,Insert 459,Insert 757,Insert 1858,Insert 3610,Insert 3405,Insert 2006,Insert 3520,Insert 2987,Find 1938,Insert 3152,Insert 2992,Find 1526,Insert 706,Insert 3128,Insert 2614,Find 1627,Delete 3012,Insert 885,Find 3425,Insert 3529,Insert 3199,Delete 618,Insert 1576,Find 2143,Insert 3980,Insert 1682,Find 1180,Find 415,Find 333,Insert 2413,Delete 1398,Insert 1974,Find 703,Insert 3234,Delete 3076,Find 1575,Find 3636,Find 2885,Insert 2181,Insert 1976,Insert 2887,Insert 1352,Find 2096,Insert 1559,Find 2993,Insert 2405,Insert 1030,Insert 2855,Delete 917,Insert 916,Delete 2773,Delete 1548,Insert 1557,Find 1212,Insert 2742,Insert 3802,Insert 3692,Insert 1658,Find 60,Delete 3517,Insert 1818,Delete 1392,Insert 897,Find 985,Insert 159,Delete 70,Find 3775,Find 460,Insert 1609,Delete 2861,Delete 1811,Insert 2892,Insert 3727,Find 30,Find 3973,Insert 146,Insert 3025,Find 186,Insert 1464,Insert 2917,Insert 2627,Insert 2455,Insert 1986,Insert 107,Insert 1601,Insert 819,Delete 669,Insert 2155,Find 2346,Find 1316,Insert 395,Insert 3030,Insert 2925,Insert 2529,Insert 2467,Find 3993,Find 2893,Delete 3242,Insert 257,Find 253,Find 2506,Find 2877,Find 2688,Insert 487,Insert 3978,Insert 276,Find 1466,Insert 1337,Insert 792,Insert 1813,Insert 2361,Delete 2231,Delete 8,Find 973,Insert 3557,Insert 784,Insert 1547,Insert 241,Insert 2492,Insert 2403,Insert 2745,Insert 2008,Find 1041,Delete 188,Find 2046,Find 1708,Delete 2679,Delete 2699,Find 3114,Find 149,Insert 2863,Insert 1690,Insert 2412,Delete 366,Insert 2,Find 986,Insert 375,Insert 3388,Insert 1786,Find 1976,Insert 1685,Insert 1203,Delete 1256,Insert 2645,Insert 3527,Find 648,Insert 3204,Insert 2838,Insert 3243,Find 2257,Find 1241,Insert 2258,Find 3707,Insert 3211,Insert 118,Insert 1473,Find 1784,Insert 262,Insert 1029,Delete 1568,Insert 358,Insert 2280,Find 1757,Insert 472,Insert 2394,Find 1754,Find 2133,Insert 1269,Find 3041,Insert 3869,Find 1783,Find 3664,Insert 2343,Insert 2101,Delete 1022,Find 1970,Delete 2254,Insert 1906,Find 2439,Delete 3343,Insert 3181,Insert 1823,Find 1208,Insert 877,Insert 767,Delete 3652,Insert 807,Find 2375,Find 2250,Insert 328,Delete 107,Find 2604,Find 3083,Insert 3051,Delete 3589,Find 2431,Find 1039,Insert 632,Find 566,Find 1523,Insert 2552,Insert 2278,Find 918,Delete 3561,Find 3664,Insert 3840,Insert 3218,Insert 1434,Find 224,Insert 28,Insert 931,Insert 2043,Delete 817,Insert 3881,Insert 26,Delete 3973,Insert 346,Find 1560,Delete 322,Insert 3569,Delete 1477,Delete 550,Delete 742,Insert 188,Find 2778,Find 405,Insert 527,Insert 1879,Insert 1181,Insert 1450,Find 1476,Find 20,Insert 2078,Find 1629,Insert 2690,Find 3741,Insert 840,Insert 1984,Find 1215,Delete 2985,Find 3482,Insert 1009,Insert 2454,Insert 2783,Insert 450,Insert 1646,Insert 1570,Insert 1674,Insert 941,Find 2377,Insert 246,Delete 3803,Insert 387,Insert 1340,Insert 2356,Find 2735,Insert 3147,Insert 2945,Insert 496,Insert 1685,Insert 3461,Insert 3730,Insert 3516,Delete 720,Find 273,Insert 645,Insert 2643,Insert 214,Insert 1505]
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/1980.hs b/testsuite/tests/ghc-regress/concurrent/should_run/1980.hs
deleted file mode 100644
index 61fcd9d15b..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/1980.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-import Control.Exception
-import Control.Concurrent
-
-main = do
- thr <- myThreadId
- evaluate $ increase_stack 1000
- throwTo thr ThreadKilled
- `Control.Exception.catch` (\e -> case e of
- ThreadKilled -> return ()
- _ -> throw e)
- where
- increase_stack 0 = 1
- increase_stack n = increase_stack (n-1) + n
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/2910.hs b/testsuite/tests/ghc-regress/concurrent/should_run/2910.hs
deleted file mode 100644
index 2867008159..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/2910.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-import Control.Exception
-import GHC.Conc
-
-main = do
- t1 <- block $ forkIO yield
- t2 <- forkIO $ killThread t1
- threadDelay 100000
- threadStatus t1 >>= print
- threadStatus t2 >>= print
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/2910.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/2910.stdout
deleted file mode 100644
index 145fced527..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/2910.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-ThreadFinished
-ThreadFinished
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/2910a.hs b/testsuite/tests/ghc-regress/concurrent/should_run/2910a.hs
deleted file mode 100644
index 380c15467d..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/2910a.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-import Control.Exception
-import GHC.Conc
-
-main = do
- t1 <- mask_ $ forkIO yield
- t2 <- forkIO $ killThread t1
- threadDelay 100000
- threadStatus t1 >>= print
- threadStatus t2 >>= print
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/2910a.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/2910a.stdout
deleted file mode 100644
index 145fced527..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/2910a.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-ThreadFinished
-ThreadFinished
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/3279.hs b/testsuite/tests/ghc-regress/concurrent/should_run/3279.hs
deleted file mode 100644
index 279895f444..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/3279.hs
+++ /dev/null
@@ -1,25 +0,0 @@
--- test for #3279
-
-import System.IO.Unsafe
-import GHC.Conc
-import Control.Exception
-import Prelude hiding (catch)
-
-f :: Int
-f = (1 +) . unsafePerformIO $ do
- error "foo" `catch` \(SomeException e) -> do
- myThreadId >>= flip throwTo e
- -- point X
- unblock $ return 1
-
-main :: IO ()
-main = do
- evaluate f `catch` \(SomeException e) -> return 0
- -- the evaluation of 'x' is now suspended at point X
- tid <- block $ forkIO (evaluate f >> return ())
- killThread tid
- -- now execute the 'unblock' above with a pending exception
- yield
- -- should print 1 + 1 = 2
- print f
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/3279.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/3279.stdout
deleted file mode 100644
index 0cfbf08886..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/3279.stdout
+++ /dev/null
@@ -1 +0,0 @@
-2
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/3429.hs b/testsuite/tests/ghc-regress/concurrent/should_run/3429.hs
deleted file mode 100644
index 8b12a8b1ff..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/3429.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-import Control.Monad
-import Control.Concurrent
-import Control.Concurrent.MVar
-import Control.Exception
-import System.IO
-
-main :: IO ()
-main = do hSetBuffering stdout NoBuffering
- replicateM_ 1000 doit
-
-doit :: IO ()
-doit = do v <- newMVar ()
- t <- forkIO (foo v)
- threadDelay 1000
- killThread t
- takeMVar v
- putChar '.'
-
-foo :: MVar () -> IO ()
-foo v = do let loop = do withMVar v $ \x -> evaluate x
- loop
- loop
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/3429.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/3429.stdout
deleted file mode 100644
index ad88db8c31..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/3429.stdout
+++ /dev/null
@@ -1 +0,0 @@
-........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................ \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/4030.hs b/testsuite/tests/ghc-regress/concurrent/should_run/4030.hs
deleted file mode 100644
index 1993bad86b..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/4030.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module Main where
-
-import Control.Concurrent ( forkIO, killThread )
-import Control.Exception ( block )
-
-main :: IO ()
-main = do tid <- block $ forkIO $ let x = x in x
- killThread tid
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/4030.stderr b/testsuite/tests/ghc-regress/concurrent/should_run/4030.stderr
deleted file mode 100644
index 0e2a7bfc12..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/4030.stderr
+++ /dev/null
@@ -1 +0,0 @@
-4030: <<loop>>
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/4262.hs b/testsuite/tests/ghc-regress/concurrent/should_run/4262.hs
deleted file mode 100644
index e114b558a6..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/4262.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module Main where
-
--- Tests that superfluous worker threads are discarded rather than
--- being kept around by the RTS.
-
-import Control.Concurrent
-import Control.Monad
-import Foreign.C.Types
-import System.Mem
-import System.Posix.Process
-import System.Directory
-import Control.Concurrent.QSem
-
-foreign import ccall safe sleep :: CUInt -> IO ()
-
-main = do
- let amount = 200
- qsem <- newQSem 0
- replicateM_ amount . forkIO $ (sleep 2 >> signalQSem qsem)
- replicateM_ amount $ waitQSem qsem
- -- POSIX only: check thread usage manually
- pid <- getProcessID
- let dir = "/proc/" ++ show pid ++ "/task"
- contents <- getDirectoryContents dir
- let status = length contents - 2 -- . and ..
- print status
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/4262.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/4262.stdout
deleted file mode 100644
index 45a4fb75db..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/4262.stdout
+++ /dev/null
@@ -1 +0,0 @@
-8
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/4811.hs b/testsuite/tests/ghc-regress/concurrent/should_run/4811.hs
deleted file mode 100644
index 5aad0a51df..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/4811.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-import Control.Concurrent
-import Control.Monad
-
--- tests for a bug where throwTo targets a thread just created by
--- forkOn, which is still in the process of migrating to another CPU (#4811)
-
-main = do
- m <- newEmptyMVar
- forkOn 0 $ do
- replicateM_ 1000 $ do
- t <- forkOn 1 $ return ()
- killThread t
- putMVar m ()
- takeMVar m
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/4813.hs b/testsuite/tests/ghc-regress/concurrent/should_run/4813.hs
deleted file mode 100644
index db3a9778c6..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/4813.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-import Control.Concurrent
-import Control.Monad
-import Control.Exception
-import System.Mem
-
--- caused an assertion failure with -debug in 7.0.1 (#4813)
-
-main = do
- m <- newEmptyMVar
- ts <- replicateM 100 $ mask_ $ forkIO $ threadDelay 100000; putMVar m ()
- mapM_ killThread (reverse (init ts))
- takeMVar m
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/Makefile b/testsuite/tests/ghc-regress/concurrent/should_run/Makefile
deleted file mode 100644
index 58a16cb0c6..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/Makefile
+++ /dev/null
@@ -1,6 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-conc059_setup :
- '$(TEST_HC)' $(TEST_HC_OPTS) -c conc059.hs
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/all.T b/testsuite/tests/ghc-regress/concurrent/should_run/all.T
deleted file mode 100644
index cdcbd6da68..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/all.T
+++ /dev/null
@@ -1,200 +0,0 @@
-# -----------------------------------------------------------------------------
-# These tests we do even for 'make fast'
-
-test('conc003', normal, compile_and_run, [''])
-test('conc006', normal, compile_and_run, [''])
-test('conc027', normal, compile_and_run, [''])
-test('conc051', normal, compile_and_run, [''])
-
-if ('threaded1' in config.run_ways):
- only_threaded_ways = only_ways(['ghci','threaded1','threaded2'])
-else:
- only_threaded_ways = skip
-
-test('conc069', only_threaded_ways, compile_and_run, [''])
-test('conc069a', only_threaded_ways, compile_and_run, [''])
-# this test gives slightly different results for non-threaded ways, so omit
-# those for now.
-test('conc070', only_threaded_ways, compile_and_run, [''])
-
-test('conc071', omit_ways(['threaded2']), compile_and_run, [''])
-test('conc072', only_ways(['threaded2']), compile_and_run, [''])
-
-test('1980', normal, compile_and_run, [''])
-test('2910', normal, compile_and_run, [''])
-test('2910a', normal, compile_and_run, [''])
-test('3279', normal, compile_and_run, [''])
-
-# This test takes a long time with the default context switch interval
-test('3429', extra_run_opts('+RTS -i0.001 -RTS'), compile_and_run, [''])
-
-# without -O, goes into an infinite loop
-# GHCi cannot deterct the infinite loop, because the thread is always reachable
-# (see also conc033 and others). We should really fix this.
-test('4030', omit_ways('ghci'), compile_and_run, ['-O'])
-
-# each of these runs for about a second
-test('throwto001', [reqlib('random'), extra_run_opts('1000 2000')],
- compile_and_run, [''])
-test('throwto002', [reqlib('random'), ignore_output], compile_and_run, [''])
-test('throwto003', normal, compile_and_run, [''])
-
-test('mask001', normal, compile_and_run, [''])
-# ghci does not generate the BlockedIndefinitely exceptions, so omit:
-test('mask002', omit_ways(['ghci']), compile_and_run, [''])
-
-test('async001', normal, compile_and_run, [''])
-
-test('numsparks001', only_ways(['threaded1']), compile_and_run, [''])
-
-test('4262', [ skip, # skip for now, it doesn't give reliable results
- only_ways(['threaded1']),
- unless_os('linux',skip),
- if_compiler_lt('ghc', '7.1', expect_fail) ],
- compile_and_run, [''])
-
-test('4813', normal, compile_and_run, [''])
-test('4811', normal, compile_and_run, [''])
-
-test('allowinterrupt001', normal, compile_and_run, [''])
-
-# -----------------------------------------------------------------------------
-# These tests we only do for a full run
-
-def f( opts ):
- if config.fast:
- opts.skip = 1
-
-setTestOpts(f)
-
-test('conc001', normal, compile_and_run, [''])
-test('conc002', normal, compile_and_run, [''])
-
-# Omit GHCi way - it blows up to 0.5G. Something to do with the threaded RTS?
-test('conc004', omit_ways(['ghci']), compile_and_run, [''])
-
-test('conc007', compose(only_compiler_types(['ghc']),
- extra_run_opts('+RTS -H128M -RTS')),
- compile_and_run, [''])
-test('conc008', only_compiler_types(['ghc']), compile_and_run, [''])
-test('conc009', compose(only_compiler_types(['ghc']), exit_code(1)),
- compile_and_run, [''])
-test('conc010', only_compiler_types(['ghc']), compile_and_run, [''])
-
-# conc012(ghci) needs a smaller stack, or it takes forever
-test('conc012', normal, compile_and_run, ['+RTS -K8m -RTS'])
-
-test('conc013', only_compiler_types(['ghc']), compile_and_run, [''])
-
-test('conc014', only_compiler_types(['ghc']), compile_and_run, [''])
-test('conc015', only_compiler_types(['ghc']), compile_and_run, [''])
-test('conc015a', only_compiler_types(['ghc']), compile_and_run, [''])
-test('conc016', [ omit_ways(['threaded2']), # see comment in conc016.hs
- only_compiler_types(['ghc']) ], compile_and_run, [''])
-test('conc017', only_compiler_types(['ghc']), compile_and_run, [''])
-test('conc017a', only_compiler_types(['ghc']), compile_and_run, [''])
-test('conc018', only_compiler_types(['ghc']), compile_and_run, [''])
-test('conc019', compose(only_compiler_types(['ghc']),
- extra_run_opts('+RTS -K16m -RTS')),
- compile_and_run, [''])
-test('conc020', only_compiler_types(['ghc']), compile_and_run, [''])
-test('conc021', compose(omit_ways(['ghci']), exit_code(1)),
- compile_and_run, [''])
-test('conc022', only_compiler_types(['ghc']), compile_and_run, [''])
-
-# On Windows, the non-threaded RTS creates a real OS thread for each
-# threadDelay. conc023 creates 5000 concurrent threadDelays, and the
-# resulting creation of OS threads seems to cause the system to run
-# out of memory sometimes (I'm not sure exactly how/why this happens,
-# but the threaded RTS fixes it). See #1197.
-if config.platform == 'i386-unknown-mingw32':
- conc023_ways = only_ways(['threaded1','threaded2'])
-else:
- conc023_ways = normal
-
-test('conc023', composes([skip_if_fast,
- only_compiler_types(['ghc']),
- conc023_ways]), compile_and_run, [''])
-
-test('conc024', only_compiler_types(['ghc']), compile_and_run, [''])
-test('conc025', normal, compile_and_run, [''])
-test('conc026', only_compiler_types(['ghc']), compile_and_run, [''])
-test('conc028', normal, compile_and_run, [''])
-test('conc029', normal, compile_and_run, [''])
-test('conc030', compose(only_compiler_types(['ghc']),
- extra_run_opts('+RTS -K4M -RTS')),
- compile_and_run, [''])
-
-test('conc031', normal, compile_and_run, [''])
-
-test('conc032', only_compiler_types(['ghc']), compile_and_run, [''])
-
-# Omit for GHCi, because it just sits there waiting for you to press ^C
-test('conc033', omit_ways(['ghci']), compile_and_run, [''])
-
-# Omit for GHCi, because it just sits there waiting for you to press ^C
-test('conc034', compose(only_compiler_types(['ghc']),
- compose(omit_ways(['ghci']),
- extra_run_opts('+RTS -C0 -RTS'))),
- compile_and_run, [''])
-
-test('conc035', only_compiler_types(['ghc']), compile_and_run, [''])
-
-# Omit for GHCi: firstly GHCi doesn't have unsafe FFI calls, and secondly
-# the main thread cannot receive the deadlock exception because it can be
-# woken up by ^C.
-# Omit for threaded2: this test is really bogus and fails to do anything
-# sensible for more than one CPU.
-test('conc036', compose(skip_if_fast,
- compose(omit_ways(['ghci','threaded2']),
- only_compiler_types(['ghc']))), compile_and_run, [''])
-# Interrupting foreign calls only makes sense if we are threaded
-test('foreignInterruptible', composes([skip_if_fast,
- only_threaded_ways,
- only_compiler_types(['ghc'])]), compile_and_run, [''])
-
-test('conc037', only_ways(['threaded1','threaded2']), compile_and_run, [''])
-test('conc038', only_ways(['threaded1','threaded2']), compile_and_run, [''])
-
-# Omit for GHCi, uses foreign export
-# Omit for the threaded ways, because in this case the main thread is allowed to
-# complete, which causes the child thread to be interrupted.
-test('conc039', omit_ways(['ghci','threaded1','threaded2','profthreaded']), compile_and_run, [''])
-
-# Omit for GHCi, uses foreign export
-test('conc040', compose(only_compiler_types(['ghc']),
- compose(exit_code(1),
- omit_ways(['ghci']))),
- compile_and_run, [''])
-
-# STM-related tests.
-test('conc041', only_compiler_types(['ghc']), compile_and_run, [''])
-test('conc042', only_compiler_types(['ghc']), compile_and_run, [''])
-test('conc043', only_compiler_types(['ghc']), compile_and_run, [''])
-test('conc044', only_compiler_types(['ghc']), compile_and_run, [''])
-test('conc045', only_compiler_types(['ghc']), compile_and_run, [''])
-
-test('conc058', only_compiler_types(['ghc']), compile_and_run, [''])
-
-test('conc059',
- [only_compiler_types(['ghc']),
- only_ways(['threaded1','threaded2']),
- compile_cmd_prefix('$MAKE conc059_setup && '),
- extra_clean(['conc059_c.o'])],
- compile_and_run,
- ['conc059_c.c -no-hs-main'])
-
-# This test sometimes just exits successfully
-# when run the threaded2 way. The problem hasn't been diagnosed yet
-test('conc064',
- exit_code(1),
- compile_and_run, [''])
-
-test('conc065', ignore_output, compile_and_run, [''])
-test('conc066', ignore_output, compile_and_run, [''])
-test('conc067', ignore_output, compile_and_run, [''])
-
-# omit threaded2, the behaviour of this test is non-deterministic with more
-# than one CPU.
-test('conc068', [ omit_ways('threaded2'), exit_code(1) ], compile_and_run, [''])
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/allowinterrupt001.hs b/testsuite/tests/ghc-regress/concurrent/should_run/allowinterrupt001.hs
deleted file mode 100644
index 938aa65383..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/allowinterrupt001.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-import Control.Exception
-import Control.Concurrent
-import GHC.Conc
-import Control.Monad
-
-nfib n = if n < 2 then 1 else nfib (n-2) + nfib (n-1)
-
-main = do
- t <- mask_ $ forkIO $ forM_ [1..] $ \n -> nfib n `seq` allowInterrupt
- killThread t
- let loop = do r <- threadStatus t
- when (r /= ThreadFinished) $ do yield; loop
- loop
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/async001.hs b/testsuite/tests/ghc-regress/concurrent/should_run/async001.hs
deleted file mode 100644
index 7d765e26f9..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/async001.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-import Control.Exception as E
-import Control.Concurrent
-import System.IO.Unsafe
-
--- x is killed during evaluation with an asynchronous exception, but
--- nevertheless gets overwritten with 'throw ThreadKilled' because the
--- async exception is re-thrown as a synchrnonous exception by
--- 'onException'.
-
-main = do
- let x = unsafePerformIO $
- (do threadDelay 1000000; return 42)
- `onException` return ()
-
- t <- forkIO $ do evaluate x; return ()
- threadDelay 1000
- killThread t
-
- print x `E.catch` \e -> putStrLn ("main caught: " ++ show (e::SomeException))
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/async001.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/async001.stdout
deleted file mode 100644
index 241be4a895..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/async001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-main caught: thread killed
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc001.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc001.hs
deleted file mode 100644
index 99488fb07b..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc001.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-module Main where
-
-import Control.Concurrent
-
--- two processes, one MVar communication.
-
-main = do
- s <- newEmptyMVar
- let
- write = do
- putMVar s "hello world\n"
-
- forkIO write
- str <- takeMVar s
- putStr str
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc001.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc001.stdout
deleted file mode 100644
index 3b18e512db..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-hello world
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc002.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc002.hs
deleted file mode 100644
index 93efd6fe4c..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc002.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-module Main where
-
-import Control.Concurrent
-
-main = do
- c <- newChan
- let writer = writeList2Chan c "Hello World\n"
- forkIO writer
- let reader = do char <- readChan c
- if (char == '\n')
- then return ()
- else do putChar char; reader
- reader
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc002.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc002.stdout
deleted file mode 100644
index 5e1c309dae..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Hello World \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc003.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc003.hs
deleted file mode 100644
index c7b1f9a56c..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc003.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-module Main where
-
-import Control.Concurrent
-
--- simple handshaking using two MVars,
--- must context switch twice for each character.
-
-main = do
- ready <- newEmptyMVar
- datum <- newEmptyMVar
- let
- reader = do
- putMVar ready ()
- char <- takeMVar datum
- if (char == '\n')
- then return ()
- else do putChar char; reader
-
- writer "" = do
- takeMVar ready
- putMVar datum '\n'
- writer (c:cs) = do
- takeMVar ready
- putMVar datum c
- writer cs
-
- forkIO reader
- writer "Hello World"
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc003.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc003.stdout
deleted file mode 100644
index 5e1c309dae..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc003.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Hello World \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc004.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc004.hs
deleted file mode 100644
index ec46c4ba73..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc004.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-module Main where
-
--- Test thread creation.
--- (from: Einar Wolfgang Karlsen <ewk@Informatik.Uni-Bremen.DE>)
-
-import Control.Concurrent
-
-main :: IO ()
-main = do
- mvar <- newEmptyMVar
-
- let
- spawner :: (IO () -> IO ThreadId) -> Int -> IO ()
- spawner c 0 = putMVar mvar ()
- spawner c n = do { c (spawner c (n-1)); return ()}
-
- spawner forkIO 100000
- takeMVar mvar
- putStr "done"
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc004.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc004.stdout
deleted file mode 100644
index 348ebd9491..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc004.stdout
+++ /dev/null
@@ -1 +0,0 @@
-done \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc006.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc006.hs
deleted file mode 100644
index 4a77b5fc95..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc006.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-module Main where
-
-import Control.Concurrent
-
--- This test hopefully exercises the black hole code. The main thread
--- forks off another thread and starts on a large computation.
--- The child thread attempts to get the result of the same large
--- computation (and should get blocked doing so, because the parent
--- won't have evaluated it yet). When the result is available, the
--- child passes it back to the parent who prints it out.
-
-test = sum [1..10000]
-
-main = do
- x <- newEmptyMVar
- forkIO (if test > 0
- then putMVar x test
- else error "proc"
- )
- if test > 0 -- evaluate test
- then do result <- takeMVar x
- print result
- else error "main"
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc006.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc006.stdout
deleted file mode 100644
index b9d569380c..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc006.stdout
+++ /dev/null
@@ -1 +0,0 @@
-50005000
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc007.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc007.hs
deleted file mode 100644
index 74535ebe6d..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc007.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-
-module Main where
-
-import Control.Concurrent
-import Control.Exception as E
-
-choose :: a -> a -> IO a
-choose a b = do
- ready <- newMVar ()
- answer <- newEmptyMVar
- a_id <- forkIO (a `seq` takeMVar ready >> putMVar answer a)
- b_id <- forkIO (b `seq` takeMVar ready >> putMVar answer b)
- it <- takeMVar answer
- killThread a_id
- killThread b_id
- return it
-
-main = do
- let big = sum [1..]
- small = sum [1..42]
- test1 <- choose big small
- test2 <- choose small big
- print (test1,test2)
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc007.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc007.stdout
deleted file mode 100644
index ee81b5ecd3..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc007.stdout
+++ /dev/null
@@ -1 +0,0 @@
-(903,903)
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc008.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc008.hs
deleted file mode 100644
index 66a4b5f973..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc008.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-
-module Main where
-
-import Control.Concurrent
-import Control.Exception
-
--- Send ourselves a KillThread signal, catch it and recover.
-
-main = do
- id <- myThreadId
- Control.Exception.catch (killThread id) $
- \e -> putStr (show (e::SomeException))
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc008.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc008.stdout
deleted file mode 100644
index faed5b894d..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc008.stdout
+++ /dev/null
@@ -1 +0,0 @@
-thread killed \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc009.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc009.hs
deleted file mode 100644
index 94c7809332..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc009.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-module Main where
-
-import Control.Concurrent
-import Control.Exception
-
-main = do
- id <- myThreadId
- throwTo id (ErrorCall "hello")
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc009.stderr b/testsuite/tests/ghc-regress/concurrent/should_run/conc009.stderr
deleted file mode 100644
index e42034eba1..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc009.stderr
+++ /dev/null
@@ -1 +0,0 @@
-conc009: hello
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc010.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc010.hs
deleted file mode 100644
index 52acb97a35..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc010.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-
-module Main where
-
-import Control.Concurrent
-import Control.Exception
-
--- Raise an exception in another thread. We need a lot of synchronisation here:
-
--- - an MVar for the second thread to block on which it waits for the
--- signal (block)
-
--- - an MVar to signal the main thread that the second thread is ready to
--- accept the signal (ready)
-
--- - an MVar to signal the main thread that the second thread has received
--- the signal (ready2). If we don't have this MVar, then the main
--- thread could exit before the second thread has time to print
--- the result.
-
-main = do
- block <- newEmptyMVar
- ready <- newEmptyMVar
- ready2 <- newEmptyMVar
- id <- forkIO (Control.Exception.catch (putMVar ready () >> takeMVar block)
- (\e -> putStr (show (e::SomeException)) >> putMVar ready2 ()))
- takeMVar ready
- throwTo id (ErrorCall "hello")
- takeMVar ready2
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc010.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc010.stdout
deleted file mode 100644
index b6fc4c620b..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc010.stdout
+++ /dev/null
@@ -1 +0,0 @@
-hello \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc012.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc012.hs
deleted file mode 100644
index a2f139e401..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc012.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-module Main where
-
-import Control.Concurrent
-import Control.Exception
---import GlaExts
-
-data Result = Died SomeException | Finished
-
--- Test stack overflow catching. Should print "Died: stack overflow".
-
-stackoverflow :: Int -> Int
-stackoverflow 0 = 1
-stackoverflow n = n + stackoverflow n
-
-main = do
- let x = stackoverflow 1
- result <- newEmptyMVar
- forkIO $ Control.Exception.catch (x `seq` putMVar result Finished) $
- \e -> putMVar result (Died e)
- res <- takeMVar result
- case res of
- Died e -> putStr ("Died: " ++ show e ++ "\n")
- Finished -> putStr "Ok.\n"
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc012.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc012.stdout
deleted file mode 100644
index 12e0c906fc..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc012.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Died: stack overflow
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc013.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc013.hs
deleted file mode 100644
index ea2130ee47..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc013.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module Main where
-
--- !!! test Eq and Ord instances over thread Ids.
-
-import Control.Concurrent
-
-main = do
- tso1 <- forkIO (return ())
- tso2 <- forkIO (return ())
- print [compare tso1 tso2, compare tso1 tso1, compare tso2 tso1]
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc013.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc013.stdout
deleted file mode 100644
index 98ab9c11f2..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc013.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[LT,EQ,GT]
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc014.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc014.hs
deleted file mode 100644
index 76cb3c24b0..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc014.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-
--- Test blocking of async exceptions in an exception handler.
--- The exception raised in the main thread should not be delivered
--- until the first exception handler finishes.
-main = do
- main_thread <- myThreadId
- m <- newEmptyMVar
- forkIO (do { takeMVar m; throwTo main_thread (ErrorCall "foo") })
- (do
- error "wibble"
- `Control.Exception.catch`
- (\e -> let _ = e::ErrorCall in
- do putMVar m (); sum [1..10000] `seq` putStrLn "done.")
- myDelay 500000
- )
- `Control.Exception.catch`
- \e -> putStrLn ("caught: " ++ show (e::SomeException))
-
--- compensate for the fact that threadDelay is non-interruptible
--- on Windows with the threaded RTS in 6.6.
-myDelay usec = do
- m <- newEmptyMVar
- forkIO $ do threadDelay usec; putMVar m ()
- takeMVar m
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc014.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc014.stdout
deleted file mode 100644
index 807edef7c9..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc014.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-done.
-caught: foo
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc015.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc015.hs
deleted file mode 100644
index 7574e15e5e..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc015.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-
--- test blocking & unblocking of async exceptions.
-
--- the first exception "foo" should be caught by the "caught1" handler,
--- since async exceptions are blocked outside this handler.
-
--- the second exception "bar" should be caught by the outer "caught2" handler,
--- (i.e. this tests that async exceptions are properly unblocked after
--- being blocked).
-
-main = do
- main_thread <- myThreadId
- print =<< blocked -- False
- m <- newEmptyMVar
- m2 <- newEmptyMVar
- forkIO (do takeMVar m
- throwTo main_thread (ErrorCall "foo")
- throwTo main_thread (ErrorCall "bar")
- putMVar m2 ()
- )
- ( do
- block (do
- putMVar m ()
- print =<< blocked -- True
- sum [1..1] `seq` -- give 'foo' a chance to be raised
- (unblock $ myDelay 500000)
- `Control.Exception.catch`
- \e -> putStrLn ("caught1: " ++ show (e::SomeException))
- )
- threadDelay 10000
- takeMVar m2
- )
- `Control.Exception.catch`
- \e -> do print =<< blocked
- putStrLn ("caught2: " ++ show (e::SomeException))
-
--- compensate for the fact that threadDelay is non-interruptible
--- on Windows with the threaded RTS in 6.6.
-myDelay usec = do
- m <- newEmptyMVar
- forkIO $ do threadDelay usec; putMVar m ()
- takeMVar m
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc015.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc015.stdout
deleted file mode 100644
index be6aa71d11..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc015.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-False
-True
-caught1: foo
-True
-caught2: bar
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc015a.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc015a.hs
deleted file mode 100644
index cd8d9dd6c7..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc015a.hs
+++ /dev/null
@@ -1,47 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-
--- version of conc015 using mask in place of the old deprecated
--- block/unblock.
-
--- test blocking & unblocking of async exceptions.
-
--- the first exception "foo" should be caught by the "caught1" handler,
--- since async exceptions are blocked outside this handler.
-
--- the second exception "bar" should be caught by the outer "caught2" handler,
--- (i.e. this tests that async exceptions are properly unblocked after
--- being blocked).
-
-main = do
- main_thread <- myThreadId
- print =<< getMaskingState
- m <- newEmptyMVar
- m2 <- newEmptyMVar
- forkIO (do takeMVar m
- throwTo main_thread (ErrorCall "foo")
- throwTo main_thread (ErrorCall "bar")
- putMVar m2 ()
- )
- ( do
- mask $ \restore -> do
- putMVar m ()
- print =<< getMaskingState
- sum [1..100000] `seq` -- give 'foo' a chance to be raised
- (restore (myDelay 500000)
- `Control.Exception.catch`
- \e -> putStrLn ("caught1: " ++ show (e::SomeException)))
-
- threadDelay 10000
- takeMVar m2
- )
- `Control.Exception.catch`
- \e -> do print =<< getMaskingState
- putStrLn ("caught2: " ++ show (e::SomeException))
-
--- compensate for the fact that threadDelay is non-interruptible
--- on Windows with the threaded RTS in 6.6.
-myDelay usec = do
- m <- newEmptyMVar
- forkIO $ do threadDelay usec; putMVar m ()
- takeMVar m
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc015a.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc015a.stdout
deleted file mode 100644
index 19b98e9b60..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc015a.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-Unmasked
-MaskedInterruptible
-caught1: foo
-MaskedUninterruptible
-caught2: bar
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc016.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc016.hs
deleted file mode 100644
index 639b4306b3..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc016.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-
--- check that we can still kill a thread that is blocked on
--- delivering an exception to us.
-
--- NB. this test is non-deterministic in the threaded2 way since 6.14,
--- because throwTo is now always interruptible, so the main thread's
--- killThread can be legitimately interrupted by the child thread's
--- killThread, rather than the other way around. This happens because
--- the child thread is running on another processor, so the main
--- thread's throwTo is blocked waiting for a response, and while
--- waiting it is interruptible.
-
-main = do
- main_thread <- myThreadId
- m <- newEmptyMVar
- sub_thread <- forkIO (do
- takeMVar m
- throwTo main_thread (ErrorCall "foo")
- )
- mask_ $ do
- putMVar m ()
- sum [1..10000] `seq` -- to be sure the other thread is now blocked
- killThread sub_thread
-
- putStrLn "ok"
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc016.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc016.stdout
deleted file mode 100644
index 9766475a41..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc016.stdout
+++ /dev/null
@@ -1 +0,0 @@
-ok
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc017.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc017.hs
deleted file mode 100644
index 30d8a1c56d..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc017.hs
+++ /dev/null
@@ -1,45 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-
--- check that async exceptions are restored to their previous
--- state after an exception is raised and handled.
-
-main = do
- main_thread <- myThreadId
- m1 <- newEmptyMVar
- m2 <- newEmptyMVar
- m3 <- newEmptyMVar
- forkIO (do
- takeMVar m1
- throwTo main_thread (ErrorCall "foo")
- takeMVar m2
- throwTo main_thread (ErrorCall "bar")
- putMVar m3 ()
- )
- (do
- block (do
- (do putMVar m1 ()
- unblock (
- -- unblocked, "foo" delivered to "caught1"
- myDelay 100000
- )
- ) `Control.Exception.catch`
- \e -> putStrLn ("caught1: " ++ show (e::SomeException))
- putMVar m2 ()
- -- blocked here, "bar" can't be delivered
- (sum [1..10000] `seq` return ())
- `Control.Exception.catch`
- \e -> putStrLn ("caught2: " ++ show (e::SomeException))
- )
- -- unblocked here, "bar" delivered to "caught3"
- takeMVar m3
- )
- `Control.Exception.catch`
- \e -> putStrLn ("caught3: " ++ show (e::SomeException))
-
--- compensate for the fact that threadDelay is non-interruptible
--- on Windows with the threaded RTS in 6.6.
-myDelay usec = do
- m <- newEmptyMVar
- forkIO $ do threadDelay usec; putMVar m ()
- takeMVar m
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc017.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc017.stdout
deleted file mode 100644
index 7fca279f26..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc017.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-caught1: foo
-caught3: bar
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc017a.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc017a.hs
deleted file mode 100644
index ad015f7413..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc017a.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-
--- check that async exceptions are restored to their previous
--- state after an exception is raised and handled.
-
-main = do
- main_thread <- myThreadId
- m1 <- newEmptyMVar
- m2 <- newEmptyMVar
- m3 <- newEmptyMVar
- forkIO (do
- takeMVar m1
- throwTo main_thread (ErrorCall "foo")
- takeMVar m2
- throwTo main_thread (ErrorCall "bar")
- putMVar m3 ()
- )
- (do
- mask $ \restore -> do
- (do putMVar m1 ()
- restore (
- -- unblocked, "foo" delivered to "caught1"
- myDelay 100000
- )
- ) `Control.Exception.catch`
- \e -> putStrLn ("caught1: " ++ show (e::SomeException))
- putMVar m2 ()
- -- blocked here, "bar" can't be delivered
- (sum [1..10000] `seq` return ())
- `Control.Exception.catch`
- \e -> putStrLn ("caught2: " ++ show (e::SomeException))
- -- unblocked here, "bar" delivered to "caught3"
- takeMVar m3
- )
- `Control.Exception.catch`
- \e -> putStrLn ("caught3: " ++ show (e::SomeException))
-
--- compensate for the fact that threadDelay is non-interruptible
--- on Windows with the threaded RTS in 6.6.
-myDelay usec = do
- m <- newEmptyMVar
- forkIO $ do threadDelay usec; putMVar m ()
- takeMVar m
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc017a.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc017a.stdout
deleted file mode 100644
index 7fca279f26..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc017a.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-caught1: foo
-caught3: bar
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc018.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc018.hs
deleted file mode 100644
index aa83e31738..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc018.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-import GHC.Conc
-import Foreign
-
--- test that putMVar blocks on a full MVar rather than raising an
--- exception.
-
-main = do
- -- In this test we want a thread to get BlockedIndefinitely; that
- -- can't be the main thread because in GHCi the main thread
- -- doesn't get BlockedIndefinitely. So we have to use a
- -- subthread, and "prevent* the main thread from getting
- -- BlockedIndefinitely when we're not in GHCi, which is what the
- -- following hack does:
- myThreadId >>= newStablePtr
-
- m <- newEmptyMVar
- t <- forkIO $ do
- Control.Exception.catch (do
- m <- newMVar ()
- putMVar m ()
- )
- (\e -> putMVar m (e::SomeException))
- takeMVar m >>= print
- -- should print "thread blocked indefinitely"
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc018.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc018.stdout
deleted file mode 100644
index dd56b71f23..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc018.stdout
+++ /dev/null
@@ -1 +0,0 @@
-thread blocked indefinitely in an MVar operation
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc019.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc019.hs
deleted file mode 100644
index 51b3d7563a..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc019.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-import Data.List
-import System.Mem
-
--- !!! test that a child thread waiting on its own MVar will get killed by
--- a signal.
-
-main = do
- forkIO (Control.Exception.catch (do { m <- newEmptyMVar; takeMVar m })
- $ \e -> putStrLn ("caught: " ++ show (e::SomeException)))
- threadDelay 10000
- System.Mem.performGC
- threadDelay 10000
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc019.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc019.stdout
deleted file mode 100644
index aba647b928..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc019.stdout
+++ /dev/null
@@ -1 +0,0 @@
-caught: thread blocked indefinitely in an MVar operation
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc020.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc020.hs
deleted file mode 100644
index 956b761245..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc020.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-
-main = do
- m <- newEmptyMVar
- t <- forkIO (block $ takeMVar m)
- threadDelay 100000
- throwTo t (ErrorCall "I'm Interruptible")
- threadDelay 100000
- putMVar m () -- to avoid t being garbage collected
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc020.stderr b/testsuite/tests/ghc-regress/concurrent/should_run/conc020.stderr
deleted file mode 100644
index b0bcbfb17f..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc020.stderr
+++ /dev/null
@@ -1 +0,0 @@
-conc020: I'm Interruptible
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc021.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc021.hs
deleted file mode 100644
index c07c48af35..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc021.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module Main where
-
--- !!! test for uncaught exception
-
-foreign export ccall foo :: Int -> IO Int
-foreign import ccall safe "foo" foo_imported :: Int -> IO Int
-
-foo n = error "wurble"
-
-main = foo_imported 3
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc021.stderr b/testsuite/tests/ghc-regress/concurrent/should_run/conc021.stderr
deleted file mode 100644
index 78e92140e6..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc021.stderr
+++ /dev/null
@@ -1 +0,0 @@
-conc021: wurble
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc022.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc022.hs
deleted file mode 100644
index 5d420d8af7..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc022.hs
+++ /dev/null
@@ -1,40 +0,0 @@
-{-# LANGUAGE MagicHash #-}
--- !!! test tryTakeMVar
-
-import Control.Concurrent
-import Control.Exception
-
-import GHC.Exts ( fork# )
-import GHC.IO ( IO(..) )
-import GHC.Conc ( ThreadId(..) )
-
-main = do
- m <- newEmptyMVar
- r <- timeout 5 (tryTakeMVar m) (putStrLn "timed out!" >> return Nothing)
- print (r :: Maybe Int)
-
- m <- newMVar True
- r <- timeout 5 (tryTakeMVar m) (putStrLn "timed out!" >> return Nothing)
- print r
-
-timeout
- :: Int -- secs
- -> IO a -- action to run
- -> IO a -- action to run on timeout
- -> IO a
-
-timeout secs action on_timeout
- = do
- threadid <- myThreadId
- timeout <- forkIO $ do threadDelay (secs * 1000000)
- throwTo threadid (ErrorCall "__timeout")
- ( do result <- action
- killThread timeout
- return result
- )
- `Control.Exception.catch`
- \exception -> case fromException exception of
- Just (ErrorCall "__timeout") -> on_timeout
- _other -> do killThread timeout
- throw exception
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc022.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc022.stdout
deleted file mode 100644
index 07de2e62f6..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc022.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Nothing
-Just True
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc023.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc023.hs
deleted file mode 100644
index b128c224a3..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc023.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
--- !!! test threadDelay, Random, and QSemN.
-
--- start a large number (n) of threads each of which will wait for a
--- random delay between 0 and m seconds. We use a semaphore to wait
--- for all the threads to finish.
-
-import System.Random
-import Control.Concurrent
-import Control.Exception
-
-n = 5000 -- no. of threads
-m = 3000 -- maximum delay
-
-main = do
- s <- newQSemN n
- (is :: [Int]) <- sequence (take n (repeat (getStdRandom (randomR (1,m)))))
- mapM (fork_sleep s) is
- waitQSemN s n
- where
- fork_sleep s i = forkIO (do waitQSemN s 1
- threadDelay (i*1000)
- signalQSemN s 1)
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc024.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc024.hs
deleted file mode 100644
index e37d64a6e2..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc024.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-module Main where
-
-import Control.Exception
-import Control.Concurrent
-import Prelude hiding (catch)
-import System.Mem
-
--- illustrates the BlockOnDeadMVar exception
-
-main = do
- id <- myThreadId
- forkIO (catch (do m <- newEmptyMVar; takeMVar m)
- (\e -> throwTo id (e::SomeException)))
- catch (do yield; performGC; threadDelay 1000000)
- (\e -> print (e::SomeException))
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc024.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc024.stdout
deleted file mode 100644
index dd56b71f23..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc024.stdout
+++ /dev/null
@@ -1 +0,0 @@
-thread blocked indefinitely in an MVar operation
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc025.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc025.hs
deleted file mode 100644
index a9591d4223..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc025.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- !!! Simple test of dupChan
--- Embarassingly, the published version fails!
-
-module Main where
-
-import Control.Exception
-import Control.Concurrent.Chan
-
-main = do
- chan <- newChan
- ch <- dupChan chan
- writeChan chan "done"
- x <- readChan chan
- y <- readChan ch
- print ("Got "++x ++" "++y)
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc025.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc025.stdout
deleted file mode 100644
index fb1569261c..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc025.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"Got done done"
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc026.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc026.hs
deleted file mode 100644
index 0aa170afb5..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc026.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- test for blocking putMVar
-
-import Control.Concurrent
-
-main = do
- m <- newMVar ()
- forkIO (threadDelay 100000 >> takeMVar m)
- putMVar m ()
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc027.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc027.hs
deleted file mode 100644
index 4a04211824..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc027.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-import Control.Concurrent
-
-main = do
- m <- newEmptyMVar
- end <- newEmptyMVar
- forkIO (sequence_ [ putMVar m () | _ <- [1 .. 10000] ])
- forkIO (sequence_ [ takeMVar m | _ <- [1 .. 10000] ] >> putMVar end ())
- takeMVar end
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc028.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc028.hs
deleted file mode 100644
index 4d3d16866a..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc028.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- test tryPutMVar
-
-import Control.Concurrent
-
-main = do
- m <- newMVar ()
- r <- tryPutMVar m ()
- print r
- takeMVar m
- r <- tryPutMVar m ()
- print r
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc028.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc028.stdout
deleted file mode 100644
index 91d6f80f27..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc028.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-False
-True
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc029.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc029.hs
deleted file mode 100644
index dc1150073d..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc029.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-module Main where
-
-import Control.Exception
-import Control.Concurrent
-import Prelude hiding (catch)
-
--- the BlockOnDeadMVar exception doesn't cause any output by default
-
-main = do
- forkIO (do m <- newEmptyMVar; takeMVar m)
- print (sum [1..10000])
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc029.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc029.stdout
deleted file mode 100644
index b9d569380c..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc029.stdout
+++ /dev/null
@@ -1 +0,0 @@
-50005000
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc030.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc030.hs
deleted file mode 100644
index 4f01668456..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc030.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-module Main where
-
-import Control.Exception
-import Control.Concurrent
-import Prelude hiding (catch)
-
--- the ThreadKilled exception doesn't cause any output by default
-
-main = do
- m <- newEmptyMVar
- id <- forkIO (takeMVar m)
- yield
- killThread id
- putMVar m ()
- print (sum [1..50000])
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc030.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc030.stdout
deleted file mode 100644
index ba6ee958ee..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc030.stdout
+++ /dev/null
@@ -1 +0,0 @@
-1250025000
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc031.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc031.hs
deleted file mode 100644
index c3347550a9..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc031.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-import System.Mem ( performGC )
-import System.Mem.Weak ( addFinalizer )
-
-data P = P (MVar Bool)
-
--- Bug reported by Manuel Chakravarty, namely that we weren't checking
--- for runnable finalizers before declaring that the program is
--- deadlocked.
-
-main = do
--- gcThread -- with this thread enabled, no error
- mv <- newEmptyMVar
- let p = P mv
- addFinalizer p (set p)
- takeMVar mv >>= print
- putStrLn "End."
- where
- set (P mv) = putMVar mv True
- --
- -- this is just to demonstrate that it is only about the GC timing
- --
- gcThread = forkIO $ let gc = do
- putStrLn "delay"
- threadDelay 100000
- putStrLn "gc"
- performGC
- gc
- in gc
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc031.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc031.stdout
deleted file mode 100644
index 8d45abf2c7..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc031.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-True
-End.
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc032.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc032.hs
deleted file mode 100644
index 42149ff477..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc032.hs
+++ /dev/null
@@ -1,74 +0,0 @@
--- !!! this test exposed a bug in the take/putMVar implementation in
--- !!! GHC 5.00. It involves multiple blocking takes & puts on the
--- !!! same MVar.
-
-import Control.Concurrent
-import System.IO.Unsafe
-
-awk True True z = 1
-awk False y True = 2
-awk x False False = 3
-
-awk'1 True True z = 1
-awk'2 False y True = 2
-awk'3 x False False = 3
-
-awk' x y z | ppm [a1'1,a1'2,a1'3] (x,y,z) = awk'1 x y z
- | ppm [a2'1,a2'2,a2'3] (x,y,z) = awk'2 x y z
- | ppm [a3'1,a3'2,a3'3] (x,y,z) = awk'3 x y z
- | otherwise = 0
-
-a1'1 (True,y,z) s = s True
-a1'1 (x,y,z) s = s False
-
-a1'2 (x,True,z) s = s True
-a1'2 (x,y,z) s = s False
-
-a1'3 (x,y,z) s = s True
-
-a2'1 (False,y,z) s = s True
-a2'1 (x,y,z) s = s False
-
-a2'2 (x,y,z) s = s True
-
-a2'3 (x,y,True) s = s True
-a2'3 (x,y,z) s = s False
-
-a3'1 (x,y,z) s = s True
-
-a3'2 (x,False,z) s = s True
-a3'2 (x,y,z) s = s False
-
-a3'3 (x,y,False) s = s True
-a3'3 (x,y,z) s = s False
-
-ppm fs as = unsafePerformIO (ppm' fs as)
-
-ppm' fs as = do m <- newEmptyMVar
- let s = putMVar m
- hs <- sequence [forkIO (f as s)|f <- fs]
- result <- assess (length fs) m
- sequence (map killThread hs)
- return result
- where assess 0 m = return True
- assess n m = do h <- takeMVar m
- if h then (assess (n-1) m)
- else return False
-
-main = do sequence [putStrLn (show (awk' x y z))|(x,y,z) <- args]
- where args = [
- (t,t,t),
- (t,t,f),
- (t,f,t),
- (t,f,f),
- (f,t,t),
- (f,t,f),
- (f,f,t),
- (f,f,f),
- (t,t,n)
- --(f,n,t),
- --(n,f,f),
- ]
- t = True
- f = False
- n = odd (last [1..])
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc032.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc032.stdout
deleted file mode 100644
index a357bc8aac..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc032.stdout
+++ /dev/null
@@ -1,9 +0,0 @@
-1
-1
-0
-3
-2
-0
-2
-3
-1
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc033.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc033.hs
deleted file mode 100644
index 6933822e56..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc033.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-
--- !!! test that deadlock is raised as an exception properly
-main = do
- r <- Control.Exception.try $ do
- m <- newEmptyMVar
- takeMVar m
- return ()
- print (r::Either SomeException ())
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc033.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc033.stdout
deleted file mode 100644
index 1c0eba9dec..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc033.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Left thread blocked indefinitely in an MVar operation
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc034.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc034.hs
deleted file mode 100644
index 4101212ad1..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc034.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-import Foreign
-
-import System.IO (hFlush,stdout)
-
-import Prelude hiding (catch)
-
--- !!! Try to get two threads into a knot depending on each other.
-
--- This should result in the main thread being sent a NonTermination
--- exception (in GHC 5.02, the program is terminated with "no threads
--- to run" instead).
-
-main = do
- Foreign.newStablePtr stdout
- -- HACK, because when these two threads get blocked on each other,
- -- there's nothing keeping stdout alive so it will get finalized.
- -- SDM 12/3/2004
- let a = last ([1..10000] ++ [b])
- b = last ([2..10000] ++ [a])
- -- we have to be careful to ensure that the strictness analyser
- -- can't see that a and b are both bottom, otherwise the
- -- simplifier will go to town here, resulting in something like
- -- a = a and b = a.
- forkIO (print a `catch` \NonTermination -> return ())
- -- we need to catch in the child thread too, because it might
- -- get sent the NonTermination exception first.
- r <- Control.Exception.try (print b)
- print (r :: Either NonTermination ())
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc034.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc034.stdout
deleted file mode 100644
index 1f83158694..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc034.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Left <<loop>>
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc035.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc035.hs
deleted file mode 100644
index fcb2d5c2e4..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc035.hs
+++ /dev/null
@@ -1,49 +0,0 @@
-module Main where
-
-import Control.Concurrent
-import qualified Control.Exception as E
-
-trapHandler :: MVar Int -> MVar () -> IO ()
-trapHandler inVar caughtVar =
- (do E.block $ do
- trapMsg <- takeMVar inVar
- putStrLn ("Handler got: " ++ show trapMsg)
- trapHandler inVar caughtVar
- )
- `E.catch`
- (trapExc inVar caughtVar)
-
-trapExc :: MVar Int -> MVar () -> E.SomeException -> IO ()
--- If we have been killed then we are done
-trapExc inVar caughtVar e
- | Just E.ThreadKilled <- E.fromException e = return ()
--- Otherwise...
-trapExc inVar caughtVar e =
- do putStrLn ("Exception: " ++ show e)
- putMVar caughtVar ()
- trapHandler inVar caughtVar
-
-main :: IO ()
-main = do
- inVar <- newEmptyMVar
- caughtVar <- newEmptyMVar
- tid <- forkIO (trapHandler inVar caughtVar)
- yield
- putMVar inVar 1
- threadDelay 1000
- throwTo tid (E.ErrorCall "1st")
- takeMVar caughtVar
- putMVar inVar 2
- threadDelay 1000
- throwTo tid (E.ErrorCall "2nd")
- -- the second time around, exceptions will be blocked, because
- -- the trapHandler is effectively "still in the handler" from the
- -- first exception. I'm not sure if this is by design or by
- -- accident. Anyway, the trapHandler will at some point block
- -- in takeMVar, and thereby become interruptible, at which point
- -- it will receive the second exception.
- takeMVar caughtVar
- -- Running the GHCi way complains that tid is blocked indefinitely if
- -- it still exists, so kill it.
- killThread tid
- putStrLn "All done"
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc035.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc035.stdout
deleted file mode 100644
index f667439731..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc035.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-Handler got: 1
-Exception: 1st
-Handler got: 2
-Exception: 2nd
-All done
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc036.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc036.hs
deleted file mode 100644
index ead85a530d..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc036.hs
+++ /dev/null
@@ -1,35 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-{-# OPTIONS -cpp #-}
-module Main where
-
-import Control.Concurrent
-import Control.Exception
-import Prelude hiding (catch)
-import Foreign
-import System.IO
-
-#ifdef mingw32_HOST_OS
-sleep n = sleepBlock (n*1000)
-foreign import stdcall unsafe "Sleep" sleepBlock :: Int -> IO ()
-#else
-sleep n = sleepBlock n
-foreign import ccall unsafe "sleep" sleepBlock :: Int -> IO ()
-#endif
-
-main :: IO ()
-main = do
- newStablePtr stdout -- prevent stdout being finalized, sigh
- th <- newEmptyMVar
- forkIO $ do
- putStrLn "newThread started"
- sleep 1
- putMVar th "child"
- threadDelay 500000
- yield -- another hack, just in case child yields right after "sleep 1"
- putMVar th "main" `catch` (\BlockedIndefinitelyOnMVar -> return ())
- -- tests that the other thread doing an unsafe call to
- -- sleep(3) has blocked this thread. Not sure if this
- -- is a useful test.
- x <- takeMVar th
- putStrLn x
- putStrLn "\nshutting down"
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc036.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc036.stdout
deleted file mode 100644
index d5fb94ff25..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc036.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-newThread started
-child
-
-shutting down
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc037.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc037.hs
deleted file mode 100644
index 7da76f5025..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc037.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# OPTIONS_GHC -cpp #-}
-{-# LANGUAGE ForeignFunctionInterface #-}
-module Main where
-
-import Control.Concurrent
-
-#ifdef mingw32_HOST_OS
-foreign import stdcall safe "Sleep" _sleepBlock :: Int -> IO ()
-sleepBlock n = _sleepBlock (n*1000)
-#else
-foreign import ccall safe "sleep" sleepBlock :: Int -> IO ()
-#endif
-
-main :: IO ()
-main = do
- th <- newEmptyMVar
- forkIO $ do
- putStrLn "newThread started"
- sleepBlock 1
- putStrLn "newThread back again"
- putMVar th "1 sec later"
- threadDelay 200000 -- make sure the newly created thread is run.
- putStrLn "mainThread"
- x <- takeMVar th
- putStrLn x
- putStrLn "\nshutting down"
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc037.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc037.stdout
deleted file mode 100644
index 18c9f447f6..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc037.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-newThread started
-mainThread
-newThread back again
-1 sec later
-
-shutting down
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc038.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc038.hs
deleted file mode 100644
index 0cf82f3b24..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc038.hs
+++ /dev/null
@@ -1,37 +0,0 @@
-{-# OPTIONS_GHC -cpp #-}
-{-# LANGUAGE ForeignFunctionInterface #-}
-module Main where
-
-import Control.Concurrent
-
-haskellFun :: Int -> IO ()
-haskellFun c = putStrLn ("Haskell: " ++ show c)
-
-foreign export ccall "hFun" haskellFun :: Int -> IO ()
-foreign import ccall safe "hFun" hFun :: Int -> IO ()
-
-#ifdef mingw32_HOST_OS
-foreign import stdcall safe "Sleep" _sleepBlock :: Int -> IO ()
-sleepBlock n = _sleepBlock (n*1000)
-#else
-foreign import ccall safe "sleep" sleepBlock :: Int -> IO ()
-#endif
-
-
-
-main :: IO ()
-main = do
- th <- newEmptyMVar
- forkIO $ do
- putStrLn "newThread started"
- sleepBlock 1
- putStrLn "newThread back again"
- putMVar th "1 sec later"
- threadDelay 500000 >> putStrLn "mainThread"
- -- this will not be blocked in the threaded RTS
- forkIO $ (hFun 2)
- -- neither will this
- x <- takeMVar th
- putStrLn x
- putStrLn "\nshutting down"
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc038.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc038.stdout
deleted file mode 100644
index 21fc15c4e2..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc038.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-newThread started
-mainThread
-Haskell: 2
-newThread back again
-1 sec later
-
-shutting down
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc039.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc039.hs
deleted file mode 100644
index dc5d181a31..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc039.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-
-import Foreign
-import System.Mem
-import Control.Concurrent
-
-foreign export ccall "performGC_" performGC' :: IO ()
-performGC' = do putMVar m (); yield; performGC
-
-foreign import ccall "performGC_" f :: IO ()
-
-{-# NOINLINE m #-}
-m = unsafePerformIO newEmptyMVar
-
-main = do
- forkIO f
- takeMVar m
-
--- This tests for a bug in the garbage collector, whereby a main
--- thread that has completed may be GC'd before its return value is
--- propagated back to the caller of rts_evalIO().
---
--- The sequence we hope to create is:
--- - main thread (1) forks off thread (2)
--- - thread (2) invokes new main thread (3) via a 'safe' ccall
--- - thread (3) yields to thread (1)
--- - thread (1) completes, but cannot return yet because (3)
--- is the current main thread (unless we
--- are in SMP or RTS_SUPPORTS_THREADS mode)
--- - thread (3) invokes a GC
--- - thread (1) is GC'd, unless we're careful!
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc040.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc040.hs
deleted file mode 100644
index be3bfdb915..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc040.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-
-import Foreign
-import Data.IORef
-import Control.Concurrent
-import Control.Exception
-
-foreign import ccall "wrapper"
- wrap :: IO () -> IO (FunPtr (IO ()))
-
-foreign import ccall "dynamic"
- invoke :: FunPtr (IO ()) -> IO ()
-
-{-# NOINLINE m #-}
-m :: IORef ThreadId
-m = unsafePerformIO (newIORef (error "m"))
-
-main = do
- id <- myThreadId
- writeIORef m id
- raise' <- wrap raise
- invoke raise'
-
-raise = do
- id <- readIORef m
- me <- myThreadId
- forkIO $ do threadDelay 10000; throwTo me (ErrorCall "timeout")
- throwTo id (ErrorCall "kapow!")
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc040.stderr b/testsuite/tests/ghc-regress/concurrent/should_run/conc040.stderr
deleted file mode 100644
index d113a02a99..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc040.stderr
+++ /dev/null
@@ -1 +0,0 @@
-conc040: timeout
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc041.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc041.hs
deleted file mode 100644
index 8aec345b1c..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc041.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module Main where
-
-import GHC.Conc
-
--- Create a new TVar and never use it
-main = do
- putStr "Before\n"
- t <- atomically ( newTVar 42 )
- putStr "After\n"
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc041.stderr b/testsuite/tests/ghc-regress/concurrent/should_run/conc041.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc041.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc041.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc041.stdout
deleted file mode 100644
index a84f0c9779..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc041.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Before
-After
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc042.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc042.hs
deleted file mode 100644
index 9ebbf3e4ea..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc042.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-module Main where
-
-import GHC.Conc
-
--- Create a new TVar and check that it contains the expected value
-main = do
- putStr "Before\n"
- t <- atomically ( newTVar 42 )
- r <- atomically ( readTVar t )
- putStr ("After " ++ (show r) ++ "\n")
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc042.stderr b/testsuite/tests/ghc-regress/concurrent/should_run/conc042.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc042.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc042.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc042.stdout
deleted file mode 100644
index 6fea5e3fe9..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc042.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Before
-After 42
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc043.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc043.hs
deleted file mode 100644
index 18cf1196f7..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc043.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-module Main where
-
-import GHC.Conc
-
--- Create a new TVar, update it and check that it contains the expected value after the
--- transaction
-main = do
- putStr "Before\n"
- t <- atomically ( newTVar 42 )
- atomically ( writeTVar t 17 )
- r <- atomically ( readTVar t )
- putStr ("After " ++ (show r) ++ "\n")
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc043.stderr b/testsuite/tests/ghc-regress/concurrent/should_run/conc043.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc043.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc043.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc043.stdout
deleted file mode 100644
index 8b2ff8961d..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc043.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Before
-After 17
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc044.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc044.hs
deleted file mode 100644
index 0ad4701f8b..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc044.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-module Main where
-
-import GHC.Conc
-
--- Create a new TVar, update it and check that it contains the expected value within
--- the transaction
-main = do
- putStr "Before\n"
- t <- atomically ( newTVar 42 )
- r <- atomically ( do writeTVar t 17
- readTVar t)
- putStr ("After " ++ (show r) ++ "\n")
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc044.stderr b/testsuite/tests/ghc-regress/concurrent/should_run/conc044.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc044.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc044.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc044.stdout
deleted file mode 100644
index 8b2ff8961d..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc044.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Before
-After 17
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc045.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc045.hs
deleted file mode 100644
index 4ab585eef3..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc045.hs
+++ /dev/null
@@ -1,39 +0,0 @@
-module Main where
-
-import GHC.Conc
-import Control.Concurrent
-
-snapshot t1 t2 = atomically ( do v1 <- readTVar t1
- v2 <- readTVar t2
- return (v1, v2) )
-
-twiddle mv _ _ 0 = putMVar mv ()
-twiddle mv t1 t2 n = do atomically ( do v1 <- readTVar t1
- v2 <- readTVar t2
- writeTVar t2 (v1+1)
- writeTVar t1 (v2+1) )
- twiddle mv t1 t2 (n-1)
-
-
--- Contended updates to a pair of TVars
-main = do
- putStr "Before\n"
- (t1,t2) <- atomically ( do t1 <- newTVar 0
- t2 <- newTVar 1
- return (t1, t2))
-
- -- MVars used to signal completion
- t1c <- newEmptyMVar
- t2c <- newEmptyMVar
-
- forkIO (twiddle t1c t1 t2 1000)
- forkIO (twiddle t2c t1 t2 1000)
-
- -- Wait for threads to exit
- takeMVar t1c
- takeMVar t2c
-
- -- Display final state
- (r1,r2) <- snapshot t1 t2
- putStr ("After " ++ (show r1) ++ " , " ++ (show r2) ++ "\n")
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc045.stderr b/testsuite/tests/ghc-regress/concurrent/should_run/conc045.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc045.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc045.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc045.stdout
deleted file mode 100644
index 31640611f4..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc045.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Before
-After 2000 , 2001
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc051.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc051.hs
deleted file mode 100644
index db8a796a9c..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc051.hs
+++ /dev/null
@@ -1,32 +0,0 @@
-module Main (main) where
-
-import System.Environment
-import Control.Concurrent
-import Control.Monad
-
------------------------------------------------------------------------------
--- test MVar throughput between the main thread and a child thread
-
--- This test runs quite slowly on the threaded/SMP RTS vs. the normal RTS,
--- because the main thread and child thread are run by different OS threads,
--- so each MVar communication requires real OS thread switching.
---
--- Figures I get are about a factor of 10 difference in speed, at GHC 6.5.
-
-main = chanTest 300000
-
-chanTest :: Int -> IO ()
-chanTest n = do
- chan <- newEmptyMVar
- forkIO (writer chan n)
- reader chan n
-
-reader chan 0 = return ()
-reader chan n = do
- takeMVar chan
- reader chan (n-1)
-
-writer chan 0 = return ()
-writer chan n = do
- putMVar chan ()
- writer chan (n-1)
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc058.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc058.hs
deleted file mode 100644
index 5fbe4e5af8..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc058.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-
--- variation on conc020 that tests for threadDelay being interruptible.
--- On Windows, with the threaded RTS, in 6.6 and earlier, threadDelay is
--- not interruptible.
-main = do
- m <- newEmptyMVar
- t <- forkIO (block $ threadDelay 1000000)
- threadDelay 100000
- throwTo t (ErrorCall "I'm Interruptible")
- threadDelay 100000
- putMVar m () -- to avoid t being garbage collected
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc058.stderr b/testsuite/tests/ghc-regress/concurrent/should_run/conc058.stderr
deleted file mode 100644
index 2b5ddd02dc..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc058.stderr
+++ /dev/null
@@ -1 +0,0 @@
-conc058: I'm Interruptible
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc059.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc059.hs
deleted file mode 100644
index bed28d27cb..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc059.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE CPP, ForeignFunctionInterface #-}
-module Test where
-
-import Control.Concurrent
-import Control.Monad
-import Foreign.C
-
--- See also conc059_c.c
---
--- This test fires off some threads that will return after the RTS has
--- shut down. This should not crash or confuse the RTS.
-
-f :: Int -> IO ()
-f x = do
- print x
- replicateM_ 10 $ forkIO $ do usleep (fromIntegral x); putStrLn "hello"
- return ()
-
-foreign export ccall "f" f :: Int -> IO ()
-
-#ifdef mingw32_HOST_OS
-foreign import stdcall safe "Sleep" _sleep :: Int -> IO ()
-usleep n = _sleep (n `quot` 1000)
-#else
-foreign import ccall safe "usleep" usleep :: Int -> IO ()
-#endif
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc059.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc059.stdout
deleted file mode 100644
index 92911bfda2..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc059.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-exiting...
-exited.
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc059_c.c b/testsuite/tests/ghc-regress/concurrent/should_run/conc059_c.c
deleted file mode 100644
index f15fbdd735..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc059_c.c
+++ /dev/null
@@ -1,30 +0,0 @@
-#include "HsFFI.h"
-#include "conc059_stub.h"
-#include <unistd.h>
-#include <stdio.h>
-#if mingw32_HOST_OS
-#include <windows.h>
-#endif
-
-void __stginit_Test(void);
-
-int main(int argc, char *argv[])
-{
- hs_init(&argc,&argv);
- hs_add_root(__stginit_Test);
- f(500000);
-#if mingw32_HOST_OS
- Sleep(100);
-#else
- usleep(100000);
-#endif
- printf("exiting...\n");
- hs_exit();
- printf("exited.\n");
-#if mingw32_HOST_OS
- Sleep(1000);
-#else
- usleep(1000000);
-#endif
- exit(0);
-}
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc064.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc064.hs
deleted file mode 100644
index d37387c601..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc064.hs
+++ /dev/null
@@ -1,30 +0,0 @@
--- test for bug #1067
-
-import Control.Concurrent
-import Control.Exception
-
-main = do
- master <- myThreadId
- test master 10
- -- make sure we catch a final NonTermination exception to get
- -- a consistent result.
- threadDelay (10 * one_second)
-
-test tid 0 = return ()
-test tid n = do
- e <- try threads
- case e of
- Left NonTermination -> test tid (n-1)
- Right _ -> return ()
- where
- threads = do sequence $ replicate 3 $
- forkIO $ do t <- myThreadId
- --putStrLn ("Start " ++ show t)
- threadDelay one_second
- --putStrLn ("End " ++ show t)
- throwTo tid NonTermination
- --putStrLn ("Thrown " ++ show t)
- threadDelay (10 * one_second)
-
-one_second :: Int
-one_second = 100000
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc064.stderr b/testsuite/tests/ghc-regress/concurrent/should_run/conc064.stderr
deleted file mode 100644
index 9a49972f77..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc064.stderr
+++ /dev/null
@@ -1 +0,0 @@
-conc064: <<loop>>
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc065.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc065.hs
deleted file mode 100644
index db6d7cf3ba..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc065.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- Test for bug #1047
-
-import Control.Concurrent
-import Control.Exception
-
--- This loop spends most of its time printing stuff, and very occasionally
--- pops outside 'block'. This test ensures that an thread trying to
--- throwTo this thread will eventually succeed.
-loop = block (print "alive") >> loop
-
-main = do tid <- forkIO loop
- threadDelay 1
- killThread tid
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc066.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc066.hs
deleted file mode 100644
index 81638dfd10..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc066.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- Test for bug #1047
-
-import Control.Concurrent
-import Control.Exception
-
--- This loop spends most of its time printing stuff, and very occasionally
--- executes 'unblock (return ())'. This test ensures that a thread waiting
--- to throwTo this thread is not blocked indefinitely.
-loop = do unblock (return ()); print "alive"; loop
-
-main = do tid <- forkIO (block loop)
- yield
- killThread tid
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc067.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc067.hs
deleted file mode 100644
index ef6dde3ff7..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc067.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- Test for bug #418
-
-module Main where
-
-import Control.Concurrent
-import System.IO.Unsafe (unsafeInterleaveIO)
-
-main = do
- v <- newEmptyMVar
- a <- unsafeInterleaveIO (readMVar v)
- t <- forkIO (print a)
- threadDelay (100*1000)
- killThread t
- forkIO $ print a
- putMVar v ()
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc068.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc068.hs
deleted file mode 100644
index eb90d06591..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc068.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-import GHC.Conc
-
--- test forkBlockIO
-main = do
- main_thread <- myThreadId
- m <- newEmptyMVar
- sub_thread <- block $ forkIO $
- sum [1..100000] `seq`
- throwTo main_thread (ErrorCall "foo")
- killThread sub_thread
- putStrLn "oops"
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc068.stderr b/testsuite/tests/ghc-regress/concurrent/should_run/conc068.stderr
deleted file mode 100644
index bf40dfdd92..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc068.stderr
+++ /dev/null
@@ -1 +0,0 @@
-conc068: foo
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc069.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc069.hs
deleted file mode 100644
index fd757133a5..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc069.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-
-main = do
- -- stat -- main thread is not bound in GHCi
- m <- newEmptyMVar
- forkIO (do stat; putMVar m ())
- takeMVar m
- block $ forkIO (do stat; putMVar m ())
- takeMVar m
- forkOS (do stat; putMVar m ())
- takeMVar m
- block $ forkOS (do stat; putMVar m ())
- takeMVar m
-
-stat = do
- x <- isCurrentThreadBound
- y <- blocked
- print (x,y)
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc069.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc069.stdout
deleted file mode 100644
index 240e16e63f..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc069.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-(False,False)
-(False,True)
-(True,False)
-(True,True)
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc069a.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc069a.hs
deleted file mode 100644
index 5bf619bec1..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc069a.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-
-main = do
- -- stat -- main thread is not bound in GHCi
- m <- newEmptyMVar
- forkIO (do stat; putMVar m ())
- takeMVar m
- mask_ $ forkIO (do stat; putMVar m ())
- takeMVar m
- forkOS (do stat; putMVar m ())
- takeMVar m
- mask_ $ forkOS (do stat; putMVar m ())
- takeMVar m
-
-stat = do
- x <- isCurrentThreadBound
- y <- getMaskingState
- print (x,y)
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc069a.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc069a.stdout
deleted file mode 100644
index 0883f133dc..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc069a.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-(False,Unmasked)
-(False,MaskedInterruptible)
-(True,Unmasked)
-(True,MaskedInterruptible)
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc070.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc070.hs
deleted file mode 100644
index 71eb415427..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc070.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-import Control.Concurrent
-import GHC.Conc
-import Data.List
-import Data.Maybe
-
-main = do
- t1 <- forkIO (threadDelay 100000000)
- m <- newEmptyMVar
- t2 <- forkIO (takeMVar m)
- t3 <- forkIO (let loop = do r <- tryTakeMVar m;
- _ <- newEmptyMVar -- do some allocation :(
- if isNothing r then loop else return ()
- in loop)
- t4 <- forkIO (return ())
- yield
- threadDelay 10000
- print =<< mapM threadStatus [t1,t2,t3,t4]
- putMVar m ()
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc070.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc070.stdout
deleted file mode 100644
index 30f0076668..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc070.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[ThreadBlocked BlockedOnMVar,ThreadBlocked BlockedOnMVar,ThreadRunning,ThreadFinished]
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc071.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc071.hs
deleted file mode 100644
index 7c58efbc9f..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc071.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-module Main where
-
-import Control.Concurrent
-
-main = do
- t <- forkIO (return ())
- threadCapability t >>= print
- t <- forkOn 0 (return ())
- threadCapability t >>= print
- t <- forkOn 1 (return ())
- threadCapability t >>= print
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc071.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc071.stdout
deleted file mode 100644
index 9933b254fe..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc071.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-(0,False)
-(0,True)
-(0,True)
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc072.hs b/testsuite/tests/ghc-regress/concurrent/should_run/conc072.hs
deleted file mode 100644
index 8f1218084c..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc072.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module Main where
-
-import Control.Concurrent
-
-main = do
- t <- forkOn 0 (return ())
- threadCapability t >>= print
- t <- forkOn 1 (return ())
- threadCapability t >>= print
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/conc072.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/conc072.stdout
deleted file mode 100644
index 739ac3797e..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/conc072.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-(0,True)
-(1,True)
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/foreignInterruptible.hs b/testsuite/tests/ghc-regress/concurrent/should_run/foreignInterruptible.hs
deleted file mode 100644
index 32252fb8db..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/foreignInterruptible.hs
+++ /dev/null
@@ -1,32 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-{-# OPTIONS -cpp #-}
-module Main where
-
-import Control.Concurrent
-import Control.Exception
-import Prelude hiding (catch)
-import Foreign
-import System.IO
-
-#ifdef mingw32_HOST_OS
-sleep n = sleepBlock (n*1000)
-foreign import stdcall interruptible "Sleep" sleepBlock :: Int -> IO ()
-#else
-sleep n = sleepBlock n
-foreign import ccall interruptible "sleep" sleepBlock :: Int -> IO ()
-#endif
-
-main :: IO ()
-main = do
- newStablePtr stdout -- prevent stdout being finalized
- th <- newEmptyMVar
- tid <- forkIO $ do
- putStrLn "newThread started"
- (sleep 2 >> putStrLn "fail") `catch` (\ThreadKilled -> putStrLn "pass")
- putMVar th "child"
- yield
- threadDelay 500000
- killThread tid
- x <- takeMVar th
- putStrLn x
- putStrLn "\nshutting down"
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/foreignInterruptible.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/foreignInterruptible.stdout
deleted file mode 100644
index 4048ae362e..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/foreignInterruptible.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-newThread started
-pass
-child
-
-shutting down
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/mask001.hs b/testsuite/tests/ghc-regress/concurrent/should_run/mask001.hs
deleted file mode 100644
index 96bbf53c73..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/mask001.hs
+++ /dev/null
@@ -1,70 +0,0 @@
-import Control.Exception
-import Text.Printf
-
--- Test all the various combinations of nesting mask/uninterruptibleMask
-
-main = do
- stat 1 Unmasked
- mask_ $ stat 2 MaskedInterruptible
- mask $ \restore -> do
- stat 3 MaskedInterruptible
- restore $ stat 4 Unmasked
- restore $ restore $ stat 5 Unmasked
- stat 6 MaskedInterruptible
- uninterruptibleMask $ \restore -> do
- stat 7 MaskedUninterruptible
- restore $ stat 8 MaskedInterruptible
- restore $ restore $ stat 9 MaskedInterruptible
- stat 10 MaskedUninterruptible
- mask $ \restore -> do
- stat 11 MaskedUninterruptible
- restore $ stat 12 MaskedUninterruptible
- restore $ restore $ stat 13 MaskedUninterruptible
- stat 14 MaskedUninterruptible
- stat 15 MaskedUninterruptible
- stat 16 MaskedInterruptible
- stat 17 Unmasked
-
- uninterruptibleMask $ \restore -> do
- stat 20 MaskedUninterruptible
- restore $ stat 21 Unmasked
- restore $ restore $ stat 22 Unmasked
- stat 23 MaskedUninterruptible
- mask $ \restore -> do
- stat 24 MaskedUninterruptible
- restore $ stat 25 MaskedUninterruptible
- restore $ restore $ stat 26 MaskedUninterruptible
- stat 27 MaskedUninterruptible
- uninterruptibleMask $ \restore -> do
- stat 28 MaskedUninterruptible
- restore $ stat 29 MaskedUninterruptible
- restore $ restore $ stat 30 MaskedUninterruptible
- stat 31 MaskedUninterruptible
- stat 32 MaskedUninterruptible
- stat 33 MaskedUninterruptible
- stat 34 Unmasked
-
- -- it is possible to call a restore from a mask that is not the
- -- innermost enclosing one, although this is not a recommended use
- -- of the API.
- mask $ \restore0 -> do
- stat 41 MaskedInterruptible
- -- it is possible to call a restore from a mask that is not the
- uninterruptibleMask $ \restore1 -> do
- stat 42 MaskedUninterruptible
- restore0 $ stat 43 Unmasked
- restore0 $ restore0 $ stat 44 Unmasked
- restore1 $ stat 45 MaskedInterruptible
- restore1 $ restore1 $ stat 46 MaskedInterruptible
- restore0 $ restore1 $ stat 47 MaskedInterruptible
- restore1 $ restore0 $ stat 48 Unmasked
- stat 49 MaskedUninterruptible
- stat 50 MaskedInterruptible
- stat 51 Unmasked
-
-stat :: Int -> MaskingState -> IO ()
-stat n m = do
- s <- getMaskingState
- if (s /= m)
- then error (printf "%2d: %s\n" n (show s))
- else return ()
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/mask002.hs b/testsuite/tests/ghc-regress/concurrent/should_run/mask002.hs
deleted file mode 100644
index 15b2e64a00..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/mask002.hs
+++ /dev/null
@@ -1,32 +0,0 @@
-import Control.Exception
-import Control.Concurrent
-import Text.Printf
-import Prelude hiding(catch)
-
--- Test combinations of nesting mask/uninterruptibleMask with
--- forkIO/forkIOUnmask
-
-main = do
- m <- newEmptyMVar
- t1 <- mask_ $ forkIO $ do
- takeMVar m `catch` \e -> do stat 1 MaskedInterruptible
- print (e::SomeException)
- throwIO e
- killThread t1
- t2 <- uninterruptibleMask_ $ forkIO $ do
- takeMVar m `catch` \e -> do stat 2 MaskedUninterruptible
- print (e::SomeException)
- throwIO e
- killThread t2
- t3 <- mask_ $ forkIOUnmasked $ do stat 3 Unmasked; putMVar m ()
- takeMVar m
- t4 <- uninterruptibleMask_ $ forkIOUnmasked $ do stat 4 Unmasked; putMVar m ()
- takeMVar m
-
-stat :: Int -> MaskingState -> IO ()
-stat n m = do
- s <- getMaskingState
- if (s /= m)
- then error (printf "%2d: %s\n" n (show s))
- else return ()
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/mask002.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/mask002.stdout
deleted file mode 100644
index baa1975a5a..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/mask002.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-thread killed
-thread blocked indefinitely in an MVar operation
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/numsparks001.hs b/testsuite/tests/ghc-regress/concurrent/should_run/numsparks001.hs
deleted file mode 100644
index f28bf87d55..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/numsparks001.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-import GHC.Conc
-
-main = do
- let x = length [1..100]
- numSparks >>= print
- x `par` numSparks >>= print
- x `par` numSparks >>= print
- x `par` numSparks >>= print
- x `par` numSparks >>= print
-
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/numsparks001.stdout b/testsuite/tests/ghc-regress/concurrent/should_run/numsparks001.stdout
deleted file mode 100644
index 9dfcf39f5a..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/numsparks001.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-0
-1
-2
-3
-4
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/throwto001.hs b/testsuite/tests/ghc-regress/concurrent/should_run/throwto001.hs
deleted file mode 100644
index 999d3335d8..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/throwto001.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-import Control.Concurrent
-import Control.Exception
-import Data.Array
-import System.Random
-import System.Environment
-import Control.Monad
-import GHC.Conc
-
--- A fiendish throwTo test. A bunch of threads take random MVars from
--- a shared array; if the MVar has Nothing in it, replace it with Just
--- of the current thread's ThreadId. If the MVar has another ThreadId
--- in it, then killThread that thread, and replace it with the current
--- thread's ThreadId. We keep going until only one thread is left
--- standing.
---
--- On multiple CPUs this should give throwTo a good workout.
---
-main = do
- [m, t] <- fmap (fmap read) getArgs
- ms <- replicateM m $ newMVar Nothing
- let arr = listArray (1,m) ms
- dead <- newTVarIO 0
- ts <- replicateM t $ forkIO (thread m arr `onException`
- (atomically $ do d <- readTVar dead
- writeTVar dead $! d+1))
- atomically $ do
- d <- readTVar dead
- when (d < t-1) $ retry
-
-thread m arr = do
- x <- randomIO
- id <- myThreadId
- modifyMVar_ (arr ! ((x `mod` m) + 1)) $ \b ->
- case b of
- Nothing -> return (Just id)
- Just other -> do when (other /= id) $ killThread other
- return (Just id)
- thread m arr
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/throwto002.hs b/testsuite/tests/ghc-regress/concurrent/should_run/throwto002.hs
deleted file mode 100644
index c9857f1f1e..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/throwto002.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE DoRec, ScopedTypeVariables #-}
-import Control.Concurrent
-import Control.Exception
-import Data.Array
-import System.Random
-import System.Environment
-import Control.Monad
-import GHC.Conc
-import Data.IORef
-import Prelude hiding (catch)
-
-main = do
- r <- newIORef 0
- rec
- t1 <- block $ forkIO (thread r t2)
- t2 <- block $ forkIO (thread r t1)
- threadDelay 1000000
- readIORef r >>= print
-
-thread r t = run
- where
- run = (unblock $ forever $ do killThread t
- i <- atomicModifyIORef r (\i -> (i + 1, i))
- evaluate i)
- `catch` \(e::SomeException) -> run
diff --git a/testsuite/tests/ghc-regress/concurrent/should_run/throwto003.hs b/testsuite/tests/ghc-regress/concurrent/should_run/throwto003.hs
deleted file mode 100644
index 6369c62352..0000000000
--- a/testsuite/tests/ghc-regress/concurrent/should_run/throwto003.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE DoRec, ScopedTypeVariables #-}
-import Control.Concurrent
-import Control.Exception
-import Control.Monad
-import Prelude hiding (catch)
-
-main = do
- m <- newMVar 1
- t1 <- forkIO $ thread m
- t2 <- forkIO $ forever $ killThread t1
- threadDelay 1000000
- takeMVar m
-
-thread m = run
- where
- run = (unblock $ forever $ modifyMVar_ m $ \v -> if v `mod` 2 == 1 then return (v*2) else return (v-1))
- `catch` \(e::SomeException) -> run
diff --git a/testsuite/tests/ghc-regress/cpranal/Makefile b/testsuite/tests/ghc-regress/cpranal/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/cpranal/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/cpranal/should_compile/Cpr001.hs b/testsuite/tests/ghc-regress/cpranal/should_compile/Cpr001.hs
deleted file mode 100644
index 0871205bb7..0000000000
--- a/testsuite/tests/ghc-regress/cpranal/should_compile/Cpr001.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-module Cpr001
- (intpInstr) where
-
-import Cpr001_imp
-
--- -------------------------------------------------------------------
-
-intpInstr :: Instr -> MST ()
-
-intpInstr (SysCall "exit")
- = setMTerminated
-
-intpInstr (SysCall call)
- = setMSvc call
-
--- -------------------------------------------------------------------
diff --git a/testsuite/tests/ghc-regress/cpranal/should_compile/Cpr001_imp.hs b/testsuite/tests/ghc-regress/cpranal/should_compile/Cpr001_imp.hs
deleted file mode 100644
index 5b2586127b..0000000000
--- a/testsuite/tests/ghc-regress/cpranal/should_compile/Cpr001_imp.hs
+++ /dev/null
@@ -1,55 +0,0 @@
--- $Id: Cpr001_imp.hs,v 1.1 2001/08/22 12:21:15 simonmar Exp $
-
-module Cpr001_imp where
-
-data MS = MS { instr :: String
- , pc :: Int
- , mem :: String
- , stack :: String
- , frames :: [String]
- , status :: Maybe String
- }
-
-
-newtype StateTrans s a = ST ( s -> (s, Maybe a))
-
--- state monad with error handling
--- in case of an error, the state remains
--- as it is and Nothing is returned as value
--- else execution continues
-
-instance Monad (StateTrans s) where
- (ST p) >>= k
- = ST (\s0 -> let
- (s1, r0) = p s0
- in
- case r0 of
- Just v -> let
- (ST q) = k v
- in
- q s1
- Nothing -> (s1, Nothing)
- )
- return v
- = ST (\s -> (s, Just v))
-
-
--- machine state transitions
-
-type MachineStateTrans = StateTrans MS
-
-type MST = MachineStateTrans
-
-{-# NOINLINE setMTerminated #-}
-setMTerminated
- = ST (\ms -> (ms { status = Just "Terminated" }, Just ()))
-
-setMSvc call
- = ST (\ms -> (ms { status = Just "Service" }, Just ()))
-
--- -------------------------------------------------------------------
-
-data Instr
- = LoadI Int -- load int const
- | SysCall String -- system call (svc)
-
diff --git a/testsuite/tests/ghc-regress/cpranal/should_compile/Makefile b/testsuite/tests/ghc-regress/cpranal/should_compile/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/cpranal/should_compile/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/cpranal/should_compile/all.T b/testsuite/tests/ghc-regress/cpranal/should_compile/all.T
deleted file mode 100644
index 99ffed997f..0000000000
--- a/testsuite/tests/ghc-regress/cpranal/should_compile/all.T
+++ /dev/null
@@ -1,10 +0,0 @@
-# Just do the opt way...
-def f( opts ):
- opts.only_ways = ['optasm']
-
-setTestOpts(f)
-
-test('Cpr001',
- extra_clean(['Cpr001_imp.hi', 'Cpr001_imp.o', 'Cpr001_imp.comp.stderr']),
- multimod_compile,
- ['Cpr001', '-v0'])
diff --git a/testsuite/tests/ghc-regress/cps/all.T b/testsuite/tests/ghc-regress/cps/all.T
deleted file mode 100644
index 0bfc49254c..0000000000
--- a/testsuite/tests/ghc-regress/cps/all.T
+++ /dev/null
@@ -1,35 +0,0 @@
-# Leave these off until the CPS pass is finished and integrated.
-#
-# These tests are not in their final format yet, but they provide
-# a starting point.
-
-test('cmm001', skip, compile, ['-O -fasm -ddump-cps-cmm'])
-test('cmm002', skip, compile, ['-fasm -ddump-cps-cmm'])
-
-test('cps001', skip, compile, ['-ddump-cps-cmm'])
-test('cps002', skip, compile, ['-ddump-cps-cmm'])
-test('cps003', skip, compile, ['-ddump-cps-cmm'])
-test('cps004', skip, compile, ['-ddump-cps-cmm'])
-test('cps005', skip, compile, ['-ddump-cps-cmm'])
-test('cps006', skip, compile, ['-ddump-cps-cmm'])
-test('cps007', skip, compile, ['-ddump-cps-cmm'])
-test('cps008', skip, compile, ['-ddump-cps-cmm'])
-test('cps009', skip, compile, ['-ddump-cps-cmm'])
-test('cps010', skip, compile, ['-ddump-cps-cmm'])
-test('cps011', skip, compile, ['-ddump-cps-cmm'])
-test('cps012', skip, compile, ['-ddump-cps-cmm'])
-test('cps013', skip, compile, ['-ddump-cps-cmm'])
-test('cps014', skip, compile, ['-ddump-cps-cmm'])
-test('cps015', skip, compile, ['-ddump-cps-cmm'])
-test('cps016', skip, compile, ['-ddump-cps-cmm'])
-test('cps017', skip, compile, ['-ddump-cps-cmm'])
-test('cps018', skip, compile, ['-ddump-cps-cmm'])
-test('cps019', skip, compile, ['-ddump-cps-cmm'])
-test('cps020', skip, compile, ['-ddump-cps-cmm'])
-test('cps021', skip, compile, ['-ddump-cps-cmm'])
-test('cps022', skip, compile, ['-ddump-cps-cmm'])
-test('cps023', skip, compile, ['-ddump-cps-cmm'])
-test('cps024', skip, compile, ['-ddump-cps-cmm'])
-test('cps025', skip, compile, ['-ddump-cps-cmm'])
-test('cps026', skip, compile, ['-ddump-cps-cmm'])
-
diff --git a/testsuite/tests/ghc-regress/cps/cmm001.cmm b/testsuite/tests/ghc-regress/cps/cmm001.cmm
deleted file mode 100644
index 490a3c938d..0000000000
--- a/testsuite/tests/ghc-regress/cps/cmm001.cmm
+++ /dev/null
@@ -1,5 +0,0 @@
-// This puts GHC into an infinite loop(!) when -O is on
-
-foo {
- L: goto L;
-}
diff --git a/testsuite/tests/ghc-regress/cps/cmm002.cmm b/testsuite/tests/ghc-regress/cps/cmm002.cmm
deleted file mode 100644
index bf3e0d4c6e..0000000000
--- a/testsuite/tests/ghc-regress/cps/cmm002.cmm
+++ /dev/null
@@ -1,8 +0,0 @@
-// Reduced cps012.cmm to the key part that makes it crash
-// in RegisterAlloc.joinToTargets
-
-stg_ap_0_fast {
- bits32 y, x;
- c7: y = bits32[x];
- goto c7;
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps001.cmm b/testsuite/tests/ghc-regress/cps/cps001.cmm
deleted file mode 100644
index 72ab24b631..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps001.cmm
+++ /dev/null
@@ -1,9 +0,0 @@
-// Basic function with a call
-
-foo1 {
- bits32 x;
- B:
- foreign "C--" bar() "safe";
- x = 3;
- goto B;
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps002.cmm b/testsuite/tests/ghc-regress/cps/cps002.cmm
deleted file mode 100644
index 8919820c32..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps002.cmm
+++ /dev/null
@@ -1,7 +0,0 @@
-// Basic function with a call
-
-foo1 {
- B:
- foreign "C--" bar() "safe";
- goto B;
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps003.cmm b/testsuite/tests/ghc-regress/cps/cps003.cmm
deleted file mode 100644
index dba506f9d3..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps003.cmm
+++ /dev/null
@@ -1,15 +0,0 @@
-// Basic function with a heap check
-// The GC block should only be one instruction
-// (or rather it should be after assignment optimizations)
-
-foo1 {
- bits32 r;
- B:
- (r) = foreign "C--" bar() "safe";
- L:
- if (Hp > HpLim) {
- (r) = foreign "C--" stg_gc_ret_p(r) "safe";
- goto L;
- }
- return (r);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps004.cmm b/testsuite/tests/ghc-regress/cps/cps004.cmm
deleted file mode 100644
index e6079a0464..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps004.cmm
+++ /dev/null
@@ -1,17 +0,0 @@
-// Test basic function parameters and return values
-
-foo2 (bits16 a, bits16 b, "ptr" bits16 c) {
- bits32 x, y;
- x = R1;
- (y) = foreign "C--" bar(x) "safe";
- goto L;
- L:
- foreign "C--" baz(x) "safe";
- //jump 12;
- goto M;
- M:
- return (12);
- //goto L;
- //goto L;
-}
-
diff --git a/testsuite/tests/ghc-regress/cps/cps005.cmm b/testsuite/tests/ghc-regress/cps/cps005.cmm
deleted file mode 100644
index d40dd93404..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps005.cmm
+++ /dev/null
@@ -1,7 +0,0 @@
-// Basic test of return
-
-foo3 {
- foreign "C--" glap() "safe";
- return (12);
-}
-
diff --git a/testsuite/tests/ghc-regress/cps/cps006.cmm b/testsuite/tests/ghc-regress/cps/cps006.cmm
deleted file mode 100644
index c04b4279ad..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps006.cmm
+++ /dev/null
@@ -1,7 +0,0 @@
-// Basic test of return with extra block
-
-foo4{
-B:
- foreign "C--" palg() "safe";
- return (14);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps007.cmm b/testsuite/tests/ghc-regress/cps/cps007.cmm
deleted file mode 100644
index 984bb628be..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps007.cmm
+++ /dev/null
@@ -1,4 +0,0 @@
-// Test that empty functions stay empty (and stay alive)
-
-foo5 {
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps008.cmm b/testsuite/tests/ghc-regress/cps/cps008.cmm
deleted file mode 100644
index cdd8ac8a66..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps008.cmm
+++ /dev/null
@@ -1,9 +0,0 @@
-// Test basic general case for heap check
-
-foo6_gc_slow {
- if (Hp + 5 > HpLim) {
- foreign "C--" do_gc_gen() "safe";
- jump foo6_gc_slow(1, 2, 3);
- }
- return (7);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps009.cmm b/testsuite/tests/ghc-regress/cps/cps009.cmm
deleted file mode 100644
index 581356c0bc..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps009.cmm
+++ /dev/null
@@ -1,7 +0,0 @@
-// Test basic stack check
-
-foo6_gc_slow("ptr" bits32 f) goto GC {
- return (7);
-GC:
- jump stg_gc_fun_v(f);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps010.cmm b/testsuite/tests/ghc-regress/cps/cps010.cmm
deleted file mode 100644
index 0b0ec9ebc4..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps010.cmm
+++ /dev/null
@@ -1,9 +0,0 @@
-// Test general stack check
-// Note, the GC block shouldn't trigger the stack limit
-
-foo6_gc_slow("ptr" bits32 f, bits32 x) goto GC {
- return (7);
-GC:
- foreign "C--" stg_gc_gen() "safe";
- jump foo6_gc_slow(f, x);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps011.cmm b/testsuite/tests/ghc-regress/cps/cps011.cmm
deleted file mode 100644
index 9b344d1c76..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps011.cmm
+++ /dev/null
@@ -1,7 +0,0 @@
-// Yet another basic function
-
-foo7 {
- bits32 x;
- (x) = foreign "C--" get_time() "safe";
- return (x);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps012.cmm b/testsuite/tests/ghc-regress/cps/cps012.cmm
deleted file mode 100644
index 6d828dca27..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps012.cmm
+++ /dev/null
@@ -1,23 +0,0 @@
-// A real world example from the RTS
-// Should be checked later to see if it is right
-
-stg_ap_0_fast ("ptr" bits32 fun, "ptr" bits32 arg) {
- bits32 _c8;
- c6: goto c7;
- c7: _c8 = bits32[x]; // TODO: allow I32 or print bits32
- switch [0 .. 71] (bits16[_c8 - 4]) {
- case 0,1,2,3,4,5,6,7,8 : { goto c9; }
- case 9,10,11,12,13,14,15 : { goto ca; }
- case 16,17,18,19,20,21,22,23 : { goto c9; }
- case 24 : {goto ca;}
- case 25 : {goto c9;}
- case 26 : {goto ca;}
- case 27 : {goto c9;}
- case 28,29,30,31,32 : {goto cb;}
- case 33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71 : {goto c9;}
- }
- c9: jump _c8 ();
- cb: R1 = bits32[fun + 4 + 0];
- goto c7;
- ca: jump (bits32[arg + 0 * 4]) ();
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps013.cmm b/testsuite/tests/ghc-regress/cps/cps013.cmm
deleted file mode 100644
index e92daca223..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps013.cmm
+++ /dev/null
@@ -1,21 +0,0 @@
-// Test the calling conventions
-
-// Test the default calling convention
-// which is "unsafe" but will change soon to "safe"
-foo1() {
- foreign "C--" bar(x, y);
- return (1);
-}
-
-// Test the "unsafe" calling convention
-foo2() {
- foreign "C--" bar(x, y) "unsafe";
- return (1);
-}
-
-// Test the "safe" calling convention
-foo3() {
- bits32 x, y, z;
- foreign "C--" bar(x, y, z) "safe";
- return (1);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps014.cmm b/testsuite/tests/ghc-regress/cps/cps014.cmm
deleted file mode 100644
index 3b8b651c43..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps014.cmm
+++ /dev/null
@@ -1,14 +0,0 @@
-// Test explicit continuations.
-
-// Note, we might want to check about suffix on foo2 (i.e. "_entry").
-// I'm not sure that that is right.
-
-foo1 (bits32 update) jump foo2(update) {
- bits32 x;
- return (x);
-}
-
-INFO_TABLE_RET (foo2, 0, bits32 update) (bits32 x) {
- bits32[update] = x;
- return (x);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps015.cmm b/testsuite/tests/ghc-regress/cps/cps015.cmm
deleted file mode 100644
index 2068dd80c3..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps015.cmm
+++ /dev/null
@@ -1,17 +0,0 @@
-// Test whether a stack check is performed even when
-// the existing stack due to on-stack arguments is big enough.
-
-// With space for a return address
-foo1 (bits32 x, bits32 y) goto GC {
- foreign "C--" bar(x) "safe";
- return (1);
-GC:
- return (1);
-}
-
-// No space needed for a return address
-foo2 (bits32 x, bits32 y) goto GC {
- jump bar(x, y);
-GC:
- return (1);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps016.cmm b/testsuite/tests/ghc-regress/cps/cps016.cmm
deleted file mode 100644
index 44d6057b65..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps016.cmm
+++ /dev/null
@@ -1,14 +0,0 @@
-// Test whether extra proc-points are generated
-// by a label after a call such as with a heap check.
-
-foo1 () {
- bits32 p, q;
- bits32 x, y, z;
- (p, q) = foreign "C--" bar(1, 2) "safe";
-L:
- if (Hp < HpLim) {
- (p, q) = foreign "C--" do_gc() "safe";
- goto L;
- }
- return (p+q+x+y+z);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps017.cmm b/testsuite/tests/ghc-regress/cps/cps017.cmm
deleted file mode 100644
index 7f12348260..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps017.cmm
+++ /dev/null
@@ -1,16 +0,0 @@
-// Test whether extra proc-points are generated
-// by a label after a call such as with a heap check,
-// but where the return signature is different.
-// The extra proc-point should be generated in this case.
-
-foo1 () {
- bits32 p, q;
- bits32 x, y, z;
- (p, q) = foreign "C--" bar(1, 2) "safe";
-L:
- if (Hp < HpLim) {
- (p) = foreign "C--" do_gc() "safe";
- goto L;
- }
- return (p+q+x+y+z);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps018.cmm b/testsuite/tests/ghc-regress/cps/cps018.cmm
deleted file mode 100644
index 545a895887..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps018.cmm
+++ /dev/null
@@ -1,9 +0,0 @@
-// Verify continuations get created
-
-foo() {
- bits32 x, y, z;
- x = 3;
- foreign "C--" bar() "safe";
- y = 4;
- return (z);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps019.cmm b/testsuite/tests/ghc-regress/cps/cps019.cmm
deleted file mode 100644
index 12c39a98c4..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps019.cmm
+++ /dev/null
@@ -1,12 +0,0 @@
-// Verify block jumping to continuations works right
-
-foo() {
- bits32 x, y, z;
- x = x;
- (x) = foreign "C--" bar() "safe";
-L:
- y = y;
- foreign "C--" baz() "safe";
- if (y) { z = z; goto L; }
- else { z = z; goto L; }
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps020.cmm b/testsuite/tests/ghc-regress/cps/cps020.cmm
deleted file mode 100644
index 2dc7131139..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps020.cmm
+++ /dev/null
@@ -1,15 +0,0 @@
-// Test for proc points
-
-foo () {
- bits32 x, y, z;
- if (x<3) {
- y = 1;
- foreign "C--" bar() "safe";
- z = 1;
- } else {
- y = 2;
- foreign "C--" baz() "safe";
- z = 2;
- }
- return (x, y, z);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps021.cmm b/testsuite/tests/ghc-regress/cps/cps021.cmm
deleted file mode 100644
index fa7e809ee0..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps021.cmm
+++ /dev/null
@@ -1,11 +0,0 @@
-// Verify jumping to the begining of the current continuation
-// is done with a branch and not a jump
-
-foo() {
- bits32 x, y, z;
- x = x;
- (x) = foreign "C--" bar() "safe";
-L:
- z = z;
- goto L;
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps022.cmm b/testsuite/tests/ghc-regress/cps/cps022.cmm
deleted file mode 100644
index 64d6c39f19..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps022.cmm
+++ /dev/null
@@ -1,18 +0,0 @@
-// Test conditional jumps to a proc-point/continuation
-
-// So far this can't happen, so this test is unneeded
-// and would currently fail (it won't even parse).
-// But if in future a CmmCondBranch could target
-// a proc-point/continuation, then the CPS would need
-// to be updated to account for this.
-
-foo() {
- bits32 x, y, z;
- x = x;
- (x) = foreign "C--" bar() "safe";
-L:
- y = y;
- foreign "C--" baz() "safe";
- if (y<3) goto L;
- goto L;
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps023.cmm b/testsuite/tests/ghc-regress/cps/cps023.cmm
deleted file mode 100644
index 1a80b9085e..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps023.cmm
+++ /dev/null
@@ -1,18 +0,0 @@
-// Test foreign calls
-
-// This test won't work until the parser is changes.
-// Currently the parser calls emitForeignCall', even
-// for safe foreign calls and that function
-// creates only unsafe foreign calls.
-// This will have to be changed to
-// code (stmtC (CmmCall (CmmForeignCall expr convention) results args safety))
-// so the CPS can get a hold of it.
-
-foo() {
- bits32 x, y, z;
- x = x;
- (x) = foreign "C" bar() "safe";
- y = y;
- (y) = foreign "C" baz() "safe";
- return (z);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps024.cmm b/testsuite/tests/ghc-regress/cps/cps024.cmm
deleted file mode 100644
index f24cd5e26e..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps024.cmm
+++ /dev/null
@@ -1,12 +0,0 @@
-// Test update frames
-
-foo1(bits32 x, bits32 y) jump update (x, y) {
- bits32 z;
- return (z);
-}
-
-foo2(bits32 x, bits32 y) jump update (x, y) {
- bits32 z;
- foreign "C--" bar() "safe";
- return (z);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps025.cmm b/testsuite/tests/ghc-regress/cps/cps025.cmm
deleted file mode 100644
index bc87924c89..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps025.cmm
+++ /dev/null
@@ -1,3 +0,0 @@
-// Another test for empty functions
-
-INFO_TABLE_RET(foo, 0, bits32 x, bits32 y);
diff --git a/testsuite/tests/ghc-regress/cps/cps026.cmm b/testsuite/tests/ghc-regress/cps/cps026.cmm
deleted file mode 100644
index 1bf4160f43..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps026.cmm
+++ /dev/null
@@ -1,18 +0,0 @@
-// Test stack check targets
-
-// One with a target
-foo1(bits32 x, bits32 y) goto L {
- bits32 z;
- foreign "C--" bar() "safe";
- return (z+12);
-L:
- z = 3;
- return (z+13);
-}
-
-// And one without a target
-foo2(bits32 x, bits32 y) {
- bits32 z;
- foreign "C--" bar() "safe";
- return (z+14);
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps027.cmm b/testsuite/tests/ghc-regress/cps/cps027.cmm
deleted file mode 100644
index 953f8fcc53..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps027.cmm
+++ /dev/null
@@ -1,29 +0,0 @@
-// Test Michael Adams's optimization for code putatively
-// generated from nested case expression
-// case (case g x of { True -> f x1 ; False -> f x2 }) of
-// [] -> return (x, 0)
-// _:_ -> return (x, 1)
-
-test (bits32 x, bits32 x1, bits32 x2) {
- bits32 t1, t2;
- (t1) = foreign "C--" g(x) "safe";
- if (t1 != 0) {
- (t2) = foreign "C--" f(x1) "safe";
- } else {
- (t2) = foreign "C--" f(x2) "safe";
- }
- R:
- if (t2 == 0) {
- Hp = Hp + 8;
- if (Hp > HpLim) { (t2) = foreign "C--" gc1(l) "safe"; goto R; }
- bits32[Hp] = x;
- bits32[Hp+4] = 0;
- return (Hp-8);
- } else {
- Hp = Hp + 8;
- if (Hp > HpLim) { (t2) = foreign "C--" gc1(l) "safe"; goto R; }
- bits32[Hp] = x;
- bits32[Hp+4] = 1;
- return (Hp-8);
- }
-}
diff --git a/testsuite/tests/ghc-regress/cps/cps028.cmm b/testsuite/tests/ghc-regress/cps/cps028.cmm
deleted file mode 100644
index 57c897ef89..0000000000
--- a/testsuite/tests/ghc-regress/cps/cps028.cmm
+++ /dev/null
@@ -1,17 +0,0 @@
-// Test classic dead-code elimination
-
-sum (bits32 a, bits32 n) {
- bits32 i, p, lim, sum;
- sum = 0;
- i = 0;
- p = a;
- lim = a + 4 * n;
- L:
- if (p < lim) {
- sum = sum + bits32[p];
- i = i + 1;
- p = p + 4;
- goto L;
- }
- return (sum);
-}
diff --git a/testsuite/tests/ghc-regress/deSugar/Makefile b/testsuite/tests/ghc-regress/deSugar/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/GadtOverlap.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/GadtOverlap.hs
deleted file mode 100644
index 89187414a3..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/GadtOverlap.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module Gadt where
-
-data T a where
- T1 :: T Int
- T2 :: T a
- T3 :: T Bool
-
-f :: T Int -> Bool
-f T1 = True
-f T2 = False
-
-g :: T Bool -> Bool
-g T2 = True
-g T3 = False
-
-h :: T a -> Bool
-h T1 = True
-h T2 = False
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/GadtOverlap.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/GadtOverlap.stderr
deleted file mode 100644
index 423d69469f..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/GadtOverlap.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-GadtOverlap.hs:19:1:
- Warning: Pattern match(es) are non-exhaustive
- In an equation for `h': Patterns not matched: T3
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/Makefile b/testsuite/tests/ghc-regress/deSugar/should_compile/Makefile
deleted file mode 100644
index a03c54f2d1..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/Makefile
+++ /dev/null
@@ -1,8 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-T5252:
- $(RM) -f T5252*.hi T5252*.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -c T5252a.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c T5252.hs
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T2395.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/T2395.hs
deleted file mode 100644
index 8600690279..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T2395.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE ViewPatterns #-}
-{-# OPTIONS_GHC -Wall #-}
-
--- Pattern-match overlap warnings with view patterns
-module T2395 where
-
-foo :: Int -> Int
-foo (even -> True) = 4
-foo _ = 5
-
-bar :: (a, (Int,Int)) -> Int
-bar (snd -> (x,y)) = x+y -- Cannot fail, hence overlap warning should
-bar _ = 6 -- for second pattern
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T2395.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/T2395.stderr
deleted file mode 100644
index 4bfd9d6bb8..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T2395.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-T2395.hs:12:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `bar': bar _ = ...
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T2409.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/T2409.hs
deleted file mode 100644
index 163786bb58..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T2409.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Trac #2409
-
-module ShouldCompile where
-
- f :: Int -> Int
- f _ | () `seq` False = undefined
- | otherwise = error "XXX"
-
- g :: Int -> Int
- g _ | () `seq` False = undefined
- | otherwise = error "XXX"
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T3263-1.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/T3263-1.hs
deleted file mode 100644
index 74249cd663..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T3263-1.hs
+++ /dev/null
@@ -1,36 +0,0 @@
--- Trac #3263. New kind of warning on ignored monadic bindings
-
-module T3263 where
-
-nullM :: IO ()
-nullM = return ()
-
-nonNullM :: IO Int
-nonNullM = return 10
-
--- No warning
-t1 = do
- nonNullM
-
--- No warning
-t2 = nonNullM
-
--- No warning
-t3 = do
- nullM
- nonNullM
-
--- Warning
-t4 = do
- nonNullM
- nullM
-
--- No warning
-t5 = do
- _ <- nonNullM
- nullM
-
--- Warning
-t6 = mdo
- nonNullM
- nullM \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T3263-1.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/T3263-1.stderr
deleted file mode 100644
index ac21515daf..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T3263-1.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-on the commandline:
- Warning: -XRecursiveDo is deprecated: use -XDoRec or pragma {-# LANGUAGE DoRec #-} instead
-
-T3263-1.hs:25:3:
- Warning: A do-notation statement discarded a result of type Int.
- Suppress this warning by saying "_ <- nonNullM",
- or by using the flag -fno-warn-unused-do-bind
-
-T3263-1.hs:35:3:
- Warning: A do-notation statement discarded a result of type Int.
- Suppress this warning by saying "_ <- nonNullM",
- or by using the flag -fno-warn-unused-do-bind
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T3263-2.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/T3263-2.hs
deleted file mode 100644
index 71288062c5..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T3263-2.hs
+++ /dev/null
@@ -1,38 +0,0 @@
--- Trac #3263. New kind of warning on monadic bindings that discard a monadic result
-
-module T3263 where
-
-import Control.Monad.Fix
-
--- No warning
-t1 :: Monad m => m Int
-t1 = do
- return 10
-
--- No warning
-t2 :: Monad m => m (m Int)
-t2 = return (return 10)
-
--- No warning
-t3 :: Monad m => m (m Int)
-t3 = do
- return 10
- return (return 10)
-
--- Warning
-t4 :: forall m. Monad m => m Int
-t4 = do
- return (return 10 :: m Int)
- return 10
-
--- No warning
-t5 :: forall m. Monad m => m Int
-t5 = do
- _ <- return (return 10 :: m Int)
- return 10
-
--- Warning
-t6 :: forall m. MonadFix m => m Int
-t6 = mdo
- return (return 10 :: m Int)
- return 10 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T3263-2.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/T3263-2.stderr
deleted file mode 100644
index 3f92403e84..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T3263-2.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-on the commandline:
- Warning: -XRecursiveDo is deprecated: use -XDoRec or pragma {-# LANGUAGE DoRec #-} instead
-
-T3263-2.hs:25:3:
- Warning: A do-notation statement discarded a result of type m Int.
- Suppress this warning by saying "_ <- return (return 10 :: m Int)",
- or by using the flag -fno-warn-wrong-do-bind
-
-T3263-2.hs:37:3:
- Warning: A do-notation statement discarded a result of type m Int.
- Suppress this warning by saying "_ <- return (return 10 :: m Int)",
- or by using the flag -fno-warn-wrong-do-bind
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T4371.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/T4371.hs
deleted file mode 100644
index c6542a8540..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T4371.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE ViewPatterns,DeriveDataTypeable #-}
-module T4371 where
-
-import Data.Typeable
-
-data E1 = E1 deriving Typeable
-data E2 = E2 deriving Typeable
-
-f :: Typeable a => a-> ()
-f x = case x of
- (cast -> Just E1) -> ()
- (cast -> Just E2) -> ()
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T4439.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/T4439.hs
deleted file mode 100644
index 13b02e65d6..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T4439.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE ViewPatterns, ExistentialQuantification #-}
-{-# OPTIONS_GHC -fwarn-incomplete-patterns #-}
-
--- None of these should give incomplete-pattern warnings
-
-module T4439 where
-
-data Moo = Moo (Char -> Int)
-spqr (Moo _) = undefined
-foo (id -> Moo _) = undefined
-
-
-data Exists = forall a. Exists (a -> Int)
-bar (Exists _) = undefined
-baz (id -> Exists _) = undefined
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T4488.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/T4488.hs
deleted file mode 100644
index c5bae4e536..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T4488.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-{-# OPTIONS -fwarn-identities #-}
-
--- Test warnings about identities
-
-module T4488 where
-
--- ok1 :: Int -> Float
-ok1 x = fromIntegral x
-
-warn1 :: Int -> Int
-warn1 x = fromIntegral x
-
-ok4 :: Int -> Integer
-ok4 x = toInteger x
-
-warn4 :: Integer -> Integer
-warn4 x = toInteger x
-
-ok5 :: Float -> Rational
-ok5 x = toRational x
-
-warn5 :: Rational -> Rational
-warn5 x = toRational x
-
--- ok6 :: Float -> Rational
-ok6 x = realToFrac x
-
-warn6 :: Float -> Float
-warn6 x = realToFrac x
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T4488.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/T4488.stderr
deleted file mode 100644
index f8c20a5de0..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T4488.stderr
+++ /dev/null
@@ -1,20 +0,0 @@
-
-T4488.hs:11:11:
- Warning: Call of fromIntegral :: Int -> Int
- can probably be omitted
- (Use -fno-warn-identities to suppress this messsage))
-
-T4488.hs:17:11:
- Warning: Call of toInteger :: Integer -> Integer
- can probably be omitted
- (Use -fno-warn-identities to suppress this messsage))
-
-T4488.hs:23:11:
- Warning: Call of toRational :: Rational -> Rational
- can probably be omitted
- (Use -fno-warn-identities to suppress this messsage))
-
-T4488.hs:29:11:
- Warning: Call of realToFrac :: Float -> Float
- can probably be omitted
- (Use -fno-warn-identities to suppress this messsage))
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T4870.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/T4870.hs
deleted file mode 100644
index fefcdb194b..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T4870.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module T4870 where
-
-import T4870a
-
-data D = D
-
-instance C D where
- c x = x
-
-{-# SPECIALIZE f :: D #-}
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T4870a.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/T4870a.hs
deleted file mode 100644
index a4c59a5b66..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T4870a.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module T4870a where
-
-class C a where c :: a -> a
-
-{-# INLINABLE f #-}
-f :: (C a) => a
-f = c f
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T5117.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/T5117.hs
deleted file mode 100644
index 15f9c796f0..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T5117.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE OverloadedStrings #-}
-module BadWarning where
-
-data MyString = MyString String
-
-f1 (MyString "a") = undefined
-f1 (MyString "bb") = undefined
-f1 _ = undefined
-
-f2 (MyString "aa") = undefined
-f2 (MyString "bb") = undefined
-f2 _ = undefined
-
--- Genuine overlap here!
-f3(MyString ('a':_)) = undefined
-f3 (MyString "a") = undefined
-f3 _ = undefined
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T5117.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/T5117.stderr
deleted file mode 100644
index e9ddba143b..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T5117.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-T5117.hs:15:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `f3': f3 (MyString "a") = ...
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T5252.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/T5252.hs
deleted file mode 100644
index e2498c4089..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T5252.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- Trac #5252
--- Killed 7.03 when compiled witout -O,
--- because it could not see that x had a product type
--- but MkS still unpacked it
-
-module T5252 where
-import T5252a
-
-blah :: S -> T
-blah (MkS x _) = x
-
-
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/T5252a.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/T5252a.hs
deleted file mode 100644
index ff1704a566..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/T5252a.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module T5252a( S(..), T ) where
-
-data T = MkT Int Int
-
-data S = MkS {-# UNPACK #-}!T Int
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/all.T b/testsuite/tests/ghc-regress/deSugar/should_compile/all.T
deleted file mode 100644
index 0db20f9e71..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/all.T
+++ /dev/null
@@ -1,90 +0,0 @@
-# Just do the normal way...
-def f( opts ):
- opts.only_ways = ['normal']
-
-setTestOpts(f)
-
-test('ds-wildcard', normal, compile, [''])
-test('ds001', normal, compile, [''])
-test('ds002', normal, compile, [''])
-test('ds003', normal, compile, [''])
-test('ds004', normal, compile, [''])
-test('ds005', normal, compile, [''])
-test('ds006', normal, compile, [''])
-test('ds007', normal, compile, [''])
-test('ds008', normal, compile, [''])
-test('ds009', normal, compile, [''])
-test('ds010', normal, compile, [''])
-test('ds011', normal, compile, [''])
-test('ds012', normal, compile, [''])
-test('ds013', normal, compile, [''])
-test('ds014', normal, compile, [''])
-test('ds015', normal, compile, [''])
-test('ds016', normal, compile, [''])
-test('ds017', normal, compile, [''])
-test('ds018', normal, compile, [''])
-test('ds019', normal, compile, [''])
-test('ds020', normal, compile, [''])
-test('ds021', normal, compile, [''])
-test('ds022', normal, compile, [''])
-test('ds023', normal, compile, [''])
-test('ds024', normal, compile, [''])
-test('ds025', normal, compile, [''])
-test('ds026', normal, compile, [''])
-test('ds027', normal, compile, [''])
-test('ds028', normal, compile, [''])
-test('ds029', normal, compile, [''])
-test('ds030', normal, compile, [''])
-test('ds031', normal, compile, [''])
-test('ds032', normal, compile, [''])
-test('ds033', normal, compile, [''])
-test('ds034', normal, compile, [''])
-test('ds035', only_compiler_types(['ghc']), compile, [''])
-test('ds036', normal, compile, [''])
-test('ds037', normal, compile, [''])
-test('ds038', normal, compile, [''])
-test('ds039', normal, compile, [''])
-test('ds040', normal, compile, [''])
-test('ds041', normal, compile, [''])
-test('ds042', normal, compile, [''])
-test('ds043', normal, compile, [''])
-test('ds044', normal, compile, [''])
-test('ds045', normal, compile, [''])
-test('ds046', normal, compile, ['-funbox-strict-fields'])
-test('ds047', normal, compile, [''])
-test('ds048', normal, compile, [''])
-test('ds050', normal, compile, [''])
-test('ds051', normal, compile, [''])
-test('ds052', normal, compile, [''])
-test('ds053', normal, compile, [''])
-test('ds054', normal, compile, [''])
-test('ds055', only_compiler_types(['ghc']), compile, [''])
-test('ds056', normal, compile, ['-Wall'])
-test('ds057', normal, compile, [''])
-test('ds058', normal, compile, ['-W'])
-test('ds059', normal, compile, ['-W'])
-test('ds060', expect_broken(322), compile, [''])
-test('ds061', expect_broken(851), compile, [''])
-test('ds062', normal, compile, [''])
-test('ds063', normal, compile, [''])
-
-test('T2409', normal, compile, [''])
-test('T3263-1', normal, compile, ['-fwarn-unused-do-bind -XRecursiveDo'])
-test('T3263-2', normal, compile, ['-fwarn-wrong-do-bind -XScopedTypeVariables -XRecursiveDo'])
-
-test('GadtOverlap', normal, compile, ['-Wall'])
-test('T2395', normal, compile, [''])
-test('T4371', normal, compile, [''])
-test('T4439', normal, compile, [''])
-test('T4488', if_compiler_lt('ghc', '7.1', expect_fail), compile, [''])
-test('T4870',
- [only_ways(['optasm']),
- only_compiler_types(['ghc']),
- extra_clean(['T4870a.hi', 'T4870a.o'])],
- multimod_compile,
- ['T4870', '-v0'])
-test('T5117', normal, compile, [''])
-test('T5252',
- extra_clean(['T5252a.hi', 'T5252a.o']),
- run_command,
- ['$MAKE -s --no-print-directory T5252'])
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds-wildcard.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds-wildcard.hs
deleted file mode 100644
index dae882c32b..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds-wildcard.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldCompile where
-
-x@_ = x
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds-wildcard.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds-wildcard.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds-wildcard.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds001.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds001.hs
deleted file mode 100644
index d3f0b60f56..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds001.hs
+++ /dev/null
@@ -1,25 +0,0 @@
--- !!! ds001 -- simple function and pattern bindings
---
--- this tests ultra-simple function and pattern bindings (no patterns)
-
-module ShouldCompile where
-
--- simple function bindings
-
-f x = x
-
-g x y z = f z
-
-j w x y z = g w x z
-
-h x y = f y
- where
- f a b = a
-
--- simple pattern bindings
-
-a = b
-
-b = f
-
-c = c
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds001.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds001.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds001.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds002.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds002.hs
deleted file mode 100644
index 280674e1fe..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds002.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- !!! ds002 -- overlapping equations and guards
---
--- this tests "overlapping" variables and guards
-
-module ShouldCompile where
-
-f x = x
-f y = y
-f z = z
-
-g x y z | True = f z
- | True = f z
- | True = f z
-g x y z | True = f z
- | True = f z
- | True = f z
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds002.stderr-ghc b/testsuite/tests/ghc-regress/deSugar/should_compile/ds002.stderr-ghc
deleted file mode 100644
index baf7ffde53..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds002.stderr-ghc
+++ /dev/null
@@ -1,10 +0,0 @@
-
-ds002.hs:7:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `f':
- f y = ...
- f z = ...
-
-ds002.hs:11:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `g': g x y z = ...
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds003.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds003.hs
deleted file mode 100644
index dafeac94b7..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds003.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! ds003 -- list, tuple, lazy, as patterns
---
-module ShouldCompile where
-
-f [] y True = []
-f x a@(y,ys) ~z = []
-f (x:x1:x2:x3) ~(y,ys) z = []
-f x y True = []
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds003.stderr-ghc b/testsuite/tests/ghc-regress/deSugar/should_compile/ds003.stderr-ghc
deleted file mode 100644
index 5b1bd3949f..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds003.stderr-ghc
+++ /dev/null
@@ -1,6 +0,0 @@
-
-ds003.hs:5:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `f':
- f (x : x1 : x2 : x3) ~(y, ys) z = ...
- f x y True = ...
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds004.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds004.hs
deleted file mode 100644
index ebbe8e06c2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds004.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! ds004 -- nodups from SLPJ p 79
---
-module ShouldCompile where
-
--- SLPJ, p 79
-nodups [] = []
-nodups [x] = [x]
-nodups (y:x:xs) | y == x = nodups (x:xs)
- | True = y : nodups (x:xs)
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds004.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds004.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds004.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds005.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds005.hs
deleted file mode 100644
index a02e8d9c1d..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds005.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- !!! ds005 -- mappairs from SLPJ Ch 5'
---
--- this simply tests a "typical" example
-
-module ShouldCompile where
-
--- from SLPJ, p 78
-mappairs f [] ys = []
-mappairs f (x:xs) [] = []
-mappairs f (x:xs) (y:ys) = f x y : mappairs f xs ys
-
--- from p 80
-mappairs' f [] ys = []
-mappairs' f x [] = []
-mappairs' f (x:xs) (y:ys) = f x y : mappairs' f xs ys
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds005.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds005.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds005.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds006.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds006.hs
deleted file mode 100644
index d66e7c17e8..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds006.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! ds006 -- v | True = v+1 | False = v (dead code elim)
---
-module ShouldCompile where
-
-v | True = v + 1
- | False = v
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds006.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds006.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds006.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds007.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds007.hs
deleted file mode 100644
index ae12cf7a8c..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds007.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! ds007 -- simple local bindings
-
-module ShouldCompile where
-
-w = a where a = y
- y = []
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds007.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds007.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds007.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds008.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds008.hs
deleted file mode 100644
index 73707ed565..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds008.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! ds008 -- free tyvars on RHSs
---
--- these tests involve way-cool TyApps
-
-module ShouldCompile where
-
-f x = []
-
-g x = (f [],[],[],[])
-
-h x = g (1::Int)
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds008.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds008.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds008.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds009.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds009.hs
deleted file mode 100644
index 6ebcc96adf..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds009.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- !!! ds009 -- simple list comprehensions
-
-module ShouldCompile where
-
-f xs = [ x | x <- xs ]
-
-g xs ys zs = [ (x,y,z) | x <- xs, y <- ys, z <- zs, True ]
-
-h xs ys = [ [x,y] | x <- xs, y <- ys, False ]
-
-i xs = [ x | all@(x,y) <- xs, all == ([],[]) ]
-
-j xs = [ (a,b) | (a,b,c,d) <- xs ]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds009.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds009.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds009.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds010.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds010.hs
deleted file mode 100644
index 268610e124..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds010.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- !!! ds010 -- deeply-nested list comprehensions
-
-module ShouldCompile where
-
-z = [ (a,b,c,d,e,f,g,h,i,j) | a <- "12",
- b <- "12",
- c <- "12",
- d <- "12",
- e <- "12",
- f <- "12",
- g <- "12",
- h <- "12",
- i <- "12",
- j <- "12"
- ]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds010.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds010.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds010.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds011.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds011.hs
deleted file mode 100644
index dab482ff04..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds011.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! ds011 -- uses of "error"
-
-module ShouldCompile where
-
-f = error []
-
-g = error ""
-
-h = error "\""
-
-i = error "foo"
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds011.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds011.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds011.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds012.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds012.hs
deleted file mode 100644
index 4ef9d8cc1d..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds012.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! ds012 -- simple Integer arithmetic
---
-module ShouldCompile where
-
-f x = 1 + 2 - 3 + 4 * 5
-
-g x = x + (f x)
-
-h x = 111111111111111111111111111111111111111111111111111111111111
- + 222222222222222222222222222222222222222222222222222222222222
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds012.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds012.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds012.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds013.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds013.hs
deleted file mode 100644
index 3fb55ab47c..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds013.hs
+++ /dev/null
@@ -1,23 +0,0 @@
--- !!! ds013 -- simple Rational arithmetic
-
-module ShouldCompile where
-
-f = 1.5 + 2.0 - 3.14159265 + 4.2 * 5.111111111111111111111111111
-
-g :: Float
-g = 1.5 + 2.0 - 3.14159265 + 4.2 * 5.111111111111111111111111111
-
-h :: Double
-h = 1.5 + 2.0 - 3.14159265 + 4.2 * 5.111111111111111111111111111
-
-{- later
-g x = x + (f x)
-
-h x = 1.0e1000000000 + 1.0e1000000000
-
-i x = 1.0e-1000000000 + 1.0e-1000000000
-
-j x = 1111111111.222222222222222e333333333333333
- * 4444444444.555555555555555e-66666666666666
--}
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds013.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds013.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds013.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds014.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds014.hs
deleted file mode 100644
index 23b3709854..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds014.hs
+++ /dev/null
@@ -1,76 +0,0 @@
--- !!! ds014 -- character and string literals
--- !!! really should add ALL weird forms...
-
-module ShouldCompile where
-
-a = 'a'
-b = "b"
-c = a:b
-d = b ++ b
-
-b1 = "" -- examples from the Haskell report
-b2 = "\&" -- the same thing
-b3 = "\SO\&H" ++ "\137\&9"
-
-a000 = '\NUL'
-a001 = '\SOH'
-a002 = '\STX'
-a003 = '\ETX'
-a004 = '\EOT'
-a005 = '\ENQ'
-a006 = '\ACK'
-a007 = '\BEL'
-a010 = '\BS'
-a011 = '\HT'
-a012 = '\LF'
-a013 = '\VT'
-a014 = '\FF'
-a015 = '\CR'
-a016 = '\SO'
-a017 = '\SI'
-a020 = '\DLE'
-a021 = '\DC1'
-a022 = '\DC2'
-a023 = '\DC3'
-a024 = '\DC4'
-a025 = '\NAK'
-a026 = '\SYN'
-a027 = '\ETB'
-a030 = '\CAN'
-a031 = '\EM'
-a032 = '\SUB'
-a033 = '\ESC'
-a034 = '\FS'
-a035 = '\GS'
-a036 = '\RS'
-a037 = '\US'
-a040 = '\SP'
-a042 = '"'
-a047 = '\''
-a134 = '\\'
-a177 = '\DEL'
-
-ascii = "\NUL\SOH\STX\ETX\EOT\ENQ\ACK\BEL\
- \\BS\HT\LF\VT\FF\CR\SO\SI\
- \\DLE\DC1\DC2\DC3\DC4\NAK\SYN\ETB\
- \\CAN\EM\SUB\ESC\FS\GS\RS\US\
- \\SP!\"#$%&'\
- \()*+,-./\
- \01234567\
- \89:;<=>?\
- \@ABCDEFG\
- \HIJKLMNO\
- \PQRSTUVW\
- \XYZ[\\]^_\
- \`abcdefg\
- \hijklmno\
- \pqrstuvw\
- \xyz{|}~\DEL"
-
-na200 = '\o200'
-na250 = '\o250'
-na300 = '\o300'
-na350 = '\o350'
-na377 = '\o377'
-
-eightbit = "\o200\o250\o300\o350\o377"
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds014.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds014.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds014.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds015.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds015.hs
deleted file mode 100644
index 24645778ee..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds015.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! ds015 -- lambdas
---
-module ShouldCompile where
-
-f x = ( \ x -> x ) x
-
-g x y = ( \ x y -> y x ) ( \ x -> x ) x
-
-h x y = ( \ (x:xs) -> x ) x
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds015.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds015.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds015.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds016.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds016.hs
deleted file mode 100644
index 41394e7ed9..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds016.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- !!! ds016 -- case expressions
---
-module ShouldCompile where
-
-f x y z =
- case ( x ++ x ++ x ++ x ++ x ) of
- [] -> []
- [a] -> error "2"
- [a,b,c] ->
- case ( (y,z,y,z) ) of
--- (True, _, False, _) | True == False -> z
--- (True, _, False, _) | True == False -> z
- _ -> z
-
- (a:bs) -> error "4"
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds016.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds016.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds016.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds017.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds017.hs
deleted file mode 100644
index e6fd6d02f9..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds017.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! ds017 -- let expressions
---
-module ShouldCompile where
-
-f x y z
- = let
- a = x : []
- b = x : a
- c = y (let d = (z, z) in d)
- result = (c, b)
- in
- result
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds017.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds017.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds017.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds018.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds018.hs
deleted file mode 100644
index 68a9e4ce47..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds018.hs
+++ /dev/null
@@ -1,57 +0,0 @@
--- !!! ds018 -- explicit lists and tuples (with disabled LARGE tuples!)
---
-module ShouldCompile where
-
--- exprs
-
-f x y z = [x,y,z,x,y,z]
-f2 x y = []
-
-g1 x y = ()
-
-{- Although GHC *should* provide arbitrary tuples, it currently doesn't
- and probably won't in the near future, so this test is only a reminder.
-
-g x y z = (x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z,
- x,y,z,x,y,z) -- hey, we love big tuples
--}
-
--- pats
-
-fa [a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z] = x
-
-fb [] = []
-
-{- See above
-ga (a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,
- aa,ab,ac,ad,ae,af,ag,ah,ai,aj,ak,al,am,
- an,ao,ap,aq,ar,as,at,au,av,aw,ax,ay,az) = x
--}
-
-gb () x = x
-gb2 () = ()
-
--- need to think of some better ones...
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds018.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds018.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds018.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds019.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds019.hs
deleted file mode 100644
index 6bcf43f0ce..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds019.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! ds019 -- mixed var and uni-constructor pats
-
-module ShouldCompile where
-
-f (a,b,c) i o = []
-f d (j,k) p = []
-f (e,f,g) l q = []
-f h (m,n) r = []
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds019.stderr-ghc b/testsuite/tests/ghc-regress/deSugar/should_compile/ds019.stderr-ghc
deleted file mode 100644
index 68816686b1..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds019.stderr-ghc
+++ /dev/null
@@ -1,7 +0,0 @@
-
-ds019.hs:5:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `f':
- f d (j, k) p = ...
- f (e, f, g) l q = ...
- f h (m, n) r = ...
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds020.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds020.hs
deleted file mode 100644
index 184c857a8f..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds020.hs
+++ /dev/null
@@ -1,57 +0,0 @@
--- !!! ds020 -- lazy patterns (in detail)
---
-
-{-# LANGUAGE NPlusKPatterns #-}
-
-module ShouldCompile where
-
-a ~([],[],[]) = []
-a ~(~[],~[],~[]) = []
-
-b ~(x:xs:ys) = []
-b ~(~x: ~xs: ~ys) = []
-
-c ~x ~ _ ~11111 ~3.14159265 = x
-
-d 11 = 4
-d 12 = 3
-d ~(n+4) = 2
-d ~(n+43) = 1
-d ~(n+999) = 0
-
-f ~(x@[]) = []
-f x@(~[]) = []
-
-g ~(~(~(~([])))) = []
-
--- pattern bindings (implicitly lazy)
-
-([],[],[]) = ([],[],[])
-(~[],~[],~[]) = ([],[],[])
-
-(x1: xs1: ys1) = []
-(~x: ~xs: ~ys) = []
-
-(x2 : xs2: ys2) | eq2 = []
- | eq3 = [x2]
- | eq4 = [x2]
- | True = []
- where
- eq2 = (2::Int) == (4::Int)
- eq3 = (3::Int) == (3::Int)
- eq4 = (4::Int) == (2::Int)
-
-(x3,y3) | x3 > 3 = (4, 5)
- | x3 <= 3 = (2, 3)
--- above: x & y should both be \bottom.
-
-(x4,(y4,(z4,a4))) | eq2 = ('a',('a',('a','a')))
- | eq3 = ('b',('b',('b','b')))
- | eq4 = ('c',('c',('c','c')))
- | True = ('d',('d',('d','d')))
- where
- eq2 = (2::Int) == (4::Int)
- eq3 = (3::Int) == (3::Int)
- eq4 = (4::Int) == (2::Int)
-
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds020.stderr-ghc b/testsuite/tests/ghc-regress/deSugar/should_compile/ds020.stderr-ghc
deleted file mode 100644
index 3f9205a729..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds020.stderr-ghc
+++ /dev/null
@@ -1,18 +0,0 @@
-
-ds020.hs:8:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `a': a ~(~[], ~[], ~[]) = ...
-
-ds020.hs:11:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `b': b ~(~x : ~xs : ~ys) = ...
-
-ds020.hs:16:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `d':
- d ~(n+43) = ...
- d ~(n+999) = ...
-
-ds020.hs:22:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `f': f x@(~[]) = ...
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds021.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds021.hs
deleted file mode 100644
index 4faaba53fd..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds021.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! ds021 -- hairier uses of guards
-
-module ShouldCompile where
-
-f x y z | x == y = []
- | x /= z = []
- | True = []
- | False = []
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds021.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds021.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds021.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds022.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds022.hs
deleted file mode 100644
index 2ac429f95b..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds022.hs
+++ /dev/null
@@ -1,32 +0,0 @@
--- !!! ds022 -- literal patterns (wimp version)
---
-module ShouldCompile where
-
-f 1 1.1 = []
-f 2 2.2 = []
-f 3 3.3 = []
-f 4 4.4 = []
-
-g 11111111111111111111111 1.11111111111111111 = []
-g 22222222222222222222222 2.22222222222222222 = []
-g 33333333333333333333333 3.33333333333333333 = []
-g 44444444444444444444444 4.44444444444444444 = []
-
-h 'a' "" = []
-h '\'' "foo" = []
-h '"' ('b':'a':'r':[]) = []
-h '\o250' blob = []
-
-i 1 1.1 = []
-i 2 2.2 = []
-i 1 0.011e2 = []
-i 2 2.20000 = []
-
-{-
-j one@1 oneone@1.1
- | ((fromFloat oneone) - (fromIntegral (fromInt one)))
- /= (fromIntegral (fromInt 0)) = []
-j two@2 twotwo@2.2
- | ((fromFloat twotwo) * (fromIntegral (fromInt 2)))
- == (fromIntegral (fromInt 4.4)) = []
--}
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds022.stderr-ghc b/testsuite/tests/ghc-regress/deSugar/should_compile/ds022.stderr-ghc
deleted file mode 100644
index ce6d4a52c1..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds022.stderr-ghc
+++ /dev/null
@@ -1,6 +0,0 @@
-
-ds022.hs:20:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `i':
- i 1 0.011e2 = ...
- i 2 2.20000 = ...
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds023.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds023.hs
deleted file mode 100644
index 736107d979..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds023.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! ds023 -- overloading eg from section 9.2
---
-module ShouldCompile where
-
-f x = g (x == x) x
-g b x = abs (f x)
---g b x = (f x) + (f x)
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds023.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds023.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds023.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds024.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds024.hs
deleted file mode 100644
index 76606a90f7..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds024.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! ds024 -- correct types on ConPatOuts
-
--- do all the right types get stuck on all the
--- Nils and Conses?
-
-module ShouldCompile where
-
-
-f x = [[], []]
-
-g x = ([], [], [])
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds024.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds024.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds024.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds025.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds025.hs
deleted file mode 100644
index fdbf0ff6ae..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds025.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- !!! ds025 -- overloaded assoc -- AbsBinds
-
-module ShouldCompile where
-
-ehead xs loc | null xs = error ("4"++loc)
- | True = head xs
-
-assoc key lst loc
- = if (null res) then error ("1"++loc++"2"++(show key))
- else (ehead res "3")
- where res = [ val | (key',val) <- lst, key==key']
-
-assocMaybe :: (Eq a) => a -> [(a,b)] -> Maybe b
-assocMaybe key lst
- = if (null res) then Nothing else (Just (head res))
- where res = [ val | (key',val) <- lst, key==key']
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds025.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds025.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds025.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds026.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds026.hs
deleted file mode 100644
index f21ca0b18b..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds026.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !!! ds026 -- classes -- incl. polymorphic method
-
-module ShouldCompile where
-
-class Foo a where
- op :: a -> a
-
-class Foo a => Boo a where
- op1 :: a -> a
-
-class Boo a => Noo a where
- op2 :: (Eq b) => a -> b -> a
-
-f x y = op (op2 x y)
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds026.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds026.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds026.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds027.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds027.hs
deleted file mode 100644
index 436958e531..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds027.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! ds027 -- simple instances
---
-module ShouldCompile where
-
-data Foo = Bar | Baz
-
-instance Eq Foo where
- Bar == Baz = True
- Bar /= Baz = False
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds027.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds027.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds027.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds028.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds028.hs
deleted file mode 100644
index 4c7944aa39..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds028.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- !!! ds028: failable pats in top row
-
-module ShouldCompile where
-
-
--- when the first row of pats doesn't have convenient
--- variables to grab...
-
-mAp f [] = []
-mAp f (x:xs) = f x : mAp f xs
-
-True |||| _ = True
-False |||| x = x
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds028.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds028.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds028.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds029.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds029.hs
deleted file mode 100644
index 000052365e..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds029.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! ds029: pattern binding with guards (dubious but valid)
---
-
-module ShouldCompile where
-
-f x = y
- where (y,z) | y < z = (0,1)
- | y > z = (1,2)
- | True = (2,3)
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds029.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds029.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds029.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds030.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds030.hs
deleted file mode 100644
index 8475b55a0f..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds030.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! ds030: checks that types substituted into binders
---
-module ShouldCompile where
-
-f x = case x of [] -> (3::Int) ; _ -> (4::Int)
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds030.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds030.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds030.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds031.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds031.hs
deleted file mode 100644
index 5f25c15b19..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds031.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module ShouldCompile where
-
-foldPair :: (a->a->a,b->b->b) -> (a,b) -> [(a,b)] -> (a,b)
-foldPair fg ab [] = ab
-foldPair fg@(f,g) ab ((a,b):abs) = (f a u,g b v)
- where (u,v) = foldPair fg ab abs
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds031.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds031.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds031.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds032.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds032.hs
deleted file mode 100644
index 09e2de15a7..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds032.hs
+++ /dev/null
@@ -1,17 +0,0 @@
--- !!! recursive funs tangled in an AbsBind
-
-module ShouldCompile where
-
-
-flatten :: Int -- Indentation
- -> Bool -- True => just had a newline
- -> Float -- Current seq to flatten
- -> [(Int,Float)]-- Work list with indentation
- -> String
-
-flatten n nlp 0.0 seqs = flattenS nlp seqs
-flatten n nlp 1.0 seqs = flatten n nlp 1.1 ((n,1.2) : seqs)
-
-flattenS :: Bool -> [(Int, Float)] -> String
-flattenS nlp [] = ""
-flattenS nlp ((col,seq):seqs) = flatten col nlp seq seqs
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds032.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds032.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds032.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds033.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds033.hs
deleted file mode 100644
index 9d89a936c7..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds033.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- !!! getting top-level dependencies right
---
-module ShouldCompile where
-
-f1 x = g1 x
-g1 y = y
-
-g2 y = y
-f2 x = g2 x
-
-f3 x = g3 x
-g3 y = f3 y
-
-g4 y = f4 y
-f4 x = g4 x
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds033.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds033.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds033.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds034.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds034.hs
deleted file mode 100644
index 0725a7a97f..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds034.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! mutually-recursive methods in an instance declaration
---
-module ShouldCompile where
-
-class Foo a where
- op1 :: a -> a
- op2 :: a -> a
-
-instance Foo Int where
- op1 x = op2 x
- op2 y = op1 y
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds034.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds034.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds034.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds035.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds035.hs
deleted file mode 100644
index b3d8568a14..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds035.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE MagicHash, BangPatterns #-}
-module ShouldCompile where
-
-import GHC.Exts
-
-data CList = CNil | CCons Int# CList
-
-mk :: Int# -> CList
-mk n = case (n ==# 0#) of
- False -> CNil
- _ -> CCons 1# (mk (n -# 1#))
-
-clen :: CList -> Int#
-clen CNil = 0#
-clen (CCons _ cl) = 1# +# (clen cl)
-
-main = putStr (case len4_twice of
- 8# -> "bingo\n"
- _ -> "oops\n")
- where
- list4 = mk 4#
- !len4 = clen list4
- !len4_twice = len4 +# len4
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds035.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds035.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds035.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds036.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds036.hs
deleted file mode 100644
index 12b90ed3ab..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds036.hs
+++ /dev/null
@@ -1,47 +0,0 @@
-{-
-From dmc@minster.york.ac.uk Tue Mar 10 17:15:20 1992
-Via: uk.ac.york.minster; Tue, 10 Mar 92 17:15:14 GMT
-Message-Id: <swordfish.700247842@minster.york.ac.uk>
-From: dmc@minster.york.ac.uk
-To: partain
-Date: 10 Mar 1992 17:17:21 GMT
-
-Will,
-
-I have just started using Haskell at York and have found a compilation
-error in the code below which disappears when the last line is
-commented out
--}
-
-{-# LANGUAGE NPlusKPatterns #-}
-
-module ShouldCompile where
-
---brack :: (Eq a) => a -> a -> [a] -> ([a],[a])
---brack open close = brack' open close (1 :: Int)
-
-brack' :: (Eq a) => a -> a -> Int -> [a] -> ([a],[a])
-brack' open close 0 xs = ([],xs)
-brack' open close (n+1) [] = ([],[])
-brack' open close (n+1) (h:t) | h == open = ([],[])
-
-{-
-Is this something I have done wrong or a fault with the compiler?
-
-Cheers
-Dave
-
-
------------------------------------------------------------------------
-David Cattrall Telephone +44 904 432777
-Department of Computer Science
-University of York JANET: dmc@uk.ac.york.minster
-YORK Y01 5DD
-United Kingdom UUNET: uucp!ukc!minster!dmc
------------------------------------------------------------------------
--}
-
--- and this was Kevin's idea, subsequently...
-
-kh (n+2) x | x > n = x * 2
-kh (x+1) (m+1) = m
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds036.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds036.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds036.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds037.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds037.hs
deleted file mode 100644
index d5fc1300f3..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds037.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! AbsBinds with tyvars, no dictvars, but some dict binds
---
-module ShouldCompile where
-
-f x y = (fst (g y x), x+(1::Int))
-g x y = (fst (f x y), y+(1::Int))
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds037.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds037.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds037.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds038.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds038.hs
deleted file mode 100644
index 3accf7cf42..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds038.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! Jon Hill reported a bug in desugaring this in 0.09
--- !!! (recursive with n+k patts)
---
-
-{-# LANGUAGE NPlusKPatterns #-}
-
-module ShouldCompile where
-
-takeList :: Int -> [a] -> [a]
-takeList 0 _ = []
-takeList (n+1) [] = []
-takeList (n+1) (x:xs) = x : takeList n xs
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds038.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds038.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds038.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds039.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds039.hs
deleted file mode 100644
index ad000a5c9f..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds039.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! make sure correct type applications get put in
--- !!! when (:) is saturated.
-
-module ShouldCompile where
-
-
-f = (:)
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds039.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds039.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds039.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds040.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds040.hs
deleted file mode 100644
index c99f5fab63..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds040.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-
-{-# LANGUAGE NPlusKPatterns #-}
-
-module ShouldCompile where
-
--- !!! Another bug in overloaded n+k patts
---
-
-main = print ((4::Int) ^^^^ (6::Int))
-
-(^^^^) :: (Num a, Integral b) => a -> b -> a
-x ^^^^ 0 = 1
-x ^^^^ (n+1) = f x n x
- where f _ 0 y = y
- f x n y = g x n where
- g x n | even n = g (x*x) (n `quot` 2)
- | otherwise = f x (n-1) (x*y)
-_ ^^^^ _ = error "(^^^^){Prelude}: negative exponent"
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds040.stderr-ghc b/testsuite/tests/ghc-regress/deSugar/should_compile/ds040.stderr-ghc
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds040.stderr-ghc
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds041.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds041.hs
deleted file mode 100644
index 90c1c22b4d..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds041.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE DatatypeContexts #-}
-{- In 2.05 this one crashed with
-
- Fail: "basicTypes/Id.lhs", line 990: incomplete pattern(s)
- to match in function "dataConFieldLabels"
-
- Reason: dsExpr (RecordCon ...) didn't extract
- the constructor properly.
--}
-
-module ShouldCompile where
-
-data Eq a => Foo a = Foo { x :: a }
-
-foo :: Eq a => Foo a
-foo = Foo{}
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds041.stderr-ghc b/testsuite/tests/ghc-regress/deSugar/should_compile/ds041.stderr-ghc
deleted file mode 100644
index acf3e1ae6f..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds041.stderr-ghc
+++ /dev/null
@@ -1,8 +0,0 @@
-
-ds041.hs:1:14:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
-
-ds041.hs:16:7:
- Warning: Fields of `Foo' not initialised: x
- In the expression: Foo {}
- In an equation for `foo': foo = Foo {}
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds042.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds042.hs
deleted file mode 100644
index e3f928d8d9..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds042.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! Guard on a tuple pattern, broke 4.01 due to the
--- !!! special handling of unboxed tuples in desugarer.
-module ShouldCompile where
-
-f :: Int -> (Int,Int)
-f x =
- case f x of
- (a,b) | a > 0 -> f (x-1)
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds043.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds043.hs
deleted file mode 100644
index 5c7d746b8b..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds043.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! Checking the exhaustiveness of constructor
--- !!! with labelled fields.
-module ShouldCompile where
-
-data E = B { a,b,c,d,e,f :: Bool }
-
-bug x =
- case x of
- B _ _ _ _ True False -> undefined
- B {e=True, f=False} -> undefined
- B {a=a,f=False,e=False} -> undefined
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds043.stderr-ghc b/testsuite/tests/ghc-regress/deSugar/should_compile/ds043.stderr-ghc
deleted file mode 100644
index 8529a8c737..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds043.stderr-ghc
+++ /dev/null
@@ -1,4 +0,0 @@
-
-ds043.hs:8:2:
- Warning: Pattern match(es) are overlapped
- In a case alternative: B {e = True, f = False} -> ...
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds044.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds044.hs
deleted file mode 100644
index fddf19499e..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds044.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! Use of empty record patterns for constructors
--- !!! that don't have any labelled fields. According
--- !!! to the report, this isn't illegal.
-module ShouldCompile where
-
-data F = F Int Int
- | G
-
-isF F{} = True
-isF _ = False
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds045.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds045.hs
deleted file mode 100644
index 5688a530e1..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds045.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-
-{-# LANGUAGE NPlusKPatterns #-}
-
--- !!! N-plus-K pattern in binding
-
--- From: Andreas Marth
--- Sent: Monday, June 07, 1999 5:02 PM
--- To: glasgow-haskell-bugs@majordomo.haskell.org
--- Subject: compiler-bug
-
-module ShouldCompile where
-
-erroR :: Int
-erroR = n where
- (n+1,_) = (5,2)
-
--- Produced a -dcore-lint error in the desugarer output
--- (Was a missing case in DsHsSyn.collectTypedPatBinders)
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds046.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds046.hs
deleted file mode 100644
index 7096f2bdf0..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds046.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-module ShouldCompile where
-
--- Strict field unpacking tests: compile with -O -funbox-strict-fields.
-
--- test 1: simple unboxed int field
-data T = T !Int
-t (T i) = i + 1
-
--- test 2: mutual recursion (should back off from unboxing either field)
-data R = R !S
-data S = S !R
-
-r (R s) = s
-
--- test 3: multi-level unboxing
-data A = A Int !B Int
-data B = B !Int
-
-f = A 1 (B 2) 1
-g (A x (B y) z) = A x (B (y+2)) z
-h (A x (B y) z) = y + 2
-
--- test 4: flattening nested tuples
-data C = C !(Int,Int)
-j (C (a,b)) = a + b
-
--- test 5: polymorphism, multiple strict fields
-data D a b = D Int !(a,b) !(E Int)
-data E a = E a
-k (D a (b,c) (E d)) = a + b + c + d
-
--- test 6: records
-data F a b = F { x :: !Int, y :: !(Float,Float), z :: !(a,b) }
-l F{x = a} = a
-m (F a b c) = a
-n F{z = (a,b)} = a
-
--- test 7: newtypes
-newtype G a b = G (F a b)
-data H a b = H !Int !(G a b) !Int
-o (H y (G (F{ x=x })) z) = x + z
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds047.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds047.hs
deleted file mode 100644
index f6ee2b5dc7..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds047.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! Nullary rec-pats for constructors that hasn't got any labelled
--- !!! fields is legal Haskell, and requires extra care in the desugarer.
-module ShouldCompile where
-
-data X = X Int [Int]
-
-f :: X -> Int
-f (X _ []) = 0
-f X{} = 1
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds048.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds048.hs
deleted file mode 100644
index 9274aacbea..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds048.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! newtypes with a labelled field.
-module ShouldCompile where
-
-newtype Foo = Foo { x :: Int } deriving (Eq)
-
-f :: Foo -> Foo -> Int
-f a b = x a + x b
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds050.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds050.hs
deleted file mode 100644
index be88654d7e..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds050.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
-module ShouldCompile where
-
-data Q = Q {f :: forall a. a -> a}
-g1 = f
-g2 x = f x
-g3 x y = f x y
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds051.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds051.hs
deleted file mode 100644
index 70c51a792f..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds051.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-module ShouldCompile where
-
--- !!! test the overlapping patterns detection.
-
--- f1 overlaps
-f1 "ab" = []
-f1 "ab" = []
-f1 _ = []
-
--- f2 overlaps
-f2 "ab" = []
-f2 ('a':'b':[]) = []
-f2 _ = []
-
--- f3 overlaps
-f3 ('a':'b':[]) = []
-f3 "ab" = []
-f3 _ = []
-
--- f4 doesn't overlap
-f4 "ab" = []
-f4 ('a':'b':'c':[]) = []
-f4 _ = []
-
--- f5 doesn't overlap
-f5 ('a':'b':'c':[]) = []
-f5 "ab" = []
-f5 _ = []
-
--- f6 doesn't overlap
-f6 "ab" = []
-f6 ('a':[]) = []
-f6 _ = []
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds051.stderr-ghc b/testsuite/tests/ghc-regress/deSugar/should_compile/ds051.stderr-ghc
deleted file mode 100644
index a098efee33..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds051.stderr-ghc
+++ /dev/null
@@ -1,12 +0,0 @@
-
-ds051.hs:6:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `f1': f1 "ab" = ...
-
-ds051.hs:11:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `f2': f2 ('a' : 'b' : []) = ...
-
-ds051.hs:16:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `f3': f3 "ab" = ...
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds052.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds052.hs
deleted file mode 100644
index 08612aec98..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds052.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# OPTIONS -fwarn-incomplete-patterns #-}
-module ShouldCompile where
-
--- should *not* produce a warning about non-exhaustive patterns
-lazyZip:: [a] -> [b] -> [(a, b)]
-lazyZip [] _ = []
-lazyZip (x:xs) ~(y:ys) = (x, y):lazyZip xs ys
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds052.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds052.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds052.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds053.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds053.hs
deleted file mode 100644
index 4069c614d5..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds053.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# OPTIONS -fwarn-unused-binds #-}
-module ShouldCompile() where
-
--- should warn about unused f, even though f is used in itself
-f = f
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds053.stderr-ghc b/testsuite/tests/ghc-regress/deSugar/should_compile/ds053.stderr-ghc
deleted file mode 100644
index 3bce906869..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds053.stderr-ghc
+++ /dev/null
@@ -1,2 +0,0 @@
-
-ds053.hs:5:1: Warning: Defined but not used: `f'
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds054.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds054.hs
deleted file mode 100644
index 7b05409adf..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds054.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- fails core-lint in 6.2
-module ShouldCompile where
-
-newtype Foo = Foo [Foo]
-newtype Bar = Bar Foo
-
-unBar :: Bar -> Foo
-unBar (Bar x) = x
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds055.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds055.hs
deleted file mode 100644
index 280fe968d2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds055.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE ExistentialQuantification, DeriveDataTypeable #-}
-
--- This module requires quite trick desugaring,
--- because of the context in the existentials
--- It broke a pre 6.4 GHC
-
-module Foo where
-
- import Data.Data
- import Data.HashTable
-
- data Item = forall a. (Data a) => Leaf Bool a
- | forall a. (Data a) => Branch Bool a Int Int
- deriving (Typeable)
-
-
- instance Data Item where
- gfoldl k z (Leaf b v) = z (Leaf b) `k` v
- gfoldl k z (Branch b v a1 a2) = z (\x -> Branch b x a1 a2) `k` v
- gunfold _ _ _ = error "urk"
- toConstr (Leaf _ _) = leafConstr
- toConstr (Branch _ _ _ _) = branchConstr
- dataTypeOf _ = itemDataType
-
- itemDataType = mkDataType "Subliminal.Item" [leafConstr, branchConstr]
- leafConstr = mkConstr itemDataType "Leaf" [] Prefix
- branchConstr = mkConstr itemDataType "Branch" [] Prefix
-
-
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds056.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds056.hs
deleted file mode 100644
index 77c3860112..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds056.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- Check overlap in n+k patterns
-
-{-# LANGUAGE NPlusKPatterns #-}
-
-module Foo where
-
-g :: Int -> Int
-g (x+1) = x
-g y = y
-g _ = 0 -- Overlapped
-
-h :: Int -> Int
-h (x+1) = x
-h _ = 0 -- Not overlapped
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds056.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds056.stderr
deleted file mode 100644
index 6e0972bef4..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds056.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-ds056.hs:8:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `g': g _ = ...
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds057.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds057.hs
deleted file mode 100644
index 23bf5d3645..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds057.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE MagicHash, BangPatterns, UnboxedTuples #-}
-module ShouldCompile where
-
-import Data.Word
-import GHC.Ptr
-import GHC.Exts
-
-f# :: Int# -> (# Char#, Int# #)
-f# a# = (# '\0'#, a# #)
-
-g :: Int -> (Char, Int)
-g (I# a#) = ( C# c#, I# b# )
- where !(# c#, b# #) = f# a#
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds058.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds058.hs
deleted file mode 100644
index 0b83d0bd32..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds058.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- Test overlapping pattern warnings
-
-module ShouldCompile where
-
-f x = case x of
- Just (~1) -> 0
- Just _ -> 1 -- This one cannot match
- Nothing -> 2
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds058.stderr b/testsuite/tests/ghc-regress/deSugar/should_compile/ds058.stderr
deleted file mode 100644
index fb504cc514..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds058.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-ds058.hs:5:7:
- Warning: Pattern match(es) are overlapped
- In a case alternative: Just _ -> ...
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds059.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds059.hs
deleted file mode 100644
index f8385726b7..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds059.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-{-# OPTIONS -fwarn-incomplete-patterns #-}
-
--- Test for incomplete-pattern warnings
--- None should cause a warning
-
-module ShouldCompile where
-
--- These ones gave bogus warnings in 6.2
-
-data D = D1 { f1 :: Int } | D2
-
--- Use pattern matching in the argument
-f :: D -> D
-f d1@(D1 {f1 = n}) = d1 { f1 = f1 d1 + n } -- Warning here
-f d = d
-
--- Use case pattern matching
-g :: D -> D
-g d1 = case d1 of
- D1 { f1 = n } -> d1 { f1 = n + 1 } -- Warning here also
- D2 -> d1
-
--- These ones were from Neil Mitchell
--- no warning
-ex1 x = ss
- where (_s:ss) = x
-
--- no warning
-ex2 x = let (_s:ss) = x in ss
-
--- Warning: Pattern match(es) are non-exhaustive
--- In a case alternative: Patterns not matched: []
-ex3 x = case x of ~(_s:ss) -> ss
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds060.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds060.hs
deleted file mode 100644
index b822605742..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds060.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-
--- Test for trac #322
-
-module ShouldCompile where
-
-instance (Num a) => Num (Maybe a) where
- (Just a) + (Just b) = Just (a + b)
- _ + _ = Nothing
- (Just a) - (Just b) = Just (a - b)
- _ - _ = Nothing
- (Just a) * (Just b) = Just (a * b)
- _ * _ = Nothing
- negate (Just a) = Just (negate a)
- negate _ = Nothing
- abs (Just a) = Just (abs a)
- abs _ = Nothing
- signum (Just a) = Just (signum a)
- signum _ = Nothing
- fromInteger = Just . fromInteger
-
-f :: Maybe Int -> Int
-f 1 = 1
-f Nothing = 2 -- Gives bogus "Warning: Pattern match(es) are overlapped"
-f _ = 3
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds061.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds061.hs
deleted file mode 100644
index 271bbbbc60..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds061.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE NPlusKPatterns #-}
-{-# OPTIONS_GHC -fwarn-incomplete-patterns -Wall #-}
-
--- Test for trac #851
--- Should not give a non-exhaustive pattern warning
-
-module ShouldCompile where
-
-import Data.Word
-
-f :: Word -> Bool
-f 0 = True
-f (_n + 1) = False
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds062.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds062.hs
deleted file mode 100644
index 18bd5d53e5..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds062.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# OPTIONS_GHC -Wall #-}
-
-module ShouldCompile where
-
-f :: String -> Int
-f x | null x = 1
- | otherwise = 2
-
--- Should not give a non-exhaustive-patterns error
--- See Trac #1759
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_compile/ds063.hs b/testsuite/tests/ghc-regress/deSugar/should_compile/ds063.hs
deleted file mode 100644
index 74bde90887..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_compile/ds063.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# OPTIONS_GHC -Wall #-}
-{-# LANGUAGE ViewPatterns #-}
-
-module ShouldCompile where
-
-f :: Int -> Int
-f ((+1) -> 1) = 5
-f _ = 3
-
--- Should not give an overlapping-patterns or non-exhaustive-patterns error
--- See Trac #2395
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/Makefile b/testsuite/tests/ghc-regress/deSugar/should_run/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/T246.hs b/testsuite/tests/ghc-regress/deSugar/should_run/T246.hs
deleted file mode 100644
index 835e618b79..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/T246.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
--- Test Trac #246
-
-module Main where
-
-import Control.Exception
-
-data T = T { x :: Bool, y :: Bool }
-
-f (T { y=True, x=True }) = "Odd"
-f _ = "OK"
-
-g (T { x=True, y=True }) = "Odd2"
-g _ = "Odd3"
-
-funny = T { x = undefined, y = False }
-
-main = do { print (f funny) -- Should work, because we test
- -- y first, which fails, and falls
- -- through to "OK"
-
- ; Control.Exception.catch
- (print (g funny)) -- Should fail, because we test
- (\(_::SomeException) -> print "caught") -- x first, and hit "undefined"
- }
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/T246.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/T246.stdout
deleted file mode 100644
index f266ecc65d..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/T246.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-"OK"
-"caught"
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/T3126.hs b/testsuite/tests/ghc-regress/deSugar/should_run/T3126.hs
deleted file mode 100644
index 811ddc1fa7..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/T3126.hs
+++ /dev/null
@@ -1,54 +0,0 @@
-{-# LANGUAGE ViewPatterns #-}
-{-# LANGUAGE OverloadedStrings #-}
-module Main where
-import Data.String
-
--- {{{ Num literals
-newtype N = N Int deriving (Show,Eq)
-
-instance Num N where
- fromInteger 0 = error "0"
- fromInteger 1 = N 0
- fromInteger _ = N 1
-
-f x = case x of
- 1 -> False
- 0 -> True
-
-g x = case x of
- 1 -> False
- _ -> case x of
- 0 -> True
- _ -> error "No match"
-
-testNum = do
- print $ g (N 0)
- print $ f (N 0)
-
--- }}}
-
--- {{{ IsString literals
-newtype S = S String deriving Eq
-
-instance IsString S where
- fromString [] = error "[]"
- fromString (_:_) = S "."
-
-fs x = case x of
- "." -> False
- "" -> True
-
-gs x = case x of
- "." -> False
- _ -> case x of
- "" -> True
- _ -> error "No match"
-
-testIsString = do
- print $ gs (S ".")
- print $ fs (S ".")
-
--- }}}
-
-main = do { testNum; testIsString }
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/T3126.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/T3126.stdout
deleted file mode 100644
index 3367978a7b..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/T3126.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-False
-False
-False
-False
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/T3382.hs b/testsuite/tests/ghc-regress/deSugar/should_run/T3382.hs
deleted file mode 100644
index 800256a1f0..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/T3382.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# OPTIONS_GHC -XOverloadedStrings #-}
-module Main where
-
-import Data.String
-
-instance IsString Int where
- fromString x = 1337
-
-f :: Int -> String
-f "hello" = "correct"
-f _ = "false"
-
-main = do print $ f 1337
- print $ f 1338
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/T3382.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/T3382.stdout
deleted file mode 100644
index a92f13b57a..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/T3382.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-"correct"
-"false"
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/all.T b/testsuite/tests/ghc-regress/deSugar/should_run/all.T
deleted file mode 100644
index 9c8664d64b..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/all.T
+++ /dev/null
@@ -1,39 +0,0 @@
-# Args to compile_and_run are:
-# extra compile flags
-# extra run flags
-# expected process return value, if not zero
-
-test('dsrun001', normal, compile_and_run, [''])
-test('dsrun002', normal, compile_and_run, [''])
-test('dsrun003', normal, compile_and_run, [''])
-test('dsrun004', normal, compile_and_run, [''])
-test('dsrun005', exit_code(1), compile_and_run, [''])
-test('dsrun006', normal, compile_and_run, [''])
-test('dsrun007', exit_code(1), compile_and_run, [''])
-test('dsrun008', exit_code(1), compile_and_run, [''])
-test('dsrun009', normal, compile_and_run, [''])
-test('dsrun010', normal, compile_and_run, [''])
-test('dsrun011', skip_if_fast, compile_and_run, [''])
-test('dsrun012', skip_if_fast, compile_and_run, [''])
-test('dsrun013', normal, compile_and_run, [''])
-test('dsrun014', expect_broken_for(1257, ['ghci']), compile_and_run, [''])
-test('dsrun015', normal, compile_and_run, [''])
-test('dsrun016', normal, compile_and_run, [''])
-test('dsrun017', normal, compile_and_run, [''])
-test('dsrun018', normal, compile_and_run, [''])
-test('dsrun019', normal, compile_and_run, [''])
-test('dsrun020', normal, compile_and_run, [''])
-test('dsrun021', normal, compile_and_run, [''])
-test('dsrun022', normal, compile_and_run, [''])
-test('dsrun023', normal, compile_and_run, [''])
-test('T246', normal, compile_and_run, [''])
-test('T3126', normal, compile_and_run, [''])
-test('T3382', normal, compile_and_run, [''])
-test('mc01', normal, compile_and_run, [''])
-test('mc02', normal, compile_and_run, [''])
-test('mc03', normal, compile_and_run, [''])
-test('mc04', normal, compile_and_run, [''])
-test('mc05', normal, compile_and_run, [''])
-test('mc06', normal, compile_and_run, [''])
-test('mc07', normal, compile_and_run, [''])
-test('mc08', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun001.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun001.hs
deleted file mode 100644
index e40ea2a11d..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun001.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{- Check that list comprehensions can be written
- in do-notation. This actually broke 2.02, with
- a pattern match failure in dsListComp!
--}
-
-module Main where
-
-main = putStrLn (show theList)
-theList = do x <- [1..3]
- y <- [1..3]
- return (x,y)
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun001.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun001.stdout
deleted file mode 100644
index a375d0fe24..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[(1,1),(1,2),(1,3),(2,1),(2,2),(2,3),(3,1),(3,2),(3,3)]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun002.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun002.hs
deleted file mode 100644
index acad275f74..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun002.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{- Tests let-expressions in do-statments -}
-
-module Main( main ) where
-
-foo = do
- putStr "a"
- let x = "b" in putStr x
- putStr "c"
-
-main = do
- putStr "a"
- foo
- let x = "b" in putStrLn x
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun002.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun002.stdout
deleted file mode 100644
index 660eacecf5..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-aabcb
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun003.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun003.hs
deleted file mode 100644
index d100bff718..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun003.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- Tests match on empty field lists
-
-module Main where
-
-data Person = Female {firstName, lastName :: String}
- | Male {firstName, lastName :: String}
- deriving (Show)
-
-isFemale (Female{}) = True
-isFemale (Male{}) = False
-
-main = print (isFemale (Female {firstName = "Jane", lastName = "Smith"}))
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun003.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun003.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun003.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun004.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun004.hs
deleted file mode 100644
index 8f54e330e1..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun004.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- Test n+k patterns
-
-{-# LANGUAGE NPlusKPatterns #-}
-
-module Main where
-
-f (n+1) = n
-
-g :: Int -> Int
-g (n+4) = n
-
-main = print (f 3) >>
- print (g 9)
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun004.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun004.stdout
deleted file mode 100644
index 49ae94bb33..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun004.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-2
-5
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.hs
deleted file mode 100644
index 238a2c3410..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.hs
+++ /dev/null
@@ -1,46 +0,0 @@
-{-
-
-From: Olaf Chitil <chitil@Informatik.RWTH-Aachen.DE>
-
-It is a problem with 0.29 (which we use for compiling 2.01), it is gone
-in 2.01.
-
- f :: Eq a => a -> [b] -> [b] -> Bool
- f a [] [] = (a==a)
- main = print (f True "" "Hallo")
-
-
-when run after compilation with 0.29 you get:
-Fail: "test.hs", line 6: incomplete pattern(s) to match in function "ds.d5b4"
-
-while 2.01 gives you as desired
-Fail: In pattern-matching: function f{-aYw-}; at test.hs, line 6
-
-The problem is the dictionary, because for the program
-
- f :: a -> [b] -> [b] -> Bool
- f a [] [] = True
- main = print (f True "" "Hallo")
-
-0.29 gives the function name "f" as well.
-
-So it's ok in 2.01, but why did you change the form of the error messages?
-"incomplete pattern(s) to match" is more informative then "In pattern-matching"!
-I even prefer the order of information in the 0.29 error messages.
-
-May I finally repeat that in my opinion the compiler should warn about
-incomplete patterns during compilation. However, I suppose the
-incomplete patterns are just recognised by the desugarer which does
-not produce error messages any more.
-
--}
-
-
-module Main where
-
-f :: Eq a => a -> [b] -> [b] -> Bool
-f a [] [] = (a==a)
-
-main = print (f True "" "Hallo")
-
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.stderr b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.stderr
deleted file mode 100644
index 73718fc858..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-dsrun005: dsrun005.hs:42:1-18: Non-exhaustive patterns in function f
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.stderr-hugs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.stderr-hugs
deleted file mode 100644
index e9fed4ae3a..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-dsrun005: pattern match failure
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun005.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun006.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun006.hs
deleted file mode 100644
index 759c9c542d..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun006.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-{-
-Date: Tue, 20 May 1997 05:10:04 GMT
-From: Tomasz Cholewo <tjchol01@mecca.spd.louisville.edu>
-
-ghc-2.03 cannot compile the following code, which I think is correct
-according to the Report
-
- data X = A {a :: Int} | B {a :: Int}
-
-The error message is:
-
- Conflicting definitions for: a
- Defined at bug4.lhs:2
- Defined at bug4.lhs:2
-
-In addition the following snippet
-
- data X = A {a :: Int}
- y = let A {a} = x
- in a
-
-fails with:
-
- bug4.lhs:4:5: Not a valid LHS on input: "in"
--}
---module Main(main) where
-
-data X = A {a :: Int} | B {a :: Int}
-
-f x = let A {a=a} = x
- in a
-
-main = print (f (A {a = 3}))
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun006.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun006.stdout
deleted file mode 100644
index 00750edc07..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun006.stdout
+++ /dev/null
@@ -1 +0,0 @@
-3
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun007.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun007.hs
deleted file mode 100644
index 19a0c641cb..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun007.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-data T = C Int
-
-unpick (C i) = i + 1
-
-main = print (unpick (C{})) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun007.stderr b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun007.stderr
deleted file mode 100644
index f313633803..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun007.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-dsrun007: dsrun007.hs:5:23-25: Missing field in record construction
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun007.stderr-hugs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun007.stderr-hugs
deleted file mode 100644
index 8941f55132..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun007.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-dsrun007: undefined field: C
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun008.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun008.hs
deleted file mode 100644
index c055da563c..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun008.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- !!! Double irrefutable pattern (bug in Hugs98, 29/8/2001)
-main = print (case (1,2) of ~(~(2,x)) -> x)
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun008.stderr b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun008.stderr
deleted file mode 100644
index ff7de054f2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun008.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-dsrun008: dsrun008.hs:2:15-42: Irrefutable pattern failed for pattern (2, x)
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun008.stderr-hugs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun008.stderr-hugs
deleted file mode 100644
index 18ee3730c2..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun008.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-dsrun008: pattern match failure
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun009.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun009.hs
deleted file mode 100644
index 104f1af2e3..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun009.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- !!! Test that 'negate' is used properly to construct negative literals
-
-main = print (minusTwo,trueOrFalse)
-
-minusTwo = -2::N
-
-trueOrFalse =
- case minusTwo of
- -2 -> True
- _ -> False
-
-data N = Negate N | FromInteger Integer deriving (Eq,Show)
-
-instance Num N where
- negate = Negate
- fromInteger = FromInteger
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun009.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun009.stdout
deleted file mode 100644
index 1f0a31b942..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun009.stdout
+++ /dev/null
@@ -1 +0,0 @@
-(Negate (FromInteger 2),True)
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun010.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun010.hs
deleted file mode 100644
index 99a9297f8b..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun010.hs
+++ /dev/null
@@ -1,22 +0,0 @@
--- Check that pattern match failure in do-notation
--- is reflected by calling the monadic 'fail', not by a
--- runtime exception
-
-import Control.Monad
-import Data.Maybe
-
-test :: (MonadPlus m) => [a] -> m Bool
-test xs
- = do
- (_:_) <- return xs
- -- Should fail here
- return True
- `mplus`
- -- Failure in LH arg should trigger RH arg
- do
- return False
-
-main :: IO ()
-main
- = do let x = fromJust (test [])
- putStrLn (show x)
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun010.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun010.stdout
deleted file mode 100644
index bc59c12aa1..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun010.stdout
+++ /dev/null
@@ -1 +0,0 @@
-False
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun011.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun011.hs
deleted file mode 100644
index b7e518c0bf..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun011.hs
+++ /dev/null
@@ -1,93 +0,0 @@
--- Test desugaring of mutual recursion of many functions
--- which generated a big-tuple link error in GHC 6.0
-
-module Main where
-
-
-a1 :: Num a => a -> a
-
-a1 x | x==0 = x
-a1 x = 1 + k8 (x-1)
-
-a2 x = 1 + a1 x
-a3 x = 1 + a2 x
-a4 x = 1 + a3 x
-a5 x = 1 + a4 x
-a6 x = 1 + a5 x
-a7 x = 1 + a6 x
-a8 x = 1 + a7 x
-
-b1 x = 1 + a8 x
-b2 x = 1 + b1 x
-b3 x = 1 + b2 x
-b4 x = 1 + b3 x
-b5 x = 1 + b4 x
-b6 x = 1 + b5 x
-b7 x = 1 + b6 x
-b8 x = 1 + b7 x
-
-c1 x = 1 + b8 x
-c2 x = 1 + c1 x
-c3 x = 1 + c2 x
-c4 x = 1 + c3 x
-c5 x = 1 + c4 x
-c6 x = 1 + c5 x
-c7 x = 1 + c6 x
-c8 x = 1 + c7 x
-
-d1 x = 1 + c8 x
-d2 x = 1 + d1 x
-d3 x = 1 + d2 x
-d4 x = 1 + d3 x
-d5 x = 1 + d4 x
-d6 x = 1 + d5 x
-d7 x = 1 + d6 x
-d8 x = 1 + d7 x
-
-e1 x = 1 + d8 x
-e2 x = 1 + e1 x
-e3 x = 1 + e2 x
-e4 x = 1 + e3 x
-e5 x = 1 + e4 x
-e6 x = 1 + e5 x
-e7 x = 1 + e6 x
-e8 x = 1 + e7 x
-
-f1 x = 1 + e8 x
-f2 x = 1 + f1 x
-f3 x = 1 + f2 x
-f4 x = 1 + f3 x
-f5 x = 1 + f4 x
-f6 x = 1 + f5 x
-f7 x = 1 + f6 x
-f8 x = 1 + f7 x
-
-g1 x = 1 + f8 x
-g2 x = 1 + g1 x
-g3 x = 1 + g2 x
-g4 x = 1 + g3 x
-g5 x = 1 + g4 x
-g6 x = 1 + g5 x
-g7 x = 1 + g6 x
-g8 x = 1 + g7 x
-
-h1 x = 1 + g8 x
-h2 x = 1 + h1 x
-h3 x = 1 + h2 x
-h4 x = 1 + h3 x
-h5 x = 1 + h4 x
-h6 x = 1 + h5 x
-h7 x = 1 + h6 x
-h8 x = 1 + h7 x
-
-k1 x = 1 + h8 x
-k2 x = 1 + k1 x
-k3 x = 1 + k2 x
-k4 x = 1 + k3 x
-k5 x = 1 + k4 x
-k6 x = 1 + k5 x
-k7 x = 1 + k6 x
-k8 x = 1 + k7 x
-
-
-main = print (a1 3) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun011.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun011.stdout
deleted file mode 100644
index a817176f4a..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun011.stdout
+++ /dev/null
@@ -1 +0,0 @@
-216
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun012.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun012.hs
deleted file mode 100644
index 52ebd160e3..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun012.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- Desugaring of massive pattern bindings
--- Fails in GHC 6.0 without -O
-
-module Main where
-
-[a0,a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12,a13,a14,a15,a16,a17,
- a18,a19,a20,a21,a22,a23,a24,a25,a26,a27,a28,a29,a30,a31,a32,
- a33,a34,a35,a36,a37,a38,a39,a40,a41,a42,a43,a44,a45,a46,a47,
- a48,a49,a50,a51,a52,a53,a54,a55,a56,a57,a58,a59,a60,a61,a62,a63] =
- [0..63]
-
-main = print a62
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun012.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun012.stdout
deleted file mode 100644
index a8fa06e1be..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun012.stdout
+++ /dev/null
@@ -1 +0,0 @@
-62
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun013.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun013.hs
deleted file mode 100644
index c9cc59ead9..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun013.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE UnboxedTuples #-}
-
--- This one killed GHC 6.4.1, because the pattern match on the
--- unboxed tuple generates a failure case, which defeated the
--- rather fragile code in the desugarer
--- See DsExpr.lhs, the HsCase case
-
-module Main where
-
-foo xs ys = case (# null xs, null ys #) of
- (# True, False #) -> "One"
- (# False, True #) -> "Two"
-
-main :: IO ()
-main = print (foo [] "ok")
-
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun013.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun013.stdout
deleted file mode 100644
index 2dcddd2593..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun013.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"One"
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun014.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun014.hs
deleted file mode 100644
index 3b08a7ebf0..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun014.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE UnboxedTuples #-}
-
-module Main where
-
-import Debug.Trace
-
-{-# NOINLINE f #-}
-f :: a -> b -> (# a,b #)
-f x y = x `seq` y `seq` (# x,y #)
-
-g :: Int -> Int -> Int
-g v w = case f v w of
- (# a,b #) -> a+b
-
-main = print (g (trace "one" 1) (trace "two" 2))
--- The args should be evaluated in the right order!
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun014.stderr b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun014.stderr
deleted file mode 100644
index 814f4a4229..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun014.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-one
-two
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun014.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun014.stdout
deleted file mode 100644
index 00750edc07..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun014.stdout
+++ /dev/null
@@ -1 +0,0 @@
-3
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun015.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun015.hs
deleted file mode 100644
index da5e443605..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun015.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-{-# OPTIONS_GHC -XRecordWildCards -XNamedFieldPuns #-}
-
--- This is a very partial test of the record-wildcard extension
--- but better than nothing
-
-module Main where
-
-data T = C { x :: Int, y :: Int }
- | D { x :: Int, b :: Bool }
-
-select :: T -> Int
-select = x
-
-f :: (T,T) -> Int
-f v = let (C {..}, d) = v in Main.x d
-
-mkC a =
- let x = a + 1
- y = a * 2
- in C{..}
-
-sumC C{..} = x + y
-
-foo x b =
- let y = x+1
- in (C{..}, let x = 100 in D{..})
-
-bar a =
- let (C{..}, d) = a
- in (x + y + Main.x d, let D{..} = d in b)
-
-main = do
- print $ sumC $ mkC 10
- print $ bar $ foo 5 True
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun015.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun015.stdout
deleted file mode 100644
index b085e1acb0..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun015.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-31
-(111,True)
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun016.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun016.hs
deleted file mode 100644
index 38747a46e3..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun016.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- Tests grouping WITH a using clause but WITHOUT a by clause
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module Main where
-
-import Data.List(inits)
-
-main = putStrLn (show output)
- where
- output = [ x
- | y <- [1..3]
- , x <- "hello"
- , then group using inits ]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun016.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun016.stdout
deleted file mode 100644
index 60b1b8058e..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun016.stdout
+++ /dev/null
@@ -1 +0,0 @@
-["","h","he","hel","hell","hello","helloh","hellohe","hellohel","hellohell","hellohello","hellohelloh","hellohellohe","hellohellohel","hellohellohell","hellohellohello"]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun017.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun017.hs
deleted file mode 100644
index 877db7823c..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun017.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- Tests grouping WITH a by clause but WITHOUT a using clause
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module Main where
-
-import GHC.Exts(the)
-
-main = putStrLn (show output)
- where
- output = [ (the dept, sum salary, name)
- | (dept, salary, name) <- [("A", 1, "Bob"), ("B", 2, "Fred"), ("A", 5, "Jim"), ("A", 9, "Jim")]
- , then group by dept ] \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun017.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun017.stdout
deleted file mode 100644
index 60ddd472ac..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun017.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[("A",15,["Bob","Jim","Jim"]),("B",2,["Fred"])]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun018.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun018.hs
deleted file mode 100644
index d89f5b24f3..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun018.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- Test grouping with both a using and a by clause
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module Main where
-
-import Data.List(groupBy)
-import GHC.Exts(the)
-
-groupRuns :: Eq b => (a -> b) -> [a] -> [[a]]
-groupRuns f = groupBy (\x y -> f x == f y)
-
-main = putStrLn (show output)
- where
- output = [ (the x, product y)
- | x <- ([1, 1, 1, 2, 2, 1, 3])
- , y <- [4..6]
- , then group by x using groupRuns ] \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun018.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun018.stdout
deleted file mode 100644
index 7c2936211d..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun018.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[(1,1728000),(2,14400),(1,120),(3,120)]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun019.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun019.hs
deleted file mode 100644
index 049d264114..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun019.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Test transform WITHOUT a by clause
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module Main where
-
-main = putStrLn (show output)
- where
- output = [ x
- | x <- [1..10]
- , then take 5 ] \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun019.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun019.stdout
deleted file mode 100644
index bfedf5b35e..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun019.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[1,2,3,4,5]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun020.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun020.hs
deleted file mode 100644
index 6d26dc5607..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun020.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- Tests transform WITH a by clause
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module Main where
-
-import Data.List(takeWhile)
-
-main = putStrLn (show output)
- where
- output = [ (x * 10) + y
- | x <- [1..4]
- , y <- [1..4]
- , then takeWhile by (x + y) < 4] \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun020.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun020.stdout
deleted file mode 100644
index 771f5460d8..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun020.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[11,12]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun021.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun021.hs
deleted file mode 100644
index 7489f77a4a..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun021.hs
+++ /dev/null
@@ -1,22 +0,0 @@
--- Transformation stress test
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module Main where
-
-import Data.List(takeWhile)
-import GHC.Exts(sortWith)
-
-employees = [ ("Simon", "MS", 80)
- , ("Erik", "MS", 100)
- , ("Phil", "Ed", 40)
- , ("Gordon", "Ed", 45)
- , ("Paul", "Yale", 60)]
-
-main = putStrLn (show output)
- where
- output = [ (dept, salary)
- | (name, dept, salary) <- employees
- , then sortWith by salary
- , then filter by salary > 50
- , then take 1 ] \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun021.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun021.stdout
deleted file mode 100644
index b7de0302ef..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun021.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[("Yale",60)]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun022.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun022.hs
deleted file mode 100644
index dbbd906ce8..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun022.hs
+++ /dev/null
@@ -1,26 +0,0 @@
--- Transformation and grouping stress test
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module Main where
-
-import GHC.Exts(sortWith, the)
-
-employees = [ ("Simon", "MS", 80)
- , ("Erik", "MS", 100)
- , ("Phil", "Ed", 40)
- , ("Gordon", "Ed", 45)
- , ("Paul", "Yale", 60) ]
-
-main = putStrLn (show can_still_use_group_function) >> putStrLn (show output)
- where
- output = [ (the dept, map sum salary, (show x) ++ " and " ++ (show y))
- | (name, dept, salary) <- employees
- , then group by dept
- , x <- [1, 2, 3]
- , y <- [4, 5, 6]
- , then sortWith by sum salary
- , then take 4
- , then group using replicate 2 ]
- group = const "my group function called!"
- can_still_use_group_function = group "Mississippi" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun022.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun022.stdout
deleted file mode 100644
index c426e190ce..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun022.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-"my group function called!"
-[(["Yale"],[60,60,60,60],"[1,1,1,2] and [4,5,6,4]"),(["Yale"],[60,60,60,60],"[1,1,1,2] and [4,5,6,4]")]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun023.hs b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun023.hs
deleted file mode 100644
index 8189633415..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun023.hs
+++ /dev/null
@@ -1,41 +0,0 @@
--- "Big tuple" stress test for parallel and transform comprehensions
-
-{-# OPTIONS_GHC -XTransformListComp -XParallelListComp #-}
-
-module Main where
-
-main = putStrLn (show output)
- where
- output = [ x0 + x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 +
- x10 + x11 + x12 + x13 + x14 + x15 + x16 + x17 + x18 + x19 +
- x20 + x21 + x22 + x23 + x24 + x25 + x26 + x27 + x28 + x29 +
- x30 + x31 + x32 + x33 + x34 + x35 + x36 + x37 + x38 + x39 +
- x40 + x41 + x42 + x43 + x44 + x45 + x46 + x47 + x48 + x49 +
- x50 + x51 + x52 + x53 + x54 + x55 + x56 + x57 + x58 + x59 +
- x60 + x61 + x62 + x63 + x64 + x65 + x66 + x67 + x68 + x69 +
- x70 + x71 + x72 + x73 + x74 + x75 + x76 + x77 + x78 + x79 +
- x80 + x81 + x82 + x83 + x84 + x85 + x86 + x87 + x88 + x89 +
- x90 + x91 + x92 + x93 + x94 + x95 + x96 + x97 + x98 + x99 +
- y
- | x0 <- [0], x1 <- [1], x2 <- [2], x3 <- [3], x4 <- [4]
- , x5 <- [5], x6 <- [6], x7 <- [7], x8 <- [8], x9 <- [9]
- , x10 <- [0], x11 <- [1], x12 <- [2], x13 <- [3], x14 <- [4]
- , x15 <- [5], x16 <- [6], x17 <- [7], x18 <- [8], x19 <- [9]
- , x20 <- [0], x21 <- [1], x22 <- [2], x23 <- [3], x24 <- [4]
- , x25 <- [5], x26 <- [6], x27 <- [7], x28 <- [8], x29 <- [9]
- , x30 <- [0], x31 <- [1], x32 <- [2], x33 <- [3], x34 <- [4]
- , x35 <- [5], x36 <- [6], x37 <- [7], x38 <- [8], x39 <- [9]
- , x40 <- [0], x41 <- [1], x42 <- [2], x43 <- [3], x44 <- [4]
- , x45 <- [5], x46 <- [6], x47 <- [7], x48 <- [8], x49 <- [9]
- , x50 <- [0], x51 <- [1], x52 <- [2], x53 <- [3], x54 <- [4]
- , x55 <- [5], x56 <- [6], x57 <- [7], x58 <- [8], x59 <- [9]
- , x60 <- [0], x61 <- [1], x62 <- [2], x63 <- [3], x64 <- [4]
- , x65 <- [5], x66 <- [6], x67 <- [7], x68 <- [8], x69 <- [9]
- , x70 <- [0], x71 <- [1], x72 <- [2], x73 <- [3], x74 <- [4]
- , x75 <- [5], x76 <- [6], x77 <- [7], x78 <- [8], x79 <- [9]
- , x80 <- [0], x81 <- [1], x82 <- [2], x83 <- [3], x84 <- [4]
- , x85 <- [5], x86 <- [6], x87 <- [7], x88 <- [8], x89 <- [9]
- , x90 <- [0], x91 <- [1], x92 <- [2], x93 <- [3], x94 <- [4]
- , x95 <- [5], x96 <- [6], x97 <- [7], x98 <- [8], x99 <- [9]
- , then take 4
- | y <- [10] ] \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun023.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/dsrun023.stdout
deleted file mode 100644
index 538ca9d5f0..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/dsrun023.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[460]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc01.hs b/testsuite/tests/ghc-regress/deSugar/should_run/mc01.hs
deleted file mode 100644
index cf5ca1a0e9..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc01.hs
+++ /dev/null
@@ -1,26 +0,0 @@
--- Transformation and grouping stress test
-
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp #-}
-
-module Main where
-
-import GHC.Exts(sortWith, the)
-
-employees = [ ("Simon", "MS", 80)
- , ("Erik", "MS", 100)
- , ("Phil", "Ed", 40)
- , ("Gordon", "Ed", 45)
- , ("Paul", "Yale", 60) ]
-
-main = putStrLn (show can_still_use_group_function) >> putStrLn (show output)
- where
- output = [ (the dept, map sum salary, (show x) ++ " and " ++ (show y))
- | (name, dept, salary) <- employees
- , then group by dept
- , x <- [1, 2, 3]
- , y <- [4, 5, 6]
- , then sortWith by sum salary
- , then take 4
- , then group using replicate 2 ]
- group = const "my group function called!"
- can_still_use_group_function = group "Mississippi"
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc01.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/mc01.stdout
deleted file mode 100644
index c426e190ce..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc01.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-"my group function called!"
-[(["Yale"],[60,60,60,60],"[1,1,1,2] and [4,5,6,4]"),(["Yale"],[60,60,60,60],"[1,1,1,2] and [4,5,6,4]")]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc02.hs b/testsuite/tests/ghc-regress/deSugar/should_run/mc02.hs
deleted file mode 100644
index 77adf26c37..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc02.hs
+++ /dev/null
@@ -1,22 +0,0 @@
--- Transformation stress test
-
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp #-}
-
-module Main where
-
-import Data.List(takeWhile)
-import GHC.Exts(sortWith)
-
-employees = [ ("Simon", "MS", 80)
- , ("Erik", "MS", 100)
- , ("Phil", "Ed", 40)
- , ("Gordon", "Ed", 45)
- , ("Paul", "Yale", 60)]
-
-main = putStrLn (show output)
- where
- output = [ (dept, salary)
- | (name, dept, salary) <- employees
- , then sortWith by salary
- , then filter by salary > 50
- , then take 1 ]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc02.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/mc02.stdout
deleted file mode 100644
index b7de0302ef..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc02.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[("Yale",60)]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc03.hs b/testsuite/tests/ghc-regress/deSugar/should_run/mc03.hs
deleted file mode 100644
index 1b52c83c46..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc03.hs
+++ /dev/null
@@ -1,41 +0,0 @@
--- "Big tuple" stress test for monad comprehensions
-
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp -XParallelListComp #-}
-
-module Main where
-
-main = putStrLn (show output)
- where
- output = [ x0 + x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 +
- x10 + x11 + x12 + x13 + x14 + x15 + x16 + x17 + x18 + x19 +
- x20 + x21 + x22 + x23 + x24 + x25 + x26 + x27 + x28 + x29 +
- x30 + x31 + x32 + x33 + x34 + x35 + x36 + x37 + x38 + x39 +
- x40 + x41 + x42 + x43 + x44 + x45 + x46 + x47 + x48 + x49 +
- x50 + x51 + x52 + x53 + x54 + x55 + x56 + x57 + x58 + x59 +
- x60 + x61 + x62 + x63 + x64 + x65 + x66 + x67 + x68 + x69 +
- x70 + x71 + x72 + x73 + x74 + x75 + x76 + x77 + x78 + x79 +
- x80 + x81 + x82 + x83 + x84 + x85 + x86 + x87 + x88 + x89 +
- x90 + x91 + x92 + x93 + x94 + x95 + x96 + x97 + x98 + x99 +
- y
- | x0 <- [0], x1 <- [1], x2 <- [2], x3 <- [3], x4 <- [4]
- , x5 <- [5], x6 <- [6], x7 <- [7], x8 <- [8], x9 <- [9]
- , x10 <- [0], x11 <- [1], x12 <- [2], x13 <- [3], x14 <- [4]
- , x15 <- [5], x16 <- [6], x17 <- [7], x18 <- [8], x19 <- [9]
- , x20 <- [0], x21 <- [1], x22 <- [2], x23 <- [3], x24 <- [4]
- , x25 <- [5], x26 <- [6], x27 <- [7], x28 <- [8], x29 <- [9]
- , x30 <- [0], x31 <- [1], x32 <- [2], x33 <- [3], x34 <- [4]
- , x35 <- [5], x36 <- [6], x37 <- [7], x38 <- [8], x39 <- [9]
- , x40 <- [0], x41 <- [1], x42 <- [2], x43 <- [3], x44 <- [4]
- , x45 <- [5], x46 <- [6], x47 <- [7], x48 <- [8], x49 <- [9]
- , x50 <- [0], x51 <- [1], x52 <- [2], x53 <- [3], x54 <- [4]
- , x55 <- [5], x56 <- [6], x57 <- [7], x58 <- [8], x59 <- [9]
- , x60 <- [0], x61 <- [1], x62 <- [2], x63 <- [3], x64 <- [4]
- , x65 <- [5], x66 <- [6], x67 <- [7], x68 <- [8], x69 <- [9]
- , x70 <- [0], x71 <- [1], x72 <- [2], x73 <- [3], x74 <- [4]
- , x75 <- [5], x76 <- [6], x77 <- [7], x78 <- [8], x79 <- [9]
- , x80 <- [0], x81 <- [1], x82 <- [2], x83 <- [3], x84 <- [4]
- , x85 <- [5], x86 <- [6], x87 <- [7], x88 <- [8], x89 <- [9]
- , x90 <- [0], x91 <- [1], x92 <- [2], x93 <- [3], x94 <- [4]
- , x95 <- [5], x96 <- [6], x97 <- [7], x98 <- [8], x99 <- [9]
- , then take 4
- | y <- [10] ]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc03.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/mc03.stdout
deleted file mode 100644
index 538ca9d5f0..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc03.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[460]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc04.hs b/testsuite/tests/ghc-regress/deSugar/should_run/mc04.hs
deleted file mode 100644
index 38747a46e3..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc04.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- Tests grouping WITH a using clause but WITHOUT a by clause
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module Main where
-
-import Data.List(inits)
-
-main = putStrLn (show output)
- where
- output = [ x
- | y <- [1..3]
- , x <- "hello"
- , then group using inits ]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc04.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/mc04.stdout
deleted file mode 100644
index 60b1b8058e..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc04.stdout
+++ /dev/null
@@ -1 +0,0 @@
-["","h","he","hel","hell","hello","helloh","hellohe","hellohel","hellohell","hellohello","hellohelloh","hellohellohe","hellohellohel","hellohellohell","hellohellohello"]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc05.hs b/testsuite/tests/ghc-regress/deSugar/should_run/mc05.hs
deleted file mode 100644
index c2d7d2d4a5..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc05.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Test transform WITHOUT a by clause
-
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp #-}
-
-module Main where
-
-main = putStrLn (show output)
- where
- output = [ x
- | x <- [1..10]
- , then take 5 ]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc05.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/mc05.stdout
deleted file mode 100644
index bfedf5b35e..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc05.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[1,2,3,4,5]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc06.hs b/testsuite/tests/ghc-regress/deSugar/should_run/mc06.hs
deleted file mode 100644
index 20fe041283..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc06.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- Test grouping with both a using and a by clause
-
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp #-}
-
-module Main where
-
-import Data.List(groupBy)
-import GHC.Exts(the)
-
-groupRuns :: Eq b => (a -> b) -> [a] -> [[a]]
-groupRuns f = groupBy (\x y -> f x == f y)
-
-main = putStrLn (show output)
- where
- output = [ (the x, product y)
- | x <- ([1, 1, 1, 2, 2, 1, 3])
- , y <- [4..6]
- , then group by x using groupRuns ]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc06.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/mc06.stdout
deleted file mode 100644
index 7c2936211d..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc06.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[(1,1728000),(2,14400),(1,120),(3,120)]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc07.hs b/testsuite/tests/ghc-regress/deSugar/should_run/mc07.hs
deleted file mode 100644
index 7726dedb65..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc07.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- Tests transform WITH a by clause
-
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp #-}
-
-module Main where
-
-import Data.List(takeWhile)
-
-main = putStrLn (show output)
- where
- output = [ (x * 10) + y
- | x <- [1..4]
- , y <- [1..4]
- , then takeWhile by (x + y) < 4]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc07.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/mc07.stdout
deleted file mode 100644
index 771f5460d8..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc07.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[11,12]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc08.hs b/testsuite/tests/ghc-regress/deSugar/should_run/mc08.hs
deleted file mode 100644
index 24dd3beb4c..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc08.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- Tests grouping WITH a by clause but WITHOUT a using clause
-
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp #-}
-
-module Main where
-
-import GHC.Exts(the)
-
-main = putStrLn (show output)
- where
- output = [ (the dept, sum salary, name)
- | (dept, salary, name) <- [("A", 1, "Bob"), ("B", 2, "Fred"), ("A", 5, "Jim"), ("A", 9, "Jim")]
- , then group by dept ]
diff --git a/testsuite/tests/ghc-regress/deSugar/should_run/mc08.stdout b/testsuite/tests/ghc-regress/deSugar/should_run/mc08.stdout
deleted file mode 100644
index 60ddd472ac..0000000000
--- a/testsuite/tests/ghc-regress/deSugar/should_run/mc08.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[("A",15,["Bob","Jim","Jim"]),("B",2,["Fred"])]
diff --git a/testsuite/tests/ghc-regress/deriving/Makefile b/testsuite/tests/ghc-regress/deriving/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/deriving/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/Makefile b/testsuite/tests/ghc-regress/deriving/should_compile/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/T2378.hs b/testsuite/tests/ghc-regress/deriving/should_compile/T2378.hs
deleted file mode 100644
index e3118cb863..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/T2378.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE StandaloneDeriving, DeriveDataTypeable #-}
-module Foo( T ) where
-
--- Trac 2378
-
-import Data.Data
-
-newtype T f = MkT Int
-
-deriving instance Typeable1 T
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/T2856.hs b/testsuite/tests/ghc-regress/deriving/should_compile/T2856.hs
deleted file mode 100644
index c8f81a00bc..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/T2856.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-{-# LANGUAGE TypeFamilies, GeneralizedNewtypeDeriving, StandaloneDeriving, FlexibleInstances #-}
-
--- Test Trac #2856
-
-module T2856 where
-
-import Data.Ratio
-
-----------------------
-class C a where
- data D a
-
-instance C Bool where
- newtype D Bool = DInt Int deriving (Eq, Show, Num)
-
-instance C a => C [a] where
- newtype D [a] = DList (Ratio a) deriving (Eq, Show, Num)
-
-----------------------
-data family W a
-newtype instance W Bool = WInt Int deriving( Eq, Show )
-newtype instance W [a] = WList (Ratio a) deriving( Eq, Show )
-
-deriving instance Num (W Bool)
-deriving instance (Integral a, Num a) => Num (W [a])
- -- Integral needed because superclass Eq needs it,
- -- because of the stupid context on Ratio
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/T3012.hs b/testsuite/tests/ghc-regress/deriving/should_compile/T3012.hs
deleted file mode 100644
index 44b1d64a9c..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/T3012.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE GADTs, StandaloneDeriving #-}
-
-module T3012 where
-
-data T a where
- Foo :: T Int
- Bar :: T Bool
-
-deriving instance Show (T a)
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/T3057.hs b/testsuite/tests/ghc-regress/deriving/should_compile/T3057.hs
deleted file mode 100644
index 0e9aef7814..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/T3057.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE StandaloneDeriving, DeriveFunctor #-}
-module T3057 where
-
-deriving instance Functor (Either a)
-
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/T3965.hs b/testsuite/tests/ghc-regress/deriving/should_compile/T3965.hs
deleted file mode 100644
index 2ccaaadfdf..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/T3965.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable, FlexibleContexts, StandaloneDeriving, TypeOperators, UndecidableInstances #-}
-module T3965 where
-
-import Data.Data
-
-data T f e = Inl (f e) deriving (Data, Eq)
-
-instance (Typeable1 f) => Typeable1 (T f) where
- typeOf1 _ = error "urk"
-
-newtype Expr f = In (f (Expr f))
-instance Typeable1 f => Typeable (Expr f) where
- typeOf _ = error "urk"
-
-deriving instance (Typeable1 a, Data (a (Expr a))) => Data (Expr a)
-
-data Var e = Var String deriving (Data, Eq, Typeable)
-
-data Domain e g = Domain
- (Expr (T Var))
- deriving (Data, Typeable)
-
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/T4220.hs b/testsuite/tests/ghc-regress/deriving/should_compile/T4220.hs
deleted file mode 100644
index 0b2ba28caa..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/T4220.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE EmptyDataDecls, DeriveFunctor, DeriveFoldable, DeriveTraversable #-}
-module T4220 where
-
-import Data.Foldable
-import Data.Traversable
-
-data Void a deriving (Functor, Foldable, Traversable)
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/T4302.hs b/testsuite/tests/ghc-regress/deriving/should_compile/T4302.hs
deleted file mode 100644
index 50369632f9..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/T4302.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE StandaloneDeriving, DeriveDataTypeable, DeriveFunctor, DeriveFoldable, DeriveTraversable, EmptyDataDecls #-}
-module T4302 where
-
-import Data.Ix
-import Data.Typeable
-import Data.Data
-import Data.Foldable
-import Data.Traversable
-
-data Test a
-
-deriving instance Eq (Test a)
-deriving instance Ord (Test a)
-deriving instance Typeable1 Test
-deriving instance Data a => Data (Test a)
-deriving instance Functor Test
-deriving instance Foldable Test
-deriving instance Traversable Test
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/T4325.hs b/testsuite/tests/ghc-regress/deriving/should_compile/T4325.hs
deleted file mode 100644
index 68ab81744b..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/T4325.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE DatatypeContexts #-}
-
-module T4325 where
-
-data Ord a => Heap a b = Empty | Node a b [Heap a b]
- deriving Eq
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/T4325.stderr b/testsuite/tests/ghc-regress/deriving/should_compile/T4325.stderr
deleted file mode 100644
index 90ef1de92d..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/T4325.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-T4325.hs:1:14:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/T4816.hs b/testsuite/tests/ghc-regress/deriving/should_compile/T4816.hs
deleted file mode 100644
index 0e81e39521..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/T4816.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE DeriveFunctor #-}
-
-module T4816 where
-
-data Silly a = Sillly a
-
-data Baz o = Baz {
- foo :: o,
- bar :: Silly ()
- } deriving (Functor)
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/T4966.hs b/testsuite/tests/ghc-regress/deriving/should_compile/T4966.hs
deleted file mode 100644
index d7328c6ef6..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/T4966.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-{-# LANGUAGE DatatypeContexts #-}
-{-# LANGUAGE EmptyDataDecls #-}
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE UndecidableInstances #-}
-{-# LANGUAGE OverlappingInstances #-}
-
-module HTk.Toolkit.TreeList (getObjectFromTreeList) where
-
-class Eq c => CItem c
-
--- A bizarre instance decl!
--- People who use instance decls like this are asking for trouble
-instance GUIObject w => Eq w where
- w1 == w2 = toGUIObject w1 == toGUIObject w2
-
-data StateEntry a
- = StateEntry (TreeListObject a) a -- Comment this 'a' out and it type checks
- deriving Eq
-
--- The delicate point about this test is that we want to
--- infer a derived instance decl like this:
--- instance (CItem a, Eq a) => Eq (StateEntry a)
--- But note the instance decl for (Eq w) for any w!
--- There's a danger than we'll use that instance decl
--- to get the derived instance
--- instance (CItem a, GUIObject a) => Eq (StateEntry a)
--- And then that doesn't work subsequently
-
-getObjectFromTreeList :: CItem a => StateEntry a -> Bool
-getObjectFromTreeList state = state == state
-
-data CItem a => TreeListObject a
-
-instance CItem a => Eq (TreeListObject a)
-
-class GUIObject w where
- toGUIObject :: w -> GUIOBJECT
-
-
-data GUIOBJECT
-
-instance Eq GUIOBJECT where
- (==) = undefined
- (/=) = undefined
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/T4966.stderr b/testsuite/tests/ghc-regress/deriving/should_compile/T4966.stderr
deleted file mode 100644
index b8059925bb..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/T4966.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-T4966.hs:1:14:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/all.T b/testsuite/tests/ghc-regress/deriving/should_compile/all.T
deleted file mode 100644
index 22353ab2ea..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/all.T
+++ /dev/null
@@ -1,32 +0,0 @@
-test('drv001', normal, compile, [''])
-test('drv002', normal, compile, [''])
-test('drv003', normal, compile, [''])
-test('drv004', normal, compile, [''])
-test('drv005', normal, compile, [''])
-test('drv006', normal, compile, [''])
-test('drv007', normal, compile, [''])
-test('drv008', normal, compile, [''])
-test('drv009', normal, compile, [''])
-test('drv010', normal, compile, [''])
-test('drv011', normal, compile, [''])
-test('drv012', normal, compile, [''])
-test('drv013', normal, compile, [''])
-test('drv014', normal, compile, [''])
-test('drv015', normal, compile, [''])
-test('drv020', normal, compile, [''])
-test('drv021', normal, compile, [''])
-test('deriving-1935', normal, compile, [''])
-test('T2378', normal, compile, [''])
-test('T2856', normal, compile, [''])
-test('T3057', normal, compile, [''])
-test('T3012', normal, compile, [''])
-test('T3965', normal, compile, [''])
-test('T4220', normal, compile, [''])
-test('T4302', normal, compile, [''])
-test('T4325', normal, compile, [''])
-test('T4816', normal, compile, [''])
-test('T4966', normal, compile, [''])
-
-test('drv-functor1', normal, compile, [''])
-test('drv-functor2', normal, compile, [''])
-test('drv-foldable-traversable1', normal, compile, [''])
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/deriving-1935.hs b/testsuite/tests/ghc-regress/deriving/should_compile/deriving-1935.hs
deleted file mode 100644
index 5b3bca0c77..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/deriving-1935.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# OPTIONS_GHC -XDeriveDataTypeable #-}
-
--- Trac #1935
--- See Note [Superclasses of derived instance] in TcDeriv
-
-module Foo where
-
- import Data.Data
-
- data Foo a = Foo
- deriving (Data, Typeable)
-
- data T a = MkT (S a) deriving( Ord )
-
- instance Num a => Eq (T a)
-
- data S a = S
- instance Eq (S a)
- instance Ord (S a)
-
-
- \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv-foldable-traversable1.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv-foldable-traversable1.hs
deleted file mode 100644
index 712f14a3b5..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv-foldable-traversable1.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-{-# LANGUAGE DeriveFunctor, DeriveFoldable, DeriveTraversable #-}
-{-# LANGUAGE RankNTypes #-}
-{-# LANGUAGE FlexibleContexts, DatatypeContexts #-}
-
-module ShouldCompile where
-
-import Data.Foldable
-import Data.Traversable
-
-data Trivial a = Trivial
- deriving (Functor,Foldable,Traversable)
-
--- lots of different things
-data Strange a b c
- = T1 a b c
- | T2 c c c
- | T3 [a] [b] [c] -- lists
- | T4 [[a]] [[b]] [[c]] -- nested lists
- | T5 (c,(b,b),(c,c)) -- tuples
- | T6 ([c],Strange a b c) -- tycons
- deriving (Functor,Foldable,Traversable)
-
-data NotPrimitivelyRecursive a
- = S1 (NotPrimitivelyRecursive (a,a))
- | S2 a
- deriving (Functor,Foldable,Traversable)
-
-data Eq a => StupidConstraint a b = Stupid a b
- deriving (Functor,Foldable,Traversable)
-
--- requires Foldable/Traversable constraint on f and g
-data Compose f g a = Compose (f (g a))
- deriving (Functor,Foldable,Traversable)
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv-foldable-traversable1.stderr b/testsuite/tests/ghc-regress/deriving/should_compile/drv-foldable-traversable1.stderr
deleted file mode 100644
index ceae10cabd..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv-foldable-traversable1.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-drv-foldable-traversable1.hs:3:32:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv-functor1.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv-functor1.hs
deleted file mode 100644
index 8249858cae..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv-functor1.hs
+++ /dev/null
@@ -1,65 +0,0 @@
-{-# LANGUAGE DeriveFunctor #-}
-{-# LANGUAGE ExistentialQuantification #-}
-{-# LANGUAGE RankNTypes #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE DatatypeContexts #-}
-
-module ShouldCompile where
-
-data Trivial a = Trivial
- deriving (Functor)
-
-data Fun a = Fun (Int -> a)
- deriving (Functor)
-
--- lots of different things
-data Strange a b c
- = T1 a b c
- | T2 [a] [b] [c] -- lists
- | T3 [[a]] [[b]] [[c]] -- nested lists
- | T4 (c,(b,b),(c,c)) -- tuples
- | T5 ([c],Strange a b c) -- tycons
- | T6 (Int -> c) -- function types
- | T7 (a -> (c,a)) -- functions and tuples
- | T8 ((c -> a) -> a) -- continuation
- deriving (Functor)
-
-data NotPrimitivelyRecursive a
- = S1 (NotPrimitivelyRecursive (a,a))
- | S2 a
- deriving (Functor,Eq)
-
-data Eq a => StupidConstraint a b = Stupid a b
- deriving (Functor)
-
--- requires Functor constraint on f and g
-data Compose f g a = Compose (f (g a))
- deriving (Functor)
-
--- We can't derive Functor for the following type.
--- it needs both (Functor (f Int)) and (Functor (f Bool))
--- i.e.:
--- instance (Functor (f Bool), Functor (f Int)) => Functor (ComplexConstraint f)
--- This requires FlexibleContexts and UndecidableInstances
-data ComplexConstraint f a = ComplexContraint (f Int (f Bool a,a))
--- deriving (Functor)
-
-data Universal a
- = Universal (forall b. (b,[a]))
- | Universal2 (forall f. Functor f => (f a))
- | Universal3 (forall a. a -> Int) -- reuse a
- | NotReallyUniversal (forall b. a)
- deriving (Functor)
-
--- Ghc doesn't allow deriving for non-Haskell98 data constructors
-data Existential b
- = forall a. ExistentialList [a]
- | forall f. Functor f => ExistentialFunctor (f b)
- | forall b. SneakyUseSameName (b -> Bool)
- -- deriving (Functor)
-
--- Don't get confused by synonyms
-type IntFun a = Int -> a
-data IntFunD a = IntFunD (IntFun a)
- deriving (Functor)
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv-functor1.stderr b/testsuite/tests/ghc-regress/deriving/should_compile/drv-functor1.stderr
deleted file mode 100644
index a531dc56ef..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv-functor1.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-drv-functor1.hs:5:14:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv-functor2.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv-functor2.hs
deleted file mode 100644
index d070feb06d..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv-functor2.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-
-module ShouldCompile where
-
--- Deriving Functor should still work with GeneralizedNewtypeDeriving instead of DeriveFunctor
-
-newtype List a = List [a]
- deriving (Functor)
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv001.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv001.hs
deleted file mode 100644
index 694af6a50f..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv001.hs
+++ /dev/null
@@ -1,21 +0,0 @@
--- !!! canonical weird example for "deriving"
-module ShouldSucceed where
-
-data X a b
- = C1 (T a)
- | C2 (Y b)
- | C3 (X b a)
- deriving (Read, Show)
-
-data Y b
- = D1
- | D2 (X Int b)
- deriving (Read, Show)
-
-data T a
- = E1
-
-instance Eq a => Show (T a) where
- showsPrec = error "show"
-instance Eq a => Read (T a) where
- readsPrec = error "read"
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv001.stderr b/testsuite/tests/ghc-regress/deriving/should_compile/drv001.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv001.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv002.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv002.hs
deleted file mode 100644
index 15eb2d9ecc..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv002.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-module ShouldSucceed where
-
-data Z a b
- = C1 (T a)
- | C2 (Z [a] [b])
- deriving (Show, Read)
-
-data T a
- = E1
-
-instance Eq a => Show (T a) where
- showsPrec = error "show"
-instance Eq a => Read (T a) where
- readsPrec = error "read"
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv002.stderr b/testsuite/tests/ghc-regress/deriving/should_compile/drv002.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv002.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv003.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv003.hs
deleted file mode 100644
index 0b8149ce8a..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv003.hs
+++ /dev/null
@@ -1,17 +0,0 @@
--- !!! This is the example given in TcDeriv
---
-module ShouldSucceed where
-
-data T a b
- = C1 (Foo a) (Bar b)
- | C2 Int (T b a)
- | C3 (T a a)
- deriving Eq
-
-data Foo a = MkFoo Double a deriving ()
-instance (Eq a) => Eq (Foo a)
-
-data Bar a = MkBar Int Int deriving ()
-instance (Ping b) => Eq (Bar b)
-
-class Ping a
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv003.stderr b/testsuite/tests/ghc-regress/deriving/should_compile/drv003.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv003.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv004.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv004.hs
deleted file mode 100644
index 324a7f81d4..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv004.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! simple example of deriving Ord and Eq simultaneously
---
-module ShouldSucceed where
-
-data Foo a b c
- = C1 a Int
- | C2 b Double
- | C3 c String
- deriving (Eq, Ord)
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv004.stderr b/testsuite/tests/ghc-regress/deriving/should_compile/drv004.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv004.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv005.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv005.hs
deleted file mode 100644
index 527dde98b9..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv005.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! simple example of deriving Enum
---
-module ShouldSucceed where
-
-data Foo = Foo1 | Foo2 | Foo3 | Foo4 | Foo5 | Foo6 | Foo7 | Foo8
- deriving Enum
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv005.stderr b/testsuite/tests/ghc-regress/deriving/should_compile/drv005.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv005.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv006.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv006.hs
deleted file mode 100644
index 62f2cbcf67..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv006.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! simple examples of deriving Ix
---
-module ShouldSucceed where
-import Data.Ix
-
-data Foo = Foo1 | Foo2 | Foo3 | Foo4 | Foo5 | Foo6 | Foo7 | Foo8
- deriving (Eq, Ord, Ix, Show)
-
-data Bar a b = MkBar a Int b Integer a
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv006.stderr b/testsuite/tests/ghc-regress/deriving/should_compile/drv006.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv006.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv007.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv007.hs
deleted file mode 100644
index 22da5b4aa3..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv007.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! deriving Ord on d. type with a single nullary constructor.
--- (from ghc-2.10 panic - as reported by Sergey Mechveliani <mechvel@botik.ru>)
---
-module ShouldSucceed where
-
-data D = D deriving (Eq,Ord)
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv007.stderr b/testsuite/tests/ghc-regress/deriving/should_compile/drv007.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv007.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv008.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv008.hs
deleted file mode 100644
index b615809caa..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv008.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! deriving Ix on d. type with nullary constructors
-module ShouldSucceed where
-
-import Data.Ix
-
-data AD = A | B | C | D deriving (Show, Ord, Eq, Ix)
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv008.stderr b/testsuite/tests/ghc-regress/deriving/should_compile/drv008.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv008.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv009.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv009.hs
deleted file mode 100644
index 4ac069d30c..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv009.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! deriving Ix on d. type with one constructor
-module ShouldSucceed where
-
-import Data.Ix
-
-data Pair a b = Pair a b deriving (Show, Ord, Eq, Ix)
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv009.stderr b/testsuite/tests/ghc-regress/deriving/should_compile/drv009.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv009.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv010.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv010.hs
deleted file mode 100644
index 1a3f9dc33a..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv010.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! deriving Enum on d. type with nullary constructors
-module ShouldSucceed where
-
-data AD = A | B | C | D deriving (Enum)
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv010.stderr b/testsuite/tests/ghc-regress/deriving/should_compile/drv010.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv010.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv011.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv011.hs
deleted file mode 100644
index bba25f5cae..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv011.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! deriving Enum, but not Ord.
-module ShouldSucceed where
-
-data ABC = A | B | C deriving Enum
-
-x = [A ..C]
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv012.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv012.hs
deleted file mode 100644
index eb8f3847cd..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv012.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- !!! deriving for GADTs which declare Haskell98 data types.
--- bug reported as http://hackage.haskell.org/trac/ghc/ticket/902
-module ShouldSucceed where
-
-data Maybe1 a where {
- Nothing1 :: Maybe1 a ;
- Just1 :: a -> Maybe1 a
- } deriving (Eq,Ord)
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv013.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv013.hs
deleted file mode 100644
index 1686bcc232..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv013.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-
--- Deriving Typeable has various special cases
-module Foo where
-
-import Data.Typeable
-
-data Foo1 = Foo1 deriving( Typeable )
-data Foo2 a = Foo2 a deriving( Typeable )
-data Foo3 a b = Foo3 a b deriving( Typeable )
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv014.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv014.hs
deleted file mode 100644
index 12e2a15b3f..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv014.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE StandaloneDeriving, GeneralizedNewtypeDeriving #-}
-
-module ShouldCompile where
-
-data T a = T1 a | T2
-newtype N = MkN Int
-
-deriving instance Eq a => Eq (T a)
-deriving instance Num N
-deriving instance Eq N
-deriving instance Show N
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv015.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv015.hs
deleted file mode 100644
index f8cfbce2db..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv015.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-
--- July 07: I'm changing this from "should_compile" to "should_fail".
--- It would generate an instance decl like
--- insance (Show (f a), Show (g a)) => Show (Pair1 f g a)
--- and that is not Haskell 98.
---
--- See Note [Exotic derived instance contexts] in TcSimplify.
--- The rule is simple: the context of a derived instance decl must
--- contain constraints of form (C tyvar) only, just as H98.
-
-module ShouldCompile where
-
-newtype Pair1 f g a = Pair1 {unPair1 :: (f a, g a)}
- deriving (Eq, Ord, Show)
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv020.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv020.hs
deleted file mode 100644
index 8794b745e5..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv020.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances, GeneralizedNewtypeDeriving #-}
-
--- Test deriving of a multi-parameter class for
--- one-argument newtype defined in the same module
-module ShouldSucceed where
-
--- library stuff
-
-class Monad m => MonadState s m | m -> s where
- get :: m s
- put :: s -> m ()
-
-newtype State s a = State {
- runState :: (s -> (a, s))
- }
-
-instance Monad (State s) where
- return a = State $ \s -> (a, s)
- m >>= k = State $ \s -> let
- (a, s') = runState m s
- in runState (k a) s'
-
-instance MonadState s (State s) where
- get = State $ \s -> (s, s)
- put s = State $ \_ -> ((), s)
-
--- test code
-
-newtype Foo a = MkFoo (State Int a)
- deriving (Monad, MonadState Int)
-
-f :: Foo Int
-f = get
diff --git a/testsuite/tests/ghc-regress/deriving/should_compile/drv021.hs b/testsuite/tests/ghc-regress/deriving/should_compile/drv021.hs
deleted file mode 100644
index c9800508de..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_compile/drv021.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# OPTIONS_GHC -XDeriveDataTypeable -XStandaloneDeriving #-}
-
--- See Trac #1825
--- Test stand-alone deriving for Typeable
--- Horridly, one needs to define instance for Typeable1 etc
-
-module ShouldCompile where
-
-import Data.Typeable
-
-data T1 a = T1 a
-data T2 a b = T2 a b
-
-deriving instance Typeable1 T1
-deriving instance Typeable2 T2
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/Makefile b/testsuite/tests/ghc-regress/deriving/should_fail/Makefile
deleted file mode 100644
index e527b6115d..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/Makefile
+++ /dev/null
@@ -1,8 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-drvfail016:
- $(RM) -f drvfail016.hi-boot drvfail016.o-boot
- '$(TEST_HC)' $(TEST_HC_OPTS) -XGeneralizedNewtypeDeriving -c drvfail016.hs-boot; echo $$?
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T2394.hs b/testsuite/tests/ghc-regress/deriving/should_fail/T2394.hs
deleted file mode 100644
index 6e62bc364e..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T2394.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# OPTIONS_GHC -XDeriveDataTypeable -XStandaloneDeriving #-}
-
--- Test Trac #2394
-
-module Foo where
-
-import Data.Data(Data)
-
-deriving instance (Data a,Data b) => Data (a->b)
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T2394.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/T2394.stderr
deleted file mode 100644
index 9972186ed5..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T2394.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-T2394.hs:9:1:
- Can't make a derived instance of `Data (a -> b)':
- The last argument of the instance must be a data or newtype application
- In the stand-alone deriving instance for
- `(Data a, Data b) => Data (a -> b)'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T2604.hs b/testsuite/tests/ghc-regress/deriving/should_fail/T2604.hs
deleted file mode 100644
index 0f830d992b..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T2604.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-
-module Test where
-
-import Data.Typeable
-
-data DList a = DList [a] deriving(Typeable)
-
-newtype NList a = NList [a] deriving(Typeable)
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T2604.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/T2604.stderr
deleted file mode 100644
index fa09654c5b..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T2604.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-T2604.hs:7:35:
- Can't make a derived instance of `Typeable (DList a)':
- You need -XDeriveDataTypeable to derive an instance for this class
- In the data type declaration for `DList'
-
-T2604.hs:9:38:
- Can't make a derived instance of `Typeable (NList a)':
- You need -XDeriveDataTypeable to derive an instance for this class
- In the newtype declaration for `NList'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T2604.stderr-7.0 b/testsuite/tests/ghc-regress/deriving/should_fail/T2604.stderr-7.0
deleted file mode 100644
index aa996e0f87..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T2604.stderr-7.0
+++ /dev/null
@@ -1,11 +0,0 @@
-
-T2604.hs:7:35:
- Can't make a derived instance of `Typeable (DList a)':
- You need -XDeriveDataTypeable to derive an instance for this class
- In the data type declaration for `DList'
-
-T2604.hs:9:38:
- Can't make a derived instance of `Typeable (NList a)'
- (even with cunning newtype deriving):
- You need -XDeriveDataTypeable to derive an instance for this class
- In the newtype declaration for `NList'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T2701.hs b/testsuite/tests/ghc-regress/deriving/should_fail/T2701.hs
deleted file mode 100644
index 37bffc827d..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T2701.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE MagicHash, DeriveDataTypeable #-}
-module T2700 where
-
-import GHC.Prim
-
-import Data.Data
-import Data.Typeable
-
-data Foo = MkFoo Int#
- deriving (Typeable, Data)
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T2701.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/T2701.stderr
deleted file mode 100644
index a9181accc1..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T2701.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T2701.hs:10:32:
- Can't make a derived instance of `Data Foo':
- Constructor `MkFoo' must have only arguments of lifted type
- In the data type declaration for `Foo'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T2721.hs b/testsuite/tests/ghc-regress/deriving/should_fail/T2721.hs
deleted file mode 100644
index f6485ce514..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T2721.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TypeFamilies, GeneralizedNewtypeDeriving #-}
-
--- Trac #2721
-
-module T2721 where
-
-class C a where
- type T a
- foo :: a -> T a
-
-instance C Int where
- type T Int = Int
- foo = id
-
-newtype N = N Int deriving(C)
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T2721.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/T2721.stderr
deleted file mode 100644
index 03339d3bfa..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T2721.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-T2721.hs:15:28:
- Can't make a derived instance of `C N'
- (even with cunning newtype deriving):
- the class has associated types
- In the newtype declaration for `N'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T2851.hs b/testsuite/tests/ghc-regress/deriving/should_fail/T2851.hs
deleted file mode 100644
index bc7239af0a..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T2851.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
--- Test Trac #2851
-
-module T2851 where
-
-type family F a :: *
-
-data D a = D (F a)
- deriving (Show)
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T2851.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/T2851.stderr
deleted file mode 100644
index a2beb9869d..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T2851.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-T2851.hs:9:15:
- No instance for (Show (F a))
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Show (F a))
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Show (D a))
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T3101.hs b/testsuite/tests/ghc-regress/deriving/should_fail/T3101.hs
deleted file mode 100644
index 134694a4fe..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T3101.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-{-# LANGUAGE RankNTypes #-}
-
-module T3101 where
-
-type family F a :: *
-
-data Boom = Boom (forall a. F a)
- deriving Show
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T3101.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/T3101.stderr
deleted file mode 100644
index 34f423daff..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T3101.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-T3101.hs:9:12:
- Can't make a derived instance of `Show Boom':
- Constructor `Boom' must have a Haskell-98 type
- Possible fix: use a standalone deriving declaration instead
- In the data type declaration for `Boom'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T3621.hs b/testsuite/tests/ghc-regress/deriving/should_fail/T3621.hs
deleted file mode 100644
index cd574eab81..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T3621.hs
+++ /dev/null
@@ -1,36 +0,0 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving, MultiParamTypeClasses, FlexibleInstances, FunctionalDependencies, FlexibleContexts, UndecidableInstances, StandaloneDeriving #-}
-module T3621 where
-
--- This one is ok, even though the deriving clause mentions 'a'
--- which is not a parameter of 'T'
-class C a b
-instance C a S
-data S = MkS
-
-newtype T = MkT S deriving( C a )
-
-
--- But this one fails, and should fail
-class (Monad m) => MonadState s m | m -> s where
-
-newtype State s a = State { runState :: s -> (a, s) }
-instance Monad (State s) where {}
-instance MonadState s (State s) where {}
-
-newtype WrappedState s a = WS { runWS :: State s a }
- deriving (Monad, MonadState state)
--- deriving (Monad)
-
-deriving instance (MonadState state (State s))
- => MonadState state (WrappedState s)
-
--- ASSERT error
--- deriving instance (MonadState state (State s), Monad (WrappedState s))
--- => MonadState s (WrappedState s)
-
-
--- We try
--- instance MonadState state (State state a)
--- => MonadState state (WrappedState state a)
---
--- Superclass needs (Monad (WrappedState state a))
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T3621.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/T3621.stderr
deleted file mode 100644
index dc9dc849ab..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T3621.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-T3621.hs:21:21:
- Couldn't match type `s' with `state'
- `s' is an unknown type variable
- `state' is an unknown type variable
- When using functional dependencies to combine
- MonadState s (State s),
- arising from the dependency `m -> s'
- in the instance declaration at T3621.hs:18:10
- MonadState state (State s),
- arising from the 'deriving' clause of a data type declaration
- at T3621.hs:21:21-36
- When deriving the instance for (MonadState state (WrappedState s))
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T3833.hs b/testsuite/tests/ghc-regress/deriving/should_fail/T3833.hs
deleted file mode 100644
index d1196c4112..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T3833.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-{-# LANGUAGE StandaloneDeriving #-}
--- {-# LANGUAGE GeneralizedNewtypeDeriving #-}
-
-import Data.Monoid
-
-newtype DecodeMap e = DecodeMap [e]
-
-deriving instance Monoid (DecodeMap e)
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T3833.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/T3833.stderr
deleted file mode 100644
index 2d31cc1364..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T3833.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-T3833.hs:9:1:
- Can't make a derived instance of `Monoid (DecodeMap e)':
- `Monoid' is not a derivable class
- Try -XGeneralizedNewtypeDeriving for GHC's newtype-deriving extension
- In the stand-alone deriving instance for `Monoid (DecodeMap e)'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T3834.hs b/testsuite/tests/ghc-regress/deriving/should_fail/T3834.hs
deleted file mode 100644
index 614170198e..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T3834.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-{-# LANGUAGE StandaloneDeriving #-}
-
-class C a
-instance C Int
-
-newtype T = T Int
-deriving instance C T
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T3834.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/T3834.stderr
deleted file mode 100644
index 199b4bb799..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T3834.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-T3834.hs:8:1:
- Can't make a derived instance of `C T':
- `C' is not a derivable class
- Try -XGeneralizedNewtypeDeriving for GHC's newtype-deriving extension
- In the stand-alone deriving instance for `C T'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T4528.hs b/testsuite/tests/ghc-regress/deriving/should_fail/T4528.hs
deleted file mode 100644
index 23a8510d98..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T4528.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE GADTs, StandaloneDeriving #-}
-
-module T4528 where
-
-data Foo a where
- A, B :: Foo Int
- C :: Foo Bool
-
-deriving instance Enum (Foo a)
-deriving instance Bounded (Foo a)
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/T4528.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/T4528.stderr
deleted file mode 100644
index 8f008e8908..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/T4528.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-
-T4528.hs:9:1:
- Can't make a derived instance of `Enum (Foo a)':
- `Foo' must be an enumeration type
- (an enumeration consists of one or more nullary, non-GADT constructors)
- In the stand-alone deriving instance for `Enum (Foo a)'
-
-T4528.hs:10:1:
- Can't make a derived instance of `Bounded (Foo a)':
- `Foo' must be an enumeration type
- (an enumeration consists of one or more nullary, non-GADT constructors)
- or
- `Foo' must have precisely one constructor
- In the stand-alone deriving instance for `Bounded (Foo a)'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/all.T b/testsuite/tests/ghc-regress/deriving/should_fail/all.T
deleted file mode 100644
index 8fa5e27e60..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/all.T
+++ /dev/null
@@ -1,35 +0,0 @@
-
-test('drvfail001', normal, compile_fail, [''])
-test('drvfail002', normal, compile_fail, [''])
-test('drvfail003', normal, compile_fail, [''])
-test('drvfail004', normal, compile_fail, [''])
-test('drvfail005', normal, compile_fail, [''])
-test('drvfail006', reqlib('mtl'), compile_fail, [''])
-test('drvfail007', normal, compile_fail, [''])
-test('drvfail008', reqlib('mtl'), compile_fail, [''])
-test('drvfail009', normal, compile_fail, [''])
-test('drvfail010', normal, compile_fail, [''])
-test('drvfail011', normal, compile_fail, [''])
-test('drvfail012', normal, compile_fail, [''])
-test('drvfail013', normal, compile_fail, [''])
-test('drvfail014', normal, compile_fail, [''])
-test('drvfail015', normal, compile_fail, [''])
-test('drvfail016',
- extra_clean(['drvfail016.hi-boot', 'drvfail016.o-boot']),
- run_command,
- ['$MAKE --no-print-directory -s drvfail016'])
-test('T2394', normal, compile_fail, [''])
-test('T2604', normal, compile_fail, [''])
-test('T2701', normal, compile_fail, [''])
-test('T2851', normal, compile_fail, [''])
-test('T2721', normal, compile_fail, [''])
-test('T3101', normal, compile_fail, [''])
-test('T3621', normal, compile_fail, [''])
-test('drvfail-functor1', normal, compile_fail, [''])
-test('drvfail-functor2', normal, compile_fail, [''])
-test('drvfail-foldable-traversable1', normal, compile_fail,
- [''])
-test('T3833', normal, compile_fail, [''])
-test('T3834', normal, compile_fail, [''])
-test('T4528', normal, compile_fail, [''])
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-foldable-traversable1.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-foldable-traversable1.hs
deleted file mode 100644
index ced3f98c63..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-foldable-traversable1.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE DeriveFunctor, DeriveFoldable, DeriveTraversable #-}
-module ShouldFail where
-
-import Data.Foldable
-import Data.Traversable
-
--- Derive Traversable without Functor
-data Trivial1 a = Trivial1 a
- deriving (Foldable,Traversable)
-
--- Derive Traversable without Foldable
-data Trivial2 a = Trivial2 a
- deriving (Functor,Traversable)
-
--- Foldable with function type
-data Infinite a = Infinite (Int -> a)
- deriving (Functor,Foldable,Traversable)
-
--- Foldable with function type
-data Cont r a = Cont ((a -> r) -> r)
- deriving (Functor,Foldable,Traversable)
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-foldable-traversable1.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-foldable-traversable1.stderr
deleted file mode 100644
index ecd20e8372..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-foldable-traversable1.stderr
+++ /dev/null
@@ -1,38 +0,0 @@
-
-drvfail-foldable-traversable1.hs:9:23:
- No instance for (Functor Trivial1)
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Functor Trivial1)
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Traversable Trivial1)
-
-drvfail-foldable-traversable1.hs:13:22:
- No instance for (Foldable Trivial2)
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Foldable Trivial2)
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Traversable Trivial2)
-
-drvfail-foldable-traversable1.hs:17:22:
- Can't make a derived instance of `Foldable Infinite':
- Constructor `Infinite' must not contain function types
- In the data type declaration for `Infinite'
-
-drvfail-foldable-traversable1.hs:17:31:
- Can't make a derived instance of `Traversable Infinite':
- Constructor `Infinite' must not contain function types
- In the data type declaration for `Infinite'
-
-drvfail-foldable-traversable1.hs:21:22:
- Can't make a derived instance of `Foldable (Cont r)':
- Constructor `Cont' must not contain function types
- In the data type declaration for `Cont'
-
-drvfail-foldable-traversable1.hs:21:31:
- Can't make a derived instance of `Traversable (Cont r)':
- Constructor `Cont' must not contain function types
- In the data type declaration for `Cont'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor1.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor1.hs
deleted file mode 100644
index 94ebd925b8..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor1.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldFail where
-
--- Derive Functor without a DeriveFunctor language pragma
-
-data List a = Nil | Cons a (List a)
- deriving Functor
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor1.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor1.stderr
deleted file mode 100644
index d221f99f9d..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor1.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-drvfail-functor1.hs:6:14:
- Can't make a derived instance of `Functor List':
- You need -XDeriveFunctor to derive an instance for this class
- In the data type declaration for `List'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor2.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor2.hs
deleted file mode 100644
index 7198755b80..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor2.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE DeriveFunctor, DatatypeContexts #-}
-module ShouldFail where
-
--- Derive Functor on a type that uses 'a' in the wrong places
-
-newtype InFunctionArgument a = InFunctionArgument (a -> Int)
- deriving (Functor)
-
-newtype OnSecondArg a = OnSecondArg (Either a a)
- deriving (Functor)
-
--- Derive Functor on a type with no arguments
-
-newtype NoArguments = NoArguments Int
- deriving (Functor)
-
--- Derive Functor on a type with extra stupid-contraints on 'a'
-
-data Eq a => StupidConstraint a = StupidType a
- deriving (Functor)
-
--- A missing Functor instance
-
-data NoFunctor a = NoFunctor
-data UseNoFunctor a = UseNoFunctor (NoFunctor a)
- deriving (Functor)
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor2.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor2.stderr
deleted file mode 100644
index 7ce404666f..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail-functor2.stderr
+++ /dev/null
@@ -1,32 +0,0 @@
-
-drvfail-functor2.hs:1:29:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
-
-drvfail-functor2.hs:7:14:
- Can't make a derived instance of `Functor InFunctionArgument':
- Constructor `InFunctionArgument' must not use the type variable in a function argument
- In the newtype declaration for `InFunctionArgument'
-
-drvfail-functor2.hs:10:14:
- Can't make a derived instance of `Functor OnSecondArg':
- Constructor `OnSecondArg' must not use the type variable in an argument other than the last
- In the newtype declaration for `OnSecondArg'
-
-drvfail-functor2.hs:15:14:
- Cannot derive well-kinded instance of form `Functor (NoArguments ...)'
- Class `Functor' expects an argument of kind `* -> *'
- In the newtype declaration for `NoArguments'
-
-drvfail-functor2.hs:20:14:
- Can't make a derived instance of `Functor StupidConstraint':
- Data type `StupidConstraint' must not have a class context (Eq a)
- In the data type declaration for `StupidConstraint'
-
-drvfail-functor2.hs:26:14:
- No instance for (Functor NoFunctor)
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Functor NoFunctor)
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Functor UseNoFunctor)
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail001.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail001.hs
deleted file mode 100644
index 47447fb3e3..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail001.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{- From: Ian Bayley
- Sent: Tuesday, June 29, 1999 3:39 PM
- To: hugs-bugs@haskell.org
- Subject: Show for higher-order nested datatypes
-
-
- Is "deriving Show" meant to work for higher-order nested datatypes ?
- Hugs hangs when loading in the following file:
--}
-
-module Foo where
-
-type SqMat a = SM Nil a
-
-data SM f a = ZeroS (f (f a)) | SuccS (SM (Cons f) a)
- deriving Show
-
--- Show (f (f a)), Show (SM (Cons f) a) => Show (SM f a)
-
-data Nil a = MkNil deriving Show
-
-data Cons f a = MkCons a (f a)
- deriving Show
-
-
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail001.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail001.stderr
deleted file mode 100644
index a2a149594c..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail001.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-drvfail001.hs:16:33:
- No instance for (Show (f (f a)))
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Show (f (f a)))
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Show (SM f a))
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail002.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail002.hs
deleted file mode 100644
index 26a8f083d2..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail002.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE UndecidableInstances,
- MultiParamTypeClasses, FunctionalDependencies #-}
-
--- The Show instance for S would have form
--- instance X T c => Show S
--- which is hard to deal with. It sent GHC 5.01 into
--- an infinite loop; now it should be rejected.
-
-module ShouldFail where
-
-data T = T Integer
-
-class X a b | a -> b where
- f :: a -> b
-
-instance X T c => Show T where
- show _ = ""
-
-data S = S T deriving Show
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail002.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail002.stderr
deleted file mode 100644
index c174c69055..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail002.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-drvfail002.hs:16:10:
- Ambiguous constraint `X T c'
- At least one of the forall'd type variables mentioned by the constraint
- must be reachable from the type after the '=>'
- In the instance declaration for `Show T'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail002.stderr-hugs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail002.stderr-hugs
deleted file mode 100644
index b67a94ef5c..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail002.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "drvfail002.hs":18 - An instance of X T a is required to derive Show S
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail003.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail003.hs
deleted file mode 100644
index 5d22dc1d4a..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail003.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE FlexibleContexts #-}
--- Made GHC 5.02.2 go into a loop when doing the
--- context inference for deriving. It only happened with
--- the -fglasgow-exts flag (it didn't diverge without),
--- so hopefully FlexibleContexts is the relevant extension.
-
-module ShouldFail where
-
-data Empty a = E
-newtype Id a = I a
-newtype Pair v w a = P ((v a), (w a))
-type Square a = Square_ Empty Id a
-data Square_ v w a =
- End (v (v a))
- | Zero (Square_ v (Pair w w) a)
- | One (Square_ (Pair v w) (Pair w w) a) deriving Show
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail003.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail003.stderr
deleted file mode 100644
index 4aa98531b8..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail003.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-drvfail003.hs:16:56:
- No instance for (Show (v (v a)))
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Show (v (v a)))
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Show (Square_ v w a))
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail003.stderr-hugs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail003.stderr-hugs
deleted file mode 100644
index 0dab54095c..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail003.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "drvfail003.hs":13 - An instance of Show (Pair a b (Pair a b c)) is required to derive Show (Square_ a b c)
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail004.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail004.hs
deleted file mode 100644
index 8716a5837f..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail004.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! deriving Ord without deriving Eq
---
-module ShouldFail where
-
-data Foo a b
- = C1 a Int
- | C2 b Double
- deriving Ord
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail004.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail004.stderr
deleted file mode 100644
index d08f315cb7..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail004.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-drvfail004.hs:8:12:
- No instance for (Eq (Foo a b))
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Eq (Foo a b))
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Ord (Foo a b))
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail004.stderr-hugs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail004.stderr-hugs
deleted file mode 100644
index 4370d8e96c..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail004.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "drvfail004.hs":6 - Cannot build superclass instance
-*** Instance : Ord (Foo a b)
-*** Context supplied : (Ord a, Ord b)
-*** Required superclass : Eq (Foo a b)
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail005.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail005.hs
deleted file mode 100644
index ee44e2f343..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail005.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldFail where
-
-data Test a = T a
- deriving( Show a, Read )
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail005.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail005.stderr
deleted file mode 100644
index e27f3c1fd2..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail005.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-drvfail005.hs:4:13:
- Can't make a derived instance of `Show a (Test a)':
- `Show a' is not a class
- In the data type declaration for `Test'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail006.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail006.hs
deleted file mode 100644
index 0d8d1a95d9..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail006.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-
--- Testing the newtype-deriving stuff
-
-module ShouldFail where
-
-import Control.Monad.State
-
-newtype T a = T (StateT Int IO a) deriving( MonadState )
- -- Here MonadState takes two type params,
- -- but exactly one is needed. \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail006.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail006.stderr
deleted file mode 100644
index 018291b6bb..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail006.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-drvfail006.hs:9:45:
- Can't make a derived instance of `MonadState T'
- (even with cunning newtype deriving):
- `MonadState' does not have arity 1
- In the newtype declaration for `T'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail006.stderr-hugs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail006.stderr-hugs
deleted file mode 100644
index b4c1c277a0..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail006.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "drvfail006.hs":9 - Cannot derive instances of class "MonadState"
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail007.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail007.hs
deleted file mode 100644
index 74f9f033d3..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail007.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! buggy deriving with function type, reported by Sigbjorn Finne
-module ShouldFail where
-
-data Foo = Foo (Int -> Int) deriving Eq
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail007.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail007.stderr
deleted file mode 100644
index 7dc7124fd1..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail007.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-drvfail007.hs:4:38:
- No instance for (Eq (Int -> Int))
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Eq (Int -> Int))
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Eq Foo)
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail007.stderr-hugs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail007.stderr-hugs
deleted file mode 100644
index 3285aeeb78..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail007.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "drvfail007.hs":4 - An instance of Eq (Int -> Int) is required to derive Eq Foo
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail008.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail008.hs
deleted file mode 100644
index af8628b4d5..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail008.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- Should fail without GeneralizedNewtypeDeriving
--- Succeeds with GeneralizedNewtypeDeriving
-
-module ShouldFail where
-
-import Control.Monad.State
-
-data S = S Int
-
-newtype M a = M (StateT S IO a) deriving( Monad )
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail008.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail008.stderr
deleted file mode 100644
index 9b56dfb1d7..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail008.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-drvfail008.hs:10:43:
- Can't make a derived instance of `Monad M':
- `Monad' is not a derivable class
- Try -XGeneralizedNewtypeDeriving for GHC's newtype-deriving extension
- In the newtype declaration for `M'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail009.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail009.hs
deleted file mode 100644
index 06155c38a1..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail009.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving, MultiParamTypeClasses #-}
-
--- Various newtype-deriving failures
-
-module ShouldFail where
-
-
-class C a b
-
-newtype T1 = T1 Int deriving( C )
- -- Wrong arity
-
-newtype T2 = T2 Int deriving( Monad )
- -- Type constructor has wrong kind
-
-newtype T3 a = T3 Int deriving( Monad )
- -- Rep type has wrong kind
-
-newtype T4 a = T4 (Either a a) deriving( Monad )
- -- Eta fails
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail009.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail009.stderr
deleted file mode 100644
index 7594baef39..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail009.stderr
+++ /dev/null
@@ -1,23 +0,0 @@
-
-drvfail009.hs:10:31:
- Can't make a derived instance of `C T1'
- (even with cunning newtype deriving):
- `C' does not have arity 1
- In the newtype declaration for `T1'
-
-drvfail009.hs:13:31:
- Cannot derive well-kinded instance of form `Monad (T2 ...)'
- Class `Monad' expects an argument of kind `* -> *'
- In the newtype declaration for `T2'
-
-drvfail009.hs:16:33:
- Can't make a derived instance of `Monad T3'
- (even with cunning newtype deriving):
- cannot eta-reduce the representation type enough
- In the newtype declaration for `T3'
-
-drvfail009.hs:19:42:
- Can't make a derived instance of `Monad T4'
- (even with cunning newtype deriving):
- cannot eta-reduce the representation type enough
- In the newtype declaration for `T4'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail009.stderr-hugs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail009.stderr-hugs
deleted file mode 100644
index 79fba84f61..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail009.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "drvfail009.hs":10 - Cannot derive instances of class "C"
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail010.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail010.hs
deleted file mode 100644
index efecf07cf1..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail010.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-
-module ShouldFail where
-import Data.Typeable
-
-data A a b c d e f g h i j = A deriving (Typeable)
- -- Too many args
-
-data B a b = B (a b) deriving (Typeable)
- -- Non type-kind args \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail010.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail010.stderr
deleted file mode 100644
index a61fb4892f..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail010.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-drvfail010.hs:6:42:
- Can't make a derived instance of
- `Typeable (A a b c d e f g h i j)':
- `A' must have 7 or fewer arguments
- In the data type declaration for `A'
-
-drvfail010.hs:9:32:
- Can't make a derived instance of `Typeable (B a b)':
- `B' must only have arguments of kind `*'
- In the data type declaration for `B'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail010.stderr-hugs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail010.stderr-hugs
deleted file mode 100644
index f6479975a5..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail010.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "drvfail010.hs":6 - Cannot derive instances of class "Typeable"
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail011.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail011.hs
deleted file mode 100644
index 33e35c4d83..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail011.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE StandaloneDeriving #-}
-
-module ShouldFail where
-
-data T a = T1 a | T2
-
--- This fails as we need an (Eq a) context
-deriving instance Eq (T a)
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail011.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail011.stderr
deleted file mode 100644
index 80e486628b..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail011.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-drvfail011.hs:8:1:
- No instance for (Eq a)
- arising from a use of `=='
- In the expression: ((a1 == b1))
- In an equation for `==': == (T1 a1) (T1 b1) = ((a1 == b1))
- When typechecking the code for `=='
- in a standalone derived instance for `Eq (T a)':
- To see the code I am typechecking, use -ddump-deriv
- In the instance declaration for `Eq (T a)'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail012.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail012.hs
deleted file mode 100644
index 4a073bbed1..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail012.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- Trac #1608
-
-module ShouldFail where
-
-newtype Ego a = Ego a deriving (Ord)
-
-f :: Ord a => Ego a -> Ego a -> Bool
-f e1 e2 = e1 < e2
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail012.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail012.stderr
deleted file mode 100644
index 22fac4887d..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail012.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-drvfail012.hs:5:33:
- No instance for (Eq (Ego a))
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Eq (Ego a))
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Ord (Ego a))
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail013.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail013.hs
deleted file mode 100644
index d8a7322dba..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail013.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
--- Test for trac #1588: unrequested generalized newtype deriving?
-
-newtype MaybeT m a = MaybeT { runMaybeT :: m (Maybe a) } deriving Eq
-
-data MaybeT' m a = MaybeT' { runMaybeT' :: m (Maybe a) } deriving Eq
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail013.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail013.stderr
deleted file mode 100644
index 94927cd790..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail013.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-
-drvfail013.hs:4:70:
- No instance for (Eq (m (Maybe a)))
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Eq (m (Maybe a)))
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Eq (MaybeT m a))
-
-drvfail013.hs:6:70:
- No instance for (Eq (m (Maybe a)))
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Eq (m (Maybe a)))
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Eq (MaybeT' m a))
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail014.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail014.hs
deleted file mode 100644
index 9039332f29..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail014.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# OPTIONS_GHC -XDeriveDataTypeable -XStandaloneDeriving #-}
-
--- See Trac #1825
-
-module ShouldFail where
-import Data.Typeable
-
-data T1 a = T1 a deriving( Typeable1 )
-
-data T2 a b = T2 a b
-
-deriving instance (Typeable a, Typeable b) => Typeable (T2 a b)
- -- c.f. drv021.hs
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail014.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail014.stderr
deleted file mode 100644
index 865a78c44e..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail014.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-drvfail014.hs:8:28:
- Use deriving( Typeable ) on a data type declaration
- In the data type declaration for `T1'
-
-drvfail014.hs:12:1:
- Derived typeable instance must be of form (Typeable2 T2)
- In the stand-alone deriving instance for
- `(Typeable a, Typeable b) => Typeable (T2 a b)'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail015.hs b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail015.hs
deleted file mode 100644
index 32d6134d34..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail015.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# OPTIONS_GHC -XStandaloneDeriving #-}
-
-module ShouldFail where
-
-import System.IO( Handle )
-
-
--- T is a synonym
-type T = Int
-deriving instance Eq T
-
--- Handle is abstract
-deriving instance Eq Handle
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail015.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail015.stderr
deleted file mode 100644
index a7d8ac6cf1..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail015.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-drvfail015.hs:10:19:
- Illegal instance declaration for `Eq T'
- (All instance types must be of the form (T t1 ... tn)
- where T is not a synonym.
- Use -XTypeSynonymInstances if you want to disable this.)
- In the stand-alone deriving instance for `Eq T'
-
-drvfail015.hs:13:1:
- Can't make a derived instance of `Eq Handle':
- The data constructors of `Handle' are not all in scope
- so you cannot derive an instance for it
- In the stand-alone deriving instance for `Eq Handle'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail015.stderr-7.0 b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail015.stderr-7.0
deleted file mode 100644
index 9f0166e9cd..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail015.stderr-7.0
+++ /dev/null
@@ -1,12 +0,0 @@
-
-drvfail015.hs:10:19:
- Illegal instance declaration for `Eq T'
- (All instance types must be of the form (T t1 ... tn)
- where T is not a synonym.
- Use -XTypeSynonymInstances if you want to disable this.)
- In the stand-alone deriving instance for `Eq T'
-
-drvfail015.hs:13:1:
- The data constructors of `Handle' are not all in scope
- so you cannot derive an instance for it
- In the stand-alone deriving instance for `Eq Handle'
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail016.hs-boot b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail016.hs-boot
deleted file mode 100644
index b3a388f736..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail016.hs-boot
+++ /dev/null
@@ -1,7 +0,0 @@
-
--- trac #2449
-
-module A where
-
-data D
- deriving Show
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail016.stderr b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail016.stderr
deleted file mode 100644
index 1bcb7363b1..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail016.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-drvfail016.hs-boot:6:1:
- Deriving not permitted in hs-boot file
- Use an instance declaration instead
diff --git a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail016.stdout b/testsuite/tests/ghc-regress/deriving/should_fail/drvfail016.stdout
deleted file mode 100644
index d00491fd7e..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_fail/drvfail016.stdout
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/Makefile b/testsuite/tests/ghc-regress/deriving/should_run/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/T2529.hs b/testsuite/tests/ghc-regress/deriving/should_run/T2529.hs
deleted file mode 100644
index d3c3a4b0a3..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/T2529.hs
+++ /dev/null
@@ -1,21 +0,0 @@
--- Trac #2529
--- The example below successfully performed the {{{show}}}, but {{{reads}}}
--- returns an empty list. It fails in both GHCi and GHC. It succeeds if you
--- replaces the infix symbol with a name.
-
-module Main where
-
-data A = (:<>:) { x :: Int, y :: Int } deriving (Read, Show)
-
-t :: A
-t = 1 :<>: 2
-
-s :: String
-s = show t
-
-r :: [(A,String)]
-r = reads s
-
-main :: IO ()
-main = do putStrLn s
- putStrLn (show r)
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/T2529.stdout b/testsuite/tests/ghc-regress/deriving/should_run/T2529.stdout
deleted file mode 100644
index 6c5fe6896f..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/T2529.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-(:<>:) {x = 1, y = 2}
-[((:<>:) {x = 1, y = 2},"")]
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/T3087.hs b/testsuite/tests/ghc-regress/deriving/should_run/T3087.hs
deleted file mode 100644
index 7cba3d9609..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/T3087.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-{-# LANGUAGE RankNTypes, DeriveDataTypeable #-}
-
-module Main where
-
-import Data.Generics
-
-data MyMaybe a = MyNothing | MyJust a deriving (Data, Typeable)
-
-test1 :: ()
-test1 = undefined `ext1Q` (\ (Just _) -> ()) $ Just ()
-
-test1' :: ()
-test1' = undefined `ext1Q` (\ (MyJust _) -> ()) $ MyJust ()
-
-newtype Q r a = Q { unQ :: a -> r }
-
-ext2Q :: (Data d, Typeable2 t)
- => (d -> q) -> (forall d1 d2. (Data d1, Data d2) => t d1 d2 -> q)
- -> d -> q
-ext2Q def ext arg =
- case dataCast2 (Q ext) of
- Just (Q ext') -> ext' arg
- Nothing -> def arg
-
-data MyPair a b = MyPair a b deriving (Data, Typeable)
-
-test2 :: ()
-test2 = undefined `ext2Q` (\(_,_) -> ()) $ ((),())
-
-test2' :: ()
-test2' = undefined `ext2Q` (\(MyPair _ _) -> ()) $ MyPair () ()
-
-main = do { print test1; print test1'; print test2; print test2' }
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/T3087.stdout b/testsuite/tests/ghc-regress/deriving/should_run/T3087.stdout
deleted file mode 100644
index 35735b4d3b..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/T3087.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-()
-()
-()
-()
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/T4136.hs b/testsuite/tests/ghc-regress/deriving/should_run/T4136.hs
deleted file mode 100644
index d47014bdb0..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/T4136.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module Main where
-
-data T = (:=:) {- | (:!=:) -} deriving (Show,Read)
-
-main
- = do putStrLn ("show (:=:) = " ++ show (:=:))
- putStrLn ("read (show (:=:)) :: T = " ++
- show (read (show (:=:)) :: T))
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/T4136.stdout b/testsuite/tests/ghc-regress/deriving/should_run/T4136.stdout
deleted file mode 100644
index 05a108c942..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/T4136.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-show (:=:) = (:=:)
-read (show (:=:)) :: T = (:=:)
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/T4528a.hs b/testsuite/tests/ghc-regress/deriving/should_run/T4528a.hs
deleted file mode 100644
index 85933671c7..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/T4528a.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- Crashed older GHCs when loaded into GHCi
-
-module Main where
-
-data T a = A | B | C deriving( Enum, Show )
-
-main = print [A ..]
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/T4528a.stdout b/testsuite/tests/ghc-regress/deriving/should_run/T4528a.stdout
deleted file mode 100644
index 070375c1da..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/T4528a.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[A,B,C]
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/T5041.hs b/testsuite/tests/ghc-regress/deriving/should_run/T5041.hs
deleted file mode 100644
index 4b7ba557dc..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/T5041.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
-module Main where
-
-data T = T1# | T2# Int deriving( Read, Show )
-
-foo :: [T]
-foo = read "[ T1#, T2# 4, T2# 5 ]"
-main = print foo
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/T5041.stdout b/testsuite/tests/ghc-regress/deriving/should_run/T5041.stdout
deleted file mode 100644
index 7de0b728af..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/T5041.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[T1#,T2# 4,T2# 5]
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/all.T b/testsuite/tests/ghc-regress/deriving/should_run/all.T
deleted file mode 100644
index 83e041f296..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/all.T
+++ /dev/null
@@ -1,34 +0,0 @@
-# Args to vt are:
-# extra compile flags
-# extra run flags
-# expected process return value, if not zero
-
-test('drvrun001', skip_if_fast, compile_and_run, [''])
-test('drvrun002', skip_if_fast, compile_and_run, [''])
-test('drvrun003', skip_if_fast, compile_and_run, [''])
-test('drvrun004', skip_if_fast, compile_and_run, [''])
-test('drvrun005', skip_if_fast, compile_and_run, [''])
-test('drvrun006', normal, compile_and_run, [''])
-test('drvrun007', skip_if_fast, compile_and_run, [''])
-test('drvrun008', skip_if_fast, compile_and_run, ['-funbox-strict-fields'])
-test('drvrun009', skip_if_fast, compile_and_run, [''])
-test('drvrun010', skip_if_fast, compile_and_run, [''])
-test('drvrun011', skip_if_fast, compile_and_run, [''])
-test('drvrun012', skip_if_fast, compile_and_run, [''])
-test('drvrun013', skip_if_fast, compile_and_run, [''])
-test('drvrun014', skip_if_fast, compile_and_run, [''])
-test('drvrun015', skip_if_fast, compile_and_run, [''])
-test('drvrun016', skip_if_fast, compile_and_run, ['-funbox-strict-fields'])
-test('drvrun017', compose(skip_if_fast, only_compiler_types(['ghc'])), compile_and_run, [''])
-test('drvrun018', skip_if_fast, compile_and_run, [''])
-test('drvrun019', normal, compile_and_run, [''])
-test('drvrun020', normal, compile_and_run, [''])
-test('drvrun021', normal, compile_and_run, [''])
-test('drvrun022', reqlib('syb'), compile_and_run, ['-package syb'])
-test('T3087', reqlib('syb'), compile_and_run, ['-package syb'])
-test('T2529', normal, compile_and_run, [''])
-test('drvrun-functor1', normal, compile_and_run, [''])
-test('drvrun-foldable1', normal, compile_and_run, [''])
-test('T4136', normal, compile_and_run, [''])
-test('T4528a', normal, compile_and_run, [''])
-test('T5041', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun-foldable1.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun-foldable1.hs
deleted file mode 100644
index 2db8600389..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun-foldable1.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE DeriveFunctor, DeriveFoldable #-}
-
-module Main where
-
-import Prelude hiding (sum)
-import Data.Foldable
-
--- Derive Foldable for a simple data type
-
-data List a = Nil | Cons a (List a)
- deriving (Functor,Foldable,Show)
-
-someList = Cons 1 (Cons 1 (Cons 2 (Cons 3 Nil)))
-
-main = print (sum someList)
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun-foldable1.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun-foldable1.stdout
deleted file mode 100644
index 7f8f011eb7..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun-foldable1.stdout
+++ /dev/null
@@ -1 +0,0 @@
-7
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun-functor1.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun-functor1.hs
deleted file mode 100644
index 1367e360e0..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun-functor1.hs
+++ /dev/null
@@ -1,49 +0,0 @@
-{-# LANGUAGE DeriveFunctor #-}
-
-module Main where
-
--- Derive functor for a simple data type
-
-data List a = Nil | Cons a (List a)
- deriving (Functor,Show)
-
-someList = Cons 1 (Cons 1 (Cons 2 (Cons 3 Nil)))
-doubleList = fmap (*2) someList
-
-test1 = do
- putStr "normal: " >> print someList
- putStr "double: " >> print doubleList
-
--- Derive functor for a data type with functions and tuples
-
-data ReaderWriter r w a = RW { runRW :: r -> (a,w) }
- deriving (Functor)
-
-data Cont r a = Cont { runCont :: (a -> r) -> r }
- deriving (Functor)
-
-test2 = do
- let rw = RW (\r -> ("something",r*3))
- putStr "normal: " >> print (runRW rw 123)
- putStr "reverse: " >> print (runRW (fmap reverse rw) 456)
- let five = Cont ($ 5)
- putStr "normal: " >> runCont five print
- putStr "double: " >> runCont (fmap (*2) five) print
-
--- Derive functor in such a way that we need a constraint
-
-newtype Compose f g a = Compose (f (g a))
- deriving (Functor,Show)
-
-listOfLists = Compose [[1,2,3],[7,8,9]]
-
-test3 = do
- putStr "normal: " >> print listOfLists
- putStr "double: " >> print (fmap (*2) listOfLists)
-
--- All tests
-
-main = do
- test1
- test2
- test3
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun-functor1.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun-functor1.stdout
deleted file mode 100644
index ba70f8db7a..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun-functor1.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-normal: Cons 1 (Cons 1 (Cons 2 (Cons 3 Nil)))
-double: Cons 2 (Cons 2 (Cons 4 (Cons 6 Nil)))
-normal: ("something",369)
-reverse: ("gnihtemos",1368)
-normal: 5
-double: 10
-normal: Compose [[1,2,3],[7,8,9]]
-double: Compose [[2,4,6],[14,16,18]]
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun001.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun001.hs
deleted file mode 100644
index b6bd259aa7..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun001.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- Test newtype derived instances
-
-newtype Age = MkAge Int deriving (Eq, Show)
-
-instance Num Age where
- (+) (MkAge a) (MkAge b) = MkAge (a+b)
- (*) = undefined
- negate = undefined
- abs = undefined
- signum = undefined
- fromInteger = undefined
-
-main = print (MkAge 3 + MkAge 5)
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun001.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun001.stdout
deleted file mode 100644
index bbfb2f6226..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-MkAge 8
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun002.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun002.hs
deleted file mode 100644
index 26497bd32c..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun002.hs
+++ /dev/null
@@ -1,17 +0,0 @@
--- !!! Deriving Show/Read for type with labelled fields.
--- (based on a Hugs bug report.)
-module Main(main) where
-
-data Options =
- Options { s :: OptionKind }
- deriving (Show, Read)
-
-data OptionKind =
- SpecialOptions { test :: Int }
- deriving (Show, Read)
-
-x = Options{s=SpecialOptions{test=42}}
-
-main = do
- print x
- print ((read (show x))::Options)
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun002.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun002.stdout
deleted file mode 100644
index 00c70df868..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun002.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Options {s = SpecialOptions {test = 42}}
-Options {s = SpecialOptions {test = 42}}
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun003.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun003.hs
deleted file mode 100644
index bb7486159e..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun003.hs
+++ /dev/null
@@ -1,30 +0,0 @@
--- !!! Deriving Show/Read for nullary constructors.
-module Main(main) where
-
-data A = B | C deriving ( Show, Read )
-
-data Opt = N | Y A deriving (Show, Read)
-
-x = Y B
-
-{-
- If the Haskell report's specification of how Show instances
- are to be derived is followed to the letter, the code for
- a nullary constructor would put parens around the constructor
- when (showsPrec 10) is used. This would cause
-
- Y A
-
- to be showed as
-
- Y (A)
-
- Overkill, so ghc's derived Show code treats nullary
- constructors specially.
--}
-
-main = do
- print x
- print ((read (show x))::Opt)
- print ((read "Y (B)")::Opt)
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun003.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun003.stdout
deleted file mode 100644
index 584cfcd5ce..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun003.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-Y B
-Y B
-Y B
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun004.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun004.hs
deleted file mode 100644
index f530803835..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun004.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module Main where
-
-data Hash = Hash{ (#) :: Int }
- deriving (Show, Read)
-
-main =
- do print s
- print (read s :: Hash)
- where
- s = show (Hash 3)
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun004.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun004.stdout
deleted file mode 100644
index c9088b7bd6..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun004.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-"Hash {(#) = 3}"
-Hash {(#) = 3}
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun005.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun005.hs
deleted file mode 100644
index a4ef060a6a..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun005.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-module Main where
-
-{-
- If a fixity declaration hasn't been supplied for
- an operator, it is defaulted to being "infixl 9".
-
- OLD: The derived Read instances for data types containing
- left-assoc constructors produces code that causes
- non-termination if you use 'read' to evaluate them
- ( (head (reads x)) is cool tho.)
-
- ==> The inferred assoc for :++ below left & the derived
- Read instance should fail to terminate (with ghc-4.xx,
- this is exemplified by having the stack overflow.)
-
- NEW: the new H98 spec says that we ignore associativity when
- parsing, so it terminates fine
--}
--- infixl 9 :++
-data T = T1 | T :++ T deriving (Eq,Show, Read)
-
-t :: T
-t = read "T1"
-
-main = do
- print ((fst (head (reads "T1"))) :: T)
- print t
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun005.stderr b/testsuite/tests/ghc-regress/deriving/should_run/drvrun005.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun005.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun005.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun005.stdout
deleted file mode 100644
index c90bc69dcd..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun005.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-T1
-T1
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun006.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun006.hs
deleted file mode 100644
index 3d268019bd..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun006.hs
+++ /dev/null
@@ -1,49 +0,0 @@
--- !!! Show/Read deriving example given in the Haskell Report.
-module Main(main) where
-
-infix 4 :^:
-data Tree a
- = Leaf a | (Tree a) :^: (Tree a)
- deriving (Show, Read)
-
-val1 :: Tree Int
-val1 = Leaf 2
-
-val2 :: Tree Int
-val2 = Leaf 2 :^: Leaf (-1)
-
-main = do
- print val1
- print val2
-
- print ((read (show val1))::Tree Int)
- print ((read (show val2))::Tree Int)
- print ((read (show val1))::Tree Integer)
- print ((read (show val2))::Tree Integer)
-
-{- What you'll want
-instance (Show a) => Show (Tree a) where
-
- showsPrec d (Leaf m) = showParen (d >= 10) showStr
- where
- showStr = showString "Leaf " . showsPrec 10 m
-
- showsPrec d (u :^: v) = showParen (d > 4) showStr
- where
- showStr = showsPrec 5 u .
- showString " :^: " .
- showsPrec 5 v
-
-instance (Read a) => Read (Tree a) where
-
- readsPrec d r = readParen (d > 4)
- (\r -> [(u:^:v,w) |
- (u,s) <- readsPrec 5 r,
- (":^:",t) <- lex s,
- (v,w) <- readsPrec 5 t]) r
-
- ++ readParen (d > 9)
- (\r -> [(Leaf m,t) |
- ("Leaf",s) <- lex r,
- (m,t) <- readsPrec 10 s]) r
--}
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun006.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun006.stdout
deleted file mode 100644
index fe1beeeae0..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun006.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-Leaf 2
-Leaf 2 :^: Leaf (-1)
-Leaf 2
-Leaf 2 :^: Leaf (-1)
-Leaf 2
-Leaf 2 :^: Leaf (-1)
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun007.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun007.hs
deleted file mode 100644
index 5c26c3448d..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun007.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Main( main ) where
--- This one crashed Hugs98
-
-data X = X | X :\ X deriving Show
-
-main = putStrLn (show (X :\ X))
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun007.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun007.stdout
deleted file mode 100644
index fe13f39338..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun007.stdout
+++ /dev/null
@@ -1 +0,0 @@
-X :\ X
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun008.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun008.hs
deleted file mode 100644
index 7fe77992ed..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun008.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! Check that -funbox-strict-fields doesn't mess up deriving (can't be in an options pragma, it's in the Makefile)
--- !!! (it did in 4.04)
-
-module Main( main ) where
-
-data X = X !Int deriving Eq
-
-main = putStrLn (show (X 2 == X 2))
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun008.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun008.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun008.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun009.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun009.hs
deleted file mode 100644
index 0bd22ab787..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun009.hs
+++ /dev/null
@@ -1,20 +0,0 @@
--- !!! Check the Read instance for Array
--- [Not strictly a 'deriving' issue]
-
-module Main( main ) where
-import Data.Array
-
-bds :: ((Int,Int),(Int,Int))
-bds = ((1,4),(2,5))
-
-type MyArr = Array (Int,Int) Int
-
-a :: MyArr
-a = array bds [ ((i,j), i+j) | (i,j) <- range bds ]
-
-main = do { putStrLn (show a) ;
- let { b :: MyArr ;
- b = read (show a) } ;
- putStrLn (show b)
- }
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun009.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun009.stdout
deleted file mode 100644
index 2a7d99bd37..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun009.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-array ((1,4),(2,5)) [((1,4),5),((1,5),6),((2,4),6),((2,5),7)]
-array ((1,4),(2,5)) [((1,4),5),((1,5),6),((2,4),6),((2,5),7)]
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun010.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun010.hs
deleted file mode 100644
index 0a2f3d2742..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun010.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module Main where
-
-data Test = Test { field :: Int } deriving (Eq,Show,Read)
-
-main = putStrLn $
- if read (show (Test {field=(-1)})) == Test (-1)
- then "works" else "not"
-
--- The point here is that if 'show' generates
--- Test { field=-1 }
--- the lexer things the '=-' is one lexeme, which does not work
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun010.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun010.stdout
deleted file mode 100644
index 153d19401b..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun010.stdout
+++ /dev/null
@@ -1 +0,0 @@
-works
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun011.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun011.hs
deleted file mode 100644
index aad1482f2a..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun011.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- Tests some simple deriving stuff, and built-in instances
-
-module Main( main ) where
-
-data Command = Commit (Maybe String) | Foo | Baz Bool | Boz Int
- deriving (Read,Show)
-
-type T = ([Command], [Command], [Command])
-val :: T
-val = ([Commit Nothing, Commit (Just "foo")],
- [Foo, Baz True],
- [Boz 3, Boz (-2)])
-
-main = do { print val ;
- print ((read (show val)) :: T) }
-
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun011.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun011.stdout
deleted file mode 100644
index 0ddc486aad..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun011.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-([Commit Nothing,Commit (Just "foo")],[Foo,Baz True],[Boz 3,Boz (-2)])
-([Commit Nothing,Commit (Just "foo")],[Foo,Baz True],[Boz 3,Boz (-2)])
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun012.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun012.hs
deleted file mode 100644
index 3775a3b958..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun012.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Tests readings of record syntax
-
-module Main where
-
-data Foo = Foo { x :: Baz, y :: Maybe Int } deriving (Read,Show)
-
-infix 0 :%%
-data Baz = Int :%% Int deriving( Read,Show)
-
-
-main = print (read "Foo { x = 1 :%% 2, y = Just 4 }" :: Foo)
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun012.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun012.stdout
deleted file mode 100644
index dbef9bc870..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun012.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Foo {x = 1 :%% 2, y = Just 4}
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun013.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun013.hs
deleted file mode 100644
index 2a9adae585..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun013.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- This test makes sure that the derivied instance for
--- Eq A
--- "sees" the non-derived instance for
--- Eq B
---
--- In a version of GHC 5.05, this didn't happen, because the
--- deriving mechanism looked through A's rep-type and found Int
-
-module Main where
-
-newtype B = MkB Int
-instance Eq B where
- (MkB 1) == (MkB 2) = True -- Non-standard equality
- (MkB a) == (MkB b) = False
-
-newtype A = MkA B deriving( Eq )
-
-main = print (MkA (MkB 1) == MkA (MkB 2))
--- Should say "True", because of B's non-standard instance
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun013.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun013.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun013.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun014.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun014.hs
deleted file mode 100644
index 806af8ce1c..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun014.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- This one gave the wrong answer with ghci 5.02.3 (and 5.02.2)
-
-module Main where
-
-infixr 3 :*
-infixr 2 :+
-
-data RE a = RE a :+ RE a
- | RE a :* RE a
- | Cat [RE a]
- | Star (RE a)
- | Plus (RE a)
- | Opt (RE a)
- | Comp (RE a)
- | Empty
- | Str [a]
- deriving (Show, Eq, Ord)
-
-main = print (Str "ab" == (Str "a" :+ Str "b"))
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun014.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun014.stdout
deleted file mode 100644
index bc59c12aa1..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun014.stdout
+++ /dev/null
@@ -1 +0,0 @@
-False
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun015.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun015.hs
deleted file mode 100644
index b6e10394fa..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun015.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- The leading underscore killed GHC 5.04
-
-module Main where
-
-data Obj = Obj {_id, p1, p2::Int} deriving (Show, Read)
-
-
-main = print (show (read "Obj {_id=1,p1=10,p2=20}" :: Obj))
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun015.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun015.stdout
deleted file mode 100644
index d7059cd3ff..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun015.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"Obj {_id = 1, p1 = 10, p2 = 20}"
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun016.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun016.hs
deleted file mode 100644
index 1d6de577ac..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun016.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- Run with -funbox-strict-fields
--- Bug in GHC 5.04.3
-
-module Main where
-
-data Foo = Foo Int String
-data Bar = Bar Int Foo
-
-instance Ord Bar where
- compare (Bar i _) (Bar j _) = compare i j
-
-instance Eq Bar where
- (Bar i _) == (Bar j _) = i == j
-
-
-data Zot = Zot !Bar !String deriving (Ord,Eq)
-
-main = putStrLn "Success"
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun016.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun016.stdout
deleted file mode 100644
index 35821117c8..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun016.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Success
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun017.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun017.hs
deleted file mode 100644
index e14619c1a9..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun017.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
--- Test Show on unboxed types
-
-module Main where
-import GHC.Base
-
-data Foo = MkFoo Int# Float# Int deriving( Show )
-
-main = print (MkFoo 3# 4.3# 2) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun017.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun017.stdout
deleted file mode 100644
index 6f1bd8c7fa..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun017.stdout
+++ /dev/null
@@ -1 +0,0 @@
-MkFoo 3 4.3 2
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun018.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun018.hs
deleted file mode 100644
index a0b9f24362..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun018.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
--- Test Show on unboxed types
-
-module Main where
-
-data Foo = Int `MkFoo` Int deriving( Read, Show )
-
-main = do { print (MkFoo 4 5)
- ; print (read "3 `MkFoo` 5" :: Foo) }
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun018.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun018.stdout
deleted file mode 100644
index 5393fc4654..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun018.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-4 `MkFoo` 5
-3 `MkFoo` 5
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun019.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun019.hs
deleted file mode 100644
index 3fd8ccf025..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun019.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-
--- Tests newtype deriving with
--- a non-type constructor in the representation
-
-module Main where
-
-newtype Wrap m a = Wrap { unWrap :: m a }
- deriving (Monad, Eq)
-
-foo :: Int -> Wrap IO a -> Wrap IO ()
-foo 0 a = return ()
-foo n a = do { a; foo (n-1) a }
-
-main = do { unWrap (foo 3 (Wrap (putChar 'x'))); putChar '\n' }
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun019.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun019.stdout
deleted file mode 100644
index f165e2102f..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun019.stdout
+++ /dev/null
@@ -1 +0,0 @@
-xxx
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun020.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun020.hs
deleted file mode 100644
index cf78a2a992..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun020.hs
+++ /dev/null
@@ -1,46 +0,0 @@
--- A nasty deriving test
--- Note the "T2 T1 { f1=3 }" part!
-
-module Main where
-
-
-infix 4 :%%
-data T = Int :%% T
- | T1 { f1 :: Int }
- | T2 T
- deriving( Show, Read )
-
-main = print (read "3 :%% T2 T1 { f1=3 }" :: T)
-
-{- Here's the parser that is produced
-
-import GHC.Read
-import Text.ParserCombinators.ReadPrec
-import Text.Read
-
-instance Read T where
- readPrec =
- parens
- ( prec 4 (
- do x <- step readPrec
- Symbol ":%%" <- lexP
- y <- step readPrec
- return (x :%% y))
- +++
- prec (appPrec+1) (
- do Ident "T1" <- lexP
- Punc "{" <- lexP
- Ident "f1" <- lexP
- Punc "=" <- lexP
- x <- reset readPrec
- Punc "}" <- lexP
- return (T1 { f1 = x }))
- +++
- prec appPrec (
- do Ident "T2" <- lexP
- x <- step readPrec
- return (T2 x))
- )
-
-appPrec = 10::Int
--}
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun020.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun020.stdout
deleted file mode 100644
index bb33aca722..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun020.stdout
+++ /dev/null
@@ -1 +0,0 @@
-3 :%% T2 (T1 {f1 = 3})
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun021.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun021.hs
deleted file mode 100644
index 05c7c8dbf0..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun021.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-module Main where
-
-class Show a => Foo a where
- op :: a -> a
-
-newtype Moose = MkMoose () deriving (Show, Eq, Ord)
-
-newtype Noose = MkNoose () deriving (Ord)
-
-instance Eq Noose where
- a == b = False -- Non-standard!
-
-f :: Ord a => a -> Bool
-f x = x==x
-
-main = do print (MkNoose () == MkNoose ()) -- Eq Noose
- print (f (MkNoose ())) -- via Ord Noose
- print (MkMoose () == MkMoose ()) -- Eq Moose
- print (f (MkMoose ())) -- via Ord Moose
- putStrLn (show (MkMoose ())) -- Should not use the show () method
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun021.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun021.stdout
deleted file mode 100644
index ae2b8d6354..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun021.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-False
-False
-True
-True
-MkMoose ()
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun022.hs b/testsuite/tests/ghc-regress/deriving/should_run/drvrun022.hs
deleted file mode 100644
index fe95c3323b..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun022.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-
-module Main where
-
--- GHC 6.4.1 output "testz" in z-encoded form!
-
-import Data.Generics
-
-data TestZ = TestZ { testz :: Int }
- deriving (Show, Read, Eq, Data, Typeable)
-
-main = print $ constrFields . toConstr $ TestZ { testz = 2 }
diff --git a/testsuite/tests/ghc-regress/deriving/should_run/drvrun022.stdout b/testsuite/tests/ghc-regress/deriving/should_run/drvrun022.stdout
deleted file mode 100644
index e0ea368f1a..0000000000
--- a/testsuite/tests/ghc-regress/deriving/should_run/drvrun022.stdout
+++ /dev/null
@@ -1 +0,0 @@
-["testz"]
diff --git a/testsuite/tests/ghc-regress/dph/Makefile b/testsuite/tests/ghc-regress/dph/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/dph/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/dph/diophantine/DiophantineVect.hs b/testsuite/tests/ghc-regress/dph/diophantine/DiophantineVect.hs
deleted file mode 100644
index bef6694b3d..0000000000
--- a/testsuite/tests/ghc-regress/dph/diophantine/DiophantineVect.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-{-# LANGUAGE ParallelArrays #-}
-{-# OPTIONS -fvectorise -XParallelListComp #-}
-module DiophantineVect (solution3) where
-
-import Data.Array.Parallel
-import Data.Array.Parallel.Prelude.Int
-
-import qualified Prelude as P
-
-solution3'
- = let
- pow x i = productP (replicateP i x)
- primes = [: 2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73 :]
- sumpri xx = productP [: pow p x | p <- primes | x <- xx :]
- distinct xx = productP [: x + 1 | x <- xx :]
-
- series :: [:Int:] -> Int -> [:[:Int:]:]
- series xs n
- | n == 1 = [: [: 0 :] :]
- | otherwise = [: [: x :] +:+ ps
- | x <- xs
- , ps <- series (enumFromToP 0 x) (n-1) :]
-
- prob x y
- = let xx = [: (sumpri m ,m)
- | m <- series (enumFromToP 1 3) x
- , distinct [: x * 2 | x <- m :] > y :]
- i = minIndexP [: a | (a, b) <- xx :]
- in xx !: i
- in
- prob 7 2000
-
-solution3 :: (Int, PArray Int)
-{-# NOINLINE solution3 #-}
-solution3
- = let (i, is) = solution3'
- in
- (i, toPArrayP is)
diff --git a/testsuite/tests/ghc-regress/dph/diophantine/Main.hs b/testsuite/tests/ghc-regress/dph/diophantine/Main.hs
deleted file mode 100644
index eb8ae7ac28..0000000000
--- a/testsuite/tests/ghc-regress/dph/diophantine/Main.hs
+++ /dev/null
@@ -1,43 +0,0 @@
-{-# LANGUAGE ParallelArrays #-}
-
-import Data.List
-import DiophantineVect
-
-import qualified Data.Array.Parallel.PArray as P
-import Data.Array.Parallel.Prelude
-
-
--- Solution for the 108th Euler problem.
--- From the Haskell Wiki
-solution1
- = let primes = [2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73]
- series _ 1 = [[0]]
- series xs n = [x:ps | x <- xs, ps <- series [0..x] (n-1) ]
- distinct = product . map (+1)
- sumpri x = product $ zipWith (^) primes x
-
- prob x y = minimum [ (sumpri m ,m)
- | m <- series [1..3] x
- , (>y) $ distinct $ map (*2) m]
- in prob 7 2000
-
-solution2
- = let primes = [2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73]
- series _ 1 = [[0]]
- series xs n = [x:ps | x <- xs, ps <- series [0..x] (n-1) ]
- distinct xx = product [ x + 1 | x <- xx ]
- sumpri xx = product $ zipWith (^) primes xx
-
- prob x y = minimum [ (sumpri m ,m)
- | m <- series [1..3] x
- , (distinct $ map (*2) m) > y ]
- in prob 7 2000
-
-
-main
- = do print solution1
- print solution2
- print solution3
-
-
- \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/dph/diophantine/Makefile b/testsuite/tests/ghc-regress/dph/diophantine/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/dph/diophantine/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/dph/diophantine/dph-diophantine-fast.stdout b/testsuite/tests/ghc-regress/dph/diophantine/dph-diophantine-fast.stdout
deleted file mode 100644
index 7088d6ced3..0000000000
--- a/testsuite/tests/ghc-regress/dph/diophantine/dph-diophantine-fast.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-(180180,[2,2,1,1,1,1,0])
-(180180,[2,2,1,1,1,1,0])
-(180180,[:2,2,1,1,1,1,0:])
diff --git a/testsuite/tests/ghc-regress/dph/diophantine/dph-diophantine-opt.stdout b/testsuite/tests/ghc-regress/dph/diophantine/dph-diophantine-opt.stdout
deleted file mode 100644
index 7088d6ced3..0000000000
--- a/testsuite/tests/ghc-regress/dph/diophantine/dph-diophantine-opt.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-(180180,[2,2,1,1,1,1,0])
-(180180,[2,2,1,1,1,1,0])
-(180180,[:2,2,1,1,1,1,0:])
diff --git a/testsuite/tests/ghc-regress/dph/diophantine/dph-diophantine.T b/testsuite/tests/ghc-regress/dph/diophantine/dph-diophantine.T
deleted file mode 100644
index c963db9145..0000000000
--- a/testsuite/tests/ghc-regress/dph/diophantine/dph-diophantine.T
+++ /dev/null
@@ -1,20 +0,0 @@
-
-test ('dph-diophantine-opt'
- , [ alone
- , skip_if_fast
- , reqlib('dph-par')
- , reqlib('dph-prim-par')
- , only_ways(['normal', 'threaded1', 'threaded2']) ]
- , multimod_compile_and_run
- , [ 'Main'
- , '-Odph -fdph-par'])
-
-test ('dph-diophantine-fast'
- , [ reqlib('dph-par')
- , reqlib('dph-prim-par')
- , expect_broken(5065)
- , only_ways(['normal', 'threaded1', 'threaded2']) ]
- , multimod_compile_and_run
- , [ 'Main'
- , '-O -fno-enable-rewrite-rules -fdph-par'])
-
diff --git a/testsuite/tests/ghc-regress/dph/dotp/DotPVect.hs b/testsuite/tests/ghc-regress/dph/dotp/DotPVect.hs
deleted file mode 100644
index 5b623017d9..0000000000
--- a/testsuite/tests/ghc-regress/dph/dotp/DotPVect.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE ParallelArrays #-}
-{-# OPTIONS -fvectorise #-}
-module DotPVect ( dotp ) where
-
-import Data.Array.Parallel
-import Data.Array.Parallel.Prelude.Double as D
-
-import qualified Prelude
-
-dotp :: PArray Double -> PArray Double -> Double
-{-# NOINLINE dotp #-}
-dotp v w = dotp' (fromPArrayP v) (fromPArrayP w)
-
-dotp' :: [:Double:] -> [:Double:] -> Double
-dotp' v w = D.sumP (zipWithP (*) v w)
diff --git a/testsuite/tests/ghc-regress/dph/dotp/Main.hs b/testsuite/tests/ghc-regress/dph/dotp/Main.hs
deleted file mode 100644
index 436beb07fd..0000000000
--- a/testsuite/tests/ghc-regress/dph/dotp/Main.hs
+++ /dev/null
@@ -1,54 +0,0 @@
-import DotPVect ( dotp )
-
-import Control.Exception (evaluate)
-import System.Console.GetOpt
-import qualified System.Random as R
-
-import qualified Data.Array.Parallel.Unlifted as U
-import qualified Data.Array.Parallel.PArray as P
-import Data.Array.Parallel.PArray (PArray)
-
-
-
-generateVectorU :: Int -> IO (U.Array Double)
-generateVectorU n =
- do
- let seed = 42742
- let rg = R.mkStdGen seed
- let -- The std random function is too slow to generate really big vectors
- -- with. Instead, we generate a short random vector and repeat that.
- randvec = U.randomRs k (-100, 100) rg
- vec = U.map (\i -> randvec U.!: (i `mod` k)) (U.enumFromTo 0 (n-1))
- evaluate vec
- return vec
- where
- k = 1000
-
-generateVector :: Int -> IO (PArray Double)
-generateVector n
- = do
- vec <- generateVectorU n
- return $ P.fromUArrPA' vec
-
-generateVectors :: Int -> IO (PArray Double, PArray Double)
-generateVectors n =
- do
- v <- generateVector n
- w <- generateVector n
- return (v,w)
-
-main
- = do -- compute dot product with NDP
- vectors <- generateVectors 100000
- let resultViaNDP = (uncurry dotp) vectors
-
- -- compute with lists
- let (aVecX, aVecY) = vectors
- let vecX = P.toList aVecX
- let vecY = P.toList aVecY
- let resultViaList = sum $ zipWith (*) vecX vecY
-
- -- ignore wibbles in low order bits
- putStr $ (take 12 $ show resultViaNDP) ++ "\n"
- putStr $ (take 12 $ show resultViaList) ++ "\n"
-
diff --git a/testsuite/tests/ghc-regress/dph/dotp/Makefile b/testsuite/tests/ghc-regress/dph/dotp/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/dph/dotp/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/dph/dotp/dph-dotp-fast.stdout b/testsuite/tests/ghc-regress/dph/dotp/dph-dotp-fast.stdout
deleted file mode 100644
index e8f012cbc6..0000000000
--- a/testsuite/tests/ghc-regress/dph/dotp/dph-dotp-fast.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-3.3659625259
-3.3659625259
diff --git a/testsuite/tests/ghc-regress/dph/dotp/dph-dotp-opt.stdout b/testsuite/tests/ghc-regress/dph/dotp/dph-dotp-opt.stdout
deleted file mode 100644
index e8f012cbc6..0000000000
--- a/testsuite/tests/ghc-regress/dph/dotp/dph-dotp-opt.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-3.3659625259
-3.3659625259
diff --git a/testsuite/tests/ghc-regress/dph/dotp/dph-dotp.T b/testsuite/tests/ghc-regress/dph/dotp/dph-dotp.T
deleted file mode 100644
index 2ebab9da24..0000000000
--- a/testsuite/tests/ghc-regress/dph/dotp/dph-dotp.T
+++ /dev/null
@@ -1,20 +0,0 @@
-
-test ('dph-dotp-opt'
- , [ alone
- , skip_if_fast
- , reqlib('dph-par')
- , reqlib('dph-prim-par')
- , only_ways(['normal', 'threaded1', 'threaded2']) ]
- , multimod_compile_and_run
- , [ 'Main'
- , '-Odph -fdph-par'])
-
-test ('dph-dotp-fast'
- , [ reqlib('dph-par')
- , reqlib('dph-prim-par')
- , only_ways(['normal', 'threaded1', 'threaded2']) ]
- , multimod_compile_and_run
- , [ 'Main'
- , '-O -fno-enable-rewrite-rules -fdph-par'])
-
-
diff --git a/testsuite/tests/ghc-regress/dph/primespj/Main.hs b/testsuite/tests/ghc-regress/dph/primespj/Main.hs
deleted file mode 100644
index 049e6a3e04..0000000000
--- a/testsuite/tests/ghc-regress/dph/primespj/Main.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-import Control.Exception (evaluate)
-import System.Console.GetOpt
-
-import Data.Array.Parallel.PArray (PArray)
-import qualified Data.Array.Parallel.PArray as P
-
-import PrimesVect (primesVect)
-import Debug.Trace
-
-
-primesList :: Int -> [Int]
-primesList 1 = []
-primesList n = sps ++ [ i | i <- [sq+1..n], multiple sps i ]
- where
- sps = primesList sq
- sq = floor $ sqrt $ fromIntegral n
-
- multiple :: [Int] -> Int -> Bool
- multiple ps i = and [i `mod` p /= 0 | p <- ps]
-
-
-main
- = do let n = 1000
- let resultViaNDP = P.toList $ primesVect n
- let resultViaLists = primesList n
-
- print resultViaNDP
- print resultViaLists
- print $ resultViaNDP == resultViaLists
-
diff --git a/testsuite/tests/ghc-regress/dph/primespj/Makefile b/testsuite/tests/ghc-regress/dph/primespj/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/dph/primespj/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/dph/primespj/PrimesVect.hs b/testsuite/tests/ghc-regress/dph/primespj/PrimesVect.hs
deleted file mode 100644
index 34b3a568b7..0000000000
--- a/testsuite/tests/ghc-regress/dph/primespj/PrimesVect.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE ParallelArrays #-}
-{-# OPTIONS -fvectorise #-}
-module PrimesVect (primesVect)
-
-where
-import Data.Array.Parallel
-import Data.Array.Parallel.Prelude.Int
-import qualified Prelude
-
-primesVect:: Int -> PArray Int
-primesVect n = toPArrayP (primesVect' n)
-
-primesVect':: Int -> [:Int:]
-primesVect' n
- | n == 1 = emptyP
- | n == 2 = singletonP 2
- | otherwise = sps +:+ [: i | i <- enumFromToP (sq+1) n, notMultiple sps i:]
- where
-
- sps = primesVect' sq
- sq = sqrt n
-
- notMultiple :: [:Int:] -> Int -> Bool
- notMultiple ps i = andP [: mod i p /= 0 | p <- ps:]
-
diff --git a/testsuite/tests/ghc-regress/dph/primespj/dph-primespj-fast.stdout b/testsuite/tests/ghc-regress/dph/primespj/dph-primespj-fast.stdout
deleted file mode 100644
index d935f68b11..0000000000
--- a/testsuite/tests/ghc-regress/dph/primespj/dph-primespj-fast.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997]
-[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997]
-True
diff --git a/testsuite/tests/ghc-regress/dph/primespj/dph-primespj-opt.stdout b/testsuite/tests/ghc-regress/dph/primespj/dph-primespj-opt.stdout
deleted file mode 100644
index d935f68b11..0000000000
--- a/testsuite/tests/ghc-regress/dph/primespj/dph-primespj-opt.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997]
-[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997]
-True
diff --git a/testsuite/tests/ghc-regress/dph/primespj/dph-primespj.T b/testsuite/tests/ghc-regress/dph/primespj/dph-primespj.T
deleted file mode 100644
index 458490456b..0000000000
--- a/testsuite/tests/ghc-regress/dph/primespj/dph-primespj.T
+++ /dev/null
@@ -1,20 +0,0 @@
-
-test ('dph-primespj-opt'
- , [ alone
- , skip_if_fast
- , reqlib('dph-par')
- , reqlib('dph-prim-par')
- , only_ways(['normal', 'threaded1', 'threaded2']) ]
- , multimod_compile_and_run
- , [ 'Main'
- , '-Odph -fdph-par'])
-
-test ('dph-primespj-fast'
- , [ reqlib('dph-par')
- , reqlib('dph-prim-par')
- , only_ways(['normal', 'threaded1', 'threaded2']) ]
- , multimod_compile_and_run
- , [ 'Main'
- , '-O -fno-enable-rewrite-rules -fdph-par'])
-
-
diff --git a/testsuite/tests/ghc-regress/dph/quickhull/Main.hs b/testsuite/tests/ghc-regress/dph/quickhull/Main.hs
deleted file mode 100644
index ec59390850..0000000000
--- a/testsuite/tests/ghc-regress/dph/quickhull/Main.hs
+++ /dev/null
@@ -1,43 +0,0 @@
-
-import qualified Types as QH
-import QuickHullVect (quickhull)
-
-import qualified Data.Array.Parallel.Unlifted as U
-import qualified Data.Array.Parallel.Prelude as P
-
-import qualified Data.Array.Parallel.PArray as P
-import Data.Array.Parallel.PArray (PArray)
-
-import System.Environment
-import Data.List
-
-import SVG
-import TestData
-
-
------
-runQuickhull :: PArray QH.Point -> [(Double, Double)]
-runQuickhull pts
- = let result = quickhull pts
- resxs = P.toUArrPA (QH.xsOf result)
- resys = P.toUArrPA (QH.ysOf result)
- in resxs U.!: 0 `seq` (zip (U.toList resxs) (U.toList resys))
-
-
--- Main Program ---------------------------------------------------------------
-main
- = do args <- getArgs
- let n = case args of
- [s] -> read s
- _ -> 1000
-
- paInput <- toPArrayPoints
- $ genPointsCombo n
-
- let psHull = runQuickhull paInput
- psInput = P.toList paInput
-
- putStr
- $ makeSVG
- (roundPoints psInput)
- (roundPoints psHull)
diff --git a/testsuite/tests/ghc-regress/dph/quickhull/Makefile b/testsuite/tests/ghc-regress/dph/quickhull/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/dph/quickhull/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/dph/quickhull/QuickHullVect.hs b/testsuite/tests/ghc-regress/dph/quickhull/QuickHullVect.hs
deleted file mode 100644
index 29aaa4a823..0000000000
--- a/testsuite/tests/ghc-regress/dph/quickhull/QuickHullVect.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-{-# LANGUAGE ParallelArrays #-}
-{-# OPTIONS -fvectorise #-}
-
-module QuickHullVect (quickhull) where
-
-import Types
-
-import Data.Array.Parallel
-import Data.Array.Parallel.Prelude.Double
-import qualified Data.Array.Parallel.Prelude.Int as Int
-
-import qualified Prelude as P
-
-distance :: Point -> Line -> Double
-distance (xo, yo) ((x1, y1), (x2, y2))
- = (x1-xo) * (y2 - yo) - (y1 - yo) * (x2 - xo)
-
-hsplit :: [:Point:] -> Line -> [:Point:]
-hsplit points line@(p1, p2)
- | lengthP packed Int.< 2 = singletonP p1 +:+ packed
- | otherwise
- = concatP [: hsplit packed ends | ends <- [:(p1, pm), (pm, p2):] :]
- where
- cross = [: distance p line | p <- points :]
- packed = [: p | (p,c) <- zipP points cross, c > 0.0 :]
- pm = points !: maxIndexP cross
-
-quickHull' :: [:Point:] -> [:Point:]
-quickHull' points
- | lengthP points Int.== 0 = points
- | otherwise
- = concatP [: hsplit points ends | ends <- [: (minx, maxx), (maxx, minx) :] :]
- where
- xs = [: x | (x, y) <- points :]
- minx = points !: minIndexP xs
- maxx = points !: maxIndexP xs
-
-quickhull :: PArray Point -> PArray Point
-{-# NOINLINE quickhull #-}
-quickhull ps = toPArrayP (quickHull' (fromPArrayP ps))
-
diff --git a/testsuite/tests/ghc-regress/dph/quickhull/SVG.hs b/testsuite/tests/ghc-regress/dph/quickhull/SVG.hs
deleted file mode 100644
index f4183a77d6..0000000000
--- a/testsuite/tests/ghc-regress/dph/quickhull/SVG.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-
-module SVG where
-
--- Making a SVG diagram of the points and hull
-makeSVG :: [(Int, Int)] -> [(Int, Int)] -> String
-makeSVG points hull
- = unlines
- $ [ "<svg width=\"100%\" height=\"100%\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\">" ]
- ++ [svgPolygon hull]
- ++ map svgPoint points
- ++ map svgPointHull hull
- ++ ["</svg>"]
-
-svgPolygon :: [(Int, Int)] -> String
-svgPolygon points
- = "<polygon"
- ++ " points=\"" ++ (concat [show x ++ "," ++ show y ++ " " | (x, y) <- points]) ++ "\""
- ++ " style=\"fill:#d0d0ff;stroke:#000000;stroke-width:1\""
- ++ "/>"
-
-svgPoint :: (Int, Int) -> String
-svgPoint (x, y)
- = "<circle cx=\"" ++ show x ++ "\" cy=\"" ++ show y ++ "\" r=\"0.5\""
- ++ " style=\"stroke:#000000\""
- ++ "/>"
-
-svgPointHull :: (Int, Int) -> String
-svgPointHull (x, y)
- = "<circle cx=\"" ++ show x ++ "\" cy=\"" ++ show y ++ "\" r=\"1\""
- ++ " style=\"stroke:#ff0000\""
- ++ "/>"
-
-roundPoints :: [(Double, Double)] -> [(Int, Int)]
-roundPoints ps = [(round x, round y) | (x, y) <- ps]
diff --git a/testsuite/tests/ghc-regress/dph/quickhull/TestData.hs b/testsuite/tests/ghc-regress/dph/quickhull/TestData.hs
deleted file mode 100644
index 6317927259..0000000000
--- a/testsuite/tests/ghc-regress/dph/quickhull/TestData.hs
+++ /dev/null
@@ -1,92 +0,0 @@
-
-module TestData
- ( genPointsUniform
- , genPointsDisc
- , genPointsCombo
- , toPArrayPoints )
-where
-
-import qualified Types as QH
-import qualified Data.Array.Parallel.Unlifted as U
-import qualified Data.Array.Parallel.Prelude as P
-import qualified Data.Array.Parallel.Prelude.Double as D
-import qualified Data.Array.Parallel.PArray as P
-import Data.Array.Parallel.PArray (PArray)
-
-import System.Random
-import Control.Exception
-
--- Random points generation
--- IMPORTANT: We use the same seed with the same random generator in all
--- quickhull codes. The asymptotic work complexity of quickhull
--- is between O (N) and O (N^2) depending on the input.
--- To compare benchmark results, they always need to use the same
--- input.
-seed = 42742
-
--- | Some uniformly distributed points
-genPointsUniform
- :: Int -- ^ number of points
- -> Double -- ^ minimum coordinate
- -> Double -- ^ maximum coordinate
- -> [(Double, Double)]
-
-genPointsUniform n minXY maxXY
- = let
- pointMin = 10
- pointMax = 510
- gen = mkStdGen seed
- in toPairs $ take (2*n) $ randomRs (pointMin, pointMax) gen
-
-toPairs [] = []
-toPairs (x:y:pts) = (x, y) : toPairs pts
-
-
--- | Some points distributed as a disc
-genPointsDisc
- :: Int -- ^ number of points
- -> (Double, Double) -- ^ center of disc
- -> Double -- ^ radius of disc
- -> [(Double, Double)]
-
-genPointsDisc n (originX, originY) radiusMax
- = let (genRadius, genAngle)
- = split $ mkStdGen seed
-
- radius = take n $ randomRs (0, radiusMax) genRadius
- angle = take n $ randomRs (- pi, pi) genAngle
-
- makeXY (r, a)
- = ( originX + r * cos a
- , originY + r * sin a)
-
- in map makeXY $ zip radius angle
-
-
--- | A point cloud with areas of high an low density
-genPointsCombo
- :: Int -- ^ number of points
- -> [(Double, Double)]
-
-genPointsCombo n
- = genPointsDisc (n `div` 5) (250, 250) 200
- ++ genPointsDisc (n `div` 5) (100, 100) 80
- ++ genPointsDisc (n `div` 5) (150, 300) 30
- ++ genPointsDisc (n `div` 5) (500, 120) 30
- ++ genPointsDisc (n `div` 5) (300, 200) 150
-
-
--- | Convert a list of points to a PArray
-toPArrayPoints :: [(Double, Double)] -> IO (PArray QH.Point)
-toPArrayPoints ps
- = do let pts = QH.points (P.fromList (map fst ps))
- (P.fromList (map snd ps))
- evaluate $ force pts
- return pts
-
--- | Force points to be evaluated
-force pts
- = P.toUArrPA (QH.xsOf pts) U.!: 0 D.+
- P.toUArrPA (QH.ysOf pts) U.!: 0
-
-
diff --git a/testsuite/tests/ghc-regress/dph/quickhull/Types.hs b/testsuite/tests/ghc-regress/dph/quickhull/Types.hs
deleted file mode 100644
index 162458f424..0000000000
--- a/testsuite/tests/ghc-regress/dph/quickhull/Types.hs
+++ /dev/null
@@ -1,32 +0,0 @@
-{-# LANGUAGE ParallelArrays #-}
-{-# OPTIONS -fvectorise #-}
-
-module Types ( Point, Line, points, xsOf, ysOf) where
-
-import Data.Array.Parallel
-
-type Point = (Double, Double)
-type Line = (Point, Point)
-
-points' :: [:Double:] -> [:Double:] -> [:Point:]
-points' = zipP
-
-points :: PArray Double -> PArray Double -> PArray Point
-{-# NOINLINE points #-}
-points xs ys = toPArrayP (points' (fromPArrayP xs) (fromPArrayP ys))
-
-xsOf' :: [:Point:] -> [:Double:]
-xsOf' ps = [: x | (x, _) <- ps :]
-
-xsOf :: PArray Point -> PArray Double
-{-# NOINLINE xsOf #-}
-xsOf ps = toPArrayP (xsOf' (fromPArrayP ps))
-
-ysOf' :: [:Point:] -> [:Double:]
-ysOf' ps = [: y | (_, y) <- ps :]
-
-ysOf :: PArray Point -> PArray Double
-{-# NOINLINE ysOf #-}
-ysOf ps = toPArrayP (ysOf' (fromPArrayP ps))
-
-
diff --git a/testsuite/tests/ghc-regress/dph/quickhull/dph-quickhull-fast.stdout b/testsuite/tests/ghc-regress/dph/quickhull/dph-quickhull-fast.stdout
deleted file mode 100644
index f6b2d92e9a..0000000000
--- a/testsuite/tests/ghc-regress/dph/quickhull/dph-quickhull-fast.stdout
+++ /dev/null
@@ -1,1019 +0,0 @@
-<svg width="100%" height="100%" version="1.1" xmlns="http://www.w3.org/2000/svg">
-<polygon points="20,98 50,246 83,354 164,416 236,434 343,427 366,412 379,402 519,143 528,126 529,115 510,96 506,95 117,33 85,28 40,64 " style="fill:#d0d0ff;stroke:#000000;stroke-width:1"/>
-<circle cx="217" cy="201" r="0.5" style="stroke:#000000"/>
-<circle cx="310" cy="266" r="0.5" style="stroke:#000000"/>
-<circle cx="191" cy="353" r="0.5" style="stroke:#000000"/>
-<circle cx="164" cy="416" r="0.5" style="stroke:#000000"/>
-<circle cx="232" cy="257" r="0.5" style="stroke:#000000"/>
-<circle cx="266" cy="398" r="0.5" style="stroke:#000000"/>
-<circle cx="350" cy="201" r="0.5" style="stroke:#000000"/>
-<circle cx="334" cy="202" r="0.5" style="stroke:#000000"/>
-<circle cx="189" cy="151" r="0.5" style="stroke:#000000"/>
-<circle cx="308" cy="307" r="0.5" style="stroke:#000000"/>
-<circle cx="347" cy="160" r="0.5" style="stroke:#000000"/>
-<circle cx="251" cy="251" r="0.5" style="stroke:#000000"/>
-<circle cx="275" cy="241" r="0.5" style="stroke:#000000"/>
-<circle cx="275" cy="398" r="0.5" style="stroke:#000000"/>
-<circle cx="167" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="351" cy="397" r="0.5" style="stroke:#000000"/>
-<circle cx="257" cy="254" r="0.5" style="stroke:#000000"/>
-<circle cx="248" cy="220" r="0.5" style="stroke:#000000"/>
-<circle cx="250" cy="252" r="0.5" style="stroke:#000000"/>
-<circle cx="191" cy="222" r="0.5" style="stroke:#000000"/>
-<circle cx="93" cy="200" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="195" r="0.5" style="stroke:#000000"/>
-<circle cx="287" cy="84" r="0.5" style="stroke:#000000"/>
-<circle cx="90" cy="198" r="0.5" style="stroke:#000000"/>
-<circle cx="149" cy="175" r="0.5" style="stroke:#000000"/>
-<circle cx="342" cy="311" r="0.5" style="stroke:#000000"/>
-<circle cx="391" cy="360" r="0.5" style="stroke:#000000"/>
-<circle cx="277" cy="310" r="0.5" style="stroke:#000000"/>
-<circle cx="341" cy="421" r="0.5" style="stroke:#000000"/>
-<circle cx="274" cy="136" r="0.5" style="stroke:#000000"/>
-<circle cx="187" cy="278" r="0.5" style="stroke:#000000"/>
-<circle cx="343" cy="427" r="0.5" style="stroke:#000000"/>
-<circle cx="255" cy="170" r="0.5" style="stroke:#000000"/>
-<circle cx="158" cy="329" r="0.5" style="stroke:#000000"/>
-<circle cx="306" cy="196" r="0.5" style="stroke:#000000"/>
-<circle cx="315" cy="261" r="0.5" style="stroke:#000000"/>
-<circle cx="214" cy="361" r="0.5" style="stroke:#000000"/>
-<circle cx="306" cy="304" r="0.5" style="stroke:#000000"/>
-<circle cx="229" cy="219" r="0.5" style="stroke:#000000"/>
-<circle cx="227" cy="351" r="0.5" style="stroke:#000000"/>
-<circle cx="228" cy="196" r="0.5" style="stroke:#000000"/>
-<circle cx="314" cy="280" r="0.5" style="stroke:#000000"/>
-<circle cx="209" cy="195" r="0.5" style="stroke:#000000"/>
-<circle cx="367" cy="217" r="0.5" style="stroke:#000000"/>
-<circle cx="176" cy="212" r="0.5" style="stroke:#000000"/>
-<circle cx="117" cy="194" r="0.5" style="stroke:#000000"/>
-<circle cx="318" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="250" cy="251" r="0.5" style="stroke:#000000"/>
-<circle cx="355" cy="406" r="0.5" style="stroke:#000000"/>
-<circle cx="252" cy="246" r="0.5" style="stroke:#000000"/>
-<circle cx="219" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="217" cy="232" r="0.5" style="stroke:#000000"/>
-<circle cx="283" cy="220" r="0.5" style="stroke:#000000"/>
-<circle cx="239" cy="207" r="0.5" style="stroke:#000000"/>
-<circle cx="266" cy="255" r="0.5" style="stroke:#000000"/>
-<circle cx="310" cy="324" r="0.5" style="stroke:#000000"/>
-<circle cx="200" cy="248" r="0.5" style="stroke:#000000"/>
-<circle cx="387" cy="360" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="186" r="0.5" style="stroke:#000000"/>
-<circle cx="126" cy="236" r="0.5" style="stroke:#000000"/>
-<circle cx="257" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="255" cy="250" r="0.5" style="stroke:#000000"/>
-<circle cx="50" cy="246" r="0.5" style="stroke:#000000"/>
-<circle cx="231" cy="340" r="0.5" style="stroke:#000000"/>
-<circle cx="189" cy="287" r="0.5" style="stroke:#000000"/>
-<circle cx="188" cy="186" r="0.5" style="stroke:#000000"/>
-<circle cx="366" cy="412" r="0.5" style="stroke:#000000"/>
-<circle cx="183" cy="139" r="0.5" style="stroke:#000000"/>
-<circle cx="305" cy="113" r="0.5" style="stroke:#000000"/>
-<circle cx="286" cy="146" r="0.5" style="stroke:#000000"/>
-<circle cx="399" cy="241" r="0.5" style="stroke:#000000"/>
-<circle cx="289" cy="404" r="0.5" style="stroke:#000000"/>
-<circle cx="346" cy="157" r="0.5" style="stroke:#000000"/>
-<circle cx="287" cy="143" r="0.5" style="stroke:#000000"/>
-<circle cx="223" cy="236" r="0.5" style="stroke:#000000"/>
-<circle cx="181" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="134" cy="249" r="0.5" style="stroke:#000000"/>
-<circle cx="238" cy="274" r="0.5" style="stroke:#000000"/>
-<circle cx="246" cy="250" r="0.5" style="stroke:#000000"/>
-<circle cx="201" cy="395" r="0.5" style="stroke:#000000"/>
-<circle cx="192" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="260" cy="296" r="0.5" style="stroke:#000000"/>
-<circle cx="244" cy="399" r="0.5" style="stroke:#000000"/>
-<circle cx="256" cy="303" r="0.5" style="stroke:#000000"/>
-<circle cx="202" cy="221" r="0.5" style="stroke:#000000"/>
-<circle cx="361" cy="406" r="0.5" style="stroke:#000000"/>
-<circle cx="275" cy="235" r="0.5" style="stroke:#000000"/>
-<circle cx="180" cy="305" r="0.5" style="stroke:#000000"/>
-<circle cx="258" cy="241" r="0.5" style="stroke:#000000"/>
-<circle cx="253" cy="237" r="0.5" style="stroke:#000000"/>
-<circle cx="239" cy="408" r="0.5" style="stroke:#000000"/>
-<circle cx="247" cy="254" r="0.5" style="stroke:#000000"/>
-<circle cx="223" cy="265" r="0.5" style="stroke:#000000"/>
-<circle cx="244" cy="253" r="0.5" style="stroke:#000000"/>
-<circle cx="174" cy="346" r="0.5" style="stroke:#000000"/>
-<circle cx="373" cy="334" r="0.5" style="stroke:#000000"/>
-<circle cx="292" cy="82" r="0.5" style="stroke:#000000"/>
-<circle cx="240" cy="388" r="0.5" style="stroke:#000000"/>
-<circle cx="263" cy="225" r="0.5" style="stroke:#000000"/>
-<circle cx="252" cy="207" r="0.5" style="stroke:#000000"/>
-<circle cx="233" cy="287" r="0.5" style="stroke:#000000"/>
-<circle cx="234" cy="245" r="0.5" style="stroke:#000000"/>
-<circle cx="285" cy="264" r="0.5" style="stroke:#000000"/>
-<circle cx="176" cy="259" r="0.5" style="stroke:#000000"/>
-<circle cx="284" cy="256" r="0.5" style="stroke:#000000"/>
-<circle cx="233" cy="258" r="0.5" style="stroke:#000000"/>
-<circle cx="108" cy="336" r="0.5" style="stroke:#000000"/>
-<circle cx="379" cy="402" r="0.5" style="stroke:#000000"/>
-<circle cx="260" cy="256" r="0.5" style="stroke:#000000"/>
-<circle cx="232" cy="265" r="0.5" style="stroke:#000000"/>
-<circle cx="432" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="347" cy="197" r="0.5" style="stroke:#000000"/>
-<circle cx="248" cy="249" r="0.5" style="stroke:#000000"/>
-<circle cx="176" cy="213" r="0.5" style="stroke:#000000"/>
-<circle cx="330" cy="370" r="0.5" style="stroke:#000000"/>
-<circle cx="249" cy="253" r="0.5" style="stroke:#000000"/>
-<circle cx="249" cy="243" r="0.5" style="stroke:#000000"/>
-<circle cx="119" cy="320" r="0.5" style="stroke:#000000"/>
-<circle cx="280" cy="263" r="0.5" style="stroke:#000000"/>
-<circle cx="317" cy="287" r="0.5" style="stroke:#000000"/>
-<circle cx="304" cy="209" r="0.5" style="stroke:#000000"/>
-<circle cx="315" cy="193" r="0.5" style="stroke:#000000"/>
-<circle cx="304" cy="109" r="0.5" style="stroke:#000000"/>
-<circle cx="119" cy="179" r="0.5" style="stroke:#000000"/>
-<circle cx="188" cy="215" r="0.5" style="stroke:#000000"/>
-<circle cx="263" cy="218" r="0.5" style="stroke:#000000"/>
-<circle cx="196" cy="228" r="0.5" style="stroke:#000000"/>
-<circle cx="371" cy="307" r="0.5" style="stroke:#000000"/>
-<circle cx="285" cy="263" r="0.5" style="stroke:#000000"/>
-<circle cx="130" cy="217" r="0.5" style="stroke:#000000"/>
-<circle cx="250" cy="250" r="0.5" style="stroke:#000000"/>
-<circle cx="335" cy="201" r="0.5" style="stroke:#000000"/>
-<circle cx="211" cy="145" r="0.5" style="stroke:#000000"/>
-<circle cx="242" cy="182" r="0.5" style="stroke:#000000"/>
-<circle cx="221" cy="256" r="0.5" style="stroke:#000000"/>
-<circle cx="177" cy="398" r="0.5" style="stroke:#000000"/>
-<circle cx="333" cy="158" r="0.5" style="stroke:#000000"/>
-<circle cx="199" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="342" cy="153" r="0.5" style="stroke:#000000"/>
-<circle cx="273" cy="419" r="0.5" style="stroke:#000000"/>
-<circle cx="227" cy="173" r="0.5" style="stroke:#000000"/>
-<circle cx="169" cy="242" r="0.5" style="stroke:#000000"/>
-<circle cx="294" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="303" cy="155" r="0.5" style="stroke:#000000"/>
-<circle cx="211" cy="124" r="0.5" style="stroke:#000000"/>
-<circle cx="253" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="254" cy="246" r="0.5" style="stroke:#000000"/>
-<circle cx="377" cy="388" r="0.5" style="stroke:#000000"/>
-<circle cx="130" cy="285" r="0.5" style="stroke:#000000"/>
-<circle cx="273" cy="215" r="0.5" style="stroke:#000000"/>
-<circle cx="438" cy="229" r="0.5" style="stroke:#000000"/>
-<circle cx="446" cy="216" r="0.5" style="stroke:#000000"/>
-<circle cx="242" cy="238" r="0.5" style="stroke:#000000"/>
-<circle cx="224" cy="229" r="0.5" style="stroke:#000000"/>
-<circle cx="133" cy="181" r="0.5" style="stroke:#000000"/>
-<circle cx="270" cy="222" r="0.5" style="stroke:#000000"/>
-<circle cx="275" cy="237" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="202" r="0.5" style="stroke:#000000"/>
-<circle cx="416" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="366" cy="244" r="0.5" style="stroke:#000000"/>
-<circle cx="279" cy="186" r="0.5" style="stroke:#000000"/>
-<circle cx="134" cy="353" r="0.5" style="stroke:#000000"/>
-<circle cx="99" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="177" cy="198" r="0.5" style="stroke:#000000"/>
-<circle cx="239" cy="253" r="0.5" style="stroke:#000000"/>
-<circle cx="298" cy="190" r="0.5" style="stroke:#000000"/>
-<circle cx="213" cy="70" r="0.5" style="stroke:#000000"/>
-<circle cx="122" cy="236" r="0.5" style="stroke:#000000"/>
-<circle cx="318" cy="92" r="0.5" style="stroke:#000000"/>
-<circle cx="196" cy="362" r="0.5" style="stroke:#000000"/>
-<circle cx="234" cy="235" r="0.5" style="stroke:#000000"/>
-<circle cx="250" cy="250" r="0.5" style="stroke:#000000"/>
-<circle cx="321" cy="367" r="0.5" style="stroke:#000000"/>
-<circle cx="251" cy="249" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="154" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="308" r="0.5" style="stroke:#000000"/>
-<circle cx="110" cy="178" r="0.5" style="stroke:#000000"/>
-<circle cx="229" cy="216" r="0.5" style="stroke:#000000"/>
-<circle cx="421" cy="250" r="0.5" style="stroke:#000000"/>
-<circle cx="215" cy="269" r="0.5" style="stroke:#000000"/>
-<circle cx="131" cy="157" r="0.5" style="stroke:#000000"/>
-<circle cx="238" cy="245" r="0.5" style="stroke:#000000"/>
-<circle cx="264" cy="224" r="0.5" style="stroke:#000000"/>
-<circle cx="79" cy="327" r="0.5" style="stroke:#000000"/>
-<circle cx="424" cy="266" r="0.5" style="stroke:#000000"/>
-<circle cx="237" cy="232" r="0.5" style="stroke:#000000"/>
-<circle cx="142" cy="253" r="0.5" style="stroke:#000000"/>
-<circle cx="156" cy="355" r="0.5" style="stroke:#000000"/>
-<circle cx="239" cy="239" r="0.5" style="stroke:#000000"/>
-<circle cx="238" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="177" cy="396" r="0.5" style="stroke:#000000"/>
-<circle cx="310" cy="152" r="0.5" style="stroke:#000000"/>
-<circle cx="83" cy="354" r="0.5" style="stroke:#000000"/>
-<circle cx="236" cy="434" r="0.5" style="stroke:#000000"/>
-<circle cx="439" cy="287" r="0.5" style="stroke:#000000"/>
-<circle cx="173" cy="232" r="0.5" style="stroke:#000000"/>
-<circle cx="181" cy="143" r="0.5" style="stroke:#000000"/>
-<circle cx="404" cy="232" r="0.5" style="stroke:#000000"/>
-<circle cx="173" cy="177" r="0.5" style="stroke:#000000"/>
-<circle cx="362" cy="161" r="0.5" style="stroke:#000000"/>
-<circle cx="87" cy="81" r="0.5" style="stroke:#000000"/>
-<circle cx="124" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="76" cy="141" r="0.5" style="stroke:#000000"/>
-<circle cx="65" cy="166" r="0.5" style="stroke:#000000"/>
-<circle cx="93" cy="103" r="0.5" style="stroke:#000000"/>
-<circle cx="107" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="140" cy="80" r="0.5" style="stroke:#000000"/>
-<circle cx="134" cy="81" r="0.5" style="stroke:#000000"/>
-<circle cx="76" cy="60" r="0.5" style="stroke:#000000"/>
-<circle cx="123" cy="123" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="64" r="0.5" style="stroke:#000000"/>
-<circle cx="100" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="110" cy="96" r="0.5" style="stroke:#000000"/>
-<circle cx="110" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="67" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="140" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="103" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="99" cy="88" r="0.5" style="stroke:#000000"/>
-<circle cx="100" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="76" cy="89" r="0.5" style="stroke:#000000"/>
-<circle cx="37" cy="80" r="0.5" style="stroke:#000000"/>
-<circle cx="62" cy="78" r="0.5" style="stroke:#000000"/>
-<circle cx="115" cy="34" r="0.5" style="stroke:#000000"/>
-<circle cx="36" cy="79" r="0.5" style="stroke:#000000"/>
-<circle cx="60" cy="70" r="0.5" style="stroke:#000000"/>
-<circle cx="137" cy="124" r="0.5" style="stroke:#000000"/>
-<circle cx="156" cy="144" r="0.5" style="stroke:#000000"/>
-<circle cx="111" cy="124" r="0.5" style="stroke:#000000"/>
-<circle cx="137" cy="168" r="0.5" style="stroke:#000000"/>
-<circle cx="110" cy="55" r="0.5" style="stroke:#000000"/>
-<circle cx="75" cy="111" r="0.5" style="stroke:#000000"/>
-<circle cx="137" cy="171" r="0.5" style="stroke:#000000"/>
-<circle cx="102" cy="68" r="0.5" style="stroke:#000000"/>
-<circle cx="63" cy="131" r="0.5" style="stroke:#000000"/>
-<circle cx="122" cy="78" r="0.5" style="stroke:#000000"/>
-<circle cx="126" cy="104" r="0.5" style="stroke:#000000"/>
-<circle cx="86" cy="144" r="0.5" style="stroke:#000000"/>
-<circle cx="123" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="92" cy="88" r="0.5" style="stroke:#000000"/>
-<circle cx="91" cy="140" r="0.5" style="stroke:#000000"/>
-<circle cx="91" cy="78" r="0.5" style="stroke:#000000"/>
-<circle cx="126" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="84" cy="78" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="87" r="0.5" style="stroke:#000000"/>
-<circle cx="70" cy="85" r="0.5" style="stroke:#000000"/>
-<circle cx="47" cy="77" r="0.5" style="stroke:#000000"/>
-<circle cx="127" cy="46" r="0.5" style="stroke:#000000"/>
-<circle cx="100" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="142" cy="163" r="0.5" style="stroke:#000000"/>
-<circle cx="101" cy="99" r="0.5" style="stroke:#000000"/>
-<circle cx="88" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="87" cy="93" r="0.5" style="stroke:#000000"/>
-<circle cx="113" cy="88" r="0.5" style="stroke:#000000"/>
-<circle cx="96" cy="83" r="0.5" style="stroke:#000000"/>
-<circle cx="106" cy="102" r="0.5" style="stroke:#000000"/>
-<circle cx="124" cy="130" r="0.5" style="stroke:#000000"/>
-<circle cx="80" cy="99" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="144" r="0.5" style="stroke:#000000"/>
-<circle cx="59" cy="74" r="0.5" style="stroke:#000000"/>
-<circle cx="50" cy="94" r="0.5" style="stroke:#000000"/>
-<circle cx="103" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="102" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="20" cy="98" r="0.5" style="stroke:#000000"/>
-<circle cx="92" cy="136" r="0.5" style="stroke:#000000"/>
-<circle cx="75" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="75" cy="74" r="0.5" style="stroke:#000000"/>
-<circle cx="146" cy="165" r="0.5" style="stroke:#000000"/>
-<circle cx="73" cy="56" r="0.5" style="stroke:#000000"/>
-<circle cx="122" cy="45" r="0.5" style="stroke:#000000"/>
-<circle cx="115" cy="59" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="97" r="0.5" style="stroke:#000000"/>
-<circle cx="116" cy="161" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="63" r="0.5" style="stroke:#000000"/>
-<circle cx="115" cy="57" r="0.5" style="stroke:#000000"/>
-<circle cx="89" cy="94" r="0.5" style="stroke:#000000"/>
-<circle cx="72" cy="64" r="0.5" style="stroke:#000000"/>
-<circle cx="53" cy="99" r="0.5" style="stroke:#000000"/>
-<circle cx="95" cy="110" r="0.5" style="stroke:#000000"/>
-<circle cx="99" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="81" cy="158" r="0.5" style="stroke:#000000"/>
-<circle cx="77" cy="46" r="0.5" style="stroke:#000000"/>
-<circle cx="104" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="98" cy="160" r="0.5" style="stroke:#000000"/>
-<circle cx="102" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="81" cy="88" r="0.5" style="stroke:#000000"/>
-<circle cx="145" cy="163" r="0.5" style="stroke:#000000"/>
-<circle cx="110" cy="94" r="0.5" style="stroke:#000000"/>
-<circle cx="72" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="103" cy="96" r="0.5" style="stroke:#000000"/>
-<circle cx="101" cy="95" r="0.5" style="stroke:#000000"/>
-<circle cx="95" cy="163" r="0.5" style="stroke:#000000"/>
-<circle cx="99" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="89" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="98" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="70" cy="138" r="0.5" style="stroke:#000000"/>
-<circle cx="149" cy="134" r="0.5" style="stroke:#000000"/>
-<circle cx="117" cy="33" r="0.5" style="stroke:#000000"/>
-<circle cx="96" cy="155" r="0.5" style="stroke:#000000"/>
-<circle cx="105" cy="90" r="0.5" style="stroke:#000000"/>
-<circle cx="101" cy="83" r="0.5" style="stroke:#000000"/>
-<circle cx="93" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="94" cy="98" r="0.5" style="stroke:#000000"/>
-<circle cx="114" cy="105" r="0.5" style="stroke:#000000"/>
-<circle cx="70" cy="103" r="0.5" style="stroke:#000000"/>
-<circle cx="114" cy="103" r="0.5" style="stroke:#000000"/>
-<circle cx="93" cy="103" r="0.5" style="stroke:#000000"/>
-<circle cx="43" cy="135" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="161" r="0.5" style="stroke:#000000"/>
-<circle cx="104" cy="102" r="0.5" style="stroke:#000000"/>
-<circle cx="93" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="173" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="79" r="0.5" style="stroke:#000000"/>
-<circle cx="99" cy="99" r="0.5" style="stroke:#000000"/>
-<circle cx="70" cy="85" r="0.5" style="stroke:#000000"/>
-<circle cx="132" cy="148" r="0.5" style="stroke:#000000"/>
-<circle cx="99" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="100" cy="97" r="0.5" style="stroke:#000000"/>
-<circle cx="47" cy="128" r="0.5" style="stroke:#000000"/>
-<circle cx="112" cy="105" r="0.5" style="stroke:#000000"/>
-<circle cx="127" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="122" cy="84" r="0.5" style="stroke:#000000"/>
-<circle cx="126" cy="77" r="0.5" style="stroke:#000000"/>
-<circle cx="121" cy="44" r="0.5" style="stroke:#000000"/>
-<circle cx="48" cy="72" r="0.5" style="stroke:#000000"/>
-<circle cx="75" cy="86" r="0.5" style="stroke:#000000"/>
-<circle cx="105" cy="87" r="0.5" style="stroke:#000000"/>
-<circle cx="79" cy="91" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="123" r="0.5" style="stroke:#000000"/>
-<circle cx="114" cy="105" r="0.5" style="stroke:#000000"/>
-<circle cx="52" cy="87" r="0.5" style="stroke:#000000"/>
-<circle cx="100" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="134" cy="80" r="0.5" style="stroke:#000000"/>
-<circle cx="84" cy="58" r="0.5" style="stroke:#000000"/>
-<circle cx="97" cy="73" r="0.5" style="stroke:#000000"/>
-<circle cx="88" cy="102" r="0.5" style="stroke:#000000"/>
-<circle cx="71" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="133" cy="63" r="0.5" style="stroke:#000000"/>
-<circle cx="80" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="137" cy="61" r="0.5" style="stroke:#000000"/>
-<circle cx="109" cy="168" r="0.5" style="stroke:#000000"/>
-<circle cx="91" cy="69" r="0.5" style="stroke:#000000"/>
-<circle cx="68" cy="97" r="0.5" style="stroke:#000000"/>
-<circle cx="117" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="121" cy="62" r="0.5" style="stroke:#000000"/>
-<circle cx="84" cy="50" r="0.5" style="stroke:#000000"/>
-<circle cx="101" cy="46" r="0.5" style="stroke:#000000"/>
-<circle cx="102" cy="98" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="155" r="0.5" style="stroke:#000000"/>
-<circle cx="52" cy="114" r="0.5" style="stroke:#000000"/>
-<circle cx="109" cy="86" r="0.5" style="stroke:#000000"/>
-<circle cx="175" cy="91" r="0.5" style="stroke:#000000"/>
-<circle cx="178" cy="87" r="0.5" style="stroke:#000000"/>
-<circle cx="97" cy="95" r="0.5" style="stroke:#000000"/>
-<circle cx="90" cy="92" r="0.5" style="stroke:#000000"/>
-<circle cx="53" cy="72" r="0.5" style="stroke:#000000"/>
-<circle cx="108" cy="89" r="0.5" style="stroke:#000000"/>
-<circle cx="110" cy="95" r="0.5" style="stroke:#000000"/>
-<circle cx="64" cy="81" r="0.5" style="stroke:#000000"/>
-<circle cx="166" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="146" cy="97" r="0.5" style="stroke:#000000"/>
-<circle cx="112" cy="74" r="0.5" style="stroke:#000000"/>
-<circle cx="54" cy="141" r="0.5" style="stroke:#000000"/>
-<circle cx="40" cy="64" r="0.5" style="stroke:#000000"/>
-<circle cx="71" cy="79" r="0.5" style="stroke:#000000"/>
-<circle cx="96" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="119" cy="76" r="0.5" style="stroke:#000000"/>
-<circle cx="85" cy="28" r="0.5" style="stroke:#000000"/>
-<circle cx="49" cy="94" r="0.5" style="stroke:#000000"/>
-<circle cx="127" cy="37" r="0.5" style="stroke:#000000"/>
-<circle cx="78" cy="145" r="0.5" style="stroke:#000000"/>
-<circle cx="94" cy="94" r="0.5" style="stroke:#000000"/>
-<circle cx="100" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="128" cy="147" r="0.5" style="stroke:#000000"/>
-<circle cx="101" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="56" cy="62" r="0.5" style="stroke:#000000"/>
-<circle cx="61" cy="123" r="0.5" style="stroke:#000000"/>
-<circle cx="44" cy="71" r="0.5" style="stroke:#000000"/>
-<circle cx="92" cy="86" r="0.5" style="stroke:#000000"/>
-<circle cx="169" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="86" cy="107" r="0.5" style="stroke:#000000"/>
-<circle cx="52" cy="63" r="0.5" style="stroke:#000000"/>
-<circle cx="95" cy="98" r="0.5" style="stroke:#000000"/>
-<circle cx="106" cy="89" r="0.5" style="stroke:#000000"/>
-<circle cx="32" cy="131" r="0.5" style="stroke:#000000"/>
-<circle cx="170" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="95" cy="93" r="0.5" style="stroke:#000000"/>
-<circle cx="57" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="62" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="95" cy="95" r="0.5" style="stroke:#000000"/>
-<circle cx="95" cy="129" r="0.5" style="stroke:#000000"/>
-<circle cx="71" cy="158" r="0.5" style="stroke:#000000"/>
-<circle cx="124" cy="61" r="0.5" style="stroke:#000000"/>
-<circle cx="33" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="94" cy="174" r="0.5" style="stroke:#000000"/>
-<circle cx="176" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="69" cy="93" r="0.5" style="stroke:#000000"/>
-<circle cx="73" cy="57" r="0.5" style="stroke:#000000"/>
-<circle cx="162" cy="93" r="0.5" style="stroke:#000000"/>
-<circle cx="69" cy="71" r="0.5" style="stroke:#000000"/>
-<circle cx="145" cy="64" r="0.5" style="stroke:#000000"/>
-<circle cx="145" cy="293" r="0.5" style="stroke:#000000"/>
-<circle cx="159" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="315" r="0.5" style="stroke:#000000"/>
-<circle cx="137" cy="325" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="165" cy="293" r="0.5" style="stroke:#000000"/>
-<circle cx="163" cy="293" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="285" r="0.5" style="stroke:#000000"/>
-<circle cx="159" cy="309" r="0.5" style="stroke:#000000"/>
-<circle cx="164" cy="287" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="154" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="154" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="138" cy="306" r="0.5" style="stroke:#000000"/>
-<circle cx="165" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="296" r="0.5" style="stroke:#000000"/>
-<circle cx="126" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="136" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="156" cy="275" r="0.5" style="stroke:#000000"/>
-<circle cx="126" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="135" cy="289" r="0.5" style="stroke:#000000"/>
-<circle cx="164" cy="309" r="0.5" style="stroke:#000000"/>
-<circle cx="171" cy="316" r="0.5" style="stroke:#000000"/>
-<circle cx="154" cy="309" r="0.5" style="stroke:#000000"/>
-<circle cx="164" cy="326" r="0.5" style="stroke:#000000"/>
-<circle cx="154" cy="283" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="304" r="0.5" style="stroke:#000000"/>
-<circle cx="164" cy="326" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="288" r="0.5" style="stroke:#000000"/>
-<circle cx="136" cy="312" r="0.5" style="stroke:#000000"/>
-<circle cx="158" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="145" cy="317" r="0.5" style="stroke:#000000"/>
-<circle cx="158" cy="308" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="315" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="304" r="0.5" style="stroke:#000000"/>
-<circle cx="144" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="168" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="294" r="0.5" style="stroke:#000000"/>
-<circle cx="130" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="280" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="166" cy="323" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="145" cy="307" r="0.5" style="stroke:#000000"/>
-<circle cx="145" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="296" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="294" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="159" cy="311" r="0.5" style="stroke:#000000"/>
-<circle cx="142" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="171" cy="317" r="0.5" style="stroke:#000000"/>
-<circle cx="135" cy="290" r="0.5" style="stroke:#000000"/>
-<circle cx="131" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="307" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="120" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="314" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="305" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="290" r="0.5" style="stroke:#000000"/>
-<circle cx="167" cy="324" r="0.5" style="stroke:#000000"/>
-<circle cx="140" cy="283" r="0.5" style="stroke:#000000"/>
-<circle cx="158" cy="279" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="284" r="0.5" style="stroke:#000000"/>
-<circle cx="172" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="156" cy="323" r="0.5" style="stroke:#000000"/>
-<circle cx="164" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="156" cy="284" r="0.5" style="stroke:#000000"/>
-<circle cx="146" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="140" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="133" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="304" r="0.5" style="stroke:#000000"/>
-<circle cx="149" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="143" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="280" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="307" r="0.5" style="stroke:#000000"/>
-<circle cx="149" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="308" r="0.5" style="stroke:#000000"/>
-<circle cx="143" cy="296" r="0.5" style="stroke:#000000"/>
-<circle cx="167" cy="323" r="0.5" style="stroke:#000000"/>
-<circle cx="154" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="308" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="324" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="146" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="149" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="314" r="0.5" style="stroke:#000000"/>
-<circle cx="168" cy="313" r="0.5" style="stroke:#000000"/>
-<circle cx="156" cy="275" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="321" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="296" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="294" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="305" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="129" cy="313" r="0.5" style="stroke:#000000"/>
-<circle cx="169" cy="323" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="177" cy="305" r="0.5" style="stroke:#000000"/>
-<circle cx="165" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="294" r="0.5" style="stroke:#000000"/>
-<circle cx="162" cy="318" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="130" cy="310" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="306" r="0.5" style="stroke:#000000"/>
-<circle cx="158" cy="294" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="291" r="0.5" style="stroke:#000000"/>
-<circle cx="158" cy="279" r="0.5" style="stroke:#000000"/>
-<circle cx="130" cy="289" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="142" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="168" cy="309" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="132" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="163" cy="293" r="0.5" style="stroke:#000000"/>
-<circle cx="144" cy="284" r="0.5" style="stroke:#000000"/>
-<circle cx="149" cy="290" r="0.5" style="stroke:#000000"/>
-<circle cx="146" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="163" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="142" cy="307" r="0.5" style="stroke:#000000"/>
-<circle cx="164" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="153" cy="325" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="289" r="0.5" style="stroke:#000000"/>
-<circle cx="138" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="157" cy="306" r="0.5" style="stroke:#000000"/>
-<circle cx="158" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="144" cy="281" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="280" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="169" cy="321" r="0.5" style="stroke:#000000"/>
-<circle cx="132" cy="305" r="0.5" style="stroke:#000000"/>
-<circle cx="153" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="178" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="179" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="149" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="146" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="132" cy="290" r="0.5" style="stroke:#000000"/>
-<circle cx="153" cy="296" r="0.5" style="stroke:#000000"/>
-<circle cx="154" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="136" cy="293" r="0.5" style="stroke:#000000"/>
-<circle cx="175" cy="308" r="0.5" style="stroke:#000000"/>
-<circle cx="167" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="154" cy="290" r="0.5" style="stroke:#000000"/>
-<circle cx="133" cy="316" r="0.5" style="stroke:#000000"/>
-<circle cx="127" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="157" cy="291" r="0.5" style="stroke:#000000"/>
-<circle cx="144" cy="273" r="0.5" style="stroke:#000000"/>
-<circle cx="131" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="276" r="0.5" style="stroke:#000000"/>
-<circle cx="142" cy="317" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="161" cy="318" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="134" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="135" cy="309" r="0.5" style="stroke:#000000"/>
-<circle cx="129" cy="289" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="176" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="145" cy="303" r="0.5" style="stroke:#000000"/>
-<circle cx="132" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="296" r="0.5" style="stroke:#000000"/>
-<circle cx="124" cy="311" r="0.5" style="stroke:#000000"/>
-<circle cx="176" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="134" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="136" cy="316" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="311" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="159" cy="285" r="0.5" style="stroke:#000000"/>
-<circle cx="125" cy="316" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="328" r="0.5" style="stroke:#000000"/>
-<circle cx="178" cy="306" r="0.5" style="stroke:#000000"/>
-<circle cx="138" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="140" cy="284" r="0.5" style="stroke:#000000"/>
-<circle cx="173" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="138" cy="289" r="0.5" style="stroke:#000000"/>
-<circle cx="167" cy="287" r="0.5" style="stroke:#000000"/>
-<circle cx="495" cy="113" r="0.5" style="stroke:#000000"/>
-<circle cx="509" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="135" r="0.5" style="stroke:#000000"/>
-<circle cx="487" cy="145" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="502" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="515" cy="113" r="0.5" style="stroke:#000000"/>
-<circle cx="513" cy="113" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="105" r="0.5" style="stroke:#000000"/>
-<circle cx="509" cy="129" r="0.5" style="stroke:#000000"/>
-<circle cx="514" cy="107" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="504" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="504" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="488" cy="126" r="0.5" style="stroke:#000000"/>
-<circle cx="515" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="476" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="486" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="506" cy="95" r="0.5" style="stroke:#000000"/>
-<circle cx="476" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="485" cy="109" r="0.5" style="stroke:#000000"/>
-<circle cx="514" cy="129" r="0.5" style="stroke:#000000"/>
-<circle cx="521" cy="136" r="0.5" style="stroke:#000000"/>
-<circle cx="504" cy="129" r="0.5" style="stroke:#000000"/>
-<circle cx="514" cy="146" r="0.5" style="stroke:#000000"/>
-<circle cx="504" cy="103" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="124" r="0.5" style="stroke:#000000"/>
-<circle cx="514" cy="146" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="108" r="0.5" style="stroke:#000000"/>
-<circle cx="486" cy="132" r="0.5" style="stroke:#000000"/>
-<circle cx="508" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="510" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="495" cy="137" r="0.5" style="stroke:#000000"/>
-<circle cx="508" cy="128" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="135" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="510" cy="124" r="0.5" style="stroke:#000000"/>
-<circle cx="494" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="518" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="114" r="0.5" style="stroke:#000000"/>
-<circle cx="480" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="510" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="516" cy="143" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="495" cy="127" r="0.5" style="stroke:#000000"/>
-<circle cx="495" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="505" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="114" r="0.5" style="stroke:#000000"/>
-<circle cx="502" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="509" cy="131" r="0.5" style="stroke:#000000"/>
-<circle cx="492" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="521" cy="137" r="0.5" style="stroke:#000000"/>
-<circle cx="485" cy="110" r="0.5" style="stroke:#000000"/>
-<circle cx="481" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="127" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="470" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="134" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="125" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="110" r="0.5" style="stroke:#000000"/>
-<circle cx="517" cy="144" r="0.5" style="stroke:#000000"/>
-<circle cx="490" cy="103" r="0.5" style="stroke:#000000"/>
-<circle cx="508" cy="99" r="0.5" style="stroke:#000000"/>
-<circle cx="505" cy="104" r="0.5" style="stroke:#000000"/>
-<circle cx="522" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="506" cy="143" r="0.5" style="stroke:#000000"/>
-<circle cx="514" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="506" cy="104" r="0.5" style="stroke:#000000"/>
-<circle cx="496" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="490" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="483" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="124" r="0.5" style="stroke:#000000"/>
-<circle cx="499" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="493" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="502" cy="127" r="0.5" style="stroke:#000000"/>
-<circle cx="499" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="128" r="0.5" style="stroke:#000000"/>
-<circle cx="493" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="517" cy="143" r="0.5" style="stroke:#000000"/>
-<circle cx="504" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="128" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="144" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="496" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="499" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="134" r="0.5" style="stroke:#000000"/>
-<circle cx="518" cy="133" r="0.5" style="stroke:#000000"/>
-<circle cx="506" cy="95" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="141" r="0.5" style="stroke:#000000"/>
-<circle cx="502" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="114" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="125" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="505" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="505" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="479" cy="133" r="0.5" style="stroke:#000000"/>
-<circle cx="519" cy="143" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="527" cy="125" r="0.5" style="stroke:#000000"/>
-<circle cx="515" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="114" r="0.5" style="stroke:#000000"/>
-<circle cx="512" cy="138" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="480" cy="130" r="0.5" style="stroke:#000000"/>
-<circle cx="505" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="510" cy="126" r="0.5" style="stroke:#000000"/>
-<circle cx="508" cy="114" r="0.5" style="stroke:#000000"/>
-<circle cx="510" cy="111" r="0.5" style="stroke:#000000"/>
-<circle cx="508" cy="99" r="0.5" style="stroke:#000000"/>
-<circle cx="480" cy="109" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="502" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="492" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="518" cy="129" r="0.5" style="stroke:#000000"/>
-<circle cx="505" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="482" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="513" cy="113" r="0.5" style="stroke:#000000"/>
-<circle cx="494" cy="104" r="0.5" style="stroke:#000000"/>
-<circle cx="499" cy="110" r="0.5" style="stroke:#000000"/>
-<circle cx="496" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="513" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="492" cy="127" r="0.5" style="stroke:#000000"/>
-<circle cx="514" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="503" cy="145" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="109" r="0.5" style="stroke:#000000"/>
-<circle cx="488" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="507" cy="126" r="0.5" style="stroke:#000000"/>
-<circle cx="508" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="494" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="519" cy="141" r="0.5" style="stroke:#000000"/>
-<circle cx="482" cy="125" r="0.5" style="stroke:#000000"/>
-<circle cx="503" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="528" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="529" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="499" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="496" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="482" cy="110" r="0.5" style="stroke:#000000"/>
-<circle cx="503" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="504" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="486" cy="113" r="0.5" style="stroke:#000000"/>
-<circle cx="525" cy="128" r="0.5" style="stroke:#000000"/>
-<circle cx="517" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="504" cy="110" r="0.5" style="stroke:#000000"/>
-<circle cx="483" cy="136" r="0.5" style="stroke:#000000"/>
-<circle cx="477" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="507" cy="111" r="0.5" style="stroke:#000000"/>
-<circle cx="494" cy="93" r="0.5" style="stroke:#000000"/>
-<circle cx="481" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="510" cy="96" r="0.5" style="stroke:#000000"/>
-<circle cx="492" cy="137" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="511" cy="138" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="484" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="485" cy="129" r="0.5" style="stroke:#000000"/>
-<circle cx="479" cy="109" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="526" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="495" cy="123" r="0.5" style="stroke:#000000"/>
-<circle cx="482" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="502" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="474" cy="131" r="0.5" style="stroke:#000000"/>
-<circle cx="526" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="484" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="486" cy="136" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="131" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="509" cy="105" r="0.5" style="stroke:#000000"/>
-<circle cx="475" cy="136" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="148" r="0.5" style="stroke:#000000"/>
-<circle cx="528" cy="126" r="0.5" style="stroke:#000000"/>
-<circle cx="488" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="490" cy="104" r="0.5" style="stroke:#000000"/>
-<circle cx="523" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="488" cy="109" r="0.5" style="stroke:#000000"/>
-<circle cx="517" cy="107" r="0.5" style="stroke:#000000"/>
-<circle cx="275" cy="163" r="0.5" style="stroke:#000000"/>
-<circle cx="345" cy="212" r="0.5" style="stroke:#000000"/>
-<circle cx="256" cy="277" r="0.5" style="stroke:#000000"/>
-<circle cx="235" cy="324" r="0.5" style="stroke:#000000"/>
-<circle cx="286" cy="206" r="0.5" style="stroke:#000000"/>
-<circle cx="312" cy="311" r="0.5" style="stroke:#000000"/>
-<circle cx="375" cy="163" r="0.5" style="stroke:#000000"/>
-<circle cx="363" cy="164" r="0.5" style="stroke:#000000"/>
-<circle cx="254" cy="126" r="0.5" style="stroke:#000000"/>
-<circle cx="343" cy="243" r="0.5" style="stroke:#000000"/>
-<circle cx="372" cy="133" r="0.5" style="stroke:#000000"/>
-<circle cx="301" cy="201" r="0.5" style="stroke:#000000"/>
-<circle cx="319" cy="193" r="0.5" style="stroke:#000000"/>
-<circle cx="319" cy="311" r="0.5" style="stroke:#000000"/>
-<circle cx="238" cy="232" r="0.5" style="stroke:#000000"/>
-<circle cx="376" cy="310" r="0.5" style="stroke:#000000"/>
-<circle cx="305" cy="203" r="0.5" style="stroke:#000000"/>
-<circle cx="299" cy="177" r="0.5" style="stroke:#000000"/>
-<circle cx="300" cy="201" r="0.5" style="stroke:#000000"/>
-<circle cx="256" cy="179" r="0.5" style="stroke:#000000"/>
-<circle cx="182" cy="162" r="0.5" style="stroke:#000000"/>
-<circle cx="229" cy="158" r="0.5" style="stroke:#000000"/>
-<circle cx="328" cy="75" r="0.5" style="stroke:#000000"/>
-<circle cx="180" cy="161" r="0.5" style="stroke:#000000"/>
-<circle cx="225" cy="144" r="0.5" style="stroke:#000000"/>
-<circle cx="369" cy="245" r="0.5" style="stroke:#000000"/>
-<circle cx="406" cy="282" r="0.5" style="stroke:#000000"/>
-<circle cx="320" cy="245" r="0.5" style="stroke:#000000"/>
-<circle cx="369" cy="328" r="0.5" style="stroke:#000000"/>
-<circle cx="318" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="253" cy="221" r="0.5" style="stroke:#000000"/>
-<circle cx="369" cy="332" r="0.5" style="stroke:#000000"/>
-<circle cx="303" cy="140" r="0.5" style="stroke:#000000"/>
-<circle cx="231" cy="259" r="0.5" style="stroke:#000000"/>
-<circle cx="342" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="348" cy="208" r="0.5" style="stroke:#000000"/>
-<circle cx="273" cy="283" r="0.5" style="stroke:#000000"/>
-<circle cx="342" cy="241" r="0.5" style="stroke:#000000"/>
-<circle cx="284" cy="177" r="0.5" style="stroke:#000000"/>
-<circle cx="283" cy="276" r="0.5" style="stroke:#000000"/>
-<circle cx="284" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="348" cy="222" r="0.5" style="stroke:#000000"/>
-<circle cx="269" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="388" cy="175" r="0.5" style="stroke:#000000"/>
-<circle cx="245" cy="172" r="0.5" style="stroke:#000000"/>
-<circle cx="200" cy="158" r="0.5" style="stroke:#000000"/>
-<circle cx="351" cy="99" r="0.5" style="stroke:#000000"/>
-<circle cx="300" cy="201" r="0.5" style="stroke:#000000"/>
-<circle cx="379" cy="317" r="0.5" style="stroke:#000000"/>
-<circle cx="301" cy="197" r="0.5" style="stroke:#000000"/>
-<circle cx="277" cy="236" r="0.5" style="stroke:#000000"/>
-<circle cx="275" cy="187" r="0.5" style="stroke:#000000"/>
-<circle cx="324" cy="178" r="0.5" style="stroke:#000000"/>
-<circle cx="292" cy="168" r="0.5" style="stroke:#000000"/>
-<circle cx="312" cy="204" r="0.5" style="stroke:#000000"/>
-<circle cx="345" cy="255" r="0.5" style="stroke:#000000"/>
-<circle cx="262" cy="198" r="0.5" style="stroke:#000000"/>
-<circle cx="403" cy="283" r="0.5" style="stroke:#000000"/>
-<circle cx="223" cy="152" r="0.5" style="stroke:#000000"/>
-<circle cx="207" cy="189" r="0.5" style="stroke:#000000"/>
-<circle cx="305" cy="237" r="0.5" style="stroke:#000000"/>
-<circle cx="303" cy="200" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="197" r="0.5" style="stroke:#000000"/>
-<circle cx="286" cy="268" r="0.5" style="stroke:#000000"/>
-<circle cx="254" cy="227" r="0.5" style="stroke:#000000"/>
-<circle cx="254" cy="152" r="0.5" style="stroke:#000000"/>
-<circle cx="387" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="250" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="341" cy="97" r="0.5" style="stroke:#000000"/>
-<circle cx="327" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="412" cy="193" r="0.5" style="stroke:#000000"/>
-<circle cx="329" cy="315" r="0.5" style="stroke:#000000"/>
-<circle cx="372" cy="130" r="0.5" style="stroke:#000000"/>
-<circle cx="328" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="279" cy="190" r="0.5" style="stroke:#000000"/>
-<circle cx="248" cy="132" r="0.5" style="stroke:#000000"/>
-<circle cx="213" cy="199" r="0.5" style="stroke:#000000"/>
-<circle cx="291" cy="218" r="0.5" style="stroke:#000000"/>
-<circle cx="297" cy="200" r="0.5" style="stroke:#000000"/>
-<circle cx="264" cy="309" r="0.5" style="stroke:#000000"/>
-<circle cx="257" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="308" cy="235" r="0.5" style="stroke:#000000"/>
-<circle cx="296" cy="312" r="0.5" style="stroke:#000000"/>
-<circle cx="305" cy="240" r="0.5" style="stroke:#000000"/>
-<circle cx="264" cy="178" r="0.5" style="stroke:#000000"/>
-<circle cx="383" cy="317" r="0.5" style="stroke:#000000"/>
-<circle cx="319" cy="189" r="0.5" style="stroke:#000000"/>
-<circle cx="247" cy="241" r="0.5" style="stroke:#000000"/>
-<circle cx="306" cy="193" r="0.5" style="stroke:#000000"/>
-<circle cx="302" cy="190" r="0.5" style="stroke:#000000"/>
-<circle cx="292" cy="319" r="0.5" style="stroke:#000000"/>
-<circle cx="298" cy="203" r="0.5" style="stroke:#000000"/>
-<circle cx="280" cy="211" r="0.5" style="stroke:#000000"/>
-<circle cx="296" cy="202" r="0.5" style="stroke:#000000"/>
-<circle cx="243" cy="272" r="0.5" style="stroke:#000000"/>
-<circle cx="392" cy="263" r="0.5" style="stroke:#000000"/>
-<circle cx="331" cy="74" r="0.5" style="stroke:#000000"/>
-<circle cx="292" cy="303" r="0.5" style="stroke:#000000"/>
-<circle cx="310" cy="181" r="0.5" style="stroke:#000000"/>
-<circle cx="302" cy="168" r="0.5" style="stroke:#000000"/>
-<circle cx="287" cy="227" r="0.5" style="stroke:#000000"/>
-<circle cx="288" cy="196" r="0.5" style="stroke:#000000"/>
-<circle cx="326" cy="210" r="0.5" style="stroke:#000000"/>
-<circle cx="244" cy="206" r="0.5" style="stroke:#000000"/>
-<circle cx="325" cy="205" r="0.5" style="stroke:#000000"/>
-<circle cx="287" cy="206" r="0.5" style="stroke:#000000"/>
-<circle cx="194" cy="265" r="0.5" style="stroke:#000000"/>
-<circle cx="397" cy="314" r="0.5" style="stroke:#000000"/>
-<circle cx="307" cy="204" r="0.5" style="stroke:#000000"/>
-<circle cx="286" cy="212" r="0.5" style="stroke:#000000"/>
-<circle cx="436" cy="227" r="0.5" style="stroke:#000000"/>
-<circle cx="373" cy="161" r="0.5" style="stroke:#000000"/>
-<circle cx="298" cy="199" r="0.5" style="stroke:#000000"/>
-<circle cx="244" cy="172" r="0.5" style="stroke:#000000"/>
-<circle cx="360" cy="290" r="0.5" style="stroke:#000000"/>
-<circle cx="299" cy="202" r="0.5" style="stroke:#000000"/>
-<circle cx="300" cy="195" r="0.5" style="stroke:#000000"/>
-<circle cx="201" cy="252" r="0.5" style="stroke:#000000"/>
-<circle cx="323" cy="210" r="0.5" style="stroke:#000000"/>
-<circle cx="350" cy="228" r="0.5" style="stroke:#000000"/>
-<circle cx="341" cy="170" r="0.5" style="stroke:#000000"/>
-<circle cx="349" cy="157" r="0.5" style="stroke:#000000"/>
-<circle cx="340" cy="94" r="0.5" style="stroke:#000000"/>
-<circle cx="202" cy="147" r="0.5" style="stroke:#000000"/>
-<circle cx="254" cy="174" r="0.5" style="stroke:#000000"/>
-<circle cx="309" cy="176" r="0.5" style="stroke:#000000"/>
-<circle cx="260" cy="183" r="0.5" style="stroke:#000000"/>
-<circle cx="391" cy="243" r="0.5" style="stroke:#000000"/>
-<circle cx="326" cy="210" r="0.5" style="stroke:#000000"/>
-<circle cx="210" cy="175" r="0.5" style="stroke:#000000"/>
-<circle cx="300" cy="200" r="0.5" style="stroke:#000000"/>
-<circle cx="364" cy="163" r="0.5" style="stroke:#000000"/>
-<circle cx="271" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="294" cy="149" r="0.5" style="stroke:#000000"/>
-<circle cx="278" cy="205" r="0.5" style="stroke:#000000"/>
-<circle cx="245" cy="311" r="0.5" style="stroke:#000000"/>
-<circle cx="363" cy="131" r="0.5" style="stroke:#000000"/>
-<circle cx="262" cy="236" r="0.5" style="stroke:#000000"/>
-<circle cx="369" cy="128" r="0.5" style="stroke:#000000"/>
-<circle cx="317" cy="327" r="0.5" style="stroke:#000000"/>
-<circle cx="283" cy="143" r="0.5" style="stroke:#000000"/>
-<circle cx="239" cy="194" r="0.5" style="stroke:#000000"/>
-<circle cx="333" cy="231" r="0.5" style="stroke:#000000"/>
-<circle cx="340" cy="129" r="0.5" style="stroke:#000000"/>
-<circle cx="271" cy="105" r="0.5" style="stroke:#000000"/>
-<circle cx="302" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="303" cy="197" r="0.5" style="stroke:#000000"/>
-<circle cx="395" cy="303" r="0.5" style="stroke:#000000"/>
-<circle cx="210" cy="227" r="0.5" style="stroke:#000000"/>
-<circle cx="317" cy="174" r="0.5" style="stroke:#000000"/>
-<circle cx="441" cy="184" r="0.5" style="stroke:#000000"/>
-<circle cx="447" cy="175" r="0.5" style="stroke:#000000"/>
-<circle cx="294" cy="191" r="0.5" style="stroke:#000000"/>
-<circle cx="281" cy="184" r="0.5" style="stroke:#000000"/>
-<circle cx="212" cy="148" r="0.5" style="stroke:#000000"/>
-<circle cx="315" cy="179" r="0.5" style="stroke:#000000"/>
-<circle cx="318" cy="190" r="0.5" style="stroke:#000000"/>
-<circle cx="232" cy="164" r="0.5" style="stroke:#000000"/>
-<circle cx="425" cy="239" r="0.5" style="stroke:#000000"/>
-<circle cx="387" cy="195" r="0.5" style="stroke:#000000"/>
-<circle cx="322" cy="152" r="0.5" style="stroke:#000000"/>
-<circle cx="213" cy="278" r="0.5" style="stroke:#000000"/>
-<circle cx="187" cy="132" r="0.5" style="stroke:#000000"/>
-<circle cx="245" cy="161" r="0.5" style="stroke:#000000"/>
-<circle cx="292" cy="202" r="0.5" style="stroke:#000000"/>
-<circle cx="336" cy="155" r="0.5" style="stroke:#000000"/>
-<circle cx="272" cy="65" r="0.5" style="stroke:#000000"/>
-<circle cx="204" cy="190" r="0.5" style="stroke:#000000"/>
-<circle cx="351" cy="82" r="0.5" style="stroke:#000000"/>
-<circle cx="259" cy="284" r="0.5" style="stroke:#000000"/>
-<circle cx="288" cy="189" r="0.5" style="stroke:#000000"/>
-<circle cx="300" cy="200" r="0.5" style="stroke:#000000"/>
-<circle cx="353" cy="288" r="0.5" style="stroke:#000000"/>
-<circle cx="301" cy="199" r="0.5" style="stroke:#000000"/>
-<circle cx="218" cy="128" r="0.5" style="stroke:#000000"/>
-<circle cx="226" cy="243" r="0.5" style="stroke:#000000"/>
-<circle cx="195" cy="146" r="0.5" style="stroke:#000000"/>
-<circle cx="284" cy="174" r="0.5" style="stroke:#000000"/>
-<circle cx="428" cy="200" r="0.5" style="stroke:#000000"/>
-<circle cx="274" cy="214" r="0.5" style="stroke:#000000"/>
-<circle cx="211" cy="131" r="0.5" style="stroke:#000000"/>
-<circle cx="291" cy="196" r="0.5" style="stroke:#000000"/>
-<circle cx="310" cy="180" r="0.5" style="stroke:#000000"/>
-<circle cx="172" cy="257" r="0.5" style="stroke:#000000"/>
-<circle cx="431" cy="212" r="0.5" style="stroke:#000000"/>
-<circle cx="290" cy="187" r="0.5" style="stroke:#000000"/>
-<circle cx="219" cy="203" r="0.5" style="stroke:#000000"/>
-<circle cx="230" cy="279" r="0.5" style="stroke:#000000"/>
-<circle cx="291" cy="192" r="0.5" style="stroke:#000000"/>
-<circle cx="291" cy="254" r="0.5" style="stroke:#000000"/>
-<circle cx="245" cy="309" r="0.5" style="stroke:#000000"/>
-<circle cx="345" cy="126" r="0.5" style="stroke:#000000"/>
-<circle cx="175" cy="278" r="0.5" style="stroke:#000000"/>
-<circle cx="289" cy="338" r="0.5" style="stroke:#000000"/>
-<circle cx="442" cy="228" r="0.5" style="stroke:#000000"/>
-<circle cx="242" cy="186" r="0.5" style="stroke:#000000"/>
-<circle cx="249" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="415" cy="186" r="0.5" style="stroke:#000000"/>
-<circle cx="242" cy="145" r="0.5" style="stroke:#000000"/>
-<circle cx="384" cy="133" r="0.5" style="stroke:#000000"/>
-<circle cx="20" cy="98" r="1" style="stroke:#ff0000"/>
-<circle cx="50" cy="246" r="1" style="stroke:#ff0000"/>
-<circle cx="83" cy="354" r="1" style="stroke:#ff0000"/>
-<circle cx="164" cy="416" r="1" style="stroke:#ff0000"/>
-<circle cx="236" cy="434" r="1" style="stroke:#ff0000"/>
-<circle cx="343" cy="427" r="1" style="stroke:#ff0000"/>
-<circle cx="366" cy="412" r="1" style="stroke:#ff0000"/>
-<circle cx="379" cy="402" r="1" style="stroke:#ff0000"/>
-<circle cx="519" cy="143" r="1" style="stroke:#ff0000"/>
-<circle cx="528" cy="126" r="1" style="stroke:#ff0000"/>
-<circle cx="529" cy="115" r="1" style="stroke:#ff0000"/>
-<circle cx="510" cy="96" r="1" style="stroke:#ff0000"/>
-<circle cx="506" cy="95" r="1" style="stroke:#ff0000"/>
-<circle cx="117" cy="33" r="1" style="stroke:#ff0000"/>
-<circle cx="85" cy="28" r="1" style="stroke:#ff0000"/>
-<circle cx="40" cy="64" r="1" style="stroke:#ff0000"/>
-</svg>
diff --git a/testsuite/tests/ghc-regress/dph/quickhull/dph-quickhull-opt.stdout b/testsuite/tests/ghc-regress/dph/quickhull/dph-quickhull-opt.stdout
deleted file mode 100644
index f6b2d92e9a..0000000000
--- a/testsuite/tests/ghc-regress/dph/quickhull/dph-quickhull-opt.stdout
+++ /dev/null
@@ -1,1019 +0,0 @@
-<svg width="100%" height="100%" version="1.1" xmlns="http://www.w3.org/2000/svg">
-<polygon points="20,98 50,246 83,354 164,416 236,434 343,427 366,412 379,402 519,143 528,126 529,115 510,96 506,95 117,33 85,28 40,64 " style="fill:#d0d0ff;stroke:#000000;stroke-width:1"/>
-<circle cx="217" cy="201" r="0.5" style="stroke:#000000"/>
-<circle cx="310" cy="266" r="0.5" style="stroke:#000000"/>
-<circle cx="191" cy="353" r="0.5" style="stroke:#000000"/>
-<circle cx="164" cy="416" r="0.5" style="stroke:#000000"/>
-<circle cx="232" cy="257" r="0.5" style="stroke:#000000"/>
-<circle cx="266" cy="398" r="0.5" style="stroke:#000000"/>
-<circle cx="350" cy="201" r="0.5" style="stroke:#000000"/>
-<circle cx="334" cy="202" r="0.5" style="stroke:#000000"/>
-<circle cx="189" cy="151" r="0.5" style="stroke:#000000"/>
-<circle cx="308" cy="307" r="0.5" style="stroke:#000000"/>
-<circle cx="347" cy="160" r="0.5" style="stroke:#000000"/>
-<circle cx="251" cy="251" r="0.5" style="stroke:#000000"/>
-<circle cx="275" cy="241" r="0.5" style="stroke:#000000"/>
-<circle cx="275" cy="398" r="0.5" style="stroke:#000000"/>
-<circle cx="167" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="351" cy="397" r="0.5" style="stroke:#000000"/>
-<circle cx="257" cy="254" r="0.5" style="stroke:#000000"/>
-<circle cx="248" cy="220" r="0.5" style="stroke:#000000"/>
-<circle cx="250" cy="252" r="0.5" style="stroke:#000000"/>
-<circle cx="191" cy="222" r="0.5" style="stroke:#000000"/>
-<circle cx="93" cy="200" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="195" r="0.5" style="stroke:#000000"/>
-<circle cx="287" cy="84" r="0.5" style="stroke:#000000"/>
-<circle cx="90" cy="198" r="0.5" style="stroke:#000000"/>
-<circle cx="149" cy="175" r="0.5" style="stroke:#000000"/>
-<circle cx="342" cy="311" r="0.5" style="stroke:#000000"/>
-<circle cx="391" cy="360" r="0.5" style="stroke:#000000"/>
-<circle cx="277" cy="310" r="0.5" style="stroke:#000000"/>
-<circle cx="341" cy="421" r="0.5" style="stroke:#000000"/>
-<circle cx="274" cy="136" r="0.5" style="stroke:#000000"/>
-<circle cx="187" cy="278" r="0.5" style="stroke:#000000"/>
-<circle cx="343" cy="427" r="0.5" style="stroke:#000000"/>
-<circle cx="255" cy="170" r="0.5" style="stroke:#000000"/>
-<circle cx="158" cy="329" r="0.5" style="stroke:#000000"/>
-<circle cx="306" cy="196" r="0.5" style="stroke:#000000"/>
-<circle cx="315" cy="261" r="0.5" style="stroke:#000000"/>
-<circle cx="214" cy="361" r="0.5" style="stroke:#000000"/>
-<circle cx="306" cy="304" r="0.5" style="stroke:#000000"/>
-<circle cx="229" cy="219" r="0.5" style="stroke:#000000"/>
-<circle cx="227" cy="351" r="0.5" style="stroke:#000000"/>
-<circle cx="228" cy="196" r="0.5" style="stroke:#000000"/>
-<circle cx="314" cy="280" r="0.5" style="stroke:#000000"/>
-<circle cx="209" cy="195" r="0.5" style="stroke:#000000"/>
-<circle cx="367" cy="217" r="0.5" style="stroke:#000000"/>
-<circle cx="176" cy="212" r="0.5" style="stroke:#000000"/>
-<circle cx="117" cy="194" r="0.5" style="stroke:#000000"/>
-<circle cx="318" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="250" cy="251" r="0.5" style="stroke:#000000"/>
-<circle cx="355" cy="406" r="0.5" style="stroke:#000000"/>
-<circle cx="252" cy="246" r="0.5" style="stroke:#000000"/>
-<circle cx="219" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="217" cy="232" r="0.5" style="stroke:#000000"/>
-<circle cx="283" cy="220" r="0.5" style="stroke:#000000"/>
-<circle cx="239" cy="207" r="0.5" style="stroke:#000000"/>
-<circle cx="266" cy="255" r="0.5" style="stroke:#000000"/>
-<circle cx="310" cy="324" r="0.5" style="stroke:#000000"/>
-<circle cx="200" cy="248" r="0.5" style="stroke:#000000"/>
-<circle cx="387" cy="360" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="186" r="0.5" style="stroke:#000000"/>
-<circle cx="126" cy="236" r="0.5" style="stroke:#000000"/>
-<circle cx="257" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="255" cy="250" r="0.5" style="stroke:#000000"/>
-<circle cx="50" cy="246" r="0.5" style="stroke:#000000"/>
-<circle cx="231" cy="340" r="0.5" style="stroke:#000000"/>
-<circle cx="189" cy="287" r="0.5" style="stroke:#000000"/>
-<circle cx="188" cy="186" r="0.5" style="stroke:#000000"/>
-<circle cx="366" cy="412" r="0.5" style="stroke:#000000"/>
-<circle cx="183" cy="139" r="0.5" style="stroke:#000000"/>
-<circle cx="305" cy="113" r="0.5" style="stroke:#000000"/>
-<circle cx="286" cy="146" r="0.5" style="stroke:#000000"/>
-<circle cx="399" cy="241" r="0.5" style="stroke:#000000"/>
-<circle cx="289" cy="404" r="0.5" style="stroke:#000000"/>
-<circle cx="346" cy="157" r="0.5" style="stroke:#000000"/>
-<circle cx="287" cy="143" r="0.5" style="stroke:#000000"/>
-<circle cx="223" cy="236" r="0.5" style="stroke:#000000"/>
-<circle cx="181" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="134" cy="249" r="0.5" style="stroke:#000000"/>
-<circle cx="238" cy="274" r="0.5" style="stroke:#000000"/>
-<circle cx="246" cy="250" r="0.5" style="stroke:#000000"/>
-<circle cx="201" cy="395" r="0.5" style="stroke:#000000"/>
-<circle cx="192" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="260" cy="296" r="0.5" style="stroke:#000000"/>
-<circle cx="244" cy="399" r="0.5" style="stroke:#000000"/>
-<circle cx="256" cy="303" r="0.5" style="stroke:#000000"/>
-<circle cx="202" cy="221" r="0.5" style="stroke:#000000"/>
-<circle cx="361" cy="406" r="0.5" style="stroke:#000000"/>
-<circle cx="275" cy="235" r="0.5" style="stroke:#000000"/>
-<circle cx="180" cy="305" r="0.5" style="stroke:#000000"/>
-<circle cx="258" cy="241" r="0.5" style="stroke:#000000"/>
-<circle cx="253" cy="237" r="0.5" style="stroke:#000000"/>
-<circle cx="239" cy="408" r="0.5" style="stroke:#000000"/>
-<circle cx="247" cy="254" r="0.5" style="stroke:#000000"/>
-<circle cx="223" cy="265" r="0.5" style="stroke:#000000"/>
-<circle cx="244" cy="253" r="0.5" style="stroke:#000000"/>
-<circle cx="174" cy="346" r="0.5" style="stroke:#000000"/>
-<circle cx="373" cy="334" r="0.5" style="stroke:#000000"/>
-<circle cx="292" cy="82" r="0.5" style="stroke:#000000"/>
-<circle cx="240" cy="388" r="0.5" style="stroke:#000000"/>
-<circle cx="263" cy="225" r="0.5" style="stroke:#000000"/>
-<circle cx="252" cy="207" r="0.5" style="stroke:#000000"/>
-<circle cx="233" cy="287" r="0.5" style="stroke:#000000"/>
-<circle cx="234" cy="245" r="0.5" style="stroke:#000000"/>
-<circle cx="285" cy="264" r="0.5" style="stroke:#000000"/>
-<circle cx="176" cy="259" r="0.5" style="stroke:#000000"/>
-<circle cx="284" cy="256" r="0.5" style="stroke:#000000"/>
-<circle cx="233" cy="258" r="0.5" style="stroke:#000000"/>
-<circle cx="108" cy="336" r="0.5" style="stroke:#000000"/>
-<circle cx="379" cy="402" r="0.5" style="stroke:#000000"/>
-<circle cx="260" cy="256" r="0.5" style="stroke:#000000"/>
-<circle cx="232" cy="265" r="0.5" style="stroke:#000000"/>
-<circle cx="432" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="347" cy="197" r="0.5" style="stroke:#000000"/>
-<circle cx="248" cy="249" r="0.5" style="stroke:#000000"/>
-<circle cx="176" cy="213" r="0.5" style="stroke:#000000"/>
-<circle cx="330" cy="370" r="0.5" style="stroke:#000000"/>
-<circle cx="249" cy="253" r="0.5" style="stroke:#000000"/>
-<circle cx="249" cy="243" r="0.5" style="stroke:#000000"/>
-<circle cx="119" cy="320" r="0.5" style="stroke:#000000"/>
-<circle cx="280" cy="263" r="0.5" style="stroke:#000000"/>
-<circle cx="317" cy="287" r="0.5" style="stroke:#000000"/>
-<circle cx="304" cy="209" r="0.5" style="stroke:#000000"/>
-<circle cx="315" cy="193" r="0.5" style="stroke:#000000"/>
-<circle cx="304" cy="109" r="0.5" style="stroke:#000000"/>
-<circle cx="119" cy="179" r="0.5" style="stroke:#000000"/>
-<circle cx="188" cy="215" r="0.5" style="stroke:#000000"/>
-<circle cx="263" cy="218" r="0.5" style="stroke:#000000"/>
-<circle cx="196" cy="228" r="0.5" style="stroke:#000000"/>
-<circle cx="371" cy="307" r="0.5" style="stroke:#000000"/>
-<circle cx="285" cy="263" r="0.5" style="stroke:#000000"/>
-<circle cx="130" cy="217" r="0.5" style="stroke:#000000"/>
-<circle cx="250" cy="250" r="0.5" style="stroke:#000000"/>
-<circle cx="335" cy="201" r="0.5" style="stroke:#000000"/>
-<circle cx="211" cy="145" r="0.5" style="stroke:#000000"/>
-<circle cx="242" cy="182" r="0.5" style="stroke:#000000"/>
-<circle cx="221" cy="256" r="0.5" style="stroke:#000000"/>
-<circle cx="177" cy="398" r="0.5" style="stroke:#000000"/>
-<circle cx="333" cy="158" r="0.5" style="stroke:#000000"/>
-<circle cx="199" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="342" cy="153" r="0.5" style="stroke:#000000"/>
-<circle cx="273" cy="419" r="0.5" style="stroke:#000000"/>
-<circle cx="227" cy="173" r="0.5" style="stroke:#000000"/>
-<circle cx="169" cy="242" r="0.5" style="stroke:#000000"/>
-<circle cx="294" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="303" cy="155" r="0.5" style="stroke:#000000"/>
-<circle cx="211" cy="124" r="0.5" style="stroke:#000000"/>
-<circle cx="253" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="254" cy="246" r="0.5" style="stroke:#000000"/>
-<circle cx="377" cy="388" r="0.5" style="stroke:#000000"/>
-<circle cx="130" cy="285" r="0.5" style="stroke:#000000"/>
-<circle cx="273" cy="215" r="0.5" style="stroke:#000000"/>
-<circle cx="438" cy="229" r="0.5" style="stroke:#000000"/>
-<circle cx="446" cy="216" r="0.5" style="stroke:#000000"/>
-<circle cx="242" cy="238" r="0.5" style="stroke:#000000"/>
-<circle cx="224" cy="229" r="0.5" style="stroke:#000000"/>
-<circle cx="133" cy="181" r="0.5" style="stroke:#000000"/>
-<circle cx="270" cy="222" r="0.5" style="stroke:#000000"/>
-<circle cx="275" cy="237" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="202" r="0.5" style="stroke:#000000"/>
-<circle cx="416" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="366" cy="244" r="0.5" style="stroke:#000000"/>
-<circle cx="279" cy="186" r="0.5" style="stroke:#000000"/>
-<circle cx="134" cy="353" r="0.5" style="stroke:#000000"/>
-<circle cx="99" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="177" cy="198" r="0.5" style="stroke:#000000"/>
-<circle cx="239" cy="253" r="0.5" style="stroke:#000000"/>
-<circle cx="298" cy="190" r="0.5" style="stroke:#000000"/>
-<circle cx="213" cy="70" r="0.5" style="stroke:#000000"/>
-<circle cx="122" cy="236" r="0.5" style="stroke:#000000"/>
-<circle cx="318" cy="92" r="0.5" style="stroke:#000000"/>
-<circle cx="196" cy="362" r="0.5" style="stroke:#000000"/>
-<circle cx="234" cy="235" r="0.5" style="stroke:#000000"/>
-<circle cx="250" cy="250" r="0.5" style="stroke:#000000"/>
-<circle cx="321" cy="367" r="0.5" style="stroke:#000000"/>
-<circle cx="251" cy="249" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="154" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="308" r="0.5" style="stroke:#000000"/>
-<circle cx="110" cy="178" r="0.5" style="stroke:#000000"/>
-<circle cx="229" cy="216" r="0.5" style="stroke:#000000"/>
-<circle cx="421" cy="250" r="0.5" style="stroke:#000000"/>
-<circle cx="215" cy="269" r="0.5" style="stroke:#000000"/>
-<circle cx="131" cy="157" r="0.5" style="stroke:#000000"/>
-<circle cx="238" cy="245" r="0.5" style="stroke:#000000"/>
-<circle cx="264" cy="224" r="0.5" style="stroke:#000000"/>
-<circle cx="79" cy="327" r="0.5" style="stroke:#000000"/>
-<circle cx="424" cy="266" r="0.5" style="stroke:#000000"/>
-<circle cx="237" cy="232" r="0.5" style="stroke:#000000"/>
-<circle cx="142" cy="253" r="0.5" style="stroke:#000000"/>
-<circle cx="156" cy="355" r="0.5" style="stroke:#000000"/>
-<circle cx="239" cy="239" r="0.5" style="stroke:#000000"/>
-<circle cx="238" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="177" cy="396" r="0.5" style="stroke:#000000"/>
-<circle cx="310" cy="152" r="0.5" style="stroke:#000000"/>
-<circle cx="83" cy="354" r="0.5" style="stroke:#000000"/>
-<circle cx="236" cy="434" r="0.5" style="stroke:#000000"/>
-<circle cx="439" cy="287" r="0.5" style="stroke:#000000"/>
-<circle cx="173" cy="232" r="0.5" style="stroke:#000000"/>
-<circle cx="181" cy="143" r="0.5" style="stroke:#000000"/>
-<circle cx="404" cy="232" r="0.5" style="stroke:#000000"/>
-<circle cx="173" cy="177" r="0.5" style="stroke:#000000"/>
-<circle cx="362" cy="161" r="0.5" style="stroke:#000000"/>
-<circle cx="87" cy="81" r="0.5" style="stroke:#000000"/>
-<circle cx="124" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="76" cy="141" r="0.5" style="stroke:#000000"/>
-<circle cx="65" cy="166" r="0.5" style="stroke:#000000"/>
-<circle cx="93" cy="103" r="0.5" style="stroke:#000000"/>
-<circle cx="107" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="140" cy="80" r="0.5" style="stroke:#000000"/>
-<circle cx="134" cy="81" r="0.5" style="stroke:#000000"/>
-<circle cx="76" cy="60" r="0.5" style="stroke:#000000"/>
-<circle cx="123" cy="123" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="64" r="0.5" style="stroke:#000000"/>
-<circle cx="100" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="110" cy="96" r="0.5" style="stroke:#000000"/>
-<circle cx="110" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="67" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="140" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="103" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="99" cy="88" r="0.5" style="stroke:#000000"/>
-<circle cx="100" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="76" cy="89" r="0.5" style="stroke:#000000"/>
-<circle cx="37" cy="80" r="0.5" style="stroke:#000000"/>
-<circle cx="62" cy="78" r="0.5" style="stroke:#000000"/>
-<circle cx="115" cy="34" r="0.5" style="stroke:#000000"/>
-<circle cx="36" cy="79" r="0.5" style="stroke:#000000"/>
-<circle cx="60" cy="70" r="0.5" style="stroke:#000000"/>
-<circle cx="137" cy="124" r="0.5" style="stroke:#000000"/>
-<circle cx="156" cy="144" r="0.5" style="stroke:#000000"/>
-<circle cx="111" cy="124" r="0.5" style="stroke:#000000"/>
-<circle cx="137" cy="168" r="0.5" style="stroke:#000000"/>
-<circle cx="110" cy="55" r="0.5" style="stroke:#000000"/>
-<circle cx="75" cy="111" r="0.5" style="stroke:#000000"/>
-<circle cx="137" cy="171" r="0.5" style="stroke:#000000"/>
-<circle cx="102" cy="68" r="0.5" style="stroke:#000000"/>
-<circle cx="63" cy="131" r="0.5" style="stroke:#000000"/>
-<circle cx="122" cy="78" r="0.5" style="stroke:#000000"/>
-<circle cx="126" cy="104" r="0.5" style="stroke:#000000"/>
-<circle cx="86" cy="144" r="0.5" style="stroke:#000000"/>
-<circle cx="123" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="92" cy="88" r="0.5" style="stroke:#000000"/>
-<circle cx="91" cy="140" r="0.5" style="stroke:#000000"/>
-<circle cx="91" cy="78" r="0.5" style="stroke:#000000"/>
-<circle cx="126" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="84" cy="78" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="87" r="0.5" style="stroke:#000000"/>
-<circle cx="70" cy="85" r="0.5" style="stroke:#000000"/>
-<circle cx="47" cy="77" r="0.5" style="stroke:#000000"/>
-<circle cx="127" cy="46" r="0.5" style="stroke:#000000"/>
-<circle cx="100" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="142" cy="163" r="0.5" style="stroke:#000000"/>
-<circle cx="101" cy="99" r="0.5" style="stroke:#000000"/>
-<circle cx="88" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="87" cy="93" r="0.5" style="stroke:#000000"/>
-<circle cx="113" cy="88" r="0.5" style="stroke:#000000"/>
-<circle cx="96" cy="83" r="0.5" style="stroke:#000000"/>
-<circle cx="106" cy="102" r="0.5" style="stroke:#000000"/>
-<circle cx="124" cy="130" r="0.5" style="stroke:#000000"/>
-<circle cx="80" cy="99" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="144" r="0.5" style="stroke:#000000"/>
-<circle cx="59" cy="74" r="0.5" style="stroke:#000000"/>
-<circle cx="50" cy="94" r="0.5" style="stroke:#000000"/>
-<circle cx="103" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="102" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="20" cy="98" r="0.5" style="stroke:#000000"/>
-<circle cx="92" cy="136" r="0.5" style="stroke:#000000"/>
-<circle cx="75" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="75" cy="74" r="0.5" style="stroke:#000000"/>
-<circle cx="146" cy="165" r="0.5" style="stroke:#000000"/>
-<circle cx="73" cy="56" r="0.5" style="stroke:#000000"/>
-<circle cx="122" cy="45" r="0.5" style="stroke:#000000"/>
-<circle cx="115" cy="59" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="97" r="0.5" style="stroke:#000000"/>
-<circle cx="116" cy="161" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="63" r="0.5" style="stroke:#000000"/>
-<circle cx="115" cy="57" r="0.5" style="stroke:#000000"/>
-<circle cx="89" cy="94" r="0.5" style="stroke:#000000"/>
-<circle cx="72" cy="64" r="0.5" style="stroke:#000000"/>
-<circle cx="53" cy="99" r="0.5" style="stroke:#000000"/>
-<circle cx="95" cy="110" r="0.5" style="stroke:#000000"/>
-<circle cx="99" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="81" cy="158" r="0.5" style="stroke:#000000"/>
-<circle cx="77" cy="46" r="0.5" style="stroke:#000000"/>
-<circle cx="104" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="98" cy="160" r="0.5" style="stroke:#000000"/>
-<circle cx="102" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="81" cy="88" r="0.5" style="stroke:#000000"/>
-<circle cx="145" cy="163" r="0.5" style="stroke:#000000"/>
-<circle cx="110" cy="94" r="0.5" style="stroke:#000000"/>
-<circle cx="72" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="103" cy="96" r="0.5" style="stroke:#000000"/>
-<circle cx="101" cy="95" r="0.5" style="stroke:#000000"/>
-<circle cx="95" cy="163" r="0.5" style="stroke:#000000"/>
-<circle cx="99" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="89" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="98" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="70" cy="138" r="0.5" style="stroke:#000000"/>
-<circle cx="149" cy="134" r="0.5" style="stroke:#000000"/>
-<circle cx="117" cy="33" r="0.5" style="stroke:#000000"/>
-<circle cx="96" cy="155" r="0.5" style="stroke:#000000"/>
-<circle cx="105" cy="90" r="0.5" style="stroke:#000000"/>
-<circle cx="101" cy="83" r="0.5" style="stroke:#000000"/>
-<circle cx="93" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="94" cy="98" r="0.5" style="stroke:#000000"/>
-<circle cx="114" cy="105" r="0.5" style="stroke:#000000"/>
-<circle cx="70" cy="103" r="0.5" style="stroke:#000000"/>
-<circle cx="114" cy="103" r="0.5" style="stroke:#000000"/>
-<circle cx="93" cy="103" r="0.5" style="stroke:#000000"/>
-<circle cx="43" cy="135" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="161" r="0.5" style="stroke:#000000"/>
-<circle cx="104" cy="102" r="0.5" style="stroke:#000000"/>
-<circle cx="93" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="173" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="79" r="0.5" style="stroke:#000000"/>
-<circle cx="99" cy="99" r="0.5" style="stroke:#000000"/>
-<circle cx="70" cy="85" r="0.5" style="stroke:#000000"/>
-<circle cx="132" cy="148" r="0.5" style="stroke:#000000"/>
-<circle cx="99" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="100" cy="97" r="0.5" style="stroke:#000000"/>
-<circle cx="47" cy="128" r="0.5" style="stroke:#000000"/>
-<circle cx="112" cy="105" r="0.5" style="stroke:#000000"/>
-<circle cx="127" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="122" cy="84" r="0.5" style="stroke:#000000"/>
-<circle cx="126" cy="77" r="0.5" style="stroke:#000000"/>
-<circle cx="121" cy="44" r="0.5" style="stroke:#000000"/>
-<circle cx="48" cy="72" r="0.5" style="stroke:#000000"/>
-<circle cx="75" cy="86" r="0.5" style="stroke:#000000"/>
-<circle cx="105" cy="87" r="0.5" style="stroke:#000000"/>
-<circle cx="79" cy="91" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="123" r="0.5" style="stroke:#000000"/>
-<circle cx="114" cy="105" r="0.5" style="stroke:#000000"/>
-<circle cx="52" cy="87" r="0.5" style="stroke:#000000"/>
-<circle cx="100" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="134" cy="80" r="0.5" style="stroke:#000000"/>
-<circle cx="84" cy="58" r="0.5" style="stroke:#000000"/>
-<circle cx="97" cy="73" r="0.5" style="stroke:#000000"/>
-<circle cx="88" cy="102" r="0.5" style="stroke:#000000"/>
-<circle cx="71" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="133" cy="63" r="0.5" style="stroke:#000000"/>
-<circle cx="80" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="137" cy="61" r="0.5" style="stroke:#000000"/>
-<circle cx="109" cy="168" r="0.5" style="stroke:#000000"/>
-<circle cx="91" cy="69" r="0.5" style="stroke:#000000"/>
-<circle cx="68" cy="97" r="0.5" style="stroke:#000000"/>
-<circle cx="117" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="121" cy="62" r="0.5" style="stroke:#000000"/>
-<circle cx="84" cy="50" r="0.5" style="stroke:#000000"/>
-<circle cx="101" cy="46" r="0.5" style="stroke:#000000"/>
-<circle cx="102" cy="98" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="155" r="0.5" style="stroke:#000000"/>
-<circle cx="52" cy="114" r="0.5" style="stroke:#000000"/>
-<circle cx="109" cy="86" r="0.5" style="stroke:#000000"/>
-<circle cx="175" cy="91" r="0.5" style="stroke:#000000"/>
-<circle cx="178" cy="87" r="0.5" style="stroke:#000000"/>
-<circle cx="97" cy="95" r="0.5" style="stroke:#000000"/>
-<circle cx="90" cy="92" r="0.5" style="stroke:#000000"/>
-<circle cx="53" cy="72" r="0.5" style="stroke:#000000"/>
-<circle cx="108" cy="89" r="0.5" style="stroke:#000000"/>
-<circle cx="110" cy="95" r="0.5" style="stroke:#000000"/>
-<circle cx="64" cy="81" r="0.5" style="stroke:#000000"/>
-<circle cx="166" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="146" cy="97" r="0.5" style="stroke:#000000"/>
-<circle cx="112" cy="74" r="0.5" style="stroke:#000000"/>
-<circle cx="54" cy="141" r="0.5" style="stroke:#000000"/>
-<circle cx="40" cy="64" r="0.5" style="stroke:#000000"/>
-<circle cx="71" cy="79" r="0.5" style="stroke:#000000"/>
-<circle cx="96" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="119" cy="76" r="0.5" style="stroke:#000000"/>
-<circle cx="85" cy="28" r="0.5" style="stroke:#000000"/>
-<circle cx="49" cy="94" r="0.5" style="stroke:#000000"/>
-<circle cx="127" cy="37" r="0.5" style="stroke:#000000"/>
-<circle cx="78" cy="145" r="0.5" style="stroke:#000000"/>
-<circle cx="94" cy="94" r="0.5" style="stroke:#000000"/>
-<circle cx="100" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="128" cy="147" r="0.5" style="stroke:#000000"/>
-<circle cx="101" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="56" cy="62" r="0.5" style="stroke:#000000"/>
-<circle cx="61" cy="123" r="0.5" style="stroke:#000000"/>
-<circle cx="44" cy="71" r="0.5" style="stroke:#000000"/>
-<circle cx="92" cy="86" r="0.5" style="stroke:#000000"/>
-<circle cx="169" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="86" cy="107" r="0.5" style="stroke:#000000"/>
-<circle cx="52" cy="63" r="0.5" style="stroke:#000000"/>
-<circle cx="95" cy="98" r="0.5" style="stroke:#000000"/>
-<circle cx="106" cy="89" r="0.5" style="stroke:#000000"/>
-<circle cx="32" cy="131" r="0.5" style="stroke:#000000"/>
-<circle cx="170" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="95" cy="93" r="0.5" style="stroke:#000000"/>
-<circle cx="57" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="62" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="95" cy="95" r="0.5" style="stroke:#000000"/>
-<circle cx="95" cy="129" r="0.5" style="stroke:#000000"/>
-<circle cx="71" cy="158" r="0.5" style="stroke:#000000"/>
-<circle cx="124" cy="61" r="0.5" style="stroke:#000000"/>
-<circle cx="33" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="94" cy="174" r="0.5" style="stroke:#000000"/>
-<circle cx="176" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="69" cy="93" r="0.5" style="stroke:#000000"/>
-<circle cx="73" cy="57" r="0.5" style="stroke:#000000"/>
-<circle cx="162" cy="93" r="0.5" style="stroke:#000000"/>
-<circle cx="69" cy="71" r="0.5" style="stroke:#000000"/>
-<circle cx="145" cy="64" r="0.5" style="stroke:#000000"/>
-<circle cx="145" cy="293" r="0.5" style="stroke:#000000"/>
-<circle cx="159" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="315" r="0.5" style="stroke:#000000"/>
-<circle cx="137" cy="325" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="165" cy="293" r="0.5" style="stroke:#000000"/>
-<circle cx="163" cy="293" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="285" r="0.5" style="stroke:#000000"/>
-<circle cx="159" cy="309" r="0.5" style="stroke:#000000"/>
-<circle cx="164" cy="287" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="154" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="154" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="138" cy="306" r="0.5" style="stroke:#000000"/>
-<circle cx="165" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="296" r="0.5" style="stroke:#000000"/>
-<circle cx="126" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="136" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="156" cy="275" r="0.5" style="stroke:#000000"/>
-<circle cx="126" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="135" cy="289" r="0.5" style="stroke:#000000"/>
-<circle cx="164" cy="309" r="0.5" style="stroke:#000000"/>
-<circle cx="171" cy="316" r="0.5" style="stroke:#000000"/>
-<circle cx="154" cy="309" r="0.5" style="stroke:#000000"/>
-<circle cx="164" cy="326" r="0.5" style="stroke:#000000"/>
-<circle cx="154" cy="283" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="304" r="0.5" style="stroke:#000000"/>
-<circle cx="164" cy="326" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="288" r="0.5" style="stroke:#000000"/>
-<circle cx="136" cy="312" r="0.5" style="stroke:#000000"/>
-<circle cx="158" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="145" cy="317" r="0.5" style="stroke:#000000"/>
-<circle cx="158" cy="308" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="315" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="304" r="0.5" style="stroke:#000000"/>
-<circle cx="144" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="168" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="294" r="0.5" style="stroke:#000000"/>
-<circle cx="130" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="280" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="166" cy="323" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="145" cy="307" r="0.5" style="stroke:#000000"/>
-<circle cx="145" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="296" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="294" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="159" cy="311" r="0.5" style="stroke:#000000"/>
-<circle cx="142" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="171" cy="317" r="0.5" style="stroke:#000000"/>
-<circle cx="135" cy="290" r="0.5" style="stroke:#000000"/>
-<circle cx="131" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="307" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="120" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="314" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="305" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="290" r="0.5" style="stroke:#000000"/>
-<circle cx="167" cy="324" r="0.5" style="stroke:#000000"/>
-<circle cx="140" cy="283" r="0.5" style="stroke:#000000"/>
-<circle cx="158" cy="279" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="284" r="0.5" style="stroke:#000000"/>
-<circle cx="172" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="156" cy="323" r="0.5" style="stroke:#000000"/>
-<circle cx="164" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="156" cy="284" r="0.5" style="stroke:#000000"/>
-<circle cx="146" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="140" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="133" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="304" r="0.5" style="stroke:#000000"/>
-<circle cx="149" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="143" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="280" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="307" r="0.5" style="stroke:#000000"/>
-<circle cx="149" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="308" r="0.5" style="stroke:#000000"/>
-<circle cx="143" cy="296" r="0.5" style="stroke:#000000"/>
-<circle cx="167" cy="323" r="0.5" style="stroke:#000000"/>
-<circle cx="154" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="308" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="324" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="146" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="149" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="314" r="0.5" style="stroke:#000000"/>
-<circle cx="168" cy="313" r="0.5" style="stroke:#000000"/>
-<circle cx="156" cy="275" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="321" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="296" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="294" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="305" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="129" cy="313" r="0.5" style="stroke:#000000"/>
-<circle cx="169" cy="323" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="177" cy="305" r="0.5" style="stroke:#000000"/>
-<circle cx="165" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="294" r="0.5" style="stroke:#000000"/>
-<circle cx="162" cy="318" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="130" cy="310" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="306" r="0.5" style="stroke:#000000"/>
-<circle cx="158" cy="294" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="291" r="0.5" style="stroke:#000000"/>
-<circle cx="158" cy="279" r="0.5" style="stroke:#000000"/>
-<circle cx="130" cy="289" r="0.5" style="stroke:#000000"/>
-<circle cx="141" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="142" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="168" cy="309" r="0.5" style="stroke:#000000"/>
-<circle cx="155" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="132" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="163" cy="293" r="0.5" style="stroke:#000000"/>
-<circle cx="144" cy="284" r="0.5" style="stroke:#000000"/>
-<circle cx="149" cy="290" r="0.5" style="stroke:#000000"/>
-<circle cx="146" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="163" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="142" cy="307" r="0.5" style="stroke:#000000"/>
-<circle cx="164" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="153" cy="325" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="289" r="0.5" style="stroke:#000000"/>
-<circle cx="138" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="157" cy="306" r="0.5" style="stroke:#000000"/>
-<circle cx="158" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="144" cy="281" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="280" r="0.5" style="stroke:#000000"/>
-<circle cx="151" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="169" cy="321" r="0.5" style="stroke:#000000"/>
-<circle cx="132" cy="305" r="0.5" style="stroke:#000000"/>
-<circle cx="153" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="178" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="179" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="149" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="146" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="132" cy="290" r="0.5" style="stroke:#000000"/>
-<circle cx="153" cy="296" r="0.5" style="stroke:#000000"/>
-<circle cx="154" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="136" cy="293" r="0.5" style="stroke:#000000"/>
-<circle cx="175" cy="308" r="0.5" style="stroke:#000000"/>
-<circle cx="167" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="154" cy="290" r="0.5" style="stroke:#000000"/>
-<circle cx="133" cy="316" r="0.5" style="stroke:#000000"/>
-<circle cx="127" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="292" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="157" cy="291" r="0.5" style="stroke:#000000"/>
-<circle cx="144" cy="273" r="0.5" style="stroke:#000000"/>
-<circle cx="131" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="160" cy="276" r="0.5" style="stroke:#000000"/>
-<circle cx="142" cy="317" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="161" cy="318" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="134" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="135" cy="309" r="0.5" style="stroke:#000000"/>
-<circle cx="129" cy="289" r="0.5" style="stroke:#000000"/>
-<circle cx="147" cy="295" r="0.5" style="stroke:#000000"/>
-<circle cx="176" cy="300" r="0.5" style="stroke:#000000"/>
-<circle cx="145" cy="303" r="0.5" style="stroke:#000000"/>
-<circle cx="132" cy="286" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="299" r="0.5" style="stroke:#000000"/>
-<circle cx="152" cy="296" r="0.5" style="stroke:#000000"/>
-<circle cx="124" cy="311" r="0.5" style="stroke:#000000"/>
-<circle cx="176" cy="302" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="134" cy="301" r="0.5" style="stroke:#000000"/>
-<circle cx="136" cy="316" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="298" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="311" r="0.5" style="stroke:#000000"/>
-<circle cx="139" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="159" cy="285" r="0.5" style="stroke:#000000"/>
-<circle cx="125" cy="316" r="0.5" style="stroke:#000000"/>
-<circle cx="148" cy="328" r="0.5" style="stroke:#000000"/>
-<circle cx="178" cy="306" r="0.5" style="stroke:#000000"/>
-<circle cx="138" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="140" cy="284" r="0.5" style="stroke:#000000"/>
-<circle cx="173" cy="297" r="0.5" style="stroke:#000000"/>
-<circle cx="138" cy="289" r="0.5" style="stroke:#000000"/>
-<circle cx="167" cy="287" r="0.5" style="stroke:#000000"/>
-<circle cx="495" cy="113" r="0.5" style="stroke:#000000"/>
-<circle cx="509" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="135" r="0.5" style="stroke:#000000"/>
-<circle cx="487" cy="145" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="502" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="515" cy="113" r="0.5" style="stroke:#000000"/>
-<circle cx="513" cy="113" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="105" r="0.5" style="stroke:#000000"/>
-<circle cx="509" cy="129" r="0.5" style="stroke:#000000"/>
-<circle cx="514" cy="107" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="504" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="504" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="488" cy="126" r="0.5" style="stroke:#000000"/>
-<circle cx="515" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="476" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="486" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="506" cy="95" r="0.5" style="stroke:#000000"/>
-<circle cx="476" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="485" cy="109" r="0.5" style="stroke:#000000"/>
-<circle cx="514" cy="129" r="0.5" style="stroke:#000000"/>
-<circle cx="521" cy="136" r="0.5" style="stroke:#000000"/>
-<circle cx="504" cy="129" r="0.5" style="stroke:#000000"/>
-<circle cx="514" cy="146" r="0.5" style="stroke:#000000"/>
-<circle cx="504" cy="103" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="124" r="0.5" style="stroke:#000000"/>
-<circle cx="514" cy="146" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="108" r="0.5" style="stroke:#000000"/>
-<circle cx="486" cy="132" r="0.5" style="stroke:#000000"/>
-<circle cx="508" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="510" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="495" cy="137" r="0.5" style="stroke:#000000"/>
-<circle cx="508" cy="128" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="135" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="510" cy="124" r="0.5" style="stroke:#000000"/>
-<circle cx="494" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="518" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="114" r="0.5" style="stroke:#000000"/>
-<circle cx="480" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="510" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="516" cy="143" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="495" cy="127" r="0.5" style="stroke:#000000"/>
-<circle cx="495" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="505" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="114" r="0.5" style="stroke:#000000"/>
-<circle cx="502" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="509" cy="131" r="0.5" style="stroke:#000000"/>
-<circle cx="492" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="521" cy="137" r="0.5" style="stroke:#000000"/>
-<circle cx="485" cy="110" r="0.5" style="stroke:#000000"/>
-<circle cx="481" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="127" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="470" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="134" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="125" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="110" r="0.5" style="stroke:#000000"/>
-<circle cx="517" cy="144" r="0.5" style="stroke:#000000"/>
-<circle cx="490" cy="103" r="0.5" style="stroke:#000000"/>
-<circle cx="508" cy="99" r="0.5" style="stroke:#000000"/>
-<circle cx="505" cy="104" r="0.5" style="stroke:#000000"/>
-<circle cx="522" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="506" cy="143" r="0.5" style="stroke:#000000"/>
-<circle cx="514" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="506" cy="104" r="0.5" style="stroke:#000000"/>
-<circle cx="496" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="490" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="483" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="124" r="0.5" style="stroke:#000000"/>
-<circle cx="499" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="493" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="502" cy="127" r="0.5" style="stroke:#000000"/>
-<circle cx="499" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="128" r="0.5" style="stroke:#000000"/>
-<circle cx="493" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="517" cy="143" r="0.5" style="stroke:#000000"/>
-<circle cx="504" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="128" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="144" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="496" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="499" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="134" r="0.5" style="stroke:#000000"/>
-<circle cx="518" cy="133" r="0.5" style="stroke:#000000"/>
-<circle cx="506" cy="95" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="141" r="0.5" style="stroke:#000000"/>
-<circle cx="502" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="114" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="125" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="505" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="505" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="479" cy="133" r="0.5" style="stroke:#000000"/>
-<circle cx="519" cy="143" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="527" cy="125" r="0.5" style="stroke:#000000"/>
-<circle cx="515" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="114" r="0.5" style="stroke:#000000"/>
-<circle cx="512" cy="138" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="480" cy="130" r="0.5" style="stroke:#000000"/>
-<circle cx="505" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="510" cy="126" r="0.5" style="stroke:#000000"/>
-<circle cx="508" cy="114" r="0.5" style="stroke:#000000"/>
-<circle cx="510" cy="111" r="0.5" style="stroke:#000000"/>
-<circle cx="508" cy="99" r="0.5" style="stroke:#000000"/>
-<circle cx="480" cy="109" r="0.5" style="stroke:#000000"/>
-<circle cx="491" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="502" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="492" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="518" cy="129" r="0.5" style="stroke:#000000"/>
-<circle cx="505" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="482" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="513" cy="113" r="0.5" style="stroke:#000000"/>
-<circle cx="494" cy="104" r="0.5" style="stroke:#000000"/>
-<circle cx="499" cy="110" r="0.5" style="stroke:#000000"/>
-<circle cx="496" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="513" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="492" cy="127" r="0.5" style="stroke:#000000"/>
-<circle cx="514" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="503" cy="145" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="109" r="0.5" style="stroke:#000000"/>
-<circle cx="488" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="507" cy="126" r="0.5" style="stroke:#000000"/>
-<circle cx="508" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="494" cy="101" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="501" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="519" cy="141" r="0.5" style="stroke:#000000"/>
-<circle cx="482" cy="125" r="0.5" style="stroke:#000000"/>
-<circle cx="503" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="528" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="529" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="499" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="496" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="482" cy="110" r="0.5" style="stroke:#000000"/>
-<circle cx="503" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="504" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="486" cy="113" r="0.5" style="stroke:#000000"/>
-<circle cx="525" cy="128" r="0.5" style="stroke:#000000"/>
-<circle cx="517" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="504" cy="110" r="0.5" style="stroke:#000000"/>
-<circle cx="483" cy="136" r="0.5" style="stroke:#000000"/>
-<circle cx="477" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="112" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="507" cy="111" r="0.5" style="stroke:#000000"/>
-<circle cx="494" cy="93" r="0.5" style="stroke:#000000"/>
-<circle cx="481" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="510" cy="96" r="0.5" style="stroke:#000000"/>
-<circle cx="492" cy="137" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="511" cy="138" r="0.5" style="stroke:#000000"/>
-<circle cx="500" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="484" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="485" cy="129" r="0.5" style="stroke:#000000"/>
-<circle cx="479" cy="109" r="0.5" style="stroke:#000000"/>
-<circle cx="497" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="526" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="495" cy="123" r="0.5" style="stroke:#000000"/>
-<circle cx="482" cy="106" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="119" r="0.5" style="stroke:#000000"/>
-<circle cx="502" cy="116" r="0.5" style="stroke:#000000"/>
-<circle cx="474" cy="131" r="0.5" style="stroke:#000000"/>
-<circle cx="526" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="484" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="486" cy="136" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="118" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="131" r="0.5" style="stroke:#000000"/>
-<circle cx="489" cy="142" r="0.5" style="stroke:#000000"/>
-<circle cx="509" cy="105" r="0.5" style="stroke:#000000"/>
-<circle cx="475" cy="136" r="0.5" style="stroke:#000000"/>
-<circle cx="498" cy="148" r="0.5" style="stroke:#000000"/>
-<circle cx="528" cy="126" r="0.5" style="stroke:#000000"/>
-<circle cx="488" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="490" cy="104" r="0.5" style="stroke:#000000"/>
-<circle cx="523" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="488" cy="109" r="0.5" style="stroke:#000000"/>
-<circle cx="517" cy="107" r="0.5" style="stroke:#000000"/>
-<circle cx="275" cy="163" r="0.5" style="stroke:#000000"/>
-<circle cx="345" cy="212" r="0.5" style="stroke:#000000"/>
-<circle cx="256" cy="277" r="0.5" style="stroke:#000000"/>
-<circle cx="235" cy="324" r="0.5" style="stroke:#000000"/>
-<circle cx="286" cy="206" r="0.5" style="stroke:#000000"/>
-<circle cx="312" cy="311" r="0.5" style="stroke:#000000"/>
-<circle cx="375" cy="163" r="0.5" style="stroke:#000000"/>
-<circle cx="363" cy="164" r="0.5" style="stroke:#000000"/>
-<circle cx="254" cy="126" r="0.5" style="stroke:#000000"/>
-<circle cx="343" cy="243" r="0.5" style="stroke:#000000"/>
-<circle cx="372" cy="133" r="0.5" style="stroke:#000000"/>
-<circle cx="301" cy="201" r="0.5" style="stroke:#000000"/>
-<circle cx="319" cy="193" r="0.5" style="stroke:#000000"/>
-<circle cx="319" cy="311" r="0.5" style="stroke:#000000"/>
-<circle cx="238" cy="232" r="0.5" style="stroke:#000000"/>
-<circle cx="376" cy="310" r="0.5" style="stroke:#000000"/>
-<circle cx="305" cy="203" r="0.5" style="stroke:#000000"/>
-<circle cx="299" cy="177" r="0.5" style="stroke:#000000"/>
-<circle cx="300" cy="201" r="0.5" style="stroke:#000000"/>
-<circle cx="256" cy="179" r="0.5" style="stroke:#000000"/>
-<circle cx="182" cy="162" r="0.5" style="stroke:#000000"/>
-<circle cx="229" cy="158" r="0.5" style="stroke:#000000"/>
-<circle cx="328" cy="75" r="0.5" style="stroke:#000000"/>
-<circle cx="180" cy="161" r="0.5" style="stroke:#000000"/>
-<circle cx="225" cy="144" r="0.5" style="stroke:#000000"/>
-<circle cx="369" cy="245" r="0.5" style="stroke:#000000"/>
-<circle cx="406" cy="282" r="0.5" style="stroke:#000000"/>
-<circle cx="320" cy="245" r="0.5" style="stroke:#000000"/>
-<circle cx="369" cy="328" r="0.5" style="stroke:#000000"/>
-<circle cx="318" cy="115" r="0.5" style="stroke:#000000"/>
-<circle cx="253" cy="221" r="0.5" style="stroke:#000000"/>
-<circle cx="369" cy="332" r="0.5" style="stroke:#000000"/>
-<circle cx="303" cy="140" r="0.5" style="stroke:#000000"/>
-<circle cx="231" cy="259" r="0.5" style="stroke:#000000"/>
-<circle cx="342" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="348" cy="208" r="0.5" style="stroke:#000000"/>
-<circle cx="273" cy="283" r="0.5" style="stroke:#000000"/>
-<circle cx="342" cy="241" r="0.5" style="stroke:#000000"/>
-<circle cx="284" cy="177" r="0.5" style="stroke:#000000"/>
-<circle cx="283" cy="276" r="0.5" style="stroke:#000000"/>
-<circle cx="284" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="348" cy="222" r="0.5" style="stroke:#000000"/>
-<circle cx="269" cy="159" r="0.5" style="stroke:#000000"/>
-<circle cx="388" cy="175" r="0.5" style="stroke:#000000"/>
-<circle cx="245" cy="172" r="0.5" style="stroke:#000000"/>
-<circle cx="200" cy="158" r="0.5" style="stroke:#000000"/>
-<circle cx="351" cy="99" r="0.5" style="stroke:#000000"/>
-<circle cx="300" cy="201" r="0.5" style="stroke:#000000"/>
-<circle cx="379" cy="317" r="0.5" style="stroke:#000000"/>
-<circle cx="301" cy="197" r="0.5" style="stroke:#000000"/>
-<circle cx="277" cy="236" r="0.5" style="stroke:#000000"/>
-<circle cx="275" cy="187" r="0.5" style="stroke:#000000"/>
-<circle cx="324" cy="178" r="0.5" style="stroke:#000000"/>
-<circle cx="292" cy="168" r="0.5" style="stroke:#000000"/>
-<circle cx="312" cy="204" r="0.5" style="stroke:#000000"/>
-<circle cx="345" cy="255" r="0.5" style="stroke:#000000"/>
-<circle cx="262" cy="198" r="0.5" style="stroke:#000000"/>
-<circle cx="403" cy="283" r="0.5" style="stroke:#000000"/>
-<circle cx="223" cy="152" r="0.5" style="stroke:#000000"/>
-<circle cx="207" cy="189" r="0.5" style="stroke:#000000"/>
-<circle cx="305" cy="237" r="0.5" style="stroke:#000000"/>
-<circle cx="303" cy="200" r="0.5" style="stroke:#000000"/>
-<circle cx="150" cy="197" r="0.5" style="stroke:#000000"/>
-<circle cx="286" cy="268" r="0.5" style="stroke:#000000"/>
-<circle cx="254" cy="227" r="0.5" style="stroke:#000000"/>
-<circle cx="254" cy="152" r="0.5" style="stroke:#000000"/>
-<circle cx="387" cy="322" r="0.5" style="stroke:#000000"/>
-<circle cx="250" cy="117" r="0.5" style="stroke:#000000"/>
-<circle cx="341" cy="97" r="0.5" style="stroke:#000000"/>
-<circle cx="327" cy="122" r="0.5" style="stroke:#000000"/>
-<circle cx="412" cy="193" r="0.5" style="stroke:#000000"/>
-<circle cx="329" cy="315" r="0.5" style="stroke:#000000"/>
-<circle cx="372" cy="130" r="0.5" style="stroke:#000000"/>
-<circle cx="328" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="279" cy="190" r="0.5" style="stroke:#000000"/>
-<circle cx="248" cy="132" r="0.5" style="stroke:#000000"/>
-<circle cx="213" cy="199" r="0.5" style="stroke:#000000"/>
-<circle cx="291" cy="218" r="0.5" style="stroke:#000000"/>
-<circle cx="297" cy="200" r="0.5" style="stroke:#000000"/>
-<circle cx="264" cy="309" r="0.5" style="stroke:#000000"/>
-<circle cx="257" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="308" cy="235" r="0.5" style="stroke:#000000"/>
-<circle cx="296" cy="312" r="0.5" style="stroke:#000000"/>
-<circle cx="305" cy="240" r="0.5" style="stroke:#000000"/>
-<circle cx="264" cy="178" r="0.5" style="stroke:#000000"/>
-<circle cx="383" cy="317" r="0.5" style="stroke:#000000"/>
-<circle cx="319" cy="189" r="0.5" style="stroke:#000000"/>
-<circle cx="247" cy="241" r="0.5" style="stroke:#000000"/>
-<circle cx="306" cy="193" r="0.5" style="stroke:#000000"/>
-<circle cx="302" cy="190" r="0.5" style="stroke:#000000"/>
-<circle cx="292" cy="319" r="0.5" style="stroke:#000000"/>
-<circle cx="298" cy="203" r="0.5" style="stroke:#000000"/>
-<circle cx="280" cy="211" r="0.5" style="stroke:#000000"/>
-<circle cx="296" cy="202" r="0.5" style="stroke:#000000"/>
-<circle cx="243" cy="272" r="0.5" style="stroke:#000000"/>
-<circle cx="392" cy="263" r="0.5" style="stroke:#000000"/>
-<circle cx="331" cy="74" r="0.5" style="stroke:#000000"/>
-<circle cx="292" cy="303" r="0.5" style="stroke:#000000"/>
-<circle cx="310" cy="181" r="0.5" style="stroke:#000000"/>
-<circle cx="302" cy="168" r="0.5" style="stroke:#000000"/>
-<circle cx="287" cy="227" r="0.5" style="stroke:#000000"/>
-<circle cx="288" cy="196" r="0.5" style="stroke:#000000"/>
-<circle cx="326" cy="210" r="0.5" style="stroke:#000000"/>
-<circle cx="244" cy="206" r="0.5" style="stroke:#000000"/>
-<circle cx="325" cy="205" r="0.5" style="stroke:#000000"/>
-<circle cx="287" cy="206" r="0.5" style="stroke:#000000"/>
-<circle cx="194" cy="265" r="0.5" style="stroke:#000000"/>
-<circle cx="397" cy="314" r="0.5" style="stroke:#000000"/>
-<circle cx="307" cy="204" r="0.5" style="stroke:#000000"/>
-<circle cx="286" cy="212" r="0.5" style="stroke:#000000"/>
-<circle cx="436" cy="227" r="0.5" style="stroke:#000000"/>
-<circle cx="373" cy="161" r="0.5" style="stroke:#000000"/>
-<circle cx="298" cy="199" r="0.5" style="stroke:#000000"/>
-<circle cx="244" cy="172" r="0.5" style="stroke:#000000"/>
-<circle cx="360" cy="290" r="0.5" style="stroke:#000000"/>
-<circle cx="299" cy="202" r="0.5" style="stroke:#000000"/>
-<circle cx="300" cy="195" r="0.5" style="stroke:#000000"/>
-<circle cx="201" cy="252" r="0.5" style="stroke:#000000"/>
-<circle cx="323" cy="210" r="0.5" style="stroke:#000000"/>
-<circle cx="350" cy="228" r="0.5" style="stroke:#000000"/>
-<circle cx="341" cy="170" r="0.5" style="stroke:#000000"/>
-<circle cx="349" cy="157" r="0.5" style="stroke:#000000"/>
-<circle cx="340" cy="94" r="0.5" style="stroke:#000000"/>
-<circle cx="202" cy="147" r="0.5" style="stroke:#000000"/>
-<circle cx="254" cy="174" r="0.5" style="stroke:#000000"/>
-<circle cx="309" cy="176" r="0.5" style="stroke:#000000"/>
-<circle cx="260" cy="183" r="0.5" style="stroke:#000000"/>
-<circle cx="391" cy="243" r="0.5" style="stroke:#000000"/>
-<circle cx="326" cy="210" r="0.5" style="stroke:#000000"/>
-<circle cx="210" cy="175" r="0.5" style="stroke:#000000"/>
-<circle cx="300" cy="200" r="0.5" style="stroke:#000000"/>
-<circle cx="364" cy="163" r="0.5" style="stroke:#000000"/>
-<circle cx="271" cy="121" r="0.5" style="stroke:#000000"/>
-<circle cx="294" cy="149" r="0.5" style="stroke:#000000"/>
-<circle cx="278" cy="205" r="0.5" style="stroke:#000000"/>
-<circle cx="245" cy="311" r="0.5" style="stroke:#000000"/>
-<circle cx="363" cy="131" r="0.5" style="stroke:#000000"/>
-<circle cx="262" cy="236" r="0.5" style="stroke:#000000"/>
-<circle cx="369" cy="128" r="0.5" style="stroke:#000000"/>
-<circle cx="317" cy="327" r="0.5" style="stroke:#000000"/>
-<circle cx="283" cy="143" r="0.5" style="stroke:#000000"/>
-<circle cx="239" cy="194" r="0.5" style="stroke:#000000"/>
-<circle cx="333" cy="231" r="0.5" style="stroke:#000000"/>
-<circle cx="340" cy="129" r="0.5" style="stroke:#000000"/>
-<circle cx="271" cy="105" r="0.5" style="stroke:#000000"/>
-<circle cx="302" cy="100" r="0.5" style="stroke:#000000"/>
-<circle cx="303" cy="197" r="0.5" style="stroke:#000000"/>
-<circle cx="395" cy="303" r="0.5" style="stroke:#000000"/>
-<circle cx="210" cy="227" r="0.5" style="stroke:#000000"/>
-<circle cx="317" cy="174" r="0.5" style="stroke:#000000"/>
-<circle cx="441" cy="184" r="0.5" style="stroke:#000000"/>
-<circle cx="447" cy="175" r="0.5" style="stroke:#000000"/>
-<circle cx="294" cy="191" r="0.5" style="stroke:#000000"/>
-<circle cx="281" cy="184" r="0.5" style="stroke:#000000"/>
-<circle cx="212" cy="148" r="0.5" style="stroke:#000000"/>
-<circle cx="315" cy="179" r="0.5" style="stroke:#000000"/>
-<circle cx="318" cy="190" r="0.5" style="stroke:#000000"/>
-<circle cx="232" cy="164" r="0.5" style="stroke:#000000"/>
-<circle cx="425" cy="239" r="0.5" style="stroke:#000000"/>
-<circle cx="387" cy="195" r="0.5" style="stroke:#000000"/>
-<circle cx="322" cy="152" r="0.5" style="stroke:#000000"/>
-<circle cx="213" cy="278" r="0.5" style="stroke:#000000"/>
-<circle cx="187" cy="132" r="0.5" style="stroke:#000000"/>
-<circle cx="245" cy="161" r="0.5" style="stroke:#000000"/>
-<circle cx="292" cy="202" r="0.5" style="stroke:#000000"/>
-<circle cx="336" cy="155" r="0.5" style="stroke:#000000"/>
-<circle cx="272" cy="65" r="0.5" style="stroke:#000000"/>
-<circle cx="204" cy="190" r="0.5" style="stroke:#000000"/>
-<circle cx="351" cy="82" r="0.5" style="stroke:#000000"/>
-<circle cx="259" cy="284" r="0.5" style="stroke:#000000"/>
-<circle cx="288" cy="189" r="0.5" style="stroke:#000000"/>
-<circle cx="300" cy="200" r="0.5" style="stroke:#000000"/>
-<circle cx="353" cy="288" r="0.5" style="stroke:#000000"/>
-<circle cx="301" cy="199" r="0.5" style="stroke:#000000"/>
-<circle cx="218" cy="128" r="0.5" style="stroke:#000000"/>
-<circle cx="226" cy="243" r="0.5" style="stroke:#000000"/>
-<circle cx="195" cy="146" r="0.5" style="stroke:#000000"/>
-<circle cx="284" cy="174" r="0.5" style="stroke:#000000"/>
-<circle cx="428" cy="200" r="0.5" style="stroke:#000000"/>
-<circle cx="274" cy="214" r="0.5" style="stroke:#000000"/>
-<circle cx="211" cy="131" r="0.5" style="stroke:#000000"/>
-<circle cx="291" cy="196" r="0.5" style="stroke:#000000"/>
-<circle cx="310" cy="180" r="0.5" style="stroke:#000000"/>
-<circle cx="172" cy="257" r="0.5" style="stroke:#000000"/>
-<circle cx="431" cy="212" r="0.5" style="stroke:#000000"/>
-<circle cx="290" cy="187" r="0.5" style="stroke:#000000"/>
-<circle cx="219" cy="203" r="0.5" style="stroke:#000000"/>
-<circle cx="230" cy="279" r="0.5" style="stroke:#000000"/>
-<circle cx="291" cy="192" r="0.5" style="stroke:#000000"/>
-<circle cx="291" cy="254" r="0.5" style="stroke:#000000"/>
-<circle cx="245" cy="309" r="0.5" style="stroke:#000000"/>
-<circle cx="345" cy="126" r="0.5" style="stroke:#000000"/>
-<circle cx="175" cy="278" r="0.5" style="stroke:#000000"/>
-<circle cx="289" cy="338" r="0.5" style="stroke:#000000"/>
-<circle cx="442" cy="228" r="0.5" style="stroke:#000000"/>
-<circle cx="242" cy="186" r="0.5" style="stroke:#000000"/>
-<circle cx="249" cy="120" r="0.5" style="stroke:#000000"/>
-<circle cx="415" cy="186" r="0.5" style="stroke:#000000"/>
-<circle cx="242" cy="145" r="0.5" style="stroke:#000000"/>
-<circle cx="384" cy="133" r="0.5" style="stroke:#000000"/>
-<circle cx="20" cy="98" r="1" style="stroke:#ff0000"/>
-<circle cx="50" cy="246" r="1" style="stroke:#ff0000"/>
-<circle cx="83" cy="354" r="1" style="stroke:#ff0000"/>
-<circle cx="164" cy="416" r="1" style="stroke:#ff0000"/>
-<circle cx="236" cy="434" r="1" style="stroke:#ff0000"/>
-<circle cx="343" cy="427" r="1" style="stroke:#ff0000"/>
-<circle cx="366" cy="412" r="1" style="stroke:#ff0000"/>
-<circle cx="379" cy="402" r="1" style="stroke:#ff0000"/>
-<circle cx="519" cy="143" r="1" style="stroke:#ff0000"/>
-<circle cx="528" cy="126" r="1" style="stroke:#ff0000"/>
-<circle cx="529" cy="115" r="1" style="stroke:#ff0000"/>
-<circle cx="510" cy="96" r="1" style="stroke:#ff0000"/>
-<circle cx="506" cy="95" r="1" style="stroke:#ff0000"/>
-<circle cx="117" cy="33" r="1" style="stroke:#ff0000"/>
-<circle cx="85" cy="28" r="1" style="stroke:#ff0000"/>
-<circle cx="40" cy="64" r="1" style="stroke:#ff0000"/>
-</svg>
diff --git a/testsuite/tests/ghc-regress/dph/quickhull/dph-quickhull.T b/testsuite/tests/ghc-regress/dph/quickhull/dph-quickhull.T
deleted file mode 100644
index f1a1debe3f..0000000000
--- a/testsuite/tests/ghc-regress/dph/quickhull/dph-quickhull.T
+++ /dev/null
@@ -1,20 +0,0 @@
-
-test ('dph-quickhull-opt'
- , [ alone
- , skip_if_fast
- , reqlib('dph-par')
- , reqlib('dph-prim-par')
- , only_ways(['normal', 'threaded1', 'threaded2']) ]
- , multimod_compile_and_run
- , [ 'Main'
- , '-Odph -funfolding-use-threshold30 -fdph-par'])
-
-test ('dph-quickhull-fast'
- , [ reqlib('dph-par')
- , reqlib('dph-prim-par')
- , only_ways(['normal', 'threaded1', 'threaded2']) ]
- , multimod_compile_and_run
- , [ 'Main'
- , '-O -fno-enable-rewrite-rules -fdph-par'])
-
-
diff --git a/testsuite/tests/ghc-regress/dph/smvm/Main.hs b/testsuite/tests/ghc-regress/dph/smvm/Main.hs
deleted file mode 100644
index e30938bc21..0000000000
--- a/testsuite/tests/ghc-regress/dph/smvm/Main.hs
+++ /dev/null
@@ -1,65 +0,0 @@
-{-# LANGUAGE TypeOperators #-}
-
-import SMVMVect (smvm)
-
-import Control.Exception (evaluate)
-import System.IO
-import System.Environment
-
-import qualified Data.Array.Parallel.Unlifted as U
-import Data.Array.Parallel.Prelude
-import Data.Array.Parallel.PArray as P
-
-
--- Load sparse matrix from a file
-loadSM :: String
- -> IO (PArray (PArray (Int, Double)), PArray Double)
-
-loadSM s
- = do
- (segd, m, v) <- loadSM' s
- return $ (nestUSegdPA' segd (fromUArrPA_2' m), fromUArrPA' v)
-
-
-loadSM' :: String
- -> IO ( U.Segd
- , U.Array (Int, Double)
- , U.Array Double)
-loadSM' fname =
- do
- h <- openBinaryFile fname ReadMode
- lengths <- U.hGet h
- indices <- U.hGet h
- values <- U.hGet h
- dv <- U.hGet h
- let segd = U.lengthsToSegd lengths
- m = U.zip indices values
- evaluate lengths
- evaluate indices
- evaluate values
- evaluate dv
- return (segd, m, dv)
-
-main
- = do [inFile, outFile] <- getArgs
- (m, v) <- loadSM inFile
- let result = smvm m v
-
- -- ignore wibbles in low-order bits
- let output
- = (unlines
- $ map (take 12)
- $ map show
- $ P.toList result)
- ++ ("SUM = "
- ++ (take 12 $ show $ sum $ P.toList result)
- ++ "\n")
-
- -- check our result against the provided outFile
- outputCheck <- readFile outFile
- print $ output == outputCheck
-
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/dph/smvm/Makefile b/testsuite/tests/ghc-regress/dph/smvm/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/dph/smvm/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/dph/smvm/SMVMVect.hs b/testsuite/tests/ghc-regress/dph/smvm/SMVMVect.hs
deleted file mode 100644
index 93f3775741..0000000000
--- a/testsuite/tests/ghc-regress/dph/smvm/SMVMVect.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE ParallelArrays #-}
-{-# OPTIONS -fvectorise #-}
-module SMVMVect (smvm) where
-
-import Data.Array.Parallel
-import Data.Array.Parallel.Prelude.Double as D
-import Data.Array.Parallel.Prelude.Int as I
-
-import qualified Prelude as P
-
-smvm :: PArray (PArray (Int, Double)) -> PArray Double -> PArray Double
-{-# NOINLINE smvm #-}
-smvm m v = toPArrayP (smvm' (fromNestedPArrayP m) (fromPArrayP v))
-
-smvm' :: [:[: (Int, Double) :]:] -> [:Double:] -> [:Double:]
-smvm' m v = [: D.sumP [: x D.* (v !: i) | (i,x) <- row :] | row <- m :]
-
diff --git a/testsuite/tests/ghc-regress/dph/smvm/dph-smvm.T b/testsuite/tests/ghc-regress/dph/smvm/dph-smvm.T
deleted file mode 100644
index d0a940a7c1..0000000000
--- a/testsuite/tests/ghc-regress/dph/smvm/dph-smvm.T
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-testFile = 'nothing'
-if config.platform.startswith('i386-'):
- testFile = 'test-i386.dat'
- outFile = 'result-i386.txt'
-
-elif config.platform.startswith('x86_64-'):
- testFile = 'test-x86_64.dat'
- outFile = 'result-x86_64.txt'
-
-elif config.platform.startswith('sparc-'):
- testFile = 'test-sparc.dat'
- outFile = 'result-sparc.txt'
-
-
-if testFile != 'nothing':
- test ('dph-smvm'
- , [ alone
- , skip_if_fast
- , reqlib('dph-par')
- , reqlib('dph-prim-par')
- , only_ways(['normal', 'threaded1', 'threaded2'])
- , extra_run_opts(testFile + " " + outFile)
- ]
- , multimod_compile_and_run
- , [ 'Main'
- , '-Odph -fdph-par'])
-
-
diff --git a/testsuite/tests/ghc-regress/dph/smvm/dph-smvm.stdout b/testsuite/tests/ghc-regress/dph/smvm/dph-smvm.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/dph/smvm/dph-smvm.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/dph/smvm/result-i386.txt b/testsuite/tests/ghc-regress/dph/smvm/result-i386.txt
deleted file mode 100644
index bf279482ef..0000000000
--- a/testsuite/tests/ghc-regress/dph/smvm/result-i386.txt
+++ /dev/null
@@ -1,101 +0,0 @@
-70.911036010
-6.2813390683
-22.790766463
-138.15513262
-52.633427554
-23.459671609
-39.794269586
-37.387466366
-16.666309389
-86.252836326
-2.0045195528
-89.578046705
-15.195705417
-14.397637033
-9.9571970137
-12.966919776
-314.12848526
-106.92515769
-53.308659874
-187.71842503
-19.814258245
-3.5465802997
-26.462654791
-39.989634289
-27.636953710
-14.238025227
-43.040256543
-2.1571625382
-67.541648911
-24.912387408
-7.6904324146
-2.9650091269
-48.668083695
-56.313556473
-285.31615184
-25.595785904
-49.488178849
-25.310153120
-10.706428715
-80.585871589
-225.85945599
-27.813502732
-36.745192736
-157.41617010
-51.501091484
-30.457678049
-254.13030691
-17.469473192
-60.702335620
-52.376229564
-26.517446882
-46.939308590
-19.961999016
-226.11502829
-69.361878263
-206.34127990
-59.002071706
-23.815778535
-101.90955813
-0.3802732664
-41.728371059
-12.021386376
-20.282213202
-17.500045961
-19.148201048
-73.983800195
-7.6944408324
-20.993610043
-58.350721826
-67.038534218
-31.260033960
-14.283638817
-140.68179300
-31.766861701
-46.639106640
-5.2416016510
-175.49192085
-6.1624941117
-3.0550277985
-51.818892673
-7.8677940322
-22.311195092
-258.22325771
-47.475395836
-104.78223912
-38.825154663
-1.6611687222
-63.278567845
-139.86840253
-72.273773546
-71.487712807
-46.823777361
-125.50127870
-3.7203037750
-48.211248191
-79.659040149
-59.672472372
-73.220258924
-63.910310588
-23.405170831
-SUM = 6054.6294998
diff --git a/testsuite/tests/ghc-regress/dph/smvm/result-sparc.txt b/testsuite/tests/ghc-regress/dph/smvm/result-sparc.txt
deleted file mode 100644
index 8c85795cbc..0000000000
--- a/testsuite/tests/ghc-regress/dph/smvm/result-sparc.txt
+++ /dev/null
@@ -1,101 +0,0 @@
-31.171134675
-136.96399669
-99.558688941
-2.3944559306
-132.07457337
-64.316928783
-17.141482371
-363.11345177
-12.350699032
-62.403552077
-25.836846192
-488.62415222
-90.786181827
-2650.5823673
-28.153073045
-29.698154931
-280.42051630
-264.68315963
-0.0
-17.241401450
-103.44167214
-120.25222269
-0.6481556022
-3.8143291874
-57.942419415
-0.9485226158
-11.722857133
-80.685346313
-497.97232376
-7.3021493591
-0.0
-4.9013220836
-61.582851534
-104.83102162
-12.196177619
-16.799924219
-8.8828491057
-20.672947720
-0.0
-8.9693097972
-66.272730332
-145.39838263
-2.6011327691
-80.289657428
-17.075494290
-0.5897431148
-26.250003553
-114.75531349
-57.010466242
-38.222004332
-5.6130133753
-120.90679901
-106.19820538
-0.0
-22.471060597
-50.616335208
-0.7352665245
-13.632854738
-72.201368578
-54.552907983
-3.2165935380
-31.048444965
-3.3117670262
-224.93467543
-110.02973746
-2.0467456318
-0.0
-7.2930317411
-8.6809940997
-41.756667327
-118.07161086
-358.47370477
-8.1013874742
-9.1189573118
-35.367265915
-10.245691446
-25.785856741
-55.679020534
-83.594437531
-34.102347192
-0.2950061972
-16.641363479
-0.0
-29.534024840
-0.0
-26.338163918
-149.17642877
-0.1698288578
-24.176530881
-57.626923103
-33.976034955
-15.977447399
-0.0
-893.79869661
-117.52170252
-60.450794548
-0.5763239875
-4.9690229931
-14.014097678
-275.53547442
-SUM = 9808.1107603
diff --git a/testsuite/tests/ghc-regress/dph/smvm/result-x86_64.txt b/testsuite/tests/ghc-regress/dph/smvm/result-x86_64.txt
deleted file mode 100644
index ebad60a2b0..0000000000
--- a/testsuite/tests/ghc-regress/dph/smvm/result-x86_64.txt
+++ /dev/null
@@ -1,101 +0,0 @@
-2.3160849869
-26.283679649
-76.729994661
-405.68040155
-55.723673494
-33.938026665
-26.505926115
-52.261424813
-33.397325696
-1.1328178441
-5.3697979892
-9.4419428065
-28.678826876
-61.019008268
-4.5301894841
-43.464645691
-0.0
-34.335714653
-20.798359422
-16.561984995
-17.581964787
-23.948149350
-19.120544306
-30.215710069
-0.7009196726
-51.297030554
-4.4591823094
-209.96809687
-47.289681980
-32.498492600
-13.196267290
-0.9989265108
-1.0341069617
-38.917182375
-7.9955088012
-10.355804741
-20.095073245
-36.647037472
-18.786308469
-14.370553796
-6.3265152208
-28.117268967
-65.265404040
-898.53639610
-2.1015959321
-188.65890412
-31.810545943
-14.182075117
-16.239269064
-27.309800346
-126.26472539
-32.948733352
-20.290181336
-0.0
-40.083403468
-81.626718007
-141.59574874
-8.5797914307
-37.726704414
-0.5807127190
-6.3771256902
-6.3486182511
-5.8655193980
-8.1395223932
-32.695645766
-16.964781766
-5.2863815777
-31.967858939
-21.161490986
-61.257464383
-4.1240057418
-18.099623432
-2.1851562467
-3.7220913984
-55.452918211
-10.289474473
-46.276301220
-23.201718136
-7.6338488432
-45.868472148
-12.976885901
-18.483762115
-143.50458515
-24.999794955
-12.121764180
-6.7194800847
-1.8693415211
-23.848562170
-1092.0362340
-67.588787350
-248.07913042
-0.0
-38.838570262
-13.800391661
-1277.9084108
-53.491216504
-14.325720303
-10.152650478
-17.439312837
-40.696348267
-SUM = 6837.6898296
diff --git a/testsuite/tests/ghc-regress/dph/smvm/test-i386.dat b/testsuite/tests/ghc-regress/dph/smvm/test-i386.dat
deleted file mode 100644
index 4db8d62620..0000000000
--- a/testsuite/tests/ghc-regress/dph/smvm/test-i386.dat
+++ /dev/null
Binary files differ
diff --git a/testsuite/tests/ghc-regress/dph/smvm/test-sparc.dat b/testsuite/tests/ghc-regress/dph/smvm/test-sparc.dat
deleted file mode 100644
index 73d2c201cd..0000000000
--- a/testsuite/tests/ghc-regress/dph/smvm/test-sparc.dat
+++ /dev/null
Binary files differ
diff --git a/testsuite/tests/ghc-regress/dph/smvm/test-x86_64.dat b/testsuite/tests/ghc-regress/dph/smvm/test-x86_64.dat
deleted file mode 100644
index 08a91f5ab1..0000000000
--- a/testsuite/tests/ghc-regress/dph/smvm/test-x86_64.dat
+++ /dev/null
Binary files differ
diff --git a/testsuite/tests/ghc-regress/dph/sumnats/Main.hs b/testsuite/tests/ghc-regress/dph/sumnats/Main.hs
deleted file mode 100644
index 9e18e335a9..0000000000
--- a/testsuite/tests/ghc-regress/dph/sumnats/Main.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-
-import SumNatsVect (sumNats)
-
--- Solution for 1st Euler problem
--- Add all the natural numbers below 1000 that are multiples of 3 or 5.
-
-solutionLists maxN
- = let sumOnetoN n = n * (n+1) `div` 2
- sumStep s n = s * sumOnetoN (n `div` s)
- in sumStep 3 (maxN - 1) + sumStep 5 (maxN - 1) - sumStep 15 (maxN - 1)
-
-solutionLists2 maxN
- = sum [ x | x <- [0.. maxN - 1]
- , (x `mod` 3 == 0) || (x `mod` 5 == 0) ]
-
-main
- = do let n = 1000
- print $ solutionLists n
- print $ solutionLists2 n
- print $ sumNats n
- \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/dph/sumnats/Makefile b/testsuite/tests/ghc-regress/dph/sumnats/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/dph/sumnats/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/dph/sumnats/SumNatsVect.hs b/testsuite/tests/ghc-regress/dph/sumnats/SumNatsVect.hs
deleted file mode 100644
index f51f207d0c..0000000000
--- a/testsuite/tests/ghc-regress/dph/sumnats/SumNatsVect.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE ParallelArrays #-}
-{-# OPTIONS -fvectorise #-}
-module SumNatsVect (sumNats) where
-
-import Data.Array.Parallel.Prelude
-import Data.Array.Parallel.Prelude.Int
-
-import qualified Prelude as P
-
-sumNats :: Int -> Int
-sumNats maxN
- = sumP [: x | x <- enumFromToP 0 (maxN - 1)
- , (x `mod` 3 == 0) || (x `mod` 5 == 0) :]
-
diff --git a/testsuite/tests/ghc-regress/dph/sumnats/dph-sumnats.T b/testsuite/tests/ghc-regress/dph/sumnats/dph-sumnats.T
deleted file mode 100644
index f84757c5d7..0000000000
--- a/testsuite/tests/ghc-regress/dph/sumnats/dph-sumnats.T
+++ /dev/null
@@ -1,10 +0,0 @@
-
-test ('dph-sumnats'
- , [ reqlib('dph-par')
- , reqlib('dph-prim-par')
- , only_ways(['normal', 'threaded1', 'threaded2']) ]
- , multimod_compile_and_run
- , [ 'Main'
- , '-Odph -fdph-par'])
-
-
diff --git a/testsuite/tests/ghc-regress/dph/sumnats/dph-sumnats.stdout b/testsuite/tests/ghc-regress/dph/sumnats/dph-sumnats.stdout
deleted file mode 100644
index 8858be2164..0000000000
--- a/testsuite/tests/ghc-regress/dph/sumnats/dph-sumnats.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-233168
-233168
-233168
diff --git a/testsuite/tests/ghc-regress/dph/words/Main.hs b/testsuite/tests/ghc-regress/dph/words/Main.hs
deleted file mode 100644
index bc706fb751..0000000000
--- a/testsuite/tests/ghc-regress/dph/words/Main.hs
+++ /dev/null
@@ -1,37 +0,0 @@
-
-import WordsVect
-import Data.Array.Parallel.Prelude
-import qualified Data.Array.Parallel.Prelude.Word8 as W
-import qualified Data.Array.Parallel.PArray as P
-import qualified Data.Array.Parallel.Unlifted as U
-import Data.Char
-
-main
- = do -- take the filename containing the words as the first arg
- let str = "When I look into the looking glass I'm always sure to see"
- ++ " no matter how I dodge about, me looking back at me."
-
- -- convert string to a PArray
- let paStr :: PArray W.Word8
- paStr = fromUArrPA' $ U.map W.fromInt $ U.fromList $ map ord str
-
-
- -- break the string into words then flatten it back
- let str' :: String
- str' = map chr
- $ map fromIntegral
- $ P.toList
- $ wordsOfPArray paStr
-
-
- -- count the number of words in the string, using the vectorised program
- let wordCountVect = fromIntegral $ wordCountOfPArray paStr
-
- -- count the number of words with the ye'olde list way
- let wordCountList = length $ words str
-
- --
- putStr $ show str' ++ "\n"
- ++ "word count vect = " ++ show wordCountVect ++ "\n"
- ++ "word count lists = " ++ show wordCountList ++ "\n"
- \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/dph/words/Makefile b/testsuite/tests/ghc-regress/dph/words/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/dph/words/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/dph/words/WordsVect.hs b/testsuite/tests/ghc-regress/dph/words/WordsVect.hs
deleted file mode 100644
index abf416e763..0000000000
--- a/testsuite/tests/ghc-regress/dph/words/WordsVect.hs
+++ /dev/null
@@ -1,123 +0,0 @@
-
--- Break up a string into words in parallel.
--- Based on the presentation "Breaking Sequential Habits of Thought", Guy Steele.
--- http://groups.csail.mit.edu/mac/users/gjs/6.945/readings/MITApril2009Steele.pdf
---
--- NOTE: This is a naive implementation, and I haven't benchmarked it.
--- Using parallel arrays in Seg probably isn't helpful for performance,
--- but it's a stress test for the vectoriser.
---
--- If we actually cared about performance we wouldn't want to recursively
--- subdivide the string right down to individual characters.
---
-{-# LANGUAGE ParallelArrays, ParallelListComp #-}
-{-# OPTIONS -fvectorise #-}
-
-module WordsVect
- ( wordsOfPArray
- , wordCountOfPArray )
-where
-import qualified Data.Array.Parallel.Prelude.Word8 as W
-import Data.Array.Parallel.Prelude.Word8 (Word8)
-import Data.Array.Parallel.Prelude.Int
-import Data.Array.Parallel
-
-import qualified Prelude as Prel
-
-
--- We can't use the Prelude Char and String types in vectorised code yet..
-type Char = Word8
-char_space = W.fromInt 32
-
-type String = [: Char :]
-
-
--- | Word state
-data State
- = Chunk String
- | Seg String -- initial word chunk
- [:String:] -- complete words in the middle of the segment
- String -- final word chunk
-
-
--- | Compose two wordstates.
-plusState :: State -> State -> State
-plusState str1 str2
- = case (str1, str2) of
- (Chunk as, Chunk bs) -> Chunk (as +:+ bs)
- (Chunk as, Seg bl bss br) -> Seg (as +:+ bl) bss br
- (Seg al ass ar, Chunk bs) -> Seg al ass (ar +:+ bs)
- (Seg al ass ar, Seg bl bss br) -> Seg al (ass +:+ joinEmpty [:ar +:+ bl:] +:+ bss) br
-
-joinEmpty :: [:[:Word8:]:] -> [:[:Word8:]:]
-joinEmpty ws
- | lengthP ws == 1 && lengthP (ws !: 0) == 0 = [::]
- | otherwise = ws
-
-
--- | Convert a single char to a wordstate.
-stateOfChar :: Char -> State
-stateOfChar c
- | c W.== char_space = Seg [::] [::] [::]
- | otherwise = Chunk [:c:]
-
-
--- | Break this string into words.
-stateOfString :: String -> State
-stateOfString str
- = let len = lengthP str
- result
- | len == 0 = Chunk [::]
- | len == 1 = stateOfChar (str !: 0)
- | otherwise
- = let half = len `div` 2
- s1 = sliceP 0 half str
- s2 = sliceP half (len-half) str
- in plusState (stateOfString s1) (stateOfString s2)
- in result
-
-
--- | Count the number of words in a string.
-countWordsOfState :: State -> Int
-countWordsOfState state
- = case state of
- Chunk c -> wordsInChunkArr c
- Seg c1 ws c2 -> wordsInChunkArr c1 + lengthP ws + wordsInChunkArr c2
-
-wordsInChunkArr :: [:Word8:] -> Int
-wordsInChunkArr arr
- | lengthP arr == 0 = 0
- | otherwise = 1
-
-
--- | Flatten a state back to an array of Word8s,
--- inserting spaces between the words.
-flattenState :: State -> [:Word8:]
-flattenState ss
- = case ss of
- Chunk s -> s
-
- Seg w1 ws w2
- -> w1
- +:+ [:char_space:]
- +:+ concatP [: w +:+ [:char_space:] | w <- ws :]
- +:+ w2
-
--- Interface ------------------------------------------------------------------
-
--- | Break up an array of chars into words then flatten it back.
-wordsOfPArray :: PArray Word8 -> PArray Word8
-wordsOfPArray arr
- = let str = fromPArrayP arr
- state = stateOfString str
- strOut = flattenState state
- in toPArrayP strOut
-
-
--- | Count the number of words in an array
-wordCountOfPArray :: PArray Word8 -> Int
-wordCountOfPArray arr
- = let str = fromPArrayP arr
- state = stateOfString str
- in countWordsOfState state
-
diff --git a/testsuite/tests/ghc-regress/dph/words/dph-words-fast.stdout b/testsuite/tests/ghc-regress/dph/words/dph-words-fast.stdout
deleted file mode 100644
index a7ad9be6b6..0000000000
--- a/testsuite/tests/ghc-regress/dph/words/dph-words-fast.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-"When I look into the looking glass I'm always sure to see no matter how I dodge about, me looking back at me."
-word count vect = 23
-word count lists = 23
diff --git a/testsuite/tests/ghc-regress/dph/words/dph-words-opt.stdout b/testsuite/tests/ghc-regress/dph/words/dph-words-opt.stdout
deleted file mode 100644
index a7ad9be6b6..0000000000
--- a/testsuite/tests/ghc-regress/dph/words/dph-words-opt.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-"When I look into the looking glass I'm always sure to see no matter how I dodge about, me looking back at me."
-word count vect = 23
-word count lists = 23
diff --git a/testsuite/tests/ghc-regress/dph/words/dph-words.T b/testsuite/tests/ghc-regress/dph/words/dph-words.T
deleted file mode 100644
index c89d01b08e..0000000000
--- a/testsuite/tests/ghc-regress/dph/words/dph-words.T
+++ /dev/null
@@ -1,21 +0,0 @@
-
-test ('dph-words-opt'
- , [ alone
- , skip_if_fast
- , reqlib('dph-par')
- , reqlib('dph-prim-par')
- , only_ways(['normal']) ]
- , multimod_compile_and_run
- , [ 'Main'
- , '-Odph -fdph-par -fno-liberate-case'])
-
-
-test ('dph-words-fast'
- , [ reqlib('dph-par')
- , reqlib('dph-prim-par')
- , only_ways(['normal']) ]
- , multimod_compile_and_run
- , [ 'Main'
- , '-O -fno-enable-rewrite-rules -fdph-par'])
-
-
diff --git a/testsuite/tests/ghc-regress/driver/1372/1372.stderr b/testsuite/tests/ghc-regress/driver/1372/1372.stderr
deleted file mode 100644
index f06f294dae..0000000000
--- a/testsuite/tests/ghc-regress/driver/1372/1372.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-Main.hs:5:5: Not in scope: data constructor `T'
diff --git a/testsuite/tests/ghc-regress/driver/1372/Makefile b/testsuite/tests/ghc-regress/driver/1372/Makefile
deleted file mode 100644
index 549c991b4a..0000000000
--- a/testsuite/tests/ghc-regress/driver/1372/Makefile
+++ /dev/null
@@ -1,37 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-LOCAL_PKGCONF=local.package.conf
-
-clean:
- rm -f p1/setup p1/Setup.o p1/Setup.hi
- rm -f p2/setup p2/Setup.o p2/Setup.hi
- rm -rf p1/dist p2/dist
- rm -f *.o *.hi
- rm -f clean.out prep.out
- rm -f p1/A.hs
- rm -f $(LOCAL_PKGCONF)
-
-1372:
- $(MAKE) clean
- $(MAKE) prep
-# This should recompile Main.hs, because A in package p1 has changed
-# and recompiling Main.hs will now fail.
- -cd p2 && ./setup build -v0
- $(MAKE) clean
-
-prep:
- echo "[]" >$(LOCAL_PKGCONF)
- cp p1/A1.hs p1/A.hs
- $(MAKE) prep.p1
- $(MAKE) prep.p2
- cp p1/A2.hs p1/A.hs
- cd p1 && ./setup build -v0
-
-prep.%:
- cd $* && "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make -o setup Setup.hs
- cd $* && ./setup configure -v0 --with-compiler="$(TEST_HC)" --with-hc-pkg="$(GHC_PKG)" --package-db=../$(LOCAL_PKGCONF)
- cd $* && ./setup build -v0
- cd $* && ./setup register -v0 --inplace
-
diff --git a/testsuite/tests/ghc-regress/driver/1372/all.T b/testsuite/tests/ghc-regress/driver/1372/all.T
deleted file mode 100644
index cabf3c01f8..0000000000
--- a/testsuite/tests/ghc-regress/driver/1372/all.T
+++ /dev/null
@@ -1,5 +0,0 @@
-test('1372',
- clean_cmd('$MAKE -s clean'),
- run_command,
- ['$MAKE -s --no-print-directory 1372'])
-
diff --git a/testsuite/tests/ghc-regress/driver/1372/p1/A1.hs b/testsuite/tests/ghc-regress/driver/1372/p1/A1.hs
deleted file mode 100644
index 6656b4bdfc..0000000000
--- a/testsuite/tests/ghc-regress/driver/1372/p1/A1.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module A where
-data T = T
diff --git a/testsuite/tests/ghc-regress/driver/1372/p1/A2.hs b/testsuite/tests/ghc-regress/driver/1372/p1/A2.hs
deleted file mode 100644
index aa0767c452..0000000000
--- a/testsuite/tests/ghc-regress/driver/1372/p1/A2.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module A where
-data T' = T'
diff --git a/testsuite/tests/ghc-regress/driver/1372/p1/Setup.hs b/testsuite/tests/ghc-regress/driver/1372/p1/Setup.hs
deleted file mode 100644
index 6fa548caf7..0000000000
--- a/testsuite/tests/ghc-regress/driver/1372/p1/Setup.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Main (main) where
-
-import Distribution.Simple
-
-main :: IO ()
-main = defaultMain
diff --git a/testsuite/tests/ghc-regress/driver/1372/p1/p1.cabal b/testsuite/tests/ghc-regress/driver/1372/p1/p1.cabal
deleted file mode 100644
index 66d4f0ec4c..0000000000
--- a/testsuite/tests/ghc-regress/driver/1372/p1/p1.cabal
+++ /dev/null
@@ -1,4 +0,0 @@
-name: p1
-version: 1.0
-exposed-modules: A
-build-depends: base
diff --git a/testsuite/tests/ghc-regress/driver/1372/p2/Main.hs b/testsuite/tests/ghc-regress/driver/1372/p2/Main.hs
deleted file mode 100644
index b423120e43..0000000000
--- a/testsuite/tests/ghc-regress/driver/1372/p2/Main.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Main where
-
-import A
-
-x = T
-
-main = print "ok"
diff --git a/testsuite/tests/ghc-regress/driver/1372/p2/Setup.hs b/testsuite/tests/ghc-regress/driver/1372/p2/Setup.hs
deleted file mode 100644
index 6fa548caf7..0000000000
--- a/testsuite/tests/ghc-regress/driver/1372/p2/Setup.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Main (main) where
-
-import Distribution.Simple
-
-main :: IO ()
-main = defaultMain
diff --git a/testsuite/tests/ghc-regress/driver/1372/p2/p2.cabal b/testsuite/tests/ghc-regress/driver/1372/p2/p2.cabal
deleted file mode 100644
index 903515e80c..0000000000
--- a/testsuite/tests/ghc-regress/driver/1372/p2/p2.cabal
+++ /dev/null
@@ -1,5 +0,0 @@
-name: p2
-version: 1.0
-executable: 1372
-build-depends: base, p1
-main-is: Main.hs
diff --git a/testsuite/tests/ghc-regress/driver/1959/1959.stdout b/testsuite/tests/ghc-regress/driver/1959/1959.stdout
deleted file mode 100644
index 3db47397ee..0000000000
--- a/testsuite/tests/ghc-regress/driver/1959/1959.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-16
-14
diff --git a/testsuite/tests/ghc-regress/driver/1959/B.hs b/testsuite/tests/ghc-regress/driver/1959/B.hs
deleted file mode 100644
index 8523c17bb4..0000000000
--- a/testsuite/tests/ghc-regress/driver/1959/B.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Main where
-
-import C (x)
-import GHC.Exts (inline)
-
-main = print (inline x)
diff --git a/testsuite/tests/ghc-regress/driver/1959/C.hs b/testsuite/tests/ghc-regress/driver/1959/C.hs
deleted file mode 100644
index 9106a32495..0000000000
--- a/testsuite/tests/ghc-regress/driver/1959/C.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module C (x) where
-
-import D
-
-x = f 2
diff --git a/testsuite/tests/ghc-regress/driver/1959/D.hs b/testsuite/tests/ghc-regress/driver/1959/D.hs
deleted file mode 100644
index 8ff5b1397d..0000000000
--- a/testsuite/tests/ghc-regress/driver/1959/D.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module D (f) where
-
-import E
-
-{-# INLINE f #-}
-f :: Int -> Int
-f x = h x
diff --git a/testsuite/tests/ghc-regress/driver/1959/E1.hs b/testsuite/tests/ghc-regress/driver/1959/E1.hs
deleted file mode 100644
index 1efb41b3e4..0000000000
--- a/testsuite/tests/ghc-regress/driver/1959/E1.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module E (h) where
-
-h :: Int -> Int
-h x = x + x + x + x + x + x + x + x
diff --git a/testsuite/tests/ghc-regress/driver/1959/E2.hs b/testsuite/tests/ghc-regress/driver/1959/E2.hs
deleted file mode 100644
index cb0ca32ad0..0000000000
--- a/testsuite/tests/ghc-regress/driver/1959/E2.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module E (h) where
-
-h :: Int -> Int
-h x = x + x + x + x + x + x + x
diff --git a/testsuite/tests/ghc-regress/driver/1959/Makefile b/testsuite/tests/ghc-regress/driver/1959/Makefile
deleted file mode 100644
index 766a606b2b..0000000000
--- a/testsuite/tests/ghc-regress/driver/1959/Makefile
+++ /dev/null
@@ -1,25 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-# Test recompilation bug #1959, which failed in 6.8.1 (and earlier)
-
-compile ::
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O E.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O D.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O -funfolding-use-threshold=0 C.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O B.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) E.o D.o C.o B.o -o prog
-
-clean ::
- rm -f *.o *.hi E.hs
-
-dotest ::
- $(MAKE) clean
- cp E1.hs E.hs
- $(MAKE) compile
- ./prog
- sleep 1
- cp E2.hs E.hs
- $(MAKE) compile
- ./prog
diff --git a/testsuite/tests/ghc-regress/driver/1959/test.T b/testsuite/tests/ghc-regress/driver/1959/test.T
deleted file mode 100644
index ff9e8f63a4..0000000000
--- a/testsuite/tests/ghc-regress/driver/1959/test.T
+++ /dev/null
@@ -1,5 +0,0 @@
-test('1959',
- extra_clean(['E.hi', 'E.o', 'E.hs', 'prog', 'compile.out',
- 'B.hi', 'B.o', 'C.hi', 'C.o', 'D.hi', 'D.o']),
- run_command,
- ['$MAKE -s --no-print-directory dotest'])
diff --git a/testsuite/tests/ghc-regress/driver/2464.hs b/testsuite/tests/ghc-regress/driver/2464.hs
deleted file mode 100644
index 3547c100fb..0000000000
--- a/testsuite/tests/ghc-regress/driver/2464.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE CPP #-}
-{-# OPTIONS_GHC -DTEST #-}
-{-# OPTIONS_GHC -fffi #-} -- deprecation warning
-#ifdef TEST
-{-# LANGUAGE EmptyDataDecls #-}
-#endif
-#if __GLASGOW_HASKELL__ < 610
-{-# INCLUDE "foo.h" #-} -- would generate a deprecation warning if enabled
-#endif
-
-module Test2464 where
-data T
diff --git a/testsuite/tests/ghc-regress/driver/2464.stderr b/testsuite/tests/ghc-regress/driver/2464.stderr
deleted file mode 100644
index 31e794e33c..0000000000
--- a/testsuite/tests/ghc-regress/driver/2464.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-2464.hs:3:16:
- Warning: -fffi is deprecated: use -XForeignFunctionInterface or pragma {-# LANGUAGE ForeignFunctionInterface #-} instead
diff --git a/testsuite/tests/ghc-regress/driver/2499.hs b/testsuite/tests/ghc-regress/driver/2499.hs
deleted file mode 100644
index b4f48879ee..0000000000
--- a/testsuite/tests/ghc-regress/driver/2499.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-{-# OPTIONS -package blargh #-}
-module Test where
diff --git a/testsuite/tests/ghc-regress/driver/2499.stderr b/testsuite/tests/ghc-regress/driver/2499.stderr
deleted file mode 100644
index 73404befe3..0000000000
--- a/testsuite/tests/ghc-regress/driver/2499.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-2499.hs:1:12: unknown flag in {-# OPTIONS_GHC #-} pragma: -package
-
-2499.hs:1:12: unknown flag in {-# OPTIONS_GHC #-} pragma: blargh
diff --git a/testsuite/tests/ghc-regress/driver/2566.stderr b/testsuite/tests/ghc-regress/driver/2566.stderr
deleted file mode 100644
index 526c76a86a..0000000000
--- a/testsuite/tests/ghc-regress/driver/2566.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-Warning: the following files would be used as linker inputs, but linking is not being done: foo2566.bar
-ghc: no input files
-Usage: For basic information, try the `--help' option.
diff --git a/testsuite/tests/ghc-regress/driver/3674.hs b/testsuite/tests/ghc-regress/driver/3674.hs
deleted file mode 100644
index 2253ca12ce..0000000000
--- a/testsuite/tests/ghc-regress/driver/3674.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# OPTIONS -F -pgmF ./3674_pre #-}
-
-module Test3674 where
-
-data Foo a where MkFoo :: Foo a
diff --git a/testsuite/tests/ghc-regress/driver/3674_pre.hs b/testsuite/tests/ghc-regress/driver/3674_pre.hs
deleted file mode 100644
index aef9cef9c7..0000000000
--- a/testsuite/tests/ghc-regress/driver/3674_pre.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-import System.Environment
-main = do
- [_,inf,outf] <- getArgs
- s <- readFile inf
- writeFile outf ("{-# LANGUAGE GADTs #-}\n" ++ s)
diff --git a/testsuite/tests/ghc-regress/driver/5313.hs b/testsuite/tests/ghc-regress/driver/5313.hs
deleted file mode 100644
index 14b809bf7d..0000000000
--- a/testsuite/tests/ghc-regress/driver/5313.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-import qualified GHC
-import System.Environment
-
-main = do
- (libdir:_) <- getArgs
- GHC.runGhcT (Just libdir) $ do
- -- begin initialize
- df0 <- GHC.getSessionDynFlags
- let df1 = df0{GHC.ghcMode = GHC.CompManager,
- GHC.hscTarget = GHC.HscInterpreted,
- GHC.ghcLink = GHC.LinkInMemory,
- GHC.verbosity = 0}
- _ <- GHC.setSessionDynFlags df1
- -- begin reset
- GHC.setContext [] []
- GHC.setTargets []
- _ <- GHC.load GHC.LoadAllTargets
- return ()
diff --git a/testsuite/tests/ghc-regress/driver/A011.hs b/testsuite/tests/ghc-regress/driver/A011.hs
deleted file mode 100644
index 96b88f80cc..0000000000
--- a/testsuite/tests/ghc-regress/driver/A011.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A011 where
diff --git a/testsuite/tests/ghc-regress/driver/A012.hs b/testsuite/tests/ghc-regress/driver/A012.hs
deleted file mode 100644
index 0dd79b8e05..0000000000
--- a/testsuite/tests/ghc-regress/driver/A012.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A012 where
diff --git a/testsuite/tests/ghc-regress/driver/A013.hs b/testsuite/tests/ghc-regress/driver/A013.hs
deleted file mode 100644
index 77275572d8..0000000000
--- a/testsuite/tests/ghc-regress/driver/A013.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A013 where
diff --git a/testsuite/tests/ghc-regress/driver/A014.hs b/testsuite/tests/ghc-regress/driver/A014.hs
deleted file mode 100644
index 3f850104b2..0000000000
--- a/testsuite/tests/ghc-regress/driver/A014.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A014 where
diff --git a/testsuite/tests/ghc-regress/driver/A015.hs b/testsuite/tests/ghc-regress/driver/A015.hs
deleted file mode 100644
index 1f354be31d..0000000000
--- a/testsuite/tests/ghc-regress/driver/A015.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A015 where
diff --git a/testsuite/tests/ghc-regress/driver/A031.hs b/testsuite/tests/ghc-regress/driver/A031.hs
deleted file mode 100644
index 12936c4306..0000000000
--- a/testsuite/tests/ghc-regress/driver/A031.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A031 where
diff --git a/testsuite/tests/ghc-regress/driver/A032.hs b/testsuite/tests/ghc-regress/driver/A032.hs
deleted file mode 100644
index 0701b781d8..0000000000
--- a/testsuite/tests/ghc-regress/driver/A032.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A032 where
diff --git a/testsuite/tests/ghc-regress/driver/A033.hs b/testsuite/tests/ghc-regress/driver/A033.hs
deleted file mode 100644
index d7be73eb49..0000000000
--- a/testsuite/tests/ghc-regress/driver/A033.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A033 where
diff --git a/testsuite/tests/ghc-regress/driver/A061a.hs b/testsuite/tests/ghc-regress/driver/A061a.hs
deleted file mode 100644
index 85230a1e3d..0000000000
--- a/testsuite/tests/ghc-regress/driver/A061a.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A061a where
diff --git a/testsuite/tests/ghc-regress/driver/A061b.hs b/testsuite/tests/ghc-regress/driver/A061b.hs
deleted file mode 100644
index 8244ddbb27..0000000000
--- a/testsuite/tests/ghc-regress/driver/A061b.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A061b where
diff --git a/testsuite/tests/ghc-regress/driver/A063.hs b/testsuite/tests/ghc-regress/driver/A063.hs
deleted file mode 100644
index fac8c10a34..0000000000
--- a/testsuite/tests/ghc-regress/driver/A063.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A063 where
diff --git a/testsuite/tests/ghc-regress/driver/A064.hs b/testsuite/tests/ghc-regress/driver/A064.hs
deleted file mode 100644
index 8ee13be248..0000000000
--- a/testsuite/tests/ghc-regress/driver/A064.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A064 where
diff --git a/testsuite/tests/ghc-regress/driver/A065.hs b/testsuite/tests/ghc-regress/driver/A065.hs
deleted file mode 100644
index 7de1a30132..0000000000
--- a/testsuite/tests/ghc-regress/driver/A065.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A065 where
diff --git a/testsuite/tests/ghc-regress/driver/A066.hs b/testsuite/tests/ghc-regress/driver/A066.hs
deleted file mode 100644
index be9b016c38..0000000000
--- a/testsuite/tests/ghc-regress/driver/A066.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A066 where
diff --git a/testsuite/tests/ghc-regress/driver/A067.hs b/testsuite/tests/ghc-regress/driver/A067.hs
deleted file mode 100644
index 8b57b4dc5d..0000000000
--- a/testsuite/tests/ghc-regress/driver/A067.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A067 where
diff --git a/testsuite/tests/ghc-regress/driver/A070.hs b/testsuite/tests/ghc-regress/driver/A070.hs
deleted file mode 100644
index 12fa79d0e0..0000000000
--- a/testsuite/tests/ghc-regress/driver/A070.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A070 where
diff --git a/testsuite/tests/ghc-regress/driver/A071.hs b/testsuite/tests/ghc-regress/driver/A071.hs
deleted file mode 100644
index 3d2a64cfc6..0000000000
--- a/testsuite/tests/ghc-regress/driver/A071.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A071 where
diff --git a/testsuite/tests/ghc-regress/driver/A200.hs b/testsuite/tests/ghc-regress/driver/A200.hs
deleted file mode 100644
index 0bc3b2f236..0000000000
--- a/testsuite/tests/ghc-regress/driver/A200.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A200 where
diff --git a/testsuite/tests/ghc-regress/driver/B021/C.hs b/testsuite/tests/ghc-regress/driver/B021/C.hs
deleted file mode 100644
index 01ecd10813..0000000000
--- a/testsuite/tests/ghc-regress/driver/B021/C.hs
+++ /dev/null
@@ -1 +0,0 @@
-module B021.C where
diff --git a/testsuite/tests/ghc-regress/driver/B022/C.hs b/testsuite/tests/ghc-regress/driver/B022/C.hs
deleted file mode 100644
index 230a6105f1..0000000000
--- a/testsuite/tests/ghc-regress/driver/B022/C.hs
+++ /dev/null
@@ -1 +0,0 @@
-module B022.C where
diff --git a/testsuite/tests/ghc-regress/driver/B023/C.hs b/testsuite/tests/ghc-regress/driver/B023/C.hs
deleted file mode 100644
index e70870831b..0000000000
--- a/testsuite/tests/ghc-regress/driver/B023/C.hs
+++ /dev/null
@@ -1 +0,0 @@
-module B023.C where
diff --git a/testsuite/tests/ghc-regress/driver/B024/C.hs b/testsuite/tests/ghc-regress/driver/B024/C.hs
deleted file mode 100644
index 397b5a5a80..0000000000
--- a/testsuite/tests/ghc-regress/driver/B024/C.hs
+++ /dev/null
@@ -1 +0,0 @@
-module B024.C where
diff --git a/testsuite/tests/ghc-regress/driver/B025/C.hs b/testsuite/tests/ghc-regress/driver/B025/C.hs
deleted file mode 100644
index 159cadd483..0000000000
--- a/testsuite/tests/ghc-regress/driver/B025/C.hs
+++ /dev/null
@@ -1 +0,0 @@
-module B025.C where
diff --git a/testsuite/tests/ghc-regress/driver/B027/F.hs b/testsuite/tests/ghc-regress/driver/B027/F.hs
deleted file mode 100644
index 9e67706069..0000000000
--- a/testsuite/tests/ghc-regress/driver/B027/F.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module B027.F where
-foreign export ccall f :: Int -> Int
-f :: Int -> Int
-f n = n + 1
diff --git a/testsuite/tests/ghc-regress/driver/B028/F.hs b/testsuite/tests/ghc-regress/driver/B028/F.hs
deleted file mode 100644
index 8630af1124..0000000000
--- a/testsuite/tests/ghc-regress/driver/B028/F.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module B028.F where
-foreign export ccall f :: Int -> Int
-f :: Int -> Int
-f n = n + 1
diff --git a/testsuite/tests/ghc-regress/driver/B041/C.hs b/testsuite/tests/ghc-regress/driver/B041/C.hs
deleted file mode 100644
index 9d076f6aeb..0000000000
--- a/testsuite/tests/ghc-regress/driver/B041/C.hs
+++ /dev/null
@@ -1 +0,0 @@
-module B041.C where
diff --git a/testsuite/tests/ghc-regress/driver/B042/C.hs b/testsuite/tests/ghc-regress/driver/B042/C.hs
deleted file mode 100644
index a91ce19f3e..0000000000
--- a/testsuite/tests/ghc-regress/driver/B042/C.hs
+++ /dev/null
@@ -1 +0,0 @@
-module B042.C where
diff --git a/testsuite/tests/ghc-regress/driver/B043/C.hs b/testsuite/tests/ghc-regress/driver/B043/C.hs
deleted file mode 100644
index 320acedcd8..0000000000
--- a/testsuite/tests/ghc-regress/driver/B043/C.hs
+++ /dev/null
@@ -1 +0,0 @@
-module B043.C where
diff --git a/testsuite/tests/ghc-regress/driver/B044/F.hs b/testsuite/tests/ghc-regress/driver/B044/F.hs
deleted file mode 100644
index d6ad4802c3..0000000000
--- a/testsuite/tests/ghc-regress/driver/B044/F.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module B044.F where
-foreign export ccall f :: Int -> Int
-f :: Int -> Int
-f n = n + 1
diff --git a/testsuite/tests/ghc-regress/driver/B045/F.hs b/testsuite/tests/ghc-regress/driver/B045/F.hs
deleted file mode 100644
index c89635b3a4..0000000000
--- a/testsuite/tests/ghc-regress/driver/B045/F.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module B045.F where
-foreign export ccall f :: Int -> Int
-f :: Int -> Int
-f n = n + 1
diff --git a/testsuite/tests/ghc-regress/driver/B200/C.hs b/testsuite/tests/ghc-regress/driver/B200/C.hs
deleted file mode 100644
index 1927565999..0000000000
--- a/testsuite/tests/ghc-regress/driver/B200/C.hs
+++ /dev/null
@@ -1 +0,0 @@
-module B200.C where
diff --git a/testsuite/tests/ghc-regress/driver/D063.hs b/testsuite/tests/ghc-regress/driver/D063.hs
deleted file mode 100644
index f62cd95ccd..0000000000
--- a/testsuite/tests/ghc-regress/driver/D063.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module D063 where
-import A063
diff --git a/testsuite/tests/ghc-regress/driver/D200.hs b/testsuite/tests/ghc-regress/driver/D200.hs
deleted file mode 100644
index 4f23bedafe..0000000000
--- a/testsuite/tests/ghc-regress/driver/D200.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module D200 where
-import A200
diff --git a/testsuite/tests/ghc-regress/driver/F016.hs b/testsuite/tests/ghc-regress/driver/F016.hs
deleted file mode 100644
index 8cdad020ff..0000000000
--- a/testsuite/tests/ghc-regress/driver/F016.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module TestStub016 where
-foreign export ccall f :: Int -> Int
-f :: Int -> Int
-f n = n + 1
diff --git a/testsuite/tests/ghc-regress/driver/F017.hs b/testsuite/tests/ghc-regress/driver/F017.hs
deleted file mode 100644
index de6f93da9d..0000000000
--- a/testsuite/tests/ghc-regress/driver/F017.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module TestStub017 where
-foreign export ccall f :: Int -> Int
-f :: Int -> Int
-f n = n + 1
diff --git a/testsuite/tests/ghc-regress/driver/F018.hs b/testsuite/tests/ghc-regress/driver/F018.hs
deleted file mode 100644
index 613459aaa3..0000000000
--- a/testsuite/tests/ghc-regress/driver/F018.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module TestStub018 where
-foreign export ccall f :: Int -> Int
-f :: Int -> Int
-f n = n + 1
diff --git a/testsuite/tests/ghc-regress/driver/F018a.hs b/testsuite/tests/ghc-regress/driver/F018a.hs
deleted file mode 100644
index 613459aaa3..0000000000
--- a/testsuite/tests/ghc-regress/driver/F018a.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module TestStub018 where
-foreign export ccall f :: Int -> Int
-f :: Int -> Int
-f n = n + 1
diff --git a/testsuite/tests/ghc-regress/driver/F019.hs b/testsuite/tests/ghc-regress/driver/F019.hs
deleted file mode 100644
index 724ee74a7c..0000000000
--- a/testsuite/tests/ghc-regress/driver/F019.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module TestStub019 where
-foreign export ccall f :: Int -> Int
-f :: Int -> Int
-f n = n + 1
diff --git a/testsuite/tests/ghc-regress/driver/F034.hs b/testsuite/tests/ghc-regress/driver/F034.hs
deleted file mode 100644
index e48d9a8faf..0000000000
--- a/testsuite/tests/ghc-regress/driver/F034.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module TestStub034 where
-foreign export ccall f :: Int -> Int
-f :: Int -> Int
-f n = n + 1
diff --git a/testsuite/tests/ghc-regress/driver/F035.hs b/testsuite/tests/ghc-regress/driver/F035.hs
deleted file mode 100644
index 445c742070..0000000000
--- a/testsuite/tests/ghc-regress/driver/F035.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module TestStub035 where
-foreign export ccall f :: Int -> Int
-f :: Int -> Int
-f n = n + 1
diff --git a/testsuite/tests/ghc-regress/driver/Makefile b/testsuite/tests/ghc-regress/driver/Makefile
deleted file mode 100644
index cb64ea675a..0000000000
--- a/testsuite/tests/ghc-regress/driver/Makefile
+++ /dev/null
@@ -1,487 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-# A set of driver tests
-
-# Things to test:
-#
-# - one-shot vs. --make
-# - hierarchical vs. flat
-# - -odir vs. no -odir
-# - -hidir vs. no -hidir
-# - root module vs. found modules
-
-OBJSUFFIX = .o
-
-# -----------------------------------------------------------------------------
-# One-shot compilations, non-hierarchical modules
-
-test011:
- $(RM) A011.hi
- $(RM) A011$(OBJSUFFIX)
- "$(TEST_HC)" $(TEST_HC_OPTS) $(TEST_HC_OPTS) -c A011.hs
- test -f A011.hi
- test -f A011$(OBJSUFFIX)
-
-# test -o
-test012:
- $(RM) A012.hi
- $(RM) A012$(OBJSUFFIX)oo
- "$(TEST_HC)" $(TEST_HC_OPTS) -c A012.hs -o A012$(OBJSUFFIX)oo
- test -f A012$(OBJSUFFIX)oo
-
-# test -ohi
-test013:
- $(RM) A013.xhi
- $(RM) A013$(OBJSUFFIX)
- "$(TEST_HC)" $(TEST_HC_OPTS) -c A013.hs -ohi A013.xhi
- test -f A013.xhi
-
-# test -odir
-test014:
- $(RM) -f A014.hi
- $(RM) -rf obj014
- mkdir obj014
- "$(TEST_HC)" $(TEST_HC_OPTS) -c A014.hs -odir obj014
- test -f obj014/A014$(OBJSUFFIX)
- test -f A014.hi
-
-# test -hidir
-test015:
- $(RM) -f A015$(OBJSUFFIX)
- $(RM) -rf hi015
- mkdir hi015
- "$(TEST_HC)" $(TEST_HC_OPTS) -c A015.hs -hidir hi015
- test -f A015$(OBJSUFFIX)
- test -f hi015/A015.hi
-
-# test stub generation
-test016:
- $(RM) F016.hi F016$(OBJSUFFIX) F016_stub.h
- "$(TEST_HC)" $(TEST_HC_OPTS) -c F016.hs
- test -f F016_stub.h
-
-# test -stubdir (filename differs from module name)
-test017:
- $(RM) F017.hi F017$(OBJSUFFIX)
- "$(TEST_HC)" $(TEST_HC_OPTS) -c F017.hs -stubdir stub017
- test -f stub017/TestStub017_stub.h
-
-# test -odir with stubs (filename differs from module name)
-test018:
- $(RM) -f F018.hi F018$(OBJSUFFIX) F018_stub.h
- $(RM) -rf obj018
- mkdir obj018
- "$(TEST_HC)" $(TEST_HC_OPTS) -c F018.hs -odir obj018
-
-# test for bug #3093
-test018a:
- $(RM) -f F018a.hi F018a_stub.h *.obj.018
- "$(TEST_HC)" $(TEST_HC_OPTS) -c F018a.hs -osuf obj.018
- test -f F018a.obj.018
-
-# test -outputdir
-test019:
- $(RM) -rf out019
- "$(TEST_HC)" $(TEST_HC_OPTS) -c F019.hs -outputdir out019
- test -f out019/TestStub019.hi
- test -f out019/TestStub019_stub.h
-
-# -----------------------------------------------------------------------------
-# One-shot compilation, hierarchical modules
-
-test021:
- $(RM) B021/C.hi
- $(RM) B021/C$(OBJSUFFIX)
- "$(TEST_HC)" $(TEST_HC_OPTS) -c B021/C.hs
- test -f B021/C.hi
- test -f B021/C$(OBJSUFFIX)
-
-# test -o
-test022:
- $(RM) B022/C.hi
- $(RM) B022/C$(OBJSUFFIX)oo
- "$(TEST_HC)" $(TEST_HC_OPTS) -c B022/C.hs -o B022/C$(OBJSUFFIX)oo
- test -f B022/C$(OBJSUFFIX)oo
-
-# test -ohi
-test023:
- $(RM) B023/C.xhi
- $(RM) B023/C$(OBJSUFFIX)
- "$(TEST_HC)" $(TEST_HC_OPTS) -c B023/C.hs -ohi B023/C.xhi
- test -f B023/C.xhi
-
-# test -odir
-test024:
- $(RM) -f B024/C.hi
- $(RM) -rf obj024
- mkdir obj024
- "$(TEST_HC)" $(TEST_HC_OPTS) -c B024/C.hs -odir obj024
- test -f obj024/B024/C$(OBJSUFFIX)
-
-# test -odir with non-Haskell compilation
-test024a:
- $(RM) -rf B024a
- $(RM) -rf obj024a
- mkdir B024a
- mkdir obj024a
- echo >B024a/stub.c
- "$(TEST_HC)" $(TEST_HC_OPTS) -c B024a/stub.c -odir obj024a
- test -f obj024a/B024a/stub$(OBJSUFFIX)
-
-# test -hidir
-test025:
- $(RM) -rf hi025
- mkdir hi025
- $(RM) B025/C$(OBJSUFFIX)
- "$(TEST_HC)" $(TEST_HC_OPTS) -c B025/C.hs -hidir hi025
- test -f hi025/B025/C.hi
-
-# This is a hierarchical module that lives in a subdirectory.
-test026:
- $(RM) d026/P/Q.hi
- $(RM) d026/P/Q$(OBJSUFFIX)
- "$(TEST_HC)" $(TEST_HC_OPTS) -c d026/P/Q.hs
- test -f d026/P/Q.hi
- test -f d026/P/Q$(OBJSUFFIX)
-
-# test stub generation
-# -fvia-C, because we want to check that the .hc file can #include the stub.h
-test027:
- $(RM) B027/F.hi B027/F$(OBJSUFFIX) B027/F_stub.h
- "$(TEST_HC)" $(TEST_HC_OPTS) -c B027/F.hs -fno-warn-deprecated-flags -fvia-C
- test -f B027/F_stub.h
-
-# test -stubdir
-# -fvia-C, because we want to check that the .hc file can #include the stub.h
-test028:
- $(RM) B028/F.hi B028/F$(OBJSUFFIX)
- $(RM) stub028/B028/F_stub.h
- "$(TEST_HC)" $(TEST_HC_OPTS) -c B028/F.hs -stubdir stub028 -fno-warn-deprecated-flags -fvia-C
- test -f stub028/B028/F_stub.h
-
-# -----------------------------------------------------------------------------
-# Compilation-manager compilations, flat modules
-
-test031:
- $(RM) A031.hi
- $(RM) A031$(OBJSUFFIX)
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make A031.hs
- test -f A031.hi
- test -f A031$(OBJSUFFIX)
-
-# test -odir
-test032:
- $(RM) A032.hi
- $(RM) -rf obj032
- mkdir obj032
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make A032.hs -odir obj032
- test -f obj032/A032$(OBJSUFFIX)
-
-# test -hidir
-test033:
- $(RM) -rf hi033
- $(RM) A033$(OBJSUFFIX)
- mkdir hi033
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make A033.hs -hidir hi033
- test -f hi033/A033.hi
-
-# test stub generation
-test034:
- $(RM) F034.hi F034$(OBJSUFFIX) F034_stub.h
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make F034.hs
- test -f F034_stub.h
-
-# test -stubdir (filename differs from module name)
-test035:
- $(RM) F035.hi F$(OBJSUFFIX) stub035/Stubs_stub.h
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make F035.hs -stubdir stub035
- test -f stub035/TestStub035_stub.h
-
-# -----------------------------------------------------------------------------
-# Compilation-manager compilations, hierarchical modules
-
-test041:
- $(RM) B041/C.hi
- $(RM) B041/C$(OBJSUFFIX)
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make B041/C.hs
- test -f B041/C.hi
- test -f B041/C$(OBJSUFFIX)
-
-# test -odir
-test042:
- $(RM) -rf obj042
- mkdir obj042
- $(RM) B042/C.hi
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make B042/C.hs -odir obj042
- test -f obj042/B042/C$(OBJSUFFIX)
-
-# test -hidir
-test043:
- $(RM) -f B043/C$(OBJSUFFIX)
- $(RM) -rf hi043
- mkdir hi043
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make B043/C.hs -hidir hi043
- test -f hi043/B043/C.hi
-
-# test stub generation
-test044:
- $(RM) B044/F.hi B044/F$(OBJSUFFIX) B044/F_stub.h
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make B044/F.hs
- test -f B044/F_stub.h
-
-# test -stubdir
-test045:
- $(RM) B045/F.hi B045/F$(OBJSUFFIX)
- $(RM) stub045/B045/F_stub.h
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make B045/F.hs -stubdir stub045
- test -f stub045/B045/F_stub.h
-
-# -----------------------------------------------------------------------------
-# Compilation-manager compilations, hierarchical modules, non-root modules
-
-test051:
- $(RM) d051_2/R/S.hi
- $(RM) d051_2/R/S$(OBJSUFFIX)
- $(RM) d051_1/P/Q.hi
- $(RM) d051_1/P/Q$(OBJSUFFIX)
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make -id051_1 -id051_2 R.S
- test -f d051_2/R/S.hi
- test -f d051_2/R/S$(OBJSUFFIX)
- test -f d051_1/P/Q.hi
- test -f d051_1/P/Q$(OBJSUFFIX)
-
-# test -odir
-test052:
- $(RM) d052_2/R/S.hi
- $(RM) d052_1/P/Q.hi
- $(RM) -rf obj052
- mkdir obj052
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make -id052_1 -id052_2 -odir obj052 R.S
- test -f d052_2/R/S.hi
- test -f obj052/R/S$(OBJSUFFIX)
- test -f d052_1/P/Q.hi
- test -f obj052/P/Q$(OBJSUFFIX)
-
-# test -hidir
-test053:
- $(RM) hi053/R/S.hi
- $(RM) d053_2/R/S$(OBJSUFFIX)
- $(RM) hi053/P/Q.hi
- $(RM) d053_1/P/Q$(OBJSUFFIX)
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make -id053_1 -id053_2 -hidir hi053 R.S
- test -f hi053/R/S.hi
- test -f d053_2/R/S$(OBJSUFFIX)
- test -f hi053/P/Q.hi
- test -f d053_1/P/Q$(OBJSUFFIX)
-
-# -----------------------------------------------------------------------------
-# Other tests
-
-# Test that -keep-s-files works with --make and -fvia-C
-test061a:
- $(RM) A061a.hi A061a$(OBJSUFFIX) A061a.s
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make -keep-s-files -fno-warn-deprecated-flags -fvia-C A061a.hs
- test -f A061a.s
-
-# Test that -keep-s-files works without --make
-test061b:
- $(RM) A061b.hi A061b$(OBJSUFFIX) A061b.s
- "$(TEST_HC)" $(TEST_HC_OPTS) -c -keep-s-files -fno-warn-deprecated-flags -fvia-C A061b.hs
- test -f A061b.s
-
-# Test that -main-is works with --make
-test062a:
- $(RM) Hello062a.hs Hello062a.hi Hello062a$(OBJSUFFIX) Hello062a.hc hello062a
- echo "module Hello062a where { hello062a = putStrLn \"ok\" }" >Hello062a.hs
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make -main-is Hello062a.hello062a Hello062a -o hello062a
- ./hello062a
-test062b:
- $(RM) Hello062b.hs Hello062b.hi Hello062b$(OBJSUFFIX) Hello062b.hc hello062b
- echo "module Hello062b where { main = putStrLn \"ok\" }" >Hello062b.hs
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make -main-is Hello062b Hello062b -o hello062b
- ./hello062b
-test062c:
- $(RM) Hello062c.hs Hello062c.hi Hello062c$(OBJSUFFIX) Hello062c.hc hello062c
- echo "module Main (hello062c) where { hello062c = putStrLn \"ok\" }" >Hello062c.hs
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make -main-is hello062c Hello062c.hs -o hello062c
- ./hello062c
-test062d:
- $(RM) -rf B062d
- $(RM) hello062d
- mkdir B062d
- echo "module B062d.Hello062d (hello062d) where { hello062d = putStrLn \"ok\" }" >B062d/Hello062d.hs
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make -main-is B062d.Hello062d.hello062d B062d/Hello062d.hs -o hello062d
- ./hello062d
-test062e:
- $(RM) -rf B062e
- $(RM) Hello062e.hc hello062e
- mkdir B062e
- echo "module B062e.Hello062e (main) where { main = putStrLn \"ok\" }" >B062e/Hello062e.hs
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make -main-is B062e.Hello062e B062e/Hello062e.hs -o hello062e
- ./hello062e
-
-# Test that -i deletes the list of search paths.
-# The compilation will fail, but we ignore the failure and just
-# compare the output, because make might give us a different exit code.
-test063:
- $(RM) A063.hi A063$(OBJSUFFIX) A063.hc D063.hi D063$(OBJSUFFIX) D063.hc
- -"$(TEST_HC)" $(TEST_HC_OPTS) --make -i -v0 D063.hs
-
-# Test -E
-test064:
- $(RM) A064.hi A064.hspp
- "$(TEST_HC)" $(TEST_HC_OPTS) -E A064.hs
- test -f A064.hspp
-
-# Test -E/-cpp
-test065:
- $(RM) A065.hi A065.hspp
- "$(TEST_HC)" $(TEST_HC_OPTS) -E -cpp A065.hs
- test -f A065.hspp
-
-# Test -E/-o
-test066:
- $(RM) A066.hi A066.tmp
- "$(TEST_HC)" $(TEST_HC_OPTS) -E A066.hs -o A066.tmp
- test -f A066.tmp
-
-# Test -E/-cpp/-o
-test067:
- $(RM) A067.hi A067.tmp
- "$(TEST_HC)" $(TEST_HC_OPTS) -cpp -E A067.hs -o A067.tmp
- test -f A067.tmp
-
-# Test -S
-test070:
- $(RM) A070.hi A070.s
- "$(TEST_HC)" $(TEST_HC_OPTS) -S A070.hs
- test -f A070.s
-
-# Test -S/-o
-test071:
- $(RM) A071.hi A071.tmp
- "$(TEST_HC)" $(TEST_HC_OPTS) -S A071.hs -o A071.tmp
- test -f A071.tmp
-
-
-# Tests for #2248, -o and .exe
-
-define test081
-$(RM) $(1).hs $(1).hi $(1)$(OBJSUFFIX) $(1).hc $(1)$(exeext)
-echo "module Main where { main = putStrLn \"ok\" }" >$(1).hs
-"$(TEST_HC)" $(TEST_HC_OPTS) --make -v0 $(1).hs
-test -f $(1)$(exeext)
-endef
-
-test081a:
- $(call test081, Test_081a)
-test081b:
- $(call test081, Test.081b)
-
-# -----------------------------------------------------------------------------
-# --make tests
-
-# Test for overlap between home module and package module
-test100:
- $(RM) overlap/List.hi overlap/List.o
- $(RM) overlap/Overlap.hi overlap/Overlap.o
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make -ioverlap Overlap
-
-# -----------------------------------------------------------------------------
-# dependency-generation tests
-
-DEPFILE200 = depend200
-
-# Test that we can create a dependency file, and that we can
-# modify an existing dependency file.
-test200:
- $(RM) $(DEPFILE200)
- "$(TEST_HC)" $(TEST_HC_OPTS) -M -dep-makefile $(DEPFILE200) D200
- test -f $(DEPFILE200)
- "$(TEST_HC)" $(TEST_HC_OPTS) -M -dep-makefile $(DEPFILE200) D200 B200.C A200
- test -f $(DEPFILE200)
- "$(TEST_HC)" $(TEST_HC_OPTS) -M -dep-makefile $(DEPFILE200) D200.hs B200/C.hs A200.hs
- test -f $(DEPFILE200)
-
-# -----------------------------------------------------------------------------
-
-2566::
- if "$(TEST_HC)" $(TEST_HC_OPTS) -c foo2566.bar; then false else true; fi
-
-.PHONY: mode001
-# We use
-# sed '2,$$d'
-# rather than
-# head -1
-# as the latter gives
-# ghc: <stdout>: hFlush: resource vanished (Broken pipe)
-# on OS X
-mode001:
- "$(TEST_HC)" $(TEST_HC_OPTS) --make --help | sed '2,$$d'
- "$(TEST_HC)" $(TEST_HC_OPTS) --help --make | sed '2,$$d'
- "$(TEST_HC)" $(TEST_HC_OPTS) --interactive --help | sed '2,$$d'
- "$(TEST_HC)" $(TEST_HC_OPTS) --help --interactive | sed '2,$$d'
- "$(TEST_HC)" $(TEST_HC_OPTS) --version --help | sed "s/, version.*//"
- "$(TEST_HC)" $(TEST_HC_OPTS) --help --version | sed '2,$$d'
- "$(TEST_HC)" $(TEST_HC_OPTS) --interactive --version | sed "s/, version.*//"
- "$(TEST_HC)" $(TEST_HC_OPTS) --version --interactive | sed "s/, version.*//"
-
-# Test for building DLLs with ghc -shared, see #2745
-shared001:
- $(RM) Shared001.hi Shared001.o HSdll.dll.a HSdll.dll Shared001_stub.*
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 -shared Shared001.hs
-
-# -----------------------------------------------------------------------------
-
-3674:
- $(RM) 3674*.o 3674*.hi 3674_pre
- "$(TEST_HC)" $(TEST_HC_OPTS) --make 3674_pre.hs
- "$(TEST_HC)" $(TEST_HC_OPTS) --make 3674.hs
-
-.PHONY: rtsopts001
-rtsopts001:
- $(RM) rtsOpts$(exeext) rtsOpts.hi rtsOpts.o
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make rtsOpts -rtsopts
- echo "Normal"
- -./rtsOpts +RTS -C0 2>&1
- $(RM) rtsOpts$(exeext) rtsOpts.hi rtsOpts.o
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make rtsOpts
- echo "No RTS opts"
- -./rtsOpts +RTS -C0 2>&1
-
-.PHONY: rtsopts002
-rtsopts002:
- $(RM) rtsopts002$(exeext) rtsopts002.hi rtsopts002.o
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make rtsopts002 -rtsopts=some
- ./rtsopts002
- ./rtsopts002 +RTS --info >/dev/null
- if ./rtsopts002 +RTS -C0; then exit 1; else exit 0; fi
- GHCRTS= ./rtsopts002
- GHCRTS=--info ./rtsopts002 >/dev/null
- if GHCRTS=-C0 ./rtsopts002; then exit 1; else exit 0; fi
-
-.PHONY: withRtsOpts
-withRtsOpts:
- $(RM) withRtsOpts$(exeext) withRtsOpts.hi withRtsOpts.o withRtsOpts.out
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make withRtsOpts -with-rtsopts=--info
- ./withRtsOpts | head -1
- # Also test for non-safe RTS opts, these should be allowed too,
- # since the author has explicitly requested them. (#5114)
- $(RM) withRtsOpts$(exeext) withRtsOpts.hi withRtsOpts.o withRtsOpts.out
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make withRtsOpts -with-rtsopts=-twithRtsOpts.out
- ./withRtsOpts | head -1
- test -f withRtsOpts.out
-
-.PHONY: T3364
-T3364:
- -"$(TEST_HC)" $(TEST_HC_OPTS) -H
-
-.PHONY: T706
-T706:
- cp T706a.hs T706.hs
- "$(TEST_HC)" $(TEST_HC_OPTS) -c T706.hs
- cp T706b.hs T706.hs
- "$(TEST_HC)" $(TEST_HC_OPTS) -c T706.hs
- echo "test" | "$(TEST_HC)" $(TEST_HC_OPTS) --interactive -ignore-dot-ghci -v0 T706
diff --git a/testsuite/tests/ghc-regress/driver/Shared001.hs b/testsuite/tests/ghc-regress/driver/Shared001.hs
deleted file mode 100644
index 4f6a3d9c3d..0000000000
--- a/testsuite/tests/ghc-regress/driver/Shared001.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module Shared001 where
-
--- Test for building DLLs with ghc -shared, see #2745
-
-f :: Int -> Int
-f x = x+1
-
-foreign export ccall f :: Int -> Int
diff --git a/testsuite/tests/ghc-regress/driver/T3007/A/A.cabal b/testsuite/tests/ghc-regress/driver/T3007/A/A.cabal
deleted file mode 100644
index 86b3bb013e..0000000000
--- a/testsuite/tests/ghc-regress/driver/T3007/A/A.cabal
+++ /dev/null
@@ -1,7 +0,0 @@
-Name: A
-Version: 0
-
-Library
- Exposed-Modules: A
- Other-Modules: Internal
- Extensions: NoImplicitPrelude
diff --git a/testsuite/tests/ghc-regress/driver/T3007/A/A.hs b/testsuite/tests/ghc-regress/driver/T3007/A/A.hs
deleted file mode 100644
index 83e99f555f..0000000000
--- a/testsuite/tests/ghc-regress/driver/T3007/A/A.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module A (
-
- A (A)
-
-) where
-
- import Internal
diff --git a/testsuite/tests/ghc-regress/driver/T3007/A/Internal.hs b/testsuite/tests/ghc-regress/driver/T3007/A/Internal.hs
deleted file mode 100644
index 761480dece..0000000000
--- a/testsuite/tests/ghc-regress/driver/T3007/A/Internal.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Internal (
-
- A (A)
-
-) where
-
- data A = A
diff --git a/testsuite/tests/ghc-regress/driver/T3007/A/Setup.hs b/testsuite/tests/ghc-regress/driver/T3007/A/Setup.hs
deleted file mode 100644
index 9a994af677..0000000000
--- a/testsuite/tests/ghc-regress/driver/T3007/A/Setup.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-import Distribution.Simple
-main = defaultMain
diff --git a/testsuite/tests/ghc-regress/driver/T3007/B/B.cabal b/testsuite/tests/ghc-regress/driver/T3007/B/B.cabal
deleted file mode 100644
index dbccfffbe9..0000000000
--- a/testsuite/tests/ghc-regress/driver/T3007/B/B.cabal
+++ /dev/null
@@ -1,8 +0,0 @@
-Name: B
-Version: 0
-
-Library
- Build-Depends: A == 0
- Exposed-Modules: B
- Other-Modules: Internal
- Extensions: NoImplicitPrelude
diff --git a/testsuite/tests/ghc-regress/driver/T3007/B/B.hs b/testsuite/tests/ghc-regress/driver/T3007/B/B.hs
deleted file mode 100644
index 9bd13bbaec..0000000000
--- a/testsuite/tests/ghc-regress/driver/T3007/B/B.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module B where
-
- import A
- import {-# SOURCE #-} Internal
-
- a :: A
- a = A
diff --git a/testsuite/tests/ghc-regress/driver/T3007/B/Internal.hs b/testsuite/tests/ghc-regress/driver/T3007/B/Internal.hs
deleted file mode 100644
index ccb9cd4b23..0000000000
--- a/testsuite/tests/ghc-regress/driver/T3007/B/Internal.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Internal where
-
- import B
diff --git a/testsuite/tests/ghc-regress/driver/T3007/B/Internal.hs-boot b/testsuite/tests/ghc-regress/driver/T3007/B/Internal.hs-boot
deleted file mode 100644
index d066bb085e..0000000000
--- a/testsuite/tests/ghc-regress/driver/T3007/B/Internal.hs-boot
+++ /dev/null
@@ -1 +0,0 @@
-module Internal where
diff --git a/testsuite/tests/ghc-regress/driver/T3007/B/Setup.hs b/testsuite/tests/ghc-regress/driver/T3007/B/Setup.hs
deleted file mode 100644
index 9a994af677..0000000000
--- a/testsuite/tests/ghc-regress/driver/T3007/B/Setup.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-import Distribution.Simple
-main = defaultMain
diff --git a/testsuite/tests/ghc-regress/driver/T3007/Makefile b/testsuite/tests/ghc-regress/driver/T3007/Makefile
deleted file mode 100644
index 516e6f30b9..0000000000
--- a/testsuite/tests/ghc-regress/driver/T3007/Makefile
+++ /dev/null
@@ -1,21 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-clean:
- rm -f A/Setup A/Setup.o A/Setup.hi
- rm -f B/Setup B/Setup.o B/Setup.hi
- rm -rf A/dist B/dist
- rm -f package.conf
-
-T3007:
- $(MAKE) clean
- echo '[]' > package.conf
- cd A && '$(TEST_HC)' -v0 --make Setup
- cd A && ./Setup configure -v0 --with-compiler='$(TEST_HC)' --ghc-pkg-option=--global-conf=../package.conf --ghc-option=-package-conf../package.conf
- cd A && ./Setup build -v0
- cd A && ./Setup register --inplace -v0
- cd B && '$(TEST_HC)' -v0 --make Setup
- cd B && ./Setup configure -v0 --with-compiler='$(TEST_HC)' --ghc-pkg-option=--global-conf=../package.conf --ghc-option=-package-conf../package.conf
- cd B && ./Setup build -v0
-
diff --git a/testsuite/tests/ghc-regress/driver/T3007/all.T b/testsuite/tests/ghc-regress/driver/T3007/all.T
deleted file mode 100644
index 194097335d..0000000000
--- a/testsuite/tests/ghc-regress/driver/T3007/all.T
+++ /dev/null
@@ -1,5 +0,0 @@
-test('T3007',
- clean_cmd('$MAKE -s clean'),
- run_command,
- ['$MAKE -s --no-print-directory T3007'])
-
diff --git a/testsuite/tests/ghc-regress/driver/T3364.stderr b/testsuite/tests/ghc-regress/driver/T3364.stderr
deleted file mode 100644
index 852893facc..0000000000
--- a/testsuite/tests/ghc-regress/driver/T3364.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-ghc: on the commandline: missing argument for flag: -H
-Usage: For basic information, try the `--help' option.
diff --git a/testsuite/tests/ghc-regress/driver/T3389.hs b/testsuite/tests/ghc-regress/driver/T3389.hs
deleted file mode 100644
index e068611460..0000000000
--- a/testsuite/tests/ghc-regress/driver/T3389.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-
-{-# LANGUAGE CPP #-}
-{-# OPTIONS_GHC -optP -C #-}
-
-#define A 'a'
-
-main :: IO ()
-main = putStrLn [A,
--- /*
- 'b',
--- */
- 'c']
diff --git a/testsuite/tests/ghc-regress/driver/T3389.stdout b/testsuite/tests/ghc-regress/driver/T3389.stdout
deleted file mode 100644
index 8baef1b4ab..0000000000
--- a/testsuite/tests/ghc-regress/driver/T3389.stdout
+++ /dev/null
@@ -1 +0,0 @@
-abc
diff --git a/testsuite/tests/ghc-regress/driver/T4437.hs b/testsuite/tests/ghc-regress/driver/T4437.hs
deleted file mode 100644
index 64634a9c74..0000000000
--- a/testsuite/tests/ghc-regress/driver/T4437.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-
-module Main (main) where
-
-import Data.List
-import DynFlags
-import Language.Haskell.Extension
-
-main :: IO ()
-main = do let ghcExtensions = [ ext | (ext, _, _, _) <- xFlags ]
- cabalExtensions = map show [ toEnum 0 :: KnownExtension .. ]
- ghcOnlyExtensions = ghcExtensions \\ cabalExtensions
- -- These are extensions which are deliberately not yet
- -- registered with Cabal
- expectedGhcOnlyExtensions
- = ["ParallelArrays",
- "RelaxedLayout",
- "DeriveGeneric",
- "DefaultSignatures",
- "InterruptibleFFI",
- "AlternativeLayoutRule",
- "AlternativeLayoutRuleTransitional",
- "MonadComprehensions"]
- unexpectedGhcOnlyExtension = ghcOnlyExtensions
- \\ expectedGhcOnlyExtensions
- mapM_ putStrLn unexpectedGhcOnlyExtension
-
diff --git a/testsuite/tests/ghc-regress/driver/T706.stdout b/testsuite/tests/ghc-regress/driver/T706.stdout
deleted file mode 100644
index fadc068c40..0000000000
--- a/testsuite/tests/ghc-regress/driver/T706.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"testing"
diff --git a/testsuite/tests/ghc-regress/driver/T706a.hs b/testsuite/tests/ghc-regress/driver/T706a.hs
deleted file mode 100644
index 04f5bf53e9..0000000000
--- a/testsuite/tests/ghc-regress/driver/T706a.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE Haskell2010 #-}
-module T706 where
-
-foreign export ccall f :: Int -> Int
-
-f :: Int -> Int
-f x = x + 1
diff --git a/testsuite/tests/ghc-regress/driver/T706b.hs b/testsuite/tests/ghc-regress/driver/T706b.hs
deleted file mode 100644
index 1d14e97a19..0000000000
--- a/testsuite/tests/ghc-regress/driver/T706b.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module T706 where
-
-test = "testing"
diff --git a/testsuite/tests/ghc-regress/driver/all.T b/testsuite/tests/ghc-regress/driver/all.T
deleted file mode 100644
index 1907087a5a..0000000000
--- a/testsuite/tests/ghc-regress/driver/all.T
+++ /dev/null
@@ -1,333 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-test('driver011',
- extra_clean(['A011.hi', 'A011.o']),
- run_command,
- ['$MAKE -s --no-print-directory test011'])
-
-test('driver012',
- extra_clean(['A012.hi', 'A012.o']),
- run_command,
- ['$MAKE -s --no-print-directory test012'])
-
-test('driver013',
- extra_clean(['A013.hi', 'A013.o']),
- run_command,
- ['$MAKE -s --no-print-directory test013'])
-
-test('driver014',
- extra_clean(['A014.hi', 'obj014/A014.o', 'obj014']),
- run_command,
- ['$MAKE -s --no-print-directory test014'])
-
-test('driver015',
- extra_clean(['A015.o', 'hi015/A015.hi', 'hi015']),
- run_command,
- ['$MAKE -s --no-print-directory test015'])
-
-test('driver016',
- extra_clean(['F016.hi', 'F016.o', 'F016_stub.h']),
- run_command,
- ['$MAKE -s --no-print-directory test016'])
-
-test('driver017',
- extra_clean(['F017.hi', 'F017.o', 'F017_stub.h']),
- run_command,
- ['$MAKE -s --no-print-directory test017'])
-
-test('driver018',
- extra_clean(['F018.hi', 'F018_stub.h',
- 'obj018/TestStub018.o', 'obj018/TestStub018_stub.o',
- 'obj018']),
- run_command,
- ['$MAKE -s --no-print-directory test018'])
-
-test('driver018a',
- extra_clean(['F018a.hi', 'F018a_stub.h',
- 'TestStub018a.obj.018',
- 'obj018a/TestStub018a_stub.obj.018']),
- run_command,
- ['$MAKE -s --no-print-directory test018a'])
-
-test('driver019',
- extra_clean(['out019/TestStub.hi',
- 'out019/TestStub.o',
- 'out019/TestStub_stub.h',
- 'out019/TestStub_stub.o']),
- run_command,
- ['$MAKE -s --no-print-directory test019'])
-
-test('driver021',
- extra_clean(['B021/C.hi', 'B021/C.o']),
- run_command,
- ['$MAKE -s --no-print-directory test021'])
-
-test('driver022',
- extra_clean(['B022/C.hi', 'B022/C.o']),
- run_command,
- ['$MAKE -s --no-print-directory test022'])
-
-test('driver023',
- extra_clean(['B023/C.hi', 'B023/C.o']),
- run_command,
- ['$MAKE -s --no-print-directory test023'])
-
-test('driver024',
- extra_clean(['B024/C.hi', 'obj024/B024/C.o', 'obj024/B024', 'obj024']),
- run_command,
- ['$MAKE -s --no-print-directory test024'])
-
-test('driver024a',
- extra_clean(['obj024a/B024a/stub.o', 'obj024a/B024a', 'obj024a']),
- run_command,
- ['$MAKE -s --no-print-directory test024a'])
-
-test('driver025',
- extra_clean(['B025/C.hi', 'B025/C.o',
- 'hi025/B025/C.hi', 'hi025/B025', 'hi025']),
- run_command,
- ['$MAKE -s --no-print-directory test025'])
-
-test('driver026',
- extra_clean(['d026/P/Q.hi', 'd026/P/Q.o']),
- run_command,
- ['$MAKE -s --no-print-directory test026'])
-
-test('driver027',
- extra_clean(['B027/F.hi', 'B027/F.o',
- 'B027/F_stub.h', 'B027/F_stub.o']),
- run_command,
- ['$MAKE -s --no-print-directory test027'])
-
-test('driver028',
- extra_clean(['B028/F.hi', 'B028/F.o',
- 'B028/F_stub.h', 'B028/F_stub.o']),
- run_command,
- ['$MAKE -s --no-print-directory test028'])
-
-test('driver031',
- extra_clean(['A031.hi', 'A031.o']),
- run_command,
- ['$MAKE -s --no-print-directory test031'])
-
-test('driver032',
- extra_clean(['A032.hi', 'A032.o']),
- run_command,
- ['$MAKE -s --no-print-directory test032'])
-
-test('driver033',
- extra_clean(['A033.hi', 'A033.o', 'hi033/A033.hi', 'hi033']),
- run_command,
- ['$MAKE -s --no-print-directory test033'])
-
-test('driver034',
- extra_clean(['F034.hi', 'F034.o', 'F034_stub.h']),
- run_command,
- ['$MAKE -s --no-print-directory test034'])
-
-test('driver035',
- extra_clean(['F035.hi', 'F035.o',
- 'stub035/F035_stub.h']),
- run_command,
- ['$MAKE -s --no-print-directory test035'])
-
-test('driver041',
- extra_clean(['B041/C.hi', 'B041/C.o']),
- run_command,
- ['$MAKE -s --no-print-directory test041'])
-
-test('driver042',
- extra_clean(['B042/C.hi', 'B042/C.o']),
- run_command,
- ['$MAKE -s --no-print-directory test042'])
-
-test('driver043',
- extra_clean(['B043/C.hi', 'B043/C.o',
- 'hi043/B043/C.hi', 'hi043/B043', 'hi043']),
- run_command,
- ['$MAKE -s --no-print-directory test043'])
-
-test('driver044',
- extra_clean(['B044/F.hi', 'B044/F.o',
- 'B044/F_stub.h', 'B044/F_stub.o']),
- run_command,
- ['$MAKE -s --no-print-directory test044'])
-
-test('driver045',
- extra_clean(['B045/F.hi', 'B045/F.o',
- 'B045/F_stub.h', 'B045/F_stub.o']),
- run_command,
- ['$MAKE -s --no-print-directory test045'])
-
-test('driver051',
- extra_clean(['d051_1/P/Q.hi', 'd051_1/P/Q.o',
- 'd051_2/R/S.hi', 'd051_2/R/S.o']),
- run_command,
- ['$MAKE -s --no-print-directory test051'])
-
-test('driver052',
- extra_clean(['d052_1/P/Q.hi', 'd052_1/P/Q.o',
- 'd052_2/R/S.hi', 'd052_2/R/S.o',
- 'obj052/P/Q.o', 'obj052/P',
- 'obj052/R/S.o', 'obj052/R',
- 'obj052']),
- run_command,
- ['$MAKE -s --no-print-directory test052'])
-
-test('driver053',
- extra_clean(['d053_1/P/Q.hi', 'd053_1/P/Q.o',
- 'd053_2/R/S.hi', 'd053_2/R/S.o',
- 'hi053/P/Q.hi', 'hi053/P',
- 'hi053/R/S.hi', 'hi053/R',
- 'hi053']),
- run_command,
- ['$MAKE -s --no-print-directory test053'])
-
-test('driver061a',
- extra_clean(['A061a.hi', 'A061a.o', 'A061a.s']),
- run_command,
- ['$MAKE -s --no-print-directory test061a'])
-
-test('driver061b',
- extra_clean(['A061b.hi', 'A061b.o', 'A061b.s']),
- run_command,
- ['$MAKE -s --no-print-directory test061b'])
-
-
-test('driver062a',
- extra_clean(['Hello062a.hs']),
- run_command,
- ['$MAKE -s --no-print-directory test062a'])
-test('driver062b',
- extra_clean(['Hello062b.hs']),
- run_command,
- ['$MAKE -s --no-print-directory test062b'])
-test('driver062c',
- extra_clean(['Hello062c.hs']),
- run_command,
- ['$MAKE -s --no-print-directory test062c'])
-test('driver062d',
- extra_clean(['B062d/Hello062d.hs']),
- run_command,
- ['$MAKE -s --no-print-directory test062d'])
-test('driver062e',
- extra_clean(['B062e/Hello062e.hs']),
- run_command,
- ['$MAKE -s --no-print-directory test062e'])
-
-test('driver063',
- extra_clean(['A063.hi', 'A063.o', 'A063.hc',
- 'D063.hi', 'D063.o', 'D063.hc']),
- run_command,
- ['$MAKE -s --no-print-directory test063'])
-
-test('driver064',
- extra_clean(['A064.hi', 'A064.o', 'A064.hspp']),
- run_command,
- ['$MAKE -s --no-print-directory test064'])
-
-test('driver065',
- extra_clean(['A065.hi', 'A065.o', 'A065.hspp']),
- run_command,
- ['$MAKE -s --no-print-directory test065'])
-
-test('driver066',
- extra_clean(['A066.hi', 'A066.o', 'A066.tmp']),
- run_command,
- ['$MAKE -s --no-print-directory test066'])
-
-test('driver067',
- extra_clean(['A067.hi', 'A067.o', 'A067.tmp']),
- run_command,
- ['$MAKE -s --no-print-directory test067'])
-
-test('driver070',
- extra_clean(['A070.hi', 'A070.o', 'A070.s']),
- run_command,
- ['$MAKE -s --no-print-directory test070'])
-
-test('driver071',
- extra_clean(['A071.hi', 'A071.o', 'A071.tmp']),
- run_command,
- ['$MAKE -s --no-print-directory test071'])
-
-test('driver081a',
- normal,
- run_command,
- ['$MAKE -s --no-print-directory test081a'])
-
-test('driver081b',
- normal,
- run_command,
- ['$MAKE -s --no-print-directory test081b'])
-
-test('driver100',
- extra_clean(['overlap/List.hi', 'overlap/List.o',
- 'overlap/Overlap.hi', 'overlap/Overlap.o']),
- run_command,
- ['$MAKE -s --no-print-directory test100'])
-
-test('driver200',
- extra_clean(['depend200']),
- run_command,
- ['$MAKE -s --no-print-directory test200'])
-
-test('2566',
- normalise_fun(normalise_errmsg),
- run_command,
- ['$MAKE -s --no-print-directory 2566'])
-
-test('pragma001', normal, compile, [''])
-test('pragma002', normal, compile, [''])
-
-test('2499', normal, compile_fail, [''])
-
-test('mode001', normal, run_command,
- ['$MAKE -s --no-print-directory mode001'])
-
-if config.platform == 'i386-unknown-mingw32':
- only_windows = normal
-else:
- only_windows = skip
-
-test('shared001',
- [only_windows,
- extra_clean(['Shared001.hi', 'Shared001.o', 'HSdll.dll.a', 'HSdll.dll', 'Shared001_stub.h', 'Shared001_stub.o'])],
- run_command,
- ['$MAKE -s --no-print-directory shared001'])
-
-test('dynHelloWorld',
- only_ways(['dyn']),
- compile_and_run,
- [''])
-
-# simple test that we can load and use the GHC package in all ways
-# (in #5313 it was failing the dyn way)
-p = subprocess.Popen([config.compiler, "--print-libdir"], stdout=subprocess.PIPE)
-libdir = chop(p.stdout.read())
-p.stdout.close
-
-test('5313', extra_run_opts('"' + libdir + '"'), compile_and_run, ['-package ghc'])
-
-test('2464', normal, compile, [''])
-test('3674', ignore_output, run_command,
- ['$MAKE -s --no-print-directory 3674'])
-
-test('rtsopts001', normal, run_command,
- ['$MAKE -s --no-print-directory rtsopts001'])
-test('rtsopts002', normal, run_command,
- ['$MAKE -s --no-print-directory rtsopts002'])
-
-test('withRtsOpts', [ extra_clean(['withRtsOpts', 'withRtsOpts.exe',
- 'withRtsOpts.hi', 'withRtsOpts.o',
- 'withRtsOpts.out']) ],
- run_command,
- ['$MAKE -s --no-print-directory withRtsOpts'])
-test('T3389', normal, compile_and_run, [''])
-test('T3364', normalise_fun(normalise_errmsg), run_command,
- ['$MAKE -s --no-print-directory T3364'])
-test('T4437', only_ways(['normal']), compile_and_run, ['-package ghc'])
-
-test('werror', normal, compile_fail, [''])
-
-test('T706', req_interp, run_command, ['$MAKE -s --no-print-directory T706'])
diff --git a/testsuite/tests/ghc-regress/driver/bug1677/Bar.hs b/testsuite/tests/ghc-regress/driver/bug1677/Bar.hs
deleted file mode 100644
index e29f867394..0000000000
--- a/testsuite/tests/ghc-regress/driver/bug1677/Bar.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module Bar where
-import Foo
diff --git a/testsuite/tests/ghc-regress/driver/bug1677/Foo.hs b/testsuite/tests/ghc-regress/driver/bug1677/Foo.hs
deleted file mode 100644
index df56d8c261..0000000000
--- a/testsuite/tests/ghc-regress/driver/bug1677/Foo.hs
+++ /dev/null
@@ -1 +0,0 @@
-Module Foo where
diff --git a/testsuite/tests/ghc-regress/driver/bug1677/Makefile b/testsuite/tests/ghc-regress/driver/bug1677/Makefile
deleted file mode 100644
index 482562fa43..0000000000
--- a/testsuite/tests/ghc-regress/driver/bug1677/Makefile
+++ /dev/null
@@ -1,7 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-bug1677 :
- '$(TEST_HC)' $(TEST_HC_OPTS) -M Foo.hs Bar.hs || true
-
diff --git a/testsuite/tests/ghc-regress/driver/bug1677/all.T b/testsuite/tests/ghc-regress/driver/bug1677/all.T
deleted file mode 100644
index d2bd077a4e..0000000000
--- a/testsuite/tests/ghc-regress/driver/bug1677/all.T
+++ /dev/null
@@ -1 +0,0 @@
-test('bug1677', normal, run_command, ['$MAKE bug1677 -s --no-print-directory'])
diff --git a/testsuite/tests/ghc-regress/driver/bug1677/bug1677.stderr b/testsuite/tests/ghc-regress/driver/bug1677/bug1677.stderr
deleted file mode 100644
index bc55b86c2f..0000000000
--- a/testsuite/tests/ghc-regress/driver/bug1677/bug1677.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-Foo.hs:1:1:
- File name does not match module name:
- Saw: `Main'
- Expected: `Foo'
diff --git a/testsuite/tests/ghc-regress/driver/conflicting_flags/Makefile b/testsuite/tests/ghc-regress/driver/conflicting_flags/Makefile
deleted file mode 100644
index ec2a7c768e..0000000000
--- a/testsuite/tests/ghc-regress/driver/conflicting_flags/Makefile
+++ /dev/null
@@ -1,7 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-conflicting_flags:
- '$(TEST_HC)' $(TEST_HC_OPTS) -V --print-libdir 2>&1 | sed "s/, version.*//"
-
diff --git a/testsuite/tests/ghc-regress/driver/conflicting_flags/conflicting_flags.stdout b/testsuite/tests/ghc-regress/driver/conflicting_flags/conflicting_flags.stdout
deleted file mode 100644
index 31ce6b16c6..0000000000
--- a/testsuite/tests/ghc-regress/driver/conflicting_flags/conflicting_flags.stdout
+++ /dev/null
@@ -1 +0,0 @@
-The Glorious Glasgow Haskell Compilation System
diff --git a/testsuite/tests/ghc-regress/driver/conflicting_flags/test.T b/testsuite/tests/ghc-regress/driver/conflicting_flags/test.T
deleted file mode 100644
index 0a6769a77a..0000000000
--- a/testsuite/tests/ghc-regress/driver/conflicting_flags/test.T
+++ /dev/null
@@ -1,3 +0,0 @@
-test('conflicting_flags', normal, run_command,
- ['$MAKE -s --no-print-directory conflicting_flags'])
-
diff --git a/testsuite/tests/ghc-regress/driver/d026/P/Q.hs b/testsuite/tests/ghc-regress/driver/d026/P/Q.hs
deleted file mode 100644
index 2466766bb0..0000000000
--- a/testsuite/tests/ghc-regress/driver/d026/P/Q.hs
+++ /dev/null
@@ -1 +0,0 @@
-module P.Q where
diff --git a/testsuite/tests/ghc-regress/driver/d051_1/P/Q.hs b/testsuite/tests/ghc-regress/driver/d051_1/P/Q.hs
deleted file mode 100644
index 2466766bb0..0000000000
--- a/testsuite/tests/ghc-regress/driver/d051_1/P/Q.hs
+++ /dev/null
@@ -1 +0,0 @@
-module P.Q where
diff --git a/testsuite/tests/ghc-regress/driver/d051_2/R/S.hs b/testsuite/tests/ghc-regress/driver/d051_2/R/S.hs
deleted file mode 100644
index b5c46f3179..0000000000
--- a/testsuite/tests/ghc-regress/driver/d051_2/R/S.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module R.S where
-import P.Q
diff --git a/testsuite/tests/ghc-regress/driver/d052_1/P/Q.hs b/testsuite/tests/ghc-regress/driver/d052_1/P/Q.hs
deleted file mode 100644
index 2466766bb0..0000000000
--- a/testsuite/tests/ghc-regress/driver/d052_1/P/Q.hs
+++ /dev/null
@@ -1 +0,0 @@
-module P.Q where
diff --git a/testsuite/tests/ghc-regress/driver/d052_2/R/S.hs b/testsuite/tests/ghc-regress/driver/d052_2/R/S.hs
deleted file mode 100644
index b5c46f3179..0000000000
--- a/testsuite/tests/ghc-regress/driver/d052_2/R/S.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module R.S where
-import P.Q
diff --git a/testsuite/tests/ghc-regress/driver/d053_1/P/Q.hs b/testsuite/tests/ghc-regress/driver/d053_1/P/Q.hs
deleted file mode 100644
index 2466766bb0..0000000000
--- a/testsuite/tests/ghc-regress/driver/d053_1/P/Q.hs
+++ /dev/null
@@ -1 +0,0 @@
-module P.Q where
diff --git a/testsuite/tests/ghc-regress/driver/d053_2/R/S.hs b/testsuite/tests/ghc-regress/driver/d053_2/R/S.hs
deleted file mode 100644
index b5c46f3179..0000000000
--- a/testsuite/tests/ghc-regress/driver/d053_2/R/S.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module R.S where
-import P.Q
diff --git a/testsuite/tests/ghc-regress/driver/driver062a.stdout b/testsuite/tests/ghc-regress/driver/driver062a.stdout
deleted file mode 100644
index 9766475a41..0000000000
--- a/testsuite/tests/ghc-regress/driver/driver062a.stdout
+++ /dev/null
@@ -1 +0,0 @@
-ok
diff --git a/testsuite/tests/ghc-regress/driver/driver062b.stdout b/testsuite/tests/ghc-regress/driver/driver062b.stdout
deleted file mode 100644
index 9766475a41..0000000000
--- a/testsuite/tests/ghc-regress/driver/driver062b.stdout
+++ /dev/null
@@ -1 +0,0 @@
-ok
diff --git a/testsuite/tests/ghc-regress/driver/driver062c.stdout b/testsuite/tests/ghc-regress/driver/driver062c.stdout
deleted file mode 100644
index 9766475a41..0000000000
--- a/testsuite/tests/ghc-regress/driver/driver062c.stdout
+++ /dev/null
@@ -1 +0,0 @@
-ok
diff --git a/testsuite/tests/ghc-regress/driver/driver062d.stdout b/testsuite/tests/ghc-regress/driver/driver062d.stdout
deleted file mode 100644
index 9766475a41..0000000000
--- a/testsuite/tests/ghc-regress/driver/driver062d.stdout
+++ /dev/null
@@ -1 +0,0 @@
-ok
diff --git a/testsuite/tests/ghc-regress/driver/driver062e.stdout b/testsuite/tests/ghc-regress/driver/driver062e.stdout
deleted file mode 100644
index 9766475a41..0000000000
--- a/testsuite/tests/ghc-regress/driver/driver062e.stdout
+++ /dev/null
@@ -1 +0,0 @@
-ok
diff --git a/testsuite/tests/ghc-regress/driver/driver063.stderr b/testsuite/tests/ghc-regress/driver/driver063.stderr
deleted file mode 100644
index 0a6801537e..0000000000
--- a/testsuite/tests/ghc-regress/driver/driver063.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-D063.hs:2:8:
- Could not find module `A063'
- It is not a module in the current program, or in any known package.
diff --git a/testsuite/tests/ghc-regress/driver/dynHelloWorld.hs b/testsuite/tests/ghc-regress/driver/dynHelloWorld.hs
deleted file mode 100644
index 5c96396ae1..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynHelloWorld.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module Main (main) where
-
-main :: IO ()
-main = putStrLn "Hello World"
diff --git a/testsuite/tests/ghc-regress/driver/dynHelloWorld.stdout b/testsuite/tests/ghc-regress/driver/dynHelloWorld.stdout
deleted file mode 100644
index 557db03de9..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynHelloWorld.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Hello World
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_001/A.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_001/A.hs
deleted file mode 100644
index 50c518be7e..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_001/A.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
-{-# OPTIONS_GHC -fwarn-unused-binds #-}
-
-module A (a, a_type_default, a_missing_sig) where
-
-a :: Int
-a = 4
-
-a_type_default :: Int
-a_type_default = 2 ^ 2
-
-a_missing_sig = ()
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_001/B.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_001/B.hs
deleted file mode 100644
index f3f82dff98..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_001/B.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
-{-# OPTIONS_GHC -fwarn-type-defaults #-}
-
-module B (b, b_unused_bind, b_missing_sig) where
-
-b :: Int
-b = 5
-
-b_unused_bind :: Int -> Int
-b_unused_bind x = 2
-
-b_missing_sig = ()
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_001/C.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_001/C.hs
deleted file mode 100644
index ac7ff06b95..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_001/C.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-
-{-# OPTIONS_GHC -fwarn-missing-signatures #-}
-
-module Main (main, c_type_default, c_unused_bind) where
-
-import A (a)
-import B (b)
-
-main :: IO ()
-main = print (a + b)
-
-c_type_default :: Int
-c_type_default = 2 ^ 2
-
-c_unused_bind :: Int -> Int
-c_unused_bind x = 2
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_001/Makefile b/testsuite/tests/ghc-regress/driver/dynamic_flags_001/Makefile
deleted file mode 100644
index 414f2b45b8..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_001/Makefile
+++ /dev/null
@@ -1,14 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-# Dynamic flags tests
-
-clean:
- rm -f *.o *.hi
-
-# 001: Flags turned on in one module's OPTIONS_GHC pragma shouldn't
-# be on in when compiling other modules
-
-dynamic_flags_001: clean
- '$(TEST_HC)' $(TEST_HC_OPTS) --make -Werror -v0 C.hs
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_001/all.T b/testsuite/tests/ghc-regress/driver/dynamic_flags_001/all.T
deleted file mode 100644
index c487a0cb75..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_001/all.T
+++ /dev/null
@@ -1,6 +0,0 @@
-test('dynamic_flags_001',
- [skip_if_fast,
- clean_cmd('$MAKE -s clean')],
- run_command,
- ['$MAKE -s --no-print-directory dynamic_flags_001'])
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/A_First.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/A_First.hs
deleted file mode 100644
index 94b0986dbd..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/A_First.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-{-# OPTIONS_GHC -Wall -Werror #-}
-
-module A_First where
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/A_Main.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/A_Main.hs
deleted file mode 100644
index 19486af9cc..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/A_Main.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module A_Main where
-
-import A_First () -- Turns on -Wall -Werror
-import A_Second () -- Is not -Wall clean
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/A_Second.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/A_Second.hs
deleted file mode 100644
index 6543b6b4cf..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/A_Second.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module A_Second where
-
--- Not -Wall clean: Missing signature:
-a = 'c'
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/B_First.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/B_First.hs
deleted file mode 100644
index ef944f57f8..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/B_First.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module B_First where
-
--- Not -Wall clean: Missing signature:
-a = 'c'
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/B_Main.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/B_Main.hs
deleted file mode 100644
index ed1367f0b4..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/B_Main.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module B_Main where
-
-import B_First () -- Is not -Wall clean
-import B_Second () -- Turns on -Wall -Werror
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/B_Second.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/B_Second.hs
deleted file mode 100644
index a3efdb491c..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/B_Second.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-{-# OPTIONS_GHC -Wall -Werror #-}
-
-module B_Second where
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/C_Child.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/C_Child.hs
deleted file mode 100644
index 86241fb3e4..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/C_Child.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-{-# OPTIONS_GHC -Wall -Werror #-}
-
-module C_Child where
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/C_Main.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/C_Main.hs
deleted file mode 100644
index c7decbc546..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/C_Main.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-module C_Main where
-
-import C_Child () -- Turns on -Wall -Werror
-
--- Not -Wall clean: Missing signature:
-a = 'c'
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/D_Child.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/D_Child.hs
deleted file mode 100644
index bfe4d4a42d..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/D_Child.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module D_Child where
-
--- Not -Wall clean: Missing signature:
-a = 'c'
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/D_Main.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/D_Main.hs
deleted file mode 100644
index 2b69a8ce4c..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/D_Main.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-{-# OPTIONS_GHC -Wall -Werror #-}
-
-module D_Main where
-
-import D_Child () -- Is not -Wall clean
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/Makefile b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/Makefile
deleted file mode 100644
index 50191fd8b9..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/Makefile
+++ /dev/null
@@ -1,4 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/ManyFirst.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/ManyFirst.hs
deleted file mode 100644
index 0ecb0c2d42..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/ManyFirst.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module ManyFirst where
-
--- Not -Wall clean: Missing signature:
-a = 'c'
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/ManySecond.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/ManySecond.hs
deleted file mode 100644
index ac67a3be2b..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/ManySecond.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-{-# OPTIONS_GHC -Wall -Werror #-}
-
-module ManySecond where
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/ManyThird.hs b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/ManyThird.hs
deleted file mode 100644
index 2f3df77398..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/ManyThird.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module ManyThird where
-
--- Not -Wall clean: Missing signature:
-a = 'c'
-
diff --git a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/all.T b/testsuite/tests/ghc-regress/driver/dynamic_flags_002/all.T
deleted file mode 100644
index 3b0072ba6b..0000000000
--- a/testsuite/tests/ghc-regress/driver/dynamic_flags_002/all.T
+++ /dev/null
@@ -1,6 +0,0 @@
-test('dynamic_flags_002A', skip_if_fast, multimod_compile, ['A_Main', '-v0'])
-test('dynamic_flags_002B', skip_if_fast, multimod_compile, ['B_Main', '-v0'])
-test('dynamic_flags_002C', skip_if_fast, multimod_compile, ['C_Main', '-v0'])
-test('dynamic_flags_002D', skip_if_fast, multimod_compile, ['D_Main', '-v0'])
-test('dynamic_flags_002Many', skip_if_fast, multimod_compile, ['ManyFirst ManySecond ManyThird', '-v0'])
-
diff --git a/testsuite/tests/ghc-regress/driver/mode001.stdout b/testsuite/tests/ghc-regress/driver/mode001.stdout
deleted file mode 100644
index 462d836f55..0000000000
--- a/testsuite/tests/ghc-regress/driver/mode001.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-Usage:
-Usage:
-Usage:
-Usage:
-The Glorious Glasgow Haskell Compilation System
-Usage:
-The Glorious Glasgow Haskell Compilation System
-The Glorious Glasgow Haskell Compilation System
diff --git a/testsuite/tests/ghc-regress/driver/objc/Makefile b/testsuite/tests/ghc-regress/driver/objc/Makefile
deleted file mode 100644
index 50191fd8b9..0000000000
--- a/testsuite/tests/ghc-regress/driver/objc/Makefile
+++ /dev/null
@@ -1,4 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
diff --git a/testsuite/tests/ghc-regress/driver/objc/all.T b/testsuite/tests/ghc-regress/driver/objc/all.T
deleted file mode 100644
index ee22934399..0000000000
--- a/testsuite/tests/ghc-regress/driver/objc/all.T
+++ /dev/null
@@ -1,10 +0,0 @@
-def if_not_platform(platforms, f):
- if not (config.platform in platforms):
- return f
- else:
- return normal
-
-skip_if_not_osx = if_not_platform(['i386-apple-darwin','x86_64-apple-darwin'], skip)
-
-test('objc-hi', [ skip_if_not_osx, objc_src ],
- compile_and_run, ['-framework Foundation'])
diff --git a/testsuite/tests/ghc-regress/driver/objc/objc-hi.m b/testsuite/tests/ghc-regress/driver/objc/objc-hi.m
deleted file mode 100644
index 4580bd2dfb..0000000000
--- a/testsuite/tests/ghc-regress/driver/objc/objc-hi.m
+++ /dev/null
@@ -1,35 +0,0 @@
-#import <Foundation/Foundation.h>
-#import <stdio.h>
-
-@interface HelloWorld : NSObject {
- // no instance variables
-}
-
-// methods
-- (void)sayHello;
-
-@end
-
-@implementation HelloWorld
-
-- (void)sayHello
-{
- printf("Hello world\n");
-}
-
-@end
-
-#import <Foundation/Foundation.h>
-
-int main (int argc, const char * argv[]) {
- NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
-
- // my stuff
- HelloWorld *hw = [[HelloWorld alloc] init];
- [hw autorelease];
-
- [hw sayHello];
-
- [pool release];
- return 0;
-}
diff --git a/testsuite/tests/ghc-regress/driver/objc/objc-hi.stdout b/testsuite/tests/ghc-regress/driver/objc/objc-hi.stdout
deleted file mode 100644
index 802992c422..0000000000
--- a/testsuite/tests/ghc-regress/driver/objc/objc-hi.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Hello world
diff --git a/testsuite/tests/ghc-regress/driver/overlap/List.hs b/testsuite/tests/ghc-regress/driver/overlap/List.hs
deleted file mode 100644
index 8a6e4262dc..0000000000
--- a/testsuite/tests/ghc-regress/driver/overlap/List.hs
+++ /dev/null
@@ -1 +0,0 @@
-module List where
diff --git a/testsuite/tests/ghc-regress/driver/overlap/Overlap.hs b/testsuite/tests/ghc-regress/driver/overlap/Overlap.hs
deleted file mode 100644
index b82364f7cc..0000000000
--- a/testsuite/tests/ghc-regress/driver/overlap/Overlap.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module Overlap where
-import List
diff --git a/testsuite/tests/ghc-regress/driver/pragma001.hs b/testsuite/tests/ghc-regress/driver/pragma001.hs
deleted file mode 100644
index 8c1b7aac94..0000000000
--- a/testsuite/tests/ghc-regress/driver/pragma001.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
-
--- There is enough comment to fill up one buffer (1024 bytes) of the code
--- in GHC that looks for OPTIONS_GHC pragmas etc.
-
-{-# OPTIONS_GHC -w #-}
-
-module Pragma001 () where
-
--- This will make a warning if the pragam isn't picked up
-foo _ = ()
-foo _ = ()
-
diff --git a/testsuite/tests/ghc-regress/driver/pragma002.hs b/testsuite/tests/ghc-regress/driver/pragma002.hs
deleted file mode 100644
index 48c66101bc..0000000000
--- a/testsuite/tests/ghc-regress/driver/pragma002.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- an options pragma that needs more than 1k of buffer to read
-{-# OPTIONS_GHC
- -w #-}
-
-module Pragma002 () where
-
--- This will make a warning if the pragam isn't picked up
-foo _ = ()
-foo _ = ()
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp001/A.hs b/testsuite/tests/ghc-regress/driver/recomp001/A.hs
deleted file mode 100644
index d7fc96e70e..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp001/A.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module A where
-
-foo :: Int
-foo = 4
diff --git a/testsuite/tests/ghc-regress/driver/recomp001/B1.hs b/testsuite/tests/ghc-regress/driver/recomp001/B1.hs
deleted file mode 100644
index d0efd79bf0..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp001/B1.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module B (foo) where
-
-import A (foo)
diff --git a/testsuite/tests/ghc-regress/driver/recomp001/B2.hs b/testsuite/tests/ghc-regress/driver/recomp001/B2.hs
deleted file mode 100644
index 213d77d5eb..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp001/B2.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module B () where
-
-import A ()
diff --git a/testsuite/tests/ghc-regress/driver/recomp001/C.hs b/testsuite/tests/ghc-regress/driver/recomp001/C.hs
deleted file mode 100644
index d38b2ff51c..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp001/C.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Main (main) where
-
-import B (foo)
-
-main :: IO ()
-main = print foo
diff --git a/testsuite/tests/ghc-regress/driver/recomp001/Makefile b/testsuite/tests/ghc-regress/driver/recomp001/Makefile
deleted file mode 100644
index f089f71ab7..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp001/Makefile
+++ /dev/null
@@ -1,19 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-# Recompilation tests
-
-clean:
- rm -f *.o *.hi
- rm -f B.hs C
-
-# 001: removing an export should force a recompile of dependent modules.
-# failed in GHC 6.4.
-
-recomp001: clean
- cp B1.hs B.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) --make -v0 C.hs
- sleep 1
- cp B2.hs B.hs
- -'$(TEST_HC)' $(TEST_HC_OPTS) --make -v0 C.hs
diff --git a/testsuite/tests/ghc-regress/driver/recomp001/all.T b/testsuite/tests/ghc-regress/driver/recomp001/all.T
deleted file mode 100644
index f3672fa2f8..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp001/all.T
+++ /dev/null
@@ -1,6 +0,0 @@
-test('recomp001',
- [skip_if_fast,
- clean_cmd('$MAKE -s clean')],
- run_command,
- ['$MAKE -s --no-print-directory recomp001'])
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp001/recomp001.stderr b/testsuite/tests/ghc-regress/driver/recomp001/recomp001.stderr
deleted file mode 100644
index 4b95415c89..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp001/recomp001.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-C.hs:3:11: Module `B' does not export `foo'
diff --git a/testsuite/tests/ghc-regress/driver/recomp002/Makefile b/testsuite/tests/ghc-regress/driver/recomp002/Makefile
deleted file mode 100644
index d2375961d2..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp002/Makefile
+++ /dev/null
@@ -1,16 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-# Recompilation tests
-
-clean:
- rm -f *.o*
- rm -f *.hi*
-
-# Only the first invocation should print any "Compiling" messages
-
-recomp002: clean
- '$(TEST_HC)' $(TEST_HC_OPTS) --make Q.hs
- echo Middle >&2
- '$(TEST_HC)' $(TEST_HC_OPTS) --make Q.hs
diff --git a/testsuite/tests/ghc-regress/driver/recomp002/Q.hs b/testsuite/tests/ghc-regress/driver/recomp002/Q.hs
deleted file mode 100644
index bdca9402bd..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp002/Q.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module Q where
-
-import {-# SOURCE #-} W
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp002/W.hs b/testsuite/tests/ghc-regress/driver/recomp002/W.hs
deleted file mode 100644
index 0e2392d6c9..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp002/W.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module W where
-
-import Q
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp002/W.hs-boot b/testsuite/tests/ghc-regress/driver/recomp002/W.hs-boot
deleted file mode 100644
index 62be698970..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp002/W.hs-boot
+++ /dev/null
@@ -1,3 +0,0 @@
-
-module W where
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp002/all.T b/testsuite/tests/ghc-regress/driver/recomp002/all.T
deleted file mode 100644
index 5f8ddf5f1b..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp002/all.T
+++ /dev/null
@@ -1,6 +0,0 @@
-test('recomp002',
- [skip_if_fast,
- clean_cmd('$MAKE -s clean')],
- run_command,
- ['$MAKE -s --no-print-directory recomp002'])
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp002/recomp002.stderr b/testsuite/tests/ghc-regress/driver/recomp002/recomp002.stderr
deleted file mode 100644
index 56cdd85e1d..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp002/recomp002.stderr
+++ /dev/null
@@ -1 +0,0 @@
-Middle
diff --git a/testsuite/tests/ghc-regress/driver/recomp002/recomp002.stdout b/testsuite/tests/ghc-regress/driver/recomp002/recomp002.stdout
deleted file mode 100644
index d9ddb2523a..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp002/recomp002.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-[1 of 3] Compiling W[boot] ( W.hs-boot, W.o-boot )
-[2 of 3] Compiling Q ( Q.hs, Q.o )
-[3 of 3] Compiling W ( W.hs, W.o )
diff --git a/testsuite/tests/ghc-regress/driver/recomp003/A.hs b/testsuite/tests/ghc-regress/driver/recomp003/A.hs
deleted file mode 100644
index 7fa4516161..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp003/A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module A where
-import Data.Char
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp003/Makefile b/testsuite/tests/ghc-regress/driver/recomp003/Makefile
deleted file mode 100644
index 45ae0cbbdf..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp003/Makefile
+++ /dev/null
@@ -1,18 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-OBJSUFFIX = .o
-
-# Test that adding a new module that shadows a package module causes
-# recompilation. Part of bug #1372.
-recomp003:
- $(RM) A.hi A$(OBJSUFFIX) out
- $(RM) -rf Data
- mkdir Data
- '$(TEST_HC)' $(TEST_HC_OPTS) -c A.hs
- echo "module Data.Char where" > Data/Char.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c Data/Char.hs
- # Should now recompile A.hs, because Char is now a home module:
- '$(TEST_HC)' $(TEST_HC_OPTS) -c A.hs 2>err
- @if grep NOT err; then false; fi
diff --git a/testsuite/tests/ghc-regress/driver/recomp003/all.T b/testsuite/tests/ghc-regress/driver/recomp003/all.T
deleted file mode 100644
index c6653c2723..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp003/all.T
+++ /dev/null
@@ -1,6 +0,0 @@
-test('recomp003',
- extra_clean(['Data/Char.hs', 'Data/Char.hi', 'Data/Char.o',
- 'A.o', 'A.hi',
- 'err']),
- run_command,
- ['$MAKE -s --no-print-directory recomp003'])
diff --git a/testsuite/tests/ghc-regress/driver/recomp004/Main.hs b/testsuite/tests/ghc-regress/driver/recomp004/Main.hs
deleted file mode 100644
index cbb16d21d3..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp004/Main.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-{-# LANGUAGE ForeignFunctionInterface #-}
-
-module Main where
-
-main :: IO ()
-main = foo
-
-foreign import ccall unsafe "c.h foo" foo :: IO ()
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp004/Makefile b/testsuite/tests/ghc-regress/driver/recomp004/Makefile
deleted file mode 100644
index 120556827c..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp004/Makefile
+++ /dev/null
@@ -1,24 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-EXECUTABLE = Main$(exeext)
-CLEAN_FILES = c.c c.o Main.o Main.hi $(EXECUTABLE)
-
-clean:
- $(RM) $(CLEAN_FILES)
-
-# Test that updates to C modules are noticed
-recomp004:
- $(RM) $(CLEAN_FILES)
- $(CP) c1.c c.c
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 -c c.c -o c.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make Main.hs c.o -o $(EXECUTABLE)
- ./$(EXECUTABLE)
- $(CP) c2.c c.c
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 -c c.c -o c.o
- # Hack to make sure c.o is really newer
- touch -t 01010000 Main.hs Main.hi Main.o c.c $(EXECUTABLE)
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make Main.hs c.o -o $(EXECUTABLE)
- ./$(EXECUTABLE)
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp004/all.T b/testsuite/tests/ghc-regress/driver/recomp004/all.T
deleted file mode 100644
index 54d190d83a..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp004/all.T
+++ /dev/null
@@ -1,4 +0,0 @@
-test('recomp004',
- extra_clean(['Main', 'Main.exe', 'c.c']),
- run_command,
- ['$MAKE -s --no-print-directory recomp004'])
diff --git a/testsuite/tests/ghc-regress/driver/recomp004/c.h b/testsuite/tests/ghc-regress/driver/recomp004/c.h
deleted file mode 100644
index 12c941119c..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp004/c.h
+++ /dev/null
@@ -1,5 +0,0 @@
-
-#include <stdio.h>
-
-void foo(void);
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp004/c1.c b/testsuite/tests/ghc-regress/driver/recomp004/c1.c
deleted file mode 100644
index 0b2101a826..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp004/c1.c
+++ /dev/null
@@ -1,6 +0,0 @@
-
-#include "c.h"
-
-void foo(void) {
- printf("Foo\n");
-}
diff --git a/testsuite/tests/ghc-regress/driver/recomp004/c2.c b/testsuite/tests/ghc-regress/driver/recomp004/c2.c
deleted file mode 100644
index decb52617a..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp004/c2.c
+++ /dev/null
@@ -1,6 +0,0 @@
-
-#include "c.h"
-
-void foo(void) {
- printf("Bar\n");
-}
diff --git a/testsuite/tests/ghc-regress/driver/recomp004/recomp004.stdout b/testsuite/tests/ghc-regress/driver/recomp004/recomp004.stdout
deleted file mode 100644
index 3b71d5be87..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp004/recomp004.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Foo
-Bar
diff --git a/testsuite/tests/ghc-regress/driver/recomp005/A.hs b/testsuite/tests/ghc-regress/driver/recomp005/A.hs
deleted file mode 100644
index 4cf81d9c9f..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp005/A.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module A where
-
-f :: Int -> Int
-f x = x + 1
diff --git a/testsuite/tests/ghc-regress/driver/recomp005/B.hs b/testsuite/tests/ghc-regress/driver/recomp005/B.hs
deleted file mode 100644
index 84ef616bba..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp005/B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module B where
-
-g :: Int -> Int
-g x = x * 2
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp005/C1.hs b/testsuite/tests/ghc-regress/driver/recomp005/C1.hs
deleted file mode 100644
index 8141245535..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp005/C1.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module C (f, g) where
-
-import A
-import B
diff --git a/testsuite/tests/ghc-regress/driver/recomp005/C2.hs b/testsuite/tests/ghc-regress/driver/recomp005/C2.hs
deleted file mode 100644
index 7764ed861b..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp005/C2.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-module C (f, g) where
-
-import A
-import B
-
-{-# RULES "f/g" forall x . f (g x) = x #-}
diff --git a/testsuite/tests/ghc-regress/driver/recomp005/D.hs b/testsuite/tests/ghc-regress/driver/recomp005/D.hs
deleted file mode 100644
index c8cd790be1..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp005/D.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module D () where
-
-import C () -- so we don't get a dependency on C's export list
diff --git a/testsuite/tests/ghc-regress/driver/recomp005/E.hs b/testsuite/tests/ghc-regress/driver/recomp005/E.hs
deleted file mode 100644
index e6e2e6b784..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp005/E.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module E where
-
-import D -- get the RULE from C via D
-import A
-import B
-
-z = f (g 3)
diff --git a/testsuite/tests/ghc-regress/driver/recomp005/Makefile b/testsuite/tests/ghc-regress/driver/recomp005/Makefile
deleted file mode 100644
index a588cff176..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp005/Makefile
+++ /dev/null
@@ -1,16 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-clean:
- rm -f *.o*
- rm -f *.hi*
- rm -f C.hs
-
-recomp005: clean
- cp C1.hs C.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) --make E.hs -O
- sleep 1
- cp C2.hs C.hs
- # Should recompile E, because C is now an orphan
- '$(TEST_HC)' $(TEST_HC_OPTS) --make E.hs -O
diff --git a/testsuite/tests/ghc-regress/driver/recomp005/all.T b/testsuite/tests/ghc-regress/driver/recomp005/all.T
deleted file mode 100644
index d5d89b1712..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp005/all.T
+++ /dev/null
@@ -1,5 +0,0 @@
-test('recomp005',
- [skip_if_fast,
- clean_cmd('$MAKE -s clean')],
- run_command, ['$MAKE -s --no-print-directory recomp005'])
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp005/recomp005.stderr b/testsuite/tests/ghc-regress/driver/recomp005/recomp005.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp005/recomp005.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/driver/recomp005/recomp005.stdout b/testsuite/tests/ghc-regress/driver/recomp005/recomp005.stdout
deleted file mode 100644
index 720a1ea74f..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp005/recomp005.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-[1 of 5] Compiling B ( B.hs, B.o )
-[2 of 5] Compiling A ( A.hs, A.o )
-[3 of 5] Compiling C ( C.hs, C.o )
-[4 of 5] Compiling D ( D.hs, D.o )
-[5 of 5] Compiling E ( E.hs, E.o )
-[3 of 5] Compiling C ( C.hs, C.o )
-[4 of 5] Compiling D ( D.hs, D.o )
-[5 of 5] Compiling E ( E.hs, E.o )
diff --git a/testsuite/tests/ghc-regress/driver/recomp006/A.hs b/testsuite/tests/ghc-regress/driver/recomp006/A.hs
deleted file mode 100644
index a658ba6e3c..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp006/A.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TypeOperators #-}
-module A where
-
-import B ((:-))
-
--- assumes :- is right-associative
-f :: Int :- Int :- Int
-f = (1,(2,3))
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp006/B1.hs b/testsuite/tests/ghc-regress/driver/recomp006/B1.hs
deleted file mode 100644
index aed449262f..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp006/B1.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-{-# LANGUAGE TypeOperators #-}
-
-module B where
-
-infixr 9 :-
-
-type a :- b = (a,b)
diff --git a/testsuite/tests/ghc-regress/driver/recomp006/B2.hs b/testsuite/tests/ghc-regress/driver/recomp006/B2.hs
deleted file mode 100644
index 905b6dbd9a..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp006/B2.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-{-# LANGUAGE TypeOperators #-}
-
-module B where
-
-infixl 9 :-
-
-type a :- b = (a,b)
diff --git a/testsuite/tests/ghc-regress/driver/recomp006/Makefile b/testsuite/tests/ghc-regress/driver/recomp006/Makefile
deleted file mode 100644
index c71f5ec405..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp006/Makefile
+++ /dev/null
@@ -1,16 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-OBJSUFFIX = .o
-
-# Test that changing the fixity of a type synonym operator forces recompilation
-# (see #3166).
-recomp006:
- $(RM) A.hi A$(OBJSUFFIX)
- cp B1.hs B.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) --make A.hs 1>out 2>err
- sleep 1
- cp B2.hs B.hs
- # This should fail
- if '$(TEST_HC)' $(TEST_HC_OPTS) --make A.hs; then false; fi
diff --git a/testsuite/tests/ghc-regress/driver/recomp006/all.T b/testsuite/tests/ghc-regress/driver/recomp006/all.T
deleted file mode 100644
index bc4f915bad..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp006/all.T
+++ /dev/null
@@ -1,3 +0,0 @@
-test('recomp006',
- [ skip_if_fast, extra_clean(['A.o','A.hi','B.o','B.hi','err','out']) ],
- run_command, ['$MAKE -s --no-print-directory recomp006'])
diff --git a/testsuite/tests/ghc-regress/driver/recomp006/recomp006.stderr b/testsuite/tests/ghc-regress/driver/recomp006/recomp006.stderr
deleted file mode 100644
index c449b5cd2d..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp006/recomp006.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-
-A.hs:8:6:
- No instance for (Num (Int :- Int))
- arising from the literal `1'
- Possible fix: add an instance declaration for (Num (Int :- Int))
- In the expression: 1
- In the expression: (1, (2, 3))
- In an equation for `f': f = (1, (2, 3))
-
-A.hs:8:8:
- Couldn't match expected type `Int' with actual type `(t0, t1)'
- In the expression: (2, 3)
- In the expression: (1, (2, 3))
- In an equation for `f': f = (1, (2, 3))
diff --git a/testsuite/tests/ghc-regress/driver/recomp006/recomp006.stdout b/testsuite/tests/ghc-regress/driver/recomp006/recomp006.stdout
deleted file mode 100644
index f403e40d1a..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp006/recomp006.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-[1 of 2] Compiling B ( B.hs, B.o )
-[2 of 2] Compiling A ( A.hs, A.o )
diff --git a/testsuite/tests/ghc-regress/driver/recomp007/Makefile b/testsuite/tests/ghc-regress/driver/recomp007/Makefile
deleted file mode 100644
index 074be35b37..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp007/Makefile
+++ /dev/null
@@ -1,28 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-LOCAL_PKGCONF=local.package.conf
-
-clean:
- rm -f Setup$(exeext)
- rm -rf a1/dist a2/dist b/dist
- rm -f *.o *.hi
- rm -f clean.out prep.out
- rm -rf $(LOCAL_PKGCONF)
-
-recomp007:
- $(MAKE) clean
- "$(GHC_PKG)" init $(LOCAL_PKGCONF)
- "$(TEST_HC)" -v0 --make Setup.hs
- $(MAKE) prep.a1
- $(MAKE) prep.b
- "$(GHC_PKG)" unregister --package-conf=$(LOCAL_PKGCONF) a-1.0
- $(MAKE) prep.a2
- cd b && ../Setup configure -v0 --with-compiler="$(TEST_HC)" --with-hc-pkg="$(GHC_PKG)" --package-db=../$(LOCAL_PKGCONF)
- cd b && ../Setup build
-
-prep.%:
- cd $* && ../Setup configure -v0 --with-compiler="$(TEST_HC)" --with-hc-pkg="$(GHC_PKG)" --package-db=../$(LOCAL_PKGCONF)
- cd $* && ../Setup build -v0
- cd $* && ../Setup register -v0 --inplace
diff --git a/testsuite/tests/ghc-regress/driver/recomp007/Setup.hs b/testsuite/tests/ghc-regress/driver/recomp007/Setup.hs
deleted file mode 100644
index 9a994af677..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp007/Setup.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-import Distribution.Simple
-main = defaultMain
diff --git a/testsuite/tests/ghc-regress/driver/recomp007/a1/A.hs b/testsuite/tests/ghc-regress/driver/recomp007/a1/A.hs
deleted file mode 100644
index 8e028dcab8..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp007/a1/A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module A (a) where
-
-a = "1.0"
diff --git a/testsuite/tests/ghc-regress/driver/recomp007/a1/a.cabal b/testsuite/tests/ghc-regress/driver/recomp007/a1/a.cabal
deleted file mode 100644
index cb6d3c01b9..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp007/a1/a.cabal
+++ /dev/null
@@ -1,7 +0,0 @@
-name: a
-version: 1.0
-exposed-modules: A
-build-depends: base
-build-type: Simple
-ghc-options: -O0
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp007/a2/A.hs b/testsuite/tests/ghc-regress/driver/recomp007/a2/A.hs
deleted file mode 100644
index 273896245c..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp007/a2/A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module A (a) where
-
-a = "2.0"
diff --git a/testsuite/tests/ghc-regress/driver/recomp007/a2/a.cabal b/testsuite/tests/ghc-regress/driver/recomp007/a2/a.cabal
deleted file mode 100644
index 5c3ae6a74d..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp007/a2/a.cabal
+++ /dev/null
@@ -1,7 +0,0 @@
-name: a
-version: 2.0
-exposed-modules: A
-build-depends: base
-build-type: Simple
-ghc-options: -O0
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp007/all.T b/testsuite/tests/ghc-regress/driver/recomp007/all.T
deleted file mode 100644
index 5a93a12d68..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp007/all.T
+++ /dev/null
@@ -1,9 +0,0 @@
-# This tests for correct recompilation when a package version changes.
-# See the patch
-# "Fix a recompilation checking bug when a package dependency changes"
-
-test('recomp007',
- [ skip_if_fast, clean_cmd('$MAKE -s clean'), normalise_slashes ],
- run_command,
- ['$MAKE -s --no-print-directory recomp007'])
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp007/b/B.hs b/testsuite/tests/ghc-regress/driver/recomp007/b/B.hs
deleted file mode 100644
index 742c5d3a3f..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp007/b/B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module B (b) where
-
-import A
-
-b = a
diff --git a/testsuite/tests/ghc-regress/driver/recomp007/b/Main.hs b/testsuite/tests/ghc-regress/driver/recomp007/b/Main.hs
deleted file mode 100644
index ca60a5902b..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp007/b/Main.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Main (main) where
-
-import B
-
-main = print b
diff --git a/testsuite/tests/ghc-regress/driver/recomp007/b/b.cabal b/testsuite/tests/ghc-regress/driver/recomp007/b/b.cabal
deleted file mode 100644
index 988ef871a2..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp007/b/b.cabal
+++ /dev/null
@@ -1,10 +0,0 @@
-name: b
-version: 1.0
-build-type: Simple
-cabal-version: >= 1.2
-executable test {
- build-depends: base, a
- main-is: Main.hs
- other-modules: B
- ghc-options: -O0
-}
diff --git a/testsuite/tests/ghc-regress/driver/recomp007/recomp007.stderr b/testsuite/tests/ghc-regress/driver/recomp007/recomp007.stderr
deleted file mode 100644
index 290be5f14d..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp007/recomp007.stderr
+++ /dev/null
@@ -1 +0,0 @@
-Linking dist/build/test/test ...
diff --git a/testsuite/tests/ghc-regress/driver/recomp007/recomp007.stdout b/testsuite/tests/ghc-regress/driver/recomp007/recomp007.stdout
deleted file mode 100644
index b956b8f9a3..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp007/recomp007.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-Building b-1.0...
-Preprocessing executable 'test' for b-1.0...
-[1 of 2] Compiling B ( B.hs, dist/build/test/test-tmp/B.o )
-[2 of 2] Compiling Main ( Main.hs, dist/build/test/test-tmp/Main.o )
diff --git a/testsuite/tests/ghc-regress/driver/recomp008/A1.hs b/testsuite/tests/ghc-regress/driver/recomp008/A1.hs
deleted file mode 100644
index 224258034a..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp008/A1.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module A (T,t) where
-
-data T = T
-t = T
-
-instance Eq T where
- t1 == t2 = True
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp008/A2.hs b/testsuite/tests/ghc-regress/driver/recomp008/A2.hs
deleted file mode 100644
index efc9207399..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp008/A2.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module A (T,t) where
-
-data T = T
-t = T
-
-instance Eq T where
- t1 == t2 = False
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp008/B.hs b/testsuite/tests/ghc-regress/driver/recomp008/B.hs
deleted file mode 100644
index b1b7491b07..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp008/B.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module B (T,t) where
-
-import A
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp008/Main.hs b/testsuite/tests/ghc-regress/driver/recomp008/Main.hs
deleted file mode 100644
index df246a3303..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp008/Main.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Main where
-
-import B
-
-main = print (t == t)
diff --git a/testsuite/tests/ghc-regress/driver/recomp008/Makefile b/testsuite/tests/ghc-regress/driver/recomp008/Makefile
deleted file mode 100644
index 16392f5dd0..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp008/Makefile
+++ /dev/null
@@ -1,28 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-Main.o : B.hi
-B.o : A.hi
-
-%.o : %.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -O -c $< -o $@
-
-# magic .hi rule: see rules/hi-rule.mk in the GHC source tree
-%.hi : %.o ;
-
-prog : A.o B.o Main.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -o prog A.o B.o Main.o
-
-clean :
- $(RM) *.hi *.o prog
-
-recomp008 :
- $(MAKE) clean
- cp A1.hs A.hs
- $(MAKE) prog
- ./prog
- sleep 1
- cp A2.hs A.hs
- $(MAKE) prog
- ./prog
diff --git a/testsuite/tests/ghc-regress/driver/recomp008/all.T b/testsuite/tests/ghc-regress/driver/recomp008/all.T
deleted file mode 100644
index a59b1512e0..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp008/all.T
+++ /dev/null
@@ -1,7 +0,0 @@
-# Test for #4469, a recompilation bug related to instances
-
-test('recomp008',
- [ skip_if_fast, clean_cmd('$MAKE -s clean'), normalise_slashes ],
- run_command,
- ['$MAKE -s --no-print-directory recomp008'])
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp008/recomp008.stdout b/testsuite/tests/ghc-regress/driver/recomp008/recomp008.stdout
deleted file mode 100644
index 1cc8b5e10d..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp008/recomp008.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-True
-False
diff --git a/testsuite/tests/ghc-regress/driver/recomp009/Main.hs b/testsuite/tests/ghc-regress/driver/recomp009/Main.hs
deleted file mode 100644
index b5e5424f9b..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp009/Main.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module Main where
-import Sub
-main = print $x
diff --git a/testsuite/tests/ghc-regress/driver/recomp009/Makefile b/testsuite/tests/ghc-regress/driver/recomp009/Makefile
deleted file mode 100644
index 7ebcae66af..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp009/Makefile
+++ /dev/null
@@ -1,20 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-# Recompilation tests
-
-clean:
- rm -f *.o *.hi
- rm -f B.hs C
-
-# bug #481
-
-recomp009: clean
- cp Sub1.hs Sub.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make Main.hs
- ./Main
- sleep 1
- cp Sub2.hs Sub.hs
- -'$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make Main.hs
- ./Main
diff --git a/testsuite/tests/ghc-regress/driver/recomp009/Sub1.hs b/testsuite/tests/ghc-regress/driver/recomp009/Sub1.hs
deleted file mode 100644
index 25ea7552e4..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp009/Sub1.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module Sub where
-x = [| 1 |]
diff --git a/testsuite/tests/ghc-regress/driver/recomp009/Sub2.hs b/testsuite/tests/ghc-regress/driver/recomp009/Sub2.hs
deleted file mode 100644
index 7ca8b12c33..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp009/Sub2.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module Sub where
-x = [| 2 |]
diff --git a/testsuite/tests/ghc-regress/driver/recomp009/all.T b/testsuite/tests/ghc-regress/driver/recomp009/all.T
deleted file mode 100644
index 368f6cf2f8..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp009/all.T
+++ /dev/null
@@ -1,7 +0,0 @@
-# Test for #481, a recompilation bug with Template Haskell
-
-test('recomp009',
- [ clean_cmd('$MAKE -s clean') ],
- run_command,
- ['$MAKE -s --no-print-directory recomp009'])
-
diff --git a/testsuite/tests/ghc-regress/driver/recomp009/recomp009.stdout b/testsuite/tests/ghc-regress/driver/recomp009/recomp009.stdout
deleted file mode 100644
index 1191247b6d..0000000000
--- a/testsuite/tests/ghc-regress/driver/recomp009/recomp009.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-1
-2
diff --git a/testsuite/tests/ghc-regress/driver/rtsOpts.hs b/testsuite/tests/ghc-regress/driver/rtsOpts.hs
deleted file mode 100644
index 0634af001e..0000000000
--- a/testsuite/tests/ghc-regress/driver/rtsOpts.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-
-main :: IO ()
-main = return ()
diff --git a/testsuite/tests/ghc-regress/driver/rtsopts001.stdout b/testsuite/tests/ghc-regress/driver/rtsopts001.stdout
deleted file mode 100644
index b9f151026d..0000000000
--- a/testsuite/tests/ghc-regress/driver/rtsopts001.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-Normal
-No RTS opts
-rtsOpts: Most RTS options are disabled. Link with -rtsopts to enable them.
diff --git a/testsuite/tests/ghc-regress/driver/rtsopts002.hs b/testsuite/tests/ghc-regress/driver/rtsopts002.hs
deleted file mode 100644
index 473bb8a252..0000000000
--- a/testsuite/tests/ghc-regress/driver/rtsopts002.hs
+++ /dev/null
@@ -1 +0,0 @@
-main = print "hello"
diff --git a/testsuite/tests/ghc-regress/driver/rtsopts002.stderr b/testsuite/tests/ghc-regress/driver/rtsopts002.stderr
deleted file mode 100644
index a92deb2b05..0000000000
--- a/testsuite/tests/ghc-regress/driver/rtsopts002.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-rtsopts002: Most RTS options are disabled. Link with -rtsopts to enable them.
-rtsopts002: Most RTS options are disabled. Link with -rtsopts to enable them.
diff --git a/testsuite/tests/ghc-regress/driver/rtsopts002.stdout b/testsuite/tests/ghc-regress/driver/rtsopts002.stdout
deleted file mode 100644
index ac8108a43d..0000000000
--- a/testsuite/tests/ghc-regress/driver/rtsopts002.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-"hello"
-"hello"
diff --git a/testsuite/tests/ghc-regress/driver/shared001.stderr b/testsuite/tests/ghc-regress/driver/shared001.stderr
deleted file mode 100644
index 26204ba300..0000000000
--- a/testsuite/tests/ghc-regress/driver/shared001.stderr
+++ /dev/null
@@ -1 +0,0 @@
-Creating library file: HSdll.dll.a
diff --git a/testsuite/tests/ghc-regress/driver/werror.hs b/testsuite/tests/ghc-regress/driver/werror.hs
deleted file mode 100644
index ddfa8449d6..0000000000
--- a/testsuite/tests/ghc-regress/driver/werror.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# OPTIONS_GHC -Wall -fwarn-tabs -Werror #-}
-
--- check that all warnings are emitted before failing due to -Werror (#1666)
-
--- missing type sig warning (type checker)
-main = do
- let main = main -- shadowing warning (renamer)
- putStrLn "hello" -- tab warning (lexer)
-
-f [] = []
-f [] = [] -- overlapping pattern
--- incomplete pattern
-
diff --git a/testsuite/tests/ghc-regress/driver/werror.stderr b/testsuite/tests/ghc-regress/driver/werror.stderr
deleted file mode 100644
index c8e7894085..0000000000
--- a/testsuite/tests/ghc-regress/driver/werror.stderr
+++ /dev/null
@@ -1,28 +0,0 @@
-
-werror.hs:6:1:
- Warning: Top-level binding with no type signature: main :: IO ()
-
-werror.hs:7:13:
- Warning: This binding for `main' shadows the existing binding
- defined at werror.hs:6:1
-
-werror.hs:7:13: Warning: Defined but not used: `main'
-
-werror.hs:8:1: Warning: Tab character
-
-werror.hs:10:1: Warning: Defined but not used: `f'
-
-werror.hs:10:1:
- Warning: Top-level binding with no type signature:
- f :: forall t a. [t] -> [a]
-
-werror.hs:10:1:
- Warning: Pattern match(es) are overlapped
- In an equation for `f': f [] = ...
-
-werror.hs:10:1:
- Warning: Pattern match(es) are non-exhaustive
- In an equation for `f': Patterns not matched: _ : _
-
-<no location info>:
-Failing due to -Werror.
diff --git a/testsuite/tests/ghc-regress/driver/withRtsOpts.hs b/testsuite/tests/ghc-regress/driver/withRtsOpts.hs
deleted file mode 100644
index 0634af001e..0000000000
--- a/testsuite/tests/ghc-regress/driver/withRtsOpts.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-
-main :: IO ()
-main = return ()
diff --git a/testsuite/tests/ghc-regress/driver/withRtsOpts.stdout b/testsuite/tests/ghc-regress/driver/withRtsOpts.stdout
deleted file mode 100644
index 0a21aace86..0000000000
--- a/testsuite/tests/ghc-regress/driver/withRtsOpts.stdout
+++ /dev/null
@@ -1 +0,0 @@
- [("GHC RTS", "YES")
diff --git a/testsuite/tests/ghc-regress/dynlibs/Makefile b/testsuite/tests/ghc-regress/dynlibs/Makefile
deleted file mode 100644
index 439b0e626d..0000000000
--- a/testsuite/tests/ghc-regress/dynlibs/Makefile
+++ /dev/null
@@ -1,32 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-.PHONY: T3807
-T3807:
- $(RM) T3807Export_stub.c T3807Export_stub.h T3807Export_stub.o
- $(RM) T3807Export.o T3807Export.hi
- $(RM) T3807-export.o T3807-load.o
- $(RM) T3807test.so
- $(RM) T3807-load
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make -dynamic -fPIC -shared T3807Export.hs T3807-export.c -o T3807test.so -lHSrts-ghc`'$(TEST_HC)' $(TEST_HC_OPTS) --numeric-version`
- '$(TEST_HC)' $(TEST_HC_OPTS) T3807-load.c -o T3807-load -ldl
- ./T3807-load
-
-.PHONY: T4464
-T4464:
- $(RM) T4464B.o T4464C.o T4464H.hi T4464H.o
- $(RM) T4464H_stub.c T4464H_stub.h T4464H_stub.o
- $(RM) HS4464.dll HS4464.dll.a t4464.exe
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 -shared T4464H.hs T4464B.c -o HS4464.dll
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 T4464C.c HS4464.dll.a -o t4464.exe
- -./t4464.exe
- echo "====="
- echo "=====" >&2
- $(RM) T4464B.o T4464C.o T4464H.hi T4464H.o
- $(RM) T4464H_stub.c T4464H_stub.h T4464H_stub.o
- $(RM) HS4464.dll HS4464.dll.a t4464.exe
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 -shared T4464H.hs T4464B.c -o HS4464.dll -rtsopts
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 T4464C.c HS4464.dll.a -o t4464.exe
- ./t4464.exe
-
diff --git a/testsuite/tests/ghc-regress/dynlibs/T3807-export.c b/testsuite/tests/ghc-regress/dynlibs/T3807-export.c
deleted file mode 100644
index aba129e944..0000000000
--- a/testsuite/tests/ghc-regress/dynlibs/T3807-export.c
+++ /dev/null
@@ -1,21 +0,0 @@
-
-#include <HsFFI.h>
-
-extern void __stginit_T3807Export(void);
-
-void
-test_init (void)
-{
- static char *argv[] = { "T3807test.so", 0 };
- static char **argv_ = argv;
- static int argc = 1;
-
- hs_init (&argc, &argv_);
- hs_add_root (__stginit_T3807Export);
-}
-
-void
-test_exit (void)
-{
- hs_exit ();
-}
diff --git a/testsuite/tests/ghc-regress/dynlibs/T3807-load.c b/testsuite/tests/ghc-regress/dynlibs/T3807-load.c
deleted file mode 100644
index 8c6f252c5f..0000000000
--- a/testsuite/tests/ghc-regress/dynlibs/T3807-load.c
+++ /dev/null
@@ -1,39 +0,0 @@
-#include <dlfcn.h>
-#include <stdio.h>
-
-int main(void) {
- int i;
- void *dh;
- void (*test_init)(void);
- int (*test_foo)(void);
- void (*test_exit)(void);
-
- dh = dlopen("./T3807test.so", RTLD_NOW | RTLD_GLOBAL);
- if (!dh) {
- printf("Failed to open shared library: %s\n", dlerror());
- return 1;
- }
-
- test_init = dlsym(dh, "test_init");
- if (!test_init) {
- printf("Failed to find test_init: %s", dlerror());
- return 1;
- }
- test_foo = dlsym(dh, "foo");
- if (!test_foo) {
- printf("Failed to find test_foo: %s", dlerror());
- return 1;
- }
- test_exit = dlsym(dh, "test_exit");
- if (!test_exit) {
- printf("Failed to find test_exit: %s", dlerror());
- return 1;
- }
-
- test_init();
- i = test_foo();
- printf("i is %d\n", i);
- test_exit();
-
- return 0;
-}
diff --git a/testsuite/tests/ghc-regress/dynlibs/T3807.stdout b/testsuite/tests/ghc-regress/dynlibs/T3807.stdout
deleted file mode 100644
index 05d58b6eb5..0000000000
--- a/testsuite/tests/ghc-regress/dynlibs/T3807.stdout
+++ /dev/null
@@ -1 +0,0 @@
-i is 126
diff --git a/testsuite/tests/ghc-regress/dynlibs/T3807Export.hs b/testsuite/tests/ghc-regress/dynlibs/T3807Export.hs
deleted file mode 100644
index 70d9e9b5fb..0000000000
--- a/testsuite/tests/ghc-regress/dynlibs/T3807Export.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-{-# LANGUAGE ForeignFunctionInterface #-}
-module T3807Export where
-
-import Foreign.C
-
-foo :: IO CInt
-foo = return (3 + read "123")
-
-foreign export ccall foo :: IO CInt
-
diff --git a/testsuite/tests/ghc-regress/dynlibs/T4464.stderr b/testsuite/tests/ghc-regress/dynlibs/T4464.stderr
deleted file mode 100644
index 0ec9bb989d..0000000000
--- a/testsuite/tests/ghc-regress/dynlibs/T4464.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-Creating library file: HS4464.dll.a
-ghcDll: Most RTS options are disabled. Link with -rtsopts to enable them.
-=====
-Creating library file: HS4464.dll.a
diff --git a/testsuite/tests/ghc-regress/dynlibs/T4464.stdout b/testsuite/tests/ghc-regress/dynlibs/T4464.stdout
deleted file mode 100644
index 68a1093c21..0000000000
--- a/testsuite/tests/ghc-regress/dynlibs/T4464.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-=====
-f 12 = 13
diff --git a/testsuite/tests/ghc-regress/dynlibs/T4464B.c b/testsuite/tests/ghc-regress/dynlibs/T4464B.c
deleted file mode 100644
index 0cd2845895..0000000000
--- a/testsuite/tests/ghc-regress/dynlibs/T4464B.c
+++ /dev/null
@@ -1,21 +0,0 @@
-
-#include <Rts.h>
-
-extern void __stginit_T4464H(void);
-
-void HsStart(void) {
- int argc = 3;
- char* argv[] = {"ghcDll", "+RTS", "-H50M", NULL}; // argv must end with NULL
-
- // Initialize Haskell runtime
- char** args = argv;
- hs_init(&argc, &args);
-
- // Tell Haskell about all root modules
- hs_add_root(__stginit_T4464H);
-}
-
-void HsEnd(void) {
- hs_exit();
-}
-
diff --git a/testsuite/tests/ghc-regress/dynlibs/T4464C.c b/testsuite/tests/ghc-regress/dynlibs/T4464C.c
deleted file mode 100644
index d013b99684..0000000000
--- a/testsuite/tests/ghc-regress/dynlibs/T4464C.c
+++ /dev/null
@@ -1,15 +0,0 @@
-
-#include "HsFFI.h"
-#include "T4464H_stub.h"
-#include <stdio.h>
-
-void HsStart(void);
-void HsEnd(void);
-
-int main(void) {
- HsStart();
- printf("f 12 = %i\n", f(12));
- HsEnd();
- return 0;
-}
-
diff --git a/testsuite/tests/ghc-regress/dynlibs/T4464H.hs b/testsuite/tests/ghc-regress/dynlibs/T4464H.hs
deleted file mode 100644
index f620866c86..0000000000
--- a/testsuite/tests/ghc-regress/dynlibs/T4464H.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module T4464H where
-
-f :: Int -> Int
-f x = x + 1
-
-foreign export ccall f :: Int -> Int
diff --git a/testsuite/tests/ghc-regress/dynlibs/all.T b/testsuite/tests/ghc-regress/dynlibs/all.T
deleted file mode 100644
index 2ed477255b..0000000000
--- a/testsuite/tests/ghc-regress/dynlibs/all.T
+++ /dev/null
@@ -1,21 +0,0 @@
-
-test('T3807',
- [extra_clean(['T3807Export_stub.c', 'T3807Export_stub.h',
- 'T3807Export_stub.o',
- 'T3807Export.o', 'T3807Export.hi',
- 'T3807-export.o', 'T3807-load.o',
- 'T3807test.so',
- 'T3807-load']),
- if_os('mingw32', skip),
- if_os('darwin', expect_broken(4264))],
- run_command,
- ['$MAKE --no-print-directory -s T3807'])
-
-test('T4464',
- [extra_clean(['T4464B.o', 'T4464C.o', 'T4464H.hi', 'T4464H.o',
- 'T4464H_stub.c', 'T4464H_stub.h', 'T4464H_stub.o',
- 'HS4464.dll', 'HS4464.dll.a', 't4464.exe']),
- unless_os('mingw32', skip)],
- run_command,
- ['$MAKE --no-print-directory -s T4464'])
-
diff --git a/testsuite/tests/ghc-regress/esc/F123.hs b/testsuite/tests/ghc-regress/esc/F123.hs
deleted file mode 100644
index 6aaad164cf..0000000000
--- a/testsuite/tests/ghc-regress/esc/F123.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-module F123 where
-
-
-
-data A = A1 | A2
-data B = B1 | B2
-
-{-# CONTRACT h1 :: {x | noA2 x} -> {r | yesA2 r} #-}
-h1 :: A -> A
-h1 A1 = A2
-
-
-noA2 A1 = True
-noA2 A2 = False
-
-yesA2 A1 = False
-yesA2 A2 = True
-
-f3 x y = case y of
- B1 -> f2 x y
-
-f2 x y = case y of
- B1 -> f1 x
-
-f1 x = h1 A2
-
-
-
diff --git a/testsuite/tests/ghc-regress/esc/Makefile b/testsuite/tests/ghc-regress/esc/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/esc/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/esc/Sum.hs b/testsuite/tests/ghc-regress/esc/Sum.hs
deleted file mode 100644
index 2b9ee29688..0000000000
--- a/testsuite/tests/ghc-regress/esc/Sum.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-module Sum where
-
-{-- {-# SPECIALISE f :: Int -> Int #-}
--- {-# CONTRACT f :: x:{y | y > 0} -> {r | r == x + 1} #-}
--- {-# CONTRACT f :: x:{y | y > 0} -> {y | y > 0} -> {r | r == x + 1} #-}
--- {-# CONTRACT f :: any -> {y | y > 0} #-}
--- {-# CONTRACT f :: {y | y > 0} -> _ #-}
-{-# CONTRACT inc :: {y | y > 0} -> {r | r > 1} #-}
-inc :: Int -> Int
-inc x = x + 1
-
--}
--- {-# CONTRACT sum2 :: x:{y | y > 0} -> {y | y > x} -> {r | r > 0} #-}
--- {-# CONTRACT sum2 :: x:{y | y > 0} -> {y | y > x} -> _ #-}
-sum2 :: Int -> Int -> Int
-sum2 x y = x + y
-
-{-
-t1 = inc 5
-t2a = sum2 (inc 5) 2
-t2b = sum2 (inc 5) 6
--}
diff --git a/testsuite/tests/ghc-regress/esc/TestData.hs b/testsuite/tests/ghc-regress/esc/TestData.hs
deleted file mode 100644
index 045f3c96c0..0000000000
--- a/testsuite/tests/ghc-regress/esc/TestData.hs
+++ /dev/null
@@ -1,37 +0,0 @@
-module TestData where
-
-data A = A1 | A2
-
-
--- If we put noA2 and yesA2 here, they are out of scope
--- in ESC's eyes. i.e. they are not in EscEnv.vals
-{-
-noA2 A1 = True
-noA2 A2 = False
-
-yesA2 A1 = False
-yesA2 A2 = True
--}
-
-{-# CONTRACT h1 :: {x | noA2 x} -> {r | yesA2 r} #-}
-h1 :: A -> A
-h1 A1 = A2
-
-g1 :: A -> A
-g1 A1 = A1
-g1 A2 = A1
-
-{-# CONTRACT h2 :: {x | not1 (noA2 x)} -> {r | not1 (yesA2 r)} #-}
-h2 :: A -> A
-h2 A2 = A1
-
-noA2 A1 = True
-noA2 A2 = False
-
-yesA2 A1 = False
-yesA2 A2 = True
-
-not1 True = False
-not1 False = True
-
-test = h1 (g1 A2)
diff --git a/testsuite/tests/ghc-regress/esc/TestDataCon.hs b/testsuite/tests/ghc-regress/esc/TestDataCon.hs
deleted file mode 100644
index e5b66eb094..0000000000
--- a/testsuite/tests/ghc-regress/esc/TestDataCon.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-module TestDataCon where
-
-{-# CONTRACT g1 :: ({x | x>0}, any) -> {r | r>0} #-}
-g1 :: (Int, Int) -> Int
-g1 (x,y) = x
-{-# CONTRACT g2 :: (any, {y | y>0}) -> {r | r>0} #-}
-g2 :: (Int, Int) -> Int
-g2 (x,y) = y
-
-bad = error "bad!"
-
-t1 = g1 (5, bad)
-t2 = g2 (bad, 6)
-t3 = g1 (bad, 7)
-t4 = g1 (-1, 6) -- seems inlining is done.
-
-{-
-data A a = B a | C a Int
-
-{-# CONTRACT g :: B {x | x>0} -> any #-}
-g :: B Int -> Int
-g (B x) = x
-
-
--}
diff --git a/testsuite/tests/ghc-regress/esc/TestImport.hs b/testsuite/tests/ghc-regress/esc/TestImport.hs
deleted file mode 100644
index bf91eafb63..0000000000
--- a/testsuite/tests/ghc-regress/esc/TestImport.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-module TestImport where
-
-import TestList
-
-{-# CONTRACT t2 :: _ #-}
-t2 = head1 [True] -- same as TestList res2
-
-{-# CONTRACT t3 :: {x | True} #-}
-t3 = head1 [True] -- same as TestList.res3
-
-t4 = head1 [] -- same as TestList.res4
-
-t5 = head1 [True] -- same as TestList.res5
-
-t2a = res2
-t3a = res3
-t4a = res4
-t5a = res5
-
-{-# CONTRACT tail1 :: {xs | not1 (null1 xs)} -> {r | True} #-}
-tail1 :: [Int] -> [Int]
-tail1 (x:xs) = xs
-
-{-# CONTRACT tail2 :: {xs | not (null xs)} -> {r | True} #-}
-tail2 :: [Int] -> [Int]
-tail2 (x:xs) = xs
-
diff --git a/testsuite/tests/ghc-regress/esc/TestList.hs b/testsuite/tests/ghc-regress/esc/TestList.hs
deleted file mode 100644
index 66f9df2263..0000000000
--- a/testsuite/tests/ghc-regress/esc/TestList.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-module TestList where
-
-{-# CONTRACT head1 :: {ys | not1 (null1 ys)} -> {r | True} #-}
--- {-# CONTRACT head1 :: {xs | not (null xs)} -> {r | True} #-}
-head1 :: [Bool] -> Bool
-head1 (x:xs) = x
-
-not1 True = False
-not1 False = True
-
-null1 [] = True
-null1 xs = False
-
-{-# CONTRACT res2 :: _ #-}
-res2 = head1 [True]
-
-{-# CONTRACT res3 :: {x | True} #-}
-res3 = head1 [True]
-
-res4 = head1 []
-
-res5 = head1 [True]
-
-
diff --git a/testsuite/tests/ghc-regress/esc/all.T b/testsuite/tests/ghc-regress/esc/all.T
deleted file mode 100644
index 55b21ee2a3..0000000000
--- a/testsuite/tests/ghc-regress/esc/all.T
+++ /dev/null
@@ -1,5 +0,0 @@
-esc = unless_tag('esc', skip)
-
-test('TestList', esc, compile, ['-fesc'])
-test('TestImport', esc, compile, ['-fesc'])
-test('TestData', esc, compile, ['-fesc'])
diff --git a/testsuite/tests/ghc-regress/esc/synonym.hs b/testsuite/tests/ghc-regress/esc/synonym.hs
deleted file mode 100644
index 24b035ccc1..0000000000
--- a/testsuite/tests/ghc-regress/esc/synonym.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# TYPE nat = {x | x > 0} #-}
-{-# TYPE notNull = {xs | not (null xs)} #-}
-
-{-# CONTRACT f :: nat -> nat #-}
-f :: Int -> Int
-f x = x
-
-{-# CONTRACT g :: notNull -> any #-}
-g :: [Int] -> Int
-g (x:xs) = x
diff --git a/testsuite/tests/ghc-regress/eyeball/IOList.lhs b/testsuite/tests/ghc-regress/eyeball/IOList.lhs
deleted file mode 100644
index 59c282ce9b..0000000000
--- a/testsuite/tests/ghc-regress/eyeball/IOList.lhs
+++ /dev/null
@@ -1,64 +0,0 @@
-> {-# LANGUAGE BangPatterns,CPP #-}
-> module IOList (delete) where
-
-Goal: we want all the IORef boxes to go away in the "delete" operation
-below. There are two versions of the code: one using the record
-selector "next", the other using a hand-written record selector
-"myNext" (see the use in delete). Currently (6.10), neither version
-gives good code, but for different reasons. The record selector
-version is not inlined, and the myNext version gives rise to a join
-point that takes the reboxed IORef as an argument.
-
-#define USE_UNPACK
--- #define USE_STRICT
-
-#if defined(USE_UNPACK)
-#define UNPACK(p) {-# UNPACK #-} !(p)
-#elif defined(USE_STRICT)
-#define UNPACK(p) !(p)
-#else
-#define UNPACK(p) p
-#endif
-
-> import Data.IORef
-
-> data List a = Node { val :: a, next :: UNPACK(IORef (List a))}
-> | Null
-> | Head {next :: UNPACK(IORef (List a)) }
-
-> {-# INLINE [0] myNext #-}
-> myNext :: List a -> IORef (List a)
-> myNext Node{next=n} = n
-> myNext Head{next=n} = n
-> myNext Null = error "null"
-
-> data ListHandle a = ListHandle { headList :: UNPACK(IORef (IORef (List a))),
-> tailList :: UNPACK(IORef (IORef (List a))) }
-
-> delete :: Eq a => ListHandle a -> a -> IO Bool
-> delete (ListHandle {headList = ptrPtr}) i =
-> do startptr <- readIORef ptrPtr
-> delete2 startptr i
-> where
-> delete2 :: Eq a => IORef (List a) -> a -> IO Bool
-> delete2 prevPtr i =
-> do
-> { prevNode <- readIORef prevPtr
-> ; let curNodePtr = next {- or: myNext -} prevNode -- head/node have both next
-> ; curNode <- readIORef curNodePtr
-> ; case curNode of
-> Null -> return False -- we've reached the end of the list
-> -- element not found
-> Node {val = curval, next = nextNode} ->
-> if (curval /= i)
-> then delete2 curNodePtr i -- keep searching
-> else
-> -- delete element (ie delink node)
-> do { case prevNode of
-> Head {} -> do writeIORef prevPtr (Head {next = nextNode})
-> return True
-> Node {} -> do writeIORef prevPtr
-> (Node {val = val prevNode, next = nextNode})
-> return True
-> }
-> }
diff --git a/testsuite/tests/ghc-regress/eyeball/Makefile b/testsuite/tests/ghc-regress/eyeball/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/eyeball/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/eyeball/README b/testsuite/tests/ghc-regress/eyeball/README
deleted file mode 100644
index 14516604f6..0000000000
--- a/testsuite/tests/ghc-regress/eyeball/README
+++ /dev/null
@@ -1,5 +0,0 @@
-These tests are hard to test automatically, but
-they are intended to let you eyeball the results.
-
-Often they are referred to from comments in the
-source code.
diff --git a/testsuite/tests/ghc-regress/eyeball/T3116.hs b/testsuite/tests/ghc-regress/eyeball/T3116.hs
deleted file mode 100644
index ba2439c897..0000000000
--- a/testsuite/tests/ghc-regress/eyeball/T3116.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-{-# OPTIONS -O2 -XBangPatterns #-}
-
--- The thing to look for here is that the implementation
--- of 'length' does not allocate in the inner loop
---
--- See Trac #3116
-
-module T3116 where
-
-import Foreign
-
-data SByteString
- = BS {-# UNPACK #-} !(ForeignPtr Word8) -- payload
- {-# UNPACK #-} !Int -- offset
- {-# UNPACK #-} !Int -- length
-
-data ByteString
- = Empty
- | Chunk {-# UNPACK #-} !SByteString ByteString
-
-bnull :: ByteString -> Bool
-bnull Empty = True
-bnull _ = False
-
-btail :: ByteString -> ByteString
-btail Empty = error "empty tail"
-btail (Chunk (BS fp s 1) cs) = cs
-btail (Chunk (BS fp s l) cs) = Chunk (BS fp (s+1) (l-1)) cs
-
-length :: ByteString -> Int
-length = go 0
- where
- go !n bs | bnull bs = n
- | otherwise = go (n+1) (btail bs)
diff --git a/testsuite/tests/ghc-regress/eyeball/dead1.hs b/testsuite/tests/ghc-regress/eyeball/dead1.hs
deleted file mode 100644
index 108dc8491b..0000000000
--- a/testsuite/tests/ghc-regress/eyeball/dead1.hs
+++ /dev/null
@@ -1,42 +0,0 @@
-{-# OPTIONS -fglasgow-exts -O -ddump-stranal #-}
-
-module Foo(foo) where
-
-foo :: Int -> Int
-foo n = baz (n+1) (bar1 n)
-
-{-# NOINLINE bar1 #-}
-bar1 n = 1 + bar n
-
-bar :: Int -> Int
-{-# NOINLINE bar #-}
-{-# RULES
-"bar/foo" forall n. bar (foo n) = n
- #-}
-bar n = n-1
-
-baz :: Int -> Int -> Int
-{-# INLINE [0] baz #-}
-baz m n = m
-
-
-{- Ronam writes (Feb08)
-
- Note that bar becomes dead as soon as baz gets inlined. But strangely,
- the simplifier only deletes it after full laziness and CSE. That is, it
- is not deleted in the phase in which baz gets inlined. In fact, it is
- still there after w/w and the subsequent simplifier run. It gets deleted
- immediately if I comment out the rule.
-
- I stumbled over this when I removed one simplifier run after SpecConstr
- (at the moment, it runs twice at the end but I don't think that should
- be necessary). With this change, the original version of a specialised
- loop (the one with the rules) is not longer deleted even if it isn't
- used any more. I'll reenable the second simplifier run for now but
- should this really be necessary?
-
-No, it should not be necessary. A refactoring in OccurAnal makes
-this work right. Look at the simplifier output just before strictness
-analysis; there should be a binding for 'foo', but for nothing else.
-
--}
diff --git a/testsuite/tests/ghc-regress/eyeball/dmd-on-polymorphic-floatouts.hs b/testsuite/tests/ghc-regress/eyeball/dmd-on-polymorphic-floatouts.hs
deleted file mode 100644
index fa411e23f2..0000000000
--- a/testsuite/tests/ghc-regress/eyeball/dmd-on-polymorphic-floatouts.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# OPTIONS_GHC -fglasgow-exts -O -ddump-prep #-}
-module Max(result) where
-
-foo ys = foldr (\x xs -> x : reverse xs) [] ys
-
-result xs =
- let stuff = [1, 1, 1, 1, 1, 1]
- in foo (reverse stuff)
-
--- What used to happen is that foldr got expanded by main simplification
--- and the resulting "go" function got floated out but because we manufactured
--- a new binder for it in newPolyBndrs we would lose its demand signature!
--- This means that the later application of it in result did not use call by value :-(
-
--- Eyeball test:
--- Ensure that Max.poly_go has a demand signature
--- Ensure that we use call by value to call Max.poly_go in result
--- i.e. the call to Max.poly_go inside Max.result looks like this:
---
--- case GHC.List.poly_rev @ t1_a6x sat_seb (GHC.Base.[] @ t1_a6x)
--- of sat_sed { __DEFAULT ->
--- Max.poly_go @ t1_a6x sat_sed
--- } } in
diff --git a/testsuite/tests/ghc-regress/eyeball/inline1.hs b/testsuite/tests/ghc-regress/eyeball/inline1.hs
deleted file mode 100644
index 8e58652db6..0000000000
--- a/testsuite/tests/ghc-regress/eyeball/inline1.hs
+++ /dev/null
@@ -1,37 +0,0 @@
-{-# OPTIONS_GHC -fglasgow-exts -O -ddump-simpl -fno-method-sharing #-}
-module Roman where
-
-import Control.Monad.ST
-
-newtype T s a = T { unT :: Int -> ST s a }
-
-instance Monad (T s) where
- return = T . const . return
- T p >>= f = T $ \i -> do { x <- p i
- ; unT (f x) i }
-
-myIndex :: T s Int
-{-# INLINE myIndex #-}
-myIndex = T return
-
-foo :: T s Int
-foo = do { x <- myIndex
- ; return (x + 1) }
-
-
-{- At one stage we got code looking like this:
-
- U.a3 =
- \ (@ s_a8E) (i_shA :: GHC.Base.Int) (eta_shB :: GHC.Prim.State# s_a8E) ->
- case ((((U.myIndex @ s_a8E)
- `cast` ...)
- i_shA)
- `cast` ...)
- eta_shB
- of wild_si5 { (# new_s_shF, r_shG #) -> ...
-
- U.foo :: forall s_a5S. U.T s_a5S GHC.Base.Int
- U.foo = U.a3 `cast` ...
-
-
-The point is that myIndex should be inlined, else code is bad -} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/eyeball/inline2.hs b/testsuite/tests/ghc-regress/eyeball/inline2.hs
deleted file mode 100644
index 45bb04bf8b..0000000000
--- a/testsuite/tests/ghc-regress/eyeball/inline2.hs
+++ /dev/null
@@ -1,40 +0,0 @@
-{-# OPTIONS -fglasgow-exts -O -dshow-passes #-}
-
-module Foo where
-import GHC.Base
-
-foo :: Int -> Int
-foo (I# n#) = bar i i
- where i# = n# +# 1#
- i = I# i#
-
-bar :: Int -> Int -> Int
-{-# INLINE [0] bar #-}
-bar _ n = n
-
-{- The trouble here was
-
- *** Simplify:
- Result size = 25
- Result size = 25
- Result size = 25
- Result size = 25
- Result size = 25
- *** Simplify:
- Result size = 25
- Result size = 25
- Result size = 25
- Result size = 25
- Result size = 25
-
-
- etc.
-
-The reason was this:
- x = n# +# 1#
- i = I# x
-
-Being an unboxed value, we were treating the argument context of x
-as intersting, and hence inlining x in the arg of I#. But then we just
-float it out again, giving an infinite loop.
--}
diff --git a/testsuite/tests/ghc-regress/eyeball/inline3.hs b/testsuite/tests/ghc-regress/eyeball/inline3.hs
deleted file mode 100644
index 1bde5f722a..0000000000
--- a/testsuite/tests/ghc-regress/eyeball/inline3.hs
+++ /dev/null
@@ -1,35 +0,0 @@
-{-# OPTIONS_GHC -fglasgow-exts -O -ddump-simpl #-}
-module Roman where
-
-foo :: Int -> Maybe Int -> Int
-foo 0 (Just n) = n
-foo 0 Nothing = 1
-foo n p = let f = foo (n-1+n-1+n-1+n-1+n-1+n-1+n-1+n-1)
- in
- case p of { Just m -> f (Just m); Nothing -> f Nothing }
-
-
-{- At one time this oddly produced;
-
- foo = \n p ->
- case n of ds {
- __DEFAULT ->
- let
- x = ds -# 1 +# ds -# 1 +# ds -# 1 +# ds -# 1 +# ds -# 1
- in
- case p of {
- Nothing ->
- foo (x +# ds -# 1 +# ds -# 1 +# ds -# 1) Nothing
- ;
- Just m ->
- foo (x +# ds -# 1 +# ds -# 1 +# ds -# 1) (Just m)
- };
- 0 ->
- case p of {
- Nothing -> lvl_sbC; Just n -> n
- }
- }
-
-But it shouldn't; and doesn't now.
-
--}
diff --git a/testsuite/tests/ghc-regress/eyeball/inline4.hs b/testsuite/tests/ghc-regress/eyeball/inline4.hs
deleted file mode 100644
index 2648c9e039..0000000000
--- a/testsuite/tests/ghc-regress/eyeball/inline4.hs
+++ /dev/null
@@ -1,40 +0,0 @@
-module CmmTx where
-
-data TxRes a = TxRes Bool a
-
-instance Monad TxRes where
- return = TxRes False
-
-{- Here you can get a simplifier loop thus:
-NOTE: Simplifier still going after 4 iterations; bailing out. Size = 52
-NOTE: Simplifier still going after 4 iterations; bailing out. Size = 52
-NOTE: Simplifier still going after 4 iterations; bailing out. Size = 52
-NOTE: Simplifier still going after 4 iterations; bailing out. Size = 52
-
-Reason: 'a' is inline (not pre/post unconditionally; just ordinary inlining)
-Then, since ($dm>>) has arity 3, the rhs of (>>) is a PAP, so the arg is
-floated out, past the big lambdas.
-
-See Note [Unsaturated functions] in SimplUtils
-
-------------------------------------------------------------
-a_s9f{v} [lid] =
- base:GHC.Base.:DMonad{v r5} [gid]
- @ main:CmmTx.TxRes{tc rd}
- >>={v a6E} [lid]
- >>{v a6H} [lid]
- return{v a6J} [lid]
- fail{v a6M} [lid]
->>{v a6H} [lid] [ALWAYS LoopBreaker Nothing] :: forall a{tv a6F} [tv]
- b{tv a6G} [tv].
- main:CmmTx.TxRes{tc rd} a{tv a6F} [tv]
- -> main:CmmTx.TxRes{tc rd} b{tv a6G} [tv]
- -> main:CmmTx.TxRes{tc rd} b{tv a6G} [tv]
-[Arity 2
- Str: DmdType LL]
->>{v a6H} [lid] =
- \ (@ a{tv a78} [sk] :: ghc-prim:GHC.Prim.*{(w) tc 34d})
- (@ b{tv a79} [sk] :: ghc-prim:GHC.Prim.*{(w) tc 34d}) ->
- base:GHC.Base.$dm>>{v r5f} [gid]
- @ main:CmmTx.TxRes{tc rd} a_s9f{v} [lid] @ a{tv a78} [sk] @ b{tv a79} [sk]
- -}
diff --git a/testsuite/tests/ghc-regress/eyeball/record1.hs b/testsuite/tests/ghc-regress/eyeball/record1.hs
deleted file mode 100644
index 1f9084b7a6..0000000000
--- a/testsuite/tests/ghc-regress/eyeball/record1.hs
+++ /dev/null
@@ -1,17 +0,0 @@
--- Check that the record selector for maskMB unfolds in the body of f
--- At one stage it didn't because the implicit unfolding looked too big
-
--- Trac #2581
-
-module ShouldCompile where
-import Data.Array.Base
-
-data MBloom s a = MB {
- shiftMB :: {-# UNPACK #-} !Int
- , maskMB :: {-# UNPACK #-} !Int
- , bitArrayMB :: {-# UNPACK #-} !(STUArray s Int Int)
- }
-
-f a b c = case maskMB (MB a b c) of
- 3 -> True
- _ -> False
diff --git a/testsuite/tests/ghc-regress/eyeball/spec-constr1.hs b/testsuite/tests/ghc-regress/eyeball/spec-constr1.hs
deleted file mode 100644
index a14442035b..0000000000
--- a/testsuite/tests/ghc-regress/eyeball/spec-constr1.hs
+++ /dev/null
@@ -1,36 +0,0 @@
-{-# OPTIONS_GHC -O2 -ddump-simpl #-}
-module Roman where
-
-{- From: Roman Leshchinskiy [mailto:rl@cse.unsw.edu.au]
- Sent: 07 February 2008 03:34
- Subject: Quadratic SpecConstr
-
-Here is a program which makes SpecConstr generate a quadratic number of
-iterations:
--}
-
-
-bar :: Int -> Int -> Int
-bar m n = foo n (n,n) (n,n) (n,n) (n,n)
- where
- foo :: Int -> (Int,Int) -> (Int,Int) -> (Int,Int) -> (Int,Int) -> Int
- foo n p q r s
- | n == 0 = m
- | n > 3000 = case p of { (p1,p2) -> foo (n-1) (p2,p1) q r s }
- | n > 2000 = case q of { (q1,q2) -> foo (n-1) p (q2,q1) r s }
- | n > 1000 = case r of { (r1,r2) -> foo (n-1) p q (r2,r1) s }
- | otherwise = case s of { (s1,s2) -> foo (n-1) p q r (s2,s1) }
-
-{- For this particular function, I get 14 specialisations, one for each
- possible combination of arguments.
-
- However, since we can see all the call sites outside the loop, we could
- use that to 'seed' the specialisation, and get just one specialisation.
--}
-
-
--- Eyeball guidance:
--- There should be just one specialisation for foo
--- Indeed, the original function should disappear,
--- since it isn't used
-
diff --git a/testsuite/tests/ghc-regress/eyeball/state-hack.hs b/testsuite/tests/ghc-regress/eyeball/state-hack.hs
deleted file mode 100644
index 439bf78202..0000000000
--- a/testsuite/tests/ghc-regress/eyeball/state-hack.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- The question here is whether f gets eta-expanded
--- (assuming the state hack). It should, but
--- didn't in GHC 6.10
-
-module Foo where
-
-import GHC.Base
-
-{-# NOINLINE z #-}
-z :: State# a -> Bool
-z s = True
-
-{-# NOINLINE k #-}
-k :: Int -> State# a -> Bool
-k y s = False
-
-
-f [] = z
-f (x:xs) = k (length xs)
diff --git a/testsuite/tests/ghc-regress/ffi/Makefile b/testsuite/tests/ghc-regress/ffi/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/ffi/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/1357.hs b/testsuite/tests/ghc-regress/ffi/should_compile/1357.hs
deleted file mode 100644
index 1f5479bc1c..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/1357.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module T where
-
-import Foreign
-foreign import ccall "f" f :: FunPtr (Int -> IO ())
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/1357.stderr b/testsuite/tests/ghc-regress/ffi/should_compile/1357.stderr
deleted file mode 100644
index cd1cb7031a..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/1357.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-1357.hs:5:1:
- Warning: possible missing & in foreign import of FunPtr
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/3624.hs b/testsuite/tests/ghc-regress/ffi/should_compile/3624.hs
deleted file mode 100644
index 8f42efc055..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/3624.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module Test where
-
-foreign import ccall "path/to/foo.h foo" foo :: Int -> IO Float
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/3742.hs b/testsuite/tests/ghc-regress/ffi/should_compile/3742.hs
deleted file mode 100644
index c16b6009eb..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/3742.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module ShouldCompile where
-
-import Foreign
-import Foreign.C
-
--- extra space before the function name:
-foreign import ccall unsafe " g_get_application_name"
- g_get_application_name :: (IO (Ptr CChar))
-
--- and after:
-foreign import ccall unsafe "g_get_application_name "
- g_get_application_name' :: (IO (Ptr CChar))
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/Makefile b/testsuite/tests/ghc-regress/ffi/should_compile/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/all.T b/testsuite/tests/ghc-regress/ffi/should_compile/all.T
deleted file mode 100644
index ff8bc64b5d..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/all.T
+++ /dev/null
@@ -1,38 +0,0 @@
-
-def ffi( opts ):
- opts.extra_hc_opts = '-XForeignFunctionInterface -optc-Wno-implicit'
-
-setTestOpts(ffi)
-
-test('cc001', normal, compile, [''])
-
-# Non-static C call
-# cc004 test also uses stdcall, so it only works on i386.
-if config.platform.startswith('i386-'):
- ways = expect_fail_for(['extcore','optextcore'])
-else:
- ways = expect_fail
-test('cc004', ways, compile, [''])
-
-# foreign label
-test('cc005', expect_fail_for(['extcore','optextcore']), compile, [''])
-
-# Missing:
-# test('cc006', normal, compile, [''])
-
-test('cc007', normal, compile, [''])
-# foreign label
-test('cc008', expect_fail_for(['extcore','optextcore']), compile, [''])
-# foreign label
-test('cc009', expect_fail_for(['extcore','optextcore']), compile, [''])
-# Non-static C call
-test('cc010', expect_fail_for(['extcore','optextcore']), compile, [''])
-test('cc011', normal, compile, [''])
-test('cc012', normal, compile, [''])
-test('cc013', normal, compile, [''])
-test('cc014', normal, compile, [''])
-test('ffi-deriv1', normal, compile, [''])
-
-test('1357', normal, compile, [''])
-test('3624', normal, compile, [''])
-test('3742', normal, compile, [''])
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/cc001.hs b/testsuite/tests/ghc-regress/ffi/should_compile/cc001.hs
deleted file mode 100644
index cd7318d000..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/cc001.hs
+++ /dev/null
@@ -1,21 +0,0 @@
--- !!! cc001 -- ccall with standard boxed arguments and results
-
-module ShouldCompile where
-
--- simple functions
-
-foreign import ccall unsafe "a" a :: IO Int
-
-foreign import ccall unsafe "b" b :: Int -> IO Int
-
-foreign import ccall unsafe "c"
- c :: Int -> Char -> Float -> Double -> IO Float
-
--- simple monadic code
-
-d = a >>= \ x ->
- b x >>= \ y ->
- c y 'f' 1.0 2.0
-
-
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/cc001.stderr b/testsuite/tests/ghc-regress/ffi/should_compile/cc001.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/cc001.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/cc004.hs b/testsuite/tests/ghc-regress/ffi/should_compile/cc004.hs
deleted file mode 100644
index fb754223b2..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/cc004.hs
+++ /dev/null
@@ -1,67 +0,0 @@
-{-# LANGUAGE MagicHash, UnliftedFFITypes #-}
--- !!! cc004 -- foreign declarations
-module ShouldCompile where
-
-import Foreign
-import GHC.Exts
-import Data.Int
-import Data.Word
-
--- importing functions
-
--- We can't import the same function using both stdcall and ccall
--- calling conventions in the same file when compiling via C (this is a
--- restriction in the C backend caused by the need to emit a prototype
--- for stdcall functions).
-foreign import stdcall "p" m_stdcall :: StablePtr a -> IO (StablePtr b)
-foreign import ccall unsafe "q" m_ccall :: ByteArray# -> IO Int
-
--- We can't redefine the calling conventions of certain functions (those from
--- math.h).
-foreign import stdcall "my_sin" my_sin :: Double -> IO Double
-foreign import stdcall "my_cos" my_cos :: Double -> IO Double
-
-foreign import stdcall "m1" m8 :: IO Int8
-foreign import stdcall "m2" m16 :: IO Int16
-foreign import stdcall "m3" m32 :: IO Int32
-foreign import stdcall "m4" m64 :: IO Int64
-
-foreign import stdcall "dynamic" d8 :: Ptr a -> IO Int8
-foreign import stdcall "dynamic" d16 :: Ptr a -> IO Int16
-foreign import stdcall "dynamic" d32 :: Ptr a -> IO Int32
-foreign import stdcall "dynamic" d64 :: Ptr a -> IO Int64
-
-foreign import ccall unsafe "kitchen"
- sink :: Ptr a
- -> ByteArray#
- -> MutableByteArray# RealWorld
- -> Int
- -> Int8
- -> Int16
- -> Int32
- -> Int64
- -> Word8
- -> Word16
- -> Word32
- -> Word64
- -> Float
- -> Double
- -> IO ()
-
-
-foreign import ccall unsafe "dynamic"
- sink2 :: Ptr a
- -> (Ptr b
- -> ByteArray#
- -> MutableByteArray# RealWorld
- -> Int
- -> Int8
- -> Int16
- -> Int32
- -> Word8
- -> Word16
- -> Word32
- -> Float
- -> Double
- -> IO ())
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/cc005.hs b/testsuite/tests/ghc-regress/ffi/should_compile/cc005.hs
deleted file mode 100644
index e057cfd233..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/cc005.hs
+++ /dev/null
@@ -1,108 +0,0 @@
--- !!! cc005 -- foreign export declarations
-module ShouldCompile (d8) where
-
-import Foreign.Ptr --import Foreign
- --import GlaExts
- --import Int
- --import Word
-type Addr = Ptr ()
-foreign import ccall "wrapper" d8 :: (Int -> IO ()) -> IO Addr
-
--- exporting functions
-{-
-m_stdcall :: Int -> IO Int
-m_stdcall x = return x
-
-x = putChar
-
-foreign export ccall "m1" doo :: Int -> IO Int
-
-doo :: Eq a => a -> IO Int
-doo _ = return 2
-
-foreign export ccall "listAppend" plusplus :: StablePtr [a] -> StablePtr [a] -> IO (StablePtr [a])
-
-plusplus :: StablePtr [a] -> StablePtr [a] -> IO (StablePtr [a])
-plusplus x y = do
- l1 <- deRefStablePtr x
- l2 <- deRefStablePtr y
- makeStablePtr (l1 ++ l2)
-
-foreign export ccall "m11" m_stdcall :: Int -> IO Int
-
-m_ccall :: Int -> Int -> IO Int
-m_ccall x y = return (x-y)
-
-foreign export ccall "m2" m_ccall :: Int -> Int -> IO Int
-
-foreign export ccall "putcha" putChar :: Char -> IO ()
-
-foreign export stdcall "Math" "sin" my_sin :: Double -> IO Double
-foreign export stdcall "Math" "cos" my_cos :: Double -> IO Double
-
-my_sin = undefined
-my_cos = undefined
-
-foreign export stdcall "m111" m8 :: IO Int8
-foreign export stdcall "m22" m16 :: IO Int16
-foreign export stdcall "m3" m32 :: IO Int32
-foreign export stdcall "m4" m64 :: IO Int64
-
-m8 = undefined
-m16 = undefined
-m32 = undefined
-m64 = undefined
-
-foreign export stdcall dynamic d8 :: (Addr -> IO Int8) -> IO Addr
-foreign export stdcall dynamic d16 :: (Addr -> IO Int16) -> IO Addr
-foreign export stdcall dynamic d32 :: (Addr -> IO Int32) -> IO Addr
-foreign export stdcall dynamic d64 :: (Addr -> IO Int64) -> IO Addr
-
-
-d8 = undefined
-d16 = undefined
-d32 = undefined
-d64 = undefined
-
-
-foreign export ccall "kitchen"
- sink :: --ForeignObj
--- -> ByteArray Int
--- -> MutableByteArray Int RealWorld
- Int
- -> Int8
- -> Int16
- -> Int32
- -> Int64
- -> Word8
- -> Word16
- -> Word32
- -> Word64
- -> Float
- -> Double
- -> IO Int
-
-sink = undefined
-sink2 = undefined
-
-foreign export ccall dynamic
- sink2 :: (--ForeignObj
--- -> ByteArray Int
--- -> MutableByteArray Int RealWorld
- StablePtr a
- -> Int
- -> Int8
- -> Int16
- -> Int32
- -> Int64
- -> Word8
- -> Word16
- -> Word32
- -> Word64
- -> Float
- -> Double
- -> IO ())
- -> IO Addr
-
-
--}
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/cc007.hs b/testsuite/tests/ghc-regress/ffi/should_compile/cc007.hs
deleted file mode 100644
index 99337cc37f..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/cc007.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! cc007 -- foreign import with external name equal to Haskell name.
-module ShouldCompile where
-
-foreign import ccall sine :: Double -> Double
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/cc008.hs b/testsuite/tests/ghc-regress/ffi/should_compile/cc008.hs
deleted file mode 100644
index 2dd0bc99eb..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/cc008.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! cc008 -- foreign export dynamic returning newtype of Addr
-module ShouldCompile where
-
-import Foreign
-type Addr = Ptr ()
-newtype NPtr a = NPtr Addr
-
-foreign import ccall "wrapper" mkFoo :: IO () -> IO (NPtr Int)
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/cc009.hs b/testsuite/tests/ghc-regress/ffi/should_compile/cc009.hs
deleted file mode 100644
index 3ece3a9a24..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/cc009.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! cc009 -- foreign label returning newtype of Addr
-module ShouldCompile where
-
-import Foreign
-type Addr = Ptr ()
-newtype NPtr a = NPtr Addr
-
-foreign import ccall "&" foo :: NPtr Int
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/cc009_inc.h b/testsuite/tests/ghc-regress/ffi/should_compile/cc009_inc.h
deleted file mode 100644
index be2f5392f8..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/cc009_inc.h
+++ /dev/null
@@ -1 +0,0 @@
-extern void *foo;
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/cc010.hs b/testsuite/tests/ghc-regress/ffi/should_compile/cc010.hs
deleted file mode 100644
index dd34730d42..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/cc010.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldCompile where
-import Foreign
-foreign import ccall "dynamic" imp :: Ptr () -> Int
-f1 a = imp a + 1
-f2 a = imp a + 2
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/cc011.hs b/testsuite/tests/ghc-regress/ffi/should_compile/cc011.hs
deleted file mode 100644
index 25cce84bd3..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/cc011.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module ShouldCompile where
-
-import Foreign
-
--- !!! test that a recursive newtype can be used as an argument or result
--- type of a foreign import.
-
-newtype T = T (Ptr T)
-foreign import ccall foo :: T -> IO T
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/cc011.stderr-hugs b/testsuite/tests/ghc-regress/ffi/should_compile/cc011.stderr-hugs
deleted file mode 100644
index d6f9e1788c..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/cc011.stderr-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-cc011.c: In function `hugsprim_foo_0':
-cc011.c:16: warning: assignment makes pointer from integer without a cast
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/cc012.hs b/testsuite/tests/ghc-regress/ffi/should_compile/cc012.hs
deleted file mode 100644
index 288f9acd02..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/cc012.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
--- !!! test that infix operators can be exported with foreign export,
--- and that we can export something which isn't defined in this module.
-module ShouldCompile where
-foreign export ccall "plusInt" (+) :: Int -> Int -> Int
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/cc013.hs b/testsuite/tests/ghc-regress/ffi/should_compile/cc013.hs
deleted file mode 100644
index 09dd2ef2ef..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/cc013.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
--- !!! test that exporting the same thing multiple times works.
-module ShouldCompile where
-
-import Data.Int
-
-foreign export ccall "addByte" (+) :: Int8 -> Int8 -> Int8
-foreign export ccall "addInt" (+) :: Int16 -> Int16 -> Int16
-foreign export ccall "addLong" (+) :: Int32 -> Int32 -> Int32
-
-foreign export ccall "divByte" div :: Int8 -> Int8 -> Int8
-foreign export ccall "divInt" div :: Int16 -> Int16 -> Int16
-foreign export ccall "divLong" div :: Int32 -> Int32 -> Int32
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/cc014.hs b/testsuite/tests/ghc-regress/ffi/should_compile/cc014.hs
deleted file mode 100644
index bbf2d765ed..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/cc014.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Blah ( foo ) where
-import Foreign.Ptr ( FunPtr )
-type Bar = Int -> Double -> Double -> Double -> IO ()
-foreign import ccall unsafe "dynamic" foo :: FunPtr Bar -> Bar
diff --git a/testsuite/tests/ghc-regress/ffi/should_compile/ffi-deriv1.hs b/testsuite/tests/ghc-regress/ffi/should_compile/ffi-deriv1.hs
deleted file mode 100644
index 94d0df2fa4..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_compile/ffi-deriv1.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-
--- Tests newtype unwrapping for the IO monad itself
--- Notice the RenderM monad, which is used in the
--- type of the callback function
-
-module ShouldCompile where
-
-import Foreign.Ptr
-newtype RenderM a = RenderM (IO a) deriving (Functor, Monad)
-
-type RenderCallback = Int -> Int -> RenderM ()
-
-foreign import ccall duma_onRender :: FunPtr RenderCallback -> RenderM ()
-
-foreign import ccall "wrapper" mkRenderCallback
- :: RenderCallback -> RenderM (FunPtr RenderCallback)
-
-onRender :: RenderCallback -> RenderM ()
-onRender f = mkRenderCallback f >>= duma_onRender
-
-
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_fail/Makefile b/testsuite/tests/ghc-regress/ffi/should_fail/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_fail/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ffi/should_fail/T3066.hs b/testsuite/tests/ghc-regress/ffi/should_fail/T3066.hs
deleted file mode 100644
index 2d71946843..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_fail/T3066.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface, RankNTypes #-}
-module Foo where
-
-import Foreign
-type X u = Ptr ()
-foreign import ccall bla :: (forall u. X u) -> IO ()
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_fail/T3066.stderr b/testsuite/tests/ghc-regress/ffi/should_fail/T3066.stderr
deleted file mode 100644
index ac0a07d60a..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_fail/T3066.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-T3066.hs:6:1:
- Unacceptable argument type in foreign declaration: forall u. X u
- When checking declaration:
- foreign import ccall safe "static bla" bla
- :: (forall u. X u) -> IO ()
diff --git a/testsuite/tests/ghc-regress/ffi/should_fail/all.T b/testsuite/tests/ghc-regress/ffi/should_fail/all.T
deleted file mode 100644
index bc6ee95e62..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_fail/all.T
+++ /dev/null
@@ -1,8 +0,0 @@
-
-# Missing:
-# test('cc002', normal, compile_fail, [''])
-
-test('ccfail001', only_compiler_types(['ghc']), compile_fail, [''])
-test('ccfail002', only_compiler_types(['ghc']), compile_fail, [''])
-test('ccfail003', only_compiler_types(['ghc']), compile_fail, [''])
-test('T3066', only_compiler_types(['ghc']), compile_fail, [''])
diff --git a/testsuite/tests/ghc-regress/ffi/should_fail/ccfail001.hs b/testsuite/tests/ghc-regress/ffi/should_fail/ccfail001.hs
deleted file mode 100644
index cd8eb83665..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_fail/ccfail001.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-{-# LANGUAGE ForeignFunctionInterface, MagicHash #-}
-
--- Trac #1037
-
-module Foo where
-
-import GHC.Prim
-
-foreign import ccall foo :: Int -> State# RealWorld
diff --git a/testsuite/tests/ghc-regress/ffi/should_fail/ccfail001.stderr b/testsuite/tests/ghc-regress/ffi/should_fail/ccfail001.stderr
deleted file mode 100644
index 813c5d187c..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_fail/ccfail001.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-ccfail001.hs:10:1:
- Unacceptable result type in foreign declaration: State# RealWorld
- When checking declaration:
- foreign import ccall safe "static foo" foo
- :: Int -> State# RealWorld
diff --git a/testsuite/tests/ghc-regress/ffi/should_fail/ccfail002.hs b/testsuite/tests/ghc-regress/ffi/should_fail/ccfail002.hs
deleted file mode 100644
index 977faa2f7c..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_fail/ccfail002.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-{-# LANGUAGE ForeignFunctionInterface, UnboxedTuples, MagicHash, UnliftedFFITypes #-}
-
--- Test for Trac #1680
-
-module ShouldFail where
-
-import GHC.Exts
-
-foreign import ccall unsafe "foo"
- foo :: Int# -> Int# -> Int# -> (# Int# , Int#, Int# #)
diff --git a/testsuite/tests/ghc-regress/ffi/should_fail/ccfail002.stderr b/testsuite/tests/ghc-regress/ffi/should_fail/ccfail002.stderr
deleted file mode 100644
index dfff4272cd..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_fail/ccfail002.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-ccfail002.hs:10:1:
- Unacceptable result type in foreign declaration:
- (# Int#, Int#, Int# #)
- When checking declaration:
- foreign import ccall unsafe "static foo" foo
- :: Int# -> Int# -> Int# -> (# Int#, Int#, Int# #)
diff --git a/testsuite/tests/ghc-regress/ffi/should_fail/ccfail003.hs b/testsuite/tests/ghc-regress/ffi/should_fail/ccfail003.hs
deleted file mode 100644
index f16556cb3f..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_fail/ccfail003.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE UnliftedFFITypes, MagicHash #-}
--- !!! illegal types in foreign export delarations
-module ShouldFail where
-
-import GHC.Exts
-
-foreign export ccall foo :: Int# -> IO ()
-foo i | i ==# 0# = return ()
-
-foreign export ccall bar :: Int -> Int#
-bar _ = 42#
diff --git a/testsuite/tests/ghc-regress/ffi/should_fail/ccfail003.stderr b/testsuite/tests/ghc-regress/ffi/should_fail/ccfail003.stderr
deleted file mode 100644
index 7933b8c48e..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_fail/ccfail003.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-ccfail003.hs:7:1:
- Unacceptable argument type in foreign declaration: Int#
- When checking declaration: foreign export ccall "foo" foo :: Int# -> IO ()
-
-ccfail003.hs:10:1:
- Unacceptable result type in foreign declaration: Int#
- When checking declaration: foreign export ccall "bar" bar :: Int -> Int#
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/1288.hs b/testsuite/tests/ghc-regress/ffi/should_run/1288.hs
deleted file mode 100644
index 8b3a8f8417..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/1288.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-import Foreign
-import Foreign.C
-
-foreign import stdcall "test" ctest :: CInt -> IO ()
-
-main = ctest 3
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/1288.stdout b/testsuite/tests/ghc-regress/ffi/should_run/1288.stdout
deleted file mode 100644
index ef6be0406e..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/1288.stdout
+++ /dev/null
@@ -1 +0,0 @@
-The argument passed was 3
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/1288_c.c b/testsuite/tests/ghc-regress/ffi/should_run/1288_c.c
deleted file mode 100644
index f240d29529..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/1288_c.c
+++ /dev/null
@@ -1,6 +0,0 @@
-#include <stdio.h>
-
-void __attribute__((stdcall)) test(int arg)
-{
- printf("The argument passed was %i\n", arg );
-}
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/1288_ghci.hs b/testsuite/tests/ghc-regress/ffi/should_run/1288_ghci.hs
deleted file mode 100644
index 8b3a8f8417..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/1288_ghci.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-import Foreign
-import Foreign.C
-
-foreign import stdcall "test" ctest :: CInt -> IO ()
-
-main = ctest 3
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/1288_ghci.stdout b/testsuite/tests/ghc-regress/ffi/should_run/1288_ghci.stdout
deleted file mode 100644
index ef6be0406e..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/1288_ghci.stdout
+++ /dev/null
@@ -1 +0,0 @@
-The argument passed was 3
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/1288_ghci_c.c b/testsuite/tests/ghc-regress/ffi/should_run/1288_ghci_c.c
deleted file mode 100644
index f240d29529..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/1288_ghci_c.c
+++ /dev/null
@@ -1,6 +0,0 @@
-#include <stdio.h>
-
-void __attribute__((stdcall)) test(int arg)
-{
- printf("The argument passed was %i\n", arg );
-}
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/1679.hs b/testsuite/tests/ghc-regress/ffi/should_run/1679.hs
deleted file mode 100644
index 15f8630004..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/1679.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-import System.Mem
-import Foreign
-import Control.Exception
-
--- Test for #1679. If there's a GC during a foreign call, the
--- interpreter could sometimes crash, because it was using the old
--- pointer to the byte code instructions, which has now moved. The
--- tricky bit is allocating enough so that the old instructions are
--- overwritten, hence performGC followed by sum [1..100000].
-
-foreign import ccall "wrapper" mkF :: IO () -> IO (FunPtr (IO ()))
-foreign import ccall "dynamic" call_F :: FunPtr (IO ()) -> IO ()
-
-main = do
- fun <- mkF (do performGC
- print (sum [1..100000]))
- call_F fun
- putStrLn "ok"
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/1679.stdout b/testsuite/tests/ghc-regress/ffi/should_run/1679.stdout
deleted file mode 100644
index ad2afa7c36..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/1679.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-5000050000
-ok
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/2276.hs b/testsuite/tests/ghc-regress/ffi/should_run/2276.hs
deleted file mode 100644
index 0ee1ee91ff..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/2276.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-import Foreign
-import Foreign.C
-
-foreign import stdcall "&test" ptest :: FunPtr (CInt -> IO ())
-foreign import stdcall "dynamic" ctest :: FunPtr (CInt -> IO ()) -> CInt -> IO ()
-
-main = ctest ptest 3
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/2276.stdout b/testsuite/tests/ghc-regress/ffi/should_run/2276.stdout
deleted file mode 100644
index ef6be0406e..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/2276.stdout
+++ /dev/null
@@ -1 +0,0 @@
-The argument passed was 3
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/2276_c.c b/testsuite/tests/ghc-regress/ffi/should_run/2276_c.c
deleted file mode 100644
index f240d29529..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/2276_c.c
+++ /dev/null
@@ -1,6 +0,0 @@
-#include <stdio.h>
-
-void __attribute__((stdcall)) test(int arg)
-{
- printf("The argument passed was %i\n", arg );
-}
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/2276_ghci.hs b/testsuite/tests/ghc-regress/ffi/should_run/2276_ghci.hs
deleted file mode 100644
index 0ee1ee91ff..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/2276_ghci.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-import Foreign
-import Foreign.C
-
-foreign import stdcall "&test" ptest :: FunPtr (CInt -> IO ())
-foreign import stdcall "dynamic" ctest :: FunPtr (CInt -> IO ()) -> CInt -> IO ()
-
-main = ctest ptest 3
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/2276_ghci.stdout b/testsuite/tests/ghc-regress/ffi/should_run/2276_ghci.stdout
deleted file mode 100644
index ef6be0406e..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/2276_ghci.stdout
+++ /dev/null
@@ -1 +0,0 @@
-The argument passed was 3
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/2276_ghci_c.c b/testsuite/tests/ghc-regress/ffi/should_run/2276_ghci_c.c
deleted file mode 100644
index f240d29529..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/2276_ghci_c.c
+++ /dev/null
@@ -1,6 +0,0 @@
-#include <stdio.h>
-
-void __attribute__((stdcall)) test(int arg)
-{
- printf("The argument passed was %i\n", arg );
-}
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/2469.hs b/testsuite/tests/ghc-regress/ffi/should_run/2469.hs
deleted file mode 100644
index dc68ad73bf..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/2469.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-import Foreign
-import Foreign.C
-
-type IOF = Int -> IO Int
-
-foreign import ccall "wrapper" wrap_f_io :: IOF -> IO (FunPtr IOF)
-foreign import ccall "dynamic" f_io :: FunPtr IOF -> IOF
-
-double_io :: Int -> IO Int
-double_io x = return (x * 2)
-
-main = do
- double2 <- wrap_f_io double_io
- x <- f_io double2 42
- return ()
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/2594.hs b/testsuite/tests/ghc-regress/ffi/should_run/2594.hs
deleted file mode 100644
index cdfcfc71fd..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/2594.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-{-# options -fffi #-}
-
-import Foreign
-import Foreign.C.Types
-
-main = do
- wprint <- wrap8 print
- call8 wprint
- wprint <- wrap16 print
- call16 wprint
- wprint <- wrap32 print
- call32 wprint
- wprint <- wrap64 print
- call64 wprint
-
-foreign import ccall "wrapper"
- wrap8 :: (Int8 -> IO ()) -> IO (FunPtr (Int8 -> IO ()))
-
-foreign import ccall "FunPtrBug.h call8"
- call8 :: FunPtr (Int8 -> IO ()) -> IO ()
-
-foreign import ccall "wrapper"
- wrap16 :: (Int16 -> IO ()) -> IO (FunPtr (Int16 -> IO ()))
-
-foreign import ccall "FunPtrBug.h call16"
- call16 :: FunPtr (Int16 -> IO ()) -> IO ()
-
-foreign import ccall "wrapper"
- wrap32 :: (Int32 -> IO ()) -> IO (FunPtr (Int32 -> IO ()))
-
-foreign import ccall "FunPtrBug.h call32"
- call32 :: FunPtr (Int32 -> IO ()) -> IO ()
-
-foreign import ccall "wrapper"
- wrap64 :: (Int64 -> IO ()) -> IO (FunPtr (Int64 -> IO ()))
-
-foreign import ccall "FunPtrBug.h call64"
- call64 :: FunPtr (Int64 -> IO ()) -> IO ()
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/2594.stdout b/testsuite/tests/ghc-regress/ffi/should_run/2594.stdout
deleted file mode 100644
index bfb2cfef51..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/2594.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
--1
--1
--1
--1
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/2594_c.c b/testsuite/tests/ghc-regress/ffi/should_run/2594_c.c
deleted file mode 100644
index f0dd3007fa..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/2594_c.c
+++ /dev/null
@@ -1,7 +0,0 @@
-
-#include "2594_c.h"
-
-void call8 (funtype8 fun) { fun(-1); }
-void call16(funtype16 fun) { fun(-1); }
-void call32(funtype32 fun) { fun(-1); }
-void call64(funtype64 fun) { fun(-1); }
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/2594_c.h b/testsuite/tests/ghc-regress/ffi/should_run/2594_c.h
deleted file mode 100644
index 5847b26662..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/2594_c.h
+++ /dev/null
@@ -1,15 +0,0 @@
-
-#include "HsFFI.h"
-
-typedef void (* funtype8)(HsInt8);
-typedef void (* funtype16)(HsInt16);
-typedef void (* funtype32)(HsInt32);
-typedef void (* funtype64)(HsInt64);
-
-void call8(funtype8 fun);
-void call16(funtype16 fun);
-void call32(funtype32 fun);
-void call64(funtype64 fun);
-
-int cmain();
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/2917a.hs b/testsuite/tests/ghc-regress/ffi/should_run/2917a.hs
deleted file mode 100644
index cdfaabcd2a..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/2917a.hs
+++ /dev/null
@@ -1,42 +0,0 @@
-import Foreign
-import Control.Monad
-
--- check that all pointers returned by allocaBytes and mallocBytes are
--- 16-byte aligned
-main = do
- sequence [ allocaBytes x $ return | x <- [1..500] ] >>= check 16
- (replicateM 500 (alloca $ return) :: IO [Ptr Align32]) >>= check 32
- (replicateM 500 (alloca $ return) :: IO [Ptr Align64]) >>= check 64
- (replicateM 500 (alloca $ return) :: IO [Ptr Align128]) >>= check 128
- (replicateM 500 (alloca $ return) :: IO [Ptr Align256]) >>= check 256
- -- mapM mallocBytes [1..500] >>= check 16
-
-check :: Int -> [Ptr a] -> IO ()
-check align xs = do
- let bad = [ p | p <- xs, (p `minusPtr` nullPtr) .&. (align-1) /= 0 ]
- when (not $ null bad) $
- putStrLn ("FAIL: " ++ show align ++ " " ++ show bad)
-
-data Align32 = Align32
-
-instance Storable Align32 where
- sizeOf _ = 32
- alignment _ = 32
-
-data Align64 = Align64
-
-instance Storable Align64 where
- sizeOf _ = 64
- alignment _ = 64
-
-data Align128 = Align128
-
-instance Storable Align128 where
- sizeOf _ = 128
- alignment _ = 128
-
-data Align256 = Align256
-
-instance Storable Align256 where
- sizeOf _ = 256
- alignment _ = 256
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/4038.hs b/testsuite/tests/ghc-regress/ffi/should_run/4038.hs
deleted file mode 100644
index 9250fb9082..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/4038.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-import Foreign
-import Foreign.C
-
-type IOF = Int -> IO Int
-
-foreign import ccall "wrapper" wrap_f_io :: IOF -> IO (FunPtr IOF)
-foreign import ccall "dynamic" f_io :: FunPtr IOF -> IOF
-
--- The value of n needs to be adjusted to avoid overflowing the
--- C stack. n is the number of times the f calls itself, and each
--- C call allocates a bit over 16 kB on a 64 bit processor.
--- (Remember that there is no tail call optimization of foreign functions.)
--- A typical C stack is 8 MB, so n = 400 will allocate about 4.8 MB
--- on a 64 bit system. If you have a 128 bit processor you'll have to
--- reduce it.
---
--- Under ghci this test segfaults for smaller n, probably
--- because more of the C stack is allocated for other use than
--- when compiled.
---
--- On *nix systems, the C stack size can be examined and changed by
--- the "ulimit -s" command.
---
-n = 300
-
-f :: Int -> IO Int
-f 0 = return 42
-f n = do
- f' <- wrap_f_io f
- f_io f' (n-1)
-
-main = f n >>= print
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/4038.stdout b/testsuite/tests/ghc-regress/ffi/should_run/4038.stdout
deleted file mode 100644
index d81cc0710e..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/4038.stdout
+++ /dev/null
@@ -1 +0,0 @@
-42
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/4221.hs b/testsuite/tests/ghc-regress/ffi/should_run/4221.hs
deleted file mode 100644
index eba782e636..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/4221.hs
+++ /dev/null
@@ -1,42 +0,0 @@
-{-# LANGUAGE EmptyDataDecls, ForeignFunctionInterface #-}
-module Main(main) where
-
-import Foreign.Ptr
-import Foreign.ForeignPtr
-import Foreign.C
-
-data FnBlob
-
-foreign import ccall "&free_fn_blob" free_fn_blob :: FunPtr (Ptr FnBlob -> IO ())
-
-foreign import ccall safe "call_fn_blob" call_fn_blob :: Ptr FnBlob -> CDouble -> CDouble
-
-type DoubleFn = CDouble -> CDouble
-
-foreign import ccall unsafe "create_fn_blob" create_fn_blob :: FunPtr DoubleFn -> FunPtr (FunPtr DoubleFn -> IO ()) -> IO (Ptr FnBlob)
-
-foreign import ccall unsafe "&freeHaskellFunctionPtr" free_fun_ptr :: FunPtr (FunPtr DoubleFn -> IO())
-
-foreign import ccall "wrapper" wrapDoubleFn :: DoubleFn -> IO (FunPtr DoubleFn)
-
-createFnBlob :: DoubleFn -> IO (ForeignPtr FnBlob)
-createFnBlob dfn = do
- dfn_ptr <- wrapDoubleFn dfn
- ptr_fnblob <- create_fn_blob dfn_ptr free_fun_ptr
- newForeignPtr free_fn_blob ptr_fnblob
-
-callFnBlob :: ForeignPtr FnBlob -> CDouble -> IO (CDouble)
-callFnBlob fnblob d = withForeignPtr fnblob $
- \ptrblob -> return $! call_fn_blob ptrblob d
-
-main = do
- putStrLn "start"
- step 0
- putStrLn "done"
-
-step n | n > 1000 = return ()
-step n = do
- fnBlob <- createFnBlob (+ n)
- result <- callFnBlob fnBlob 0
- putStrLn $ "step " ++ show n ++ ": " ++ show result
- step (n + 1)
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/4221.stdout b/testsuite/tests/ghc-regress/ffi/should_run/4221.stdout
deleted file mode 100644
index 237bd7fc81..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/4221.stdout
+++ /dev/null
@@ -1,1003 +0,0 @@
-start
-step 0.0: 0.0
-step 1.0: 1.0
-step 2.0: 2.0
-step 3.0: 3.0
-step 4.0: 4.0
-step 5.0: 5.0
-step 6.0: 6.0
-step 7.0: 7.0
-step 8.0: 8.0
-step 9.0: 9.0
-step 10.0: 10.0
-step 11.0: 11.0
-step 12.0: 12.0
-step 13.0: 13.0
-step 14.0: 14.0
-step 15.0: 15.0
-step 16.0: 16.0
-step 17.0: 17.0
-step 18.0: 18.0
-step 19.0: 19.0
-step 20.0: 20.0
-step 21.0: 21.0
-step 22.0: 22.0
-step 23.0: 23.0
-step 24.0: 24.0
-step 25.0: 25.0
-step 26.0: 26.0
-step 27.0: 27.0
-step 28.0: 28.0
-step 29.0: 29.0
-step 30.0: 30.0
-step 31.0: 31.0
-step 32.0: 32.0
-step 33.0: 33.0
-step 34.0: 34.0
-step 35.0: 35.0
-step 36.0: 36.0
-step 37.0: 37.0
-step 38.0: 38.0
-step 39.0: 39.0
-step 40.0: 40.0
-step 41.0: 41.0
-step 42.0: 42.0
-step 43.0: 43.0
-step 44.0: 44.0
-step 45.0: 45.0
-step 46.0: 46.0
-step 47.0: 47.0
-step 48.0: 48.0
-step 49.0: 49.0
-step 50.0: 50.0
-step 51.0: 51.0
-step 52.0: 52.0
-step 53.0: 53.0
-step 54.0: 54.0
-step 55.0: 55.0
-step 56.0: 56.0
-step 57.0: 57.0
-step 58.0: 58.0
-step 59.0: 59.0
-step 60.0: 60.0
-step 61.0: 61.0
-step 62.0: 62.0
-step 63.0: 63.0
-step 64.0: 64.0
-step 65.0: 65.0
-step 66.0: 66.0
-step 67.0: 67.0
-step 68.0: 68.0
-step 69.0: 69.0
-step 70.0: 70.0
-step 71.0: 71.0
-step 72.0: 72.0
-step 73.0: 73.0
-step 74.0: 74.0
-step 75.0: 75.0
-step 76.0: 76.0
-step 77.0: 77.0
-step 78.0: 78.0
-step 79.0: 79.0
-step 80.0: 80.0
-step 81.0: 81.0
-step 82.0: 82.0
-step 83.0: 83.0
-step 84.0: 84.0
-step 85.0: 85.0
-step 86.0: 86.0
-step 87.0: 87.0
-step 88.0: 88.0
-step 89.0: 89.0
-step 90.0: 90.0
-step 91.0: 91.0
-step 92.0: 92.0
-step 93.0: 93.0
-step 94.0: 94.0
-step 95.0: 95.0
-step 96.0: 96.0
-step 97.0: 97.0
-step 98.0: 98.0
-step 99.0: 99.0
-step 100.0: 100.0
-step 101.0: 101.0
-step 102.0: 102.0
-step 103.0: 103.0
-step 104.0: 104.0
-step 105.0: 105.0
-step 106.0: 106.0
-step 107.0: 107.0
-step 108.0: 108.0
-step 109.0: 109.0
-step 110.0: 110.0
-step 111.0: 111.0
-step 112.0: 112.0
-step 113.0: 113.0
-step 114.0: 114.0
-step 115.0: 115.0
-step 116.0: 116.0
-step 117.0: 117.0
-step 118.0: 118.0
-step 119.0: 119.0
-step 120.0: 120.0
-step 121.0: 121.0
-step 122.0: 122.0
-step 123.0: 123.0
-step 124.0: 124.0
-step 125.0: 125.0
-step 126.0: 126.0
-step 127.0: 127.0
-step 128.0: 128.0
-step 129.0: 129.0
-step 130.0: 130.0
-step 131.0: 131.0
-step 132.0: 132.0
-step 133.0: 133.0
-step 134.0: 134.0
-step 135.0: 135.0
-step 136.0: 136.0
-step 137.0: 137.0
-step 138.0: 138.0
-step 139.0: 139.0
-step 140.0: 140.0
-step 141.0: 141.0
-step 142.0: 142.0
-step 143.0: 143.0
-step 144.0: 144.0
-step 145.0: 145.0
-step 146.0: 146.0
-step 147.0: 147.0
-step 148.0: 148.0
-step 149.0: 149.0
-step 150.0: 150.0
-step 151.0: 151.0
-step 152.0: 152.0
-step 153.0: 153.0
-step 154.0: 154.0
-step 155.0: 155.0
-step 156.0: 156.0
-step 157.0: 157.0
-step 158.0: 158.0
-step 159.0: 159.0
-step 160.0: 160.0
-step 161.0: 161.0
-step 162.0: 162.0
-step 163.0: 163.0
-step 164.0: 164.0
-step 165.0: 165.0
-step 166.0: 166.0
-step 167.0: 167.0
-step 168.0: 168.0
-step 169.0: 169.0
-step 170.0: 170.0
-step 171.0: 171.0
-step 172.0: 172.0
-step 173.0: 173.0
-step 174.0: 174.0
-step 175.0: 175.0
-step 176.0: 176.0
-step 177.0: 177.0
-step 178.0: 178.0
-step 179.0: 179.0
-step 180.0: 180.0
-step 181.0: 181.0
-step 182.0: 182.0
-step 183.0: 183.0
-step 184.0: 184.0
-step 185.0: 185.0
-step 186.0: 186.0
-step 187.0: 187.0
-step 188.0: 188.0
-step 189.0: 189.0
-step 190.0: 190.0
-step 191.0: 191.0
-step 192.0: 192.0
-step 193.0: 193.0
-step 194.0: 194.0
-step 195.0: 195.0
-step 196.0: 196.0
-step 197.0: 197.0
-step 198.0: 198.0
-step 199.0: 199.0
-step 200.0: 200.0
-step 201.0: 201.0
-step 202.0: 202.0
-step 203.0: 203.0
-step 204.0: 204.0
-step 205.0: 205.0
-step 206.0: 206.0
-step 207.0: 207.0
-step 208.0: 208.0
-step 209.0: 209.0
-step 210.0: 210.0
-step 211.0: 211.0
-step 212.0: 212.0
-step 213.0: 213.0
-step 214.0: 214.0
-step 215.0: 215.0
-step 216.0: 216.0
-step 217.0: 217.0
-step 218.0: 218.0
-step 219.0: 219.0
-step 220.0: 220.0
-step 221.0: 221.0
-step 222.0: 222.0
-step 223.0: 223.0
-step 224.0: 224.0
-step 225.0: 225.0
-step 226.0: 226.0
-step 227.0: 227.0
-step 228.0: 228.0
-step 229.0: 229.0
-step 230.0: 230.0
-step 231.0: 231.0
-step 232.0: 232.0
-step 233.0: 233.0
-step 234.0: 234.0
-step 235.0: 235.0
-step 236.0: 236.0
-step 237.0: 237.0
-step 238.0: 238.0
-step 239.0: 239.0
-step 240.0: 240.0
-step 241.0: 241.0
-step 242.0: 242.0
-step 243.0: 243.0
-step 244.0: 244.0
-step 245.0: 245.0
-step 246.0: 246.0
-step 247.0: 247.0
-step 248.0: 248.0
-step 249.0: 249.0
-step 250.0: 250.0
-step 251.0: 251.0
-step 252.0: 252.0
-step 253.0: 253.0
-step 254.0: 254.0
-step 255.0: 255.0
-step 256.0: 256.0
-step 257.0: 257.0
-step 258.0: 258.0
-step 259.0: 259.0
-step 260.0: 260.0
-step 261.0: 261.0
-step 262.0: 262.0
-step 263.0: 263.0
-step 264.0: 264.0
-step 265.0: 265.0
-step 266.0: 266.0
-step 267.0: 267.0
-step 268.0: 268.0
-step 269.0: 269.0
-step 270.0: 270.0
-step 271.0: 271.0
-step 272.0: 272.0
-step 273.0: 273.0
-step 274.0: 274.0
-step 275.0: 275.0
-step 276.0: 276.0
-step 277.0: 277.0
-step 278.0: 278.0
-step 279.0: 279.0
-step 280.0: 280.0
-step 281.0: 281.0
-step 282.0: 282.0
-step 283.0: 283.0
-step 284.0: 284.0
-step 285.0: 285.0
-step 286.0: 286.0
-step 287.0: 287.0
-step 288.0: 288.0
-step 289.0: 289.0
-step 290.0: 290.0
-step 291.0: 291.0
-step 292.0: 292.0
-step 293.0: 293.0
-step 294.0: 294.0
-step 295.0: 295.0
-step 296.0: 296.0
-step 297.0: 297.0
-step 298.0: 298.0
-step 299.0: 299.0
-step 300.0: 300.0
-step 301.0: 301.0
-step 302.0: 302.0
-step 303.0: 303.0
-step 304.0: 304.0
-step 305.0: 305.0
-step 306.0: 306.0
-step 307.0: 307.0
-step 308.0: 308.0
-step 309.0: 309.0
-step 310.0: 310.0
-step 311.0: 311.0
-step 312.0: 312.0
-step 313.0: 313.0
-step 314.0: 314.0
-step 315.0: 315.0
-step 316.0: 316.0
-step 317.0: 317.0
-step 318.0: 318.0
-step 319.0: 319.0
-step 320.0: 320.0
-step 321.0: 321.0
-step 322.0: 322.0
-step 323.0: 323.0
-step 324.0: 324.0
-step 325.0: 325.0
-step 326.0: 326.0
-step 327.0: 327.0
-step 328.0: 328.0
-step 329.0: 329.0
-step 330.0: 330.0
-step 331.0: 331.0
-step 332.0: 332.0
-step 333.0: 333.0
-step 334.0: 334.0
-step 335.0: 335.0
-step 336.0: 336.0
-step 337.0: 337.0
-step 338.0: 338.0
-step 339.0: 339.0
-step 340.0: 340.0
-step 341.0: 341.0
-step 342.0: 342.0
-step 343.0: 343.0
-step 344.0: 344.0
-step 345.0: 345.0
-step 346.0: 346.0
-step 347.0: 347.0
-step 348.0: 348.0
-step 349.0: 349.0
-step 350.0: 350.0
-step 351.0: 351.0
-step 352.0: 352.0
-step 353.0: 353.0
-step 354.0: 354.0
-step 355.0: 355.0
-step 356.0: 356.0
-step 357.0: 357.0
-step 358.0: 358.0
-step 359.0: 359.0
-step 360.0: 360.0
-step 361.0: 361.0
-step 362.0: 362.0
-step 363.0: 363.0
-step 364.0: 364.0
-step 365.0: 365.0
-step 366.0: 366.0
-step 367.0: 367.0
-step 368.0: 368.0
-step 369.0: 369.0
-step 370.0: 370.0
-step 371.0: 371.0
-step 372.0: 372.0
-step 373.0: 373.0
-step 374.0: 374.0
-step 375.0: 375.0
-step 376.0: 376.0
-step 377.0: 377.0
-step 378.0: 378.0
-step 379.0: 379.0
-step 380.0: 380.0
-step 381.0: 381.0
-step 382.0: 382.0
-step 383.0: 383.0
-step 384.0: 384.0
-step 385.0: 385.0
-step 386.0: 386.0
-step 387.0: 387.0
-step 388.0: 388.0
-step 389.0: 389.0
-step 390.0: 390.0
-step 391.0: 391.0
-step 392.0: 392.0
-step 393.0: 393.0
-step 394.0: 394.0
-step 395.0: 395.0
-step 396.0: 396.0
-step 397.0: 397.0
-step 398.0: 398.0
-step 399.0: 399.0
-step 400.0: 400.0
-step 401.0: 401.0
-step 402.0: 402.0
-step 403.0: 403.0
-step 404.0: 404.0
-step 405.0: 405.0
-step 406.0: 406.0
-step 407.0: 407.0
-step 408.0: 408.0
-step 409.0: 409.0
-step 410.0: 410.0
-step 411.0: 411.0
-step 412.0: 412.0
-step 413.0: 413.0
-step 414.0: 414.0
-step 415.0: 415.0
-step 416.0: 416.0
-step 417.0: 417.0
-step 418.0: 418.0
-step 419.0: 419.0
-step 420.0: 420.0
-step 421.0: 421.0
-step 422.0: 422.0
-step 423.0: 423.0
-step 424.0: 424.0
-step 425.0: 425.0
-step 426.0: 426.0
-step 427.0: 427.0
-step 428.0: 428.0
-step 429.0: 429.0
-step 430.0: 430.0
-step 431.0: 431.0
-step 432.0: 432.0
-step 433.0: 433.0
-step 434.0: 434.0
-step 435.0: 435.0
-step 436.0: 436.0
-step 437.0: 437.0
-step 438.0: 438.0
-step 439.0: 439.0
-step 440.0: 440.0
-step 441.0: 441.0
-step 442.0: 442.0
-step 443.0: 443.0
-step 444.0: 444.0
-step 445.0: 445.0
-step 446.0: 446.0
-step 447.0: 447.0
-step 448.0: 448.0
-step 449.0: 449.0
-step 450.0: 450.0
-step 451.0: 451.0
-step 452.0: 452.0
-step 453.0: 453.0
-step 454.0: 454.0
-step 455.0: 455.0
-step 456.0: 456.0
-step 457.0: 457.0
-step 458.0: 458.0
-step 459.0: 459.0
-step 460.0: 460.0
-step 461.0: 461.0
-step 462.0: 462.0
-step 463.0: 463.0
-step 464.0: 464.0
-step 465.0: 465.0
-step 466.0: 466.0
-step 467.0: 467.0
-step 468.0: 468.0
-step 469.0: 469.0
-step 470.0: 470.0
-step 471.0: 471.0
-step 472.0: 472.0
-step 473.0: 473.0
-step 474.0: 474.0
-step 475.0: 475.0
-step 476.0: 476.0
-step 477.0: 477.0
-step 478.0: 478.0
-step 479.0: 479.0
-step 480.0: 480.0
-step 481.0: 481.0
-step 482.0: 482.0
-step 483.0: 483.0
-step 484.0: 484.0
-step 485.0: 485.0
-step 486.0: 486.0
-step 487.0: 487.0
-step 488.0: 488.0
-step 489.0: 489.0
-step 490.0: 490.0
-step 491.0: 491.0
-step 492.0: 492.0
-step 493.0: 493.0
-step 494.0: 494.0
-step 495.0: 495.0
-step 496.0: 496.0
-step 497.0: 497.0
-step 498.0: 498.0
-step 499.0: 499.0
-step 500.0: 500.0
-step 501.0: 501.0
-step 502.0: 502.0
-step 503.0: 503.0
-step 504.0: 504.0
-step 505.0: 505.0
-step 506.0: 506.0
-step 507.0: 507.0
-step 508.0: 508.0
-step 509.0: 509.0
-step 510.0: 510.0
-step 511.0: 511.0
-step 512.0: 512.0
-step 513.0: 513.0
-step 514.0: 514.0
-step 515.0: 515.0
-step 516.0: 516.0
-step 517.0: 517.0
-step 518.0: 518.0
-step 519.0: 519.0
-step 520.0: 520.0
-step 521.0: 521.0
-step 522.0: 522.0
-step 523.0: 523.0
-step 524.0: 524.0
-step 525.0: 525.0
-step 526.0: 526.0
-step 527.0: 527.0
-step 528.0: 528.0
-step 529.0: 529.0
-step 530.0: 530.0
-step 531.0: 531.0
-step 532.0: 532.0
-step 533.0: 533.0
-step 534.0: 534.0
-step 535.0: 535.0
-step 536.0: 536.0
-step 537.0: 537.0
-step 538.0: 538.0
-step 539.0: 539.0
-step 540.0: 540.0
-step 541.0: 541.0
-step 542.0: 542.0
-step 543.0: 543.0
-step 544.0: 544.0
-step 545.0: 545.0
-step 546.0: 546.0
-step 547.0: 547.0
-step 548.0: 548.0
-step 549.0: 549.0
-step 550.0: 550.0
-step 551.0: 551.0
-step 552.0: 552.0
-step 553.0: 553.0
-step 554.0: 554.0
-step 555.0: 555.0
-step 556.0: 556.0
-step 557.0: 557.0
-step 558.0: 558.0
-step 559.0: 559.0
-step 560.0: 560.0
-step 561.0: 561.0
-step 562.0: 562.0
-step 563.0: 563.0
-step 564.0: 564.0
-step 565.0: 565.0
-step 566.0: 566.0
-step 567.0: 567.0
-step 568.0: 568.0
-step 569.0: 569.0
-step 570.0: 570.0
-step 571.0: 571.0
-step 572.0: 572.0
-step 573.0: 573.0
-step 574.0: 574.0
-step 575.0: 575.0
-step 576.0: 576.0
-step 577.0: 577.0
-step 578.0: 578.0
-step 579.0: 579.0
-step 580.0: 580.0
-step 581.0: 581.0
-step 582.0: 582.0
-step 583.0: 583.0
-step 584.0: 584.0
-step 585.0: 585.0
-step 586.0: 586.0
-step 587.0: 587.0
-step 588.0: 588.0
-step 589.0: 589.0
-step 590.0: 590.0
-step 591.0: 591.0
-step 592.0: 592.0
-step 593.0: 593.0
-step 594.0: 594.0
-step 595.0: 595.0
-step 596.0: 596.0
-step 597.0: 597.0
-step 598.0: 598.0
-step 599.0: 599.0
-step 600.0: 600.0
-step 601.0: 601.0
-step 602.0: 602.0
-step 603.0: 603.0
-step 604.0: 604.0
-step 605.0: 605.0
-step 606.0: 606.0
-step 607.0: 607.0
-step 608.0: 608.0
-step 609.0: 609.0
-step 610.0: 610.0
-step 611.0: 611.0
-step 612.0: 612.0
-step 613.0: 613.0
-step 614.0: 614.0
-step 615.0: 615.0
-step 616.0: 616.0
-step 617.0: 617.0
-step 618.0: 618.0
-step 619.0: 619.0
-step 620.0: 620.0
-step 621.0: 621.0
-step 622.0: 622.0
-step 623.0: 623.0
-step 624.0: 624.0
-step 625.0: 625.0
-step 626.0: 626.0
-step 627.0: 627.0
-step 628.0: 628.0
-step 629.0: 629.0
-step 630.0: 630.0
-step 631.0: 631.0
-step 632.0: 632.0
-step 633.0: 633.0
-step 634.0: 634.0
-step 635.0: 635.0
-step 636.0: 636.0
-step 637.0: 637.0
-step 638.0: 638.0
-step 639.0: 639.0
-step 640.0: 640.0
-step 641.0: 641.0
-step 642.0: 642.0
-step 643.0: 643.0
-step 644.0: 644.0
-step 645.0: 645.0
-step 646.0: 646.0
-step 647.0: 647.0
-step 648.0: 648.0
-step 649.0: 649.0
-step 650.0: 650.0
-step 651.0: 651.0
-step 652.0: 652.0
-step 653.0: 653.0
-step 654.0: 654.0
-step 655.0: 655.0
-step 656.0: 656.0
-step 657.0: 657.0
-step 658.0: 658.0
-step 659.0: 659.0
-step 660.0: 660.0
-step 661.0: 661.0
-step 662.0: 662.0
-step 663.0: 663.0
-step 664.0: 664.0
-step 665.0: 665.0
-step 666.0: 666.0
-step 667.0: 667.0
-step 668.0: 668.0
-step 669.0: 669.0
-step 670.0: 670.0
-step 671.0: 671.0
-step 672.0: 672.0
-step 673.0: 673.0
-step 674.0: 674.0
-step 675.0: 675.0
-step 676.0: 676.0
-step 677.0: 677.0
-step 678.0: 678.0
-step 679.0: 679.0
-step 680.0: 680.0
-step 681.0: 681.0
-step 682.0: 682.0
-step 683.0: 683.0
-step 684.0: 684.0
-step 685.0: 685.0
-step 686.0: 686.0
-step 687.0: 687.0
-step 688.0: 688.0
-step 689.0: 689.0
-step 690.0: 690.0
-step 691.0: 691.0
-step 692.0: 692.0
-step 693.0: 693.0
-step 694.0: 694.0
-step 695.0: 695.0
-step 696.0: 696.0
-step 697.0: 697.0
-step 698.0: 698.0
-step 699.0: 699.0
-step 700.0: 700.0
-step 701.0: 701.0
-step 702.0: 702.0
-step 703.0: 703.0
-step 704.0: 704.0
-step 705.0: 705.0
-step 706.0: 706.0
-step 707.0: 707.0
-step 708.0: 708.0
-step 709.0: 709.0
-step 710.0: 710.0
-step 711.0: 711.0
-step 712.0: 712.0
-step 713.0: 713.0
-step 714.0: 714.0
-step 715.0: 715.0
-step 716.0: 716.0
-step 717.0: 717.0
-step 718.0: 718.0
-step 719.0: 719.0
-step 720.0: 720.0
-step 721.0: 721.0
-step 722.0: 722.0
-step 723.0: 723.0
-step 724.0: 724.0
-step 725.0: 725.0
-step 726.0: 726.0
-step 727.0: 727.0
-step 728.0: 728.0
-step 729.0: 729.0
-step 730.0: 730.0
-step 731.0: 731.0
-step 732.0: 732.0
-step 733.0: 733.0
-step 734.0: 734.0
-step 735.0: 735.0
-step 736.0: 736.0
-step 737.0: 737.0
-step 738.0: 738.0
-step 739.0: 739.0
-step 740.0: 740.0
-step 741.0: 741.0
-step 742.0: 742.0
-step 743.0: 743.0
-step 744.0: 744.0
-step 745.0: 745.0
-step 746.0: 746.0
-step 747.0: 747.0
-step 748.0: 748.0
-step 749.0: 749.0
-step 750.0: 750.0
-step 751.0: 751.0
-step 752.0: 752.0
-step 753.0: 753.0
-step 754.0: 754.0
-step 755.0: 755.0
-step 756.0: 756.0
-step 757.0: 757.0
-step 758.0: 758.0
-step 759.0: 759.0
-step 760.0: 760.0
-step 761.0: 761.0
-step 762.0: 762.0
-step 763.0: 763.0
-step 764.0: 764.0
-step 765.0: 765.0
-step 766.0: 766.0
-step 767.0: 767.0
-step 768.0: 768.0
-step 769.0: 769.0
-step 770.0: 770.0
-step 771.0: 771.0
-step 772.0: 772.0
-step 773.0: 773.0
-step 774.0: 774.0
-step 775.0: 775.0
-step 776.0: 776.0
-step 777.0: 777.0
-step 778.0: 778.0
-step 779.0: 779.0
-step 780.0: 780.0
-step 781.0: 781.0
-step 782.0: 782.0
-step 783.0: 783.0
-step 784.0: 784.0
-step 785.0: 785.0
-step 786.0: 786.0
-step 787.0: 787.0
-step 788.0: 788.0
-step 789.0: 789.0
-step 790.0: 790.0
-step 791.0: 791.0
-step 792.0: 792.0
-step 793.0: 793.0
-step 794.0: 794.0
-step 795.0: 795.0
-step 796.0: 796.0
-step 797.0: 797.0
-step 798.0: 798.0
-step 799.0: 799.0
-step 800.0: 800.0
-step 801.0: 801.0
-step 802.0: 802.0
-step 803.0: 803.0
-step 804.0: 804.0
-step 805.0: 805.0
-step 806.0: 806.0
-step 807.0: 807.0
-step 808.0: 808.0
-step 809.0: 809.0
-step 810.0: 810.0
-step 811.0: 811.0
-step 812.0: 812.0
-step 813.0: 813.0
-step 814.0: 814.0
-step 815.0: 815.0
-step 816.0: 816.0
-step 817.0: 817.0
-step 818.0: 818.0
-step 819.0: 819.0
-step 820.0: 820.0
-step 821.0: 821.0
-step 822.0: 822.0
-step 823.0: 823.0
-step 824.0: 824.0
-step 825.0: 825.0
-step 826.0: 826.0
-step 827.0: 827.0
-step 828.0: 828.0
-step 829.0: 829.0
-step 830.0: 830.0
-step 831.0: 831.0
-step 832.0: 832.0
-step 833.0: 833.0
-step 834.0: 834.0
-step 835.0: 835.0
-step 836.0: 836.0
-step 837.0: 837.0
-step 838.0: 838.0
-step 839.0: 839.0
-step 840.0: 840.0
-step 841.0: 841.0
-step 842.0: 842.0
-step 843.0: 843.0
-step 844.0: 844.0
-step 845.0: 845.0
-step 846.0: 846.0
-step 847.0: 847.0
-step 848.0: 848.0
-step 849.0: 849.0
-step 850.0: 850.0
-step 851.0: 851.0
-step 852.0: 852.0
-step 853.0: 853.0
-step 854.0: 854.0
-step 855.0: 855.0
-step 856.0: 856.0
-step 857.0: 857.0
-step 858.0: 858.0
-step 859.0: 859.0
-step 860.0: 860.0
-step 861.0: 861.0
-step 862.0: 862.0
-step 863.0: 863.0
-step 864.0: 864.0
-step 865.0: 865.0
-step 866.0: 866.0
-step 867.0: 867.0
-step 868.0: 868.0
-step 869.0: 869.0
-step 870.0: 870.0
-step 871.0: 871.0
-step 872.0: 872.0
-step 873.0: 873.0
-step 874.0: 874.0
-step 875.0: 875.0
-step 876.0: 876.0
-step 877.0: 877.0
-step 878.0: 878.0
-step 879.0: 879.0
-step 880.0: 880.0
-step 881.0: 881.0
-step 882.0: 882.0
-step 883.0: 883.0
-step 884.0: 884.0
-step 885.0: 885.0
-step 886.0: 886.0
-step 887.0: 887.0
-step 888.0: 888.0
-step 889.0: 889.0
-step 890.0: 890.0
-step 891.0: 891.0
-step 892.0: 892.0
-step 893.0: 893.0
-step 894.0: 894.0
-step 895.0: 895.0
-step 896.0: 896.0
-step 897.0: 897.0
-step 898.0: 898.0
-step 899.0: 899.0
-step 900.0: 900.0
-step 901.0: 901.0
-step 902.0: 902.0
-step 903.0: 903.0
-step 904.0: 904.0
-step 905.0: 905.0
-step 906.0: 906.0
-step 907.0: 907.0
-step 908.0: 908.0
-step 909.0: 909.0
-step 910.0: 910.0
-step 911.0: 911.0
-step 912.0: 912.0
-step 913.0: 913.0
-step 914.0: 914.0
-step 915.0: 915.0
-step 916.0: 916.0
-step 917.0: 917.0
-step 918.0: 918.0
-step 919.0: 919.0
-step 920.0: 920.0
-step 921.0: 921.0
-step 922.0: 922.0
-step 923.0: 923.0
-step 924.0: 924.0
-step 925.0: 925.0
-step 926.0: 926.0
-step 927.0: 927.0
-step 928.0: 928.0
-step 929.0: 929.0
-step 930.0: 930.0
-step 931.0: 931.0
-step 932.0: 932.0
-step 933.0: 933.0
-step 934.0: 934.0
-step 935.0: 935.0
-step 936.0: 936.0
-step 937.0: 937.0
-step 938.0: 938.0
-step 939.0: 939.0
-step 940.0: 940.0
-step 941.0: 941.0
-step 942.0: 942.0
-step 943.0: 943.0
-step 944.0: 944.0
-step 945.0: 945.0
-step 946.0: 946.0
-step 947.0: 947.0
-step 948.0: 948.0
-step 949.0: 949.0
-step 950.0: 950.0
-step 951.0: 951.0
-step 952.0: 952.0
-step 953.0: 953.0
-step 954.0: 954.0
-step 955.0: 955.0
-step 956.0: 956.0
-step 957.0: 957.0
-step 958.0: 958.0
-step 959.0: 959.0
-step 960.0: 960.0
-step 961.0: 961.0
-step 962.0: 962.0
-step 963.0: 963.0
-step 964.0: 964.0
-step 965.0: 965.0
-step 966.0: 966.0
-step 967.0: 967.0
-step 968.0: 968.0
-step 969.0: 969.0
-step 970.0: 970.0
-step 971.0: 971.0
-step 972.0: 972.0
-step 973.0: 973.0
-step 974.0: 974.0
-step 975.0: 975.0
-step 976.0: 976.0
-step 977.0: 977.0
-step 978.0: 978.0
-step 979.0: 979.0
-step 980.0: 980.0
-step 981.0: 981.0
-step 982.0: 982.0
-step 983.0: 983.0
-step 984.0: 984.0
-step 985.0: 985.0
-step 986.0: 986.0
-step 987.0: 987.0
-step 988.0: 988.0
-step 989.0: 989.0
-step 990.0: 990.0
-step 991.0: 991.0
-step 992.0: 992.0
-step 993.0: 993.0
-step 994.0: 994.0
-step 995.0: 995.0
-step 996.0: 996.0
-step 997.0: 997.0
-step 998.0: 998.0
-step 999.0: 999.0
-step 1000.0: 1000.0
-done
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/4221_c.c b/testsuite/tests/ghc-regress/ffi/should_run/4221_c.c
deleted file mode 100644
index 0c5ca228c1..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/4221_c.c
+++ /dev/null
@@ -1,26 +0,0 @@
-#include<stdio.h>
-#include<stdlib.h>
-
-typedef double (*hs_function_ptr)(double);
-
-typedef struct {
- hs_function_ptr fn;
- void (*free_fn)(hs_function_ptr);
-} fn_blob;
-
-fn_blob* create_fn_blob(hs_function_ptr fn, void (*free_fn)(hs_function_ptr)) {
- fn_blob* new_blob = malloc(sizeof(fn_blob));
- new_blob->fn = fn;
- new_blob->free_fn = free_fn;
- return new_blob;
-}
-
-double call_fn_blob(fn_blob* fn_blob, double arg) {
- return(fn_blob->fn(arg));
-}
-
-void free_fn_blob(fn_blob* dead_blob) {
- dead_blob->free_fn(dead_blob->fn);
- free(dead_blob);
-}
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/Makefile b/testsuite/tests/ghc-regress/ffi/should_run/Makefile
deleted file mode 100644
index 238e751be6..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/Makefile
+++ /dev/null
@@ -1,15 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-ffi018_ghci_setup :
- '$(TEST_HC)' $(TEST_HC_OPTS) -c ffi018_ghci_c.c
-
-1288_ghci_setup :
- '$(TEST_HC)' $(TEST_HC_OPTS) -c 1288_ghci_c.c
-
-2276_ghci_setup :
- '$(TEST_HC)' $(TEST_HC_OPTS) -c 2276_ghci_c.c
-
-ffi002_setup :
- '$(TEST_HC)' $(TEST_HC_OPTS) -c ffi002.hs
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/all.T b/testsuite/tests/ghc-regress/ffi/should_run/all.T
deleted file mode 100644
index 434397d065..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/all.T
+++ /dev/null
@@ -1,167 +0,0 @@
-
-# Args to compile_and_run are:
-# extra compile flags
-# extra run flags
-# expected process return value, if not zero
-
-# Doesn't work with External Core due to __labels
-test('fed001', compose(only_compiler_types(['ghc']),
- expect_fail_for(['extcore','optextcore'])),
- compile_and_run, [''])
-
-# Omit GHCi for these two, as they use foreign export
-test('ffi001', omit_ways(['ghci']), compile_and_run, [''])
-test('ffi002', [ omit_ways(['ghci']),
- extra_clean(['ffi002_c.o']),
- compile_cmd_prefix('$MAKE ffi002_setup && ') ],
- # The ffi002_setup hack is to ensure that we generate
- # ffi002_stub.h before compiling ffi002_c.c, which
- # needs it.
- compile_and_run, ['ffi002_c.c -no-hs-main'])
-
-test('ffi003', normal, compile_and_run, [''])
-
-# ffi004 calls printf, which is not supported (the FFI spec says that
-# calling varargs functions is deprecated). It stopped working in GHC 6.9.
-test('ffi004', skip, compile_and_run, [''])
-
-# omit prof ways, because this test exits before the RTS has a chance to
-# generate profiling info.
-#
-# On x86, the test suffers from floating-point differences due to the
-# use of 80-bit internal precision when using the native code generator.
-#
-test('ffi005', [ omit_ways(prof_ways),
- if_arch('i386', skip),
- if_platform('i386-apple-darwin', expect_broken(4105)),
- exit_code(3) ],
- compile_and_run, [''])
-
-# ffi[006-009] don't work with External Core due to non-static-C foreign calls
-
-test('ffi006', expect_fail_for(['extcore','optextcore']), compile_and_run, [''])
-
-# Skip ffi00{7,8} for GHCi. These tests both try to exit or raise an
-# error from a foreign export, which shuts down the runtime. When
-# GHCi is running, this results in GHCi's main thread also trying to
-# shut down, and a race ensues to see who gets to call exit() first.
-# Sometimes we end up with the wrong exit code, or get an extra
-# 'interrupted' message from the GHCi thread shutting down.
-
-test('ffi007', compose( omit_ways(['ghci']),
- expect_fail_for(['extcore','optextcore']) ),
- compile_and_run, [''])
-
-test('ffi008', compose(expect_fail_for(['extcore','optextcore']),
- compose(exit_code(1),
- omit_ways(['ghci']))),
- compile_and_run, [''])
-
-# On i386, we need -msse2 to get reliable floating point results
-maybe_skip = normal
-opts = ''
-if config.platform.startswith('i386-'):
- if config.compiler_type == 'ghc' and \
- version_ge(config.compiler_version, '6.13'):
- opts = '-msse2'
- else:
- maybe_skip = only_ways(['ghci'])
-
-test('ffi009', [skip_if_fast, expect_fail_for(['extcore','optextcore']),
- maybe_skip] ,compile_and_run, [opts])
-
-# Doesn't work with External Core due to __labels
-test('ffi010', expect_fail_for(['extcore','optextcore']), compile_and_run, [''])
-
-test('ffi011', normal, compile_and_run, [''])
-
-# The stdcall calling convention works on Windows, and sometimes on
-# Linux, and fails everywhhere else. For now, we test only on Windows,
-# because it's difficult to discover whether a given Linux supports
-# it.
-
-if config.platform == 'i386-unknown-mingw32':
- skip_if_not_windows = normal
-else:
- skip_if_not_windows = skip
-
-test('ffi012', skip_if_not_windows, compile_and_run, [''])
-
-# Doesn't work with External Core due to __labels
-test('ffi013', expect_fail_for(['extcore','optextcore']), compile_and_run, [''])
-
-# threaded2 sometimes gives ffi014: Main_dDu: interrupted
-test('ffi014', only_ways(['threaded1','threaded2']), compile_and_run, ['ffi014_cbits.c'])
-
-# GHCi can't handle the separate C file (ToDo: fix this somehow)
-test('ffi015', [ omit_ways(['ghci']), extra_clean(['ffi015_cbits.o']) ],
- compile_and_run, ['ffi015_cbits.c'])
-
-# GHCi can't handle foreign import "&"
-test('ffi016', omit_ways(['ghci']), compile_and_run, [''])
-
-test('ffi017', normal, compile_and_run, [''])
-
-test('ffi018', [ omit_ways(['ghci']), extra_clean(['ffi018_c.o']) ],
- compile_and_run, ['ffi018_c.c'])
-
-test('ffi018_ghci', [ only_ways(['ghci']),
- cmd_prefix('$MAKE ffi018_ghci_setup && '),
- extra_clean(['ffi018_ghci_c.o']) ],
- compile_and_run, ['ffi018_ghci_c.o'])
-
-test('ffi019', normal, compile_and_run, [''])
-
-# This one originally failed only GHCi, but doesn't hurt to test all ways.
-test('1679', normal, compile_and_run, [''])
-
-test('1288', [ omit_ways(['ghci']),
- extra_clean(['1288_c.o']) ],
- compile_and_run, ['1288_c.c'])
-test('1288_ghci', [ only_ways(['ghci']),
- cmd_prefix('$MAKE --no-print-directory 1288_ghci_setup && '),
- extra_clean(['1288_ghci_c.o']) ],
- compile_and_run, ['1288_ghci_c.o'])
-
-test('2276', [ omit_ways(['ghci']),
- extra_clean(['2276_c.o']) ],
- compile_and_run, ['2276_c.c'])
-test('2276_ghci', [ only_ways(['ghci']),
- cmd_prefix('$MAKE --no-print-directory 2276_ghci_setup && '),
- extra_clean(['2276_ghci_c.o']) ],
- compile_and_run, ['-fobject-code 2276_ghci_c.o'])
-
-test('2469', normal, compile_and_run, ['-optc-std=gnu99'])
-
-test('2594', omit_ways(['ghci']), compile_and_run, ['2594_c.c'])
-
-test('fptr01', [ omit_ways(['ghci']), extra_clean(['fptr01_c.o']) ],
- compile_and_run, ['fptr01_c.c'])
-test('fptr02', normal, compile_and_run, [''])
-
-test('fptrfail01', [ compose(omit_ways(['ghci']), exit_code(1)),
- extra_clean(['fptrfail01_c.o']) ],
- compile_and_run, ['fptrfail01_c.c'])
-
-test('2917a', normal, compile_and_run, [''])
-
-# omit prof ways, because this test causes the RTS to exit (correctly)
-# without generating profiling information.
-test('ffi020', [ omit_ways(prof_ways),
- exit_code(1) ], compile_and_run, [''])
-
-
-test('ffi021', normal, compile_and_run, [''])
-
-test('ffi022', normal, compile_and_run, [''])
-
-if config.platform == 'i386-unknown-mingw32':
- # This test needs a larger C stack than we get by default on Windows
- flagsFor4038 = ['-optl-Wl,--stack,10485760']
-else:
- flagsFor4038 = ['']
-test('4038', normal, compile_and_run, flagsFor4038)
-
-test('4221', [ omit_ways(['ghci']), extra_clean(['4221_c.o']) ],
- compile_and_run, ['4221_c.c'])
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/fed001.hs b/testsuite/tests/ghc-regress/ffi/should_run/fed001.hs
deleted file mode 100644
index a832c58ac4..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/fed001.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-import Control.Monad
-import Foreign
-import Foreign.Ptr
-
-type CInt = Int32
-type CSize = Word32
-
-foreign import ccall "wrapper"
- mkComparator :: (Ptr Int -> Ptr Int -> IO CInt)
- -> IO (Ptr (Ptr Int -> Ptr Int -> IO CInt))
-
-foreign import ccall
- qsort :: Ptr Int -> CSize -> CSize -> Ptr (Ptr Int -> Ptr Int -> IO CInt)
- -> IO ()
-
-compareInts :: Ptr Int -> Ptr Int -> IO CInt
-compareInts a1 a2 = do
- i1 <- peek a1
- i2 <- peek a2
- return (fromIntegral (i1 - i2 :: Int))
-
-main :: IO ()
-main = do
- let values = [ 12, 56, 90, 34, 78 ] :: [Int]
- n = length values
- buf <- mallocArray n
- zipWithM_ (pokeElemOff buf) [ 0 .. ] values
- c <- mkComparator compareInts
- qsort buf (fromIntegral n) (fromIntegral (sizeOf (head values))) c
- mapM (peekElemOff buf) [ 0 .. n-1 ] >>= (print :: [Int] -> IO ())
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/fed001.stdout b/testsuite/tests/ghc-regress/ffi/should_run/fed001.stdout
deleted file mode 100644
index fb5139007e..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/fed001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[12,34,56,78,90]
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi001.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi001.hs
deleted file mode 100644
index 864b0bda45..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi001.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
--- !!! A simple FFI test
-
--- This one provoked a bogus renamer error in 4.08.1:
--- panic: tcLookupGlobalValue: <THIS>.PrelIOBase.returnIO{-0B,s-}
--- (the error was actually in DsMonad.dsLookupGlobalValue!)
-
-module Main where
-
-import Foreign
-
-foreign export ccall "gccd" mygcd :: Int -> Int -> Int
-
-main = putStrLn "No bug"
-
-mygcd a b = if (a==b) then a
- else if (a<b) then mygcd a (b-a)
- else mygcd (a-b) a
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi001.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi001.stdout
deleted file mode 100644
index 695e5e77f1..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-No bug
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi002.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi002.hs
deleted file mode 100644
index 0186f32700..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi002.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module Foo where
-
-foreign export ccall foo :: Int -> IO Int
-
-foo :: Int -> IO Int
-foo n = return (length (f n))
-
-f :: Int -> [Int]
-f 0 = []
-f n = n:(f (n-1))
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi002.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi002.stdout
deleted file mode 100644
index 01ef0d9f4d..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi002.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-2500
-2500
-2500
-2500
-2500
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi002_c.c b/testsuite/tests/ghc-regress/ffi/should_run/ffi002_c.c
deleted file mode 100644
index 1e5edd2424..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi002_c.c
+++ /dev/null
@@ -1,21 +0,0 @@
-#include <stdio.h>
-#include "ffi002_stub.h"
-
-#include "RtsAPI.h"
-
-extern void __stginit_Foo ( void );
-
-int main(int argc, char *argv[])
-{
- int i;
-
- startupHaskell(argc, argv, __stginit_Foo);
-
- for (i = 0; i < 5; i++) {
- printf("%d\n", foo(2500));
- }
-
- shutdownHaskell();
-
- return 0;
-}
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi003.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi003.hs
deleted file mode 100644
index bc291960ec..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi003.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! Test passing doubles to a ccall
-
-import Foreign.C
-
-foreign import ccall unsafe "math.h sin"
- c_sin :: CDouble -> IO CDouble
-
-main = c_sin 1.0 >>= print
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi003.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi003.stdout
deleted file mode 100644
index e83a344363..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi003.stdout
+++ /dev/null
@@ -1 +0,0 @@
-0.8414709848078965
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi004.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi004.hs
deleted file mode 100644
index 546cd15068..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi004.hs
+++ /dev/null
@@ -1,22 +0,0 @@
--- !!! Test ccalls with large numbers of arguments
-
--- In 0.19, we lost the ability to do ccalls with more than 6 arguments
--- on the Sparc. Just to make sure it never happens again...
-
-import Foreign.C
-
-main =
- withCString "Testing %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d %d\n" $ \cstr ->
- printf cstr
- 0 1 2 3 4 5 6 7 8 9
- 10 11 12 13 14 15 16 17 18 19
- 20 21 22 23 24 25 26 27 28 29
- 30 31 32 33 34 35 36 37 38 39
-
-foreign import ccall unsafe
- printf :: CString
- -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int
- -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int
- -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int
- -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int
- -> IO ()
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi004.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi004.stdout
deleted file mode 100644
index 8cee3bfbb1..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi004.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Testing 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi005.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi005.hs
deleted file mode 100644
index 63de9558f9..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi005.hs
+++ /dev/null
@@ -1,111 +0,0 @@
--- !!! test for foreign import dynamic/wrapper, orignally by Alastair Reid,
--- with a few changes to get it to run on GHC by Simon Marlow.
-
-import Foreign hiding ( unsafePerformIO )
-import Foreign.C
-import Control.Exception
-import System.IO.Unsafe
-import Prelude hiding (read)
-import System.IO (hFlush, stdout)
-
-main = do
-
- putStrLn "\nTesting sin==mysin (should return lots of Trues)"
- print (testSin sin mysin)
-
--- disabled because errno is not necessarily a label these days
-
--- putStrLn "\nTesting errno"
--- err <- peek errno
--- putStrLn $ "errno == " ++ show err
-
- putStrLn "\nTesting puts (and withString)"
- withCString "Test successful" puts
-
- putStrLn "\nTesting peekArray0"
- s <- withCString "Test successful" (peekArray0 (castCharToCChar '\0'))
- putStr (map castCCharToChar s)
-
--- disabled due to use of non-portable constants in arguments to open:
-
--- putStrLn "\nTesting open, read and close"
--- s <- testRead "ffi005.hs" 200
--- putStrLn (map castCCharToChar s)
-
--- putStrLn "\nTesting open, write and close"
--- testWrite "/tmp/test_write" "Test successful"
-
- putStrLn "\nTesting sin==dynamic_sin (should return lots of Trues)"
- print (testSin sin (dyn_sin sin_addr))
-
- putStrLn "\nTesting sin==IO wrapped_sin (should return lots of Trues)"
- sin_addr2 <- wrapIO (return . sin)
- print (testSin sin (unsafePerformIO . (dyn_sinIO sin_addr2)))
- freeHaskellFunPtr sin_addr2
-
- putStrLn "\nTesting sin==Id wrapped_sin (should return lots of Trues)"
- sin_addr3 <- wrapId sin
- print (testSin sin (dyn_sin sin_addr3))
- freeHaskellFunPtr sin_addr3
-
- putStrLn "\nTesting exit"
- hFlush stdout
- exit 3
-
-testSin f g = [ (f x == g x) | x <- [0,0.01 .. 1] ]
-
-foreign import ccall "sin" mysin :: CDouble -> CDouble
-foreign import ccall "dynamic" dyn_sin :: FunPtr (CDouble -> CDouble) -> (CDouble -> CDouble)
-foreign import ccall "dynamic" dyn_sinIO :: FunPtr (CDouble -> IO CDouble) -> (CDouble -> IO CDouble)
-foreign import ccall "&sin" sin_addr :: FunPtr (CDouble -> CDouble)
-foreign import ccall "wrapper" wrapId :: (CDouble -> CDouble) -> IO (FunPtr (CDouble -> CDouble))
-foreign import ccall "wrapper" wrapIO :: (CDouble -> IO CDouble) -> IO (FunPtr (CDouble -> IO CDouble))
-
--- foreign import ccall safe "static stdlib.h &errno" errno :: Ptr CInt
-
-withBuffer sz m = do
- b <- mallocArray sz
- sz' <- m b
- s <- peekArray sz' b
- free b
- return s
-
-foreign import ccall puts :: CString -> IO CInt
-
--- foreign import ccall "open" open' :: CString -> CInt -> IO CInt
--- foreign import ccall "open" open2' :: CString -> CInt -> CInt -> IO CInt
--- foreign import ccall "creat" creat' :: CString -> CInt -> IO CInt
--- foreign import ccall close :: CInt -> IO CInt
--- foreign import ccall "read" read' :: CInt -> CString -> CInt -> IO CInt
--- foreign import ccall "write" write' :: CInt -> CString -> CInt -> IO CInt
-
--- creat s m = withCString s $ \s' -> unix "creat" $ creat' s' m
--- open s m = withCString s $ \s' -> unix "open" $ open' s' m
--- open2 s m n = withCString s $ \s' -> unix "open2" $ open2' s' m n
--- write fd s = withCString s $ \s' -> unix "write" $ write' fd s' (fromIntegral (length s))
--- read fd sz = withBuffer sz $ \s' -> unix "read" $ read' fd s' (fromIntegral sz)
-
--- unix s m = do
--- x <- m
--- if x < 0
--- then do
--- err <- peek errno
--- ioError $ userError $ s ++ ": " ++ show (x,err)
--- else return (fromIntegral x)
-
--- testRead fn sz = bracket (open fn 0) close (flip read sz)
--- testWrite fn s = bracket (open2 fn (512+64+1) 511) close (flip write s)
-
-foreign import ccall exit :: Int -> IO ()
-
--- Various bits of rubbish.
--- foreign import ccall "static stdlib.h exit" (***) :: CString -> CString -> IO Int
---
--- foreign import ccall safe "static stdlib.h printf" (+++) :: CString -> CString -> IO Int
--- foreign import ccall safe "static stdlib.h &errno" illegal_foo :: Ptr Int
---
--- foreign import ccall safe "wrapper" illegal_bar :: Char -> IO (FunCString)
--- foreign import ccall safe "dynamic" illegal_baz :: FunCString -> Char
-
--- foreign export ccall "id_charstar" id :: CString -> CString
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi005.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi005.stdout
deleted file mode 100644
index bc0a137514..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi005.stdout
+++ /dev/null
@@ -1,19 +0,0 @@
-
-Testing sin==mysin (should return lots of Trues)
-[True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True]
-
-Testing puts (and withString)
-
-Testing peekArray0
-Test successful
-Testing sin==dynamic_sin (should return lots of Trues)
-[True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True]
-
-Testing sin==IO wrapped_sin (should return lots of Trues)
-[True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True]
-
-Testing sin==Id wrapped_sin (should return lots of Trues)
-[True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True]
-
-Testing exit
-Test successful
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi006.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi006.hs
deleted file mode 100644
index 20328e1e9f..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi006.hs
+++ /dev/null
@@ -1,27 +0,0 @@
--- !!! Test that we can call a foreign import "wrapper" using foreign
--- import "dynamic", in both IO and non-IO flavours.
-
-import Foreign
-import Foreign.C
-
-type IOF = Int -> IO Int
-type F = Int -> Int
-
-foreign import ccall "wrapper" wrap_f :: F -> IO (FunPtr F)
-foreign import ccall "wrapper" wrap_f_io :: IOF -> IO (FunPtr IOF)
-
-foreign import ccall "dynamic" f :: FunPtr F -> F
-foreign import ccall "dynamic" f_io :: FunPtr IOF -> IOF
-
-double :: Int -> Int
-double x = x * 2
-
-double_io :: Int -> IO Int
-double_io x = return (x * 2)
-
-main = do
- double1 <- wrap_f double
- print (f double1 42)
- double2 <- wrap_f_io double_io
- x <- f_io double2 42
- print x
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi006.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi006.stdout
deleted file mode 100644
index fece85f608..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi006.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-84
-84
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi007.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi007.hs
deleted file mode 100644
index 506ec57cd3..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi007.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !!! Test System.Exit.exitWith called from a foreign import "wrapper"
-
-import Foreign
-import Foreign.C
-
-import System.Exit
-
-type IOF = IO ()
-foreign import ccall "wrapper" wrap_f_io :: IOF -> IO (FunPtr IOF)
-foreign import ccall "dynamic" call_io :: FunPtr IOF -> IOF
-
-exit = do putStrLn "exiting..."; exitWith ExitSuccess
-
-main = do f <- wrap_f_io exit; call_io f
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi007.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi007.stdout
deleted file mode 100644
index 1ca228cda4..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi007.stdout
+++ /dev/null
@@ -1 +0,0 @@
-exiting...
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi008.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi008.hs
deleted file mode 100644
index f065e49855..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi008.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !!! Test exceptions in a foreign import "wrapper"
-
-import Foreign
-import Foreign.C
-
-import System.Exit
-
-type IOF = IO ()
-foreign import ccall "wrapper" wrap_f_io :: IOF -> IO (FunPtr IOF)
-foreign import ccall "dynamic" call_io :: FunPtr IOF -> IOF
-
-mk_error = error "this is an error"
-
-main = do f <- wrap_f_io mk_error; call_io f
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi008.stderr b/testsuite/tests/ghc-regress/ffi/should_run/ffi008.stderr
deleted file mode 100644
index cc538ee68c..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi008.stderr
+++ /dev/null
@@ -1 +0,0 @@
-ffi008: this is an error
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi009.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi009.hs
deleted file mode 100644
index 5e91843bb5..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi009.hs
+++ /dev/null
@@ -1,552 +0,0 @@
-import Foreign
-import System.Random
-
---------------------------------------------------------------------------------
-
-type FunType5I = Int -> Int -> Int -> Int -> Int -> Int
-
-foreign import ccall "dynamic" callFun5I :: FunPtr FunType5I -> FunType5I
-foreign import ccall "wrapper" mkFun5I :: FunType5I -> IO (FunPtr FunType5I)
-
-manyArgs5I :: FunType5I
-manyArgs5I a1 a2 a3 a4 a5 = (((a1 * 31 + a2) * 31 + a3) * 31 + a4) * 31 + a5
-
-test5I :: IO ()
-test5I = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- funAddr <- mkFun5I manyArgs5I
- print (callFun5I funAddr a1 a2 a3 a4 a5 ==
- manyArgs5I a1 a2 a3 a4 a5)
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-type FunType11D = Double -> Double -> Double -> Double -> Double -> Double
- -> Double -> Double -> Double -> Double -> Double -> Double
-
-foreign import ccall "dynamic" callFun11D :: FunPtr FunType11D -> FunType11D
-foreign import ccall "wrapper" mkFun11D :: FunType11D -> IO (FunPtr FunType11D)
-
-manyArgs11D :: FunType11D
-manyArgs11D a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 =
- ((((a1 * 31 + a2) * 31 + a3) * 31 + a4) * 31 + a5) * 31 + a6
- + a7 + a8 + a9 + a10 + a11
-
-test11D :: IO ()
-test11D = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- a6 <- randomIO
- a7 <- randomIO
- a8 <- randomIO
- a9 <- randomIO
- a10 <- randomIO
- a11 <- randomIO
- funAddr <- mkFun11D manyArgs11D
- let x = callFun11D funAddr a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11
- y = manyArgs11D a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11
- if x /= y then
- print x >> print y
- else
- print True
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-type FunType11M = Int -> Double -> Float -> Char -> Bool -> Int -> Float -> Int
- -> Char -> Double -> Bool -> Double
-
-foreign import ccall "dynamic" callFun11M :: FunPtr FunType11M -> FunType11M
-foreign import ccall "wrapper" mkFun11M :: FunType11M -> IO (FunPtr FunType11M)
-
-manyArgs11M :: FunType11M
-manyArgs11M a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 =
- (((((((((fromIntegral a1 * 31 + a2) * 31 +
- realToFrac a3) * 31 + fromIntegral (fromEnum a4)) * 31 +
- fromIntegral (fromEnum a5)) * 31 + fromIntegral a6) * 31 +
- realToFrac a7) * 31 + fromIntegral a8) * 31 +
- fromIntegral (fromEnum a9)) * 31 + a10) * 31 +
- fromIntegral (fromEnum a11)
-
-test11M :: IO ()
-test11M = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- a6 <- randomIO
- a7 <- randomIO
- a8 <- randomIO
- a9 <- randomIO
- a10 <- randomIO
- a11 <- randomIO
- funAddr <- mkFun11M manyArgs11M
- print (callFun11M funAddr a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 ==
- manyArgs11M a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11)
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-type FunTypeM1 = Double -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int
- -> Int -> Int -> Int -> Double
-
-foreign import ccall "dynamic" callFunM1 :: FunPtr FunTypeM1 -> FunTypeM1
-foreign import ccall "wrapper" mkFunM1 :: FunTypeM1 -> IO (FunPtr FunTypeM1)
-
-manyArgsM1 :: FunTypeM1
-manyArgsM1 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 =
- (((((((((( a1 * 31 + fromIntegral a2) * 31 +
- fromIntegral a3) * 31 + fromIntegral a4) * 31 +
- fromIntegral a5) * 31 + fromIntegral a6) * 31 +
- fromIntegral a7) * 31 + fromIntegral a8) * 31 +
- fromIntegral a9) * 31 + fromIntegral a10) * 31 +
- fromIntegral a11) * 31 + fromIntegral a12
-
-testM1 :: IO ()
-testM1 = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- a6 <- randomIO
- a7 <- randomIO
- a8 <- randomIO
- a9 <- randomIO
- a10 <- randomIO
- a11 <- randomIO
- a12 <- randomIO
- funAddr <- mkFunM1 manyArgsM1
- print (callFunM1 funAddr a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 ==
- manyArgsM1 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12)
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-type FunTypeM2 = Int -> Double -> Int -> Int -> Int -> Int -> Int -> Int -> Int
- -> Int -> Int -> Int -> Double
-
-foreign import ccall "dynamic" callFunM2 :: FunPtr FunTypeM2 -> FunTypeM2
-foreign import ccall "wrapper" mkFunM2 :: FunTypeM2 -> IO (FunPtr FunTypeM2)
-
-manyArgsM2 :: FunTypeM2
-manyArgsM2 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 =
- ((((((((((fromIntegral a1 * 31 + a2) * 31 +
- fromIntegral a3) * 31 + fromIntegral a4) * 31 +
- fromIntegral a5) * 31 + fromIntegral a6) * 31 +
- fromIntegral a7) * 31 + fromIntegral a8) * 31 +
- fromIntegral a9) * 31 + fromIntegral a10) * 31 +
- fromIntegral a11) * 31 + fromIntegral a12
-
-testM2 :: IO ()
-testM2 = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- a6 <- randomIO
- a7 <- randomIO
- a8 <- randomIO
- a9 <- randomIO
- a10 <- randomIO
- a11 <- randomIO
- a12 <- randomIO
- funAddr <- mkFunM2 manyArgsM2
- print (callFunM2 funAddr a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 ==
- manyArgsM2 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12)
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-type FunTypeM3 = Int -> Int -> Double -> Int -> Int -> Int -> Int -> Int -> Int
- -> Int -> Int -> Int -> Double
-
-foreign import ccall "dynamic" callFunM3 :: FunPtr FunTypeM3 -> FunTypeM3
-foreign import ccall "wrapper" mkFunM3 :: FunTypeM3 -> IO (FunPtr FunTypeM3)
-
-manyArgsM3 :: FunTypeM3
-manyArgsM3 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 =
- ((((((((((fromIntegral a1 * 31 + fromIntegral a2) * 31 +
- a3) * 31 + fromIntegral a4) * 31 +
- fromIntegral a5) * 31 + fromIntegral a6) * 31 +
- fromIntegral a7) * 31 + fromIntegral a8) * 31 +
- fromIntegral a9) * 31 + fromIntegral a10) * 31 +
- fromIntegral a11) * 31 + fromIntegral a12
-
-testM3 :: IO ()
-testM3 = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- a6 <- randomIO
- a7 <- randomIO
- a8 <- randomIO
- a9 <- randomIO
- a10 <- randomIO
- a11 <- randomIO
- a12 <- randomIO
- funAddr <- mkFunM3 manyArgsM3
- print (callFunM3 funAddr a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 ==
- manyArgsM3 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12)
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-type FunTypeM4 = Int -> Int -> Int -> Double -> Int -> Int -> Int -> Int -> Int
- -> Int -> Int -> Int -> Double
-
-foreign import ccall "dynamic" callFunM4 :: FunPtr FunTypeM4 -> FunTypeM4
-foreign import ccall "wrapper" mkFunM4 :: FunTypeM4 -> IO (FunPtr FunTypeM4)
-
-manyArgsM4 :: FunTypeM4
-manyArgsM4 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 =
- ((((((((((fromIntegral a1 * 31 + fromIntegral a2) * 31 +
- fromIntegral a3) * 31 + a4) * 31 +
- fromIntegral a5) * 31 + fromIntegral a6) * 31 +
- fromIntegral a7) * 31 + fromIntegral a8) * 31 +
- fromIntegral a9) * 31 + fromIntegral a10) * 31 +
- fromIntegral a11) * 31 + fromIntegral a12
-
-testM4 :: IO ()
-testM4 = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- a6 <- randomIO
- a7 <- randomIO
- a8 <- randomIO
- a9 <- randomIO
- a10 <- randomIO
- a11 <- randomIO
- a12 <- randomIO
- funAddr <- mkFunM4 manyArgsM4
- print (callFunM4 funAddr a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 ==
- manyArgsM4 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12)
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-type FunTypeM5 = Int -> Int -> Int -> Int -> Double -> Int -> Int -> Int -> Int
- -> Int -> Int -> Int -> Double
-
-foreign import ccall "dynamic" callFunM5 :: FunPtr FunTypeM5 -> FunTypeM5
-foreign import ccall "wrapper" mkFunM5 :: FunTypeM5 -> IO (FunPtr FunTypeM5)
-
-manyArgsM5 :: FunTypeM5
-manyArgsM5 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 =
- ((((((((((fromIntegral a1 * 31 + fromIntegral a2) * 31 +
- fromIntegral a3) * 31 + fromIntegral a4) * 31 +
- a5) * 31 + fromIntegral a6) * 31 +
- fromIntegral a7) * 31 + fromIntegral a8) * 31 +
- fromIntegral a9) * 31 + fromIntegral a10) * 31 +
- fromIntegral a11) * 31 + fromIntegral a12
-
-testM5 :: IO ()
-testM5 = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- a6 <- randomIO
- a7 <- randomIO
- a8 <- randomIO
- a9 <- randomIO
- a10 <- randomIO
- a11 <- randomIO
- a12 <- randomIO
- funAddr <- mkFunM5 manyArgsM5
- print (callFunM5 funAddr a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 ==
- manyArgsM5 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12)
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-type FunTypeM6 = Int -> Int -> Int -> Int -> Int -> Double -> Int -> Int -> Int
- -> Int -> Int -> Int -> Double
-
-foreign import ccall "dynamic" callFunM6 :: FunPtr FunTypeM6 -> FunTypeM6
-foreign import ccall "wrapper" mkFunM6 :: FunTypeM6 -> IO (FunPtr FunTypeM6)
-
-manyArgsM6 :: FunTypeM6
-manyArgsM6 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 =
- ((((((((((fromIntegral a1 * 31 + fromIntegral a2) * 31 +
- fromIntegral a3) * 31 + fromIntegral a4) * 31 +
- fromIntegral a5) * 31 + a6) * 31 +
- fromIntegral a7) * 31 + fromIntegral a8) * 31 +
- fromIntegral a9) * 31 + fromIntegral a10) * 31 +
- fromIntegral a11) * 31 + fromIntegral a12
-
-testM6 :: IO ()
-testM6 = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- a6 <- randomIO
- a7 <- randomIO
- a8 <- randomIO
- a9 <- randomIO
- a10 <- randomIO
- a11 <- randomIO
- a12 <- randomIO
- funAddr <- mkFunM6 manyArgsM6
- print (callFunM6 funAddr a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 ==
- manyArgsM6 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12)
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-type FunTypeM7 = Int -> Int -> Int -> Int -> Int -> Int -> Double -> Int -> Int
- -> Int -> Int -> Int -> Double
-
-foreign import ccall "dynamic" callFunM7 :: FunPtr FunTypeM7 -> FunTypeM7
-foreign import ccall "wrapper" mkFunM7 :: FunTypeM7 -> IO (FunPtr FunTypeM7)
-
-manyArgsM7 :: FunTypeM7
-manyArgsM7 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 =
- ((((((((((fromIntegral a1 * 31 + fromIntegral a2) * 31 +
- fromIntegral a3) * 31 + fromIntegral a4) * 31 +
- fromIntegral a5) * 31 + fromIntegral a6) * 31 +
- a7) * 31 + fromIntegral a8) * 31 +
- fromIntegral a9) * 31 + fromIntegral a10) * 31 +
- fromIntegral a11) * 31 + fromIntegral a12
-
-testM7 :: IO ()
-testM7 = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- a6 <- randomIO
- a7 <- randomIO
- a8 <- randomIO
- a9 <- randomIO
- a10 <- randomIO
- a11 <- randomIO
- a12 <- randomIO
- funAddr <- mkFunM7 manyArgsM7
- print (callFunM7 funAddr a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 ==
- manyArgsM7 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12)
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-type FunTypeM8 = Int -> Int -> Int -> Int -> Int -> Int -> Int -> Double -> Int
- -> Int -> Int -> Int -> Double
-
-foreign import ccall "dynamic" callFunM8 :: FunPtr FunTypeM8 -> FunTypeM8
-foreign import ccall "wrapper" mkFunM8 :: FunTypeM8 -> IO (FunPtr FunTypeM8)
-
-manyArgsM8 :: FunTypeM8
-manyArgsM8 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 =
- ((((((((((fromIntegral a1 * 31 + fromIntegral a2) * 31 +
- fromIntegral a3) * 31 + fromIntegral a4) * 31 +
- fromIntegral a5) * 31 + fromIntegral a6) * 31 +
- fromIntegral a7) * 31 + a8) * 31 +
- fromIntegral a9) * 31 + fromIntegral a10) * 31 +
- fromIntegral a11) * 31 + fromIntegral a12
-
-testM8 :: IO ()
-testM8 = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- a6 <- randomIO
- a7 <- randomIO
- a8 <- randomIO
- a9 <- randomIO
- a10 <- randomIO
- a11 <- randomIO
- a12 <- randomIO
- funAddr <- mkFunM8 manyArgsM8
- print (callFunM8 funAddr a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 ==
- manyArgsM8 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12)
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-type FunTypeM9 = Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Double
- -> Int -> Int -> Int -> Double
-
-foreign import ccall "dynamic" callFunM9 :: FunPtr FunTypeM9 -> FunTypeM9
-foreign import ccall "wrapper" mkFunM9 :: FunTypeM9 -> IO (FunPtr FunTypeM9)
-
-manyArgsM9 :: FunTypeM9
-manyArgsM9 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 =
- ((((((((((fromIntegral a1 * 31 + fromIntegral a2) * 31 +
- fromIntegral a3) * 31 + fromIntegral a4) * 31 +
- fromIntegral a5) * 31 + fromIntegral a6) * 31 +
- fromIntegral a7) * 31 + fromIntegral a8) * 31 +
- a9) * 31 + fromIntegral a10) * 31 +
- fromIntegral a11) * 31 + fromIntegral a12
-
-testM9 :: IO ()
-testM9 = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- a6 <- randomIO
- a7 <- randomIO
- a8 <- randomIO
- a9 <- randomIO
- a10 <- randomIO
- a11 <- randomIO
- a12 <- randomIO
- funAddr <- mkFunM9 manyArgsM9
- print (callFunM9 funAddr a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 ==
- manyArgsM9 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12)
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-type FunTypeM10 = Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int
- -> Double -> Int -> Int -> Double
-
-foreign import ccall "dynamic" callFunM10 :: FunPtr FunTypeM10 -> FunTypeM10
-foreign import ccall "wrapper" mkFunM10 :: FunTypeM10 -> IO (FunPtr FunTypeM10)
-
-manyArgsM10 :: FunTypeM10
-manyArgsM10 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 =
- ((((((((((fromIntegral a1 * 31 + fromIntegral a2) * 31 +
- fromIntegral a3) * 31 + fromIntegral a4) * 31 +
- fromIntegral a5) * 31 + fromIntegral a6) * 31 +
- fromIntegral a7) * 31 + fromIntegral a8) * 31 +
- fromIntegral a9) * 31 + a10) * 31 +
- fromIntegral a11) * 31 + fromIntegral a12
-
-testM10 :: IO ()
-testM10 = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- a6 <- randomIO
- a7 <- randomIO
- a8 <- randomIO
- a9 <- randomIO
- a10 <- randomIO
- a11 <- randomIO
- a12 <- randomIO
- funAddr <- mkFunM10 manyArgsM10
- print (callFunM10 funAddr a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 ==
- manyArgsM10 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12)
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-type FunTypeM11 = Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int
- -> Int -> Double -> Int -> Double
-
-foreign import ccall "dynamic" callFunM11 :: FunPtr FunTypeM11 -> FunTypeM11
-foreign import ccall "wrapper" mkFunM11 :: FunTypeM11 -> IO (FunPtr FunTypeM11)
-
-manyArgsM11 :: FunTypeM11
-manyArgsM11 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 =
- ((((((((((fromIntegral a1 * 31 + fromIntegral a2) * 31 +
- fromIntegral a3) * 31 + fromIntegral a4) * 31 +
- fromIntegral a5) * 31 + fromIntegral a6) * 31 +
- fromIntegral a7) * 31 + fromIntegral a8) * 31 +
- fromIntegral a9) * 31 + fromIntegral a10) * 31 +
- a11) * 31 + fromIntegral a12
-
-testM11 :: IO ()
-testM11 = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- a6 <- randomIO
- a7 <- randomIO
- a8 <- randomIO
- a9 <- randomIO
- a10 <- randomIO
- a11 <- randomIO
- a12 <- randomIO
- funAddr <- mkFunM11 manyArgsM11
- print (callFunM11 funAddr a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 ==
- manyArgsM11 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12)
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-type FunTypeM12 = Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int -> Int
- -> Int -> Int -> Double -> Double
-
-foreign import ccall "dynamic" callFunM12 :: FunPtr FunTypeM12 -> FunTypeM12
-foreign import ccall "wrapper" mkFunM12 :: FunTypeM12 -> IO (FunPtr FunTypeM12)
-
-manyArgsM12 :: FunTypeM12
-manyArgsM12 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 =
- ((((((((((fromIntegral a1 * 31 + fromIntegral a2) * 31 +
- fromIntegral a3) * 31 + fromIntegral a4) * 31 +
- fromIntegral a5) * 31 + fromIntegral a6) * 31 +
- fromIntegral a7) * 31 + fromIntegral a8) * 31 +
- fromIntegral a9) * 31 + fromIntegral a10) * 31 +
- fromIntegral a11) * 31 + a12
-
-testM12 :: IO ()
-testM12 = do
- a1 <- randomIO
- a2 <- randomIO
- a3 <- randomIO
- a4 <- randomIO
- a5 <- randomIO
- a6 <- randomIO
- a7 <- randomIO
- a8 <- randomIO
- a9 <- randomIO
- a10 <- randomIO
- a11 <- randomIO
- a12 <- randomIO
- funAddr <- mkFunM12 manyArgsM12
- print (callFunM12 funAddr a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 ==
- manyArgsM12 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12)
- freeHaskellFunPtr funAddr
-
---------------------------------------------------------------------------------
-
-rep :: String -> IO () -> IO ()
-rep msg tst = do
- putStrLn ("Testing " ++ msg ++ "...")
- sequence_ (replicate 10 tst)
-
-main :: IO ()
-main = do
- setStdGen (mkStdGen 4711)
- rep "5 Int arguments" test5I
- rep "11 Double arguments" test11D
- rep "11 mixed arguments" test11M
- rep "Double as 1st argument, rest Int" testM1
- rep "Double as 2nd argument, rest Int" testM2
- rep "Double as 3rd argument, rest Int" testM3
- rep "Double as 4th argument, rest Int" testM4
- rep "Double as 5th argument, rest Int" testM5
- rep "Double as 6th argument, rest Int" testM6
- rep "Double as 7th argument, rest Int" testM7
- rep "Double as 8th argument, rest Int" testM8
- rep "Double as 9th argument, rest Int" testM9
- rep "Double as 10th argument, rest Int" testM10
- rep "Double as 11th argument, rest Int" testM11
- rep "Double as 12th argument, rest Int" testM12
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi009.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi009.stdout
deleted file mode 100644
index 2701fdd909..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi009.stdout
+++ /dev/null
@@ -1,165 +0,0 @@
-Testing 5 Int arguments...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
-Testing 11 Double arguments...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
-Testing 11 mixed arguments...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
-Testing Double as 1st argument, rest Int...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
-Testing Double as 2nd argument, rest Int...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
-Testing Double as 3rd argument, rest Int...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
-Testing Double as 4th argument, rest Int...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
-Testing Double as 5th argument, rest Int...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
-Testing Double as 6th argument, rest Int...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
-Testing Double as 7th argument, rest Int...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
-Testing Double as 8th argument, rest Int...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
-Testing Double as 9th argument, rest Int...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
-Testing Double as 10th argument, rest Int...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
-Testing Double as 11th argument, rest Int...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
-Testing Double as 12th argument, rest Int...
-True
-True
-True
-True
-True
-True
-True
-True
-True
-True
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi010.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi010.hs
deleted file mode 100644
index b02522dd1f..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi010.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-import Foreign
-
--- !!! GHC 5.04.2 was missing rts_mkFunPtr, which meant that this example
--- !!! didn't link.
-
-foreign import ccall "wrapper"
- makeHaskellFun :: (FunPtr a -> IO ()) -> IO (FunPtr (FunPtr a -> IO ()))
-
-main = makeHaskellFun (const (return ()))
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi011.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi011.hs
deleted file mode 100644
index cfb0ae62a9..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi011.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-
--- !!! returning a Bool from a foreign export confused GHCi 6.0.1.
-
-import Foreign
-
-foreign import ccall "wrapper"
- mkFoo :: (Int -> IO Bool) -> IO (FunPtr (Int -> IO Bool))
-
-foo :: Int -> IO Bool
-foo x = return (x == 42)
-
-foreign import ccall "dynamic"
- call_foo :: FunPtr (Int -> IO Bool) -> Int -> IO Bool
-
-main = do
- foo_fun <- mkFoo foo
- call_foo foo_fun 3 >>= print
- call_foo foo_fun 42 >>= print
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi011.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi011.stdout
deleted file mode 100644
index 91d6f80f27..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi011.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-False
-True
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi012.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi012.hs
deleted file mode 100644
index de101ea769..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi012.hs
+++ /dev/null
@@ -1,53 +0,0 @@
--- !!! Same as ffi006, but using the stdcall calling convention.
-
-import Foreign
-import Foreign.C
-
--- With Ints: ---------------------------------
-
-type IOF = Int -> IO Int
-type F = Int -> Int
-
-foreign import stdcall "wrapper" wrap_f :: F -> IO (FunPtr F)
-foreign import stdcall "wrapper" wrap_f_io :: IOF -> IO (FunPtr IOF)
-
-foreign import stdcall "dynamic" f :: FunPtr F -> F
-foreign import stdcall "dynamic" f_io :: FunPtr IOF -> IOF
-
-fn_int :: Int -> Int
-fn_int x = x * 2
-
-fn_int_io :: Int -> IO Int
-fn_int_io x = return (x * 2)
-
--- With Doubles: ---------------------------------
-
-type IOD = Double -> IO Double
-type D = Double -> Double
-
-foreign import stdcall "wrapper" wrap_d :: D -> IO (FunPtr D)
-foreign import stdcall "wrapper" wrap_d_io :: IOD -> IO (FunPtr IOD)
-
-foreign import stdcall "dynamic" d :: FunPtr D -> D
-foreign import stdcall "dynamic" d_io :: FunPtr IOD -> IOD
-
-fn_double :: Double -> Double
-fn_double x = x * 2
-
-fn_double_io :: Double -> IO Double
-fn_double_io x = return (x * 2)
-
---------------------------------------------------
-
-main = do
- wrapped_fn_int <- wrap_f fn_int
- print (f wrapped_fn_int 42)
- wrapped_fn_int_io <- wrap_f_io fn_int_io
- x <- f_io wrapped_fn_int_io 42
- print x
-
- wrapped_fn_double <- wrap_d fn_double
- print (d wrapped_fn_double 42)
- wrapped_fn_double_io <- wrap_d_io fn_double_io
- x <- d_io wrapped_fn_double_io 42
- print x
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi012.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi012.stdout
deleted file mode 100644
index b384fe2adf..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi012.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-84
-84
-84.0
-84.0
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi013.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi013.hs
deleted file mode 100644
index ae38c71b10..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi013.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-import Foreign
-import Foreign.C.Types
-
-foreign import ccall "wrapper"
- mkComparator :: (Ptr Int -> Ptr Int -> IO CInt)
- -> IO (FunPtr (Ptr Int -> Ptr Int -> IO CInt))
-
-foreign import ccall
- qsort :: Ptr Int -> CSize -> CSize -> FunPtr (Ptr Int -> Ptr Int -> IO CInt)
- -> IO ()
-
-compareInts :: Ptr Int -> Ptr Int -> IO CInt
-compareInts a1 a2 = do
- i1 <- peek a1
- i2 <- peek a2
- return (fromIntegral (i1 - i2 :: Int))
-
-main :: IO ()
-main = do
- c <- mkComparator compareInts
- let values = [ 12, 56, 90, 34, 78 ] :: [Int]
- n = length values
- withArray values $ \ buf -> do
- qsort buf (fromIntegral n) (fromIntegral (sizeOf (head values))) c
- values' <- peekArray n buf
- print values'
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi013.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi013.stdout
deleted file mode 100644
index fb5139007e..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi013.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[12,34,56,78,90]
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi014.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi014.hs
deleted file mode 100644
index 4434bef21a..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi014.hs
+++ /dev/null
@@ -1,29 +0,0 @@
--- exposed a bug in GHC 6.4 threaded RTS, fixed in Schedule.c rev. 1.232
-
-module Main where
-
-import Control.Concurrent
-import Control.Monad
-import Foreign.Ptr
-import Data.IORef
-
-main = do
- ms <- replicateM 100 $ do putStrLn "."
- m <- newEmptyMVar
- forkOS (thread >> putMVar m ())
- thread
- return m
- mapM takeMVar ms
-
-thread = do var <- newIORef 0
- let f = modifyIORef var (1+)
- callC =<< mkFunc f
-
-type FUNC = IO ()
-
-foreign import ccall unsafe "wrapper"
- mkFunc :: FUNC -> IO (FunPtr FUNC)
-
-foreign import ccall safe "ffi014_cbits.h callC"
- callC:: FunPtr FUNC -> IO ()
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi014.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi014.stdout
deleted file mode 100644
index e53a095ac8..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi014.stdout
+++ /dev/null
@@ -1,100 +0,0 @@
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
-.
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi014_cbits.c b/testsuite/tests/ghc-regress/ffi/should_run/ffi014_cbits.c
deleted file mode 100644
index 0cf96d5dc6..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi014_cbits.c
+++ /dev/null
@@ -1,6 +0,0 @@
-#include "ffi014_cbits.h"
-
-void callC( FUNC* f) {
- int i;
- for(i=0;i<1000;i++) f();
-}
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi014_cbits.h b/testsuite/tests/ghc-regress/ffi/should_run/ffi014_cbits.h
deleted file mode 100644
index d0d8517ca5..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi014_cbits.h
+++ /dev/null
@@ -1,3 +0,0 @@
-typedef void FUNC();
-
-void callC( FUNC* f);
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi015.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi015.hs
deleted file mode 100644
index c70220fa4a..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi015.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# OPTIONS_GHC -#include "ffi015_cbits.h" #-}
-{-# LANGUAGE ForeignFunctionInterface #-}
-
-import Foreign
-import Foreign.C
-
-foreign import ccall "&var" var :: Ptr CInt
-
-main = do
- x <- peek var
- print x
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi015.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi015.stdout
deleted file mode 100644
index d81cc0710e..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi015.stdout
+++ /dev/null
@@ -1 +0,0 @@
-42
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi015_cbits.c b/testsuite/tests/ghc-regress/ffi/should_run/ffi015_cbits.c
deleted file mode 100644
index f71b82d569..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi015_cbits.c
+++ /dev/null
@@ -1 +0,0 @@
-int var = 42;
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi015_cbits.h b/testsuite/tests/ghc-regress/ffi/should_run/ffi015_cbits.h
deleted file mode 100644
index bc4ad6becd..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi015_cbits.h
+++ /dev/null
@@ -1 +0,0 @@
-extern int var;
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi016.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi016.hs
deleted file mode 100644
index 0be6f31d7a..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi016.hs
+++ /dev/null
@@ -1,28 +0,0 @@
--- Tests Foreign.Concurrent finalizers
-
-import Text.Printf
-import Foreign.Concurrent as Conc
-import Foreign
-import GHC.TopHandler
-import Control.Concurrent
-import Data.List
-import System.Mem
-
--- This finalizer calls back into Haskell, so we can't use
--- the ordinary newForeignPtr.
-foreign export ccall fin :: Ptr Int -> Ptr Int -> IO ()
-foreign import ccall "fin" finptr :: Ptr Int -> Ptr Int -> IO ()
-
-fin :: Ptr Int -> Ptr Int -> IO ()
-fin envp ap = runIO $ do
- env <- peek envp
- a <- peek ap
- printf "%d %d\n" env a
- return ()
-
-main = do
- a <- new (55 :: Int)
- env <- new (66 :: Int)
- fp <- Conc.newForeignPtr a (finptr env a)
- performGC
- threadDelay 100000
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi016.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi016.stdout
deleted file mode 100644
index 74b7c6f766..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi016.stdout
+++ /dev/null
@@ -1 +0,0 @@
-66 55
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi017.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi017.hs
deleted file mode 100644
index de9a1c4295..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi017.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
--- Test for trac #953
-
-module Main where
-
-import System.Posix.Types
-import Foreign.C
-
-foreign import ccall safe "unistd.h lseek" foo :: CInt -> COff -> CInt -> IO COff
-
-main :: IO ()
-main = return ()
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi018.h b/testsuite/tests/ghc-regress/ffi/should_run/ffi018.h
deleted file mode 100644
index 88f67c518d..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi018.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#include "HsFFI.h"
-
-HsInt64 f(void);
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi018.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi018.hs
deleted file mode 100644
index c529ea87e6..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi018.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-import Data.Int
-
-main :: IO ()
-main = do x <- f
- print (x == 0x123456789ABCDEF0)
-
-foreign import ccall "ffi018.h f"
- f :: IO Int64
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi018.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi018.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi018.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi018_c.c b/testsuite/tests/ghc-regress/ffi/should_run/ffi018_c.c
deleted file mode 100644
index 0d918184d5..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi018_c.c
+++ /dev/null
@@ -1,7 +0,0 @@
-
-#include "ffi018.h"
-
-HsInt64 f(void) {
- return 0x123456789ABCDEF0LL;
-}
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci.h b/testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci.h
deleted file mode 100644
index 88f67c518d..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci.h
+++ /dev/null
@@ -1,4 +0,0 @@
-#include "HsFFI.h"
-
-HsInt64 f(void);
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci.hs
deleted file mode 100644
index c529ea87e6..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-import Data.Int
-
-main :: IO ()
-main = do x <- f
- print (x == 0x123456789ABCDEF0)
-
-foreign import ccall "ffi018.h f"
- f :: IO Int64
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci_c.c b/testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci_c.c
deleted file mode 100644
index 0d918184d5..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi018_ghci_c.c
+++ /dev/null
@@ -1,7 +0,0 @@
-
-#include "ffi018.h"
-
-HsInt64 f(void) {
- return 0x123456789ABCDEF0LL;
-}
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi019.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi019.hs
deleted file mode 100644
index 2b317d8e09..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi019.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module Main where
-
--- Test for #1648
-
-import Foreign
-import Data.Int
-import Data.Word
-
-f :: Int64 -> IO Int64
-f x = return $ x + 1
-
-g :: Word64 -> IO Word64
-g x = return $ x + 2
-
-type WCall = Word64 -> IO Word64
-foreign import ccall "wrapper" mkWCall :: WCall -> IO (FunPtr WCall)
-foreign import ccall "dynamic" call_w :: FunPtr WCall -> WCall
-
-type ICall = Int64 -> IO Int64
-foreign import ccall "wrapper" mkICall :: ICall -> IO (FunPtr ICall)
-foreign import ccall "dynamic" call_i :: FunPtr ICall -> ICall
-
-main = do
- fp <- mkICall f
- call_i fp 3 >>= print
- fp <- mkWCall g
- call_w fp 4 >>= print
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi019.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi019.stdout
deleted file mode 100644
index cfbeb15fac..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi019.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-4
-6
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi020.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi020.hs
deleted file mode 100644
index d2236f5791..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi020.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-import Foreign
-import Data.Word
-import Control.Monad
-import System.Mem
-
-main = do
- let finalize p = do
- putStrLn ("finalize: " ++ show p)
- free p
- allocToForeignPtr finalize (mallocBytes 4096)
- forever performGC
-
-allocToForeignPtr :: (Ptr a -> IO ()) -- finalizer
- -> IO (Ptr a) -- allocate
- -> IO (ForeignPtr a)
-allocToForeignPtr fin alloc = do
- done <- asFinalizer fin
- newForeignPtr done =<< alloc
-
-asFinalizer :: (Ptr a -> IO ()) -> IO (FinalizerPtr a)
-asFinalizer = mkFinalizer
-foreign import ccall "wrapper"
- mkFinalizer :: (Ptr a -> IO ())
- -> IO (FinalizerPtr a)
-
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi020.stderr b/testsuite/tests/ghc-regress/ffi/should_run/ffi020.stderr
deleted file mode 100644
index 614dd72f8b..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi020.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-ffi020: error: a C finalizer called back into Haskell.
- This was previously allowed, but is disallowed in GHC 6.10.2 and later.
- To create finalizers that may call back into Haskell, use
- Foreign.Concurrent.newForeignPtr instead of Foreign.newForeignPtr.
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi021.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi021.hs
deleted file mode 100644
index 8f6ce1bf92..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi021.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-import Foreign
-import Foreign.C
-
--- test for calling functions by importing them by address and then
--- using dynamic calls. In 6.10 and earlier, GHCi rejected the
--- foreign import '&foo' declarations, for no apparently good reason.
-
-type Malloc = CSize -> IO (Ptr ())
-type Write = CInt -> Ptr CChar -> CSize -> IO CSize
-
-foreign import ccall unsafe "&malloc" pmalloc:: FunPtr Malloc
-foreign import ccall unsafe "dynamic" callMalloc :: FunPtr Malloc -> Malloc
-
-foreign import ccall unsafe "&write" pwrite:: FunPtr Write
-foreign import ccall unsafe "dynamic" callWrite :: FunPtr Write -> Write
-
-main = do
- p <- callMalloc pmalloc 32
- free p
- withCStringLen "hello\n" $ \(p,len) -> callWrite pwrite 1 p (fromIntegral len)
- return ()
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi021.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi021.stdout
deleted file mode 100644
index ce01362503..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi021.stdout
+++ /dev/null
@@ -1 +0,0 @@
-hello
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi022.hs b/testsuite/tests/ghc-regress/ffi/should_run/ffi022.hs
deleted file mode 100644
index 5313f7183e..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi022.hs
+++ /dev/null
@@ -1,36 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-
-import Foreign.C
-import Foreign
-
-getProgName :: IO String
-getProgName =
- alloca $ \ p_argc ->
- alloca $ \ p_argv -> do
- getProgArgv p_argc p_argv
- argv <- peek p_argv
- unpackProgName argv
-
-unpackProgName :: Ptr (Ptr CChar) -> IO String -- argv[0]
-unpackProgName argv = do
- s <- peekElemOff argv 0 >>= peekCString
- return (basename s)
- where
- basename :: String -> String
- basename f = go f f
- where
- go acc [] = acc
- go acc (x:xs)
- | isPathSeparator x = go xs xs
- | otherwise = go acc xs
-
- isPathSeparator :: Char -> Bool
- isPathSeparator '/' = True
- isPathSeparator '\\' = True
- isPathSeparator _ = False
-
-foreign import ccall unsafe "getProgArgv"
- getProgArgv :: Ptr CInt -> Ptr (Ptr CString) -> IO ()
-
-main :: IO ()
-main = print =<< getProgName
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/ffi022.stdout b/testsuite/tests/ghc-regress/ffi/should_run/ffi022.stdout
deleted file mode 100644
index fa5f27d449..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/ffi022.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"ffi022"
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/fptr01.h b/testsuite/tests/ghc-regress/ffi/should_run/fptr01.h
deleted file mode 100644
index b50cc41776..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/fptr01.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#ifndef FPTR01_H_INCLUDED
-#define FPTR01_H_INCLUDED
-
-void f( HsInt * );
-void g( HsInt * );
-void h( HsInt * );
-
-void f_env( HsInt *, HsInt * );
-
-#endif // FPTR01_H_INCLUDED
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/fptr01.hs b/testsuite/tests/ghc-regress/ffi/should_run/fptr01.hs
deleted file mode 100644
index 1d20a48e14..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/fptr01.hs
+++ /dev/null
@@ -1,40 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-
-module Main where
-
-import Foreign
-
-{-# INCLUDE "fptr01.h" #-}
-
-foreign import ccall "&f" fptr :: FunPtr (Ptr Int -> IO ())
-foreign import ccall "&g" gptr :: FunPtr (Ptr Int -> IO ())
-foreign import ccall "&h" hptr :: FunPtr (Ptr Int -> IO ())
-
-foreign import ccall "&f_env" fenvptr :: FunPtr (Ptr Int -> Ptr Int -> IO ())
-
-main :: IO ()
-main = do
- with (33 :: Int) ((>>= finalizeForeignPtr) . test)
- with (34 :: Int) ((>> return ()) . test)
- with (35 :: Int) ((>>= finalizeForeignPtr) . test_env)
- with (36 :: Int) ((>> return ()) . test_env)
- -- finalizers must all be run at program exit.
- where
- -- the finalizers must be run in the correct order, starting with
- -- the most recently-added.
- test p = do
- f <- newForeignPtr_ p
- addForeignPtrFinalizer fptr f
- addForeignPtrFinalizer gptr f
- addForeignPtrFinalizer hptr f
- return f
-
- test_env p = do
- f <- newForeignPtr_ p
- envp1 <- new 1
- envp2 <- new 2
- envp3 <- new 3
- addForeignPtrFinalizerEnv fenvptr envp1 f
- addForeignPtrFinalizerEnv fenvptr envp2 f
- addForeignPtrFinalizerEnv fenvptr envp3 f
- return f
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/fptr01.stdout b/testsuite/tests/ghc-regress/ffi/should_run/fptr01.stdout
deleted file mode 100644
index 71ba93cc9f..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/fptr01.stdout
+++ /dev/null
@@ -1,12 +0,0 @@
-h33
-g33
-f33
-f_env 3 35
-f_env 2 35
-f_env 1 35
-f_env 3 36
-f_env 2 36
-f_env 1 36
-h34
-g34
-f34
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/fptr01_c.c b/testsuite/tests/ghc-regress/ffi/should_run/fptr01_c.c
deleted file mode 100644
index 0a0e1efe1c..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/fptr01_c.c
+++ /dev/null
@@ -1,29 +0,0 @@
-#include <stdio.h>
-
-#include "HsFFI.h"
-
-#include "fptr01.h"
-
-void f( HsInt *i )
-{
- printf( "f%d\n", (int)*i );
- fflush( stdout );
-}
-
-void g( HsInt *i )
-{
- printf( "g%d\n", (int)*i );
- fflush( stdout );
-}
-
-void h( HsInt *i )
-{
- printf( "h%d\n", (int)*i );
- fflush( stdout );
-}
-
-void f_env( HsInt *env, HsInt *i )
-{
- printf( "f_env %d %d\n", *env, (int)*i );
- fflush( stdout );
-}
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/fptr02.hs b/testsuite/tests/ghc-regress/ffi/should_run/fptr02.hs
deleted file mode 100644
index 4691427c3e..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/fptr02.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-
-module Main where
-
-import Foreign
-import Control.Monad
-
-foreign import ccall "&free" pfree :: FunPtr (Ptr a -> IO ())
-
-main = replicateM_ 1000000 $ newForeignPtr pfree nullPtr
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.h b/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.h
deleted file mode 100644
index 3e10d8bd7a..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.h
+++ /dev/null
@@ -1,6 +0,0 @@
-#ifndef FPTRFAIL01_H_INCLUDED
-#define FPTRFAIL01_H_INCLUDED
-
-void f( HsInt * );
-
-#endif // FPTRFAIL01_H_INCLUDED
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.hs b/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.hs
deleted file mode 100644
index 97b331e96b..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-
-module Main where
-
-import Foreign
-import GHC.ForeignPtr
-
-{-# INCLUDE "fptrfail01.h" #-}
-
-foreign import ccall "&f" fptr :: FunPtr (Ptr Int -> IO ())
-
-main :: IO ()
-main = do
- with (33 :: Int) test
- where
- test p = do
- f <- newForeignPtr_ p
- addForeignPtrFinalizer fptr f
- addForeignPtrConcFinalizer f (putStrLn "Haskell finalizer")
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.stderr b/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.stderr
deleted file mode 100644
index db50b2e01b..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.stderr
+++ /dev/null
@@ -1 +0,0 @@
-fptrfail01: GHC.ForeignPtr: attempt to mix Haskell and C finalizers in the same ForeignPtr
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.stdout b/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.stdout
deleted file mode 100644
index e396748a4e..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01.stdout
+++ /dev/null
@@ -1 +0,0 @@
-f33
diff --git a/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01_c.c b/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01_c.c
deleted file mode 100644
index 070a786e57..0000000000
--- a/testsuite/tests/ghc-regress/ffi/should_run/fptrfail01_c.c
+++ /dev/null
@@ -1,11 +0,0 @@
-#include <stdio.h>
-
-#include "HsFFI.h"
-
-#include "fptrfail01.h"
-
-void f( HsInt *i )
-{
- printf( "f%d\n", (int)*i );
- fflush( stdout );
-}
diff --git a/testsuite/tests/ghc-regress/gadt/Arith.hs b/testsuite/tests/ghc-regress/gadt/Arith.hs
deleted file mode 100644
index a98ee729a9..0000000000
--- a/testsuite/tests/ghc-regress/gadt/Arith.hs
+++ /dev/null
@@ -1,146 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module Arith where
-
-data E a b = E (a -> b) (b -> a)
-
-eqRefl :: E a a
-eqRefl = E id id
-
--- just to construct unique strings
-data W
-data M a
-
--- terms
-data Var a where
- VarW :: Var W
- VarM :: Var (M a)
-
--- expose s in the type level making sure it is a string
-data Abs s e1 where
- Abs :: (Var s) -> e1 -> Abs (Var s) e1
-
-data App e1 e2 = App e1 e2
-data Lit = Lit
-
-data TyBase = TyBase
-data TyArr t1 t2 = TyArr t1 t2
-
--- (x:ty) in G
-data IN g p where
- INOne :: IN (g,(x,ty)) (x,ty)
- INShift :: IN g0 (x,ty) -> IN (g0,a) (x,ty)
-
-data INEX g x where
- INEX :: IN g (x,v) -> INEX g x
-
-
--- G1 subseteq G2
-type SUP g1 g2 = forall a. IN g1 a -> IN g2 a
-
--- typing derivations
-data DER g a ty where
- DVar :: IN (g,g0) ((Var a),ty) -> DER (g,g0) (Var a) ty -- the g,g0 makes sure that env is non-empty
- DApp :: DER g a1 (TyArr ty1 ty2) ->
- DER g a2 ty1 -> DER g (App a1 a2) ty2
- DAbs :: DER (g,(Var a,ty1)) e ty2 ->
- DER g (Abs (Var a) e) (TyArr ty1 ty2)
- DLit :: DER g Lit TyBase
-
--- G |- \x.x : a -> a
-test1 :: DER g (Abs (Var W) (Var W)) (TyArr ty ty)
-test1 = DAbs (DVar INOne)
-
--- G |- (\x.x) Lit : Lit
-test2 :: DER g (App (Abs (Var W) (Var W)) Lit) TyBase
-test2 = DApp (DAbs (DVar INOne)) DLit
-
--- G |- \x.\y. x y : (C -> C) -> C -> C
-test3 :: DER g (Abs (Var W) (Abs (Var (M W)) (App (Var W) (Var (M W))))) (TyArr (TyArr ty ty) (TyArr ty ty))
-test3 = DAbs (DAbs (DApp (DVar (INShift INOne)) (DVar INOne)))
-
-data ISVAL e where
- ISVALAbs :: ISVAL (Abs (Var v) e)
- ISVALLit :: ISVAL Lit
-
-data React e1 e2 where
- SUBSTReact :: React (Abs (Var y) e) v
-
--- evaluation
-data EDER e1 e2 where
- -- EVar :: IN (a,val) -> ISVAL val -> EDER c a val
- EApp1 :: EDER e1 e1' -> EDER (App e1 e2) (App e1' e2)
- EApp2 :: ISVAL v1 -> EDER e2 e2' -> EDER (App v1 e2) (App v1 e2')
- EAppAbs :: ISVAL v2 -> React (Abs (Var v) e) v2 -> EDER (App (Abs (Var v) e) v2) e1
-
--- (\x.x) 3 -> 3
--- test4 :: EDER (App (Abs (Var W) (Var W)) Lit) Lit
--- test4 = EAppAbs ISVALLit SUBSTEqVar
-
-
--- existential
-data REDUCES e1 where
- REDUCES :: EDER e1 e2 -> REDUCES e1
-
--- data WFEnv x c g where
--- WFOne :: ISVAL v -> DER g v ty -> WFEnv (Var x) (c,(Var x,v)) (g,(Var x,ty))
--- WFShift :: WFEnv v c0 g0 -> WFEnv v (c0,(y,y1)) (g0,(z,z1))
-
--- data WFENVWRAP c g where
--- WFENVWRAP :: (forall v ty . IN g (v,ty) -> WFEnv v c g) -> WFENVWRAP c g
-
-
--- data INEXVAL c x where
--- INEXVAL :: IN c (x,v) -> ISVAL v -> INEXVAL c x
-
--- -- the first cool theorem!
--- fromTEnvToEnv :: IN g (x,ty) -> WFEnv x c g -> INEXVAL c x
--- fromTEnvToEnv INOne (WFOne isv _) = INEXVAL INOne isv
--- fromTEnvToEnv (INShift ind1) (WFShift ind2) =
--- case (fromTEnvToEnv ind1 ind2) of
--- INEXVAL i isv -> INEXVAL (INShift i) isv
-
-
-data ISLAMBDA v where ISLAMBDA :: ISLAMBDA (Abs (Var x) e)
-data ISLIT v where ISLIT :: ISLIT Lit
-
-data EXISTAbs where
- EXISTSAbs :: (Abs (Var x) e) -> EXISTAbs
-
-bot = bot
-
-canFormsLam :: ISVAL v -> DER g v (TyArr ty1 ty2) -> ISLAMBDA v
-canFormsLam ISVALAbs _ = ISLAMBDA
--- canFormsLam ISVALLit _ = bot <== unfortunately I cannot catch this ... requires some exhaustiveness check :-(
-
-canFormsLit :: ISVAL v -> DER g v TyBase -> ISLIT v
-canFormsLit ISVALLit _ = ISLIT
-
-data NULL
-
-progress :: DER NULL e ty -> Either (ISVAL e) (REDUCES e)
-
-progress (DAbs prem) = Left ISVALAbs
-progress (DLit) = Left ISVALLit
--- progress (DVar iw) = bot <== here is the cool trick! I cannot even wite this down!
-progress (DApp e1 e2) =
- case (progress e1) of
- Right (REDUCES r1) -> Right (REDUCES (EApp1 r1))
- Left isv1 -> case (progress e2) of
- Right (REDUCES r2) -> Right (REDUCES (EApp2 isv1 r2))
- Left isv2 -> case (canFormsLam isv1 e1) of
- ISLAMBDA -> Right (REDUCES (EAppAbs isv2 SUBSTReact))
-
-
--- case fromTEnvToEnv iw (f iw) of
--- INEXVAL i isv -> Right (REDUCES (EVar i isv))
--- progress (WFENVWRAP f) (DApp e1 e2) =
--- case (progress (WFENVWRAP f) e1) of
--- Right (REDUCES r1) -> Right (REDUCES (EApp1 r1))
--- Left isv1 -> case (progress (WFENVWRAP f) e2) of
--- Right (REDUCES r2) -> Right (REDUCES (EApp2 isv1 r2))
--- Left isv2 -> case (canFormsLam isv1 e1) of
--- ISLAMBDA -> EAppAbs isv2 e1
-
-
-
diff --git a/testsuite/tests/ghc-regress/gadt/CasePrune.hs b/testsuite/tests/ghc-regress/gadt/CasePrune.hs
deleted file mode 100644
index 4048c94c5f..0000000000
--- a/testsuite/tests/ghc-regress/gadt/CasePrune.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-{-# LANGUAGE GADTs, GeneralizedNewtypeDeriving #-}
-
--- See Trac #1251 and the comments
--- Note [Pruning dead case alternatives] in types/Unify.lhs
-
-module Main( main ) where
-
-data T a where MkT :: T Int
-
-class C a where ic :: T a
-
-instance C Int where ic = MkT
-
-newtype A = MkA Int deriving( C )
-
--- axiom CoA : A ~ Int
--- Hence C Int ~ C A
-
--- instance C A where
--- ic :: T A
--- ic = MkT
-
-icA = ic :: T A -- There are no (non-bot) values of this type
-
-main = print (icA `seq` "ok")
-
-
-
diff --git a/testsuite/tests/ghc-regress/gadt/CasePrune.stdout b/testsuite/tests/ghc-regress/gadt/CasePrune.stdout
deleted file mode 100644
index 52c33a57c7..0000000000
--- a/testsuite/tests/ghc-regress/gadt/CasePrune.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"ok"
diff --git a/testsuite/tests/ghc-regress/gadt/Gadt17_help.hs b/testsuite/tests/ghc-regress/gadt/Gadt17_help.hs
deleted file mode 100644
index 30b57133d5..0000000000
--- a/testsuite/tests/ghc-regress/gadt/Gadt17_help.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-{-# LANGUAGE GADTs #-}
-{-# OPTIONS_GHC -O #-}
-
-module Gadt17_help (
- TernOp (..), applyTernOp
- ) where
-
-data TypeWitness a where
- TWInt :: TypeWitness Int
- TWBool :: TypeWitness Bool
- TWFloat :: TypeWitness Float
- TWDouble :: TypeWitness Double
-
-instance (Eq a) => Eq (TypeWitness a) where
- (==) TWInt TWInt = True
- (==) TWBool TWBool = True
- (==) TWFloat TWFloat = True
- (==) TWDouble TWDouble = True
- (==) _ _ = False
-
-data TernOp a b c d where
- OpIf :: TypeWitness a -> TernOp Bool a a a
- OpTernFunc :: TypeWitness a -> TypeWitness b -> TypeWitness c
- -> TypeWitness d -> (a -> b -> c -> d) -> TernOp a b c d
-
-instance Show (TernOp a b c d) where
- show (OpIf {}) = "OpIf"
- show (OpTernFunc {}) = "OpTernFunc <function>"
-
-
-applyTernOp :: TernOp a b c d -> a -> b -> c -> d
-applyTernOp (OpIf {}) cond x y = if (cond) then x else y
-applyTernOp (OpTernFunc _ _ _ _ f) x y z = f x y z
-
diff --git a/testsuite/tests/ghc-regress/gadt/Gadt23_AST.hs b/testsuite/tests/ghc-regress/gadt/Gadt23_AST.hs
deleted file mode 100644
index 75b07c7611..0000000000
--- a/testsuite/tests/ghc-regress/gadt/Gadt23_AST.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE GADTs, KindSignatures #-}
-
-module Gadt23_AST where
-
-data Exp_;
-
-data AST :: * -> * -> * where
- Var :: String -> AST Exp_ tag
- Tag :: tag -> AST a tag -> AST a tag
-
diff --git a/testsuite/tests/ghc-regress/gadt/Makefile b/testsuite/tests/ghc-regress/gadt/Makefile
deleted file mode 100644
index c2dff37de1..0000000000
--- a/testsuite/tests/ghc-regress/gadt/Makefile
+++ /dev/null
@@ -1,22 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-.PHONY: gadt17 gadt23
-
-# A mulit-module test that made GHC 6.4.1 crash
-gadt17:
- @$(RM) gadt17.hi Gadt17_help.hi
- @$(RM) A$(OBJSUFFIX)
- '$(TEST_HC)' $(TEST_HC_OPTS) -c Gadt17_help.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c gadt17.hs
-
-gadt23:
- $(RM) gadt23 gadt23.hi gadt23.o Gadt23_AST.hi Gadt23_AST.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make gadt23.hs
- # We want to "touch gadt23.hs" really, but we then have issues with
- # everything happening in the same second so the touch having no
- # effect. Thus make gadt23.hi/o older instead.
- touch -t 01010000 gadt23.hi gadt23.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make gadt23.hs
-
diff --git a/testsuite/tests/ghc-regress/gadt/Nilsson.hs b/testsuite/tests/ghc-regress/gadt/Nilsson.hs
deleted file mode 100644
index bb2fa1ba20..0000000000
--- a/testsuite/tests/ghc-regress/gadt/Nilsson.hs
+++ /dev/null
@@ -1,293 +0,0 @@
-{-# LANGUAGE GADTs, ScopedTypeVariables #-}
-
--- Supplied by Henrik Nilsson, showed up a bug in GADTs
-
-module Nilsson where
-
-data Event a = NoEvent | Event a
-
-fromEvent :: Event a -> a
-fromEvent = undefined
-
-usrErr :: String -> String -> String -> a
-usrErr = undefined
-
-type DTime = Double -- [s]
-
-data SF a b = SF {sfTF :: a -> Transition a b}
-
-data SF' a b where
- SFArr :: (DTime -> a -> Transition a b) -> FunDesc a b -> SF' a b
-
- SFAcc :: (DTime -> Event a -> Transition (Event a) b)
- -> (c -> a -> (c, b)) -> c -> b
- -> SF' (Event a) b
- SFCpAXA :: (DTime -> a -> Transition a d)
- -> FunDesc a b -> SF' b c -> FunDesc c d
- -> SF' a d
- SF' :: (DTime -> a -> Transition a b) -> SF' a b
-
--- A transition is a pair of the next state (in the form of a signal
--- function) and the output at the present time step.
-
-type Transition a b = (SF' a b, b)
-
-
-sfTF' :: SF' a b -> (DTime -> a -> Transition a b)
-sfTF' (SFArr tf _) = tf
-sfTF' (SFAcc tf _ _ _) = tf
--- sfTF' (SFSScan ...)
-sfTF' (SFCpAXA tf _ _ _) = tf
-sfTF' (SF' tf) = tf
-
--- "Smart" constructors. The corresponding "raw" constructors should not
--- be used directly for construction.
-
-sfArr :: FunDesc a b -> SF' a b
-sfArr FDI = sfId
-sfArr (FDC b) = sfConst b
-sfArr (FDE f fne) = sfArrE f fne
-sfArr (FDG f) = sfArrG f
-
-
-sfId :: SF' a a
-sfId = sf
- where
- sf = SFArr (\_ a -> (sf, a)) FDI
-
-
-sfConst :: b -> SF' a b
-sfConst b = sf
- where
- sf = SFArr (\_ _ -> (sf, b)) (FDC b)
-
-
-sfNever :: SF' a (Event b)
-sfNever = sfConst NoEvent
-
-
--- Assumption: fne = f NoEvent
-sfArrE :: (Event a -> b) -> b -> SF' (Event a) b
-sfArrE f fne = sf
- where
- sf = SFArr (\_ ea -> (sf, case ea of NoEvent -> fne ; _ -> f ea))
- (FDE f fne)
-
-sfArrG :: (a -> b) -> SF' a b
-sfArrG f = sf
- where
- sf = SFArr (\_ a -> (sf, f a)) (FDG f)
-
-
-sfAcc :: (c -> a -> (c, b)) -> c -> b -> SF' (Event a) b
-sfAcc f c bne = sf
- where
- sf = SFAcc (\dt ea -> case ea of
- NoEvent -> (sf, bne)
- Event a -> let
- (c', b) = f c a
- in
- (sfAcc f c' bne, b))
- f
- c
- bne
-
--- sfAccHld would be very similar. The only difference is that
--- what's now called "bne" would be updated at each event.
---
--- So maybe one could use the SAME constructor, just different
--- transition functions? It really depends on what assumptions
--- one need to make when optimizing.
-
-
--- Motivation for event-processing function type
--- (alternative would be function of type a->b plus ensuring that it
--- only ever gets invoked on events):
--- * Now we need to be consistent with other kinds of arrows.
--- * We still want to be able to get hold of the original function.
-
-data FunDesc a b where
- FDI :: FunDesc a a -- Identity function
- FDC :: b -> FunDesc a b -- Constant function
- FDE :: (Event a -> b) -> b -> FunDesc (Event a) b -- Event-processing fun
- FDG :: (a -> b) -> FunDesc a b -- General function
-
-fdFun :: FunDesc a b -> (a -> b)
-fdFun FDI = id
-fdFun (FDC b) = const b
-fdFun (FDE f _) = f
-fdFun (FDG f) = f
-
-fdComp :: FunDesc a b -> FunDesc b c -> FunDesc a c
-fdComp FDI fd2 = fd2
-fdComp fd1 FDI = fd1
-fdComp (FDC b) fd2 = FDC ((fdFun fd2) b)
-fdComp _ (FDC c) = FDC c
-fdComp (FDE f1 f1ne) fd2 = FDE (f2 . f1) (f2 f1ne)
- where
- f2 = fdFun fd2
-fdComp (FDG f1) (FDE f2 f2ne) = FDG f
- where
- f a = case f1 a of
- NoEvent -> f2ne
- f1a -> f2 f1a
-fdComp (FDG f1) fd2 = FDG (fdFun fd2 . f1)
-
-
--- Verifies that the first argument is NoEvent. Returns the value of the
--- second argument that is the case. Raises an error otherwise.
--- Used to check that functions on events do not map NoEvent to Event
--- wherever that assumption is exploited.
-vfyNoEv :: Event a -> b -> b
-vfyNoEv NoEvent b = b
-vfyNoEv _ _ = usrErr "AFRP" "vfyNoEv"
- "Assertion failed: Functions on events must not \
- \map NoEvent to Event."
-
-compPrim :: SF a b -> SF b c -> SF a c
-compPrim (SF {sfTF = tf10}) (SF {sfTF = tf20}) = SF {sfTF = tf0}
- where
- tf0 a0 = (cpXX sf1 sf2, c0)
- where
- (sf1, b0) = tf10 a0
- (sf2, c0) = tf20 b0
-
- -- Naming convention: cp<X><Y> where <X> and <Y> is one of:
- -- X - arbitrary signal function
- -- A - arbitrary pure arrow
- -- C - constant arrow
- -- E - event-processing arrow
- -- G - arrow known not to be identity, constant (C) or
- -- event-processing (E).
-
- cpXX :: SF' a b -> SF' b c -> SF' a c
- cpXX (SFArr _ fd1) sf2 = cpAX fd1 sf2
- cpXX sf1 (SFArr _ fd2) = cpXA sf1 fd2
- cpXX (SFAcc _ f1 s1 bne) (SFAcc _ f2 s2 cne) =
- sfAcc f (s1, s2) (vfyNoEv bne cne)
- where
- f (s1, s2) a =
- case f1 s1 a of
- (s1', NoEvent) -> ((s1', s2), cne)
- (s1', Event b) ->
- let (s2', c) = f2 s2 b in ((s1', s2'), c)
- cpXX (SFCpAXA _ fd11 sf12 fd13) (SFCpAXA _ fd21 sf22 fd23) =
- cpAXA fd11 (cpXX (cpXA sf12 (fdComp fd13 fd21)) sf22) fd23
- cpXX sf1 sf2 = SF' tf
- where
- tf dt a = (cpXX sf1' sf2', c)
- where
- (sf1', b) = (sfTF' sf1) dt a
- (sf2', c) = (sfTF' sf2) dt b
-
- cpAXA :: FunDesc a b -> SF' b c -> FunDesc c d -> SF' a d
- cpAXA FDI sf2 fd3 = cpXA sf2 fd3
- cpAXA fd1 sf2 FDI = cpAX fd1 sf2
- cpAXA (FDC b) sf2 fd3 = cpCXA b sf2 fd3
- cpAXA fd1 sf2 (FDC d) = sfConst d
- cpAXA fd1 (SFArr _ fd2) fd3 = sfArr (fdComp (fdComp fd1 fd2) fd3)
-
- cpAX :: FunDesc a b -> SF' b c -> SF' a c
- cpAX FDI sf2 = sf2
- cpAX (FDC b) sf2 = cpCX b sf2
- cpAX (FDE f1 f1ne) sf2 = cpEX f1 f1ne sf2
- cpAX (FDG f1) sf2 = cpGX f1 sf2
-
- cpXA :: SF' a b -> FunDesc b c -> SF' a c
- cpXA sf1 FDI = sf1
- cpXA sf1 (FDC c) = sfConst c
- cpXA sf1 (FDE f2 f2ne) = cpXE sf1 f2 f2ne
- cpXA sf1 (FDG f2) = cpXG sf1 f2
-
- cpCX :: b -> SF' b c -> SF' a c
- cpCX b (SFArr _ fd2) = sfConst ((fdFun fd2) b)
- cpCX b (SFAcc _ _ _ cne) = sfConst (vfyNoEv b cne)
- cpCX b (SFCpAXA _ fd21 sf22 fd23) =
- cpCXA ((fdFun fd21) b) sf22 fd23
- cpCX b sf2 = SFCpAXA tf (FDC b) sf2 FDI
- where
- tf dt _ = (cpCX b sf2', c)
- where
- (sf2', c) = (sfTF' sf2) dt b
-
--- For SPJ: The following version did not work.
--- The commented out one below did work, by lambda-lifting cpCXAux
- cpCXA :: b -> SF' b c -> FunDesc c d -> SF' a d
- cpCXA b sf2 FDI = cpCX b sf2
- cpCXA _ _ (FDC c) = sfConst c
- cpCXA b (sf2 :: SF' b c) (fd3 :: FunDesc c d) = cpCXAAux sf2
- where
- f3 = fdFun fd3
-
- cpCXAAux :: SF' b c -> SF' a d
- cpCXAAux (SFArr _ fd2) = sfConst (f3 ((fdFun fd2) b))
- cpCXAAux (SFAcc _ _ _ cne) = sfConst (vfyNoEv b (f3 cne))
- cpCXAAux (SFCpAXA _ fd21 sf22 fd23) = cpCXA ((fdFun fd21) b) sf22 (fdComp fd23 fd3)
-
-{- -- For SPJ: This version works
- cpCXA :: b -> SF' b c -> FunDesc c d -> SF' a d
- cpCXA b sf2 FDI = cpCX b sf2
- cpCXA _ _ (FDC c) = sfConst c
- cpCXA b sf2 fd3 = cpCXAAux b fd3 (fdFun fd3) sf2
- where
- -- f3 = fdFun fd3
- -- Really something like: cpCXAAux :: SF' b c -> SF' a d
- cpCXAAux :: b -> FunDesc c d -> (c -> d) -> SF' b c -> SF' a d
- cpCXAAux b fd3 f3 (SFArr _ fd2) = sfConst (f3 ((fdFun fd2) b))
- cpCXAAux b fd3 f3 (SFAcc _ _ _ cne) = sfConst (vfyNoEv b (f3 cne))
- cpCXAAux b fd3 f3 (SFCpAXA _ fd21 sf22 fd23) = cpCXA ((fdFun fd21) b) sf22 (fdComp fd23 fd3)
--}
-
- cpGX :: (a -> b) -> SF' b c -> SF' a c
- cpGX f1 (SFArr _ fd2) = sfArr (fdComp (FDG f1) fd2)
- cpGX f1 (SFCpAXA _ fd21 sf22 fd23) =
- cpAXA (fdComp (FDG f1) fd21) sf22 fd23
- cpGX f1 sf2 = SFCpAXA tf (FDG f1) sf2 FDI
- where
- tf dt a = (cpGX f1 sf2', c)
- where
- (sf2', c) = (sfTF' sf2) dt (f1 a)
-
- cpXG :: SF' a b -> (b -> c) -> SF' a c
- cpXG (SFArr _ fd1) f2 = sfArr (fdComp fd1 (FDG f2))
- cpXG (SFAcc _ f1 s bne) f2 = sfAcc f s (f2 bne)
- where
- f s a = let (s', b) = f1 s a in (s', f2 b)
- cpXG (SFCpAXA _ fd11 sf12 fd22) f2 =
- cpAXA fd11 sf12 (fdComp fd22 (FDG f2))
- cpXG sf1 f2 = SFCpAXA tf FDI sf1 (FDG f2)
- where
- tf dt a = (cpXG sf1' f2, f2 b)
- where
- (sf1', b) = (sfTF' sf1) dt a
-
- cpEX :: (Event a -> b) -> b -> SF' b c -> SF' (Event a) c
- cpEX f1 f1ne (SFArr _ fd2) = sfArr (fdComp (FDE f1 f1ne) fd2)
- cpEX f1 f1ne (SFAcc _ f2 s cne) = sfAcc f s (vfyNoEv f1ne cne)
- where
- f s a = f2 s (fromEvent (f1 (Event a)))
- cpEX f1 f1ne (SFCpAXA _ fd21 sf22 fd23) =
- cpAXA (fdComp (FDE f1 f1ne) fd21) sf22 fd23
- cpEX f1 f1ne sf2 = SFCpAXA tf (FDE f1 f1ne) sf2 FDI
- where
- tf dt ea = (cpEX f1 f1ne sf2', c)
- where
- (sf2', c) = case ea of
- NoEvent -> (sfTF' sf2) dt f1ne
- _ -> (sfTF' sf2) dt (f1 ea)
-
- cpXE :: SF' a (Event b) -> (Event b -> c) -> c -> SF' a c
- cpXE (SFArr _ fd1) f2 f2ne = sfArr (fdComp fd1 (FDE f2 f2ne))
- cpXE (SFAcc _ f1 s bne) f2 f2ne = sfAcc f s (vfyNoEv bne f2ne)
- where
- f s a = let (s', eb) = f1 s a
- in
- case eb of NoEvent -> (s', f2ne); _ -> (s', f2 eb)
- cpXE (SFCpAXA _ fd11 sf12 fd13) f2 f2ne =
- cpAXA fd11 sf12 (fdComp fd13 (FDE f2 f2ne))
- cpXE sf1 f2 f2ne = SFCpAXA tf FDI sf1 (FDE f2 f2ne)
- where
- tf dt a = (cpXE sf1' f2 f2ne,
- case eb of NoEvent -> f2ne; _ -> f2 eb)
- where
- (sf1', eb) = (sfTF' sf1) dt a
diff --git a/testsuite/tests/ghc-regress/gadt/Session.hs b/testsuite/tests/ghc-regress/gadt/Session.hs
deleted file mode 100644
index 4403b6f869..0000000000
--- a/testsuite/tests/ghc-regress/gadt/Session.hs
+++ /dev/null
@@ -1,45 +0,0 @@
-{-# LANGUAGE GADTs, KindSignatures #-}
-
--- See Trac #1323; crashed GHC 6.6
-
-module Main where
-
-data Zero = Zero
- deriving (Show)
-
--- Change this newtype to a data and all's well
--- and it's not like the class restriction actually restricts
--- the type rather than the constructor
-newtype Succ p = Succ p deriving (Show)
-
-class TyNum a where
-instance TyNum Zero where
-instance (TyNum p) => TyNum (Succ p) where
-
-data List :: * -> * -> * where
- Nil :: List a Zero
- Cons :: (TyNum p) => a -> List a p -> List a (Succ p)
-
-instance (Show a) => Show (List a l) where
- show Nil = "Nil"
- show (Cons a t) = "Cons " ++ (show a) ++ " (" ++ (show t) ++ ")"
-
-zipL :: List a l -> List b l -> List (a, b) l
-zipL Nil Nil = Nil -- this line is fine
-zipL (Cons l ls) (Cons r rs) = Cons (l,r) (zipL ls rs) -- this line blows up
-
-l1 = Cons 5 (Cons 3 Nil)
-l2 = Cons True (Cons False Nil)
-
-main = print $ zipL l1 l2
-
-{-
-$ ghc --make Test.hs
-[1 of 1] Compiling Main ( Test.hs, Test.o )
-ghc-6.6: panic! (the 'impossible' happened)
- (GHC version 6.6 for x86_64-unknown-linux):
- Pattern match failure in do expression at simplCore/Simplify.lhs:1540:8-21
-
-Please report this as a GHC bug: http://www.haskell.org/ghc/reportabug
--}
-
diff --git a/testsuite/tests/ghc-regress/gadt/Session.stdout b/testsuite/tests/ghc-regress/gadt/Session.stdout
deleted file mode 100644
index e07f8c1c64..0000000000
--- a/testsuite/tests/ghc-regress/gadt/Session.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Cons (5,True) (Cons (3,False) (Nil))
diff --git a/testsuite/tests/ghc-regress/gadt/T1999.hs b/testsuite/tests/ghc-regress/gadt/T1999.hs
deleted file mode 100644
index 70f8531d17..0000000000
--- a/testsuite/tests/ghc-regress/gadt/T1999.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE FlexibleContexts, FlexibleInstances, GADTs #-}
-
-module Bug where
-
-class C a where
- f :: G a -> ()
-
-instance (C ()) => C (b c) where
- f (G x) = f x where
-
-data G a where
- G :: G () -> G (b c)
diff --git a/testsuite/tests/ghc-regress/gadt/T1999a.hs b/testsuite/tests/ghc-regress/gadt/T1999a.hs
deleted file mode 100644
index d8dbc077b9..0000000000
--- a/testsuite/tests/ghc-regress/gadt/T1999a.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE GADTs #-}
--- Trac #1999
-
-module ShouldCompile where
-
-data EqTypes a b where
- EqConstr :: EqTypes a b -> EqTypes (s a) (s b)
-
-eqUnConstr :: EqTypes (s a) (s b) -> EqTypes a b
-eqUnConstr (EqConstr eq) = eq \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/gadt/T2040.hs b/testsuite/tests/ghc-regress/gadt/T2040.hs
deleted file mode 100644
index 2ff4777523..0000000000
--- a/testsuite/tests/ghc-regress/gadt/T2040.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE GADTs, ScopedTypeVariables, FlexibleContexts,
- MultiParamTypeClasses #-}
-{-# OPTIONS_GHC -Wall #-}
-
-module T2040 where
-
-data Teq a b where Teq :: Teq a a
-
-class C a b where proof :: Teq a b
-
-data S a = S a
-
-data W b where
- -- This would make every version of GHC happy
- -- W :: (C a c , c ~ S b) => W a -> W c
- W :: C a (S b) => W a -> W (S b)
-
-foo :: W (S ()) -> W (S ()) -> ()
-foo (W (_ :: W a1)) (W (_ :: W a2)) =
- case proof :: Teq a1 (S ()) of
- Teq -> ()
-
-foo2 :: W (S ()) -> W (S ()) -> ()
-foo2 (W (_ :: W a1)) (W (_ :: W a2)) =
- case proof :: Teq a1 (S ()) of
- Teq -> case proof :: Teq a2 (S ()) of
- Teq -> () \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/gadt/T2151.hs b/testsuite/tests/ghc-regress/gadt/T2151.hs
deleted file mode 100644
index 339d231e80..0000000000
--- a/testsuite/tests/ghc-regress/gadt/T2151.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module T2151 where
-
-data Type a where
- Func :: Type a -> Type b -> Type (a -> b)
- PF :: Type a -> Type (PF a)
-
-data PF a where
- ID :: PF (a -> a)
-
-test :: Type a -> a -> a
-test (PF (Func _ _)) ID = ID
diff --git a/testsuite/tests/ghc-regress/gadt/T2587.hs b/testsuite/tests/ghc-regress/gadt/T2587.hs
deleted file mode 100644
index bcd0a443ac..0000000000
--- a/testsuite/tests/ghc-regress/gadt/T2587.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE GADTs, ExistentialQuantification #-}
-{-# OPTIONS_GHC -O -fno-warn-overlapping-patterns #-}
-
--- Trac #2587
--- Actually this bug related to free variables and
--- type lets, but ostensibly it has a GADT flavour
--- Hence being in the GADT directory.
-
-module GadtBug(bug) where
-
-data Existential = forall a . Existential (Gadt a)
-
-data Gadt a where Value :: Gadt Double
-
-bug = [ match undefined | ps <- undefined, _ <- ps ]
- where
- match (Existential _) = undefined
- match (Existential _) = undefined
diff --git a/testsuite/tests/ghc-regress/gadt/T3013.hs b/testsuite/tests/ghc-regress/gadt/T3013.hs
deleted file mode 100644
index 3b123a0d80..0000000000
--- a/testsuite/tests/ghc-regress/gadt/T3013.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE GADTs #-}
--- Trac 3013.
--- This isn't strictly a GADT test, but it uses GADT syntax
-
-module T3013 where
-
-data T where
- A, B :: T
- C :: T
- D, E :: Int -> T
-
-f :: T -> T
-f A = D 3
diff --git a/testsuite/tests/ghc-regress/gadt/T3163.hs b/testsuite/tests/ghc-regress/gadt/T3163.hs
deleted file mode 100644
index 13e5ff7de6..0000000000
--- a/testsuite/tests/ghc-regress/gadt/T3163.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE GADTs, RankNTypes, ImpredicativeTypes #-}
-
--- Test Trac #3163
-
-module Report where
-
-data Taker a where
- Unreached :: Taker (forall s. s)
-
diff --git a/testsuite/tests/ghc-regress/gadt/T3163.stderr b/testsuite/tests/ghc-regress/gadt/T3163.stderr
deleted file mode 100644
index e60ffcc47c..0000000000
--- a/testsuite/tests/ghc-regress/gadt/T3163.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T3163.hs:8:5:
- Illegal polymorphic or qualified type: forall s. s
- In the definition of data constructor `Unreached'
- In the data type declaration for `Taker'
diff --git a/testsuite/tests/ghc-regress/gadt/T3169.hs b/testsuite/tests/ghc-regress/gadt/T3169.hs
deleted file mode 100644
index b52ec2cf87..0000000000
--- a/testsuite/tests/ghc-regress/gadt/T3169.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE TypeFamilies, ScopedTypeVariables #-}
-module T3169 where
-
-import Prelude hiding ( lookup )
-
-class Key k where
- type Map k :: * -> *
- lookup :: k -> Map k elt -> Maybe elt
-
-instance (Key a, Key b) => Key (a,b) where
- type Map (a,b) = MP a b
- lookup (a,b) (m :: Map (a,b) elt)
- = case lookup a m :: Maybe (Map b elt) of
- Just (m2 :: Map b elt) -> lookup b m2 :: Maybe elt
-
-data MP a b elt = MP (Map a (Map b elt))
diff --git a/testsuite/tests/ghc-regress/gadt/T3169.stderr b/testsuite/tests/ghc-regress/gadt/T3169.stderr
deleted file mode 100644
index 100077066c..0000000000
--- a/testsuite/tests/ghc-regress/gadt/T3169.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-T3169.hs:13:13:
- Couldn't match type `elt' with `Map b elt'
- `elt' is a rigid type variable bound by
- the type signature for
- lookup :: (a, b) -> Map (a, b) elt -> Maybe elt
- at T3169.hs:12:3
- Expected type: Maybe (Map b elt)
- Actual type: Maybe elt
- In the return type of a call of `lookup'
- In the expression: lookup a m :: Maybe (Map b elt)
diff --git a/testsuite/tests/ghc-regress/gadt/T3638.hs b/testsuite/tests/ghc-regress/gadt/T3638.hs
deleted file mode 100644
index abb6a86169..0000000000
--- a/testsuite/tests/ghc-regress/gadt/T3638.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module T3638 where
-
-data T a where TInt :: T Int
-
-foo :: T Int -> Int
-foo TInt = 0
-
-{-# RULES "foo" forall x. foo x = case x of { TInt -> 0 } #-}
diff --git a/testsuite/tests/ghc-regress/gadt/T3651.hs b/testsuite/tests/ghc-regress/gadt/T3651.hs
deleted file mode 100644
index 9f671905c8..0000000000
--- a/testsuite/tests/ghc-regress/gadt/T3651.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE GADTs #-}
-{-# LANGUAGE TypeFamilies #-}
-
-module T3651 where
-
-data Z a where
- U :: Z ()
- B :: Z Bool
-
-unsafe1 :: Z a -> Z a -> a
-unsafe1 B U = ()
-
-unsafe2 :: a ~ b => Z b -> Z a -> a
-unsafe2 B U = ()
-
-unsafe3 :: a ~ b => Z a -> Z b -> a
-unsafe3 B U = True
diff --git a/testsuite/tests/ghc-regress/gadt/T3651.stderr b/testsuite/tests/ghc-regress/gadt/T3651.stderr
deleted file mode 100644
index d15e27aefa..0000000000
--- a/testsuite/tests/ghc-regress/gadt/T3651.stderr
+++ /dev/null
@@ -1,21 +0,0 @@
-
-T3651.hs:11:11:
- Couldn't match type `()' with `Bool'
- Inaccessible code in
- a pattern with constructor U :: Z (), in an equation for `unsafe1'
- In the pattern: U
- In an equation for `unsafe1': unsafe1 B U = ()
-
-T3651.hs:14:11:
- Couldn't match type `()' with `Bool'
- Inaccessible code in
- a pattern with constructor U :: Z (), in an equation for `unsafe2'
- In the pattern: U
- In an equation for `unsafe2': unsafe2 B U = ()
-
-T3651.hs:17:11:
- Couldn't match type `()' with `Bool'
- Inaccessible code in
- a pattern with constructor U :: Z (), in an equation for `unsafe3'
- In the pattern: U
- In an equation for `unsafe3': unsafe3 B U = True
diff --git a/testsuite/tests/ghc-regress/gadt/all.T b/testsuite/tests/ghc-regress/gadt/all.T
deleted file mode 100644
index 83f0836e55..0000000000
--- a/testsuite/tests/ghc-regress/gadt/all.T
+++ /dev/null
@@ -1,110 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-# setTestOpts(only_ways(['normal']));
-# Not only-normal: want optimisation too, to check coercion optimiser
-
-# In fast mode, we omit all the compile_and_run tests except a couple
-
-test('gadt1', normal, compile, [''])
-test('gadt2', skip_if_fast, compile_and_run, [''])
-test('gadt3', normal, compile, [''])
-test('gadt4', skip_if_fast, compile_and_run, [''])
-test('gadt5', skip_if_fast, compile_and_run, [''])
-test('gadt6', normal, compile, [''])
-test('gadt7', normal, compile, [''])
-test('gadt8', normal, compile, [''])
-test('gadt9', normal, compile, [''])
-test('gadt10', normal, compile_fail, [''])
-test('gadt11', normal, compile_fail, [''])
-test('gadt13', normal, compile, [''])
-test('gadt14', normal, compile, [''])
-test('gadt15', normal, compile, [''])
-test('gadt16', normal, compile, [''])
-
-test('gadt17',
- extra_clean(['Gadt17_help.hi', 'Gadt17_help.o']),
- run_command,
- ['$MAKE -s --no-print-directory gadt17'])
-
-test('gadt18', normal, compile, [''])
-test('gadt19', normal, compile, [''])
-test('gadt20', normal, compile, [''])
-test('gadt21', normal, compile_fail, [''])
-test('gadt22', normal, compile, [''])
-
-test('gadt23',
- extra_clean(['Gadt23_AST.hi', 'Gadt23_AST.o']),
- run_command,
- ['$MAKE -s --no-print-directory gadt23'])
-
-test('gadt24', normal, compile, [''])
-
-test('red-black', normal, compile, [''])
-test('type-rep', skip_if_fast, compile_and_run, [''])
-test('equal', normal, compile, [''])
-test('nbe', normal, compile, [''])
-test('while', normal, compile_and_run, [''])
-test('rw', normal, compile_fail, [''])
-test('lazypat', normal, compile_fail, [''])
-test('lazypatok', expect_fail, compile, [''])
-test('tc', normal, compile_and_run, [''])
-test('arrow', normal, compile, [''])
-test('tdpe', normal, compile, [''])
-test('Nilsson', skip_if_fast, compile, [''])
-
-if config.fast:
- test('records', normal, compile, [''])
-else:
- test('records', normal, compile_and_run, [''])
-test('ubx-records', skip_if_fast, compile_and_run, [''])
-test('records-fail1', normal, compile_fail, [''])
-
-test('doaitse', normal, compile, [''])
-test('josef', normal, compile, [''])
-
-# Interaction of fundeps with GADTs doesn't work well
-test('gadt-fd', expect_broken(345), compile, [''])
-
-test('karl1', normal, compile, [''])
-test('karl2', normal, compile, [''])
-test('data1', normal, compile, [''])
-test('data2', normal, compile, [''])
-
-test('termination', normal, compile, [''])
-test('set', normal, compile, [''])
-test('scoped', normal, compile, [''])
-test('gadt-escape1', normal, compile, [''])
-
-# New ones from Dimitrios
-
-# test('gadt-dim1', normal, compile, [''])
-# test('gadt-dim2', normal, compile_fail, [''])
-# test('gadt-dim3', normal, compile_fail, [''])
-# test('gadt-dim4', normal, compile, [''])
-# test('gadt-dim5', normal, compile, [''])
-# test('gadt-dim6', normal, compile, [''])
-# test('gadt-dim7', normal, compile, [''])
-# test('gadt-dim8', normal, compile, [''])
-# test('Arith', normal, compile, [''])
-
-test('Session', normal, compile_and_run, [''])
-test('CasePrune', normal, compile_and_run, [''])
-
-test('T1999', normal, compile, [''])
-test('T1999a', expect_broken(1999), compile, [''])
-
-test('T2587', normal, compile, [''])
-test('T2040', normal, compile, [''])
-test('T2151', normal, compile, [''])
-test('T3013', normal, compile, [''])
-test('T3163', normal, compile_fail, [''])
-test('gadt25', normal, compile, [''])
-test('T3651', normal, compile_fail, [''])
-test('T3638', normal, compile, [''])
-
-test('gadtSyntax001', if_compiler_lt('ghc', '7.1', expect_fail), compile, [''])
-test('gadtSyntaxFail001', if_compiler_lt('ghc', '7.1', expect_fail), compile_fail, [''])
-test('gadtSyntaxFail002', if_compiler_lt('ghc', '7.1', expect_fail), compile_fail, [''])
-test('gadtSyntaxFail003', if_compiler_lt('ghc', '7.1', expect_fail), compile_fail, [''])
-test('T3169', normal, compile_fail, [''])
-
diff --git a/testsuite/tests/ghc-regress/gadt/arrow.hs b/testsuite/tests/ghc-regress/gadt/arrow.hs
deleted file mode 100644
index 1abc535a0b..0000000000
--- a/testsuite/tests/ghc-regress/gadt/arrow.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module Opt where
-import Control.Arrow
-import Control.Category
-import Prelude hiding (id, (.))
-
-data Opt arr a b where
- Lift :: arr a b -> Opt arr a b
- First :: Opt arr a b -> Opt arr (a,c) (b,c)
-
-runOpt :: Arrow arr => Opt arr a b -> arr a b
-runOpt (Lift f) = f
-runOpt (First f) = first (runOpt f)
-
-instance Arrow arr => Category (Opt arr) where
- id = Lift id
- First f . First g = First (f . g)
- f . g = Lift (runOpt f . runOpt g)
-
-instance Arrow arr => Arrow (Opt arr) where
- arr = Lift . arr
-
- first = First
diff --git a/testsuite/tests/ghc-regress/gadt/data1.hs b/testsuite/tests/ghc-regress/gadt/data1.hs
deleted file mode 100644
index 9dac84000e..0000000000
--- a/testsuite/tests/ghc-regress/gadt/data1.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- Trac #289
-
-module ShouldCompile where
-
-class C a where
- f :: a -> Bool
-
-data T a where
- MkT :: (C a) => a -> T a
-
-tf1 :: T Int -> Bool
-tf1 (MkT aa) = f aa
-
-tf2 :: T a -> Bool
-tf2 (MkT aa) = f aa
diff --git a/testsuite/tests/ghc-regress/gadt/data2.hs b/testsuite/tests/ghc-regress/gadt/data2.hs
deleted file mode 100644
index 5b8a009d05..0000000000
--- a/testsuite/tests/ghc-regress/gadt/data2.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE GADTs, ExistentialQuantification #-}
-
--- Trac #289
-
-module ShouldCompile where
-
-class Foo a where
- foo :: a -> Int
-
-data T = forall a. T (G a)
-data G a where
- A :: G a
- B :: Foo a => a -> G a
-
-doFoo :: T -> Int
-doFoo (T A) = 2
-doFoo (T (B x)) = foo x
-
-
diff --git a/testsuite/tests/ghc-regress/gadt/doaitse.hs b/testsuite/tests/ghc-regress/gadt/doaitse.hs
deleted file mode 100644
index 51525bb573..0000000000
--- a/testsuite/tests/ghc-regress/gadt/doaitse.hs
+++ /dev/null
@@ -1,55 +0,0 @@
-{-# LANGUAGE GADTs, ExistentialQuantification, ScopedTypeVariables,
- Rank2Types #-}
-
--- Here's an example from Doaitse Swiestra (Sept 06)
--- which requires use of scoped type variables
---
--- It's a cut-down version of a larger program
---
--- It's also one which was sensitive to syntactic order
--- in GHC 6.4; but not in 6.6
-
-module ShouldCompile where
-
-data Exists f = forall a . Exists (f a)
-
-data Ref env a where
- Zero :: Ref (a,env') a
- Suc :: Ref env' a -> Ref (x,env') a
-
-data Find env final = Find (forall a . Ref env a -> Maybe (Ref final a))
-
-data Equal a b where
- Eq :: Equal a a
-
-sym :: Equal a b -> Equal b a
-sym Eq = Eq
-
-match' :: Ref env' a -> Ref env'' a -> Bool
-match' _ _ = True
-
-match :: Ref env a -> Ref env b -> Maybe (Equal a b)
-match Zero Zero = Just Eq
-match (Suc x)(Suc y) = match x y
-match _ _ = Nothing
-
--- Notice the essential type sig for the argument to Exists
-f1 :: forall env. (Exists (Ref env)) -> Exists (Find env)
-f1 (Exists (ref1 :: Ref env b))
- = Exists ( Find (\ ref2 -> case match ref2 ref1 of
- Just Eq -> Just Zero
- _ -> Nothing
- ):: Find env (b,())
- )
-
-
--- same as 'f1' except that 'ref1' and 'ref2' are swapped in the
--- application of 'match'
-f2 :: forall env. (Exists (Ref env)) -> Exists (Find env)
-f2 (Exists (ref1 :: Ref env b))
- = Exists (Find (\ ref2 -> case match ref1 ref2 of
- Just Eq -> Just Zero
- _ -> Nothing
- ) :: Find env (b,())
- )
-
diff --git a/testsuite/tests/ghc-regress/gadt/equal.hs b/testsuite/tests/ghc-regress/gadt/equal.hs
deleted file mode 100644
index b6c0bf572e..0000000000
--- a/testsuite/tests/ghc-regress/gadt/equal.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module ShouldCompile where
-
-data Rep t where
- Rint :: Rep Int
- Rchar :: Rep Char
- Runit :: Rep ()
- Rpair :: Rep a -> Rep b -> Rep (a,b)
- Rsum :: Rep a -> Rep b -> Rep (Either a b)
- Rcon :: String -> Rep t -> Rep t
-
-data Equal a b where
- Eq :: Equal c c
-
-test :: Rep a -> Rep b -> Maybe (Equal a b)
-test Rint Rint = return Eq
-test Rchar Rchar = return Eq
-test Runit Runit = return Eq
-test (Rpair x y) (Rpair a b)
- = do { Eq <- test x a; Eq <- test y b; return Eq }
-test (Rsum x y) (Rsum a b)
- = do { Eq <- test x a; Eq <- test y b; return Eq }
-test (Rcon s1 x) (Rcon s2 y)
- = if s1==s2 then test x y else Nothing
-test _ _ = Nothing
-
-f :: Equal a b -> a -> b -> b
-f Eq x y = x
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt-dim1.hs b/testsuite/tests/ghc-regress/gadt/gadt-dim1.hs
deleted file mode 100644
index 641f04d0e6..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt-dim1.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module ShouldCompile where
-
-data T a where
- C :: Int -> T Int
- D :: Bool -> T Bool
-
-foo :: T a -> a
-foo (C x) = x
-foo (D x) = x
diff --git a/testsuite/tests/ghc-regress/gadt/gadt-dim2.hs b/testsuite/tests/ghc-regress/gadt/gadt-dim2.hs
deleted file mode 100644
index 239275b42d..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt-dim2.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module ShouldFail2 where
-
-data T a where
- C :: Int -> T Int
- D :: Bool -> T Bool
-
--- should fail because variable is wobbly
-foo (C x) = x
-foo (D b) = b
diff --git a/testsuite/tests/ghc-regress/gadt/gadt-dim3.hs b/testsuite/tests/ghc-regress/gadt/gadt-dim3.hs
deleted file mode 100644
index ae43147c92..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt-dim3.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module ShouldSucceed5 where
-
-
-data T a where
- C :: T Bool
- D :: T Int
-
-
-data Y a where
- E :: Y Bool
-
-
--- should succeed, the first branch is simply inaccessible
-foo :: T Bool -> Bool
-foo (D) = True
-foo (C) = False
-
--- should succeed, the branch is inaccessible and not even type checked
-baz :: Y Int -> Int
-baz (E) = "dimitris!"
-
--- should fail => it is an attempt to call an inaccessible branch
-test = baz (E)
diff --git a/testsuite/tests/ghc-regress/gadt/gadt-dim4.hs b/testsuite/tests/ghc-regress/gadt/gadt-dim4.hs
deleted file mode 100644
index feb16c7de1..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt-dim4.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module ShouldSucceed1 where
-
-data T1 a where
- C :: (T2 b) -> b -> T1 Int
- D :: Bool -> T1 Bool
-
- -- should this work?
-data T2 a where
- F :: Int -> T2 Int
-
-
--- Should work, even though we start as wobbly
--- the existential makes us rigid again
-foo x = case x of
- C (F _) z -> (z + 1)
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt-dim5.hs b/testsuite/tests/ghc-regress/gadt/gadt-dim5.hs
deleted file mode 100644
index 126cc710df..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt-dim5.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module ShouldSucceed2 where
-
-data T a where
- C :: Int -> T Int
- D :: Bool -> T Bool
-
-
-foo :: T a -> a
-foo (C x) = x + 1
-foo (D x) = True
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt-dim6.hs b/testsuite/tests/ghc-regress/gadt/gadt-dim6.hs
deleted file mode 100644
index a8075e225b..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt-dim6.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module ShouldSucceed3 where
-
-
-data T a where
- C :: T b -> b -> T Int
- D :: T Bool
-
--- Tests scoped annotations
-foo :: T a -> a -> a
-foo (C y (x::b)) (z::a) = z + 1
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt-dim7.hs b/testsuite/tests/ghc-regress/gadt/gadt-dim7.hs
deleted file mode 100644
index 0ea3633fa3..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt-dim7.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module ShouldSucceed4 where
-
-data Z
-data S a
-
-
-data Add n m r where
- PZero :: Add Z m m
- PSucc :: Add n m p -> Add (S n) m (S p)
-
-
-data XList n a where
- XNil :: XList Z a
- XCons :: a -> XList n a -> XList (S n) a
-
-
--- simple safe append function
-append :: (Add n m r) -> XList n a -> XList m a -> XList r a
-append PZero XNil l = l
-append (PSucc prf) (XCons x xs) l = XCons x (append prf xs l)
-
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt-dim8.hs b/testsuite/tests/ghc-regress/gadt/gadt-dim8.hs
deleted file mode 100644
index 9735c73fdf..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt-dim8.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module ShouldSucceed5 where
-
-
-data T a where
- C :: T Bool
- D :: T Int
-
-
-data Y a where
- E :: T Bool
-
-
--- should succeed, the first branch is simply inaccessible
-foo :: T Bool -> Bool
-foo (D) = True
-foo (C) = False
-
--- should succeed, the branch is inaccessible and not een type checked
-baz :: Y Int -> Int
-baz (E) = "dimitris!"
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt-escape1.hs b/testsuite/tests/ghc-regress/gadt/gadt-escape1.hs
deleted file mode 100644
index 4ff33b299b..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt-escape1.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE GADTs, ExistentialQuantification #-}
-
-module Escape where
-
-data ExpGADT t where
- ExpInt :: Int -> ExpGADT Int
-
-data Hidden = forall t . Hidden (ExpGADT t) (ExpGADT t)
-
-hval = Hidden (ExpInt 0) (ExpInt 1)
-
--- With the type sig this is ok, but without it maybe
--- should be rejected becuase the result type is wobbly
--- weird1 :: ExpGADT Int
-
-weird1 = case (hval :: Hidden) of Hidden (ExpInt _) a -> a
- -- Hidden t (ExpInt (co :: t ~ Int) _ :: ExpGADT t) (a :: ExpGADT t)
-
-weird2 :: ExpGADT Int
-weird2 = case (hval :: Hidden) of Hidden (ExpInt _) a -> a
diff --git a/testsuite/tests/ghc-regress/gadt/gadt-escape1.stderr b/testsuite/tests/ghc-regress/gadt/gadt-escape1.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt-escape1.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/gadt/gadt-fd.hs b/testsuite/tests/ghc-regress/gadt/gadt-fd.hs
deleted file mode 100644
index 4db7b62889..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt-fd.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- Trac #345
-
-module ShouldCompile where
-
-data Succ n
-data Zero
-
-class Plus x y z | x y -> z
-instance Plus Zero x x
-instance Plus x y z => Plus (Succ x) y (Succ z)
-
-infixr 5 :::
-
-data List :: * -> * -> * where
- Nil :: List a Zero
- (:::) :: a -> List a n -> List a (Succ n)
-
-append :: Plus x y z => List a x -> List a y -> List a z
-append Nil ys = ys
-append (x ::: xs) ys = x ::: append xs ys
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt1.hs b/testsuite/tests/ghc-regress/gadt/gadt1.hs
deleted file mode 100644
index 3412d90cf2..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt1.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE GADTs, Rank2Types #-}
-
-module ShouldCompile where
-
--- Checks for bindInstsOfPatId
-f :: (forall a. Eq a => a -> a) -> Bool
-f g = g True \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/gadt/gadt10.hs b/testsuite/tests/ghc-regress/gadt/gadt10.hs
deleted file mode 100644
index 6217405a0b..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt10.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module ShouldFail where
-
--- Kind error
-data RInt a where R :: RInt
diff --git a/testsuite/tests/ghc-regress/gadt/gadt10.stderr b/testsuite/tests/ghc-regress/gadt/gadt10.stderr
deleted file mode 100644
index 100c84bab7..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt10.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-gadt10.hs:6:24:
- `RInt' is not applied to enough type arguments
- Expected kind `?', but `RInt' has kind `k0 -> *'
- In the type `RInt'
- In the definition of data constructor `R'
- In the data type declaration for `RInt'
diff --git a/testsuite/tests/ghc-regress/gadt/gadt11.hs b/testsuite/tests/ghc-regress/gadt/gadt11.hs
deleted file mode 100644
index a5000442fa..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt11.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module ShouldFail where
-
--- Wrong return type
-data X f = X (f ())
-
-data B a where
- B1 :: X []
- B2 :: B [Int]
-
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt11.stderr b/testsuite/tests/ghc-regress/gadt/gadt11.stderr
deleted file mode 100644
index 721b148495..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt11.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-gadt11.hs:9:3:
- Data constructor `B1' returns type `X []'
- instead of an instance of its parent type `B a'
- In the definition of data constructor `B1'
- In the data type declaration for `B'
diff --git a/testsuite/tests/ghc-regress/gadt/gadt13.hs b/testsuite/tests/ghc-regress/gadt/gadt13.hs
deleted file mode 100644
index bd25262ca6..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt13.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- This should fail, because there is no annotation on shw,
--- but it succeeds in 6.4.1
-
-module ShouldFail where
-
-data Term a where
- B :: Bool -> Term Bool
- I :: Int -> Term Int
-
-shw (I t) = ("I "++) . shows t
--- shw (B t) = ("B "++) . shows t
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt13.stderr b/testsuite/tests/ghc-regress/gadt/gadt13.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt13.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/gadt/gadt14.hs b/testsuite/tests/ghc-regress/gadt/gadt14.hs
deleted file mode 100644
index c5bdbcb5de..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt14.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- Check that trailing parens are ok in data con signatures
-
-module ShouldCompile where
-
-data T where
- MkT :: Int -> (Int -> T)
diff --git a/testsuite/tests/ghc-regress/gadt/gadt15.hs b/testsuite/tests/ghc-regress/gadt/gadt15.hs
deleted file mode 100644
index c6d3cc9442..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt15.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- Triggered a desugaring bug in earlier verison
-
-module Shouldcompile where
-
-data T a where
- T1 :: Int -> T Int
-
-f :: (T a, a) -> Int
-f (T1 x, z) = z
diff --git a/testsuite/tests/ghc-regress/gadt/gadt16.hs b/testsuite/tests/ghc-regress/gadt/gadt16.hs
deleted file mode 100644
index 133c833903..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt16.hs
+++ /dev/null
@@ -1,47 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-{- This code, courtesy of Markus Lauer (markus.lauer-2006@lauerit.de)
- was rejected by the sophisticated wobbly-type impl in 6.4.1, and
- with a terrible error message:
- Sample.hs:22:40:
- Couldn't match `MayFail' against `MayFail'
- Expected type: Result s b
- Inferred type: Result MayFail a
- In the first argument of `Return', namely `Fail'
- In a case alternative: Fail -> return Fail
-
- Strangely it is accepted by the simplified impl in GHC 6.5. -}
-
-module Sample where
-
-data Safe
-data MayFail
-
-data Result s a where
- Ok :: a -> Result s a
- Fail :: Result MayFail a
-
-newtype M s a = M { unM :: IO (Result s a) }
-
-instance Monad (M s) where
-
- return x = M (return (Ok x))
-
- {- this one gives a type error in 6.4.1 -}
- M m >>= k = M (do res <- m
- case res of
- Ok x -> unM (k x)
- Fail -> return Fail
- )
-
- {- while this one works -}
- -- M m >>= k = M (f m (unM . k))
- -- where
- -- f :: IO (Result s a) -> (a -> IO (Result s b)) -> IO (Result s b)
- -- f m k = do res <- m
- -- case res of
- -- Ok x -> k x
- -- Fail -> return Fail
-
-
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt17.hs b/testsuite/tests/ghc-regress/gadt/gadt17.hs
deleted file mode 100644
index acef8100dc..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt17.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE GADTs #-}
-{-# OPTIONS_GHC -O #-}
-
--- This one showed up a bug that required type refinement in TcIface
--- See the call to coreRefineTys in TcIface
---
--- Tests for bug: http://hackage.haskell.org/trac/ghc/ticket/685
-
-module ShouldCompile where
-
-import Gadt17_help ( TernOp (..), applyTernOp )
-
-liftTernOpObs :: TernOp a b c d -> a -> b -> c -> d
-liftTernOpObs op x y z = applyTernOp op x y z
diff --git a/testsuite/tests/ghc-regress/gadt/gadt18.hs b/testsuite/tests/ghc-regress/gadt/gadt18.hs
deleted file mode 100644
index 4ac12efa84..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt18.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE GADTs #-}
--- A simple GADT test from Roman
--- which nevertheless showed up a bug at one stage
-
-module ShouldCompile where
-
-data T a where
- T1 :: () -> T ()
- T2 :: T a -> T b -> T (a,b)
-
-class C a where
- f :: T a -> a
-
-instance C () where
- f (T1 x) = x
-
-instance (C a, C b) => C (a,b) where
- f (T2 x y) = (f x, f y)
diff --git a/testsuite/tests/ghc-regress/gadt/gadt19.hs b/testsuite/tests/ghc-regress/gadt/gadt19.hs
deleted file mode 100644
index 34b0d291b5..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt19.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- Involves an equality that is not an existential
-
-module Foo2 where
-
-data T t a where
- T :: a -> T () a
-
-foo :: (a -> a) -> T t a -> T t a
-foo f (T x) = T (f x)
-
-bar :: T t Int -> T t Int
-bar t@(T _) = foo (+1) t
-
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt2.hs b/testsuite/tests/ghc-regress/gadt/gadt2.hs
deleted file mode 100644
index 886b702ce7..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt2.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE ExplicitForAll,GADTs #-}
-
--- Pattern match uses dictionaries bound higher up in the pattern
-
-module Main where
-
-data T = forall a. Integral a => T a
-
-f :: T -> Bool
-f (T 0) = True
-f (T n) = False
-
-g :: T -> Ordering
-g (T n) | n >= 3 = if n>3 then GT else EQ
-g (T n) = LT
-
-main = do print [f (T 0), f (T 1)]
- print [g (T 2), g (T 3), g (T 4)]
diff --git a/testsuite/tests/ghc-regress/gadt/gadt2.stdout b/testsuite/tests/ghc-regress/gadt/gadt2.stdout
deleted file mode 100644
index 75df5cd9a1..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt2.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-[True,False]
-[LT,EQ,GT]
diff --git a/testsuite/tests/ghc-regress/gadt/gadt20.hs b/testsuite/tests/ghc-regress/gadt/gadt20.hs
deleted file mode 100644
index c754831ce5..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt20.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE GADTs, KindSignatures #-}
-
--- Test for trac #810
--- Should be able to infer bool :: Bool and integer :: Integer, so
--- we should know that they both have Show instances.
-
-module Foo where
-
-data Pair :: (* -> *) -> * where
- Pair :: a b -> b -> Pair a
-
-data Sel :: * -> * where
- A :: Sel Bool
- B :: Sel Integer
-
-showSnd :: Pair Sel -> String
-showSnd (Pair A bool) = show bool
-showSnd (Pair B integer) = show integer
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt21.hs b/testsuite/tests/ghc-regress/gadt/gadt21.hs
deleted file mode 100644
index b452d083c1..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt21.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE GADTs, ExistentialQuantification, KindSignatures, Rank2Types #-}
-
--- Fails (needs the (Ord a) in TypeSet
--- c.f. gadt22.hs
-
-module Expr where
-
-import Data.Set (Set)
-
-data Type a where
- TypeInt :: Type Int
- TypeSet :: {- Ord a => -} Type a -> Type (Set a)
- TypeFun :: Type a -> Type b -> Type (a -> b)
-
-data Expr :: * -> * where
- Const :: Type a -> a -> Expr a
-
-data DynExpr = forall a. DynExpr (Expr a)
-
-withOrdDynExpr :: DynExpr -> (forall a. Ord a => Expr a -> b) -> Maybe b
-withOrdDynExpr (DynExpr e@(Const (TypeSet _) _)) f = Just (f e)
-withOrdDynExpr (DynExpr e@(Const TypeInt _)) f = Just (f e)
-withOrdDynExpr _ _ = Nothing
diff --git a/testsuite/tests/ghc-regress/gadt/gadt21.stderr b/testsuite/tests/ghc-regress/gadt/gadt21.stderr
deleted file mode 100644
index 061c563465..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt21.stderr
+++ /dev/null
@@ -1,20 +0,0 @@
-
-gadt21.hs:21:60:
- Could not deduce (Ord a1) arising from a use of `f'
- from the context (a ~ Set a1)
- bound by a pattern with constructor
- TypeSet :: forall a. Type a -> Type (Set a),
- in an equation for `withOrdDynExpr'
- at gadt21.hs:21:35-43
- Possible fix:
- add (Ord a1) to the context of
- the data constructor `TypeSet'
- or the data constructor `DynExpr'
- or the type signature for
- withOrdDynExpr :: DynExpr
- -> (forall a. Ord a => Expr a -> b)
- -> Maybe b
- In the first argument of `Just', namely `(f e)'
- In the expression: Just (f e)
- In an equation for `withOrdDynExpr':
- withOrdDynExpr (DynExpr e@(Const (TypeSet _) _)) f = Just (f e)
diff --git a/testsuite/tests/ghc-regress/gadt/gadt22.hs b/testsuite/tests/ghc-regress/gadt/gadt22.hs
deleted file mode 100644
index f456198ff1..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt22.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE GADTs, ExistentialQuantification, KindSignatures, Rank2Types #-}
-
--- Succeeds (needs the (Ord a) in TypeSet
--- c.f. gadt21.hs
-
--- However, it's a useful test because it unearthed a bug
--- in free-variable-finding
-
-module Expr where
-
-import Data.Set (Set)
-
-data Type a where
- TypeInt :: Type Int
- TypeSet :: Ord a => Type a -> Type (Set a)
- TypeFun :: Type a -> Type b -> Type (a -> b)
-
-data Expr :: * -> * where
- Const :: Type a -> a -> Expr a
-
-data DynExpr = forall a. DynExpr (Expr a)
-
-withOrdDynExpr :: DynExpr -> (forall a. Ord a => Expr a -> b) -> Maybe b
-withOrdDynExpr (DynExpr e@(Const (TypeSet _) _)) f = Just (f e)
-withOrdDynExpr (DynExpr e@(Const TypeInt _)) f = Just (f e)
-withOrdDynExpr _ _ = Nothing
diff --git a/testsuite/tests/ghc-regress/gadt/gadt23.hs b/testsuite/tests/ghc-regress/gadt/gadt23.hs
deleted file mode 100644
index 95e2710292..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt23.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module Main where
-
-import Gadt23_AST
-
-data Foo = Foo { bar :: Int }
-
-convert :: AST a tag -> AST a Foo
-convert t = case t of
- Var v -> Tag (Foo 42) $ Var v
- Tag t e -> Tag (Foo 42) $ convert e
-
-main = return ()
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt24.hs b/testsuite/tests/ghc-regress/gadt/gadt24.hs
deleted file mode 100644
index 86cece09dd..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt24.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- Test for Trac #1396
--- Panics in GHC 6.6.1
-
-module ShouldCompile where
-
-data Right provides final where
- RightNull :: Right final final
- RightCons :: b -> Right a final -> Right (b -> a) final
-
-collapse_right :: right -> Right right final -> final
---collapse_right f (RightNull) = f
-collapse_right f (RightCons b r) = collapse_right (f b) r
diff --git a/testsuite/tests/ghc-regress/gadt/gadt25.hs b/testsuite/tests/ghc-regress/gadt/gadt25.hs
deleted file mode 100644
index 99aecad3fb..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt25.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- From the ghc-users mailing list
-
-module Foo where
-
-data TValue t where
- TList :: [a] -> TValue [a]
-
-instance (Eq b) => Eq (TValue b) where
- (==) (TList p) (TList q) = (==) p q
-
-{- My reply to the list
-
-Here's the reasoning (I have done a bit of renaming).
-
-* The TList constructor really has type
- TList :: forall a. forall x. (a~[x]) => [x] -> TValue a
-
-* So in the pattern match we have
- (Eq b) available from the instance header
- TList p :: TValue b
- x is a skolem, existentially bound by the pattern
- p :: [x]
- b ~ [x] available from the pattern match
-
-* On the RHS we find we need (Eq [x]).
-
-* So the constraint problem we have is
- (Eq b, b~[x]) => Eq [x]
- ["Given" => "Wanted"]
- Can we prove this? From the two given constraints we can see
- that we also have Eq [x], and that certainly proves Eq [x].
-
-
-Nevertheless, it's a bit delicate. If we didn't notice all the
-consequences of the "given" constraints, we might use the top-level Eq
-a => Eq [a] instance to solve the wanted Eq [x]. And now we need Eq
-x, which *isn't* a consequence of (Eq b, b~[x]).
-
--} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/gadt/gadt3.hs b/testsuite/tests/ghc-regress/gadt/gadt3.hs
deleted file mode 100644
index b58301e131..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt3.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module ShouldCompile where
-
-data T where
- T1 :: Int -> T
- T2 :: Bool -> Bool -> T
-
-data S a where
- S1 :: a -> S a
- S2 :: Int -> S Int
-
-f (T1 i) = i>0
-f (T2 a b) = a && b
-
-g :: S a -> a
-g (S1 x) = x
-g (S2 i) = i
diff --git a/testsuite/tests/ghc-regress/gadt/gadt4.hs b/testsuite/tests/ghc-regress/gadt/gadt4.hs
deleted file mode 100644
index 0d78135597..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt4.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module Main where
-
-data Term a where
- Lit :: Int -> Term Int
- IsZero :: Term Int -> Term Bool
- If :: Term Bool -> Term a -> Term a -> Term a
-
-
-eval :: Term a -> a
-eval (Lit n) = n
-eval (IsZero t) = eval t == 0
-eval (If t1 t2 t3) = if eval t1 then eval t2 else eval t3
-
-term = If (IsZero (Lit 1)) (Lit 2) (Lit 3)
-
-main = print (eval term) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/gadt/gadt4.stdout b/testsuite/tests/ghc-regress/gadt/gadt4.stdout
deleted file mode 100644
index 00750edc07..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt4.stdout
+++ /dev/null
@@ -1 +0,0 @@
-3
diff --git a/testsuite/tests/ghc-regress/gadt/gadt5.hs b/testsuite/tests/ghc-regress/gadt/gadt5.hs
deleted file mode 100644
index 5db3deef8c..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt5.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module Main where
-
-data Term a where
- Lit :: Int -> Term Int
- IsZero :: Term Int -> Term Bool
- If :: Term Bool -> Term a -> Term a -> Term a
- Pr :: Term a -> Term b -> Term (a, b)
- Fst :: Term (a, b) -> Term a
- Snd :: Term (a, b) -> Term b
-
-eval :: Term v -> v
-eval (Lit n) = n
-eval (IsZero t) = eval t == 0
-eval (If t1 t2 t3) = if eval t1 then eval t2 else eval t3
-eval (Pr t1 t2) = (eval t1, eval t2)
-eval (Fst t) = case (eval t) of { (a,b) -> a }
-eval (Snd t) = case (eval t) of { (a,b) -> b }
-
-term = If (IsZero (Lit 1)) (Pr (Lit 2) (Lit 3)) (Pr (Lit 3) (Lit 4))
-
-main = print (eval term) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/gadt/gadt5.stdout b/testsuite/tests/ghc-regress/gadt/gadt5.stdout
deleted file mode 100644
index 764f565258..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt5.stdout
+++ /dev/null
@@ -1 +0,0 @@
-(3,4)
diff --git a/testsuite/tests/ghc-regress/gadt/gadt6.hs b/testsuite/tests/ghc-regress/gadt/gadt6.hs
deleted file mode 100644
index 606d04e8a4..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt6.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module ShouldCompile where
-
-data T a where
- T :: b -> (b->Int) -> a -> T a
-
-f (T b f a) = a
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt7.hs b/testsuite/tests/ghc-regress/gadt/gadt7.hs
deleted file mode 100644
index 9c775d2f23..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt7.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-{-# LANGUAGE GADTs, RankNTypes, ScopedTypeVariables #-}
-
--- From Yann Regis-Gianas at INRIA
-
-module ShouldCompile where
-
-data T a where
- K :: T Int
-
--- Should fail
-i1 :: T a -> a -> Int
-i1 t y = (\t1 y1 -> case t1 of K -> y1) t y
-
--- No type signature; should type-check
-i1b t y = (\t1 y1 -> case t1 of K -> y1) t y
-
-i2 :: T a -> a -> Int
-i2 t (y::b) = case t of { K -> y+(1::Int) }
-
-i3 :: forall a. T a -> a -> Int
-i3 t y
- = let t1 = t in
- let y1 = y in
- case t1 of K -> y1
-
-i4 :: forall a. T a -> a -> Int
-i4 (t :: T a) (y :: a)
- = let t1 = t in
- let y1 = y in
- case t1 of K -> y1
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt7.stderr b/testsuite/tests/ghc-regress/gadt/gadt7.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt7.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/gadt/gadt8.hs b/testsuite/tests/ghc-regress/gadt/gadt8.hs
deleted file mode 100644
index 1cad8f65cc..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt8.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE GADTs, KindSignatures #-}
-
--- Test a couple of trivial things:
--- explicit layout
--- trailing semicolons
--- kind signatures
-module ShouldCompile where
-
-data Expr :: * -> * where {
- EInt :: Int -> Expr Int ;
- EBool :: Bool -> Expr Bool ;
- EIf :: (Expr Bool) -> (Expr a) -> (Expr a) -> Expr a ;
- -- Note trailing semicolon, should be ok
- }
-
diff --git a/testsuite/tests/ghc-regress/gadt/gadt9.hs b/testsuite/tests/ghc-regress/gadt/gadt9.hs
deleted file mode 100644
index df9e0bceb2..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadt9.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- This one requires careful handling in
--- TcUnify.unifyTyConApp, to preserve rigidity.
-
-module ShouldCompile where
-
-data X a b where
- X :: X a a
-
-data Y x a b where
- Y :: x a b -> x b c -> Y x a c
-
-doy :: Y X a b -> Y X a b
-doy (Y X X) = Y X X
diff --git a/testsuite/tests/ghc-regress/gadt/gadtSyntax001.hs b/testsuite/tests/ghc-regress/gadt/gadtSyntax001.hs
deleted file mode 100644
index fa6b8ce646..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadtSyntax001.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-{-# LANGUAGE GADTSyntax #-}
-
-module GadtSyntax001 where
-
-data Foo a b where
- C1 :: a -> Int -> b -> Foo b a
- C2 :: a -> Char -> Foo a b
- Cs :: Foo a b
diff --git a/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail001.hs b/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail001.hs
deleted file mode 100644
index 8fd8bfdf5b..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail001.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-{-# LANGUAGE GADTSyntax #-}
-
-module GadtSyntaxFail001 where
-
-data Foo a b where
- C1 :: a -> Int -> b -> Foo b a
- C2 :: a -> Char -> Foo a Int
- Cs :: Foo a b
diff --git a/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail001.stderr b/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail001.stderr
deleted file mode 100644
index 363ad04d5a..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail001.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-gadtSyntaxFail001.hs:8:5:
- Data constructor `C2' has existential type variables, a context, or a specialised result type
- (Use -XExistentialQuantification or -XGADTs to allow this)
- In the definition of data constructor `C2'
- In the data type declaration for `Foo'
diff --git a/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail002.hs b/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail002.hs
deleted file mode 100644
index cb33d6795e..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail002.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-{-# LANGUAGE GADTSyntax #-}
-
-module GadtSyntaxFail002 where
-
-data Foo a b where
- C1 :: a -> Int -> b -> Foo b a
- C2 :: a -> Char -> Foo a a
- Cs :: Foo a b
diff --git a/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail002.stderr b/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail002.stderr
deleted file mode 100644
index c8bdbab224..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail002.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-gadtSyntaxFail002.hs:8:5:
- Data constructor `C2' has existential type variables, a context, or a specialised result type
- (Use -XExistentialQuantification or -XGADTs to allow this)
- In the definition of data constructor `C2'
- In the data type declaration for `Foo'
diff --git a/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail003.hs b/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail003.hs
deleted file mode 100644
index 10c67200fc..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail003.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-{-# LANGUAGE GADTSyntax #-}
-
-module GadtSyntaxFail003 where
-
-data Foo a b where
- C1 :: a -> Int -> c -> Foo b a
- C2 :: a -> Char -> Foo a b
- Cs :: Foo a b
diff --git a/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail003.stderr b/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail003.stderr
deleted file mode 100644
index 436bb76ca2..0000000000
--- a/testsuite/tests/ghc-regress/gadt/gadtSyntaxFail003.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-gadtSyntaxFail003.hs:7:5:
- Data constructor `C1' has existential type variables, a context, or a specialised result type
- (Use -XExistentialQuantification or -XGADTs to allow this)
- In the definition of data constructor `C1'
- In the data type declaration for `Foo'
diff --git a/testsuite/tests/ghc-regress/gadt/josef.hs b/testsuite/tests/ghc-regress/gadt/josef.hs
deleted file mode 100644
index 3be7dc28dc..0000000000
--- a/testsuite/tests/ghc-regress/gadt/josef.hs
+++ /dev/null
@@ -1,69 +0,0 @@
-{-# LANGUAGE GADTs, KindSignatures,
- MultiParamTypeClasses, FunctionalDependencies #-}
-
--- Program from Josef Svenningsson
-
--- Just a short explanation of the program. It contains
--- some class declarations capturing some definitions from
--- category theory. Further down he have a data type for well typed
--- lambda expressions using GADTs. Finally we have a
--- function defining the semantics for lambda terms called
--- 'interp'.
-
--- Made GHC 6.4 bleat
--- Quantified type variable `t' is unified with
--- another quantified type variable `terminal'
--- When trying to generalise the type inferred for `interp'
-
-
-module Bug where
-
-class Category arr where
- idA :: arr a a
- comp :: arr a b -> arr b c -> arr a c
-
-class Category arr =>
- Terminal terminal arr | arr -> terminal where
- terminal :: arr a terminal
-
-class Category arr =>
- ProductCategory prod arr | arr -> prod where
- first :: arr (prod a b) a
- second :: arr (prod a b) b
- pair :: arr a b -> arr a c -> arr a (prod b c)
-
-class Category arr =>
- CoproductCategory coprod arr | arr -> coprod where
- inLeft :: arr a (coprod a b)
- inRight :: arr b (coprod a b)
- ccase :: arr a c -> arr b c -> arr (coprod a b) c
-
-class ProductCategory prod arr =>
- Exponential exp prod arr | arr -> exp where
- eval :: arr (prod (exp a b) a) b
- curryA :: arr (prod c a) b -> arr c (exp a b)
-
-
-class (Exponential exp prod arr, Terminal terminal arr) =>
- CartesianClosed terminal exp prod arr | arr -> terminal exp prod
-
-data V prod env t where
- Z :: V prod (prod env t) t
- S :: V prod env t -> V prod (prod env x) t
-
-data Lambda terminal (exp :: * -> * -> *) prod env t where
- Unit :: Lambda foo exp prod env foo
- Var :: V prod env t -> Lambda terminal exp prod env t
-{- Lam :: Lambda terminal exp prod (prod env a) t
- -> Lambda terminal exp prod env (exp a t)
- App :: Lambda terminal exp prod env (exp t t')
- -> Lambda terminal exp prod env t -> Lambda terminal exp prod env t'
--}
-
-interp :: CartesianClosed terminal exp prod arr =>
- Lambda terminal exp prod s t -> arr s t
-interp (Unit) = terminal -- Terminal terminal arr => arr a terminal
--- interp (Var Z) = second
--- interp (Var (S v)) = first `comp` interp (Var v)
--- interp (Lam e) = curryA (interp e)
--- interp (App e1 e2) = pair (interp e1) (interp e2) `comp` eval
diff --git a/testsuite/tests/ghc-regress/gadt/karl1.hs b/testsuite/tests/ghc-regress/gadt/karl1.hs
deleted file mode 100644
index e3af7adb1d..0000000000
--- a/testsuite/tests/ghc-regress/gadt/karl1.hs
+++ /dev/null
@@ -1,79 +0,0 @@
-{-# LANGUAGE GADTs, KindSignatures #-}
-
--- See Trac #301
--- This particular one doesn't use GADTs per se,
--- but it does use dictionaries in constructors
-
-module Expr1 where
-
-data Expr :: * -> * where -- Not a GADT at all
- Const :: Show a => a -> Expr a
- -- Note the Show constraint here
- Var :: Var a -> Expr a
-
-newtype Var a = V String
-
-instance Show (Var a) where show (V s) = s
-
---------------------------
-e1 :: Expr Int
-e1 = Const 42
-
-e2 :: Expr Bool
-e2 = Const True
-
-e3 :: Expr Integer
-e3 = Var (V "mersenne100")
-
---------------------------
-eval :: Expr a -> a
-eval (Const c) = c
-eval (Var v) = error ("free variable `" ++ shows v "'")
-
-{-
- Up to here, everything works nicely:
-
- \begin{verbatim}
- *Expr0> eval e1
- 42
- *Expr0> eval e2
- True
- *Expr1> eval e3
- *** Exception: free variable `mersenne100'
- \end{verbatim}
-
- But let us now try to define a |shows| function.
-
- In the following, without the type signature we get:
- \begin{verbatim}
- *Expr1> :t showsExpr
- showsExpr :: forall a. (Show a) => Expr a -> String -> String
- *Expr1> showsExpr e1 ""
- "42"
- *Expr1> showsExpr e2 ""
- "True"
- *Expr1> showsExpr e3 ""
- "mersenne100"
- \end{verbatim}
-
- However, in the last case, the instance |Show Integer| was not used,
- so should not have been required.
- Therefore I would expect it to work as it is now, i.e.,
- with the type signature:
--}
-
-showsExpr :: Expr a -> ShowS
-showsExpr (Const c) = shows c
-showsExpr (Var v) = shows v
-
-{-
-
-We used to get a complaint about the |Const| alternative (then line
-63) that documents that the constraint in the type of |Const| must
-have been ignored:
-
- No instance for (Show a)
- arising from use of `shows' at Expr1.lhs:63:22-26
- Probable fix: add (Show a) to the type signature(s) for `showsExpr'
- In the definition of `showsExpr': showsExpr (Const c) = shows c
--}
diff --git a/testsuite/tests/ghc-regress/gadt/karl2.hs b/testsuite/tests/ghc-regress/gadt/karl2.hs
deleted file mode 100644
index a701400689..0000000000
--- a/testsuite/tests/ghc-regress/gadt/karl2.hs
+++ /dev/null
@@ -1,136 +0,0 @@
-{-# LANGUAGE GADTs, KindSignatures #-}
-
-module Expr0 where
-
--- See Trac #301
--- This one *does* use GADTs (Fct)
-
-data Expr :: * -> * where
- Const :: Show a => a -> Expr a
- Apply :: Fct a b -> Expr a -> Expr b
-
-data Fct :: * -> * -> * where
- Succ :: Fct Int Int
- EqZero :: Fct Int Bool
- Add :: Fct Int (Int -> Int)
-
-------------------------------
-e1 :: Expr Int
-e1 = Apply Succ (Const 41)
-
-e2 :: Expr Bool
-e2 = Apply EqZero e1
-
-e3 :: Expr (Int -> Int)
-e3 = Apply Add e1
-
-------------------------------
-eval :: Expr a -> a
-eval (Const c) = c
-eval (Apply f a) = evalFct f $ eval a
-
-evalFct :: Fct a b -> a -> b
-evalFct Succ = succ
-evalFct EqZero = (0 ==)
-evalFct Add = (+)
-
-
-{- Up to here, everything works nicely:
-
- \begin{verbatim}
- *Expr0> eval e1
- 42
- *Expr0> eval e2
- False
- *Expr0> eval e3 5
- 47
- \end{verbatim}
-
- But let us now try to define a |Show| instance.
- For |Fct|, this is not a problem:
--}
-
-instance Show (Fct a b) where
- show Succ = "S"
- show EqZero = "isZero"
- show Add = "add"
-
-showsExpr :: Expr a -> ShowS
-showsExpr (Const c) = shows c
-showsExpr (Apply f a) =
- ('(' :) . shows f . (' ' :) . showsExpr a . (')' :)
-
-instance Show (Expr a) where
- showsPrec _ (Const c) = shows c
- showsPrec _ (Apply f a) =
- ('(' :) . shows f . (' ' :) . shows a . (')' :)
-
-{- But we used to get a complaint about the |Const| alternative (then
- line 56) that documents that the constraint in the type of |Const|
- must have been ignored:
-
- \begin{verbatim}
- No instance for (Show a)
- arising from use of `shows' at Expr0.lhs:56:22-26
- Probable fix: add (Show a) to the type signature(s) for `showsExpr'
- In the definition of `showsExpr': showsExpr (Const c) = shows c
- \end{verbatim}
-
- But if we do that, the recursive call is of course still unsatisfied:
- \begin{verbatim}
- No instance for (Show a)
- arising from use of `showsExpr' at Expr0.lhs:65:34-42
- Probable fix: add (Show a) to the existential context for `Apply'
- In the first argument of `(.)', namely `showsExpr a'
- In the second argument of `(.)', namely `(showsExpr a) . ((')' :))'
- In the second argument of `(.)', namely
- `((' ' :)) . ((showsExpr a) . ((')' :)))'
- \end{verbatim}
-
- Following also the advice given in this last error message
- actually makes GHC accept this, and then we can say:
-
- \begin{verbatim}
- *Expr0> showsExpr e1 ""
- "(S 41)"
- *Expr0> showsExpr e2 ""
- "(isZero (S 41))"
- \end{verbatim}
-
- However, following this advice is counterintuitive
- and should be unnecessary
- since the |Show| instance for argument types
- is only ever used in the const case.
- We get:
-
- \begin{verbatim}
- *Expr0> showsExpr e3 ""
-
- <interactive>:1:0:
- No instance for (Show (Int -> Int))
- arising from use of `showsExpr' at <interactive>:1:0-8
- Probable fix: add an instance declaration for (Show (Int -> Int))
- In the definition of `it': it = showsExpr e3 ""
- \end{verbatim}
-
- But of course we would expect the following:
-
- \begin{verbatim}
- *Expr0> showsExpr e3 ""
- "(add (S 41))"
- \end{verbatim}
-
-
- \bigskip
- The error messages are almost the same
- if we define a |Show| instance directly
- (line 90 was the |Const| alternative):
-
- \begin{verbatim}
- Could not deduce (Show a) from the context (Show (Expr a))
- arising from use of `shows' at Expr0.lhs:90:26-30
- Probable fix: add (Show a) to the class or instance method `showsPrec'
- \end{verbatim}
--}
-
-
diff --git a/testsuite/tests/ghc-regress/gadt/lazypat.hs b/testsuite/tests/ghc-regress/gadt/lazypat.hs
deleted file mode 100644
index f16da207aa..0000000000
--- a/testsuite/tests/ghc-regress/gadt/lazypat.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE GADTs, ExistentialQuantification #-}
-
-module ShouldFail where
-
-data T = forall a. T a (a->Int)
-
-f ~(T x f) = f x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/gadt/lazypat.stderr b/testsuite/tests/ghc-regress/gadt/lazypat.stderr
deleted file mode 100644
index d64f40e487..0000000000
--- a/testsuite/tests/ghc-regress/gadt/lazypat.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-lazypat.hs:7:5:
- An existential or GADT data constructor cannot be used
- inside a lazy (~) pattern
- In the pattern: T x f
- In the pattern: ~(T x f)
- In an equation for `f': f ~(T x f) = f x
diff --git a/testsuite/tests/ghc-regress/gadt/lazypatok.hs b/testsuite/tests/ghc-regress/gadt/lazypatok.hs
deleted file mode 100644
index bf1282fe39..0000000000
--- a/testsuite/tests/ghc-regress/gadt/lazypatok.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- It's not clear whether this one should succed or fail,
--- Arguably it should succeed because the type refinement on
--- T1 should make (y::Int). Currently, though, it succeeds
-
-module ShouldFail where
-
-data T a where
- T1 :: Int -> T Int
-
-f :: (T a, a) -> Int
-f ~(T1 x, y) = x+y
-
diff --git a/testsuite/tests/ghc-regress/gadt/lazypatok.stderr b/testsuite/tests/ghc-regress/gadt/lazypatok.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/gadt/lazypatok.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/gadt/nbe.hs b/testsuite/tests/ghc-regress/gadt/nbe.hs
deleted file mode 100644
index 0547131df9..0000000000
--- a/testsuite/tests/ghc-regress/gadt/nbe.hs
+++ /dev/null
@@ -1,176 +0,0 @@
-{-# LANGUAGE GADTs, Rank2Types #-}
-
-module Main where
-
--- abstract syntax -------------------------------------------------------------
-data Ty t where
- Bool :: Ty Bool
- Arr :: Ty a -> Ty b -> Ty (a -> b)
-
-data Exp g t where
- Var :: Var g t -> Exp g t
- Lam :: Ty a -> Exp (g,a) b -> Exp g (a->b)
- App :: Exp g (s -> t) -> Exp g s -> Exp g t
- If :: Exp g Bool -> Exp g t -> Exp g t -> Exp g t
- ETrue :: Exp g Bool
- EFalse :: Exp g Bool
-
-data Var g t where
- ZVar :: Var (h,t) t
- SVar :: Var h t -> Var (h,s) t
-
--- smart constructors ----------------------------------------------------------
-lamE :: Ty s -> (Exp (g,s) s -> Exp (g,s) t) -> Exp g (s -> t)
-lamE s f = Lam s (f (Var ZVar))
-
-ifE :: Exp g Bool -> Exp g t -> Exp g t -> Exp g t
-ifE t ETrue EFalse = t
-ifE t e e' = if eqE e e' then e else If t e e'
-
--- boring equality tests -------------------------------------------------------
-eqB :: BoxExp t -> BoxExp s -> Bool
-eqB (Box e) (Box e_) = eqE e e_
-
-eqE :: Exp g t -> Exp h s -> Bool
-eqE (Var x) (Var y) = eqV x y
-eqE (Lam s e) (Lam s_ e_) = eqT s s_ && eqE e e_
-eqE (App e1 e2) (App e1_ e2_) = eqE e1 e1_ && eqE e2 e2_
-eqE (If e1 e2 e3) (If e1_ e2_ e3_) = eqE e1 e1_ && (eqE e2 e2_ && eqE e3 e3_)
-eqE (ETrue) (ETrue) = True
-eqE (EFalse) (EFalse) = True
-eqE _ _ = False
-
-eqT :: Ty t -> Ty s -> Bool
-eqT (Arr s t) (Arr s_ t_) = eqT s s_ && eqT t t_
-eqT Bool Bool = True
-eqT _ _ = False
-
-eqV :: Var g t -> Var h s -> Bool
-eqV (SVar x) (SVar y) = eqV x y
-eqV ZVar ZVar = True
-eqV _ _ = False
-
--- evaluation ------------------------------------------------------------------
-var :: Var g t -> g -> t
-var ZVar (_,t) = t
-var (SVar x) (h,s) = var x h
-
-eval :: Exp g t -> g -> t
-eval (Var x) g = var x g
-eval (Lam _ e) g = \a -> eval e (g,a)
-eval (App e e') g = eval e g (eval e' g)
-eval (ETrue) g = True
-eval (EFalse) g = False
-eval (If c t e) g = if eval c g then eval t g else eval e g
-
--- type inference --------------------------------------------------------------
-data TyEnv g where
- Nil :: TyEnv g
- Cons :: Ty t -> TyEnv h -> TyEnv (h,t)
-
-infer :: TyEnv g -> Exp g t -> Ty t
-infer g (Var x) = inferVar g x
-infer g (Lam t e) = Arr t (infer (Cons t g) e)
-infer g (App e e') = case infer g e of Arr _ t -> t
-infer g (ETrue) = Bool
-infer g (EFalse) = Bool
-infer g (If _ e _) = infer g e
-
-inferVar :: TyEnv g -> Var g t -> Ty t
-inferVar (Cons t h) (SVar x) = inferVar h x
-inferVar (Cons t h) (ZVar) = t
-
--- tree monad ------------------------------------------------------------------
-
-data Tree a = Val a | Choice (Tree a) (Tree a)
--- doesn't yet force trees to be fully balanced:
--- Val :: a -> Tree a Z
--- Choice :: Tree a n -> Tree a n -> Tree a (S n)
-
-instance Monad Tree where
- return x = Val x
- (Val a) >>= f = f a
- (Choice l r) >>= f = Choice (l >>= f) (r >>= f)
-
-tmap :: Monad m => (a->b) -> m a -> m b
-tmap f x = do { a <- x; return (f a) }
-
-flatten t = flatten_ t []
- where
- flatten_ (Val a) k = a:k
- flatten_ (Choice l r) k = flatten_ l (flatten_ r k)
-
-
--- quote & friends -------------------------------------------------------------
-
--- for values --------------------------
-enumV :: Ty t -> Tree t
-questionsV :: Ty t -> [t -> Bool]
-
-
-enumV Bool = Choice (Val True) (Val False)
-enumV (Arr s t) = mkEnum (questionsV s) (enumV t)
- where
- mkEnum [] t = tmap const t
- mkEnum (q:qs) es = do
- f1 <- mkEnum qs es
- f2 <- mkEnum qs es
- return (\d -> if q d then f1 d else f2 d)
-
-questionsV Bool = return (\x -> x)
-questionsV (Arr s t) = do
- d <- flatten (enumV s)
- q <- questionsV t
- return (\f -> q (f d))
-
--- for expressions ---------------------
-enumE :: Ty t -> Tree (Exp g t)
-questionsE :: Ty t -> [Exp g t -> Exp g Bool]
-
-enumE Bool = Choice (Val ETrue) (Val EFalse)
-enumE (Arr s t) = tmap (lamE s) (mkEnumE (questionsE s) (enumE t))
- where
- mkEnumE [] t = tmap const t
- mkEnumE (q:qs) es = do
- f1 <- mkEnumE qs es
- f2 <- mkEnumE qs es
- return (\d -> ifE (q d) (f1 d) (f2 d))
-
-questionsE Bool = return (\x -> x)
-questionsE (Arr s t) = do
- d <- flatten (enumE s)
- q <- questionsE t
- return (\f -> q (App f d))
-
--- should be
--- find (List (Exp g Bool) n) -> Tree (Exp g a) n -> Exp g a
-find :: [Exp g Bool] -> Tree (Exp g a) -> Exp g a
-find [] (Val a) = a
-find (b:bs) (Choice l r) = ifE b (find bs l) (find bs r)
-find _ _ = error "bad arguments to find"
-
-quote :: Ty t -> t -> Exp g t
-quote Bool t = case t of True -> ETrue; False -> EFalse
-quote (Arr s t) f = lamE s (\e -> find (do q <- questionsE s; return (q e))
- (tmap (quote t . f) (enumV s)))
-
--- normalization (by evaluation) -----------------------------------------------
-data BoxExp t = Box (forall g. Exp g t)
-
-normalize :: Ty t -> BoxExp t -> BoxExp t
-normalize s (Box e) = Box (quote s (eval e ()))
-
--- examples --------------------------------------------------------------------
-b2b = Arr Bool Bool
-b22b = Arr b2b b2b
-zero = Var ZVar
-one = Var (SVar ZVar)
-once = Box (Lam b2b (Lam Bool (App one zero)))
-twice = Box (Lam b2b (Lam Bool (App one (App one zero))))
-thrice = Box (Lam b2b (Lam Bool (App one (App one (App one zero)))))
-
-test = [ eqB (nf b22b thrice) (nf b22b once)
- , eqB (nf b22b twice) (nf b22b once)]
- where nf = normalize
-
-main = print test \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/gadt/nbe.stdout b/testsuite/tests/ghc-regress/gadt/nbe.stdout
deleted file mode 100644
index a5f190762c..0000000000
--- a/testsuite/tests/ghc-regress/gadt/nbe.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[True,False]
diff --git a/testsuite/tests/ghc-regress/gadt/records-fail1.hs b/testsuite/tests/ghc-regress/gadt/records-fail1.hs
deleted file mode 100644
index 8eefee51e7..0000000000
--- a/testsuite/tests/ghc-regress/gadt/records-fail1.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- Tests record syntax for GADTs
-
-module ShouldFail where
-
-data T a where
- T1 { x :: a, y :: b } :: T (a,b)
- T4 { x :: Int } :: T [a]
-
- \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/gadt/records-fail1.stderr b/testsuite/tests/ghc-regress/gadt/records-fail1.stderr
deleted file mode 100644
index 0ef628b5a6..0000000000
--- a/testsuite/tests/ghc-regress/gadt/records-fail1.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-records-fail1.hs:7:1:
- Constructors T1 and T4 have a common field `x',
- but have different result types
- In the data type declaration for `T'
diff --git a/testsuite/tests/ghc-regress/gadt/records.hs b/testsuite/tests/ghc-regress/gadt/records.hs
deleted file mode 100644
index e28add3fb6..0000000000
--- a/testsuite/tests/ghc-regress/gadt/records.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- Tests record syntax for GADTs
-
-module Main where
-
-data T a where
- T1 :: { x :: a, y :: b } -> T (a,b)
- T2 :: { x :: a } -> T (a,b)
- T3 :: { z :: Int } -> T Bool
-
-f xv yv = T1 { x = xv, y = yv }
-
-g :: T a -> T a
-g (T1 {x=xv, y=yv}) = T2 { x = xv }
-
--- h :: Num a => T a any -> a
-h v = x v + 1
-
-main = do { let t1 = T1 { y = "foo", x = 4 }
- t2 = g t1
- ; print (h (f 8 undefined))
- ; print (h t2)
- }
- \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/gadt/records.stdout b/testsuite/tests/ghc-regress/gadt/records.stdout
deleted file mode 100644
index f224d49c08..0000000000
--- a/testsuite/tests/ghc-regress/gadt/records.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-9
-5
diff --git a/testsuite/tests/ghc-regress/gadt/red-black.hs b/testsuite/tests/ghc-regress/gadt/red-black.hs
deleted file mode 100644
index 29bb324310..0000000000
--- a/testsuite/tests/ghc-regress/gadt/red-black.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module ShouldCompile where
-
--- data RBTree = forall n. Root (SubTree Black n)
-
--- Kind Colour
-data Red
-data Black
-
--- Kind Nat
-data Z
-data S a
-
-data SubTree c n where
- Leaf :: SubTree Black Z
- RNode :: SubTree Black n -> Int -> SubTree Black n -> SubTree Red n
- BNode :: SubTree cL m -> Int -> SubTree cR m -> SubTree Black (S m)
- Fix :: SubTree Red n -> SubTree Black n
-
-
-ins :: Int -> SubTree c n -> SubTree c n
-ins n Leaf = (Fix (RNode Leaf n Leaf))
-ins n (BNode x m y) | n <= m = black (ins n x) m y
-ins n (BNode x m y) | n > m = black x m (ins n y)
-ins n (RNode x m y) | n <= m = RNode (ins n x) m y
-ins n (RNode x m y) | n > m = RNode x m (ins n y)
-
-black :: SubTree c n -> Int -> SubTree d n -> SubTree Black (S n)
-black (RNode (Fix u) v c) w (x@(RNode _ _ _)) = Fix(RNode (blacken u) v (BNode c w x))
-
-black (RNode (Fix u) v c) w (x@(BNode _ _ _)) = BNode u v (RNode c w x)
-black (RNode a v (Fix (RNode b u c))) w (x@(BNode _ _ _)) = BNode (RNode a v b) u (RNode c w x)
-black (Fix x) n (Fix y) = BNode x n y
-black x n (Fix y) = BNode x n y
-black (Fix x) n y = BNode x n y
-black x n y = BNode x n y
-
-blacken :: SubTree Red n -> SubTree Black (S n)
-blacken (RNode l e r) = (BNode l e r)
-
diff --git a/testsuite/tests/ghc-regress/gadt/rw.hs b/testsuite/tests/ghc-regress/gadt/rw.hs
deleted file mode 100644
index 0d0018ac30..0000000000
--- a/testsuite/tests/ghc-regress/gadt/rw.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module Main where
-
-import Data.IORef
-
-data T a where
- Li:: Int -> T Int
- Lb:: Bool -> T Bool
- La:: a -> T a
-
-writeInt:: T a -> IORef a -> IO ()
-writeInt v ref = case v of
- ~(Li x) -> writeIORef ref (1::Int)
-
-readBool:: T a -> IORef a -> IO ()
-readBool v ref = case v of
- ~(Lb x) ->
- readIORef ref >>= (print . not)
-
-tt::T a -> IO ()
-tt v = case v of
- ~(Li x) -> print "OK"
-
-main = do
- tt (La undefined)
- ref <- newIORef undefined
- writeInt (La undefined) ref
- readBool (La undefined) ref
diff --git a/testsuite/tests/ghc-regress/gadt/rw.stderr b/testsuite/tests/ghc-regress/gadt/rw.stderr
deleted file mode 100644
index dbac243ab6..0000000000
--- a/testsuite/tests/ghc-regress/gadt/rw.stderr
+++ /dev/null
@@ -1,19 +0,0 @@
-
-rw.hs:14:47:
- Couldn't match type `a' with `Int'
- `a' is a rigid type variable bound by
- the type signature for writeInt :: T a -> IORef a -> IO ()
- at rw.hs:13:1
- In the second argument of `writeIORef', namely `(1 :: Int)'
- In the expression: writeIORef ref (1 :: Int)
- In a case alternative: ~(Li x) -> writeIORef ref (1 :: Int)
-
-rw.hs:19:51:
- Couldn't match type `a' with `Bool'
- `a' is a rigid type variable bound by
- the type signature for readBool :: T a -> IORef a -> IO ()
- at rw.hs:17:1
- Expected type: a -> Bool
- Actual type: Bool -> Bool
- In the second argument of `(.)', namely `not'
- In the second argument of `(>>=)', namely `(print . not)'
diff --git a/testsuite/tests/ghc-regress/gadt/scoped.hs b/testsuite/tests/ghc-regress/gadt/scoped.hs
deleted file mode 100644
index cafa738697..0000000000
--- a/testsuite/tests/ghc-regress/gadt/scoped.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-{-# LANGUAGE GADTs, ScopedTypeVariables #-}
-
--- Tests for scoped type variables and GADTs
-
-module GADT where
-
-data C x y where
- C :: a -> C a a
-
-data D x y where
- D :: C b c -> D a c
-
-------- All these should be ok
-
--- Rejected!
-g1 :: forall x y . C x y -> ()
--- C (..) :: C x y
--- Inside match on C, x=y
-g1 (C (p :: y)) = ()
-
--- OK!
-g2 :: forall x y . C x y -> ()
--- C (..) :: C x y
--- Inside match on C, x=y
-g2 (C (p :: x)) = ()
-
--- Rejected!
-g3 :: forall x y . D x y -> ()
--- D (..) :: D x y
--- C (..) :: C sk y
--- sk = y
--- p :: sk
-g3 (D (C (p :: y))) = ()
diff --git a/testsuite/tests/ghc-regress/gadt/set.hs b/testsuite/tests/ghc-regress/gadt/set.hs
deleted file mode 100644
index 3a78bbb64b..0000000000
--- a/testsuite/tests/ghc-regress/gadt/set.hs
+++ /dev/null
@@ -1,45 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- Provoked by
--- http://www.haskell.org/pipermail/haskell-cafe/2007-January/021086.html
-
-module ShouldCompile where
-
-import Data.Set as Set
-
-data Teq a b where Teq :: Teq a a
-
----------------------
-data SetM1 a where
- SM1 :: Ord w => Teq w a -> Set.Set w -> SetM1 a
-
-unionA1 :: SetM1 a -> SetM1 a -> SetM1 a
-unionA1 (SM1 Teq m1) (SM1 Teq m2)
- = SM1 Teq (m1 `Set.union` m2)
-
-unionB1 :: SetM1 a -> SetM1 a -> SetM1 a
-unionB1 (SM1 p1 m1) (SM1 p2 m2)
- = case p1 of Teq -> case p2 of Teq -> SM1 Teq (m1 `Set.union` m2)
-
-unionC1 :: SetM1 a -> SetM1 a -> SetM1 a
-unionC1 (SM1 p1 m1) (SM1 p2 m2)
- = case (p1,p2) of (Teq,Teq) -> SM1 Teq (m1 `Set.union` m2)
-
-
----------------------
-data SetM2 a where
- SM2 :: Ord w => Teq a w -> Set.Set w -> SetM2 a
- -- Different order of args in Teq
-
-unionA2 :: SetM2 a -> SetM2 a -> SetM2 a
-unionA2 (SM2 Teq m1) (SM2 Teq m2)
- = SM2 Teq (m1 `Set.union` m2)
-
-unionB2 :: SetM2 a -> SetM2 a -> SetM2 a
-unionB2 (SM2 p1 m1) (SM2 p2 m2)
- = case p1 of Teq -> case p2 of Teq -> SM2 Teq (m1 `Set.union` m2)
-
-unionC2 :: SetM2 a -> SetM2 a -> SetM2 a
-unionC2 (SM2 p1 m1) (SM2 p2 m2)
- = case (p1,p2) of (Teq,Teq) -> SM2 Teq (m1 `Set.union` m2)
-
diff --git a/testsuite/tests/ghc-regress/gadt/tc.hs b/testsuite/tests/ghc-regress/gadt/tc.hs
deleted file mode 100644
index 247b9eb615..0000000000
--- a/testsuite/tests/ghc-regress/gadt/tc.hs
+++ /dev/null
@@ -1,122 +0,0 @@
-{-# LANGUAGE GADTs, ExistentialQuantification #-}
-
--- This typechecker, written by Stephanie Weirich at Dagstuhl (Sept 04)
--- demonstrates that it's possible to write functions of type
--- tc :: String -> Term a
--- where Term a is our strongly-typed GADT.
--- That is, generate a typed term from an untyped source; Lennart
--- Augustsson set this as a challenge.
---
--- In fact the main function goes
--- tc :: UTerm -> exists ty. (Ty ty, Term ty)
--- so the type checker returns a pair of an expression and its type,
--- wrapped, of course, in an existential.
-
-module Main where
-
--- Untyped world --------------------------------------------
-data UTerm = UVar String
- | ULam String UType UTerm
- | UApp UTerm UTerm
- | UConBool Bool
- | UIf UTerm UTerm UTerm
-
-data UType = UBool | UArr UType UType
-
--- Typed world -----------------------------------------------
-data Ty t where
- Bool :: Ty Bool
- Arr :: Ty a -> Ty b -> Ty (a -> b)
-
-data Term g t where
- Var :: Var g t -> Term g t
- Lam :: Ty a -> Term (g,a) b -> Term g (a->b)
- App :: Term g (s -> t) -> Term g s -> Term g t
- ConBool :: Bool -> Term g Bool
- If :: Term g Bool -> Term g a -> Term g a -> Term g a
-
-data Var g t where
- ZVar :: Var (h,t) t
- SVar :: Var h t -> Var (h,s) t
-
-data Typed thing = forall ty. Typed (Ty ty) (thing ty)
-
--- Typechecking types
-data ExType = forall t. ExType (Ty t)
-
-tcType :: UType -> ExType
-tcType UBool = ExType Bool
-tcType (UArr t1 t2) = case tcType t1 of { ExType t1' ->
- case tcType t2 of { ExType t2' ->
- ExType (Arr t1' t2') }}
-
--- The type environment and lookup
-data TyEnv g where
- Nil :: TyEnv g
- Cons :: String -> Ty t -> TyEnv h -> TyEnv (h,t)
-
-lookupVar :: String -> TyEnv g -> Typed (Var g)
-lookupVar _ Nil = error "Variable not found"
-lookupVar v (Cons s ty e)
- | v==s = Typed ty ZVar
- | otherwise = case lookupVar v e of
- Typed ty v -> Typed ty (SVar v)
-
--- Comparing types
-newtype C1 c a2 d = C1 { unC1 :: c (d -> a2) }
-newtype C2 c b1 d = C2 { unC2 :: c (b1 -> d) }
-
-cast2 :: Ty a -> Ty b -> (c a -> c b)
-cast2 Bool Bool x = x
-cast2 (Arr a1 a2) (Arr b1 b2) f
- = let C1 x = cast2 a1 b1 (C1 f)
- C2 y = cast2 a2 b2 (C2 x)
- in y
-
-data Equal a b where
- Equal :: Equal c c
-
-cmpTy :: Ty a -> Ty b -> Maybe (Equal a b)
-cmpTy Bool Bool = Just Equal
-cmpTy (Arr a1 a2) (Arr b1 b2)
- = do { Equal <- cmpTy a1 b1
- ; Equal <- cmpTy a2 b2
- ; return Equal }
-
--- Typechecking terms
-tc :: UTerm -> TyEnv g -> Typed (Term g)
-tc (UVar v) env = case lookupVar v env of
- Typed ty v -> Typed ty (Var v)
-tc (UConBool b) env
- = Typed Bool (ConBool b)
-tc (ULam s ty body) env
- = case tcType ty of { ExType bndr_ty' ->
- case tc body (Cons s bndr_ty' env) of { Typed body_ty' body' ->
- Typed (Arr bndr_ty' body_ty')
- (Lam bndr_ty' body') }}
-tc (UApp e1 e2) env
- = case tc e1 env of { Typed (Arr bndr_ty body_ty) e1' ->
- case tc e2 env of { Typed arg_ty e2' ->
- case cmpTy arg_ty bndr_ty of
- Nothing -> error "Type error"
- Just Equal -> Typed body_ty (App e1' e2') }}
-tc (UIf e1 e2 e3) env
- = case tc e1 env of { Typed Bool e1' ->
- case tc e2 env of { Typed t2 e2' ->
- case tc e3 env of { Typed t3 e3' ->
- case cmpTy t2 t3 of
- Nothing -> error "Type error"
- Just Equal -> Typed t2 (If e1' e2' e3') }}}
-
-showType :: Ty a -> String
-showType Bool = "Bool"
-showType (Arr t1 t2) = "(" ++ showType t1 ++ ") -> (" ++ showType t2 ++ ")"
-
-uNot = ULam "x" UBool (UIf (UVar "x") (UConBool False) (UConBool True))
-
-test :: UTerm
-test = UApp uNot (UConBool True)
-
-main = putStrLn (case tc test Nil of
- Typed ty _ -> showType ty
- ) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/gadt/tc.stdout b/testsuite/tests/ghc-regress/gadt/tc.stdout
deleted file mode 100644
index 13b3e8786a..0000000000
--- a/testsuite/tests/ghc-regress/gadt/tc.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Bool
diff --git a/testsuite/tests/ghc-regress/gadt/tdpe.hs b/testsuite/tests/ghc-regress/gadt/tdpe.hs
deleted file mode 100644
index 58a4b85094..0000000000
--- a/testsuite/tests/ghc-regress/gadt/tdpe.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module Tdpe where
-
-data Type t where
- TBase :: Type Base
- TFun :: Type a -> Type b -> Type (a -> b)
-
-b :: Type Base
-b = TBase
-
-newtype Base = In { out :: Term Base }
-
-data Term t where
- App :: Term (a->b) -> Term a -> Term b
- Fun :: (Term a -> Term b) -> Term (a->b)
-
-reify :: Type t -> t -> Term t
-reify (TBase) v = out v
-reify (TFun a b) v = Fun (\x -> reify b (v (reflect a x)))
-
-reflect :: Type t -> Term t -> t
-reflect (TBase) e = In e
-reflect (TFun a b) e = \x -> reflect b (App e (reify a x))
diff --git a/testsuite/tests/ghc-regress/gadt/termination.hs b/testsuite/tests/ghc-regress/gadt/termination.hs
deleted file mode 100644
index be2431b812..0000000000
--- a/testsuite/tests/ghc-regress/gadt/termination.hs
+++ /dev/null
@@ -1,183 +0,0 @@
-{-# LANGUAGE GADTs, Rank2Types #-}
-
-module Termination where
-
-{- Message from Jim Apple to Haskell-Cafe, 7/1/07
-
-To show how expressive GADTs are, the datatype Terminating can hold
-any term in the untyped lambda calculus that terminates, and none that
-don't. I don't think that an encoding of this is too surprising, but I
-thought it might be a good demonstration of the power that GADTs
-bring.
-
-
- Using GADTs to encode normalizable and non-normalizable terms in
- the lambda calculus. For definitions of normalizable and de Bruin
- indices, I used:
-
- Christian Urban and Stefan Berghofer - A Head-to-Head Comparison of
- de Bruijn Indices and Names. In Proceedings of the International
- Workshop on Logical Frameworks and Meta-Languages: Theory and
- Practice (LFMTP 2006). Seattle, USA. ENTCS. Pages 46-59
-
- http://www4.in.tum.de/~urbanc/Publications/lfmtp-06.ps
-
- @incollection{ pierce97foundational,
- author = "Benjamin Pierce",
- title = "Foundational Calculi for Programming Languages",
- booktitle = "The Computer Science and Engineering Handbook",
- publisher = "CRC Press",
- address = "Boca Raton, FL",
- editor = "Allen B. Tucker",
- year = "1997",
- url = "citeseer.ist.psu.edu/pierce95foundational.html"
- }
-
-> So it sounds to me like the (terminating) type checker solves the
-> halting problem. Can you please explain which part of this I have
-> misunderstood?
-
-The Terminating datatype takes three parameters:
-1. A term in the untyped lambda calculus
-2. A sequence of beta reductions
-3. A proof that the result of the beta reductions is normalized.
-
-Number 2 is the hard part. For a term that calculated the factorial of
-5, the list in part 2 would be at least 120 items long, and each one
-is kind of a pain.
-
-GHC's type checker ends up doing exactly what it was doing before:
-checking proofs.
-
--}
-
-
--- Terms in the untyped lambda-calculus with the de Bruijn representation
-
-data Term t where
- Var :: Nat n -> Term (Var n)
- Lambda :: Term t -> Term (Lambda t)
- Apply :: Term t1 -> Term t2 -> Term (Apply t1 t2)
-
--- Natural numbers
-
-data Nat n where
- Zero :: Nat Z
- Succ :: Nat n -> Nat (S n)
-
-data Z
-data S n
-
-data Var t
-data Lambda t
-data Apply t1 t2
-
-data Less n m where
- LessZero :: Less Z (S n)
- LessSucc :: Less n m -> Less (S n) (S m)
-
-data Equal a b where
- Equal :: Equal a a
-
-data Plus a b c where
- PlusZero :: Plus Z b b
- PlusSucc :: Plus a b c -> Plus (S a) b (S c)
-
-{- We can reduce a term by function application, reduction under the lambda,
- or reduction of either side of an application. We don't need this full
- power, since we could get by with normal-order evaluation, but that
- required a more complicated datatype for Reduce.
--}
-data Reduce t1 t2 where
- ReduceSimple :: Replace Z t1 t2 t3 -> Reduce (Apply (Lambda t1) t2) t3
- ReduceLambda :: Reduce t1 t2 -> Reduce (Lambda t1) (Lambda t2)
- ReduceApplyLeft :: Reduce t1 t2 -> Reduce (Apply t1 t3) (Apply t2 t3)
- ReduceApplyRight :: Reduce t1 t2 -> Reduce (Apply t3 t1) (Apply t3 t2)
-
-{- Lift and Replace use the de Bruijn operations as expressed in the Urban
- and Berghofer paper. -}
-data Lift n k t1 t2 where
- LiftVarLess :: Less i k -> Lift n k (Var i) (Var i)
- LiftVarGTE :: Either (Equal i k) (Less k i) -> Plus i n r -> Lift n k (Var i) (Var r)
- LiftApply :: Lift n k t1 t1' -> Lift n k t2 t2' -> Lift n k (Apply t1 t2) (Apply t1' t2')
- LiftLambda :: Lift n (S k) t1 t2 -> Lift n k (Lambda t1) (Lambda t2)
-
-data Replace k t n r where
- ReplaceVarLess :: Less i k -> Replace k (Var i) n (Var i)
- ReplaceVarEq :: Equal i k -> Lift k Z n r -> Replace k (Var i) n r
- ReplaceVarMore :: Less k (S i) -> Replace k (Var (S i)) n (Var i)
- ReplaceApply :: Replace k t1 n r1 -> Replace k t2 n r2 -> Replace k (Apply t1 t2) n (Apply r1 r2)
- ReplaceLambda :: Replace (S k) t n r -> Replace k (Lambda t) n (Lambda r)
-
-{- Reflexive transitive closure of the reduction relation. -}
-data ReduceEventually t1 t2 where
- ReduceZero :: ReduceEventually t1 t1
- ReduceSucc :: Reduce t1 t2 -> ReduceEventually t2 t3 -> ReduceEventually t1 t3
-
--- Definition of normal form: nothing with a lambda term applied to anything.
-data Normal t where
- NormalVar :: Normal (Var n)
- NormalLambda :: Normal t -> Normal (Lambda t)
- NormalApplyVar :: Normal t -> Normal (Apply (Var i) t)
- NormalApplyApply :: Normal (Apply t1 t2) -> Normal t3 -> Normal (Apply (Apply t1 t2) t3)
-
--- Something is terminating when it reduces to something normal
-data Terminating where
- Terminating :: Term t -> ReduceEventually t t' -> Normal t' -> Terminating
-
-{- We can encode terms that are non-terminating, even though this set is
- only co-recursively enumerable, so we can't actually prove all of the
- non-normalizable terms of the lambda calculus are non-normalizable.
--}
-
-data Reducible t1 where
- Reducible :: Reduce t1 t2 -> Reducible t1
--- A term is non-normalizable if, no matter how many reductions you have applied,
--- you can still apply one more.
-type Infinite t1 = forall t2 . ReduceEventually t1 t2 -> Reducible t2
-
-data NonTerminating where
- NonTerminating :: Term t -> Infinite t -> NonTerminating
-
--- x
-test1 :: Terminating
-test1 = Terminating (Var Zero) ReduceZero NormalVar
-
--- (\x . x)@y
-test2 :: Terminating
-test2 = Terminating (Apply (Lambda (Var Zero))(Var Zero))
- (ReduceSucc (ReduceSimple (ReplaceVarEq Equal (LiftVarGTE (Left Equal) PlusZero))) ReduceZero)
- NormalVar
-
--- omega = \x.x@x
-type Omega = Lambda (Apply (Var Z) (Var Z))
-omega = Lambda (Apply (Var Zero) (Var Zero))
-
--- (\x . \y . y)@(\z.z@z)
-test3 :: Terminating
-test3 = Terminating (Apply (Lambda (Lambda (Var Zero))) omega)
- (ReduceSucc (ReduceSimple (ReplaceLambda (ReplaceVarLess LessZero))) ReduceZero)
- (NormalLambda NormalVar)
-
--- (\x.x@x)(\x.x@x)
-test4 :: NonTerminating
-test4 = NonTerminating (Apply omega omega) help3
-
-help1 :: Reducible (Apply Omega Omega)
-help1 = Reducible (ReduceSimple
- (ReplaceApply (ReplaceVarEq Equal (LiftLambda
- (LiftApply (LiftVarLess LessZero) (LiftVarLess LessZero))))
- (ReplaceVarEq Equal (LiftLambda (LiftApply
- (LiftVarLess LessZero) (LiftVarLess LessZero))))))
-
-help2 :: ReduceEventually (Apply Omega Omega) t -> Equal (Apply Omega Omega) t
-help2 ReduceZero = Equal
-help2 (ReduceSucc (ReduceSimple (ReplaceApply
- (ReplaceVarEq _ (LiftLambda (LiftApply (LiftVarLess _) (LiftVarLess _))))
- (ReplaceVarEq _ (LiftLambda (LiftApply (LiftVarLess _) (LiftVarLess _)))))) y)
- = case help2 y of
- Equal -> Equal
-
-help3 :: Infinite (Apply Omega Omega)
-help3 x = case help2 x of
- Equal -> help1
diff --git a/testsuite/tests/ghc-regress/gadt/type-rep.hs b/testsuite/tests/ghc-regress/gadt/type-rep.hs
deleted file mode 100644
index ed41c7a5cc..0000000000
--- a/testsuite/tests/ghc-regress/gadt/type-rep.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module Main where
-
-data Rep t where
- Rint :: Rep Int
- Rchar :: Rep Char
- Runit :: Rep ()
- Rpair :: Rep a -> Rep b -> Rep (a,b)
- Rsum :: Rep a -> Rep b -> Rep (Either a b)
- Rcon :: String -> Rep t -> Rep t
- Rdata :: Rep i -> (t -> i) -> (i -> t) -> Rep t
-
-
-int :: Rep Int
-int = Rint
-
-list :: Rep a -> Rep [a]
-list x = Rdata (Rsum (Rcon "[]" Runit) (Rcon ":" (Rpair x (list x)))) h g
- where
- h [] = Left ()
- h (x:xs) = Right (x,xs)
-
- g (Left ()) = []
- g (Right (x,xs)) = x:xs
-
-
-addUp :: Rep a -> a -> Int
-addUp Rint n = n
-addUp (Rpair r s) (x,y) = addUp r x + addUp s y
-addUp (Rsum r s) (Left x) = addUp r x
-addUp (Rsum r s) (Right x) = addUp s x
-addUp (Rdata i f g) x = addUp i (f x)
-addUp (Rcon s r) x = addUp r x
-addUp v x = 0
-
-
-main = print (addUp (list int) [1,2,4])
diff --git a/testsuite/tests/ghc-regress/gadt/type-rep.stdout b/testsuite/tests/ghc-regress/gadt/type-rep.stdout
deleted file mode 100644
index 7f8f011eb7..0000000000
--- a/testsuite/tests/ghc-regress/gadt/type-rep.stdout
+++ /dev/null
@@ -1 +0,0 @@
-7
diff --git a/testsuite/tests/ghc-regress/gadt/ubx-records.hs b/testsuite/tests/ghc-regress/gadt/ubx-records.hs
deleted file mode 100644
index ab21dc65fe..0000000000
--- a/testsuite/tests/ghc-regress/gadt/ubx-records.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE GADTs #-}
-{-# OPTIONS_GHC -funbox-strict-fields #-}
-
--- Tests record selectors with unboxed fields for GADTs
-
-module Main where
-
-data T a where
- T1 :: { w :: !(Int, Int), x :: a, y :: b } -> T (a,b)
- T2 :: { w :: !(Int, Int), x :: a } -> T (a,b)
- T3 :: { z :: Int } -> T Bool
-
--- T1 :: forall c a b. (c~(a,b)) => (Int,Int) -> a -> b -> T c
-
-f xv yv = T1 { w = (0,0), x = xv, y = yv }
-
-g :: T a -> T a
-g (T1 {x=xv, y=yv}) = T2 { w = (0,0), x = xv }
-
--- h :: Num a => T a any -> a
-h v = x v + 1
-
-i v = let (x,y) = w v in x + y
-
-main = do { let t1 = T1 { w = (0,0), y = "foo", x = 4 }
- t2 = g t1
- ; print (h (f 8 undefined))
- ; print (h t2)
- ; print (i t1)
- }
diff --git a/testsuite/tests/ghc-regress/gadt/ubx-records.stdout b/testsuite/tests/ghc-regress/gadt/ubx-records.stdout
deleted file mode 100644
index bb9cc4d945..0000000000
--- a/testsuite/tests/ghc-regress/gadt/ubx-records.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-9
-5
-0
diff --git a/testsuite/tests/ghc-regress/gadt/while.hs b/testsuite/tests/ghc-regress/gadt/while.hs
deleted file mode 100644
index 2040511c0f..0000000000
--- a/testsuite/tests/ghc-regress/gadt/while.hs
+++ /dev/null
@@ -1,216 +0,0 @@
-{-# LANGUAGE GADTs, ExistentialQuantification #-}
-
-module Main where
-
-succeed :: a -> Maybe a
-succeed = return
-
-data V s t where
- Z :: V (t,m) t
- S :: V m t -> V (x,m) t
-
-data Exp s t where
- IntC :: Int -> Exp s Int -- 5
- BoolC :: Bool -> Exp s Bool -- True
- Plus :: Exp s Int -> Exp s Int -> Exp s Int -- x + 3
- Lteq :: Exp s Int -> Exp s Int -> Exp s Bool -- x <= 3
- Var :: V s t -> Exp s t -- x
-
-data Com s where
- Set :: V s t -> Exp s t -> Com s -- x := e
- Seq :: Com s -> Com s -> Com s -- { s1; s2; }
- If :: Exp s Bool -> Com s -> Com s -> Com s -- if e then x else y
- While :: Exp s Bool -> Com s -> Com s -- while e do s
- Declare :: Exp s t -> Com (t,s) -> Com s -- { int x = 5; s }
-
-update :: (V s t) -> t -> s -> s
-update Z n (x,y) = (n,y)
-update (S v) n (x,y) = (x,update v n y)
-
-eval :: Exp s t -> s -> t
-eval (IntC n) s = n
-eval (BoolC b) s = b
-eval (Plus x y) s = (eval x s) + (eval y s)
-eval (Lteq x y) s = (eval x s) <= (eval y s)
-eval (Var Z) (x,y) = x
-eval (Var (S v)) (x,y) = eval (Var v) y
-
-
-exec :: (Com st) -> st -> st
-exec (Set v e) s = update v (eval e s) s
-exec (Seq x y) s = exec y (exec x s)
-exec (If test x1 x2) s =
- if (eval test s) then exec x1 s else exec x2 s
-exec (While test body) s = loop s
- where loop s = if (eval test s)
- then loop (exec body s)
- else s
-exec (Declare e body) s = store
- where (_,store) = (exec body (eval e s,s))
-
-v0 = Z
-v1 = S Z
-v2 = S (S Z)
-v3 = S (S (S Z))
-
-e2 = Lteq (Plus (Var v0)(Var v1)) (Plus (Var v0) (IntC 1))
-
-sum_var = Z
-x = S Z
-
-prog :: Com (Int,(Int,a))
-prog =
- Seq (Set sum_var (IntC 0))
- (Seq (Set x (IntC 1))
- (While (Lteq (Var x) (IntC 5))
- (Seq (Set sum_var (Plus (Var sum_var)(Var x)))
- (Set x (Plus (Var x) (IntC 1))))))
-
-ans = exec prog (34,(12,1))
-main = print ans
-{-
-{ sum = 0 ;
- x = 1;
- while (x <= 5)
- { sum = sum + x;
- x = x + 1;
- }
-}
--}
-
-
----------------------------------------------------
--- Untyped Annotated AST
-
-data TyAst = I | B | P TyAst TyAst
-
-data TypeR t where
- IntR :: TypeR Int
- BoolR :: TypeR Bool
- PairR :: TypeR a -> TypeR b -> TypeR (a,b)
-
--- Judgments for Types
-data TJudgment = forall t . TJ (TypeR t)
-
-checkT :: TyAst -> TJudgment
-checkT I = TJ IntR
-checkT B = TJ BoolR
-checkT (P x y) =
- case (checkT x,checkT y) of
- (TJ a, TJ b) -> TJ(PairR a b)
-
-----------------------------------------------------
--- Equality Proofs and Type representations
-data Equal a b where
- EqProof :: Equal a a
-
-match :: TypeR a -> TypeR b -> Maybe (Equal a b)
-match IntR IntR = succeed EqProof
-match BoolR BoolR = succeed EqProof
-match (PairR a b) (PairR c d) =
- do { EqProof <- match a c
- ; EqProof <- match b d
- ; succeed EqProof }
-match _ _ = fail "match fails"
-
-
-----------------------------------------------
--- checking Variables are consistent
-
-checkV :: Int -> TypeR t -> TypeR s -> Maybe(V s t)
-checkV 0 t1 (PairR t2 p) =
- do { EqProof <- match t1 t2
- ; return Z }
-checkV n t1 (PairR ty p) =
- do { v <- checkV (n-1) t1 p; return(S v)}
-checkV n t1 sr = Nothing
-
-
------------------------------------------------------
-data ExpAst
- = IntCA Int
- | BoolCA Bool
- | PlusA ExpAst ExpAst
- | LteqA ExpAst ExpAst
- | VarA Int TyAst
-
--- Judgments for Expressions
-data EJudgment s = forall t . EJ (TypeR t) (Exp s t)
-
-checkE :: ExpAst -> TypeR s -> Maybe (EJudgment s)
-checkE (IntCA n) sr = succeed(EJ IntR (IntC n))
-checkE (BoolCA b) sr = succeed(EJ BoolR (BoolC b))
-checkE (PlusA x y) sr =
- do { EJ t1 e1 <- checkE x sr
- ; EqProof <- match t1 IntR
- ; EJ t2 e2 <- checkE y sr
- ; EqProof <- match t2 IntR
- ; succeed(EJ IntR (Plus e1 e2))}
-checkE (VarA n ty) sr =
- do { TJ t <- succeed(checkT ty)
- ; v <- checkV n t sr
- ; return(EJ t (Var v)) }
-
------------------------------------------------------
-data ComAst
- = SetA Int TyAst ExpAst
- | SeqA ComAst ComAst
- | IfA ExpAst ComAst ComAst
- | WhileA ExpAst ComAst
- | DeclareA TyAst ExpAst ComAst
-
-data CJudgment s = EC (Com s)
-
-checkC :: ComAst -> TypeR s -> Maybe(CJudgment s)
-checkC (SetA n ty e) sr =
- do { TJ t1 <- succeed(checkT ty)
- ; v <- checkV n t1 sr
- ; EJ t2 e1 <- checkE e sr
- ; EqProof <- match t1 t2
- ; return(EC (Set v e1))}
-checkC (SeqA x y) sr =
- do { EC c1 <- checkC x sr
- ; EC c2 <- checkC y sr
- ; return(EC (Seq c1 c2)) }
-checkC (IfA e x y) sr =
- do { EJ t1 e1 <- checkE e sr
- ; EqProof <- match t1 BoolR
- ; EC c1 <- checkC x sr
- ; EC c2 <- checkC y sr
- ; return(EC(If e1 c1 c2)) }
-checkC (WhileA e x) sr =
- do { EJ t1 e1 <- checkE e sr
- ; EqProof <- match t1 BoolR
- ; EC c1 <- checkC x sr
- ; return(EC(While e1 c1)) }
-checkC (DeclareA ty e c) sr =
- do { TJ t1 <- succeed(checkT ty)
- ; EJ t2 e2 <- checkE e sr
- ; EqProof <- match t1 t2
- ; EC c2 <- checkC c (PairR t1 sr)
- ; return(EC(Declare e2 c2)) }
-
---------------------------------------------------------------
-
-e1 = Lteq (Plus (Var sum_var)(Var x)) (Plus (Var x) (IntC 1))
-
-{-
-data Store s
- = M (Code s)
- | forall a b . N (Code a) (Store b) where s = (a,b)
-
-eval2 :: Exp s t -> Store s -> Code t
-eval2 (IntC n) s = lift n
-eval2 (BoolC b) s = lift b
-eval2 (Plus x y) s = [| $(eval2 x s) + $(eval2 y s) |]
-eval2 (Lteq x y) s = [| $(eval2 x s) <= $(eval2 y s) |]
-eval2 (Var Z) (N a b) = a
-eval2 (Var (S v)) (N a b) = eval2 (Var v) b
-eval2 (Var Z) (M x) = [| fst $x |]
-eval2 (Var (S v)) (M x) = eval2 (Var v) (M [| snd $x |])
-
-
-test e = [| \ (x,(y,z)) -> $(eval2 e (N [|x|] (N [|y|] (M [|z|])))) |]
-
--- test e1 ---> [| \ (x,(y,z)) -> x + y <= y + 1 |]
--} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/gadt/while.stdout b/testsuite/tests/ghc-regress/gadt/while.stdout
deleted file mode 100644
index 8237a9beac..0000000000
--- a/testsuite/tests/ghc-regress/gadt/while.stdout
+++ /dev/null
@@ -1 +0,0 @@
-(15,(6,1))
diff --git a/testsuite/tests/ghc-regress/generics/GEq/GEq.hs b/testsuite/tests/ghc-regress/generics/GEq/GEq.hs
deleted file mode 100644
index 54caad34e5..0000000000
--- a/testsuite/tests/ghc-regress/generics/GEq/GEq.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-{-# LANGUAGE TypeOperators, DefaultSignatures, FlexibleContexts, FlexibleInstances #-}
-
-module GEq where
-
-import GHC.Generics
-
-class GEq' f where
- geq' :: f a -> f a -> Bool
-
-instance GEq' U1 where
- geq' _ _ = True
-
-instance (GEq c) => GEq' (K1 i c) where
- geq' (K1 a) (K1 b) = geq a b
-
--- No instances for P or Rec because geq is only applicable to types of kind *
-
-instance (GEq' a) => GEq' (M1 i c a) where
- geq' (M1 a) (M1 b) = geq' a b
-
-instance (GEq' a, GEq' b) => GEq' (a :+: b) where
- geq' (L1 a) (L1 b) = geq' a b
- geq' (R1 a) (R1 b) = geq' a b
- geq' _ _ = False
-
-instance (GEq' a, GEq' b) => GEq' (a :*: b) where
- geq' (a1 :*: b1) (a2 :*: b2) = geq' a1 a2 && geq' b1 b2
-
-
-class GEq a where
- geq :: a -> a -> Bool
- default geq :: (Generic a, GEq' (Rep a)) => a -> a -> Bool
- geq x y = geq' (from x) (from y)
-
-
--- Base types instances (ad-hoc)
-instance GEq Char where geq = (==)
-instance GEq Int where geq = (==)
-instance GEq Float where geq = (==)
-{-
--- Generic instances
-instance (GEq a) => GEq (Maybe a)
-instance (GEq a) => GEq [a]
--}
diff --git a/testsuite/tests/ghc-regress/generics/GEq/GEq1.stdout b/testsuite/tests/ghc-regress/generics/GEq/GEq1.stdout
deleted file mode 100644
index a7f0546170..0000000000
--- a/testsuite/tests/ghc-regress/generics/GEq/GEq1.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-False
-False
-True
-True
diff --git a/testsuite/tests/ghc-regress/generics/GEq/GEq2.hs b/testsuite/tests/ghc-regress/generics/GEq/GEq2.hs
deleted file mode 100644
index ac825aa71f..0000000000
--- a/testsuite/tests/ghc-regress/generics/GEq/GEq2.hs
+++ /dev/null
@@ -1,78 +0,0 @@
-{-# LANGUAGE TypeOperators, DefaultSignatures, FlexibleInstances, DeriveGeneric #-}
-{-# LANGUAGE FlexibleContexts #-}
-
-module Main where
-
-import GHC.Generics hiding (C, D)
-
-class GEq' f where
- geq' :: f a -> f a -> Bool
-
-instance GEq' U1 where
- geq' _ _ = True
-
-instance (GEq c) => GEq' (K1 i c) where
- geq' (K1 a) (K1 b) = geq a b
-
--- No instances for P or Rec because geq is only applicable to types of kind *
-
-instance (GEq' a) => GEq' (M1 i c a) where
- geq' (M1 a) (M1 b) = geq' a b
-
-instance (GEq' a, GEq' b) => GEq' (a :+: b) where
- geq' (L1 a) (L1 b) = geq' a b
- geq' (R1 a) (R1 b) = geq' a b
- geq' _ _ = False
-
-instance (GEq' a, GEq' b) => GEq' (a :*: b) where
- geq' (a1 :*: b1) (a2 :*: b2) = geq' a1 a2 && geq' b1 b2
-
-
-class GEq a where
- geq :: a -> a -> Bool
- default geq :: (Generic a, GEq' (Rep a)) => a -> a -> Bool
- geq x y = geq' (from x) (from y)
-
-
--- Base types instances (ad-hoc)
-instance GEq Char where geq = (==)
-instance GEq Int where geq = (==)
-instance GEq Float where geq = (==)
-{-
--- Generic instances
-instance (GEq a) => GEq (Maybe a)
-instance (GEq a) => GEq [a]
--}
-
-data C = C0 | C1
- deriving Generic
-
-data D a = D0 | D1 { d11 :: a, d12 :: (D a) }
- deriving Generic
-
-data (:**:) a b = a :**: b
- deriving Generic
-
--- Example values
-c0 = C0
-c1 = C1
-
-d0 :: D Char
-d0 = D0
-d1 = D1 'p' D0
-
-p1 :: Int :**: Char
-p1 = 3 :**: 'p'
-
--- Generic instances
-instance GEq C
-instance (GEq a) => GEq (D a)
-instance (GEq a, GEq b) => GEq (a :**: b)
-
--- Tests
-teq0 = geq c0 c1
-teq1 = geq d0 d1
-teq2 = geq d0 d0
-teq3 = geq p1 p1
-
-main = mapM_ print [teq0, teq1, teq2, teq3]
diff --git a/testsuite/tests/ghc-regress/generics/GEq/GEq2.stdout b/testsuite/tests/ghc-regress/generics/GEq/GEq2.stdout
deleted file mode 100644
index a7f0546170..0000000000
--- a/testsuite/tests/ghc-regress/generics/GEq/GEq2.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-False
-False
-True
-True
diff --git a/testsuite/tests/ghc-regress/generics/GEq/Main.hs b/testsuite/tests/ghc-regress/generics/GEq/Main.hs
deleted file mode 100644
index bc1fbd5e55..0000000000
--- a/testsuite/tests/ghc-regress/generics/GEq/Main.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-{-# LANGUAGE TypeOperators, DeriveGeneric #-}
-
-module Main where
-
-import GHC.Generics hiding (C, D)
-import GEq
-
--- We should be able to generate a generic representation for these types
-
-data C = C0 | C1
- deriving Generic
-
-data D a = D0 | D1 { d11 :: a, d12 :: (D a) }
- deriving Generic
-
-data (:**:) a b = a :**: b
- deriving Generic
-
--- Example values
-c0 = C0
-c1 = C1
-
-d0 :: D Char
-d0 = D0
-d1 = D1 'p' D0
-
-p1 :: Int :**: Char
-p1 = 3 :**: 'p'
-
--- Generic instances
-instance GEq C
-instance (GEq a) => GEq (D a)
-instance (GEq a, GEq b) => GEq (a :**: b)
-
--- Tests
-teq0 = geq c0 c1
-teq1 = geq d0 d1
-teq2 = geq d0 d0
-teq3 = geq p1 p1
-
-main = mapM_ print [teq0, teq1, teq2, teq3]
diff --git a/testsuite/tests/ghc-regress/generics/GEq/Makefile b/testsuite/tests/ghc-regress/generics/GEq/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/generics/GEq/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/generics/GEq/test.T b/testsuite/tests/ghc-regress/generics/GEq/test.T
deleted file mode 100644
index 363cb48212..0000000000
--- a/testsuite/tests/ghc-regress/generics/GEq/test.T
+++ /dev/null
@@ -1,4 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-test('GEq1', normal, multimod_compile_and_run, ['Main', ''])
-test('GEq2', normal, multimod_compile_and_run, ['GEq2', '']) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/generics/GShow/GShow.hs b/testsuite/tests/ghc-regress/generics/GShow/GShow.hs
deleted file mode 100644
index 3c8f2591ef..0000000000
--- a/testsuite/tests/ghc-regress/generics/GShow/GShow.hs
+++ /dev/null
@@ -1,124 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE TypeSynonymInstances #-}
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE TypeOperators #-}
-{-# LANGUAGE IncoherentInstances #-} -- :-/
-{-# LANGUAGE DefaultSignatures #-}
-
-module GShow (
- -- * Generic show class
- GShow(..)
- ) where
-
-
-import GHC.Generics
-
---------------------------------------------------------------------------------
--- Generic show
---------------------------------------------------------------------------------
-
-data Type = Rec | Tup | Pref | Inf String
-
-class GShow' f where
- gshowsPrec' :: Type -> Int -> f a -> ShowS
- isNullary :: f a -> Bool
- isNullary = error "generic show (isNullary): unnecessary case"
-
-instance GShow' U1 where
- gshowsPrec' _ _ U1 = id
- isNullary _ = True
-
-instance (GShow c) => GShow' (K1 i c) where
- gshowsPrec' _ n (K1 a) = gshowsPrec n a
- isNullary _ = False
-
--- No instances for P or Rec because gshow is only applicable to types of kind *
-
-instance (GShow' a, Constructor c) => GShow' (M1 C c a) where
- gshowsPrec' _ n c@(M1 x) =
- case (fixity, conIsTuple c) of
- (Prefix,False) -> showParen (n > 10 && not (isNullary x))
- ( showString (conName c)
- . if (isNullary x) then id else showChar ' '
- . showBraces t (gshowsPrec' t 10 x))
- (Prefix,True) -> showParen (n > 10) (showBraces t (gshowsPrec' t 10 x))
- (Infix _ m,_) -> showParen (n > m) (showBraces t (gshowsPrec' t m x))
- where fixity = conFixity c
- t = if (conIsRecord c) then Rec else
- if (conIsTuple c) then Tup else
- case fixity of
- Prefix -> Pref
- Infix _ _ -> Inf (show (conName c))
- showBraces :: Type -> ShowS -> ShowS
- showBraces Rec p = showChar '{' . p . showChar '}'
- showBraces Tup p = showChar '(' . p . showChar ')'
- showBraces Pref p = p
- showBraces (Inf _) p = p
- conIsTuple c = case conName c of
- ('(':',':_) -> True
- otherwise -> False
-
- isNullary (M1 x) = isNullary x
-
-instance (Selector s, GShow' a) => GShow' (M1 S s a) where
- gshowsPrec' t n s@(M1 x) | selName s == "" = showParen (n > 10)
- (gshowsPrec' t n x)
- | otherwise = showString (selName s)
- . showString " = "
- . gshowsPrec' t 0 x
- isNullary (M1 x) = isNullary x
-
-instance (GShow' a) => GShow' (M1 D d a) where
- gshowsPrec' t n (M1 x) = gshowsPrec' t n x
-
-instance (GShow' a, GShow' b) => GShow' (a :+: b) where
- gshowsPrec' t n (L1 x) = gshowsPrec' t n x
- gshowsPrec' t n (R1 x) = gshowsPrec' t n x
-
-instance (GShow' a, GShow' b) => GShow' (a :*: b) where
- gshowsPrec' t@Rec n (a :*: b) =
- gshowsPrec' t n a . showString ", " . gshowsPrec' t n b
- gshowsPrec' t@(Inf s) n (a :*: b) =
- gshowsPrec' t n a . showString s . gshowsPrec' t n b
- gshowsPrec' t@Tup n (a :*: b) =
- gshowsPrec' t n a . showChar ',' . gshowsPrec' t n b
- gshowsPrec' t@Pref n (a :*: b) =
- gshowsPrec' t (n+1) a . showChar ' ' . gshowsPrec' t (n+1) b
-
- -- If we have a product then it is not a nullary constructor
- isNullary _ = False
-
-
-class GShow a where
- gshowsPrec :: Int -> a -> ShowS
- default gshowsPrec :: (Generic a, GShow' (Rep a)) => Int -> a -> ShowS
- gshowsPrec n = gshowsPrec' Pref n . from
-
- gshows :: a -> ShowS
- gshows = gshowsPrec 0
-
- gshow :: a -> String
- gshow x = gshows x ""
-
-
--- Base types instances
-instance GShow Char where gshowsPrec = showsPrec
-instance GShow Int where gshowsPrec = showsPrec
-instance GShow Float where gshowsPrec = showsPrec
-instance GShow String where gshowsPrec = showsPrec
-instance GShow Bool where gshowsPrec = showsPrec
-
-intersperse :: a -> [a] -> [a]
-intersperse _ [] = []
-intersperse _ [h] = [h]
-intersperse x (h:t) = h : x : (intersperse x t)
-
-instance (GShow a) => GShow [a] where
- gshowsPrec _ l = showChar '['
- . foldr (.) id
- (intersperse (showChar ',') (map (gshowsPrec 0) l))
- . showChar ']'
-
-instance (GShow a) => GShow (Maybe a)
-instance (GShow a, GShow b) => GShow (a,b)
diff --git a/testsuite/tests/ghc-regress/generics/GShow/GShow1.stdout b/testsuite/tests/ghc-regress/generics/GShow/GShow1.stdout
deleted file mode 100644
index 6109e446a5..0000000000
--- a/testsuite/tests/ghc-regress/generics/GShow/GShow1.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-D0
-D1 {d11 = Just 'p', d12 = D0}
-D1 {d11 = (3,0.14), d12 = D0}
diff --git a/testsuite/tests/ghc-regress/generics/GShow/Main.hs b/testsuite/tests/ghc-regress/generics/GShow/Main.hs
deleted file mode 100644
index 81768ed647..0000000000
--- a/testsuite/tests/ghc-regress/generics/GShow/Main.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE DeriveGeneric #-}
-
-module Main where
-
-import GHC.Generics hiding (C, D)
-import GShow
-
--- We should be able to generate a generic representation for these types
-data D a = D0 | D1 { d11 :: a, d12 :: (D a) } deriving Generic
-
--- Example values
-d0 :: D Char
-d0 = D0
-d1 = D1 (Just 'p') D0
-
-d2 :: D (Int,Float)
-d2 = D1 (3,0.14) D0
-
--- Generic instances
-instance (GShow a) => GShow (D a)
-
--- Tests
-main = mapM_ putStrLn [gshow d0, gshow d1, gshow d2]
diff --git a/testsuite/tests/ghc-regress/generics/GShow/Makefile b/testsuite/tests/ghc-regress/generics/GShow/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/generics/GShow/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/generics/GShow/test.T b/testsuite/tests/ghc-regress/generics/GShow/test.T
deleted file mode 100644
index 68770ba884..0000000000
--- a/testsuite/tests/ghc-regress/generics/GShow/test.T
+++ /dev/null
@@ -1,3 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-test('GShow1', normal, multimod_compile_and_run, ['Main', '']) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/generics/GenCanDoRep0.hs b/testsuite/tests/ghc-regress/generics/GenCanDoRep0.hs
deleted file mode 100644
index a86416b052..0000000000
--- a/testsuite/tests/ghc-regress/generics/GenCanDoRep0.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE DeriveGeneric #-}
-{-# LANGUAGE TypeOperators #-}
-
-module CanDoRep0 where
-
-import GHC.Generics (Generic)
-
-
--- We should be able to generate a generic representation for these types
-data A
- deriving Generic
-
-data B a
- deriving Generic
-
-data C = C0 | C1
- deriving Generic
-
-data D a = D0 | D1 { d11 :: a, d12 :: (D a) }
- deriving Generic
-
-data (:*:) a b = a :*: b
- deriving Generic
diff --git a/testsuite/tests/ghc-regress/generics/GenCannotDoRep0.hs b/testsuite/tests/ghc-regress/generics/GenCannotDoRep0.hs
deleted file mode 100644
index 5b4f93f94f..0000000000
--- a/testsuite/tests/ghc-regress/generics/GenCannotDoRep0.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE DeriveGeneric #-}
-{-# LANGUAGE ExistentialQuantification #-}
-
-module CannotDoRep0 where
-
-import GHC.Generics
-
--- We do not support existential quantification
-data Dynamic = forall a. Dynamic a deriving Generic
diff --git a/testsuite/tests/ghc-regress/generics/GenCannotDoRep0.stderr b/testsuite/tests/ghc-regress/generics/GenCannotDoRep0.stderr
deleted file mode 100644
index b5d2f01381..0000000000
--- a/testsuite/tests/ghc-regress/generics/GenCannotDoRep0.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-GenCannotDoRep0.hs:9:45:
- Can't make a derived instance of `Generic Dynamic':
- Dynamic must be a vanilla data constructor
- In the data type declaration for `Dynamic'
diff --git a/testsuite/tests/ghc-regress/generics/GenCannotDoRep1.hs b/testsuite/tests/ghc-regress/generics/GenCannotDoRep1.hs
deleted file mode 100644
index 98ad108dbf..0000000000
--- a/testsuite/tests/ghc-regress/generics/GenCannotDoRep1.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE DeriveGeneric, DatatypeContexts #-}
-
-module CannotDoRep1 where
-
-import GHC.Generics
-
--- We do not support datatypes with context
-data (Show a) => Context a = Context a deriving Generic
diff --git a/testsuite/tests/ghc-regress/generics/GenCannotDoRep1.stderr b/testsuite/tests/ghc-regress/generics/GenCannotDoRep1.stderr
deleted file mode 100644
index 477a2955ce..0000000000
--- a/testsuite/tests/ghc-regress/generics/GenCannotDoRep1.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-GenCannotDoRep1.hs:1:29:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
-
-GenCannotDoRep1.hs:8:49:
- Can't make a derived instance of `Generic (Context a)':
- Context must not have a datatype context
- In the data type declaration for `Context'
diff --git a/testsuite/tests/ghc-regress/generics/GenCannotDoRep2.hs b/testsuite/tests/ghc-regress/generics/GenCannotDoRep2.hs
deleted file mode 100644
index ad816f4ce4..0000000000
--- a/testsuite/tests/ghc-regress/generics/GenCannotDoRep2.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE DeriveGeneric #-}
-{-# LANGUAGE StandaloneDeriving #-}
-{-# LANGUAGE GADTs #-}
-
-module CannotDoRep2 where
-
-import GHC.Generics
-
--- We do not support GADTs
-data Term a where
- Int :: Term Int
-
-deriving instance Generic (Term a)
diff --git a/testsuite/tests/ghc-regress/generics/GenCannotDoRep2.stderr b/testsuite/tests/ghc-regress/generics/GenCannotDoRep2.stderr
deleted file mode 100644
index 35caf2c3b4..0000000000
--- a/testsuite/tests/ghc-regress/generics/GenCannotDoRep2.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-GenCannotDoRep2.hs:13:1:
- Can't make a derived instance of `Generic (Term a)':
- Int must be a vanilla data constructor
- In the stand-alone deriving instance for `Generic (Term a)'
diff --git a/testsuite/tests/ghc-regress/generics/GenDeprecated.stderr b/testsuite/tests/ghc-regress/generics/GenDeprecated.stderr
deleted file mode 100644
index d07c35d3a3..0000000000
--- a/testsuite/tests/ghc-regress/generics/GenDeprecated.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-GenDeprecated.hs:1:14:
- Warning: -XGenerics is deprecated: it does nothing; look into -XDefaultSignatures and -XDeriveGeneric for generic programming support.
diff --git a/testsuite/tests/ghc-regress/generics/GenShouldFail0.hs b/testsuite/tests/ghc-regress/generics/GenShouldFail0.hs
deleted file mode 100644
index cc1ef6ff42..0000000000
--- a/testsuite/tests/ghc-regress/generics/GenShouldFail0.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE StandaloneDeriving #-}
-
-module ShouldFail0 where
-
-import GHC.Generics (Generic)
-
-data X = X
-
-deriving instance Generic X
-
--- Should fail (no XDeriveGeneric)
diff --git a/testsuite/tests/ghc-regress/generics/GenShouldFail0.stderr b/testsuite/tests/ghc-regress/generics/GenShouldFail0.stderr
deleted file mode 100644
index 3685e67784..0000000000
--- a/testsuite/tests/ghc-regress/generics/GenShouldFail0.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-GenShouldFail0.hs:9:1:
- Can't make a derived instance of `Generic X':
- You need -XDeriveGeneric to derive an instance for this class
- In the stand-alone deriving instance for `Generic X'
diff --git a/testsuite/tests/ghc-regress/generics/Makefile b/testsuite/tests/ghc-regress/generics/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/generics/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/generics/Uniplate/GUniplate.hs b/testsuite/tests/ghc-regress/generics/Uniplate/GUniplate.hs
deleted file mode 100644
index 76f387d636..0000000000
--- a/testsuite/tests/ghc-regress/generics/Uniplate/GUniplate.hs
+++ /dev/null
@@ -1,53 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE TypeSynonymInstances #-}
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE TypeOperators #-}
-{-# LANGUAGE DefaultSignatures #-}
-{-# LANGUAGE IncoherentInstances #-} -- necessary, unfortunately
-
-module GUniplate where
-
-import GHC.Generics
-
---------------------------------------------------------------------------------
--- Generic Uniplate
---------------------------------------------------------------------------------
-
-class Uniplate' f b where
- children' :: f a -> [b]
-
-instance Uniplate' U1 a where
- children' U1 = []
-
-instance Uniplate' (K1 i a) a where
- children' (K1 a) = [a]
-
-instance Uniplate' (K1 i a) b where
- children' (K1 _) = []
-
-instance (Uniplate' f b) => Uniplate' (M1 i c f) b where
- children' (M1 a) = children' a
-
-instance (Uniplate' f b, Uniplate' g b) => Uniplate' (f :+: g) b where
- children' (L1 a) = children' a
- children' (R1 a) = children' a
-
-instance (Uniplate' f b, Uniplate' g b) => Uniplate' (f :*: g) b where
- children' (a :*: b) = children' a ++ children' b
-
-
-class Uniplate a where
- children :: a -> [a]
- default children :: (Generic a, Uniplate' (Rep a) a) => a -> [a]
- children = children' . from
-
-
--- Base types instances
-instance Uniplate Char where children _ = []
-instance Uniplate Int where children _ = []
-instance Uniplate Float where children _ = []
-
-instance Uniplate [a] where
- children [] = []
- children (_:t) = [t]
diff --git a/testsuite/tests/ghc-regress/generics/Uniplate/GUniplate1.stdout b/testsuite/tests/ghc-regress/generics/Uniplate/GUniplate1.stdout
deleted file mode 100644
index f560e40162..0000000000
--- a/testsuite/tests/ghc-regress/generics/Uniplate/GUniplate1.stdout
+++ /dev/null
@@ -1 +0,0 @@
-("",[],[Leaf,Leaf])
diff --git a/testsuite/tests/ghc-regress/generics/Uniplate/Main.hs b/testsuite/tests/ghc-regress/generics/Uniplate/Main.hs
deleted file mode 100644
index 95d84244fa..0000000000
--- a/testsuite/tests/ghc-regress/generics/Uniplate/Main.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE DeriveGeneric #-}
-
-module Main where
-
-import GHC.Generics
-import GUniplate
-
-
-data Tree = Leaf | Node Int Tree Tree deriving (Show, Generic)
-data Pair a b = Pair a b deriving (Show, Generic)
-
-instance Uniplate Tree
-instance Uniplate (Pair a b)
-
--- Tests
-t1 = children ('p')
-t2 = children (Pair "abc" (Pair "abc" 2))
-t3 = children (Node 2 Leaf Leaf)
-
-main = print (t1, t2, t3)
diff --git a/testsuite/tests/ghc-regress/generics/Uniplate/Makefile b/testsuite/tests/ghc-regress/generics/Uniplate/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/generics/Uniplate/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/generics/Uniplate/test.T b/testsuite/tests/ghc-regress/generics/Uniplate/test.T
deleted file mode 100644
index a1e610726e..0000000000
--- a/testsuite/tests/ghc-regress/generics/Uniplate/test.T
+++ /dev/null
@@ -1,3 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-test('GUniplate1', normal, multimod_compile_and_run, ['Main', '']) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/generics/all.T b/testsuite/tests/ghc-regress/generics/all.T
deleted file mode 100644
index 5ef616c811..0000000000
--- a/testsuite/tests/ghc-regress/generics/all.T
+++ /dev/null
@@ -1,8 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-test('GenCanDoRep0', normal, compile, [''])
-
-test('GenShouldFail0', normal, compile_fail, [''])
-test('GenCannotDoRep0', normal, compile_fail, [''])
-test('GenCannotDoRep1', normal, compile_fail, [''])
-test('GenCannotDoRep2', normal, compile_fail, [''])
diff --git a/testsuite/tests/ghc-regress/ghc-api/Makefile b/testsuite/tests/ghc-regress/ghc-api/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/ghc-api/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ghc-api/T4891/Makefile b/testsuite/tests/ghc-regress/ghc-api/T4891/Makefile
deleted file mode 100644
index 179109b49e..0000000000
--- a/testsuite/tests/ghc-regress/ghc-api/T4891/Makefile
+++ /dev/null
@@ -1,13 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-clean:
- rm -f *.o *.hi
-
-T4891: clean
- '$(TEST_HC)' $(TEST_HC_OPTS) --make -v0 -package ghc T4891
- ./T4891 "`'$(TEST_HC)' $(TEST_HC_OPTS) --print-libdir | tr -d '\r'`"
-
-.PHONY: clean T4891
-
diff --git a/testsuite/tests/ghc-regress/ghc-api/T4891/T4891.hs b/testsuite/tests/ghc-regress/ghc-api/T4891/T4891.hs
deleted file mode 100644
index 977f854e19..0000000000
--- a/testsuite/tests/ghc-regress/ghc-api/T4891/T4891.hs
+++ /dev/null
@@ -1,70 +0,0 @@
-{-# LANGUAGE BangPatterns #-}
-module Main where
-
-import ByteCodeLink
-import CoreMonad
-import Data.Array
-import DataCon
-import GHC
-import HscTypes
-import Linker
-import RtClosureInspect
-import TcEnv
-import Type
-import TcRnMonad
-import TcType
-import Control.Applicative
-import Name (getOccString)
-import Unsafe.Coerce
-import Control.Monad
-import Data.Maybe
-import Bag
-import PrelNames (iNTERACTIVE)
-import Outputable
-import GhcMonad
-import X
-
-import System.Environment
-
-main :: IO ()
-main = do [libdir] <- getArgs
- runGhc (Just libdir) doit
-
-doit :: Ghc ()
-doit = do
- dflags' <- getSessionDynFlags
- primPackages <- setSessionDynFlags dflags'
- dflags <- getSessionDynFlags
- defaultCleanupHandler dflags $ do
- target <- guessTarget "X.hs" Nothing
- setTargets [target]
- load LoadAllTargets
-
- () <- chaseConstructor (unsafeCoerce False)
- () <- chaseConstructor (unsafeCoerce [1,2,3])
- () <- chaseConstructor (unsafeCoerce (3 :-> 2))
- () <- chaseConstructor (unsafeCoerce (4 :->. 4))
- () <- chaseConstructor (unsafeCoerce (4 :->.+ 4))
- return ()
-
-chaseConstructor :: (GhcMonad m) => HValue -> m ()
-chaseConstructor !hv = do
- liftIO $ putStrLn "====="
- closure <- liftIO $ getClosureData hv
- case tipe closure of
- Indirection _ -> chaseConstructor (ptrs closure ! 0)
- Constr -> do
- withSession $ \hscEnv -> liftIO $ initTcForLookup hscEnv $ do
- eDcname <- dataConInfoPtrToName (infoPtr closure)
- case eDcname of
- Left _ -> return ()
- Right dcName -> do
- liftIO $ putStrLn $ "Name: " ++ showPpr dcName
- liftIO $ putStrLn $ "OccString: " ++ "'" ++ getOccString dcName ++ "'"
- dc <- tcLookupDataCon dcName
- liftIO $ putStrLn $ "DataCon: " ++ showPpr dc
- _ -> return ()
-
-initTcForLookup :: HscEnv -> TcM a -> IO a
-initTcForLookup hsc_env = liftM (\(msg, mValue) -> fromMaybe (error . show . bagToList . snd $ msg) mValue) . initTc hsc_env HsSrcFile False iNTERACTIVE
-
diff --git a/testsuite/tests/ghc-regress/ghc-api/T4891/T4891.stdout b/testsuite/tests/ghc-regress/ghc-api/T4891/T4891.stdout
deleted file mode 100644
index 47eb152467..0000000000
--- a/testsuite/tests/ghc-regress/ghc-api/T4891/T4891.stdout
+++ /dev/null
@@ -1,20 +0,0 @@
-=====
-Name: GHC.Types.False
-OccString: 'False'
-DataCon: GHC.Types.False
-=====
-Name: :
-OccString: ':'
-DataCon: :
-=====
-Name: X.:->
-OccString: ':->'
-DataCon: X.:->
-=====
-Name: X.:->.
-OccString: ':->.'
-DataCon: X.:->.
-=====
-Name: X.:->.+
-OccString: ':->.+'
-DataCon: X.:->.+
diff --git a/testsuite/tests/ghc-regress/ghc-api/T4891/X.hs b/testsuite/tests/ghc-regress/ghc-api/T4891/X.hs
deleted file mode 100644
index aca63eead5..0000000000
--- a/testsuite/tests/ghc-regress/ghc-api/T4891/X.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module X where
-
-data X = Int :-> Int
- | Int :->. Int
- | Int :->.+ Int
diff --git a/testsuite/tests/ghc-regress/ghc-api/T4891/all.T b/testsuite/tests/ghc-regress/ghc-api/T4891/all.T
deleted file mode 100644
index 5217e5371f..0000000000
--- a/testsuite/tests/ghc-regress/ghc-api/T4891/all.T
+++ /dev/null
@@ -1,3 +0,0 @@
-test('T4891', [skip_if_fast, extra_clean(['X.hi', 'X.o'])],
- run_command,
- ['$MAKE -s --no-print-directory T4891'])
diff --git a/testsuite/tests/ghc-regress/ghc-api/apirecomp001/A.hs b/testsuite/tests/ghc-regress/ghc-api/apirecomp001/A.hs
deleted file mode 100644
index 0e65d28676..0000000000
--- a/testsuite/tests/ghc-regress/ghc-api/apirecomp001/A.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# OPTIONS_GHC -Wall #-}
-module A where
-
-import B
-import System.IO
-
-main = do
- print answer_to_live_the_universe_and_everything
- hFlush stdout
diff --git a/testsuite/tests/ghc-regress/ghc-api/apirecomp001/B.hs b/testsuite/tests/ghc-regress/ghc-api/apirecomp001/B.hs
deleted file mode 100644
index 81b17a4404..0000000000
--- a/testsuite/tests/ghc-regress/ghc-api/apirecomp001/B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# OPTIONS_GHC -Wall #-}
-module B where
-
-answer_to_live_the_universe_and_everything =
- length [1..23*2] - 4 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghc-api/apirecomp001/Makefile b/testsuite/tests/ghc-regress/ghc-api/apirecomp001/Makefile
deleted file mode 100644
index c6a2dc70d8..0000000000
--- a/testsuite/tests/ghc-regress/ghc-api/apirecomp001/Makefile
+++ /dev/null
@@ -1,11 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-clean:
- rm -f *.o *.hi
-
-apirecomp001: clean
- '$(TEST_HC)' $(TEST_HC_OPTS) --make -v0 -package ghc myghc.hs
- ./myghc "`'$(TEST_HC)' $(TEST_HC_OPTS) --print-libdir | tr -d '\r'`"
-
diff --git a/testsuite/tests/ghc-regress/ghc-api/apirecomp001/all.T b/testsuite/tests/ghc-regress/ghc-api/apirecomp001/all.T
deleted file mode 100644
index 0aa92874dc..0000000000
--- a/testsuite/tests/ghc-regress/ghc-api/apirecomp001/all.T
+++ /dev/null
@@ -1 +0,0 @@
-test('apirecomp001', skip_if_fast, run_command, ['$MAKE -s --no-print-directory apirecomp001'])
diff --git a/testsuite/tests/ghc-regress/ghc-api/apirecomp001/apirecomp001.stderr b/testsuite/tests/ghc-regress/ghc-api/apirecomp001/apirecomp001.stderr
deleted file mode 100644
index dd8fa9e89e..0000000000
--- a/testsuite/tests/ghc-regress/ghc-api/apirecomp001/apirecomp001.stderr
+++ /dev/null
@@ -1,32 +0,0 @@
-
-B.hs:4:1:
- Warning: Top-level binding with no type signature:
- answer_to_live_the_universe_and_everything :: Int
-
-B.hs:5:12:
- Warning: Defaulting the following constraint(s) to type `Integer'
- (Enum a0) arising from the arithmetic sequence `1 .. 23 * 2'
- at B.hs:5:12-20
- (Num a0) arising from the literal `2' at B.hs:5:19
- In the first argument of `length', namely `[1 .. 23 * 2]'
- In the first argument of `(-)', namely `length [1 .. 23 * 2]'
- In the expression: length [1 .. 23 * 2] - 4
-
-A.hs:7:1:
- Warning: Top-level binding with no type signature: main :: IO ()
-
-B.hs:4:1:
- Warning: Top-level binding with no type signature:
- answer_to_live_the_universe_and_everything :: Int
-
-B.hs:5:12:
- Warning: Defaulting the following constraint(s) to type `Integer'
- (Enum a0) arising from the arithmetic sequence `1 .. 23 * 2'
- at B.hs:5:12-20
- (Num a0) arising from the literal `2' at B.hs:5:19
- In the first argument of `length', namely `[1 .. 23 * 2]'
- In the first argument of `(-)', namely `length [1 .. 23 * 2]'
- In the expression: length [1 .. 23 * 2] - 4
-
-A.hs:7:1:
- Warning: Top-level binding with no type signature: main :: IO ()
diff --git a/testsuite/tests/ghc-regress/ghc-api/apirecomp001/apirecomp001.stdout b/testsuite/tests/ghc-regress/ghc-api/apirecomp001/apirecomp001.stdout
deleted file mode 100644
index d42bf17f3a..0000000000
--- a/testsuite/tests/ghc-regress/ghc-api/apirecomp001/apirecomp001.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-target nothing: ok
-target interpreted: ok
-42
-ok
diff --git a/testsuite/tests/ghc-regress/ghc-api/apirecomp001/myghc.hs b/testsuite/tests/ghc-regress/ghc-api/apirecomp001/myghc.hs
deleted file mode 100644
index ec2e4a78f7..0000000000
--- a/testsuite/tests/ghc-regress/ghc-api/apirecomp001/myghc.hs
+++ /dev/null
@@ -1,57 +0,0 @@
--- 1. Load a set of modules with "nothing" target
--- 2. Load it again with "interpreted" target
--- 3. Execute some code
--- a. If the recompilation checker is buggy this will die due to missing
--- code
--- b. If it's correct, it will recompile because the target has changed.
---
--- This program must be called with GHC's libdir as the single command line
--- argument.
-module Main where
-
-import GHC
-import DynFlags
-import MonadUtils ( MonadIO(..) )
-import BasicTypes ( failed )
-import Bag ( bagToList )
-import System.Environment
-import Control.Monad
-import System.IO
-
-main = do
- [libdir] <- getArgs
- runGhc (Just libdir) $ do
- dflags <- getSessionDynFlags
- setSessionDynFlags $ dflags { hscTarget = HscNothing
- , ghcLink = LinkInMemory
- , verbosity = 0 -- silence please
- }
- root_mod <- guessTarget "A.hs" Nothing
- setTargets [root_mod]
- ok <- load LoadAllTargets
- when (failed ok) $ error "Couldn't load A.hs in nothing mode"
- prn "target nothing: ok"
-
- dflags <- getSessionDynFlags
- setSessionDynFlags $ dflags { hscTarget = HscInterpreted }
- ok <- load LoadAllTargets
- when (failed ok) $ error "Couldn't load A.hs in interpreted mode"
- prn "target interpreted: ok"
-
- -- set context to module "A"
- mg <- getModuleGraph
- let [mod] = [ ms_mod m | m <- mg, moduleNameString (ms_mod_name m) == "A" ]
- setContext [mod] []
- liftIO $ hFlush stdout -- make sure things above are printed before
- -- interactive output
- r <- runStmt "main" RunToCompletion
- case r of
- RunOk _ -> prn "ok"
- RunFailed -> prn "compilation failed"
- RunException _ -> prn "exception"
- RunBreak _ _ _ -> prn "breakpoint"
- liftIO $ hFlush stdout
- return ()
-
-prn :: MonadIO m => String -> m ()
-prn = liftIO . putStrLn
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/2228.hs b/testsuite/tests/ghc-regress/ghc-e/should_run/2228.hs
deleted file mode 100644
index 0c53c5ae13..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/2228.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-import System.IO
-main = do
- hGetBuffering stdin >>= print
- hGetBuffering stdout >>= print
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/2228.stdout b/testsuite/tests/ghc-regress/ghc-e/should_run/2228.stdout
deleted file mode 100644
index 07576b5a74..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/2228.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-BlockBuffering Nothing
-BlockBuffering Nothing
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/2636.hs b/testsuite/tests/ghc-regress/ghc-e/should_run/2636.hs
deleted file mode 100644
index 9c6694955a..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/2636.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-import MissingModule
-main = print "main"
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/2636.stderr b/testsuite/tests/ghc-regress/ghc-e/should_run/2636.stderr
deleted file mode 100644
index e69b54b36e..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/2636.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-2636.hs:1:8:
- Could not find module `MissingModule'
- Use -v to see a list of the files searched for.
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/3890.hs b/testsuite/tests/ghc-regress/ghc-e/should_run/3890.hs
deleted file mode 100644
index a72e5c82a0..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/3890.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module Main (main) where
-
-import System.Exit
-import System.IO
-
-main :: IO ()
-main = do putStrLn "Q1"
- exitFailure
- putStrLn "Q2"
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/3890.stdout b/testsuite/tests/ghc-regress/ghc-e/should_run/3890.stdout
deleted file mode 100644
index 7e6c303ad6..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/3890.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Q1
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/Makefile b/testsuite/tests/ghc-regress/ghc-e/should_run/Makefile
deleted file mode 100644
index 844363959b..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/Makefile
+++ /dev/null
@@ -1,29 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-ghc-e001:
- '$(TEST_HC)' $(TEST_HC_OPTS) -ignore-dot-ghci -e "return ()"
-
-ghc-e002:
- '$(TEST_HC)' $(TEST_HC_OPTS) -ignore-dot-ghci -e ":main" ghc-e002.hs
-
-ghc-e003:
- '$(TEST_HC)' $(TEST_HC_OPTS) -ignore-dot-ghci -e 'putStrLn "Foo"' -e 'putStrLn "Bar"'
-
-ghc-e004:
- '$(TEST_HC)' $(TEST_HC_OPTS) -ignore-dot-ghci -e ":m + System.Exit" -e "exitWith (ExitFailure 6)"; echo $$?
-
-# This is what runghc does:
-ghc-e005:
- '$(TEST_HC)' $(TEST_HC_OPTS) -ignore-dot-ghci -main-is foo ghc-e005.hs -e ":set prog ghc-e005-prog" -e ":main [\"the\",\"args\"]"; echo $$?
-
-2228:
- '$(TEST_HC)' $(TEST_HC_OPTS) -ignore-dot-ghci -e ":main" 2228.hs
-
-2636:
- '$(TEST_HC)' $(TEST_HC_OPTS) -ignore-dot-ghci -e ":main" 2636.hs; if [ "$?" != 0 ]; then true; else false; fi
-
-3890:
- '$(TEST_HC)' $(TEST_HC_OPTS) -ignore-dot-ghci -e ":main" 3890.hs | cat
-
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/all.T b/testsuite/tests/ghc-regress/ghc-e/should_run/all.T
deleted file mode 100644
index 6039a4088b..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/all.T
+++ /dev/null
@@ -1,12 +0,0 @@
-
-setTestOpts(if_compiler_profiled(skip))
-
-test('ghc-e001', req_interp, run_command, ['$MAKE --no-print-directory -s ghc-e001'])
-test('ghc-e002', req_interp, run_command, ['$MAKE --no-print-directory -s ghc-e002'])
-test('ghc-e003', req_interp, run_command, ['$MAKE --no-print-directory -s ghc-e003'])
-test('ghc-e004', req_interp, run_command, ['$MAKE --no-print-directory -s ghc-e004'])
-test('ghc-e005', req_interp, run_command, ['$MAKE --no-print-directory -s ghc-e005'])
-
-test('2228', req_interp, run_command, ['$MAKE --no-print-directory -s 2228'])
-test('2636', req_interp, run_command, ['$MAKE --no-print-directory -s 2636'])
-test('3890', req_interp, run_command, ['$MAKE --no-print-directory -s 3890'])
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e002.hs b/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e002.hs
deleted file mode 100644
index 028b1a0166..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e002.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-
-main :: IO ()
-main = putStrLn "This is main"
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e002.stdout b/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e002.stdout
deleted file mode 100644
index 23e1ebd03b..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-This is main
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e003.stdout b/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e003.stdout
deleted file mode 100644
index 3b71d5be87..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e003.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Foo
-Bar
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e004.stdout b/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e004.stdout
deleted file mode 100644
index 1e8b314962..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e004.stdout
+++ /dev/null
@@ -1 +0,0 @@
-6
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e005.hs b/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e005.hs
deleted file mode 100644
index 4899706d77..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e005.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
-import System.Environment
-import System.IO
-
-main :: IO ()
-main = error "main got called"
-
-foo :: IO ()
-foo = do putStrLn "This is foo"
- getArgs >>= print
- hFlush stdout
- error "foo"
-
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e005.stderr b/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e005.stderr
deleted file mode 100644
index 34cecca662..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e005.stderr
+++ /dev/null
@@ -1 +0,0 @@
-ghc-e005-prog: foo
diff --git a/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e005.stdout b/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e005.stdout
deleted file mode 100644
index 57cc51465d..0000000000
--- a/testsuite/tests/ghc-regress/ghc-e/should_run/ghc-e005.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-This is foo
-["the","args"]
-1
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/GADT.hs b/testsuite/tests/ghc-regress/ghci.debugger/GADT.hs
deleted file mode 100644
index a99c1156b9..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/GADT.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-data Empty
-data NonEmpty
-
-data SafeList x y where
- Nil :: SafeList x Empty
- Cons:: Eq x => x -> SafeList x y -> SafeList x NonEmpty
- One :: Eq x => x -> SafeList x Empty -> SafeList x NonEmpty
-
-safeHead :: SafeList x NonEmpty -> x
-safeHead (Cons x _) = x
-
-foo = Cons 3 (Cons 6 (Cons 9 Nil))
-
-
-data Dict x where
- DictN :: Num x => x -> Dict x
- DictE :: Eq x => x -> Dict x
-
-data Exist where
- Exist :: forall a. a -> Exist \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/HappyTest.hs b/testsuite/tests/ghc-regress/ghci.debugger/HappyTest.hs
deleted file mode 100644
index 9be54402a9..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/HappyTest.hs
+++ /dev/null
@@ -1,525 +0,0 @@
-{-# LANGUAGE CPP #-}
-import Data.Char
-import Data.Array
-import GHC.Exts
-import System.IO
-import System.IO.Unsafe
-import Debug.Trace
-
--- parser produced by Happy Version 1.16
-
-data HappyAbsSyn
- = HappyTerminal Token
- | HappyErrorToken Int
- | HappyAbsSyn4 (Exp)
- | HappyAbsSyn5 (Exp1)
- | HappyAbsSyn6 (Term)
- | HappyAbsSyn7 (Factor)
-
-happyActOffsets :: HappyAddr
-happyActOffsets = HappyA# "\x01\x00\x25\x00\x1e\x00\x1b\x00\x1d\x00\x18\x00\x00\x00\x00\x00\x00\x00\x01\x00\xf8\xff\x03\x00\x03\x00\x03\x00\x03\x00\x20\x00\x01\x00\x18\x00\x18\x00\x00\x00\x00\x00\x00\x00\x0a\x00\x01\x00\x00\x00\x00\x00"#
-
-happyGotoOffsets :: HappyAddr
-happyGotoOffsets = HappyA# "\x1a\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x16\x00\x00\x00\x07\x00\xfe\xff\x1c\x00\x06\x00\x00\x00\x12\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x0e\x00\x00\x00\x00\x00"#
-
-happyDefActions :: HappyAddr
-happyDefActions = HappyA# "\x00\x00\x00\x00\x00\x00\x00\x00\xfd\xff\xfa\xff\xf7\xff\xf6\xff\xf5\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\xfb\xff\xfc\xff\xf8\xff\xf9\xff\xf4\xff\x00\x00\x00\x00\xfe\xff"#
-
-happyCheck :: HappyAddr
-happyCheck = HappyA# "\xff\xff\x03\x00\x01\x00\x0b\x00\x03\x00\x04\x00\x03\x00\x04\x00\x02\x00\x03\x00\x03\x00\x0a\x00\x02\x00\x0a\x00\x00\x00\x01\x00\x02\x00\x03\x00\x00\x00\x01\x00\x02\x00\x03\x00\x00\x00\x01\x00\x02\x00\x03\x00\x00\x00\x01\x00\x02\x00\x03\x00\x02\x00\x03\x00\x08\x00\x09\x00\x04\x00\x06\x00\x07\x00\x05\x00\x01\x00\x0c\x00\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff\xff"#
-
-happyTable :: HappyAddr
-happyTable = HappyA# "\x00\x00\x13\x00\x03\x00\x16\x00\x08\x00\x09\x00\x08\x00\x09\x00\x11\x00\x06\x00\x14\x00\x0a\x00\x18\x00\x0a\x00\x18\x00\x04\x00\x05\x00\x06\x00\x16\x00\x04\x00\x05\x00\x06\x00\x0a\x00\x04\x00\x05\x00\x06\x00\x03\x00\x04\x00\x05\x00\x06\x00\x12\x00\x06\x00\x0c\x00\x0d\x00\x10\x00\x0e\x00\x0f\x00\x11\x00\x03\x00\xff\xff\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00"#
-
-happyReduceArr = array (1, 11) [
- (1 , happyReduce_1),
- (2 , happyReduce_2),
- (3 , happyReduce_3),
- (4 , happyReduce_4),
- (5 , happyReduce_5),
- (6 , happyReduce_6),
- (7 , happyReduce_7),
- (8 , happyReduce_8),
- (9 , happyReduce_9),
- (10 , happyReduce_10),
- (11 , happyReduce_11)
- ]
-
-happy_n_terms = 13 :: Int
-happy_n_nonterms = 4 :: Int
-
-happyReduce_1 = happyReduce 6# 0# happyReduction_1
-happyReduction_1 ((HappyAbsSyn4 happy_var_6) `HappyStk`
- _ `HappyStk`
- (HappyAbsSyn4 happy_var_4) `HappyStk`
- _ `HappyStk`
- (HappyTerminal (TokenVar happy_var_2)) `HappyStk`
- _ `HappyStk`
- happyRest)
- = HappyAbsSyn4
- (Let happy_var_2 happy_var_4 happy_var_6
- ) `HappyStk` happyRest
-
-happyReduce_2 = happySpecReduce_1 0# happyReduction_2
-happyReduction_2 (HappyAbsSyn5 happy_var_1)
- = HappyAbsSyn4
- (Exp1 happy_var_1
- )
-happyReduction_2 _ = notHappyAtAll
-
-happyReduce_3 = happySpecReduce_3 1# happyReduction_3
-happyReduction_3 (HappyAbsSyn6 happy_var_3)
- _
- (HappyAbsSyn5 happy_var_1)
- = HappyAbsSyn5
- (Plus happy_var_1 happy_var_3
- )
-happyReduction_3 _ _ _ = notHappyAtAll
-
-happyReduce_4 = happySpecReduce_3 1# happyReduction_4
-happyReduction_4 (HappyAbsSyn6 happy_var_3)
- _
- (HappyAbsSyn5 happy_var_1)
- = HappyAbsSyn5
- (Minus happy_var_1 happy_var_3
- )
-happyReduction_4 _ _ _ = notHappyAtAll
-
-happyReduce_5 = happySpecReduce_1 1# happyReduction_5
-happyReduction_5 (HappyAbsSyn6 happy_var_1)
- = HappyAbsSyn5
- (Term happy_var_1
- )
-happyReduction_5 _ = notHappyAtAll
-
-happyReduce_6 = happySpecReduce_3 2# happyReduction_6
-happyReduction_6 (HappyAbsSyn7 happy_var_3)
- _
- (HappyAbsSyn6 happy_var_1)
- = HappyAbsSyn6
- (Times happy_var_1 happy_var_3
- )
-happyReduction_6 _ _ _ = notHappyAtAll
-
-happyReduce_7 = happySpecReduce_3 2# happyReduction_7
-happyReduction_7 (HappyAbsSyn7 happy_var_3)
- _
- (HappyAbsSyn6 happy_var_1)
- = HappyAbsSyn6
- (Div happy_var_1 happy_var_3
- )
-happyReduction_7 _ _ _ = notHappyAtAll
-
-happyReduce_8 = happySpecReduce_1 2# happyReduction_8
-happyReduction_8 (HappyAbsSyn7 happy_var_1)
- = HappyAbsSyn6
- (Factor happy_var_1
- )
-happyReduction_8 _ = notHappyAtAll
-
-happyReduce_9 = happySpecReduce_1 3# happyReduction_9
-happyReduction_9 (HappyTerminal (TokenInt happy_var_1))
- = HappyAbsSyn7
- (Int happy_var_1
- )
-happyReduction_9 _ = notHappyAtAll
-
-happyReduce_10 = happySpecReduce_1 3# happyReduction_10
-happyReduction_10 (HappyTerminal (TokenVar happy_var_1))
- = HappyAbsSyn7
- (Var happy_var_1
- )
-happyReduction_10 _ = notHappyAtAll
-
-happyReduce_11 = happySpecReduce_3 3# happyReduction_11
-happyReduction_11 _
- (HappyAbsSyn4 happy_var_2)
- _
- = HappyAbsSyn7
- (Brack happy_var_2
- )
-happyReduction_11 _ _ _ = notHappyAtAll
-
-happyNewToken action sts stk [] =
- happyDoAction 12# notHappyAtAll action sts stk []
-
-happyNewToken action sts stk (tk:tks) =
- let cont i = happyDoAction i tk action sts stk tks in
- case tk of {
- TokenLet -> cont 1#;
- TokenIn -> cont 2#;
- TokenInt happy_dollar_dollar -> cont 3#;
- TokenVar happy_dollar_dollar -> cont 4#;
- TokenEq -> cont 5#;
- TokenPlus -> cont 6#;
- TokenMinus -> cont 7#;
- TokenTimes -> cont 8#;
- TokenDiv -> cont 9#;
- TokenOB -> cont 10#;
- TokenCB -> cont 11#;
- _ -> happyError' (tk:tks)
- }
-
-happyError_ tk tks = happyError' (tk:tks)
-
-newtype HappyIdentity a = HappyIdentity a
-happyIdentity = HappyIdentity
-happyRunIdentity (HappyIdentity a) = a
-
-instance Monad HappyIdentity where
- return = HappyIdentity
- (HappyIdentity p) >>= q = q p
-
-happyThen :: () => HappyIdentity a -> (a -> HappyIdentity b) -> HappyIdentity b
-happyThen = (>>=)
-happyReturn :: () => a -> HappyIdentity a
-happyReturn = (return)
-happyThen1 m k tks = (>>=) m (\a -> k a tks)
-happyReturn1 :: () => a -> b -> HappyIdentity a
-happyReturn1 = \a tks -> (return) a
-happyError' :: () => [Token] -> HappyIdentity a
-happyError' = HappyIdentity . happyError
-
-calc tks = happyRunIdentity happySomeParser where
- happySomeParser = happyThen (happyParse 0# tks) (\x -> case x of {HappyAbsSyn4 z -> happyReturn z; _other -> notHappyAtAll })
-
-happySeq = happyDontSeq
-
-
-happyError tks = error "Parse error"
-
-
-
-data Exp = Let String Exp Exp | Exp1 Exp1
-data Exp1 = Plus Exp1 Term | Minus Exp1 Term | Term Term
-data Term = Times Term Factor | Div Term Factor | Factor Factor
-data Factor = Int Int | Var String | Brack Exp
-
-
-
-data Token
- = TokenLet
- | TokenIn
- | TokenInt Int
- | TokenVar String
- | TokenEq
- | TokenPlus
- | TokenMinus
- | TokenTimes
- | TokenDiv
- | TokenOB
- | TokenCB
-
-
-
-lexer :: String -> [Token]
-lexer [] = []
-lexer (c:cs)
- | isSpace c = lexer cs
- | isAlpha c = lexVar (c:cs)
- | isDigit c = lexNum (c:cs)
-lexer ('=':cs) = TokenEq : lexer cs
-lexer ('+':cs) = TokenPlus : lexer cs
-lexer ('-':cs) = TokenMinus : lexer cs
-lexer ('*':cs) = TokenTimes : lexer cs
-lexer ('/':cs) = TokenDiv : lexer cs
-lexer ('(':cs) = TokenOB : lexer cs
-lexer (')':cs) = TokenCB : lexer cs
-
-lexNum cs = TokenInt (read num) : lexer rest
- where (num,rest) = span isDigit cs
-
-lexVar cs =
- case span isAlpha cs of
- ("let",rest) -> TokenLet : lexer rest
- ("in",rest) -> TokenIn : lexer rest
- (var,rest) -> TokenVar var : lexer rest
-
-
-
-
-runCalc :: String -> Exp
-runCalc = calc . lexer
-
-
-
-main = case runCalc "1 + 2 + 3" of {
- (Exp1 (Plus (Plus (Term (Factor (Int 1))) (Factor (Int 2))) (Factor (Int 3)))) ->
- case runCalc "1 * 2 + 3" of {
- (Exp1 (Plus (Term (Times (Factor (Int 1)) (Int 2))) (Factor (Int 3)))) ->
- case runCalc "1 + 2 * 3" of {
- (Exp1 (Plus (Term (Factor (Int 1))) (Times (Factor (Int 2)) (Int 3)))) ->
- case runCalc "let x = 2 in x * (x - 2)" of {
- (Let "x" (Exp1 (Term (Factor (Int 2)))) (Exp1 (Term (Times (Factor (Var "x")) (Brack (Exp1 (Minus (Term (Factor (Var "x"))) (Factor (Int 2))))))))) -> print "Test works\n";
- _ -> quit } ; _ -> quit } ; _ -> quit } ; _ -> quit }
-quit = print "Test failed\n"
-{-# LINE 1 "GenericTemplate.hs" #-}
-{-# LINE 1 "<built-in>" #-}
-{-# LINE 1 "<command line>" #-}
-{-# LINE 1 "GenericTemplate.hs" #-}
--- Id: GenericTemplate.hs,v 1.26 2005/01/14 14:47:22 simonmar Exp
-
-{-# LINE 28 "GenericTemplate.hs" #-}
-
-
-data Happy_IntList = HappyCons Int# Happy_IntList
-
-
-
-
-
-{-# LINE 49 "GenericTemplate.hs" #-}
-
-{-# LINE 59 "GenericTemplate.hs" #-}
-
-
-
-happyTrace string expr = unsafePerformIO $ do
- hPutStr stderr string
- return expr
-
-
-
-
-infixr 9 `HappyStk`
-data HappyStk a = HappyStk a (HappyStk a)
-
------------------------------------------------------------------------------
--- starting the parse
-
-happyParse start_state = happyNewToken start_state notHappyAtAll notHappyAtAll
-
------------------------------------------------------------------------------
--- Accepting the parse
-
--- If the current token is 0#, it means we've just accepted a partial
--- parse (a %partial parser). We must ignore the saved token on the top of
--- the stack in this case.
-happyAccept 0# tk st sts (_ `HappyStk` ans `HappyStk` _) =
- happyReturn1 ans
-happyAccept j tk st sts (HappyStk ans _) =
- (happyTcHack j (happyTcHack st)) (happyReturn1 ans)
-
------------------------------------------------------------------------------
--- Arrays only: do the next action
-
-
-
-happyDoAction i tk st
- = (happyTrace ("state: " ++ show (I# (st)) ++ ",\ttoken: " ++ show (I# (i)) ++ ",\taction: ")) $
-
-
- case action of
- 0# -> (happyTrace ("fail.\n")) $
- happyFail i tk st
- -1# -> (happyTrace ("accept.\n")) $
- happyAccept i tk st
- n | (n <# (0# :: Int#)) -> (happyTrace ("reduce (rule " ++ show rule ++ ")")) $
-
- (happyReduceArr ! rule) i tk st
- where rule = (I# ((negateInt# ((n +# (1# :: Int#))))))
- n -> (happyTrace ("shift, enter state " ++ show (I# (new_state)) ++ "\n")) $
-
-
- happyShift new_state i tk st
- where new_state = (n -# (1# :: Int#))
- where off = indexShortOffAddr happyActOffsets st
- off_i = (off +# i)
- check = if (off_i >=# (0# :: Int#))
- then (indexShortOffAddr happyCheck off_i ==# i)
- else False
- action | check = indexShortOffAddr happyTable off_i
- | otherwise = indexShortOffAddr happyDefActions st
-
-{-# LINE 127 "GenericTemplate.hs" #-}
-
-
-indexShortOffAddr (HappyA# arr) off =
-#if __GLASGOW_HASKELL__ > 500
- narrow16Int# i
-#elif __GLASGOW_HASKELL__ == 500
- intToInt16# i
-#else
- (i `iShiftL#` 16#) `iShiftRA#` 16#
-#endif
- where
-#if __GLASGOW_HASKELL__ >= 503
- i = word2Int# ((high `uncheckedShiftL#` 8#) `or#` low)
-#else
- i = word2Int# ((high `shiftL#` 8#) `or#` low)
-#endif
- high = int2Word# (ord# (indexCharOffAddr# arr (off' +# 1#)))
- low = int2Word# (ord# (indexCharOffAddr# arr off'))
- off' = off *# 2#
-
-
-
-
-
-data HappyAddr = HappyA# Addr#
-
-
-
-
------------------------------------------------------------------------------
--- HappyState data type (not arrays)
-
-{-# LINE 170 "GenericTemplate.hs" #-}
-
------------------------------------------------------------------------------
--- Shifting a token
-
-happyShift new_state 0# tk st sts stk@(x `HappyStk` _) =
- let i = (case x of { HappyErrorToken (I# (i)) -> i }) in
--- trace "shifting the error token" $
- happyDoAction i tk new_state (HappyCons (st) (sts)) (stk)
-
-happyShift new_state i tk st sts stk =
- happyNewToken new_state (HappyCons (st) (sts)) ((HappyTerminal (tk))`HappyStk`stk)
-
--- happyReduce is specialised for the common cases.
-
-happySpecReduce_0 i fn 0# tk st sts stk
- = happyFail 0# tk st sts stk
-happySpecReduce_0 nt fn j tk st@((action)) sts stk
- = happyGoto nt j tk st (HappyCons (st) (sts)) (fn `HappyStk` stk)
-
-happySpecReduce_1 i fn 0# tk st sts stk
- = happyFail 0# tk st sts stk
-happySpecReduce_1 nt fn j tk _ sts@((HappyCons (st@(action)) (_))) (v1`HappyStk`stk')
- = let r = fn v1 in
- happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))
-
-happySpecReduce_2 i fn 0# tk st sts stk
- = happyFail 0# tk st sts stk
-happySpecReduce_2 nt fn j tk _ (HappyCons (_) (sts@((HappyCons (st@(action)) (_))))) (v1`HappyStk`v2`HappyStk`stk')
- = let r = fn v1 v2 in
- happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))
-
-happySpecReduce_3 i fn 0# tk st sts stk
- = happyFail 0# tk st sts stk
-happySpecReduce_3 nt fn j tk _ (HappyCons (_) ((HappyCons (_) (sts@((HappyCons (st@(action)) (_))))))) (v1`HappyStk`v2`HappyStk`v3`HappyStk`stk')
- = let r = fn v1 v2 v3 in
- happySeq r (happyGoto nt j tk st sts (r `HappyStk` stk'))
-
-happyReduce k i fn 0# tk st sts stk
- = happyFail 0# tk st sts stk
-happyReduce k nt fn j tk st sts stk
- = case happyDrop (k -# (1# :: Int#)) sts of
- sts1@((HappyCons (st1@(action)) (_))) ->
- let r = fn stk in -- it doesn't hurt to always seq here...
- happyDoSeq r (happyGoto nt j tk st1 sts1 r)
-
-happyMonadReduce k nt fn 0# tk st sts stk
- = happyFail 0# tk st sts stk
-happyMonadReduce k nt fn j tk st sts stk =
- happyThen1 (fn stk tk) (\r -> happyGoto nt j tk st1 sts1 (r `HappyStk` drop_stk))
- where sts1@((HappyCons (st1@(action)) (_))) = happyDrop k (HappyCons (st) (sts))
- drop_stk = happyDropStk k stk
-
-happyMonad2Reduce k nt fn 0# tk st sts stk
- = happyFail 0# tk st sts stk
-happyMonad2Reduce k nt fn j tk st sts stk =
- happyThen1 (fn stk tk) (\r -> happyNewToken new_state sts1 (r `HappyStk` drop_stk))
- where sts1@((HappyCons (st1@(action)) (_))) = happyDrop k (HappyCons (st) (sts))
- drop_stk = happyDropStk k stk
-
- off = indexShortOffAddr happyGotoOffsets st1
- off_i = (off +# nt)
- new_state = indexShortOffAddr happyTable off_i
-
-
-
-
-happyDrop 0# l = l
-happyDrop n (HappyCons (_) (t)) = happyDrop (n -# (1# :: Int#)) t
-
-happyDropStk 0# l = l
-happyDropStk n (x `HappyStk` xs) = happyDropStk (n -# (1#::Int#)) xs
-
------------------------------------------------------------------------------
--- Moving to a new state after a reduction
-
-
-happyGoto nt j tk st =
- (happyTrace (", goto state " ++ show (I# (new_state)) ++ "\n")) $
- happyDoAction j tk new_state
- where off = indexShortOffAddr happyGotoOffsets st
- off_i = (off +# nt)
- new_state = indexShortOffAddr happyTable off_i
-
-
-
-
------------------------------------------------------------------------------
--- Error recovery (0# is the error token)
-
--- parse error if we are in recovery and we fail again
-happyFail 0# tk old_st _ stk =
--- trace "failing" $
- happyError_ tk
-
-{- We don't need state discarding for our restricted implementation of
- "error". In fact, it can cause some bogus parses, so I've disabled it
- for now --SDM
-
--- discard a state
-happyFail 0# tk old_st (HappyCons ((action)) (sts))
- (saved_tok `HappyStk` _ `HappyStk` stk) =
--- trace ("discarding state, depth " ++ show (length stk)) $
- happyDoAction 0# tk action sts ((saved_tok`HappyStk`stk))
--}
-
--- Enter error recovery: generate an error token,
--- save the old token and carry on.
-happyFail i tk (action) sts stk =
--- trace "entering error recovery" $
- happyDoAction 0# tk action sts ( (HappyErrorToken (I# (i))) `HappyStk` stk)
-
--- Internal happy errors:
-
-notHappyAtAll = error "Internal Happy error\n"
-
------------------------------------------------------------------------------
--- Hack to get the typechecker to accept our action functions
-
-
-happyTcHack :: Int# -> a -> a
-happyTcHack x y = y
-{-# INLINE happyTcHack #-}
-
-
------------------------------------------------------------------------------
--- Seq-ing. If the --strict flag is given, then Happy emits
--- happySeq = happyDoSeq
--- otherwise it emits
--- happySeq = happyDontSeq
-
-happyDoSeq, happyDontSeq :: a -> b -> b
-happyDoSeq a b = a `seq` b
-happyDontSeq a b = b
-
------------------------------------------------------------------------------
--- Don't inline any functions from the template. GHC has a nasty habit
--- of deciding to inline happyGoto everywhere, which increases the size of
--- the generated parser quite a bit.
-
-
-{-# NOINLINE happyDoAction #-}
-{-# NOINLINE happyTable #-}
-{-# NOINLINE happyCheck #-}
-{-# NOINLINE happyActOffsets #-}
-{-# NOINLINE happyGotoOffsets #-}
-{-# NOINLINE happyDefActions #-}
-
-{-# NOINLINE happyShift #-}
-{-# NOINLINE happySpecReduce_0 #-}
-{-# NOINLINE happySpecReduce_1 #-}
-{-# NOINLINE happySpecReduce_2 #-}
-{-# NOINLINE happySpecReduce_3 #-}
-{-# NOINLINE happyReduce #-}
-{-# NOINLINE happyMonadReduce #-}
-{-# NOINLINE happyGoto #-}
-{-# NOINLINE happyFail #-}
-
--- end of Happy Template.
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/Makefile b/testsuite/tests/ghc-regress/ghci.debugger/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/QSort.hs b/testsuite/tests/ghc-regress/ghci.debugger/QSort.hs
deleted file mode 100644
index aa45aa14e5..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/QSort.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-module QSort where
-
-
-qsort [] = []
-qsort (a:as) = (qsort left) ++ [a] ++ (qsort right)
- where (left,right) = (filter (<=a) as, filter (>a) as)
-
-run = qsort [8, 4, 0, 3, 1, 23, 11, 18]
-
--- > run
--- [0,1,3,4,8,11,18,23] \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/Test.hs b/testsuite/tests/ghc-regress/ghci.debugger/Test.hs
deleted file mode 100644
index f0477afc3b..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/Test.hs
+++ /dev/null
@@ -1,40 +0,0 @@
-module Test.Test2 where
-import Data.Typeable
-
-data Show1 = S1 Char Char Char
- deriving Typeable
-
-data Strict = S2 Char !Char
-
-data Opaque = forall a. O a
-data List1 a = Nil | a :^ (List1 a)
- deriving Show
-
-newtype MyInt = My Int
- deriving (Eq,Show,Num, Enum)
-
-newtype MkT a = MkT a
- deriving (Show)
-
-newtype MkT2 a = MkT2 (MkT a)
- deriving Show
-
-data Param2 s r = P2 (FakeSTRef r (s(Param2 s r)))
- | P2Nil
-data FakeSTRef r s = Ref s
-
-testParam2 = O (P2 (Ref P2Nil))
-
-infixr 5 :^
---test T{t=t1} = undefined
-
-instance Show Show1 where
- show (S1 a b c) = show (a)
-
-type Just1 = Maybe
-
-
-data Unary = Unary deriving Show
-
-poly :: a -> ()
-poly x = seq x () \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/Test2.hs b/testsuite/tests/ghc-regress/ghci.debugger/Test2.hs
deleted file mode 100644
index ee52f7b00a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/Test2.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Test2 where
-
-f x = g x
-
-g y = y
-
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/Test3.hs b/testsuite/tests/ghc-regress/ghci.debugger/Test3.hs
deleted file mode 100644
index 3bb7bd629b..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/Test3.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-mymap f [] = []
-mymap f (x:xs) = f x:mymap f xs
-
-main = mapM_ putStrLn $ mymap ('a':) ["hello","bye"]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/Test4.hs b/testsuite/tests/ghc-regress/ghci.debugger/Test4.hs
deleted file mode 100644
index 8bd15e6fba..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/Test4.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-data T a b = T (a -> b)
-
-f g y = () where x = T g
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/Test6.hs b/testsuite/tests/ghc-regress/ghci.debugger/Test6.hs
deleted file mode 100644
index a6ed16e611..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/Test6.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-f xs = head xs
-
-g xs = f xs
-
-main = g []
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/Test7.hs b/testsuite/tests/ghc-regress/ghci.debugger/Test7.hs
deleted file mode 100644
index 9f34bfd4f5..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/Test7.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-import Control.Exception
-main = evaluate (error "foo")
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/getargs.hs b/testsuite/tests/ghc-regress/ghci.debugger/getargs.hs
deleted file mode 100644
index 62208f7bf7..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/getargs.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-import System.Environment
-
-main = getArgs >>= print
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/mdo.hs b/testsuite/tests/ghc-regress/ghci.debugger/mdo.hs
deleted file mode 100644
index 761c056658..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/mdo.hs
+++ /dev/null
@@ -1,37 +0,0 @@
-import Control.Monad.Fix
-import Data.IORef
-
-data N a = N (IORef Bool, N a, a, N a)
-
-newNode :: N a -> a -> N a -> IO (N a)
-newNode b c f = do v <- newIORef False
- return (N (v, b, c, f))
-
-ll = mdo n0 <- newNode n3 0 n1
- n1 <- newNode n0 1 n2
- n2 <- newNode n1 2 n3
- n3 <- newNode n2 3 n0
- return n0
-
-data Dir = F | B deriving Eq
-
-traverse :: Dir -> N a -> IO [a]
-traverse d (N (v, b, i, f)) =
- do visited <- readIORef v
- if visited
- then return []
- else do writeIORef v True
- let next = if d == F then f else b
- is <- traverse d next
- return (i:is)
-
-l2dll :: [a] -> IO (N a)
-l2dll (x:xs) = mdo c <- newNode l x f
- (f, l) <- l2dll' c xs
- return c
-
-l2dll' :: N a -> [a] -> IO (N a, N a)
-l2dll' p [] = return (p, p)
-l2dll' p (x:xs) = mdo c <- newNode p x f
- (f, l) <- l2dll' c xs
- return (c, l) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/2740.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/2740.hs
deleted file mode 100644
index 291e7c8c02..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/2740.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Test where
-
-f x y z | x<y = z
- | otherwise = z*y
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/2740.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/2740.script
deleted file mode 100644
index 8cf8c3909b..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/2740.script
+++ /dev/null
@@ -1,7 +0,0 @@
-:l 2740.hs
-:step f 1 2 3
-:step
-:print x
-:print y
-:force x
-:force y
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/2740.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/2740.stdout
deleted file mode 100644
index c7fefaaeb2..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/2740.stdout
+++ /dev/null
@@ -1,10 +0,0 @@
-Stopped at 2740.hs:(3,1)-(4,25)
-_result :: a = _
-Stopped at 2740.hs:3:11-13
-_result :: a = _
-x :: a = _
-y :: a = _
-x = (_t1::a)
-y = (_t2::a)
-x = 1
-y = 2
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/Break007.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/Break007.hs
deleted file mode 100644
index fc66e943da..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/Break007.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-mymap f [] = []
-mymap f (x:xs) = f x:mymap f xs
-
-main = mapM_ putStrLn $ mymap ('a':) ["hello","bye"]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/Break020b.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/Break020b.hs
deleted file mode 100644
index ca4737ff26..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/Break020b.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Break020b where
-
-
-in_another_module _ = return () \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/Makefile b/testsuite/tests/ghc-regress/ghci.debugger/scripts/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/TupleN.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/TupleN.hs
deleted file mode 100644
index 528f0ea238..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/TupleN.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module TupleN where
-import Language.Haskell.TH
-
-tuple :: Int -> ExpQ
-tuple n = [|\list -> $(tupE (exprs [|list|])) |]
- where
- exprs list = id [infixE (Just (list))
- (varE '(!!))
- (Just (litE $ integerL (toInteger num)))
- | num <- [0..(n - 1)]] \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/all.T b/testsuite/tests/ghc-regress/ghci.debugger/scripts/all.T
deleted file mode 100644
index 8c8cb7c64f..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/all.T
+++ /dev/null
@@ -1,84 +0,0 @@
-setTestOpts(composes([extra_run_opts('-ignore-dot-ghci'),
- if_compiler_profiled(skip),
- normalise_slashes]))
-
-test('print001', normal, ghci_script, ['print001.script'])
-test('print002', normal, ghci_script, ['print002.script'])
-test('print003', normal, ghci_script, ['print003.script'])
-test('print004', normal, ghci_script, ['print004.script'])
-test('print005', normal, ghci_script, ['print005.script'])
-test('print006', normal, ghci_script, ['print006.script'])
-test('print007', normal, ghci_script, ['print007.script'])
-test('print008', normal, ghci_script, ['print008.script'])
-test('print009', normal, ghci_script, ['print009.script'])
-test('print010', normal, ghci_script, ['print010.script'])
-test('print011', normal, ghci_script, ['print011.script'])
-test('print012', normal, ghci_script, ['print012.script'])
-test('print013', normal, ghci_script, ['print013.script'])
-test('print014', normal, ghci_script, ['print014.script'])
-test('print016', normal, ghci_script, ['print016.script'])
-test('print017', normal, ghci_script, ['print017.script'])
-test('print018', normal, ghci_script, ['print018.script'])
-test('print019', normal, ghci_script, ['print019.script'])
-test('print020', expect_broken(2806), ghci_script, ['print020.script'])
-test('print021', normal, ghci_script, ['print021.script'])
-test('print022', normal, ghci_script, ['print022.script'])
-test('print023', normal, ghci_script, ['print023.script'])
-test('print024', normal, ghci_script, ['print024.script'])
-test('print025', normal, ghci_script, ['print025.script'])
-test('print026', normal, ghci_script, ['print026.script'])
-test('print027', normal, ghci_script, ['print027.script'])
-test('print028', normal, ghci_script, ['print028.script'])
-test('print029', normal, ghci_script, ['print029.script'])
-test('print030', normal, ghci_script, ['print030.script'])
-test('print031', normal, ghci_script, ['print031.script'])
-test('print032', expect_broken(1995), ghci_script, ['print032.script'])
-test('print033', normal, ghci_script, ['print033.script'])
-test('print034', normal, ghci_script, ['print034.script'])
-
-test('break001', normal, ghci_script, ['break001.script'])
-test('break002', normal, ghci_script, ['break002.script'])
-test('break003', normal, ghci_script, ['break003.script'])
-test('break005', normal, ghci_script, ['break005.script'])
-test('break006', normal, ghci_script, ['break006.script'])
-test('break007', extra_clean(['Break007.o', 'Break007.hi']),
- ghci_script, ['break007.script'])
-test('break008', normal, ghci_script, ['break008.script'])
-test('break009', normal, ghci_script, ['break009.script'])
-test('break010', normal, ghci_script, ['break010.script'])
-test('break011', normal, ghci_script, ['break011.script'])
-test('break012', normal, ghci_script, ['break012.script'])
-test('break013', normal, ghci_script, ['break013.script'])
-test('break014', normal, ghci_script, ['break014.script'])
-test('break015', expect_broken(1532), ghci_script, ['break015.script'])
-test('break016', normal, ghci_script, ['break016.script'])
-test('break017', normal, ghci_script, ['break017.script'])
-test('break018', normal, ghci_script, ['break018.script'])
-test('break019', normal, ghci_script, ['break019.script'])
-test('break020', normal, ghci_script, ['break020.script'])
-test('break021', normal, ghci_script, ['break021.script'])
-test('break024', normal, ghci_script, ['break024.script'])
-test('break025', normal, ghci_script, ['break025.script'])
-test('break026', normal, ghci_script, ['break026.script'])
-test('break027', normal, ghci_script, ['break027.script'])
-test('break028', normal, ghci_script, ['break028.script'])
-
-test('dynbrk001', normal, ghci_script, ['dynbrk001.script'])
-test('dynbrk002', normal, ghci_script, ['dynbrk002.script'])
-test('dynbrk003', normal, ghci_script, ['dynbrk003.script'])
-test('dynbrk004', normal, ghci_script, ['dynbrk004.script'])
-test('dynbrk005', expect_broken(1530), ghci_script, ['dynbrk005.script'])
-test('dynbrk007', normal, ghci_script, ['dynbrk007.script'])
-test('dynbrk008', normal, ghci_script, ['dynbrk008.script'])
-test('dynbrk009', normal, ghci_script, ['dynbrk009.script'])
-
-test('result001', expect_broken(1531), ghci_script, ['result001.script'])
-
-test('listCommand001', normal, ghci_script, ['listCommand001.script'])
-test('listCommand002', normal, ghci_script, ['listCommand002.script'])
-
-test('hist001', normal, ghci_script, ['hist001.script'])
-
-test('2740', normal, ghci_script, ['2740.script'])
-
-test('getargs', normal, ghci_script, ['getargs.script'])
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break001.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break001.script
deleted file mode 100644
index 63b5e71a5f..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break001.script
+++ /dev/null
@@ -1,14 +0,0 @@
-:l ../Test2
-:b 3
-:b 5
-f 1
-:st
-:st
-:st
--- Test that the binding for x is now gone
-:show bindings
-y
-:p y
-seq y ()
-:p y
-y
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break001.stderr b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break001.stderr
deleted file mode 100644
index cb0cc93ac7..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break001.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-<interactive>:1:1:
- Ambiguous type variable `t' in the constraint:
- (Show t) arising from a use of `print'
- Cannot resolve unknown runtime types: t
- Use :print or :force to determine these types
- In a stmt of an interactive GHCi command: print it
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break001.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break001.stdout
deleted file mode 100644
index e88c2fcc5c..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break001.stdout
+++ /dev/null
@@ -1,18 +0,0 @@
-Breakpoint 0 activated at ../Test2.hs:3:1-9
-Breakpoint 1 activated at ../Test2.hs:5:1-7
-Stopped at ../Test2.hs:3:1-9
-_result :: t = _
-Stopped at ../Test2.hs:3:7-9
-_result :: t = _
-x :: t = _
-Stopped at ../Test2.hs:5:1-7
-_result :: t = _
-Stopped at ../Test2.hs:5:7
-_result :: t = _
-y :: t = _
-_result :: t = _
-y :: t = _
-y = (_t1::t)
-()
-y = 1
-1
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break002.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break002.script
deleted file mode 100644
index 0bc2605e4f..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break002.script
+++ /dev/null
@@ -1,5 +0,0 @@
--- can't set breakpoints on non-interpreted things:
-:b Data.List.map
-
-:l ../Test2.hs
-:b Data.List.map
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break002.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break002.stdout
deleted file mode 100644
index 72e0359c7b..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break002.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-cannot set breakpoint on map: module GHC.Base is not interpreted
-cannot set breakpoint on map: module GHC.Base is not interpreted
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break003.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break003.script
deleted file mode 100644
index 68ca96fcd2..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break003.script
+++ /dev/null
@@ -1,10 +0,0 @@
-:l ../Test3
-:b 2
-main
-f
-:q
-
--- currently gives:
--- ghc-6.7: panic! (the 'impossible' happened)
--- (GHC version 6.7 for x86_64-unknown-linux):
--- ASSERT failed! file typecheck/TcMType.lhs line 362 t{tv aqh} [tv]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break003.stderr b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break003.stderr
deleted file mode 100644
index f640cb0fab..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break003.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-<interactive>:1:1:
- No instance for (Show (t -> a))
- arising from a use of `print'
- Possible fix: add an instance declaration for (Show (t -> a))
- In a stmt of an interactive GHCi command: print it
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break003.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break003.stdout
deleted file mode 100644
index ed418836c8..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break003.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-Breakpoint 0 activated at ../Test3.hs:2:18-31
-Stopped at ../Test3.hs:2:18-31
-_result :: [a] = _
-f :: t -> a = _
-x :: t = _
-xs :: [t] = [_]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break004.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break004.script
deleted file mode 100644
index e4bb16fd1a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break004.script
+++ /dev/null
@@ -1,5 +0,0 @@
-:l ../Test4.hs
-:b f
-seq (f (+(1::Int)) "abc") ()
--- We can subvert the Unknown machinery this was and pass the string
--- to the function expecting Int. ToDo: finish this
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break005.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break005.script
deleted file mode 100644
index b36ebbca2a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break005.script
+++ /dev/null
@@ -1,5 +0,0 @@
-:l ../QSort
-:st qsort [1,2]
-:step
-seq left ()
-:print left
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break005.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break005.stdout
deleted file mode 100644
index adf9502b0a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break005.stdout
+++ /dev/null
@@ -1,9 +0,0 @@
-Stopped at ../QSort.hs:(4,1)-(6,55)
-_result :: [a] = _
-Stopped at ../QSort.hs:5:16-51
-_result :: [a] = _
-a :: a = _
-left :: [a] = _
-right :: [a] = _
-()
-left = []
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break006.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break006.script
deleted file mode 100644
index 7381490f69..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break006.script
+++ /dev/null
@@ -1,14 +0,0 @@
-:l ../Test3.hs
-:st mymap (+1) [1,2,3]
-:st
-:show bindings
-f x -- should fail, unknown return type
-let y = f x
-y
-:p y
-:force y
-:show bindings
--- we know the result is Integer now
-f x
--- should work now
-
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break006.stderr b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break006.stderr
deleted file mode 100644
index 31c3f94f1b..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break006.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-
-<interactive>:1:1:
- Ambiguous type variable `a' in the constraint:
- (Show a) arising from a use of `print'
- Cannot resolve unknown runtime types: a
- Use :print or :force to determine these types
- In a stmt of an interactive GHCi command: print it
-
-<interactive>:1:1:
- Ambiguous type variable `a' in the constraint:
- (Show a) arising from a use of `print'
- Cannot resolve unknown runtime types: a
- Use :print or :force to determine these types
- In a stmt of an interactive GHCi command: print it
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break006.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break006.stdout
deleted file mode 100644
index 42560877d1..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break006.stdout
+++ /dev/null
@@ -1,20 +0,0 @@
-Stopped at ../Test3.hs:(1,1)-(2,31)
-_result :: [a] = _
-Stopped at ../Test3.hs:2:18-31
-_result :: [a] = _
-f :: t -> a = _
-x :: t = _
-xs :: [t] = [_,_]
-_result :: [a] = _
-f :: t -> a = _
-x :: t = _
-xs :: [t] = [_,_]
-y = (_t1::a)
-y = 2
-_result :: [Integer] = _
-_t1 :: Integer = 2
-f :: t -> Integer = _
-x :: t = 1
-xs :: [t] = [_,_]
-y :: Integer = 2
-2
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break007.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break007.script
deleted file mode 100644
index 46386ca182..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break007.script
+++ /dev/null
@@ -1,5 +0,0 @@
-:!rm -f Break007.o Break007.hi
-:set -fobject-code
-:l Break007
-:b 1
--- can't set a breakpoint in a compiled module
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break007.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break007.stdout
deleted file mode 100644
index e692d2048f..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break007.stdout
+++ /dev/null
@@ -1 +0,0 @@
-No breakpoints found at that location.
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break008.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break008.script
deleted file mode 100644
index 0cdf7566e6..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break008.script
+++ /dev/null
@@ -1,5 +0,0 @@
-:l ../Test3
-:b 1
-mymap id []
--- second load, should discard the breakpoints without blowing up
-:l ../Test3.hs
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break008.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break008.stdout
deleted file mode 100644
index 6961fa3cec..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break008.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-Breakpoint 0 activated at ../Test3.hs:1:14-15
-Stopped at ../Test3.hs:1:14-15
-_result :: [a] = _
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break009.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break009.script
deleted file mode 100644
index 3e43b07a70..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break009.script
+++ /dev/null
@@ -1,7 +0,0 @@
-:l ../Test6.hs
-:b 5
-main
--- stopped now
-:l ../Test6.hs
-main
--- should not break
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break009.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break009.stdout
deleted file mode 100644
index cd9436e34a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break009.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-Breakpoint 0 activated at ../Test6.hs:5:8-11
-Stopped at ../Test6.hs:5:8-11
-_result :: a = _
-*** Exception: Prelude.head: empty list
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break010.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break010.script
deleted file mode 100644
index c4cfe917f2..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break010.script
+++ /dev/null
@@ -1,6 +0,0 @@
-:l ../Test6.hs
-:b 5
-main
-:abandon
-main
--- should not hang here; we abandoned the previous computation
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break010.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break010.stdout
deleted file mode 100644
index 2751b6d160..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break010.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-Breakpoint 0 activated at ../Test6.hs:5:8-11
-Stopped at ../Test6.hs:5:8-11
-_result :: a = _
-Stopped at ../Test6.hs:5:8-11
-_result :: a = _
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break011.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break011.script
deleted file mode 100644
index f9ca3fe393..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break011.script
+++ /dev/null
@@ -1,18 +0,0 @@
--- Testing -fbreak-on-exception
-error "foo"
-:set -fbreak-on-exception
-error "foo"
-:abandon
-:l ../Test7.hs
-:tr main
-:hist
-:back
-:back
-:back
-:forward
-:forward
-:forward
-:force _exception
-:show bindings
-:force _result
-:continue
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break011.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break011.stdout
deleted file mode 100644
index 7ca63b686a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break011.stdout
+++ /dev/null
@@ -1,23 +0,0 @@
-*** Exception: foo
-Stopped at <exception thrown>
-_exception :: e = _
-Stopped at <exception thrown>
-_exception :: e = _
--1 : main (../Test7.hs:2:18-28)
--2 : main (../Test7.hs:2:8-29)
-<end of history>
-Logged breakpoint at ../Test7.hs:2:18-28
-_result :: a
-Logged breakpoint at ../Test7.hs:2:8-29
-_result :: IO a
-no more logged breakpoints
-Logged breakpoint at ../Test7.hs:2:18-28
-_result :: a
-Stopped at <exception thrown>
-_exception :: e
-already at the beginning of the history
-_exception = SomeException (ErrorCall "foo")
-_exception :: SomeException = SomeException (ErrorCall "foo")
-_result :: a = _
-*** Exception: foo
-*** Exception: foo
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break012.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break012.hs
deleted file mode 100644
index 7b2e2ea0fb..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break012.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-g i = let a = i + 1
- b = id
- c = ()
- d = (+)
- in (a,b,c,d)
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break012.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break012.script
deleted file mode 100644
index 749947a4a9..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break012.script
+++ /dev/null
@@ -1,9 +0,0 @@
--- Test polymorphic types in a breakpoint
-:l break012
-:st g 5 `seq` ()
-:st
-:t a
-:t b
-:t c
-:t d
-:p a b c d
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break012.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break012.stdout
deleted file mode 100644
index 90e228c293..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break012.stdout
+++ /dev/null
@@ -1,16 +0,0 @@
-Stopped at break012.hs:(1,1)-(5,18)
-_result :: (t, a1 -> a1, (), a -> a -> a) = _
-Stopped at break012.hs:5:10-18
-_result :: (t, a1 -> a1, (), a -> a -> a) = _
-a :: t = _
-b :: a2 -> a2 = _
-c :: () = _
-d :: a -> a -> a = _
-a :: t
-b :: a2 -> a2
-c :: ()
-d :: a -> a -> a
-a = (_t1::t)
-b = (_t2::forall a2. a2 -> a2)
-c = (_t3::())
-d = (_t4::a -> a -> a)
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break013.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break013.hs
deleted file mode 100644
index 53d8432865..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break013.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-g i = (a,b,c)
- where a = False
- b = True
- c = ()
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break013.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break013.script
deleted file mode 100644
index b14e4c135f..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break013.script
+++ /dev/null
@@ -1,5 +0,0 @@
--- Available bindings at where(s)
-:l break013
-:st g 1 `seq` ()
-:st
-:show bindings
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break013.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break013.stdout
deleted file mode 100644
index 9daa2db266..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break013.stdout
+++ /dev/null
@@ -1,11 +0,0 @@
-Stopped at break013.hs:(1,1)-(4,18)
-_result :: (Bool, Bool, ()) = _
-Stopped at break013.hs:1:7-13
-_result :: (Bool, Bool, ()) = _
-a :: Bool = _
-b :: Bool = _
-c :: () = _
-_result :: (Bool, Bool, ()) = _
-a :: Bool = _
-b :: Bool = _
-c :: () = _
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break014.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break014.hs
deleted file mode 100644
index 7dff7b6fc5..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break014.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-g i = let a = False
- b = True
- c = (a,b)
- in c
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break014.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break014.script
deleted file mode 100644
index f0ad6da277..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break014.script
+++ /dev/null
@@ -1,5 +0,0 @@
--- Available bindings at let(s)
-:l break014
-:break 3
-g 1
--- stops at the breakpoint on c, a and b should be in scope
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break014.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break014.stdout
deleted file mode 100644
index 3d284bf11f..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break014.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-Breakpoint 0 activated at break014.hs:3:15-19
-Stopped at break014.hs:3:15-19
-_result :: (Bool, Bool) = _
-a :: Bool = _
-b :: Bool = _
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break015.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break015.hs
deleted file mode 100644
index d897118268..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break015.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-f i = if ?flag then i*2 else i
-
-g i = let ?flag=False in f i
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break015.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break015.script
deleted file mode 100644
index bbeba92f2c..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break015.script
+++ /dev/null
@@ -1,8 +0,0 @@
--- implicit params availability in breakpoints
-
-:set -XImplicitParams
-:l break015.hs
-:b f
-g 5
-:st
-_flag
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break016.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break016.hs
deleted file mode 100644
index 1e31c807e9..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break016.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-f i = i :: Int
-
-g :: Int -> ()
-g i = ()
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break016.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break016.script
deleted file mode 100644
index 2124e045bd..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break016.script
+++ /dev/null
@@ -1,11 +0,0 @@
--- conditional breakpoints
-:l break016.hs
-:break 1 7
--- this is one way to do conditional breakpoints. It's a bit
--- horrible: the :undef will complain the first time it is used.
-:def cond (\expr -> return (":undef __cond\n:def __cond (\\_ -> if "++expr++" then return \"\" else return \":cont\")\n:__cond"))
-:set stop 0 :cond (i < 3)
--- this one continues:
-f 4
--- this one stops:
-f 1
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break016.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break016.stdout
deleted file mode 100644
index 92128d177d..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break016.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-Breakpoint 0 activated at break016.hs:1:7-14
-macro '__cond' is not defined
-4
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break017.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break017.script
deleted file mode 100644
index 05c99acdda..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break017.script
+++ /dev/null
@@ -1,11 +0,0 @@
-:l ../QSort.hs
-:set -fbreak-on-exception
-:trace qsort ("abc" ++ undefined)
-:back
-putStrLn "Printing 1"
-:print as
-putStrLn "Forcing"
-:force as
--- this should print the exception
-putStrLn "Printing 2"
-:print as
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break017.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break017.stdout
deleted file mode 100644
index 305289d216..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break017.stdout
+++ /dev/null
@@ -1,12 +0,0 @@
-"Stopped at <exception thrown>
-_exception :: e = _
-Logged breakpoint at ../QSort.hs:6:24-38
-_result :: [Char]
-a :: Char
-as :: [Char]
-Printing 1
-as = 'b' : 'c' : (_t1::[Char])
-Forcing
-*** Exception: Prelude.undefined
-Printing 2
-as = 'b' : 'c' : (_t2::[Char])
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break018.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break018.script
deleted file mode 100644
index 0a4c70ef5a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break018.script
+++ /dev/null
@@ -1,9 +0,0 @@
--- Check mdo statements: availability of local bindings.
--- Maybe we should not want to put in scope the things binded in the mdo scope, to avoid silliness.
-
-:set -XRecursiveDo
-:l ../mdo.hs
-:st l2dll "hello world"
-:st
-:st
-:st
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break018.stderr b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break018.stderr
deleted file mode 100644
index 0107b5880f..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break018.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-<no location info>:
- Warning: -XRecursiveDo is deprecated: use -XDoRec or pragma {-# LANGUAGE DoRec #-} instead
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break018.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break018.stdout
deleted file mode 100644
index a495e7903a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break018.stdout
+++ /dev/null
@@ -1,13 +0,0 @@
-Stopped at ../mdo.hs:(29,1)-(31,27)
-_result :: IO (N a) = _
-Stopped at ../mdo.hs:(29,16)-(31,27)
-_result :: IO (N Char) = _
-x :: Char = 'h'
-xs :: [Char] = _
-Stopped at ../mdo.hs:29:30-42
-_result :: IO (N Char) = _
-f :: N Char = _
-l :: N Char = _
-x :: Char = 'h'
-Stopped at ../mdo.hs:(7,1)-(8,42)
-_result :: IO (N a) = _
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break019.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break019.script
deleted file mode 100644
index 59537e7364..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break019.script
+++ /dev/null
@@ -1,3 +0,0 @@
--- Test for #1505
-:load ../Test2.hs
-:break Test2
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break019.stderr b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break019.stderr
deleted file mode 100644
index fe27afda19..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break019.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-Top level: Not in scope: data constructor `Test2'
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break020.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break020.hs
deleted file mode 100644
index b44de82a4c..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break020.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-import Break020b
-
-line1 _ = return ()
-line2 _ = return ()
-
-in_another_decl _ = do line1 0
- line2 0
-
-main = do
- line1 0
- line2 0
- in_another_decl 0
- in_another_module 0
- line2 1
- return () \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break020.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break020.script
deleted file mode 100644
index f8ba30859e..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break020.script
+++ /dev/null
@@ -1,8 +0,0 @@
-:l break020.hs
-:set stop :list
-:step main
-:steplocal
-:steplocal
-:steplocal
-:steplocal
-:steplocal \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break020.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break020.stdout
deleted file mode 100644
index 0c7b0a4fc9..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break020.stdout
+++ /dev/null
@@ -1,42 +0,0 @@
-Stopped at break020.hs:(9,8)-(15,11)
-_result :: IO () = _
-8
- vv
-9 main = do
-10 line1 0
-11 line2 0
-12 in_another_decl 0
-13 in_another_module 0
-14 line2 1
-15 return ()
- ^^
-Stopped at break020.hs:10:3-9
-_result :: IO () = _
-9 main = do
-10 line1 0
- ^^^^^^^
-11 line2 0
-Stopped at break020.hs:11:3-9
-_result :: IO () = _
-10 line1 0
-11 line2 0
- ^^^^^^^
-12 in_another_decl 0
-Stopped at break020.hs:12:3-19
-_result :: IO () = _
-11 line2 0
-12 in_another_decl 0
- ^^^^^^^^^^^^^^^^^
-13 in_another_module 0
-Stopped at break020.hs:13:3-21
-_result :: IO () = _
-12 in_another_decl 0
-13 in_another_module 0
- ^^^^^^^^^^^^^^^^^^^
-14 line2 1
-Stopped at break020.hs:14:3-9
-_result :: IO () = _
-13 in_another_module 0
-14 line2 1
- ^^^^^^^
-15 return ()
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break021.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break021.script
deleted file mode 100644
index e9251d6613..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break021.script
+++ /dev/null
@@ -1,23 +0,0 @@
-:l break020.hs
-:set stop :list
-:step main
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule
-:stepmodule \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break021.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break021.stdout
deleted file mode 100644
index 3a78eafce7..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break021.stdout
+++ /dev/null
@@ -1,135 +0,0 @@
-Stopped at break020.hs:(9,8)-(15,11)
-_result :: IO () = _
-8
- vv
-9 main = do
-10 line1 0
-11 line2 0
-12 in_another_decl 0
-13 in_another_module 0
-14 line2 1
-15 return ()
- ^^
-Stopped at break020.hs:10:3-9
-_result :: IO () = _
-9 main = do
-10 line1 0
- ^^^^^^^
-11 line2 0
-Stopped at break020.hs:3:1-19
-_result :: IO () = _
-2
-3 line1 _ = return ()
- ^^^^^^^^^^^^^^^^^^^
-4 line2 _ = return ()
-Stopped at break020.hs:3:11-19
-_result :: IO () = _
-2
-3 line1 _ = return ()
- ^^^^^^^^^
-4 line2 _ = return ()
-Stopped at break020.hs:11:3-9
-_result :: IO () = _
-10 line1 0
-11 line2 0
- ^^^^^^^
-12 in_another_decl 0
-Stopped at break020.hs:4:1-19
-_result :: IO () = _
-3 line1 _ = return ()
-4 line2 _ = return ()
- ^^^^^^^^^^^^^^^^^^^
-5
-Stopped at break020.hs:4:11-19
-_result :: IO () = _
-3 line1 _ = return ()
-4 line2 _ = return ()
- ^^^^^^^^^
-5
-Stopped at break020.hs:12:3-19
-_result :: IO () = _
-11 line2 0
-12 in_another_decl 0
- ^^^^^^^^^^^^^^^^^
-13 in_another_module 0
-Stopped at break020.hs:(6,1)-(7,30)
-_result :: m () = _
-5
- vv
-6 in_another_decl _ = do line1 0
-7 line2 0
- ^^
-8
-Stopped at break020.hs:(6,21)-(7,30)
-_result :: m () = _
-5
- vv
-6 in_another_decl _ = do line1 0
-7 line2 0
- ^^
-8
-Stopped at break020.hs:6:24-30
-_result :: m () = _
-5
-6 in_another_decl _ = do line1 0
- ^^^^^^^
-7 line2 0
-Stopped at break020.hs:3:1-19
-_result :: m () = _
-2
-3 line1 _ = return ()
- ^^^^^^^^^^^^^^^^^^^
-4 line2 _ = return ()
-Stopped at break020.hs:3:11-19
-_result :: m () = _
-2
-3 line1 _ = return ()
- ^^^^^^^^^
-4 line2 _ = return ()
-Stopped at break020.hs:7:24-30
-_result :: m () = _
-6 in_another_decl _ = do line1 0
-7 line2 0
- ^^^^^^^
-8
-Stopped at break020.hs:4:1-19
-_result :: m () = _
-3 line1 _ = return ()
-4 line2 _ = return ()
- ^^^^^^^^^^^^^^^^^^^
-5
-Stopped at break020.hs:4:11-19
-_result :: m () = _
-3 line1 _ = return ()
-4 line2 _ = return ()
- ^^^^^^^^^
-5
-Stopped at break020.hs:13:3-21
-_result :: IO () = _
-12 in_another_decl 0
-13 in_another_module 0
- ^^^^^^^^^^^^^^^^^^^
-14 line2 1
-Stopped at break020.hs:14:3-9
-_result :: IO () = _
-13 in_another_module 0
-14 line2 1
- ^^^^^^^
-15 return ()
-Stopped at break020.hs:4:1-19
-_result :: IO () = _
-3 line1 _ = return ()
-4 line2 _ = return ()
- ^^^^^^^^^^^^^^^^^^^
-5
-Stopped at break020.hs:4:11-19
-_result :: IO () = _
-3 line1 _ = return ()
-4 line2 _ = return ()
- ^^^^^^^^^
-5
-Stopped at break020.hs:15:3-11
-_result :: IO () = _
-14 line2 1
-15 return ()
- ^^^^^^^^^
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/A.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/A.hs
deleted file mode 100644
index bf903ab11e..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/A.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module A where
-import {-# SOURCE #-} B
-
-a x = b x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/B.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/B.hs
deleted file mode 100644
index cfc9682cbd..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module B where
-
-import A
-
-b x = x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/B.hs-boot b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/B.hs-boot
deleted file mode 100644
index 8e73321e9f..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/B.hs-boot
+++ /dev/null
@@ -1,3 +0,0 @@
-module B where
-
-b :: a -> a \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/C.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/C.hs
deleted file mode 100644
index 0dd15af7e7..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/C.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module C where
-
-import A
-import B
-
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/Makefile b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/Makefile
deleted file mode 100644
index 35fe99a9cf..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/all.T b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/all.T
deleted file mode 100644
index f81e8de45c..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/all.T
+++ /dev/null
@@ -1,4 +0,0 @@
-setTestOpts(extra_run_opts('-ignore-dot-ghci'))
-setTestOpts(if_compiler_profiled(skip))
-
-test('break022', normal, ghci_script, ['break022.script'])
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/break022.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/break022.script
deleted file mode 100644
index e0aaeda371..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/break022.script
+++ /dev/null
@@ -1,20 +0,0 @@
-
--- We have this structure of modules:
-
--- A (imports B.boot)
--- B (imports A)
--- B.boot (imports A)
--- C (imports A and B)
-
--- And we load C, to debug some function in A which enters B.
--- But first we touch A, and reload. B.boot will be reloaded, but not B, which will end up with an empty modbreaks. When we :step into B, ghci will die with an out of bounds access in B's break array.
--- The effect we want is B.boot being reloaded while B is not.
-
-:l C
-:! touch A.hs
-:r
-:break a
-a ()
-:st
-:st
-:st -- here we step into B, and produce the exception \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/break022.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/break022.stdout
deleted file mode 100644
index 49cbd2628d..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break022/break022.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-Breakpoint 0 activated at A.hs:4:1-9
-Stopped at A.hs:4:1-9
-_result :: a = _
-Stopped at A.hs:4:7-9
-_result :: () = _
-x :: () = ()
-Stopped at B.hs:5:1-7
-_result :: t = _
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/A.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/A.hs
deleted file mode 100644
index 138a4faa1c..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/A.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module A where
-import {-# SOURCE #-} B
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/B.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/B.hs
deleted file mode 100644
index cfc9682cbd..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module B where
-
-import A
-
-b x = x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/B.hs-boot b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/B.hs-boot
deleted file mode 100644
index 8e73321e9f..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/B.hs-boot
+++ /dev/null
@@ -1,3 +0,0 @@
-module B where
-
-b :: a -> a \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/C.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/C.hs
deleted file mode 100644
index 0dd15af7e7..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/C.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module C where
-
-import A
-import B
-
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/Makefile b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/Makefile
deleted file mode 100644
index 35fe99a9cf..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/all.T b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/all.T
deleted file mode 100644
index 3858849735..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/all.T
+++ /dev/null
@@ -1,4 +0,0 @@
-setTestOpts(extra_run_opts('-ignore-dot-ghci'))
-setTestOpts(if_compiler_profiled(skip))
-
-test('break023', normal, ghci_script, ['break023.script'])
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/break023.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/break023.script
deleted file mode 100644
index 4ddd2d6be4..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/break023.script
+++ /dev/null
@@ -1,17 +0,0 @@
-
--- We have this structure of modules:
-
--- A (imports B.boot)
--- B (imports A)
--- B.boot (imports A)
--- C (imports A and B)
-
--- And we load C, to debug some function called b in B.
--- But first we touch A, and reload. B.boot will be reloaded, but not B, which will end up with an empty modbreaks. We can no longer set a breakpoint in B.b
--- The effect we want is B.boot being reloaded while B is not.
-
-:l C
-:break b -- it works ok at this point
-:! touch A.hs
-:r
-:break b -- it does not work anymore
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/break023.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/break023.stdout
deleted file mode 100644
index 2b6c85daf4..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break023/break023.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Breakpoint 0 activated at B.hs:5:1-7
-Breakpoint 1 activated at B.hs:5:1-7
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.hs
deleted file mode 100644
index 33c8ce6036..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-import Control.Exception as CE
-
-exception_uncaught = ioError (userError "error")
-exception_caught = CE.try exception_uncaught :: IO (Either CE.IOException ())
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.script
deleted file mode 100644
index 7efb396788..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.script
+++ /dev/null
@@ -1,16 +0,0 @@
--- Test -fbreak-on-exception and -fbreak-on-error
-:set -XDeriveDataTypeable
-:l break024
-:set -fbreak-on-error
-exception_caught
-exception_uncaught
-:force _exception
-:co
-:set -fno-break-on-error
-:set -fbreak-on-exception
-exception_uncaught
-:force _exception
-:co
-exception_caught
-:force _exception
-:co
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.stdout
deleted file mode 100644
index dc3bd73425..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.stdout
+++ /dev/null
@@ -1,19 +0,0 @@
-Left user error (error)
-Stopped at <exception thrown>
-_exception :: e = _
-_exception = SomeException
- (GHC.IO.Exception.IOError
- Nothing GHC.IO.Exception.UserError [] "error" Nothing Nothing)
-*** Exception: user error (error)
-Stopped at <exception thrown>
-_exception :: e = _
-_exception = SomeException
- (GHC.IO.Exception.IOError
- Nothing GHC.IO.Exception.UserError [] "error" Nothing Nothing)
-*** Exception: user error (error)
-Stopped at <exception thrown>
-_exception :: e = _
-_exception = SomeException
- (GHC.IO.Exception.IOError
- Nothing GHC.IO.Exception.UserError [] "error" Nothing Nothing)
-Left user error (error)
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.stdout-ghc-7.0 b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.stdout-ghc-7.0
deleted file mode 100644
index d2c3495ee6..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break024.stdout-ghc-7.0
+++ /dev/null
@@ -1,28 +0,0 @@
-Left user error (error)
-Stopped at <exception thrown>
-_exception :: e = SomeException (GHC.Exception.D:Exception _
- (GHC.Show.D:Show ...) ....)
- (GHC.IO.Exception.IOError Nothing GHC.IO.Exception.UserError ....)
-_exception = SomeException (GHC.Exception.D:Exception _
- (GHC.Show.D:Show _ _ _) _ _)
- (GHC.IO.Exception.IOError Nothing GHC.IO.Exception.UserError []
- ['e','r','r','o','r'] Nothing Nothing)
-*** Exception: user error (error)
-Stopped at <exception thrown>
-_exception :: e = SomeException (GHC.Exception.D:Exception _
- (GHC.Show.D:Show ...) ....)
- (GHC.IO.Exception.IOError Nothing GHC.IO.Exception.UserError ....)
-_exception = SomeException (GHC.Exception.D:Exception _
- (GHC.Show.D:Show _ _ _) _ _)
- (GHC.IO.Exception.IOError Nothing GHC.IO.Exception.UserError []
- ['e','r','r','o','r'] Nothing Nothing)
-*** Exception: user error (error)
-Stopped at <exception thrown>
-_exception :: e = SomeException (GHC.Exception.D:Exception _
- (GHC.Show.D:Show ...) ....)
- (GHC.IO.Exception.IOError Nothing GHC.IO.Exception.UserError ....)
-_exception = SomeException (GHC.Exception.D:Exception _
- (GHC.Show.D:Show _ _ _) _ _)
- (GHC.IO.Exception.IOError Nothing GHC.IO.Exception.UserError []
- ['e','r','r','o','r'] Nothing Nothing)
-Left user error (error)
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break025.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break025.script
deleted file mode 100644
index 2fe0bfcae6..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break025.script
+++ /dev/null
@@ -1,4 +0,0 @@
--- :abandon in an exception breakpoint can lead to ghci freezing
-:set -fbreak-on-exception
-error "an error"
-()
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break025.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break025.stdout
deleted file mode 100644
index e38f173aff..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break025.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-Stopped at <exception thrown>
-_exception :: e = _
-()
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break026.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break026.hs
deleted file mode 100644
index e88b9e96d7..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break026.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Test where
-
-import Prelude hiding (foldl)
-
-foldl f c xs = go c xs
- where go c [] = c
- go c (x:xs) = go (f c x) xs
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break026.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break026.script
deleted file mode 100644
index 98c6624751..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break026.script
+++ /dev/null
@@ -1,23 +0,0 @@
-:load break026
-:step foldl (+) 0 [1..5]
-:step
-:step
-:step
-:step
-:step
-:force c
- -- answer should be 1
-
-:load break026
-:step foldl (+) 0 [1..5]
-:step
-:step
-:step
-:step
-:step
--- a diversion to single-step the evaluation of c:
-:step c `seq` ()
-:step
--- end diversion
-c
- -- answer should be 1 again (not 0)
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break026.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break026.stdout
deleted file mode 100644
index 311c1e6bd2..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break026.stdout
+++ /dev/null
@@ -1,58 +0,0 @@
-Stopped at break026.hs:(5,1)-(7,35)
-_result :: t1 = _
-Stopped at break026.hs:5:16-22
-_result :: t1 = _
-c :: t1 = _
-go :: t1 -> [t] -> t1 = _
-xs :: [t] = _
-Stopped at break026.hs:(6,9)-(7,35)
-_result :: t1 = _
-f :: t1 -> t -> t1 = _
-Stopped at break026.hs:7:23-35
-_result :: t1 = _
-c :: t1 = _
-f :: t1 -> Integer -> t1 = _
-x :: Integer = 1
-xs :: [Integer] = _
-Stopped at break026.hs:(6,9)-(7,35)
-_result :: t1 = _
-f :: t1 -> t -> t1 = _
-Stopped at break026.hs:7:23-35
-_result :: t1 = _
-c :: t1 = _
-f :: t1 -> Integer -> t1 = _
-x :: Integer = 2
-xs :: [Integer] = _
-c = 1
-Stopped at break026.hs:(5,1)-(7,35)
-_result :: t1 = _
-Stopped at break026.hs:5:16-22
-_result :: t1 = _
-c :: t1 = _
-go :: t1 -> [t] -> t1 = _
-xs :: [t] = _
-Stopped at break026.hs:(6,9)-(7,35)
-_result :: t1 = _
-f :: t1 -> t -> t1 = _
-Stopped at break026.hs:7:23-35
-_result :: t1 = _
-c :: t1 = _
-f :: t1 -> Integer -> t1 = _
-x :: Integer = 1
-xs :: [Integer] = _
-Stopped at break026.hs:(6,9)-(7,35)
-_result :: t1 = _
-f :: t1 -> t -> t1 = _
-Stopped at break026.hs:7:23-35
-_result :: t1 = _
-c :: t1 = _
-f :: t1 -> Integer -> t1 = _
-x :: Integer = 2
-xs :: [Integer] = _
-Stopped at break026.hs:7:27-31
-_result :: t1 = _
-c :: t1 = _
-f :: t1 -> Integer -> t1 = _
-x :: Integer = 1
-()
-1
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break027.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break027.script
deleted file mode 100644
index 198b259c78..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break027.script
+++ /dev/null
@@ -1,5 +0,0 @@
-:l ../QSort
-:break qsort
-qsort [3,2,1]
-:step
-:i a
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break027.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break027.stdout
deleted file mode 100644
index 818111a9e1..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break027.stdout
+++ /dev/null
@@ -1,9 +0,0 @@
-Breakpoint 0 activated at ../QSort.hs:(4,1)-(6,55)
-Stopped at ../QSort.hs:(4,1)-(6,55)
-_result :: [a] = _
-Stopped at ../QSort.hs:5:16-51
-_result :: [a] = _
-a :: a = _
-left :: [a] = _
-right :: [a] = _
-a :: a -- <no location info>
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break028.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break028.hs
deleted file mode 100644
index 8e4ef2a3b5..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break028.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances, FlexibleContexts #-}
-
-type family Id x
-type instance Id Int = Int
-type instance Id Bool = Bool
-
-class Convert x y where convert :: x -> y
-instance Convert x x where convert = id
-
-f :: Convert a (Id a) => a -> Id a
-f x = convert x
-
-g :: Convert a (Id a) => a -> Id a
-g x = let x' = f x in x' \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break028.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break028.script
deleted file mode 100644
index 26793f1459..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break028.script
+++ /dev/null
@@ -1,4 +0,0 @@
-:l break028
-:step g False
-:step
-:q
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break028.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/break028.stdout
deleted file mode 100644
index 2438d73a14..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/break028.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-Stopped at break028.hs:15:1-24
-_result :: Id a = _
-Stopped at break028.hs:15:23-24
-_result :: Id a = _
-x' :: Id a = _
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk001.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk001.script
deleted file mode 100644
index 95c1ab6118..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk001.script
+++ /dev/null
@@ -1,22 +0,0 @@
-
-:set -fprint-explicit-foralls
-
-:l ../QSort
-
-:delete 1
--- Illegal: empty breakpoint list
-
-:break NonModule 1
--- Illegal: I don't know this module
-
-:break QSort 1 1
--- Error: No breakpoint here
-
-:show breaks
--- Show an empty list
-
-qsort [8, 4, 42, 16, 15, 23]
--- Should run normally
-
--- Testing that ghci commands work normally
-:i map
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk001.stderr b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk001.stderr
deleted file mode 100644
index adb8dca658..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk001.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-<no location info>:
- Could not find module `NonModule'
- It is not a module in the current program, or in any known package.
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk001.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk001.stdout
deleted file mode 100644
index 3ce4969682..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk001.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-Breakpoint 1 does not exist
-No breakpoints found at that location.
-No active breakpoints.
-[4,8,15,16,23,42]
-map :: forall a b. (a -> b) -> [a] -> [b] -- Defined in GHC.Base
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk002.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk002.script
deleted file mode 100644
index 043e02328b..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk002.script
+++ /dev/null
@@ -1,7 +0,0 @@
--- :abandon stops a debugging session
-
-:l ../QSort
-:break QSort 5
-run
-:abandon
-:q
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk002.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk002.stdout
deleted file mode 100644
index b67ced36a6..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk002.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-Breakpoint 0 activated at ../QSort.hs:5:16-51
-Stopped at ../QSort.hs:5:16-51
-_result :: [a] = _
-a :: a = _
-left :: [a] = _
-right :: [a] = _
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk003.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk003.script
deleted file mode 100644
index dfd00b69ab..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk003.script
+++ /dev/null
@@ -1,2 +0,0 @@
--- :abandon in the top level should be a no-op
-:abandon
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk003.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk003.stdout
deleted file mode 100644
index be3e67e656..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk003.stdout
+++ /dev/null
@@ -1 +0,0 @@
-There is no computation running.
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk004.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk004.script
deleted file mode 100644
index eb0bad6940..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk004.script
+++ /dev/null
@@ -1,8 +0,0 @@
--- Instrumentation of mdo notation
-
-:set -XRecursiveDo
-:l ../mdo.hs
-:break Main 13
-:break Main 12
-:break Main 11
-:break Main 14
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk004.stderr b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk004.stderr
deleted file mode 100644
index 0107b5880f..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk004.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-<no location info>:
- Warning: -XRecursiveDo is deprecated: use -XDoRec or pragma {-# LANGUAGE DoRec #-} instead
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk004.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk004.stdout
deleted file mode 100644
index ed7fb990a4..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk004.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-Breakpoint 0 activated at ../mdo.hs:13:16-30
-Breakpoint 1 activated at ../mdo.hs:12:16-30
-Breakpoint 2 activated at ../mdo.hs:11:16-30
-Breakpoint 3 activated at ../mdo.hs:14:10-18
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk005.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk005.hs
deleted file mode 100644
index 5b228d2ab4..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk005.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-import TupleN
-
-tuple3 x = $(tuple 3) x
-
-normal_fn x = tuple3 x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk005.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk005.script
deleted file mode 100644
index 6ac65d8096..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk005.script
+++ /dev/null
@@ -1,13 +0,0 @@
--- TH generated code does not get instrumented
-
-:set -XTemplateHaskell
-:l dynbrk005
-:st normal_fn [1,2,3]
-:st
-:st
-:st
-:st
-:st
-:st
-:st
-:st \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk005.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk005.stdout
deleted file mode 100644
index 3eff707e6c..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk005.stdout
+++ /dev/null
@@ -1,11 +0,0 @@
-Stopped at dynbrk005.hs:5:0-21
-_result :: (a, a, a) = _
-Stopped at dynbrk005.hs:5:14-21
-_result :: (a, a, a) = _
-x :: [a] = [_,_,_]
-Stopped at dynbrk005.hs:3:0-22
-_result :: (a, a, a) = _
-Stopped at dynbrk005.hs:3:11-22
-_result :: (a, a, a) = _
-x :: [a] = [_,_,_]
-(1,2,3)
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk007.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk007.hs
deleted file mode 100644
index dc02170216..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk007.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-f :: Maybe Int
-f = do
- i <- return 1
- j <- return 2
- k <- return 3
- return i \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk007.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk007.script
deleted file mode 100644
index 1f40a2255f..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk007.script
+++ /dev/null
@@ -1,7 +0,0 @@
--- Breakpoints in do statements
-:l dynbrk007.hs
-:st f
-:st
-:st
-:st
-:st
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk007.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk007.stdout
deleted file mode 100644
index 22adee0db2..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk007.stdout
+++ /dev/null
@@ -1,11 +0,0 @@
-Stopped at dynbrk007.hs:(2,5)-(6,11)
-_result :: Maybe Int = _
-Stopped at dynbrk007.hs:3:9-16
-_result :: Maybe Int = _
-Stopped at dynbrk007.hs:4:9-16
-_result :: Maybe Integer = _
-Stopped at dynbrk007.hs:5:9-16
-_result :: Maybe Integer = _
-Stopped at dynbrk007.hs:6:4-11
-_result :: Maybe Int = _
-i :: Int = 1
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk008.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk008.hs
deleted file mode 100644
index 8fbde66d21..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk008.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-f :: Int -> [Int]
-f i = [ j | j <- [i], h <- [j], k <- [h]]
-
-g i = i \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk008.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk008.script
deleted file mode 100644
index e99ee6076e..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk008.script
+++ /dev/null
@@ -1,9 +0,0 @@
--- Breakpoints on binding sites that start with a List Comprehension are being coalesced, since list comp. are desugared to Lets and we coalesce bkpts for Lets (since there will be a breakpoint at body of the Let anyway)
-
-:l dynbrk008.hs
-:st f 42
-:st
-:st
-:st
-:st
-:st
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk008.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk008.stdout
deleted file mode 100644
index 722f2991f3..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk008.stdout
+++ /dev/null
@@ -1,15 +0,0 @@
-Stopped at dynbrk008.hs:2:1-41
-_result :: [Int] = _
-Stopped at dynbrk008.hs:2:7-41
-_result :: [Int] = _
-i :: Int = 42
-Stopped at dynbrk008.hs:2:18-20
-_result :: [Int] = _
-i :: Int = 42
-Stopped at dynbrk008.hs:2:28-30
-_result :: [Int] = _
-j :: Int = 42
-Stopped at dynbrk008.hs:2:38-40
-_result :: [Int] = _
-h :: Int = 42
-[42]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk009.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk009.hs
deleted file mode 100644
index f0e0bfee16..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk009.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE MagicHash, BangPatterns #-}
-
-import GHC.Base
-
-f :: Int -> Int# -> Int#
-f x i = i
-
-test = let !(I# i) = 3 in I# (f 2 i) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk009.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk009.script
deleted file mode 100644
index 7d00f193a5..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk009.script
+++ /dev/null
@@ -1,10 +0,0 @@
--- Instrumentation should not set breakpoints around unlifted values.
--- Also unlifted types are not bound at a breakpoint currently.
-
-:l dynbrk009.hs
-:st test
-:st
-:st
-:st
-:st
-:st
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk009.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk009.stdout
deleted file mode 100644
index e7e107448c..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/dynbrk009.stdout
+++ /dev/null
@@ -1,11 +0,0 @@
-Stopped at dynbrk009.hs:8:22
-_result :: Int = _
-Stopped at dynbrk009.hs:8:27-36
-_result :: Int = _
-Stopped at dynbrk009.hs:8:31-35
-_result :: Int = _
-Stopped at dynbrk009.hs:6:1-9
-_result :: Int = _
-Stopped at dynbrk009.hs:6:9
-_result :: Int = _
-3
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/getargs.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/getargs.script
deleted file mode 100644
index 4574386df3..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/getargs.script
+++ /dev/null
@@ -1,4 +0,0 @@
-:l ../getargs.hs
-:set args 42
-:step main
-:step
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/getargs.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/getargs.stdout
deleted file mode 100644
index 659308cd77..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/getargs.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-Stopped at ..\getargs.hs:3:8-24
-_result :: IO () = _
-["42"]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/hist001.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/hist001.script
deleted file mode 100644
index 5f8eab637e..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/hist001.script
+++ /dev/null
@@ -1,15 +0,0 @@
-:l ../Test3.hs
--- set a break on the [] case in map
-:b 1
--- trace an execution
-:tr mymap (+1) [1,2]
-:hist
-:back
-:show bindings
-:back
-:show bindings
-:force _result
-:back
-:forward
--- at this point, we can't retrieve the bindings because _result (the AP_STACK)
--- was evaluated previously. GHCi should not crash, preferably.
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/hist001.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/hist001.stdout
deleted file mode 100644
index 68e05cc076..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/hist001.stdout
+++ /dev/null
@@ -1,31 +0,0 @@
-Breakpoint 0 activated at ../Test3.hs:1:14-15
-[2,3Stopped at ../Test3.hs:1:14-15
-_result :: [a] = _
--1 : mymap (../Test3.hs:(1,1)-(2,31))
--2 : mymap (../Test3.hs:2:22-31)
--3 : mymap (../Test3.hs:2:18-20)
--4 : mymap (../Test3.hs:2:18-31)
--5 : mymap (../Test3.hs:(1,1)-(2,31))
--6 : mymap (../Test3.hs:2:22-31)
--7 : mymap (../Test3.hs:2:18-20)
--8 : mymap (../Test3.hs:2:18-31)
--9 : mymap (../Test3.hs:(1,1)-(2,31))
-<end of history>
-Logged breakpoint at ../Test3.hs:(1,1)-(2,31)
-_result :: [a]
-_result :: [a] = _
-Logged breakpoint at ../Test3.hs:2:22-31
-_result :: [a]
-f :: t -> a
-xs :: [t]
-_result :: [a] = _
-f :: t -> a = _
-xs :: [t] = []
-*** Ignoring breakpoint
-_result = []
-Logged breakpoint at ../Test3.hs:2:18-20
-_result :: a
-f :: Integer -> a
-x :: Integer
-Logged breakpoint at ../Test3.hs:2:22-31
-_result :: [a]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand001.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand001.script
deleted file mode 100644
index 767b27c47f..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand001.script
+++ /dev/null
@@ -1,13 +0,0 @@
-:list
--- should fail, nothing to list
-:list Data.List 20
--- can't list a compiled module
-:list Data.List.map
--- can't list a compiled module
-:l ../Test3.hs
-:list mymap
-:list main
-:list 4
--- wrong syntax:
-:list a b c
-:list 10 20
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand001.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand001.stdout
deleted file mode 100644
index 26a27ac5a5..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand001.stdout
+++ /dev/null
@@ -1,15 +0,0 @@
-Not stopped at a breakpoint; nothing to list
-module 'Data.List' is from another package;
-this command requires an interpreted module
-cannot list source code for map: module GHC.Base is not interpreted
-1 mymap f [] = []
-2 mymap f (x:xs) = f x:mymap f xs
-3
-3
-4 main = mapM_ putStrLn $ mymap ('a':) ["hello","bye"]
-5
-3
-4 main = mapM_ putStrLn $ mymap ('a':) ["hello","bye"]
-5
-syntax: :list [<line> | <module> <line> | <identifier>]
-syntax: :list [<line> | <module> <line> | <identifier>]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand002.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand002.hs
deleted file mode 100644
index 71f3f5482c..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand002.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-import System.Directory
-
-main = do
- setCurrentDirectory ".."
- putStrLn "Hello World" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand002.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand002.script
deleted file mode 100644
index 72abf5291d..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand002.script
+++ /dev/null
@@ -1,4 +0,0 @@
-:l listCommand002
-:step main
-:step
-:step \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand002.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand002.stdout
deleted file mode 100644
index 95854884b2..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/listCommand002.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-Stopped at listCommand002.hs:(3,8)-(5,24)
-_result :: IO () = _
-Stopped at listCommand002.hs:4:3-26
-_result :: IO () = _
-Stopped at listCommand002.hs:5:3-24
-_result :: IO () = _
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print001.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print001.script
deleted file mode 100644
index f2111c0cc5..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print001.script
+++ /dev/null
@@ -1,12 +0,0 @@
--- Printing of lists
-
-let li = map Just [0..5]
-:p li
-head li
-:p li
-length li
-:p li
-:sp li
-li
-:p li
-:sp li \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print001.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print001.stdout
deleted file mode 100644
index c55ed941cb..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print001.stdout
+++ /dev/null
@@ -1,10 +0,0 @@
-li = (_t1::[Maybe Integer])
-Just 0
-li = Just 0 : (_t2::[Maybe Integer])
-6
-li = [Just 0,(_t3::Maybe Integer),(_t4::Maybe Integer),
- (_t5::Maybe Integer),(_t6::Maybe Integer),(_t7::Maybe Integer)]
-li = [Just 0,_,_,_,_,_]
-[Just 0,Just 1,Just 2,Just 3,Just 4,Just 5]
-li = [Just 0,Just 1,Just 2,Just 3,Just 4,Just 5]
-li = [Just 0,Just 1,Just 2,Just 3,Just 4,Just 5]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print002.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print002.script
deleted file mode 100644
index 629bb92e74..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print002.script
+++ /dev/null
@@ -1,19 +0,0 @@
--- printing of Showables
-
-:set -XExistentialQuantification -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-let f = Just (1.2::Float)
-f
-:p f
-
-let i = Just (10::Integer)
-:p i
-
-case i of Just j -> Control.Exception.evaluate j
-:p i
-
-:l ../Test.hs
-
-let s = S1 'a' 'b' 'c'
-s
-:p s
-:sp s \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print002.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print002.stdout
deleted file mode 100644
index ab0e6f2fdb..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print002.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-Just 1.2
-f = Just 1.2
-i = Just (_t1::Integer)
-10
-i = Just 10
-'a'
-s = S1 'a' 'b' 'c'
-s = S1 'a' 'b' 'c'
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print003.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print003.script
deleted file mode 100644
index 8544f46231..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print003.script
+++ /dev/null
@@ -1,15 +0,0 @@
--- Simple Recovery of types - opaque types
-:set -XExistentialQuantification -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-:l ../Test
-let t = O (map Just [[1,1],[2,2]])
-:p t
--- should have bound _t1 now
-:show bindings
-seq _t1 ()
-:p t
-:show bindings
-seq _t2 ()
-:p t
-seq _t4 ()
-:p t
-:t _t7
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print003.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print003.stdout
deleted file mode 100644
index 99a66e4bdc..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print003.stdout
+++ /dev/null
@@ -1,15 +0,0 @@
-t = O (_t1::a)
-_t1 :: a = _
-t :: Opaque = O _
-()
-t = O ((_t2::a1) : (_t3::[a1]))
-_t1 :: [a] = _ : _
-_t2 :: a1 = _
-_t3 :: [a1] = _
-it :: () = ()
-t :: Opaque = O (_ : _)
-()
-t = O (Just [(_t4::a1),(_t5::a1)] : (_t6::[Maybe [a1]]))
-()
-t = O (Just [1,(_t7::Integer)] : (_t8::[Maybe [Integer]]))
-_t7 :: Integer
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print004.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print004.script
deleted file mode 100644
index b82929a600..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print004.script
+++ /dev/null
@@ -1,28 +0,0 @@
--- simple :print tests
-
-let a = False
-:sp a
-:p a
-
-let b = map Just [1..4]
-:p b
-head b
-:p b
-length b
-:p b
-:sp b
-b
-:p b
-
--- Force loading of a external package and keep pushing
-:m +Language.Haskell.TH
-let c = ListT
-:p c
-let d = map TupleT [1..4]
-:p d
-head d
-:p d
-length d
-:p d
-d
-:p d
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print004.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print004.stdout
deleted file mode 100644
index ee7bbacefa..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print004.stdout
+++ /dev/null
@@ -1,19 +0,0 @@
-a = False
-a = False
-b = (_t1::[Maybe Integer])
-Just 1
-b = Just 1 : (_t2::[Maybe Integer])
-4
-b = [Just 1,(_t3::Maybe Integer),(_t4::Maybe Integer),
- (_t5::Maybe Integer)]
-b = [Just 1,_,_,_]
-[Just 1,Just 2,Just 3,Just 4]
-b = [Just 1,Just 2,Just 3,Just 4]
-c = ListT
-d = (_t6::[Type])
-TupleT 1
-d = TupleT 1 : (_t7::[Type])
-4
-d = [TupleT 1,(_t8::Type),(_t9::Type),(_t10::Type)]
-[TupleT 1,TupleT 2,TupleT 3,TupleT 4]
-d = [TupleT 1,TupleT 2,TupleT 3,TupleT 4]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print005.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print005.script
deleted file mode 100644
index 0d26508703..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print005.script
+++ /dev/null
@@ -1,15 +0,0 @@
--- Recovery of types, polymorphic bindings inside a bkpt
-
-:l ../QSort
-:break 5
-qsort [8, 4]
-
-:p right
-seq right ()
-:p right
-:p left
-seq left ()
-:p left
-length left
-:p left
-:continue \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print005.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print005.stdout
deleted file mode 100644
index f2c930a356..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print005.stdout
+++ /dev/null
@@ -1,19 +0,0 @@
-Breakpoint 0 activated at ../QSort.hs:5:16-51
-Stopped at ../QSort.hs:5:16-51
-_result :: [a] = _
-a :: a = _
-left :: [a] = _
-right :: [a] = _
-right = (_t1::[a])
-()
-right = []
-left = (_t2::[Integer])
-()
-left = 4 : (_t3::[Integer])
-1
-left = [4]
-Stopped at ../QSort.hs:5:16-51
-_result :: [Integer] = _
-a :: Integer = 4
-left :: [Integer] = _
-right :: [Integer] = _
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print006.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print006.script
deleted file mode 100644
index d4c60d56a6..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print006.script
+++ /dev/null
@@ -1,19 +0,0 @@
--- Recovery of types, opaque types
--- This scenario demands propagation of types up in the tree of terms
-
-:set -XExistentialQuantification -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-:l ../Test
-let t = O (map Just [[1,1],[2,2]])
-:p t
-seq _t1 () -- The contents of the opaque
-:p t
-seq _t3 () -- The tail of the list
-:p t
-seq _t5 () -- The 2nd element of the list
-:p t
-seq _t8 () -- The 1st element of the list inside the Just
-:p t
-seq _t11 () -- The 1st element of the outer list
-
-:p t
- -- The 1st Just must be completely typed, as we know the type of the list \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print006.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print006.stdout
deleted file mode 100644
index 0a91ca724b..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print006.stdout
+++ /dev/null
@@ -1,14 +0,0 @@
-t = O (_t1::a)
-()
-t = O ((_t2::a1) : (_t3::[a1]))
-()
-t = O ((_t4::a2) : (_t5::a2) : (_t6::[a2]))
-()
-t = O ((_t7::Maybe [a1]) : Just [(_t8::a1),(_t9::a1)] :
- (_t10::[Maybe [a1]]))
-()
-t = O ((_t11::Maybe [Integer]) : Just [2,(_t12::Integer)] :
- (_t13::[Maybe [Integer]]))
-()
-t = O (Just [(_t14::Integer),(_t15::Integer)] :
- Just [2,(_t16::Integer)] : (_t17::[Maybe [Integer]]))
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print007.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print007.script
deleted file mode 100644
index 69fbb4d2dd..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print007.script
+++ /dev/null
@@ -1,30 +0,0 @@
--- Handling of unboxed fields
--- There seems to be a problem with -funbox-strict-fields
--- and interpreted code.
--- dataConRepArgTys says they are unboxed,
--- but they seem to be not.
--- So this test fails with wrong output
-:set -XExistentialQuantification -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-:l ../Test
-
-let s = S2 'a' 'b'
-seq s ()
-:p s
-
-:set -funbox-strict-fields
-:l
-:l ../Test
-
-let s = S2 'a' 'b'
-seq s ()
-:p s
-
-
-:set -funbox-strict-fields -O
-:l
-:l ../Test
-
-let s = S2 'a' 'b'
-seq s ()
-:p s
-
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print007.stderr b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print007.stderr
deleted file mode 100644
index 713c629818..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print007.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-<no location info>:
- Warning: -O conflicts with --interactive; -O ignored.
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print007.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print007.stdout
deleted file mode 100644
index 1498fe1ae1..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print007.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-()
-s = S2 'a' 'b'
-()
-s = S2 'a' 'b'
-()
-s = S2 'a' 'b'
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print008.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print008.script
deleted file mode 100644
index 52ca7dc857..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print008.script
+++ /dev/null
@@ -1,14 +0,0 @@
---Handling of polymorphic types:
--- testing that tyvars are instantiated to unknown
-
-:set -XExistentialQuantification -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-:l ../Test
-let t = O (map Just [[1,1],[2,2]])
-
-:p t
-:t _t1
-seq _t1 ()
-:p t
-seq _t2 ()
-:p t
-:t _t4 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print008.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print008.stdout
deleted file mode 100644
index 1b42a99ed4..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print008.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-t = O (_t1::a)
-_t1 :: a
-()
-t = O ((_t2::a1) : (_t3::[a1]))
-()
-t = O (Just [(_t4::a1),(_t5::a1)] : (_t6::[Maybe [a1]]))
-_t4 :: a1
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print009.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print009.script
deleted file mode 100644
index 9c36e8c403..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print009.script
+++ /dev/null
@@ -1,8 +0,0 @@
--- Name generation
--- Testing collisions
-
-let _t1 = "user value"
-let li = map Just [1..4]
-:p li
-_t1
-_t2 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print009.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print009.stdout
deleted file mode 100644
index de29287d57..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print009.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-li = (_t2::[Maybe Integer])
-"user value"
-[Just 1,Just 2,Just 3,Just 4]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print010.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print010.script
deleted file mode 100644
index 4b488fa867..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print010.script
+++ /dev/null
@@ -1,12 +0,0 @@
--- Another tricky type reconstruction case
-
-:set -XExistentialQuantification -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-:l ../Test
-
-let o = O (map id [0..3])
-:p o
-seq _t1 ()
-:p o
-seq _t2 ()
-length _t3
-:p o \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print010.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print010.stdout
deleted file mode 100644
index b390d255c8..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print010.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-o = O (_t1::a)
-()
-o = O ((_t2::a1) : (_t3::[a1]))
-()
-3
-o = O [0,(_t4::Integer),(_t5::Integer),(_t6::Integer)]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print011.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print011.script
deleted file mode 100644
index 9d200dcaa2..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print011.script
+++ /dev/null
@@ -1,13 +0,0 @@
--- Type reconstruction with newtypes involved
-
-:set -XExistentialQuantification -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-:l ../Test
-
-let i = map (Just . Just) [My 1 .. My 3]
-:p i
-seq _t1 ()
-:p i
-seq _t2 ()
-:p i
-seq _t4 ()
-:p i \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print011.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print011.stdout
deleted file mode 100644
index 852312f15f..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print011.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-i = (_t1::[Maybe (Maybe MyInt)])
-()
-i = (_t2::Maybe (Maybe MyInt)) : (_t3::[Maybe (Maybe MyInt)])
-()
-i = Just (_t4::Maybe MyInt) : (_t5::[Maybe (Maybe MyInt)])
-()
-i = Just (Just (My 1)) : (_t6::[Maybe (Maybe MyInt)])
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print012.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print012.script
deleted file mode 100644
index bda9a8fbe7..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print012.script
+++ /dev/null
@@ -1,11 +0,0 @@
-:set -XGADTs -XRank2Types -XExistentialQuantification -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-:l ../GADT
-:a ../Test
-:m +Main
-let o = O (id foo)
-:p o
-seq _t1 ()
-:t _t1
-:p o
-seq _t4 ()
-:p o \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print012.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print012.stdout
deleted file mode 100644
index c717acc069..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print012.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-o = O (_t1::a)
-()
-_t1 :: SafeList x NonEmpty
-o = O (Cons (_t4::x1) (_t5::SafeList x1 y))
-()
-o = O (Cons 3 (_t8::SafeList Integer y1))
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print013.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print013.script
deleted file mode 100644
index 154c1b328f..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print013.script
+++ /dev/null
@@ -1,10 +0,0 @@
--- Test handling of extra fields in the representation due to dictionaries
-
-:set -XGADTs -XRank2Types
-:l ../GADT
-
-let d = DictN 1
-:p d
-seq _t1 ()
-:p d
-:q
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print013.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print013.stdout
deleted file mode 100644
index 8ccfef5376..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print013.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-d = DictN (_t13::Integer)
-()
-d = DictN (_t26::Integer)
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print014.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print014.script
deleted file mode 100644
index 88fce78418..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print014.script
+++ /dev/null
@@ -1,9 +0,0 @@
--- Test handling of extra fields in the representation due to existentials.
-
-:set -XGADTs -XRank2Types
-:l ../GADT
-
-let e = Exist 1
-:p e
-seq _t1 ()
-:p e
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print014.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print014.stdout
deleted file mode 100644
index e6d9a01bd8..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print014.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-e = Exist (_t1::a)
-()
-e = Exist 1
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print015.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print015.script
deleted file mode 100644
index 6fdcca9b56..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print015.script
+++ /dev/null
@@ -1,8 +0,0 @@
---
-
-let li = map Just (1 : undefined)
-:p li
-head li
-:p li
-:force li
-:p li
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print015.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print015.stdout
deleted file mode 100644
index cc037e9ba7..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print015.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-li = (_t1::[Maybe Integer])
-Just 1
-li = Just 1 : (_t2::[Maybe Integer])
-*** Exception: Prelude.undefined
-*** Exception: Prelude.undefined
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print016.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print016.script
deleted file mode 100644
index 1f5f153892..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print016.script
+++ /dev/null
@@ -1,10 +0,0 @@
--- Type reconstruction with newtypes involved, more gruesome.
-
-:set -XExistentialQuantification -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-:l ../Test
-let a = map MkT [1..2]
-:p a
-seq _t1 ()
-:p a
-seq _t2 ()
-:p a \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print016.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print016.stdout
deleted file mode 100644
index ec894b5162..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print016.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-a = (_t1::[MkT Integer])
-()
-a = (_t2::MkT Integer) : (_t3::[MkT Integer])
-()
-a = MkT 1 : (_t4::[MkT Integer])
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print017.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print017.script
deleted file mode 100644
index 7a8371a2c1..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print017.script
+++ /dev/null
@@ -1,12 +0,0 @@
--- More newtypes goodness
-
-:set -XExistentialQuantification -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-:l ../Test
-let a = map (MkT2 . MkT) [1..2]
-:p a
-seq _t1 ()
-:p a
-seq _t2 ()
-:p a
-seq _t4 ()
-:p a
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print017.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print017.stdout
deleted file mode 100644
index 4d38a041c4..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print017.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-a = (_t1::[MkT2 Integer])
-()
-a = (_t2::MkT2 Integer) : (_t3::[MkT2 Integer])
-()
-a = MkT2 (MkT 1) : (_t4::[MkT2 Integer])
-()
-a = MkT2 (MkT 1) : (_t5::MkT2 Integer) : (_t6::[MkT2 Integer])
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print018.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print018.script
deleted file mode 100644
index 695dfca291..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print018.script
+++ /dev/null
@@ -1,15 +0,0 @@
--- Test type reconstruction of Constants
--- Found by Bernie Pope
-
-:set -XExistentialQuantification -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-:l ../Test
-
-:break poly
-poly Unary
-:step
-:p x
-:t x
-seq x ()
-:p x
-:t x
-x
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print018.stderr b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print018.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print018.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print018.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print018.stdout
deleted file mode 100644
index 26861305f3..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print018.stdout
+++ /dev/null
@@ -1,12 +0,0 @@
-Breakpoint 0 activated at ../Test.hs:40:1-17
-Stopped at ../Test.hs:40:1-17
-_result :: () = _
-Stopped at ../Test.hs:40:10-17
-_result :: () = _
-x :: a = _
-x = (_t1::a)
-x :: a
-()
-x = Unary
-x :: Unary
-Unary
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print019.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print019.script
deleted file mode 100644
index a7653720d6..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print019.script
+++ /dev/null
@@ -1,11 +0,0 @@
-:set -XExistentialQuantification -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-:l ../Test
-let a = O (id 'a')
-let b = O (id "abc")
-:p a
-:p b
-seq _t1 ()
-:p _t1
-:show bindings
-_t2
--- bogus!! _t2 has been resolved to type Char
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print019.stderr b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print019.stderr
deleted file mode 100644
index dcf63dd07e..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print019.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-<interactive>:1:1:
- Ambiguous type variable `a1' in the constraint:
- (Show a1) arising from a use of `print'
- Cannot resolve unknown runtime types: a1
- Use :print or :force to determine these types
- In a stmt of an interactive GHCi command: print it
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print019.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print019.stdout
deleted file mode 100644
index 9c48d11d8d..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print019.stdout
+++ /dev/null
@@ -1,9 +0,0 @@
-a = O (_t1::a)
-b = O (_t2::a1)
-()
-_t1 = 'a'
-_t1 :: Char = 'a'
-_t2 :: a1 = _
-a :: Opaque = O 'a'
-b :: Opaque = O _
-it :: () = ()
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print020.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print020.script
deleted file mode 100644
index e0101955cb..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print020.script
+++ /dev/null
@@ -1,5 +0,0 @@
-:set -fno-warn-overlapping-patterns
-:l ../HappyTest.hs
-:break lexer
-main
-:force _result
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print020.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print020.stdout
deleted file mode 100644
index ee10c3a575..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print020.stdout
+++ /dev/null
@@ -1,14 +0,0 @@
-Breakpoint 0 activated at ../HappyTest.hs:(229,0)-(240,34)
-Stopped at ../HappyTest.hs:(229,0)-(240,34)
-_result :: [Token] = _
-*** Ignoring breakpoint
-*** Ignoring breakpoint
-*** Ignoring breakpoint
-*** Ignoring breakpoint
-*** Ignoring breakpoint
-*** Ignoring breakpoint
-*** Ignoring breakpoint
-*** Ignoring breakpoint
-*** Ignoring breakpoint
-*** Ignoring breakpoint
-_result = [TokenInt 1,TokenPlus,TokenInt 2,TokenPlus,TokenInt 3]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print021.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print021.hs
deleted file mode 100644
index 7c3962d803..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print021.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- Test that we can recover unicode DataCons in :print
-data T
- = À -- latin
- | Α -- greek
- | á‚  -- georgian
- | Ϣ -- coptic
- | Ð -- cyrillic
- | Ô± -- armenian
- deriving Show
-
-test =
- [ À -- latin
- , Α -- greek
- , á‚  -- georgian
- , Ϣ -- coptic
- , Ð -- cyrillic
- , Ô± -- armenian
- ]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print021.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print021.script
deleted file mode 100644
index 58846cb64a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print021.script
+++ /dev/null
@@ -1,3 +0,0 @@
-:l print021.hs
-:print test
-:force test
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print021.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print021.stdout
deleted file mode 100644
index 4ebd63ee4a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print021.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-test = (_t1::[T])
-test = [À,Α,á‚ ,Ï¢,Ð,Ô±]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print022.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print022.hs
deleted file mode 100644
index f83873e5ea..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print022.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-import GHC.Exts
-data T = C Int# Word# Float# Double# Char# Int Float Double
-test = C 1# 32## 1.2# 1.23## 'x'# 1 1.2 1.23
-
-data TwoFields = TwoFields Char Int deriving Show
-
-data T2 = C2 {-# UNPACK #-} !Int {-#UNPACK#-} !Word {-# UNPACK #-} !TwoFields deriving Show
-test2 = C2 1 32 (TwoFields 'a' 3)
-
-f x = x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print022.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print022.script
deleted file mode 100644
index cfed80380e..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print022.script
+++ /dev/null
@@ -1,9 +0,0 @@
--- test for unboxed fields in datatypes
-:l print022.hs
-seq test ()
-:print test
-:break f
-f test2
-:step
-:fo x
-:t x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print022.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print022.stdout
deleted file mode 100644
index 8aa539418a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print022.stdout
+++ /dev/null
@@ -1,10 +0,0 @@
-()
-test = C 1 32 1.2 1.23 'x' 1 1.2 1.23
-Breakpoint 0 activated at print022.hs:11:1-7
-Stopped at print022.hs:11:1-7
-_result :: t = _
-Stopped at print022.hs:11:7
-_result :: t = _
-x :: t = _
-x = C2 1 (W# 32) (TwoFields 'a' 3)
-x :: T2
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print023.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print023.script
deleted file mode 100644
index 434b8df4af..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print023.script
+++ /dev/null
@@ -1,8 +0,0 @@
--- Another type reconstruction with newtypes test
-
-:set -XExistentialQuantification -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-:l ../Test
-
-let a = MkT [1..2]
-seq a ()
-:p a
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print023.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print023.stdout
deleted file mode 100644
index ef8d3c18fa..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print023.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-()
-a = MkT (1 : (_t1::[Integer]))
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print024.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print024.script
deleted file mode 100644
index d617ecaaa0..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print024.script
+++ /dev/null
@@ -1,10 +0,0 @@
--- stg_ap_rep exception after using :print with newtypes
-
-:set -XExistentialQuantification -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-:l ../Test
-
-let a = MkT 1
-seq a ()
-:p a
-a
--- Bang! "internal error: stg_ap_p_ret", triggered by the evaluation of a
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print024.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print024.stdout
deleted file mode 100644
index 021fa5c98a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print024.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-()
-a = MkT 1
-MkT 1
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print025.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print025.hs
deleted file mode 100644
index c2898bfa8e..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print025.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-data T a s = T a deriving Show
-f x = x
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print025.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print025.script
deleted file mode 100644
index 926890f4bc..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print025.script
+++ /dev/null
@@ -1,8 +0,0 @@
-:l print025
-let i = T (1::Int)
-i
-:break f
-f i
--- RTTI happens implicitly when the bindings at f come into context
-:step
-:step \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print025.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print025.stdout
deleted file mode 100644
index b2fcf65b1b..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print025.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-T 1
-Breakpoint 0 activated at print025.hs:2:1-7
-Stopped at print025.hs:2:1-7
-_result :: t = _
-Stopped at print025.hs:2:7
-_result :: T Int s = _
-x :: T Int s = T 1
-T 1
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print026.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print026.script
deleted file mode 100644
index de31983f1d..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print026.script
+++ /dev/null
@@ -1,8 +0,0 @@
--- test -fno-debug-with-show
-
-:m +Data.Sequence
-let l = fromList "abc"
-l
-:p l
-:set -fprint-evld-with-show
-:p l \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print026.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print026.stdout
deleted file mode 100644
index decc3dfb6d..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print026.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-fromList "abc"
-l = Data.Sequence.Seq (Data.Sequence.Deep
- 3 (Data.Sequence.One (Data.Sequence.Elem 'a')) Data.Sequence.Empty
- (Data.Sequence.Two
- (Data.Sequence.Elem 'b') (Data.Sequence.Elem 'c')))
-l = fromList "abc"
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print027.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print027.script
deleted file mode 100644
index b8c7238148..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print027.script
+++ /dev/null
@@ -1,8 +0,0 @@
--- #1827 - Printing overloaded values
-
-:print (+)
-:print print
-:print log
-:print head
-:print tail
-:print fst \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print027.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print027.stdout
deleted file mode 100644
index 38c46a9118..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print027.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-+ = (_t1::forall a. Num a => a -> a -> a)
-print = (_t2::forall a. Show a => a -> IO ())
-log = (_t3::forall a. Floating a => a -> a)
-head = (_t4::forall a. [a] -> a)
-tail = (_t5::forall a. [a] -> [a])
-fst = (_t6::forall a b. (a, b) -> a)
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print028.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print028.script
deleted file mode 100644
index 0beb8bf725..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print028.script
+++ /dev/null
@@ -1,8 +0,0 @@
-:m + Data.IORef
-
-let l = map Just [1..10]
-:p l
-head l
-r <- newIORef l
-:p r
-:sp r \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print028.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print028.stdout
deleted file mode 100644
index 93a80bc69d..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print028.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-l = (_t1::[Maybe Integer])
-Just 1
-r = GHC.IORef.IORef (GHC.STRef.STRef
- (GHC.Prim.MutVar# (Just 1 : (_t2::[Maybe Integer]))))
-r = GHC.IORef.IORef (GHC.STRef.STRef
- (GHC.Prim.MutVar# (Just 1 : _)))
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print029.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print029.hs
deleted file mode 100644
index 23eb61bb5b..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print029.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-newtype MkT2 a = MkT2 [Maybe a] deriving Show
-
-f :: t Int -> t Int
-f x = x
-
-f2 :: t Int -> t Int -> (t Int, t Int)
-f2 x y = (x,y) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print029.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print029.script
deleted file mode 100644
index b320153d17..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print029.script
+++ /dev/null
@@ -1,10 +0,0 @@
-:l print029.hs
-let a = MkT2 [Just (1::Int)]
-a
-:break f
-f a
-:step
--- Unsound! A false type is assigned to x
--- reconstructType decides to stop too soon because
--- its BFS has recovered a monomorphic type
-:p x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print029.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print029.stdout
deleted file mode 100644
index 366d1d480a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print029.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-MkT2 [Just 1]
-Breakpoint 0 activated at print029.hs:4:1-7
-MkT2 Stopped at print029.hs:4:1-7
-_result :: t Int = _
-Stopped at print029.hs:4:7
-_result :: t Int = _
-x :: t Int = [Just 1]
-x = [Just 1]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print030.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print030.script
deleted file mode 100644
index 9296c90163..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print030.script
+++ /dev/null
@@ -1,10 +0,0 @@
-:l print029.hs
-let a = MkT2 (map Just [(1::Int)])
-:break f
-seq a ()
-f a
-:step
--- Unsound! A false type is assigned to x
--- reconstructType is forced to stop too soon
--- because the elements of the list in x are not evaluated yet
-:q
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print030.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print030.stdout
deleted file mode 100644
index a67d0492d2..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print030.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-Breakpoint 0 activated at print029.hs:4:1-7
-()
-MkT2 Stopped at print029.hs:4:1-7
-_result :: t Int = _
-Stopped at print029.hs:4:7
-_result :: t Int = _
-x :: t Int = _ : _
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print031.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print031.hs
deleted file mode 100644
index c64c786b89..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print031.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Print031 where
-
-newtype MkT2 a = MkT2 [Maybe a] deriving Show
-data Phantom a = Phantom Int deriving Show
-
-f :: t (Phantom a) -> Bool
-f x = const False x -- const just to bring x into scope \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print031.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print031.script
deleted file mode 100644
index fb6308ffcf..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print031.script
+++ /dev/null
@@ -1,10 +0,0 @@
-:l print031.hs
-let a = MkT2 [Just (Phantom 1)]
-:break f
-a
-f a
-:step
--- ghc crashes now when the type for x is recovered
--- and unifyRTTI fails to compute a substitution
-:p x
-:q
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print031.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print031.stdout
deleted file mode 100644
index 529b6987b5..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print031.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-Breakpoint 0 activated at print031.hs:7:1-19
-MkT2 [Just (Phantom 1)]
-Stopped at print031.hs:7:1-19
-_result :: Bool = _
-Stopped at print031.hs:7:7-19
-_result :: Bool = _
-x :: t (Phantom a) = [Just (Phantom 1)]
-x = [Just (Phantom 1)]
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print032.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print032.script
deleted file mode 100644
index fa872af5d3..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print032.script
+++ /dev/null
@@ -1,8 +0,0 @@
-:l print029.hs
-let a = MkT2 [Just (1::Int)]
-a
-let b = MkT2 (map Just [2::Int]) -- Want to obtain a thunk
-:break f2
-f2 a b
-:step
-
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print032.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print032.stdout
deleted file mode 100644
index 5b84fd7c6d..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print032.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-MkT2 [Just 1]
-Breakpoint 0 activated at print029.hs:7:0-13
-Stopped at print029.hs:7:0-13
-_result :: (t Int, t Int) = _
-Stopped at print029.hs:7:9-13
-_result :: (t Int, t Int) = _
-x :: [Maybe Int] = [Just 1]
-y :: [Maybe Int] = _
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print033.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print033.script
deleted file mode 100644
index fed81fe3de..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print033.script
+++ /dev/null
@@ -1,5 +0,0 @@
--- Resolving an impredicative type
-:set -XImpredicativeTypes -fno-warn-deprecated-flags
-:m + Control.Monad.ST
-let u = undefined :: ST s (forall s'. ST s' a)
-:p u
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print033.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print033.stdout
deleted file mode 100644
index e60df0905a..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print033.stdout
+++ /dev/null
@@ -1 +0,0 @@
-u = (_t1::forall s a. ST s (forall s'. ST s' a))
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print034.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print034.script
deleted file mode 100644
index 95bcfde0a6..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print034.script
+++ /dev/null
@@ -1,11 +0,0 @@
--- More GADT goodness
-
-:set -XGADTs -XRank2Types -XDeriveDataTypeable -XGeneralizedNewtypeDeriving
-:l ../GADT
-:a ../Test
-:m +Main
-let o = O (One False Main.Nil)
-:p o
-seq _t1 ()
-:t _t1
-:p o
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print034.stdout b/testsuite/tests/ghc-regress/ghci.debugger/scripts/print034.stdout
deleted file mode 100644
index 5d83c8c9b7..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/print034.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-o = O (_t1::a)
-()
-_t1 :: SafeList Bool NonEmpty
-o = O (One False (_t4::SafeList Bool Empty))
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/result001.hs b/testsuite/tests/ghc-regress/ghci.debugger/scripts/result001.hs
deleted file mode 100644
index a32e2c10fa..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/result001.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-f xs = case map id xs of
- [] -> True
- x:xs -> False
diff --git a/testsuite/tests/ghc-regress/ghci.debugger/scripts/result001.script b/testsuite/tests/ghc-regress/ghci.debugger/scripts/result001.script
deleted file mode 100644
index c5714fe781..0000000000
--- a/testsuite/tests/ghc-regress/ghci.debugger/scripts/result001.script
+++ /dev/null
@@ -1,5 +0,0 @@
--- demonstrates that _result has the wrong type sometimes
-:l result001
-:b 1 20
-f "abc"
--- _result :: Bool is wrong, should be [a]
diff --git a/testsuite/tests/ghc-regress/ghci/Makefile b/testsuite/tests/ghc-regress/ghci/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ghci/prog001/A.hs b/testsuite/tests/ghc-regress/ghci/prog001/A.hs
deleted file mode 100644
index ca0a7e864b..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog001/A.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Main where
-
-import B
-
-main = print ("hello world" ++ show (f 42))
diff --git a/testsuite/tests/ghc-regress/ghci/prog001/B.hs b/testsuite/tests/ghc-regress/ghci/prog001/B.hs
deleted file mode 100644
index e57c31ffff..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog001/B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module B (module B, module C) where
-
-import C
-
-k x = x `mod` 11
diff --git a/testsuite/tests/ghc-regress/ghci/prog001/C.hs b/testsuite/tests/ghc-regress/ghci/prog001/C.hs
deleted file mode 100644
index 006014f98c..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog001/C.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module C (f, g, h) where
-
-import D
-
-g x = f x + 1
-
-h x = x `div` 2
-
-data C = C {x :: Int}
diff --git a/testsuite/tests/ghc-regress/ghci/prog001/D1.hs b/testsuite/tests/ghc-regress/ghci/prog001/D1.hs
deleted file mode 100644
index 35184c7afe..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog001/D1.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module D where
-
-data T = A Int | B Float deriving Eq
-
-f x = x + x
diff --git a/testsuite/tests/ghc-regress/ghci/prog001/D2.hs b/testsuite/tests/ghc-regress/ghci/prog001/D2.hs
deleted file mode 100644
index 997171cdb6..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog001/D2.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module D where
-
-data T = A Int | B Float deriving Eq
-
-f x = x + 1
diff --git a/testsuite/tests/ghc-regress/ghci/prog001/Makefile b/testsuite/tests/ghc-regress/ghci/prog001/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog001/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ghci/prog001/prog001.T b/testsuite/tests/ghc-regress/ghci/prog001/prog001.T
deleted file mode 100644
index 4dfdb69456..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog001/prog001.T
+++ /dev/null
@@ -1,2 +0,0 @@
-test('prog001', extra_clean(['D.hs']), ghci_script, ['prog001.script'])
-
diff --git a/testsuite/tests/ghc-regress/ghci/prog001/prog001.script b/testsuite/tests/ghc-regress/ghci/prog001/prog001.script
deleted file mode 100644
index 77fb21b9bb..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog001/prog001.script
+++ /dev/null
@@ -1,40 +0,0 @@
-:unset +s
-
-:l ../shell.hs
-:def shell (\s -> do shell s; return "")
-
--- first, tidy up:
-:shell rm -f *.hi *.o *~
-:shell cp D1.hs D.hs
-
--- load the program (all interpreted)
-:load A.hs
-
--- reloading should do nothing
-:reload
-
--- make sure `main' works
-main
-
--- touch a module + recompile
-:shell sleep 1
-:shell touch C.hs
-:reload
-
--- make sure `main' still works
-main
-
--- compile D & reload
-:shell "$HC" $HC_OPTS -fforce-recomp -c D.hs
-:reload
-main
-
--- change D, recompile & reload
-:shell cp D2.hs D.hs
-:shell "$HC" $HC_OPTS -fforce-recomp -c D.hs
-:reload
-:load A.hs
-
--- make sure we're picking up the new D, via B
-:module B
-g 42
diff --git a/testsuite/tests/ghc-regress/ghci/prog001/prog001.stdout b/testsuite/tests/ghc-regress/ghci/prog001/prog001.stdout
deleted file mode 100644
index eef24c2153..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog001/prog001.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-"hello world84"
-"hello world84"
-"hello world84"
-44
diff --git a/testsuite/tests/ghc-regress/ghci/prog002/A.hs b/testsuite/tests/ghc-regress/ghci/prog002/A.hs
deleted file mode 100644
index 6dc493aaa2..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog002/A.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module A where
-
-data T = A Int | B Float deriving Eq
-
-f :: Int -> Int
-f x = x + 3
diff --git a/testsuite/tests/ghc-regress/ghci/prog002/A1.hs b/testsuite/tests/ghc-regress/ghci/prog002/A1.hs
deleted file mode 100644
index 069e8ef07a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog002/A1.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module A where
-
-data T = A Int | B Float deriving Eq
-
-f :: Double -> Double
-f x = x + x
diff --git a/testsuite/tests/ghc-regress/ghci/prog002/A2.hs b/testsuite/tests/ghc-regress/ghci/prog002/A2.hs
deleted file mode 100644
index 6dc493aaa2..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog002/A2.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module A where
-
-data T = A Int | B Float deriving Eq
-
-f :: Int -> Int
-f x = x + 3
diff --git a/testsuite/tests/ghc-regress/ghci/prog002/B.hs b/testsuite/tests/ghc-regress/ghci/prog002/B.hs
deleted file mode 100644
index 6aced23415..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog002/B.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module B (f, g, h) where
-
-import A
-
-g x = f x + 1
-
-h x = x `div` 2
diff --git a/testsuite/tests/ghc-regress/ghci/prog002/C.hs b/testsuite/tests/ghc-regress/ghci/prog002/C.hs
deleted file mode 100644
index b3baac2979..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog002/C.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module C (module B, module C) where
-
-import B
-
-k x = x `mod` 11
diff --git a/testsuite/tests/ghc-regress/ghci/prog002/D.hs b/testsuite/tests/ghc-regress/ghci/prog002/D.hs
deleted file mode 100644
index 35672bd88c..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog002/D.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Main where
-
-import C
-
-main = print ("hello world" ++ show (f 42))
diff --git a/testsuite/tests/ghc-regress/ghci/prog002/Makefile b/testsuite/tests/ghc-regress/ghci/prog002/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog002/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ghci/prog002/prog002.T b/testsuite/tests/ghc-regress/ghci/prog002/prog002.T
deleted file mode 100644
index ea39005f6f..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog002/prog002.T
+++ /dev/null
@@ -1,2 +0,0 @@
-test('prog002', extra_clean(['A.hi']), ghci_script, ['prog002.script'])
-
diff --git a/testsuite/tests/ghc-regress/ghci/prog002/prog002.script b/testsuite/tests/ghc-regress/ghci/prog002/prog002.script
deleted file mode 100644
index cecbe4091a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog002/prog002.script
+++ /dev/null
@@ -1,45 +0,0 @@
-:unset +s
-:unset +t
-
-:l ../shell.hs
-:def shell (\s -> do shell s; return "")
-
--- first, clean up:
-:shell rm -f *.hi *.o *~
-:shell cp A1.hs A.hs
-
-:load D.hs
-
--- compile A & reload
-:shell "$HC" $HC_OPTS -fforce-recomp -c A.hs
-:reload
-
-B.g 42
-B.g 42
-B.g 42
-
--- swap A2 for A, compile & reload
-:shell sleep 1
-:shell cp A2.hs A.hs
-:shell "$HC" $HC_OPTS -fforce-recomp -c A.hs
-:reload
--- the system should ignore the compiled version and compile its own.
-
-B.g 42
-B.g 42
-B.g 42
-
--- pick up newly compiled A
-:load D.hs
-
-B.g 42
-B.g 42
-B.g 42
-
--- remove A.o: system should recompile A
-:shell rm A.o
-:reload
-
-B.g 42
-B.g 42
-B.g 42
diff --git a/testsuite/tests/ghc-regress/ghci/prog002/prog002.stdout b/testsuite/tests/ghc-regress/ghci/prog002/prog002.stdout
deleted file mode 100644
index aece15514e..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog002/prog002.stdout
+++ /dev/null
@@ -1,12 +0,0 @@
-85.0
-85.0
-85.0
-46
-46
-46
-46
-46
-46
-46
-46
-46
diff --git a/testsuite/tests/ghc-regress/ghci/prog003/A.hs b/testsuite/tests/ghc-regress/ghci/prog003/A.hs
deleted file mode 100644
index 6e9351c066..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog003/A.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module A(main,a) where
-
-import B
-import C(c)
-
-main = print (a 42)
-
-a x = b x + c x
diff --git a/testsuite/tests/ghc-regress/ghci/prog003/B.hs b/testsuite/tests/ghc-regress/ghci/prog003/B.hs
deleted file mode 100644
index cd579657fb..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog003/B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module B where
-
-import D
-
-b x = d x
diff --git a/testsuite/tests/ghc-regress/ghci/prog003/C.hs b/testsuite/tests/ghc-regress/ghci/prog003/C.hs
deleted file mode 100644
index f26067c78a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog003/C.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module C where
-
-import D
-
-c x = d x
-
diff --git a/testsuite/tests/ghc-regress/ghci/prog003/D.hs b/testsuite/tests/ghc-regress/ghci/prog003/D.hs
deleted file mode 100644
index a53a8c3da6..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog003/D.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-module D where
-
--- data types and an instance
-data D a = A Int | B Float deriving Eq
-newtype N a = N Double
-type T a = (Int,Double)
-
--- a class
-class C a where c :: a -> Int
-
--- a function
-d :: Float -> Float
-d x = x / 3
diff --git a/testsuite/tests/ghc-regress/ghci/prog003/D1.hs b/testsuite/tests/ghc-regress/ghci/prog003/D1.hs
deleted file mode 100644
index 4414d65d2a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog003/D1.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-module D where
-
--- data types and an instance
-data D a = A Int | B Float deriving Eq
-newtype N a = N Double
-type T a = (Int,Double)
-
--- a class
-class C a where c :: a -> Int
-
--- a function
-d :: Int -> Int
-d x = x * 2
diff --git a/testsuite/tests/ghc-regress/ghci/prog003/D2.hs b/testsuite/tests/ghc-regress/ghci/prog003/D2.hs
deleted file mode 100644
index a53a8c3da6..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog003/D2.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-module D where
-
--- data types and an instance
-data D a = A Int | B Float deriving Eq
-newtype N a = N Double
-type T a = (Int,Double)
-
--- a class
-class C a where c :: a -> Int
-
--- a function
-d :: Float -> Float
-d x = x / 3
diff --git a/testsuite/tests/ghc-regress/ghci/prog003/Makefile b/testsuite/tests/ghc-regress/ghci/prog003/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog003/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ghci/prog003/prog003.T b/testsuite/tests/ghc-regress/ghci/prog003/prog003.T
deleted file mode 100644
index c87bc90597..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog003/prog003.T
+++ /dev/null
@@ -1,6 +0,0 @@
-test('prog003',
- extra_clean(['D.hi', 'C.hi', 'C.o', 'B.hi', 'B.o', 'A', 'A.hi', 'A.o',
- 'a.out']),
- ghci_script,
- ['prog003.script'])
-
diff --git a/testsuite/tests/ghc-regress/ghci/prog003/prog003.script b/testsuite/tests/ghc-regress/ghci/prog003/prog003.script
deleted file mode 100644
index 9cdf484a59..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog003/prog003.script
+++ /dev/null
@@ -1,90 +0,0 @@
-:unset +s
-:unset +t
--- A small multi-module program, with 4 modules, A, B, C, D. B & C
--- depend on D, and A depends on B & C.
---
--- This test will try various combinations of compiled and interpreted
--- versions of each module, and make sure each combination behaves
--- sensibly.
-
-:l ../shell.hs
-:def shell (\s -> do shell s; return "")
-
--- clean up
-:shell rm -f *.o *.hi
-:shell cp D1.hs D.hs
-
-putStrLn "Run 1"
-:load A
-:type a
-a 42
-
-putStrLn "Run 2"
--- sigh; sleep 1, because the filesystem only stores times in seconds
-:shell sleep 1; cp D2.hs D.hs
-:reload
-:type (A.a,B.b,C.c,D.d)
-a 42
-
-putStrLn "Run 3"
--- compile D, check that :reload doesn't pick it up
-:shell "$HC" $HC_OPTS -c D.hs
-:reload
-:type (A.a,B.b,C.c,D.d)
-a 42
-
-putStrLn "Run 4"
--- pick up the compiled D now, with :load
-:load A
-:type (A.a,B.b,C.c,D.d)
-a 42
-
-putStrLn "Run 5"
--- D,C compiled
-:shell "$HC" $HC_OPTS -c C.hs
-:load A
-:type (A.a,B.b,C.c,D.d)
-a 42
-
-putStrLn "Run 6"
--- D,C,B compiled
-:shell "$HC" $HC_OPTS -c B.hs
-:load A
-:type (A.a,B.b,C.c,D.d)
-a 42
-
-putStrLn "Run 7"
--- D,C,B,A compiled
-:shell "$HC" $HC_OPTS -c A.hs
-:load A
-:type (A.a,B.b,C.c,D.d)
-a 42
-
-putStrLn "Run 8"
--- D,C,A compiled (better not use A.o)
-:shell rm B.o
-:load A
-:type (A.a,B.b,C.c,D.d)
-a 42
-
-putStrLn "Run 9"
--- D,A compiled (better not use A.o)
-:shell rm C.o
-:load A
-:type (A.a,B.b,C.c,D.d)
-a 42
-
-putStrLn "Run 10"
--- A compiled (better not use A.o)
-:shell rm D.o
-:load A
-:type (A.a,B.b,C.c,D.d)
-a 42
-
-putStrLn "Run 11"
--- A,B,C compiled (better not use A.o, B.o, C.o)
-:shell "$HC" $HC_OPTS --make -v0 A
-:shell rm D.o
-:load A
-:type (A.a,B.b,C.c,D.d)
-a 42
diff --git a/testsuite/tests/ghc-regress/ghci/prog003/prog003.stdout b/testsuite/tests/ghc-regress/ghci/prog003/prog003.stdout
deleted file mode 100644
index dd299f34c8..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog003/prog003.stdout
+++ /dev/null
@@ -1,43 +0,0 @@
-Run 1
-a :: Int -> Int
-168
-Run 2
-(A.a,B.b,C.c,D.d)
- :: (Float -> Float, Float -> Float, Float -> Float, Float -> Float)
-28.0
-Run 3
-(A.a,B.b,C.c,D.d)
- :: (Float -> Float, Float -> Float, Float -> Float, Float -> Float)
-28.0
-Run 4
-(A.a,B.b,C.c,D.d)
- :: (Float -> Float, Float -> Float, Float -> Float, Float -> Float)
-28.0
-Run 5
-(A.a,B.b,C.c,D.d)
- :: (Float -> Float, Float -> Float, Float -> Float, Float -> Float)
-28.0
-Run 6
-(A.a,B.b,C.c,D.d)
- :: (Float -> Float, Float -> Float, Float -> Float, Float -> Float)
-28.0
-Run 7
-(A.a,B.b,C.c,D.d)
- :: (Float -> Float, Float -> Float, Float -> Float, Float -> Float)
-28.0
-Run 8
-(A.a,B.b,C.c,D.d)
- :: (Float -> Float, Float -> Float, Float -> Float, Float -> Float)
-28.0
-Run 9
-(A.a,B.b,C.c,D.d)
- :: (Float -> Float, Float -> Float, Float -> Float, Float -> Float)
-28.0
-Run 10
-(A.a,B.b,C.c,D.d)
- :: (Float -> Float, Float -> Float, Float -> Float, Float -> Float)
-28.0
-Run 11
-(A.a,B.b,C.c,D.d)
- :: (Float -> Float, Float -> Float, Float -> Float, Float -> Float)
-28.0
diff --git a/testsuite/tests/ghc-regress/ghci/prog004/Makefile b/testsuite/tests/ghc-regress/ghci/prog004/Makefile
deleted file mode 100644
index 9ee437437a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog004/Makefile
+++ /dev/null
@@ -1,11 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-# Test that we can load a C object compiled with -g into GHCi.
-# (sourceforge bug #1073501).
-ghciprog004:
- rm -f ctest.o
- echo "int foo(){}" >ctest.c
- '$(TEST_HC)' $(TEST_HC_OPTS) -optc-g -c ctest.c
- echo ":q" | '$(TEST_HC)' $(TEST_HC_OPTS) -v0 --interactive -ignore-dot-ghci ctest.o
diff --git a/testsuite/tests/ghc-regress/ghci/prog004/prog004.T b/testsuite/tests/ghc-regress/ghci/prog004/prog004.T
deleted file mode 100644
index a67ebf35c8..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog004/prog004.T
+++ /dev/null
@@ -1,11 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-def f(opts):
- if not ('ghci' in config.run_ways):
- opts.skip = 1
-setTestOpts(f)
-
-test('ghciprog004',
- extra_clean(['ctest.c', 'ctest.o']),
- run_command,
- ['$MAKE -s --no-print-directory ghciprog004'])
diff --git a/testsuite/tests/ghc-regress/ghci/prog005/A.hs b/testsuite/tests/ghc-regress/ghci/prog005/A.hs
deleted file mode 100644
index e14d0ebe45..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog005/A.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module A where
-x = 1 :: Int
diff --git a/testsuite/tests/ghc-regress/ghci/prog005/B.hs b/testsuite/tests/ghc-regress/ghci/prog005/B.hs
deleted file mode 100644
index 57b34b2be2..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog005/B.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module B (y) where
-import A
-y = 2 :: Int
-z = 3 :: Int
diff --git a/testsuite/tests/ghc-regress/ghci/prog005/Makefile b/testsuite/tests/ghc-regress/ghci/prog005/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog005/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ghci/prog005/prog005.T b/testsuite/tests/ghc-regress/ghci/prog005/prog005.T
deleted file mode 100644
index ca2bfe5237..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog005/prog005.T
+++ /dev/null
@@ -1,2 +0,0 @@
-test('prog005', normal, ghci_script, ['prog005.script'])
-
diff --git a/testsuite/tests/ghc-regress/ghci/prog005/prog005.script b/testsuite/tests/ghc-regress/ghci/prog005/prog005.script
deleted file mode 100644
index d7ca33fa83..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog005/prog005.script
+++ /dev/null
@@ -1,17 +0,0 @@
-:unset +s
-:unset +t
-
-:load B
-
--- eval something that isn't exported from B
-z
-
-:!sleep 1
-:!touch A.hs
-:reload
-
--- A should be recompiled, B will be skipped. We should still have
--- the full top-level scope of B available, though. This was
--- nearly broken in GHC 6.4
-z
-
diff --git a/testsuite/tests/ghc-regress/ghci/prog005/prog005.stdout b/testsuite/tests/ghc-regress/ghci/prog005/prog005.stdout
deleted file mode 100644
index a5c8806279..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog005/prog005.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-3
-3
diff --git a/testsuite/tests/ghc-regress/ghci/prog006/A.hs b/testsuite/tests/ghc-regress/ghci/prog006/A.hs
deleted file mode 100644
index cc38a11890..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog006/A.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module A where
-
-import {-# source #-} Boot
-
-class Class a where
- method :: a -> Data -> a
diff --git a/testsuite/tests/ghc-regress/ghci/prog006/Boot.hs-boot b/testsuite/tests/ghc-regress/ghci/prog006/Boot.hs-boot
deleted file mode 100644
index 5d95f574d6..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog006/Boot.hs-boot
+++ /dev/null
@@ -1,3 +0,0 @@
-module Boot where
-
-data Data
diff --git a/testsuite/tests/ghc-regress/ghci/prog006/Boot1.hs b/testsuite/tests/ghc-regress/ghci/prog006/Boot1.hs
deleted file mode 100644
index 0625737342..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog006/Boot1.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Boot where
-
-import A
-
-data Data = forall n. Class n => D n
diff --git a/testsuite/tests/ghc-regress/ghci/prog006/Boot2.hs b/testsuite/tests/ghc-regress/ghci/prog006/Boot2.hs
deleted file mode 100644
index 5e7297e448..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog006/Boot2.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE ExistentialQuantification #-}
-module Boot where
-
-import A
-
-data Data = forall n. Class n => D n
diff --git a/testsuite/tests/ghc-regress/ghci/prog006/Makefile b/testsuite/tests/ghc-regress/ghci/prog006/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog006/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ghci/prog006/prog006.T b/testsuite/tests/ghc-regress/ghci/prog006/prog006.T
deleted file mode 100644
index 04f3a7c61b..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog006/prog006.T
+++ /dev/null
@@ -1 +0,0 @@
-test('prog006', extra_clean(['Boot.hs']), ghci_script, ['prog006.script'])
diff --git a/testsuite/tests/ghc-regress/ghci/prog006/prog006.script b/testsuite/tests/ghc-regress/ghci/prog006/prog006.script
deleted file mode 100644
index 4ca4c90a3d..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog006/prog006.script
+++ /dev/null
@@ -1,6 +0,0 @@
-:! cp Boot1.hs Boot.hs
-:l Boot.hs
-:! sleep 1
-:! cp Boot2.hs Boot.hs
-:r
-
diff --git a/testsuite/tests/ghc-regress/ghci/prog006/prog006.stderr b/testsuite/tests/ghc-regress/ghci/prog006/prog006.stderr
deleted file mode 100644
index 472272a01e..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog006/prog006.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-Boot.hs:5:13:
- Not a data constructor: `forall'
- Perhaps you intended to use -XExistentialQuantification
diff --git a/testsuite/tests/ghc-regress/ghci/prog007/A.hs b/testsuite/tests/ghc-regress/ghci/prog007/A.hs
deleted file mode 100644
index f4694d7a9c..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog007/A.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module A where
-
-import {-# SOURCE #-} C
-
-class Class1 a
-
-data A = A deriving Show
-
diff --git a/testsuite/tests/ghc-regress/ghci/prog007/B.hs b/testsuite/tests/ghc-regress/ghci/prog007/B.hs
deleted file mode 100644
index ec64b00fa4..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog007/B.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module B where
-
-import A
-
-data B = B deriving Show
-
-instance Class1 B
diff --git a/testsuite/tests/ghc-regress/ghci/prog007/C.hs b/testsuite/tests/ghc-regress/ghci/prog007/C.hs
deleted file mode 100644
index 8273d6bdda..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog007/C.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE OverlappingInstances #-}
-
-module C where
-
-import A
-import B
-
-class Class1 a => Class2 a
-
-instance Class2 B
diff --git a/testsuite/tests/ghc-regress/ghci/prog007/C.hs-boot b/testsuite/tests/ghc-regress/ghci/prog007/C.hs-boot
deleted file mode 100644
index b81773302e..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog007/C.hs-boot
+++ /dev/null
@@ -1,2 +0,0 @@
-
-module C where
diff --git a/testsuite/tests/ghc-regress/ghci/prog007/ghci.prog007.script b/testsuite/tests/ghc-regress/ghci/prog007/ghci.prog007.script
deleted file mode 100644
index 2c6d817d0c..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog007/ghci.prog007.script
+++ /dev/null
@@ -1,2 +0,0 @@
-:l B
-A
diff --git a/testsuite/tests/ghc-regress/ghci/prog007/ghci.prog007.stdout b/testsuite/tests/ghc-regress/ghci/prog007/ghci.prog007.stdout
deleted file mode 100644
index f70f10e4db..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog007/ghci.prog007.stdout
+++ /dev/null
@@ -1 +0,0 @@
-A
diff --git a/testsuite/tests/ghc-regress/ghci/prog007/prog007.T b/testsuite/tests/ghc-regress/ghci/prog007/prog007.T
deleted file mode 100644
index 28f19e5602..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog007/prog007.T
+++ /dev/null
@@ -1,2 +0,0 @@
-# testcase for bug #936
-test('ghci.prog007', normal, ghci_script, ['ghci.prog007.script'])
diff --git a/testsuite/tests/ghc-regress/ghci/prog008/A.hs b/testsuite/tests/ghc-regress/ghci/prog008/A.hs
deleted file mode 100644
index 0be5e1270d..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog008/A.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE Rank2Types, MultiParamTypeClasses #-}
-
--- Tests a bug spotted by Claus in which the type
--- of c3 was wrongly displayed in GHCi as
--- c3 :: C a b => a -> b
--- Should be
--- c3 :: C a b => a1 -> b
-
-module A where
-
-class C a b where
- c1 :: Num b => a -> b
- c2 :: (Num b,Show b) => a -> b
- c3 :: forall a. a -> b
diff --git a/testsuite/tests/ghc-regress/ghci/prog008/ghci.prog008.script b/testsuite/tests/ghc-regress/ghci/prog008/ghci.prog008.script
deleted file mode 100644
index 48954d2488..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog008/ghci.prog008.script
+++ /dev/null
@@ -1,4 +0,0 @@
-:l A
-:browse A
-:set -fprint-explicit-foralls
-:browse A
diff --git a/testsuite/tests/ghc-regress/ghci/prog008/ghci.prog008.stdout b/testsuite/tests/ghc-regress/ghci/prog008/ghci.prog008.stdout
deleted file mode 100644
index 99e63a1b14..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog008/ghci.prog008.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-class C a b where
- c1 :: Num b => a -> b
- c2 :: (Num b, Show b) => a -> b
- c3 :: a1 -> b
-class C a b where
- c1 :: Num b => a -> b
- c2 :: (Num b, Show b) => a -> b
- c3 :: forall a1. a1 -> b
diff --git a/testsuite/tests/ghc-regress/ghci/prog008/prog008.T b/testsuite/tests/ghc-regress/ghci/prog008/prog008.T
deleted file mode 100644
index 96ebbfb168..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog008/prog008.T
+++ /dev/null
@@ -1,2 +0,0 @@
-# testcase for bug #936
-test('ghci.prog008', normal, ghci_script, ['ghci.prog008.script'])
diff --git a/testsuite/tests/ghc-regress/ghci/prog009/A1.hs b/testsuite/tests/ghc-regress/ghci/prog009/A1.hs
deleted file mode 100644
index 41644a1c54..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog009/A1.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module A where
-
-import B
diff --git a/testsuite/tests/ghc-regress/ghci/prog009/A2.hs b/testsuite/tests/ghc-regress/ghci/prog009/A2.hs
deleted file mode 100644
index d843c00b78..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog009/A2.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A where
diff --git a/testsuite/tests/ghc-regress/ghci/prog009/A3.hs b/testsuite/tests/ghc-regress/ghci/prog009/A3.hs
deleted file mode 100644
index 4a61af00da..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog009/A3.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module A where where
-
diff --git a/testsuite/tests/ghc-regress/ghci/prog009/B.hs b/testsuite/tests/ghc-regress/ghci/prog009/B.hs
deleted file mode 100644
index 14580d43b3..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog009/B.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module B where
-
-yan = "tan"
diff --git a/testsuite/tests/ghc-regress/ghci/prog009/Makefile b/testsuite/tests/ghc-regress/ghci/prog009/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog009/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.T b/testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.T
deleted file mode 100644
index f8b063407d..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.T
+++ /dev/null
@@ -1,4 +0,0 @@
-test('ghci.prog009',
- extra_clean(['A.hs']),
- ghci_script,
- ['ghci.prog009.script'])
diff --git a/testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.script b/testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.script
deleted file mode 100644
index 6005727d44..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.script
+++ /dev/null
@@ -1,36 +0,0 @@
-:! cp A1.hs A.hs
-import Data.List
-:load A
--- Data.List should still be in scope:
-:t nub
-:module +B
-yan
-:! sleep 1
-:! cp A3.hs A.hs
-:reload
--- error, context drops to Prelude,Data.List
--- Data.List should still be in scope:
-:t nub
-:! sleep 1
-:! cp A1.hs A.hs
-:reload
--- ok again, B should be back in the context
-yan
--- Data.List should still be in scope:
-:t nub
-:! sleep 1
-:! cp A2.hs A.hs
-:reload
-:show modules
-yan -- error
-
--- Now testing for bug #2049
-:! cp A3.hs A.hs
-:load A.hs
--- should fail
--- Data.List should still be in scope:
-:type nub
-:! sleep 1
-:! cp A1.hs A.hs
-:reload
-yan
diff --git a/testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.stderr b/testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.stderr
deleted file mode 100644
index 484a1b9f27..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-A.hs:1:16: parse error on input `where'
-
-<interactive>:1:1:
- Not in scope: `yan'
- Perhaps you meant `tan' (imported from Prelude)
-
-A.hs:1:16: parse error on input `where'
diff --git a/testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.stdout b/testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.stdout
deleted file mode 100644
index 74d4c49e88..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog009/ghci.prog009.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-nub :: Eq a => [a] -> [a]
-"tan"
-nub :: Eq a => [a] -> [a]
-"tan"
-nub :: Eq a => [a] -> [a]
-A ( A.hs, interpreted )
-nub :: Eq a => [a] -> [a]
-"tan"
diff --git a/testsuite/tests/ghc-regress/ghci/prog010/A.hs b/testsuite/tests/ghc-regress/ghci/prog010/A.hs
deleted file mode 100644
index 0a779b2cf0..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog010/A.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module A (f) where
-
-f x = [x]
-
-g x = Just x
diff --git a/testsuite/tests/ghc-regress/ghci/prog010/B.hs b/testsuite/tests/ghc-regress/ghci/prog010/B.hs
deleted file mode 100644
index ce9e7e4932..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog010/B.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module B where
-
-import A
diff --git a/testsuite/tests/ghc-regress/ghci/prog010/ghci.prog010.script b/testsuite/tests/ghc-regress/ghci/prog010/ghci.prog010.script
deleted file mode 100644
index 563e471a59..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog010/ghci.prog010.script
+++ /dev/null
@@ -1,33 +0,0 @@
--- test for #1205
-
-:l ../shell.hs
-:def shell (\s -> do shell s; return "")
-
-:shell rm -f A.o A.hi B.o B.hi
-
-:load A
--- we can see both f and g (only f is exported)
-:type f
-:type g
-
-:shell $HC $HC_OPTS -fforce-recomp -c A.hs
-
-:load A
--- we can now see only f
-:type f
-:type g
--- this will tell us we need to load A interpreted
-:module *A
-
--- load A interpreted
-:load *A
-:type f
-:type g
-
-:shell $HC $HC_OPTS -fforce-recomp -c B.hs
-:load B
-:module *A
-:add *A
-:module *A
-:type f
-:type g
diff --git a/testsuite/tests/ghc-regress/ghci/prog010/ghci.prog010.stderr b/testsuite/tests/ghc-regress/ghci/prog010/ghci.prog010.stderr
deleted file mode 100644
index c7cbb1173f..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog010/ghci.prog010.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-<interactive>:1:0: Not in scope: `g'
diff --git a/testsuite/tests/ghc-regress/ghci/prog010/ghci.prog010.stdout b/testsuite/tests/ghc-regress/ghci/prog010/ghci.prog010.stdout
deleted file mode 100644
index ccb6dcd78f..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog010/ghci.prog010.stdout
+++ /dev/null
@@ -1,9 +0,0 @@
-f :: t -> [t]
-g :: a -> Maybe a
-f :: t -> [t]
-module 'A' is not interpreted; try ':add *A' first
-f :: t -> [t]
-g :: a -> Maybe a
-module 'A' is not interpreted; try ':add *A' first
-f :: t -> [t]
-g :: a -> Maybe a
diff --git a/testsuite/tests/ghc-regress/ghci/prog011/Makefile b/testsuite/tests/ghc-regress/ghci/prog011/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog011/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/ghci/prog011/prog011.T b/testsuite/tests/ghc-regress/ghci/prog011/prog011.T
deleted file mode 100644
index c14d457b10..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog011/prog011.T
+++ /dev/null
@@ -1,2 +0,0 @@
-test('prog011', reqlib('mtl'), ghci_script, ['prog011.script'])
-
diff --git a/testsuite/tests/ghc-regress/ghci/prog011/prog011.hx b/testsuite/tests/ghc-regress/ghci/prog011/prog011.hx
deleted file mode 100644
index a9ae3aa347..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog011/prog011.hx
+++ /dev/null
@@ -1,16 +0,0 @@
-:set +m
-:m +Control.Monad.State
-flip evalStateT 10 $ do
- i <- get
- lift $ print i
-
-a <- return "Hello"
-flip evalStateT 11 $ do
- i <- get
- lift $ print i
- lift $ print a
-
-:unset +m
-flip evalStateT 12 $ do
-
-print a
diff --git a/testsuite/tests/ghc-regress/ghci/prog011/prog011.script b/testsuite/tests/ghc-regress/ghci/prog011/prog011.script
deleted file mode 100644
index 011093f314..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog011/prog011.script
+++ /dev/null
@@ -1,3 +0,0 @@
--- test for #1363
-
-:script prog011.hx
diff --git a/testsuite/tests/ghc-regress/ghci/prog011/prog011.stderr b/testsuite/tests/ghc-regress/ghci/prog011/prog011.stderr
deleted file mode 100644
index 6ee1facfdc..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog011/prog011.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-prog011.hx:14:22: Empty 'do' block
diff --git a/testsuite/tests/ghc-regress/ghci/prog011/prog011.stdout b/testsuite/tests/ghc-regress/ghci/prog011/prog011.stdout
deleted file mode 100644
index 5b3671f1f3..0000000000
--- a/testsuite/tests/ghc-regress/ghci/prog011/prog011.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-10
-11
-"Hello"
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/1914.script b/testsuite/tests/ghc-regress/ghci/scripts/1914.script
deleted file mode 100644
index 5a74350341..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/1914.script
+++ /dev/null
@@ -1,16 +0,0 @@
-:set -v1
-System.IO.writeFile "T1914A.hs" "module T1914A where { import T1914B; }"
-System.IO.writeFile "T1914B.hs" "module T1914B where { type T = Int; }"
--- hack: avoid the need for sleep by using specific timestamps:
-:! touch -t 01010000 T1914A.hs
-:! touch -t 01010000 T1914B.hs
-:load T1914A
-System.IO.writeFile "T1914A.hs" "module T1914A where { import T1914B; oops }"
-:! touch -t 01010001 T1914A.hs
-:reload
--- T1914B should still be loaded
-:module *T1914B
-System.IO.writeFile "T1914A.hs" "module T1914A where { import T1914B; }"
-:! touch -t 01010002 T1914A.hs
-:reload
--- should not have to reload T1914B
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/1914.stderr b/testsuite/tests/ghc-regress/ghci/scripts/1914.stderr
deleted file mode 100644
index fe06f7e58f..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/1914.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-T1914A.hs:1:38: Parse error: naked expression at top level
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/1914.stdout b/testsuite/tests/ghc-regress/ghci/scripts/1914.stdout
deleted file mode 100644
index 063758e39c..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/1914.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-[1 of 2] Compiling T1914B ( T1914B.hs, interpreted )
-[2 of 2] Compiling T1914A ( T1914A.hs, interpreted )
-Ok, modules loaded: T1914A, T1914B.
-[2 of 2] Compiling T1914A ( T1914A.hs, interpreted )
-Failed, modules loaded: T1914B.
-[2 of 2] Compiling T1914A ( T1914A.hs, interpreted )
-Ok, modules loaded: T1914A, T1914B.
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/2452.script b/testsuite/tests/ghc-regress/ghci/scripts/2452.script
deleted file mode 100644
index 28d2bdc580..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/2452.script
+++ /dev/null
@@ -1,2 +0,0 @@
-:set -fno-implicit-import-qualified
-:t System.IO.hPutStrLn
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/2452.stderr b/testsuite/tests/ghc-regress/ghci/scripts/2452.stderr
deleted file mode 100644
index 2802ee2bdf..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/2452.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-<interactive>:1:1: Not in scope: `System.IO.hPutStrLn'
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/2816.script b/testsuite/tests/ghc-regress/ghci/scripts/2816.script
deleted file mode 100644
index 5fd8477b64..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/2816.script
+++ /dev/null
@@ -1,5 +0,0 @@
-α
-let α = 4
-α
-4
-:type α
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/2816.stderr b/testsuite/tests/ghc-regress/ghci/scripts/2816.stderr
deleted file mode 100644
index b9c60eea43..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/2816.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-<interactive>:1:1: Not in scope: `α'
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/2816.stdout b/testsuite/tests/ghc-regress/ghci/scripts/2816.stdout
deleted file mode 100644
index 14a53b928e..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/2816.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-4
-4
-α :: Integer
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/2976.script b/testsuite/tests/ghc-regress/ghci/scripts/2976.script
deleted file mode 100644
index f4fe8d7122..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/2976.script
+++ /dev/null
@@ -1,8 +0,0 @@
-let test = 0
-:show bindings
-:force test
-:show bindings
-let test = "test"
-:show bindings
-:force test
-:show bindings
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/2976.stdout b/testsuite/tests/ghc-regress/ghci/scripts/2976.stdout
deleted file mode 100644
index d927ad696c..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/2976.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-test :: Integer = _
-test = 0
-test :: Integer = 0
-test :: [Char] = _
-test = "test"
-test :: [Char] = "test"
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/4051.hs b/testsuite/tests/ghc-regress/ghci/scripts/4051.hs
deleted file mode 100644
index fc9974cb8e..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/4051.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module X' where
-x = 3
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/4051.script b/testsuite/tests/ghc-regress/ghci/scripts/4051.script
deleted file mode 100644
index 545ce8b4d8..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/4051.script
+++ /dev/null
@@ -1,4 +0,0 @@
-:l 4051.hs
-:m -X'
-:m X'
-x
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/4051.stdout b/testsuite/tests/ghc-regress/ghci/scripts/4051.stdout
deleted file mode 100644
index 00750edc07..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/4051.stdout
+++ /dev/null
@@ -1 +0,0 @@
-3
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/Makefile b/testsuite/tests/ghc-regress/ghci/scripts/Makefile
deleted file mode 100644
index 4d012898e0..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/Makefile
+++ /dev/null
@@ -1,33 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-ghci024:
- @echo "~~~~~~~~~~ Testing :set"
- printf ":set\n" \
- | '$(TEST_HC)' $(TEST_HC_OPTS) --interactive -v0 -ignore-dot-ghci \
- | grep -E "^([^ ]| -fno-print-explicit-foralls| -fno-warn-implicit-prelude)"
- @echo "~~~~~~~~~~ Testing :show languages"
- printf ":show languages\n" \
- | '$(TEST_HC)' $(TEST_HC_OPTS) --interactive -v0 -ignore-dot-ghci \
- | grep -E "^([^ ]| -XImplicitPrelude| -XMagicHash)"
- @echo "~~~~~~~~~~ Testing :show languages, with -XMagicHash"
- printf ":set -XMagicHash\n:show languages\n" \
- | '$(TEST_HC)' $(TEST_HC_OPTS) --interactive -v0 -ignore-dot-ghci \
- | grep -E "^([^ ]| -XImplicitPrelude| -XMagicHash)"
- @echo "~~~~~~~~~~ Testing :show packages"
- printf ":show packages\n" \
- | '$(TEST_HC)' $(TEST_HC_OPTS) --interactive -v0 -ignore-dot-ghci \
- | grep -E "^([^ ]| -package|base|ghc-prim|integer|rts|Cabal)" \
- | sed "s/Cabal-[0-9.]*/Cabal-VERSION/"
- @echo "~~~~~~~~~~ Testing :show packages, including the ghc package"
- printf ":set -package ghc\n:show packages\n" \
- | '$(TEST_HC)' $(TEST_HC_OPTS) --interactive -v0 -ignore-dot-ghci \
- | grep -E "^([^ ]| -package|base|ghc-prim|integer|rts|Cabal)" \
- | sed "s/Cabal-[0-9.]*/Cabal-VERSION/"
-
-.PHONY: ghci037
-ghci037:
- '$(TEST_HC)' $(TEST_HC_OPTS) --interactive -v0 -ignore-dot-ghci < ghci037.script
- '$(TEST_HC)' $(TEST_HC_OPTS) --interactive -v0 -ignore-dot-ghci -fno-ghci-sandbox < ghci037.script
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T2766.script b/testsuite/tests/ghc-regress/ghci/scripts/T2766.script
deleted file mode 100644
index 87e9bb3918..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T2766.script
+++ /dev/null
@@ -1,4 +0,0 @@
--- Test Trac #2766
-:set -XTypeOperators
-:m Control.Arrow
-:t first :: Arrow (~>) => b~>c -> (b, d)~>(c, d)
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T2766.stdout b/testsuite/tests/ghc-regress/ghci/scripts/T2766.stdout
deleted file mode 100644
index abe1ca2c95..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T2766.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-first :: Arrow (~>) => b~>c -> (b, d)~>(c, d)
- :: Arrow (~>) => (~>) b c -> (~>) (b, d) (c, d)
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T3263.hs b/testsuite/tests/ghc-regress/ghci/scripts/T3263.hs
deleted file mode 100644
index 237cf42c6d..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T3263.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# OPTIONS_GHC -Wall #-}
-
--- Test Trac #3263
-
-module T3263 where
-
-foo :: IO ()
-foo = do { getChar
- ; return () }
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T3263.script b/testsuite/tests/ghc-regress/ghci/scripts/T3263.script
deleted file mode 100644
index dc13aa6732..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T3263.script
+++ /dev/null
@@ -1 +0,0 @@
-:load T3263
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T3263.stderr b/testsuite/tests/ghc-regress/ghci/scripts/T3263.stderr
deleted file mode 100644
index a7924e4b7f..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T3263.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T3263.hs:8:12:
- Warning: A do-notation statement discarded a result of type Char.
- Suppress this warning by saying "_ <- getChar",
- or by using the flag -fno-warn-unused-do-bind
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T4015.hs b/testsuite/tests/ghc-regress/ghci/scripts/T4015.hs
deleted file mode 100644
index d2968db317..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T4015.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Test (R(..)) where
-
-data R = R { x :: Char, y :: Int, z :: Float }
- | S { x :: Char }
- | T { y :: Int, z:: Float }
- | W
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T4015.script b/testsuite/tests/ghc-regress/ghci/scripts/T4015.script
deleted file mode 100644
index 0ab6f33d1a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T4015.script
+++ /dev/null
@@ -1,9 +0,0 @@
-:l T4015
-:browse
-:i R
-:i S
-:i T
-:i W
-:i x
-:i y
-:i z
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T4015.stdout b/testsuite/tests/ghc-regress/ghci/scripts/T4015.stdout
deleted file mode 100644
index e850fb9384..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T4015.stdout
+++ /dev/null
@@ -1,20 +0,0 @@
-data R
- = R {x :: Char, y :: Int, z :: Float}
- | S {x :: Char}
- | T {y :: Int, z :: Float}
- | W
-data R
- = R {x :: Char, y :: Int, z :: Float}
- | S {x :: Char}
- | T {y :: Int, z :: Float}
- | W
- -- Defined at T4015.hs:3:6
-data R = ... | S {...} | ... -- Defined at T4015.hs:4:10
-data R = ... | T {...} | ... -- Defined at T4015.hs:5:10
-data R = ... | W -- Defined at T4015.hs:6:10
-data R = R {x :: Char, ...} | S {x :: Char} | ...
- -- Defined at T4015.hs:3:14
-data R = R {..., y :: Int, ...} | ... | T {y :: Int, ...} | ...
- -- Defined at T4015.hs:3:25
-data R = R {..., z :: Float} | ... | T {..., z :: Float} | ...
- -- Defined at T4015.hs:3:35
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T4087.hs b/testsuite/tests/ghc-regress/ghci/scripts/T4087.hs
deleted file mode 100644
index b992a9bb20..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T4087.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module T4087 where
-
-data Equal a b where
- Equal :: Equal a a
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T4087.script b/testsuite/tests/ghc-regress/ghci/scripts/T4087.script
deleted file mode 100644
index d1b32ab266..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T4087.script
+++ /dev/null
@@ -1,2 +0,0 @@
-:l T4087
-:i Equal
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T4087.stdout b/testsuite/tests/ghc-regress/ghci/scripts/T4087.stdout
deleted file mode 100644
index d3e3ae9abd..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T4087.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-data Equal a b where
- Equal :: Equal a a
- -- Defined at T4087.hs:5:6-10
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T4127.script b/testsuite/tests/ghc-regress/ghci/scripts/T4127.script
deleted file mode 100644
index 03eb490544..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T4127.script
+++ /dev/null
@@ -1,3 +0,0 @@
-:set -XTemplateHaskell
-Language.Haskell.TH.runQ [d| instance Monad ((,) a) where { return = undefined; (>>=) = undefined } |]
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T4127.stdout b/testsuite/tests/ghc-regress/ghci/scripts/T4127.stdout
deleted file mode 100644
index 9c8f7a1098..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T4127.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[InstanceD [] (AppT (ConT GHC.Base.Monad) (AppT (ConT GHC.Tuple.(,)) (VarT a_0))) [ValD (VarP return) (NormalB (VarE GHC.Err.undefined)) [],ValD (VarP >>=) (NormalB (VarE GHC.Err.undefined)) []]]
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T4127a.script b/testsuite/tests/ghc-regress/ghci/scripts/T4127a.script
deleted file mode 100644
index 3712c6a184..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T4127a.script
+++ /dev/null
@@ -1,2 +0,0 @@
-:set -XTemplateHaskell
-Language.Haskell.TH.runQ $ [d| f = undefined; class Foo x where { f :: x -> x }; instance Foo Int where { f = id } |]
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T4127a.stderr b/testsuite/tests/ghc-regress/ghci/scripts/T4127a.stderr
deleted file mode 100644
index bd96443381..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T4127a.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-<interactive>:1:68:
- Multiple declarations of `f'
- Declared at: <interactive>:1:32
- <interactive>:1:68
-
-<interactive>:1:108: `f' is not a (visible) method of class `Foo'
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T4316.script b/testsuite/tests/ghc-regress/ghci/scripts/T4316.script
deleted file mode 100644
index b620aac653..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T4316.script
+++ /dev/null
@@ -1,23 +0,0 @@
-:set +m
-:m Control.Monad.State
-flip evalStateT 11 $ do
- i <- get
- lift $ do
- putStrLn "Hello, World!"
- print i
-
-
-let f = (+ 1)
-in f 2
-
-
-let f = "Hello, World!"
-
-f
-
-let f = True
-
-case f of
- False -> putStrLn "Failed"
- True -> putStrLn "Pass"
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T4316.stdout b/testsuite/tests/ghc-regress/ghci/scripts/T4316.stdout
deleted file mode 100644
index 06891cb2df..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T4316.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-Hello, World!
-11
-3
-"Hello, World!"
-Pass
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T4832.script b/testsuite/tests/ghc-regress/ghci/scripts/T4832.script
deleted file mode 100644
index 27b1c2fe4a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T4832.script
+++ /dev/null
@@ -1,2 +0,0 @@
-import Control.Applicative
-fmap id id () \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T4832.stdout b/testsuite/tests/ghc-regress/ghci/scripts/T4832.stdout
deleted file mode 100644
index 6a452c185a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T4832.stdout
+++ /dev/null
@@ -1 +0,0 @@
-()
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T5045.hs b/testsuite/tests/ghc-regress/ghci/scripts/T5045.hs
deleted file mode 100644
index a63bead315..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T5045.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-{-# LANGUAGE Arrows, FunctionalDependencies, FlexibleContexts,
- MultiParamTypeClasses, RecordWildCards #-}
-
-module T5045 where
-
-import Control.Arrow
-
-class (Control.Arrow.Arrow a') => ArrowAddReader r a a' | a -> a' where
- elimReader :: a e b -> a' (e, r) b
-
-newtype ByteString = FakeByteString String
-
-pathInfo :: Monad m => m String
-pathInfo = undefined
-
-requestMethod :: Monad m => m String
-requestMethod = undefined
-
-getInputsFPS :: Monad m => m [(String, ByteString)]
-getInputsFPS = undefined
-
-class HTTPRequest r s | r -> s where
- httpGetPath :: r -> String
- httpSetPath :: r -> String -> r
- httpGetMethod :: r -> String
- httpGetInputs :: r -> [(String, s)]
-
-data CGIDispatch = CGIDispatch {
- dispatchPath :: String,
- dispatchMethod :: String,
- dispatchInputs :: [(String, ByteString)] }
-
-instance HTTPRequest CGIDispatch ByteString where
- httpGetPath = dispatchPath
- httpSetPath r s = r { dispatchPath = s }
- httpGetMethod = dispatchMethod
- httpGetInputs = dispatchInputs
-
-runDispatch :: (Arrow a, ArrowAddReader CGIDispatch a a', Monad m) => a b c -> m (a' b c)
-runDispatch a = do
- dispatchPath <- pathInfo
- dispatchMethod <- requestMethod
- dispatchInputs <- getInputsFPS
- return $ proc b -> (| elimReader (a -< b) |) CGIDispatch { .. }
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T5045.script b/testsuite/tests/ghc-regress/ghci/scripts/T5045.script
deleted file mode 100644
index 34e9a58f5a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T5045.script
+++ /dev/null
@@ -1,2 +0,0 @@
-:l T5045.hs
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T5130.script b/testsuite/tests/ghc-regress/ghci/scripts/T5130.script
deleted file mode 100644
index cb4e9d0d6b..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T5130.script
+++ /dev/null
@@ -1,3 +0,0 @@
-:set -XScopedTypeVariables
-(\(x :: a, y :: a) -> [x, "hi"])
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T5130.stderr b/testsuite/tests/ghc-regress/ghci/scripts/T5130.stderr
deleted file mode 100644
index cf9e6b40ce..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T5130.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-<interactive>:1:27:
- Couldn't match type `a' with `[Char]'
- In the expression: "hi"
- In the expression: [x, "hi"]
- In the expression: (\ (x :: a, y :: a) -> [x, "hi"])
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T789.hs b/testsuite/tests/ghc-regress/ghci/scripts/T789.hs
deleted file mode 100644
index 5cb8e4e1ad..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T789.hs
+++ /dev/null
@@ -1,808 +0,0 @@
-
-module Foo where
-
-table = [
- "MARY", "PATRICIA", "LINDA", "BARBARA", "ELIZABETH", "JENNIFER",
- "MARIA", "SUSAN", "MARGARET", "DOROTHY", "LISA", "NANCY", "KAREN",
- "BETTY", "HELEN", "SANDRA", "DONNA", "CAROL", "RUTH", "SHARON",
- "MICHELLE", "LAURA", "SARAH", "KIMBERLY", "DEBORAH", "JESSICA",
- "SHIRLEY", "CYNTHIA", "ANGELA", "MELISSA", "BRENDA", "AMY", "ANNA",
- "REBECCA", "VIRGINIA", "KATHLEEN", "PAMELA", "MARTHA", "DEBRA",
- "AMANDA", "STEPHANIE", "CAROLYN", "CHRISTINE", "MARIE", "JANET",
- "CATHERINE", "FRANCES", "ANN", "JOYCE", "DIANE", "ALICE", "JULIE",
- "HEATHER", "TERESA", "DORIS", "GLORIA", "EVELYN", "JEAN", "CHERYL",
- "MILDRED", "KATHERINE", "JOAN", "ASHLEY", "JUDITH", "ROSE",
- "JANICE", "KELLY", "NICOLE", "JUDY", "CHRISTINA", "KATHY",
- "THERESA", "BEVERLY", "DENISE", "TAMMY", "IRENE", "JANE", "LORI",
- "RACHEL", "MARILYN", "ANDREA", "KATHRYN", "LOUISE", "SARA", "ANNE",
- "JACQUELINE", "WANDA", "BONNIE", "JULIA", "RUBY", "LOIS", "TINA",
- "PHYLLIS", "NORMA", "PAULA", "DIANA", "ANNIE", "LILLIAN", "EMILY",
- "ROBIN", "PEGGY", "CRYSTAL", "GLADYS", "RITA", "DAWN", "CONNIE",
- "FLORENCE", "TRACY", "EDNA", "TIFFANY", "CARMEN", "ROSA", "CINDY",
- "GRACE", "WENDY", "VICTORIA", "EDITH", "KIM", "SHERRY", "SYLVIA",
- "JOSEPHINE", "THELMA", "SHANNON", "SHEILA", "ETHEL", "ELLEN",
- "ELAINE", "MARJORIE", "CARRIE", "CHARLOTTE", "MONICA", "ESTHER",
- "PAULINE", "EMMA", "JUANITA", "ANITA", "RHONDA", "HAZEL", "AMBER",
- "EVA", "DEBBIE", "APRIL", "LESLIE", "CLARA", "LUCILLE", "JAMIE",
- "JOANNE", "ELEANOR", "VALERIE", "DANIELLE", "MEGAN", "ALICIA",
- "SUZANNE", "MICHELE", "GAIL", "BERTHA", "DARLENE", "VERONICA",
- "JILL", "ERIN", "GERALDINE", "LAUREN", "CATHY", "JOANN", "LORRAINE",
- "LYNN", "SALLY", "REGINA", "ERICA", "BEATRICE", "DOLORES",
- "BERNICE", "AUDREY", "YVONNE", "ANNETTE", "JUNE", "SAMANTHA",
- "MARION", "DANA", "STACY", "ANA", "RENEE", "IDA", "VIVIAN",
- "ROBERTA", "HOLLY", "BRITTANY", "MELANIE", "LORETTA", "YOLANDA",
- "JEANETTE", "LAURIE", "KATIE", "KRISTEN", "VANESSA", "ALMA", "SUE",
- "ELSIE", "BETH", "JEANNE", "VICKI", "CARLA", "TARA", "ROSEMARY",
- "EILEEN", "TERRI", "GERTRUDE", "LUCY", "TONYA", "ELLA", "STACEY",
- "WILMA", "GINA", "KRISTIN", "JESSIE", "NATALIE", "AGNES", "VERA",
- "WILLIE", "CHARLENE", "BESSIE", "DELORES", "MELINDA", "PEARL",
- "ARLENE", "MAUREEN", "COLLEEN", "ALLISON", "TAMARA", "JOY",
- "GEORGIA", "CONSTANCE", "LILLIE", "CLAUDIA", "JACKIE", "MARCIA",
- "TANYA", "NELLIE", "MINNIE", "MARLENE", "HEIDI", "GLENDA", "LYDIA",
- "VIOLA", "COURTNEY", "MARIAN", "STELLA", "CAROLINE", "DORA", "JO",
- "VICKIE", "MATTIE", "TERRY", "MAXINE", "IRMA", "MABEL", "MARSHA",
- "MYRTLE", "LENA", "CHRISTY", "DEANNA", "PATSY", "HILDA",
- "GWENDOLYN", "JENNIE", "NORA", "MARGIE", "NINA", "CASSANDRA",
- "LEAH", "PENNY", "KAY", "PRISCILLA", "NAOMI", "CAROLE", "BRANDY",
- "OLGA", "BILLIE", "DIANNE", "TRACEY", "LEONA", "JENNY", "FELICIA",
- "SONIA", "MIRIAM", "VELMA", "BECKY", "BOBBIE", "VIOLET", "KRISTINA",
- "TONI", "MISTY", "MAE", "SHELLY", "DAISY", "RAMONA", "SHERRI",
- "ERIKA", "KATRINA", "CLAIRE", "LINDSEY", "LINDSAY", "GENEVA",
- "GUADALUPE", "BELINDA", "MARGARITA", "SHERYL", "CORA", "FAYE",
- "ADA", "NATASHA", "SABRINA", "ISABEL", "MARGUERITE", "HATTIE",
- "HARRIET", "MOLLY", "CECILIA", "KRISTI", "BRANDI", "BLANCHE",
- "SANDY", "ROSIE", "JOANNA", "IRIS", "EUNICE", "ANGIE", "INEZ",
- "LYNDA", "MADELINE", "AMELIA", "ALBERTA", "GENEVIEVE", "MONIQUE",
- "JODI", "JANIE", "MAGGIE", "KAYLA", "SONYA", "JAN", "LEE",
- "KRISTINE", "CANDACE", "FANNIE", "MARYANN", "OPAL", "ALISON",
- "YVETTE", "MELODY", "LUZ", "SUSIE", "OLIVIA", "FLORA", "SHELLEY",
- "KRISTY", "MAMIE", "LULA", "LOLA", "VERNA", "BEULAH", "ANTOINETTE",
- "CANDICE", "JUANA", "JEANNETTE", "PAM", "KELLI", "HANNAH",
- "WHITNEY", "BRIDGET", "KARLA", "CELIA", "LATOYA", "PATTY", "SHELIA",
- "GAYLE", "DELLA", "VICKY", "LYNNE", "SHERI", "MARIANNE", "KARA",
- "JACQUELYN", "ERMA", "BLANCA", "MYRA", "LETICIA", "PAT", "KRISTA",
- "ROXANNE", "ANGELICA", "JOHNNIE", "ROBYN", "FRANCIS", "ADRIENNE",
- "ROSALIE", "ALEXANDRA", "BROOKE", "BETHANY", "SADIE", "BERNADETTE",
- "TRACI", "JODY", "KENDRA", "JASMINE", "NICHOLE", "RACHAEL",
- "CHELSEA", "MABLE", "ERNESTINE", "MURIEL", "MARCELLA", "ELENA",
- "KRYSTAL", "ANGELINA", "NADINE", "KARI", "ESTELLE", "DIANNA",
- "PAULETTE", "LORA", "MONA", "DOREEN", "ROSEMARIE", "ANGEL",
- "DESIREE", "ANTONIA", "HOPE", "GINGER", "JANIS", "BETSY",
- "CHRISTIE", "FREDA", "MERCEDES", "MEREDITH", "LYNETTE", "TERI",
- "CRISTINA", "EULA", "LEIGH", "MEGHAN", "SOPHIA", "ELOISE",
- "ROCHELLE", "GRETCHEN", "CECELIA", "RAQUEL", "HENRIETTA", "ALYSSA",
- "JANA", "KELLEY", "GWEN", "KERRY", "JENNA", "TRICIA", "LAVERNE",
- "OLIVE", "ALEXIS", "TASHA", "SILVIA", "ELVIRA", "CASEY", "DELIA",
- "SOPHIE", "KATE", "PATTI", "LORENA", "KELLIE", "SONJA", "LILA",
- "LANA", "DARLA", "MAY", "MINDY", "ESSIE", "MANDY", "LORENE", "ELSA",
- "JOSEFINA", "JEANNIE", "MIRANDA", "DIXIE", "LUCIA", "MARTA",
- "FAITH", "LELA", "JOHANNA", "SHARI", "CAMILLE", "TAMI", "SHAWNA",
- "ELISA", "EBONY", "MELBA", "ORA", "NETTIE", "TABITHA", "OLLIE",
- "JAIME", "WINIFRED", "KRISTIE", "MARINA", "ALISHA", "AIMEE", "RENA",
- "MYRNA", "MARLA", "TAMMIE", "LATASHA", "BONITA", "PATRICE", "RONDA",
- "SHERRIE", "ADDIE", "FRANCINE", "DELORIS", "STACIE", "ADRIANA",
- "CHERI", "SHELBY", "ABIGAIL", "CELESTE", "JEWEL", "CARA", "ADELE",
- "REBEKAH", "LUCINDA", "DORTHY", "CHRIS", "EFFIE", "TRINA", "REBA",
- "SHAWN", "SALLIE", "AURORA", "LENORA", "ETTA", "LOTTIE", "KERRI",
- "TRISHA", "NIKKI", "ESTELLA", "FRANCISCA", "JOSIE", "TRACIE",
- "MARISSA", "KARIN", "BRITTNEY", "JANELLE", "LOURDES", "LAUREL",
- "HELENE", "FERN", "ELVA", "CORINNE", "KELSEY", "INA", "BETTIE",
- "ELISABETH", "AIDA", "CAITLIN", "INGRID", "IVA", "EUGENIA",
- "CHRISTA", "GOLDIE", "CASSIE", "MAUDE", "JENIFER", "THERESE",
- "FRANKIE", "DENA", "LORNA", "JANETTE", "LATONYA", "CANDY", "MORGAN",
- "CONSUELO", "TAMIKA", "ROSETTA", "DEBORA", "CHERIE", "POLLY",
- "DINA", "JEWELL", "FAY", "JILLIAN", "DOROTHEA", "NELL", "TRUDY",
- "ESPERANZA", "PATRICA", "KIMBERLEY", "SHANNA", "HELENA", "CAROLINA",
- "CLEO", "STEFANIE", "ROSARIO", "OLA", "JANINE", "MOLLIE", "LUPE",
- "ALISA", "LOU", "MARIBEL", "SUSANNE", "BETTE", "SUSANA", "ELISE",
- "CECILE", "ISABELLE", "LESLEY", "JOCELYN", "PAIGE", "JONI",
- "RACHELLE", "LEOLA", "DAPHNE", "ALTA", "ESTER", "PETRA", "GRACIELA",
- "IMOGENE", "JOLENE", "KEISHA", "LACEY", "GLENNA", "GABRIELA",
- "KERI", "URSULA", "LIZZIE", "KIRSTEN", "SHANA", "ADELINE", "MAYRA",
- "JAYNE", "JACLYN", "GRACIE", "SONDRA", "CARMELA", "MARISA",
- "ROSALIND", "CHARITY", "TONIA", "BEATRIZ", "MARISOL", "CLARICE",
- "JEANINE", "SHEENA", "ANGELINE", "FRIEDA", "LILY", "ROBBIE",
- "SHAUNA", "MILLIE", "CLAUDETTE", "CATHLEEN", "ANGELIA", "GABRIELLE",
- "AUTUMN", "KATHARINE", "SUMMER", "JODIE", "STACI", "LEA", "CHRISTI",
- "JIMMIE", "JUSTINE", "ELMA", "LUELLA", "MARGRET", "DOMINIQUE",
- "SOCORRO", "RENE", "MARTINA", "MARGO", "MAVIS", "CALLIE", "BOBBI",
- "MARITZA", "LUCILE", "LEANNE", "JEANNINE", "DEANA", "AILEEN",
- "LORIE", "LADONNA", "WILLA", "MANUELA", "GALE", "SELMA", "DOLLY",
- "SYBIL", "ABBY", "LARA", "DALE", "IVY", "DEE", "WINNIE", "MARCY",
- "LUISA", "JERI", "MAGDALENA", "OFELIA", "MEAGAN", "AUDRA",
- "MATILDA", "LEILA", "CORNELIA", "BIANCA", "SIMONE", "BETTYE",
- "RANDI", "VIRGIE", "LATISHA", "BARBRA", "GEORGINA", "ELIZA",
- "LEANN", "BRIDGETTE", "RHODA", "HALEY", "ADELA", "NOLA",
- "BERNADINE", "FLOSSIE", "ILA", "GRETA", "RUTHIE", "NELDA",
- "MINERVA", "LILLY", "TERRIE", "LETHA", "HILARY", "ESTELA",
- "VALARIE", "BRIANNA", "ROSALYN", "EARLINE", "CATALINA", "AVA",
- "MIA", "CLARISSA", "LIDIA", "CORRINE", "ALEXANDRIA", "CONCEPCION",
- "TIA", "SHARRON", "RAE", "DONA", "ERICKA", "JAMI", "ELNORA",
- "CHANDRA", "LENORE", "NEVA", "MARYLOU", "MELISA", "TABATHA",
- "SERENA", "AVIS", "ALLIE", "SOFIA", "JEANIE", "ODESSA", "NANNIE",
- "HARRIETT", "LORAINE", "PENELOPE", "MILAGROS", "EMILIA", "BENITA",
- "ALLYSON", "ASHLEE", "TANIA", "TOMMIE", "ESMERALDA", "KARINA",
- "EVE", "PEARLIE", "ZELMA", "MALINDA", "NOREEN", "TAMEKA", "SAUNDRA",
- "HILLARY", "AMIE", "ALTHEA", "ROSALINDA", "JORDAN", "LILIA",
- "ALANA", "GAY", "CLARE", "ALEJANDRA", "ELINOR", "MICHAEL", "LORRIE",
- "JERRI", "DARCY", "EARNESTINE", "CARMELLA", "TAYLOR", "NOEMI",
- "MARCIE", "LIZA", "ANNABELLE", "LOUISA", "EARLENE", "MALLORY",
- "CARLENE", "NITA", "SELENA", "TANISHA", "KATY", "JULIANNE", "JOHN",
- "LAKISHA", "EDWINA", "MARICELA", "MARGERY", "KENYA", "DOLLIE",
- "ROXIE", "ROSLYN", "KATHRINE", "NANETTE", "CHARMAINE", "LAVONNE",
- "ILENE", "KRIS", "TAMMI", "SUZETTE", "CORINE", "KAYE", "JERRY",
- "MERLE", "CHRYSTAL", "LINA", "DEANNE", "LILIAN", "JULIANA", "ALINE",
- "LUANN", "KASEY", "MARYANNE", "EVANGELINE", "COLETTE", "MELVA",
- "LAWANDA", "YESENIA", "NADIA", "MADGE", "KATHIE", "EDDIE",
- "OPHELIA", "VALERIA", "NONA", "MITZI", "MARI", "GEORGETTE",
- "CLAUDINE", "FRAN", "ALISSA", "ROSEANN", "LAKEISHA", "SUSANNA",
- "REVA", "DEIDRE", "CHASITY", "SHEREE", "CARLY", "JAMES", "ELVIA",
- "ALYCE", "DEIRDRE", "GENA", "BRIANA", "ARACELI", "KATELYN",
- "ROSANNE", "WENDI", "TESSA", "BERTA", "MARVA", "IMELDA", "MARIETTA",
- "MARCI", "LEONOR", "ARLINE", "SASHA", "MADELYN", "JANNA",
- "JULIETTE", "DEENA", "AURELIA", "JOSEFA", "AUGUSTA", "LILIANA",
- "YOUNG", "CHRISTIAN", "LESSIE", "AMALIA", "SAVANNAH", "ANASTASIA",
- "VILMA", "NATALIA", "ROSELLA", "LYNNETTE", "CORINA", "ALFREDA",
- "LEANNA", "CAREY", "AMPARO", "COLEEN", "TAMRA", "AISHA", "WILDA",
- "KARYN", "CHERRY", "QUEEN", "MAURA", "MAI", "EVANGELINA", "ROSANNA",
- "HALLIE", "ERNA", "ENID", "MARIANA", "LACY", "JULIET", "JACKLYN",
- "FREIDA", "MADELEINE", "MARA", "HESTER", "CATHRYN", "LELIA",
- "CASANDRA", "BRIDGETT", "ANGELITA", "JANNIE", "DIONNE", "ANNMARIE",
- "KATINA", "BERYL", "PHOEBE", "MILLICENT", "KATHERYN", "DIANN",
- "CARISSA", "MARYELLEN", "LIZ", "LAURI", "HELGA", "GILDA", "ADRIAN",
- "RHEA", "MARQUITA", "HOLLIE", "TISHA", "TAMERA", "ANGELIQUE",
- "FRANCESCA", "BRITNEY", "KAITLIN", "LOLITA", "FLORINE", "ROWENA",
- "REYNA", "TWILA", "FANNY", "JANELL", "INES", "CONCETTA", "BERTIE",
- "ALBA", "BRIGITTE", "ALYSON", "VONDA", "PANSY", "ELBA", "NOELLE",
- "LETITIA", "KITTY", "DEANN", "BRANDIE", "LOUELLA", "LETA",
- "FELECIA", "SHARLENE", "LESA", "BEVERLEY", "ROBERT", "ISABELLA",
- "HERMINIA", "TERRA", "CELINA", "TORI", "OCTAVIA", "JADE", "DENICE",
- "GERMAINE", "SIERRA", "MICHELL", "CORTNEY", "NELLY", "DORETHA",
- "SYDNEY", "DEIDRA", "MONIKA", "LASHONDA", "JUDI", "CHELSEY",
- "ANTIONETTE", "MARGOT", "BOBBY", "ADELAIDE", "NAN", "LEEANN",
- "ELISHA", "DESSIE", "LIBBY", "KATHI", "GAYLA", "LATANYA", "MINA",
- "MELLISA", "KIMBERLEE", "JASMIN", "RENAE", "ZELDA", "ELDA", "MA",
- "JUSTINA", "GUSSIE", "EMILIE", "CAMILLA", "ABBIE", "ROCIO",
- "KAITLYN", "JESSE", "EDYTHE", "ASHLEIGH", "SELINA", "LAKESHA",
- "GERI", "ALLENE", "PAMALA", "MICHAELA", "DAYNA", "CARYN", "ROSALIA",
- "SUN", "JACQULINE", "REBECA", "MARYBETH", "KRYSTLE", "IOLA",
- "DOTTIE", "BENNIE", "BELLE", "AUBREY", "GRISELDA", "ERNESTINA",
- "ELIDA", "ADRIANNE", "DEMETRIA", "DELMA", "CHONG", "JAQUELINE",
- "DESTINY", "ARLEEN", "VIRGINA", "RETHA", "FATIMA", "TILLIE",
- "ELEANORE", "CARI", "TREVA", "BIRDIE", "WILHELMINA", "ROSALEE",
- "MAURINE", "LATRICE", "YONG", "JENA", "TARYN", "ELIA", "DEBBY",
- "MAUDIE", "JEANNA", "DELILAH", "CATRINA", "SHONDA", "HORTENCIA",
- "THEODORA", "TERESITA", "ROBBIN", "DANETTE", "MARYJANE", "FREDDIE",
- "DELPHINE", "BRIANNE", "NILDA", "DANNA", "CINDI", "BESS", "IONA",
- "HANNA", "ARIEL", "WINONA", "VIDA", "ROSITA", "MARIANNA", "WILLIAM",
- "RACHEAL", "GUILLERMINA", "ELOISA", "CELESTINE", "CAREN", "MALISSA",
- "LONA", "CHANTEL", "SHELLIE", "MARISELA", "LEORA", "AGATHA",
- "SOLEDAD", "MIGDALIA", "IVETTE", "CHRISTEN", "ATHENA", "JANEL",
- "CHLOE", "VEDA", "PATTIE", "TESSIE", "TERA", "MARILYNN", "LUCRETIA",
- "KARRIE", "DINAH", "DANIELA", "ALECIA", "ADELINA", "VERNICE",
- "SHIELA", "PORTIA", "MERRY", "LASHAWN", "DEVON", "DARA", "TAWANA",
- "OMA", "VERDA", "CHRISTIN", "ALENE", "ZELLA", "SANDI", "RAFAELA",
- "MAYA", "KIRA", "CANDIDA", "ALVINA", "SUZAN", "SHAYLA", "LYN",
- "LETTIE", "ALVA", "SAMATHA", "ORALIA", "MATILDE", "MADONNA",
- "LARISSA", "VESTA", "RENITA", "INDIA", "DELOIS", "SHANDA",
- "PHILLIS", "LORRI", "ERLINDA", "CRUZ", "CATHRINE", "BARB", "ZOE",
- "ISABELL", "IONE", "GISELA", "CHARLIE", "VALENCIA", "ROXANNA",
- "MAYME", "KISHA", "ELLIE", "MELLISSA", "DORRIS", "DALIA", "BELLA",
- "ANNETTA", "ZOILA", "RETA", "REINA", "LAURETTA", "KYLIE",
- "CHRISTAL", "PILAR", "CHARLA", "ELISSA", "TIFFANI", "TANA",
- "PAULINA", "LEOTA", "BREANNA", "JAYME", "CARMEL", "VERNELL",
- "TOMASA", "MANDI", "DOMINGA", "SANTA", "MELODIE", "LURA", "ALEXA",
- "TAMELA", "RYAN", "MIRNA", "KERRIE", "VENUS", "NOEL", "FELICITA",
- "CRISTY", "CARMELITA", "BERNIECE", "ANNEMARIE", "TIARA", "ROSEANNE",
- "MISSY", "CORI", "ROXANA", "PRICILLA", "KRISTAL", "JUNG", "ELYSE",
- "HAYDEE", "ALETHA", "BETTINA", "MARGE", "GILLIAN", "FILOMENA",
- "CHARLES", "ZENAIDA", "HARRIETTE", "CARIDAD", "VADA", "UNA",
- "ARETHA", "PEARLINE", "MARJORY", "MARCELA", "FLOR", "EVETTE",
- "ELOUISE", "ALINA", "TRINIDAD", "DAVID", "DAMARIS", "CATHARINE",
- "CARROLL", "BELVA", "NAKIA", "MARLENA", "LUANNE", "LORINE", "KARON",
- "DORENE", "DANITA", "BRENNA", "TATIANA", "SAMMIE", "LOUANN",
- "LOREN", "JULIANNA", "ANDRIA", "PHILOMENA", "LUCILA", "LEONORA",
- "DOVIE", "ROMONA", "MIMI", "JACQUELIN", "GAYE", "TONJA", "MISTI",
- "JOE", "GENE", "CHASTITY", "STACIA", "ROXANN", "MICAELA", "NIKITA",
- "MEI", "VELDA", "MARLYS", "JOHNNA", "AURA", "LAVERN", "IVONNE",
- "HAYLEY", "NICKI", "MAJORIE", "HERLINDA", "GEORGE", "ALPHA",
- "YADIRA", "PERLA", "GREGORIA", "DANIEL", "ANTONETTE", "SHELLI",
- "MOZELLE", "MARIAH", "JOELLE", "CORDELIA", "JOSETTE", "CHIQUITA",
- "TRISTA", "LOUIS", "LAQUITA", "GEORGIANA", "CANDI", "SHANON",
- "LONNIE", "HILDEGARD", "CECIL", "VALENTINA", "STEPHANY", "MAGDA",
- "KAROL", "GERRY", "GABRIELLA", "TIANA", "ROMA", "RICHELLE", "RAY",
- "PRINCESS", "OLETA", "JACQUE", "IDELLA", "ALAINA", "SUZANNA",
- "JOVITA", "BLAIR", "TOSHA", "RAVEN", "NEREIDA", "MARLYN", "KYLA",
- "JOSEPH", "DELFINA", "TENA", "STEPHENIE", "SABINA", "NATHALIE",
- "MARCELLE", "GERTIE", "DARLEEN", "THEA", "SHARONDA", "SHANTEL",
- "BELEN", "VENESSA", "ROSALINA", "ONA", "GENOVEVA", "COREY",
- "CLEMENTINE", "ROSALBA", "RENATE", "RENATA", "MI", "IVORY",
- "GEORGIANNA", "FLOY", "DORCAS", "ARIANA", "TYRA", "THEDA", "MARIAM",
- "JULI", "JESICA", "DONNIE", "VIKKI", "VERLA", "ROSELYN", "MELVINA",
- "JANNETTE", "GINNY", "DEBRAH", "CORRIE", "ASIA", "VIOLETA",
- "MYRTIS", "LATRICIA", "COLLETTE", "CHARLEEN", "ANISSA", "VIVIANA",
- "TWYLA", "PRECIOUS", "NEDRA", "LATONIA", "LAN", "HELLEN", "FABIOLA",
- "ANNAMARIE", "ADELL", "SHARYN", "CHANTAL", "NIKI", "MAUD",
- "LIZETTE", "LINDY", "KIA", "KESHA", "JEANA", "DANELLE", "CHARLINE",
- "CHANEL", "CARROL", "VALORIE", "LIA", "DORTHA", "CRISTAL", "SUNNY",
- "LEONE", "LEILANI", "GERRI", "DEBI", "ANDRA", "KESHIA", "IMA",
- "EULALIA", "EASTER", "DULCE", "NATIVIDAD", "LINNIE", "KAMI",
- "GEORGIE", "CATINA", "BROOK", "ALDA", "WINNIFRED", "SHARLA",
- "RUTHANN", "MEAGHAN", "MAGDALENE", "LISSETTE", "ADELAIDA", "VENITA",
- "TRENA", "SHIRLENE", "SHAMEKA", "ELIZEBETH", "DIAN", "SHANTA",
- "MICKEY", "LATOSHA", "CARLOTTA", "WINDY", "SOON", "ROSINA",
- "MARIANN", "LEISA", "JONNIE", "DAWNA", "CATHIE", "BILLY", "ASTRID",
- "SIDNEY", "LAUREEN", "JANEEN", "HOLLI", "FAWN", "VICKEY", "TERESSA",
- "SHANTE", "RUBYE", "MARCELINA", "CHANDA", "CARY", "TERESE",
- "SCARLETT", "MARTY", "MARNIE", "LULU", "LISETTE", "JENIFFER",
- "ELENOR", "DORINDA", "DONITA", "CARMAN", "BERNITA", "ALTAGRACIA",
- "ALETA", "ADRIANNA", "ZORAIDA", "RONNIE", "NICOLA", "LYNDSEY",
- "KENDALL", "JANINA", "CHRISSY", "AMI", "STARLA", "PHYLIS", "PHUONG",
- "KYRA", "CHARISSE", "BLANCH", "SANJUANITA", "RONA", "NANCI",
- "MARILEE", "MARANDA", "CORY", "BRIGETTE", "SANJUANA", "MARITA",
- "KASSANDRA", "JOYCELYN", "IRA", "FELIPA", "CHELSIE", "BONNY",
- "MIREYA", "LORENZA", "KYONG", "ILEANA", "CANDELARIA", "TONY",
- "TOBY", "SHERIE", "OK", "MARK", "LUCIE", "LEATRICE", "LAKESHIA",
- "GERDA", "EDIE", "BAMBI", "MARYLIN", "LAVON", "HORTENSE", "GARNET",
- "EVIE", "TRESSA", "SHAYNA", "LAVINA", "KYUNG", "JEANETTA",
- "SHERRILL", "SHARA", "PHYLISS", "MITTIE", "ANABEL", "ALESIA",
- "THUY", "TAWANDA", "RICHARD", "JOANIE", "TIFFANIE", "LASHANDA",
- "KARISSA", "ENRIQUETA", "DARIA", "DANIELLA", "CORINNA", "ALANNA",
- "ABBEY", "ROXANE", "ROSEANNA", "MAGNOLIA", "LIDA", "KYLE",
- "JOELLEN", "ERA", "CORAL", "CARLEEN", "TRESA", "PEGGIE", "NOVELLA",
- "NILA", "MAYBELLE", "JENELLE", "CARINA", "NOVA", "MELINA",
- "MARQUERITE", "MARGARETTE", "JOSEPHINA", "EVONNE", "DEVIN",
- "CINTHIA", "ALBINA", "TOYA", "TAWNYA", "SHERITA", "SANTOS",
- "MYRIAM", "LIZABETH", "LISE", "KEELY", "JENNI", "GISELLE",
- "CHERYLE", "ARDITH", "ARDIS", "ALESHA", "ADRIANE", "SHAINA",
- "LINNEA", "KAROLYN", "HONG", "FLORIDA", "FELISHA", "DORI", "DARCI",
- "ARTIE", "ARMIDA", "ZOLA", "XIOMARA", "VERGIE", "SHAMIKA", "NENA",
- "NANNETTE", "MAXIE", "LOVIE", "JEANE", "JAIMIE", "INGE", "FARRAH",
- "ELAINA", "CAITLYN", "STARR", "FELICITAS", "CHERLY", "CARYL",
- "YOLONDA", "YASMIN", "TEENA", "PRUDENCE", "PENNIE", "NYDIA",
- "MACKENZIE", "ORPHA", "MARVEL", "LIZBETH", "LAURETTE", "JERRIE",
- "HERMELINDA", "CAROLEE", "TIERRA", "MIRIAN", "META", "MELONY",
- "KORI", "JENNETTE", "JAMILA", "ENA", "ANH", "YOSHIKO", "SUSANNAH",
- "SALINA", "RHIANNON", "JOLEEN", "CRISTINE", "ASHTON", "ARACELY",
- "TOMEKA", "SHALONDA", "MARTI", "LACIE", "KALA", "JADA", "ILSE",
- "HAILEY", "BRITTANI", "ZONA", "SYBLE", "SHERRYL", "RANDY", "NIDIA",
- "MARLO", "KANDICE", "KANDI", "DEB", "DEAN", "AMERICA", "ALYCIA",
- "TOMMY", "RONNA", "NORENE", "MERCY", "JOSE", "INGEBORG", "GIOVANNA",
- "GEMMA", "CHRISTEL", "AUDRY", "ZORA", "VITA", "VAN", "TRISH",
- "STEPHAINE", "SHIRLEE", "SHANIKA", "MELONIE", "MAZIE", "JAZMIN",
- "INGA", "HOA", "HETTIE", "GERALYN", "FONDA", "ESTRELLA", "ADELLA",
- "SU", "SARITA", "RINA", "MILISSA", "MARIBETH", "GOLDA", "EVON",
- "ETHELYN", "ENEDINA", "CHERISE", "CHANA", "VELVA", "TAWANNA",
- "SADE", "MIRTA", "LI", "KARIE", "JACINTA", "ELNA", "DAVINA",
- "CIERRA", "ASHLIE", "ALBERTHA", "TANESHA", "STEPHANI", "NELLE",
- "MINDI", "LU", "LORINDA", "LARUE", "FLORENE", "DEMETRA", "DEDRA",
- "CIARA", "CHANTELLE", "ASHLY", "SUZY", "ROSALVA", "NOELIA", "LYDA",
- "LEATHA", "KRYSTYNA", "KRISTAN", "KARRI", "DARLINE", "DARCIE",
- "CINDA", "CHEYENNE", "CHERRIE", "AWILDA", "ALMEDA", "ROLANDA",
- "LANETTE", "JERILYN", "GISELE", "EVALYN", "CYNDI", "CLETA", "CARIN",
- "ZINA", "ZENA", "VELIA", "TANIKA", "PAUL", "CHARISSA", "THOMAS",
- "TALIA", "MARGARETE", "LAVONDA", "KAYLEE", "KATHLENE", "JONNA",
- "IRENA", "ILONA", "IDALIA", "CANDIS", "CANDANCE", "BRANDEE",
- "ANITRA", "ALIDA", "SIGRID", "NICOLETTE", "MARYJO", "LINETTE",
- "HEDWIG", "CHRISTIANA", "CASSIDY", "ALEXIA", "TRESSIE", "MODESTA",
- "LUPITA", "LITA", "GLADIS", "EVELIA", "DAVIDA", "CHERRI", "CECILY",
- "ASHELY", "ANNABEL", "AGUSTINA", "WANITA", "SHIRLY", "ROSAURA",
- "HULDA", "EUN", "BAILEY", "YETTA", "VERONA", "THOMASINA", "SIBYL",
- "SHANNAN", "MECHELLE", "LUE", "LEANDRA", "LANI", "KYLEE", "KANDY",
- "JOLYNN", "FERNE", "EBONI", "CORENE", "ALYSIA", "ZULA", "NADA",
- "MOIRA", "LYNDSAY", "LORRETTA", "JUAN", "JAMMIE", "HORTENSIA",
- "GAYNELL", "CAMERON", "ADRIA", "VINA", "VICENTA", "TANGELA",
- "STEPHINE", "NORINE", "NELLA", "LIANA", "LESLEE", "KIMBERELY",
- "ILIANA", "GLORY", "FELICA", "EMOGENE", "ELFRIEDE", "EDEN",
- "EARTHA", "CARMA", "BEA", "OCIE", "MARRY", "LENNIE", "KIARA",
- "JACALYN", "CARLOTA", "ARIELLE", "YU", "STAR", "OTILIA", "KIRSTIN",
- "KACEY", "JOHNETTA", "JOEY", "JOETTA", "JERALDINE", "JAUNITA",
- "ELANA", "DORTHEA", "CAMI", "AMADA", "ADELIA", "VERNITA", "TAMAR",
- "SIOBHAN", "RENEA", "RASHIDA", "OUIDA", "ODELL", "NILSA", "MERYL",
- "KRISTYN", "JULIETA", "DANICA", "BREANNE", "AUREA", "ANGLEA",
- "SHERRON", "ODETTE", "MALIA", "LORELEI", "LIN", "LEESA", "KENNA",
- "KATHLYN", "FIONA", "CHARLETTE", "SUZIE", "SHANTELL", "SABRA",
- "RACQUEL", "MYONG", "MIRA", "MARTINE", "LUCIENNE", "LAVADA",
- "JULIANN", "JOHNIE", "ELVERA", "DELPHIA", "CLAIR", "CHRISTIANE",
- "CHAROLETTE", "CARRI", "AUGUSTINE", "ASHA", "ANGELLA", "PAOLA",
- "NINFA", "LEDA", "LAI", "EDA", "SUNSHINE", "STEFANI", "SHANELL",
- "PALMA", "MACHELLE", "LISSA", "KECIA", "KATHRYNE", "KARLENE",
- "JULISSA", "JETTIE", "JENNIFFER", "HUI", "CORRINA", "CHRISTOPHER",
- "CAROLANN", "ALENA", "TESS", "ROSARIA", "MYRTICE", "MARYLEE",
- "LIANE", "KENYATTA", "JUDIE", "JANEY", "IN", "ELMIRA", "ELDORA",
- "DENNA", "CRISTI", "CATHI", "ZAIDA", "VONNIE", "VIVA", "VERNIE",
- "ROSALINE", "MARIELA", "LUCIANA", "LESLI", "KARAN", "FELICE",
- "DENEEN", "ADINA", "WYNONA", "TARSHA", "SHERON", "SHASTA",
- "SHANITA", "SHANI", "SHANDRA", "RANDA", "PINKIE", "PARIS", "NELIDA",
- "MARILOU", "LYLA", "LAURENE", "LACI", "JOI", "JANENE", "DOROTHA",
- "DANIELE", "DANI", "CAROLYNN", "CARLYN", "BERENICE", "AYESHA",
- "ANNELIESE", "ALETHEA", "THERSA", "TAMIKO", "RUFINA", "OLIVA",
- "MOZELL", "MARYLYN", "MADISON", "KRISTIAN", "KATHYRN", "KASANDRA",
- "KANDACE", "JANAE", "GABRIEL", "DOMENICA", "DEBBRA", "DANNIELLE",
- "CHUN", "BUFFY", "BARBIE", "ARCELIA", "AJA", "ZENOBIA", "SHAREN",
- "SHAREE", "PATRICK", "PAGE", "MY", "LAVINIA", "KUM", "KACIE",
- "JACKELINE", "HUONG", "FELISA", "EMELIA", "ELEANORA", "CYTHIA",
- "CRISTIN", "CLYDE", "CLARIBEL", "CARON", "ANASTACIA", "ZULMA",
- "ZANDRA", "YOKO", "TENISHA", "SUSANN", "SHERILYN", "SHAY",
- "SHAWANDA", "SABINE", "ROMANA", "MATHILDA", "LINSEY", "KEIKO",
- "JOANA", "ISELA", "GRETTA", "GEORGETTA", "EUGENIE", "DUSTY",
- "DESIRAE", "DELORA", "CORAZON", "ANTONINA", "ANIKA", "WILLENE",
- "TRACEE", "TAMATHA", "REGAN", "NICHELLE", "MICKIE", "MAEGAN",
- "LUANA", "LANITA", "KELSIE", "EDELMIRA", "BREE", "AFTON", "TEODORA",
- "TAMIE", "SHENA", "MEG", "LINH", "KELI", "KACI", "DANYELLE",
- "BRITT", "ARLETTE", "ALBERTINE", "ADELLE", "TIFFINY", "STORMY",
- "SIMONA", "NUMBERS", "NICOLASA", "NICHOL", "NIA", "NAKISHA", "MEE",
- "MAIRA", "LOREEN", "KIZZY", "JOHNNY", "JAY", "FALLON", "CHRISTENE",
- "BOBBYE", "ANTHONY", "YING", "VINCENZA", "TANJA", "RUBIE", "RONI",
- "QUEENIE", "MARGARETT", "KIMBERLI", "IRMGARD", "IDELL", "HILMA",
- "EVELINA", "ESTA", "EMILEE", "DENNISE", "DANIA", "CARL", "CARIE",
- "ANTONIO", "WAI", "SANG", "RISA", "RIKKI", "PARTICIA", "MUI",
- "MASAKO", "MARIO", "LUVENIA", "LOREE", "LONI", "LIEN", "KEVIN",
- "GIGI", "FLORENCIA", "DORIAN", "DENITA", "DALLAS", "CHI", "BILLYE",
- "ALEXANDER", "TOMIKA", "SHARITA", "RANA", "NIKOLE", "NEOMA",
- "MARGARITE", "MADALYN", "LUCINA", "LAILA", "KALI", "JENETTE",
- "GABRIELE", "EVELYNE", "ELENORA", "CLEMENTINA", "ALEJANDRINA",
- "ZULEMA", "VIOLETTE", "VANNESSA", "THRESA", "RETTA", "PIA",
- "PATIENCE", "NOELLA", "NICKIE", "JONELL", "DELTA", "CHUNG", "CHAYA",
- "CAMELIA", "BETHEL", "ANYA", "ANDREW", "THANH", "SUZANN", "SPRING",
- "SHU", "MILA", "LILLA", "LAVERNA", "KEESHA", "KATTIE", "GIA",
- "GEORGENE", "EVELINE", "ESTELL", "ELIZBETH", "VIVIENNE", "VALLIE",
- "TRUDIE", "STEPHANE", "MICHEL", "MAGALY", "MADIE", "KENYETTA",
- "KARREN", "JANETTA", "HERMINE", "HARMONY", "DRUCILLA", "DEBBI",
- "CELESTINA", "CANDIE", "BRITNI", "BECKIE", "AMINA", "ZITA", "YUN",
- "YOLANDE", "VIVIEN", "VERNETTA", "TRUDI", "SOMMER", "PEARLE",
- "PATRINA", "OSSIE", "NICOLLE", "LOYCE", "LETTY", "LARISA",
- "KATHARINA", "JOSELYN", "JONELLE", "JENELL", "IESHA", "HEIDE",
- "FLORINDA", "FLORENTINA", "FLO", "ELODIA", "DORINE", "BRUNILDA",
- "BRIGID", "ASHLI", "ARDELLA", "TWANA", "THU", "TARAH", "SUNG",
- "SHEA", "SHAVON", "SHANE", "SERINA", "RAYNA", "RAMONITA", "NGA",
- "MARGURITE", "LUCRECIA", "KOURTNEY", "KATI", "JESUS", "JESENIA",
- "DIAMOND", "CRISTA", "AYANA", "ALICA", "ALIA", "VINNIE", "SUELLEN",
- "ROMELIA", "RACHELL", "PIPER", "OLYMPIA", "MICHIKO", "KATHALEEN",
- "JOLIE", "JESSI", "JANESSA", "HANA", "HA", "ELEASE", "CARLETTA",
- "BRITANY", "SHONA", "SALOME", "ROSAMOND", "REGENA", "RAINA", "NGOC",
- "NELIA", "LOUVENIA", "LESIA", "LATRINA", "LATICIA", "LARHONDA",
- "JINA", "JACKI", "HOLLIS", "HOLLEY", "EMMY", "DEEANN", "CORETTA",
- "ARNETTA", "VELVET", "THALIA", "SHANICE", "NETA", "MIKKI", "MICKI",
- "LONNA", "LEANA", "LASHUNDA", "KILEY", "JOYE", "JACQULYN",
- "IGNACIA", "HYUN", "HIROKO", "HENRY", "HENRIETTE", "ELAYNE",
- "DELINDA", "DARNELL", "DAHLIA", "COREEN", "CONSUELA", "CONCHITA",
- "CELINE", "BABETTE", "AYANNA", "ANETTE", "ALBERTINA", "SKYE",
- "SHAWNEE", "SHANEKA", "QUIANA", "PAMELIA", "MIN", "MERRI",
- "MERLENE", "MARGIT", "KIESHA", "KIERA", "KAYLENE", "JODEE",
- "JENISE", "ERLENE", "EMMIE", "ELSE", "DARYL", "DALILA", "DAISEY",
- "CODY", "CASIE", "BELIA", "BABARA", "VERSIE", "VANESA", "SHELBA",
- "SHAWNDA", "SAM", "NORMAN", "NIKIA", "NAOMA", "MARNA", "MARGERET",
- "MADALINE", "LAWANA", "KINDRA", "JUTTA", "JAZMINE", "JANETT",
- "HANNELORE", "GLENDORA", "GERTRUD", "GARNETT", "FREEDA",
- "FREDERICA", "FLORANCE", "FLAVIA", "DENNIS", "CARLINE", "BEVERLEE",
- "ANJANETTE", "VALDA", "TRINITY", "TAMALA", "STEVIE", "SHONNA",
- "SHA", "SARINA", "ONEIDA", "MICAH", "MERILYN", "MARLEEN", "LURLINE",
- "LENNA", "KATHERIN", "JIN", "JENI", "HAE", "GRACIA", "GLADY",
- "FARAH", "ERIC", "ENOLA", "EMA", "DOMINQUE", "DEVONA", "DELANA",
- "CECILA", "CAPRICE", "ALYSHA", "ALI", "ALETHIA", "VENA", "THERESIA",
- "TAWNY", "SONG", "SHAKIRA", "SAMARA", "SACHIKO", "RACHELE",
- "PAMELLA", "NICKY", "MARNI", "MARIEL", "MAREN", "MALISA", "LIGIA",
- "LERA", "LATORIA", "LARAE", "KIMBER", "KATHERN", "KAREY",
- "JENNEFER", "JANETH", "HALINA", "FREDIA", "DELISA", "DEBROAH",
- "CIERA", "CHIN", "ANGELIKA", "ANDREE", "ALTHA", "YEN", "VIVAN",
- "TERRESA", "TANNA", "SUK", "SUDIE", "SOO", "SIGNE", "SALENA",
- "RONNI", "REBBECCA", "MYRTIE", "MCKENZIE", "MALIKA", "MAIDA",
- "LOAN", "LEONARDA", "KAYLEIGH", "FRANCE", "ETHYL", "ELLYN", "DAYLE",
- "CAMMIE", "BRITTNI", "BIRGIT", "AVELINA", "ASUNCION", "ARIANNA",
- "AKIKO", "VENICE", "TYESHA", "TONIE", "TIESHA", "TAKISHA",
- "STEFFANIE", "SINDY", "SANTANA", "MEGHANN", "MANDA", "MACIE",
- "LADY", "KELLYE", "KELLEE", "JOSLYN", "JASON", "INGER", "INDIRA",
- "GLINDA", "GLENNIS", "FERNANDA", "FAUSTINA", "ENEIDA", "ELICIA",
- "DOT", "DIGNA", "DELL", "ARLETTA", "ANDRE", "WILLIA", "TAMMARA",
- "TABETHA", "SHERRELL", "SARI", "REFUGIO", "REBBECA", "PAULETTA",
- "NIEVES", "NATOSHA", "NAKITA", "MAMMIE", "KENISHA", "KAZUKO",
- "KASSIE", "GARY", "EARLEAN", "DAPHINE", "CORLISS", "CLOTILDE",
- "CAROLYNE", "BERNETTA", "AUGUSTINA", "AUDREA", "ANNIS", "ANNABELL",
- "YAN", "TENNILLE", "TAMICA", "SELENE", "SEAN", "ROSANA", "REGENIA",
- "QIANA", "MARKITA", "MACY", "LEEANNE", "LAURINE", "KYM", "JESSENIA",
- "JANITA", "GEORGINE", "GENIE", "EMIKO", "ELVIE", "DEANDRA",
- "DAGMAR", "CORIE", "COLLEN", "CHERISH", "ROMAINE", "PORSHA",
- "PEARLENE", "MICHELINE", "MERNA", "MARGORIE", "MARGARETTA", "LORE",
- "KENNETH", "JENINE", "HERMINA", "FREDERICKA", "ELKE", "DRUSILLA",
- "DORATHY", "DIONE", "DESIRE", "CELENA", "BRIGIDA", "ANGELES",
- "ALLEGRA", "THEO", "TAMEKIA", "SYNTHIA", "STEPHEN", "SOOK",
- "SLYVIA", "ROSANN", "REATHA", "RAYE", "MARQUETTA", "MARGART",
- "LING", "LAYLA", "KYMBERLY", "KIANA", "KAYLEEN", "KATLYN", "KARMEN",
- "JOELLA", "IRINA", "EMELDA", "ELENI", "DETRA", "CLEMMIE", "CHERYLL",
- "CHANTELL", "CATHEY", "ARNITA", "ARLA", "ANGLE", "ANGELIC", "ALYSE",
- "ZOFIA", "THOMASINE", "TENNIE", "SON", "SHERLY", "SHERLEY",
- "SHARYL", "REMEDIOS", "PETRINA", "NICKOLE", "MYUNG", "MYRLE",
- "MOZELLA", "LOUANNE", "LISHA", "LATIA", "LANE", "KRYSTA",
- "JULIENNE", "JOEL", "JEANENE", "JACQUALINE", "ISAURA", "GWENDA",
- "EARLEEN", "DONALD", "CLEOPATRA", "CARLIE", "AUDIE", "ANTONIETTA",
- "ALISE", "ALEX", "VERDELL", "VAL", "TYLER", "TOMOKO", "THAO",
- "TALISHA", "STEVEN", "SO", "SHEMIKA", "SHAUN", "SCARLET", "SAVANNA",
- "SANTINA", "ROSIA", "RAEANN", "ODILIA", "NANA", "MINNA", "MAGAN",
- "LYNELLE", "LE", "KARMA", "JOEANN", "IVANA", "INELL", "ILANA",
- "HYE", "HONEY", "HEE", "GUDRUN", "FRANK", "DREAMA", "CRISSY",
- "CHANTE", "CARMELINA", "ARVILLA", "ARTHUR", "ANNAMAE", "ALVERA",
- "ALEIDA", "AARON", "YEE", "YANIRA", "VANDA", "TIANNA", "TAM",
- "STEFANIA", "SHIRA", "PERRY", "NICOL", "NANCIE", "MONSERRATE",
- "MINH", "MELYNDA", "MELANY", "MATTHEW", "LOVELLA", "LAURE", "KIRBY",
- "KACY", "JACQUELYNN", "HYON", "GERTHA", "FRANCISCO", "ELIANA",
- "CHRISTENA", "CHRISTEEN", "CHARISE", "CATERINA", "CARLEY",
- "CANDYCE", "ARLENA", "AMMIE", "YANG", "WILLETTE", "VANITA", "TUYET",
- "TINY", "SYREETA", "SILVA", "SCOTT", "RONALD", "PENNEY", "NYLA",
- "MICHAL", "MAURICE", "MARYAM", "MARYA", "MAGEN", "LUDIE", "LOMA",
- "LIVIA", "LANELL", "KIMBERLIE", "JULEE", "DONETTA", "DIEDRA",
- "DENISHA", "DEANE", "DAWNE", "CLARINE", "CHERRYL", "BRONWYN",
- "BRANDON", "ALLA", "VALERY", "TONDA", "SUEANN", "SORAYA",
- "SHOSHANA", "SHELA", "SHARLEEN", "SHANELLE", "NERISSA", "MICHEAL",
- "MERIDITH", "MELLIE", "MAYE", "MAPLE", "MAGARET", "LUIS", "LILI",
- "LEONILA", "LEONIE", "LEEANNA", "LAVONIA", "LAVERA", "KRISTEL",
- "KATHEY", "KATHE", "JUSTIN", "JULIAN", "JIMMY", "JANN", "ILDA",
- "HILDRED", "HILDEGARDE", "GENIA", "FUMIKO", "EVELIN", "ERMELINDA",
- "ELLY", "DUNG", "DOLORIS", "DIONNA", "DANAE", "BERNEICE", "ANNICE",
- "ALIX", "VERENA", "VERDIE", "TRISTAN", "SHAWNNA", "SHAWANA",
- "SHAUNNA", "ROZELLA", "RANDEE", "RANAE", "MILAGRO", "LYNELL",
- "LUISE", "LOUIE", "LOIDA", "LISBETH", "KARLEEN", "JUNITA", "JONA",
- "ISIS", "HYACINTH", "HEDY", "GWENN", "ETHELENE", "ERLINE", "EDWARD",
- "DONYA", "DOMONIQUE", "DELICIA", "DANNETTE", "CICELY", "BRANDA",
- "BLYTHE", "BETHANN", "ASHLYN", "ANNALEE", "ALLINE", "YUKO", "VELLA",
- "TRANG", "TOWANDA", "TESHA", "SHERLYN", "NARCISA", "MIGUELINA",
- "MERI", "MAYBELL", "MARLANA", "MARGUERITA", "MADLYN", "LUNA",
- "LORY", "LORIANN", "LIBERTY", "LEONORE", "LEIGHANN", "LAURICE",
- "LATESHA", "LARONDA", "KATRICE", "KASIE", "KARL", "KALEY",
- "JADWIGA", "GLENNIE", "GEARLDINE", "FRANCINA", "EPIFANIA", "DYAN",
- "DORIE", "DIEDRE", "DENESE", "DEMETRICE", "DELENA", "DARBY",
- "CRISTIE", "CLEORA", "CATARINA", "CARISA", "BERNIE", "BARBERA",
- "ALMETA", "TRULA", "TEREASA", "SOLANGE", "SHEILAH", "SHAVONNE",
- "SANORA", "ROCHELL", "MATHILDE", "MARGARETA", "MAIA", "LYNSEY",
- "LAWANNA", "LAUNA", "KENA", "KEENA", "KATIA", "JAMEY", "GLYNDA",
- "GAYLENE", "ELVINA", "ELANOR", "DANUTA", "DANIKA", "CRISTEN",
- "CORDIE", "COLETTA", "CLARITA", "CARMON", "BRYNN", "AZUCENA",
- "AUNDREA", "ANGELE", "YI", "WALTER", "VERLIE", "VERLENE", "TAMESHA",
- "SILVANA", "SEBRINA", "SAMIRA", "REDA", "RAYLENE", "PENNI",
- "PANDORA", "NORAH", "NOMA", "MIREILLE", "MELISSIA", "MARYALICE",
- "LARAINE", "KIMBERY", "KARYL", "KARINE", "KAM", "JOLANDA", "JOHANA",
- "JESUSA", "JALEESA", "JAE", "JACQUELYNE", "IRISH", "ILUMINADA",
- "HILARIA", "HANH", "GENNIE", "FRANCIE", "FLORETTA", "EXIE", "EDDA",
- "DREMA", "DELPHA", "BEV", "BARBAR", "ASSUNTA", "ARDELL", "ANNALISA",
- "ALISIA", "YUKIKO", "YOLANDO", "WONDA", "WEI", "WALTRAUD", "VETA",
- "TEQUILA", "TEMEKA", "TAMEIKA", "SHIRLEEN", "SHENITA", "PIEDAD",
- "OZELLA", "MIRTHA", "MARILU", "KIMIKO", "JULIANE", "JENICE", "JEN",
- "JANAY", "JACQUILINE", "HILDE", "FE", "FAE", "EVAN", "EUGENE",
- "ELOIS", "ECHO", "DEVORAH", "CHAU", "BRINDA", "BETSEY", "ARMINDA",
- "ARACELIS", "APRYL", "ANNETT", "ALISHIA", "VEOLA", "USHA",
- "TOSHIKO", "THEOLA", "TASHIA", "TALITHA", "SHERY", "RUDY",
- "RENETTA", "REIKO", "RASHEEDA", "OMEGA", "OBDULIA", "MIKA",
- "MELAINE", "MEGGAN", "MARTIN", "MARLEN", "MARGET", "MARCELINE",
- "MANA", "MAGDALEN", "LIBRADA", "LEZLIE", "LEXIE", "LATASHIA",
- "LASANDRA", "KELLE", "ISIDRA", "ISA", "INOCENCIA", "GWYN",
- "FRANCOISE", "ERMINIA", "ERINN", "DIMPLE", "DEVORA", "CRISELDA",
- "ARMANDA", "ARIE", "ARIANE", "ANGELO", "ANGELENA", "ALLEN", "ALIZA",
- "ADRIENE", "ADALINE", "XOCHITL", "TWANNA", "TRAN", "TOMIKO",
- "TAMISHA", "TAISHA", "SUSY", "SIU", "RUTHA", "ROXY", "RHONA",
- "RAYMOND", "OTHA", "NORIKO", "NATASHIA", "MERRIE", "MELVIN",
- "MARINDA", "MARIKO", "MARGERT", "LORIS", "LIZZETTE", "LEISHA",
- "KAILA", "KA", "JOANNIE", "JERRICA", "JENE", "JANNET", "JANEE",
- "JACINDA", "HERTA", "ELENORE", "DORETTA", "DELAINE", "DANIELL",
- "CLAUDIE", "CHINA", "BRITTA", "APOLONIA", "AMBERLY", "ALEASE",
- "YURI", "YUK", "WEN", "WANETA", "UTE", "TOMI", "SHARRI", "SANDIE",
- "ROSELLE", "REYNALDA", "RAGUEL", "PHYLICIA", "PATRIA", "OLIMPIA",
- "ODELIA", "MITZIE", "MITCHELL", "MISS", "MINDA", "MIGNON", "MICA",
- "MENDY", "MARIVEL", "MAILE", "LYNETTA", "LAVETTE", "LAURYN",
- "LATRISHA", "LAKIESHA", "KIERSTEN", "KARY", "JOSPHINE", "JOLYN",
- "JETTA", "JANISE", "JACQUIE", "IVELISSE", "GLYNIS", "GIANNA",
- "GAYNELLE", "EMERALD", "DEMETRIUS", "DANYELL", "DANILLE", "DACIA",
- "CORALEE", "CHER", "CEOLA", "BRETT", "BELL", "ARIANNE", "ALESHIA",
- "YUNG", "WILLIEMAE", "TROY", "TRINH", "THORA", "TAI", "SVETLANA",
- "SHERIKA", "SHEMEKA", "SHAUNDA", "ROSELINE", "RICKI", "MELDA",
- "MALLIE", "LAVONNA", "LATINA", "LARRY", "LAQUANDA", "LALA",
- "LACHELLE", "KLARA", "KANDIS", "JOHNA", "JEANMARIE", "JAYE", "HANG",
- "GRAYCE", "GERTUDE", "EMERITA", "EBONIE", "CLORINDA", "CHING",
- "CHERY", "CAROLA", "BREANN", "BLOSSOM", "BERNARDINE", "BECKI",
- "ARLETHA", "ARGELIA", "ARA", "ALITA", "YULANDA", "YON", "YESSENIA",
- "TOBI", "TASIA", "SYLVIE", "SHIRL", "SHIRELY", "SHERIDAN", "SHELLA",
- "SHANTELLE", "SACHA", "ROYCE", "REBECKA", "REAGAN", "PROVIDENCIA",
- "PAULENE", "MISHA", "MIKI", "MARLINE", "MARICA", "LORITA",
- "LATOYIA", "LASONYA", "KERSTIN", "KENDA", "KEITHA", "KATHRIN",
- "JAYMIE", "JACK", "GRICELDA", "GINETTE", "ERYN", "ELINA",
- "ELFRIEDA", "DANYEL", "CHEREE", "CHANELLE", "BARRIE", "AVERY",
- "AURORE", "ANNAMARIA", "ALLEEN", "AILENE", "AIDE", "YASMINE",
- "VASHTI", "VALENTINE", "TREASA", "TORY", "TIFFANEY", "SHERYLL",
- "SHARIE", "SHANAE", "SAU", "RAISA", "PA", "NEDA", "MITSUKO",
- "MIRELLA", "MILDA", "MARYANNA", "MARAGRET", "MABELLE", "LUETTA",
- "LORINA", "LETISHA", "LATARSHA", "LANELLE", "LAJUANA", "KRISSY",
- "KARLY", "KARENA", "JON", "JESSIKA", "JERICA", "JEANELLE",
- "JANUARY", "JALISA", "JACELYN", "IZOLA", "IVEY", "GREGORY", "EUNA",
- "ETHA", "DREW", "DOMITILA", "DOMINICA", "DAINA", "CREOLA", "CARLI",
- "CAMIE", "BUNNY", "BRITTNY", "ASHANTI", "ANISHA", "ALEEN", "ADAH",
- "YASUKO", "WINTER", "VIKI", "VALRIE", "TONA", "TINISHA", "THI",
- "TERISA", "TATUM", "TANEKA", "SIMONNE", "SHALANDA", "SERITA",
- "RESSIE", "REFUGIA", "PAZ", "OLENE", "NA", "MERRILL", "MARGHERITA",
- "MANDIE", "MAN", "MAIRE", "LYNDIA", "LUCI", "LORRIANE", "LORETA",
- "LEONIA", "LAVONA", "LASHAWNDA", "LAKIA", "KYOKO", "KRYSTINA",
- "KRYSTEN", "KENIA", "KELSI", "JUDE", "JEANICE", "ISOBEL",
- "GEORGIANN", "GENNY", "FELICIDAD", "EILENE", "DEON", "DELOISE",
- "DEEDEE", "DANNIE", "CONCEPTION", "CLORA", "CHERILYN", "CHANG",
- "CALANDRA", "BERRY", "ARMANDINA", "ANISA", "ULA", "TIMOTHY",
- "TIERA", "THERESSA", "STEPHANIA", "SIMA", "SHYLA", "SHONTA",
- "SHERA", "SHAQUITA", "SHALA", "SAMMY", "ROSSANA", "NOHEMI", "NERY",
- "MORIAH", "MELITA", "MELIDA", "MELANI", "MARYLYNN", "MARISHA",
- "MARIETTE", "MALORIE", "MADELENE", "LUDIVINA", "LORIA", "LORETTE",
- "LORALEE", "LIANNE", "LEON", "LAVENIA", "LAURINDA", "LASHON", "KIT",
- "KIMI", "KEILA", "KATELYNN", "KAI", "JONE", "JOANE", "JI", "JAYNA",
- "JANELLA", "JA", "HUE", "HERTHA", "FRANCENE", "ELINORE", "DESPINA",
- "DELSIE", "DEEDRA", "CLEMENCIA", "CARRY", "CAROLIN", "CARLOS",
- "BULAH", "BRITTANIE", "BOK", "BLONDELL", "BIBI", "BEAULAH", "BEATA",
- "ANNITA", "AGRIPINA", "VIRGEN", "VALENE", "UN", "TWANDA", "TOMMYE",
- "TOI", "TARRA", "TARI", "TAMMERA", "SHAKIA", "SADYE", "RUTHANNE",
- "ROCHEL", "RIVKA", "PURA", "NENITA", "NATISHA", "MING", "MERRILEE",
- "MELODEE", "MARVIS", "LUCILLA", "LEENA", "LAVETA", "LARITA",
- "LANIE", "KEREN", "ILEEN", "GEORGEANN", "GENNA", "GENESIS", "FRIDA",
- "EWA", "EUFEMIA", "EMELY", "ELA", "EDYTH", "DEONNA", "DEADRA",
- "DARLENA", "CHANELL", "CHAN", "CATHERN", "CASSONDRA", "CASSAUNDRA",
- "BERNARDA", "BERNA", "ARLINDA", "ANAMARIA", "ALBERT", "WESLEY",
- "VERTIE", "VALERI", "TORRI", "TATYANA", "STASIA", "SHERISE",
- "SHERILL", "SEASON", "SCOTTIE", "SANDA", "RUTHE", "ROSY", "ROBERTO",
- "ROBBI", "RANEE", "QUYEN", "PEARLY", "PALMIRA", "ONITA", "NISHA",
- "NIESHA", "NIDA", "NEVADA", "NAM", "MERLYN", "MAYOLA", "MARYLOUISE",
- "MARYLAND", "MARX", "MARTH", "MARGENE", "MADELAINE", "LONDA",
- "LEONTINE", "LEOMA", "LEIA", "LAWRENCE", "LAURALEE", "LANORA",
- "LAKITA", "KIYOKO", "KETURAH", "KATELIN", "KAREEN", "JONIE",
- "JOHNETTE", "JENEE", "JEANETT", "IZETTA", "HIEDI", "HEIKE",
- "HASSIE", "HAROLD", "GIUSEPPINA", "GEORGANN", "FIDELA", "FERNANDE",
- "ELWANDA", "ELLAMAE", "ELIZ", "DUSTI", "DOTTY", "CYNDY", "CORALIE",
- "CELESTA", "ARGENTINA", "ALVERTA", "XENIA", "WAVA", "VANETTA",
- "TORRIE", "TASHINA", "TANDY", "TAMBRA", "TAMA", "STEPANIE", "SHILA",
- "SHAUNTA", "SHARAN", "SHANIQUA", "SHAE", "SETSUKO", "SERAFINA",
- "SANDEE", "ROSAMARIA", "PRISCILA", "OLINDA", "NADENE", "MUOI",
- "MICHELINA", "MERCEDEZ", "MARYROSE", "MARIN", "MARCENE", "MAO",
- "MAGALI", "MAFALDA", "LOGAN", "LINN", "LANNIE", "KAYCE", "KAROLINE",
- "KAMILAH", "KAMALA", "JUSTA", "JOLINE", "JENNINE", "JACQUETTA",
- "IRAIDA", "GERALD", "GEORGEANNA", "FRANCHESCA", "FAIRY", "EMELINE",
- "ELANE", "EHTEL", "EARLIE", "DULCIE", "DALENE", "CRIS", "CLASSIE",
- "CHERE", "CHARIS", "CAROYLN", "CARMINA", "CARITA", "BRIAN",
- "BETHANIE", "AYAKO", "ARICA", "AN", "ALYSA", "ALESSANDRA", "AKILAH",
- "ADRIEN", "ZETTA", "YOULANDA", "YELENA", "YAHAIRA", "XUAN",
- "WENDOLYN", "VICTOR", "TIJUANA", "TERRELL", "TERINA", "TERESIA",
- "SUZI", "SUNDAY", "SHERELL", "SHAVONDA", "SHAUNTE", "SHARDA",
- "SHAKITA", "SENA", "RYANN", "RUBI", "RIVA", "REGINIA", "REA",
- "RACHAL", "PARTHENIA", "PAMULA", "MONNIE", "MONET", "MICHAELE",
- "MELIA", "MARINE", "MALKA", "MAISHA", "LISANDRA", "LEO", "LEKISHA",
- "LEAN", "LAURENCE", "LAKENDRA", "KRYSTIN", "KORTNEY", "KIZZIE",
- "KITTIE", "KERA", "KENDAL", "KEMBERLY", "KANISHA", "JULENE", "JULE",
- "JOSHUA", "JOHANNE", "JEFFREY", "JAMEE", "HAN", "HALLEY", "GIDGET",
- "GALINA", "FREDRICKA", "FLETA", "FATIMAH", "EUSEBIA", "ELZA",
- "ELEONORE", "DORTHEY", "DORIA", "DONELLA", "DINORAH", "DELORSE",
- "CLARETHA", "CHRISTINIA", "CHARLYN", "BONG", "BELKIS", "AZZIE",
- "ANDERA", "AIKO", "ADENA", "YER", "YAJAIRA", "WAN", "VANIA",
- "ULRIKE", "TOSHIA", "TIFANY", "STEFANY", "SHIZUE", "SHENIKA",
- "SHAWANNA", "SHAROLYN", "SHARILYN", "SHAQUANA", "SHANTAY", "SEE",
- "ROZANNE", "ROSELEE", "RICKIE", "REMONA", "REANNA", "RAELENE",
- "QUINN", "PHUNG", "PETRONILA", "NATACHA", "NANCEY", "MYRL",
- "MIYOKO", "MIESHA", "MERIDETH", "MARVELLA", "MARQUITTA", "MARHTA",
- "MARCHELLE", "LIZETH", "LIBBIE", "LAHOMA", "LADAWN", "KINA",
- "KATHELEEN", "KATHARYN", "KARISA", "KALEIGH", "JUNIE", "JULIEANN",
- "JOHNSIE", "JANEAN", "JAIMEE", "JACKQUELINE", "HISAKO", "HERMA",
- "HELAINE", "GWYNETH", "GLENN", "GITA", "EUSTOLIA", "EMELINA",
- "ELIN", "EDRIS", "DONNETTE", "DONNETTA", "DIERDRE", "DENAE",
- "DARCEL", "CLAUDE", "CLARISA", "CINDERELLA", "CHIA", "CHARLESETTA",
- "CHARITA", "CELSA", "CASSY", "CASSI", "CARLEE", "BRUNA",
- "BRITTANEY", "BRANDE", "BILLI", "BAO", "ANTONETTA", "ANGLA",
- "ANGELYN", "ANALISA", "ALANE", "WENONA", "WENDIE", "VERONIQUE",
- "VANNESA", "TOBIE", "TEMPIE", "SUMIKO", "SULEMA", "SPARKLE",
- "SOMER", "SHEBA", "SHAYNE", "SHARICE", "SHANEL", "SHALON", "SAGE",
- "ROY", "ROSIO", "ROSELIA", "RENAY", "REMA", "REENA", "PORSCHE",
- "PING", "PEG", "OZIE", "ORETHA", "ORALEE", "ODA", "NU", "NGAN",
- "NAKESHA", "MILLY", "MARYBELLE", "MARLIN", "MARIS", "MARGRETT",
- "MARAGARET", "MANIE", "LURLENE", "LILLIA", "LIESELOTTE", "LAVELLE",
- "LASHAUNDA", "LAKEESHA", "KEITH", "KAYCEE", "KALYN", "JOYA",
- "JOETTE", "JENAE", "JANIECE", "ILLA", "GRISEL", "GLAYDS", "GENEVIE",
- "GALA", "FREDDA", "FRED", "ELMER", "ELEONOR", "DEBERA", "DEANDREA",
- "DAN", "CORRINNE", "CORDIA", "CONTESSA", "COLENE", "CLEOTILDE",
- "CHARLOTT", "CHANTAY", "CECILLE", "BEATRIS", "AZALEE", "ARLEAN",
- "ARDATH", "ANJELICA", "ANJA", "ALFREDIA", "ALEISHA", "ADAM", "ZADA",
- "YUONNE", "XIAO", "WILLODEAN", "WHITLEY", "VENNIE", "VANNA",
- "TYISHA", "TOVA", "TORIE", "TONISHA", "TILDA", "TIEN", "TEMPLE",
- "SIRENA", "SHERRIL", "SHANTI", "SHAN", "SENAIDA", "SAMELLA",
- "ROBBYN", "RENDA", "REITA", "PHEBE", "PAULITA", "NOBUKO", "NGUYET",
- "NEOMI", "MOON", "MIKAELA", "MELANIA", "MAXIMINA", "MARG", "MAISIE",
- "LYNNA", "LILLI", "LAYNE", "LASHAUN", "LAKENYA", "LAEL", "KIRSTIE",
- "KATHLINE", "KASHA", "KARLYN", "KARIMA", "JOVAN", "JOSEFINE",
- "JENNELL", "JACQUI", "JACKELYN", "HYO", "HIEN", "GRAZYNA",
- "FLORRIE", "FLORIA", "ELEONORA", "DWANA", "DORLA", "DONG", "DELMY",
- "DEJA", "DEDE", "DANN", "CRYSTA", "CLELIA", "CLARIS", "CLARENCE",
- "CHIEKO", "CHERLYN", "CHERELLE", "CHARMAIN", "CHARA", "CAMMY",
- "BEE", "ARNETTE", "ARDELLE", "ANNIKA", "AMIEE", "AMEE", "ALLENA",
- "YVONE", "YUKI", "YOSHIE", "YEVETTE", "YAEL", "WILLETTA", "VONCILE",
- "VENETTA", "TULA", "TONETTE", "TIMIKA", "TEMIKA", "TELMA", "TEISHA",
- "TAREN", "TA", "STACEE", "SHIN", "SHAWNTA", "SATURNINA", "RICARDA",
- "POK", "PASTY", "ONIE", "NUBIA", "MORA", "MIKE", "MARIELLE",
- "MARIELLA", "MARIANELA", "MARDELL", "MANY", "LUANNA", "LOISE",
- "LISABETH", "LINDSY", "LILLIANA", "LILLIAM", "LELAH", "LEIGHA",
- "LEANORA", "LANG", "KRISTEEN", "KHALILAH", "KEELEY", "KANDRA",
- "JUNKO", "JOAQUINA", "JERLENE", "JANI", "JAMIKA", "JAME", "HSIU",
- "HERMILA", "GOLDEN", "GENEVIVE", "EVIA", "EUGENA", "EMMALINE",
- "ELFREDA", "ELENE", "DONETTE", "DELCIE", "DEEANNA", "DARCEY", "CUC",
- "CLARINDA", "CIRA", "CHAE", "CELINDA", "CATHERYN", "CATHERIN",
- "CASIMIRA", "CARMELIA", "CAMELLIA", "BREANA", "BOBETTE",
- "BERNARDINA", "BEBE", "BASILIA", "ARLYNE", "AMAL", "ALAYNA",
- "ZONIA", "ZENIA", "YURIKO", "YAEKO", "WYNELL", "WILLOW", "WILLENA",
- "VERNIA", "TU", "TRAVIS", "TORA", "TERRILYN", "TERICA", "TENESHA",
- "TAWNA", "TAJUANA", "TAINA", "STEPHNIE", "SONA", "SOL", "SINA",
- "SHONDRA", "SHIZUKO", "SHERLENE", "SHERICE", "SHARIKA", "ROSSIE",
- "ROSENA", "RORY", "RIMA", "RIA", "RHEBA", "RENNA", "PETER",
- "NATALYA", "NANCEE", "MELODI", "MEDA", "MAXIMA", "MATHA",
- "MARKETTA", "MARICRUZ", "MARCELENE", "MALVINA", "LUBA", "LOUETTA",
- "LEIDA", "LECIA", "LAURAN", "LASHAWNA", "LAINE", "KHADIJAH",
- "KATERINE", "KASI", "KALLIE", "JULIETTA", "JESUSITA", "JESTINE",
- "JESSIA", "JEREMY", "JEFFIE", "JANYCE", "ISADORA", "GEORGIANNE",
- "FIDELIA", "EVITA", "EURA", "EULAH", "ESTEFANA", "ELSY", "ELIZABET",
- "ELADIA", "DODIE", "DION", "DIA", "DENISSE", "DELORAS", "DELILA",
- "DAYSI", "DAKOTA", "CURTIS", "CRYSTLE", "CONCHA", "COLBY",
- "CLARETTA", "CHU", "CHRISTIA", "CHARLSIE", "CHARLENA", "CARYLON",
- "BETTYANN", "ASLEY", "ASHLEA", "AMIRA", "AI", "AGUEDA", "AGNUS",
- "YUETTE", "VINITA", "VICTORINA", "TYNISHA", "TREENA", "TOCCARA",
- "TISH", "THOMASENA", "TEGAN", "SOILA", "SHILOH", "SHENNA",
- "SHARMAINE", "SHANTAE", "SHANDI", "SEPTEMBER", "SARAN", "SARAI",
- "SANA", "SAMUEL", "SALLEY", "ROSETTE", "ROLANDE", "REGINE",
- "OTELIA", "OSCAR", "OLEVIA", "NICHOLLE", "NECOLE", "NAIDA", "MYRTA",
- "MYESHA", "MITSUE", "MINTA", "MERTIE", "MARGY", "MAHALIA",
- "MADALENE", "LOVE", "LOURA", "LOREAN", "LEWIS", "LESHA", "LEONIDA",
- "LENITA", "LAVONE", "LASHELL", "LASHANDRA", "LAMONICA", "KIMBRA",
- "KATHERINA", "KARRY", "KANESHA", "JULIO", "JONG", "JENEVA",
- "JAQUELYN", "HWA", "GILMA", "GHISLAINE", "GERTRUDIS", "FRANSISCA",
- "FERMINA", "ETTIE", "ETSUKO", "ELLIS", "ELLAN", "ELIDIA", "EDRA",
- "DORETHEA", "DOREATHA", "DENYSE", "DENNY", "DEETTA", "DAINE",
- "CYRSTAL", "CORRIN", "CAYLA", "CARLITA", "CAMILA", "BURMA", "BULA",
- "BUENA", "BLAKE", "BARABARA", "AVRIL", "AUSTIN", "ALAINE", "ZANA",
- "WILHEMINA", "WANETTA", "VIRGIL", "VI", "VERONIKA", "VERNON",
- "VERLINE", "VASILIKI", "TONITA", "TISA", "TEOFILA", "TAYNA",
- "TAUNYA", "TANDRA", "TAKAKO", "SUNNI", "SUANNE", "SIXTA", "SHARELL",
- "SEEMA", "RUSSELL", "ROSENDA", "ROBENA", "RAYMONDE", "PEI",
- "PAMILA", "OZELL", "NEIDA", "NEELY", "MISTIE", "MICHA", "MERISSA",
- "MAURITA", "MARYLN", "MARYETTA", "MARSHALL", "MARCELL", "MALENA",
- "MAKEDA", "MADDIE", "LOVETTA", "LOURIE", "LORRINE", "LORILEE",
- "LESTER", "LAURENA", "LASHAY", "LARRAINE", "LAREE", "LACRESHA",
- "KRISTLE", "KRISHNA", "KEVA", "KEIRA", "KAROLE", "JOIE", "JINNY",
- "JEANNETTA", "JAMA", "HEIDY", "GILBERTE", "GEMA", "FAVIOLA",
- "EVELYNN", "ENDA", "ELLI", "ELLENA", "DIVINA", "DAGNY", "COLLENE",
- "CODI", "CINDIE", "CHASSIDY", "CHASIDY", "CATRICE", "CATHERINA",
- "CASSEY", "CAROLL", "CARLENA", "CANDRA", "CALISTA", "BRYANNA",
- "BRITTENY", "BEULA", "BARI", "AUDRIE", "AUDRIA", "ARDELIA",
- "ANNELLE", "ANGILA", "ALONA", "ALLYN", "DOUGLAS", "ROGER",
- "JONATHAN", "RALPH", "NICHOLAS", "BENJAMIN", "BRUCE", "HARRY",
- "WAYNE", "STEVE", "HOWARD", "ERNEST", "PHILLIP", "TODD", "CRAIG",
- "ALAN", "PHILIP", "EARL", "DANNY", "BRYAN", "STANLEY", "LEONARD",
- "NATHAN", "MANUEL", "RODNEY", "MARVIN", "VINCENT", "JEFFERY",
- "JEFF", "CHAD", "JACOB", "ALFRED", "BRADLEY", "HERBERT",
- "FREDERICK", "EDWIN", "DON", "RICKY", "RANDALL", "BARRY", "BERNARD",
- "LEROY", "MARCUS", "THEODORE", "CLIFFORD", "MIGUEL", "JIM", "TOM",
- "CALVIN", "BILL", "LLOYD", "DEREK", "WARREN", "DARRELL", "JEROME",
- "FLOYD", "ALVIN", "TIM", "GORDON", "GREG", "JORGE", "DUSTIN",
- "PEDRO", "DERRICK", "ZACHARY", "HERMAN", "GLEN", "HECTOR",
- "RICARDO", "RICK", "BRENT", "RAMON", "GILBERT", "MARC", "REGINALD",
- "RUBEN", "NATHANIEL", "RAFAEL", "EDGAR", "MILTON", "RAUL", "BEN",
- "CHESTER", "DUANE", "FRANKLIN", "BRAD", "RON", "ROLAND", "ARNOLD",
- "HARVEY", "JARED", "ERIK", "DARRYL", "NEIL", "JAVIER", "FERNANDO",
- "CLINTON", "TED", "MATHEW", "TYRONE", "DARREN", "LANCE", "KURT",
- "ALLAN", "NELSON", "GUY", "CLAYTON", "HUGH", "MAX", "DWAYNE",
- "DWIGHT", "ARMANDO", "FELIX", "EVERETT", "IAN", "WALLACE", "KEN",
- "BOB", "ALFREDO", "ALBERTO", "DAVE", "IVAN", "BYRON", "ISAAC",
- "MORRIS", "CLIFTON", "WILLARD", "ROSS", "ANDY", "SALVADOR", "KIRK",
- "SERGIO", "SETH", "KENT", "TERRANCE", "EDUARDO", "TERRENCE",
- "ENRIQUE", "WADE", "STUART", "FREDRICK", "ARTURO", "ALEJANDRO",
- "NICK", "LUTHER", "WENDELL", "JEREMIAH", "JULIUS", "OTIS", "TREVOR",
- "OLIVER", "LUKE", "HOMER", "GERARD", "DOUG", "KENNY", "HUBERT",
- "LYLE", "MATT", "ALFONSO", "ORLANDO", "REX", "CARLTON", "ERNESTO",
- "NEAL", "PABLO", "LORENZO", "OMAR", "WILBUR", "GRANT", "HORACE",
- "RODERICK", "ABRAHAM", "WILLIS", "RICKEY", "ANDRES", "CESAR",
- "JOHNATHAN", "MALCOLM", "RUDOLPH", "DAMON", "KELVIN", "PRESTON",
- "ALTON", "ARCHIE", "MARCO", "WM", "PETE", "RANDOLPH", "GARRY",
- "GEOFFREY", "JONATHON", "FELIPE", "GERARDO", "ED", "DOMINIC",
- "DELBERT", "COLIN", "GUILLERMO", "EARNEST", "LUCAS", "BENNY",
- "SPENCER", "RODOLFO", "MYRON", "EDMUND", "GARRETT", "SALVATORE",
- "CEDRIC", "LOWELL", "GREGG", "SHERMAN", "WILSON", "SYLVESTER",
- "ROOSEVELT", "ISRAEL", "JERMAINE", "FORREST", "WILBERT", "LELAND",
- "SIMON", "CLARK", "IRVING", "BRYANT", "OWEN", "RUFUS", "WOODROW",
- "KRISTOPHER", "MACK", "LEVI", "MARCOS", "GUSTAVO", "JAKE", "LIONEL",
- "GILBERTO", "CLINT", "NICOLAS", "ISMAEL", "ORVILLE", "ERVIN",
- "DEWEY", "AL", "WILFRED", "JOSH", "HUGO", "IGNACIO", "CALEB",
- "TOMAS", "SHELDON", "ERICK", "STEWART", "DOYLE", "DARREL",
- "ROGELIO", "TERENCE", "SANTIAGO", "ALONZO", "ELIAS", "BERT",
- "ELBERT", "RAMIRO", "CONRAD", "NOAH", "GRADY", "PHIL", "CORNELIUS",
- "LAMAR", "ROLANDO", "CLAY", "PERCY", "DEXTER", "BRADFORD", "DARIN",
- "AMOS", "MOSES", "IRVIN", "SAUL", "ROMAN", "RANDAL", "TIMMY",
- "DARRIN", "WINSTON", "BRENDAN", "ABEL", "DOMINICK", "BOYD",
- "EMILIO", "ELIJAH", "DOMINGO", "EMMETT", "MARLON", "EMANUEL",
- "JERALD", "EDMOND", "EMIL", "DEWAYNE", "WILL", "OTTO", "TEDDY",
- "REYNALDO", "BRET", "JESS", "TRENT", "HUMBERTO", "EMMANUEL",
- "STEPHAN", "VICENTE", "LAMONT", "GARLAND", "MILES", "EFRAIN",
- "HEATH", "RODGER", "HARLEY", "ETHAN", "ELDON", "ROCKY", "PIERRE",
- "JUNIOR", "FREDDY", "ELI", "BRYCE", "ANTOINE", "STERLING", "CHASE",
- "GROVER", "ELTON", "CLEVELAND", "DYLAN", "CHUCK", "DAMIAN",
- "REUBEN", "STAN", "AUGUST", "LEONARDO", "JASPER", "RUSSEL", "ERWIN",
- "BENITO", "HANS", "MONTE", "BLAINE", "ERNIE", "CURT", "QUENTIN",
- "AGUSTIN", "MURRAY", "JAMAL", "ADOLFO", "HARRISON", "TYSON",
- "BURTON", "BRADY", "ELLIOTT", "WILFREDO", "BART", "JARROD", "VANCE",
- "DENIS", "DAMIEN", "JOAQUIN", "HARLAN", "DESMOND", "ELLIOT",
- "DARWIN", "GREGORIO", "BUDDY", "XAVIER", "KERMIT", "ROSCOE",
- "ESTEBAN", "ANTON", "SOLOMON", "SCOTTY", "NORBERT", "ELVIN",
- "WILLIAMS", "NOLAN", "ROD", "QUINTON", "HAL", "BRAIN", "ROB",
- "ELWOOD", "KENDRICK", "DARIUS", "MOISES", "FIDEL", "THADDEUS",
- "CLIFF", "MARCEL", "JACKSON", "RAPHAEL", "BRYON", "ARMAND",
- "ALVARO", "JEFFRY", "DANE", "JOESPH", "THURMAN", "NED", "RUSTY",
- "MONTY", "FABIAN", "REGGIE", "MASON", "GRAHAM", "ISAIAH", "VAUGHN",
- "GUS", "LOYD", "DIEGO", "ADOLPH", "NORRIS", "MILLARD", "ROCCO",
- "GONZALO", "DERICK", "RODRIGO", "WILEY", "RIGOBERTO", "ALPHONSO",
- "TY", "NOE", "VERN", "REED", "JEFFERSON", "ELVIS", "BERNARDO",
- "MAURICIO", "HIRAM", "DONOVAN", "BASIL", "RILEY", "NICKOLAS",
- "MAYNARD", "SCOT", "VINCE", "QUINCY", "EDDY", "SEBASTIAN",
- "FEDERICO", "ULYSSES", "HERIBERTO", "DONNELL", "COLE", "DAVIS",
- "GAVIN", "EMERY", "WARD", "ROMEO", "JAYSON", "DANTE", "CLEMENT",
- "COY", "MAXWELL", "JARVIS", "BRUNO", "ISSAC", "DUDLEY", "BROCK",
- "SANFORD", "CARMELO", "BARNEY", "NESTOR", "STEFAN", "DONNY", "ART",
- "LINWOOD", "BEAU", "WELDON", "GALEN", "ISIDRO", "TRUMAN", "DELMAR",
- "JOHNATHON", "SILAS", "FREDERIC", "DICK", "IRWIN", "MERLIN",
- "CHARLEY", "MARCELINO", "HARRIS", "CARLO", "TRENTON", "KURTIS",
- "HUNTER", "AURELIO", "WINFRED", "VITO", "COLLIN", "DENVER",
- "CARTER", "LEONEL", "EMORY", "PASQUALE", "MOHAMMAD", "MARIANO",
- "DANIAL", "LANDON", "DIRK", "BRANDEN", "ADAN", "BUFORD", "GERMAN",
- "WILMER", "EMERSON", "ZACHERY", "FLETCHER", "JACQUES", "ERROL",
- "DALTON", "MONROE", "JOSUE", "EDWARDO", "BOOKER", "WILFORD",
- "SONNY", "SHELTON", "CARSON", "THERON", "RAYMUNDO", "DAREN",
- "HOUSTON", "ROBBY", "LINCOLN", "GENARO", "BENNETT", "OCTAVIO",
- "CORNELL", "HUNG", "ARRON", "ANTONY", "HERSCHEL", "GIOVANNI",
- "GARTH", "CYRUS", "CYRIL", "RONNY", "LON", "FREEMAN", "DUNCAN",
- "KENNITH", "CARMINE", "ERICH", "CHADWICK", "WILBURN", "RUSS",
- "REID", "MYLES", "ANDERSON", "MORTON", "JONAS", "FOREST", "MITCHEL",
- "MERVIN", "ZANE", "RICH", "JAMEL", "LAZARO", "ALPHONSE", "RANDELL",
- "MAJOR", "JARRETT", "BROOKS", "ABDUL", "LUCIANO", "SEYMOUR",
- "EUGENIO", "MOHAMMED", "VALENTIN", "CHANCE", "ARNULFO", "LUCIEN",
- "FERDINAND", "THAD", "EZRA", "ALDO", "RUBIN", "ROYAL", "MITCH",
- "EARLE", "ABE", "WYATT", "MARQUIS", "LANNY", "KAREEM", "JAMAR",
- "BORIS", "ISIAH", "EMILE", "ELMO", "ARON", "LEOPOLDO", "EVERETTE",
- "JOSEF", "ELOY", "RODRICK", "REINALDO", "LUCIO", "JERROD", "WESTON",
- "HERSHEL", "BARTON", "PARKER", "LEMUEL", "BURT", "JULES", "GIL",
- "ELISEO", "AHMAD", "NIGEL", "EFREN", "ANTWAN", "ALDEN", "MARGARITO",
- "COLEMAN", "DINO", "OSVALDO", "LES", "DEANDRE", "NORMAND", "KIETH",
- "TREY", "NORBERTO", "NAPOLEON", "JEROLD", "FRITZ", "ROSENDO",
- "MILFORD", "CHRISTOPER", "ALFONZO", "LYMAN", "JOSIAH", "BRANT",
- "WILTON", "RICO", "JAMAAL", "DEWITT", "BRENTON", "OLIN", "FOSTER",
- "FAUSTINO", "CLAUDIO", "JUDSON", "GINO", "EDGARDO", "ALEC",
- "TANNER", "JARRED", "DONN", "TAD", "PRINCE", "PORFIRIO", "ODIS",
- "LENARD", "CHAUNCEY", "TOD", "MEL", "MARCELO", "KORY", "AUGUSTUS",
- "KEVEN", "HILARIO", "BUD", "SAL", "ORVAL", "MAURO", "ZACHARIAH",
- "OLEN", "ANIBAL", "MILO", "JED", "DILLON", "AMADO", "NEWTON",
- "LENNY", "RICHIE", "HORACIO", "BRICE", "MOHAMED", "DELMER", "DARIO",
- "REYES", "MAC", "JONAH", "JERROLD", "ROBT", "HANK", "RUPERT",
- "ROLLAND", "KENTON", "DAMION", "ANTONE", "WALDO", "FREDRIC",
- "BRADLY", "KIP", "BURL", "WALKER", "TYREE", "JEFFEREY", "AHMED",
- "WILLY", "STANFORD", "OREN", "NOBLE", "MOSHE", "MIKEL", "ENOCH",
- "BRENDON", "QUINTIN", "JAMISON", "FLORENCIO", "DARRICK", "TOBIAS",
- "HASSAN", "GIUSEPPE", "DEMARCUS", "CLETUS", "TYRELL", "LYNDON",
- "KEENAN", "WERNER", "GERALDO", "COLUMBUS", "CHET", "BERTRAM",
- "MARKUS", "HUEY", "HILTON", "DWAIN", "DONTE", "TYRON", "OMER",
- "ISAIAS", "HIPOLITO", "FERMIN", "ADALBERTO", "BO", "BARRETT",
- "TEODORO", "MCKINLEY", "MAXIMO", "GARFIELD", "RALEIGH", "LAWERENCE",
- "ABRAM", "RASHAD", "KING", "EMMITT", "DARON", "SAMUAL", "MIQUEL",
- "EUSEBIO", "DOMENIC", "DARRON", "BUSTER", "WILBER", "RENATO", "JC",
- "HOYT", "HAYWOOD", "EZEKIEL", "CHAS", "FLORENTINO", "ELROY",
- "CLEMENTE", "ARDEN", "NEVILLE", "EDISON", "DESHAWN", "NATHANIAL",
- "JORDON", "DANILO", "CLAUD", "SHERWOOD", "RAYMON", "RAYFORD",
- "CRISTOBAL", "AMBROSE", "TITUS", "HYMAN", "FELTON", "EZEQUIEL",
- "ERASMO", "STANTON", "LONNY", "LEN", "IKE", "MILAN", "LINO",
- "JAROD", "HERB", "ANDREAS", "WALTON", "RHETT", "PALMER", "DOUGLASS",
- "CORDELL", "OSWALDO", "ELLSWORTH", "VIRGILIO", "TONEY", "NATHANAEL",
- "DEL", "BENEDICT", "MOSE", "JOHNSON", "ISREAL", "GARRET", "FAUSTO",
- "ASA", "ARLEN", "ZACK", "WARNER", "MODESTO", "FRANCESCO", "MANUAL",
- "GAYLORD", "GASTON", "FILIBERTO", "DEANGELO", "MICHALE",
- "GRANVILLE", "WES", "MALIK", "ZACKARY", "TUAN", "ELDRIDGE",
- "CRISTOPHER", "CORTEZ", "ANTIONE", "MALCOM", "LONG", "KOREY",
- "JOSPEH", "COLTON", "WAYLON", "VON", "HOSEA", "SHAD", "SANTO",
- "RUDOLF", "ROLF", "REY", "RENALDO", "MARCELLUS", "LUCIUS",
- "KRISTOFER", "BOYCE", "BENTON", "HAYDEN", "HARLAND", "ARNOLDO",
- "RUEBEN", "LEANDRO", "KRAIG", "JERRELL", "JEROMY", "HOBERT",
- "CEDRICK", "ARLIE", "WINFORD", "WALLY", "LUIGI", "KENETH",
- "JACINTO", "GRAIG", "FRANKLYN", "EDMUNDO", "SID", "PORTER", "LEIF",
- "JERAMY", "BUCK", "WILLIAN", "VINCENZO", "SHON", "LYNWOOD", "JERE",
- "HAI", "ELDEN", "DORSEY", "DARELL", "BRODERICK", "ALONSO"]
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T789.script b/testsuite/tests/ghc-regress/ghci/scripts/T789.script
deleted file mode 100644
index d8e2a3a00b..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T789.script
+++ /dev/null
@@ -1,2 +0,0 @@
-:l T789.hs
-print $ length table
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/T789.stdout b/testsuite/tests/ghc-regress/ghci/scripts/T789.stdout
deleted file mode 100644
index 045c1c6b12..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/T789.stdout
+++ /dev/null
@@ -1 +0,0 @@
-5163
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/all.T b/testsuite/tests/ghc-regress/ghci/scripts/all.T
deleted file mode 100644
index f3ddbffc6a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/all.T
+++ /dev/null
@@ -1,77 +0,0 @@
-
-setTestOpts(if_compiler_profiled(skip))
-
-test('ghci001', normal, ghci_script, ['ghci001.script'])
-test('ghci002', normal, ghci_script, ['ghci002.script'])
-test('ghci003', normal, ghci_script, ['ghci003.script'])
-test('ghci004', normal, ghci_script, ['ghci004.script'])
-test('ghci005', normal, ghci_script, ['ghci005.script'])
-test('ghci006', normal, ghci_script, ['ghci006.script'])
-test('ghci007', normal, ghci_script, ['ghci007.script'])
-test('ghci008', normal, ghci_script, ['ghci008.script'])
-test('ghci009', normal, ghci_script, ['ghci009.script'])
-
-# Skip this test: deadlock can't be detected now, because we wait for
-# signals to arrive if there are signal handlers installed, and GHCi
-# has a ^C handler installed.
-test('ghci010', skip, ghci_script, ['ghci010.script'])
-
-test('ghci011', normal, ghci_script, ['ghci011.script'])
-test('ghci012', normal, ghci_script, ['ghci012.script'])
-test('ghci013', normal, ghci_script, ['ghci013.script'])
-test('ghci014', reqlib('QuickCheck'), ghci_script, ['ghci014.script'])
-
-# Ignore output from ghci015, the output is non-deterministic
-# (has occasional "thread blocked indefinitely" exceptions), and this
-# is part of the test.
-test('ghci015', ignore_output, ghci_script, ['ghci015.script'])
-
-test('ghci016', expect_broken(552), ghci_script, ['ghci016.script'])
-test('ghci017', extra_run_opts('-hide-package haskell98'), ghci_script, ['ghci017.script'])
-test('ghci018', expect_broken(1201), ghci_script, ['ghci018.script'])
-test('ghci019', normal, ghci_script, ['ghci019.script'])
-test('ghci020', normal, ghci_script, ['ghci020.script'])
-test('ghci021', normal, ghci_script, ['ghci021.script'])
-test('ghci022', normal, ghci_script, ['ghci022.script'])
-
-test('ghci023', normal, ghci_script, ['ghci023.script'])
-test('ghci024',
- [skip_if_fast,
- if_platform("powerpc-apple-darwin", expect_broken(1845))],
- run_command,
- ['$MAKE -s --no-print-directory ghci024'])
-test('ghci025', normal, ghci_script, ['ghci025.script'])
-test('ghci026', normal, ghci_script, ['ghci026.script'])
-
-test('ghci027', normal, ghci_script, ['ghci027.script'])
-test('ghci028', normal, ghci_script, ['ghci028.script'])
-test('ghci029', normal, ghci_script, ['ghci029.script'])
-test('ghci030', normal, ghci_script, ['ghci030.script'])
-test('ghci031', normal, ghci_script, ['ghci031.script'])
-test('ghci032', normal, ghci_script, ['ghci032.script'])
-test('ghci033', normal, ghci_script, ['ghci033.script'])
-test('ghci034', normal, ghci_script, ['ghci034.script'])
-test('ghci035', normal, ghci_script, ['ghci035.script'])
-test('ghci036', normal, ghci_script, ['ghci036.script'])
-test('ghci037', req_interp, run_command, ['$MAKE -s --no-print-directory ghci037'])
-test('2452', normal, ghci_script, ['2452.script'])
-test('T2766', normal, ghci_script, ['T2766.script'])
-
-test('1914',
- extra_clean(['T1914A.hs', 'T1914B.hs']),
- ghci_script,
- ['1914.script'])
-
-test('2976', normal, ghci_script, ['2976.script'])
-test('2816', normal, ghci_script, ['2816.script'])
-test('T789', normal, ghci_script, ['T789.script'])
-test('T3263', normal, ghci_script, ['T3263.script'])
-test('4051', normal, ghci_script, ['4051.script'])
-test('T4087', normal, ghci_script, ['T4087.script'])
-test('T4015', normal, ghci_script, ['T4015.script'])
-test('T4127', normal, ghci_script, ['T4127.script'])
-test('T4127a', normal, ghci_script, ['T4127a.script'])
-test('T4316', reqlib('mtl'), ghci_script, ['T4316.script'])
-test('T4832', normal, ghci_script, ['T4832.script'])
-test('T5045', normal, ghci_script, ['T5045.script'])
-test('T5130', normal, ghci_script, ['T5130.script'])
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci001.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci001.script
deleted file mode 100644
index 0902a0ccd1..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci001.script
+++ /dev/null
@@ -1,3 +0,0 @@
--- bug: shouldn't be defaulting these expressions
-:type (+)
-:type enumFromTo
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci001.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci001.stdout
deleted file mode 100644
index b0a2458b59..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci001.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-(+) :: Num a => a -> a -> a
-enumFromTo :: Enum a => a -> a -> [a]
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci002.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci002.script
deleted file mode 100644
index 3c0ec29eae..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci002.script
+++ /dev/null
@@ -1,4 +0,0 @@
--- bug: we used to throw away the instance accidentally here
-:m GHC.Base
-1 == (2 :: Int)
-1 == (2 :: Int)
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci002.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci002.stdout
deleted file mode 100644
index 815d6689fe..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci002.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-False
-False
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci003.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci003.script
deleted file mode 100644
index 08d0114de4..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci003.script
+++ /dev/null
@@ -1,7 +0,0 @@
--- check that 'it' works
-1
-it
-print it
-return 42
-it
-print it
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci003.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci003.stdout
deleted file mode 100644
index 6d07eb1b81..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci003.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-1
-1
-1
-42
-42
-42
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci004.hs b/testsuite/tests/ghc-regress/ghci/scripts/ghci004.hs
deleted file mode 100644
index 6406a11565..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci004.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-import Data.List
-main = print (sort [100,99..1])
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci004.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci004.script
deleted file mode 100644
index 4949629935..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci004.script
+++ /dev/null
@@ -1,4 +0,0 @@
-:unset +s +t
--- test importing a module from a package
-:l ghci004
-main
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci004.stderr b/testsuite/tests/ghc-regress/ghci/scripts/ghci004.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci004.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci004.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci004.stdout
deleted file mode 100644
index 0aec69a0c1..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci004.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100]
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci005.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci005.script
deleted file mode 100644
index e31b6fc9b7..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci005.script
+++ /dev/null
@@ -1,18 +0,0 @@
-:unset +s +t
--- tests for :def, :undef
-:def
-let void m = m >> return ""
-let echo s = void (putStrLn s)
-:def echo echo
-:def
-:echo hello, world!
-
-let echoupper s = return (":! echo " ++ map Data.Char.toUpper s)
-:echo hello, world!
-:def echo echoupper
-:undef echo
-:def echo echoupper
-:echo hello, world!
-:def! echo echo
-:echo hello, world!
-:undef f f
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci005.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci005.stdout
deleted file mode 100644
index e94f822e46..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci005.stdout
+++ /dev/null
@@ -1,9 +0,0 @@
-no macros defined
-the following macros are defined:
-echo
-hello, world!
-hello, world!
-macro 'echo' is already defined
-HELLO, WORLD!
-hello, world!
-macro 'f' is not defined
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci006.hs b/testsuite/tests/ghc-regress/ghci/scripts/ghci006.hs
deleted file mode 100644
index c1bef51070..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci006.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-module Ghci006 where
-
-data Q = forall x . Show x => Q x
-showQ (Q x) = show x
-
--- associated bug is that at the interpreter command line,
--- showQ (Q "foo") crashed the interpreter.
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci006.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci006.script
deleted file mode 100644
index adccf3114c..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci006.script
+++ /dev/null
@@ -1,6 +0,0 @@
-:unset +s +t
-:set -XExistentialQuantification
--- test for contexts on existential types crashing the interpreter
-:l ghci006
-showQ (Q "foo")
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci006.stderr b/testsuite/tests/ghc-regress/ghci/scripts/ghci006.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci006.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci006.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci006.stdout
deleted file mode 100644
index 359e72fb1b..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci006.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"\"foo\""
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci007.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci007.script
deleted file mode 100644
index a4819aab50..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci007.script
+++ /dev/null
@@ -1,2 +0,0 @@
--- bug: shouldn't kill the whole system
-System.Exit.exitFailure
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci007.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci007.stdout
deleted file mode 100644
index 59eac9cfdb..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci007.stdout
+++ /dev/null
@@ -1 +0,0 @@
-*** Exception: ExitFailure 1
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci008.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci008.script
deleted file mode 100644
index 8bbee9d58b..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci008.script
+++ /dev/null
@@ -1,7 +0,0 @@
--- testing :info
-:info +
-:info (+)
-:info Data.Complex.:+
-:info (Data.Complex.:+)
-:info RealFloat
-:info `Data.List.isPrefixOf`
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci008.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci008.stdout
deleted file mode 100644
index 000f254070..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci008.stdout
+++ /dev/null
@@ -1,36 +0,0 @@
-class (Eq a, Show a) => Num a where
- (+) :: a -> a -> a
- ...
- -- Defined in GHC.Num
-infixl 6 +
-class (Eq a, Show a) => Num a where
- (+) :: a -> a -> a
- ...
- -- Defined in GHC.Num
-infixl 6 +
-data Data.Complex.Complex a = !a Data.Complex.:+ !a
- -- Defined in Data.Complex
-infix 6 Data.Complex.:+
-data Data.Complex.Complex a = !a Data.Complex.:+ !a
- -- Defined in Data.Complex
-infix 6 Data.Complex.:+
-class (RealFrac a, Floating a) => RealFloat a where
- floatRadix :: a -> Integer
- floatDigits :: a -> Int
- floatRange :: a -> (Int, Int)
- decodeFloat :: a -> (Integer, Int)
- encodeFloat :: Integer -> Int -> a
- exponent :: a -> Int
- significand :: a -> a
- scaleFloat :: Int -> a -> a
- isNaN :: a -> Bool
- isInfinite :: a -> Bool
- isDenormalized :: a -> Bool
- isNegativeZero :: a -> Bool
- isIEEE :: a -> Bool
- atan2 :: a -> a -> a
- -- Defined in GHC.Float
-instance RealFloat Float -- Defined in GHC.Float
-instance RealFloat Double -- Defined in GHC.Float
-Data.List.isPrefixOf :: Eq a => [a] -> [a] -> Bool
- -- Defined in Data.List
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci009.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci009.script
deleted file mode 100644
index ecb635c704..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci009.script
+++ /dev/null
@@ -1,20 +0,0 @@
--- !!! test `:set args' and `:set prog'
-System.Environment.getArgs
-print it
-System.Environment.getProgName
-print it
-:set args
-System.Environment.getArgs
-print it
-System.Environment.getProgName
-print it
-:set args foo bar
-System.Environment.getArgs
-print it
-System.Environment.getProgName
-print it
-:set prog foo
-System.Environment.getArgs
-print it
-System.Environment.getProgName
-print it
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci009.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci009.stdout
deleted file mode 100644
index 3d40fb8d99..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci009.stdout
+++ /dev/null
@@ -1,16 +0,0 @@
-[]
-[]
-"<interactive>"
-"<interactive>"
-[]
-[]
-"<interactive>"
-"<interactive>"
-["foo","bar"]
-["foo","bar"]
-"<interactive>"
-"<interactive>"
-["foo","bar"]
-["foo","bar"]
-"foo"
-"foo"
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci010.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci010.script
deleted file mode 100644
index 56b99062db..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci010.script
+++ /dev/null
@@ -1,2 +0,0 @@
--- !!! check we can detect deadlock
-Control.Concurrent.newEmptyMVar >>= Control.Concurrent.takeMVar
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci010.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci010.stdout
deleted file mode 100644
index b0be06f788..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci010.stdout
+++ /dev/null
@@ -1,14 +0,0 @@
- ___ ___ _
- / _ \ /\ /\/ __(_)
- / /_\// /_/ / / | | GHC Interactive, version 5.03, for Haskell 98.
-/ /_\\/ __ / /___| | http://www.haskell.org/ghc/
-\____/\/ /_/\____/|_| Type :? for help.
-
-Loading package std ... linking ... done.
-Prelude> -- !!! check we can detect deadlock
-Prelude> :set -package concurrent
-Loading package lang ... linking ... done.
-Loading package concurrent ... linking ... done.
-Prelude> Concurrent.newEmptyMVar >>= Concurrent.takeMVar
-Deadlocked.
-Prelude> Leaving GHCi.
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci011.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci011.script
deleted file mode 100644
index 0c147736f0..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci011.script
+++ /dev/null
@@ -1,4 +0,0 @@
--- testing :info on builtin identifiers
-:info []
-:info ()
-:info (,)
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci011.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci011.stdout
deleted file mode 100644
index 840bb18a4d..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci011.stdout
+++ /dev/null
@@ -1,21 +0,0 @@
-data [] a = [] | a : [a] -- Defined in GHC.Types
-instance Eq a => Eq [a] -- Defined in GHC.Classes
-instance Monad [] -- Defined in GHC.Base
-instance Functor [] -- Defined in GHC.Base
-instance Ord a => Ord [a] -- Defined in GHC.Classes
-instance Read a => Read [a] -- Defined in GHC.Read
-instance Show a => Show [a] -- Defined in GHC.Show
-data () = () -- Defined in GHC.Unit
-instance Bounded () -- Defined in GHC.Enum
-instance Enum () -- Defined in GHC.Enum
-instance Eq () -- Defined in GHC.Classes
-instance Ord () -- Defined in GHC.Classes
-instance Read () -- Defined in GHC.Read
-instance Show () -- Defined in GHC.Show
-data (,) a b = (,) a b -- Defined in GHC.Tuple
-instance (Bounded a, Bounded b) => Bounded (a, b)
- -- Defined in GHC.Enum
-instance (Eq a, Eq b) => Eq (a, b) -- Defined in GHC.Classes
-instance (Ord a, Ord b) => Ord (a, b) -- Defined in GHC.Classes
-instance (Read a, Read b) => Read (a, b) -- Defined in GHC.Read
-instance (Show a, Show b) => Show (a, b) -- Defined in GHC.Show
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci012.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci012.script
deleted file mode 100644
index d2548dd670..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci012.script
+++ /dev/null
@@ -1,2 +0,0 @@
-let lf $$$ lx = zipWith ($) lf lx
-:i $$$
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci012.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci012.stdout
deleted file mode 100644
index 98780e4152..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci012.stdout
+++ /dev/null
@@ -1 +0,0 @@
-($$$) :: [b -> c] -> [b] -> [c] -- Defined at <interactive>:1:8-10
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci013.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci013.script
deleted file mode 100644
index eec0af840a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci013.script
+++ /dev/null
@@ -1,5 +0,0 @@
--- type-variable tidying problem in 6.4
--- incorrect type: (Monad m) => (m a, b) -> m b
--- correct type: (Monad m) => (m a, b) -> m b1
-let f (a,b) = a >> undefined
-:t f
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci013.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci013.stdout
deleted file mode 100644
index 5daf16ee23..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci013.stdout
+++ /dev/null
@@ -1 +0,0 @@
-f :: Monad m => (m a, t) -> m b
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci014.hs b/testsuite/tests/ghc-regress/ghci/scripts/ghci014.hs
deleted file mode 100644
index dd668cff3b..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci014.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-import Test.QuickCheck.Batch
-
-prop_silly :: [()] -> Bool
-prop_silly xs = head xs == head xs
-
-do_test = runTests "test" defOpt [ run prop_silly ]
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci014.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci014.script
deleted file mode 100644
index e1c6193ac1..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci014.script
+++ /dev/null
@@ -1,983 +0,0 @@
-:l ghci014
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
-do_test
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci014.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci014.stdout
deleted file mode 100644
index 324972da57..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci014.stdout
+++ /dev/null
@@ -1,982 +0,0 @@
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
- test : * (0)
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci015.hs b/testsuite/tests/ghc-regress/ghci/scripts/ghci015.hs
deleted file mode 100644
index 0ff637f046..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci015.hs
+++ /dev/null
@@ -1,43 +0,0 @@
--- Code from ticket #488
-
-module Test where
-
-import Control.Concurrent.STM
-import Control.Concurrent
-import Control.Exception
-import Prelude hiding (catch)
-
-
-runTest loop = do
- (tc1, tc2, tmv) <- atomically (do
- tmv <- newEmptyTMVar
- tc1 <- newTChan
- tc2 <- newTChan
- return (tc1, tc2, tmv)
- )
- myTId <- myThreadId
- forkIO (forked loop (tc1, tc2, tmv, myTId))
- atomically (writeTChan tc1 "blah")
- atomically (writeTChan tc1 "blah2")
- return "done"
-
-
-forked loop args@(tc1, tc2, tmv, hisTId) = catch ((loop args) >>= setTMV . Just) hndlr `finally` setTMV Nothing
- where
- setTMV x = atomically (tryPutTMVar tmv x >> return ())
- hndlr (AsyncException ThreadKilled) = return ()
- hndlr e = throwTo hisTId e
-
-goodLoop args@(tc1, tc2, tmv, hisTId) = do
- x <- atomically (readTChan tc1)
- x' <- return $ reverse x
- atomically (writeTChan tc2 x')
- if x == "blah2"
- then return ()
- else goodLoop args
-
-badLoop args@(tc1, tc2, tmv, hisTId) = do
- x <- atomically (readTChan tc1)
- x' <- return $ reverse x
- atomically (writeTChan tc2 x')
- badLoop args
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci015.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci015.script
deleted file mode 100644
index 320f930276..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci015.script
+++ /dev/null
@@ -1,388 +0,0 @@
-:l ghci015
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
-runTest badLoop
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci015.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci015.stdout
deleted file mode 100644
index dd8584cd33..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci015.stdout
+++ /dev/null
@@ -1,387 +0,0 @@
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
-"done"
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci016.hs b/testsuite/tests/ghc-regress/ghci/scripts/ghci016.hs
deleted file mode 100644
index 2740a66517..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci016.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- Test for trac #552
-
-module Test where
-
-default (T)
-
-data T = T
- deriving (Eq, Show)
-
-instance Num T where
- fromInteger _ = T
- (+) = error "urk"
- (*) = error "urk"
- abs = error "urk"
- signum = error "urk"
-
--- Typing 3 at the ghci prompt should print T
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci016.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci016.script
deleted file mode 100644
index b0fc578813..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci016.script
+++ /dev/null
@@ -1,2 +0,0 @@
-:l ghci016
-3
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci016.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci016.stdout
deleted file mode 100644
index 62a6e3c9df..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci016.stdout
+++ /dev/null
@@ -1 +0,0 @@
-T
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci017.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci017.script
deleted file mode 100644
index 6a452c185a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci017.script
+++ /dev/null
@@ -1 +0,0 @@
-()
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci017.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci017.stdout
deleted file mode 100644
index 6a452c185a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci017.stdout
+++ /dev/null
@@ -1 +0,0 @@
-()
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci018.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci018.script
deleted file mode 100644
index 7eea11e3c3..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci018.script
+++ /dev/null
@@ -1,4 +0,0 @@
-:set -XTemplateHaskell
-:m + Language.Haskell.TH
-$( do runIO $ putStrLn "Q"; [| 'x' |] )
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci018.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci018.stdout
deleted file mode 100644
index 6b97cd261f..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci018.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Q
-'x'
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci019.hs b/testsuite/tests/ghc-regress/ghci/scripts/ghci019.hs
deleted file mode 100644
index f1ea575566..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci019.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- Trac #1581
--- Even though Eq is not in scope unqualified, we want to
--- see the Eq instance of Foo when we say :i Foo
-
-module Foo where
-import qualified Prelude
-
-data Foo = Foo
-instance Prelude.Eq Foo
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci019.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci019.script
deleted file mode 100644
index b74e7c5ab9..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci019.script
+++ /dev/null
@@ -1,2 +0,0 @@
-:l ghci019
-:i Foo
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci019.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci019.stdout
deleted file mode 100644
index fa4027070c..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci019.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-data Foo = Foo -- Defined at ghci019.hs:8:6-8
-instance Prelude.Eq Foo -- Defined at ghci019.hs:9:10-23
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci020.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci020.script
deleted file mode 100644
index 6fdfb52def..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci020.script
+++ /dev/null
@@ -1 +0,0 @@
-:i (->)
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci020.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci020.stdout
deleted file mode 100644
index 30f3bf6083..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci020.stdout
+++ /dev/null
@@ -1 +0,0 @@
-data (->) a b -- Defined in GHC.Prim
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci021.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci021.script
deleted file mode 100644
index c2c4dec5d1..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci021.script
+++ /dev/null
@@ -1,4 +0,0 @@
-let f = 'a'
-:r ThisDoesNotExist
-f
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci021.stderr b/testsuite/tests/ghc-regress/ghci/scripts/ghci021.stderr
deleted file mode 100644
index ae7c75b6bb..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci021.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-<no location info>: no such module: `ThisDoesNotExist'
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci021.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci021.stdout
deleted file mode 100644
index 67fe32dafe..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci021.stdout
+++ /dev/null
@@ -1 +0,0 @@
-'a'
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci022.hs b/testsuite/tests/ghc-regress/ghci/scripts/ghci022.hs
deleted file mode 100644
index d49fdba319..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci022.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module Main where
-'a' '
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci022.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci022.script
deleted file mode 100644
index ccefc3c83b..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci022.script
+++ /dev/null
@@ -1,2 +0,0 @@
-:l ghci022.hs
-:show modules
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci022.stderr b/testsuite/tests/ghc-regress/ghci/scripts/ghci022.stderr
deleted file mode 100644
index 138460c99f..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci022.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-ghci022.hs:2:6:
- lexical error in string/character literal at character '\n'
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci022.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci022.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci022.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci023.ghci b/testsuite/tests/ghc-regress/ghci/scripts/ghci023.ghci
deleted file mode 100644
index 83363a3ddc..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci023.ghci
+++ /dev/null
@@ -1,10 +0,0 @@
-:{
- let { a = True
- ; b = False
- }
-:}
-print (a,b)
-:{
-:type
- id
-:}
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci023.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci023.script
deleted file mode 100644
index dd77433af7..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci023.script
+++ /dev/null
@@ -1,17 +0,0 @@
-putStrLn "-- testing ghci multiline commands :{ .. :}"
-putStrLn "-- via stdin"
-:{
- let
- { f 0 = 1
- ; f 1 = w
- where { w = 2 }
- ; y = 3
- }
-:}
-print (f 0,f 1,y)
-:{
-:browse
- Data.Maybe
-:}
-putStrLn "-- via readFile"
-:cmd readFile "ghci023.ghci"
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci023.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci023.stdout
deleted file mode 100644
index 855695af06..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci023.stdout
+++ /dev/null
@@ -1,16 +0,0 @@
--- testing ghci multiline commands :{ .. :}
--- via stdin
-(1,2,3)
-data Maybe a = Nothing | Just a
-catMaybes :: [Maybe a] -> [a]
-fromJust :: Maybe a -> a
-fromMaybe :: a -> Maybe a -> a
-isJust :: Maybe a -> Bool
-isNothing :: Maybe a -> Bool
-listToMaybe :: [a] -> Maybe a
-mapMaybe :: (a -> Maybe b) -> [a] -> [b]
-maybe :: b -> (a -> b) -> Maybe a -> b
-maybeToList :: Maybe a -> [a]
--- via readFile
-(True,False)
-id :: a -> a
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci024.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci024.script
deleted file mode 100644
index f1c9286991..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci024.script
+++ /dev/null
@@ -1,10 +0,0 @@
-putStrLn "-- ghci024.stdout is a generated file! please edit ghci024.py instead."
-:set
-:show languages
-putStrLn "-- :set -XMagicHash"
-:set -XMagicHash
-:show languages
-:show packages
-putStrLn "-- :set -package ghc"
-:set -package ghc
-:show packages
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci024.stderr b/testsuite/tests/ghc-regress/ghci/scripts/ghci024.stderr
deleted file mode 100644
index 425c02baba..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci024.stderr
+++ /dev/null
@@ -1 +0,0 @@
-package flags have changed, resetting and loading new packages...
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci024.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci024.stdout
deleted file mode 100644
index 9f3fe7b999..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci024.stdout
+++ /dev/null
@@ -1,18 +0,0 @@
-~~~~~~~~~~ Testing :set
-options currently set: none.
-GHCi-specific dynamic flag settings:
- -fno-print-explicit-foralls
-other dynamic, non-language, flag settings:
- -fno-warn-implicit-prelude
-~~~~~~~~~~ Testing :show languages
-active language flags:
- -XImplicitPrelude
-~~~~~~~~~~ Testing :show languages, with -XMagicHash
-active language flags:
- -XMagicHash
- -XImplicitPrelude
-~~~~~~~~~~ Testing :show packages
-active package flags: none
-~~~~~~~~~~ Testing :show packages, including the ghc package
-active package flags:
- -package ghc
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci025.hs b/testsuite/tests/ghc-regress/ghci/scripts/ghci025.hs
deleted file mode 100644
index 0e1bc7e2c5..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci025.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE Rank2Types, MultiParamTypeClasses #-}
-
-module T where
-
-import qualified Prelude as T(length,Monad,Integer)
-import qualified Data.ByteString as T(length)
-import Prelude(length,(+),(=<<),Monad(..),Maybe(..),Eq)
-import Data.Maybe
-import Control.Monad(Monad(..),MonadPlus(..))
-
-length :: T.Integer
-length = 0
-
-class N a
-class S a
-
-class C a b where
- c1 :: N b => a -> b
- c2 :: (N b,S b) => a -> b
- c3 :: forall a. a -> b
- c4 :: a1 -> b
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci025.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci025.script
deleted file mode 100644
index 40f3e475be..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci025.script
+++ /dev/null
@@ -1,27 +0,0 @@
-:l ghci025
-System.IO.putStrLn "-- test :browse! functionality"
-System.IO.putStrLn ":browse! *T"
-:browse! *T
-System.IO.putStrLn ":browse! T"
-:browse! T
-:set -fprint-explicit-foralls
-System.IO.putStrLn ":browse! T -- with -fprint-explicit-foralls"
-:browse! T
-
-System.IO.putStrLn "-- test :browse! <target> relative to different contexts"
-:set -fforce-recomp
--- ToDo: this will go wrong in parallel
-:! cp ../prog001/D1.hs ../prog001/D.hs
-:l ../prog001/D.hs
-:add ../prog001/C.hs
-System.IO.putStrLn ":browse! C -- from *C>"
-:browse! C
-:add ../prog001/B.hs
-System.IO.putStrLn ":browse! C -- from *B>, after :add B"
-:browse! C
-:m *C
-System.IO.putStrLn ":browse! C -- from *C>, after :m *C"
-:browse! C
-:m *D
-System.IO.putStrLn ":browse! C -- from *D>, after :m *D"
-:browse! C
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci025.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci025.stdout
deleted file mode 100644
index 2c8a9835dd..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci025.stdout
+++ /dev/null
@@ -1,111 +0,0 @@
--- test :browse! functionality
-:browse! *T
--- defined locally
-T.length :: T.Integer
-class N a
-class S a
-class C a b where
- c1 :: N b => a -> b
- c2 :: (N b, S b) => a -> b
- c3 :: a1 -> b
- c4 :: a1 -> b
-c1 :: (C a b, N b) => a -> b
-c2 :: (C a b, N b, S b) => a -> b
-c3 :: C a b => forall a1. a1 -> b
-c4 :: C a b => forall a1. a1 -> b
--- imported via Control.Monad
-class Monad m => MonadPlus m where
- mzero :: m a
- mplus :: m a -> m a -> m a
-mplus :: MonadPlus m => forall a. m a -> m a -> m a
-mzero :: MonadPlus m => forall a. m a
--- imported via Control.Monad, Prelude
-(>>) :: Monad m => forall a b. m a -> m b -> m b
-(>>=) :: Monad m => forall a b. m a -> (a -> m b) -> m b
-fail :: Monad m => forall a. GHC.Base.String -> m a
-return :: Monad m => forall a. a -> m a
--- imported via Control.Monad, Prelude, T
-class Monad m where
- (>>=) :: m a -> (a -> m b) -> m b
- (>>) :: m a -> m b -> m b
- return :: a -> m a
- fail :: GHC.Base.String -> m a
--- imported via Data.Maybe
-catMaybes :: [Maybe a] -> [a]
-fromJust :: Maybe a -> a
-fromMaybe :: a -> Maybe a -> a
-isJust :: Maybe a -> GHC.Types.Bool
-isNothing :: Maybe a -> GHC.Types.Bool
-listToMaybe :: [a] -> Maybe a
-mapMaybe :: (a -> Maybe b) -> [a] -> [b]
-maybe :: b -> (a -> b) -> Maybe a -> b
-maybeToList :: Maybe a -> [a]
--- imported via Data.Maybe, Prelude
-Just :: a -> Maybe a
-data Maybe a = Nothing | Just a
-Nothing :: Maybe a
--- imported via Prelude
-(+) :: GHC.Num.Num a => a -> a -> a
-(=<<) :: Monad m => (a -> m b) -> m a -> m b
-class Eq a where
- (GHC.Classes.==) :: a -> a -> GHC.Types.Bool
- (GHC.Classes./=) :: a -> a -> GHC.Types.Bool
--- imported via Prelude, T
-Prelude.length :: [a] -> GHC.Types.Int
--- imported via T
-data T.Integer
- = integer-gmp:GHC.Integer.Type.S# GHC.Prim.Int#
- | integer-gmp:GHC.Integer.Type.J# GHC.Prim.Int# GHC.Prim.ByteArray#
-T.length :: Data.ByteString.Internal.ByteString -> GHC.Types.Int
-:browse! T
--- defined locally
-T.length :: T.Integer
-class N a
-class S a
-class C a b where
- c1 :: N b => a -> b
- c2 :: (N b, S b) => a -> b
- c3 :: a1 -> b
- c4 :: a1 -> b
-c1 :: (C a b, N b) => a -> b
-c2 :: (C a b, N b, S b) => a -> b
-c3 :: C a b => forall a1. a1 -> b
-c4 :: C a b => forall a1. a1 -> b
-:browse! T -- with -fprint-explicit-foralls
--- defined locally
-T.length :: T.Integer
-class N a
-class S a
-class C a b where
- c1 :: N b => a -> b
- c2 :: (N b, S b) => a -> b
- c3 :: forall a1. a1 -> b
- c4 :: forall a1. a1 -> b
-c1 :: forall a b. (C a b, N b) => a -> b
-c2 :: forall a b. (C a b, N b, S b) => a -> b
-c3 :: forall a b. C a b => forall a1. a1 -> b
-c4 :: forall a b. C a b => forall a1. a1 -> b
--- test :browse! <target> relative to different contexts
-:browse! C -- from *C>
--- defined locally
-g :: forall a. Num a => a -> a
-h :: forall a. Integral a => a -> a
--- imported via D
-f :: forall a. Num a => a -> a
-:browse! C -- from *B>, after :add B
--- imported via C
-g :: forall a. Num a => a -> a
-h :: forall a. Integral a => a -> a
-f :: forall a. Num a => a -> a
-:browse! C -- from *C>, after :m *C
--- defined locally
-g :: forall a. Num a => a -> a
-h :: forall a. Integral a => a -> a
--- imported via D
-f :: forall a. Num a => a -> a
-:browse! C -- from *D>, after :m *D
--- not currently imported
-C.g :: forall a. Num a => a -> a
-C.h :: forall a. Integral a => a -> a
--- defined locally
-f :: forall a. Num a => a -> a
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci025.stdout-ghc-7.0 b/testsuite/tests/ghc-regress/ghci/scripts/ghci025.stdout-ghc-7.0
deleted file mode 100644
index d06660c3ef..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci025.stdout-ghc-7.0
+++ /dev/null
@@ -1,111 +0,0 @@
--- test :browse! functionality
-:browse! *T
--- defined locally
-T.length :: T.Integer
-class N a
-class S a
-class C a b where
- c1 :: N b => a -> b
- c2 :: (N b, S b) => a -> b
- c3 :: a1 -> b
- c4 :: a1 -> b
-c1 :: (C a b, N b) => a -> b
-c2 :: (C a b, N b, S b) => a -> b
-c3 :: C a b => forall a1. a1 -> b
-c4 :: C a b => forall a1. a1 -> b
--- imported via Control.Monad
-class Monad m => MonadPlus m where
- mzero :: m a
- mplus :: m a -> m a -> m a
-mplus :: MonadPlus m => forall a. m a -> m a -> m a
-mzero :: MonadPlus m => forall a. m a
--- imported via Control.Monad, Prelude
-(>>) :: Monad m => forall a b. m a -> m b -> m b
-(>>=) :: Monad m => forall a b. m a -> (a -> m b) -> m b
-fail :: Monad m => forall a. GHC.Base.String -> m a
-return :: Monad m => forall a. a -> m a
--- imported via Control.Monad, Prelude, T
-class Monad m where
- (>>=) :: m a -> (a -> m b) -> m b
- (>>) :: m a -> m b -> m b
- return :: a -> m a
- fail :: GHC.Base.String -> m a
--- imported via Data.Maybe
-catMaybes :: [Maybe a] -> [a]
-fromJust :: Maybe a -> a
-fromMaybe :: a -> Maybe a -> a
-isJust :: Maybe a -> GHC.Bool.Bool
-isNothing :: Maybe a -> GHC.Bool.Bool
-listToMaybe :: [a] -> Maybe a
-mapMaybe :: (a -> Maybe b) -> [a] -> [b]
-maybe :: b -> (a -> b) -> Maybe a -> b
-maybeToList :: Maybe a -> [a]
--- imported via Data.Maybe, Prelude
-Just :: a -> Maybe a
-data Maybe a = Nothing | Just a
-Nothing :: Maybe a
--- imported via Prelude
-(+) :: GHC.Num.Num a => a -> a -> a
-(=<<) :: Monad m => (a -> m b) -> m a -> m b
-class Eq a where
- (GHC.Classes.==) :: a -> a -> GHC.Bool.Bool
- (GHC.Classes./=) :: a -> a -> GHC.Bool.Bool
--- imported via Prelude, T
-Prelude.length :: [a] -> GHC.Types.Int
--- imported via T
-data T.Integer
- = integer-gmp:GHC.Integer.Type.S# GHC.Prim.Int#
- | integer-gmp:GHC.Integer.Type.J# GHC.Prim.Int# GHC.Prim.ByteArray#
-T.length :: Data.ByteString.Internal.ByteString -> GHC.Types.Int
-:browse! T
--- defined locally
-T.length :: T.Integer
-class N a
-class S a
-class C a b where
- c1 :: N b => a -> b
- c2 :: (N b, S b) => a -> b
- c3 :: a1 -> b
- c4 :: a1 -> b
-c1 :: (C a b, N b) => a -> b
-c2 :: (C a b, N b, S b) => a -> b
-c3 :: C a b => forall a1. a1 -> b
-c4 :: C a b => forall a1. a1 -> b
-:browse! T -- with -fprint-explicit-foralls
--- defined locally
-T.length :: T.Integer
-class N a
-class S a
-class C a b where
- c1 :: N b => a -> b
- c2 :: (N b, S b) => a -> b
- c3 :: forall a1. a1 -> b
- c4 :: forall a1. a1 -> b
-c1 :: forall a b. (C a b, N b) => a -> b
-c2 :: forall a b. (C a b, N b, S b) => a -> b
-c3 :: forall a b. C a b => forall a1. a1 -> b
-c4 :: forall a b. C a b => forall a1. a1 -> b
--- test :browse! <target> relative to different contexts
-:browse! C -- from *C>
--- defined locally
-g :: forall a. Num a => a -> a
-h :: forall a. Integral a => a -> a
--- imported via D
-f :: forall a. Num a => a -> a
-:browse! C -- from *B>, after :add B
--- imported via C
-g :: forall a. Num a => a -> a
-h :: forall a. Integral a => a -> a
-f :: forall a. Num a => a -> a
-:browse! C -- from *C>, after :m *C
--- defined locally
-g :: forall a. Num a => a -> a
-h :: forall a. Integral a => a -> a
--- imported via D
-f :: forall a. Num a => a -> a
-:browse! C -- from *D>, after :m *D
--- not currently imported
-C.g :: forall a. Num a => a -> a
-C.h :: forall a. Integral a => a -> a
--- defined locally
-f :: forall a. Num a => a -> a
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci026.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci026.script
deleted file mode 100644
index 871de86741..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci026.script
+++ /dev/null
@@ -1,6 +0,0 @@
-import Data.Maybe
-:browse
-:l ../prog002/A1.hs
-:browse
-:add ../prog002/B.hs
-:browse
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci026.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci026.stdout
deleted file mode 100644
index 163cca29b6..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci026.stdout
+++ /dev/null
@@ -1,15 +0,0 @@
-data Maybe a = Nothing | Just a
-catMaybes :: [Maybe a] -> [a]
-fromJust :: Maybe a -> a
-fromMaybe :: a -> Maybe a -> a
-isJust :: Maybe a -> Bool
-isNothing :: Maybe a -> Bool
-listToMaybe :: [a] -> Maybe a
-mapMaybe :: (a -> Maybe b) -> [a] -> [b]
-maybe :: b -> (a -> b) -> Maybe a -> b
-maybeToList :: Maybe a -> [a]
-data T = A Int | B Float
-f :: Double -> Double
-g :: Double -> Double
-h :: Integral a => a -> a
-f :: Double -> Double
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci027.hs b/testsuite/tests/ghc-regress/ghci/scripts/ghci027.hs
deleted file mode 100644
index df99d7d1c0..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci027.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- Test for #1617
-module Main where
-import Prelude ()
---import Control.Monad (mplus)
-import qualified Control.Monad (mplus)
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci027.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci027.script
deleted file mode 100644
index aaf0ac5544..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci027.script
+++ /dev/null
@@ -1,8 +0,0 @@
--- Test for #1617
-:!cp ghci027_1.hs ghci027.hs
-:load ghci027
-:browse *Main
-:!sleep 1
-:!cp ghci027_2.hs ghci027.hs
-:reload
-:browse *Main
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci027.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci027.stdout
deleted file mode 100644
index 2f627b46ec..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci027.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-class GHC.Base.Monad m => Control.Monad.MonadPlus m where
- ...
- mplus :: m a -> m a -> m a
-class GHC.Base.Monad m => Control.Monad.MonadPlus m where
- ...
- Control.Monad.mplus :: m a -> m a -> m a
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci027_1.hs b/testsuite/tests/ghc-regress/ghci/scripts/ghci027_1.hs
deleted file mode 100644
index a1a7bfac37..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci027_1.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- Test for #1617
-module Main where
-import Prelude ()
-import Control.Monad (mplus)
-import qualified Control.Monad (mplus)
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci027_2.hs b/testsuite/tests/ghc-regress/ghci/scripts/ghci027_2.hs
deleted file mode 100644
index df99d7d1c0..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci027_2.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- Test for #1617
-module Main where
-import Prelude ()
---import Control.Monad (mplus)
-import qualified Control.Monad (mplus)
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci028.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci028.script
deleted file mode 100644
index 5f527c13f6..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci028.script
+++ /dev/null
@@ -1,4 +0,0 @@
--- Testing that script input is interpreted at UTF-8
-:set -XUnicodeSyntax -XRankNTypes
-let (∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ); (f ∘ g) x = f (g x)
-reverse ∘ map Data.Char.toUpper $ "fish"
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci028.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci028.stdout
deleted file mode 100644
index a6ed183d5f..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci028.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"HSIF"
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci029.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci029.script
deleted file mode 100644
index e669b278e0..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci029.script
+++ /dev/null
@@ -1,11 +0,0 @@
--- :main and :run
-let main = System.Environment.getArgs >>= print
-:main foo bar
-:main foo "bar baz"
-:main ["foo", "bar baz"]
-let foo = putStrLn "foo" >> System.Environment.getArgs >>= print
-let bar = putStrLn "bar" >> System.Environment.getArgs >>= print
-:set -main-is foo
-:main foo "bar baz"
-:run bar ["foo", "bar baz"]
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci029.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci029.stdout
deleted file mode 100644
index 05cc525d47..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci029.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-["foo","bar"]
-["foo","bar baz"]
-["foo","bar baz"]
-foo
-["foo","bar baz"]
-bar
-["foo","bar baz"]
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci030.hs b/testsuite/tests/ghc-regress/ghci/scripts/ghci030.hs
deleted file mode 100644
index ed95ea9661..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci030.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- Trac #2082
--- If we :i D or C, we should see parentheses around (Int -> a)
-
-{-# LANGUAGE ExistentialQuantification #-}
-
-module Foo where
-
-data D = forall a . C (Int -> a) Char
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci030.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci030.script
deleted file mode 100644
index b0821e8388..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci030.script
+++ /dev/null
@@ -1,3 +0,0 @@
-:l ghci030
-:i D
-:i C
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci030.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci030.stdout
deleted file mode 100644
index 24fa768e6a..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci030.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-data D where
- C :: (Int -> a) -> Char -> D
- -- Defined at ghci030.hs:8:6
-data D where
- C :: (Int -> a) -> Char -> D
- -- Defined at ghci030.hs:8:21
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci031.hs b/testsuite/tests/ghc-regress/ghci/scripts/ghci031.hs
deleted file mode 100644
index ef5d985f75..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci031.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE DatatypeContexts #-}
--- Trac #2138
--- If we :i D, we should see the Eq constraint
-
-module Foo where
-
-data Eq a => D a = C a
-
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci031.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci031.script
deleted file mode 100644
index 23cba64bac..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci031.script
+++ /dev/null
@@ -1,2 +0,0 @@
-:l ghci031
-:i D
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci031.stderr b/testsuite/tests/ghc-regress/ghci/scripts/ghci031.stderr
deleted file mode 100644
index 8e4256c7f4..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci031.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-ghci031.hs:1:14:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci031.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci031.stdout
deleted file mode 100644
index 018dc4bc58..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci031.stdout
+++ /dev/null
@@ -1 +0,0 @@
-data Eq a => D a = C a -- Defined at ghci031.hs:7:14
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci032.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci032.script
deleted file mode 100644
index cea8afff15..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci032.script
+++ /dev/null
@@ -1,8 +0,0 @@
-
-import System.FilePath
-import System.Directory
-wd1 <- getCurrentDirectory
-setCurrentDirectory ".."
-wd2 <- getCurrentDirectory
-wd1_parent <- canonicalizePath (wd1 </> "..")
-wd1_parent `equalFilePath` wd2 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci032.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci032.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci032.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci033.hs b/testsuite/tests/ghc-regress/ghci/scripts/ghci033.hs
deleted file mode 100644
index b67960068d..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci033.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- Test Trac #1930: display of infix constructors
-module Test where
-
-data Foo = Foo1 Int
- | Int `InfixCon` Bool \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci033.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci033.script
deleted file mode 100644
index 3911618777..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci033.script
+++ /dev/null
@@ -1,2 +0,0 @@
-:l ghci033
-:i Foo
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci033.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci033.stdout
deleted file mode 100644
index 748fab88b3..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci033.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-data Foo = Foo1 Int | Int `InfixCon` Bool
- -- Defined at ghci033.hs:4:6-8
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci034.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci034.script
deleted file mode 100644
index 386760081f..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci034.script
+++ /dev/null
@@ -1,3 +0,0 @@
-:i thisIsNotDefined
--- In 6.9, GHCi used to exit at this point
-putStrLn "Foo"
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci034.stderr b/testsuite/tests/ghc-regress/ghci/scripts/ghci034.stderr
deleted file mode 100644
index 59501b2443..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci034.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-Top level: Not in scope: `thisIsNotDefined'
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci034.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci034.stdout
deleted file mode 100644
index bc56c4d894..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci034.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Foo
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci035.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci035.script
deleted file mode 100644
index dcf5adc0de..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci035.script
+++ /dev/null
@@ -1,4 +0,0 @@
-:set -Wall
--- In 6.12, GHCi used to warn that x was unused (trac #3813):
-x <- return True
-x
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci035.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci035.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci035.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci036.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci036.script
deleted file mode 100644
index 3615e07252..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci036.script
+++ /dev/null
@@ -1,19 +0,0 @@
-import Data.List (nub)
-:t nubBy
-import Data.List (nubBy)
-:t nub
-:m +Data.List
-:m -Data.List
-:t nub
-:t nubBy
-import Data.List hiding (nub)
-:t nub
-import qualified Data.List as L
-:t nub
-:t L.nub
-:m +Data.List
-:t L.nub
-:m -Data.List
-:t L.nub
-:m Prelude
-:t nub \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci036.stderr b/testsuite/tests/ghc-regress/ghci/scripts/ghci036.stderr
deleted file mode 100644
index 2470e3402b..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci036.stderr
+++ /dev/null
@@ -1,22 +0,0 @@
-
-<interactive>:1:1: Not in scope: `nubBy'
-
-<interactive>:1:1: Not in scope: `nub'
-
-<interactive>:1:1: Not in scope: `nubBy'
-
-<interactive>:1:1: Not in scope: `nub'
-
-<interactive>:1:1:
- Not in scope: `nub'
- Perhaps you meant `L.nub' (imported from Data.List)
-
-<interactive>:1:1:
- Failed to load interface for `L'
- Use -v to see a list of the files searched for.
-
-<interactive>:1:1:
- Failed to load interface for `L'
- Use -v to see a list of the files searched for.
-
-<interactive>:1:1: Not in scope: `nub'
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci036.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci036.stdout
deleted file mode 100644
index 739118210d..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci036.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-nub :: Eq a => [a] -> [a]
-L.nub :: Eq a => [a] -> [a]
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci037.script b/testsuite/tests/ghc-regress/ghci/scripts/ghci037.script
deleted file mode 100644
index 1407625632..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci037.script
+++ /dev/null
@@ -1,3 +0,0 @@
-x <- Control.Concurrent.myThreadId
-y <- Control.Concurrent.myThreadId
-print (x == y) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/ghci/scripts/ghci037.stdout b/testsuite/tests/ghc-regress/ghci/scripts/ghci037.stdout
deleted file mode 100644
index 91d6f80f27..0000000000
--- a/testsuite/tests/ghc-regress/ghci/scripts/ghci037.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-False
-True
diff --git a/testsuite/tests/ghc-regress/ghci/shell.hs b/testsuite/tests/ghc-regress/ghci/shell.hs
deleted file mode 100644
index 75f78342a4..0000000000
--- a/testsuite/tests/ghc-regress/ghci/shell.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- Used to present a consistent shell view for :! commands in GHCi
--- scripts. We're assuming that sh is in the path and that it
--- is a Bourne-compatible shell.
-
-import System.Cmd
-import System.Exit
-
-shell :: String -> IO ExitCode
-shell s = rawSystem "sh" ["-c", s]
diff --git a/testsuite/tests/ghc-regress/ghci/should_run/2589.hs b/testsuite/tests/ghc-regress/ghci/should_run/2589.hs
deleted file mode 100644
index eadb9995e1..0000000000
--- a/testsuite/tests/ghc-regress/ghci/should_run/2589.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-module Main where
-
-import GHC.Ptr
-import GHC.Exts
-import Foreign.Ptr
-
-main = print (Ptr nullAddr# == nullPtr)
diff --git a/testsuite/tests/ghc-regress/ghci/should_run/2589.stdout b/testsuite/tests/ghc-regress/ghci/should_run/2589.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/ghci/should_run/2589.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/ghci/should_run/2881.hs b/testsuite/tests/ghc-regress/ghci/should_run/2881.hs
deleted file mode 100644
index 94ecfa6a00..0000000000
--- a/testsuite/tests/ghc-regress/ghci/should_run/2881.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-import Data.Word
-fib :: Word -> Word
-fib 0 = 1
-fib 1 = 1
-fib n = l + r
- where l = fib (n-2); r = fib (n-1)
-
-main = print (fib 20)
diff --git a/testsuite/tests/ghc-regress/ghci/should_run/2881.stdout b/testsuite/tests/ghc-regress/ghci/should_run/2881.stdout
deleted file mode 100644
index 06a735b308..0000000000
--- a/testsuite/tests/ghc-regress/ghci/should_run/2881.stdout
+++ /dev/null
@@ -1 +0,0 @@
-10946
diff --git a/testsuite/tests/ghc-regress/ghci/should_run/3171.stdout b/testsuite/tests/ghc-regress/ghci/should_run/3171.stdout
deleted file mode 100644
index c83176a2cf..0000000000
--- a/testsuite/tests/ghc-regress/ghci/should_run/3171.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Interrupted.
diff --git a/testsuite/tests/ghc-regress/ghci/should_run/Makefile b/testsuite/tests/ghc-regress/ghci/should_run/Makefile
deleted file mode 100644
index f2d6ad7070..0000000000
--- a/testsuite/tests/ghc-regress/ghci/should_run/Makefile
+++ /dev/null
@@ -1,9 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-# Test that threadDelay can be interrupted by ^C.
-3171:
- echo "do Control.Concurrent.threadDelay 3000000; putStrLn \"threadDelay was not interrupted\"" | \
- "$(TEST_HC)" $(TEST_HC_OPTS) -ignore-dot-ghci -v0 --interactive 2>3171.err & \
- sleep 2; kill -INT $$!; wait
diff --git a/testsuite/tests/ghc-regress/ghci/should_run/all.T b/testsuite/tests/ghc-regress/ghci/should_run/all.T
deleted file mode 100644
index 41d65f2e32..0000000000
--- a/testsuite/tests/ghc-regress/ghci/should_run/all.T
+++ /dev/null
@@ -1,18 +0,0 @@
-
-setTestOpts(if_compiler_profiled(skip))
-
-# We only want to run these tests with GHCi
-def just_ghci( opts ):
- opts.only_ways = ['ghci']
-
-test('ghcirun001', just_ghci, compile_and_run, [''])
-test('ghcirun002', just_ghci, compile_and_run, [''])
-test('ghcirun003', just_ghci, compile_and_run, [''])
-test('2589', just_ghci, compile_and_run, [''])
-test('2881', just_ghci, compile_and_run, [''])
-
-test('3171',
- [if_platform('i386-unknown-mingw32',skip),
- req_interp],
- run_command,
- ['$MAKE -s --no-print-directory 3171'])
diff --git a/testsuite/tests/ghc-regress/ghci/should_run/ghcirun001.hs b/testsuite/tests/ghc-regress/ghci/should_run/ghcirun001.hs
deleted file mode 100644
index af193ecb97..0000000000
--- a/testsuite/tests/ghc-regress/ghci/should_run/ghcirun001.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-module Main where
-
--- This test used to fail in GHC 5.04.2. See rev. 1.22 of
--- libraries/base/GHC/Base.lhs for the fix.
-
-data FourArrow = A | B | C | D | E | ABE | AC | BD | CDE
- deriving (Eq)
-
-dom E = ABE
-
-cod A = AC
-cod B = BD
-cod C = CDE
-cod D = CDE
-cod E = CDE
-cod ABE = ABE
-cod AC = AC
-cod BD = BD
-cod CDE = CDE
-
-----
-bceFour :: FourArrow -> FourArrow -> String
-bceFour f g
- | dom f == dom g && cod f == cod g
- = "it works"
- | otherwise = error ("Four.bceFour: precondition fails:"
- ++ "arrows not parallel"
- ++ "\n")
-
-main = print (bceFour E E)
diff --git a/testsuite/tests/ghc-regress/ghci/should_run/ghcirun001.stdout b/testsuite/tests/ghc-regress/ghci/should_run/ghcirun001.stdout
deleted file mode 100644
index 0558f45ba9..0000000000
--- a/testsuite/tests/ghc-regress/ghci/should_run/ghcirun001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"it works"
diff --git a/testsuite/tests/ghc-regress/ghci/should_run/ghcirun002.hs b/testsuite/tests/ghc-regress/ghci/should_run/ghcirun002.hs
deleted file mode 100644
index d744359ed1..0000000000
--- a/testsuite/tests/ghc-regress/ghci/should_run/ghcirun002.hs
+++ /dev/null
@@ -1,72 +0,0 @@
-import Data.Maybe
-import Data.List
-
-data Dir = R | D | L | U deriving (Show, Eq, Enum)
-type Spiral = ([[Int]], Int, Dir) -- (rows, current row, next direction)
-
-rows :: Spiral -> [[Int]]
-rows (rs, i, d) = rs
-currentrow :: Spiral -> Int
-currentrow (rs, i, d) = i
-nextdir :: Spiral -> Dir
-nextdir (rs, i, d) = d
-
-getrow :: Int -> [[Int]] -> Maybe [Int]
-getrow i sp = if i < 0 || i >= length sp then Nothing else Just (sp!!i)
-
-ndir :: Dir -> Dir
-ndir d = if d == U then R else succ d
-
-newsp :: Spiral
-newsp = ([[1]], 0, R)
-
-makeSpiral :: Int -> Spiral
-makeSpiral i = makeSpiral' 2 newsp
- where makeSpiral' j sp = if j > i
- then sp
- else makeSpiral' (j+1) (update j sp)
-
-update :: Int -> Spiral -> Spiral
-update i (sp, cr, d) = (sp', cr', d')
- where oldrow = if (d == U && cr' == cr && cr == 0) ||
- (d == D && cr' == length sp)
- then []
- else fromJust $ getrow cr' sp
- cr' | d == L || d == R = cr
- | d == U = if cr == 0 then 0 else cr-1
- | otherwise = cr+1
- cr'' = if d == U && cr == 0 then -1 else cr'
- sp' = insertrow cr'' newrow sp
- newrow = case d of
- R -> oldrow++[i]
- D -> oldrow++[i]
- L -> i:oldrow
- U -> i:oldrow
- d' | d == R || d == L = if length oldrow == maximum (map length sp)
- then ndir d
- else d
- | d == U = if cr'' == -1 then ndir d else d
- | otherwise = if cr' == length sp then ndir d else d
-
-
-
-insertrow :: Int -> [Int] -> [[Int]] -> [[Int]]
-insertrow i r rs = if i == -1 then r:rs else front++[r]++back
- where (front, rest) = splitAt i rs
- back = if null rest then [] else tail rest
-
-printSpiral :: Spiral -> IO ()
-printSpiral (sp, i, d) = putStrLn (concat $ intersperse "\n" (map show sp))
-
-sumdiags :: Spiral -> Int
-sumdiags (sp, i, d) = (sumdiags' 0 0 (+1)) + (sumdiags' 0 end (subtract 1)) - centre
- where row1 = sp!!0
- end = length row1 - 1
- halfx = (length row1 `div` 2)
- halfy = (length sp `div` 2)
- centre = (sp!!halfy)!!halfx
- sumdiags' row col f = if row == length sp
- then 0
- else (sp!!row)!!col + sumdiags' (row+1) (f col) f
-
-main = print (makeSpiral 10000)
diff --git a/testsuite/tests/ghc-regress/ghci/should_run/ghcirun002.stdout b/testsuite/tests/ghc-regress/ghci/should_run/ghcirun002.stdout
deleted file mode 100644
index 30ca057963..0000000000
--- a/testsuite/tests/ghc-regress/ghci/should_run/ghcirun002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-([[9703,9704,9705,9706,9707,9708,9709,9710,9711,9712,9713,9714,9715,9716,9717,9718,9719,9720,9721,9722,9723,9724,9725,9726,9727,9728,9729,9730,9731,9732,9733,9734,9735,9736,9737,9738,9739,9740,9741,9742,9743,9744,9745,9746,9747,9748,9749,9750,9751,9752,9753,9754,9755,9756,9757,9758,9759,9760,9761,9762,9763,9764,9765,9766,9767,9768,9769,9770,9771,9772,9773,9774,9775,9776,9777,9778,9779,9780,9781,9782,9783,9784,9785,9786,9787,9788,9789,9790,9791,9792,9793,9794,9795,9796,9797,9798,9799,9800,9801,9802],[9702,9313,9314,9315,9316,9317,9318,9319,9320,9321,9322,9323,9324,9325,9326,9327,9328,9329,9330,9331,9332,9333,9334,9335,9336,9337,9338,9339,9340,9341,9342,9343,9344,9345,9346,9347,9348,9349,9350,9351,9352,9353,9354,9355,9356,9357,9358,9359,9360,9361,9362,9363,9364,9365,9366,9367,9368,9369,9370,9371,9372,9373,9374,9375,9376,9377,9378,9379,9380,9381,9382,9383,9384,9385,9386,9387,9388,9389,9390,9391,9392,9393,9394,9395,9396,9397,9398,9399,9400,9401,9402,9403,9404,9405,9406,9407,9408,9409,9410,9803],[9701,9312,8931,8932,8933,8934,8935,8936,8937,8938,8939,8940,8941,8942,8943,8944,8945,8946,8947,8948,8949,8950,8951,8952,8953,8954,8955,8956,8957,8958,8959,8960,8961,8962,8963,8964,8965,8966,8967,8968,8969,8970,8971,8972,8973,8974,8975,8976,8977,8978,8979,8980,8981,8982,8983,8984,8985,8986,8987,8988,8989,8990,8991,8992,8993,8994,8995,8996,8997,8998,8999,9000,9001,9002,9003,9004,9005,9006,9007,9008,9009,9010,9011,9012,9013,9014,9015,9016,9017,9018,9019,9020,9021,9022,9023,9024,9025,9026,9411,9804],[9700,9311,8930,8557,8558,8559,8560,8561,8562,8563,8564,8565,8566,8567,8568,8569,8570,8571,8572,8573,8574,8575,8576,8577,8578,8579,8580,8581,8582,8583,8584,8585,8586,8587,8588,8589,8590,8591,8592,8593,8594,8595,8596,8597,8598,8599,8600,8601,8602,8603,8604,8605,8606,8607,8608,8609,8610,8611,8612,8613,8614,8615,8616,8617,8618,8619,8620,8621,8622,8623,8624,8625,8626,8627,8628,8629,8630,8631,8632,8633,8634,8635,8636,8637,8638,8639,8640,8641,8642,8643,8644,8645,8646,8647,8648,8649,8650,9027,9412,9805],[9699,9310,8929,8556,8191,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8203,8204,8205,8206,8207,8208,8209,8210,8211,8212,8213,8214,8215,8216,8217,8218,8219,8220,8221,8222,8223,8224,8225,8226,8227,8228,8229,8230,8231,8232,8233,8234,8235,8236,8237,8238,8239,8240,8241,8242,8243,8244,8245,8246,8247,8248,8249,8250,8251,8252,8253,8254,8255,8256,8257,8258,8259,8260,8261,8262,8263,8264,8265,8266,8267,8268,8269,8270,8271,8272,8273,8274,8275,8276,8277,8278,8279,8280,8281,8282,8651,9028,9413,9806],[9698,9309,8928,8555,8190,7833,7834,7835,7836,7837,7838,7839,7840,7841,7842,7843,7844,7845,7846,7847,7848,7849,7850,7851,7852,7853,7854,7855,7856,7857,7858,7859,7860,7861,7862,7863,7864,7865,7866,7867,7868,7869,7870,7871,7872,7873,7874,7875,7876,7877,7878,7879,7880,7881,7882,7883,7884,7885,7886,7887,7888,7889,7890,7891,7892,7893,7894,7895,7896,7897,7898,7899,7900,7901,7902,7903,7904,7905,7906,7907,7908,7909,7910,7911,7912,7913,7914,7915,7916,7917,7918,7919,7920,7921,7922,8283,8652,9029,9414,9807],[9697,9308,8927,8554,8189,7832,7483,7484,7485,7486,7487,7488,7489,7490,7491,7492,7493,7494,7495,7496,7497,7498,7499,7500,7501,7502,7503,7504,7505,7506,7507,7508,7509,7510,7511,7512,7513,7514,7515,7516,7517,7518,7519,7520,7521,7522,7523,7524,7525,7526,7527,7528,7529,7530,7531,7532,7533,7534,7535,7536,7537,7538,7539,7540,7541,7542,7543,7544,7545,7546,7547,7548,7549,7550,7551,7552,7553,7554,7555,7556,7557,7558,7559,7560,7561,7562,7563,7564,7565,7566,7567,7568,7569,7570,7923,8284,8653,9030,9415,9808],[9696,9307,8926,8553,8188,7831,7482,7141,7142,7143,7144,7145,7146,7147,7148,7149,7150,7151,7152,7153,7154,7155,7156,7157,7158,7159,7160,7161,7162,7163,7164,7165,7166,7167,7168,7169,7170,7171,7172,7173,7174,7175,7176,7177,7178,7179,7180,7181,7182,7183,7184,7185,7186,7187,7188,7189,7190,7191,7192,7193,7194,7195,7196,7197,7198,7199,7200,7201,7202,7203,7204,7205,7206,7207,7208,7209,7210,7211,7212,7213,7214,7215,7216,7217,7218,7219,7220,7221,7222,7223,7224,7225,7226,7571,7924,8285,8654,9031,9416,9809],[9695,9306,8925,8552,8187,7830,7481,7140,6807,6808,6809,6810,6811,6812,6813,6814,6815,6816,6817,6818,6819,6820,6821,6822,6823,6824,6825,6826,6827,6828,6829,6830,6831,6832,6833,6834,6835,6836,6837,6838,6839,6840,6841,6842,6843,6844,6845,6846,6847,6848,6849,6850,6851,6852,6853,6854,6855,6856,6857,6858,6859,6860,6861,6862,6863,6864,6865,6866,6867,6868,6869,6870,6871,6872,6873,6874,6875,6876,6877,6878,6879,6880,6881,6882,6883,6884,6885,6886,6887,6888,6889,6890,7227,7572,7925,8286,8655,9032,9417,9810],[9694,9305,8924,8551,8186,7829,7480,7139,6806,6481,6482,6483,6484,6485,6486,6487,6488,6489,6490,6491,6492,6493,6494,6495,6496,6497,6498,6499,6500,6501,6502,6503,6504,6505,6506,6507,6508,6509,6510,6511,6512,6513,6514,6515,6516,6517,6518,6519,6520,6521,6522,6523,6524,6525,6526,6527,6528,6529,6530,6531,6532,6533,6534,6535,6536,6537,6538,6539,6540,6541,6542,6543,6544,6545,6546,6547,6548,6549,6550,6551,6552,6553,6554,6555,6556,6557,6558,6559,6560,6561,6562,6891,7228,7573,7926,8287,8656,9033,9418,9811],[9693,9304,8923,8550,8185,7828,7479,7138,6805,6480,6163,6164,6165,6166,6167,6168,6169,6170,6171,6172,6173,6174,6175,6176,6177,6178,6179,6180,6181,6182,6183,6184,6185,6186,6187,6188,6189,6190,6191,6192,6193,6194,6195,6196,6197,6198,6199,6200,6201,6202,6203,6204,6205,6206,6207,6208,6209,6210,6211,6212,6213,6214,6215,6216,6217,6218,6219,6220,6221,6222,6223,6224,6225,6226,6227,6228,6229,6230,6231,6232,6233,6234,6235,6236,6237,6238,6239,6240,6241,6242,6563,6892,7229,7574,7927,8288,8657,9034,9419,9812],[9692,9303,8922,8549,8184,7827,7478,7137,6804,6479,6162,5853,5854,5855,5856,5857,5858,5859,5860,5861,5862,5863,5864,5865,5866,5867,5868,5869,5870,5871,5872,5873,5874,5875,5876,5877,5878,5879,5880,5881,5882,5883,5884,5885,5886,5887,5888,5889,5890,5891,5892,5893,5894,5895,5896,5897,5898,5899,5900,5901,5902,5903,5904,5905,5906,5907,5908,5909,5910,5911,5912,5913,5914,5915,5916,5917,5918,5919,5920,5921,5922,5923,5924,5925,5926,5927,5928,5929,5930,6243,6564,6893,7230,7575,7928,8289,8658,9035,9420,9813],[9691,9302,8921,8548,8183,7826,7477,7136,6803,6478,6161,5852,5551,5552,5553,5554,5555,5556,5557,5558,5559,5560,5561,5562,5563,5564,5565,5566,5567,5568,5569,5570,5571,5572,5573,5574,5575,5576,5577,5578,5579,5580,5581,5582,5583,5584,5585,5586,5587,5588,5589,5590,5591,5592,5593,5594,5595,5596,5597,5598,5599,5600,5601,5602,5603,5604,5605,5606,5607,5608,5609,5610,5611,5612,5613,5614,5615,5616,5617,5618,5619,5620,5621,5622,5623,5624,5625,5626,5931,6244,6565,6894,7231,7576,7929,8290,8659,9036,9421,9814],[9690,9301,8920,8547,8182,7825,7476,7135,6802,6477,6160,5851,5550,5257,5258,5259,5260,5261,5262,5263,5264,5265,5266,5267,5268,5269,5270,5271,5272,5273,5274,5275,5276,5277,5278,5279,5280,5281,5282,5283,5284,5285,5286,5287,5288,5289,5290,5291,5292,5293,5294,5295,5296,5297,5298,5299,5300,5301,5302,5303,5304,5305,5306,5307,5308,5309,5310,5311,5312,5313,5314,5315,5316,5317,5318,5319,5320,5321,5322,5323,5324,5325,5326,5327,5328,5329,5330,5627,5932,6245,6566,6895,7232,7577,7930,8291,8660,9037,9422,9815],[9689,9300,8919,8546,8181,7824,7475,7134,6801,6476,6159,5850,5549,5256,4971,4972,4973,4974,4975,4976,4977,4978,4979,4980,4981,4982,4983,4984,4985,4986,4987,4988,4989,4990,4991,4992,4993,4994,4995,4996,4997,4998,4999,5000,5001,5002,5003,5004,5005,5006,5007,5008,5009,5010,5011,5012,5013,5014,5015,5016,5017,5018,5019,5020,5021,5022,5023,5024,5025,5026,5027,5028,5029,5030,5031,5032,5033,5034,5035,5036,5037,5038,5039,5040,5041,5042,5331,5628,5933,6246,6567,6896,7233,7578,7931,8292,8661,9038,9423,9816],[9688,9299,8918,8545,8180,7823,7474,7133,6800,6475,6158,5849,5548,5255,4970,4693,4694,4695,4696,4697,4698,4699,4700,4701,4702,4703,4704,4705,4706,4707,4708,4709,4710,4711,4712,4713,4714,4715,4716,4717,4718,4719,4720,4721,4722,4723,4724,4725,4726,4727,4728,4729,4730,4731,4732,4733,4734,4735,4736,4737,4738,4739,4740,4741,4742,4743,4744,4745,4746,4747,4748,4749,4750,4751,4752,4753,4754,4755,4756,4757,4758,4759,4760,4761,4762,5043,5332,5629,5934,6247,6568,6897,7234,7579,7932,8293,8662,9039,9424,9817],[9687,9298,8917,8544,8179,7822,7473,7132,6799,6474,6157,5848,5547,5254,4969,4692,4423,4424,4425,4426,4427,4428,4429,4430,4431,4432,4433,4434,4435,4436,4437,4438,4439,4440,4441,4442,4443,4444,4445,4446,4447,4448,4449,4450,4451,4452,4453,4454,4455,4456,4457,4458,4459,4460,4461,4462,4463,4464,4465,4466,4467,4468,4469,4470,4471,4472,4473,4474,4475,4476,4477,4478,4479,4480,4481,4482,4483,4484,4485,4486,4487,4488,4489,4490,4763,5044,5333,5630,5935,6248,6569,6898,7235,7580,7933,8294,8663,9040,9425,9818],[9686,9297,8916,8543,8178,7821,7472,7131,6798,6473,6156,5847,5546,5253,4968,4691,4422,4161,4162,4163,4164,4165,4166,4167,4168,4169,4170,4171,4172,4173,4174,4175,4176,4177,4178,4179,4180,4181,4182,4183,4184,4185,4186,4187,4188,4189,4190,4191,4192,4193,4194,4195,4196,4197,4198,4199,4200,4201,4202,4203,4204,4205,4206,4207,4208,4209,4210,4211,4212,4213,4214,4215,4216,4217,4218,4219,4220,4221,4222,4223,4224,4225,4226,4491,4764,5045,5334,5631,5936,6249,6570,6899,7236,7581,7934,8295,8664,9041,9426,9819],[9685,9296,8915,8542,8177,7820,7471,7130,6797,6472,6155,5846,5545,5252,4967,4690,4421,4160,3907,3908,3909,3910,3911,3912,3913,3914,3915,3916,3917,3918,3919,3920,3921,3922,3923,3924,3925,3926,3927,3928,3929,3930,3931,3932,3933,3934,3935,3936,3937,3938,3939,3940,3941,3942,3943,3944,3945,3946,3947,3948,3949,3950,3951,3952,3953,3954,3955,3956,3957,3958,3959,3960,3961,3962,3963,3964,3965,3966,3967,3968,3969,3970,4227,4492,4765,5046,5335,5632,5937,6250,6571,6900,7237,7582,7935,8296,8665,9042,9427,9820],[9684,9295,8914,8541,8176,7819,7470,7129,6796,6471,6154,5845,5544,5251,4966,4689,4420,4159,3906,3661,3662,3663,3664,3665,3666,3667,3668,3669,3670,3671,3672,3673,3674,3675,3676,3677,3678,3679,3680,3681,3682,3683,3684,3685,3686,3687,3688,3689,3690,3691,3692,3693,3694,3695,3696,3697,3698,3699,3700,3701,3702,3703,3704,3705,3706,3707,3708,3709,3710,3711,3712,3713,3714,3715,3716,3717,3718,3719,3720,3721,3722,3971,4228,4493,4766,5047,5336,5633,5938,6251,6572,6901,7238,7583,7936,8297,8666,9043,9428,9821],[9683,9294,8913,8540,8175,7818,7469,7128,6795,6470,6153,5844,5543,5250,4965,4688,4419,4158,3905,3660,3423,3424,3425,3426,3427,3428,3429,3430,3431,3432,3433,3434,3435,3436,3437,3438,3439,3440,3441,3442,3443,3444,3445,3446,3447,3448,3449,3450,3451,3452,3453,3454,3455,3456,3457,3458,3459,3460,3461,3462,3463,3464,3465,3466,3467,3468,3469,3470,3471,3472,3473,3474,3475,3476,3477,3478,3479,3480,3481,3482,3723,3972,4229,4494,4767,5048,5337,5634,5939,6252,6573,6902,7239,7584,7937,8298,8667,9044,9429,9822],[9682,9293,8912,8539,8174,7817,7468,7127,6794,6469,6152,5843,5542,5249,4964,4687,4418,4157,3904,3659,3422,3193,3194,3195,3196,3197,3198,3199,3200,3201,3202,3203,3204,3205,3206,3207,3208,3209,3210,3211,3212,3213,3214,3215,3216,3217,3218,3219,3220,3221,3222,3223,3224,3225,3226,3227,3228,3229,3230,3231,3232,3233,3234,3235,3236,3237,3238,3239,3240,3241,3242,3243,3244,3245,3246,3247,3248,3249,3250,3483,3724,3973,4230,4495,4768,5049,5338,5635,5940,6253,6574,6903,7240,7585,7938,8299,8668,9045,9430,9823],[9681,9292,8911,8538,8173,7816,7467,7126,6793,6468,6151,5842,5541,5248,4963,4686,4417,4156,3903,3658,3421,3192,2971,2972,2973,2974,2975,2976,2977,2978,2979,2980,2981,2982,2983,2984,2985,2986,2987,2988,2989,2990,2991,2992,2993,2994,2995,2996,2997,2998,2999,3000,3001,3002,3003,3004,3005,3006,3007,3008,3009,3010,3011,3012,3013,3014,3015,3016,3017,3018,3019,3020,3021,3022,3023,3024,3025,3026,3251,3484,3725,3974,4231,4496,4769,5050,5339,5636,5941,6254,6575,6904,7241,7586,7939,8300,8669,9046,9431,9824],[9680,9291,8910,8537,8172,7815,7466,7125,6792,6467,6150,5841,5540,5247,4962,4685,4416,4155,3902,3657,3420,3191,2970,2757,2758,2759,2760,2761,2762,2763,2764,2765,2766,2767,2768,2769,2770,2771,2772,2773,2774,2775,2776,2777,2778,2779,2780,2781,2782,2783,2784,2785,2786,2787,2788,2789,2790,2791,2792,2793,2794,2795,2796,2797,2798,2799,2800,2801,2802,2803,2804,2805,2806,2807,2808,2809,2810,3027,3252,3485,3726,3975,4232,4497,4770,5051,5340,5637,5942,6255,6576,6905,7242,7587,7940,8301,8670,9047,9432,9825],[9679,9290,8909,8536,8171,7814,7465,7124,6791,6466,6149,5840,5539,5246,4961,4684,4415,4154,3901,3656,3419,3190,2969,2756,2551,2552,2553,2554,2555,2556,2557,2558,2559,2560,2561,2562,2563,2564,2565,2566,2567,2568,2569,2570,2571,2572,2573,2574,2575,2576,2577,2578,2579,2580,2581,2582,2583,2584,2585,2586,2587,2588,2589,2590,2591,2592,2593,2594,2595,2596,2597,2598,2599,2600,2601,2602,2811,3028,3253,3486,3727,3976,4233,4498,4771,5052,5341,5638,5943,6256,6577,6906,7243,7588,7941,8302,8671,9048,9433,9826],[9678,9289,8908,8535,8170,7813,7464,7123,6790,6465,6148,5839,5538,5245,4960,4683,4414,4153,3900,3655,3418,3189,2968,2755,2550,2353,2354,2355,2356,2357,2358,2359,2360,2361,2362,2363,2364,2365,2366,2367,2368,2369,2370,2371,2372,2373,2374,2375,2376,2377,2378,2379,2380,2381,2382,2383,2384,2385,2386,2387,2388,2389,2390,2391,2392,2393,2394,2395,2396,2397,2398,2399,2400,2401,2402,2603,2812,3029,3254,3487,3728,3977,4234,4499,4772,5053,5342,5639,5944,6257,6578,6907,7244,7589,7942,8303,8672,9049,9434,9827],[9677,9288,8907,8534,8169,7812,7463,7122,6789,6464,6147,5838,5537,5244,4959,4682,4413,4152,3899,3654,3417,3188,2967,2754,2549,2352,2163,2164,2165,2166,2167,2168,2169,2170,2171,2172,2173,2174,2175,2176,2177,2178,2179,2180,2181,2182,2183,2184,2185,2186,2187,2188,2189,2190,2191,2192,2193,2194,2195,2196,2197,2198,2199,2200,2201,2202,2203,2204,2205,2206,2207,2208,2209,2210,2403,2604,2813,3030,3255,3488,3729,3978,4235,4500,4773,5054,5343,5640,5945,6258,6579,6908,7245,7590,7943,8304,8673,9050,9435,9828],[9676,9287,8906,8533,8168,7811,7462,7121,6788,6463,6146,5837,5536,5243,4958,4681,4412,4151,3898,3653,3416,3187,2966,2753,2548,2351,2162,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026,2211,2404,2605,2814,3031,3256,3489,3730,3979,4236,4501,4774,5055,5344,5641,5946,6259,6580,6909,7246,7591,7944,8305,8674,9051,9436,9829],[9675,9286,8905,8532,8167,7810,7461,7120,6787,6462,6145,5836,5535,5242,4957,4680,4411,4150,3897,3652,3415,3186,2965,2752,2547,2350,2161,1980,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,2027,2212,2405,2606,2815,3032,3257,3490,3731,3980,4237,4502,4775,5056,5345,5642,5947,6260,6581,6910,7247,7592,7945,8306,8675,9052,9437,9830],[9674,9285,8904,8531,8166,7809,7460,7119,6786,6461,6144,5835,5534,5241,4956,4679,4410,4149,3896,3651,3414,3185,2964,2751,2546,2349,2160,1979,1806,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1851,2028,2213,2406,2607,2816,3033,3258,3491,3732,3981,4238,4503,4776,5057,5346,5643,5948,6261,6582,6911,7248,7593,7946,8307,8676,9053,9438,9831],[9673,9284,8903,8530,8165,7808,7459,7118,6785,6460,6143,5834,5533,5240,4955,4678,4409,4148,3895,3650,3413,3184,2963,2750,2545,2348,2159,1978,1805,1640,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1683,1852,2029,2214,2407,2608,2817,3034,3259,3492,3733,3982,4239,4504,4777,5058,5347,5644,5949,6262,6583,6912,7249,7594,7947,8308,8677,9054,9439,9832],[9672,9283,8902,8529,8164,7807,7458,7117,6784,6459,6142,5833,5532,5239,4954,4677,4408,4147,3894,3649,3412,3183,2962,2749,2544,2347,2158,1977,1804,1639,1482,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1523,1684,1853,2030,2215,2408,2609,2818,3035,3260,3493,3734,3983,4240,4505,4778,5059,5348,5645,5950,6263,6584,6913,7250,7595,7948,8309,8678,9055,9440,9833],[9671,9282,8901,8528,8163,7806,7457,7116,6783,6458,6141,5832,5531,5238,4953,4676,4407,4146,3893,3648,3411,3182,2961,2748,2543,2346,2157,1976,1803,1638,1481,1332,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1371,1524,1685,1854,2031,2216,2409,2610,2819,3036,3261,3494,3735,3984,4241,4506,4779,5060,5349,5646,5951,6264,6585,6914,7251,7596,7949,8310,8679,9056,9441,9834],[9670,9281,8900,8527,8162,7805,7456,7115,6782,6457,6140,5831,5530,5237,4952,4675,4406,4145,3892,3647,3410,3181,2960,2747,2542,2345,2156,1975,1802,1637,1480,1331,1190,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1227,1372,1525,1686,1855,2032,2217,2410,2611,2820,3037,3262,3495,3736,3985,4242,4507,4780,5061,5350,5647,5952,6265,6586,6915,7252,7597,7950,8311,8680,9057,9442,9835],[9669,9280,8899,8526,8161,7804,7455,7114,6781,6456,6139,5830,5529,5236,4951,4674,4405,4144,3891,3646,3409,3180,2959,2746,2541,2344,2155,1974,1801,1636,1479,1330,1189,1056,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,1091,1228,1373,1526,1687,1856,2033,2218,2411,2612,2821,3038,3263,3496,3737,3986,4243,4508,4781,5062,5351,5648,5953,6266,6587,6916,7253,7598,7951,8312,8681,9058,9443,9836],[9668,9279,8898,8525,8160,7803,7454,7113,6780,6455,6138,5829,5528,5235,4950,4673,4404,4143,3890,3645,3408,3179,2958,2745,2540,2343,2154,1973,1800,1635,1478,1329,1188,1055,930,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,963,1092,1229,1374,1527,1688,1857,2034,2219,2412,2613,2822,3039,3264,3497,3738,3987,4244,4509,4782,5063,5352,5649,5954,6267,6588,6917,7254,7599,7952,8313,8682,9059,9444,9837],[9667,9278,8897,8524,8159,7802,7453,7112,6779,6454,6137,5828,5527,5234,4949,4672,4403,4142,3889,3644,3407,3178,2957,2744,2539,2342,2153,1972,1799,1634,1477,1328,1187,1054,929,812,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,843,964,1093,1230,1375,1528,1689,1858,2035,2220,2413,2614,2823,3040,3265,3498,3739,3988,4245,4510,4783,5064,5353,5650,5955,6268,6589,6918,7255,7600,7953,8314,8683,9060,9445,9838],[9666,9277,8896,8523,8158,7801,7452,7111,6778,6453,6136,5827,5526,5233,4948,4671,4402,4141,3888,3643,3406,3177,2956,2743,2538,2341,2152,1971,1798,1633,1476,1327,1186,1053,928,811,702,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,731,844,965,1094,1231,1376,1529,1690,1859,2036,2221,2414,2615,2824,3041,3266,3499,3740,3989,4246,4511,4784,5065,5354,5651,5956,6269,6590,6919,7256,7601,7954,8315,8684,9061,9446,9839],[9665,9276,8895,8522,8157,7800,7451,7110,6777,6452,6135,5826,5525,5232,4947,4670,4401,4140,3887,3642,3405,3176,2955,2742,2537,2340,2151,1970,1797,1632,1475,1326,1185,1052,927,810,701,600,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,627,732,845,966,1095,1232,1377,1530,1691,1860,2037,2222,2415,2616,2825,3042,3267,3500,3741,3990,4247,4512,4785,5066,5355,5652,5957,6270,6591,6920,7257,7602,7955,8316,8685,9062,9447,9840],[9664,9275,8894,8521,8156,7799,7450,7109,6776,6451,6134,5825,5524,5231,4946,4669,4400,4139,3886,3641,3404,3175,2954,2741,2536,2339,2150,1969,1796,1631,1474,1325,1184,1051,926,809,700,599,506,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,531,628,733,846,967,1096,1233,1378,1531,1692,1861,2038,2223,2416,2617,2826,3043,3268,3501,3742,3991,4248,4513,4786,5067,5356,5653,5958,6271,6592,6921,7258,7603,7956,8317,8686,9063,9448,9841],[9663,9274,8893,8520,8155,7798,7449,7108,6775,6450,6133,5824,5523,5230,4945,4668,4399,4138,3885,3640,3403,3174,2953,2740,2535,2338,2149,1968,1795,1630,1473,1324,1183,1050,925,808,699,598,505,420,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,443,532,629,734,847,968,1097,1234,1379,1532,1693,1862,2039,2224,2417,2618,2827,3044,3269,3502,3743,3992,4249,4514,4787,5068,5357,5654,5959,6272,6593,6922,7259,7604,7957,8318,8687,9064,9449,9842],[9662,9273,8892,8519,8154,7797,7448,7107,6774,6449,6132,5823,5522,5229,4944,4667,4398,4137,3884,3639,3402,3173,2952,2739,2534,2337,2148,1967,1794,1629,1472,1323,1182,1049,924,807,698,597,504,419,342,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,363,444,533,630,735,848,969,1098,1235,1380,1533,1694,1863,2040,2225,2418,2619,2828,3045,3270,3503,3744,3993,4250,4515,4788,5069,5358,5655,5960,6273,6594,6923,7260,7605,7958,8319,8688,9065,9450,9843],[9661,9272,8891,8518,8153,7796,7447,7106,6773,6448,6131,5822,5521,5228,4943,4666,4397,4136,3883,3638,3401,3172,2951,2738,2533,2336,2147,1966,1793,1628,1471,1322,1181,1048,923,806,697,596,503,418,341,272,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,291,364,445,534,631,736,849,970,1099,1236,1381,1534,1695,1864,2041,2226,2419,2620,2829,3046,3271,3504,3745,3994,4251,4516,4789,5070,5359,5656,5961,6274,6595,6924,7261,7606,7959,8320,8689,9066,9451,9844],[9660,9271,8890,8517,8152,7795,7446,7105,6772,6447,6130,5821,5520,5227,4942,4665,4396,4135,3882,3637,3400,3171,2950,2737,2532,2335,2146,1965,1792,1627,1470,1321,1180,1047,922,805,696,595,502,417,340,271,210,157,158,159,160,161,162,163,164,165,166,167,168,169,170,227,292,365,446,535,632,737,850,971,1100,1237,1382,1535,1696,1865,2042,2227,2420,2621,2830,3047,3272,3505,3746,3995,4252,4517,4790,5071,5360,5657,5962,6275,6596,6925,7262,7607,7960,8321,8690,9067,9452,9845],[9659,9270,8889,8516,8151,7794,7445,7104,6771,6446,6129,5820,5519,5226,4941,4664,4395,4134,3881,3636,3399,3170,2949,2736,2531,2334,2145,1964,1791,1626,1469,1320,1179,1046,921,804,695,594,501,416,339,270,209,156,111,112,113,114,115,116,117,118,119,120,121,122,171,228,293,366,447,536,633,738,851,972,1101,1238,1383,1536,1697,1866,2043,2228,2421,2622,2831,3048,3273,3506,3747,3996,4253,4518,4791,5072,5361,5658,5963,6276,6597,6926,7263,7608,7961,8322,8691,9068,9453,9846],[9658,9269,8888,8515,8150,7793,7444,7103,6770,6445,6128,5819,5518,5225,4940,4663,4394,4133,3880,3635,3398,3169,2948,2735,2530,2333,2144,1963,1790,1625,1468,1319,1178,1045,920,803,694,593,500,415,338,269,208,155,110,73,74,75,76,77,78,79,80,81,82,123,172,229,294,367,448,537,634,739,852,973,1102,1239,1384,1537,1698,1867,2044,2229,2422,2623,2832,3049,3274,3507,3748,3997,4254,4519,4792,5073,5362,5659,5964,6277,6598,6927,7264,7609,7962,8323,8692,9069,9454,9847],[9657,9268,8887,8514,8149,7792,7443,7102,6769,6444,6127,5818,5517,5224,4939,4662,4393,4132,3879,3634,3397,3168,2947,2734,2529,2332,2143,1962,1789,1624,1467,1318,1177,1044,919,802,693,592,499,414,337,268,207,154,109,72,43,44,45,46,47,48,49,50,83,124,173,230,295,368,449,538,635,740,853,974,1103,1240,1385,1538,1699,1868,2045,2230,2423,2624,2833,3050,3275,3508,3749,3998,4255,4520,4793,5074,5363,5660,5965,6278,6599,6928,7265,7610,7963,8324,8693,9070,9455,9848],[9656,9267,8886,8513,8148,7791,7442,7101,6768,6443,6126,5817,5516,5223,4938,4661,4392,4131,3878,3633,3396,3167,2946,2733,2528,2331,2142,1961,1788,1623,1466,1317,1176,1043,918,801,692,591,498,413,336,267,206,153,108,71,42,21,22,23,24,25,26,51,84,125,174,231,296,369,450,539,636,741,854,975,1104,1241,1386,1539,1700,1869,2046,2231,2424,2625,2834,3051,3276,3509,3750,3999,4256,4521,4794,5075,5364,5661,5966,6279,6600,6929,7266,7611,7964,8325,8694,9071,9456,9849],[9655,9266,8885,8512,8147,7790,7441,7100,6767,6442,6125,5816,5515,5222,4937,4660,4391,4130,3877,3632,3395,3166,2945,2732,2527,2330,2141,1960,1787,1622,1465,1316,1175,1042,917,800,691,590,497,412,335,266,205,152,107,70,41,20,7,8,9,10,27,52,85,126,175,232,297,370,451,540,637,742,855,976,1105,1242,1387,1540,1701,1870,2047,2232,2425,2626,2835,3052,3277,3510,3751,4000,4257,4522,4795,5076,5365,5662,5967,6280,6601,6930,7267,7612,7965,8326,8695,9072,9457,9850],[9654,9265,8884,8511,8146,7789,7440,7099,6766,6441,6124,5815,5514,5221,4936,4659,4390,4129,3876,3631,3394,3165,2944,2731,2526,2329,2140,1959,1786,1621,1464,1315,1174,1041,916,799,690,589,496,411,334,265,204,151,106,69,40,19,6,1,2,11,28,53,86,127,176,233,298,371,452,541,638,743,856,977,1106,1243,1388,1541,1702,1871,2048,2233,2426,2627,2836,3053,3278,3511,3752,4001,4258,4523,4796,5077,5366,5663,5968,6281,6602,6931,7268,7613,7966,8327,8696,9073,9458,9851],[9653,9264,8883,8510,8145,7788,7439,7098,6765,6440,6123,5814,5513,5220,4935,4658,4389,4128,3875,3630,3393,3164,2943,2730,2525,2328,2139,1958,1785,1620,1463,1314,1173,1040,915,798,689,588,495,410,333,264,203,150,105,68,39,18,5,4,3,12,29,54,87,128,177,234,299,372,453,542,639,744,857,978,1107,1244,1389,1542,1703,1872,2049,2234,2427,2628,2837,3054,3279,3512,3753,4002,4259,4524,4797,5078,5367,5664,5969,6282,6603,6932,7269,7614,7967,8328,8697,9074,9459,9852],[9652,9263,8882,8509,8144,7787,7438,7097,6764,6439,6122,5813,5512,5219,4934,4657,4388,4127,3874,3629,3392,3163,2942,2729,2524,2327,2138,1957,1784,1619,1462,1313,1172,1039,914,797,688,587,494,409,332,263,202,149,104,67,38,17,16,15,14,13,30,55,88,129,178,235,300,373,454,543,640,745,858,979,1108,1245,1390,1543,1704,1873,2050,2235,2428,2629,2838,3055,3280,3513,3754,4003,4260,4525,4798,5079,5368,5665,5970,6283,6604,6933,7270,7615,7968,8329,8698,9075,9460,9853],[9651,9262,8881,8508,8143,7786,7437,7096,6763,6438,6121,5812,5511,5218,4933,4656,4387,4126,3873,3628,3391,3162,2941,2728,2523,2326,2137,1956,1783,1618,1461,1312,1171,1038,913,796,687,586,493,408,331,262,201,148,103,66,37,36,35,34,33,32,31,56,89,130,179,236,301,374,455,544,641,746,859,980,1109,1246,1391,1544,1705,1874,2051,2236,2429,2630,2839,3056,3281,3514,3755,4004,4261,4526,4799,5080,5369,5666,5971,6284,6605,6934,7271,7616,7969,8330,8699,9076,9461,9854],[9650,9261,8880,8507,8142,7785,7436,7095,6762,6437,6120,5811,5510,5217,4932,4655,4386,4125,3872,3627,3390,3161,2940,2727,2522,2325,2136,1955,1782,1617,1460,1311,1170,1037,912,795,686,585,492,407,330,261,200,147,102,65,64,63,62,61,60,59,58,57,90,131,180,237,302,375,456,545,642,747,860,981,1110,1247,1392,1545,1706,1875,2052,2237,2430,2631,2840,3057,3282,3515,3756,4005,4262,4527,4800,5081,5370,5667,5972,6285,6606,6935,7272,7617,7970,8331,8700,9077,9462,9855],[9649,9260,8879,8506,8141,7784,7435,7094,6761,6436,6119,5810,5509,5216,4931,4654,4385,4124,3871,3626,3389,3160,2939,2726,2521,2324,2135,1954,1781,1616,1459,1310,1169,1036,911,794,685,584,491,406,329,260,199,146,101,100,99,98,97,96,95,94,93,92,91,132,181,238,303,376,457,546,643,748,861,982,1111,1248,1393,1546,1707,1876,2053,2238,2431,2632,2841,3058,3283,3516,3757,4006,4263,4528,4801,5082,5371,5668,5973,6286,6607,6936,7273,7618,7971,8332,8701,9078,9463,9856],[9648,9259,8878,8505,8140,7783,7434,7093,6760,6435,6118,5809,5508,5215,4930,4653,4384,4123,3870,3625,3388,3159,2938,2725,2520,2323,2134,1953,1780,1615,1458,1309,1168,1035,910,793,684,583,490,405,328,259,198,145,144,143,142,141,140,139,138,137,136,135,134,133,182,239,304,377,458,547,644,749,862,983,1112,1249,1394,1547,1708,1877,2054,2239,2432,2633,2842,3059,3284,3517,3758,4007,4264,4529,4802,5083,5372,5669,5974,6287,6608,6937,7274,7619,7972,8333,8702,9079,9464,9857],[9647,9258,8877,8504,8139,7782,7433,7092,6759,6434,6117,5808,5507,5214,4929,4652,4383,4122,3869,3624,3387,3158,2937,2724,2519,2322,2133,1952,1779,1614,1457,1308,1167,1034,909,792,683,582,489,404,327,258,197,196,195,194,193,192,191,190,189,188,187,186,185,184,183,240,305,378,459,548,645,750,863,984,1113,1250,1395,1548,1709,1878,2055,2240,2433,2634,2843,3060,3285,3518,3759,4008,4265,4530,4803,5084,5373,5670,5975,6288,6609,6938,7275,7620,7973,8334,8703,9080,9465,9858],[9646,9257,8876,8503,8138,7781,7432,7091,6758,6433,6116,5807,5506,5213,4928,4651,4382,4121,3868,3623,3386,3157,2936,2723,2518,2321,2132,1951,1778,1613,1456,1307,1166,1033,908,791,682,581,488,403,326,257,256,255,254,253,252,251,250,249,248,247,246,245,244,243,242,241,306,379,460,549,646,751,864,985,1114,1251,1396,1549,1710,1879,2056,2241,2434,2635,2844,3061,3286,3519,3760,4009,4266,4531,4804,5085,5374,5671,5976,6289,6610,6939,7276,7621,7974,8335,8704,9081,9466,9859],[9645,9256,8875,8502,8137,7780,7431,7090,6757,6432,6115,5806,5505,5212,4927,4650,4381,4120,3867,3622,3385,3156,2935,2722,2517,2320,2131,1950,1777,1612,1455,1306,1165,1032,907,790,681,580,487,402,325,324,323,322,321,320,319,318,317,316,315,314,313,312,311,310,309,308,307,380,461,550,647,752,865,986,1115,1252,1397,1550,1711,1880,2057,2242,2435,2636,2845,3062,3287,3520,3761,4010,4267,4532,4805,5086,5375,5672,5977,6290,6611,6940,7277,7622,7975,8336,8705,9082,9467,9860],[9644,9255,8874,8501,8136,7779,7430,7089,6756,6431,6114,5805,5504,5211,4926,4649,4380,4119,3866,3621,3384,3155,2934,2721,2516,2319,2130,1949,1776,1611,1454,1305,1164,1031,906,789,680,579,486,401,400,399,398,397,396,395,394,393,392,391,390,389,388,387,386,385,384,383,382,381,462,551,648,753,866,987,1116,1253,1398,1551,1712,1881,2058,2243,2436,2637,2846,3063,3288,3521,3762,4011,4268,4533,4806,5087,5376,5673,5978,6291,6612,6941,7278,7623,7976,8337,8706,9083,9468,9861],[9643,9254,8873,8500,8135,7778,7429,7088,6755,6430,6113,5804,5503,5210,4925,4648,4379,4118,3865,3620,3383,3154,2933,2720,2515,2318,2129,1948,1775,1610,1453,1304,1163,1030,905,788,679,578,485,484,483,482,481,480,479,478,477,476,475,474,473,472,471,470,469,468,467,466,465,464,463,552,649,754,867,988,1117,1254,1399,1552,1713,1882,2059,2244,2437,2638,2847,3064,3289,3522,3763,4012,4269,4534,4807,5088,5377,5674,5979,6292,6613,6942,7279,7624,7977,8338,8707,9084,9469,9862],[9642,9253,8872,8499,8134,7777,7428,7087,6754,6429,6112,5803,5502,5209,4924,4647,4378,4117,3864,3619,3382,3153,2932,2719,2514,2317,2128,1947,1774,1609,1452,1303,1162,1029,904,787,678,577,576,575,574,573,572,571,570,569,568,567,566,565,564,563,562,561,560,559,558,557,556,555,554,553,650,755,868,989,1118,1255,1400,1553,1714,1883,2060,2245,2438,2639,2848,3065,3290,3523,3764,4013,4270,4535,4808,5089,5378,5675,5980,6293,6614,6943,7280,7625,7978,8339,8708,9085,9470,9863],[9641,9252,8871,8498,8133,7776,7427,7086,6753,6428,6111,5802,5501,5208,4923,4646,4377,4116,3863,3618,3381,3152,2931,2718,2513,2316,2127,1946,1773,1608,1451,1302,1161,1028,903,786,677,676,675,674,673,672,671,670,669,668,667,666,665,664,663,662,661,660,659,658,657,656,655,654,653,652,651,756,869,990,1119,1256,1401,1554,1715,1884,2061,2246,2439,2640,2849,3066,3291,3524,3765,4014,4271,4536,4809,5090,5379,5676,5981,6294,6615,6944,7281,7626,7979,8340,8709,9086,9471,9864],[9640,9251,8870,8497,8132,7775,7426,7085,6752,6427,6110,5801,5500,5207,4922,4645,4376,4115,3862,3617,3380,3151,2930,2717,2512,2315,2126,1945,1772,1607,1450,1301,1160,1027,902,785,784,783,782,781,780,779,778,777,776,775,774,773,772,771,770,769,768,767,766,765,764,763,762,761,760,759,758,757,870,991,1120,1257,1402,1555,1716,1885,2062,2247,2440,2641,2850,3067,3292,3525,3766,4015,4272,4537,4810,5091,5380,5677,5982,6295,6616,6945,7282,7627,7980,8341,8710,9087,9472,9865],[9639,9250,8869,8496,8131,7774,7425,7084,6751,6426,6109,5800,5499,5206,4921,4644,4375,4114,3861,3616,3379,3150,2929,2716,2511,2314,2125,1944,1771,1606,1449,1300,1159,1026,901,900,899,898,897,896,895,894,893,892,891,890,889,888,887,886,885,884,883,882,881,880,879,878,877,876,875,874,873,872,871,992,1121,1258,1403,1556,1717,1886,2063,2248,2441,2642,2851,3068,3293,3526,3767,4016,4273,4538,4811,5092,5381,5678,5983,6296,6617,6946,7283,7628,7981,8342,8711,9088,9473,9866],[9638,9249,8868,8495,8130,7773,7424,7083,6750,6425,6108,5799,5498,5205,4920,4643,4374,4113,3860,3615,3378,3149,2928,2715,2510,2313,2124,1943,1770,1605,1448,1299,1158,1025,1024,1023,1022,1021,1020,1019,1018,1017,1016,1015,1014,1013,1012,1011,1010,1009,1008,1007,1006,1005,1004,1003,1002,1001,1000,999,998,997,996,995,994,993,1122,1259,1404,1557,1718,1887,2064,2249,2442,2643,2852,3069,3294,3527,3768,4017,4274,4539,4812,5093,5382,5679,5984,6297,6618,6947,7284,7629,7982,8343,8712,9089,9474,9867],[9637,9248,8867,8494,8129,7772,7423,7082,6749,6424,6107,5798,5497,5204,4919,4642,4373,4112,3859,3614,3377,3148,2927,2714,2509,2312,2123,1942,1769,1604,1447,1298,1157,1156,1155,1154,1153,1152,1151,1150,1149,1148,1147,1146,1145,1144,1143,1142,1141,1140,1139,1138,1137,1136,1135,1134,1133,1132,1131,1130,1129,1128,1127,1126,1125,1124,1123,1260,1405,1558,1719,1888,2065,2250,2443,2644,2853,3070,3295,3528,3769,4018,4275,4540,4813,5094,5383,5680,5985,6298,6619,6948,7285,7630,7983,8344,8713,9090,9475,9868],[9636,9247,8866,8493,8128,7771,7422,7081,6748,6423,6106,5797,5496,5203,4918,4641,4372,4111,3858,3613,3376,3147,2926,2713,2508,2311,2122,1941,1768,1603,1446,1297,1296,1295,1294,1293,1292,1291,1290,1289,1288,1287,1286,1285,1284,1283,1282,1281,1280,1279,1278,1277,1276,1275,1274,1273,1272,1271,1270,1269,1268,1267,1266,1265,1264,1263,1262,1261,1406,1559,1720,1889,2066,2251,2444,2645,2854,3071,3296,3529,3770,4019,4276,4541,4814,5095,5384,5681,5986,6299,6620,6949,7286,7631,7984,8345,8714,9091,9476,9869],[9635,9246,8865,8492,8127,7770,7421,7080,6747,6422,6105,5796,5495,5202,4917,4640,4371,4110,3857,3612,3375,3146,2925,2712,2507,2310,2121,1940,1767,1602,1445,1444,1443,1442,1441,1440,1439,1438,1437,1436,1435,1434,1433,1432,1431,1430,1429,1428,1427,1426,1425,1424,1423,1422,1421,1420,1419,1418,1417,1416,1415,1414,1413,1412,1411,1410,1409,1408,1407,1560,1721,1890,2067,2252,2445,2646,2855,3072,3297,3530,3771,4020,4277,4542,4815,5096,5385,5682,5987,6300,6621,6950,7287,7632,7985,8346,8715,9092,9477,9870],[9634,9245,8864,8491,8126,7769,7420,7079,6746,6421,6104,5795,5494,5201,4916,4639,4370,4109,3856,3611,3374,3145,2924,2711,2506,2309,2120,1939,1766,1601,1600,1599,1598,1597,1596,1595,1594,1593,1592,1591,1590,1589,1588,1587,1586,1585,1584,1583,1582,1581,1580,1579,1578,1577,1576,1575,1574,1573,1572,1571,1570,1569,1568,1567,1566,1565,1564,1563,1562,1561,1722,1891,2068,2253,2446,2647,2856,3073,3298,3531,3772,4021,4278,4543,4816,5097,5386,5683,5988,6301,6622,6951,7288,7633,7986,8347,8716,9093,9478,9871],[9633,9244,8863,8490,8125,7768,7419,7078,6745,6420,6103,5794,5493,5200,4915,4638,4369,4108,3855,3610,3373,3144,2923,2710,2505,2308,2119,1938,1765,1764,1763,1762,1761,1760,1759,1758,1757,1756,1755,1754,1753,1752,1751,1750,1749,1748,1747,1746,1745,1744,1743,1742,1741,1740,1739,1738,1737,1736,1735,1734,1733,1732,1731,1730,1729,1728,1727,1726,1725,1724,1723,1892,2069,2254,2447,2648,2857,3074,3299,3532,3773,4022,4279,4544,4817,5098,5387,5684,5989,6302,6623,6952,7289,7634,7987,8348,8717,9094,9479,9872],[9632,9243,8862,8489,8124,7767,7418,7077,6744,6419,6102,5793,5492,5199,4914,4637,4368,4107,3854,3609,3372,3143,2922,2709,2504,2307,2118,1937,1936,1935,1934,1933,1932,1931,1930,1929,1928,1927,1926,1925,1924,1923,1922,1921,1920,1919,1918,1917,1916,1915,1914,1913,1912,1911,1910,1909,1908,1907,1906,1905,1904,1903,1902,1901,1900,1899,1898,1897,1896,1895,1894,1893,2070,2255,2448,2649,2858,3075,3300,3533,3774,4023,4280,4545,4818,5099,5388,5685,5990,6303,6624,6953,7290,7635,7988,8349,8718,9095,9480,9873],[9631,9242,8861,8488,8123,7766,7417,7076,6743,6418,6101,5792,5491,5198,4913,4636,4367,4106,3853,3608,3371,3142,2921,2708,2503,2306,2117,2116,2115,2114,2113,2112,2111,2110,2109,2108,2107,2106,2105,2104,2103,2102,2101,2100,2099,2098,2097,2096,2095,2094,2093,2092,2091,2090,2089,2088,2087,2086,2085,2084,2083,2082,2081,2080,2079,2078,2077,2076,2075,2074,2073,2072,2071,2256,2449,2650,2859,3076,3301,3534,3775,4024,4281,4546,4819,5100,5389,5686,5991,6304,6625,6954,7291,7636,7989,8350,8719,9096,9481,9874],[9630,9241,8860,8487,8122,7765,7416,7075,6742,6417,6100,5791,5490,5197,4912,4635,4366,4105,3852,3607,3370,3141,2920,2707,2502,2305,2304,2303,2302,2301,2300,2299,2298,2297,2296,2295,2294,2293,2292,2291,2290,2289,2288,2287,2286,2285,2284,2283,2282,2281,2280,2279,2278,2277,2276,2275,2274,2273,2272,2271,2270,2269,2268,2267,2266,2265,2264,2263,2262,2261,2260,2259,2258,2257,2450,2651,2860,3077,3302,3535,3776,4025,4282,4547,4820,5101,5390,5687,5992,6305,6626,6955,7292,7637,7990,8351,8720,9097,9482,9875],[9629,9240,8859,8486,8121,7764,7415,7074,6741,6416,6099,5790,5489,5196,4911,4634,4365,4104,3851,3606,3369,3140,2919,2706,2501,2500,2499,2498,2497,2496,2495,2494,2493,2492,2491,2490,2489,2488,2487,2486,2485,2484,2483,2482,2481,2480,2479,2478,2477,2476,2475,2474,2473,2472,2471,2470,2469,2468,2467,2466,2465,2464,2463,2462,2461,2460,2459,2458,2457,2456,2455,2454,2453,2452,2451,2652,2861,3078,3303,3536,3777,4026,4283,4548,4821,5102,5391,5688,5993,6306,6627,6956,7293,7638,7991,8352,8721,9098,9483,9876],[9628,9239,8858,8485,8120,7763,7414,7073,6740,6415,6098,5789,5488,5195,4910,4633,4364,4103,3850,3605,3368,3139,2918,2705,2704,2703,2702,2701,2700,2699,2698,2697,2696,2695,2694,2693,2692,2691,2690,2689,2688,2687,2686,2685,2684,2683,2682,2681,2680,2679,2678,2677,2676,2675,2674,2673,2672,2671,2670,2669,2668,2667,2666,2665,2664,2663,2662,2661,2660,2659,2658,2657,2656,2655,2654,2653,2862,3079,3304,3537,3778,4027,4284,4549,4822,5103,5392,5689,5994,6307,6628,6957,7294,7639,7992,8353,8722,9099,9484,9877],[9627,9238,8857,8484,8119,7762,7413,7072,6739,6414,6097,5788,5487,5194,4909,4632,4363,4102,3849,3604,3367,3138,2917,2916,2915,2914,2913,2912,2911,2910,2909,2908,2907,2906,2905,2904,2903,2902,2901,2900,2899,2898,2897,2896,2895,2894,2893,2892,2891,2890,2889,2888,2887,2886,2885,2884,2883,2882,2881,2880,2879,2878,2877,2876,2875,2874,2873,2872,2871,2870,2869,2868,2867,2866,2865,2864,2863,3080,3305,3538,3779,4028,4285,4550,4823,5104,5393,5690,5995,6308,6629,6958,7295,7640,7993,8354,8723,9100,9485,9878],[9626,9237,8856,8483,8118,7761,7412,7071,6738,6413,6096,5787,5486,5193,4908,4631,4362,4101,3848,3603,3366,3137,3136,3135,3134,3133,3132,3131,3130,3129,3128,3127,3126,3125,3124,3123,3122,3121,3120,3119,3118,3117,3116,3115,3114,3113,3112,3111,3110,3109,3108,3107,3106,3105,3104,3103,3102,3101,3100,3099,3098,3097,3096,3095,3094,3093,3092,3091,3090,3089,3088,3087,3086,3085,3084,3083,3082,3081,3306,3539,3780,4029,4286,4551,4824,5105,5394,5691,5996,6309,6630,6959,7296,7641,7994,8355,8724,9101,9486,9879],[9625,9236,8855,8482,8117,7760,7411,7070,6737,6412,6095,5786,5485,5192,4907,4630,4361,4100,3847,3602,3365,3364,3363,3362,3361,3360,3359,3358,3357,3356,3355,3354,3353,3352,3351,3350,3349,3348,3347,3346,3345,3344,3343,3342,3341,3340,3339,3338,3337,3336,3335,3334,3333,3332,3331,3330,3329,3328,3327,3326,3325,3324,3323,3322,3321,3320,3319,3318,3317,3316,3315,3314,3313,3312,3311,3310,3309,3308,3307,3540,3781,4030,4287,4552,4825,5106,5395,5692,5997,6310,6631,6960,7297,7642,7995,8356,8725,9102,9487,9880],[9624,9235,8854,8481,8116,7759,7410,7069,6736,6411,6094,5785,5484,5191,4906,4629,4360,4099,3846,3601,3600,3599,3598,3597,3596,3595,3594,3593,3592,3591,3590,3589,3588,3587,3586,3585,3584,3583,3582,3581,3580,3579,3578,3577,3576,3575,3574,3573,3572,3571,3570,3569,3568,3567,3566,3565,3564,3563,3562,3561,3560,3559,3558,3557,3556,3555,3554,3553,3552,3551,3550,3549,3548,3547,3546,3545,3544,3543,3542,3541,3782,4031,4288,4553,4826,5107,5396,5693,5998,6311,6632,6961,7298,7643,7996,8357,8726,9103,9488,9881],[9623,9234,8853,8480,8115,7758,7409,7068,6735,6410,6093,5784,5483,5190,4905,4628,4359,4098,3845,3844,3843,3842,3841,3840,3839,3838,3837,3836,3835,3834,3833,3832,3831,3830,3829,3828,3827,3826,3825,3824,3823,3822,3821,3820,3819,3818,3817,3816,3815,3814,3813,3812,3811,3810,3809,3808,3807,3806,3805,3804,3803,3802,3801,3800,3799,3798,3797,3796,3795,3794,3793,3792,3791,3790,3789,3788,3787,3786,3785,3784,3783,4032,4289,4554,4827,5108,5397,5694,5999,6312,6633,6962,7299,7644,7997,8358,8727,9104,9489,9882],[9622,9233,8852,8479,8114,7757,7408,7067,6734,6409,6092,5783,5482,5189,4904,4627,4358,4097,4096,4095,4094,4093,4092,4091,4090,4089,4088,4087,4086,4085,4084,4083,4082,4081,4080,4079,4078,4077,4076,4075,4074,4073,4072,4071,4070,4069,4068,4067,4066,4065,4064,4063,4062,4061,4060,4059,4058,4057,4056,4055,4054,4053,4052,4051,4050,4049,4048,4047,4046,4045,4044,4043,4042,4041,4040,4039,4038,4037,4036,4035,4034,4033,4290,4555,4828,5109,5398,5695,6000,6313,6634,6963,7300,7645,7998,8359,8728,9105,9490,9883],[9621,9232,8851,8478,8113,7756,7407,7066,6733,6408,6091,5782,5481,5188,4903,4626,4357,4356,4355,4354,4353,4352,4351,4350,4349,4348,4347,4346,4345,4344,4343,4342,4341,4340,4339,4338,4337,4336,4335,4334,4333,4332,4331,4330,4329,4328,4327,4326,4325,4324,4323,4322,4321,4320,4319,4318,4317,4316,4315,4314,4313,4312,4311,4310,4309,4308,4307,4306,4305,4304,4303,4302,4301,4300,4299,4298,4297,4296,4295,4294,4293,4292,4291,4556,4829,5110,5399,5696,6001,6314,6635,6964,7301,7646,7999,8360,8729,9106,9491,9884],[9620,9231,8850,8477,8112,7755,7406,7065,6732,6407,6090,5781,5480,5187,4902,4625,4624,4623,4622,4621,4620,4619,4618,4617,4616,4615,4614,4613,4612,4611,4610,4609,4608,4607,4606,4605,4604,4603,4602,4601,4600,4599,4598,4597,4596,4595,4594,4593,4592,4591,4590,4589,4588,4587,4586,4585,4584,4583,4582,4581,4580,4579,4578,4577,4576,4575,4574,4573,4572,4571,4570,4569,4568,4567,4566,4565,4564,4563,4562,4561,4560,4559,4558,4557,4830,5111,5400,5697,6002,6315,6636,6965,7302,7647,8000,8361,8730,9107,9492,9885],[9619,9230,8849,8476,8111,7754,7405,7064,6731,6406,6089,5780,5479,5186,4901,4900,4899,4898,4897,4896,4895,4894,4893,4892,4891,4890,4889,4888,4887,4886,4885,4884,4883,4882,4881,4880,4879,4878,4877,4876,4875,4874,4873,4872,4871,4870,4869,4868,4867,4866,4865,4864,4863,4862,4861,4860,4859,4858,4857,4856,4855,4854,4853,4852,4851,4850,4849,4848,4847,4846,4845,4844,4843,4842,4841,4840,4839,4838,4837,4836,4835,4834,4833,4832,4831,5112,5401,5698,6003,6316,6637,6966,7303,7648,8001,8362,8731,9108,9493,9886],[9618,9229,8848,8475,8110,7753,7404,7063,6730,6405,6088,5779,5478,5185,5184,5183,5182,5181,5180,5179,5178,5177,5176,5175,5174,5173,5172,5171,5170,5169,5168,5167,5166,5165,5164,5163,5162,5161,5160,5159,5158,5157,5156,5155,5154,5153,5152,5151,5150,5149,5148,5147,5146,5145,5144,5143,5142,5141,5140,5139,5138,5137,5136,5135,5134,5133,5132,5131,5130,5129,5128,5127,5126,5125,5124,5123,5122,5121,5120,5119,5118,5117,5116,5115,5114,5113,5402,5699,6004,6317,6638,6967,7304,7649,8002,8363,8732,9109,9494,9887],[9617,9228,8847,8474,8109,7752,7403,7062,6729,6404,6087,5778,5477,5476,5475,5474,5473,5472,5471,5470,5469,5468,5467,5466,5465,5464,5463,5462,5461,5460,5459,5458,5457,5456,5455,5454,5453,5452,5451,5450,5449,5448,5447,5446,5445,5444,5443,5442,5441,5440,5439,5438,5437,5436,5435,5434,5433,5432,5431,5430,5429,5428,5427,5426,5425,5424,5423,5422,5421,5420,5419,5418,5417,5416,5415,5414,5413,5412,5411,5410,5409,5408,5407,5406,5405,5404,5403,5700,6005,6318,6639,6968,7305,7650,8003,8364,8733,9110,9495,9888],[9616,9227,8846,8473,8108,7751,7402,7061,6728,6403,6086,5777,5776,5775,5774,5773,5772,5771,5770,5769,5768,5767,5766,5765,5764,5763,5762,5761,5760,5759,5758,5757,5756,5755,5754,5753,5752,5751,5750,5749,5748,5747,5746,5745,5744,5743,5742,5741,5740,5739,5738,5737,5736,5735,5734,5733,5732,5731,5730,5729,5728,5727,5726,5725,5724,5723,5722,5721,5720,5719,5718,5717,5716,5715,5714,5713,5712,5711,5710,5709,5708,5707,5706,5705,5704,5703,5702,5701,6006,6319,6640,6969,7306,7651,8004,8365,8734,9111,9496,9889],[9615,9226,8845,8472,8107,7750,7401,7060,6727,6402,6085,6084,6083,6082,6081,6080,6079,6078,6077,6076,6075,6074,6073,6072,6071,6070,6069,6068,6067,6066,6065,6064,6063,6062,6061,6060,6059,6058,6057,6056,6055,6054,6053,6052,6051,6050,6049,6048,6047,6046,6045,6044,6043,6042,6041,6040,6039,6038,6037,6036,6035,6034,6033,6032,6031,6030,6029,6028,6027,6026,6025,6024,6023,6022,6021,6020,6019,6018,6017,6016,6015,6014,6013,6012,6011,6010,6009,6008,6007,6320,6641,6970,7307,7652,8005,8366,8735,9112,9497,9890],[9614,9225,8844,8471,8106,7749,7400,7059,6726,6401,6400,6399,6398,6397,6396,6395,6394,6393,6392,6391,6390,6389,6388,6387,6386,6385,6384,6383,6382,6381,6380,6379,6378,6377,6376,6375,6374,6373,6372,6371,6370,6369,6368,6367,6366,6365,6364,6363,6362,6361,6360,6359,6358,6357,6356,6355,6354,6353,6352,6351,6350,6349,6348,6347,6346,6345,6344,6343,6342,6341,6340,6339,6338,6337,6336,6335,6334,6333,6332,6331,6330,6329,6328,6327,6326,6325,6324,6323,6322,6321,6642,6971,7308,7653,8006,8367,8736,9113,9498,9891],[9613,9224,8843,8470,8105,7748,7399,7058,6725,6724,6723,6722,6721,6720,6719,6718,6717,6716,6715,6714,6713,6712,6711,6710,6709,6708,6707,6706,6705,6704,6703,6702,6701,6700,6699,6698,6697,6696,6695,6694,6693,6692,6691,6690,6689,6688,6687,6686,6685,6684,6683,6682,6681,6680,6679,6678,6677,6676,6675,6674,6673,6672,6671,6670,6669,6668,6667,6666,6665,6664,6663,6662,6661,6660,6659,6658,6657,6656,6655,6654,6653,6652,6651,6650,6649,6648,6647,6646,6645,6644,6643,6972,7309,7654,8007,8368,8737,9114,9499,9892],[9612,9223,8842,8469,8104,7747,7398,7057,7056,7055,7054,7053,7052,7051,7050,7049,7048,7047,7046,7045,7044,7043,7042,7041,7040,7039,7038,7037,7036,7035,7034,7033,7032,7031,7030,7029,7028,7027,7026,7025,7024,7023,7022,7021,7020,7019,7018,7017,7016,7015,7014,7013,7012,7011,7010,7009,7008,7007,7006,7005,7004,7003,7002,7001,7000,6999,6998,6997,6996,6995,6994,6993,6992,6991,6990,6989,6988,6987,6986,6985,6984,6983,6982,6981,6980,6979,6978,6977,6976,6975,6974,6973,7310,7655,8008,8369,8738,9115,9500,9893],[9611,9222,8841,8468,8103,7746,7397,7396,7395,7394,7393,7392,7391,7390,7389,7388,7387,7386,7385,7384,7383,7382,7381,7380,7379,7378,7377,7376,7375,7374,7373,7372,7371,7370,7369,7368,7367,7366,7365,7364,7363,7362,7361,7360,7359,7358,7357,7356,7355,7354,7353,7352,7351,7350,7349,7348,7347,7346,7345,7344,7343,7342,7341,7340,7339,7338,7337,7336,7335,7334,7333,7332,7331,7330,7329,7328,7327,7326,7325,7324,7323,7322,7321,7320,7319,7318,7317,7316,7315,7314,7313,7312,7311,7656,8009,8370,8739,9116,9501,9894],[9610,9221,8840,8467,8102,7745,7744,7743,7742,7741,7740,7739,7738,7737,7736,7735,7734,7733,7732,7731,7730,7729,7728,7727,7726,7725,7724,7723,7722,7721,7720,7719,7718,7717,7716,7715,7714,7713,7712,7711,7710,7709,7708,7707,7706,7705,7704,7703,7702,7701,7700,7699,7698,7697,7696,7695,7694,7693,7692,7691,7690,7689,7688,7687,7686,7685,7684,7683,7682,7681,7680,7679,7678,7677,7676,7675,7674,7673,7672,7671,7670,7669,7668,7667,7666,7665,7664,7663,7662,7661,7660,7659,7658,7657,8010,8371,8740,9117,9502,9895],[9609,9220,8839,8466,8101,8100,8099,8098,8097,8096,8095,8094,8093,8092,8091,8090,8089,8088,8087,8086,8085,8084,8083,8082,8081,8080,8079,8078,8077,8076,8075,8074,8073,8072,8071,8070,8069,8068,8067,8066,8065,8064,8063,8062,8061,8060,8059,8058,8057,8056,8055,8054,8053,8052,8051,8050,8049,8048,8047,8046,8045,8044,8043,8042,8041,8040,8039,8038,8037,8036,8035,8034,8033,8032,8031,8030,8029,8028,8027,8026,8025,8024,8023,8022,8021,8020,8019,8018,8017,8016,8015,8014,8013,8012,8011,8372,8741,9118,9503,9896],[9608,9219,8838,8465,8464,8463,8462,8461,8460,8459,8458,8457,8456,8455,8454,8453,8452,8451,8450,8449,8448,8447,8446,8445,8444,8443,8442,8441,8440,8439,8438,8437,8436,8435,8434,8433,8432,8431,8430,8429,8428,8427,8426,8425,8424,8423,8422,8421,8420,8419,8418,8417,8416,8415,8414,8413,8412,8411,8410,8409,8408,8407,8406,8405,8404,8403,8402,8401,8400,8399,8398,8397,8396,8395,8394,8393,8392,8391,8390,8389,8388,8387,8386,8385,8384,8383,8382,8381,8380,8379,8378,8377,8376,8375,8374,8373,8742,9119,9504,9897],[9607,9218,8837,8836,8835,8834,8833,8832,8831,8830,8829,8828,8827,8826,8825,8824,8823,8822,8821,8820,8819,8818,8817,8816,8815,8814,8813,8812,8811,8810,8809,8808,8807,8806,8805,8804,8803,8802,8801,8800,8799,8798,8797,8796,8795,8794,8793,8792,8791,8790,8789,8788,8787,8786,8785,8784,8783,8782,8781,8780,8779,8778,8777,8776,8775,8774,8773,8772,8771,8770,8769,8768,8767,8766,8765,8764,8763,8762,8761,8760,8759,8758,8757,8756,8755,8754,8753,8752,8751,8750,8749,8748,8747,8746,8745,8744,8743,9120,9505,9898],[9606,9217,9216,9215,9214,9213,9212,9211,9210,9209,9208,9207,9206,9205,9204,9203,9202,9201,9200,9199,9198,9197,9196,9195,9194,9193,9192,9191,9190,9189,9188,9187,9186,9185,9184,9183,9182,9181,9180,9179,9178,9177,9176,9175,9174,9173,9172,9171,9170,9169,9168,9167,9166,9165,9164,9163,9162,9161,9160,9159,9158,9157,9156,9155,9154,9153,9152,9151,9150,9149,9148,9147,9146,9145,9144,9143,9142,9141,9140,9139,9138,9137,9136,9135,9134,9133,9132,9131,9130,9129,9128,9127,9126,9125,9124,9123,9122,9121,9506,9899],[9605,9604,9603,9602,9601,9600,9599,9598,9597,9596,9595,9594,9593,9592,9591,9590,9589,9588,9587,9586,9585,9584,9583,9582,9581,9580,9579,9578,9577,9576,9575,9574,9573,9572,9571,9570,9569,9568,9567,9566,9565,9564,9563,9562,9561,9560,9559,9558,9557,9556,9555,9554,9553,9552,9551,9550,9549,9548,9547,9546,9545,9544,9543,9542,9541,9540,9539,9538,9537,9536,9535,9534,9533,9532,9531,9530,9529,9528,9527,9526,9525,9524,9523,9522,9521,9520,9519,9518,9517,9516,9515,9514,9513,9512,9511,9510,9509,9508,9507,9900],[10000,9999,9998,9997,9996,9995,9994,9993,9992,9991,9990,9989,9988,9987,9986,9985,9984,9983,9982,9981,9980,9979,9978,9977,9976,9975,9974,9973,9972,9971,9970,9969,9968,9967,9966,9965,9964,9963,9962,9961,9960,9959,9958,9957,9956,9955,9954,9953,9952,9951,9950,9949,9948,9947,9946,9945,9944,9943,9942,9941,9940,9939,9938,9937,9936,9935,9934,9933,9932,9931,9930,9929,9928,9927,9926,9925,9924,9923,9922,9921,9920,9919,9918,9917,9916,9915,9914,9913,9912,9911,9910,9909,9908,9907,9906,9905,9904,9903,9902,9901]],99,L)
diff --git a/testsuite/tests/ghc-regress/ghci/should_run/ghcirun003.hs b/testsuite/tests/ghc-regress/ghci/should_run/ghcirun003.hs
deleted file mode 100644
index 1087188305..0000000000
--- a/testsuite/tests/ghc-regress/ghci/should_run/ghcirun003.hs
+++ /dev/null
@@ -1,50 +0,0 @@
-
-module Main (main) where
-
-main :: IO ()
-main = print ok
-
-ok :: Bool
-ok = map foo [10..72] == map bar [10..72]
-
-foo :: Int -> [Int]
-foo 12 = [12, 13, 14, 15, 16, 17]
-foo 14 = [14, 15, 16, 17, 18, 19]
-foo 16 = [16, 17, 18, 19, 20, 21]
-foo 18 = [18, 19, 20, 21, 22, 23]
-foo n | n == 20 = [20, 30, 40, 50, 60, 70, 80]
-foo 22 = [22, 23, 24, 25, 26, 27]
-foo 24 = [24, 25, 26, 27, 28, 29]
-foo 26 = [26, 27, 28, 29, 30, 31]
-foo 28 = [28, 29, 30, 31, 32, 33]
-foo n | n == 30 = [30, 40, 50, 60, 70, 80, 90]
-foo 32 = [32, 33, 34, 35, 36, 37]
-foo 34 = [34, 35, 36, 37, 38, 39]
-foo 36 = [36, 37, 38, 39, 40, 41]
-foo 38 = [38, 39, 40, 41, 42, 43]
-foo n | n == 40 = [40, 50, 60, 70, 80, 90, 100]
-foo 42 = [42, 43, 44, 45, 46, 47]
-foo 44 = [44, 45, 46, 47, 48, 49]
-foo 46 = [46, 47, 48, 49, 50, 51]
-foo 48 = [48, 49, 50, 51, 52, 53]
-foo n | n == 50 = [50, 60, 70, 80, 90, 100, 110]
-foo 52 = [52, 53, 54, 55, 56, 57]
-foo 54 = [54, 55, 56, 57, 58, 59]
-foo 56 = [56, 57, 58, 59, 60, 61]
-foo 58 = [58, 59, 60, 61, 62, 63]
-foo n | n == 60 = [60, 70, 80, 90, 100, 110, 120]
-foo 62 = [62, 63, 64, 65, 66, 67]
-foo 64 = [64, 65, 66, 67, 68, 69]
-foo 66 = [66, 67, 68, 69, 70, 71]
-foo 68 = [68, 69, 70, 71, 72, 73]
-foo n | n == 70 = [70, 80, 90, 100, 110, 120, 130]
-foo _ = []
-
-bar :: Int -> [Int]
-bar n
- | odd n = []
- | n < 12 = []
- | n > 70 = []
- | n `mod` 10 == 0 = take 7 $ iterate (+ 10) n
- | otherwise = take 6 $ iterate (+ 1) n
-
diff --git a/testsuite/tests/ghc-regress/ghci/should_run/ghcirun003.stdout b/testsuite/tests/ghc-regress/ghci/should_run/ghcirun003.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/ghci/should_run/ghcirun003.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/haddock/Makefile b/testsuite/tests/ghc-regress/haddock/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/haddock/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/haddock/haddock_examples/Hidden.hs b/testsuite/tests/ghc-regress/haddock/haddock_examples/Hidden.hs
deleted file mode 100644
index d30925b10e..0000000000
--- a/testsuite/tests/ghc-regress/haddock/haddock_examples/Hidden.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- #hide
-module Hidden where
-hidden :: Int -> Int
-hidden a = a
diff --git a/testsuite/tests/ghc-regress/haddock/haddock_examples/Makefile b/testsuite/tests/ghc-regress/haddock/haddock_examples/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/haddock/haddock_examples/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/haddock/haddock_examples/Test.hs b/testsuite/tests/ghc-regress/haddock/haddock_examples/Test.hs
deleted file mode 100644
index 8336cb543d..0000000000
--- a/testsuite/tests/ghc-regress/haddock/haddock_examples/Test.hs
+++ /dev/null
@@ -1,407 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module : Test
--- Copyright : (c) Simon Marlow 2002
--- License : BSD-style
---
--- Maintainer : libraries@haskell.org
--- Stability : provisional
--- Portability : portable
---
--- This module illustrates & tests most of the features of Haddock.
--- Testing references from the description: 'T', 'f', 'g', 'Visible.visible'.
---
------------------------------------------------------------------------------
-
--- This is plain comment, ignored by Haddock.
-
-module Test (
-
- -- Section headings are introduced with '-- *':
- -- * Type declarations
-
- -- Subsection headings are introduced with '-- **' and so on.
- -- ** Data types
- T(..), T2, T3(..), T4(..), T5(..), T6(..),
- N1(..), N2(..), N3(..), N4, N5(..), N6(..), N7(..),
-
- -- ** Records
- R(..), R1(..),
-
- -- | test that we can export record selectors on their own:
- p, q, u,
-
- -- * Class declarations
- C(a,b), D(..), E, F(..),
-
- -- | Test that we can export a class method on its own:
- a,
-
- -- * Function types
- f, g,
-
- -- * Auxiliary stuff
-
- -- $aux1
-
- -- $aux2
-
- -- $aux3
-
- -- $aux4
-
- -- $aux5
-
- -- $aux6
-
- -- $aux7
-
- -- $aux8
-
- -- $aux9
-
- -- $aux10
-
- -- $aux11
-
- -- $aux12
-
- -- | This is some inline documentation in the export list
- --
- -- > a code block using bird-tracks
- -- > each line must begin with > (which isn't significant unless it
- -- > is at the beginning of the line).
-
- -- * A hidden module
- module Hidden,
-
- -- * A visible module
- module Visible,
-
- {-| nested-style doc comments -}
-
- -- * Existential \/ Universal types
- Ex(..),
-
- -- * Type signatures with argument docs
- k, l, m, o,
-
- -- * A section
- -- and without an intervening comma:
- -- ** A subsection
-
-{-|
- > a literal line
-
- $ a non /literal/ line $
--}
-
- f',
- ) where
-
-import Hidden
-import Visible
-
--- | This comment applies to the /following/ declaration
--- and it continues until the next non-comment line
-data T a b
- = A Int (Maybe Float) -- ^ This comment describes the 'A' constructor
- | -- | This comment describes the 'B' constructor
- B (T a b, T Int Float) -- ^
-
--- | An abstract data declaration
-data T2 a b = T2 a b
-
--- | A data declaration with no documentation annotations on the constructors
-data T3 a b = A1 a | B1 b
-
--- A data declaration with no documentation annotations at all
-data T4 a b = A2 a | B2 b
-
--- A data declaration documentation on the constructors only
-data T5 a b
- = A3 a -- ^ documents 'A3'
- | B3 b -- ^ documents 'B3'
-
--- | Testing alternative comment styles
-data T6
- -- | This is the doc for 'A4'
- = A4
- | B4
- | -- ^ This is the doc for 'B4'
-
- -- | This is the doc for 'C4'
- C4
-
--- | A newtype
-newtype N1 a = N1 a
-
--- | A newtype with a fieldname
-newtype N2 a b = N2 {n :: a b}
-
--- | A newtype with a fieldname, documentation on the field
-newtype N3 a b = N3 {n3 :: a b -- ^ this is the 'n3' field
- }
-
--- | An abstract newtype - we show this one as data rather than newtype because
--- the difference isn\'t visible to the programmer for an abstract type.
-newtype N4 a b = N4 a
-
-newtype N5 a b = N5 {n5 :: a b -- ^ no docs on the datatype or the constructor
- }
-
-newtype N6 a b = N6 {n6 :: a b
- }
- -- ^ docs on the constructor only
-
--- | docs on the newtype and the constructor
-newtype N7 a b = N7 {n7 :: a b
- }
- -- ^ The 'N7' constructor
-
-
-class (D a) => C a where
- -- |this is a description of the 'a' method
- a :: IO a
- b :: [a]
- -- ^ this is a description of the 'b' method
- c :: a -- c is hidden in the export list
-
--- ^ This comment applies to the /previous/ declaration (the 'C' class)
-
-class D a where
- d :: T a b
- e :: (a,a)
--- ^ This is a class declaration with no separate docs for the methods
-
-instance D Int where
- d = undefined
- e = undefined
-
--- instance with a qualified class name
-instance Test.D Float where
- d = undefined
- e = undefined
-
-class E a where
- ee :: a
--- ^ This is a class declaration with no methods (or no methods exported)
-
--- This is a class declaration with no documentation at all
-class F a where
- ff :: a
-
--- | This is the documentation for the 'R' record, which has four fields,
--- 'p', 'q', 'r', and 's'.
-data R =
- -- | This is the 'C1' record constructor, with the following fields:
- C1 { p :: Int -- ^ This comment applies to the 'p' field
- , q :: forall a . a->a -- ^ This comment applies to the 'q' field
- , -- | This comment applies to both 'r' and 's'
- r,s :: Int
- }
- | C2 { t :: T1 -> (T2 Int Int)-> (T3 Bool Bool) -> (T4 Float Float) -> T5 () (),
- u,v :: Int
- }
- -- ^ This is the 'C2' record constructor, also with some fields:
-
--- | Testing different record commenting styles
-data R1
- -- | This is the 'C3' record constructor
- = C3 {
- -- | The 's1' record selector
- s1 :: Int
- -- | The 's2' record selector
- , s2 :: Int
- , s3 :: Int -- NOTE: In the original examples/Test.hs in Haddock, there is an extra "," here.
- -- Since GHC doesn't allow that, I have removed it in this file.
- -- ^ The 's3' record selector
- }
-
--- These section headers are only used when there is no export list to
--- give the structure of the documentation:
-
--- * This is a section header (level 1)
--- ** This is a section header (level 2)
--- *** This is a section header (level 3)
-
-{-|
-In a comment string we can refer to identifiers in scope with
-single quotes like this: 'T', and we can refer to modules by
-using double quotes: "Foo". We can add emphasis /like this/.
-
- * This is a bulleted list
-
- - This is the next item (different kind of bullet)
-
- (1) This is an ordered list
-
- 2. This is the next item (different kind of bullet)
-
-@
- This is a block of code, which can include other markup: 'R'
- formatting
- is
- significant
-@
-
-> this is another block of code
-
-We can also include URLs in documentation: <http://www.haskell.org/>.
--}
-
-f :: C a => a -> Int
-
--- | we can export foreign declarations too
-foreign import ccall "header.h" g :: Int -> IO CInt
-
--- | this doc string has a parse error in it: \'
-h :: Int
-h = 42
-
-
--- $aux1 This is some documentation that is attached to a name ($aux1)
--- rather than a source declaration. The documentation may be
--- referred to in the export list using its name.
---
--- @ code block in named doc @
-
--- $aux2 This is some documentation that is attached to a name ($aux2)
-
--- $aux3
--- @ code block on its own in named doc @
-
--- $aux4
---
--- @ code block on its own in named doc (after newline) @
-
-{- $aux5 a nested, named doc comment
-
- with a paragraph,
-
- @ and a code block @
--}
-
--- some tests for various arrangements of code blocks:
-
-{- $aux6
->test
->test1
-
-@ test2
- test3
-@
--}
-
-{- $aux7
-@
-test1
-test2
-@
--}
-
-{- $aux8
->test3
->test4
--}
-
-{- $aux9
-@
-test1
-test2
-@
-
->test3
->test4
--}
-
-{- $aux10
->test3
->test4
-
-@
-test1
-test2
-@
--}
-
--- This one is currently wrong (Haddock 0.4). The @...@ part is
--- interpreted as part of the bird-tracked code block.
-{- $aux11
-aux11:
-
->test3
->test4
-
-@
-test1
-test2
-@
--}
-
--- $aux12
--- > foo
---
--- > bar
---
-
--- | A data-type using existential\/universal types
-data Ex a
- = forall b . C b => Ex1 b
- | forall b . Ex2 b
- | forall b . C a => Ex3 b -- NOTE: I have added "forall b" here make GHC accept this file
- | Ex4 (forall a . a -> a)
-
--- | This is a function with documentation for each argument
-k :: T () () -- ^ This argument has type 'T'
- -> (T2 Int Int) -- ^ This argument has type 'T2 Int Int'
- -> (T3 Bool Bool -> T4 Float Float) -- ^ This argument has type @T3 Bool Bool -> T4 Float Float@
- -> T5 () () -- ^ This argument has a very long description that should
- -- hopefully cause some wrapping to happen when it is finally
- -- rendered by Haddock in the generated HTML page.
- -> IO () -- ^ This is the result type
-
--- This function has arg docs but no docs for the function itself
-l :: (Int, Int, Float) -- ^ takes a triple
- -> Int -- ^ returns an 'Int'
-
--- | This function has some arg docs
-m :: R
- -> N1 () -- ^ one of the arguments
- -> IO Int -- ^ and the return value
-
--- | This function has some arg docs but not a return value doc
-
--- can't use the original name ('n') with GHC
-newn :: R -- ^ one of the arguments, an 'R'
- -> N1 () -- ^ one of the arguments
- -> IO Int
-newn = undefined
-
-
--- | A foreign import with argument docs
-foreign import ccall unsafe "header.h"
- o :: Float -- ^ The input float
- -> IO Float -- ^ The output float
-
--- | We should be able to escape this: \#\#\#
-
--- p :: Int
--- can't use the above original definition with GHC
-newp :: Int
-newp = undefined
-
--- | a function with a prime can be referred to as 'f''
--- but f' doesn't get link'd 'f\''
-f' :: Int
-
-
--- Add some definitions here so that this file can be compiled with GHC
-
-data T1
-f = undefined
-f' = undefined
-type CInt = Int
-k = undefined
-l = undefined
-m = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/haddock_examples/Visible.hs b/testsuite/tests/ghc-regress/haddock/haddock_examples/Visible.hs
deleted file mode 100644
index cad719315f..0000000000
--- a/testsuite/tests/ghc-regress/haddock/haddock_examples/Visible.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Visible where
-visible :: Int -> Int
-visible a = a
diff --git a/testsuite/tests/ghc-regress/haddock/haddock_examples/haddock.Test.stderr b/testsuite/tests/ghc-regress/haddock/haddock_examples/haddock.Test.stderr
deleted file mode 100644
index ddc289f161..0000000000
--- a/testsuite/tests/ghc-regress/haddock/haddock_examples/haddock.Test.stderr
+++ /dev/null
@@ -1,159 +0,0 @@
-[1 of 3] Compiling Visible ( Visible.hs, Visible.o )
-
-==================== Parser ====================
-module Visible where
-visible :: Int -> Int
-visible a = a
-
-
-[2 of 3] Compiling Hidden ( Hidden.hs, Hidden.o )
-
-==================== Parser ====================
-module Hidden where
-hidden :: Int -> Int
-hidden a = a
-
-
-[3 of 3] Compiling Test ( Test.hs, Test.o )
-
-==================== Parser ====================
-<document comment>
-module Test (
- <IEGroup: 1>, <IEGroup: 2>, T(..), T2, T3(..), T4(..), T5(..),
- T6(..), N1(..), N2(..), N3(..), N4, N5(..), N6(..), N7(..),
- <IEGroup: 2>, R(..), R1(..), <document comment>, p, q, u,
- <IEGroup: 1>, C(a, b), D(..), E, F(..), <document comment>, a,
- <IEGroup: 1>, f, g, <IEGroup: 1>, <IEDocNamed: aux1>,
- <IEDocNamed: aux2>, <IEDocNamed: aux3>, <IEDocNamed: aux4>,
- <IEDocNamed: aux5>, <IEDocNamed: aux6>, <IEDocNamed: aux7>,
- <IEDocNamed: aux8>, <IEDocNamed: aux9>, <IEDocNamed: aux10>,
- <IEDocNamed: aux11>, <IEDocNamed: aux12>, <document comment>,
- <IEGroup: 1>, module Hidden, <IEGroup: 1>, module Visible,
- <document comment>, <IEGroup: 1>, Ex(..), <IEGroup: 1>, k, l, m, o,
- <IEGroup: 1>, <IEGroup: 2>, <document comment>, f'
- ) where
-import Hidden
-import Visible
-<document comment>
-data T a b
- = <document comment> A Int Maybe Float |
- <document comment> B (T a b, T Int Float)
-<document comment>
-data T2 a b = T2 a b
-<document comment>
-data T3 a b = A1 a | B1 b
-data T4 a b = A2 a | B2 b
-data T5 a b = <document comment> A3 a | <document comment> B3 b
-<document comment>
-data T6
- = <document comment> A4 |
- <document comment> B4 |
- <document comment> C4
-<document comment>
-newtype N1 a = N1 a
-<document comment>
-newtype N2 a b = N2 {n :: a b}
-<document comment>
-newtype N3 a b = N3 {n3 :: a b <document comment>}
-<document comment>
-newtype N4 a b = N4 a
-newtype N5 a b = N5 {n5 :: a b <document comment>}
-newtype N6 a b = <document comment> N6 {n6 :: a b}
-<document comment>
-newtype N7 a b = <document comment> N7 {n7 :: a b}
-class D a => C a where { a :: IO a; b :: [a]; c :: a; }
-<document comment>
-class D a where { d :: T a b; e :: (a, a); }
-<document comment>
-instance D Int where
- { d = undefined
- e = undefined }
-instance Test.D Float where
- { d = undefined
- e = undefined }
-class E a where { ee :: a; }
-<document comment>
-class F a where { ff :: a; }
-<document comment>
-data R
- = <document comment>
- C1 {p :: Int <document comment>,
- q :: forall a. a -> a <document comment>,
- r :: Int <document comment>,
- s :: Int <document comment>} |
- <document comment>
- C2 {t :: T1
- -> (T2 Int Int) -> (T3 Bool Bool) -> (T4 Float Float) -> T5 () (),
- u :: Int,
- v :: Int}
-<document comment>
-data R1
- = <document comment>
- C3 {s1 :: Int <document comment>,
- s2 :: Int <document comment>,
- s3 :: Int <document comment>}
-<document comment>
-<document comment>
-<document comment>
-<document comment>
-f :: C a => a -> Int
-<document comment>
-foreign import ccall safe "static header.h g" g :: Int -> IO CInt
-<document comment>
-h :: Int
-h = 42
-<document comment>
-<document comment>
-<document comment>
-<document comment>
-<document comment>
-<document comment>
-<document comment>
-<document comment>
-<document comment>
-<document comment>
-<document comment>
-<document comment>
-<document comment>
-data Ex a
- = forall b. C b => Ex1 b |
- forall b. Ex2 b |
- forall b. C a => Ex3 b |
- Ex4 forall a. a -> a
-<document comment>
-k ::
- T () () <document comment>
- -> (T2 Int Int) <document comment>
- -> (T3 Bool Bool -> T4 Float Float) <document comment>
- -> T5 () () <document comment> -> IO () <document comment>
-l :: (Int, Int, Float) <document comment> -> Int <document comment>
-<document comment>
-m :: R -> N1 () <document comment> -> IO Int <document comment>
-<document comment>
-newn :: R <document comment> -> N1 () <document comment> -> IO Int
-newn = undefined
-<document comment>
-foreign import ccall unsafe "static header.h o" o
- :: Float <document comment> -> IO Float <document comment>
-<document comment>
-newp :: Int
-newp = undefined
-<document comment>
-f' :: Int
-data T1 =
-f = undefined
-f' = undefined
-type CInt = Int
-k = undefined
-l = undefined
-m = undefined
-
-
-
-Test.hs:32:9: Warning: `p' is exported by `p' and `R(..)'
-
-Test.hs:32:12: Warning: `q' is exported by `q' and `R(..)'
-
-Test.hs:32:15: Warning: `u' is exported by `u' and `R(..)'
-
-Test.hs:38:9: Warning: `a' is exported by `a' and `C(a, b)'
diff --git a/testsuite/tests/ghc-regress/haddock/haddock_examples/header.h b/testsuite/tests/ghc-regress/haddock/haddock_examples/header.h
deleted file mode 100644
index 0125eb3bfd..0000000000
--- a/testsuite/tests/ghc-regress/haddock/haddock_examples/header.h
+++ /dev/null
@@ -1,5 +0,0 @@
-
-/* These are used in Test.hs */
-extern int g(HsInt x);
-extern HsFloat o(HsFloat x);
-
diff --git a/testsuite/tests/ghc-regress/haddock/haddock_examples/test.T b/testsuite/tests/ghc-regress/haddock/haddock_examples/test.T
deleted file mode 100644
index 856bf73bfd..0000000000
--- a/testsuite/tests/ghc-regress/haddock/haddock_examples/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-test('haddock.Test',
- [omit_ways(['optasm', 'profasm']),
- extra_clean(['Test.hi', 'Test.o', 'Hidden.hi', 'Hidden.o',
- 'Visible.hi', 'Visible.o'])],
- multimod_compile,
- ['Test Hidden Visible', '-XRank2Types -XExistentialQuantification -haddock -ddump-parsed'])
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/Makefile b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/all.T b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/all.T
deleted file mode 100644
index ed77310fd5..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/all.T
+++ /dev/null
@@ -1,33 +0,0 @@
-test('haddockA001', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA002', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA003', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA004', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA005', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA006', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA007', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA008', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA009', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA010', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA011', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA012', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA013', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA014', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA015', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA016', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA017', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA018', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA019', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA020', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA021', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA022', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA023', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA024', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA025', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA026', normal, compile, ['-haddock -ddump-parsed -XRank2Types'])
-test('haddockA027', normal, compile, ['-haddock -ddump-parsed -XRank2Types'])
-test('haddockA028', normal, compile, ['-haddock -ddump-parsed -XTypeOperators'])
-test('haddockA029', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA030', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA031', normal, compile, ['-haddock -ddump-parsed -XExistentialQuantification'])
-test('haddockA032', normal, compile, ['-haddock -ddump-parsed'])
-test('haddockA033', normal, compile, ['-haddock -ddump-parsed'])
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA001.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA001.hs
deleted file mode 100644
index 8710c20eee..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA001.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module ShouldCompile where
-
-{- | blabla -}
-data Bla = Hej
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA001.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA001.stderr
deleted file mode 100644
index 679876f821..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA001.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-<document comment>
-data Bla = Hej
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA002.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA002.hs
deleted file mode 100644
index e6ab145eb5..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA002.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module ShouldCompile where
-
-{- | blabla -}
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA002.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA002.stderr
deleted file mode 100644
index 8ad5a91566..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA002.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-<document comment>
-main = undefined
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA003.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA003.hs
deleted file mode 100644
index 54af6d73b4..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA003.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module ShouldCompile where
-
--- | blabla
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA003.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA003.stderr
deleted file mode 100644
index 8ad5a91566..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA003.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-<document comment>
-main = undefined
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA004.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA004.hs
deleted file mode 100644
index 4311798859..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA004.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-module ShouldCompile where
-
--- | blabla öqewjlaskjfdasklöjfaslökj
--- aslfdjaskldaskldasjda
--- xxxxxx
--- end of the comment
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA004.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA004.stderr
deleted file mode 100644
index 8ad5a91566..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA004.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-<document comment>
-main = undefined
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA005.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA005.hs
deleted file mode 100644
index 4c854505ca..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA005.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-hej = undefined
-
--- | 1l3i1j3 as
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA005.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA005.stderr
deleted file mode 100644
index 8fced3ae43..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA005.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-==================== Parser ====================
-hej = undefined
-<document comment>
-main = undefined
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA006.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA006.hs
deleted file mode 100644
index 518c598b38..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA006.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-^ wealwwwwwwwwwwww
-
-
--}
-main = return ()
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA006.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA006.stderr
deleted file mode 100644
index 43971dfd1d..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA006.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-==================== Parser ====================
-<document comment>
-main = return ()
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA007.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA007.hs
deleted file mode 100644
index c6098072bf..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA007.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module ShouldCompile where
-
-{- |asd-}
-main=undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA007.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA007.stderr
deleted file mode 100644
index 8ad5a91566..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA007.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-<document comment>
-main = undefined
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA008.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA008.hs
deleted file mode 100644
index ca17e8de4b..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA008.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-module ShouldCompile where
-
-{-|
-main=undefined
--}
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA008.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA008.stderr
deleted file mode 100644
index 8ad5a91566..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA008.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-<document comment>
-main = undefined
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA009.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA009.hs
deleted file mode 100644
index 67ef8ff570..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA009.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module ShouldCompile where
-
-{-$ aslkdjasasd asdkjasdlaj {-weqw -}-}
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA009.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA009.stderr
deleted file mode 100644
index 8ad5a91566..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA009.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-<document comment>
-main = undefined
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA010.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA010.hs
deleted file mode 100644
index 943b28e485..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA010.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module ShouldCompile where
-
-{-| weoprjwer {- | qwoiejqwioe -}-}
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA010.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA010.stderr
deleted file mode 100644
index 8ad5a91566..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA010.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-<document comment>
-main = undefined
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA011.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA011.hs
deleted file mode 100644
index 5efa2db249..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA011.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-module ShouldCompile where
-
--- aslkdjasldkjasldkaj
--- | awlkdajsads
--- asdasödlklas
---qww
-main=undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA011.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA011.stderr
deleted file mode 100644
index 8ad5a91566..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA011.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-<document comment>
-main = undefined
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA012.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA012.hs
deleted file mode 100644
index c392d85211..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA012.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-main=undefined
-
--- | vkfja
-hej=main
--- | ieasdkjahsdkjashd
-x = hej
-
-
--- | eroiewuroieuwr
-y = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA012.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA012.stderr
deleted file mode 100644
index 56736ccbca..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA012.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-==================== Parser ====================
-main = undefined
-<document comment>
-hej = main
-<document comment>
-x = hej
-<document comment>
-y = undefined
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA013.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA013.hs
deleted file mode 100644
index 224e38d360..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA013.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-module ShouldCompile where
-
--- ^ bla
-main=undefined
-
--- ^ vkfja
-hej=main
--- ^ ieasdkjahsdkjashd
-x = hej
-
-
--- ^ eroiewuroieuwr
-y = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA013.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA013.stderr
deleted file mode 100644
index ea9837b3c8..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA013.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-<document comment>
-main = undefined
-<document comment>
-hej = main
-<document comment>
-x = hej
-<document comment>
-y = undefined
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA014.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA014.hs
deleted file mode 100644
index 880264f60b..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA014.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- | a header
-module HeaderTest where
-
--- | bla bla
-x = 0
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA014.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA014.stderr
deleted file mode 100644
index f71f89a89e..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA014.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-==================== Parser ====================
-<document comment>
-module HeaderTest where
-<document comment>
-x = 0
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA015.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA015.hs
deleted file mode 100644
index b4b47be108..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA015.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- | a header
-module HeaderTest where
-
--- * A section
-x = 0
-
--- ** A subsection
-y = 1
-
--- *** A subsubsection
-main = print x
-
--- | bla bla
-z = 0
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA015.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA015.stderr
deleted file mode 100644
index 356d5b73bf..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA015.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-
-==================== Parser ====================
-<document comment>
-module HeaderTest where
-<document comment>
-x = 0
-<document comment>
-y = 1
-<document comment>
-main = print x
-<document comment>
-z = 0
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA016.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA016.hs
deleted file mode 100644
index ffe02923ea..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA016.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- #hide, prune, ignore-exports
-
--- |Module description
-module A where
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA016.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA016.stderr
deleted file mode 100644
index 1f436a7bec..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA016.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-==================== Parser ====================
-<document comment>
-module A where
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA017.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA017.hs
deleted file mode 100644
index 75d859a1c7..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA017.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- #hide, prune, ignore-exports
-module A where
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA017.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA017.stderr
deleted file mode 100644
index 3fd476b166..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA017.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-==================== Parser ====================
-module A where
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA018.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA018.hs
deleted file mode 100644
index c8b6f52d42..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA018.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- | module header bla bla
-
--- #hide, prune, ignore-exports
-module A where
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA018.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA018.stderr
deleted file mode 100644
index 1f436a7bec..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA018.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-==================== Parser ====================
-<document comment>
-module A where
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA019.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA019.hs
deleted file mode 100644
index 7e5e98be8d..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA019.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module A (
-
--- | bla bla
-
-{- | blabla -}
-
-) where
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA019.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA019.stderr
deleted file mode 100644
index 68e7b4f225..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA019.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-==================== Parser ====================
-module A (
- <document comment>, <document comment>
- ) where
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA020.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA020.hs
deleted file mode 100644
index 31b38da179..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA020.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-module A (
-
--- | bla bla
-
-{- | blabla -}
-
-x,
-
--- ** qeöqwkeöwqlkeqöle
-
--- | qweljqwelkqjwelqjkq
-
-) where
-
-x = True
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA020.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA020.stderr
deleted file mode 100644
index 20c628006d..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA020.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-==================== Parser ====================
-module A (
- <document comment>, <document comment>, x, <IEGroup: 2>, <document comment>
- ) where
-x = True
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA021.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA021.hs
deleted file mode 100644
index ac12f30d6b..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA021.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-module A (
-
--- | bla bla
-
-{- | blabla -}
-
-x,
-
--- ** qeöqwkeöwqlkeqöle
-
--- | qweljqwelkqjwelqjkq
-
-y,
-
-
--- | dkashdakj
-z
-
--- * asdjha
-
-) where
-
-x = True
-y = False
-z = True
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA021.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA021.stderr
deleted file mode 100644
index edf523dfa2..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA021.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-==================== Parser ====================
-module A (
- <document comment>, <document comment>, x, <IEGroup: 2>, <document comment>, y,
- <document comment>, z, <IEGroup: 1>
- ) where
-x = True
-y = False
-z = True
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA022.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA022.hs
deleted file mode 100644
index dcd90750e0..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA022.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-main = print (test::Int)
- where
- -- | kjfhaskd
- test = 0
- -- | xzczn
- -- qwelkjqwelkqj
- test2 = 1
-
- -- | adlkjadajdldjad
- test3 = 2
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA022.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA022.stderr
deleted file mode 100644
index 6e6c5c6730..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA022.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-==================== Parser ====================
-main = print (test :: Int)
- where
- test = 0
- test2 = 1
- test3 = 2
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA023.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA023.hs
deleted file mode 100644
index e197a6b48f..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA023.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldCompile where
-
-test :: (Eq a) => [a] -- ^ doc1
- -> [a] {-^ doc2 -}
- -> [a] -- ^ doc3
-test xs ys = xs
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA023.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA023.stderr
deleted file mode 100644
index 2c4f5bc952..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA023.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-test ::
- Eq a =>
- [a] <document comment>
- -> [a] <document comment> -> [a] <document comment>
-test xs ys = xs
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA024.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA024.hs
deleted file mode 100644
index 9e069c322c..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA024.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldCompile where
-
-test2 :: a -- ^ doc1
- -> b {-^ doc2 -} -> a -- ^ doc 3
-test2 x y = x
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA024.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA024.stderr
deleted file mode 100644
index f0d269d0b1..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA024.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-test2 :: a <document comment> -> b <document comment> -> a <document comment>
-test2 x y = x
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA025.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA025.hs
deleted file mode 100644
index c53ae7bb3e..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA025.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldCompile where
-
-test2 :: a -- ^ doc1
- -> a
-test2 x = x
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA025.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA025.stderr
deleted file mode 100644
index 792da55155..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA025.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-test2 :: a <document comment> -> a
-test2 x = x
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA026.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA026.hs
deleted file mode 100644
index cc2d8bfae5..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA026.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldCompile where
-
-test :: (Eq a) => [a] -- ^ doc1
- -> forall b . [b] {-^ doc2 -}
- -> [a] -- ^ doc3
-test xs ys = xs
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA026.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA026.stderr
deleted file mode 100644
index e352980fd4..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA026.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-test ::
- Eq a =>
- [a] <document comment>
- -> forall b. [b] <document comment> -> [a] <document comment>
-test xs ys = xs
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA027.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA027.hs
deleted file mode 100644
index 1aa6e37d07..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA027.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module ShouldCompile where
-
-test :: [a] -- ^ doc1
- -> forall b. (Ord b) => [b] {-^ doc2 -}
- -> forall c. (Num c) => [c] -- ^ doc3
- -> [a]
-test xs ys zs = xs
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA027.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA027.stderr
deleted file mode 100644
index 67bf6528c0..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA027.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-test ::
- [a] <document comment>
- -> forall b. Ord b =>
- [b] <document comment>
- -> forall c. Num c => [c] <document comment> -> [a]
-test xs ys zs = xs
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA028.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA028.hs
deleted file mode 100644
index 2f4b7c1bcb..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA028.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldCompile where
-
-test :: [a] -- ^ doc1
- -> a <--> b
- -> [a] -- ^ blabla
-test xs ys = xs
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA028.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA028.stderr
deleted file mode 100644
index d74422461e..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA028.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-test ::
- [a] <document comment> -> (a <--> (b -> [a])) <document comment>
-test xs ys = xs
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA029.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA029.hs
deleted file mode 100644
index 2615e555f1..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA029.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldCompile where
-
-data A
- -- | A comment that documents the first constructor
- = A | B | C | D
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA029.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA029.stderr
deleted file mode 100644
index aa48d998ef..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA029.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-data A = <document comment> A | B | C | D
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA030.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA030.hs
deleted file mode 100644
index 82c3799d1f..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA030.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module ShouldCompile where
-
-data A
- -- | A comment that documents the first constructor
- = A
- -- | comment for B
- | {-^ comment for A -} B
- -- | comment for C
- | C
- | D
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA030.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA030.stderr
deleted file mode 100644
index c879d2244b..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA030.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-data A = <document comment> A | <document comment> B | <document comment> C | D
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA031.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA031.hs
deleted file mode 100644
index 2d4b55f659..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA031.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldCompile where
-
-data A
- = A
- | {-| comment for B -} forall a. B a a
- | forall a. Num a => C a {-^ comment for C -}
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA031.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA031.stderr
deleted file mode 100644
index 75ac2945b8..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA031.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-data A
- = A |
- <document comment> forall a. B a a |
- <document comment> forall a. Num a => C a
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA032.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA032.hs
deleted file mode 100644
index b772ec1de3..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA032.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module ShouldCompile where
-
-data R a = R {
- field1 :: a -- | comment for field2
- , field2 :: a
- , field3 :: a -- ^ comment for field3
- , {-| comment for field4 -} field4 :: a
-}
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA032.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA032.stderr
deleted file mode 100644
index 2b0e4d24af..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA032.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-data R a
- = R {field1 :: a,
- field2 :: a <document comment>,
- field3 :: a <document comment>,
- field4 :: a <document comment>}
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA033.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA033.hs
deleted file mode 100644
index 6d3db6cdc6..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA033.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-module ShouldCompile where
-
--- | dlkjasldkja
-f 0 = 1
--- | falkajflksjfa
-f 1 = 2
--- | slkdjasldkj
-f 3 = 6
--- | asldfaslödjas
-
--- | blabla
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA033.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA033.stderr
deleted file mode 100644
index c1760c11fe..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_haddock/haddockA033.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-==================== Parser ====================
-module ShouldCompile where
-<document comment>
-f 0 = 1
-f 1 = 2
-f 3 = 6
-<document comment>
-<document comment>
-
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/Makefile b/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/all.T b/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/all.T
deleted file mode 100644
index 500a7e6bd1..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/all.T
+++ /dev/null
@@ -1,4 +0,0 @@
-test('haddockB001', normal, compile, [''])
-test('haddockB002', normal, compile, [''])
-test('haddockB003', normal, compile, [''])
-test('haddockB004', normal, compile, [''])
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB001.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB001.hs
deleted file mode 100644
index 10998fdb1d..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB001.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-
-{- xc,zxcz -}
-main = putStrLn "hej"
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB002.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB002.hs
deleted file mode 100644
index f698fa0520..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB002.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-{-{--}-}
-
-main=return()
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB003.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB003.hs
deleted file mode 100644
index 7c3f733483..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB003.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-----------------------------------------------------------
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB004.hs b/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB004.hs
deleted file mode 100644
index cc9e07e6b2..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_flag_nohaddock/haddockB004.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# OPTIONS_GHC -XNoImplicitPrelude #-}
------------------------------------------------------------------------------
---
--- Module : Foreign
--- Copyright : (c) The FFI task force 2001
--- License : BSD-style (see the file libraries/base/LICENSE)
---
--- Maintainer : ffi@haskell.org
--- Stability : provisional
--- Portability : portable
---
--- A collection of data types, classes, and functions for interfacing
--- with another programming language.
---
------------------------------------------------------------------------------
-
-module Hej where
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/Makefile b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/all.T b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/all.T
deleted file mode 100644
index dbc7d17d9a..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/all.T
+++ /dev/null
@@ -1,33 +0,0 @@
-test('haddockC001', normal, compile, [''])
-test('haddockC002', normal, compile, [''])
-test('haddockC003', normal, compile, [''])
-test('haddockC004', normal, compile, [''])
-test('haddockC005', normal, compile, [''])
-test('haddockC006', normal, compile, [''])
-test('haddockC007', normal, compile, [''])
-test('haddockC008', normal, compile, [''])
-test('haddockC009', normal, compile, [''])
-test('haddockC010', normal, compile, [''])
-test('haddockC011', normal, compile, [''])
-test('haddockC012', normal, compile, [''])
-test('haddockC013', normal, compile, [''])
-test('haddockC014', normal, compile, [''])
-test('haddockC015', normal, compile, [''])
-test('haddockC016', normal, compile, [''])
-test('haddockC017', normal, compile, [''])
-test('haddockC018', normal, compile, [''])
-test('haddockC019', normal, compile, [''])
-test('haddockC020', normal, compile, [''])
-test('haddockC021', normal, compile, [''])
-test('haddockC022', normal, compile, [''])
-test('haddockC023', normal, compile, [''])
-test('haddockC024', normal, compile, [''])
-test('haddockC025', normal, compile, [''])
-test('haddockC026', normal, compile, ['-XRank2Types'])
-test('haddockC027', normal, compile, ['-XRank2Types'])
-test('haddockC028', normal, compile, ['-XTypeOperators'])
-test('haddockC029', normal, compile, [''])
-test('haddockC030', normal, compile, [''])
-test('haddockC031', normal, compile, ['-XExistentialQuantification'])
-test('haddockC032', normal, compile, [''])
-test('haddockSimplUtilsBug', normal, compile, [''])
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC001.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC001.hs
deleted file mode 100644
index 8710c20eee..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC001.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module ShouldCompile where
-
-{- | blabla -}
-data Bla = Hej
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC002.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC002.hs
deleted file mode 100644
index e6ab145eb5..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC002.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module ShouldCompile where
-
-{- | blabla -}
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC003.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC003.hs
deleted file mode 100644
index 54af6d73b4..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC003.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module ShouldCompile where
-
--- | blabla
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC004.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC004.hs
deleted file mode 100644
index 4311798859..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC004.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-module ShouldCompile where
-
--- | blabla öqewjlaskjfdasklöjfaslökj
--- aslfdjaskldaskldasjda
--- xxxxxx
--- end of the comment
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC005.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC005.hs
deleted file mode 100644
index 4c854505ca..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC005.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-hej = undefined
-
--- | 1l3i1j3 as
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC006.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC006.hs
deleted file mode 100644
index 518c598b38..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC006.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-^ wealwwwwwwwwwwww
-
-
--}
-main = return ()
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC007.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC007.hs
deleted file mode 100644
index 94ce040c20..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC007.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module ShouldCompiler where
-
-{- |asd-}
-main=undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC008.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC008.hs
deleted file mode 100644
index ca17e8de4b..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC008.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-module ShouldCompile where
-
-{-|
-main=undefined
--}
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC009.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC009.hs
deleted file mode 100644
index 67ef8ff570..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC009.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module ShouldCompile where
-
-{-$ aslkdjasasd asdkjasdlaj {-weqw -}-}
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC010.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC010.hs
deleted file mode 100644
index 943b28e485..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC010.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module ShouldCompile where
-
-{-| weoprjwer {- | qwoiejqwioe -}-}
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC011.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC011.hs
deleted file mode 100644
index c6146d2369..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC011.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-module ShouldCompile where
-
--- aslkdjasldkjasldkaj
--- | awlkdajsads
----asdasödlklas
---------------- qww
-main=undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC012.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC012.hs
deleted file mode 100644
index c392d85211..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC012.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-main=undefined
-
--- | vkfja
-hej=main
--- | ieasdkjahsdkjashd
-x = hej
-
-
--- | eroiewuroieuwr
-y = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC013.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC013.hs
deleted file mode 100644
index 82f2561f86..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC013.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-
-module ShouldCompile where
-
--- ^ bla
-main=undefined
-
--- ^ vkfja
-hej=main
--- ^ ieasdkjahsdkjashd
-x = hej
-
-
--- ^ eroiewuroieuwr
-y = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC014.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC014.hs
deleted file mode 100644
index 880264f60b..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC014.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- | a header
-module HeaderTest where
-
--- | bla bla
-x = 0
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC015.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC015.hs
deleted file mode 100644
index b4b47be108..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC015.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- | a header
-module HeaderTest where
-
--- * A section
-x = 0
-
--- ** A subsection
-y = 1
-
--- *** A subsubsection
-main = print x
-
--- | bla bla
-z = 0
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC016.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC016.hs
deleted file mode 100644
index ffe02923ea..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC016.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- #hide, prune, ignore-exports
-
--- |Module description
-module A where
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC017.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC017.hs
deleted file mode 100644
index 75d859a1c7..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC017.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- #hide, prune, ignore-exports
-module A where
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC018.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC018.hs
deleted file mode 100644
index c8b6f52d42..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC018.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- | module header bla bla
-
--- #hide, prune, ignore-exports
-module A where
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC019.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC019.hs
deleted file mode 100644
index 7e5e98be8d..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC019.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module A (
-
--- | bla bla
-
-{- | blabla -}
-
-) where
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC020.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC020.hs
deleted file mode 100644
index 31b38da179..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC020.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-module A (
-
--- | bla bla
-
-{- | blabla -}
-
-x,
-
--- ** qeöqwkeöwqlkeqöle
-
--- | qweljqwelkqjwelqjkq
-
-) where
-
-x = True
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC021.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC021.hs
deleted file mode 100644
index ac12f30d6b..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC021.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-module A (
-
--- | bla bla
-
-{- | blabla -}
-
-x,
-
--- ** qeöqwkeöwqlkeqöle
-
--- | qweljqwelkqjwelqjkq
-
-y,
-
-
--- | dkashdakj
-z
-
--- * asdjha
-
-) where
-
-x = True
-y = False
-z = True
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC022.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC022.hs
deleted file mode 100644
index dcd90750e0..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC022.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-main = print (test::Int)
- where
- -- | kjfhaskd
- test = 0
- -- | xzczn
- -- qwelkjqwelkqj
- test2 = 1
-
- -- | adlkjadajdldjad
- test3 = 2
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC023.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC023.hs
deleted file mode 100644
index 9e069c322c..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC023.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldCompile where
-
-test2 :: a -- ^ doc1
- -> b {-^ doc2 -} -> a -- ^ doc 3
-test2 x y = x
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC024.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC024.hs
deleted file mode 100644
index 9e069c322c..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC024.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldCompile where
-
-test2 :: a -- ^ doc1
- -> b {-^ doc2 -} -> a -- ^ doc 3
-test2 x y = x
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC025.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC025.hs
deleted file mode 100644
index c53ae7bb3e..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC025.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldCompile where
-
-test2 :: a -- ^ doc1
- -> a
-test2 x = x
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC026.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC026.hs
deleted file mode 100644
index cc2d8bfae5..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC026.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldCompile where
-
-test :: (Eq a) => [a] -- ^ doc1
- -> forall b . [b] {-^ doc2 -}
- -> [a] -- ^ doc3
-test xs ys = xs
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC027.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC027.hs
deleted file mode 100644
index c22be2fb87..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC027.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-module ShouldCompile where
-
--- I bet this test is a mistake! From the layout it
--- looks as if 'test' takes three args, the latter two
--- of higher rank. But the parens around these args are
--- missing, so it parses as
--- test :: [a]
--- -> forall a. Ord a
--- => [b]
--- -> forall c. Num c
--- => [c]
--- -> [a]
---
--- But maybe that what was intended; I'm not sure
--- Anyway it should typecheck!
-
-test :: [a] -- ^ doc1
- -> forall b. (Ord b) => [b] {-^ doc2 -}
- -> forall c. (Num c) => [c] -- ^ doc3
- -> [a]
-test xs ys zs = xs
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC028.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC028.hs
deleted file mode 100644
index 3f8abc19d3..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC028.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldCompile where
-
-test :: [a] -- ^ doc1
- -> a <--> b
- -> [a] -- ^ doc3
-test xs ys = xs
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC029.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC029.hs
deleted file mode 100644
index 2615e555f1..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC029.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldCompile where
-
-data A
- -- | A comment that documents the first constructor
- = A | B | C | D
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC030.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC030.hs
deleted file mode 100644
index 82c3799d1f..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC030.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module ShouldCompile where
-
-data A
- -- | A comment that documents the first constructor
- = A
- -- | comment for B
- | {-^ comment for A -} B
- -- | comment for C
- | C
- | D
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC031.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC031.hs
deleted file mode 100644
index 2d4b55f659..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC031.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldCompile where
-
-data A
- = A
- | {-| comment for B -} forall a. B a a
- | forall a. Num a => C a {-^ comment for C -}
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC032.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC032.hs
deleted file mode 100644
index b772ec1de3..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockC032.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module ShouldCompile where
-
-data R a = R {
- field1 :: a -- | comment for field2
- , field2 :: a
- , field3 :: a -- ^ comment for field3
- , {-| comment for field4 -} field4 :: a
-}
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockSimplUtilsBug.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockSimplUtilsBug.hs
deleted file mode 100644
index a62020f508..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockSimplUtilsBug.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-module ShouldCompile where
-
-postInlineUnconditionally
- = case Just "Hey" of
- -- The point of examining occ_info here is that for *non-values*
- -- that occur outside a lambda, the call-site inliner won't have
- -- a chance (becuase it doesn't know that the thing
- -- only occurs once). The pre-inliner won't have gotten
- -- it either, if the thing occurs in more than one branch
- -- So the main target is things like
- -- let x = f y in
- -- case v of
- -- True -> case x of ...
- -- False -> case x of ...
- -- I'm not sure how important this is in practice
- Just a -- OneOcc => no work-duplication issue
- -> True -- Small enough to dup
- -- ToDo: consider discount on smallEnoughToInline if int_cxt is true
- --
- -- NB: Do NOT inline arbitrarily big things, even if one_br is True
- -- Reason: doing so risks exponential behaviour. We simplify a big
- -- expression, inline it, and simplify it again. But if the
- -- very same thing happens in the big expression, we get
- -- exponential cost!
- -- PRINCIPLE: when we've already simplified an expression once,
- -- make sure that we only inline it if it's reasonably small.
-
- _ -> False
-
--- Here's an example that we don't handle well:
--- let f = if b then Left (\x.BIG) else Right (\y.BIG)
--- in \y. ....case f of {...} ....
--- Here f is used just once, and duplicating the case work is fine (exprIsCheap).
--- But
--- * We can't preInlineUnconditionally because that woud invalidate
--- the occ info for b.
--- * We can't postInlineUnconditionally because the RHS is big, and
--- that risks exponential behaviour
--- * We can't call-site inline, because the rhs is big
--- Alas!
-
- where
- x = id
-
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockSimplUtilsBug.stderr b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockSimplUtilsBug.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_haddock/haddockSimplUtilsBug.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/Makefile b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/all.T b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/all.T
deleted file mode 100644
index 89c205b3ce..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/all.T
+++ /dev/null
@@ -1,4 +0,0 @@
-test('haddockD001', normal, compile, [''])
-test('haddockD002', normal, compile, [''])
-test('haddockD003', normal, compile, [''])
-test('haddockD004', normal, compile, [''])
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD001.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD001.hs
deleted file mode 100644
index 10998fdb1d..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD001.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-
-{- xc,zxcz -}
-main = putStrLn "hej"
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD002.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD002.hs
deleted file mode 100644
index f698fa0520..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD002.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-{-{--}-}
-
-main=return()
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD003.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD003.hs
deleted file mode 100644
index 7c3f733483..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD003.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-----------------------------------------------------------
-main = undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD004.hs b/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD004.hs
deleted file mode 100644
index cc9e07e6b2..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_compile_noflag_nohaddock/haddockD004.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# OPTIONS_GHC -XNoImplicitPrelude #-}
------------------------------------------------------------------------------
---
--- Module : Foreign
--- Copyright : (c) The FFI task force 2001
--- License : BSD-style (see the file libraries/base/LICENSE)
---
--- Maintainer : ffi@haskell.org
--- Stability : provisional
--- Portability : portable
---
--- A collection of data types, classes, and functions for interfacing
--- with another programming language.
---
------------------------------------------------------------------------------
-
-module Hej where
diff --git a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/Makefile b/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/all.T b/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/all.T
deleted file mode 100644
index bbe4c6edf2..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/all.T
+++ /dev/null
@@ -1,4 +0,0 @@
-#test('haddockE001', normal, compile_fail, ['-haddock'])
-#test('haddockE002', normal, compile_fail, ['-haddock'])
-#test('haddockE003', normal, compile_fail, ['-haddock'])
-test('haddockE004', normal, compile_fail, ['-haddock'])
diff --git a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE001.comp.stderr b/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE001.comp.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE001.comp.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE001.hs b/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE001.hs
deleted file mode 100644
index b8d900190a..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE001.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-main=undefined
--- | aksdjhaskdjhasdsakjhdajksda
diff --git a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE001.stderr b/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE001.stderr
deleted file mode 100644
index f1332ea124..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE001.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-haddockE001.hs:3:0: parse error (possibly incorrect indentation)
diff --git a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE002.hs b/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE002.hs
deleted file mode 100644
index 7c49f02e5a..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE002.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module ShouldFail where
-
--- | aksdjhaskdjhasdsakjhdajksd
-
-main=undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE002.stderr b/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE002.stderr
deleted file mode 100644
index cb1e257b3d..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE002.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-haddockE002.hs:6:0: parse error (possibly incorrect indentation)
diff --git a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE003.hs b/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE003.hs
deleted file mode 100644
index ee6aef2bf8..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE003.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-module ShouldFail where
-
--- aslkdjasldkjasldkaj
--- | awlkdajsads
--- asdasödlklas
----qww
------------------
-main=undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE003.stderr b/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE003.stderr
deleted file mode 100644
index 6965356fad..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE003.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-haddockE003.hs:9:0: parse error (possibly incorrect indentation)
diff --git a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE004.hs b/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE004.hs
deleted file mode 100644
index d73fe8f796..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE004.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-
--- | awlkdajsads
-main=undefined
diff --git a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE004.stderr b/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE004.stderr
deleted file mode 100644
index 3462c61a8c..0000000000
--- a/testsuite/tests/ghc-regress/haddock/should_fail_flag_haddock/haddockE004.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-haddockE004.hs:3:1: parse error on input `main'
diff --git a/testsuite/tests/ghc-regress/hsc2hs/3837.hsc b/testsuite/tests/ghc-regress/hsc2hs/3837.hsc
deleted file mode 100644
index 7f8ee255af..0000000000
--- a/testsuite/tests/ghc-regress/hsc2hs/3837.hsc
+++ /dev/null
@@ -1,7 +0,0 @@
--- Test that UTF-8 is passed through correctly by hsc2hs
-
-#define uni á‚ 
-
-#let name = "αβγ"
-
-main = let (#name) = 3 in print (#name)
diff --git a/testsuite/tests/ghc-regress/hsc2hs/Makefile b/testsuite/tests/ghc-regress/hsc2hs/Makefile
deleted file mode 100644
index 7b2dcdef12..0000000000
--- a/testsuite/tests/ghc-regress/hsc2hs/Makefile
+++ /dev/null
@@ -1,16 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-ALL_TESTS = hsc2hs001 hsc2hs002
-
-.PHONY: $(TESTS)
-
-$(ALL_TESTS):
- '$(HSC2HS)' $@.hsc
- '$(TEST_HC)' $(TEST_HC_OPTS) -c $@.hs
-
-.PHONY: 3837
-3837:
- LANG=C '$(HSC2HS)' $@.hsc
- '$(TEST_HC)' $(TEST_HC_OPTS) -c $@.hs
diff --git a/testsuite/tests/ghc-regress/hsc2hs/all.T b/testsuite/tests/ghc-regress/hsc2hs/all.T
deleted file mode 100644
index 32900434d2..0000000000
--- a/testsuite/tests/ghc-regress/hsc2hs/all.T
+++ /dev/null
@@ -1,20 +0,0 @@
-
-test('hsc2hs001',
- [extra_clean(['hsc2hs001.hs', 'hsc2hs001_hsc_make.c']),
- if_platform('i386-unknown-mingw32', expect_broken(3929))],
- run_command,
- ['$MAKE -s --no-print-directory hsc2hs001'])
-
-test('hsc2hs002',
- [extra_clean(['hsc2hs002.hs', 'hsc2hs002_hsc_make.c']),
- if_platform('i386-unknown-mingw32', expect_broken(3929))],
- run_command,
- ['$MAKE -s --no-print-directory hsc2hs002'])
-
-
-test('3837',
- [extra_clean(['3837.hs', '3837_hsc_make.c']),
- if_platform('i386-unknown-mingw32', expect_broken(3929))],
- run_command,
- ['$MAKE -s --no-print-directory 3837'])
-
diff --git a/testsuite/tests/ghc-regress/hsc2hs/hsc2hs001.hsc b/testsuite/tests/ghc-regress/hsc2hs/hsc2hs001.hsc
deleted file mode 100644
index 4a47501859..0000000000
--- a/testsuite/tests/ghc-regress/hsc2hs/hsc2hs001.hsc
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module Main (main) where
-
-main :: IO ()
-main = print #size int
-
diff --git a/testsuite/tests/ghc-regress/hsc2hs/hsc2hs002.hsc b/testsuite/tests/ghc-regress/hsc2hs/hsc2hs002.hsc
deleted file mode 100644
index 14cee92358..0000000000
--- a/testsuite/tests/ghc-regress/hsc2hs/hsc2hs002.hsc
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module Main (main) where
-
-main :: IO ()
-main = print #size struct {int ab,cd;}
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/Makefile b/testsuite/tests/ghc-regress/indexed-types/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ATLoop.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ATLoop.hs
deleted file mode 100644
index 19f9e5b8a2..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ATLoop.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# OPTIONS_GHC -O2 #-}
-
--- Reading the interface file caused a black hole
--- in earlier versions of GHC
-
--- Also, foo should compile to very tight code with -O2
--- (The O2 was nothing to do with the black hole though.)
-
-module ShouldCompile where
-
-import ATLoop_help
-
-foo :: FooT Int -> Int -> Int
-foo t n = t `seq` bar n
- where
- bar 0 = 0
- bar n | even n = bar (n `div` 2)
- bar n = bar (n - int t)
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ATLoop_help.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ATLoop_help.hs
deleted file mode 100644
index 8814f480eb..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ATLoop_help.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-module ATLoop_help where
-
-class Foo a where
- data FooT a :: *
- int :: FooT a -> Int
-
-instance Foo Int where
- data FooT Int = FooInt !Int
- int (FooInt n) = n
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Class1.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Class1.hs
deleted file mode 100644
index 4e58e13d58..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Class1.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE TypeFamilies, FlexibleContexts #-}
-
--- Results in context reduction stack overflow
-
-module Class1 where
-
-class C a where
- foo :: a x -> a y
-
-class C (T a) => D a where
- type T a :: * -> *
-
- bar :: a -> T a x -> T a y
-
-instance C Maybe where
- foo Nothing = Nothing
-
-instance D () where
- type T () = Maybe
-
- bar x t = foo t
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Class2.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Class2.hs
deleted file mode 100644
index f0d90f35f5..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Class2.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Class2 where
-
-data family T a
-data instance T Int = TInt Int
-
-data U = U (T Int)
-
-instance Show a => Show (T a) where
- showsPrec k t = showString "T"
-
-instance Show U where
- showsPrec k (U x) = showsPrec k x
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Class3.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Class3.hs
deleted file mode 100644
index 6bea22e1a4..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Class3.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Class3 where
-
-class C a where
- foo :: a -> a
-instance C ()
-
-bar :: (a ~ ()) => a -> a
-bar = foo
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Class3.stderr b/testsuite/tests/ghc-regress/indexed-types/should_compile/Class3.stderr
deleted file mode 100644
index 58367939d0..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Class3.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-Class3.hs:7:10:
- Warning: No explicit method nor default method for `foo'
- In the instance declaration for `C ()'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ClassEqContext.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ClassEqContext.hs
deleted file mode 100644
index 7de87362b4..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ClassEqContext.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE TypeFamilies, MultiParamTypeClasses #-}
-
-module ClassEqContext where
-
-class a ~ b => C a b
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ClassEqContext2.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ClassEqContext2.hs
deleted file mode 100644
index a491577723..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ClassEqContext2.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-
-module ClassEqContext where
-
-class (Show a,a ~ b) => C a b
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ClassEqContext3.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ClassEqContext3.hs
deleted file mode 100644
index e2fd14515f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ClassEqContext3.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-
-module ClassEqContext where
-
-class a ~ b => C a b
-
-instance C Char Char
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/CoTest3.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/CoTest3.hs
deleted file mode 100644
index 971a464a89..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/CoTest3.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-{-# LANGUAGE RankNTypes #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE GADTs #-}
-
--- This test uses the PushC rule of the System FC operational semantics
--- Writen by Tom Schrijvers
-
-module CoTest3 where
-
-data T a = K (a ~ Int => a -> Int)
-
-
-{-# INLINE[2] f #-}
-f :: T s1 ~ T s2 => T s1 -> T s2
-f x = x
-
-{-# INLINE[3] test #-}
-test :: T s1 ~ T s2 => (s1 ~ Int => s1 -> Int) -> (s2 ~ Int => s2 -> Int)
-test g = case f (K g) of
- K r -> r
-e :: s ~ Int => s -> s -> Int
-e _ s = s
-
-final :: s1 ~ s2 => s1 -> (s2 ~ Int => s2 -> Int)
-final x = test (e x)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Col.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Col.hs
deleted file mode 100644
index 62c309bd91..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Col.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Col where
-
-type family Elem c
-
-type instance Elem [e] = e
-
-class Col c where
- singleton :: Elem c -> c
- add :: c -> Elem c -> c
-
-instance Col [e] where
- singleton = \x -> [x]
- add = flip (:)
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Col2.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Col2.hs
deleted file mode 100644
index 97a10aef84..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Col2.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-{-# LANGUAGE FlexibleContexts #-}
-
-module Col where
-
-type family Elem c
-
-type instance Elem [e] = e
-
-class (Eq (Elem c)) => Col c where
- count :: Elem c -> c -> Int
-
-instance Eq e => Col [e] where
- count x = length . filter (==x)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColGivenCheck.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ColGivenCheck.hs
deleted file mode 100644
index 288c6e0608..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColGivenCheck.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ColInference where
-
-type family Elem c
-
-type instance Elem [e] = e
-
-class Col c where
- isEmpty :: c -> Bool
- add :: c -> Elem c -> c
- headTail :: c -> (Elem c,c)
-
-addAll :: (Col c1, Col c2, Elem c1 ~ Elem c2) => c1 -> c2 -> c2
-addAll c1 c2
- | isEmpty c1
- = c2
- | otherwise
- = let (x,c1') = headTail c1
- in addAll c1' (add c2 x)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColGivenCheck2.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ColGivenCheck2.hs
deleted file mode 100644
index 2da7cb4117..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColGivenCheck2.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ColInference where
-
-type family Elem c
-
-type instance Elem [e] = e
-
-class Col c where
- isEmpty :: c -> Bool
- add :: c -> Elem c -> c
- headTail :: c -> (Elem c,c)
-
--- addAll :: (Col c1, Col c2, Elem c1 ~ Elem c2) => c1 -> c2 -> c2
--- addAll c1 c2
--- | isEmpty c1
--- = c2
--- | otherwise
--- = let (x,c1') = headTail c1
--- in addAll c1' (add c2 x)
-
-sumCol :: (Col c, Elem c ~ Int) => c -> Int
-sumCol c | isEmpty c
- = 0
- | otherwise
- = let (x,xs) = headTail c
- in x + (sumCol xs)
-
--- data CP :: * -> * where
--- CP :: (Col c1, Col c2, Elem c1 ~ Elem c2, Elem c2 ~ Int) => (c1,c2) -> CP Char
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference.hs
deleted file mode 100644
index a70b7dd444..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ColInference where
-
-type family Elem c
-
-type instance Elem [e] = e
-
-class Col c where
- isEmpty :: c -> Bool
- add :: c -> Elem c -> c
- headTail :: c -> (Elem c,c)
-
-addAll c1 c2
- | isEmpty c1
- = c2
- | otherwise
- = let (x,c1') = headTail c1
- in addAll c1' (add c2 x)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference2.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference2.hs
deleted file mode 100644
index 9785d717a7..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference2.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ColInference where
-
-type family Elem c
-
-type instance Elem [e] = e
-
-class Col c where
- isEmpty :: c -> Bool
- add :: c -> Elem c -> c
- headTail :: c -> (Elem c,c)
-
-sawpOne c1 c2
- = let (x,c1') = headTail c1
- (y,c2') = headTail c2
- in (add c1' y,add c2' x)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference3.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference3.hs
deleted file mode 100644
index f946e89120..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference3.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Main where
-
-type family Elem c
-
-class Col c where
- isEmpty :: c -> Bool
- add :: c -> Elem c -> c
- headTail :: c -> (Elem c,c)
-
--- LIST
-instance Col [a] where
- isEmpty = null
- add = flip (:)
- headTail (x:xs) = (x,xs)
-
-type instance Elem [a] = a
-
--- SEQUENCE
-data Sequence a = Nil | Snoc (Sequence a) a deriving Show
-
-instance Col (Sequence a) where
- isEmpty Nil = True
- isEmpty _ = False
-
- add s x = Snoc s x
-
- headTail (Snoc s x) = (x,s)
-
-type instance Elem (Sequence a) = a
-
---
-addAll c1 c2
- | isEmpty c1
- = c2
- | otherwise
- = let (x,c1') = headTail c1
- in addAll c1' (add c2 x)
-
---
-main = print $ addAll c1 c2
- where c1 = ['a','b','c']
- c2 = (Snoc (Snoc (Snoc Nil 'd') 'e') 'f')
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference4.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference4.hs
deleted file mode 100644
index 27675b1051..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference4.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ColInference where
-
-type family Elem c
-
-type instance Elem [e] = e
-
-class Col c where
- isEmpty :: c -> Bool
- add :: c -> Elem c -> c
- headTail :: c -> (Elem c,c)
-
-sawpOne c1 c2
- = let (x,c1') = headTail c1
- (y,c2') = headTail c2
- in (add c1' y,add c1' x)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference5.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference5.hs
deleted file mode 100644
index b65a90092e..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference5.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ColInference where
-
-type family Elem c
-
-type instance Elem [e] = e
-
-class Col c where
- isEmpty :: c -> Bool
- add :: c -> Elem c -> c
- headTail :: c -> (Elem c,c)
-
-sawpOne c1 c2
- = let (x,c1') = headTail c1
- (y,c2') = headTail c2
- in (add c1' y,add c1' y)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference6.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference6.hs
deleted file mode 100644
index 9273632e2b..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ColInference6.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ColInference6 where
-
-type family Elem c
-
-type instance Elem [e] = e
-
-class Col c where
- toList :: c -> [Elem c]
-
-
-sumCol c = sum . toList $ c
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/DataFamDeriv.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/DataFamDeriv.hs
deleted file mode 100644
index 3800b51a3f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/DataFamDeriv.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-module DataFamDeriv where
-
-data family Foo a
-data Bar = Bar
-data instance Foo Bar
- = Bar1 | Bar2 | Bar3 | Bar4 | Bar5 | Bar6 | Bar7 | Bar8 | Bar9
- deriving Eq
-
-
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Deriving.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Deriving.hs
deleted file mode 100644
index fd0eff2016..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Deriving.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE TypeFamilies, StandaloneDeriving, FlexibleInstances #-}
-
-module ShouldCompile where
-
-data family T a
-
-data instance T Int = A | B
- deriving Eq
-
-foo :: T Int -> Bool
-foo x = x == x
-
-data instance T Char = C
-
-instance Eq (T Char) where
- C == C = False
-
-data family R a
-data instance R [a] = R
-
-deriving instance Eq (R [a])
-
-class C a where
- data S a
-
-instance C Int where
- data S Int = SInt deriving Eq
-
-bar :: S Int -> Bool
-bar x = x == x
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/DerivingNewType.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/DerivingNewType.hs
deleted file mode 100644
index 65f3b8520d..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/DerivingNewType.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TypeFamilies, GeneralizedNewtypeDeriving #-}
-
-module ShouldCompile where
-
-data family S a
-
-newtype instance S Int = S Int
- deriving Eq
-
-data family S2 a b
-
-newtype instance S2 Int b = S2 (IO b)
- deriving Monad
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Exp.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Exp.hs
deleted file mode 100644
index 60cb12f098..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Exp.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Exp (C, C(type T), T, foo, S)
-where
-
-class C a where
- data T a :: *
- foo :: a -> a
-
-data family S a b :: *
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT1.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT1.hs
deleted file mode 100644
index 7761eafe97..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT1.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs, EmptyDataDecls #-}
-
--- This wrongly fails with
---
--- Can't construct the infinite type n = PLUS n ZERO
-
-module GADT1 where
-
-data ZERO
-data SUCC n
-
-data Nat n where
- Zero :: Nat ZERO
- Succ :: Nat n -> Nat (SUCC n)
-
-type family PLUS m n
-type instance PLUS ZERO n = n
-type instance PLUS (SUCC m) n = SUCC (PLUS m n)
-
-data EQUIV x y where
- EQUIV :: EQUIV x x
-
-plus_zero :: Nat n -> EQUIV (PLUS n ZERO) n
-plus_zero Zero = EQUIV
-plus_zero (Succ n) = case plus_zero n of
- EQUIV -> EQUIV
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT10.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT10.hs
deleted file mode 100644
index 76efaf1fcc..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT10.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs, RankNTypes #-}
-
-module GADT10 where
-
--- [Sept 2010] Now works in GHC 7.0!
-
--- This fails with
---
--- GADT10.hs:37:0:
--- All of the type variables in the constraint `x ~
--- y' are already in scope
--- (at least one must be universally quantified here)
--- In the type signature for `foo':
--- foo :: EQUAL x y -> ((x ~ y) => t) -> t
---
--- GADT10.hs:38:4:
--- Couldn't match expected type `y' against inferred type `x'
--- `y' is a rigid type variable bound by
--- the type signature for `foo' at GADT10.hs:8:15
--- `x' is a rigid type variable bound by
--- the type signature for `foo' at GADT10.hs:8:13
--- In the pattern: EQUAL
--- In the definition of `foo': foo EQUAL t = t
---
--- The first error can be fixed by using FlexibleContexts but I don't think that
--- should be required here. In fact, if we remove RankNTypes, we get
---
--- Illegal polymorphic or qualified type: forall (co_wild_B1 :: x ~
--- y).
--- t
--- In the type signature for `foo':
--- foo :: EQUAL x y -> ((x ~ y) => t) -> t
---
--- which seems to contradict (at least sort of) the first error message.
-
-data EQUAL x y where
- EQUAL :: EQUAL x x
-
-foo :: EQUAL x y -> (x~y => t) -> t
-foo EQUAL t = t
-
-bar :: EQUAL x y -> x -> y
-bar equ x = foo equ x
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT11.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT11.hs
deleted file mode 100644
index 70c5d75d84..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT11.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs, RankNTypes, EmptyDataDecls #-}
-
-module ShouldCompile where
-
-data Z
-data S a
-
-type family Sum n m
-type instance Sum n Z = n
-type instance Sum n (S m) = S (Sum n m)
-
-data Nat n where
- NZ :: Nat Z
- NS :: (S n ~ sn) => Nat n -> Nat sn
-
-data EQ a b = forall q . (a ~ b) => Refl
-
-zerol :: Nat n -> EQ n (Sum Z n)
-zerol NZ = Refl
--- zerol (NS n) = case zerol n of Refl -> Refl
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT12.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT12.hs
deleted file mode 100644
index 4eb5124c1d..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT12.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs, ScopedTypeVariables, KindSignatures #-}
-{-# LANGUAGE EmptyDataDecls #-}
-
--- Tests whether a type signature can refine a type
--- See the definition of bug2a
-
-module ShouldCompile where
-
-data Typed
-data Untyped
-
-type family TU a b :: *
-type instance TU Typed b = b
-type instance TU Untyped b = ()
-
--- A type witness type, use eg. for pattern-matching on types
-data Type a where
- TypeInt :: Type Int
- TypeBool :: Type Bool
- TypeString :: Type String
- TypeList :: Type t -> Type [t]
-
-data Expr :: * -> * -> * {- tu a -} where
- Const :: Type a -> a -> Expr tu (TU tu a)
- Var2 :: String -> TU tu (Type a) -> Expr tu (TU tu a)
-
-bug1 :: Expr Typed Bool -> ()
-bug1 (Const TypeBool False) = ()
-
-bug2a :: Expr Typed Bool -> ()
-bug2a (Var2 "x" (TypeBool :: Type Bool)) = ()
-
-bug2c :: Expr Typed Bool -> ()
-bug2c (Var2 "x" TypeBool) = ()
-
-bug2b :: Expr Typed (TU Typed Bool) -> ()
-bug2b (Var2 "x" TypeBool) = ()
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT12.stderr b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT12.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT12.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT13.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT13.hs
deleted file mode 100644
index b5724b2500..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT13.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs #-}
-
-module GADT13 where
-
-data family HiThere a :: *
-
-data instance HiThere () where
- HiThere :: HiThere ()
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT14.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT14.hs
deleted file mode 100644
index ace1de45da..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT14.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TypeFamilies, TypeOperators, GADTs, RankNTypes, FlexibleContexts #-}
-module Equality( (:=:), eq_elim, eq_refl ) where
-
-data a:=: b where
- EQUAL :: a :=: a
-
-eq_refl :: a :=: a
-eq_refl = EQUAL
-
-eq_elim :: (a~b) => a :=: b -> (a~b => p) -> p
-eq_elim EQUAL p = p
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT2.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT2.hs
deleted file mode 100644
index eb8354ba28..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT2.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs #-}
-
--- Fails with
---
--- Couldn't match expected type `y' against inferred type `x'
-
-module GADT2 where
-
-data EQUAL x y where
- EQUAL :: x~y => EQUAL x y
-
-foo :: EQUAL x y -> x -> y
-foo EQUAL x = x
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT3.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT3.hs
deleted file mode 100644
index f630ad5d22..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT3.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs, EmptyDataDecls #-}
-
--- Panics in bind_args
-
-module GADT3 where
-
-data EQUAL x y where
- EQUAL :: x~y => EQUAL x y
-
-data ZERO
-data SUCC n
-
-data Nat n where
- Zero :: Nat ZERO
- Succ :: Nat n -> Nat (SUCC n)
-
-type family PLUS m n
-type instance PLUS ZERO n = n
-
-plus_zero :: Nat n -> EQUAL (PLUS ZERO n) n
-plus_zero Zero = EQUAL
-plus_zero (Succ n) = EQUAL
-
-data FOO n where
- FOO_Zero :: FOO ZERO
-
-foo :: Nat m -> Nat n -> FOO n -> FOO (PLUS m n)
-foo Zero n s = case plus_zero n of EQUAL -> s
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT4.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT4.hs
deleted file mode 100644
index 07cf492843..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT4.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs #-}
-
-module GADT4 where
-
-type family F a
-type instance F () = ()
-
-data T a where
- T :: T ()
-
-foo :: T () -> T (F ()) -> ()
-foo T T = ()
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT5.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT5.hs
deleted file mode 100644
index 69a6481fd0..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT5.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs #-}
-
-module GADT5 where
-
-data T a where
- T :: T (a,b)
- -- this works:
- -- T :: p ~ (a,b) => T p
-
-type family F a
-
-bar :: T (F a) -> ()
-bar T = ()
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT6.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT6.hs
deleted file mode 100644
index 0e976b441e..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT6.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs #-}
-
-module GADT6 where
-
-data Pair p where
- Pair :: p~(a,b) => a -> b -> Pair p
- -- this works:
- -- Pair :: a -> b -> Pair (a,b)
-
-foo :: Pair ((), ()) -> a
-foo (Pair () ()) = undefined
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT7.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT7.hs
deleted file mode 100644
index 00912605b4..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT7.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs #-}
-
-module GADT7 where
-
-data Pair p where
- Pair :: p~(a,b) => a -> b -> Pair p
- -- this works:
--- Pair :: a -> b -> Pair (a,b)
-
-foo :: a
-foo = case Pair () () of
- -- this works:
--- case Pair () () :: Pair ((), ()) of
- Pair x y -> undefined
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT8.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT8.hs
deleted file mode 100644
index 6d9381296e..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT8.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs #-}
-
-module GADT8 where
-
-data Pair p where
- Pair :: p~(a,b) => a -> b -> Pair p
- -- this works:
- -- Pair :: a -> b -> Pair (a,b)
-
-foo :: Pair ((), ()) -> Pair ((), ())
-foo (Pair x y) = Pair x y
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT9.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT9.hs
deleted file mode 100644
index 7ced0f76d1..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GADT9.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs #-}
-
--- Fails with
---
--- Couldn't match expected type `z' against inferred type `y'
---
--- See also GADT2
-
-module GADT2 where
-
-data EQUAL x y where
- EQUAL :: x~y => EQUAL x y
-
-foo :: EQUAL x y -> EQUAL y z -> x -> z
-foo EQUAL EQUAL x = x
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Gentle.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Gentle.hs
deleted file mode 100644
index a32ac798a0..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Gentle.hs
+++ /dev/null
@@ -1,50 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances,
- OverlappingInstances, UndecidableInstances #-}
-
--- Rather exotic example posted to Haskell mailing list 17 Oct 07
--- It concerns context reduction and functional dependencies
-
-module FooModule where
-
-class Concrete a b | a -> b where
- bar :: a -> String
-
-instance (Show a) => Concrete a b where
- bar = error "urk"
-
-wib :: Concrete a b => a -> String
-wib x = bar x
-
--- Uncommenting this solves the problem:
--- instance Concrete Bool Bool
-
-{- This is a nice example of the trickiness of functional dependencies.
-Here's what is happening.
-
-Consider type inference for 'wib'. GHC 6.6 figures out that the call
-of 'bar' gives rise to the constraint (Concrete p q), where x has type
-'p'. Ah, but x must have type 'a', so the constraint is (Concrete a
-q).
-
-Now GHC tries to satisfy (Concrete a q) from (Concrete a b). If it
-applied improvement right away it'd succeed, but sadly it first looks
-at instances declarations. Success: we can get (Concrete a q) from
-(Show a). So it uses the instance decl and now we can't get (Show a)
-from (Concrete a b).
-
-
-OK, found that in GHC 6.6, adding
- instance Concrete Bool Bool
-fixed the problem. That's weird isn't it? The reason is this. When GHC looks
-at the instance decls, it now sees *two* instance decls matching
-(Concrete a q), and so it declines for now to use either of them
-(since it's not clear which would be the right one). Once it has
-finished with instance decls it tries improvement. And, yes, it now
-sees that q=b, so all is well.
-
-You might say that GHC should use improvement more vigorously, and
-perhaps you'd be right. And indeed the upcoming GHC 6.8 does exactly
-that.
--}
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Gentle.stderr b/testsuite/tests/ghc-regress/indexed-types/should_compile/Gentle.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Gentle.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheck.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheck.hs
deleted file mode 100644
index 20320ae1c9..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheck.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module GivenCheck where
-
-type family S x
-
-f :: a -> S a
-f = undefined
-
-g :: S a ~ Char => a -> Char
-g y | False = f y
- | otherwise = 'a'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheckDecomp.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheckDecomp.hs
deleted file mode 100644
index 3d2492770d..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheckDecomp.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module GivenCheckDecomp where
-
-type family S x
-
-f :: a -> S a
-f = undefined
-
-g :: [S a] ~ [Char] => a -> Char
-g y | 'a' == 'b' = f y
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheckSwap.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheckSwap.hs
deleted file mode 100644
index 8d053f312a..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheckSwap.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module GivenCheckSwapMain where
-
-type family S x
-
-f :: a -> S a
-f = undefined
-
-g :: Char ~ S a => a -> Char
-g y | False = f y
- | otherwise = 'a'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheckTop.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheckTop.hs
deleted file mode 100644
index bc81d1acc7..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/GivenCheckTop.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module GivenCheckTop where
-
-type family S x
-
-type instance S [e] = e
-
-f :: a -> S a
-f = undefined
-
-g :: S [a] ~ Char => a -> Char
-g y = y
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/HO.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/HO.hs
deleted file mode 100644
index 40d597a76f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/HO.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE TypeFamilies, TypeOperators, RankNTypes #-}
-
-module HO where
-
-import Data.IORef
-
-type family SMRef (m::(* -> *)) :: * -> *
-type family SMMonad (r::(* -> *)) :: * -> *
-
-type instance SMRef IO = IORef
-type instance SMMonad IORef = IO
-
-
-class SMMonad (SMRef m) ~ m => SM m where
- new :: forall a. a -> m (SMRef m a)
- read :: forall a. (SMRef m a) -> m a
- write :: forall a. (SMRef m a) -> a -> m ()
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Imp.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Imp.hs
deleted file mode 100644
index 6ae1812083..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Imp.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Imp
-where
-
-import Exp (C, T, S)
-
-instance C Int where
- data T Int = TInt
-
-data instance S Int Bool = SIntBool
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Ind2_help.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Ind2_help.hs
deleted file mode 100644
index b088302fec..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Ind2_help.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Ind2_help where
-
-class C a where
- data T a :: *
- unT :: T a -> a
- mkT :: a -> T a
-
-instance (C a, C b) => C (a,b) where
- data T (a,b) = TProd (T a) (T b)
- unT (TProd x y) = (unT x, unT y)
- mkT (x,y) = TProd (mkT x) (mkT y)
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/IndTypesPerf.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/IndTypesPerf.hs
deleted file mode 100644
index 4edcd03988..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/IndTypesPerf.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
--- This used lots of memory, and took a long time to compile, with GHC 6.12:
--- http://www.haskell.org/pipermail/glasgow-haskell-users/2010-May/018835.html
-
-module IndTypesPerf where
-
-import IndTypesPerfMerge
-
-data Rec1 = Rec1 !Int
-
-mkRec1 v = mk $ merge v () where mk (Tagged i :* ()) = Rec1 i
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/IndTypesPerfMerge.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/IndTypesPerfMerge.hs
deleted file mode 100644
index 18ed35bdc1..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/IndTypesPerfMerge.hs
+++ /dev/null
@@ -1,120 +0,0 @@
-{-# LANGUAGE EmptyDataDecls, TypeFamilies, UndecidableInstances,
- ScopedTypeVariables, OverlappingInstances, TypeOperators,
- FlexibleInstances, NoMonomorphismRestriction,
- MultiParamTypeClasses #-}
-module IndTypesPerfMerge where
-
-data a :* b = a :* b
-infixr 6 :*
-
-data TRUE
-data FALSE
-data Zero
-data Succ a
-
-type family Equals m n
-type instance Equals Zero Zero = TRUE
-type instance Equals (Succ a) Zero = FALSE
-type instance Equals Zero (Succ a) = FALSE
-type instance Equals (Succ a) (Succ b) = Equals a b
-
-type family LessThan m n
-type instance LessThan Zero Zero = FALSE
-type instance LessThan (Succ n) Zero = FALSE
-type instance LessThan Zero (Succ n) = TRUE
-type instance LessThan (Succ m) (Succ n) = LessThan m n
-
-newtype Tagged n a = Tagged a deriving (Show,Eq)
-
-type family Cond p a b
-
-type instance Cond TRUE a b = a
-type instance Cond FALSE a b = b
-
-class Merger a where
- type Merged a
- type UnmergedLeft a
- type UnmergedRight a
- mkMerge :: a -> UnmergedLeft a -> UnmergedRight a -> Merged a
-
-class Mergeable a b where
- type MergerType a b
- merger :: a -> b -> MergerType a b
-
-merge x y = mkMerge (merger x y) x y
-
-data TakeRight a
-data TakeLeft a
-data DiscardRightHead a b c d
-data LeftHeadFirst a b c d
-data RightHeadFirst a b c d
-data EndMerge
-
-instance Mergeable () () where
- type MergerType () () = EndMerge
- merger = undefined
-
-instance Mergeable () (a :* b) where
- type MergerType () (a :* b) = TakeRight (a :* b)
- merger = undefined
-instance Mergeable (a :* b) () where
- type MergerType (a :* b) () = TakeLeft (a :* b)
- merger = undefined
-
-instance Mergeable (Tagged m a :* t1) (Tagged n b :* t2) where
- type MergerType (Tagged m a :* t1) (Tagged n b :* t2) =
- Cond (Equals m n) (DiscardRightHead (Tagged m a) t1 (Tagged n b) t2)
- (Cond (LessThan m n) (LeftHeadFirst (Tagged m a) t1 (Tagged n b) t2)
- (RightHeadFirst (Tagged m a ) t1 (Tagged n b) t2))
- merger = undefined
-
-instance Merger EndMerge where
- type Merged EndMerge = ()
- type UnmergedLeft EndMerge = ()
- type UnmergedRight EndMerge = ()
- mkMerge _ () () = ()
-
-instance Merger (TakeRight a) where
- type Merged (TakeRight a) = a
- type UnmergedLeft (TakeRight a) = ()
- type UnmergedRight (TakeRight a) = a
- mkMerge _ () a = a
-
-instance Merger (TakeLeft a) where
- type Merged (TakeLeft a) = a
- type UnmergedLeft (TakeLeft a) = a
- type UnmergedRight (TakeLeft a) = ()
- mkMerge _ a () = a
-
-instance
- (Mergeable t1 t2,
- Merger (MergerType t1 t2),
- t1 ~ UnmergedLeft (MergerType t1 t2),
- t2 ~ UnmergedRight (MergerType t1 t2)) =>
- Merger (DiscardRightHead h1 t1 h2 t2) where
- type Merged (DiscardRightHead h1 t1 h2 t2) = h1 :* Merged (MergerType t1 t2)
- type UnmergedLeft (DiscardRightHead h1 t1 h2 t2) = h1 :* t1
- type UnmergedRight (DiscardRightHead h1 t1 h2 t2) = h2 :* t2
- mkMerge _ (h1 :* t1) (h2 :* t2) = h1 :* mkMerge (merger t1 t2) t1 t2
-
-instance
- (Mergeable t1 (h2 :* t2),
- Merger (MergerType t1 (h2 :* t2)),
- t1 ~ UnmergedLeft (MergerType t1 (h2 :* t2)),
- (h2 :* t2) ~ UnmergedRight (MergerType t1 (h2 :* t2))) =>
- Merger (LeftHeadFirst h1 t1 h2 t2) where
- type Merged (LeftHeadFirst h1 t1 h2 t2) = h1 :* Merged (MergerType t1 (h2 :* t2))
- type UnmergedLeft (LeftHeadFirst h1 t1 h2 t2) = h1 :* t1
- type UnmergedRight (LeftHeadFirst h1 t1 h2 t2) = h2 :* t2
- mkMerge _ (h1 :* t1) (h2 :* t2) = h1 :* mkMerge (merger t1 (h2 :* t2)) t1 (h2 :* t2)
-
-instance
- (Mergeable (h1 :* t1) t2,
- Merger (MergerType (h1 :* t1) t2),
- (h1 :* t1) ~ UnmergedLeft (MergerType (h1 :* t1) t2),
- t2 ~ UnmergedRight (MergerType (h1 :* t1) t2)) =>
- Merger (RightHeadFirst h1 t1 h2 t2) where
- type Merged (RightHeadFirst h1 t1 h2 t2) = h2 :* Merged (MergerType (h1 :* t1) t2)
- type UnmergedLeft (RightHeadFirst h1 t1 h2 t2) = h1 :* t1
- type UnmergedRight (RightHeadFirst h1 t1 h2 t2) = h2 :* t2
- mkMerge _ (h1 :* t1) (h2 :* t2) = h2 :* mkMerge (merger (h1 :* t1) t2) (h1 :* t1) t2 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Infix.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Infix.hs
deleted file mode 100644
index dee389331b..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Infix.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TypeFamilies, TypeOperators #-}
-
--- Test infix type constructors in type families
-
-module Infix where
-
-type family x :+: y
-type instance Int :+: Int = Int
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/InstContextNorm.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/InstContextNorm.hs
deleted file mode 100644
index 329756aa9c..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/InstContextNorm.hs
+++ /dev/null
@@ -1,36 +0,0 @@
-{-# LANGUAGE TypeFamilies, FlexibleContexts #-}
-{-# LANGUAGE EmptyDataDecls, FlexibleInstances #-}
-
-module InstContextNorm
-where
-
-data EX _x _y (p :: * -> *)
-data ANY
-
-class Base p
-
-class Base (Def p) => Prop p where
- type Def p
-
-instance Base ()
-instance Prop () where
- type Def () = ()
-
-instance (Base (Def (p ANY))) => Base (EX _x _y p)
-instance (Prop (p ANY)) => Prop (EX _x _y p) where
- type Def (EX _x _y p) = EX _x _y p
-
-
-data FOO x
-
-instance Prop (FOO x) where
- type Def (FOO x) = ()
-
-data BAR
-
-instance Prop BAR where
- type Def BAR = EX () () FOO
-
- -- Needs Base (Def BAR)
- -- And (Def Bar = Ex () () FOO)
- -- so we need Base (Def (Foo ANY)) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/InstEqContext.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/InstEqContext.hs
deleted file mode 100644
index e178e110a5..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/InstEqContext.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module InstEqContext where
-
-
-{- encoding of
- - class C a | -> a
- -}
-class a ~ Int => C a
-
-instance C Int
-
-unC :: (C a) => a -> Int
-unC i = undefined
-
-test :: Int
-test = unC undefined
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/InstEqContext2.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/InstEqContext2.hs
deleted file mode 100644
index c5d017a644..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/InstEqContext2.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TypeFamilies, EmptyDataDecls #-}
-
-module InstEqContext2 where
-
-data E v a = E a
-data RValue
-
-instance (Eq a, v ~ RValue) => Eq (E v a) where
- E x == E y = x == y
-
-a :: E v Int
-a = undefined
-
-foo = a == a
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/InstEqContext3.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/InstEqContext3.hs
deleted file mode 100644
index 3f307f8941..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/InstEqContext3.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module InstEqContext where
-
-
-{- encoding of
- - class C a | -> a
- - with extra indirection
- -}
-class a ~ Int => D a
-instance D Int
-
-class D a => C a
-instance C Int
-
-unC :: (C a) => a -> Int
-unC i = undefined
-
-test :: Int
-test = unC undefined
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Kind.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Kind.hs
deleted file mode 100644
index 73c528df11..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Kind.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Kind where
-
-class C (a :: * -> *) where
- type T a
-
-foo :: a x -> T a
-foo = undefined
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Makefile b/testsuite/tests/ghc-regress/indexed-types/should_compile/Makefile
deleted file mode 100644
index b91348f154..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Makefile
+++ /dev/null
@@ -1,15 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-NewTyCo:
- $(RM) NewTyCo1.o NewTyCo1.hi NewTyCo2.o NewTyCo2.hi
- '$(TEST_HC)' $(TEST_HC_OPTS) -c NewTyCo1.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c NewTyCo2.hs
-
-.PHONY: IndTypesPerf
-IndTypesPerf:
- $(RM) IndTypesPerf.o IndTypesPerf.hi
- $(RM) IndTypesPerfMerge.o IndTypesPerfMerge.hi
- '$(TEST_HC)' $(TEST_HC_OPTS) -O -c IndTypesPerfMerge.hs +RTS -M20M
- '$(TEST_HC)' $(TEST_HC_OPTS) -O -c IndTypesPerf.hs +RTS -M20M
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/NewTyCo1.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/NewTyCo1.hs
deleted file mode 100644
index 9af6d9ee92..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/NewTyCo1.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module NewTyCo1 where
-
-data family T a
-newtype instance T Int = TInt Int
-
-foo :: T Int -> Int
-foo (TInt n) = n
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/NewTyCo2.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/NewTyCo2.hs
deleted file mode 100644
index 6ff2bc1ecd..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/NewTyCo2.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module NewTyCo2 where
-
-import NewTyCo1
-
-bar x = foo x + 1
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/NonLinearLHS.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/NonLinearLHS.hs
deleted file mode 100644
index dc0ae5392a..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/NonLinearLHS.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-{-# LANGUAGE TypeFamilies, EmptyDataDecls, FlexibleContexts #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE FlexibleInstances, OverlappingInstances, UndecidableInstances #-}
-
-module NonLinearLHS where
-
-type family E a b
-type instance E a a = [a]
-
-foo :: E [Int] (E Int Int) -> Int
-foo = sum . concat
-
-data family F a b
-data instance F a a = MkF [a]
-
-goo :: F Int Int -> F Bool Bool
-goo (MkF xs) = MkF $ map odd xs
-
-
--- HList-like type equality
-
-data True; data False;
-
-type family EqTy a b
-type instance EqTy a a = True
-
-class EqTyP a b result
-instance (EqTy a b ~ isEq, Proxy isEq result) => EqTyP a b result
-
-class Proxy inp out
-instance (result ~ True) => Proxy True result
-instance (result ~ False) => Proxy notTrue result
-
-testTrue :: EqTyP Int Int r => r
-testTrue = undefined
-
-testFalse :: EqTyP Int Bool r => r
-testFalse = undefined \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Numerals.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Numerals.hs
deleted file mode 100644
index 17fb30c3ca..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Numerals.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-{-# LANGUAGE EmptyDataDecls #-}
-{-# LANGUAGE GADTs #-}
-{-# LANGUAGE TypeOperators #-}
-
-module Numerals
-where
-
-data Z -- empty data type
-data S a -- empty data type
-
-data SNat n where -- natural numbers as singleton type
- Zero :: SNat Z
- Succ :: SNat n -> SNat (S n)
-
-zero = Zero
-one = Succ zero
-two = Succ one
-three = Succ two
--- etc...we really would like some nicer syntax here
-
-type family (:+:) n m :: *
-type instance Z :+: m = m
-type instance (S n) :+: m = S (n :+: m)
-
-add :: SNat n -> SNat m -> SNat (n :+: m)
-add Zero m = m
-add (Succ n) m = Succ (add n m)
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/OversatDecomp.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/OversatDecomp.hs
deleted file mode 100644
index a93256c92c..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/OversatDecomp.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TypeFamilies, MultiParamTypeClasses #-}
-
-module OversatDecomp where
-
-class Blah f a where
- blah :: a -> T f f a
-
-class A f where
- type T f :: (* -> *) -> * -> *
-
-wrapper :: Blah f a => a -> T f f a
-wrapper x = blah x
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/PushedInAsGivens.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/PushedInAsGivens.hs
deleted file mode 100644
index 0117b81d47..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/PushedInAsGivens.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances, FlexibleContexts, TypeFamilies #-}
-module PushedInAsGivens where
-
-
-type family F a
-
-
-
-bar y = let foo :: (F Int ~ [a]) => a -> Int
- foo x = length [x,y]
- in (y,foo y)
-
-
--- This example demonstrates why we need to push in
--- an unsolved wanted as a given and not a given/solved.
--- [Wanted] F Int ~ [beta]
---- forall a. F Int ~ [a] => a ~ beta
--- We we push in the [Wanted] as given, it will interact and solve the implication
--- constraint, and finally we quantify over F Int ~ [beta]. If we push it in as
--- Given/Solved, it will be discarded when we meet the given (F Int ~ [a]) and
--- we will not be able to solve the implication constraint.
-
-
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Records.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Records.hs
deleted file mode 100644
index 4a08125e30..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Records.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
--- See Trac #1204
-
-module ShouldCompile where
-
-data FooC = FooC
-
-data family T c
-data instance T FooC = MkT { moo :: Int }
-
-t1 :: Int -> T FooC
-t1 i = MkT { moo = i }
-
-t2 :: T FooC -> Int
-t2 (MkT { moo = i }) = i
-
-t3 :: T FooC -> Int
-t3 m = moo m
-
-f :: T FooC -> T FooC
-f r = r { moo = 3 }
-
-
-------------------------------------------------------------------------------
-class D c where
- data D1 c
- works :: Int -> D1 c -> D1 c
- buggy :: Int -> D1 c -> D1 c
- buggy2 :: Int -> D1 c -> D1 c
-
-instance D FooC where
- data D1 FooC = D1F { noo :: Int }
-
- works x d = d -- d unchanged, so OK
-
- buggy x d@(D1F { noo = k }) =
- d { noo = k + x }
-
- buggy2 x d@(D1F { noo = k }) =
- (d :: D1 FooC) { noo = k + x }
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Refl.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Refl.hs
deleted file mode 100644
index 0b1b1f7a36..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Refl.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Refl where
-
-type family T a :: * -> *
-
-foo :: a x -> a y
-foo = undefined
-
-bar :: a -> T a x -> T a y
-bar x t = foo t
-
-{- GHC complains that it could not deduce (T a x ~ T a x) where problem is
-that with -dppr-debug, we get "x{tv a7z} [sk]" on the lhs and "x{tv a7C}
-[box]" on the rhs
- -}
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Refl2.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Refl2.hs
deleted file mode 100644
index b6f5d056b5..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Refl2.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Refl2 where
-
-type family T (a :: * -> *) :: * -> *
-
-data U a x = U (T a x)
-
-mkU :: a x -> U a x
-mkU x = U undefined
-
--- The first definition says "Could not deduce (T a x ~ T a x)", the other two
--- work fine
-
-foo :: a x -> U a x
-foo x = case mkU x of U t -> id (U t)
--- foo x = case mkU x of U t -> id ((U :: T a x -> U a x) t)
--- foo x = case mkU x of U t -> U t
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/RelaxedExamples.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/RelaxedExamples.hs
deleted file mode 100644
index a58fb3da67..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/RelaxedExamples.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module RelaxedExamples where
-
-type family F1 a
-type family F2 a
-type family F3 a
-type family F4 a
-
-type instance F1 x = x
-type instance F2 [Bool] = F2 Char
-type instance F3 (a, b) = (F3 a, F3 b)
-type instance F4 x = (x, x) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Roman1.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Roman1.hs
deleted file mode 100644
index 491fee04c5..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Roman1.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-{-# LANGUAGE TypeFamilies, Rank2Types #-}
-
--- This test made the type checker produce an
--- ill-kinded coercion term.
-
-module Roman where
-
-import Control.Monad.ST
-
-type family Mut (v :: * -> *) :: * -> * -> *
-type family State (m :: * -> *)
-type instance State (ST s) = s
-
-unsafeFreeze :: Mut v (State (ST s)) a -> ST s (v a)
-unsafeFreeze = undefined
-
-new :: (forall v s. ST s (v s a)) -> v a
-new p = runST (do
- mv <- p
- unsafeFreeze mv)
-
----------------------------------------------
--- Here's a simpler version that also failed
-
-type family FMut :: * -> * -- No args
- -- Same thing happens with one arg
-
-type family FState (m :: *)
-type instance FState Char = Int
-
-funsafeFreeze :: FMut (FState Char) -> ()
-funsafeFreeze = undefined
-
-flop :: forall mv. mv Int
-flop = undefined
-
-noo = flop `rapp` funsafeFreeze
-
-rapp :: a -> (a->()) -> ()
-rapp arg fun = fun arg
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Rules1.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Rules1.hs
deleted file mode 100644
index 497c5bbeb9..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Rules1.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Rules1 where
-
-class C a where
- data T a
-
-instance (C a, C b) => C (a,b) where
- data T (a,b) = TPair (T a) (T b)
-
-mapT :: (C a, C b) => (a -> b) -> T a -> T b
-mapT = undefined
-
-zipT :: (C a, C b) => T a -> T b -> T (a,b)
-zipT = undefined
-
-{-# RULES
-
-"zipT/mapT" forall f x y.
- zipT (mapT f x) y = mapT (\(x,y) -> (f x, y)) (zipT x y)
-
- #-}
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple1.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple1.hs
deleted file mode 100644
index e442042bb1..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple1.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldCompile where
-
-class C a where
- data Sd a :: *
- data Sn a :: *
- type St a :: *
-
-instance C Int where
- data Sd Int = SdC Char
- newtype Sn Int = SnC Char
- type St Int = Char
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple10.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple10.hs
deleted file mode 100644
index 2e6aacf510..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple10.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Simple10 where
-
-type family T a
-
-foo, bar :: T a -> a
-foo = undefined
-bar x = foo x
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple11.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple11.hs
deleted file mode 100644
index 2d507a728e..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple11.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Simple11 where
-
-type family F a
-
-same :: a -> a -> a
-same = undefined
-
-mkf :: a -> F a
-mkf p = undefined
-
--- Works with explicit signature
--- foo :: a -> a -> (F a, a)
-foo p q = same (mkf p, p) (mkf q, q)
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple12.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple12.hs
deleted file mode 100644
index c425d78db5..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple12.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Simple12 where
-
-type family F a
-
-same :: a -> a -> a
-same = undefined
-
-mkf :: a -> F a
-mkf p = undefined
-
--- works with either of these signatures
--- foo :: a ~ F a => a -> a
--- foo :: a ~ F a => a -> F a
-foo p = same p (mkf p)
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple13.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple13.hs
deleted file mode 100644
index 7633f01f98..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple13.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
--- This should fail, I think, because of the loopy equality,
--- but the error message is hopeless
-
-module Simple13 where
-
-type family F a
-
-same :: a -> a -> a
-same = undefined
-
-mkf :: a -> [F a]
-mkf p = undefined
-
-foo :: a ~ [F a] => a -> a
-foo p = same p (mkf p)
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple14.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple14.hs
deleted file mode 100644
index 16158d9714..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple14.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-{-# LANGUAGE TypeFamilies, RankNTypes, FlexibleContexts, ScopedTypeVariables #-}
-
-module Simple14 where
-
-data EQ_ x y = EQ_
-
-eqE :: EQ_ x y -> (x~y => EQ_ z z) -> p
-eqE = undefined
-
-eqI :: EQ_ x x
-eqI = undefined
-
-ntI :: (forall p. EQ_ x y -> p) -> EQ_ x y
-ntI = undefined
-
-foo :: forall m n. EQ_ (Maybe m) (Maybe n)
-foo = ntI (`eqE` (eqI :: EQ_ m n))
--- Alternative
--- foo = ntI (\eq -> eq `eqE` (eqI :: EQ_ m n))
-
--- eq :: EQ_ (Maybe m) (Maybe n)
--- Need (Maybe m ~ Maybe n) => EQ_ m n ~ EQ_ zeta zeta
--- which redues to (m~n) => m ~ zeta
--- but then we are stuck \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple14.stderr b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple14.stderr
deleted file mode 100644
index a5250d556f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple14.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-Simple14.hs:17:12:
- Couldn't match type `z0' with `n'
- `z0' is untouchable
- inside the constraints (Maybe m ~ Maybe n)
- bound at a type expected by the context:
- Maybe m ~ Maybe n => EQ_ z0 z0
- `n' is a rigid type variable bound by
- the type signature for foo :: EQ_ (Maybe m) (Maybe n)
- at Simple14.hs:17:1
- In the second argument of `eqE', namely `(eqI :: EQ_ m n)'
- In the first argument of `ntI', namely `(`eqE` (eqI :: EQ_ m n))'
- In the expression: ntI (`eqE` (eqI :: EQ_ m n))
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple15.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple15.hs
deleted file mode 100644
index 8a28d27b6f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple15.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Simple15 where
-
-(<$) :: p -> (p -> q) -> q
-x <$ f = f x
-
-type family Def p
-
-def :: Def p -> p
-def = undefined
-
-data EQU a b = EQU
-
-equ_refl :: EQU a a
-equ_refl = EQU
-
-data FOO = FOO
-type instance Def FOO = EQU () ()
-
-foo :: FOO
-foo = equ_refl <$ def
--- This works:
--- foo = def $ equ_refl
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple16.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple16.hs
deleted file mode 100644
index f1958c3ffd..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple16.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
--- submitted by g9ks157k@acme.softbase.org as #1713
-module TypeFamilyBug where
-
-type family TestFamily a :: *
-
-type instance TestFamily () = [()]
-
-testFunction :: value -> TestFamily value -> ()
-testFunction = const (const ())
-
-testApplication :: ()
-testApplication = testFunction () (return ()) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple17.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple17.hs
deleted file mode 100644
index 4e812be0fe..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple17.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-module Simple17 where
-
-foo :: Int -> Int
-foo n = bar n
- where
- bar :: t ~ Int => Int -> t
- bar n = n
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple18.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple18.hs
deleted file mode 100644
index c7d94c4984..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple18.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Simple18 where
-
-type family F a
-
-type instance F Int = [Int]
-
-foo :: F Int
-foo = [1] \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple19.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple19.hs
deleted file mode 100644
index d738b0bd85..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple19.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TypeFamilies, LiberalTypeSynonyms #-}
- -- ^ crucial for exercising the code paths to be
- -- tested here
-
-module ShouldCompile where
-
-type family Element c :: *
-
-f :: Element x
-f = undefined
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple2.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple2.hs
deleted file mode 100644
index 2dc673f58b..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple2.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldCompile where
-
-class C3 a where
- data S3 a -- kind is optional
- data S3n a -- kind is optional
- foo3 :: a -> S3 a
- foo3n :: a -> S3n a
- bar3 :: S3 a -> a
- bar3n :: S3n a -> a
-
-instance C3 Int where
- data S3 Int = D3Int
- newtype S3n Int = D3Intn ()
- foo3 _ = D3Int
- foo3n _ = D3Intn ()
- bar3 D3Int = 1
- bar3n (D3Intn _) = 1
-
-instance C3 Char where
- data S3 Char = D3Char
- foo3 _ = D3Char
- bar3 D3Char = 'c'
-
-bar3' :: S3 Char -> Char
-bar3' D3Char = 'a'
-
-instance C3 Bool where
- data S3 Bool = S3_1 | S3_2
- foo3 False = S3_1
- foo3 True = S3_2
- bar3 S3_1 = False
- bar3 S3_2 = True
-
--- It's ok to omit ATs in instances, as it is ok to omit method definitions,
--- but similar to methods, "undefined" is the only inhabitant of these types,
--- then.
-instance C3 Float where
- foo3 1.0 = undefined
- bar3 _ = 1.0
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple2.stderr b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple2.stderr
deleted file mode 100644
index e2d5ce6973..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple2.stderr
+++ /dev/null
@@ -1,40 +0,0 @@
-
-Simple2.hs:21:1:
- Warning: No explicit AT declaration for `S3n'
- In the instance declaration for `C3 Char'
-
-Simple2.hs:21:10:
- Warning: No explicit method nor default method for `foo3n'
- In the instance declaration for `C3 Char'
-
-Simple2.hs:21:10:
- Warning: No explicit method nor default method for `bar3n'
- In the instance declaration for `C3 Char'
-
-Simple2.hs:29:1:
- Warning: No explicit AT declaration for `S3n'
- In the instance declaration for `C3 Bool'
-
-Simple2.hs:29:10:
- Warning: No explicit method nor default method for `foo3n'
- In the instance declaration for `C3 Bool'
-
-Simple2.hs:29:10:
- Warning: No explicit method nor default method for `bar3n'
- In the instance declaration for `C3 Bool'
-
-Simple2.hs:39:1:
- Warning: No explicit AT declaration for `S3'
- In the instance declaration for `C3 Float'
-
-Simple2.hs:39:1:
- Warning: No explicit AT declaration for `S3n'
- In the instance declaration for `C3 Float'
-
-Simple2.hs:39:10:
- Warning: No explicit method nor default method for `foo3n'
- In the instance declaration for `C3 Float'
-
-Simple2.hs:39:10:
- Warning: No explicit method nor default method for `bar3n'
- In the instance declaration for `C3 Float'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple20.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple20.hs
deleted file mode 100644
index 81a8522804..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple20.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldCompile where
-
-type family F a
-type instance F [a] = [F a]
-
-foo :: (F [a] ~ a) => a
-foo = undefined
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple20.stderr b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple20.stderr
deleted file mode 100644
index 6c8feeb75b..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple20.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-Simple20.hs:9:1:
- Warning: Dropping loopy given equality `[F a] ~ a'
- When generalising the type(s) for `foo'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple21.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple21.hs
deleted file mode 100644
index e858ae3ba9..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple21.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldCompile where
-
-import Prelude hiding (foldr, foldr1)
-
-import Data.Maybe
-
-type family Elem x
-
-class Foldable a where
- foldr :: (Elem a -> b -> b) -> b -> a -> b
-
- foldr1 :: (Elem a -> Elem a -> Elem a) -> a -> Elem a
- foldr1 f xs = fromMaybe (error "foldr1: empty structure")
- (foldr mf Nothing xs)
- where mf x Nothing = Just x
- mf x (Just y) = Just (f x y)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple22.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple22.hs
deleted file mode 100644
index dd0a558c4f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple22.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldCompile where
-
-data X1 = X1
-
-class C t where
- type D t
- f :: t -> D t -> ()
-
-instance C X1 where
- type D X1 = Bool -> Bool
- f _ h = ()
-
-foo = f X1 (\x -> x)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple23.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple23.hs
deleted file mode 100644
index b7d5ee4ccb..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple23.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldCompile where
-
-plus :: (a ~ (Int -> Int)) => Int -> a
-plus x y = x + y
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple24.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple24.hs
deleted file mode 100644
index de33458bc7..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple24.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE TypeFamilies, MultiParamTypeClasses, FlexibleContexts #-}
-
-module Simple24 where
-
-linear :: HasTrie (Basis v) => (Basis v, v)
-linear = basisValue
-
-class HasTrie a where
-
-type family Basis u :: *
-
-basisValue :: (Basis v,v)
-basisValue = error "urk"
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple3.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple3.hs
deleted file mode 100644
index aa37ac215d..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple3.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TypeFamilies, MultiParamTypeClasses, FlexibleInstances #-}
-
-module ShouldCompile where
-
-class C7 a b where
- data S7 b :: *
-
-instance C7 Char (a, Bool) where
- data S7 (a, Bool) = S7_1
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple4.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple4.hs
deleted file mode 100644
index bd8ae3d66a..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple4.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldCompile where
-
-class C8 a where
- data S8 a :: * -> *
-
-instance C8 Int where
- data S8 Int a = S8Int a
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple5.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple5.hs
deleted file mode 100644
index ecae60d53d..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple5.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldCompile where
-
-data family C9 a b :: *
-data instance C9 Int Int = C9IntInt
-data instance C9 [a] Int = C9ListInt
-data instance C9 [Int] [a] = C9ListList2
-
-type family D a
-type instance D (Int, a) = (Int, a)
-type instance D (a, Int) = (Int, Int)
-
-type family E a
-type instance E (Char, b) = ([Char], b)
-type instance E (a, Int) = (String, Int)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple6.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple6.hs
deleted file mode 100644
index ead121ab2d..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple6.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldCompile where
-
-import Data.IORef
-
-data family T a
-data instance T a = T
-
-foo :: T Int -> T Char
-foo T = T
-
-type family S a
-type instance S a = a
-
-type family SMRef (m:: * -> *) :: * -> *
-type instance SMRef IO = IORef \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple7.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple7.hs
deleted file mode 100644
index 61ba22117f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple7.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldCompile where
-
-class C1 a where
- data S1 a :: *
-
--- instance of data families can be data or newtypes
-instance C1 Char where
- newtype S1 Char = S1Char ()
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple8.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple8.hs
deleted file mode 100644
index f819763579..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple8.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Simple8 where
-
-type family F a
-
--- Manuel says that duplicate instances are ok. This gives a strange error but
--- works if one of the duplicates is removed.
-
-type instance F () = ()
-type instance F () = ()
-
-foo :: F () -> ()
-foo x = x
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple9.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple9.hs
deleted file mode 100644
index 4075d4845f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/Simple9.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Simple9 where
-
--- The test succeeds with
---
--- type family F a b
--- type instance F () b = Maybe b
-
-type family F a :: * -> *
-type instance F () = Maybe
-
-type family G a
-type instance G (Maybe a) = Int
-
-foo :: G (F () a) -> Int
-foo x = x
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T1769.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T1769.hs
deleted file mode 100644
index 57b966051b..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T1769.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TypeFamilies, StandaloneDeriving, DeriveDataTypeable, FlexibleInstances #-}
-
-module T1769 where
-
-import Data.Typeable
-
-data family T a
-deriving instance Typeable1 T
--- deriving instance Functor T
-
-data instance T [b] = T1 | T2 b
-deriving instance Eq b => Eq (T [b])
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T1981.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T1981.hs
deleted file mode 100644
index 658821ea73..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T1981.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# OPTIONS_GHC -XTypeFamilies #-}
-
-module ShouldCompile where
-
-type family T a
-
-f :: T a -> Int
-f x = x `seq` 3
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2102.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T2102.hs
deleted file mode 100644
index 6283b18071..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2102.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE TypeFamilies, ScopedTypeVariables #-}
-
-module T2102 where
-
-type family Cat ts0 ts
-type instance Cat () ts' = ts'
-type instance Cat (s, ts) ts' = (s, Cat ts ts')
-
-class (Cat ts () ~ ts) => Valid ts
-instance Valid () -- compiles OK
-instance Valid ts => Valid (s, ts) -- fails to compile
-
--- need to prove Cat (s, ts) () ~ (s, Cat ts ())
--- for the superclass of class Valid.
--- (1) From Valid ts: Cat ts () ~ ts
--- (2) Therefore: (s, Cat ts ()) ~ (s, ts)
-
-coerce :: forall f ts. Valid ts => f (Cat ts ()) -> f ts
-coerce x = x
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2203b.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T2203b.hs
deleted file mode 100644
index 74517aeadd..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2203b.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables, TypeFamilies #-}
-
-module T2203b where
-
-class Foo a where
- type TheFoo a
- foo :: TheFoo a -> a
- foo' :: a -> Int
-
-class Bar b where
- bar :: b -> Int
-
-instance (b ~ TheFoo a, Foo a) => Bar (Either a b) where
- bar (Left a) = foo' a
- bar (Right b) = foo' (foo b :: a)
-
-instance Foo Int where
- type TheFoo Int = Int
- foo = id
- foo' = id
-
-val :: Either Int Int
-val = Left 5
-
-res :: Int
-res = bar val \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2219.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T2219.hs
deleted file mode 100644
index ea7d442f74..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2219.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs, EmptyDataDecls, TypeOperators #-}
-
-module Test where
-
-data Zero
-data Succ a
-
-data FZ
-data FS fn
-
-data Fin n fn where
- FZ :: Fin (Succ n) FZ
- FS :: Fin n fn -> Fin (Succ n) (FS fn)
-
-data Nil
-data a ::: b
-
-type family Lookup ts fn :: *
-type instance Lookup (t ::: ts) FZ = t
-type instance Lookup (t ::: ts) (FS fn) = Lookup ts fn
-
-data Tuple n ts where
- Nil :: Tuple Zero Nil
- (:::) :: t -> Tuple n ts -> Tuple (Succ n) (t ::: ts)
-
-proj :: Fin n fn -> Tuple n ts -> Lookup ts fn
-proj FZ (v ::: _) = v
-proj (FS fn) (_ ::: vs) = proj fn vs
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2238.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T2238.hs
deleted file mode 100644
index 8e77283d77..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2238.hs
+++ /dev/null
@@ -1,39 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-{-# LANGUAGE UndecidableInstances #-}
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE EmptyDataDecls #-}
-{-# LANGUAGE FunctionalDependencies #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-
--- Trac #2238
--- Notice that class CTF has just one value field, but
--- it also has an equality predicate.
--- See Note [Class newtypes and equality predicates] in BuildTyCl
-
-module Foo where
-
-data A
-data B
-
--- via functional dependencies
-
-class HowFD a how | a -> how
-
-class HowFD a how => CFD a how where
- cfd :: a -> String
- cfd _ = "cfd"
-instance HowFD a how => CFD a how
-
-instance HowFD Bool A
-
--- via type families
-
-type family HowTF a
-
-class how ~ HowTF a => CTF a how where
- ctf :: a -> String
- ctf _ = "ctf"
-
-instance how ~ HowTF a => CTF a how
-
-type instance HowTF Bool = A
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2291.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T2291.hs
deleted file mode 100644
index a6832b60ad..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2291.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-module Small where
-
-class CoCCC k where
- type Coexp k :: * -> * -> *
- type Sum k :: * -> * -> *
- coapply :: k b (Sum k (Coexp k a b) a)
- cocurry :: k c (Sum k a b) -> k (Coexp k b c) a
- uncocurry :: k (Coexp k b c) a -> k c (Sum k a b)
-
-{-# RULES
-"cocurry coapply" cocurry coapply = id
-"cocurry . uncocurry" cocurry . uncocurry = id
-"uncocurry . cocurry" uncocurry . cocurry = id
- #-}
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2448.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T2448.hs
deleted file mode 100644
index 806df3ff4c..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2448.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE TypeFamilies, UndecidableInstances #-}
-
-module T2448 where
-
--- Demonstrates a bug in propagating type equality constraints
-
-class VectorSpace v where
- type Scalar v :: *
-
-class VectorSpace v => InnerSpace v
-
-instance (VectorSpace u,VectorSpace v, Scalar u ~ Scalar v) =>
- VectorSpace (u,v)
- where
- type Scalar (u,v) = Scalar u
-
-instance (InnerSpace u,InnerSpace v, Scalar u ~ Scalar v) => InnerSpace (u,v)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2627.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T2627.hs
deleted file mode 100644
index 6a29d611e5..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2627.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE GADTs, TypeFamilies, EmptyDataDecls #-}
-
-module T2627 where
-
-data R a b
-data W a b
-data Z
-
-type family Dual a
-type instance Dual Z = Z
-type instance Dual (R a b) = W a (Dual b)
-type instance Dual (W a b) = R a (Dual b)
-
-data Comm a where
- Rd :: (a -> Comm b) -> Comm (R a b)
- Wr :: a -> Comm b -> Comm (W a b)
- Fin :: Int -> Comm Z
-
-conn :: (Dual a ~ b, Dual b ~ a) => Comm a -> Comm b -> (Int, Int)
-conn (Fin x) (Fin y) = (x,y)
-conn (Rd k) (Wr a r) = conn (k a) r
-conn (Wr a r) (Rd k) = conn r (k a) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2639.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T2639.hs
deleted file mode 100644
index 43e6c98a1d..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2639.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE TypeFamilies, EmptyDataDecls #-}
-
-module T2639 where
-
-data Eps
-
-data family Work a v
-data instance Work Eps v = Eps v
-
-type family Dual a
-type instance Dual Eps = Eps
-
-class Connect s where
- connect :: (Dual s ~ c, Dual c ~ s) => Work s a -> Work c b -> (a,b)
-
-instance Connect Eps where
- connect (Eps a) (Eps b) = (a,b)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2715.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T2715.hs
deleted file mode 100644
index 0fae15eaf8..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2715.hs
+++ /dev/null
@@ -1,32 +0,0 @@
-{-# LANGUAGE UndecidableInstances #-}
-{-# LANGUAGE TypeFamilies #-}
-{-# LANGUAGE GADTs #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE FlexibleContexts #-}
-
-module T2715 where
-
-data Interval v where
- Intv :: (Ord v, Enum v) => (v,v) -> Interval v
-
-type family Domain (d :: * -> *) :: * -> *
-type instance Domain Interval = Interval
-
-type family Value (d :: * -> *) :: *
-
-
-class IDomain d where
- empty :: (Ord (Value d), Enum (Value d)) => (Domain d) (Value d)
-
-class (IDomain d1) -- (IDomain d1, IDomain d2, Value d1 ~ Value d2)
- => IIDomain (d1 :: * -> *) (d2 :: * -> * ) where
- equals :: Domain d1 (Value d1) -> Domain d2 (Value d2) -> Bool
-
-
-instance Ord (Value Interval)
- => IDomain Interval where
- empty = Intv (toEnum 1, toEnum 0)
-
-instance Ord (Value Interval)
- => IIDomain Interval Interval where
- equals (Intv ix) (Intv iy) = ix == iy
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2767.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T2767.hs
deleted file mode 100644
index 7104db2fa3..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2767.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE TypeFamilies, NoMonomorphismRestriction #-}
-
-module T2767a where
-
-main = return ()
-
--- eval' :: Solver solver => Tree solver a -> [(Label solver,Tree solver a)] -> solver [a]
-eval' (NewVar f) wl = do v <- newvarSM
- eval' (f v) wl
-eval' Fail wl = continue wl
-
--- continue :: Solver solver => [(Label solver,Tree solver a)] -> solver [a]
-continue ((past,t):wl) = do gotoSM past
- eval' t wl
-data Tree s a
- = Fail
- | NewVar (Term s -> Tree s a)
-
-class Monad solver => Solver solver where
- type Term solver :: *
- type Label solver :: *
- newvarSM :: solver (Term solver)
- gotoSM :: Label solver -> solver ()
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2850.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T2850.hs
deleted file mode 100644
index bdb423b6eb..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2850.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving, TypeFamilies, FlexibleContexts, FlexibleInstances #-}
-
-module T2850 where
-
-class K a where
- bar :: a -> a
-
-class K (B a) => M a where
- data B a :: *
- foo :: B a -> B a
-
-instance M Bool where
- data B Bool = B1Bool Bool | B2Bool Bool
- foo = id
-
-instance K (B Bool) where
- bar = id
-
-instance M Int where
- newtype B Int = BInt (B Bool) deriving K
- foo = id
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2944.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T2944.hs
deleted file mode 100644
index 19c009b0f9..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T2944.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
--- Test Trac #2944
-
-module T2944 where
-
-type family T a :: *
-
-f1 :: T a ~ () => a
-f1 = f2
-
-f2 :: T a ~ () => a
-f2 = f1
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3017.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3017.hs
deleted file mode 100644
index 8e4e5bd999..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3017.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
--- Trac #3017
-
-module Foo where
- class Coll c where
- type Elem c
- empty :: c
- insert :: Elem c -> c -> c
-
- data ListColl a = L [a]
- instance Coll (ListColl a) where
- type Elem (ListColl a) = a
- empty = L []
- insert x (L xs) = L (x:xs)
-
- emptyL :: ListColl a
- emptyL = empty
-
- test2 c = insert (0, 0) c
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3017.stderr b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3017.stderr
deleted file mode 100644
index 5afb822c32..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3017.stderr
+++ /dev/null
@@ -1,19 +0,0 @@
-TYPE SIGNATURES
- emptyL :: forall a. ListColl a
- test2 :: forall c t t1.
- (Num t, Num t1, Coll c, Elem c ~ (t, t1)) =>
- c -> c
-TYPE CONSTRUCTORS
- data ListColl a
- RecFlag NonRecursive
- = L :: forall a. [a] -> ListColl a Stricts: _
- FamilyInstance: none
-COERCION AXIOMS
- axiom Foo.TFCo:R:ElemListColl [a]
- :: Elem (ListColl a) ~ Foo.R:ElemListColl a
-INSTANCES
- instance Coll (ListColl a) -- Defined at T3017.hs:12:11-27
-FAMILY INSTANCES
- type Elem (ListColl a) -- Defined at T3017.hs:13:9-12
-Dependent modules: []
-Dependent packages: [base, ghc-prim, integer-gmp]
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3023.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3023.hs
deleted file mode 100644
index 26966daed7..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3023.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies, UndecidableInstances #-}
-{-# OPTIONS_GHC -fwarn-missing-signatures #-}
-
-module Bug where
-
-class C a b | a -> b, b -> a where
- f :: a -> b
-
-instance C Int Bool where
- f = undefined
-instance (C a c, C b d) => C (a -> b) (c -> d) where
- f = undefined
-
-foo :: Int -> Int
-foo = undefined
-
-bar = f foo
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3023.stderr b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3023.stderr
deleted file mode 100644
index 68066bac91..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3023.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-T3023.hs:17:1:
- Warning: Top-level binding with no type signature:
- bar :: Bool -> Bool
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3208a.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3208a.hs
deleted file mode 100644
index fded5bf55d..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3208a.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module T3208a where
-
-class SUBST s where
- type STerm s
-
-class OBJECT o where
- type OTerm o
- apply :: (SUBST s, OTerm o ~ STerm s) => s -> o
-
-fce' f = fce . apply $ f
-
-fce f = fce' f
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3208b.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3208b.hs
deleted file mode 100644
index 012756abd1..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3208b.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
--- This should fail
-
-module T3208b where
-
-class SUBST s where
- type STerm s
-
-class OBJECT o where
- type OTerm o
- apply :: (SUBST s, OTerm o ~ STerm s) => s -> o
-
-fce' :: (OTerm a ~ STerm a, OBJECT a, SUBST a) => a -> c
-fce' f = fce (apply f)
--- f :: a
--- apply f :: (OBJECT a, SUBST a, OTerm o ~ STerm a) => o
--- fce called with a=o, gives wanted (OTerm o ~ STerm o, OBJECT o, SUBST o)
-
-
-fce :: (OTerm a ~ STerm a, OBJECT a, SUBST a) => a -> c
-fce f = fce' f
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3208b.stderr b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3208b.stderr
deleted file mode 100644
index 712f732b06..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3208b.stderr
+++ /dev/null
@@ -1,22 +0,0 @@
-
-T3208b.hs:15:10:
- Could not deduce (STerm a0 ~ STerm a)
- from the context (OTerm a ~ STerm a, OBJECT a, SUBST a)
- bound by the type signature for
- fce' :: (OTerm a ~ STerm a, OBJECT a, SUBST a) => a -> c
- at T3208b.hs:15:1-22
- NB: `STerm' is a type function, and may not be injective
- Expected type: STerm a0
- Actual type: OTerm a0
- In the expression: fce (apply f)
- In an equation for `fce'': fce' f = fce (apply f)
-
-T3208b.hs:15:15:
- Could not deduce (OTerm a0 ~ STerm a)
- from the context (OTerm a ~ STerm a, OBJECT a, SUBST a)
- bound by the type signature for
- fce' :: (OTerm a ~ STerm a, OBJECT a, SUBST a) => a -> c
- at T3208b.hs:15:1-22
- In the first argument of `fce', namely `(apply f)'
- In the expression: fce (apply f)
- In an equation for `fce'': fce' f = fce (apply f)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3220.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3220.hs
deleted file mode 100644
index 7d6190a7fa..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3220.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE TypeFamilies, ScopedTypeVariables#-}
-
-module T3220 where
-
-class Foo m where
- type Bar m :: *
- action :: m -> Bar m -> m
-
-right x m = action m (Right x)
-
-right' :: (Either a b ~ Bar m, Foo m) => b -> m -> m
-right' x m = action m (Right x)
-
-instance Foo Int where
- type Bar Int = Either Int Int
- action m a = either (*) (+) a m
-
-instance Foo Float where
- type Bar Float = Either Float Float
- action m a = either (*) (+) a m
-
-foo = print $ right (1::Int) (3 :: Int)
-bar = print $ right (1::Float) (3 :: Float) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3418.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3418.hs
deleted file mode 100644
index a0ffaf0aed..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3418.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-{-# LANGUAGE TypeFamilies, DatatypeContexts #-}
-module T3418 where
-
-newtype (a ~ b) => S a b = S { unS :: a }
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3418.stderr b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3418.stderr
deleted file mode 100644
index 657e2a07b7..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3418.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-T3418.hs:1:28:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3423.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3423.hs
deleted file mode 100644
index bbca944374..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3423.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TypeFamilies, UndecidableInstances, StandaloneDeriving #-}
-{-# LANGUAGE FlexibleInstances #-}
-
-module T3423 where
-
-newtype Trie m k a = Trie (Maybe a, m (SubKey k) (Trie m k a))
-
-type family SubKey k
-type instance SubKey [k] = k
-
-deriving instance (Eq (m k (Trie m [k] a)), Eq a)
- => Eq (Trie m [k] a)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3460.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3460.hs
deleted file mode 100644
index ea4f59cd6b..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3460.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TypeFamilies, FlexibleContexts #-}
-module T3460 where
-
-class Nat n where
- toInt :: n -> Int
-
-class (Nat (Arity f)) => Model f where
- type Arity f
-
-ok :: Model f => f -> Arity f -> Int
-ok _ n = toInt n
-
-bug :: (Model f, Arity f ~ n) => f -> n -> Int
-bug _ n = toInt n
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3484.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3484.hs
deleted file mode 100644
index 4d1570915e..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3484.hs
+++ /dev/null
@@ -1,42 +0,0 @@
-{-# LANGUAGE GADTs, RankNTypes, TypeFamilies, FlexibleContexts, ScopedTypeVariables #-}
-{-# OPTIONS_GHC -Wall #-}
-module Absurd where
-
-data Z = Z
-newtype S n = S n
-class Nat n where
- caseNat :: (n ~ Z => r) -> (forall p. (n ~ S p, Nat p) => p -> r) -> n -> r
-instance Nat Z where
- caseNat = error "urk1"
-instance Nat n => Nat (S n) where
- caseNat = error "urk2"
-
--- empty type
-newtype Naught = Naught (forall a. a)
--- types are equal!
-data TEq a b where
- TEq :: (a ~ b) => TEq a b
-
-type family NatEqProves m n
-type instance NatEqProves (S m) (S n) = TEq m n
-
-noConf :: (Nat m, Nat n) => m -> TEq m n -> NatEqProves m n
-noConf = undefined
-predEq :: TEq (S a) (S b) -> TEq a b
-predEq = undefined
-
-data IsEq a b = Yes (TEq a b) | No (TEq a b -> Naught)
-
-natEqDec :: forall m n. (Nat m, Nat n) => m -> n -> IsEq m n
-natEqDec m n = caseNat undefined mIsS m where
- mIsS :: forall pm. (m ~ S pm, Nat pm) => pm -> IsEq m n
- mIsS pm = caseNat undefined nIsS n where
- nIsS :: forall pn. (n ~ S pn, Nat pn) => pn -> IsEq m n
- nIsS pn = case natEqDec pm pn of
- Yes TEq -> Yes TEq
- No contr -> No (contr . noConf m)
--- No contr -> No (contr . predEq)
-
--- strange things:
--- (1) commenting out the "Yes" case or changing it to "undefined" makes compilation succeed
--- (2) replacing the "No" line with with the commented out "No" line makes compilation succeed \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3590.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3590.hs
deleted file mode 100644
index 1b4ba426aa..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3590.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE TypeFamilies, FlexibleContexts #-}
-
--- Trac #3590: a bug in typechecking of sections
-
-module T3590 where
-
-newtype ListT m a =
- ListT { runListT :: m (Maybe (a, ListT m a)) }
-
-class Monad (ItemM l) => List l where
- type ItemM l :: * -> *
- joinL :: [ItemM l (l a) -> l a]
-
-instance Monad m => List (ListT m) where
- type ItemM (ListT m) = m
- joinL = [ ListT . (>>= runListT) -- Right section
- , ListT . (runListT <<=) -- Left section
- ]
-
-(<<=) :: Monad m => (a -> m b) -> m a -> m b
-(<<=) k m = m >>= k
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3787.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3787.hs
deleted file mode 100644
index 955b6a1cdd..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3787.hs
+++ /dev/null
@@ -1,475 +0,0 @@
-{-
- Copyright 2009 Mario Blazevic
-
- This file is part of the Streaming Component Combinators (SCC) project.
-
- The SCC project is free software: you can redistribute it and/or modify it under the terms of the GNU General Public
- License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later
- version.
-
- SCC is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty
- of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along with SCC. If not, see
- <http://www.gnu.org/licenses/>.
--}
-
--- | Module "Trampoline" defines the trampoline computations and their basic building blocks.
-
-{-# LANGUAGE ScopedTypeVariables, Rank2Types, MultiParamTypeClasses, TypeFamilies, KindSignatures,
- FlexibleContexts, FlexibleInstances, OverlappingInstances, UndecidableInstances
- #-}
-
-module T3787 where
-
-import Control.Concurrent (forkIO)
-import Control.Concurrent.MVar (newEmptyMVar, putMVar, takeMVar)
-import Control.Monad (liftM, liftM2, when)
-import Control.Monad.Identity
-import Control.Monad.Trans (MonadTrans(..))
-
-import Data.Foldable (toList)
-import Data.Maybe (maybe)
-import Data.Sequence (Seq, viewl)
-
-par, pseq :: a -> b -> b
-par = error "urk"
-pseq = error "urk"
-
--- | Class of monads that can perform two computations in parallel.
-class Monad m => ParallelizableMonad m where
- -- | Combine two computations into a single parallel computation. Default implementation of `parallelize` is
- -- @liftM2 (,)@
- parallelize :: m a -> m b -> m (a, b)
- parallelize = liftM2 (,)
-
--- | Any monad that allows the result value to be extracted, such as `Identity` or `Maybe` monad, can implement
--- `parallelize` by using `par`.
-instance ParallelizableMonad Identity where
- parallelize ma mb = let a = runIdentity ma
- b = runIdentity mb
- in a `par` (b `pseq` a `pseq` Identity (a, b))
-
-instance ParallelizableMonad Maybe where
- parallelize ma mb = case ma `par` (mb `pseq` (ma, mb))
- of (Just a, Just b) -> Just (a, b)
- _ -> Nothing
-
--- | IO is parallelizable by `forkIO`.
-instance ParallelizableMonad IO where
- parallelize ma mb = do va <- newEmptyMVar
- vb <- newEmptyMVar
- forkIO (ma >>= putMVar va)
- forkIO (mb >>= putMVar vb)
- a <- takeMVar va
- b <- takeMVar vb
- return (a, b)
-
--- | Suspending monadic computations.
-newtype Trampoline s m r = Trampoline {
- -- | Run the next step of a `Trampoline` computation.
- bounce :: m (TrampolineState s m r)
- }
-
-data TrampolineState s m r =
- -- | Trampoline computation is finished with final value /r/.
- Done r
- -- | Computation is suspended, its remainder is embedded in the functor /s/.
- | Suspend! (s (Trampoline s m r))
-
-instance (Functor s, Monad m) => Monad (Trampoline s m) where
- return x = Trampoline (return (Done x))
- t >>= f = Trampoline (bounce t >>= apply f)
- where apply f (Done x) = bounce (f x)
- apply f (Suspend s) = return (Suspend (fmap (>>= f) s))
-
-instance (Functor s, ParallelizableMonad m) => ParallelizableMonad (Trampoline s m) where
- parallelize t1 t2 = Trampoline $ liftM combine $ parallelize (bounce t1) (bounce t2) where
- combine (Done x, Done y) = Done (x, y)
- combine (Suspend s, Done y) = Suspend (fmap (liftM $ \x-> (x, y)) s)
- combine (Done x, Suspend s) = Suspend (fmap (liftM $ (,) x) s)
- combine (Suspend s1, Suspend s2) = Suspend (fmap (parallelize $ suspend s1) s2)
-
-instance Functor s => MonadTrans (Trampoline s) where
- lift = Trampoline . liftM Done
-
-data Yield x y = Yield! x y
-instance Functor (Yield x) where
- fmap f (Yield x y) = Yield x (f y)
-
-data Await x y = Await! (x -> y)
-instance Functor (Await x) where
- fmap f (Await g) = Await (f . g)
-
-data EitherFunctor l r x = LeftF (l x) | RightF (r x)
-instance (Functor l, Functor r) => Functor (EitherFunctor l r) where
- fmap f (LeftF l) = LeftF (fmap f l)
- fmap f (RightF r) = RightF (fmap f r)
-
-newtype NestedFunctor l r x = NestedFunctor (l (r x))
-instance (Functor l, Functor r) => Functor (NestedFunctor l r) where
- fmap f (NestedFunctor lr) = NestedFunctor ((fmap . fmap) f lr)
-
-data SomeFunctor l r x = LeftSome (l x) | RightSome (r x) | Both (NestedFunctor l r x)
-instance (Functor l, Functor r) => Functor (SomeFunctor l r) where
- fmap f (LeftSome l) = LeftSome (fmap f l)
- fmap f (RightSome r) = RightSome (fmap f r)
- fmap f (Both lr) = Both (fmap f lr)
-
-type TryYield x = EitherFunctor (Yield x) (Await Bool)
-
-suspend :: (Monad m, Functor s) => s (Trampoline s m x) -> Trampoline s m x
-suspend s = Trampoline (return (Suspend s))
-
-yield :: forall m x. Monad m => x -> Trampoline (Yield x) m ()
-yield x = suspend (Yield x (return ()))
-
-await :: forall m x. Monad m => Trampoline (Await x) m x
-await = suspend (Await return)
-
-tryYield :: forall m x. Monad m => x -> Trampoline (TryYield x) m Bool
-tryYield x = suspend (LeftF (Yield x (suspend (RightF (Await return)))))
-
-canYield :: forall m x. Monad m => Trampoline (TryYield x) m Bool
-canYield = suspend (RightF (Await return))
-
-fromTrampoline :: Monad m => Trampoline s m x -> m x
-fromTrampoline t = bounce t >>= \(Done x)-> return x
-
-runTrampoline :: Monad m => Trampoline Identity m x -> m x
-runTrampoline = fromTrampoline
-
-pogoStick :: (Functor s, Monad m) => (s (Trampoline s m x) -> Trampoline s m x) -> Trampoline s m x -> m x
-pogoStick reveal t = bounce t
- >>= \s-> case s
- of Done result -> return result
- Suspend c -> pogoStick reveal (reveal c)
-
-pogoStickNested :: (Functor s1, Functor s2, Monad m) =>
- (s2 (Trampoline (EitherFunctor s1 s2) m x) -> Trampoline (EitherFunctor s1 s2) m x)
- -> Trampoline (EitherFunctor s1 s2) m x -> Trampoline s1 m x
-pogoStickNested reveal t =
- Trampoline{bounce= bounce t
- >>= \s-> case s
- of Done result -> return (Done result)
- Suspend (LeftF s) -> return (Suspend (fmap (pogoStickNested reveal) s))
- Suspend (RightF c) -> bounce (pogoStickNested reveal (reveal c))
- }
-
-nest :: (Functor a, Functor b) => a x -> b y -> NestedFunctor a b (x, y)
-nest a b = NestedFunctor $ fmap (\x-> fmap ((,) x) b) a
-
--- couple :: (Monad m, Functor s1, Functor s2) =>
--- Trampoline s1 m x -> Trampoline s2 m y -> Trampoline (NestedFunctor s1 s2) m (x, y)
--- couple t1 t2 = Trampoline{bounce= do ts1 <- bounce t1
--- ts2 <- bounce t2
--- case (ts1, ts2) of (Done x, Done y) -> return $ Done (x, y)
--- (Suspend s1, Suspend s2) -> return $ Suspend $
--- fmap (uncurry couple) (nest s1 s2)
--- }
-
-coupleAlternating :: (Monad m, Functor s1, Functor s2) =>
- Trampoline s1 m x -> Trampoline s2 m y -> Trampoline (SomeFunctor s1 s2) m (x, y)
-coupleAlternating t1 t2 =
- Trampoline{bounce= do ts1 <- bounce t1
- ts2 <- bounce t2
- case (ts1, ts2) of (Done x, Done y) -> return $ Done (x, y)
- (Suspend s1, Suspend s2) ->
- return $ Suspend $ fmap (uncurry coupleAlternating) (Both $ nest s1 s2)
- (Done x, Suspend s2) ->
- return $ Suspend $ fmap (coupleAlternating (return x)) (RightSome s2)
- (Suspend s1, Done y) ->
- return $ Suspend $ fmap (flip coupleAlternating (return y)) (LeftSome s1)
- }
-
-coupleParallel :: (ParallelizableMonad m, Functor s1, Functor s2) =>
- Trampoline s1 m x -> Trampoline s2 m y -> Trampoline (SomeFunctor s1 s2) m (x, y)
-coupleParallel t1 t2 =
- Trampoline{bounce= parallelize (bounce t1) (bounce t2)
- >>= \pair-> case pair
- of (Done x, Done y) -> return $ Done (x, y)
- (Suspend s1, Suspend s2) ->
- return $ Suspend $ fmap (uncurry coupleParallel) (Both $ nest s1 s2)
- (Done x, Suspend s2) ->
- return $ Suspend $ fmap (coupleParallel (return x)) (RightSome s2)
- (Suspend s1, Done y) ->
- return $ Suspend $ fmap (flip coupleParallel (return y)) (LeftSome s1)
- }
-
-coupleNested :: (Monad m, Functor s0, Functor s1, Functor s2) =>
- Trampoline (EitherFunctor s0 s1) m x -> Trampoline (EitherFunctor s0 s2) m y ->
- Trampoline (EitherFunctor s0 (SomeFunctor s1 s2)) m (x, y)
-coupleNested t1 t2 =
- Trampoline{bounce= do ts1 <- bounce t1
- ts2 <- bounce t2
- case (ts1, ts2) of (Done x, Done y) -> return $ Done (x, y)
- (Suspend (RightF s), Done y) ->
- return $ Suspend $ RightF $ fmap (flip coupleNested (return y)) (LeftSome s)
- (Done x, Suspend (RightF s)) ->
- return $ Suspend $ RightF $ fmap (coupleNested (return x)) (RightSome s)
- (Suspend (RightF s1), Suspend (RightF s2)) ->
- return $ Suspend $ RightF $ fmap (uncurry coupleNested) (Both $ nest s1 s2)
- (Suspend (LeftF s), Done y) ->
- return $ Suspend $ LeftF $ fmap (flip coupleNested (return y)) s
- (Done x, Suspend (LeftF s)) ->
- return $ Suspend $ LeftF $ fmap (coupleNested (return x)) s
- (Suspend (LeftF s1), Suspend (LeftF s2)) ->
- return $ Suspend $ LeftF $ fmap (coupleNested $ suspend $ LeftF s1) s2
- }
-
-seesaw :: (Monad m, Functor s1, Functor s2) =>
- (forall x y s t. (s ~ SomeFunctor s1 s2, t ~ Trampoline s m (x, y)) => s t -> t)
- -> Trampoline s1 m x -> Trampoline s2 m y -> m (x, y)
-seesaw resolve t1 t2 = pogoStick resolve (coupleAlternating t1 t2)
-
-seesawParallel :: (ParallelizableMonad m, Functor s1, Functor s2) =>
- (forall x y s t. (s ~ SomeFunctor s1 s2, t ~ Trampoline s m (x, y)) => s t -> t)
- -> Trampoline s1 m x -> Trampoline s2 m y -> m (x, y)
-seesawParallel resolve t1 t2 = pogoStick resolve (coupleParallel t1 t2)
-
-resolveProducerConsumer :: forall a s s0 t t' m x.
- (Functor s0, Monad m, s ~ SomeFunctor (TryYield a) (Await (Maybe a)),
- t ~ Trampoline (EitherFunctor s0 s) m x) =>
- s t -> t
--- Arg :: s t
--- (LeftSome (LeftF ...)) : SomeFunctor (EitherFunctor .. ..) (...) t
-resolveProducerConsumer (LeftSome (LeftF (Yield _ c))) = c
-resolveProducerConsumer (LeftSome (RightF (Await c))) = c False
-resolveProducerConsumer (RightSome (Await c)) = c Nothing
-resolveProducerConsumer (Both (NestedFunctor (LeftF (Yield x (Await c))))) = c (Just x)
-resolveProducerConsumer (Both (NestedFunctor (RightF (Await c)))) = suspend (RightF $ RightSome $ c True)
-
-couplePC :: ParallelizableMonad m => Trampoline (Yield a) m x -> Trampoline (Await (Maybe a)) m y -> m (x, y)
-couplePC t1 t2 = parallelize (bounce t1) (bounce t2)
- >>= \(s1, s2)-> case (s1, s2)
- of (Done x, Done y) -> return (x, y)
- (Suspend (Yield x c1), Suspend (Await c2)) -> couplePC c1 (c2 $ Just x)
- (Suspend (Yield _ c1), Done y) -> couplePC c1 (return y)
- (Done x, Suspend (Await c2)) -> couplePC (return x) (c2 Nothing)
-
-coupleFinite :: ParallelizableMonad m => Trampoline (TryYield a) m x -> Trampoline (Await (Maybe a)) m y -> m (x, y)
-coupleFinite t1 t2 =
- parallelize (bounce t1) (bounce t2)
- >>= \(s1, s2)-> case (s1, s2)
- of (Done x, Done y) -> return (x, y)
- (Done x, Suspend (Await c2)) -> coupleFinite (return x) (c2 Nothing)
- (Suspend (LeftF (Yield x c1)), Suspend (Await c2)) -> coupleFinite c1 (c2 $ Just x)
- (Suspend (LeftF (Yield _ c1)), Done y) -> coupleFinite c1 (return y)
- (Suspend (RightF (Await c1)), Suspend s2@Await{}) -> coupleFinite (c1 True) (suspend s2)
- (Suspend (RightF (Await c1)), Done y) -> coupleFinite (c1 False) (return y)
-
-coupleFiniteSequential :: Monad m => Trampoline (TryYield a) m x -> Trampoline (Await (Maybe a)) m y -> m (x, y)
-coupleFiniteSequential t1 t2 =
- bounce t1
- >>= \s1-> bounce t2
- >>= \s2-> case (s1, s2)
- of (Done x, Done y) -> return (x, y)
- (Done x, Suspend (Await c2)) -> coupleFiniteSequential (return x) (c2 Nothing)
- (Suspend (LeftF (Yield x c1)), Suspend (Await c2)) -> coupleFiniteSequential c1 (c2 $ Just x)
- (Suspend (LeftF (Yield _ c1)), Done y) -> coupleFiniteSequential c1 (return y)
- (Suspend (RightF (Await c1)), Suspend s2@Await{}) -> coupleFiniteSequential (c1 True) (suspend s2)
- (Suspend (RightF (Await c1)), Done y) -> coupleFiniteSequential (c1 False) (return y)
-
--- coupleNested :: (Functor s, Monad m) =>
--- Trampoline (EitherFunctor s (Yield a)) m x
--- -> Trampoline (EitherFunctor s (Await (Maybe a))) m y -> Trampoline s m (x, y)
-
--- coupleNested t1 t2 =
--- lift (liftM2 (,) (bounce t1) (bounce t2))
--- >>= \(s1, s2)-> case (s1, s2)
--- of (Done x, Done y) -> return (x, y)
--- (Suspend (RightF (Yield _ c1)), Done y) -> coupleNested c1 (return y)
--- (Done x, Suspend (RightF (Await c2))) -> coupleNested (return x) (c2 Nothing)
--- (Suspend (RightF (Yield x c1)), Suspend (RightF (Await c2))) -> coupleNested c1 (c2 $ Just x)
--- (Suspend (LeftF s), Done y) -> suspend (fmap (flip coupleNested (return y)) s)
--- (Done x, Suspend (LeftF s)) -> suspend (fmap (coupleNested (return x)) s)
--- (Suspend (LeftF s1), Suspend (LeftF s2)) -> suspend (fmap (coupleNested $ suspend $ LeftF s1) s2)
-
-coupleNestedFinite :: (Functor s, ParallelizableMonad m) =>
- Trampoline (SinkFunctor s a) m x -> Trampoline (SourceFunctor s a) m y -> Trampoline s m (x, y)
-coupleNestedFinite t1 t2 = lift (parallelize (bounce t1) (bounce t2))
- >>= stepCouple coupleNestedFinite
-
-coupleNestedFiniteSequential :: (Functor s, Monad m) =>
- Trampoline (SinkFunctor s a) m x
- -> Trampoline (SourceFunctor s a) m y
- -> Trampoline s m (x, y)
-coupleNestedFiniteSequential producer consumer =
- pogoStickNested resolveProducerConsumer (coupleNested producer consumer)
--- coupleNestedFiniteSequential t1 t2 = lift (liftM2 (,) (bounce t1) (bounce t2))
--- >>= stepCouple coupleNestedFiniteSequential
-
-stepCouple :: (Functor s, Monad m) =>
- (Trampoline (EitherFunctor s (TryYield a)) m x
- -> Trampoline (EitherFunctor s (Await (Maybe a))) m y
- -> Trampoline s m (x, y))
- -> (TrampolineState (EitherFunctor s (TryYield a)) m x,
- TrampolineState (EitherFunctor s (Await (Maybe a))) m y)
- -> Trampoline s m (x, y)
-stepCouple f couple = case couple
- of (Done x, Done y) -> return (x, y)
- (Done x, Suspend (RightF (Await c2))) -> f (return x) (c2 Nothing)
- (Suspend (RightF (LeftF (Yield _ c1))), Done y) -> f c1 (return y)
- (Suspend (RightF (LeftF (Yield x c1))), Suspend (RightF (Await c2))) -> f c1 (c2 $ Just x)
- (Suspend (RightF (RightF (Await c1))), Suspend s2@(RightF Await{})) -> f (c1 True) (suspend s2)
- (Suspend (RightF (RightF (Await c1))), Done y) -> f (c1 False) (return y)
- (Suspend (LeftF s), Done y) -> suspend (fmap (flip f (return y)) s)
- (Done x, Suspend (LeftF s)) -> suspend (fmap (f (return x)) s)
- (Suspend (LeftF s1), Suspend (LeftF s2)) -> suspend (fmap (f $ suspend $ LeftF s1) s2)
- (Suspend (LeftF s1), Suspend (RightF s2)) -> suspend (fmap (flip f (suspend $ RightF s2)) s1)
- (Suspend (RightF s1), Suspend (LeftF s2)) -> suspend (fmap (f (suspend $ RightF s1)) s2)
-
-local :: forall m l r x. (Functor r, Monad m) => Trampoline r m x -> Trampoline (EitherFunctor l r) m x
-local (Trampoline mr) = Trampoline (liftM inject mr)
- where inject :: TrampolineState r m x -> TrampolineState (EitherFunctor l r) m x
- inject (Done x) = Done x
- inject (Suspend r) = Suspend (RightF $ fmap local r)
-
-out :: forall m l r x. (Functor l, Monad m) => Trampoline l m x -> Trampoline (EitherFunctor l r) m x
-out (Trampoline ml) = Trampoline (liftM inject ml)
- where inject :: TrampolineState l m x -> TrampolineState (EitherFunctor l r) m x
- inject (Done x) = Done x
- inject (Suspend l) = Suspend (LeftF $ fmap out l)
-
--- | Class of functors that can be lifted.
-class (Functor a, Functor d) => AncestorFunctor a d where
- -- | Convert the ancestor functor into its descendant. The descendant functor typically contains the ancestor.
- liftFunctor :: a x -> d x
-
-instance Functor a => AncestorFunctor a a where
- liftFunctor = id
-instance (Functor a, Functor d', Functor d, d ~ EitherFunctor d' s, AncestorFunctor a d') => AncestorFunctor a d where
- liftFunctor = LeftF . (liftFunctor :: a x -> d' x)
-
-liftOut :: forall m a d x. (Monad m, Functor a, AncestorFunctor a d) => Trampoline a m x -> Trampoline d m x
-liftOut (Trampoline ma) = Trampoline (liftM inject ma)
- where inject :: TrampolineState a m x -> TrampolineState d m x
- inject (Done x) = Done x
- inject (Suspend a) = Suspend (liftFunctor $ fmap liftOut a)
-
-type SourceFunctor a x = EitherFunctor a (Await (Maybe x))
-type SinkFunctor a x = EitherFunctor a (TryYield x)
-
--- | A 'Sink' can be used to yield values from any nested `Trampoline` computation whose functor provably descends from
--- the functor /a/. It's the write-only end of a 'Pipe' communication channel.
-data Sink (m :: * -> *) a x =
- Sink
- {
- -- | Function 'put' tries to put a value into the given `Sink`. The intervening 'Trampoline' computations suspend up
- -- to the 'pipe' invocation that has created the argument sink. The result of 'put' indicates whether the operation
- -- succeded.
- put :: forall d. (AncestorFunctor a d) => x -> Trampoline d m Bool,
- -- | Function 'canPut' checks if the argument `Sink` accepts values, i.e., whether a 'put' operation would succeed on
- -- the sink.
- canPut :: forall d. (AncestorFunctor a d) => Trampoline d m Bool
- }
-
--- | A 'Source' can be used to read values into any nested `Trampoline` computation whose functor provably descends from
--- the functor /a/. It's the read-only end of a 'Pipe' communication channel.
-newtype Source (m :: * -> *) a x =
- Source
- {
- -- | Function 'get' tries to get a value from the given 'Source' argument. The intervening 'Trampoline' computations
- -- suspend all the way to the 'pipe' function invocation that created the source. The function returns 'Nothing' if
- -- the argument source is empty.
- get :: forall d. (AncestorFunctor a d) => Trampoline d m (Maybe x)
- }
-
--- | Converts a 'Sink' on the ancestor functor /a/ into a sink on the descendant functor /d/.
-liftSink :: forall m a d x. (Monad m, AncestorFunctor a d) => Sink m a x -> Sink m d x
-liftSink s = Sink {put= liftOut . (put s :: x -> Trampoline d m Bool),
- canPut= liftOut (canPut s :: Trampoline d m Bool)}
-
--- | Converts a 'Source' on the ancestor functor /a/ into a source on the descendant functor /d/.
-liftSource :: forall m a d x. (Monad m, AncestorFunctor a d) => Source m a x -> Source m d x
-liftSource s = Source {get= liftOut (get s :: Trampoline d m (Maybe x))}
-
--- | The 'pipe' function splits the computation into two concurrent parts, /producer/ and /consumer/. The /producer/ is
--- given a 'Sink' to put values into, and /consumer/ a 'Source' to get those values from. Once producer and consumer
--- both complete, 'pipe' returns their paired results.
-pipe :: forall m a a1 a2 x r1 r2. (Monad m, Functor a, a1 ~ SinkFunctor a x, a2 ~ SourceFunctor a x) =>
- (Sink m a1 x -> Trampoline a1 m r1) -> (Source m a2 x -> Trampoline a2 m r2) -> Trampoline a m (r1, r2)
-pipe producer consumer = coupleNestedFiniteSequential (producer sink) (consumer source) where
- sink = Sink {put= liftOut . (local . tryYield :: x -> Trampoline a1 m Bool),
- canPut= liftOut (local canYield :: Trampoline a1 m Bool)} :: Sink m a1 x
- source = Source (liftOut (local await :: Trampoline a2 m (Maybe x))) :: Source m a2 x
-
--- | The 'pipeP' function is equivalent to 'pipe', except the /producer/ and /consumer/ are run in parallel.
-pipeP :: forall m a a1 a2 x r1 r2. (ParallelizableMonad m, Functor a, a1 ~ SinkFunctor a x, a2 ~ SourceFunctor a x) =>
- (Sink m a1 x -> Trampoline a1 m r1) -> (Source m a2 x -> Trampoline a2 m r2) -> Trampoline a m (r1, r2)
-pipeP producer consumer = coupleNestedFinite (producer sink) (consumer source) where
- sink = Sink {put= liftOut . (local . tryYield :: x -> Trampoline a1 m Bool),
- canPut= liftOut (local canYield :: Trampoline a1 m Bool)} :: Sink m a1 x
- source = Source (liftOut (local await :: Trampoline a2 m (Maybe x))) :: Source m a2 x
-
--- | The 'pipePS' function acts either as 'pipeP' or as 'pipe', depending on the argument /parallel/.
-pipePS :: forall m a a1 a2 x r1 r2. (ParallelizableMonad m, Functor a, a1 ~ SinkFunctor a x, a2 ~ SourceFunctor a x) =>
- Bool -> (Sink m a1 x -> Trampoline a1 m r1) -> (Source m a2 x -> Trampoline a2 m r2) ->
- Trampoline a m (r1, r2)
-pipePS parallel = if parallel then pipeP else pipe
-
-getSuccess :: forall m a d x . (Monad m, AncestorFunctor a d)
- => Source m a x -> (x -> Trampoline d m ()) {- ^ Success continuation -} -> Trampoline d m ()
-getSuccess source succeed = get source >>= maybe (return ()) succeed
-
--- | Function 'get'' assumes that the argument source is not empty and returns the value the source yields. If the
--- source is empty, the function throws an error.
-get' :: forall m a d x . (Monad m, AncestorFunctor a d) => Source m a x -> Trampoline d m x
-get' source = get source >>= maybe (error "get' failed") return
-
--- | 'pour' copies all data from the /source/ argument into the /sink/ argument, as long as there is anything to copy
--- and the sink accepts it.
-pour :: forall m a1 a2 d x . (Monad m, AncestorFunctor a1 d, AncestorFunctor a2 d)
- => Source m a1 x -> Sink m a2 x -> Trampoline d m ()
-pour source sink = fill'
- where fill' = canPut sink >>= flip when (getSuccess source (\x-> put sink x >> fill'))
-
--- | 'pourMap' is like 'pour' that applies the function /f/ to each argument before passing it into the /sink/.
-pourMap :: forall m a1 a2 d x y . (Monad m, AncestorFunctor a1 d, AncestorFunctor a2 d)
- => (x -> y) -> Source m a1 x -> Sink m a2 y -> Trampoline d m ()
-pourMap f source sink = loop
- where loop = canPut sink >>= flip when (get source >>= maybe (return ()) (\x-> put sink (f x) >> loop))
-
--- | 'pourMapMaybe' is to 'pourMap' like 'Data.Maybe.mapMaybe' is to 'Data.List.Map'.
-pourMapMaybe :: forall m a1 a2 d x y . (Monad m, AncestorFunctor a1 d, AncestorFunctor a2 d)
- => (x -> Maybe y) -> Source m a1 x -> Sink m a2 y -> Trampoline d m ()
-pourMapMaybe f source sink = loop
- where loop = canPut sink >>= flip when (get source >>= maybe (return ()) (\x-> maybe (return False) (put sink) (f x) >> loop))
-
--- | 'tee' is similar to 'pour' except it distributes every input value from the /source/ arguments into both /sink1/
--- and /sink2/.
-tee :: forall m a1 a2 a3 d x . (Monad m, AncestorFunctor a1 d, AncestorFunctor a2 d, AncestorFunctor a3 d)
- => Source m a1 x -> Sink m a2 x -> Sink m a3 x -> Trampoline d m ()
-tee source sink1 sink2 = distribute
- where distribute = do c1 <- canPut sink1
- c2 <- canPut sink2
- when (c1 && c2)
- (get source >>= maybe (return ()) (\x-> put sink1 x >> put sink2 x >> distribute))
-
--- | 'putList' puts entire list into its /sink/ argument, as long as the sink accepts it. The remainder that wasn't
--- accepted by the sink is the result value.
-putList :: forall m a d x. (Monad m, AncestorFunctor a d) => [x] -> Sink m a x -> Trampoline d m [x]
-putList [] sink = return []
-putList l@(x:rest) sink = put sink x >>= cond (putList rest sink) (return l)
-
--- | 'getList' returns the list of all values generated by the source.
-getList :: forall m a d x. (Monad m, AncestorFunctor a d) => Source m a x -> Trampoline d m [x]
-getList source = getList' return
- where getList' f = get source >>= maybe (f []) (\x-> getList' (f . (x:)))
-
--- | 'consumeAndSuppress' consumes the entire source ignoring the values it generates.
-consumeAndSuppress :: forall m a d x. (Monad m, AncestorFunctor a d) => Source m a x -> Trampoline d m ()
-consumeAndSuppress source = get source
- >>= maybe (return ()) (const (consumeAndSuppress source))
-
--- | A utility function wrapping if-then-else, useful for handling monadic truth values
-cond :: a -> a -> Bool -> a
-cond x y test = if test then x else y
-
--- | A utility function, useful for handling monadic list values where empty list means success
-whenNull :: forall a m. Monad m => m [a] -> [a] -> m [a]
-whenNull action list = if null list then action else return list
-
--- | Like 'putList', except it puts the contents of the given 'Data.Sequence.Seq' into the sink.
-putQueue :: forall m a d x. (Monad m, AncestorFunctor a d) => Seq x -> Sink m a x -> Trampoline d m [x]
-putQueue q sink = putList (toList (viewl q)) sink
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3826.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3826.hs
deleted file mode 100644
index 39c597f69c..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3826.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module T3826 where
-
-class C a where
- type E a
- c :: E a -> a -> a
-
-data T a = T a
-
-instance C (T a) where
- type E (T a) = a
- c x (T _) = T x
-
-f t@(T x) = c x t
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3851.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T3851.hs
deleted file mode 100644
index 3b40db1bce..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T3851.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-{-# LANGUAGE GADTs, TypeFamilies #-}
-
-module T3851 where
-
-type family TF a :: * -> *
-type instance TF () = App (Equ ())
-
-data Equ ix ix' where Refl :: Equ ix ix
-data App f x = App (f x)
-
--- does not typecheck in 6.12.1 (but works in 6.10.4)
-bar :: TF () () -> ()
-bar (App Refl) = ()
-
--- does typecheck in 6.12.1 and 6.10.4
-ar :: App (Equ ()) () -> ()
-ar (App Refl) = ()
-
-------------------
-data family DF a :: * -> *
-data instance DF () a = D (App (Equ ()) a)
-
-bar_df :: DF () () -> ()
-bar_df (D (App Refl)) = ()
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4120.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4120.hs
deleted file mode 100644
index 57dd21a39b..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4120.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE Rank2Types, TypeFamilies #-}
-
--- Unification yielding a coercion under a forall
-
-module Data.Vector.Unboxed where
-
-import Control.Monad.ST ( ST )
-
-
-data MVector s a = MV
-data Vector a = V
-
-type family Mutable (v :: * -> *) :: * -> * -> *
-type instance Mutable Vector = MVector
-
-create :: (forall s. MVector s a) -> Int
-create = create1
--- Here we get Couldn't match expected type `forall s. MVector s a'
--- with actual type `forall s. Mutable Vector s a1'
--- Reason: when unifying under a for-all we don't solve type
--- equalities. Think more about this.
-
-create1 :: (forall s. Mutable Vector s a) -> Int
-create1 = error "urk"
-
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4120.stderr b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4120.stderr
deleted file mode 100644
index d957620b78..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4120.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-T4120.hs:17:10:
- Couldn't match expected type `forall s. MVector s a'
- with actual type `forall s. Mutable Vector s a0'
- Expected type: (forall s. MVector s a) -> Int
- Actual type: (forall s. Mutable Vector s a0) -> Int
- In the expression: create1
- In an equation for `create': create = create1
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4160.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4160.hs
deleted file mode 100644
index f13aafa103..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4160.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE FlexibleContexts, MultiParamTypeClasses, TypeFamilies #-}
-module Foo where
-
-data P f g r = f r :*: g r
-type family TrieMapT (f :: * -> *) :: * -> (* -> *) -> * -> *
-newtype PMap m1 (m2 :: * -> (* -> *) -> * -> *) k (a :: * -> *) ix = PMap (m1 k (m2 k a) ix)
-type instance TrieMapT (P f g) = PMap (TrieMapT f) (TrieMapT g)
-
-class TrieKeyT f m where
- unionT :: (TrieMapT f ~ m) => (f k -> a ix -> a ix -> a ix) ->
- m k a ix -> m k a ix -> m k a ix
- sizeT :: (TrieMapT f ~ m) => m k a ix -> Int
-
-instance (TrieKeyT f m1, TrieKeyT g m2) => TrieKeyT (P f g) (PMap m1 m2) where
- unionT f (PMap m1) (PMap m2) = PMap (uT (\ a -> unionT (\ b -> f (a :*: b))) m1 m2)
- where uT = unionT
- sizeT = error "urk"
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4178.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4178.hs
deleted file mode 100644
index b0a34b28e1..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4178.hs
+++ /dev/null
@@ -1,35 +0,0 @@
-{-# LANGUAGE
- FlexibleContexts,
- Rank2Types,
- TypeFamilies,
- MultiParamTypeClasses,
- FlexibleInstances #-}
-
--- See Trac #4178
-
-module T4178 where
-
-data True = T
-data False = F
-
-class Decide tf a b where
- type If tf a b
- nonFunctionalIf :: tf -> a -> b -> If tf a b
-
-instance Decide True a b where
- type If True a b = a
- nonFunctionalIf T a b = a
-
-instance Decide False a b where
- type If False a b = b
- nonFunctionalIf F a b = b
-
-useRank2 :: (forall a . a -> b) -> b
-useRank2 f = f "foo"
-
-hasTrouble a = nonFunctionalIf F a (2 :: Int)
-blurg = useRank2 hasTrouble
-
-hasNoTrouble :: a -> Int
-hasNoTrouble = hasTrouble
-blurg2 = useRank2 hasNoTrouble
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4200.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4200.hs
deleted file mode 100644
index 0d0e23a419..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4200.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module T4200 where
-
-class C a where
- type In a :: *
- op :: In a -> Int
-
--- Should be ok; no -XUndecidableInstances required
-instance (In c ~ Int) => C [c] where
- type In [c] = In c
- op x = 3
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4338.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4338.hs
deleted file mode 100644
index 6fa2ae85ac..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4338.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, TypeFamilies, FlexibleContexts #-}
-
-module Main where
-
-class (There a ~ b, BackAgain b ~ a) => Foo a b where
- type There a
- type BackAgain b
- there :: a -> b
- back :: b -> a
- tickle :: b -> b
-
-instance Foo Char Int where
- type There Char = Int
- type BackAgain Int = Char
- there = fromEnum
- back = toEnum
- tickle = (+1)
-
-test :: (Foo a b) => a -> a
-test = back . tickle . there
-
-main :: IO ()
-main = print $ test 'F'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4356.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4356.hs
deleted file mode 100644
index 400314eeb2..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4356.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-module T4356 where
-
-type family T t :: * -> * -> *
-type instance T Bool = (->)
-
-f :: T Bool Bool Bool
-f = not
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4358.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4358.hs
deleted file mode 100644
index 92ac3a743b..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4358.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TypeFamilies, Rank2Types, FlexibleContexts #-}
-
-module T4358 where
-
-type family T a
-
-t2 :: forall a. ((T a ~ a) => a) -> a
-t2 = t
-
-t :: forall a. ((T a ~ a) => a) -> a
-t = undefined
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4484.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4484.hs
deleted file mode 100644
index 94a76ee7d4..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4484.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE TypeFamilies, EmptyDataDecls, GADTs #-}
-
-module T4484 where
-
-type family F f :: *
-
-data Id c = Id
-type instance F (Id c) = c
-
-data C :: * -> * where
- C :: f -> C (W (F f))
-
-data W :: * -> *
-
-fails :: C a -> C a
-fails (C _)
- = -- We know (W (F f) ~ a)
- C Id -- We need (a ~ W (F (Id beta)))
- -- ie (a ~ W beta)
- -- Use the equality; we need
- -- (W (F f) ~ W beta)
- -- ie (F f ~ beta)
- -- Solve with beta := f
-
-works :: C (W a) -> C (W a)
-works (C _)
- = -- We know (W (F f) ~ W a)
- C Id -- We need (W a ~ W (F (Id beta)))
- -- ie (W a ~ W beta)
- -- Solve with beta := a
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4492.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4492.hs
deleted file mode 100644
index 0c01cbc973..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4492.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TypeFamilies, RankNTypes #-}
-
-module T4492 where
-
-type family F a b
-type instance F (Maybe a) b = b -> F a b
-
-class C a where
- go :: (forall a. Maybe a -> b -> a) -> a -> F a b
-
-instance C a => C (Maybe a) where
- go f a b = go f (f a b)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4494.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4494.hs
deleted file mode 100644
index 52e1435272..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4494.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TypeFamilies, RankNTypes, FlexibleContexts, ScopedTypeVariables #-}
-
-module T4494 where
-
-type family H s
-type family F v
-
-bar :: (forall t. Maybe t -> a) -> H a -> Int
-bar = error "urk"
-
-call :: F Bool -> Int
-call x = bar (\_ -> x) (undefined :: H (F Bool))
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4497.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4497.hs
deleted file mode 100644
index 57d3d48ca4..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4497.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE FlexibleContexts, MultiParamTypeClasses, TypeFamilies #-}
-
-module T4497 where
-
-norm2PropR a = twiddle (norm2 a) a
-
-twiddle :: Normed a => a -> a -> Double
-twiddle a b = undefined
-
-norm2 :: e -> RealOf e
-norm2 = undefined
-
-class (Num (RealOf t)) => Normed t
-
-type family RealOf x
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4935.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4935.hs
deleted file mode 100644
index 2c9d16a9b8..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4935.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-{-# LANGUAGE TypeFamilies, Rank2Types, ScopedTypeVariables #-}
-module T4935 where
-
-import Control.Applicative
-
-data TFalse
-data TTrue
-
-data Tagged b a = Tagged {at :: a}
-type At b = forall a. Tagged b a -> a
-
-class TBool b where onTBool :: (b ~ TFalse => c) -> (b ~ TTrue => c) -> Tagged b c
-instance TBool TFalse where onTBool f _ = Tagged $ f
-instance TBool TTrue where onTBool _ t = Tagged $ t
-
-type family CondV c f t
-type instance CondV TFalse f t = f
-type instance CondV TTrue f t = t
-
-newtype Cond c f a = Cond {getCond :: CondV c a (f a)}
-cond :: forall c f a g. (TBool c, Functor g) => (c ~ TFalse => g a) -> (c ~ TTrue => g (f a)) -> g (Cond c f a)
-cond f t = (at :: At c) $ onTBool (fmap Cond f) (fmap Cond t)
-condMap :: (TBool c, Functor f) => (a -> b) -> Cond c f a -> Cond c f b
-condMap g (Cond n) = cond g (fmap g) n
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4981-V1.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4981-V1.hs
deleted file mode 100644
index 14f675ca59..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4981-V1.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-{-# LANGUAGE CPP, TypeFamilies, FlexibleContexts #-}
-module Class ( cleverNamedResolve ) where
-
-data FL p = FL p
-
-class PatchInspect p where
-instance PatchInspect p => PatchInspect (FL p) where
-
-type family PrimOf p
-type instance PrimOf (FL p) = PrimOf p
-
-data WithName prim = WithName prim
-
-instance PatchInspect prim => PatchInspect (WithName prim) where
-
-class (PatchInspect (PrimOf p)) => Conflict p where
- resolveConflicts :: p -> PrimOf p
-
-instance Conflict p => Conflict (FL p) where
- resolveConflicts = undefined
-
-type family OnPrim p
-
-class FromPrims p where
-
-instance FromPrims (FL p) where
-
-joinPatches :: FromPrims p => p -> p
-joinPatches = id
-
-cleverNamedResolve :: (Conflict (OnPrim p)
- ,PrimOf (OnPrim p) ~ WithName (PrimOf p))
- => FL (OnPrim p) -> WithName (PrimOf p)
-cleverNamedResolve = resolveConflicts . joinPatches
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4981-V2.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4981-V2.hs
deleted file mode 100644
index d18d67e91c..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4981-V2.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE CPP, TypeFamilies, FlexibleContexts #-}
-module Class ( cleverNamedResolve ) where
-
-data FL p = FL p
-
-class PatchInspect p where
-instance PatchInspect p => PatchInspect (FL p) where
-
-type family PrimOf p
-type instance PrimOf (FL p) = PrimOf p
-
-data WithName prim = WithName prim
-
-instance PatchInspect prim => PatchInspect (WithName prim) where
-
-class (PatchInspect (PrimOf p)) => Conflict p where
- resolveConflicts :: p -> PrimOf p
-
-instance Conflict p => Conflict (FL p) where
- resolveConflicts = undefined
-
-type family OnPrim p
-
-joinPatches :: FL p -> FL p
-
-joinPatches = id
-
-cleverNamedResolve :: (Conflict (OnPrim p)
- ,PrimOf (OnPrim p) ~ WithName (PrimOf p))
- => FL (OnPrim p) -> WithName (PrimOf p)
-cleverNamedResolve = resolveConflicts . joinPatches
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4981-V3.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T4981-V3.hs
deleted file mode 100644
index 9e0eda54eb..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T4981-V3.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE CPP, TypeFamilies, FlexibleContexts #-}
-module Class ( cleverNamedResolve ) where
-
-data FL p = FL p
-
-class PatchInspect p where
-instance PatchInspect p => PatchInspect (FL p) where
-
-type family PrimOf p
-type instance PrimOf (FL p) = PrimOf p
-
-data WithName prim = WithName prim
-
-instance PatchInspect prim => PatchInspect (WithName prim) where
-
-class (PatchInspect (PrimOf p)) => Conflict p where
- resolveConflicts :: p -> PrimOf p
-
-instance Conflict p => Conflict (FL p) where
- resolveConflicts = undefined
-
-type family OnPrim p
-
-joinPatches :: p -> p
-
-joinPatches = id
-
-cleverNamedResolve :: (Conflict (OnPrim p)
- ,PrimOf (OnPrim p) ~ WithName (PrimOf p))
- => FL (OnPrim p) -> WithName (PrimOf p)
-cleverNamedResolve = resolveConflicts . joinPatches
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/T5002.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/T5002.hs
deleted file mode 100644
index cfc82d559e..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/T5002.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-{-# LANGUAGE TypeFamilies, FlexibleInstances, UndecidableInstances, FlexibleContexts #-}
-
-class A a
-class B a where b :: a -> ()
-instance A a => B a where b = undefined
-
-newtype Y a = Y (a -> ())
-
-okIn701 :: B a => Y a
-okIn701 = wrap $ const () . b
-
-okIn702 :: B a => Y a
-okIn702 = wrap $ b
-
-okInBoth :: B a => Y a
-okInBoth = Y $ const () . b
-
-class Wrapper a where
- type Wrapped a
- wrap :: Wrapped a -> a
-instance Wrapper (Y a) where
- type Wrapped (Y a) = a -> ()
- wrap = Y
-
-fromTicket3018 :: Eq [a] => a -> ()
-fromTicket3018 x = let {g :: Int -> Int; g = [x]==[x] `seq` id} in ()
-
-main = undefined
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/TF_GADT.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/TF_GADT.hs
deleted file mode 100644
index 345b5748e0..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/TF_GADT.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE GADTs, TypeFamilies #-}
-
-module TF_GADT where
-
--- Check that type families can be declared in GADT syntax
--- and indeed *be* GADTs
-
-data family T a
-
-data instance T [a] where
- T1 :: a -> T [a]
-
-
-data instance T (Maybe a) where
- T3 :: Int -> T (Maybe Int)
- T4 :: a -> b -> T (Maybe (a,b))
-
-
-f :: a -> T (Maybe a) -> T (Maybe a)
-f x (T3 i) = T3 x
-f x (T4 p q) = T4 p (snd x)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/all.T b/testsuite/tests/ghc-regress/indexed-types/should_compile/all.T
deleted file mode 100644
index 241bbe49c6..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/all.T
+++ /dev/null
@@ -1,184 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-# Keep optimised tests, so we test coercion optimisation
-setTestOpts(omit_ways(['optasm', 'optllvm', 'hpc']))
-
-test('Simple1', normal, compile, [''])
-test('Simple2', normal, compile, [''])
-test('Simple3', normal, compile, [''])
-test('Simple4', normal, compile, [''])
-test('Simple5', normal, compile, [''])
-test('Simple6', normal, compile, [''])
-test('Simple7', normal, compile, [''])
-test('Simple8', normal, compile, [''])
-test('Simple9', normal, compile, [''])
-test('Simple10', normal, compile, [''])
-test('Simple11', normal, compile, [''])
-test('Simple12', normal, compile, [''])
-test('Simple13', normal, compile, [''])
-test('Simple14', normal, compile_fail, [''])
-test('Simple15', normal, compile, [''])
-test('Simple16', normal, compile, [''])
-test('Simple17', normal, compile, [''])
-test('Simple18', normal, compile, [''])
-test('Simple19', normal, compile, [''])
-test('Simple20', expect_broken(4296), compile, [''])
-test('Simple21', normal, compile, [''])
-test('Simple22', normal, compile, [''])
-test('Simple23', normal, compile, [''])
-test('Simple24', normal, compile, [''])
-
-test('RelaxedExamples', normal, compile, [''])
-test('NonLinearLHS', normal, compile, [''])
-
-test('ind1', normal, compile, [''])
-test('ind2',
- extra_clean(['Ind2_help.hi', 'Ind2_help.o']),
- multimod_compile,
- ['ind2', '-v0'])
-test('impexp',
- extra_clean(['Exp.hi', 'Exp.o', 'Imp.hi', 'Imp.o']),
- multimod_compile,
- ['Imp', '-w -no-hs-main -c'])
-
-test('ATLoop',
- extra_clean(['ATLoop_help.o','ATLoop_help.hi']),
- multimod_compile,
- ['ATLoop.hs','-v0'])
-
-test('Deriving', normal, compile, [''])
-test('DerivingNewType', expect_fail, compile, [''])
-test('Records', normal, compile, [''])
-
-# The point about this test is that it compiles NewTyCo1 and NewTyCo2
-# *separately*
-#
-test('NewTyCo',
- extra_clean(['NewTyCo1.o', 'NewTyCo1.hi', 'NewTyCo2.o', 'NewTyCo2.hi']),
- run_command,
- ['$MAKE -s --no-print-directory NewTyCo'])
-
-test('Infix', normal, compile, [''])
-test('Kind', normal, compile, [''])
-
-test('GADT1', normal, compile, [''])
-test('GADT2', normal, compile, [''])
-test('GADT3', normal, compile, [''])
-test('GADT4', normal, compile, [''])
-test('GADT5', normal, compile, [''])
-test('GADT6', normal, compile, [''])
-test('GADT7', normal, compile, [''])
-test('GADT8', normal, compile, [''])
-test('GADT9', normal, compile, [''])
-test('GADT10', normal, compile, [''])
-test('GADT11', normal, compile, [''])
-test('GADT12', normal, compile, [''])
-test('GADT13', normal, compile, [''])
-test('GADT14', normal, compile, [''])
-
-test('Class1', normal, compile, [''])
-test('Class2', normal, compile, [''])
-test('Class3', normal, compile, [''])
-
-test('Refl', normal, compile, [''])
-test('Refl2', normal, compile, [''])
-
-test('Rules1', normal, compile, [''])
-
-test('Numerals', normal, compile, [''])
-
-test('ColInference', normal, compile, [''])
-test('ColInference2', normal, compile, [''])
-test('ColInference3', normal, compile, [''])
-test('ColInference4', normal, compile, [''])
-test('ColInference5', normal, compile, [''])
-test('ColInference6', normal, compile, [''])
-
-test('Col', normal, compile, [''])
-test('Col2', normal, compile, [''])
-
-test('ColGivenCheck', normal, compile, [''])
-test('ColGivenCheck2', normal, compile, [''])
-
-test('InstEqContext', normal, compile, [''])
-test('InstEqContext2', normal, compile, [''])
-test('InstEqContext3', normal, compile, [''])
-
-test('InstContextNorm', normal, compile, [''])
-
-test('GivenCheck', normal, compile, [''])
-test('GivenCheckSwap', normal, compile, [''])
-test('GivenCheckDecomp', normal, compile, [''])
-test('GivenCheckTop', normal, compile, [''])
-
-# A very delicate test
-test('Gentle', normal, compile, [''])
-
-test('T1981', normal, compile, [''])
-test('T2238', normal, compile, [''])
-test('OversatDecomp', normal, compile, [''])
-
-test('T2219', normal, compile, [''])
-test('T2627', normal, compile, [''])
-test('T2448', normal, compile, [''])
-test('T2291', normal, compile, [''])
-test('T2639', normal, compile, [''])
-test('T2944', normal, compile, [''])
-test('T3017', normal, compile, ['-ddump-types'])
-test('TF_GADT', normal, compile, [''])
-test('T2203b', normal, compile, [''])
-test('T2767', normal, compile, [''])
-test('T3208a', normal, compile, [''])
-test('T3208b', normal, compile_fail, [''])
-test('T3418', normal, compile, [''])
-test('T3423', normal, compile, [''])
-test('T2850', normal, compile, [''])
-test('T3220', normal, compile, [''])
-test('T3590', normal, compile, [''])
-test('CoTest3', normal, compile, [''])
-test('Roman1', normal, compile, [''])
-test('T4160', normal, compile, [''])
-test('IndTypesPerf',
- [ # expect_broken(5224),
- # unbroken temporarily: #5227
- extra_clean(['IndTypesPerf.o', 'IndTypesPerf.hi',
- 'IndTypesPerfMerge.o', 'IndTypesPerfMerge.hi'])
- ] ,
- run_command,
- ['$MAKE -s --no-print-directory IndTypesPerf'])
-
-test('T4120', normal, compile_fail, [''])
-test('T3787', reqlib('mtl'), compile, [''])
-test('T3826', normal, compile, [''])
-test('T4200', normal, compile, [''])
-test('T3851', normal, compile, [''])
-test('T4178', normal, compile, [''])
-test('T3023', normal, compile, [''])
-test('T4358', normal, compile, [''])
-test('T4356', normal, compile, [''])
-test('T4484', normal, compile, [''])
-test('T4492', normal, compile, [''])
-test('T4494', normal, compile, [''])
-test('DataFamDeriv', normal, compile, [''])
-test('T1769', if_compiler_lt('ghc', '7.1', expect_fail), compile, [''])
-test('T4497', normal, compile, [''])
-test('T3484', normal, compile, [''])
-test('T3460', normal, compile, [''])
-test('T4935', normal, compile, [''])
-
-test('T4981-V1', normal, compile, [''])
-test('T4981-V2', normal, compile, [''])
-test('T4981-V3', normal, compile, [''])
-
-test('T5002', normal, compile, [''])
-test('PushedInAsGivens', normal, compile, [''])
-
-# Superclass equalities
-test('T4338', normal, compile, [''])
-test('T2715', normal, compile, [''])
-test('T2102', normal, compile, [''])
-test('ClassEqContext', normal, compile, [''])
-test('ClassEqContext2', normal, compile, [''])
-test('ClassEqContext3', normal, compile, [''])
-test('HO', normal, compile, [''])
-
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/impexp.stderr b/testsuite/tests/ghc-regress/indexed-types/should_compile/impexp.stderr
deleted file mode 100644
index 7ebebe9e03..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/impexp.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-[1 of 2] Compiling Exp ( Exp.hs, Exp.o )
-[2 of 2] Compiling Imp ( Imp.hs, Imp.o )
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ind1.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ind1.hs
deleted file mode 100644
index 48203a1519..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ind1.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
--- Test type families
-
-module ShouldCompile where
-
-data family T a :: *
-
-data instance T Bool = TBool !Bool
-
-class C a where
- foo :: (a -> a) -> T a -> T a
-
-instance C Bool where
- foo f (TBool x) = TBool $ f (not x)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_compile/ind2.hs b/testsuite/tests/ghc-regress/indexed-types/should_compile/ind2.hs
deleted file mode 100644
index de5d9d6a86..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_compile/ind2.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldCompile where
-
-import Ind2_help(C(..))
-
-zipT :: (C a, C b) => T a -> T b -> T (a,b)
-zipT x y = mkT (unT x, unT y)
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/DerivUnsatFam.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/DerivUnsatFam.hs
deleted file mode 100644
index d401356326..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/DerivUnsatFam.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TypeFamilies, StandaloneDeriving #-}
-
--- Crashed 6.12
-
-module T1769 where
-
-data family T a
-deriving instance Functor T
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/DerivUnsatFam.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/DerivUnsatFam.stderr
deleted file mode 100644
index 63c1262147..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/DerivUnsatFam.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-DerivUnsatFam.hs:8:1:
- Can't make a derived instance of `Functor T':
- Unsaturated data family application
- In the stand-alone deriving instance for `Functor T'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/GADTwrong1.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/GADTwrong1.hs
deleted file mode 100644
index 7295090439..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/GADTwrong1.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs, RankNTypes, ScopedTypeVariables #-}
-
-module ShouldFail where
-
-type family Const a
-type instance Const a = ()
-
-data T a where T :: a -> T (Const a)
-
-coerce :: forall a b . a -> b
-coerce x = case T x :: T (Const b) of
- T y -> y
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/GADTwrong1.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/GADTwrong1.stderr
deleted file mode 100644
index e565aa6cde..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/GADTwrong1.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-
-GADTwrong1.hs:12:19:
- Could not deduce (a1 ~ b)
- from the context (() ~ Const a1)
- bound by a pattern with constructor
- T :: forall a. a -> T (Const a),
- in a case alternative
- at GADTwrong1.hs:12:12-14
- `a1' is a rigid type variable bound by
- a pattern with constructor
- T :: forall a. a -> T (Const a),
- in a case alternative
- at GADTwrong1.hs:12:12
- `b' is a rigid type variable bound by
- the type signature for coerce :: a -> b at GADTwrong1.hs:11:1
- In the expression: y
- In a case alternative: T y -> y
- In the expression: case T x :: T (Const b) of { T y -> y }
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/Makefile b/testsuite/tests/ghc-regress/indexed-types/should_fail/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/NoMatchErr.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/NoMatchErr.hs
deleted file mode 100644
index 304e11613e..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/NoMatchErr.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE NoMonomorphismRestriction #-}
-{-# LANGUAGE TypeFamilies #-}
-
--- Type error message looks like
--- TF.hs:12:11:
--- Couldn't match expected type `Memo d'
--- against inferred type `Memo d1'
--- NB: `Memo' is a (non-injective) type function
---
--- Note the "NB", which helps point out the problem
-
-module Foo where
-
-class Fun d where
- type Memo d :: * -> *
- abst :: (d -> a) -> Memo d a
- appl :: Memo d a -> (d -> a)
-
-f :: (Fun d) => Memo d a -> Memo d a -- (1)
-f = abst . appl
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/NoMatchErr.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/NoMatchErr.stderr
deleted file mode 100644
index 38c8cf6b2f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/NoMatchErr.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-NoMatchErr.hs:20:12:
- Could not deduce (Memo d0 ~ Memo d)
- from the context (Fun d)
- bound by the type signature for f :: Fun d => Memo d a -> Memo d a
- at NoMatchErr.hs:20:1-15
- NB: `Memo' is a type function, and may not be injective
- Expected type: Memo d a
- Actual type: Memo d0 a
- Expected type: Memo d a -> d0 -> a
- Actual type: Memo d0 a -> d0 -> a
- In the second argument of `(.)', namely `appl'
- In the expression: abst . appl
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/NonLinearSigErr.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/NonLinearSigErr.hs
deleted file mode 100644
index 34a9fd3ff6..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/NonLinearSigErr.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
--- This is actually perfectly ok!
-
-module NonLinearSigErr where
-
-type family E a b
-type instance E a (a :: *) = [a]
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/NonLinearSigErr.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/NonLinearSigErr.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/NonLinearSigErr.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/NotRelaxedExamples.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/NotRelaxedExamples.hs
deleted file mode 100644
index d41f86b3a1..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/NotRelaxedExamples.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module NotRelaxedExamples where
-
-type family F1 a
-type family F2 a
-type family F3 a
-
-type instance F1 Char = F1 (F1 Char)
-type instance F2 [x] = F2 [x]
-type instance F3 Bool = F3 [Char]
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/NotRelaxedExamples.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/NotRelaxedExamples.stderr
deleted file mode 100644
index dbc83696ee..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/NotRelaxedExamples.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-
-NotRelaxedExamples.hs:9:1:
- Nested type family application
- in the type family application: F1 (F1 Char)
- (Use -XUndecidableInstances to permit this)
- In the type synonym instance declaration for `F1'
-
-NotRelaxedExamples.hs:10:1:
- Application is no smaller than the instance head
- in the type family application: F2 [x]
- (Use -XUndecidableInstances to permit this)
- In the type synonym instance declaration for `F2'
-
-NotRelaxedExamples.hs:11:1:
- Application is no smaller than the instance head
- in the type family application: F3 [Char]
- (Use -XUndecidableInstances to permit this)
- In the type synonym instance declaration for `F3'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/Over.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/Over.stderr
deleted file mode 100644
index bb973eee08..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/Over.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-OverB.hs:7:15:
- Conflicting family instance declarations:
- data instance OverA.C [Int] [a] -- Defined at OverB.hs:7:15
- data instance OverA.C [a] [Int] -- Defined at OverC.hs:7:15
-
-OverB.hs:9:15:
- Conflicting family instance declarations:
- type instance OverA.D [Int] [a] -- Defined at OverB.hs:9:15
- type instance OverA.D [a] [Int] -- Defined at OverC.hs:9:15
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/OverA.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/OverA.hs
deleted file mode 100644
index 0f0573782f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/OverA.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module OverA (C, D)
-where
-
-data family C a b :: *
-
-type family D a b :: * \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/OverB.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/OverB.hs
deleted file mode 100644
index 6f1546d19f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/OverB.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module OverB
-where
-import OverA (C, D)
-
-data instance C [Int] [a] = CListList2
-
-type instance D [Int] [a] = Int \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/OverC.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/OverC.hs
deleted file mode 100644
index 01f82d9170..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/OverC.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module OverC
-where
-import OverA (C, D)
-
-data instance C [a] [Int] = C9ListList
-
-type instance D [a] [Int] = Char
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/OverD.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/OverD.hs
deleted file mode 100644
index 3bce8de55e..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/OverD.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module OverD where
-import OverB
-import OverC
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail10.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail10.hs
deleted file mode 100644
index 7235f67e02..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail10.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
-class C8 a where
- data S8 a :: * -> *
-
-instance C8 Int where
- data S8 Int a = S8Int a
-
--- must fail: extra arguments must be variables
-instance C8 Bool where
- data S8 Bool Char = S8Bool
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail10.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail10.stderr
deleted file mode 100644
index 5fe00056b3..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail10.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-SimpleFail10.hs:13:3:
- Arguments that do not correspond to a class parameter must be variables
- Instead of a variable, found Char
- In the associated type instance for `S8'
- In the instance declaration for `C8 Bool'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11a.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11a.hs
deleted file mode 100644
index 830b05fc75..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11a.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
-data family C9 a b :: *
-data instance C9 Int Int = C9IntInt
--- must fail: conflicting
-data instance C9 Int Int = C9IntInt2
-
-type family D9 a b :: *
-type instance D9 Int Int = Char
--- must fail: conflicting
-type instance D9 Int Int = Int
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11a.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11a.stderr
deleted file mode 100644
index 23a8fd957d..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11a.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-SimpleFail11a.hs:8:15:
- Conflicting family instance declarations:
- data instance C9 Int Int -- Defined at SimpleFail11a.hs:8:15-16
- data instance C9 Int Int -- Defined at SimpleFail11a.hs:6:15-16
-
-SimpleFail11a.hs:13:15:
- Conflicting family instance declarations:
- type instance D9 Int Int -- Defined at SimpleFail11a.hs:13:15-16
- type instance D9 Int Int -- Defined at SimpleFail11a.hs:11:15-16
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11b.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11b.hs
deleted file mode 100644
index f6aa7aa3b0..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11b.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
-data family C9 a b :: *
-data instance C9 Int Int = C9IntInt
-data instance C9 [a] Int = C9ListInt
--- must fail: conflicting
-data instance C9 [a] Int = C9ListInt2
-
-type family D9 a b :: *
-type instance D9 Int Int = Int
-type instance D9 [a] Int = [a]
--- must fail: conflicting
-type instance D9 [a] Int = Maybe a
-
-type instance D9 Int [a] = [a]
-type instance D9 Int [b] = [b] -- must not conflict!
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11b.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11b.stderr
deleted file mode 100644
index f32fe3a2bb..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11b.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-SimpleFail11b.hs:9:15:
- Conflicting family instance declarations:
- data instance C9 [a] Int -- Defined at SimpleFail11b.hs:9:15-16
- data instance C9 [a] Int -- Defined at SimpleFail11b.hs:7:15-16
-
-SimpleFail11b.hs:15:15:
- Conflicting family instance declarations:
- type instance D9 [a] Int -- Defined at SimpleFail11b.hs:15:15-16
- type instance D9 [a] Int -- Defined at SimpleFail11b.hs:13:15-16
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11c.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11c.hs
deleted file mode 100644
index 21d3f2b4ea..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11c.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
-data family C9 a b :: *
-data instance C9 Int Int = C9IntInt
-data instance C9 [a] Int = C9ListInt
--- must fail: conflicting
-data instance C9 [Int] Int = C9ListInt2
-
-type family D9 a b :: *
-type instance D9 Int Int = Int
-type instance D9 [a] Int = [a]
--- must fail: conflicting
-type instance D9 [Int] Int = [Bool]
-
-type family E9 a b :: *
-type instance E9 Int Int = Int
-type instance E9 [a] Int = [a]
-type instance E9 [Int] Int = [Int] -- does *not* conflict!
-type instance E9 b Int = b
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11c.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11c.stderr
deleted file mode 100644
index ccc897a626..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11c.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-SimpleFail11c.hs:7:15:
- Conflicting family instance declarations:
- data instance C9 [a] Int -- Defined at SimpleFail11c.hs:7:15-16
- data instance C9 [Int] Int -- Defined at SimpleFail11c.hs:9:15-16
-
-SimpleFail11c.hs:15:15:
- Conflicting family instance declarations:
- type instance D9 [Int] Int -- Defined at SimpleFail11c.hs:15:15-16
- type instance D9 [a] Int -- Defined at SimpleFail11c.hs:13:15-16
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11d.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11d.hs
deleted file mode 100644
index b0457a6933..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11d.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
-data family C9 a b :: *
-data instance C9 Int Int = C9IntInt
-data instance C9 [a] Int = C9ListInt
-data instance C9 [Int] [a] = C9ListList2
--- must fail: conflicting
-data instance C9 [a] [Int] = C9ListList
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11d.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11d.stderr
deleted file mode 100644
index 1847565329..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail11d.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-SimpleFail11d.hs:10:15:
- Conflicting family instance declarations:
- data instance C9 [a] [Int] -- Defined at SimpleFail11d.hs:10:15-16
- data instance C9 [Int] [a] -- Defined at SimpleFail11d.hs:8:15-16
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail12.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail12.hs
deleted file mode 100644
index 0c8ffefefe..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail12.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TypeFamilies, Rank2Types #-}
-
-
-module ShouldFail where
-
-type family C a :: *
--- must fail: rhs is not a tau type
-type instance C Int = forall a. [a]
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail12.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail12.stderr
deleted file mode 100644
index 24ac5f10a1..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail12.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-SimpleFail12.hs:8:1:
- Illegal polymorphic or qualified type: forall a. [a]
- In the type synonym instance declaration for `C'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail13.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail13.hs
deleted file mode 100644
index bc94e2115a..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail13.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
-type family C a :: *
-
-data family D a :: *
--- must fail: lhs contains a type family application
-data instance D [C a] = DC
-
-type family E a :: *
--- must fail: lhs contains a type family application
-type instance E [C a] = Int
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail13.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail13.stderr
deleted file mode 100644
index f87d4059ae..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail13.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-SimpleFail13.hs:9:1:
- Illegal type synonym family application in instance: [C a]
- In the data type instance declaration for `D'
-
-SimpleFail13.hs:13:1:
- Illegal type synonym family application in instance: [C a]
- In the type synonym instance declaration for `E'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail14.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail14.hs
deleted file mode 100644
index a25d81d3ba..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail14.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Simple14 where
-
-data T a = T (a~a)
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail14.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail14.stderr
deleted file mode 100644
index e11f9500fb..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail14.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-SimpleFail14.hs:5:15:
- Predicate used as a type: a ~ a
- In the type `a ~ a'
- In the definition of data constructor `T'
- In the data type declaration for `T'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail15.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail15.hs
deleted file mode 100644
index 586403937b..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail15.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
-foo :: (a,b) -> (a~b => t) -> (a,b)
-foo p x = p
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail15.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail15.stderr
deleted file mode 100644
index 8f97746510..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail15.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-SimpleFail15.hs:5:1:
- Illegal polymorphic or qualified type: a ~ b => t
- Perhaps you intended to use -XRankNTypes or -XRank2Types
- In the type signature for `foo':
- foo :: (a, b) -> (a ~ b => t) -> (a, b)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail16.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail16.hs
deleted file mode 100644
index fc70df1fd8..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail16.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
-type family F a
-
-foo :: p a -> p a
-foo x = x
-
-bar = foo (undefined :: F ())
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail16.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail16.stderr
deleted file mode 100644
index 0573e15aea..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail16.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-SimpleFail16.hs:10:12:
- Couldn't match type `F ()' with `p0 a0'
- In the first argument of `foo', namely `(undefined :: F ())'
- In the expression: foo (undefined :: F ())
- In an equation for `bar': bar = foo (undefined :: F ())
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1a.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1a.hs
deleted file mode 100644
index a87d5e515d..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1a.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-data family T1 a :: * -> *
-data instance T1 Int = T1_1 -- must fail: too few args
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1a.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1a.stderr
deleted file mode 100644
index 6bbbb32da9..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1a.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-SimpleFail1a.hs:4:1:
- Family instance has too few parameters; expected 2
- In the data type instance declaration for `T1'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1b.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1b.hs
deleted file mode 100644
index 71ede91143..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1b.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-data family T1 a :: * -> *
-data instance T1 Int Bool Char = T1_3 -- must fail: too many args
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1b.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1b.stderr
deleted file mode 100644
index e4db86bdf1..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail1b.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-SimpleFail1b.hs:4:1:
- Family instance has too many parameters: `T1'
- In the data type instance declaration for `T1'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2a.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2a.hs
deleted file mode 100644
index 011426fe3b..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2a.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Simple2a where
-
-class C a where
- data Sd a :: *
- data Sn a :: *
- type St a :: *
-
-instance C Int where
- data Sd a :: * -- must fail: parse error
- data Sd Int = SdC Char
- newtype Sn Int = SnC Char
- type St Int = Char
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2a.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2a.stderr
deleted file mode 100644
index 56e06e3145..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2a.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-SimpleFail2a.hs:11:11:
- Conflicting definitions for `Sd'
- Bound at: SimpleFail2a.hs:11:11-12
- SimpleFail2a.hs:12:11-12
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2b.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2b.hs
deleted file mode 100644
index 031b170a1a..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2b.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-class C a where
- data Sd a :: *
- data Sn a :: *
- type St a :: *
-
-instance C Int where
- data Sd Int = SdC1 Char -- must fail: conflicting
- data Sd Int = SdC2 Char -- declarations
- newtype Sn Int = SnC Char
- type St Int = Char
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2b.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2b.stderr
deleted file mode 100644
index cdb91dea58..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail2b.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-SimpleFail2b.hs:9:11:
- Conflicting definitions for `Sd'
- Bound at: SimpleFail2b.hs:9:11-12
- SimpleFail2b.hs:10:11-12
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail3a.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail3a.hs
deleted file mode 100644
index 87f68ab124..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail3a.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
-class C1 a where
- data S1 a :: *
-
--- must fail: wrong category of type instance
-instance C1 Int where
- type S1 Int = Bool
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail3a.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail3a.stderr
deleted file mode 100644
index 9a93d9fc90..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail3a.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-SimpleFail3a.hs:10:3:
- Wrong category of family instance; declaration was for a data type
- In the type synonym instance declaration for `S1'
- In the instance declaration for `C1 Int'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail3b.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail3b.stderr
deleted file mode 100644
index 419fe91492..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail3b.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-SimpleFail3b.hs:10:2:
- Wrong category of family instance; declaration was for a newtype
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail4.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail4.hs
deleted file mode 100644
index de674a39fd..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail4.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
--- must fail: defaults have no patterns
-class C2 a b where
- type S2 a :: *
- type S2 Int = Char
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail4.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail4.stderr
deleted file mode 100644
index 0f42d5a572..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail4.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-SimpleFail4.hs:8:3:
- Type declaration in a class must be a kind signature or synonym default:
- type instance S2 Int = Char
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5a.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5a.hs
deleted file mode 100644
index e50250d4e7..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5a.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
-class C3 a where
- data S3 a :: *
- data S3n a :: *
- foo3 :: a -> S3 a
- foo3n :: a -> S3n a
- bar3 :: S3 a -> a
- bar3n :: S3n a -> a
-
-instance C3 Int where
- data S3 Int = D3Int
- newtype S3n Int = D3Intn ()
- foo3 _ = D3Int
- foo3n _ = D3Intn ()
- bar3 D3Int = 1
- bar3n (D3Intn _) = 1
-
-instance C3 Char where
- data S3 Char = D3Char
- foo3 _ = D3Char
- bar3 D3Char = 'c'
-
-bar3' :: S3 Char -> Char
-bar3' D3Char = 'a'
-
--- must fail: signature too general
-bar3wrong :: S3 a -> a
-bar3wrong D3Int = 1
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5a.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5a.stderr
deleted file mode 100644
index 861ef5c869..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5a.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-SimpleFail5a.hs:31:11:
- Couldn't match type `a' with `Int'
- `a' is a rigid type variable bound by
- the type signature for bar3wrong :: S3 a -> a
- at SimpleFail5a.hs:31:1
- Expected type: S3 a
- Actual type: S3 Int
- In the pattern: D3Int
- In an equation for `bar3wrong': bar3wrong D3Int = 1
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5b.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5b.hs
deleted file mode 100644
index d05b3bcb36..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5b.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
-class C3 a where
- data S3 a :: *
- data S3n a :: *
- foo3 :: a -> S3 a
- foo3n :: a -> S3n a
- bar3 :: S3 a -> a
- bar3n :: S3n a -> a
-
-instance C3 Int where
- data S3 Int = D3Int
- newtype S3n Int = D3Intn ()
- foo3 _ = D3Int
- foo3n _ = D3Intn ()
- bar3 D3Int = 1
- bar3n (D3Intn _) = 1
-
-instance C3 Char where
- data S3 Char = D3Char
- foo3 _ = D3Char
- bar3 D3Char = 'c'
-
-bar3' :: S3 Char -> Char
-bar3' D3Char = 'a'
-
--- must fail: Can't match Int against Char
-bar3wrong' D3Int = 1
-bar3wrong' D3Char = 'a'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5b.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5b.stderr
deleted file mode 100644
index 5a9d279860..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail5b.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-SimpleFail5b.hs:31:12:
- Couldn't match expected type `Int' with actual type `Char'
- Expected type: S3 Int
- Actual type: S3 Char
- In the pattern: D3Char
- In an equation for `bar3wrong'': bar3wrong' D3Char = 'a'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail6.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail6.hs
deleted file mode 100644
index 8a39e6042d..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail6.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
--- must fail: Repeated type variable
-class C4 a where
- data S4 a a :: *
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail6.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail6.stderr
deleted file mode 100644
index c5c7e8a86a..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail6.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-SimpleFail6.hs:7:11: Illegal repeated type variable `a'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail7.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail7.hs
deleted file mode 100644
index 3d9a089381..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail7.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
--- must fail: AT must be in class instance
-class C5 a where
- data S5 a :: *
-data instance S5 Int = S5
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail7.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail7.stderr
deleted file mode 100644
index 04131efe33..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail7.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-SimpleFail7.hs:8:1:
- Associated type `S5' must be inside a class instance
- In the data type instance declaration for `S5'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail8.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail8.hs
deleted file mode 100644
index cefb00f5b0..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail8.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
--- must fail: C6 has no ATs S3 and Map
-class C6 a
-
-instance C6 Integer where
- data Map Integer v = MapInteger
- data S3 Integer = S3Integer
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail8.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail8.stderr
deleted file mode 100644
index 88c71b690c..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail8.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-SimpleFail8.hs:9:8: Not in scope: type constructor or class `Map'
-
-SimpleFail8.hs:10:8: Not in scope: type constructor or class `S3'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail9.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail9.hs
deleted file mode 100644
index d45c9830a4..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail9.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE TypeFamilies, MultiParamTypeClasses, FlexibleInstances #-}
-
-module ShouldFail where
-
-class C7 a b where
- data S7 b :: *
-
-instance C7 Char (a, Bool) where
- data S7 (a, Bool) = S7_1
-
--- must fail: type indexes don't match the instance types
-instance C7 Char (a, Int) where
- data S7 (b, Int) = S7_2
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail9.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail9.stderr
deleted file mode 100644
index fb04fa8af7..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SimpleFail9.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-SimpleFail9.hs:13:3:
- Type indexes must match class instance head
- Found `(b, Int)' but expected `(a, Int)'
- In the associated type instance for `S7'
- In the instance declaration for `C7 Char (a, Int)'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SkolemOccursLoop.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/SkolemOccursLoop.hs
deleted file mode 100644
index ce86d7beab..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SkolemOccursLoop.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE TypeFamilies, FlexibleContexts, EmptyDataDecls #-}
-
-module SkolemOccursLoop where
-
--- SkelemOccurs tests by Tom and Martin
-
-data T x
-type family F x
-type instance F [x] = [T (F x)]
-
-t :: a -> a -> Bool
-t _ _ = True
-
-f :: a -> F [a]
-f = undefined
-
-test1 :: (F [a] ~ a) => a -> Bool
-test1 x = t x (f x)
-
---
-
-data S a
-type family G x
-type instance G (S x, y) = S (G (x,y))
-
-g :: a -> G [a]
-g = undefined
-
-test2 :: (G (S a,a) ~ a) => a -> Bool
--- inferred: G [a] ~ a => a -> Bool
-test2 x = t x (g x)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/SkolemOccursLoop.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/SkolemOccursLoop.stderr
deleted file mode 100644
index 0900da8e33..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/SkolemOccursLoop.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-SkolemOccursLoop.hs:18:0:
- Couldn't match expected type `F a'
- against inferred type `[T (F (T (F a)))]'
- When generalising the type(s) for `test1'
-
-SkolemOccursLoop.hs:31:0:
- Couldn't match expected type `S (G (a, a))'
- against inferred type `G [S (G (a, a))]'
- When generalising the type(s) for `test2'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T1900.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T1900.hs
deleted file mode 100644
index efcfbc1391..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T1900.hs
+++ /dev/null
@@ -1,73 +0,0 @@
-{-# LANGUAGE TypeFamilies, FlexibleContexts #-}
-
-module Class4 where
-
-class (Eq (Depend s)) => Bug s where
- type Depend s
- trans :: Depend s -> Depend s
-
-instance Bug Int where
- type Depend Int = ()
- trans = (+1)
-
-check :: (Bug s) => Depend s -> Bool
-check d = d == trans d
-
-{-
- Given: (Bug s, Eq (Depend s))
- = (Bug s, Eq fsk, Depend s ~ fsk)
-
- Wanted: (Eq alpha, (invocation of == at alpha)
- Depend s ~ alpha (first arg of ==)
- Depend sigma ~ alpha (second arg of ==)
- Bug sigma, (invocation of trans at sigma)
- Depend sigma ~ Depend s (first arg of trans)
-
- {der}Eq (Depend sigma) (superclass of Bug sigma)
-
-==>
- Wanted: (Eq alpha, (invocation of == at alpha)
- Depend s ~ alpha (first arg of ==)
- Depend sigma ~ alpha (second arg of ==)
- Bug sigma, (invocation of trans at sigma)
- {der}Eq (Depend sigma) (superclass of Bug sigma)
-
-==>
- Wanted: (Eq alpha, (invocation of == at alpha)
- Depend s ~ alpha (first arg of ==)
- Depend sigma ~ alpha (second arg of ==)
- Bug sigma, (invocation of trans at sigma)
-
- {der}Eq uf_ahj
- Depend sigma ~ uf_ahj
-
-==> uf := alpha
- Wanted: (Eq alpha, (invocation of == at alpha)
- Depend s ~ alpha (first arg of ==)
- Depend sigma ~ alpha (second arg of ==)
- Bug sigma, (invocation of trans at sigma)
- {der}Eq alpha)
-==> discharge Eq alpha from {der}
- Wanted: (Depend s ~ alpha (first arg of ==)
- Depend sigma ~ alpha (second arg of ==)
- Bug sigma, (invocation of trans at sigma)
- {der}Eq alpha)
-
-==> use given Depend s ~ fsk
- Wanted: (alpha ~ fsk
- Depend sigma ~ alpha (second arg of ==)
- Bug sigma, (invocation of trans at sigma)
- {der}Eq alpha)
-
-==> alpha := fsk
- Wanted: ({given}alpha ~ fsk
- Depend sigma ~ alpha (second arg of ==)
- Bug sigma, (invocation of trans at sigma)
- {der}Eq fsk)
-
-==> discharge {der} Eq fsk
- Wanted: ({given}uf ~ fsk
- Depend sigma ~ uf (second arg of ==)
- Bug sigma, (invocation of trans at sigma)
-
--}
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T1900.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T1900.stderr
deleted file mode 100644
index 4e3be835c4..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T1900.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-
-T1900.hs:11:13:
- No instance for (Num ())
- arising from the literal `1'
- Possible fix: add an instance declaration for (Num ())
- In the second argument of `(+)', namely `1'
- In the expression: (+ 1)
- In an equation for `trans': trans = (+ 1)
-
-T1900.hs:14:22:
- Could not deduce (Depend s0 ~ Depend s)
- from the context (Bug s)
- bound by the type signature for check :: Bug s => Depend s -> Bool
- at T1900.hs:14:1-22
- NB: `Depend' is a type function, and may not be injective
- In the first argument of `trans', namely `d'
- In the second argument of `(==)', namely `trans d'
- In the expression: d == trans d
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2157.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2157.hs
deleted file mode 100644
index c9e562051e..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2157.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE TypeFamilies, LiberalTypeSynonyms #-}
-
-module T2157 where
-
-type S a b = a
-type family F a :: * -> *
-type instance F a = S a
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2157.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2157.stderr
deleted file mode 100644
index b28f879663..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2157.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-T2157.hs:7:1:
- Type synonym `S' should have 2 arguments, but has been given 1
- In the type synonym instance declaration for `F'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2203a.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2203a.hs
deleted file mode 100644
index 89ed37e3da..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2203a.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables, TypeFamilies, FlexibleInstances #-}
-
-module T2203a where
-
-class Foo a where
- type TheFoo a
- foo :: TheFoo a -> a
- foo' :: a -> Int
-
-class Bar b where
- bar :: b -> Int
-
-instance Foo a => Bar (Either a (TheFoo a)) where
- bar (Left a) = foo' a
- bar (Right b) = foo' (foo b :: a)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2203a.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2203a.stderr
deleted file mode 100644
index cd12f6a7be..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2203a.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T2203a.hs:13:19:
- Illegal type synonym family application in instance:
- Either a (TheFoo a)
- In the instance declaration for `Bar (Either a (TheFoo a))'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2239.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2239.hs
deleted file mode 100644
index 750fdd941c..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2239.hs
+++ /dev/null
@@ -1,51 +0,0 @@
-{-# LANGUAGE NoMonomorphismRestriction, RankNTypes #-}
-{-# LANGUAGE FunctionalDependencies, MultiParamTypeClasses #-}
-{-# LANGUAGE FlexibleInstances, FlexibleContexts, ScopedTypeVariables #-}
-{-# LANGUAGE TypeFamilies #-}
-
-module T2239 where
-
-data A = A
-data B = B
-
-class C a where c :: a -> String
-instance C Bool where c _ = "Bool"
-instance C Char where c _ = "Char"
-
--- via TFs
-type family TF a
-type instance TF A = Char
-type instance TF B = Bool
-
-tf :: forall a b. (b ~ TF a,C b) => a -> String
-tf a = c (undefined:: b)
-
-tfa = tf A
-tfb = tf B
-
--- via FDs
-class FD a b | a -> b
-instance FD A Char
-instance FD B Bool
-
-fd :: forall a b. (FD a b,C b) => a -> String
-fd a = c (undefined:: b)
-
-fda = fd A
-fdb = fd B
-
-
-class MyEq a b | a->b, b->a
-instance MyEq a a
-
-simpleFD = id :: (forall b. MyEq b Bool => b->b)
-
-simpleTF = id :: (forall b. b~Bool => b->b)
-
--- These two both involve impredicative instantiation,
--- and should fail (in the same way)
-complexFD = id :: (forall b. MyEq b Bool => b->b)
- -> (forall b. MyEq b Bool => b->b)
-
-complexTF = id :: (forall b. b~Bool => b->b)
- -> (forall b. b~Bool => b->b)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2239.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2239.stderr
deleted file mode 100644
index b8d5fc7a36..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2239.stderr
+++ /dev/null
@@ -1,30 +0,0 @@
-
-T2239.hs:47:13:
- Couldn't match expected type `b -> b'
- with actual type `forall b1. MyEq b1 Bool => b1 -> b1'
- Expected type: (forall b1. MyEq b1 Bool => b1 -> b1) -> b -> b
- Actual type: (forall b1. MyEq b1 Bool => b1 -> b1)
- -> forall b1. MyEq b1 Bool => b1 -> b1
- In the expression:
- id ::
- (forall b. MyEq b Bool => b -> b)
- -> (forall b. MyEq b Bool => b -> b)
- In an equation for `complexFD':
- complexFD
- = id ::
- (forall b. MyEq b Bool => b -> b)
- -> (forall b. MyEq b Bool => b -> b)
-
-T2239.hs:50:13:
- Couldn't match expected type `b -> b'
- with actual type `forall b1. b1 ~ Bool => b1 -> b1'
- Expected type: (forall b1. b1 ~ Bool => b1 -> b1) -> b -> b
- Actual type: (forall b1. b1 ~ Bool => b1 -> b1)
- -> forall b1. b1 ~ Bool => b1 -> b1
- In the expression:
- id ::
- (forall b. b ~ Bool => b -> b) -> (forall b. b ~ Bool => b -> b)
- In an equation for `complexTF':
- complexTF
- = id ::
- (forall b. b ~ Bool => b -> b) -> (forall b. b ~ Bool => b -> b)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2334.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2334.hs
deleted file mode 100644
index c73402e2d5..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2334.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
--- Trac #2334
-
-module Test where
-
-data family F r
-
-newtype instance F () = F () () deriving Eq
-newtype instance F Int = H deriving Eq
-
-data instance F Bool = K1
-data instance F Bool = K2
-
-
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2334.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2334.stderr
deleted file mode 100644
index 5bb3e24c22..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2334.stderr
+++ /dev/null
@@ -1,17 +0,0 @@
-
-T2334.hs:9:26:
- The constructor of a newtype must have exactly one field
- but `F' has two
- In the definition of data constructor `F'
- In the newtype instance declaration for `F'
-
-T2334.hs:10:27:
- The constructor of a newtype must have exactly one field
- but `H' has none
- In the definition of data constructor `H'
- In the newtype instance declaration for `F'
-
-T2334.hs:13:15:
- Conflicting family instance declarations:
- data instance F Bool -- Defined at T2334.hs:13:15
- data instance F Bool -- Defined at T2334.hs:12:15
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2544.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2544.hs
deleted file mode 100644
index 22f3995286..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2544.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TypeOperators, TypeFamilies #-}
-
-module T2544 where
-
-data (:|:) a b = Inl a | Inr b
-
-class Ix i where
- type IxMap i :: * -> *
- empty :: IxMap i [Int]
-
-data BiApp a b c = BiApp (a c) (b c)
-
-instance (Ix l, Ix r) => Ix (l :|: r) where
- type IxMap (l :|: r) = BiApp (IxMap l) (IxMap r)
- empty = BiApp empty empty \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2544.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2544.stderr
deleted file mode 100644
index 6c977bf833..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2544.stderr
+++ /dev/null
@@ -1,22 +0,0 @@
-
-T2544.hs:15:18:
- Could not deduce (IxMap i0 ~ IxMap l)
- from the context (Ix l, Ix r)
- bound by the instance declaration at T2544.hs:13:10-37
- NB: `IxMap' is a type function, and may not be injective
- Expected type: IxMap l [Int]
- Actual type: IxMap i0 [Int]
- In the first argument of `BiApp', namely `empty'
- In the expression: BiApp empty empty
- In an equation for `empty': empty = BiApp empty empty
-
-T2544.hs:15:24:
- Could not deduce (IxMap i1 ~ IxMap r)
- from the context (Ix l, Ix r)
- bound by the instance declaration at T2544.hs:13:10-37
- NB: `IxMap' is a type function, and may not be injective
- Expected type: IxMap r [Int]
- Actual type: IxMap i1 [Int]
- In the second argument of `BiApp', namely `empty'
- In the expression: BiApp empty empty
- In an equation for `empty': empty = BiApp empty empty
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2627b.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2627b.hs
deleted file mode 100644
index 13dbd9cb26..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2627b.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE GADTs, TypeFamilies, EmptyDataDecls #-}
-
-module T2627b where
-
-data R a b
-data W a b
-data Z
-
-type family Dual a
-type instance Dual Z = Z
-type instance Dual (R a b) = W a (Dual b)
-type instance Dual (W a b) = R a (Dual b)
-
-data Comm a where
- Rd :: (a -> Comm b) -> Comm (R a b)
- Wr :: a -> Comm b -> Comm (W a b)
- Fin :: Int -> Comm Z
-
-conn :: (Dual a ~ b, Dual b ~ a) => Comm a -> Comm b -> (Int, Int)
-conn (Rd k) (Wr a r) = conn undefined undefined
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2627b.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2627b.stderr
deleted file mode 100644
index a8e232486b..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2627b.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-T2627b.hs:20:24:
- Occurs check: cannot construct the infinite type:
- a0 = Dual (Dual a0)
- In the expression: conn undefined undefined
- In an equation for `conn':
- conn (Rd k) (Wr a r) = conn undefined undefined
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2664.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2664.hs
deleted file mode 100644
index d5b04a6380..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2664.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE EmptyDataDecls, TypeFamilies, TypeOperators, ScopedTypeVariables #-}
-module Overflow where
-import Control.Concurrent
-
-data (:*:) a b
-data (:+:) a b
-
-data family PChan a
-data instance PChan (a :+: b) = E (IO (PChan a)) (IO (PChan b))
-newtype instance PChan (a :*: b) = O (IO (Either (PChan a) (PChan b)))
-
-type family Dual a
-type instance Dual (a :+: b) = Dual a :*: Dual b
-type instance Dual (a :*: b) = Dual a :+: Dual b
-
-class Connect s where
- newPChan :: (s ~ Dual c, c ~ Dual s) => IO (PChan s, PChan c)
-
-pchoose :: (t -> a) -> MVar a -> IO (t,b) -> IO b
-pchoose = undefined
-
-instance (Connect a, Connect b) => Connect (a :*: b) where
- newPChan = do
- v <- newEmptyMVar
-
- -- This version is in T2664a
- -- correct implementation:
- -- return (O $ takeMVar v, E (pchoose Left v newPChan) (pchoose Right v newPChan))
-
- -- type error leads to stack overflow (even without UndecidableInstances!)
- return (O $ takeMVar v, E (pchoose Right v newPChan) (pchoose Left v newPChan))
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2664.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2664.stderr
deleted file mode 100644
index b3b8428a55..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2664.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-
-T2664.hs:31:33:
- Could not deduce (Dual a ~ Dual b)
- from the context (Connect a, Connect b)
- bound by the instance declaration at T2664.hs:22:10-52
- or from ((a :*: b) ~ Dual c, c ~ Dual (a :*: b))
- bound by the type signature for
- newPChan :: ((a :*: b) ~ Dual c, c ~ Dual (a :*: b)) =>
- IO (PChan (a :*: b), PChan c)
- at T2664.hs:(23,5)-(31,87)
- NB: `Dual' is a type function, and may not be injective
- Expected type: c
- Actual type: Dual b :+: Dual a
- Expected type: PChan c
- Actual type: PChan (Dual b :+: Dual a)
- In the return type of a call of `E'
- In the expression:
- E (pchoose Right v newPChan) (pchoose Left v newPChan)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2664a.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2664a.hs
deleted file mode 100644
index b7a3033723..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2664a.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE EmptyDataDecls, TypeFamilies, TypeOperators, ScopedTypeVariables #-}
-module Overflow where
-import Control.Concurrent
-
-data (:*:) a b
-data (:+:) a b
-
-data family PChan a
-data instance PChan (a :+: b) = E (IO (PChan a)) (IO (PChan b))
-newtype instance PChan (a :*: b) = O (IO (Either (PChan a) (PChan b)))
-
-type family Dual a
-type instance Dual (a :+: b) = Dual a :*: Dual b
-type instance Dual (a :*: b) = Dual a :+: Dual b
-
-class Connect s where
- newPChan :: (s ~ Dual c, c ~ Dual s) => IO (PChan s, PChan c)
-
-pchoose :: (t -> a) -> MVar a -> IO (t,b) -> IO b
-pchoose = undefined
-
-instance (Connect a, Connect b) => Connect (a :*: b) where
- newPChan = do
- v <- newEmptyMVar
- -- correct implementation:
- return (O $ takeMVar v, E (pchoose Left v newPChan) (pchoose Right v newPChan))
-
- -- This version is in T2664
- -- type error leads to stack overflow (even without UndecidableInstances!)
- --return (O $ takeMVar v, E (pchoose Right v newPChan) (pchoose Left v newPChan))
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2677.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2677.hs
deleted file mode 100644
index 93288ba40d..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2677.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module T2677 where
-
-type family A x
-type instance A a = Bool
-type instance A Int = Char
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2677.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2677.stderr
deleted file mode 100644
index e1c08e3b15..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2677.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T2677.hs:7:15:
- Conflicting family instance declarations:
- type instance A Int -- Defined at T2677.hs:7:15
- type instance A a -- Defined at T2677.hs:6:15
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2693.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2693.hs
deleted file mode 100644
index 5b0066e948..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2693.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module T2693 where
-
-type family TFn a :: *
-
-f :: Maybe ()
-f = do
- let Just x = undefined :: Maybe (TFn a)
- let n = fst x + fst x
- return ()
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2693.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2693.stderr
deleted file mode 100644
index 2072d53296..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2693.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-T2693.hs:9:16:
- Couldn't match type `TFn a0' with `(a1, b0)'
- Expected type: Maybe (a1, b0)
- Actual type: Maybe (TFn a0)
- In the expression: undefined :: Maybe (TFn a)
- In a pattern binding: Just x = undefined :: Maybe (TFn a)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2888.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T2888.hs
deleted file mode 100644
index 169eebb474..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T2888.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
--- Test for no type indices
-
-module T2888 where
-
-class C w where
- data D:: * -> *
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3092.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T3092.hs
deleted file mode 100644
index e3a671e67e..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3092.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-module T3092 where
-
-data T a = T1 a
-data instance T Int = T2 Char
-
-type S b = b
-type instance S Int = Char
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3092.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T3092.stderr
deleted file mode 100644
index ceea069f8f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3092.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-T3092.hs:5:1:
- Illegal family instance for `T'
- (T is not an indexed type family)
- In the data type instance declaration for `T'
-
-T3092.hs:8:1:
- Illegal family instance for `S'
- (S is not an indexed type family)
- In the type synonym instance declaration for `S'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330a.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330a.hs
deleted file mode 100644
index c09eb0fd5c..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330a.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE RankNTypes #-}
-{-# LANGUAGE TypeFamilies #-}
-
--- A very bogus program (multiple errors) but
--- sent GHC 6.12 into a loop
-
-module T3330a where
-
-import Control.Monad.Writer
-
-data AnyF (s :: * -> *) = AnyF
-class HFunctor (f :: (* -> *) -> * -> *)
-type family PF (phi :: * -> *) :: (* -> *) -> * -> *
-
-children :: s ix -> (PF s) r ix -> [AnyF s]
-children p x = execWriter (hmapM p collect x)
-
-collect :: HFunctor (PF s) => s ix -> r ix -> Writer [AnyF s] (r ix)
-collect = undefined
-
-hmapM :: (forall ix. phi ix -> r ix -> m (r' ix))
- -> phi ix -> f r ix -> m (f r' ix)
-hmapM = undefined
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330a.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330a.stderr
deleted file mode 100644
index cfe7f67270..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330a.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-T3330a.hs:17:34:
- Couldn't match type `s' with `(->) (s ix1 -> ix1)'
- `s' is a rigid type variable bound by
- the type signature for children :: s ix -> PF s r ix -> [AnyF s]
- at T3330a.hs:17:1
- In the first argument of `hmapM', namely `p'
- In the first argument of `execWriter', namely `(hmapM p collect x)'
- In the expression: execWriter (hmapM p collect x)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330b.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330b.hs
deleted file mode 100644
index 05d2282304..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330b.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE FlexibleInstances #-}
-
--- Bizarrely this made 6.10 loop
-
-module T3330b where
-
-class RFunctor c a b where
- type Res c a b :: *
- rmap :: (a -> b) -> c -> Res c a b
-
-instance (a ~ c) => RFunctor c a b where
- type Res c a b = b
- rmap f = f
-
-instance (RFunctor c a b, a ~ c) => RFunctor [c] a b where
- type Res [c] a b = [b]
- rmap f = map (map f)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330b.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330b.stderr
deleted file mode 100644
index 927bd5b483..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330b.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T3330b.hs:14:10:
- Conflicting family instance declarations:
- type Res c a b -- Defined at T3330b.hs:14:10-12
- type Res [c] a b -- Defined at T3330b.hs:18:10-12
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330c.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330c.hs
deleted file mode 100644
index e6c4dfbb30..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330c.hs
+++ /dev/null
@@ -1,58 +0,0 @@
-{-# LANGUAGE EmptyDataDecls, TypeFamilies, TypeOperators, GADTs, KindSignatures #-}
-
-module T3330c where
-
-data (f :+: g) x = Inl (f x) | Inr (g x)
-
-data R :: (* -> *) -> * where
- RSum :: R f -> R g -> R (f :+: g)
-
-class Rep f where
- rep :: R f
-
-instance (Rep f, Rep g) => Rep (f :+: g) where
- rep = RSum rep rep
-
-type family Der (f :: * -> *) :: * -> *
-type instance Der (f :+: g) = Der f :+: Der g
-
-plug :: Rep f => Der f x -> x -> f x
-plug = plug' rep where
-
-plug' :: R f -> Der f x -> x -> f x
-plug' (RSum rf rg) (Inl df) x = Inl (plug rf df x)
-
-{-
-rf :: R f1, rg :: R g1
-Given by GADT match: f ~ f1 :+: g1
-
-Second arg has type (Der f x)
- = (Der (f1:+:g1) x)
- = (:+:) (Der f1) (Der g1) x
-Hence df :: Der f1 x
-
-Inl {f3,g3,x} (plug {f2,x1} rf df x) gives rise to
- result of Inl: ((:+:) f3 g3 x ~ f x)
- first arg (rf): (R f1 ~ Der f2 x1)
- second arg (df): (Der f1 x ~ x1)
- result of plug: (f2 x1 ~ x -> f3 x)
-
- result of Inl: ((:+:) f3 g3 x ~ f x)
- by given ((:+:) f3 g3 x ~ (:+:) f1 g1 x)
- hence need f3~f1, g3~g1
-
-So we are left with
- first arg: (R f1 ~ Der f2 x1)
- second arg: (Der f1 x ~ x1)
- result: (f2 x1 ~ (->) x (f3 x))
-
-Decompose result:
- f2 ~ (->) x
- x1 ~ f1 x
-Hence
- first: R f1 ~ Der ((->) x) (f1 x)
- decompose : R ~ Der ((->) x)
- f1 ~ f1 x
-
-
--} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330c.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330c.stderr
deleted file mode 100644
index 4ca19f8a4e..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3330c.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-
-T3330c.hs:23:43:
- Couldn't match type `f1' with `f1 x'
- `f1' is a rigid type variable bound by
- a pattern with constructor
- RSum :: forall (f :: * -> *) (g :: * -> *).
- R f -> R g -> R (f :+: g),
- in an equation for `plug''
- at T3330c.hs:23:8
- In the first argument of `plug', namely `rf'
- In the first argument of `Inl', namely `(plug rf df x)'
- In the expression: Inl (plug rf df x)
-
-T3330c.hs:23:43:
- Couldn't match type `Der ((->) x)' with `R'
- In the first argument of `plug', namely `rf'
- In the first argument of `Inl', namely `(plug rf df x)'
- In the expression: Inl (plug rf df x)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3440.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T3440.hs
deleted file mode 100644
index 0bf1544009..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3440.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs #-}
-
-module T3440 where
-
-type family Fam a :: *
-
-data GADT :: * -> * where
- GADT :: a -> Fam a -> GADT (Fam a)
-
-unwrap :: GADT (Fam a) -> (a, Fam a)
-unwrap (GADT x y) = (x, y)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3440.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T3440.stderr
deleted file mode 100644
index fe61b1da65..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T3440.stderr
+++ /dev/null
@@ -1,19 +0,0 @@
-
-T3440.hs:11:22:
- Could not deduce (a1 ~ a)
- from the context (Fam a ~ Fam a1)
- bound by a pattern with constructor
- GADT :: forall a. a -> Fam a -> GADT (Fam a),
- in an equation for `unwrap'
- at T3440.hs:11:9-16
- `a1' is a rigid type variable bound by
- a pattern with constructor
- GADT :: forall a. a -> Fam a -> GADT (Fam a),
- in an equation for `unwrap'
- at T3440.hs:11:9
- `a' is a rigid type variable bound by
- the type signature for unwrap :: GADT (Fam a) -> (a, Fam a)
- at T3440.hs:11:1
- In the expression: x
- In the expression: (x, y)
- In an equation for `unwrap': unwrap (GADT x y) = (x, y)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4093a.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4093a.hs
deleted file mode 100644
index 06168f577e..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4093a.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-module T4093a where
-
-type family Foo x
-type instance Foo () = Maybe ()
-
-hang :: (Foo e ~ Maybe e) => Foo e
-hang = Just ()
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4093a.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4093a.stderr
deleted file mode 100644
index 0b36936be9..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4093a.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-
-T4093a.hs:8:8:
- Could not deduce (e ~ ())
- from the context (Foo e ~ Maybe e)
- bound by the type signature for hang :: Foo e ~ Maybe e => Foo e
- at T4093a.hs:8:1-14
- `e' is a rigid type variable bound by
- the type signature for hang :: Foo e ~ Maybe e => Foo e
- at T4093a.hs:8:1
- Expected type: Foo e
- Actual type: Maybe ()
- In the return type of a call of `Just'
- In the expression: Just ()
- In an equation for `hang': hang = Just ()
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4093b.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4093b.hs
deleted file mode 100644
index 2d9878541f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4093b.hs
+++ /dev/null
@@ -1,40 +0,0 @@
-{-# LANGUAGE GADTs, EmptyDataDecls, ScopedTypeVariables, TypeFamilies #-}
-
-module T4093b where
-
-data C
-data O
-
-type family EitherCO e a b :: *
-type instance EitherCO C a b = a
-type instance EitherCO O a b = b
-
-data MaybeC ex t where
- JustC :: t -> MaybeC C t
- NothingC :: MaybeC O t
-
-data Block (n :: * -> * -> *) e x
-
-
-blockToNodeList ::
- forall n e x. (EitherCO e (A C O n) (A O O n) ~ A e O n,
- EitherCO x (A C C n) (A C O n) ~ A C x n) =>
- Block n e x -> A e x n
-
-type A e x n = (MaybeC e (n C O), MaybeC x (n O C))
-blockToNodeList b = foldBlockNodesF (f, l) b z
- where
- z :: EitherCO e (EitherCO e (A C O n) (A O O n)) (EitherCO e (A C O n) (A O O n))
- z = undefined
-
- f :: n C O -> EitherCO e (A C O n) (A O O n) -> EitherCO e (A C O n) (A O O n)
- f n _ = (JustC n, NothingC)
-
- l :: n O C -> EitherCO e (A C O n) (A O O n) -> EitherCO e (A C C n) (A O C n)
- l _ = undefined
-
-foldBlockNodesF :: forall n a b c e x .
- ( n C O -> a -> b
- , n O C -> b -> c)
- -> (Block n e x -> EitherCO e a b -> EitherCO x c b)
-foldBlockNodesF _ = undefined
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4093b.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4093b.stderr
deleted file mode 100644
index 6818e006ef..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4093b.stderr
+++ /dev/null
@@ -1,32 +0,0 @@
-
-T4093b.hs:31:13:
- Could not deduce (e ~ C)
- from the context (EitherCO e (A C O n) (A O O n) ~ A e O n,
- EitherCO x (A C C n) (A C O n) ~ A C x n)
- bound by the type signature for
- blockToNodeList :: (EitherCO e (A C O n) (A O O n) ~ A e O n,
- EitherCO x (A C C n) (A C O n) ~ A C x n) =>
- Block n e x -> A e x n
- at T4093b.hs:(25,1)-(34,19)
- `e' is a rigid type variable bound by
- the type signature for
- blockToNodeList :: (EitherCO e (A C O n) (A O O n) ~ A e O n,
- EitherCO x (A C C n) (A C O n) ~ A C x n) =>
- Block n e x -> A e x n
- at T4093b.hs:25:1
- Expected type: EitherCO e (A C O n) (A O O n)
- Actual type: (MaybeC C (n C O), MaybeC O (n O C))
- In the expression: (JustC n, NothingC)
- In an equation for `f': f n _ = (JustC n, NothingC)
- In an equation for `blockToNodeList':
- blockToNodeList b
- = foldBlockNodesF (f, l) b z
- where
- z ::
- EitherCO e (EitherCO e (A C O n) (A O O n)) (EitherCO e (A C O n) (A O O n))
- z = undefined
- f ::
- n C O
- -> EitherCO e (A C O n) (A O O n) -> EitherCO e (A C O n) (A O O n)
- f n _ = (JustC n, NothingC)
- ....
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4099.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4099.hs
deleted file mode 100644
index 1ca3c7a4a5..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4099.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module T4099 where
-
-type family T a
-
-foo :: T a -> Int
-foo x = error "urk"
-
-bar1 :: T b -> Int
-bar1 x = foo x
-
-bar2 :: Maybe b -> Int
-bar2 x = foo x
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4099.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4099.stderr
deleted file mode 100644
index 1f5a917296..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4099.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-T4099.hs:11:14:
- Couldn't match type `T b' with `T a0'
- NB: `T' is a type function, and may not be injective
- In the first argument of `foo', namely `x'
- In the expression: foo x
- In an equation for `bar1': bar1 x = foo x
-
-T4099.hs:14:14:
- Couldn't match type `T a1' with `Maybe b'
- In the first argument of `foo', namely `x'
- In the expression: foo x
- In an equation for `bar2': bar2 x = foo x
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4174.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4174.hs
deleted file mode 100644
index 784c0baa08..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4174.hs
+++ /dev/null
@@ -1,60 +0,0 @@
-{-# LANGUAGE TypeFamilies, TypeOperators, EmptyDataDecls #-}
-
-module T4174 where
-
-data True
-data False
-
-data Minor1
-
-data GHC6'8 m
-data GHC6'10 m
-
-type family a :<=: b :: {-Bool-}*
-type instance GHC6'10 m1 :<=: GHC6'8 m2 = False
-
-type a :>=: b = b :<=: a
-
-data Way ghcVersion tablesNextToCode profiling threaded
-
-type family GHCVersion way :: {-GHCVersion-} *
-type instance GHCVersion (Way v n p t) = v
-
-type family Threaded way :: {-Bool-} *
-type instance Threaded (Way v n p t) = t
-
-data Field w s t
-data SmStep
-data RtsSpinLock
-
-field :: String -> m (Field w a b)
-field = undefined
-
-type family WayOf (m :: * -> *) :: *
-
-sync_large_objects :: (Monad m,
- (GHCVersion (WayOf m) :>=: GHC6'10 Minor1) ~ True,
- Threaded (WayOf m) ~ True)
- => m (Field (WayOf m) SmStep RtsSpinLock)
-sync_large_objects = field "sync_large_objects"
-
-testcase :: Monad m => m (Field (Way (GHC6'8 minor) n t p) a b)
-testcase = sync_large_objects
-
-{- Wanted constraints from the occurrence of sync_large_objects
-
- (WayOf m) ~ (Way (GHC6'8 minor) n t p)
- a ~ SmStep
- b ~ RtsSpinLock
-
- Threaded (WayOf m) ~ True
- == Threaded (Way (GHC6'8 minor) n t p) ~ True
- == p ~ True
-
- (GHCVersion (WayOf m) :>=: GHC6'10 Minor1) ~ True,
- == (GHC6'10 Minor1 :<=: GHCVersion (WayOf m)) ~ True,
- == (GHC6'10 Minor1 :<=: GHCVersion (Way (GHC6'8 minor) n t p))) ~ True,
- == (GHC6'10 Minor1 :<=: GHC6'8 minor) ~ True
- == False ~ True
-
--} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4174.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4174.stderr
deleted file mode 100644
index 2a403786d9..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4174.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T4174.hs:42:12:
- Couldn't match type `False' with `True'
- In the expression: sync_large_objects
- In an equation for `testcase': testcase = sync_large_objects
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4174.stderr-ghc-7.0 b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4174.stderr-ghc-7.0
deleted file mode 100644
index 81fb603dd8..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4174.stderr-ghc-7.0
+++ /dev/null
@@ -1,7 +0,0 @@
-
-T4174.hs:42:12:
- Couldn't match type `False' with `True'
- Expected type: True
- Actual type: GHCVersion (WayOf m) :>=: GHC6'10 Minor1
- In the expression: sync_large_objects
- In an equation for `testcase': testcase = sync_large_objects
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4179.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4179.hs
deleted file mode 100644
index ee54100ccc..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4179.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module T4179 where
-
-class DoC a where
- type A2 a
- type A3 a
- op :: a -> A2 a -> A3 a
-
-data Con x = InCon (x (Con x))
-type FCon x = x (Con x)
-
--- should have been changed to this, which works
--- foldDoC :: Functor f => (f a -> a) -> A2 (FCon f) -> Con f -> a
--- foldDoC f i (InCon t) = f (fmap (foldDoC f i) t)
--- this original version causes GHC to hang
-foldDoC :: Functor f => (f a -> a) -> Con f -> a
-foldDoC f (InCon t) = f (fmap (foldDoC f) t)
-
-doCon :: (DoC (FCon x)) => Con x -> A2 (FCon x) -> A3 (FCon x)
-doCon (InCon x) = op x
-
--- Note that if this is commented out then there's no hang:
--- presumably because GHC doesn't have to perform type deduction for foldDoC.
-fCon :: (Functor x, DoC (FCon x)) => Con x -> A2 (FCon x) -> A3 (FCon x)
-fCon = foldDoC op
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4179.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4179.stderr
deleted file mode 100644
index 50c1ad5365..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4179.stderr
+++ /dev/null
@@ -1,63 +0,0 @@
-
-T4179.hs:26:16:
- Could not deduce (DoC (x (A2 (FCon x) -> A3 (FCon x))))
- arising from a use of `op'
- from the context (Functor x, DoC (FCon x))
- bound by the type signature for
- fCon :: (Functor x, DoC (FCon x)) =>
- Con x -> A2 (FCon x) -> A3 (FCon x)
- at T4179.hs:26:1-17
- Possible fix:
- add (DoC (x (A2 (FCon x) -> A3 (FCon x)))) to the context of
- the type signature for
- fCon :: (Functor x, DoC (FCon x)) =>
- Con x -> A2 (FCon x) -> A3 (FCon x)
- or add an instance declaration for
- (DoC (x (A2 (FCon x) -> A3 (FCon x))))
- In the first argument of `foldDoC', namely `op'
- In the expression: foldDoC op
- In an equation for `fCon': fCon = foldDoC op
-
-T4179.hs:26:16:
- Could not deduce (A2 (x (A2 (FCon x) -> A3 (FCon x)))
- ~
- A2 (FCon x))
- from the context (Functor x, DoC (FCon x))
- bound by the type signature for
- fCon :: (Functor x, DoC (FCon x)) =>
- Con x -> A2 (FCon x) -> A3 (FCon x)
- at T4179.hs:26:1-17
- NB: `A2' is a type function, and may not be injective
- Expected type: A2 (FCon x) -> A3 (FCon x)
- Actual type: A2 (x (A2 (FCon x) -> A3 (FCon x)))
- -> A3 (x (A2 (FCon x) -> A3 (FCon x)))
- Expected type: x (A2 (FCon x) -> A3 (FCon x))
- -> A2 (FCon x)
- -> A3 (FCon x)
- Actual type: x (A2 (FCon x) -> A3 (FCon x))
- -> A2 (x (A2 (FCon x) -> A3 (FCon x)))
- -> A3 (x (A2 (FCon x) -> A3 (FCon x)))
- In the first argument of `foldDoC', namely `op'
- In the expression: foldDoC op
-
-T4179.hs:26:16:
- Could not deduce (A3 (x (A2 (FCon x) -> A3 (FCon x)))
- ~
- A3 (FCon x))
- from the context (Functor x, DoC (FCon x))
- bound by the type signature for
- fCon :: (Functor x, DoC (FCon x)) =>
- Con x -> A2 (FCon x) -> A3 (FCon x)
- at T4179.hs:26:1-17
- NB: `A3' is a type function, and may not be injective
- Expected type: A2 (FCon x) -> A3 (FCon x)
- Actual type: A2 (x (A2 (FCon x) -> A3 (FCon x)))
- -> A3 (x (A2 (FCon x) -> A3 (FCon x)))
- Expected type: x (A2 (FCon x) -> A3 (FCon x))
- -> A2 (FCon x)
- -> A3 (FCon x)
- Actual type: x (A2 (FCon x) -> A3 (FCon x))
- -> A2 (x (A2 (FCon x) -> A3 (FCon x)))
- -> A3 (x (A2 (FCon x) -> A3 (FCon x)))
- In the first argument of `foldDoC', namely `op'
- In the expression: foldDoC op
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4246.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4246.hs
deleted file mode 100644
index b5c37a68e3..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4246.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TypeFamilies, FlexibleInstances, OverlappingInstances #-}
-module T4246 where
-
-class Stupid a where
- type F a
-
-instance Stupid a where
- type F a = a
-
-instance Stupid Int where
- type F Int = Bool
-
-type family G a :: *
-type instance G Int = Int
-type instance G Int = Bool
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4246.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4246.stderr
deleted file mode 100644
index fe1cfce250..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4246.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-T4246.hs:8:9:
- Conflicting family instance declarations:
- type F a -- Defined at T4246.hs:8:9
- type F Int -- Defined at T4246.hs:11:9
-
-T4246.hs:15:15:
- Conflicting family instance declarations:
- type instance G Int -- Defined at T4246.hs:15:15
- type instance G Int -- Defined at T4246.hs:14:15
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4254.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4254.hs
deleted file mode 100644
index b12ffb4f87..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4254.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE TypeFamilies, FunctionalDependencies, RankNTypes, MultiParamTypeClasses #-}
-module T4254 where
-
-class FD a b | a -> b where
- op :: a -> b;
- op = undefined
-
-instance FD Int Bool
-
-ok1 :: forall a b. (a~Int,FD a b) => a -> b
-ok1 = op
--- Should be OK: op has the right type
-
-ok2 :: forall a b. (a~Int,FD a b,b~Bool) => a -> Bool
-ok2 = op
--- Should be OK: needs the b~Bool
-
-fails :: forall a b. (a~Int,FD a b) => a -> Bool
-fails = op
--- Could fail: no proof that b~Bool
--- But can also succeed; it's not a *wanted* constraint
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4254.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4254.stderr
deleted file mode 100644
index 03aa80bdac..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4254.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-
-T4254.hs:19:10:
- Could not deduce (b ~ Bool)
- from the context (a ~ Int, FD a b)
- bound by the type signature for
- fails :: (a ~ Int, FD a b) => a -> Bool
- at T4254.hs:19:1-11
- `b' is a rigid type variable bound by
- the type signature for fails :: (a ~ Int, FD a b) => a -> Bool
- at T4254.hs:19:1
- When using functional dependencies to combine
- FD Int b,
- arising from the type signature for
- fails :: (a ~ Int, FD a b) => a -> Bool
- at T4254.hs:19:1-11
- FD Int Bool, arising from a use of `op' at T4254.hs:19:10-11
- In the expression: op
- In an equation for `fails': fails = op
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4272.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4272.hs
deleted file mode 100644
index 3370fc3637..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4272.hs
+++ /dev/null
@@ -1,22 +0,0 @@
- {-# LANGUAGE TypeFamilies, ScopedTypeVariables, FlexibleContexts #-}
-module T4272 where
-
-class Family f where
- terms :: f a -> a
-
-class Family (TermFamily a) => TermLike a where
- type TermFamily a :: * -> *
-
-laws :: forall a b. TermLike a => TermFamily a a -> b
-laws t = prune t (terms (undefined :: TermFamily a a))
-
-prune :: TermLike a => TermFamily a a -> TermFamily a a -> b
-prune = undefined
-
--- terms :: Family f => f a -> a
--- Instantiate with f = TermFamily a
--- terms :: Family (TermFamily a) => TermFamily a a -> a
--- (terms (undefined::TermFamily a a) :: Family (TermFamily a) => a
--- So the call to prune forces the equality
--- TermFamily a a ~ a
--- which triggers an occurs check \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4272.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4272.stderr
deleted file mode 100644
index 792cde92b8..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4272.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-T4272.hs:11:16:
- Occurs check: cannot construct the infinite type:
- a0 = TermFamily a0 a0
- In the first argument of `prune', namely `t'
- In the expression: prune t (terms (undefined :: TermFamily a a))
- In an equation for `laws':
- laws t = prune t (terms (undefined :: TermFamily a a))
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4485.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4485.hs
deleted file mode 100644
index b48e8206f2..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4485.hs
+++ /dev/null
@@ -1,66 +0,0 @@
--- The behavior of type-inference and OverlappingInstances has changed
--- between GHC 6.12 and GHC 7.0 such that the following code
--- type-checks under 6.12, but not 7.0rc2. I assume this change has
--- something to do with the new type checker in GHC 7, but it is not
--- clear to me if this change in behavior is intended. Nor am I clear
--- how to achieve something similar to the old behavior. This is
--- preventing HSP (and by extension, happstack) from migrating to GHC
--- 7. I reported this earlier on the mailing lists, but I have further
--- simplied the test case here.
-
-{-# LANGUAGE TypeFamilies, MultiParamTypeClasses
- , FlexibleContexts, FlexibleInstances, UndecidableInstances
- , TypeSynonymInstances, GeneralizedNewtypeDeriving
- , OverlappingInstances
- #-}
-module XMLGenerator where
-
-newtype XMLGenT m a = XMLGenT (m a)
- deriving (Functor, Monad)
-
-class Monad m => XMLGen m where
- type XML m
- data Child m
- genElement :: String -> XMLGenT m (XML m)
-
-class XMLGen m => EmbedAsChild m c where
- asChild :: c -> XMLGenT m [Child m]
-
-instance (EmbedAsChild m c, m1 ~ m) => EmbedAsChild m (XMLGenT m1 c)
-
-instance (XMLGen m, XML m ~ x) => EmbedAsChild m x
-
-data Xml = Xml
-data IdentityT m a = IdentityT (m a)
-instance Monad (IdentityT m)
-instance XMLGen (IdentityT m) where
- type XML (IdentityT m) = Xml
-
-data Identity a = Identity a
-instance Monad Identity
-
-instance EmbedAsChild (IdentityT IO) (XMLGenT Identity ())
-
-data FooBar = FooBar
-
-instance EmbedAsChild (IdentityT IO) FooBar where
- asChild b = asChild $ (genElement "foo")
- -- asChild :: FooBar -> XMLGenT (XMLGenT (IdentityT IO) [Child (IdentitiyT IO)])
-
-{- ---------- Deriving the constraints ----------
- asChild :: EmbedAsChild m c => c -> XMLGenT m [Child m]
- genElement :: XMLGen m => String -> XMLGenT m (XML m)
-
- Wanted: EmbedAsChild m c, with m = IdentityT IO
- c = XMLGenT meta (XML meta)
- XMLGen meta
-
- ie EmbedAsChild (IdentityT IO) (XMLGen meta (XML meta)
- XMLGen meta
-
-We have instances
- EmbedAsChild (IdentityT IO) FooBar
- EmbedAsChild (IdentityT IO) (XMLGenT Identity ())
- EmbedAsChild m (XMLGenT m1 c)
- EmbedAsChild m x
--}
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4485.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/T4485.stderr
deleted file mode 100644
index a9e9792cda..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/T4485.stderr
+++ /dev/null
@@ -1,19 +0,0 @@
-
-T4485.hs:47:15:
- Overlapping instances for EmbedAsChild
- (IdentityT IO) (XMLGenT m0 (XML m0))
- arising from a use of `asChild'
- Matching instances:
- instance [overlap ok] (m1 ~ m, EmbedAsChild m c) =>
- EmbedAsChild m (XMLGenT m1 c)
- -- Defined at T4485.hs:29:10-68
- instance [overlap ok] EmbedAsChild
- (IdentityT IO) (XMLGenT Identity ())
- -- Defined at T4485.hs:42:10-58
- (The choice depends on the instantiation of `m0'
- To pick the first instance above, use -XIncoherentInstances
- when compiling the other instance declarations)
- In the expression: asChild
- In the expression: asChild $ (genElement "foo")
- In an equation for `asChild':
- asChild b = asChild $ (genElement "foo")
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity1.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity1.hs
deleted file mode 100644
index 4a35071e2f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity1.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-type family T a b :: *
-type instance T Int = IO -- must fail: too few args
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity1.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity1.stderr
deleted file mode 100644
index 7ee60167e1..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity1.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-TyFamArity1.hs:4:1:
- Number of parameters must match family declaration; expected 2
- In the type synonym instance declaration for `T'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity2.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity2.hs
deleted file mode 100644
index 2bff129925..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity2.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-type family T a :: * -> *
-type instance T Int Float = Char -- must fail: extra arguments
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity2.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity2.stderr
deleted file mode 100644
index 30d0526664..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamArity2.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-TyFamArity2.hs:4:1:
- Number of parameters must match family declaration; expected 1
- In the type synonym instance declaration for `T'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamUndec.hs b/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamUndec.hs
deleted file mode 100644
index 2c81faab2d..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamUndec.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module ShouldFail where
-
-type family T a
-type instance T (a, [b]) = T (b, b) -- var occurs more often
-type instance T (a, Maybe b) = T (a, Maybe b) -- not smaller
-type instance T (a, IO [b]) = T (a, T b) -- nested tyfam application
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamUndec.stderr b/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamUndec.stderr
deleted file mode 100644
index 2fc8e1b078..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/TyFamUndec.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-
-TyFamUndec.hs:6:1:
- Variable occurs more often than in instance head
- in the type family application: T (b, b)
- (Use -XUndecidableInstances to permit this)
- In the type synonym instance declaration for `T'
-
-TyFamUndec.hs:7:1:
- Application is no smaller than the instance head
- in the type family application: T (a, Maybe b)
- (Use -XUndecidableInstances to permit this)
- In the type synonym instance declaration for `T'
-
-TyFamUndec.hs:8:1:
- Nested type family application
- in the type family application: T (a, T b)
- (Use -XUndecidableInstances to permit this)
- In the type synonym instance declaration for `T'
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_fail/all.T b/testsuite/tests/ghc-regress/indexed-types/should_fail/all.T
deleted file mode 100644
index f2d904d32e..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_fail/all.T
+++ /dev/null
@@ -1,72 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-setTestOpts(omit_ways(['optasm']))
-
-test('SimpleFail1a', normal, compile_fail, [''])
-test('SimpleFail1b', normal, compile_fail, [''])
-test('SimpleFail2a', normal, compile_fail, [''])
-test('SimpleFail2b', normal, compile_fail, [''])
-test('SimpleFail3a', normal, compile_fail, [''])
-test('SimpleFail4', normal, compile_fail, [''])
-test('SimpleFail5a', normal, compile_fail, [''])
-test('SimpleFail5b', normal, compile_fail, [''])
-test('SimpleFail6', normal, compile_fail, [''])
-test('SimpleFail7', normal, compile_fail, [''])
-test('SimpleFail8', normal, compile_fail, [''])
-test('SimpleFail9', normal, compile_fail, [''])
-test('SimpleFail10', normal, compile_fail, [''])
-test('SimpleFail11a', normal, compile_fail, [''])
-test('SimpleFail11b', normal, compile_fail, [''])
-test('SimpleFail11c', normal, compile_fail, [''])
-test('SimpleFail11d', normal, compile_fail, [''])
-test('SimpleFail12', normal, compile_fail, [''])
-test('SimpleFail13', normal, compile_fail, [''])
-test('SimpleFail14', normal, compile_fail, [''])
-test('SimpleFail15', normal, compile_fail, [''])
-test('SimpleFail16', normal, compile_fail, [''])
-test('TyFamArity1', normal, compile_fail, [''])
-test('TyFamArity2', normal, compile_fail, [''])
-test('TyFamUndec', normal, compile_fail, [''])
-
-test('NotRelaxedExamples', normal, compile_fail, [''])
-test('NonLinearSigErr', normal, compile, [''])
-
-test('GADTwrong1', normal, compile_fail, [''])
-
-test('Over',
- extra_clean(['OverA.hi', 'OverA.o',
- 'OverB.hi', 'OverB.o',
- 'OverC.hi', 'OverC.o']),
- multimod_compile_fail,
- ['OverD', '-no-hs-main -c -v0'])
-
-test('SkolemOccursLoop', expect_fail, compile_fail, [''])
-
-test('T2334', normal, compile_fail, [''])
-test('T1900', normal, compile_fail, [''])
-test('T2157', normal, compile_fail, [''])
-test('T2203a', normal, compile_fail, [''])
-test('T2627b', normal, compile_fail, [''])
-test('T2693', normal, compile_fail, [''])
-test('T2888', normal, compile, [''])
-test('T3092', normal, compile_fail, [''])
-test('NoMatchErr', normal, compile_fail, [''])
-test('T2677', normal, compile_fail, [''])
-test('T4099', normal, compile_fail, [''])
-test('T4272', normal, compile_fail, [''])
-test('T4246', normal, compile_fail, [''])
-test('T4093a', normal, compile_fail, [''])
-test('T4093b', normal, compile_fail, [''])
-test('T3330a', reqlib('mtl'), compile_fail, [''])
-test('T3330b', normal, compile_fail, [''])
-test('T3330c', normal, compile_fail, [''])
-test('T4179', normal, compile_fail, [''])
-test('T4254', normal, compile_fail, [''])
-test('T2239', normal, compile_fail, [''])
-test('T3440', normal, compile_fail, [''])
-test('T4485', normal, compile_fail, [''])
-test('T4174', normal, compile_fail, [''])
-test('DerivUnsatFam', if_compiler_lt('ghc', '7.1', expect_fail), compile_fail, [''])
-test('T2664', normal, compile_fail, [''])
-test('T2664a', normal, compile, [''])
-test('T2544', normal, compile_fail, [''])
-
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_run/GMapAssoc.hs b/testsuite/tests/ghc-regress/indexed-types/should_run/GMapAssoc.hs
deleted file mode 100644
index 404818ea55..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_run/GMapAssoc.hs
+++ /dev/null
@@ -1,67 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Main where
-
-import Prelude hiding (lookup)
-import Data.Char (ord)
-import qualified Data.Map as Map
-
-
--- Generic maps as ATs
--- -------------------
-
-class GMapKey k where
- data GMap k :: * -> *
- empty :: GMap k v
- lookup :: k -> GMap k v -> Maybe v
- insert :: k -> v -> GMap k v -> GMap k v
-
-instance GMapKey Int where
- data GMap Int v = GMapInt (Map.Map Int v)
- empty = GMapInt Map.empty
- lookup k (GMapInt m) = Map.lookup k m
- insert k v (GMapInt m) = GMapInt (Map.insert k v m)
-
-instance GMapKey Char where
- data GMap Char v = GMapChar (GMap Int v)
- empty = GMapChar empty
- lookup k (GMapChar m) = lookup (ord k) m
- insert k v (GMapChar m) = GMapChar (insert (ord k) v m)
-
-instance GMapKey () where
- data GMap () v = GMapUnit (Maybe v)
- empty = GMapUnit Nothing
- lookup () (GMapUnit v) = v
- insert () v (GMapUnit _) = GMapUnit $ Just v
-
-instance (GMapKey a, GMapKey b) => GMapKey (a, b) where
- data GMap (a, b) v = GMapPair (GMap a (GMap b v))
- empty = GMapPair empty
- lookup (a, b) (GMapPair gm) = lookup a gm >>= lookup b
- insert (a, b) v (GMapPair gm) = GMapPair $ case lookup a gm of
- Nothing -> insert a (insert b v empty) gm
- Just gm2 -> insert a (insert b v gm2 ) gm
-
-instance (GMapKey a, GMapKey b) => GMapKey (Either a b) where
- data GMap (Either a b) v = GMapEither (GMap a v) (GMap b v)
- empty = GMapEither empty empty
- lookup (Left a) (GMapEither gm1 _gm2) = lookup a gm1
- lookup (Right b) (GMapEither _gm1 gm2 ) = lookup b gm2
- insert (Left a) v (GMapEither gm1 gm2) = GMapEither (insert a v gm1) gm2
- insert (Right a) v (GMapEither gm1 gm2) = GMapEither gm1 (insert a v gm2)
-
--- Test code
--- ---------
-
-nonsence :: GMap Bool String
-nonsence = undefined
-
-myGMap :: GMap (Int, Either Char ()) String
-myGMap = insert (5, Left 'c') "(5, Left 'c')" $
- insert (4, Right ()) "(4, Right ())" $
- insert (5, Right ()) "This is the one!" $
- insert (5, Right ()) "This is the two!" $
- insert (6, Right ()) "(6, Right ())" $
- insert (5, Left 'a') "(5, Left 'a')" $
- empty
-main = putStrLn $ maybe "Couldn't find key!" id $ lookup (5, Right ()) myGMap
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_run/GMapAssoc.stdout b/testsuite/tests/ghc-regress/indexed-types/should_run/GMapAssoc.stdout
deleted file mode 100644
index 27fa244dde..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_run/GMapAssoc.stdout
+++ /dev/null
@@ -1 +0,0 @@
-This is the one!
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_run/GMapTop.hs b/testsuite/tests/ghc-regress/indexed-types/should_run/GMapTop.hs
deleted file mode 100644
index 9ce830950b..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_run/GMapTop.hs
+++ /dev/null
@@ -1,69 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module Main where
-
-import Prelude hiding (lookup)
-import Data.Char (ord)
-import qualified Data.Map as Map
-
-
--- Generic maps as toplevel indexed data types
-----------------------------------------------
-
-data family GMap k :: * -> *
-data instance GMap Int v = GMapInt (Map.Map Int v)
-data instance GMap Char v = GMapChar (GMap Int v)
-data instance GMap () v = GMapUnit (Maybe v)
-data instance GMap (a, b) v = GMapPair (GMap a (GMap b v))
-data instance GMap (Either a b) v = GMapEither (GMap a v) (GMap b v)
-
-class GMapKey k where
- empty :: GMap k v
- lookup :: k -> GMap k v -> Maybe v
- insert :: k -> v -> GMap k v -> GMap k v
-
-instance GMapKey Int where
- empty = GMapInt Map.empty
- lookup k (GMapInt m) = Map.lookup k m
- insert k v (GMapInt m) = GMapInt (Map.insert k v m)
-
-instance GMapKey Char where
- empty = GMapChar empty
- lookup k (GMapChar m) = lookup (ord k) m
- insert k v (GMapChar m) = GMapChar (insert (ord k) v m)
-
-instance GMapKey () where
- empty = GMapUnit Nothing
- lookup () (GMapUnit v) = v
- insert () v (GMapUnit _) = GMapUnit $ Just v
-
-instance (GMapKey a, GMapKey b) => GMapKey (a, b) where
- empty = GMapPair empty
- lookup (a, b) (GMapPair gm) = lookup a gm >>= lookup b
- insert (a, b) v (GMapPair gm) = GMapPair $ case lookup a gm of
- Nothing -> insert a (insert b v empty) gm
- Just gm2 -> insert a (insert b v gm2 ) gm
-
-instance (GMapKey a, GMapKey b) => GMapKey (Either a b) where
- empty = GMapEither empty empty
- lookup (Left a) (GMapEither gm1 _gm2) = lookup a gm1
- lookup (Right b) (GMapEither _gm1 gm2 ) = lookup b gm2
- insert (Left a) v (GMapEither gm1 gm2) = GMapEither (insert a v gm1) gm2
- insert (Right a) v (GMapEither gm1 gm2) = GMapEither gm1 (insert a v gm2)
-
-
--- Test code
--- ---------
-
-nonsence :: GMap Bool String
-nonsence = undefined
-
-myGMap :: GMap (Int, Either Char ()) String
-myGMap = insert (5, Left 'c') "(5, Left 'c')" $
- insert (4, Right ()) "(4, Right ())" $
- insert (5, Right ()) "This is the one!" $
- insert (5, Right ()) "This is the two!" $
- insert (6, Right ()) "(6, Right ())" $
- insert (5, Left 'a') "(5, Left 'a')" $
- empty
-main = putStrLn $ maybe "Couldn't find key!" id $ lookup (5, Right ()) myGMap
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_run/GMapTop.stdout b/testsuite/tests/ghc-regress/indexed-types/should_run/GMapTop.stdout
deleted file mode 100644
index 27fa244dde..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_run/GMapTop.stdout
+++ /dev/null
@@ -1 +0,0 @@
-This is the one!
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_run/Makefile b/testsuite/tests/ghc-regress/indexed-types/should_run/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_run/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_run/T2985.hs b/testsuite/tests/ghc-regress/indexed-types/should_run/T2985.hs
deleted file mode 100644
index 6ae6e12c50..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_run/T2985.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE TypeFamilies, UndecidableInstances #-}
-{-# OPTIONS_GHC -Wnot #-}
-
-module Main where
-
--- See http://article.gmane.org/gmane.comp.lang.haskell.general/16796
--- and Trac #2985
-
-instance (Num a, Num b, a ~ b) => Num (a,b) where
- (x,y) * (u,v) = (x*u-y*v, x*v+y*u)
-
-test1 = (1,1) * (2,2)
-main = print test1
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_run/T2985.stdout b/testsuite/tests/ghc-regress/indexed-types/should_run/T2985.stdout
deleted file mode 100644
index 2ba96498ec..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_run/T2985.stdout
+++ /dev/null
@@ -1 +0,0 @@
-(0,4)
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_run/T4235.hs b/testsuite/tests/ghc-regress/indexed-types/should_run/T4235.hs
deleted file mode 100644
index 45ba33df20..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_run/T4235.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE TypeFamilies, StandaloneDeriving, FlexibleInstances, GADTs #-}
-module Main where
-
-import Data.Ix
-
--- Deriving Enum with phantom type parameter
-data T a = R | S | T deriving( Enum, Show )
-
--- Tests that deriving works for data families
-data family Foo a
-
-data instance Foo Int
- = A | B | C | D
- deriving (Eq, Enum)
-
-f :: Foo Int -> Bool
-f A = True
-f B = False
-f _ = True
-
--- Tests that deriving works for GADTs
-data Bar a where
- P :: Int -> Bar Int
- Q :: Bar Int
-
-deriving instance (Eq (Bar Int))
-
-main = do { print [R .. T]
- ; print (map f [B .. D])
- ; print [P 3 == P 3, P 4 == Q] }
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_run/T4235.stdout b/testsuite/tests/ghc-regress/indexed-types/should_run/T4235.stdout
deleted file mode 100644
index 3b5ac7194f..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_run/T4235.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-[R,S,T]
-[False,True,True]
-[True,False]
diff --git a/testsuite/tests/ghc-regress/indexed-types/should_run/all.T b/testsuite/tests/ghc-regress/indexed-types/should_run/all.T
deleted file mode 100644
index 454e702c0e..0000000000
--- a/testsuite/tests/ghc-regress/indexed-types/should_run/all.T
+++ /dev/null
@@ -1,8 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-setTestOpts(omit_ways(['hpc', 'ghci', 'threaded1', 'threaded2']))
-
-test('T2985', normal, compile_and_run, [''])
-test('T4235', normal, compile_and_run, [''])
-
-test('GMapAssoc', normal, compile_and_run, ['-package containers'])
-test('GMapTop', normal, compile_and_run, ['-package containers'])
diff --git a/testsuite/tests/ghc-regress/layout/Makefile b/testsuite/tests/ghc-regress/layout/Makefile
deleted file mode 100644
index 87e467fd85..0000000000
--- a/testsuite/tests/ghc-regress/layout/Makefile
+++ /dev/null
@@ -1,15 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-layout001 layout002 layout003 layout004 layout005 layout006 layout007 layout008 layout009: %:
- $(RM) $*.hi $*.o
- echo Running with -XNoAlternativeLayoutRule
- -"$(TEST_HC)" $(TEST_HC_OPTS) -v0 -XNoAlternativeLayoutRule -c $*.hs 2>&1
- $(RM) $*.hi $*.o
- echo Running with -XAlternativeLayoutRule
- -"$(TEST_HC)" $(TEST_HC_OPTS) -v0 -XAlternativeLayoutRule -c $*.hs 2>&1
- $(RM) $*.hi $*.o
- echo Running with -XAlternativeLayoutRule -XAlternativeLayoutRuleTransitional
- -"$(TEST_HC)" $(TEST_HC_OPTS) -v0 -XAlternativeLayoutRule -XAlternativeLayoutRuleTransitional -c $*.hs 2>&1
-
diff --git a/testsuite/tests/ghc-regress/layout/all.T b/testsuite/tests/ghc-regress/layout/all.T
deleted file mode 100644
index 026ad465a0..0000000000
--- a/testsuite/tests/ghc-regress/layout/all.T
+++ /dev/null
@@ -1,57 +0,0 @@
-
-test('layout001',
- [extra_clean(['layout001.hi', 'layout001.o']),
- only_compiler_types(['ghc'])],
- run_command,
- ['$MAKE -s --no-print-directory layout001'])
-
-test('layout002',
- [extra_clean(['layout002.hi', 'layout002.o']),
- only_compiler_types(['ghc'])],
- run_command,
- ['$MAKE -s --no-print-directory layout002'])
-
-test('layout003',
- [extra_clean(['layout003.hi', 'layout003.o']),
- only_compiler_types(['ghc'])],
- run_command,
- ['$MAKE -s --no-print-directory layout003'])
-
-test('layout004',
- [extra_clean(['layout004.hi', 'layout004.o']),
- only_compiler_types(['ghc'])],
- run_command,
- ['$MAKE -s --no-print-directory layout004'])
-
-test('layout005',
- [extra_clean(['layout005.hi', 'layout005.o']),
- only_compiler_types(['ghc'])],
- run_command,
- ['$MAKE -s --no-print-directory layout005'])
-
-test('layout006',
- [extra_clean(['layout006.hi', 'layout006.o']),
- only_compiler_types(['ghc'])],
- run_command,
- ['$MAKE -s --no-print-directory layout006'])
-
-test('layout007',
- [req_interp,
- extra_clean(['layout007.hi', 'layout007.o']),
- only_compiler_types(['ghc']),
- if_compiler_profiled(skip)],
- run_command,
- ['$MAKE -s --no-print-directory layout007'])
-
-test('layout008',
- [extra_clean(['layout008.hi', 'layout008.o']),
- only_compiler_types(['ghc'])],
- run_command,
- ['$MAKE -s --no-print-directory layout008'])
-
-test('layout009',
- [extra_clean(['layout009.hi', 'layout009.o']),
- only_compiler_types(['ghc'])],
- run_command,
- ['$MAKE -s --no-print-directory layout009'])
-
diff --git a/testsuite/tests/ghc-regress/layout/layout001.hs b/testsuite/tests/ghc-regress/layout/layout001.hs
deleted file mode 100644
index 1bf76fd859..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout001.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module M where
-
-f = case () of
- () -> ()
- where x = x
diff --git a/testsuite/tests/ghc-regress/layout/layout001.stdout b/testsuite/tests/ghc-regress/layout/layout001.stdout
deleted file mode 100644
index be1cd62b20..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout001.stdout
+++ /dev/null
@@ -1,9 +0,0 @@
-Running with -XNoAlternativeLayoutRule
-Running with -XAlternativeLayoutRule
-
-layout001.hs:6:3: parse error on input `where'
-Running with -XAlternativeLayoutRule -XAlternativeLayoutRuleTransitional
-
-layout001.hs:6:3:
- transitional layout will not be accepted in the future:
- `where' clause at the same depth as implicit layout block
diff --git a/testsuite/tests/ghc-regress/layout/layout002.hs b/testsuite/tests/ghc-regress/layout/layout002.hs
deleted file mode 100644
index 17f895e092..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout002.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module M where
-
-f = if True then do undefined else undefined
-
diff --git a/testsuite/tests/ghc-regress/layout/layout002.stdout b/testsuite/tests/ghc-regress/layout/layout002.stdout
deleted file mode 100644
index 7197cdaa39..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout002.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-Running with -XNoAlternativeLayoutRule
-Running with -XAlternativeLayoutRule
-Running with -XAlternativeLayoutRule -XAlternativeLayoutRuleTransitional
diff --git a/testsuite/tests/ghc-regress/layout/layout003.hs b/testsuite/tests/ghc-regress/layout/layout003.hs
deleted file mode 100644
index d9a99afdcb..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout003.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-
-module M where
-
--- The array package used to have things in this sort of pattern, where
--- the "parse error" rule is needed to close the do block's layout
-
-f :: [IO ()]
-f = [do
- undefined
- undefined
- | _ <- undefined]
-
diff --git a/testsuite/tests/ghc-regress/layout/layout003.stdout b/testsuite/tests/ghc-regress/layout/layout003.stdout
deleted file mode 100644
index e40bac2077..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout003.stdout
+++ /dev/null
@@ -1,9 +0,0 @@
-Running with -XNoAlternativeLayoutRule
-Running with -XAlternativeLayoutRule
-
-layout003.hs:11:4: parse error on input `|'
-Running with -XAlternativeLayoutRule -XAlternativeLayoutRuleTransitional
-
-layout003.hs:11:4:
- transitional layout will not be accepted in the future:
- `|' at the same depth as implicit layout block
diff --git a/testsuite/tests/ghc-regress/layout/layout004.hs b/testsuite/tests/ghc-regress/layout/layout004.hs
deleted file mode 100644
index 46e47b13bd..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout004.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-{-# LANGUAGE PatternGuards #-}
-
-module M where
-
-f | Just x <- undefined,
- let y = x,
- undefined x y
- = ()
-
diff --git a/testsuite/tests/ghc-regress/layout/layout004.stdout b/testsuite/tests/ghc-regress/layout/layout004.stdout
deleted file mode 100644
index bb5cb0661b..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout004.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-Running with -XNoAlternativeLayoutRule
-Running with -XAlternativeLayoutRule
-
-layout004.hs:7:14: parse error on input `,'
-Running with -XAlternativeLayoutRule -XAlternativeLayoutRuleTransitional
-
-layout004.hs:7:14: parse error on input `,'
diff --git a/testsuite/tests/ghc-regress/layout/layout005.hs b/testsuite/tests/ghc-regress/layout/layout005.hs
deleted file mode 100644
index df68795665..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout005.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-module M where
-
--- GHC's Lexer.x had a piece of code like this
-
-f = if True then do
- case () of
- () -> ()
- else ()
-
diff --git a/testsuite/tests/ghc-regress/layout/layout005.stdout b/testsuite/tests/ghc-regress/layout/layout005.stdout
deleted file mode 100644
index 7197cdaa39..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout005.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-Running with -XNoAlternativeLayoutRule
-Running with -XAlternativeLayoutRule
-Running with -XAlternativeLayoutRule -XAlternativeLayoutRuleTransitional
diff --git a/testsuite/tests/ghc-regress/layout/layout006.hs b/testsuite/tests/ghc-regress/layout/layout006.hs
deleted file mode 100644
index 70eacb42cf..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout006.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
-module M where
-
--- GHC's RdrHsSyn.lhs had a piece of code like this
-
-f :: IO ()
-f
- | True = do
- let x = ()
- y = ()
- return ()
- | True = return ()
-
diff --git a/testsuite/tests/ghc-regress/layout/layout006.stdout b/testsuite/tests/ghc-regress/layout/layout006.stdout
deleted file mode 100644
index ab33a6e1fe..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout006.stdout
+++ /dev/null
@@ -1,9 +0,0 @@
-Running with -XNoAlternativeLayoutRule
-Running with -XAlternativeLayoutRule
-
-layout006.hs:12:2: parse error on input `|'
-Running with -XAlternativeLayoutRule -XAlternativeLayoutRuleTransitional
-
-layout006.hs:12:2:
- transitional layout will not be accepted in the future:
- `|' at the same depth as implicit layout block
diff --git a/testsuite/tests/ghc-regress/layout/layout007.hs b/testsuite/tests/ghc-regress/layout/layout007.hs
deleted file mode 100644
index f620bdb2e8..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout007.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-{-# LANGUAGE TemplateHaskell #-}
-
-module M where
-
--- The paren here closes the open-splice - it doesn't match an
--- opening paren
-
-f :: IO ()
-f = do print $( [| 'a' |] )
-
diff --git a/testsuite/tests/ghc-regress/layout/layout007.stdout b/testsuite/tests/ghc-regress/layout/layout007.stdout
deleted file mode 100644
index 7197cdaa39..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout007.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-Running with -XNoAlternativeLayoutRule
-Running with -XAlternativeLayoutRule
-Running with -XAlternativeLayoutRule -XAlternativeLayoutRuleTransitional
diff --git a/testsuite/tests/ghc-regress/layout/layout008.hs b/testsuite/tests/ghc-regress/layout/layout008.hs
deleted file mode 100644
index e484ebe44c..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout008.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-
-{-# LANGUAGE RecursiveDo, DoRec #-}
-{-# OPTIONS_GHC -fno-warn-deprecated-flags #-}
-
-module M where
-
--- do, mdo and rec should all open layouts
-
-f :: IO ()
-f = do print 'a'
- print 'b'
-
-g :: IO ()
-g = mdo print 'a'
- print 'b'
-
-h :: IO ()
-h = do print 'a'
- rec print 'b'
- print 'c'
- print 'd'
-
diff --git a/testsuite/tests/ghc-regress/layout/layout008.stdout b/testsuite/tests/ghc-regress/layout/layout008.stdout
deleted file mode 100644
index 7197cdaa39..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout008.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-Running with -XNoAlternativeLayoutRule
-Running with -XAlternativeLayoutRule
-Running with -XAlternativeLayoutRule -XAlternativeLayoutRuleTransitional
diff --git a/testsuite/tests/ghc-regress/layout/layout009.hs b/testsuite/tests/ghc-regress/layout/layout009.hs
deleted file mode 100644
index 5383a4d80e..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout009.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module M where
-
-f :: Char
-f = let {x = 'a'} in x
-
diff --git a/testsuite/tests/ghc-regress/layout/layout009.stdout b/testsuite/tests/ghc-regress/layout/layout009.stdout
deleted file mode 100644
index 7197cdaa39..0000000000
--- a/testsuite/tests/ghc-regress/layout/layout009.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-Running with -XNoAlternativeLayoutRule
-Running with -XAlternativeLayoutRule
-Running with -XAlternativeLayoutRule -XAlternativeLayoutRuleTransitional
diff --git a/testsuite/tests/ghc-regress/lib/CPUTime/CPUTime001.hs b/testsuite/tests/ghc-regress/lib/CPUTime/CPUTime001.hs
deleted file mode 100644
index 6c43c57ec5..0000000000
--- a/testsuite/tests/ghc-regress/lib/CPUTime/CPUTime001.hs
+++ /dev/null
@@ -1,26 +0,0 @@
--- !!! Test getCPUTime
-
-import System.CPUTime
-import System.IO
-
-main :: IO ()
-main = do
- t28 <- timeFib 28
- t29 <- timeFib 29
- t30 <- timeFib 30
- print (t28 <= t29, t29 <= t30)
-
-timeFib :: Integer -> IO Integer
-timeFib n = do
- start <- getCPUTime
- print (nfib n)
- end <- getCPUTime
- return (end - start)
-
-nfib :: Integer -> Integer
-nfib n
- | n <= 1 = 1
- | otherwise = (n1 + n2 + 1)
- where
- n1 = nfib (n-1)
- n2 = nfib (n-2)
diff --git a/testsuite/tests/ghc-regress/lib/CPUTime/CPUTime001.stdout b/testsuite/tests/ghc-regress/lib/CPUTime/CPUTime001.stdout
deleted file mode 100644
index 032e7595f0..0000000000
--- a/testsuite/tests/ghc-regress/lib/CPUTime/CPUTime001.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-1028457
-1664079
-2692537
-(True,True)
diff --git a/testsuite/tests/ghc-regress/lib/CPUTime/Makefile b/testsuite/tests/ghc-regress/lib/CPUTime/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/CPUTime/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/CPUTime/all.T b/testsuite/tests/ghc-regress/lib/CPUTime/all.T
deleted file mode 100644
index d204b0a7aa..0000000000
--- a/testsuite/tests/ghc-regress/lib/CPUTime/all.T
+++ /dev/null
@@ -1 +0,0 @@
-test('CPUTime001', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/lib/Char/Makefile b/testsuite/tests/ghc-regress/lib/Char/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/Char/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/Char/all.T b/testsuite/tests/ghc-regress/lib/Char/all.T
deleted file mode 100644
index 81ecb28f69..0000000000
--- a/testsuite/tests/ghc-regress/lib/Char/all.T
+++ /dev/null
@@ -1,10 +0,0 @@
-test('readLitChar', normal, compile_and_run, [''])
-
-if config.platform == 'i386-unknown-openbsd':
- ways = expect_fail
-else:
- ways = normal
-
-test('unicode001', ways, compile_and_run, [''])
-test('unicode002', ways, compile_and_run, [''])
-
diff --git a/testsuite/tests/ghc-regress/lib/Char/readLitChar.hs b/testsuite/tests/ghc-regress/lib/Char/readLitChar.hs
deleted file mode 100644
index 7dc01e36e4..0000000000
--- a/testsuite/tests/ghc-regress/lib/Char/readLitChar.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module Main (main)
-where
-
-import Data.Char (digitToInt, lexLitChar, readLitChar)
-
-main :: IO ()
-main =
- do putStrLn (show $ readLitChar "A")
- putStrLn (show $ readLitChar "'A'")
- putStrLn (show $ lexLitChar "A")
- putStrLn (show $ lexLitChar "'A'")
-
diff --git a/testsuite/tests/ghc-regress/lib/Char/readLitChar.stdout b/testsuite/tests/ghc-regress/lib/Char/readLitChar.stdout
deleted file mode 100644
index 649c342e4a..0000000000
--- a/testsuite/tests/ghc-regress/lib/Char/readLitChar.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-[('A',"")]
-[('\'',"A'")]
-[("A","")]
-[("'","A'")]
diff --git a/testsuite/tests/ghc-regress/lib/Char/unicode001.hs b/testsuite/tests/ghc-regress/lib/Char/unicode001.hs
deleted file mode 100644
index 90da1d80ee..0000000000
--- a/testsuite/tests/ghc-regress/lib/Char/unicode001.hs
+++ /dev/null
@@ -1,46 +0,0 @@
--- !!! Tests the various character classifiactions for a selection of Unicode
--- characters.
-
-module Main where
-
-import Data.Char
-
-main = do
- putStrLn (" " ++ concat (map (++" ") strs))
- mapM putStrLn (map do_char chars)
- where
- do_char char = s ++ (take (12-length s) (repeat ' ')) ++ concat (map f bs)
- where
- s = show char
- bs = map ($char) functions
- f True = "X "
- f False = " "
-
-strs = ["upper","lower","alpha","alnum","digit","print","space","cntrl"]
-
-functions = [isUpper,isLower,isAlpha,isAlphaNum,isDigit,isPrint,isSpace,isControl]
-
-chars = [backspace,tab,space,zero,lower_a,upper_a,delete,
- right_pointing_double_angle_quotation_mark,
- greek_capital_letter_alpha,
- bengali_digit_zero,
- en_space,
- gothic_letter_ahsa,
- monospaced_digit_zero
- ]
-
-backspace = '\x08'
-tab = '\t'
-space = ' '
-zero = '0'
-lower_a = 'a'
-upper_a = 'A'
-delete = '\x7f'
-right_pointing_double_angle_quotation_mark = '\xBB'
-latin_small_letter_i_with_caron = '\x1D0'
-combining_acute_accent = '\x301'
-greek_capital_letter_alpha = '\x0391'
-bengali_digit_zero = '\x09E6'
-en_space = '\x2002'
-gothic_letter_ahsa = '\x10330'
-monospaced_digit_zero = '\x1D7F6'
diff --git a/testsuite/tests/ghc-regress/lib/Char/unicode001.stdout b/testsuite/tests/ghc-regress/lib/Char/unicode001.stdout
deleted file mode 100644
index 86163abae1..0000000000
--- a/testsuite/tests/ghc-regress/lib/Char/unicode001.stdout
+++ /dev/null
@@ -1,14 +0,0 @@
- upper lower alpha alnum digit print space cntrl
-'\b' X
-'\t' X X
-' ' X X
-'0' X X X
-'a' X X X X
-'A' X X X X
-'\DEL' X
-'\187' X
-'\913' X X X X
-'\2534' X X
-'\8194' X X
-'\66352' X X X
-'\120822' X X
diff --git a/testsuite/tests/ghc-regress/lib/Char/unicode001.stdout-hugs b/testsuite/tests/ghc-regress/lib/Char/unicode001.stdout-hugs
deleted file mode 100644
index 98c9568f8e..0000000000
--- a/testsuite/tests/ghc-regress/lib/Char/unicode001.stdout-hugs
+++ /dev/null
@@ -1,14 +0,0 @@
- upper lower alpha alnum digit print space cntrl
-'\b' X
-'\t' X X
-' ' X X
-'0' X X X
-'a' X X X X
-'A' X X X X
-'\DEL' X
-'\187' X
-'\913' X X X X
-'\2534' X X
-'\8194' X
-'\66352' X X X
-'\120822' X X
diff --git a/testsuite/tests/ghc-regress/lib/Char/unicode002.hs b/testsuite/tests/ghc-regress/lib/Char/unicode002.hs
deleted file mode 100644
index 50ed5ddf44..0000000000
--- a/testsuite/tests/ghc-regress/lib/Char/unicode002.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-module Main where
-
-
-import Data.Char
-import Numeric
-
-header = "Code C P S U L A D"
-
-preds = [
- isControl,
- isPrint,
- isSpace,
- isUpper,
- isLower,
- isAlpha,
- isDigit]
-
-prtBool :: Bool -> String
-
-prtBool True = "T "
-prtBool False = "F "
-
-showCode :: Char -> Int -> String
-
-showCode c w = code ++ pad
- where
- code = show (ord c)
- l = length code
- spaces = map anytospace [1..]
- anytospace _ = ' '
- pad | l >= w = ""
- | otherwise = take (w - l) spaces
-
-charCode :: Char -> String
-
-rapply a b = b a
-
-charCode c = (showCode c 5) ++ (foldr1 (++) $ map prtBool $ map (rapply c) preds)
-
-main = do
- putStrLn header
- mapM (putStrLn . charCode) [ (chr 0) .. (chr 6553) ]
-
-
diff --git a/testsuite/tests/ghc-regress/lib/Char/unicode002.stdout b/testsuite/tests/ghc-regress/lib/Char/unicode002.stdout
deleted file mode 100644
index 5c1f4c3342..0000000000
--- a/testsuite/tests/ghc-regress/lib/Char/unicode002.stdout
+++ /dev/null
@@ -1,6555 +0,0 @@
-Code C P S U L A D
-0 T F F F F F F
-1 T F F F F F F
-2 T F F F F F F
-3 T F F F F F F
-4 T F F F F F F
-5 T F F F F F F
-6 T F F F F F F
-7 T F F F F F F
-8 T F F F F F F
-9 T F T F F F F
-10 T F T F F F F
-11 T F T F F F F
-12 T F T F F F F
-13 T F T F F F F
-14 T F F F F F F
-15 T F F F F F F
-16 T F F F F F F
-17 T F F F F F F
-18 T F F F F F F
-19 T F F F F F F
-20 T F F F F F F
-21 T F F F F F F
-22 T F F F F F F
-23 T F F F F F F
-24 T F F F F F F
-25 T F F F F F F
-26 T F F F F F F
-27 T F F F F F F
-28 T F F F F F F
-29 T F F F F F F
-30 T F F F F F F
-31 T F F F F F F
-32 F T T F F F F
-33 F T F F F F F
-34 F T F F F F F
-35 F T F F F F F
-36 F T F F F F F
-37 F T F F F F F
-38 F T F F F F F
-39 F T F F F F F
-40 F T F F F F F
-41 F T F F F F F
-42 F T F F F F F
-43 F T F F F F F
-44 F T F F F F F
-45 F T F F F F F
-46 F T F F F F F
-47 F T F F F F F
-48 F T F F F F T
-49 F T F F F F T
-50 F T F F F F T
-51 F T F F F F T
-52 F T F F F F T
-53 F T F F F F T
-54 F T F F F F T
-55 F T F F F F T
-56 F T F F F F T
-57 F T F F F F T
-58 F T F F F F F
-59 F T F F F F F
-60 F T F F F F F
-61 F T F F F F F
-62 F T F F F F F
-63 F T F F F F F
-64 F T F F F F F
-65 F T F T F T F
-66 F T F T F T F
-67 F T F T F T F
-68 F T F T F T F
-69 F T F T F T F
-70 F T F T F T F
-71 F T F T F T F
-72 F T F T F T F
-73 F T F T F T F
-74 F T F T F T F
-75 F T F T F T F
-76 F T F T F T F
-77 F T F T F T F
-78 F T F T F T F
-79 F T F T F T F
-80 F T F T F T F
-81 F T F T F T F
-82 F T F T F T F
-83 F T F T F T F
-84 F T F T F T F
-85 F T F T F T F
-86 F T F T F T F
-87 F T F T F T F
-88 F T F T F T F
-89 F T F T F T F
-90 F T F T F T F
-91 F T F F F F F
-92 F T F F F F F
-93 F T F F F F F
-94 F T F F F F F
-95 F T F F F F F
-96 F T F F F F F
-97 F T F F T T F
-98 F T F F T T F
-99 F T F F T T F
-100 F T F F T T F
-101 F T F F T T F
-102 F T F F T T F
-103 F T F F T T F
-104 F T F F T T F
-105 F T F F T T F
-106 F T F F T T F
-107 F T F F T T F
-108 F T F F T T F
-109 F T F F T T F
-110 F T F F T T F
-111 F T F F T T F
-112 F T F F T T F
-113 F T F F T T F
-114 F T F F T T F
-115 F T F F T T F
-116 F T F F T T F
-117 F T F F T T F
-118 F T F F T T F
-119 F T F F T T F
-120 F T F F T T F
-121 F T F F T T F
-122 F T F F T T F
-123 F T F F F F F
-124 F T F F F F F
-125 F T F F F F F
-126 F T F F F F F
-127 T F F F F F F
-128 T F F F F F F
-129 T F F F F F F
-130 T F F F F F F
-131 T F F F F F F
-132 T F F F F F F
-133 T F F F F F F
-134 T F F F F F F
-135 T F F F F F F
-136 T F F F F F F
-137 T F F F F F F
-138 T F F F F F F
-139 T F F F F F F
-140 T F F F F F F
-141 T F F F F F F
-142 T F F F F F F
-143 T F F F F F F
-144 T F F F F F F
-145 T F F F F F F
-146 T F F F F F F
-147 T F F F F F F
-148 T F F F F F F
-149 T F F F F F F
-150 T F F F F F F
-151 T F F F F F F
-152 T F F F F F F
-153 T F F F F F F
-154 T F F F F F F
-155 T F F F F F F
-156 T F F F F F F
-157 T F F F F F F
-158 T F F F F F F
-159 T F F F F F F
-160 F T T F F F F
-161 F T F F F F F
-162 F T F F F F F
-163 F T F F F F F
-164 F T F F F F F
-165 F T F F F F F
-166 F T F F F F F
-167 F T F F F F F
-168 F T F F F F F
-169 F T F F F F F
-170 F T F F T T F
-171 F T F F F F F
-172 F T F F F F F
-173 F F F F F F F
-174 F T F F F F F
-175 F T F F F F F
-176 F T F F F F F
-177 F T F F F F F
-178 F T F F F F F
-179 F T F F F F F
-180 F T F F F F F
-181 F T F F T T F
-182 F T F F F F F
-183 F T F F F F F
-184 F T F F F F F
-185 F T F F F F F
-186 F T F F T T F
-187 F T F F F F F
-188 F T F F F F F
-189 F T F F F F F
-190 F T F F F F F
-191 F T F F F F F
-192 F T F T F T F
-193 F T F T F T F
-194 F T F T F T F
-195 F T F T F T F
-196 F T F T F T F
-197 F T F T F T F
-198 F T F T F T F
-199 F T F T F T F
-200 F T F T F T F
-201 F T F T F T F
-202 F T F T F T F
-203 F T F T F T F
-204 F T F T F T F
-205 F T F T F T F
-206 F T F T F T F
-207 F T F T F T F
-208 F T F T F T F
-209 F T F T F T F
-210 F T F T F T F
-211 F T F T F T F
-212 F T F T F T F
-213 F T F T F T F
-214 F T F T F T F
-215 F T F F F F F
-216 F T F T F T F
-217 F T F T F T F
-218 F T F T F T F
-219 F T F T F T F
-220 F T F T F T F
-221 F T F T F T F
-222 F T F T F T F
-223 F T F F T T F
-224 F T F F T T F
-225 F T F F T T F
-226 F T F F T T F
-227 F T F F T T F
-228 F T F F T T F
-229 F T F F T T F
-230 F T F F T T F
-231 F T F F T T F
-232 F T F F T T F
-233 F T F F T T F
-234 F T F F T T F
-235 F T F F T T F
-236 F T F F T T F
-237 F T F F T T F
-238 F T F F T T F
-239 F T F F T T F
-240 F T F F T T F
-241 F T F F T T F
-242 F T F F T T F
-243 F T F F T T F
-244 F T F F T T F
-245 F T F F T T F
-246 F T F F T T F
-247 F T F F F F F
-248 F T F F T T F
-249 F T F F T T F
-250 F T F F T T F
-251 F T F F T T F
-252 F T F F T T F
-253 F T F F T T F
-254 F T F F T T F
-255 F T F F T T F
-256 F T F T F T F
-257 F T F F T T F
-258 F T F T F T F
-259 F T F F T T F
-260 F T F T F T F
-261 F T F F T T F
-262 F T F T F T F
-263 F T F F T T F
-264 F T F T F T F
-265 F T F F T T F
-266 F T F T F T F
-267 F T F F T T F
-268 F T F T F T F
-269 F T F F T T F
-270 F T F T F T F
-271 F T F F T T F
-272 F T F T F T F
-273 F T F F T T F
-274 F T F T F T F
-275 F T F F T T F
-276 F T F T F T F
-277 F T F F T T F
-278 F T F T F T F
-279 F T F F T T F
-280 F T F T F T F
-281 F T F F T T F
-282 F T F T F T F
-283 F T F F T T F
-284 F T F T F T F
-285 F T F F T T F
-286 F T F T F T F
-287 F T F F T T F
-288 F T F T F T F
-289 F T F F T T F
-290 F T F T F T F
-291 F T F F T T F
-292 F T F T F T F
-293 F T F F T T F
-294 F T F T F T F
-295 F T F F T T F
-296 F T F T F T F
-297 F T F F T T F
-298 F T F T F T F
-299 F T F F T T F
-300 F T F T F T F
-301 F T F F T T F
-302 F T F T F T F
-303 F T F F T T F
-304 F T F T F T F
-305 F T F F T T F
-306 F T F T F T F
-307 F T F F T T F
-308 F T F T F T F
-309 F T F F T T F
-310 F T F T F T F
-311 F T F F T T F
-312 F T F F T T F
-313 F T F T F T F
-314 F T F F T T F
-315 F T F T F T F
-316 F T F F T T F
-317 F T F T F T F
-318 F T F F T T F
-319 F T F T F T F
-320 F T F F T T F
-321 F T F T F T F
-322 F T F F T T F
-323 F T F T F T F
-324 F T F F T T F
-325 F T F T F T F
-326 F T F F T T F
-327 F T F T F T F
-328 F T F F T T F
-329 F T F F T T F
-330 F T F T F T F
-331 F T F F T T F
-332 F T F T F T F
-333 F T F F T T F
-334 F T F T F T F
-335 F T F F T T F
-336 F T F T F T F
-337 F T F F T T F
-338 F T F T F T F
-339 F T F F T T F
-340 F T F T F T F
-341 F T F F T T F
-342 F T F T F T F
-343 F T F F T T F
-344 F T F T F T F
-345 F T F F T T F
-346 F T F T F T F
-347 F T F F T T F
-348 F T F T F T F
-349 F T F F T T F
-350 F T F T F T F
-351 F T F F T T F
-352 F T F T F T F
-353 F T F F T T F
-354 F T F T F T F
-355 F T F F T T F
-356 F T F T F T F
-357 F T F F T T F
-358 F T F T F T F
-359 F T F F T T F
-360 F T F T F T F
-361 F T F F T T F
-362 F T F T F T F
-363 F T F F T T F
-364 F T F T F T F
-365 F T F F T T F
-366 F T F T F T F
-367 F T F F T T F
-368 F T F T F T F
-369 F T F F T T F
-370 F T F T F T F
-371 F T F F T T F
-372 F T F T F T F
-373 F T F F T T F
-374 F T F T F T F
-375 F T F F T T F
-376 F T F T F T F
-377 F T F T F T F
-378 F T F F T T F
-379 F T F T F T F
-380 F T F F T T F
-381 F T F T F T F
-382 F T F F T T F
-383 F T F F T T F
-384 F T F F T T F
-385 F T F T F T F
-386 F T F T F T F
-387 F T F F T T F
-388 F T F T F T F
-389 F T F F T T F
-390 F T F T F T F
-391 F T F T F T F
-392 F T F F T T F
-393 F T F T F T F
-394 F T F T F T F
-395 F T F T F T F
-396 F T F F T T F
-397 F T F F T T F
-398 F T F T F T F
-399 F T F T F T F
-400 F T F T F T F
-401 F T F T F T F
-402 F T F F T T F
-403 F T F T F T F
-404 F T F T F T F
-405 F T F F T T F
-406 F T F T F T F
-407 F T F T F T F
-408 F T F T F T F
-409 F T F F T T F
-410 F T F F T T F
-411 F T F F T T F
-412 F T F T F T F
-413 F T F T F T F
-414 F T F F T T F
-415 F T F T F T F
-416 F T F T F T F
-417 F T F F T T F
-418 F T F T F T F
-419 F T F F T T F
-420 F T F T F T F
-421 F T F F T T F
-422 F T F T F T F
-423 F T F T F T F
-424 F T F F T T F
-425 F T F T F T F
-426 F T F F T T F
-427 F T F F T T F
-428 F T F T F T F
-429 F T F F T T F
-430 F T F T F T F
-431 F T F T F T F
-432 F T F F T T F
-433 F T F T F T F
-434 F T F T F T F
-435 F T F T F T F
-436 F T F F T T F
-437 F T F T F T F
-438 F T F F T T F
-439 F T F T F T F
-440 F T F T F T F
-441 F T F F T T F
-442 F T F F T T F
-443 F T F F F T F
-444 F T F T F T F
-445 F T F F T T F
-446 F T F F T T F
-447 F T F F T T F
-448 F T F F F T F
-449 F T F F F T F
-450 F T F F F T F
-451 F T F F F T F
-452 F T F T F T F
-453 F T F T F T F
-454 F T F F T T F
-455 F T F T F T F
-456 F T F T F T F
-457 F T F F T T F
-458 F T F T F T F
-459 F T F T F T F
-460 F T F F T T F
-461 F T F T F T F
-462 F T F F T T F
-463 F T F T F T F
-464 F T F F T T F
-465 F T F T F T F
-466 F T F F T T F
-467 F T F T F T F
-468 F T F F T T F
-469 F T F T F T F
-470 F T F F T T F
-471 F T F T F T F
-472 F T F F T T F
-473 F T F T F T F
-474 F T F F T T F
-475 F T F T F T F
-476 F T F F T T F
-477 F T F F T T F
-478 F T F T F T F
-479 F T F F T T F
-480 F T F T F T F
-481 F T F F T T F
-482 F T F T F T F
-483 F T F F T T F
-484 F T F T F T F
-485 F T F F T T F
-486 F T F T F T F
-487 F T F F T T F
-488 F T F T F T F
-489 F T F F T T F
-490 F T F T F T F
-491 F T F F T T F
-492 F T F T F T F
-493 F T F F T T F
-494 F T F T F T F
-495 F T F F T T F
-496 F T F F T T F
-497 F T F T F T F
-498 F T F T F T F
-499 F T F F T T F
-500 F T F T F T F
-501 F T F F T T F
-502 F T F T F T F
-503 F T F T F T F
-504 F T F T F T F
-505 F T F F T T F
-506 F T F T F T F
-507 F T F F T T F
-508 F T F T F T F
-509 F T F F T T F
-510 F T F T F T F
-511 F T F F T T F
-512 F T F T F T F
-513 F T F F T T F
-514 F T F T F T F
-515 F T F F T T F
-516 F T F T F T F
-517 F T F F T T F
-518 F T F T F T F
-519 F T F F T T F
-520 F T F T F T F
-521 F T F F T T F
-522 F T F T F T F
-523 F T F F T T F
-524 F T F T F T F
-525 F T F F T T F
-526 F T F T F T F
-527 F T F F T T F
-528 F T F T F T F
-529 F T F F T T F
-530 F T F T F T F
-531 F T F F T T F
-532 F T F T F T F
-533 F T F F T T F
-534 F T F T F T F
-535 F T F F T T F
-536 F T F T F T F
-537 F T F F T T F
-538 F T F T F T F
-539 F T F F T T F
-540 F T F T F T F
-541 F T F F T T F
-542 F T F T F T F
-543 F T F F T T F
-544 F T F T F T F
-545 F T F F T T F
-546 F T F T F T F
-547 F T F F T T F
-548 F T F T F T F
-549 F T F F T T F
-550 F T F T F T F
-551 F T F F T T F
-552 F T F T F T F
-553 F T F F T T F
-554 F T F T F T F
-555 F T F F T T F
-556 F T F T F T F
-557 F T F F T T F
-558 F T F T F T F
-559 F T F F T T F
-560 F T F T F T F
-561 F T F F T T F
-562 F T F T F T F
-563 F T F F T T F
-564 F T F F T T F
-565 F T F F T T F
-566 F T F F T T F
-567 F T F F T T F
-568 F T F F T T F
-569 F T F F T T F
-570 F T F T F T F
-571 F T F T F T F
-572 F T F F T T F
-573 F T F T F T F
-574 F T F T F T F
-575 F T F F T T F
-576 F T F F T T F
-577 F T F T F T F
-578 F T F F T T F
-579 F T F T F T F
-580 F T F T F T F
-581 F T F T F T F
-582 F T F T F T F
-583 F T F F T T F
-584 F T F T F T F
-585 F T F F T T F
-586 F T F T F T F
-587 F T F F T T F
-588 F T F T F T F
-589 F T F F T T F
-590 F T F T F T F
-591 F T F F T T F
-592 F T F F T T F
-593 F T F F T T F
-594 F T F F T T F
-595 F T F F T T F
-596 F T F F T T F
-597 F T F F T T F
-598 F T F F T T F
-599 F T F F T T F
-600 F T F F T T F
-601 F T F F T T F
-602 F T F F T T F
-603 F T F F T T F
-604 F T F F T T F
-605 F T F F T T F
-606 F T F F T T F
-607 F T F F T T F
-608 F T F F T T F
-609 F T F F T T F
-610 F T F F T T F
-611 F T F F T T F
-612 F T F F T T F
-613 F T F F T T F
-614 F T F F T T F
-615 F T F F T T F
-616 F T F F T T F
-617 F T F F T T F
-618 F T F F T T F
-619 F T F F T T F
-620 F T F F T T F
-621 F T F F T T F
-622 F T F F T T F
-623 F T F F T T F
-624 F T F F T T F
-625 F T F F T T F
-626 F T F F T T F
-627 F T F F T T F
-628 F T F F T T F
-629 F T F F T T F
-630 F T F F T T F
-631 F T F F T T F
-632 F T F F T T F
-633 F T F F T T F
-634 F T F F T T F
-635 F T F F T T F
-636 F T F F T T F
-637 F T F F T T F
-638 F T F F T T F
-639 F T F F T T F
-640 F T F F T T F
-641 F T F F T T F
-642 F T F F T T F
-643 F T F F T T F
-644 F T F F T T F
-645 F T F F T T F
-646 F T F F T T F
-647 F T F F T T F
-648 F T F F T T F
-649 F T F F T T F
-650 F T F F T T F
-651 F T F F T T F
-652 F T F F T T F
-653 F T F F T T F
-654 F T F F T T F
-655 F T F F T T F
-656 F T F F T T F
-657 F T F F T T F
-658 F T F F T T F
-659 F T F F T T F
-660 F T F F F T F
-661 F T F F T T F
-662 F T F F T T F
-663 F T F F T T F
-664 F T F F T T F
-665 F T F F T T F
-666 F T F F T T F
-667 F T F F T T F
-668 F T F F T T F
-669 F T F F T T F
-670 F T F F T T F
-671 F T F F T T F
-672 F T F F T T F
-673 F T F F T T F
-674 F T F F T T F
-675 F T F F T T F
-676 F T F F T T F
-677 F T F F T T F
-678 F T F F T T F
-679 F T F F T T F
-680 F T F F T T F
-681 F T F F T T F
-682 F T F F T T F
-683 F T F F T T F
-684 F T F F T T F
-685 F T F F T T F
-686 F T F F T T F
-687 F T F F T T F
-688 F T F F F T F
-689 F T F F F T F
-690 F T F F F T F
-691 F T F F F T F
-692 F T F F F T F
-693 F T F F F T F
-694 F T F F F T F
-695 F T F F F T F
-696 F T F F F T F
-697 F T F F F T F
-698 F T F F F T F
-699 F T F F F T F
-700 F T F F F T F
-701 F T F F F T F
-702 F T F F F T F
-703 F T F F F T F
-704 F T F F F T F
-705 F T F F F T F
-706 F T F F F F F
-707 F T F F F F F
-708 F T F F F F F
-709 F T F F F F F
-710 F T F F F T F
-711 F T F F F T F
-712 F T F F F T F
-713 F T F F F T F
-714 F T F F F T F
-715 F T F F F T F
-716 F T F F F T F
-717 F T F F F T F
-718 F T F F F T F
-719 F T F F F T F
-720 F T F F F T F
-721 F T F F F T F
-722 F T F F F F F
-723 F T F F F F F
-724 F T F F F F F
-725 F T F F F F F
-726 F T F F F F F
-727 F T F F F F F
-728 F T F F F F F
-729 F T F F F F F
-730 F T F F F F F
-731 F T F F F F F
-732 F T F F F F F
-733 F T F F F F F
-734 F T F F F F F
-735 F T F F F F F
-736 F T F F F T F
-737 F T F F F T F
-738 F T F F F T F
-739 F T F F F T F
-740 F T F F F T F
-741 F T F F F F F
-742 F T F F F F F
-743 F T F F F F F
-744 F T F F F F F
-745 F T F F F F F
-746 F T F F F F F
-747 F T F F F F F
-748 F T F F F T F
-749 F T F F F F F
-750 F T F F F T F
-751 F T F F F F F
-752 F T F F F F F
-753 F T F F F F F
-754 F T F F F F F
-755 F T F F F F F
-756 F T F F F F F
-757 F T F F F F F
-758 F T F F F F F
-759 F T F F F F F
-760 F T F F F F F
-761 F T F F F F F
-762 F T F F F F F
-763 F T F F F F F
-764 F T F F F F F
-765 F T F F F F F
-766 F T F F F F F
-767 F T F F F F F
-768 F T F F F F F
-769 F T F F F F F
-770 F T F F F F F
-771 F T F F F F F
-772 F T F F F F F
-773 F T F F F F F
-774 F T F F F F F
-775 F T F F F F F
-776 F T F F F F F
-777 F T F F F F F
-778 F T F F F F F
-779 F T F F F F F
-780 F T F F F F F
-781 F T F F F F F
-782 F T F F F F F
-783 F T F F F F F
-784 F T F F F F F
-785 F T F F F F F
-786 F T F F F F F
-787 F T F F F F F
-788 F T F F F F F
-789 F T F F F F F
-790 F T F F F F F
-791 F T F F F F F
-792 F T F F F F F
-793 F T F F F F F
-794 F T F F F F F
-795 F T F F F F F
-796 F T F F F F F
-797 F T F F F F F
-798 F T F F F F F
-799 F T F F F F F
-800 F T F F F F F
-801 F T F F F F F
-802 F T F F F F F
-803 F T F F F F F
-804 F T F F F F F
-805 F T F F F F F
-806 F T F F F F F
-807 F T F F F F F
-808 F T F F F F F
-809 F T F F F F F
-810 F T F F F F F
-811 F T F F F F F
-812 F T F F F F F
-813 F T F F F F F
-814 F T F F F F F
-815 F T F F F F F
-816 F T F F F F F
-817 F T F F F F F
-818 F T F F F F F
-819 F T F F F F F
-820 F T F F F F F
-821 F T F F F F F
-822 F T F F F F F
-823 F T F F F F F
-824 F T F F F F F
-825 F T F F F F F
-826 F T F F F F F
-827 F T F F F F F
-828 F T F F F F F
-829 F T F F F F F
-830 F T F F F F F
-831 F T F F F F F
-832 F T F F F F F
-833 F T F F F F F
-834 F T F F F F F
-835 F T F F F F F
-836 F T F F F F F
-837 F T F F F F F
-838 F T F F F F F
-839 F T F F F F F
-840 F T F F F F F
-841 F T F F F F F
-842 F T F F F F F
-843 F T F F F F F
-844 F T F F F F F
-845 F T F F F F F
-846 F T F F F F F
-847 F T F F F F F
-848 F T F F F F F
-849 F T F F F F F
-850 F T F F F F F
-851 F T F F F F F
-852 F T F F F F F
-853 F T F F F F F
-854 F T F F F F F
-855 F T F F F F F
-856 F T F F F F F
-857 F T F F F F F
-858 F T F F F F F
-859 F T F F F F F
-860 F T F F F F F
-861 F T F F F F F
-862 F T F F F F F
-863 F T F F F F F
-864 F T F F F F F
-865 F T F F F F F
-866 F T F F F F F
-867 F T F F F F F
-868 F T F F F F F
-869 F T F F F F F
-870 F T F F F F F
-871 F T F F F F F
-872 F T F F F F F
-873 F T F F F F F
-874 F T F F F F F
-875 F T F F F F F
-876 F T F F F F F
-877 F T F F F F F
-878 F T F F F F F
-879 F T F F F F F
-880 F T F T F T F
-881 F T F F T T F
-882 F T F T F T F
-883 F T F F T T F
-884 F T F F F T F
-885 F T F F F F F
-886 F T F T F T F
-887 F T F F T T F
-888 F F F F F F F
-889 F F F F F F F
-890 F T F F F T F
-891 F T F F T T F
-892 F T F F T T F
-893 F T F F T T F
-894 F T F F F F F
-895 F F F F F F F
-896 F F F F F F F
-897 F F F F F F F
-898 F F F F F F F
-899 F F F F F F F
-900 F T F F F F F
-901 F T F F F F F
-902 F T F T F T F
-903 F T F F F F F
-904 F T F T F T F
-905 F T F T F T F
-906 F T F T F T F
-907 F F F F F F F
-908 F T F T F T F
-909 F F F F F F F
-910 F T F T F T F
-911 F T F T F T F
-912 F T F F T T F
-913 F T F T F T F
-914 F T F T F T F
-915 F T F T F T F
-916 F T F T F T F
-917 F T F T F T F
-918 F T F T F T F
-919 F T F T F T F
-920 F T F T F T F
-921 F T F T F T F
-922 F T F T F T F
-923 F T F T F T F
-924 F T F T F T F
-925 F T F T F T F
-926 F T F T F T F
-927 F T F T F T F
-928 F T F T F T F
-929 F T F T F T F
-930 F F F F F F F
-931 F T F T F T F
-932 F T F T F T F
-933 F T F T F T F
-934 F T F T F T F
-935 F T F T F T F
-936 F T F T F T F
-937 F T F T F T F
-938 F T F T F T F
-939 F T F T F T F
-940 F T F F T T F
-941 F T F F T T F
-942 F T F F T T F
-943 F T F F T T F
-944 F T F F T T F
-945 F T F F T T F
-946 F T F F T T F
-947 F T F F T T F
-948 F T F F T T F
-949 F T F F T T F
-950 F T F F T T F
-951 F T F F T T F
-952 F T F F T T F
-953 F T F F T T F
-954 F T F F T T F
-955 F T F F T T F
-956 F T F F T T F
-957 F T F F T T F
-958 F T F F T T F
-959 F T F F T T F
-960 F T F F T T F
-961 F T F F T T F
-962 F T F F T T F
-963 F T F F T T F
-964 F T F F T T F
-965 F T F F T T F
-966 F T F F T T F
-967 F T F F T T F
-968 F T F F T T F
-969 F T F F T T F
-970 F T F F T T F
-971 F T F F T T F
-972 F T F F T T F
-973 F T F F T T F
-974 F T F F T T F
-975 F T F T F T F
-976 F T F F T T F
-977 F T F F T T F
-978 F T F T F T F
-979 F T F T F T F
-980 F T F T F T F
-981 F T F F T T F
-982 F T F F T T F
-983 F T F F T T F
-984 F T F T F T F
-985 F T F F T T F
-986 F T F T F T F
-987 F T F F T T F
-988 F T F T F T F
-989 F T F F T T F
-990 F T F T F T F
-991 F T F F T T F
-992 F T F T F T F
-993 F T F F T T F
-994 F T F T F T F
-995 F T F F T T F
-996 F T F T F T F
-997 F T F F T T F
-998 F T F T F T F
-999 F T F F T T F
-1000 F T F T F T F
-1001 F T F F T T F
-1002 F T F T F T F
-1003 F T F F T T F
-1004 F T F T F T F
-1005 F T F F T T F
-1006 F T F T F T F
-1007 F T F F T T F
-1008 F T F F T T F
-1009 F T F F T T F
-1010 F T F F T T F
-1011 F T F F T T F
-1012 F T F T F T F
-1013 F T F F T T F
-1014 F T F F F F F
-1015 F T F T F T F
-1016 F T F F T T F
-1017 F T F T F T F
-1018 F T F T F T F
-1019 F T F F T T F
-1020 F T F F T T F
-1021 F T F T F T F
-1022 F T F T F T F
-1023 F T F T F T F
-1024 F T F T F T F
-1025 F T F T F T F
-1026 F T F T F T F
-1027 F T F T F T F
-1028 F T F T F T F
-1029 F T F T F T F
-1030 F T F T F T F
-1031 F T F T F T F
-1032 F T F T F T F
-1033 F T F T F T F
-1034 F T F T F T F
-1035 F T F T F T F
-1036 F T F T F T F
-1037 F T F T F T F
-1038 F T F T F T F
-1039 F T F T F T F
-1040 F T F T F T F
-1041 F T F T F T F
-1042 F T F T F T F
-1043 F T F T F T F
-1044 F T F T F T F
-1045 F T F T F T F
-1046 F T F T F T F
-1047 F T F T F T F
-1048 F T F T F T F
-1049 F T F T F T F
-1050 F T F T F T F
-1051 F T F T F T F
-1052 F T F T F T F
-1053 F T F T F T F
-1054 F T F T F T F
-1055 F T F T F T F
-1056 F T F T F T F
-1057 F T F T F T F
-1058 F T F T F T F
-1059 F T F T F T F
-1060 F T F T F T F
-1061 F T F T F T F
-1062 F T F T F T F
-1063 F T F T F T F
-1064 F T F T F T F
-1065 F T F T F T F
-1066 F T F T F T F
-1067 F T F T F T F
-1068 F T F T F T F
-1069 F T F T F T F
-1070 F T F T F T F
-1071 F T F T F T F
-1072 F T F F T T F
-1073 F T F F T T F
-1074 F T F F T T F
-1075 F T F F T T F
-1076 F T F F T T F
-1077 F T F F T T F
-1078 F T F F T T F
-1079 F T F F T T F
-1080 F T F F T T F
-1081 F T F F T T F
-1082 F T F F T T F
-1083 F T F F T T F
-1084 F T F F T T F
-1085 F T F F T T F
-1086 F T F F T T F
-1087 F T F F T T F
-1088 F T F F T T F
-1089 F T F F T T F
-1090 F T F F T T F
-1091 F T F F T T F
-1092 F T F F T T F
-1093 F T F F T T F
-1094 F T F F T T F
-1095 F T F F T T F
-1096 F T F F T T F
-1097 F T F F T T F
-1098 F T F F T T F
-1099 F T F F T T F
-1100 F T F F T T F
-1101 F T F F T T F
-1102 F T F F T T F
-1103 F T F F T T F
-1104 F T F F T T F
-1105 F T F F T T F
-1106 F T F F T T F
-1107 F T F F T T F
-1108 F T F F T T F
-1109 F T F F T T F
-1110 F T F F T T F
-1111 F T F F T T F
-1112 F T F F T T F
-1113 F T F F T T F
-1114 F T F F T T F
-1115 F T F F T T F
-1116 F T F F T T F
-1117 F T F F T T F
-1118 F T F F T T F
-1119 F T F F T T F
-1120 F T F T F T F
-1121 F T F F T T F
-1122 F T F T F T F
-1123 F T F F T T F
-1124 F T F T F T F
-1125 F T F F T T F
-1126 F T F T F T F
-1127 F T F F T T F
-1128 F T F T F T F
-1129 F T F F T T F
-1130 F T F T F T F
-1131 F T F F T T F
-1132 F T F T F T F
-1133 F T F F T T F
-1134 F T F T F T F
-1135 F T F F T T F
-1136 F T F T F T F
-1137 F T F F T T F
-1138 F T F T F T F
-1139 F T F F T T F
-1140 F T F T F T F
-1141 F T F F T T F
-1142 F T F T F T F
-1143 F T F F T T F
-1144 F T F T F T F
-1145 F T F F T T F
-1146 F T F T F T F
-1147 F T F F T T F
-1148 F T F T F T F
-1149 F T F F T T F
-1150 F T F T F T F
-1151 F T F F T T F
-1152 F T F T F T F
-1153 F T F F T T F
-1154 F T F F F F F
-1155 F T F F F F F
-1156 F T F F F F F
-1157 F T F F F F F
-1158 F T F F F F F
-1159 F T F F F F F
-1160 F T F F F F F
-1161 F T F F F F F
-1162 F T F T F T F
-1163 F T F F T T F
-1164 F T F T F T F
-1165 F T F F T T F
-1166 F T F T F T F
-1167 F T F F T T F
-1168 F T F T F T F
-1169 F T F F T T F
-1170 F T F T F T F
-1171 F T F F T T F
-1172 F T F T F T F
-1173 F T F F T T F
-1174 F T F T F T F
-1175 F T F F T T F
-1176 F T F T F T F
-1177 F T F F T T F
-1178 F T F T F T F
-1179 F T F F T T F
-1180 F T F T F T F
-1181 F T F F T T F
-1182 F T F T F T F
-1183 F T F F T T F
-1184 F T F T F T F
-1185 F T F F T T F
-1186 F T F T F T F
-1187 F T F F T T F
-1188 F T F T F T F
-1189 F T F F T T F
-1190 F T F T F T F
-1191 F T F F T T F
-1192 F T F T F T F
-1193 F T F F T T F
-1194 F T F T F T F
-1195 F T F F T T F
-1196 F T F T F T F
-1197 F T F F T T F
-1198 F T F T F T F
-1199 F T F F T T F
-1200 F T F T F T F
-1201 F T F F T T F
-1202 F T F T F T F
-1203 F T F F T T F
-1204 F T F T F T F
-1205 F T F F T T F
-1206 F T F T F T F
-1207 F T F F T T F
-1208 F T F T F T F
-1209 F T F F T T F
-1210 F T F T F T F
-1211 F T F F T T F
-1212 F T F T F T F
-1213 F T F F T T F
-1214 F T F T F T F
-1215 F T F F T T F
-1216 F T F T F T F
-1217 F T F T F T F
-1218 F T F F T T F
-1219 F T F T F T F
-1220 F T F F T T F
-1221 F T F T F T F
-1222 F T F F T T F
-1223 F T F T F T F
-1224 F T F F T T F
-1225 F T F T F T F
-1226 F T F F T T F
-1227 F T F T F T F
-1228 F T F F T T F
-1229 F T F T F T F
-1230 F T F F T T F
-1231 F T F F T T F
-1232 F T F T F T F
-1233 F T F F T T F
-1234 F T F T F T F
-1235 F T F F T T F
-1236 F T F T F T F
-1237 F T F F T T F
-1238 F T F T F T F
-1239 F T F F T T F
-1240 F T F T F T F
-1241 F T F F T T F
-1242 F T F T F T F
-1243 F T F F T T F
-1244 F T F T F T F
-1245 F T F F T T F
-1246 F T F T F T F
-1247 F T F F T T F
-1248 F T F T F T F
-1249 F T F F T T F
-1250 F T F T F T F
-1251 F T F F T T F
-1252 F T F T F T F
-1253 F T F F T T F
-1254 F T F T F T F
-1255 F T F F T T F
-1256 F T F T F T F
-1257 F T F F T T F
-1258 F T F T F T F
-1259 F T F F T T F
-1260 F T F T F T F
-1261 F T F F T T F
-1262 F T F T F T F
-1263 F T F F T T F
-1264 F T F T F T F
-1265 F T F F T T F
-1266 F T F T F T F
-1267 F T F F T T F
-1268 F T F T F T F
-1269 F T F F T T F
-1270 F T F T F T F
-1271 F T F F T T F
-1272 F T F T F T F
-1273 F T F F T T F
-1274 F T F T F T F
-1275 F T F F T T F
-1276 F T F T F T F
-1277 F T F F T T F
-1278 F T F T F T F
-1279 F T F F T T F
-1280 F T F T F T F
-1281 F T F F T T F
-1282 F T F T F T F
-1283 F T F F T T F
-1284 F T F T F T F
-1285 F T F F T T F
-1286 F T F T F T F
-1287 F T F F T T F
-1288 F T F T F T F
-1289 F T F F T T F
-1290 F T F T F T F
-1291 F T F F T T F
-1292 F T F T F T F
-1293 F T F F T T F
-1294 F T F T F T F
-1295 F T F F T T F
-1296 F T F T F T F
-1297 F T F F T T F
-1298 F T F T F T F
-1299 F T F F T T F
-1300 F T F T F T F
-1301 F T F F T T F
-1302 F T F T F T F
-1303 F T F F T T F
-1304 F T F T F T F
-1305 F T F F T T F
-1306 F T F T F T F
-1307 F T F F T T F
-1308 F T F T F T F
-1309 F T F F T T F
-1310 F T F T F T F
-1311 F T F F T T F
-1312 F T F T F T F
-1313 F T F F T T F
-1314 F T F T F T F
-1315 F T F F T T F
-1316 F T F T F T F
-1317 F T F F T T F
-1318 F T F T F T F
-1319 F T F F T T F
-1320 F F F F F F F
-1321 F F F F F F F
-1322 F F F F F F F
-1323 F F F F F F F
-1324 F F F F F F F
-1325 F F F F F F F
-1326 F F F F F F F
-1327 F F F F F F F
-1328 F F F F F F F
-1329 F T F T F T F
-1330 F T F T F T F
-1331 F T F T F T F
-1332 F T F T F T F
-1333 F T F T F T F
-1334 F T F T F T F
-1335 F T F T F T F
-1336 F T F T F T F
-1337 F T F T F T F
-1338 F T F T F T F
-1339 F T F T F T F
-1340 F T F T F T F
-1341 F T F T F T F
-1342 F T F T F T F
-1343 F T F T F T F
-1344 F T F T F T F
-1345 F T F T F T F
-1346 F T F T F T F
-1347 F T F T F T F
-1348 F T F T F T F
-1349 F T F T F T F
-1350 F T F T F T F
-1351 F T F T F T F
-1352 F T F T F T F
-1353 F T F T F T F
-1354 F T F T F T F
-1355 F T F T F T F
-1356 F T F T F T F
-1357 F T F T F T F
-1358 F T F T F T F
-1359 F T F T F T F
-1360 F T F T F T F
-1361 F T F T F T F
-1362 F T F T F T F
-1363 F T F T F T F
-1364 F T F T F T F
-1365 F T F T F T F
-1366 F T F T F T F
-1367 F F F F F F F
-1368 F F F F F F F
-1369 F T F F F T F
-1370 F T F F F F F
-1371 F T F F F F F
-1372 F T F F F F F
-1373 F T F F F F F
-1374 F T F F F F F
-1375 F T F F F F F
-1376 F F F F F F F
-1377 F T F F T T F
-1378 F T F F T T F
-1379 F T F F T T F
-1380 F T F F T T F
-1381 F T F F T T F
-1382 F T F F T T F
-1383 F T F F T T F
-1384 F T F F T T F
-1385 F T F F T T F
-1386 F T F F T T F
-1387 F T F F T T F
-1388 F T F F T T F
-1389 F T F F T T F
-1390 F T F F T T F
-1391 F T F F T T F
-1392 F T F F T T F
-1393 F T F F T T F
-1394 F T F F T T F
-1395 F T F F T T F
-1396 F T F F T T F
-1397 F T F F T T F
-1398 F T F F T T F
-1399 F T F F T T F
-1400 F T F F T T F
-1401 F T F F T T F
-1402 F T F F T T F
-1403 F T F F T T F
-1404 F T F F T T F
-1405 F T F F T T F
-1406 F T F F T T F
-1407 F T F F T T F
-1408 F T F F T T F
-1409 F T F F T T F
-1410 F T F F T T F
-1411 F T F F T T F
-1412 F T F F T T F
-1413 F T F F T T F
-1414 F T F F T T F
-1415 F T F F T T F
-1416 F F F F F F F
-1417 F T F F F F F
-1418 F T F F F F F
-1419 F F F F F F F
-1420 F F F F F F F
-1421 F F F F F F F
-1422 F F F F F F F
-1423 F F F F F F F
-1424 F F F F F F F
-1425 F T F F F F F
-1426 F T F F F F F
-1427 F T F F F F F
-1428 F T F F F F F
-1429 F T F F F F F
-1430 F T F F F F F
-1431 F T F F F F F
-1432 F T F F F F F
-1433 F T F F F F F
-1434 F T F F F F F
-1435 F T F F F F F
-1436 F T F F F F F
-1437 F T F F F F F
-1438 F T F F F F F
-1439 F T F F F F F
-1440 F T F F F F F
-1441 F T F F F F F
-1442 F T F F F F F
-1443 F T F F F F F
-1444 F T F F F F F
-1445 F T F F F F F
-1446 F T F F F F F
-1447 F T F F F F F
-1448 F T F F F F F
-1449 F T F F F F F
-1450 F T F F F F F
-1451 F T F F F F F
-1452 F T F F F F F
-1453 F T F F F F F
-1454 F T F F F F F
-1455 F T F F F F F
-1456 F T F F F F F
-1457 F T F F F F F
-1458 F T F F F F F
-1459 F T F F F F F
-1460 F T F F F F F
-1461 F T F F F F F
-1462 F T F F F F F
-1463 F T F F F F F
-1464 F T F F F F F
-1465 F T F F F F F
-1466 F T F F F F F
-1467 F T F F F F F
-1468 F T F F F F F
-1469 F T F F F F F
-1470 F T F F F F F
-1471 F T F F F F F
-1472 F T F F F F F
-1473 F T F F F F F
-1474 F T F F F F F
-1475 F T F F F F F
-1476 F T F F F F F
-1477 F T F F F F F
-1478 F T F F F F F
-1479 F T F F F F F
-1480 F F F F F F F
-1481 F F F F F F F
-1482 F F F F F F F
-1483 F F F F F F F
-1484 F F F F F F F
-1485 F F F F F F F
-1486 F F F F F F F
-1487 F F F F F F F
-1488 F T F F F T F
-1489 F T F F F T F
-1490 F T F F F T F
-1491 F T F F F T F
-1492 F T F F F T F
-1493 F T F F F T F
-1494 F T F F F T F
-1495 F T F F F T F
-1496 F T F F F T F
-1497 F T F F F T F
-1498 F T F F F T F
-1499 F T F F F T F
-1500 F T F F F T F
-1501 F T F F F T F
-1502 F T F F F T F
-1503 F T F F F T F
-1504 F T F F F T F
-1505 F T F F F T F
-1506 F T F F F T F
-1507 F T F F F T F
-1508 F T F F F T F
-1509 F T F F F T F
-1510 F T F F F T F
-1511 F T F F F T F
-1512 F T F F F T F
-1513 F T F F F T F
-1514 F T F F F T F
-1515 F F F F F F F
-1516 F F F F F F F
-1517 F F F F F F F
-1518 F F F F F F F
-1519 F F F F F F F
-1520 F T F F F T F
-1521 F T F F F T F
-1522 F T F F F T F
-1523 F T F F F F F
-1524 F T F F F F F
-1525 F F F F F F F
-1526 F F F F F F F
-1527 F F F F F F F
-1528 F F F F F F F
-1529 F F F F F F F
-1530 F F F F F F F
-1531 F F F F F F F
-1532 F F F F F F F
-1533 F F F F F F F
-1534 F F F F F F F
-1535 F F F F F F F
-1536 F F F F F F F
-1537 F F F F F F F
-1538 F F F F F F F
-1539 F F F F F F F
-1540 F F F F F F F
-1541 F F F F F F F
-1542 F T F F F F F
-1543 F T F F F F F
-1544 F T F F F F F
-1545 F T F F F F F
-1546 F T F F F F F
-1547 F T F F F F F
-1548 F T F F F F F
-1549 F T F F F F F
-1550 F T F F F F F
-1551 F T F F F F F
-1552 F T F F F F F
-1553 F T F F F F F
-1554 F T F F F F F
-1555 F T F F F F F
-1556 F T F F F F F
-1557 F T F F F F F
-1558 F T F F F F F
-1559 F T F F F F F
-1560 F T F F F F F
-1561 F T F F F F F
-1562 F T F F F F F
-1563 F T F F F F F
-1564 F F F F F F F
-1565 F F F F F F F
-1566 F T F F F F F
-1567 F T F F F F F
-1568 F T F F F T F
-1569 F T F F F T F
-1570 F T F F F T F
-1571 F T F F F T F
-1572 F T F F F T F
-1573 F T F F F T F
-1574 F T F F F T F
-1575 F T F F F T F
-1576 F T F F F T F
-1577 F T F F F T F
-1578 F T F F F T F
-1579 F T F F F T F
-1580 F T F F F T F
-1581 F T F F F T F
-1582 F T F F F T F
-1583 F T F F F T F
-1584 F T F F F T F
-1585 F T F F F T F
-1586 F T F F F T F
-1587 F T F F F T F
-1588 F T F F F T F
-1589 F T F F F T F
-1590 F T F F F T F
-1591 F T F F F T F
-1592 F T F F F T F
-1593 F T F F F T F
-1594 F T F F F T F
-1595 F T F F F T F
-1596 F T F F F T F
-1597 F T F F F T F
-1598 F T F F F T F
-1599 F T F F F T F
-1600 F T F F F T F
-1601 F T F F F T F
-1602 F T F F F T F
-1603 F T F F F T F
-1604 F T F F F T F
-1605 F T F F F T F
-1606 F T F F F T F
-1607 F T F F F T F
-1608 F T F F F T F
-1609 F T F F F T F
-1610 F T F F F T F
-1611 F T F F F F F
-1612 F T F F F F F
-1613 F T F F F F F
-1614 F T F F F F F
-1615 F T F F F F F
-1616 F T F F F F F
-1617 F T F F F F F
-1618 F T F F F F F
-1619 F T F F F F F
-1620 F T F F F F F
-1621 F T F F F F F
-1622 F T F F F F F
-1623 F T F F F F F
-1624 F T F F F F F
-1625 F T F F F F F
-1626 F T F F F F F
-1627 F T F F F F F
-1628 F T F F F F F
-1629 F T F F F F F
-1630 F T F F F F F
-1631 F T F F F F F
-1632 F T F F F F F
-1633 F T F F F F F
-1634 F T F F F F F
-1635 F T F F F F F
-1636 F T F F F F F
-1637 F T F F F F F
-1638 F T F F F F F
-1639 F T F F F F F
-1640 F T F F F F F
-1641 F T F F F F F
-1642 F T F F F F F
-1643 F T F F F F F
-1644 F T F F F F F
-1645 F T F F F F F
-1646 F T F F F T F
-1647 F T F F F T F
-1648 F T F F F F F
-1649 F T F F F T F
-1650 F T F F F T F
-1651 F T F F F T F
-1652 F T F F F T F
-1653 F T F F F T F
-1654 F T F F F T F
-1655 F T F F F T F
-1656 F T F F F T F
-1657 F T F F F T F
-1658 F T F F F T F
-1659 F T F F F T F
-1660 F T F F F T F
-1661 F T F F F T F
-1662 F T F F F T F
-1663 F T F F F T F
-1664 F T F F F T F
-1665 F T F F F T F
-1666 F T F F F T F
-1667 F T F F F T F
-1668 F T F F F T F
-1669 F T F F F T F
-1670 F T F F F T F
-1671 F T F F F T F
-1672 F T F F F T F
-1673 F T F F F T F
-1674 F T F F F T F
-1675 F T F F F T F
-1676 F T F F F T F
-1677 F T F F F T F
-1678 F T F F F T F
-1679 F T F F F T F
-1680 F T F F F T F
-1681 F T F F F T F
-1682 F T F F F T F
-1683 F T F F F T F
-1684 F T F F F T F
-1685 F T F F F T F
-1686 F T F F F T F
-1687 F T F F F T F
-1688 F T F F F T F
-1689 F T F F F T F
-1690 F T F F F T F
-1691 F T F F F T F
-1692 F T F F F T F
-1693 F T F F F T F
-1694 F T F F F T F
-1695 F T F F F T F
-1696 F T F F F T F
-1697 F T F F F T F
-1698 F T F F F T F
-1699 F T F F F T F
-1700 F T F F F T F
-1701 F T F F F T F
-1702 F T F F F T F
-1703 F T F F F T F
-1704 F T F F F T F
-1705 F T F F F T F
-1706 F T F F F T F
-1707 F T F F F T F
-1708 F T F F F T F
-1709 F T F F F T F
-1710 F T F F F T F
-1711 F T F F F T F
-1712 F T F F F T F
-1713 F T F F F T F
-1714 F T F F F T F
-1715 F T F F F T F
-1716 F T F F F T F
-1717 F T F F F T F
-1718 F T F F F T F
-1719 F T F F F T F
-1720 F T F F F T F
-1721 F T F F F T F
-1722 F T F F F T F
-1723 F T F F F T F
-1724 F T F F F T F
-1725 F T F F F T F
-1726 F T F F F T F
-1727 F T F F F T F
-1728 F T F F F T F
-1729 F T F F F T F
-1730 F T F F F T F
-1731 F T F F F T F
-1732 F T F F F T F
-1733 F T F F F T F
-1734 F T F F F T F
-1735 F T F F F T F
-1736 F T F F F T F
-1737 F T F F F T F
-1738 F T F F F T F
-1739 F T F F F T F
-1740 F T F F F T F
-1741 F T F F F T F
-1742 F T F F F T F
-1743 F T F F F T F
-1744 F T F F F T F
-1745 F T F F F T F
-1746 F T F F F T F
-1747 F T F F F T F
-1748 F T F F F F F
-1749 F T F F F T F
-1750 F T F F F F F
-1751 F T F F F F F
-1752 F T F F F F F
-1753 F T F F F F F
-1754 F T F F F F F
-1755 F T F F F F F
-1756 F T F F F F F
-1757 F F F F F F F
-1758 F T F F F F F
-1759 F T F F F F F
-1760 F T F F F F F
-1761 F T F F F F F
-1762 F T F F F F F
-1763 F T F F F F F
-1764 F T F F F F F
-1765 F T F F F T F
-1766 F T F F F T F
-1767 F T F F F F F
-1768 F T F F F F F
-1769 F T F F F F F
-1770 F T F F F F F
-1771 F T F F F F F
-1772 F T F F F F F
-1773 F T F F F F F
-1774 F T F F F T F
-1775 F T F F F T F
-1776 F T F F F F F
-1777 F T F F F F F
-1778 F T F F F F F
-1779 F T F F F F F
-1780 F T F F F F F
-1781 F T F F F F F
-1782 F T F F F F F
-1783 F T F F F F F
-1784 F T F F F F F
-1785 F T F F F F F
-1786 F T F F F T F
-1787 F T F F F T F
-1788 F T F F F T F
-1789 F T F F F F F
-1790 F T F F F F F
-1791 F T F F F T F
-1792 F T F F F F F
-1793 F T F F F F F
-1794 F T F F F F F
-1795 F T F F F F F
-1796 F T F F F F F
-1797 F T F F F F F
-1798 F T F F F F F
-1799 F T F F F F F
-1800 F T F F F F F
-1801 F T F F F F F
-1802 F T F F F F F
-1803 F T F F F F F
-1804 F T F F F F F
-1805 F T F F F F F
-1806 F F F F F F F
-1807 F F F F F F F
-1808 F T F F F T F
-1809 F T F F F F F
-1810 F T F F F T F
-1811 F T F F F T F
-1812 F T F F F T F
-1813 F T F F F T F
-1814 F T F F F T F
-1815 F T F F F T F
-1816 F T F F F T F
-1817 F T F F F T F
-1818 F T F F F T F
-1819 F T F F F T F
-1820 F T F F F T F
-1821 F T F F F T F
-1822 F T F F F T F
-1823 F T F F F T F
-1824 F T F F F T F
-1825 F T F F F T F
-1826 F T F F F T F
-1827 F T F F F T F
-1828 F T F F F T F
-1829 F T F F F T F
-1830 F T F F F T F
-1831 F T F F F T F
-1832 F T F F F T F
-1833 F T F F F T F
-1834 F T F F F T F
-1835 F T F F F T F
-1836 F T F F F T F
-1837 F T F F F T F
-1838 F T F F F T F
-1839 F T F F F T F
-1840 F T F F F F F
-1841 F T F F F F F
-1842 F T F F F F F
-1843 F T F F F F F
-1844 F T F F F F F
-1845 F T F F F F F
-1846 F T F F F F F
-1847 F T F F F F F
-1848 F T F F F F F
-1849 F T F F F F F
-1850 F T F F F F F
-1851 F T F F F F F
-1852 F T F F F F F
-1853 F T F F F F F
-1854 F T F F F F F
-1855 F T F F F F F
-1856 F T F F F F F
-1857 F T F F F F F
-1858 F T F F F F F
-1859 F T F F F F F
-1860 F T F F F F F
-1861 F T F F F F F
-1862 F T F F F F F
-1863 F T F F F F F
-1864 F T F F F F F
-1865 F T F F F F F
-1866 F T F F F F F
-1867 F F F F F F F
-1868 F F F F F F F
-1869 F T F F F T F
-1870 F T F F F T F
-1871 F T F F F T F
-1872 F T F F F T F
-1873 F T F F F T F
-1874 F T F F F T F
-1875 F T F F F T F
-1876 F T F F F T F
-1877 F T F F F T F
-1878 F T F F F T F
-1879 F T F F F T F
-1880 F T F F F T F
-1881 F T F F F T F
-1882 F T F F F T F
-1883 F T F F F T F
-1884 F T F F F T F
-1885 F T F F F T F
-1886 F T F F F T F
-1887 F T F F F T F
-1888 F T F F F T F
-1889 F T F F F T F
-1890 F T F F F T F
-1891 F T F F F T F
-1892 F T F F F T F
-1893 F T F F F T F
-1894 F T F F F T F
-1895 F T F F F T F
-1896 F T F F F T F
-1897 F T F F F T F
-1898 F T F F F T F
-1899 F T F F F T F
-1900 F T F F F T F
-1901 F T F F F T F
-1902 F T F F F T F
-1903 F T F F F T F
-1904 F T F F F T F
-1905 F T F F F T F
-1906 F T F F F T F
-1907 F T F F F T F
-1908 F T F F F T F
-1909 F T F F F T F
-1910 F T F F F T F
-1911 F T F F F T F
-1912 F T F F F T F
-1913 F T F F F T F
-1914 F T F F F T F
-1915 F T F F F T F
-1916 F T F F F T F
-1917 F T F F F T F
-1918 F T F F F T F
-1919 F T F F F T F
-1920 F T F F F T F
-1921 F T F F F T F
-1922 F T F F F T F
-1923 F T F F F T F
-1924 F T F F F T F
-1925 F T F F F T F
-1926 F T F F F T F
-1927 F T F F F T F
-1928 F T F F F T F
-1929 F T F F F T F
-1930 F T F F F T F
-1931 F T F F F T F
-1932 F T F F F T F
-1933 F T F F F T F
-1934 F T F F F T F
-1935 F T F F F T F
-1936 F T F F F T F
-1937 F T F F F T F
-1938 F T F F F T F
-1939 F T F F F T F
-1940 F T F F F T F
-1941 F T F F F T F
-1942 F T F F F T F
-1943 F T F F F T F
-1944 F T F F F T F
-1945 F T F F F T F
-1946 F T F F F T F
-1947 F T F F F T F
-1948 F T F F F T F
-1949 F T F F F T F
-1950 F T F F F T F
-1951 F T F F F T F
-1952 F T F F F T F
-1953 F T F F F T F
-1954 F T F F F T F
-1955 F T F F F T F
-1956 F T F F F T F
-1957 F T F F F T F
-1958 F T F F F F F
-1959 F T F F F F F
-1960 F T F F F F F
-1961 F T F F F F F
-1962 F T F F F F F
-1963 F T F F F F F
-1964 F T F F F F F
-1965 F T F F F F F
-1966 F T F F F F F
-1967 F T F F F F F
-1968 F T F F F F F
-1969 F T F F F T F
-1970 F F F F F F F
-1971 F F F F F F F
-1972 F F F F F F F
-1973 F F F F F F F
-1974 F F F F F F F
-1975 F F F F F F F
-1976 F F F F F F F
-1977 F F F F F F F
-1978 F F F F F F F
-1979 F F F F F F F
-1980 F F F F F F F
-1981 F F F F F F F
-1982 F F F F F F F
-1983 F F F F F F F
-1984 F T F F F F F
-1985 F T F F F F F
-1986 F T F F F F F
-1987 F T F F F F F
-1988 F T F F F F F
-1989 F T F F F F F
-1990 F T F F F F F
-1991 F T F F F F F
-1992 F T F F F F F
-1993 F T F F F F F
-1994 F T F F F T F
-1995 F T F F F T F
-1996 F T F F F T F
-1997 F T F F F T F
-1998 F T F F F T F
-1999 F T F F F T F
-2000 F T F F F T F
-2001 F T F F F T F
-2002 F T F F F T F
-2003 F T F F F T F
-2004 F T F F F T F
-2005 F T F F F T F
-2006 F T F F F T F
-2007 F T F F F T F
-2008 F T F F F T F
-2009 F T F F F T F
-2010 F T F F F T F
-2011 F T F F F T F
-2012 F T F F F T F
-2013 F T F F F T F
-2014 F T F F F T F
-2015 F T F F F T F
-2016 F T F F F T F
-2017 F T F F F T F
-2018 F T F F F T F
-2019 F T F F F T F
-2020 F T F F F T F
-2021 F T F F F T F
-2022 F T F F F T F
-2023 F T F F F T F
-2024 F T F F F T F
-2025 F T F F F T F
-2026 F T F F F T F
-2027 F T F F F F F
-2028 F T F F F F F
-2029 F T F F F F F
-2030 F T F F F F F
-2031 F T F F F F F
-2032 F T F F F F F
-2033 F T F F F F F
-2034 F T F F F F F
-2035 F T F F F F F
-2036 F T F F F T F
-2037 F T F F F T F
-2038 F T F F F F F
-2039 F T F F F F F
-2040 F T F F F F F
-2041 F T F F F F F
-2042 F T F F F T F
-2043 F F F F F F F
-2044 F F F F F F F
-2045 F F F F F F F
-2046 F F F F F F F
-2047 F F F F F F F
-2048 F T F F F T F
-2049 F T F F F T F
-2050 F T F F F T F
-2051 F T F F F T F
-2052 F T F F F T F
-2053 F T F F F T F
-2054 F T F F F T F
-2055 F T F F F T F
-2056 F T F F F T F
-2057 F T F F F T F
-2058 F T F F F T F
-2059 F T F F F T F
-2060 F T F F F T F
-2061 F T F F F T F
-2062 F T F F F T F
-2063 F T F F F T F
-2064 F T F F F T F
-2065 F T F F F T F
-2066 F T F F F T F
-2067 F T F F F T F
-2068 F T F F F T F
-2069 F T F F F T F
-2070 F T F F F F F
-2071 F T F F F F F
-2072 F T F F F F F
-2073 F T F F F F F
-2074 F T F F F T F
-2075 F T F F F F F
-2076 F T F F F F F
-2077 F T F F F F F
-2078 F T F F F F F
-2079 F T F F F F F
-2080 F T F F F F F
-2081 F T F F F F F
-2082 F T F F F F F
-2083 F T F F F F F
-2084 F T F F F T F
-2085 F T F F F F F
-2086 F T F F F F F
-2087 F T F F F F F
-2088 F T F F F T F
-2089 F T F F F F F
-2090 F T F F F F F
-2091 F T F F F F F
-2092 F T F F F F F
-2093 F T F F F F F
-2094 F F F F F F F
-2095 F F F F F F F
-2096 F T F F F F F
-2097 F T F F F F F
-2098 F T F F F F F
-2099 F T F F F F F
-2100 F T F F F F F
-2101 F T F F F F F
-2102 F T F F F F F
-2103 F T F F F F F
-2104 F T F F F F F
-2105 F T F F F F F
-2106 F T F F F F F
-2107 F T F F F F F
-2108 F T F F F F F
-2109 F T F F F F F
-2110 F T F F F F F
-2111 F F F F F F F
-2112 F T F F F T F
-2113 F T F F F T F
-2114 F T F F F T F
-2115 F T F F F T F
-2116 F T F F F T F
-2117 F T F F F T F
-2118 F T F F F T F
-2119 F T F F F T F
-2120 F T F F F T F
-2121 F T F F F T F
-2122 F T F F F T F
-2123 F T F F F T F
-2124 F T F F F T F
-2125 F T F F F T F
-2126 F T F F F T F
-2127 F T F F F T F
-2128 F T F F F T F
-2129 F T F F F T F
-2130 F T F F F T F
-2131 F T F F F T F
-2132 F T F F F T F
-2133 F T F F F T F
-2134 F T F F F T F
-2135 F T F F F T F
-2136 F T F F F T F
-2137 F T F F F F F
-2138 F T F F F F F
-2139 F T F F F F F
-2140 F F F F F F F
-2141 F F F F F F F
-2142 F T F F F F F
-2143 F F F F F F F
-2144 F F F F F F F
-2145 F F F F F F F
-2146 F F F F F F F
-2147 F F F F F F F
-2148 F F F F F F F
-2149 F F F F F F F
-2150 F F F F F F F
-2151 F F F F F F F
-2152 F F F F F F F
-2153 F F F F F F F
-2154 F F F F F F F
-2155 F F F F F F F
-2156 F F F F F F F
-2157 F F F F F F F
-2158 F F F F F F F
-2159 F F F F F F F
-2160 F F F F F F F
-2161 F F F F F F F
-2162 F F F F F F F
-2163 F F F F F F F
-2164 F F F F F F F
-2165 F F F F F F F
-2166 F F F F F F F
-2167 F F F F F F F
-2168 F F F F F F F
-2169 F F F F F F F
-2170 F F F F F F F
-2171 F F F F F F F
-2172 F F F F F F F
-2173 F F F F F F F
-2174 F F F F F F F
-2175 F F F F F F F
-2176 F F F F F F F
-2177 F F F F F F F
-2178 F F F F F F F
-2179 F F F F F F F
-2180 F F F F F F F
-2181 F F F F F F F
-2182 F F F F F F F
-2183 F F F F F F F
-2184 F F F F F F F
-2185 F F F F F F F
-2186 F F F F F F F
-2187 F F F F F F F
-2188 F F F F F F F
-2189 F F F F F F F
-2190 F F F F F F F
-2191 F F F F F F F
-2192 F F F F F F F
-2193 F F F F F F F
-2194 F F F F F F F
-2195 F F F F F F F
-2196 F F F F F F F
-2197 F F F F F F F
-2198 F F F F F F F
-2199 F F F F F F F
-2200 F F F F F F F
-2201 F F F F F F F
-2202 F F F F F F F
-2203 F F F F F F F
-2204 F F F F F F F
-2205 F F F F F F F
-2206 F F F F F F F
-2207 F F F F F F F
-2208 F F F F F F F
-2209 F F F F F F F
-2210 F F F F F F F
-2211 F F F F F F F
-2212 F F F F F F F
-2213 F F F F F F F
-2214 F F F F F F F
-2215 F F F F F F F
-2216 F F F F F F F
-2217 F F F F F F F
-2218 F F F F F F F
-2219 F F F F F F F
-2220 F F F F F F F
-2221 F F F F F F F
-2222 F F F F F F F
-2223 F F F F F F F
-2224 F F F F F F F
-2225 F F F F F F F
-2226 F F F F F F F
-2227 F F F F F F F
-2228 F F F F F F F
-2229 F F F F F F F
-2230 F F F F F F F
-2231 F F F F F F F
-2232 F F F F F F F
-2233 F F F F F F F
-2234 F F F F F F F
-2235 F F F F F F F
-2236 F F F F F F F
-2237 F F F F F F F
-2238 F F F F F F F
-2239 F F F F F F F
-2240 F F F F F F F
-2241 F F F F F F F
-2242 F F F F F F F
-2243 F F F F F F F
-2244 F F F F F F F
-2245 F F F F F F F
-2246 F F F F F F F
-2247 F F F F F F F
-2248 F F F F F F F
-2249 F F F F F F F
-2250 F F F F F F F
-2251 F F F F F F F
-2252 F F F F F F F
-2253 F F F F F F F
-2254 F F F F F F F
-2255 F F F F F F F
-2256 F F F F F F F
-2257 F F F F F F F
-2258 F F F F F F F
-2259 F F F F F F F
-2260 F F F F F F F
-2261 F F F F F F F
-2262 F F F F F F F
-2263 F F F F F F F
-2264 F F F F F F F
-2265 F F F F F F F
-2266 F F F F F F F
-2267 F F F F F F F
-2268 F F F F F F F
-2269 F F F F F F F
-2270 F F F F F F F
-2271 F F F F F F F
-2272 F F F F F F F
-2273 F F F F F F F
-2274 F F F F F F F
-2275 F F F F F F F
-2276 F F F F F F F
-2277 F F F F F F F
-2278 F F F F F F F
-2279 F F F F F F F
-2280 F F F F F F F
-2281 F F F F F F F
-2282 F F F F F F F
-2283 F F F F F F F
-2284 F F F F F F F
-2285 F F F F F F F
-2286 F F F F F F F
-2287 F F F F F F F
-2288 F F F F F F F
-2289 F F F F F F F
-2290 F F F F F F F
-2291 F F F F F F F
-2292 F F F F F F F
-2293 F F F F F F F
-2294 F F F F F F F
-2295 F F F F F F F
-2296 F F F F F F F
-2297 F F F F F F F
-2298 F F F F F F F
-2299 F F F F F F F
-2300 F F F F F F F
-2301 F F F F F F F
-2302 F F F F F F F
-2303 F F F F F F F
-2304 F T F F F F F
-2305 F T F F F F F
-2306 F T F F F F F
-2307 F T F F F F F
-2308 F T F F F T F
-2309 F T F F F T F
-2310 F T F F F T F
-2311 F T F F F T F
-2312 F T F F F T F
-2313 F T F F F T F
-2314 F T F F F T F
-2315 F T F F F T F
-2316 F T F F F T F
-2317 F T F F F T F
-2318 F T F F F T F
-2319 F T F F F T F
-2320 F T F F F T F
-2321 F T F F F T F
-2322 F T F F F T F
-2323 F T F F F T F
-2324 F T F F F T F
-2325 F T F F F T F
-2326 F T F F F T F
-2327 F T F F F T F
-2328 F T F F F T F
-2329 F T F F F T F
-2330 F T F F F T F
-2331 F T F F F T F
-2332 F T F F F T F
-2333 F T F F F T F
-2334 F T F F F T F
-2335 F T F F F T F
-2336 F T F F F T F
-2337 F T F F F T F
-2338 F T F F F T F
-2339 F T F F F T F
-2340 F T F F F T F
-2341 F T F F F T F
-2342 F T F F F T F
-2343 F T F F F T F
-2344 F T F F F T F
-2345 F T F F F T F
-2346 F T F F F T F
-2347 F T F F F T F
-2348 F T F F F T F
-2349 F T F F F T F
-2350 F T F F F T F
-2351 F T F F F T F
-2352 F T F F F T F
-2353 F T F F F T F
-2354 F T F F F T F
-2355 F T F F F T F
-2356 F T F F F T F
-2357 F T F F F T F
-2358 F T F F F T F
-2359 F T F F F T F
-2360 F T F F F T F
-2361 F T F F F T F
-2362 F T F F F F F
-2363 F T F F F F F
-2364 F T F F F F F
-2365 F T F F F T F
-2366 F T F F F F F
-2367 F T F F F F F
-2368 F T F F F F F
-2369 F T F F F F F
-2370 F T F F F F F
-2371 F T F F F F F
-2372 F T F F F F F
-2373 F T F F F F F
-2374 F T F F F F F
-2375 F T F F F F F
-2376 F T F F F F F
-2377 F T F F F F F
-2378 F T F F F F F
-2379 F T F F F F F
-2380 F T F F F F F
-2381 F T F F F F F
-2382 F T F F F F F
-2383 F T F F F F F
-2384 F T F F F T F
-2385 F T F F F F F
-2386 F T F F F F F
-2387 F T F F F F F
-2388 F T F F F F F
-2389 F T F F F F F
-2390 F T F F F F F
-2391 F T F F F F F
-2392 F T F F F T F
-2393 F T F F F T F
-2394 F T F F F T F
-2395 F T F F F T F
-2396 F T F F F T F
-2397 F T F F F T F
-2398 F T F F F T F
-2399 F T F F F T F
-2400 F T F F F T F
-2401 F T F F F T F
-2402 F T F F F F F
-2403 F T F F F F F
-2404 F T F F F F F
-2405 F T F F F F F
-2406 F T F F F F F
-2407 F T F F F F F
-2408 F T F F F F F
-2409 F T F F F F F
-2410 F T F F F F F
-2411 F T F F F F F
-2412 F T F F F F F
-2413 F T F F F F F
-2414 F T F F F F F
-2415 F T F F F F F
-2416 F T F F F F F
-2417 F T F F F T F
-2418 F T F F F T F
-2419 F T F F F T F
-2420 F T F F F T F
-2421 F T F F F T F
-2422 F T F F F T F
-2423 F T F F F T F
-2424 F F F F F F F
-2425 F T F F F T F
-2426 F T F F F T F
-2427 F T F F F T F
-2428 F T F F F T F
-2429 F T F F F T F
-2430 F T F F F T F
-2431 F T F F F T F
-2432 F F F F F F F
-2433 F T F F F F F
-2434 F T F F F F F
-2435 F T F F F F F
-2436 F F F F F F F
-2437 F T F F F T F
-2438 F T F F F T F
-2439 F T F F F T F
-2440 F T F F F T F
-2441 F T F F F T F
-2442 F T F F F T F
-2443 F T F F F T F
-2444 F T F F F T F
-2445 F F F F F F F
-2446 F F F F F F F
-2447 F T F F F T F
-2448 F T F F F T F
-2449 F F F F F F F
-2450 F F F F F F F
-2451 F T F F F T F
-2452 F T F F F T F
-2453 F T F F F T F
-2454 F T F F F T F
-2455 F T F F F T F
-2456 F T F F F T F
-2457 F T F F F T F
-2458 F T F F F T F
-2459 F T F F F T F
-2460 F T F F F T F
-2461 F T F F F T F
-2462 F T F F F T F
-2463 F T F F F T F
-2464 F T F F F T F
-2465 F T F F F T F
-2466 F T F F F T F
-2467 F T F F F T F
-2468 F T F F F T F
-2469 F T F F F T F
-2470 F T F F F T F
-2471 F T F F F T F
-2472 F T F F F T F
-2473 F F F F F F F
-2474 F T F F F T F
-2475 F T F F F T F
-2476 F T F F F T F
-2477 F T F F F T F
-2478 F T F F F T F
-2479 F T F F F T F
-2480 F T F F F T F
-2481 F F F F F F F
-2482 F T F F F T F
-2483 F F F F F F F
-2484 F F F F F F F
-2485 F F F F F F F
-2486 F T F F F T F
-2487 F T F F F T F
-2488 F T F F F T F
-2489 F T F F F T F
-2490 F F F F F F F
-2491 F F F F F F F
-2492 F T F F F F F
-2493 F T F F F T F
-2494 F T F F F F F
-2495 F T F F F F F
-2496 F T F F F F F
-2497 F T F F F F F
-2498 F T F F F F F
-2499 F T F F F F F
-2500 F T F F F F F
-2501 F F F F F F F
-2502 F F F F F F F
-2503 F T F F F F F
-2504 F T F F F F F
-2505 F F F F F F F
-2506 F F F F F F F
-2507 F T F F F F F
-2508 F T F F F F F
-2509 F T F F F F F
-2510 F T F F F T F
-2511 F F F F F F F
-2512 F F F F F F F
-2513 F F F F F F F
-2514 F F F F F F F
-2515 F F F F F F F
-2516 F F F F F F F
-2517 F F F F F F F
-2518 F F F F F F F
-2519 F T F F F F F
-2520 F F F F F F F
-2521 F F F F F F F
-2522 F F F F F F F
-2523 F F F F F F F
-2524 F T F F F T F
-2525 F T F F F T F
-2526 F F F F F F F
-2527 F T F F F T F
-2528 F T F F F T F
-2529 F T F F F T F
-2530 F T F F F F F
-2531 F T F F F F F
-2532 F F F F F F F
-2533 F F F F F F F
-2534 F T F F F F F
-2535 F T F F F F F
-2536 F T F F F F F
-2537 F T F F F F F
-2538 F T F F F F F
-2539 F T F F F F F
-2540 F T F F F F F
-2541 F T F F F F F
-2542 F T F F F F F
-2543 F T F F F F F
-2544 F T F F F T F
-2545 F T F F F T F
-2546 F T F F F F F
-2547 F T F F F F F
-2548 F T F F F F F
-2549 F T F F F F F
-2550 F T F F F F F
-2551 F T F F F F F
-2552 F T F F F F F
-2553 F T F F F F F
-2554 F T F F F F F
-2555 F T F F F F F
-2556 F F F F F F F
-2557 F F F F F F F
-2558 F F F F F F F
-2559 F F F F F F F
-2560 F F F F F F F
-2561 F T F F F F F
-2562 F T F F F F F
-2563 F T F F F F F
-2564 F F F F F F F
-2565 F T F F F T F
-2566 F T F F F T F
-2567 F T F F F T F
-2568 F T F F F T F
-2569 F T F F F T F
-2570 F T F F F T F
-2571 F F F F F F F
-2572 F F F F F F F
-2573 F F F F F F F
-2574 F F F F F F F
-2575 F T F F F T F
-2576 F T F F F T F
-2577 F F F F F F F
-2578 F F F F F F F
-2579 F T F F F T F
-2580 F T F F F T F
-2581 F T F F F T F
-2582 F T F F F T F
-2583 F T F F F T F
-2584 F T F F F T F
-2585 F T F F F T F
-2586 F T F F F T F
-2587 F T F F F T F
-2588 F T F F F T F
-2589 F T F F F T F
-2590 F T F F F T F
-2591 F T F F F T F
-2592 F T F F F T F
-2593 F T F F F T F
-2594 F T F F F T F
-2595 F T F F F T F
-2596 F T F F F T F
-2597 F T F F F T F
-2598 F T F F F T F
-2599 F T F F F T F
-2600 F T F F F T F
-2601 F F F F F F F
-2602 F T F F F T F
-2603 F T F F F T F
-2604 F T F F F T F
-2605 F T F F F T F
-2606 F T F F F T F
-2607 F T F F F T F
-2608 F T F F F T F
-2609 F F F F F F F
-2610 F T F F F T F
-2611 F T F F F T F
-2612 F F F F F F F
-2613 F T F F F T F
-2614 F T F F F T F
-2615 F F F F F F F
-2616 F T F F F T F
-2617 F T F F F T F
-2618 F F F F F F F
-2619 F F F F F F F
-2620 F T F F F F F
-2621 F F F F F F F
-2622 F T F F F F F
-2623 F T F F F F F
-2624 F T F F F F F
-2625 F T F F F F F
-2626 F T F F F F F
-2627 F F F F F F F
-2628 F F F F F F F
-2629 F F F F F F F
-2630 F F F F F F F
-2631 F T F F F F F
-2632 F T F F F F F
-2633 F F F F F F F
-2634 F F F F F F F
-2635 F T F F F F F
-2636 F T F F F F F
-2637 F T F F F F F
-2638 F F F F F F F
-2639 F F F F F F F
-2640 F F F F F F F
-2641 F T F F F F F
-2642 F F F F F F F
-2643 F F F F F F F
-2644 F F F F F F F
-2645 F F F F F F F
-2646 F F F F F F F
-2647 F F F F F F F
-2648 F F F F F F F
-2649 F T F F F T F
-2650 F T F F F T F
-2651 F T F F F T F
-2652 F T F F F T F
-2653 F F F F F F F
-2654 F T F F F T F
-2655 F F F F F F F
-2656 F F F F F F F
-2657 F F F F F F F
-2658 F F F F F F F
-2659 F F F F F F F
-2660 F F F F F F F
-2661 F F F F F F F
-2662 F T F F F F F
-2663 F T F F F F F
-2664 F T F F F F F
-2665 F T F F F F F
-2666 F T F F F F F
-2667 F T F F F F F
-2668 F T F F F F F
-2669 F T F F F F F
-2670 F T F F F F F
-2671 F T F F F F F
-2672 F T F F F F F
-2673 F T F F F F F
-2674 F T F F F T F
-2675 F T F F F T F
-2676 F T F F F T F
-2677 F T F F F F F
-2678 F F F F F F F
-2679 F F F F F F F
-2680 F F F F F F F
-2681 F F F F F F F
-2682 F F F F F F F
-2683 F F F F F F F
-2684 F F F F F F F
-2685 F F F F F F F
-2686 F F F F F F F
-2687 F F F F F F F
-2688 F F F F F F F
-2689 F T F F F F F
-2690 F T F F F F F
-2691 F T F F F F F
-2692 F F F F F F F
-2693 F T F F F T F
-2694 F T F F F T F
-2695 F T F F F T F
-2696 F T F F F T F
-2697 F T F F F T F
-2698 F T F F F T F
-2699 F T F F F T F
-2700 F T F F F T F
-2701 F T F F F T F
-2702 F F F F F F F
-2703 F T F F F T F
-2704 F T F F F T F
-2705 F T F F F T F
-2706 F F F F F F F
-2707 F T F F F T F
-2708 F T F F F T F
-2709 F T F F F T F
-2710 F T F F F T F
-2711 F T F F F T F
-2712 F T F F F T F
-2713 F T F F F T F
-2714 F T F F F T F
-2715 F T F F F T F
-2716 F T F F F T F
-2717 F T F F F T F
-2718 F T F F F T F
-2719 F T F F F T F
-2720 F T F F F T F
-2721 F T F F F T F
-2722 F T F F F T F
-2723 F T F F F T F
-2724 F T F F F T F
-2725 F T F F F T F
-2726 F T F F F T F
-2727 F T F F F T F
-2728 F T F F F T F
-2729 F F F F F F F
-2730 F T F F F T F
-2731 F T F F F T F
-2732 F T F F F T F
-2733 F T F F F T F
-2734 F T F F F T F
-2735 F T F F F T F
-2736 F T F F F T F
-2737 F F F F F F F
-2738 F T F F F T F
-2739 F T F F F T F
-2740 F F F F F F F
-2741 F T F F F T F
-2742 F T F F F T F
-2743 F T F F F T F
-2744 F T F F F T F
-2745 F T F F F T F
-2746 F F F F F F F
-2747 F F F F F F F
-2748 F T F F F F F
-2749 F T F F F T F
-2750 F T F F F F F
-2751 F T F F F F F
-2752 F T F F F F F
-2753 F T F F F F F
-2754 F T F F F F F
-2755 F T F F F F F
-2756 F T F F F F F
-2757 F T F F F F F
-2758 F F F F F F F
-2759 F T F F F F F
-2760 F T F F F F F
-2761 F T F F F F F
-2762 F F F F F F F
-2763 F T F F F F F
-2764 F T F F F F F
-2765 F T F F F F F
-2766 F F F F F F F
-2767 F F F F F F F
-2768 F T F F F T F
-2769 F F F F F F F
-2770 F F F F F F F
-2771 F F F F F F F
-2772 F F F F F F F
-2773 F F F F F F F
-2774 F F F F F F F
-2775 F F F F F F F
-2776 F F F F F F F
-2777 F F F F F F F
-2778 F F F F F F F
-2779 F F F F F F F
-2780 F F F F F F F
-2781 F F F F F F F
-2782 F F F F F F F
-2783 F F F F F F F
-2784 F T F F F T F
-2785 F T F F F T F
-2786 F T F F F F F
-2787 F T F F F F F
-2788 F F F F F F F
-2789 F F F F F F F
-2790 F T F F F F F
-2791 F T F F F F F
-2792 F T F F F F F
-2793 F T F F F F F
-2794 F T F F F F F
-2795 F T F F F F F
-2796 F T F F F F F
-2797 F T F F F F F
-2798 F T F F F F F
-2799 F T F F F F F
-2800 F F F F F F F
-2801 F T F F F F F
-2802 F F F F F F F
-2803 F F F F F F F
-2804 F F F F F F F
-2805 F F F F F F F
-2806 F F F F F F F
-2807 F F F F F F F
-2808 F F F F F F F
-2809 F F F F F F F
-2810 F F F F F F F
-2811 F F F F F F F
-2812 F F F F F F F
-2813 F F F F F F F
-2814 F F F F F F F
-2815 F F F F F F F
-2816 F F F F F F F
-2817 F T F F F F F
-2818 F T F F F F F
-2819 F T F F F F F
-2820 F F F F F F F
-2821 F T F F F T F
-2822 F T F F F T F
-2823 F T F F F T F
-2824 F T F F F T F
-2825 F T F F F T F
-2826 F T F F F T F
-2827 F T F F F T F
-2828 F T F F F T F
-2829 F F F F F F F
-2830 F F F F F F F
-2831 F T F F F T F
-2832 F T F F F T F
-2833 F F F F F F F
-2834 F F F F F F F
-2835 F T F F F T F
-2836 F T F F F T F
-2837 F T F F F T F
-2838 F T F F F T F
-2839 F T F F F T F
-2840 F T F F F T F
-2841 F T F F F T F
-2842 F T F F F T F
-2843 F T F F F T F
-2844 F T F F F T F
-2845 F T F F F T F
-2846 F T F F F T F
-2847 F T F F F T F
-2848 F T F F F T F
-2849 F T F F F T F
-2850 F T F F F T F
-2851 F T F F F T F
-2852 F T F F F T F
-2853 F T F F F T F
-2854 F T F F F T F
-2855 F T F F F T F
-2856 F T F F F T F
-2857 F F F F F F F
-2858 F T F F F T F
-2859 F T F F F T F
-2860 F T F F F T F
-2861 F T F F F T F
-2862 F T F F F T F
-2863 F T F F F T F
-2864 F T F F F T F
-2865 F F F F F F F
-2866 F T F F F T F
-2867 F T F F F T F
-2868 F F F F F F F
-2869 F T F F F T F
-2870 F T F F F T F
-2871 F T F F F T F
-2872 F T F F F T F
-2873 F T F F F T F
-2874 F F F F F F F
-2875 F F F F F F F
-2876 F T F F F F F
-2877 F T F F F T F
-2878 F T F F F F F
-2879 F T F F F F F
-2880 F T F F F F F
-2881 F T F F F F F
-2882 F T F F F F F
-2883 F T F F F F F
-2884 F T F F F F F
-2885 F F F F F F F
-2886 F F F F F F F
-2887 F T F F F F F
-2888 F T F F F F F
-2889 F F F F F F F
-2890 F F F F F F F
-2891 F T F F F F F
-2892 F T F F F F F
-2893 F T F F F F F
-2894 F F F F F F F
-2895 F F F F F F F
-2896 F F F F F F F
-2897 F F F F F F F
-2898 F F F F F F F
-2899 F F F F F F F
-2900 F F F F F F F
-2901 F F F F F F F
-2902 F T F F F F F
-2903 F T F F F F F
-2904 F F F F F F F
-2905 F F F F F F F
-2906 F F F F F F F
-2907 F F F F F F F
-2908 F T F F F T F
-2909 F T F F F T F
-2910 F F F F F F F
-2911 F T F F F T F
-2912 F T F F F T F
-2913 F T F F F T F
-2914 F T F F F F F
-2915 F T F F F F F
-2916 F F F F F F F
-2917 F F F F F F F
-2918 F T F F F F F
-2919 F T F F F F F
-2920 F T F F F F F
-2921 F T F F F F F
-2922 F T F F F F F
-2923 F T F F F F F
-2924 F T F F F F F
-2925 F T F F F F F
-2926 F T F F F F F
-2927 F T F F F F F
-2928 F T F F F F F
-2929 F T F F F T F
-2930 F T F F F F F
-2931 F T F F F F F
-2932 F T F F F F F
-2933 F T F F F F F
-2934 F T F F F F F
-2935 F T F F F F F
-2936 F F F F F F F
-2937 F F F F F F F
-2938 F F F F F F F
-2939 F F F F F F F
-2940 F F F F F F F
-2941 F F F F F F F
-2942 F F F F F F F
-2943 F F F F F F F
-2944 F F F F F F F
-2945 F F F F F F F
-2946 F T F F F F F
-2947 F T F F F T F
-2948 F F F F F F F
-2949 F T F F F T F
-2950 F T F F F T F
-2951 F T F F F T F
-2952 F T F F F T F
-2953 F T F F F T F
-2954 F T F F F T F
-2955 F F F F F F F
-2956 F F F F F F F
-2957 F F F F F F F
-2958 F T F F F T F
-2959 F T F F F T F
-2960 F T F F F T F
-2961 F F F F F F F
-2962 F T F F F T F
-2963 F T F F F T F
-2964 F T F F F T F
-2965 F T F F F T F
-2966 F F F F F F F
-2967 F F F F F F F
-2968 F F F F F F F
-2969 F T F F F T F
-2970 F T F F F T F
-2971 F F F F F F F
-2972 F T F F F T F
-2973 F F F F F F F
-2974 F T F F F T F
-2975 F T F F F T F
-2976 F F F F F F F
-2977 F F F F F F F
-2978 F F F F F F F
-2979 F T F F F T F
-2980 F T F F F T F
-2981 F F F F F F F
-2982 F F F F F F F
-2983 F F F F F F F
-2984 F T F F F T F
-2985 F T F F F T F
-2986 F T F F F T F
-2987 F F F F F F F
-2988 F F F F F F F
-2989 F F F F F F F
-2990 F T F F F T F
-2991 F T F F F T F
-2992 F T F F F T F
-2993 F T F F F T F
-2994 F T F F F T F
-2995 F T F F F T F
-2996 F T F F F T F
-2997 F T F F F T F
-2998 F T F F F T F
-2999 F T F F F T F
-3000 F T F F F T F
-3001 F T F F F T F
-3002 F F F F F F F
-3003 F F F F F F F
-3004 F F F F F F F
-3005 F F F F F F F
-3006 F T F F F F F
-3007 F T F F F F F
-3008 F T F F F F F
-3009 F T F F F F F
-3010 F T F F F F F
-3011 F F F F F F F
-3012 F F F F F F F
-3013 F F F F F F F
-3014 F T F F F F F
-3015 F T F F F F F
-3016 F T F F F F F
-3017 F F F F F F F
-3018 F T F F F F F
-3019 F T F F F F F
-3020 F T F F F F F
-3021 F T F F F F F
-3022 F F F F F F F
-3023 F F F F F F F
-3024 F T F F F T F
-3025 F F F F F F F
-3026 F F F F F F F
-3027 F F F F F F F
-3028 F F F F F F F
-3029 F F F F F F F
-3030 F F F F F F F
-3031 F T F F F F F
-3032 F F F F F F F
-3033 F F F F F F F
-3034 F F F F F F F
-3035 F F F F F F F
-3036 F F F F F F F
-3037 F F F F F F F
-3038 F F F F F F F
-3039 F F F F F F F
-3040 F F F F F F F
-3041 F F F F F F F
-3042 F F F F F F F
-3043 F F F F F F F
-3044 F F F F F F F
-3045 F F F F F F F
-3046 F T F F F F F
-3047 F T F F F F F
-3048 F T F F F F F
-3049 F T F F F F F
-3050 F T F F F F F
-3051 F T F F F F F
-3052 F T F F F F F
-3053 F T F F F F F
-3054 F T F F F F F
-3055 F T F F F F F
-3056 F T F F F F F
-3057 F T F F F F F
-3058 F T F F F F F
-3059 F T F F F F F
-3060 F T F F F F F
-3061 F T F F F F F
-3062 F T F F F F F
-3063 F T F F F F F
-3064 F T F F F F F
-3065 F T F F F F F
-3066 F T F F F F F
-3067 F F F F F F F
-3068 F F F F F F F
-3069 F F F F F F F
-3070 F F F F F F F
-3071 F F F F F F F
-3072 F F F F F F F
-3073 F T F F F F F
-3074 F T F F F F F
-3075 F T F F F F F
-3076 F F F F F F F
-3077 F T F F F T F
-3078 F T F F F T F
-3079 F T F F F T F
-3080 F T F F F T F
-3081 F T F F F T F
-3082 F T F F F T F
-3083 F T F F F T F
-3084 F T F F F T F
-3085 F F F F F F F
-3086 F T F F F T F
-3087 F T F F F T F
-3088 F T F F F T F
-3089 F F F F F F F
-3090 F T F F F T F
-3091 F T F F F T F
-3092 F T F F F T F
-3093 F T F F F T F
-3094 F T F F F T F
-3095 F T F F F T F
-3096 F T F F F T F
-3097 F T F F F T F
-3098 F T F F F T F
-3099 F T F F F T F
-3100 F T F F F T F
-3101 F T F F F T F
-3102 F T F F F T F
-3103 F T F F F T F
-3104 F T F F F T F
-3105 F T F F F T F
-3106 F T F F F T F
-3107 F T F F F T F
-3108 F T F F F T F
-3109 F T F F F T F
-3110 F T F F F T F
-3111 F T F F F T F
-3112 F T F F F T F
-3113 F F F F F F F
-3114 F T F F F T F
-3115 F T F F F T F
-3116 F T F F F T F
-3117 F T F F F T F
-3118 F T F F F T F
-3119 F T F F F T F
-3120 F T F F F T F
-3121 F T F F F T F
-3122 F T F F F T F
-3123 F T F F F T F
-3124 F F F F F F F
-3125 F T F F F T F
-3126 F T F F F T F
-3127 F T F F F T F
-3128 F T F F F T F
-3129 F T F F F T F
-3130 F F F F F F F
-3131 F F F F F F F
-3132 F F F F F F F
-3133 F T F F F T F
-3134 F T F F F F F
-3135 F T F F F F F
-3136 F T F F F F F
-3137 F T F F F F F
-3138 F T F F F F F
-3139 F T F F F F F
-3140 F T F F F F F
-3141 F F F F F F F
-3142 F T F F F F F
-3143 F T F F F F F
-3144 F T F F F F F
-3145 F F F F F F F
-3146 F T F F F F F
-3147 F T F F F F F
-3148 F T F F F F F
-3149 F T F F F F F
-3150 F F F F F F F
-3151 F F F F F F F
-3152 F F F F F F F
-3153 F F F F F F F
-3154 F F F F F F F
-3155 F F F F F F F
-3156 F F F F F F F
-3157 F T F F F F F
-3158 F T F F F F F
-3159 F F F F F F F
-3160 F T F F F T F
-3161 F T F F F T F
-3162 F F F F F F F
-3163 F F F F F F F
-3164 F F F F F F F
-3165 F F F F F F F
-3166 F F F F F F F
-3167 F F F F F F F
-3168 F T F F F T F
-3169 F T F F F T F
-3170 F T F F F F F
-3171 F T F F F F F
-3172 F F F F F F F
-3173 F F F F F F F
-3174 F T F F F F F
-3175 F T F F F F F
-3176 F T F F F F F
-3177 F T F F F F F
-3178 F T F F F F F
-3179 F T F F F F F
-3180 F T F F F F F
-3181 F T F F F F F
-3182 F T F F F F F
-3183 F T F F F F F
-3184 F F F F F F F
-3185 F F F F F F F
-3186 F F F F F F F
-3187 F F F F F F F
-3188 F F F F F F F
-3189 F F F F F F F
-3190 F F F F F F F
-3191 F F F F F F F
-3192 F T F F F F F
-3193 F T F F F F F
-3194 F T F F F F F
-3195 F T F F F F F
-3196 F T F F F F F
-3197 F T F F F F F
-3198 F T F F F F F
-3199 F T F F F F F
-3200 F F F F F F F
-3201 F F F F F F F
-3202 F T F F F F F
-3203 F T F F F F F
-3204 F F F F F F F
-3205 F T F F F T F
-3206 F T F F F T F
-3207 F T F F F T F
-3208 F T F F F T F
-3209 F T F F F T F
-3210 F T F F F T F
-3211 F T F F F T F
-3212 F T F F F T F
-3213 F F F F F F F
-3214 F T F F F T F
-3215 F T F F F T F
-3216 F T F F F T F
-3217 F F F F F F F
-3218 F T F F F T F
-3219 F T F F F T F
-3220 F T F F F T F
-3221 F T F F F T F
-3222 F T F F F T F
-3223 F T F F F T F
-3224 F T F F F T F
-3225 F T F F F T F
-3226 F T F F F T F
-3227 F T F F F T F
-3228 F T F F F T F
-3229 F T F F F T F
-3230 F T F F F T F
-3231 F T F F F T F
-3232 F T F F F T F
-3233 F T F F F T F
-3234 F T F F F T F
-3235 F T F F F T F
-3236 F T F F F T F
-3237 F T F F F T F
-3238 F T F F F T F
-3239 F T F F F T F
-3240 F T F F F T F
-3241 F F F F F F F
-3242 F T F F F T F
-3243 F T F F F T F
-3244 F T F F F T F
-3245 F T F F F T F
-3246 F T F F F T F
-3247 F T F F F T F
-3248 F T F F F T F
-3249 F T F F F T F
-3250 F T F F F T F
-3251 F T F F F T F
-3252 F F F F F F F
-3253 F T F F F T F
-3254 F T F F F T F
-3255 F T F F F T F
-3256 F T F F F T F
-3257 F T F F F T F
-3258 F F F F F F F
-3259 F F F F F F F
-3260 F T F F F F F
-3261 F T F F F T F
-3262 F T F F F F F
-3263 F T F F F F F
-3264 F T F F F F F
-3265 F T F F F F F
-3266 F T F F F F F
-3267 F T F F F F F
-3268 F T F F F F F
-3269 F F F F F F F
-3270 F T F F F F F
-3271 F T F F F F F
-3272 F T F F F F F
-3273 F F F F F F F
-3274 F T F F F F F
-3275 F T F F F F F
-3276 F T F F F F F
-3277 F T F F F F F
-3278 F F F F F F F
-3279 F F F F F F F
-3280 F F F F F F F
-3281 F F F F F F F
-3282 F F F F F F F
-3283 F F F F F F F
-3284 F F F F F F F
-3285 F T F F F F F
-3286 F T F F F F F
-3287 F F F F F F F
-3288 F F F F F F F
-3289 F F F F F F F
-3290 F F F F F F F
-3291 F F F F F F F
-3292 F F F F F F F
-3293 F F F F F F F
-3294 F T F F F T F
-3295 F F F F F F F
-3296 F T F F F T F
-3297 F T F F F T F
-3298 F T F F F F F
-3299 F T F F F F F
-3300 F F F F F F F
-3301 F F F F F F F
-3302 F T F F F F F
-3303 F T F F F F F
-3304 F T F F F F F
-3305 F T F F F F F
-3306 F T F F F F F
-3307 F T F F F F F
-3308 F T F F F F F
-3309 F T F F F F F
-3310 F T F F F F F
-3311 F T F F F F F
-3312 F F F F F F F
-3313 F T F F F T F
-3314 F T F F F T F
-3315 F F F F F F F
-3316 F F F F F F F
-3317 F F F F F F F
-3318 F F F F F F F
-3319 F F F F F F F
-3320 F F F F F F F
-3321 F F F F F F F
-3322 F F F F F F F
-3323 F F F F F F F
-3324 F F F F F F F
-3325 F F F F F F F
-3326 F F F F F F F
-3327 F F F F F F F
-3328 F F F F F F F
-3329 F F F F F F F
-3330 F T F F F F F
-3331 F T F F F F F
-3332 F F F F F F F
-3333 F T F F F T F
-3334 F T F F F T F
-3335 F T F F F T F
-3336 F T F F F T F
-3337 F T F F F T F
-3338 F T F F F T F
-3339 F T F F F T F
-3340 F T F F F T F
-3341 F F F F F F F
-3342 F T F F F T F
-3343 F T F F F T F
-3344 F T F F F T F
-3345 F F F F F F F
-3346 F T F F F T F
-3347 F T F F F T F
-3348 F T F F F T F
-3349 F T F F F T F
-3350 F T F F F T F
-3351 F T F F F T F
-3352 F T F F F T F
-3353 F T F F F T F
-3354 F T F F F T F
-3355 F T F F F T F
-3356 F T F F F T F
-3357 F T F F F T F
-3358 F T F F F T F
-3359 F T F F F T F
-3360 F T F F F T F
-3361 F T F F F T F
-3362 F T F F F T F
-3363 F T F F F T F
-3364 F T F F F T F
-3365 F T F F F T F
-3366 F T F F F T F
-3367 F T F F F T F
-3368 F T F F F T F
-3369 F T F F F T F
-3370 F T F F F T F
-3371 F T F F F T F
-3372 F T F F F T F
-3373 F T F F F T F
-3374 F T F F F T F
-3375 F T F F F T F
-3376 F T F F F T F
-3377 F T F F F T F
-3378 F T F F F T F
-3379 F T F F F T F
-3380 F T F F F T F
-3381 F T F F F T F
-3382 F T F F F T F
-3383 F T F F F T F
-3384 F T F F F T F
-3385 F T F F F T F
-3386 F T F F F T F
-3387 F F F F F F F
-3388 F F F F F F F
-3389 F T F F F T F
-3390 F T F F F F F
-3391 F T F F F F F
-3392 F T F F F F F
-3393 F T F F F F F
-3394 F T F F F F F
-3395 F T F F F F F
-3396 F T F F F F F
-3397 F F F F F F F
-3398 F T F F F F F
-3399 F T F F F F F
-3400 F T F F F F F
-3401 F F F F F F F
-3402 F T F F F F F
-3403 F T F F F F F
-3404 F T F F F F F
-3405 F T F F F F F
-3406 F T F F F T F
-3407 F F F F F F F
-3408 F F F F F F F
-3409 F F F F F F F
-3410 F F F F F F F
-3411 F F F F F F F
-3412 F F F F F F F
-3413 F F F F F F F
-3414 F F F F F F F
-3415 F T F F F F F
-3416 F F F F F F F
-3417 F F F F F F F
-3418 F F F F F F F
-3419 F F F F F F F
-3420 F F F F F F F
-3421 F F F F F F F
-3422 F F F F F F F
-3423 F F F F F F F
-3424 F T F F F T F
-3425 F T F F F T F
-3426 F T F F F F F
-3427 F T F F F F F
-3428 F F F F F F F
-3429 F F F F F F F
-3430 F T F F F F F
-3431 F T F F F F F
-3432 F T F F F F F
-3433 F T F F F F F
-3434 F T F F F F F
-3435 F T F F F F F
-3436 F T F F F F F
-3437 F T F F F F F
-3438 F T F F F F F
-3439 F T F F F F F
-3440 F T F F F F F
-3441 F T F F F F F
-3442 F T F F F F F
-3443 F T F F F F F
-3444 F T F F F F F
-3445 F T F F F F F
-3446 F F F F F F F
-3447 F F F F F F F
-3448 F F F F F F F
-3449 F T F F F F F
-3450 F T F F F T F
-3451 F T F F F T F
-3452 F T F F F T F
-3453 F T F F F T F
-3454 F T F F F T F
-3455 F T F F F T F
-3456 F F F F F F F
-3457 F F F F F F F
-3458 F T F F F F F
-3459 F T F F F F F
-3460 F F F F F F F
-3461 F T F F F T F
-3462 F T F F F T F
-3463 F T F F F T F
-3464 F T F F F T F
-3465 F T F F F T F
-3466 F T F F F T F
-3467 F T F F F T F
-3468 F T F F F T F
-3469 F T F F F T F
-3470 F T F F F T F
-3471 F T F F F T F
-3472 F T F F F T F
-3473 F T F F F T F
-3474 F T F F F T F
-3475 F T F F F T F
-3476 F T F F F T F
-3477 F T F F F T F
-3478 F T F F F T F
-3479 F F F F F F F
-3480 F F F F F F F
-3481 F F F F F F F
-3482 F T F F F T F
-3483 F T F F F T F
-3484 F T F F F T F
-3485 F T F F F T F
-3486 F T F F F T F
-3487 F T F F F T F
-3488 F T F F F T F
-3489 F T F F F T F
-3490 F T F F F T F
-3491 F T F F F T F
-3492 F T F F F T F
-3493 F T F F F T F
-3494 F T F F F T F
-3495 F T F F F T F
-3496 F T F F F T F
-3497 F T F F F T F
-3498 F T F F F T F
-3499 F T F F F T F
-3500 F T F F F T F
-3501 F T F F F T F
-3502 F T F F F T F
-3503 F T F F F T F
-3504 F T F F F T F
-3505 F T F F F T F
-3506 F F F F F F F
-3507 F T F F F T F
-3508 F T F F F T F
-3509 F T F F F T F
-3510 F T F F F T F
-3511 F T F F F T F
-3512 F T F F F T F
-3513 F T F F F T F
-3514 F T F F F T F
-3515 F T F F F T F
-3516 F F F F F F F
-3517 F T F F F T F
-3518 F F F F F F F
-3519 F F F F F F F
-3520 F T F F F T F
-3521 F T F F F T F
-3522 F T F F F T F
-3523 F T F F F T F
-3524 F T F F F T F
-3525 F T F F F T F
-3526 F T F F F T F
-3527 F F F F F F F
-3528 F F F F F F F
-3529 F F F F F F F
-3530 F T F F F F F
-3531 F F F F F F F
-3532 F F F F F F F
-3533 F F F F F F F
-3534 F F F F F F F
-3535 F T F F F F F
-3536 F T F F F F F
-3537 F T F F F F F
-3538 F T F F F F F
-3539 F T F F F F F
-3540 F T F F F F F
-3541 F F F F F F F
-3542 F T F F F F F
-3543 F F F F F F F
-3544 F T F F F F F
-3545 F T F F F F F
-3546 F T F F F F F
-3547 F T F F F F F
-3548 F T F F F F F
-3549 F T F F F F F
-3550 F T F F F F F
-3551 F T F F F F F
-3552 F F F F F F F
-3553 F F F F F F F
-3554 F F F F F F F
-3555 F F F F F F F
-3556 F F F F F F F
-3557 F F F F F F F
-3558 F F F F F F F
-3559 F F F F F F F
-3560 F F F F F F F
-3561 F F F F F F F
-3562 F F F F F F F
-3563 F F F F F F F
-3564 F F F F F F F
-3565 F F F F F F F
-3566 F F F F F F F
-3567 F F F F F F F
-3568 F F F F F F F
-3569 F F F F F F F
-3570 F T F F F F F
-3571 F T F F F F F
-3572 F T F F F F F
-3573 F F F F F F F
-3574 F F F F F F F
-3575 F F F F F F F
-3576 F F F F F F F
-3577 F F F F F F F
-3578 F F F F F F F
-3579 F F F F F F F
-3580 F F F F F F F
-3581 F F F F F F F
-3582 F F F F F F F
-3583 F F F F F F F
-3584 F F F F F F F
-3585 F T F F F T F
-3586 F T F F F T F
-3587 F T F F F T F
-3588 F T F F F T F
-3589 F T F F F T F
-3590 F T F F F T F
-3591 F T F F F T F
-3592 F T F F F T F
-3593 F T F F F T F
-3594 F T F F F T F
-3595 F T F F F T F
-3596 F T F F F T F
-3597 F T F F F T F
-3598 F T F F F T F
-3599 F T F F F T F
-3600 F T F F F T F
-3601 F T F F F T F
-3602 F T F F F T F
-3603 F T F F F T F
-3604 F T F F F T F
-3605 F T F F F T F
-3606 F T F F F T F
-3607 F T F F F T F
-3608 F T F F F T F
-3609 F T F F F T F
-3610 F T F F F T F
-3611 F T F F F T F
-3612 F T F F F T F
-3613 F T F F F T F
-3614 F T F F F T F
-3615 F T F F F T F
-3616 F T F F F T F
-3617 F T F F F T F
-3618 F T F F F T F
-3619 F T F F F T F
-3620 F T F F F T F
-3621 F T F F F T F
-3622 F T F F F T F
-3623 F T F F F T F
-3624 F T F F F T F
-3625 F T F F F T F
-3626 F T F F F T F
-3627 F T F F F T F
-3628 F T F F F T F
-3629 F T F F F T F
-3630 F T F F F T F
-3631 F T F F F T F
-3632 F T F F F T F
-3633 F T F F F F F
-3634 F T F F F T F
-3635 F T F F F T F
-3636 F T F F F F F
-3637 F T F F F F F
-3638 F T F F F F F
-3639 F T F F F F F
-3640 F T F F F F F
-3641 F T F F F F F
-3642 F T F F F F F
-3643 F F F F F F F
-3644 F F F F F F F
-3645 F F F F F F F
-3646 F F F F F F F
-3647 F T F F F F F
-3648 F T F F F T F
-3649 F T F F F T F
-3650 F T F F F T F
-3651 F T F F F T F
-3652 F T F F F T F
-3653 F T F F F T F
-3654 F T F F F T F
-3655 F T F F F F F
-3656 F T F F F F F
-3657 F T F F F F F
-3658 F T F F F F F
-3659 F T F F F F F
-3660 F T F F F F F
-3661 F T F F F F F
-3662 F T F F F F F
-3663 F T F F F F F
-3664 F T F F F F F
-3665 F T F F F F F
-3666 F T F F F F F
-3667 F T F F F F F
-3668 F T F F F F F
-3669 F T F F F F F
-3670 F T F F F F F
-3671 F T F F F F F
-3672 F T F F F F F
-3673 F T F F F F F
-3674 F T F F F F F
-3675 F T F F F F F
-3676 F F F F F F F
-3677 F F F F F F F
-3678 F F F F F F F
-3679 F F F F F F F
-3680 F F F F F F F
-3681 F F F F F F F
-3682 F F F F F F F
-3683 F F F F F F F
-3684 F F F F F F F
-3685 F F F F F F F
-3686 F F F F F F F
-3687 F F F F F F F
-3688 F F F F F F F
-3689 F F F F F F F
-3690 F F F F F F F
-3691 F F F F F F F
-3692 F F F F F F F
-3693 F F F F F F F
-3694 F F F F F F F
-3695 F F F F F F F
-3696 F F F F F F F
-3697 F F F F F F F
-3698 F F F F F F F
-3699 F F F F F F F
-3700 F F F F F F F
-3701 F F F F F F F
-3702 F F F F F F F
-3703 F F F F F F F
-3704 F F F F F F F
-3705 F F F F F F F
-3706 F F F F F F F
-3707 F F F F F F F
-3708 F F F F F F F
-3709 F F F F F F F
-3710 F F F F F F F
-3711 F F F F F F F
-3712 F F F F F F F
-3713 F T F F F T F
-3714 F T F F F T F
-3715 F F F F F F F
-3716 F T F F F T F
-3717 F F F F F F F
-3718 F F F F F F F
-3719 F T F F F T F
-3720 F T F F F T F
-3721 F F F F F F F
-3722 F T F F F T F
-3723 F F F F F F F
-3724 F F F F F F F
-3725 F T F F F T F
-3726 F F F F F F F
-3727 F F F F F F F
-3728 F F F F F F F
-3729 F F F F F F F
-3730 F F F F F F F
-3731 F F F F F F F
-3732 F T F F F T F
-3733 F T F F F T F
-3734 F T F F F T F
-3735 F T F F F T F
-3736 F F F F F F F
-3737 F T F F F T F
-3738 F T F F F T F
-3739 F T F F F T F
-3740 F T F F F T F
-3741 F T F F F T F
-3742 F T F F F T F
-3743 F T F F F T F
-3744 F F F F F F F
-3745 F T F F F T F
-3746 F T F F F T F
-3747 F T F F F T F
-3748 F F F F F F F
-3749 F T F F F T F
-3750 F F F F F F F
-3751 F T F F F T F
-3752 F F F F F F F
-3753 F F F F F F F
-3754 F T F F F T F
-3755 F T F F F T F
-3756 F F F F F F F
-3757 F T F F F T F
-3758 F T F F F T F
-3759 F T F F F T F
-3760 F T F F F T F
-3761 F T F F F F F
-3762 F T F F F T F
-3763 F T F F F T F
-3764 F T F F F F F
-3765 F T F F F F F
-3766 F T F F F F F
-3767 F T F F F F F
-3768 F T F F F F F
-3769 F T F F F F F
-3770 F F F F F F F
-3771 F T F F F F F
-3772 F T F F F F F
-3773 F T F F F T F
-3774 F F F F F F F
-3775 F F F F F F F
-3776 F T F F F T F
-3777 F T F F F T F
-3778 F T F F F T F
-3779 F T F F F T F
-3780 F T F F F T F
-3781 F F F F F F F
-3782 F T F F F T F
-3783 F F F F F F F
-3784 F T F F F F F
-3785 F T F F F F F
-3786 F T F F F F F
-3787 F T F F F F F
-3788 F T F F F F F
-3789 F T F F F F F
-3790 F F F F F F F
-3791 F F F F F F F
-3792 F T F F F F F
-3793 F T F F F F F
-3794 F T F F F F F
-3795 F T F F F F F
-3796 F T F F F F F
-3797 F T F F F F F
-3798 F T F F F F F
-3799 F T F F F F F
-3800 F T F F F F F
-3801 F T F F F F F
-3802 F F F F F F F
-3803 F F F F F F F
-3804 F T F F F T F
-3805 F T F F F T F
-3806 F F F F F F F
-3807 F F F F F F F
-3808 F F F F F F F
-3809 F F F F F F F
-3810 F F F F F F F
-3811 F F F F F F F
-3812 F F F F F F F
-3813 F F F F F F F
-3814 F F F F F F F
-3815 F F F F F F F
-3816 F F F F F F F
-3817 F F F F F F F
-3818 F F F F F F F
-3819 F F F F F F F
-3820 F F F F F F F
-3821 F F F F F F F
-3822 F F F F F F F
-3823 F F F F F F F
-3824 F F F F F F F
-3825 F F F F F F F
-3826 F F F F F F F
-3827 F F F F F F F
-3828 F F F F F F F
-3829 F F F F F F F
-3830 F F F F F F F
-3831 F F F F F F F
-3832 F F F F F F F
-3833 F F F F F F F
-3834 F F F F F F F
-3835 F F F F F F F
-3836 F F F F F F F
-3837 F F F F F F F
-3838 F F F F F F F
-3839 F F F F F F F
-3840 F T F F F T F
-3841 F T F F F F F
-3842 F T F F F F F
-3843 F T F F F F F
-3844 F T F F F F F
-3845 F T F F F F F
-3846 F T F F F F F
-3847 F T F F F F F
-3848 F T F F F F F
-3849 F T F F F F F
-3850 F T F F F F F
-3851 F T F F F F F
-3852 F T F F F F F
-3853 F T F F F F F
-3854 F T F F F F F
-3855 F T F F F F F
-3856 F T F F F F F
-3857 F T F F F F F
-3858 F T F F F F F
-3859 F T F F F F F
-3860 F T F F F F F
-3861 F T F F F F F
-3862 F T F F F F F
-3863 F T F F F F F
-3864 F T F F F F F
-3865 F T F F F F F
-3866 F T F F F F F
-3867 F T F F F F F
-3868 F T F F F F F
-3869 F T F F F F F
-3870 F T F F F F F
-3871 F T F F F F F
-3872 F T F F F F F
-3873 F T F F F F F
-3874 F T F F F F F
-3875 F T F F F F F
-3876 F T F F F F F
-3877 F T F F F F F
-3878 F T F F F F F
-3879 F T F F F F F
-3880 F T F F F F F
-3881 F T F F F F F
-3882 F T F F F F F
-3883 F T F F F F F
-3884 F T F F F F F
-3885 F T F F F F F
-3886 F T F F F F F
-3887 F T F F F F F
-3888 F T F F F F F
-3889 F T F F F F F
-3890 F T F F F F F
-3891 F T F F F F F
-3892 F T F F F F F
-3893 F T F F F F F
-3894 F T F F F F F
-3895 F T F F F F F
-3896 F T F F F F F
-3897 F T F F F F F
-3898 F T F F F F F
-3899 F T F F F F F
-3900 F T F F F F F
-3901 F T F F F F F
-3902 F T F F F F F
-3903 F T F F F F F
-3904 F T F F F T F
-3905 F T F F F T F
-3906 F T F F F T F
-3907 F T F F F T F
-3908 F T F F F T F
-3909 F T F F F T F
-3910 F T F F F T F
-3911 F T F F F T F
-3912 F F F F F F F
-3913 F T F F F T F
-3914 F T F F F T F
-3915 F T F F F T F
-3916 F T F F F T F
-3917 F T F F F T F
-3918 F T F F F T F
-3919 F T F F F T F
-3920 F T F F F T F
-3921 F T F F F T F
-3922 F T F F F T F
-3923 F T F F F T F
-3924 F T F F F T F
-3925 F T F F F T F
-3926 F T F F F T F
-3927 F T F F F T F
-3928 F T F F F T F
-3929 F T F F F T F
-3930 F T F F F T F
-3931 F T F F F T F
-3932 F T F F F T F
-3933 F T F F F T F
-3934 F T F F F T F
-3935 F T F F F T F
-3936 F T F F F T F
-3937 F T F F F T F
-3938 F T F F F T F
-3939 F T F F F T F
-3940 F T F F F T F
-3941 F T F F F T F
-3942 F T F F F T F
-3943 F T F F F T F
-3944 F T F F F T F
-3945 F T F F F T F
-3946 F T F F F T F
-3947 F T F F F T F
-3948 F T F F F T F
-3949 F F F F F F F
-3950 F F F F F F F
-3951 F F F F F F F
-3952 F F F F F F F
-3953 F T F F F F F
-3954 F T F F F F F
-3955 F T F F F F F
-3956 F T F F F F F
-3957 F T F F F F F
-3958 F T F F F F F
-3959 F T F F F F F
-3960 F T F F F F F
-3961 F T F F F F F
-3962 F T F F F F F
-3963 F T F F F F F
-3964 F T F F F F F
-3965 F T F F F F F
-3966 F T F F F F F
-3967 F T F F F F F
-3968 F T F F F F F
-3969 F T F F F F F
-3970 F T F F F F F
-3971 F T F F F F F
-3972 F T F F F F F
-3973 F T F F F F F
-3974 F T F F F F F
-3975 F T F F F F F
-3976 F T F F F T F
-3977 F T F F F T F
-3978 F T F F F T F
-3979 F T F F F T F
-3980 F T F F F T F
-3981 F T F F F F F
-3982 F T F F F F F
-3983 F T F F F F F
-3984 F T F F F F F
-3985 F T F F F F F
-3986 F T F F F F F
-3987 F T F F F F F
-3988 F T F F F F F
-3989 F T F F F F F
-3990 F T F F F F F
-3991 F T F F F F F
-3992 F F F F F F F
-3993 F T F F F F F
-3994 F T F F F F F
-3995 F T F F F F F
-3996 F T F F F F F
-3997 F T F F F F F
-3998 F T F F F F F
-3999 F T F F F F F
-4000 F T F F F F F
-4001 F T F F F F F
-4002 F T F F F F F
-4003 F T F F F F F
-4004 F T F F F F F
-4005 F T F F F F F
-4006 F T F F F F F
-4007 F T F F F F F
-4008 F T F F F F F
-4009 F T F F F F F
-4010 F T F F F F F
-4011 F T F F F F F
-4012 F T F F F F F
-4013 F T F F F F F
-4014 F T F F F F F
-4015 F T F F F F F
-4016 F T F F F F F
-4017 F T F F F F F
-4018 F T F F F F F
-4019 F T F F F F F
-4020 F T F F F F F
-4021 F T F F F F F
-4022 F T F F F F F
-4023 F T F F F F F
-4024 F T F F F F F
-4025 F T F F F F F
-4026 F T F F F F F
-4027 F T F F F F F
-4028 F T F F F F F
-4029 F F F F F F F
-4030 F T F F F F F
-4031 F T F F F F F
-4032 F T F F F F F
-4033 F T F F F F F
-4034 F T F F F F F
-4035 F T F F F F F
-4036 F T F F F F F
-4037 F T F F F F F
-4038 F T F F F F F
-4039 F T F F F F F
-4040 F T F F F F F
-4041 F T F F F F F
-4042 F T F F F F F
-4043 F T F F F F F
-4044 F T F F F F F
-4045 F F F F F F F
-4046 F T F F F F F
-4047 F T F F F F F
-4048 F T F F F F F
-4049 F T F F F F F
-4050 F T F F F F F
-4051 F T F F F F F
-4052 F T F F F F F
-4053 F T F F F F F
-4054 F T F F F F F
-4055 F T F F F F F
-4056 F T F F F F F
-4057 F T F F F F F
-4058 F T F F F F F
-4059 F F F F F F F
-4060 F F F F F F F
-4061 F F F F F F F
-4062 F F F F F F F
-4063 F F F F F F F
-4064 F F F F F F F
-4065 F F F F F F F
-4066 F F F F F F F
-4067 F F F F F F F
-4068 F F F F F F F
-4069 F F F F F F F
-4070 F F F F F F F
-4071 F F F F F F F
-4072 F F F F F F F
-4073 F F F F F F F
-4074 F F F F F F F
-4075 F F F F F F F
-4076 F F F F F F F
-4077 F F F F F F F
-4078 F F F F F F F
-4079 F F F F F F F
-4080 F F F F F F F
-4081 F F F F F F F
-4082 F F F F F F F
-4083 F F F F F F F
-4084 F F F F F F F
-4085 F F F F F F F
-4086 F F F F F F F
-4087 F F F F F F F
-4088 F F F F F F F
-4089 F F F F F F F
-4090 F F F F F F F
-4091 F F F F F F F
-4092 F F F F F F F
-4093 F F F F F F F
-4094 F F F F F F F
-4095 F F F F F F F
-4096 F T F F F T F
-4097 F T F F F T F
-4098 F T F F F T F
-4099 F T F F F T F
-4100 F T F F F T F
-4101 F T F F F T F
-4102 F T F F F T F
-4103 F T F F F T F
-4104 F T F F F T F
-4105 F T F F F T F
-4106 F T F F F T F
-4107 F T F F F T F
-4108 F T F F F T F
-4109 F T F F F T F
-4110 F T F F F T F
-4111 F T F F F T F
-4112 F T F F F T F
-4113 F T F F F T F
-4114 F T F F F T F
-4115 F T F F F T F
-4116 F T F F F T F
-4117 F T F F F T F
-4118 F T F F F T F
-4119 F T F F F T F
-4120 F T F F F T F
-4121 F T F F F T F
-4122 F T F F F T F
-4123 F T F F F T F
-4124 F T F F F T F
-4125 F T F F F T F
-4126 F T F F F T F
-4127 F T F F F T F
-4128 F T F F F T F
-4129 F T F F F T F
-4130 F T F F F T F
-4131 F T F F F T F
-4132 F T F F F T F
-4133 F T F F F T F
-4134 F T F F F T F
-4135 F T F F F T F
-4136 F T F F F T F
-4137 F T F F F T F
-4138 F T F F F T F
-4139 F T F F F F F
-4140 F T F F F F F
-4141 F T F F F F F
-4142 F T F F F F F
-4143 F T F F F F F
-4144 F T F F F F F
-4145 F T F F F F F
-4146 F T F F F F F
-4147 F T F F F F F
-4148 F T F F F F F
-4149 F T F F F F F
-4150 F T F F F F F
-4151 F T F F F F F
-4152 F T F F F F F
-4153 F T F F F F F
-4154 F T F F F F F
-4155 F T F F F F F
-4156 F T F F F F F
-4157 F T F F F F F
-4158 F T F F F F F
-4159 F T F F F T F
-4160 F T F F F F F
-4161 F T F F F F F
-4162 F T F F F F F
-4163 F T F F F F F
-4164 F T F F F F F
-4165 F T F F F F F
-4166 F T F F F F F
-4167 F T F F F F F
-4168 F T F F F F F
-4169 F T F F F F F
-4170 F T F F F F F
-4171 F T F F F F F
-4172 F T F F F F F
-4173 F T F F F F F
-4174 F T F F F F F
-4175 F T F F F F F
-4176 F T F F F T F
-4177 F T F F F T F
-4178 F T F F F T F
-4179 F T F F F T F
-4180 F T F F F T F
-4181 F T F F F T F
-4182 F T F F F F F
-4183 F T F F F F F
-4184 F T F F F F F
-4185 F T F F F F F
-4186 F T F F F T F
-4187 F T F F F T F
-4188 F T F F F T F
-4189 F T F F F T F
-4190 F T F F F F F
-4191 F T F F F F F
-4192 F T F F F F F
-4193 F T F F F T F
-4194 F T F F F F F
-4195 F T F F F F F
-4196 F T F F F F F
-4197 F T F F F T F
-4198 F T F F F T F
-4199 F T F F F F F
-4200 F T F F F F F
-4201 F T F F F F F
-4202 F T F F F F F
-4203 F T F F F F F
-4204 F T F F F F F
-4205 F T F F F F F
-4206 F T F F F T F
-4207 F T F F F T F
-4208 F T F F F T F
-4209 F T F F F F F
-4210 F T F F F F F
-4211 F T F F F F F
-4212 F T F F F F F
-4213 F T F F F T F
-4214 F T F F F T F
-4215 F T F F F T F
-4216 F T F F F T F
-4217 F T F F F T F
-4218 F T F F F T F
-4219 F T F F F T F
-4220 F T F F F T F
-4221 F T F F F T F
-4222 F T F F F T F
-4223 F T F F F T F
-4224 F T F F F T F
-4225 F T F F F T F
-4226 F T F F F F F
-4227 F T F F F F F
-4228 F T F F F F F
-4229 F T F F F F F
-4230 F T F F F F F
-4231 F T F F F F F
-4232 F T F F F F F
-4233 F T F F F F F
-4234 F T F F F F F
-4235 F T F F F F F
-4236 F T F F F F F
-4237 F T F F F F F
-4238 F T F F F T F
-4239 F T F F F F F
-4240 F T F F F F F
-4241 F T F F F F F
-4242 F T F F F F F
-4243 F T F F F F F
-4244 F T F F F F F
-4245 F T F F F F F
-4246 F T F F F F F
-4247 F T F F F F F
-4248 F T F F F F F
-4249 F T F F F F F
-4250 F T F F F F F
-4251 F T F F F F F
-4252 F T F F F F F
-4253 F T F F F F F
-4254 F T F F F F F
-4255 F T F F F F F
-4256 F T F T F T F
-4257 F T F T F T F
-4258 F T F T F T F
-4259 F T F T F T F
-4260 F T F T F T F
-4261 F T F T F T F
-4262 F T F T F T F
-4263 F T F T F T F
-4264 F T F T F T F
-4265 F T F T F T F
-4266 F T F T F T F
-4267 F T F T F T F
-4268 F T F T F T F
-4269 F T F T F T F
-4270 F T F T F T F
-4271 F T F T F T F
-4272 F T F T F T F
-4273 F T F T F T F
-4274 F T F T F T F
-4275 F T F T F T F
-4276 F T F T F T F
-4277 F T F T F T F
-4278 F T F T F T F
-4279 F T F T F T F
-4280 F T F T F T F
-4281 F T F T F T F
-4282 F T F T F T F
-4283 F T F T F T F
-4284 F T F T F T F
-4285 F T F T F T F
-4286 F T F T F T F
-4287 F T F T F T F
-4288 F T F T F T F
-4289 F T F T F T F
-4290 F T F T F T F
-4291 F T F T F T F
-4292 F T F T F T F
-4293 F T F T F T F
-4294 F F F F F F F
-4295 F F F F F F F
-4296 F F F F F F F
-4297 F F F F F F F
-4298 F F F F F F F
-4299 F F F F F F F
-4300 F F F F F F F
-4301 F F F F F F F
-4302 F F F F F F F
-4303 F F F F F F F
-4304 F T F F F T F
-4305 F T F F F T F
-4306 F T F F F T F
-4307 F T F F F T F
-4308 F T F F F T F
-4309 F T F F F T F
-4310 F T F F F T F
-4311 F T F F F T F
-4312 F T F F F T F
-4313 F T F F F T F
-4314 F T F F F T F
-4315 F T F F F T F
-4316 F T F F F T F
-4317 F T F F F T F
-4318 F T F F F T F
-4319 F T F F F T F
-4320 F T F F F T F
-4321 F T F F F T F
-4322 F T F F F T F
-4323 F T F F F T F
-4324 F T F F F T F
-4325 F T F F F T F
-4326 F T F F F T F
-4327 F T F F F T F
-4328 F T F F F T F
-4329 F T F F F T F
-4330 F T F F F T F
-4331 F T F F F T F
-4332 F T F F F T F
-4333 F T F F F T F
-4334 F T F F F T F
-4335 F T F F F T F
-4336 F T F F F T F
-4337 F T F F F T F
-4338 F T F F F T F
-4339 F T F F F T F
-4340 F T F F F T F
-4341 F T F F F T F
-4342 F T F F F T F
-4343 F T F F F T F
-4344 F T F F F T F
-4345 F T F F F T F
-4346 F T F F F T F
-4347 F T F F F F F
-4348 F T F F F T F
-4349 F F F F F F F
-4350 F F F F F F F
-4351 F F F F F F F
-4352 F T F F F T F
-4353 F T F F F T F
-4354 F T F F F T F
-4355 F T F F F T F
-4356 F T F F F T F
-4357 F T F F F T F
-4358 F T F F F T F
-4359 F T F F F T F
-4360 F T F F F T F
-4361 F T F F F T F
-4362 F T F F F T F
-4363 F T F F F T F
-4364 F T F F F T F
-4365 F T F F F T F
-4366 F T F F F T F
-4367 F T F F F T F
-4368 F T F F F T F
-4369 F T F F F T F
-4370 F T F F F T F
-4371 F T F F F T F
-4372 F T F F F T F
-4373 F T F F F T F
-4374 F T F F F T F
-4375 F T F F F T F
-4376 F T F F F T F
-4377 F T F F F T F
-4378 F T F F F T F
-4379 F T F F F T F
-4380 F T F F F T F
-4381 F T F F F T F
-4382 F T F F F T F
-4383 F T F F F T F
-4384 F T F F F T F
-4385 F T F F F T F
-4386 F T F F F T F
-4387 F T F F F T F
-4388 F T F F F T F
-4389 F T F F F T F
-4390 F T F F F T F
-4391 F T F F F T F
-4392 F T F F F T F
-4393 F T F F F T F
-4394 F T F F F T F
-4395 F T F F F T F
-4396 F T F F F T F
-4397 F T F F F T F
-4398 F T F F F T F
-4399 F T F F F T F
-4400 F T F F F T F
-4401 F T F F F T F
-4402 F T F F F T F
-4403 F T F F F T F
-4404 F T F F F T F
-4405 F T F F F T F
-4406 F T F F F T F
-4407 F T F F F T F
-4408 F T F F F T F
-4409 F T F F F T F
-4410 F T F F F T F
-4411 F T F F F T F
-4412 F T F F F T F
-4413 F T F F F T F
-4414 F T F F F T F
-4415 F T F F F T F
-4416 F T F F F T F
-4417 F T F F F T F
-4418 F T F F F T F
-4419 F T F F F T F
-4420 F T F F F T F
-4421 F T F F F T F
-4422 F T F F F T F
-4423 F T F F F T F
-4424 F T F F F T F
-4425 F T F F F T F
-4426 F T F F F T F
-4427 F T F F F T F
-4428 F T F F F T F
-4429 F T F F F T F
-4430 F T F F F T F
-4431 F T F F F T F
-4432 F T F F F T F
-4433 F T F F F T F
-4434 F T F F F T F
-4435 F T F F F T F
-4436 F T F F F T F
-4437 F T F F F T F
-4438 F T F F F T F
-4439 F T F F F T F
-4440 F T F F F T F
-4441 F T F F F T F
-4442 F T F F F T F
-4443 F T F F F T F
-4444 F T F F F T F
-4445 F T F F F T F
-4446 F T F F F T F
-4447 F T F F F T F
-4448 F T F F F T F
-4449 F T F F F T F
-4450 F T F F F T F
-4451 F T F F F T F
-4452 F T F F F T F
-4453 F T F F F T F
-4454 F T F F F T F
-4455 F T F F F T F
-4456 F T F F F T F
-4457 F T F F F T F
-4458 F T F F F T F
-4459 F T F F F T F
-4460 F T F F F T F
-4461 F T F F F T F
-4462 F T F F F T F
-4463 F T F F F T F
-4464 F T F F F T F
-4465 F T F F F T F
-4466 F T F F F T F
-4467 F T F F F T F
-4468 F T F F F T F
-4469 F T F F F T F
-4470 F T F F F T F
-4471 F T F F F T F
-4472 F T F F F T F
-4473 F T F F F T F
-4474 F T F F F T F
-4475 F T F F F T F
-4476 F T F F F T F
-4477 F T F F F T F
-4478 F T F F F T F
-4479 F T F F F T F
-4480 F T F F F T F
-4481 F T F F F T F
-4482 F T F F F T F
-4483 F T F F F T F
-4484 F T F F F T F
-4485 F T F F F T F
-4486 F T F F F T F
-4487 F T F F F T F
-4488 F T F F F T F
-4489 F T F F F T F
-4490 F T F F F T F
-4491 F T F F F T F
-4492 F T F F F T F
-4493 F T F F F T F
-4494 F T F F F T F
-4495 F T F F F T F
-4496 F T F F F T F
-4497 F T F F F T F
-4498 F T F F F T F
-4499 F T F F F T F
-4500 F T F F F T F
-4501 F T F F F T F
-4502 F T F F F T F
-4503 F T F F F T F
-4504 F T F F F T F
-4505 F T F F F T F
-4506 F T F F F T F
-4507 F T F F F T F
-4508 F T F F F T F
-4509 F T F F F T F
-4510 F T F F F T F
-4511 F T F F F T F
-4512 F T F F F T F
-4513 F T F F F T F
-4514 F T F F F T F
-4515 F T F F F T F
-4516 F T F F F T F
-4517 F T F F F T F
-4518 F T F F F T F
-4519 F T F F F T F
-4520 F T F F F T F
-4521 F T F F F T F
-4522 F T F F F T F
-4523 F T F F F T F
-4524 F T F F F T F
-4525 F T F F F T F
-4526 F T F F F T F
-4527 F T F F F T F
-4528 F T F F F T F
-4529 F T F F F T F
-4530 F T F F F T F
-4531 F T F F F T F
-4532 F T F F F T F
-4533 F T F F F T F
-4534 F T F F F T F
-4535 F T F F F T F
-4536 F T F F F T F
-4537 F T F F F T F
-4538 F T F F F T F
-4539 F T F F F T F
-4540 F T F F F T F
-4541 F T F F F T F
-4542 F T F F F T F
-4543 F T F F F T F
-4544 F T F F F T F
-4545 F T F F F T F
-4546 F T F F F T F
-4547 F T F F F T F
-4548 F T F F F T F
-4549 F T F F F T F
-4550 F T F F F T F
-4551 F T F F F T F
-4552 F T F F F T F
-4553 F T F F F T F
-4554 F T F F F T F
-4555 F T F F F T F
-4556 F T F F F T F
-4557 F T F F F T F
-4558 F T F F F T F
-4559 F T F F F T F
-4560 F T F F F T F
-4561 F T F F F T F
-4562 F T F F F T F
-4563 F T F F F T F
-4564 F T F F F T F
-4565 F T F F F T F
-4566 F T F F F T F
-4567 F T F F F T F
-4568 F T F F F T F
-4569 F T F F F T F
-4570 F T F F F T F
-4571 F T F F F T F
-4572 F T F F F T F
-4573 F T F F F T F
-4574 F T F F F T F
-4575 F T F F F T F
-4576 F T F F F T F
-4577 F T F F F T F
-4578 F T F F F T F
-4579 F T F F F T F
-4580 F T F F F T F
-4581 F T F F F T F
-4582 F T F F F T F
-4583 F T F F F T F
-4584 F T F F F T F
-4585 F T F F F T F
-4586 F T F F F T F
-4587 F T F F F T F
-4588 F T F F F T F
-4589 F T F F F T F
-4590 F T F F F T F
-4591 F T F F F T F
-4592 F T F F F T F
-4593 F T F F F T F
-4594 F T F F F T F
-4595 F T F F F T F
-4596 F T F F F T F
-4597 F T F F F T F
-4598 F T F F F T F
-4599 F T F F F T F
-4600 F T F F F T F
-4601 F T F F F T F
-4602 F T F F F T F
-4603 F T F F F T F
-4604 F T F F F T F
-4605 F T F F F T F
-4606 F T F F F T F
-4607 F T F F F T F
-4608 F T F F F T F
-4609 F T F F F T F
-4610 F T F F F T F
-4611 F T F F F T F
-4612 F T F F F T F
-4613 F T F F F T F
-4614 F T F F F T F
-4615 F T F F F T F
-4616 F T F F F T F
-4617 F T F F F T F
-4618 F T F F F T F
-4619 F T F F F T F
-4620 F T F F F T F
-4621 F T F F F T F
-4622 F T F F F T F
-4623 F T F F F T F
-4624 F T F F F T F
-4625 F T F F F T F
-4626 F T F F F T F
-4627 F T F F F T F
-4628 F T F F F T F
-4629 F T F F F T F
-4630 F T F F F T F
-4631 F T F F F T F
-4632 F T F F F T F
-4633 F T F F F T F
-4634 F T F F F T F
-4635 F T F F F T F
-4636 F T F F F T F
-4637 F T F F F T F
-4638 F T F F F T F
-4639 F T F F F T F
-4640 F T F F F T F
-4641 F T F F F T F
-4642 F T F F F T F
-4643 F T F F F T F
-4644 F T F F F T F
-4645 F T F F F T F
-4646 F T F F F T F
-4647 F T F F F T F
-4648 F T F F F T F
-4649 F T F F F T F
-4650 F T F F F T F
-4651 F T F F F T F
-4652 F T F F F T F
-4653 F T F F F T F
-4654 F T F F F T F
-4655 F T F F F T F
-4656 F T F F F T F
-4657 F T F F F T F
-4658 F T F F F T F
-4659 F T F F F T F
-4660 F T F F F T F
-4661 F T F F F T F
-4662 F T F F F T F
-4663 F T F F F T F
-4664 F T F F F T F
-4665 F T F F F T F
-4666 F T F F F T F
-4667 F T F F F T F
-4668 F T F F F T F
-4669 F T F F F T F
-4670 F T F F F T F
-4671 F T F F F T F
-4672 F T F F F T F
-4673 F T F F F T F
-4674 F T F F F T F
-4675 F T F F F T F
-4676 F T F F F T F
-4677 F T F F F T F
-4678 F T F F F T F
-4679 F T F F F T F
-4680 F T F F F T F
-4681 F F F F F F F
-4682 F T F F F T F
-4683 F T F F F T F
-4684 F T F F F T F
-4685 F T F F F T F
-4686 F F F F F F F
-4687 F F F F F F F
-4688 F T F F F T F
-4689 F T F F F T F
-4690 F T F F F T F
-4691 F T F F F T F
-4692 F T F F F T F
-4693 F T F F F T F
-4694 F T F F F T F
-4695 F F F F F F F
-4696 F T F F F T F
-4697 F F F F F F F
-4698 F T F F F T F
-4699 F T F F F T F
-4700 F T F F F T F
-4701 F T F F F T F
-4702 F F F F F F F
-4703 F F F F F F F
-4704 F T F F F T F
-4705 F T F F F T F
-4706 F T F F F T F
-4707 F T F F F T F
-4708 F T F F F T F
-4709 F T F F F T F
-4710 F T F F F T F
-4711 F T F F F T F
-4712 F T F F F T F
-4713 F T F F F T F
-4714 F T F F F T F
-4715 F T F F F T F
-4716 F T F F F T F
-4717 F T F F F T F
-4718 F T F F F T F
-4719 F T F F F T F
-4720 F T F F F T F
-4721 F T F F F T F
-4722 F T F F F T F
-4723 F T F F F T F
-4724 F T F F F T F
-4725 F T F F F T F
-4726 F T F F F T F
-4727 F T F F F T F
-4728 F T F F F T F
-4729 F T F F F T F
-4730 F T F F F T F
-4731 F T F F F T F
-4732 F T F F F T F
-4733 F T F F F T F
-4734 F T F F F T F
-4735 F T F F F T F
-4736 F T F F F T F
-4737 F T F F F T F
-4738 F T F F F T F
-4739 F T F F F T F
-4740 F T F F F T F
-4741 F T F F F T F
-4742 F T F F F T F
-4743 F T F F F T F
-4744 F T F F F T F
-4745 F F F F F F F
-4746 F T F F F T F
-4747 F T F F F T F
-4748 F T F F F T F
-4749 F T F F F T F
-4750 F F F F F F F
-4751 F F F F F F F
-4752 F T F F F T F
-4753 F T F F F T F
-4754 F T F F F T F
-4755 F T F F F T F
-4756 F T F F F T F
-4757 F T F F F T F
-4758 F T F F F T F
-4759 F T F F F T F
-4760 F T F F F T F
-4761 F T F F F T F
-4762 F T F F F T F
-4763 F T F F F T F
-4764 F T F F F T F
-4765 F T F F F T F
-4766 F T F F F T F
-4767 F T F F F T F
-4768 F T F F F T F
-4769 F T F F F T F
-4770 F T F F F T F
-4771 F T F F F T F
-4772 F T F F F T F
-4773 F T F F F T F
-4774 F T F F F T F
-4775 F T F F F T F
-4776 F T F F F T F
-4777 F T F F F T F
-4778 F T F F F T F
-4779 F T F F F T F
-4780 F T F F F T F
-4781 F T F F F T F
-4782 F T F F F T F
-4783 F T F F F T F
-4784 F T F F F T F
-4785 F F F F F F F
-4786 F T F F F T F
-4787 F T F F F T F
-4788 F T F F F T F
-4789 F T F F F T F
-4790 F F F F F F F
-4791 F F F F F F F
-4792 F T F F F T F
-4793 F T F F F T F
-4794 F T F F F T F
-4795 F T F F F T F
-4796 F T F F F T F
-4797 F T F F F T F
-4798 F T F F F T F
-4799 F F F F F F F
-4800 F T F F F T F
-4801 F F F F F F F
-4802 F T F F F T F
-4803 F T F F F T F
-4804 F T F F F T F
-4805 F T F F F T F
-4806 F F F F F F F
-4807 F F F F F F F
-4808 F T F F F T F
-4809 F T F F F T F
-4810 F T F F F T F
-4811 F T F F F T F
-4812 F T F F F T F
-4813 F T F F F T F
-4814 F T F F F T F
-4815 F T F F F T F
-4816 F T F F F T F
-4817 F T F F F T F
-4818 F T F F F T F
-4819 F T F F F T F
-4820 F T F F F T F
-4821 F T F F F T F
-4822 F T F F F T F
-4823 F F F F F F F
-4824 F T F F F T F
-4825 F T F F F T F
-4826 F T F F F T F
-4827 F T F F F T F
-4828 F T F F F T F
-4829 F T F F F T F
-4830 F T F F F T F
-4831 F T F F F T F
-4832 F T F F F T F
-4833 F T F F F T F
-4834 F T F F F T F
-4835 F T F F F T F
-4836 F T F F F T F
-4837 F T F F F T F
-4838 F T F F F T F
-4839 F T F F F T F
-4840 F T F F F T F
-4841 F T F F F T F
-4842 F T F F F T F
-4843 F T F F F T F
-4844 F T F F F T F
-4845 F T F F F T F
-4846 F T F F F T F
-4847 F T F F F T F
-4848 F T F F F T F
-4849 F T F F F T F
-4850 F T F F F T F
-4851 F T F F F T F
-4852 F T F F F T F
-4853 F T F F F T F
-4854 F T F F F T F
-4855 F T F F F T F
-4856 F T F F F T F
-4857 F T F F F T F
-4858 F T F F F T F
-4859 F T F F F T F
-4860 F T F F F T F
-4861 F T F F F T F
-4862 F T F F F T F
-4863 F T F F F T F
-4864 F T F F F T F
-4865 F T F F F T F
-4866 F T F F F T F
-4867 F T F F F T F
-4868 F T F F F T F
-4869 F T F F F T F
-4870 F T F F F T F
-4871 F T F F F T F
-4872 F T F F F T F
-4873 F T F F F T F
-4874 F T F F F T F
-4875 F T F F F T F
-4876 F T F F F T F
-4877 F T F F F T F
-4878 F T F F F T F
-4879 F T F F F T F
-4880 F T F F F T F
-4881 F F F F F F F
-4882 F T F F F T F
-4883 F T F F F T F
-4884 F T F F F T F
-4885 F T F F F T F
-4886 F F F F F F F
-4887 F F F F F F F
-4888 F T F F F T F
-4889 F T F F F T F
-4890 F T F F F T F
-4891 F T F F F T F
-4892 F T F F F T F
-4893 F T F F F T F
-4894 F T F F F T F
-4895 F T F F F T F
-4896 F T F F F T F
-4897 F T F F F T F
-4898 F T F F F T F
-4899 F T F F F T F
-4900 F T F F F T F
-4901 F T F F F T F
-4902 F T F F F T F
-4903 F T F F F T F
-4904 F T F F F T F
-4905 F T F F F T F
-4906 F T F F F T F
-4907 F T F F F T F
-4908 F T F F F T F
-4909 F T F F F T F
-4910 F T F F F T F
-4911 F T F F F T F
-4912 F T F F F T F
-4913 F T F F F T F
-4914 F T F F F T F
-4915 F T F F F T F
-4916 F T F F F T F
-4917 F T F F F T F
-4918 F T F F F T F
-4919 F T F F F T F
-4920 F T F F F T F
-4921 F T F F F T F
-4922 F T F F F T F
-4923 F T F F F T F
-4924 F T F F F T F
-4925 F T F F F T F
-4926 F T F F F T F
-4927 F T F F F T F
-4928 F T F F F T F
-4929 F T F F F T F
-4930 F T F F F T F
-4931 F T F F F T F
-4932 F T F F F T F
-4933 F T F F F T F
-4934 F T F F F T F
-4935 F T F F F T F
-4936 F T F F F T F
-4937 F T F F F T F
-4938 F T F F F T F
-4939 F T F F F T F
-4940 F T F F F T F
-4941 F T F F F T F
-4942 F T F F F T F
-4943 F T F F F T F
-4944 F T F F F T F
-4945 F T F F F T F
-4946 F T F F F T F
-4947 F T F F F T F
-4948 F T F F F T F
-4949 F T F F F T F
-4950 F T F F F T F
-4951 F T F F F T F
-4952 F T F F F T F
-4953 F T F F F T F
-4954 F T F F F T F
-4955 F F F F F F F
-4956 F F F F F F F
-4957 F T F F F F F
-4958 F T F F F F F
-4959 F T F F F F F
-4960 F T F F F F F
-4961 F T F F F F F
-4962 F T F F F F F
-4963 F T F F F F F
-4964 F T F F F F F
-4965 F T F F F F F
-4966 F T F F F F F
-4967 F T F F F F F
-4968 F T F F F F F
-4969 F T F F F F F
-4970 F T F F F F F
-4971 F T F F F F F
-4972 F T F F F F F
-4973 F T F F F F F
-4974 F T F F F F F
-4975 F T F F F F F
-4976 F T F F F F F
-4977 F T F F F F F
-4978 F T F F F F F
-4979 F T F F F F F
-4980 F T F F F F F
-4981 F T F F F F F
-4982 F T F F F F F
-4983 F T F F F F F
-4984 F T F F F F F
-4985 F T F F F F F
-4986 F T F F F F F
-4987 F T F F F F F
-4988 F T F F F F F
-4989 F F F F F F F
-4990 F F F F F F F
-4991 F F F F F F F
-4992 F T F F F T F
-4993 F T F F F T F
-4994 F T F F F T F
-4995 F T F F F T F
-4996 F T F F F T F
-4997 F T F F F T F
-4998 F T F F F T F
-4999 F T F F F T F
-5000 F T F F F T F
-5001 F T F F F T F
-5002 F T F F F T F
-5003 F T F F F T F
-5004 F T F F F T F
-5005 F T F F F T F
-5006 F T F F F T F
-5007 F T F F F T F
-5008 F T F F F F F
-5009 F T F F F F F
-5010 F T F F F F F
-5011 F T F F F F F
-5012 F T F F F F F
-5013 F T F F F F F
-5014 F T F F F F F
-5015 F T F F F F F
-5016 F T F F F F F
-5017 F T F F F F F
-5018 F F F F F F F
-5019 F F F F F F F
-5020 F F F F F F F
-5021 F F F F F F F
-5022 F F F F F F F
-5023 F F F F F F F
-5024 F T F F F T F
-5025 F T F F F T F
-5026 F T F F F T F
-5027 F T F F F T F
-5028 F T F F F T F
-5029 F T F F F T F
-5030 F T F F F T F
-5031 F T F F F T F
-5032 F T F F F T F
-5033 F T F F F T F
-5034 F T F F F T F
-5035 F T F F F T F
-5036 F T F F F T F
-5037 F T F F F T F
-5038 F T F F F T F
-5039 F T F F F T F
-5040 F T F F F T F
-5041 F T F F F T F
-5042 F T F F F T F
-5043 F T F F F T F
-5044 F T F F F T F
-5045 F T F F F T F
-5046 F T F F F T F
-5047 F T F F F T F
-5048 F T F F F T F
-5049 F T F F F T F
-5050 F T F F F T F
-5051 F T F F F T F
-5052 F T F F F T F
-5053 F T F F F T F
-5054 F T F F F T F
-5055 F T F F F T F
-5056 F T F F F T F
-5057 F T F F F T F
-5058 F T F F F T F
-5059 F T F F F T F
-5060 F T F F F T F
-5061 F T F F F T F
-5062 F T F F F T F
-5063 F T F F F T F
-5064 F T F F F T F
-5065 F T F F F T F
-5066 F T F F F T F
-5067 F T F F F T F
-5068 F T F F F T F
-5069 F T F F F T F
-5070 F T F F F T F
-5071 F T F F F T F
-5072 F T F F F T F
-5073 F T F F F T F
-5074 F T F F F T F
-5075 F T F F F T F
-5076 F T F F F T F
-5077 F T F F F T F
-5078 F T F F F T F
-5079 F T F F F T F
-5080 F T F F F T F
-5081 F T F F F T F
-5082 F T F F F T F
-5083 F T F F F T F
-5084 F T F F F T F
-5085 F T F F F T F
-5086 F T F F F T F
-5087 F T F F F T F
-5088 F T F F F T F
-5089 F T F F F T F
-5090 F T F F F T F
-5091 F T F F F T F
-5092 F T F F F T F
-5093 F T F F F T F
-5094 F T F F F T F
-5095 F T F F F T F
-5096 F T F F F T F
-5097 F T F F F T F
-5098 F T F F F T F
-5099 F T F F F T F
-5100 F T F F F T F
-5101 F T F F F T F
-5102 F T F F F T F
-5103 F T F F F T F
-5104 F T F F F T F
-5105 F T F F F T F
-5106 F T F F F T F
-5107 F T F F F T F
-5108 F T F F F T F
-5109 F F F F F F F
-5110 F F F F F F F
-5111 F F F F F F F
-5112 F F F F F F F
-5113 F F F F F F F
-5114 F F F F F F F
-5115 F F F F F F F
-5116 F F F F F F F
-5117 F F F F F F F
-5118 F F F F F F F
-5119 F F F F F F F
-5120 F T F F F F F
-5121 F T F F F T F
-5122 F T F F F T F
-5123 F T F F F T F
-5124 F T F F F T F
-5125 F T F F F T F
-5126 F T F F F T F
-5127 F T F F F T F
-5128 F T F F F T F
-5129 F T F F F T F
-5130 F T F F F T F
-5131 F T F F F T F
-5132 F T F F F T F
-5133 F T F F F T F
-5134 F T F F F T F
-5135 F T F F F T F
-5136 F T F F F T F
-5137 F T F F F T F
-5138 F T F F F T F
-5139 F T F F F T F
-5140 F T F F F T F
-5141 F T F F F T F
-5142 F T F F F T F
-5143 F T F F F T F
-5144 F T F F F T F
-5145 F T F F F T F
-5146 F T F F F T F
-5147 F T F F F T F
-5148 F T F F F T F
-5149 F T F F F T F
-5150 F T F F F T F
-5151 F T F F F T F
-5152 F T F F F T F
-5153 F T F F F T F
-5154 F T F F F T F
-5155 F T F F F T F
-5156 F T F F F T F
-5157 F T F F F T F
-5158 F T F F F T F
-5159 F T F F F T F
-5160 F T F F F T F
-5161 F T F F F T F
-5162 F T F F F T F
-5163 F T F F F T F
-5164 F T F F F T F
-5165 F T F F F T F
-5166 F T F F F T F
-5167 F T F F F T F
-5168 F T F F F T F
-5169 F T F F F T F
-5170 F T F F F T F
-5171 F T F F F T F
-5172 F T F F F T F
-5173 F T F F F T F
-5174 F T F F F T F
-5175 F T F F F T F
-5176 F T F F F T F
-5177 F T F F F T F
-5178 F T F F F T F
-5179 F T F F F T F
-5180 F T F F F T F
-5181 F T F F F T F
-5182 F T F F F T F
-5183 F T F F F T F
-5184 F T F F F T F
-5185 F T F F F T F
-5186 F T F F F T F
-5187 F T F F F T F
-5188 F T F F F T F
-5189 F T F F F T F
-5190 F T F F F T F
-5191 F T F F F T F
-5192 F T F F F T F
-5193 F T F F F T F
-5194 F T F F F T F
-5195 F T F F F T F
-5196 F T F F F T F
-5197 F T F F F T F
-5198 F T F F F T F
-5199 F T F F F T F
-5200 F T F F F T F
-5201 F T F F F T F
-5202 F T F F F T F
-5203 F T F F F T F
-5204 F T F F F T F
-5205 F T F F F T F
-5206 F T F F F T F
-5207 F T F F F T F
-5208 F T F F F T F
-5209 F T F F F T F
-5210 F T F F F T F
-5211 F T F F F T F
-5212 F T F F F T F
-5213 F T F F F T F
-5214 F T F F F T F
-5215 F T F F F T F
-5216 F T F F F T F
-5217 F T F F F T F
-5218 F T F F F T F
-5219 F T F F F T F
-5220 F T F F F T F
-5221 F T F F F T F
-5222 F T F F F T F
-5223 F T F F F T F
-5224 F T F F F T F
-5225 F T F F F T F
-5226 F T F F F T F
-5227 F T F F F T F
-5228 F T F F F T F
-5229 F T F F F T F
-5230 F T F F F T F
-5231 F T F F F T F
-5232 F T F F F T F
-5233 F T F F F T F
-5234 F T F F F T F
-5235 F T F F F T F
-5236 F T F F F T F
-5237 F T F F F T F
-5238 F T F F F T F
-5239 F T F F F T F
-5240 F T F F F T F
-5241 F T F F F T F
-5242 F T F F F T F
-5243 F T F F F T F
-5244 F T F F F T F
-5245 F T F F F T F
-5246 F T F F F T F
-5247 F T F F F T F
-5248 F T F F F T F
-5249 F T F F F T F
-5250 F T F F F T F
-5251 F T F F F T F
-5252 F T F F F T F
-5253 F T F F F T F
-5254 F T F F F T F
-5255 F T F F F T F
-5256 F T F F F T F
-5257 F T F F F T F
-5258 F T F F F T F
-5259 F T F F F T F
-5260 F T F F F T F
-5261 F T F F F T F
-5262 F T F F F T F
-5263 F T F F F T F
-5264 F T F F F T F
-5265 F T F F F T F
-5266 F T F F F T F
-5267 F T F F F T F
-5268 F T F F F T F
-5269 F T F F F T F
-5270 F T F F F T F
-5271 F T F F F T F
-5272 F T F F F T F
-5273 F T F F F T F
-5274 F T F F F T F
-5275 F T F F F T F
-5276 F T F F F T F
-5277 F T F F F T F
-5278 F T F F F T F
-5279 F T F F F T F
-5280 F T F F F T F
-5281 F T F F F T F
-5282 F T F F F T F
-5283 F T F F F T F
-5284 F T F F F T F
-5285 F T F F F T F
-5286 F T F F F T F
-5287 F T F F F T F
-5288 F T F F F T F
-5289 F T F F F T F
-5290 F T F F F T F
-5291 F T F F F T F
-5292 F T F F F T F
-5293 F T F F F T F
-5294 F T F F F T F
-5295 F T F F F T F
-5296 F T F F F T F
-5297 F T F F F T F
-5298 F T F F F T F
-5299 F T F F F T F
-5300 F T F F F T F
-5301 F T F F F T F
-5302 F T F F F T F
-5303 F T F F F T F
-5304 F T F F F T F
-5305 F T F F F T F
-5306 F T F F F T F
-5307 F T F F F T F
-5308 F T F F F T F
-5309 F T F F F T F
-5310 F T F F F T F
-5311 F T F F F T F
-5312 F T F F F T F
-5313 F T F F F T F
-5314 F T F F F T F
-5315 F T F F F T F
-5316 F T F F F T F
-5317 F T F F F T F
-5318 F T F F F T F
-5319 F T F F F T F
-5320 F T F F F T F
-5321 F T F F F T F
-5322 F T F F F T F
-5323 F T F F F T F
-5324 F T F F F T F
-5325 F T F F F T F
-5326 F T F F F T F
-5327 F T F F F T F
-5328 F T F F F T F
-5329 F T F F F T F
-5330 F T F F F T F
-5331 F T F F F T F
-5332 F T F F F T F
-5333 F T F F F T F
-5334 F T F F F T F
-5335 F T F F F T F
-5336 F T F F F T F
-5337 F T F F F T F
-5338 F T F F F T F
-5339 F T F F F T F
-5340 F T F F F T F
-5341 F T F F F T F
-5342 F T F F F T F
-5343 F T F F F T F
-5344 F T F F F T F
-5345 F T F F F T F
-5346 F T F F F T F
-5347 F T F F F T F
-5348 F T F F F T F
-5349 F T F F F T F
-5350 F T F F F T F
-5351 F T F F F T F
-5352 F T F F F T F
-5353 F T F F F T F
-5354 F T F F F T F
-5355 F T F F F T F
-5356 F T F F F T F
-5357 F T F F F T F
-5358 F T F F F T F
-5359 F T F F F T F
-5360 F T F F F T F
-5361 F T F F F T F
-5362 F T F F F T F
-5363 F T F F F T F
-5364 F T F F F T F
-5365 F T F F F T F
-5366 F T F F F T F
-5367 F T F F F T F
-5368 F T F F F T F
-5369 F T F F F T F
-5370 F T F F F T F
-5371 F T F F F T F
-5372 F T F F F T F
-5373 F T F F F T F
-5374 F T F F F T F
-5375 F T F F F T F
-5376 F T F F F T F
-5377 F T F F F T F
-5378 F T F F F T F
-5379 F T F F F T F
-5380 F T F F F T F
-5381 F T F F F T F
-5382 F T F F F T F
-5383 F T F F F T F
-5384 F T F F F T F
-5385 F T F F F T F
-5386 F T F F F T F
-5387 F T F F F T F
-5388 F T F F F T F
-5389 F T F F F T F
-5390 F T F F F T F
-5391 F T F F F T F
-5392 F T F F F T F
-5393 F T F F F T F
-5394 F T F F F T F
-5395 F T F F F T F
-5396 F T F F F T F
-5397 F T F F F T F
-5398 F T F F F T F
-5399 F T F F F T F
-5400 F T F F F T F
-5401 F T F F F T F
-5402 F T F F F T F
-5403 F T F F F T F
-5404 F T F F F T F
-5405 F T F F F T F
-5406 F T F F F T F
-5407 F T F F F T F
-5408 F T F F F T F
-5409 F T F F F T F
-5410 F T F F F T F
-5411 F T F F F T F
-5412 F T F F F T F
-5413 F T F F F T F
-5414 F T F F F T F
-5415 F T F F F T F
-5416 F T F F F T F
-5417 F T F F F T F
-5418 F T F F F T F
-5419 F T F F F T F
-5420 F T F F F T F
-5421 F T F F F T F
-5422 F T F F F T F
-5423 F T F F F T F
-5424 F T F F F T F
-5425 F T F F F T F
-5426 F T F F F T F
-5427 F T F F F T F
-5428 F T F F F T F
-5429 F T F F F T F
-5430 F T F F F T F
-5431 F T F F F T F
-5432 F T F F F T F
-5433 F T F F F T F
-5434 F T F F F T F
-5435 F T F F F T F
-5436 F T F F F T F
-5437 F T F F F T F
-5438 F T F F F T F
-5439 F T F F F T F
-5440 F T F F F T F
-5441 F T F F F T F
-5442 F T F F F T F
-5443 F T F F F T F
-5444 F T F F F T F
-5445 F T F F F T F
-5446 F T F F F T F
-5447 F T F F F T F
-5448 F T F F F T F
-5449 F T F F F T F
-5450 F T F F F T F
-5451 F T F F F T F
-5452 F T F F F T F
-5453 F T F F F T F
-5454 F T F F F T F
-5455 F T F F F T F
-5456 F T F F F T F
-5457 F T F F F T F
-5458 F T F F F T F
-5459 F T F F F T F
-5460 F T F F F T F
-5461 F T F F F T F
-5462 F T F F F T F
-5463 F T F F F T F
-5464 F T F F F T F
-5465 F T F F F T F
-5466 F T F F F T F
-5467 F T F F F T F
-5468 F T F F F T F
-5469 F T F F F T F
-5470 F T F F F T F
-5471 F T F F F T F
-5472 F T F F F T F
-5473 F T F F F T F
-5474 F T F F F T F
-5475 F T F F F T F
-5476 F T F F F T F
-5477 F T F F F T F
-5478 F T F F F T F
-5479 F T F F F T F
-5480 F T F F F T F
-5481 F T F F F T F
-5482 F T F F F T F
-5483 F T F F F T F
-5484 F T F F F T F
-5485 F T F F F T F
-5486 F T F F F T F
-5487 F T F F F T F
-5488 F T F F F T F
-5489 F T F F F T F
-5490 F T F F F T F
-5491 F T F F F T F
-5492 F T F F F T F
-5493 F T F F F T F
-5494 F T F F F T F
-5495 F T F F F T F
-5496 F T F F F T F
-5497 F T F F F T F
-5498 F T F F F T F
-5499 F T F F F T F
-5500 F T F F F T F
-5501 F T F F F T F
-5502 F T F F F T F
-5503 F T F F F T F
-5504 F T F F F T F
-5505 F T F F F T F
-5506 F T F F F T F
-5507 F T F F F T F
-5508 F T F F F T F
-5509 F T F F F T F
-5510 F T F F F T F
-5511 F T F F F T F
-5512 F T F F F T F
-5513 F T F F F T F
-5514 F T F F F T F
-5515 F T F F F T F
-5516 F T F F F T F
-5517 F T F F F T F
-5518 F T F F F T F
-5519 F T F F F T F
-5520 F T F F F T F
-5521 F T F F F T F
-5522 F T F F F T F
-5523 F T F F F T F
-5524 F T F F F T F
-5525 F T F F F T F
-5526 F T F F F T F
-5527 F T F F F T F
-5528 F T F F F T F
-5529 F T F F F T F
-5530 F T F F F T F
-5531 F T F F F T F
-5532 F T F F F T F
-5533 F T F F F T F
-5534 F T F F F T F
-5535 F T F F F T F
-5536 F T F F F T F
-5537 F T F F F T F
-5538 F T F F F T F
-5539 F T F F F T F
-5540 F T F F F T F
-5541 F T F F F T F
-5542 F T F F F T F
-5543 F T F F F T F
-5544 F T F F F T F
-5545 F T F F F T F
-5546 F T F F F T F
-5547 F T F F F T F
-5548 F T F F F T F
-5549 F T F F F T F
-5550 F T F F F T F
-5551 F T F F F T F
-5552 F T F F F T F
-5553 F T F F F T F
-5554 F T F F F T F
-5555 F T F F F T F
-5556 F T F F F T F
-5557 F T F F F T F
-5558 F T F F F T F
-5559 F T F F F T F
-5560 F T F F F T F
-5561 F T F F F T F
-5562 F T F F F T F
-5563 F T F F F T F
-5564 F T F F F T F
-5565 F T F F F T F
-5566 F T F F F T F
-5567 F T F F F T F
-5568 F T F F F T F
-5569 F T F F F T F
-5570 F T F F F T F
-5571 F T F F F T F
-5572 F T F F F T F
-5573 F T F F F T F
-5574 F T F F F T F
-5575 F T F F F T F
-5576 F T F F F T F
-5577 F T F F F T F
-5578 F T F F F T F
-5579 F T F F F T F
-5580 F T F F F T F
-5581 F T F F F T F
-5582 F T F F F T F
-5583 F T F F F T F
-5584 F T F F F T F
-5585 F T F F F T F
-5586 F T F F F T F
-5587 F T F F F T F
-5588 F T F F F T F
-5589 F T F F F T F
-5590 F T F F F T F
-5591 F T F F F T F
-5592 F T F F F T F
-5593 F T F F F T F
-5594 F T F F F T F
-5595 F T F F F T F
-5596 F T F F F T F
-5597 F T F F F T F
-5598 F T F F F T F
-5599 F T F F F T F
-5600 F T F F F T F
-5601 F T F F F T F
-5602 F T F F F T F
-5603 F T F F F T F
-5604 F T F F F T F
-5605 F T F F F T F
-5606 F T F F F T F
-5607 F T F F F T F
-5608 F T F F F T F
-5609 F T F F F T F
-5610 F T F F F T F
-5611 F T F F F T F
-5612 F T F F F T F
-5613 F T F F F T F
-5614 F T F F F T F
-5615 F T F F F T F
-5616 F T F F F T F
-5617 F T F F F T F
-5618 F T F F F T F
-5619 F T F F F T F
-5620 F T F F F T F
-5621 F T F F F T F
-5622 F T F F F T F
-5623 F T F F F T F
-5624 F T F F F T F
-5625 F T F F F T F
-5626 F T F F F T F
-5627 F T F F F T F
-5628 F T F F F T F
-5629 F T F F F T F
-5630 F T F F F T F
-5631 F T F F F T F
-5632 F T F F F T F
-5633 F T F F F T F
-5634 F T F F F T F
-5635 F T F F F T F
-5636 F T F F F T F
-5637 F T F F F T F
-5638 F T F F F T F
-5639 F T F F F T F
-5640 F T F F F T F
-5641 F T F F F T F
-5642 F T F F F T F
-5643 F T F F F T F
-5644 F T F F F T F
-5645 F T F F F T F
-5646 F T F F F T F
-5647 F T F F F T F
-5648 F T F F F T F
-5649 F T F F F T F
-5650 F T F F F T F
-5651 F T F F F T F
-5652 F T F F F T F
-5653 F T F F F T F
-5654 F T F F F T F
-5655 F T F F F T F
-5656 F T F F F T F
-5657 F T F F F T F
-5658 F T F F F T F
-5659 F T F F F T F
-5660 F T F F F T F
-5661 F T F F F T F
-5662 F T F F F T F
-5663 F T F F F T F
-5664 F T F F F T F
-5665 F T F F F T F
-5666 F T F F F T F
-5667 F T F F F T F
-5668 F T F F F T F
-5669 F T F F F T F
-5670 F T F F F T F
-5671 F T F F F T F
-5672 F T F F F T F
-5673 F T F F F T F
-5674 F T F F F T F
-5675 F T F F F T F
-5676 F T F F F T F
-5677 F T F F F T F
-5678 F T F F F T F
-5679 F T F F F T F
-5680 F T F F F T F
-5681 F T F F F T F
-5682 F T F F F T F
-5683 F T F F F T F
-5684 F T F F F T F
-5685 F T F F F T F
-5686 F T F F F T F
-5687 F T F F F T F
-5688 F T F F F T F
-5689 F T F F F T F
-5690 F T F F F T F
-5691 F T F F F T F
-5692 F T F F F T F
-5693 F T F F F T F
-5694 F T F F F T F
-5695 F T F F F T F
-5696 F T F F F T F
-5697 F T F F F T F
-5698 F T F F F T F
-5699 F T F F F T F
-5700 F T F F F T F
-5701 F T F F F T F
-5702 F T F F F T F
-5703 F T F F F T F
-5704 F T F F F T F
-5705 F T F F F T F
-5706 F T F F F T F
-5707 F T F F F T F
-5708 F T F F F T F
-5709 F T F F F T F
-5710 F T F F F T F
-5711 F T F F F T F
-5712 F T F F F T F
-5713 F T F F F T F
-5714 F T F F F T F
-5715 F T F F F T F
-5716 F T F F F T F
-5717 F T F F F T F
-5718 F T F F F T F
-5719 F T F F F T F
-5720 F T F F F T F
-5721 F T F F F T F
-5722 F T F F F T F
-5723 F T F F F T F
-5724 F T F F F T F
-5725 F T F F F T F
-5726 F T F F F T F
-5727 F T F F F T F
-5728 F T F F F T F
-5729 F T F F F T F
-5730 F T F F F T F
-5731 F T F F F T F
-5732 F T F F F T F
-5733 F T F F F T F
-5734 F T F F F T F
-5735 F T F F F T F
-5736 F T F F F T F
-5737 F T F F F T F
-5738 F T F F F T F
-5739 F T F F F T F
-5740 F T F F F T F
-5741 F T F F F F F
-5742 F T F F F F F
-5743 F T F F F T F
-5744 F T F F F T F
-5745 F T F F F T F
-5746 F T F F F T F
-5747 F T F F F T F
-5748 F T F F F T F
-5749 F T F F F T F
-5750 F T F F F T F
-5751 F T F F F T F
-5752 F T F F F T F
-5753 F T F F F T F
-5754 F T F F F T F
-5755 F T F F F T F
-5756 F T F F F T F
-5757 F T F F F T F
-5758 F T F F F T F
-5759 F T F F F T F
-5760 F T T F F F F
-5761 F T F F F T F
-5762 F T F F F T F
-5763 F T F F F T F
-5764 F T F F F T F
-5765 F T F F F T F
-5766 F T F F F T F
-5767 F T F F F T F
-5768 F T F F F T F
-5769 F T F F F T F
-5770 F T F F F T F
-5771 F T F F F T F
-5772 F T F F F T F
-5773 F T F F F T F
-5774 F T F F F T F
-5775 F T F F F T F
-5776 F T F F F T F
-5777 F T F F F T F
-5778 F T F F F T F
-5779 F T F F F T F
-5780 F T F F F T F
-5781 F T F F F T F
-5782 F T F F F T F
-5783 F T F F F T F
-5784 F T F F F T F
-5785 F T F F F T F
-5786 F T F F F T F
-5787 F T F F F F F
-5788 F T F F F F F
-5789 F F F F F F F
-5790 F F F F F F F
-5791 F F F F F F F
-5792 F T F F F T F
-5793 F T F F F T F
-5794 F T F F F T F
-5795 F T F F F T F
-5796 F T F F F T F
-5797 F T F F F T F
-5798 F T F F F T F
-5799 F T F F F T F
-5800 F T F F F T F
-5801 F T F F F T F
-5802 F T F F F T F
-5803 F T F F F T F
-5804 F T F F F T F
-5805 F T F F F T F
-5806 F T F F F T F
-5807 F T F F F T F
-5808 F T F F F T F
-5809 F T F F F T F
-5810 F T F F F T F
-5811 F T F F F T F
-5812 F T F F F T F
-5813 F T F F F T F
-5814 F T F F F T F
-5815 F T F F F T F
-5816 F T F F F T F
-5817 F T F F F T F
-5818 F T F F F T F
-5819 F T F F F T F
-5820 F T F F F T F
-5821 F T F F F T F
-5822 F T F F F T F
-5823 F T F F F T F
-5824 F T F F F T F
-5825 F T F F F T F
-5826 F T F F F T F
-5827 F T F F F T F
-5828 F T F F F T F
-5829 F T F F F T F
-5830 F T F F F T F
-5831 F T F F F T F
-5832 F T F F F T F
-5833 F T F F F T F
-5834 F T F F F T F
-5835 F T F F F T F
-5836 F T F F F T F
-5837 F T F F F T F
-5838 F T F F F T F
-5839 F T F F F T F
-5840 F T F F F T F
-5841 F T F F F T F
-5842 F T F F F T F
-5843 F T F F F T F
-5844 F T F F F T F
-5845 F T F F F T F
-5846 F T F F F T F
-5847 F T F F F T F
-5848 F T F F F T F
-5849 F T F F F T F
-5850 F T F F F T F
-5851 F T F F F T F
-5852 F T F F F T F
-5853 F T F F F T F
-5854 F T F F F T F
-5855 F T F F F T F
-5856 F T F F F T F
-5857 F T F F F T F
-5858 F T F F F T F
-5859 F T F F F T F
-5860 F T F F F T F
-5861 F T F F F T F
-5862 F T F F F T F
-5863 F T F F F T F
-5864 F T F F F T F
-5865 F T F F F T F
-5866 F T F F F T F
-5867 F T F F F F F
-5868 F T F F F F F
-5869 F T F F F F F
-5870 F T F F F F F
-5871 F T F F F F F
-5872 F T F F F F F
-5873 F F F F F F F
-5874 F F F F F F F
-5875 F F F F F F F
-5876 F F F F F F F
-5877 F F F F F F F
-5878 F F F F F F F
-5879 F F F F F F F
-5880 F F F F F F F
-5881 F F F F F F F
-5882 F F F F F F F
-5883 F F F F F F F
-5884 F F F F F F F
-5885 F F F F F F F
-5886 F F F F F F F
-5887 F F F F F F F
-5888 F T F F F T F
-5889 F T F F F T F
-5890 F T F F F T F
-5891 F T F F F T F
-5892 F T F F F T F
-5893 F T F F F T F
-5894 F T F F F T F
-5895 F T F F F T F
-5896 F T F F F T F
-5897 F T F F F T F
-5898 F T F F F T F
-5899 F T F F F T F
-5900 F T F F F T F
-5901 F F F F F F F
-5902 F T F F F T F
-5903 F T F F F T F
-5904 F T F F F T F
-5905 F T F F F T F
-5906 F T F F F F F
-5907 F T F F F F F
-5908 F T F F F F F
-5909 F F F F F F F
-5910 F F F F F F F
-5911 F F F F F F F
-5912 F F F F F F F
-5913 F F F F F F F
-5914 F F F F F F F
-5915 F F F F F F F
-5916 F F F F F F F
-5917 F F F F F F F
-5918 F F F F F F F
-5919 F F F F F F F
-5920 F T F F F T F
-5921 F T F F F T F
-5922 F T F F F T F
-5923 F T F F F T F
-5924 F T F F F T F
-5925 F T F F F T F
-5926 F T F F F T F
-5927 F T F F F T F
-5928 F T F F F T F
-5929 F T F F F T F
-5930 F T F F F T F
-5931 F T F F F T F
-5932 F T F F F T F
-5933 F T F F F T F
-5934 F T F F F T F
-5935 F T F F F T F
-5936 F T F F F T F
-5937 F T F F F T F
-5938 F T F F F F F
-5939 F T F F F F F
-5940 F T F F F F F
-5941 F T F F F F F
-5942 F T F F F F F
-5943 F F F F F F F
-5944 F F F F F F F
-5945 F F F F F F F
-5946 F F F F F F F
-5947 F F F F F F F
-5948 F F F F F F F
-5949 F F F F F F F
-5950 F F F F F F F
-5951 F F F F F F F
-5952 F T F F F T F
-5953 F T F F F T F
-5954 F T F F F T F
-5955 F T F F F T F
-5956 F T F F F T F
-5957 F T F F F T F
-5958 F T F F F T F
-5959 F T F F F T F
-5960 F T F F F T F
-5961 F T F F F T F
-5962 F T F F F T F
-5963 F T F F F T F
-5964 F T F F F T F
-5965 F T F F F T F
-5966 F T F F F T F
-5967 F T F F F T F
-5968 F T F F F T F
-5969 F T F F F T F
-5970 F T F F F F F
-5971 F T F F F F F
-5972 F F F F F F F
-5973 F F F F F F F
-5974 F F F F F F F
-5975 F F F F F F F
-5976 F F F F F F F
-5977 F F F F F F F
-5978 F F F F F F F
-5979 F F F F F F F
-5980 F F F F F F F
-5981 F F F F F F F
-5982 F F F F F F F
-5983 F F F F F F F
-5984 F T F F F T F
-5985 F T F F F T F
-5986 F T F F F T F
-5987 F T F F F T F
-5988 F T F F F T F
-5989 F T F F F T F
-5990 F T F F F T F
-5991 F T F F F T F
-5992 F T F F F T F
-5993 F T F F F T F
-5994 F T F F F T F
-5995 F T F F F T F
-5996 F T F F F T F
-5997 F F F F F F F
-5998 F T F F F T F
-5999 F T F F F T F
-6000 F T F F F T F
-6001 F F F F F F F
-6002 F T F F F F F
-6003 F T F F F F F
-6004 F F F F F F F
-6005 F F F F F F F
-6006 F F F F F F F
-6007 F F F F F F F
-6008 F F F F F F F
-6009 F F F F F F F
-6010 F F F F F F F
-6011 F F F F F F F
-6012 F F F F F F F
-6013 F F F F F F F
-6014 F F F F F F F
-6015 F F F F F F F
-6016 F T F F F T F
-6017 F T F F F T F
-6018 F T F F F T F
-6019 F T F F F T F
-6020 F T F F F T F
-6021 F T F F F T F
-6022 F T F F F T F
-6023 F T F F F T F
-6024 F T F F F T F
-6025 F T F F F T F
-6026 F T F F F T F
-6027 F T F F F T F
-6028 F T F F F T F
-6029 F T F F F T F
-6030 F T F F F T F
-6031 F T F F F T F
-6032 F T F F F T F
-6033 F T F F F T F
-6034 F T F F F T F
-6035 F T F F F T F
-6036 F T F F F T F
-6037 F T F F F T F
-6038 F T F F F T F
-6039 F T F F F T F
-6040 F T F F F T F
-6041 F T F F F T F
-6042 F T F F F T F
-6043 F T F F F T F
-6044 F T F F F T F
-6045 F T F F F T F
-6046 F T F F F T F
-6047 F T F F F T F
-6048 F T F F F T F
-6049 F T F F F T F
-6050 F T F F F T F
-6051 F T F F F T F
-6052 F T F F F T F
-6053 F T F F F T F
-6054 F T F F F T F
-6055 F T F F F T F
-6056 F T F F F T F
-6057 F T F F F T F
-6058 F T F F F T F
-6059 F T F F F T F
-6060 F T F F F T F
-6061 F T F F F T F
-6062 F T F F F T F
-6063 F T F F F T F
-6064 F T F F F T F
-6065 F T F F F T F
-6066 F T F F F T F
-6067 F T F F F T F
-6068 F F F F F F F
-6069 F F F F F F F
-6070 F T F F F F F
-6071 F T F F F F F
-6072 F T F F F F F
-6073 F T F F F F F
-6074 F T F F F F F
-6075 F T F F F F F
-6076 F T F F F F F
-6077 F T F F F F F
-6078 F T F F F F F
-6079 F T F F F F F
-6080 F T F F F F F
-6081 F T F F F F F
-6082 F T F F F F F
-6083 F T F F F F F
-6084 F T F F F F F
-6085 F T F F F F F
-6086 F T F F F F F
-6087 F T F F F F F
-6088 F T F F F F F
-6089 F T F F F F F
-6090 F T F F F F F
-6091 F T F F F F F
-6092 F T F F F F F
-6093 F T F F F F F
-6094 F T F F F F F
-6095 F T F F F F F
-6096 F T F F F F F
-6097 F T F F F F F
-6098 F T F F F F F
-6099 F T F F F F F
-6100 F T F F F F F
-6101 F T F F F F F
-6102 F T F F F F F
-6103 F T F F F T F
-6104 F T F F F F F
-6105 F T F F F F F
-6106 F T F F F F F
-6107 F T F F F F F
-6108 F T F F F T F
-6109 F T F F F F F
-6110 F F F F F F F
-6111 F F F F F F F
-6112 F T F F F F F
-6113 F T F F F F F
-6114 F T F F F F F
-6115 F T F F F F F
-6116 F T F F F F F
-6117 F T F F F F F
-6118 F T F F F F F
-6119 F T F F F F F
-6120 F T F F F F F
-6121 F T F F F F F
-6122 F F F F F F F
-6123 F F F F F F F
-6124 F F F F F F F
-6125 F F F F F F F
-6126 F F F F F F F
-6127 F F F F F F F
-6128 F T F F F F F
-6129 F T F F F F F
-6130 F T F F F F F
-6131 F T F F F F F
-6132 F T F F F F F
-6133 F T F F F F F
-6134 F T F F F F F
-6135 F T F F F F F
-6136 F T F F F F F
-6137 F T F F F F F
-6138 F F F F F F F
-6139 F F F F F F F
-6140 F F F F F F F
-6141 F F F F F F F
-6142 F F F F F F F
-6143 F F F F F F F
-6144 F T F F F F F
-6145 F T F F F F F
-6146 F T F F F F F
-6147 F T F F F F F
-6148 F T F F F F F
-6149 F T F F F F F
-6150 F T F F F F F
-6151 F T F F F F F
-6152 F T F F F F F
-6153 F T F F F F F
-6154 F T F F F F F
-6155 F T F F F F F
-6156 F T F F F F F
-6157 F T F F F F F
-6158 F T T F F F F
-6159 F F F F F F F
-6160 F T F F F F F
-6161 F T F F F F F
-6162 F T F F F F F
-6163 F T F F F F F
-6164 F T F F F F F
-6165 F T F F F F F
-6166 F T F F F F F
-6167 F T F F F F F
-6168 F T F F F F F
-6169 F T F F F F F
-6170 F F F F F F F
-6171 F F F F F F F
-6172 F F F F F F F
-6173 F F F F F F F
-6174 F F F F F F F
-6175 F F F F F F F
-6176 F T F F F T F
-6177 F T F F F T F
-6178 F T F F F T F
-6179 F T F F F T F
-6180 F T F F F T F
-6181 F T F F F T F
-6182 F T F F F T F
-6183 F T F F F T F
-6184 F T F F F T F
-6185 F T F F F T F
-6186 F T F F F T F
-6187 F T F F F T F
-6188 F T F F F T F
-6189 F T F F F T F
-6190 F T F F F T F
-6191 F T F F F T F
-6192 F T F F F T F
-6193 F T F F F T F
-6194 F T F F F T F
-6195 F T F F F T F
-6196 F T F F F T F
-6197 F T F F F T F
-6198 F T F F F T F
-6199 F T F F F T F
-6200 F T F F F T F
-6201 F T F F F T F
-6202 F T F F F T F
-6203 F T F F F T F
-6204 F T F F F T F
-6205 F T F F F T F
-6206 F T F F F T F
-6207 F T F F F T F
-6208 F T F F F T F
-6209 F T F F F T F
-6210 F T F F F T F
-6211 F T F F F T F
-6212 F T F F F T F
-6213 F T F F F T F
-6214 F T F F F T F
-6215 F T F F F T F
-6216 F T F F F T F
-6217 F T F F F T F
-6218 F T F F F T F
-6219 F T F F F T F
-6220 F T F F F T F
-6221 F T F F F T F
-6222 F T F F F T F
-6223 F T F F F T F
-6224 F T F F F T F
-6225 F T F F F T F
-6226 F T F F F T F
-6227 F T F F F T F
-6228 F T F F F T F
-6229 F T F F F T F
-6230 F T F F F T F
-6231 F T F F F T F
-6232 F T F F F T F
-6233 F T F F F T F
-6234 F T F F F T F
-6235 F T F F F T F
-6236 F T F F F T F
-6237 F T F F F T F
-6238 F T F F F T F
-6239 F T F F F T F
-6240 F T F F F T F
-6241 F T F F F T F
-6242 F T F F F T F
-6243 F T F F F T F
-6244 F T F F F T F
-6245 F T F F F T F
-6246 F T F F F T F
-6247 F T F F F T F
-6248 F T F F F T F
-6249 F T F F F T F
-6250 F T F F F T F
-6251 F T F F F T F
-6252 F T F F F T F
-6253 F T F F F T F
-6254 F T F F F T F
-6255 F T F F F T F
-6256 F T F F F T F
-6257 F T F F F T F
-6258 F T F F F T F
-6259 F T F F F T F
-6260 F T F F F T F
-6261 F T F F F T F
-6262 F T F F F T F
-6263 F T F F F T F
-6264 F F F F F F F
-6265 F F F F F F F
-6266 F F F F F F F
-6267 F F F F F F F
-6268 F F F F F F F
-6269 F F F F F F F
-6270 F F F F F F F
-6271 F F F F F F F
-6272 F T F F F T F
-6273 F T F F F T F
-6274 F T F F F T F
-6275 F T F F F T F
-6276 F T F F F T F
-6277 F T F F F T F
-6278 F T F F F T F
-6279 F T F F F T F
-6280 F T F F F T F
-6281 F T F F F T F
-6282 F T F F F T F
-6283 F T F F F T F
-6284 F T F F F T F
-6285 F T F F F T F
-6286 F T F F F T F
-6287 F T F F F T F
-6288 F T F F F T F
-6289 F T F F F T F
-6290 F T F F F T F
-6291 F T F F F T F
-6292 F T F F F T F
-6293 F T F F F T F
-6294 F T F F F T F
-6295 F T F F F T F
-6296 F T F F F T F
-6297 F T F F F T F
-6298 F T F F F T F
-6299 F T F F F T F
-6300 F T F F F T F
-6301 F T F F F T F
-6302 F T F F F T F
-6303 F T F F F T F
-6304 F T F F F T F
-6305 F T F F F T F
-6306 F T F F F T F
-6307 F T F F F T F
-6308 F T F F F T F
-6309 F T F F F T F
-6310 F T F F F T F
-6311 F T F F F T F
-6312 F T F F F T F
-6313 F T F F F F F
-6314 F T F F F T F
-6315 F F F F F F F
-6316 F F F F F F F
-6317 F F F F F F F
-6318 F F F F F F F
-6319 F F F F F F F
-6320 F T F F F T F
-6321 F T F F F T F
-6322 F T F F F T F
-6323 F T F F F T F
-6324 F T F F F T F
-6325 F T F F F T F
-6326 F T F F F T F
-6327 F T F F F T F
-6328 F T F F F T F
-6329 F T F F F T F
-6330 F T F F F T F
-6331 F T F F F T F
-6332 F T F F F T F
-6333 F T F F F T F
-6334 F T F F F T F
-6335 F T F F F T F
-6336 F T F F F T F
-6337 F T F F F T F
-6338 F T F F F T F
-6339 F T F F F T F
-6340 F T F F F T F
-6341 F T F F F T F
-6342 F T F F F T F
-6343 F T F F F T F
-6344 F T F F F T F
-6345 F T F F F T F
-6346 F T F F F T F
-6347 F T F F F T F
-6348 F T F F F T F
-6349 F T F F F T F
-6350 F T F F F T F
-6351 F T F F F T F
-6352 F T F F F T F
-6353 F T F F F T F
-6354 F T F F F T F
-6355 F T F F F T F
-6356 F T F F F T F
-6357 F T F F F T F
-6358 F T F F F T F
-6359 F T F F F T F
-6360 F T F F F T F
-6361 F T F F F T F
-6362 F T F F F T F
-6363 F T F F F T F
-6364 F T F F F T F
-6365 F T F F F T F
-6366 F T F F F T F
-6367 F T F F F T F
-6368 F T F F F T F
-6369 F T F F F T F
-6370 F T F F F T F
-6371 F T F F F T F
-6372 F T F F F T F
-6373 F T F F F T F
-6374 F T F F F T F
-6375 F T F F F T F
-6376 F T F F F T F
-6377 F T F F F T F
-6378 F T F F F T F
-6379 F T F F F T F
-6380 F T F F F T F
-6381 F T F F F T F
-6382 F T F F F T F
-6383 F T F F F T F
-6384 F T F F F T F
-6385 F T F F F T F
-6386 F T F F F T F
-6387 F T F F F T F
-6388 F T F F F T F
-6389 F T F F F T F
-6390 F F F F F F F
-6391 F F F F F F F
-6392 F F F F F F F
-6393 F F F F F F F
-6394 F F F F F F F
-6395 F F F F F F F
-6396 F F F F F F F
-6397 F F F F F F F
-6398 F F F F F F F
-6399 F F F F F F F
-6400 F T F F F T F
-6401 F T F F F T F
-6402 F T F F F T F
-6403 F T F F F T F
-6404 F T F F F T F
-6405 F T F F F T F
-6406 F T F F F T F
-6407 F T F F F T F
-6408 F T F F F T F
-6409 F T F F F T F
-6410 F T F F F T F
-6411 F T F F F T F
-6412 F T F F F T F
-6413 F T F F F T F
-6414 F T F F F T F
-6415 F T F F F T F
-6416 F T F F F T F
-6417 F T F F F T F
-6418 F T F F F T F
-6419 F T F F F T F
-6420 F T F F F T F
-6421 F T F F F T F
-6422 F T F F F T F
-6423 F T F F F T F
-6424 F T F F F T F
-6425 F T F F F T F
-6426 F T F F F T F
-6427 F T F F F T F
-6428 F T F F F T F
-6429 F F F F F F F
-6430 F F F F F F F
-6431 F F F F F F F
-6432 F T F F F F F
-6433 F T F F F F F
-6434 F T F F F F F
-6435 F T F F F F F
-6436 F T F F F F F
-6437 F T F F F F F
-6438 F T F F F F F
-6439 F T F F F F F
-6440 F T F F F F F
-6441 F T F F F F F
-6442 F T F F F F F
-6443 F T F F F F F
-6444 F F F F F F F
-6445 F F F F F F F
-6446 F F F F F F F
-6447 F F F F F F F
-6448 F T F F F F F
-6449 F T F F F F F
-6450 F T F F F F F
-6451 F T F F F F F
-6452 F T F F F F F
-6453 F T F F F F F
-6454 F T F F F F F
-6455 F T F F F F F
-6456 F T F F F F F
-6457 F T F F F F F
-6458 F T F F F F F
-6459 F T F F F F F
-6460 F F F F F F F
-6461 F F F F F F F
-6462 F F F F F F F
-6463 F F F F F F F
-6464 F T F F F F F
-6465 F F F F F F F
-6466 F F F F F F F
-6467 F F F F F F F
-6468 F T F F F F F
-6469 F T F F F F F
-6470 F T F F F F F
-6471 F T F F F F F
-6472 F T F F F F F
-6473 F T F F F F F
-6474 F T F F F F F
-6475 F T F F F F F
-6476 F T F F F F F
-6477 F T F F F F F
-6478 F T F F F F F
-6479 F T F F F F F
-6480 F T F F F T F
-6481 F T F F F T F
-6482 F T F F F T F
-6483 F T F F F T F
-6484 F T F F F T F
-6485 F T F F F T F
-6486 F T F F F T F
-6487 F T F F F T F
-6488 F T F F F T F
-6489 F T F F F T F
-6490 F T F F F T F
-6491 F T F F F T F
-6492 F T F F F T F
-6493 F T F F F T F
-6494 F T F F F T F
-6495 F T F F F T F
-6496 F T F F F T F
-6497 F T F F F T F
-6498 F T F F F T F
-6499 F T F F F T F
-6500 F T F F F T F
-6501 F T F F F T F
-6502 F T F F F T F
-6503 F T F F F T F
-6504 F T F F F T F
-6505 F T F F F T F
-6506 F T F F F T F
-6507 F T F F F T F
-6508 F T F F F T F
-6509 F T F F F T F
-6510 F F F F F F F
-6511 F F F F F F F
-6512 F T F F F T F
-6513 F T F F F T F
-6514 F T F F F T F
-6515 F T F F F T F
-6516 F T F F F T F
-6517 F F F F F F F
-6518 F F F F F F F
-6519 F F F F F F F
-6520 F F F F F F F
-6521 F F F F F F F
-6522 F F F F F F F
-6523 F F F F F F F
-6524 F F F F F F F
-6525 F F F F F F F
-6526 F F F F F F F
-6527 F F F F F F F
-6528 F T F F F T F
-6529 F T F F F T F
-6530 F T F F F T F
-6531 F T F F F T F
-6532 F T F F F T F
-6533 F T F F F T F
-6534 F T F F F T F
-6535 F T F F F T F
-6536 F T F F F T F
-6537 F T F F F T F
-6538 F T F F F T F
-6539 F T F F F T F
-6540 F T F F F T F
-6541 F T F F F T F
-6542 F T F F F T F
-6543 F T F F F T F
-6544 F T F F F T F
-6545 F T F F F T F
-6546 F T F F F T F
-6547 F T F F F T F
-6548 F T F F F T F
-6549 F T F F F T F
-6550 F T F F F T F
-6551 F T F F F T F
-6552 F T F F F T F
-6553 F T F F F T F
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/4876.hs b/testsuite/tests/ghc-regress/lib/Concurrent/4876.hs
deleted file mode 100644
index 68c2a871b8..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/4876.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-import System.Random
-import Control.Concurrent.SampleVar
-import Control.Concurrent
-import Control.Monad
-
-produce, consume :: SampleVar Int -> IO ()
-produce svar = do
- b <- isEmptySampleVar svar
- if b then writeSampleVar svar 3 else return ()
-
-consume svar = readSampleVar svar >>= print
-
-main = do
- svar <- newEmptySampleVar
- m <- newEmptyMVar
- forkIO $ consume svar >> putMVar m ()
- threadDelay 100000 -- 100 ms
- produce svar
- takeMVar m -- deadlocked before the fix in #4876
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/4876.stdout b/testsuite/tests/ghc-regress/lib/Concurrent/4876.stdout
deleted file mode 100644
index 00750edc07..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/4876.stdout
+++ /dev/null
@@ -1 +0,0 @@
-3
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/Chan001.hs b/testsuite/tests/ghc-regress/lib/Concurrent/Chan001.hs
deleted file mode 100644
index e4b668ac48..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/Chan001.hs
+++ /dev/null
@@ -1,109 +0,0 @@
-import Debug.QuickCheck
-import System.IO.Unsafe
-import Control.Concurrent.Chan
-import Control.Concurrent
-import Control.Monad
-
-data Action = NewChan | ReadChan | WriteChan Int | IsEmptyChan | ReturnInt Int
- | ReturnBool Bool
- deriving (Eq,Show)
-
-
-main = do
- t <- myThreadId
- forkIO (threadDelay 1000000 >> killThread t)
- -- just in case we deadlock
- testChan
-
-testChan :: IO ()
-testChan = do
- quickCheck prop_NewIs_NewRet
- quickCheck prop_NewWriteIs_NewRet
- quickCheck prop_NewWriteRead_NewRet
-
-
-prop_NewIs_NewRet =
- [NewChan,IsEmptyChan] =^ [NewChan,ReturnBool True]
-
-prop_NewWriteIs_NewRet n =
- [NewChan,WriteChan n,IsEmptyChan] =^ [NewChan,WriteChan n,ReturnBool False]
-
-prop_NewWriteRead_NewRet n =
- [NewChan,WriteChan n,ReadChan] =^ [NewChan,ReturnInt n]
-
-
-perform :: [Action] -> IO ([Bool],[Int])
-perform [] = return ([],[])
-
-perform (a:as) =
- case a of
- ReturnInt v -> liftM (\(b,l) -> (b,v:l)) (perform as)
- ReturnBool v -> liftM (\(b,l) -> (v:b,l)) (perform as)
- NewChan -> newChan >>= \chan -> perform' chan as
- _ -> error $ "Please use NewChan as first action"
-
-
-perform' :: Chan Int -> [Action] -> IO ([Bool],[Int])
-perform' _ [] = return ([],[])
-
-perform' chan (a:as) =
- case a of
- ReturnInt v -> liftM (\(b,l) -> (b,v:l)) (perform' chan as)
- ReturnBool v -> liftM (\(b,l) -> (v:b,l)) (perform' chan as)
- ReadChan -> liftM2 (\v (b,l) -> (b,v:l)) (readChan chan)
- (perform' chan as)
- WriteChan n -> writeChan chan n >> perform' chan as
- IsEmptyChan -> liftM2 (\v (b,l) -> (v:b,l)) (isEmptyChan chan)
- (perform' chan as)
- _ -> error $ "If you want to use " ++ show a
- ++ " please use the =^ operator"
-
-
-actions :: Gen [Action]
-actions =
- liftM (NewChan:) (actions' 0)
-
-
-actions' :: Int -> Gen [Action]
-actions' contents =
- oneof ([return [],
- liftM (IsEmptyChan:) (actions' contents),
- liftM2 (:) (liftM WriteChan arbitrary) (actions' (contents+1))]
- ++
- if contents==0
- then []
- else [liftM (ReadChan:) (actions' (contents-1))])
-
-
-(=^) :: [Action] -> [Action] -> Property
-c =^ c' =
- forAll (actions' (delta 0 c))
- (\suff -> observe c suff == observe c' suff)
- where observe x suff = unsafePerformIO (perform (x++suff))
-
-
-(^=^) :: [Action] -> [Action] -> Property
-c ^=^ c' =
- forAll actions
- (\pref -> forAll (actions' (delta 0 (pref++c)))
- (\suff -> observe c pref suff ==
- observe c' pref suff))
- where observe x pref suff = unsafePerformIO (perform (pref++x++suff))
-
-
-delta :: Int -> [Action] -> Int
-delta i [] = i
-
-delta i (ReturnInt _:as) = delta i as
-
-delta i (ReturnBool _:as) = delta i as
-
-delta _ (NewChan:as) = delta 0 as
-
-delta i (WriteChan _:as) = delta (i+1) as
-
-delta i (ReadChan:as) = delta (if i==0
- then error "read on empty Chan"
- else i-1) as
-
-delta i (IsEmptyChan:as) = delta i as
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/Chan001.stdout b/testsuite/tests/ghc-regress/lib/Concurrent/Chan001.stdout
deleted file mode 100644
index 53bfa8a381..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/Chan001.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/MVar001.hs b/testsuite/tests/ghc-regress/lib/Concurrent/MVar001.hs
deleted file mode 100644
index f787470c51..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/MVar001.hs
+++ /dev/null
@@ -1,148 +0,0 @@
-import Debug.QuickCheck
-import System.IO.Unsafe
-import Control.Concurrent.MVar
-import Control.Concurrent
-import Control.Monad
-
-
-data Action = NewEmptyMVar | NewMVar Int | TakeMVar | ReadMVar | PutMVar Int
- | SwapMVar Int | IsEmptyMVar | ReturnInt Int | ReturnBool Bool
- deriving (Eq,Show)
-
-main = do
- t <- myThreadId
- forkIO (threadDelay 1000000 >> killThread t)
- -- just in case we deadlock
- testMVar
-
-testMVar :: IO ()
-testMVar = do
- quickCheck prop_NewEIs_NewERet
- quickCheck prop_NewIs_NewRet
- quickCheck prop_NewTake_NewRet
- quickCheck prop_NewEPutTake_NewERet
- quickCheck prop_NewRead_NewRet
- quickCheck prop_NewSwap_New
-
-
-prop_NewEIs_NewERet =
- [NewEmptyMVar,IsEmptyMVar] =^ [NewEmptyMVar,ReturnBool True]
-
-prop_NewIs_NewRet n =
- [NewMVar n,IsEmptyMVar] =^ [NewMVar n,ReturnBool False]
-
-prop_NewTake_NewRet n =
- [NewMVar n,TakeMVar] =^ [NewEmptyMVar,ReturnInt n]
-
-prop_NewEPutTake_NewERet n =
- [NewEmptyMVar,PutMVar n,TakeMVar] =^
- [NewEmptyMVar,ReturnInt n]
-
-prop_NewRead_NewRet n =
- [NewMVar n,ReadMVar] =^ [NewMVar n,ReturnInt n]
-
-prop_NewSwap_New m n =
- [NewMVar m,SwapMVar n] =^ [NewMVar n]
-
-
-perform :: [Action] -> IO ([Bool],[Int])
-perform [] = return ([],[])
-
-perform (a:as) =
- case a of
- ReturnInt v -> liftM (\(b,l) -> (b,v:l)) (perform as)
- ReturnBool v -> liftM (\(b,l) -> (v:b,l)) (perform as)
- NewEmptyMVar -> newEmptyMVar >>= \mv -> perform' mv as
- NewMVar n -> newMVar n >>= \mv -> perform' mv as
- _ -> error $ "Please use NewMVar or NewEmptyMVar as first "
- ++ "action"
-
-
-perform' :: MVar Int -> [Action] -> IO ([Bool],[Int])
-perform' _ [] = return ([],[])
-
-perform' mv (a:as) =
- case a of
- ReturnInt v -> liftM (\(b,l) -> (b,v:l)) (perform' mv as)
- ReturnBool v -> liftM (\(b,l) -> (v:b,l)) (perform' mv as)
- TakeMVar -> liftM2 (\v (b,l) -> (b,v:l)) (takeMVar mv)
- (perform' mv as)
- ReadMVar -> liftM2 (\v (b,l) -> (b,v:l)) (readMVar mv)
- (perform' mv as)
- PutMVar n -> putMVar mv n >> perform' mv as
- SwapMVar n -> swapMVar mv n >> perform' mv as
- IsEmptyMVar -> liftM2 (\v (b,l) -> (v:b,l)) (isEmptyMVar mv)
- (perform' mv as)
- _ -> error $ "If you want to use " ++ show a
- ++ " please use the =^ operator"
-
-
-actions :: Gen [Action]
-actions = do
- oneof [liftM (NewEmptyMVar:) (actions' True),
- liftM2 (:) (liftM NewMVar arbitrary) (actions' False)]
-
-
-actions' :: Bool -> Gen [Action]
-actions' empty =
- oneof ([return [],
- liftM (IsEmptyMVar:) (actions' empty)] ++
- if empty
- then [liftM2 (:) (liftM PutMVar arbitrary) (actions' False)]
- else []
- ++
- if empty
- then []
- else [liftM (TakeMVar:) (actions' True)]
- ++
- if empty
- then []
- else [liftM (ReadMVar:) (actions' False)]
- ++
- if empty
- then []
- else [liftM2 (:) (liftM SwapMVar arbitrary) (actions' False)] )
-
-
-(=^) :: [Action] -> [Action] -> Property
-c =^ c' =
- forAll (actions' (delta True c))
- (\suff -> observe c suff == observe c' suff)
- where observe x suff = unsafePerformIO (perform (x++suff))
-
-
-(^=^) :: [Action] -> [Action] -> Property
-c ^=^ c' =
- forAll actions
- (\pref -> forAll (actions' (delta True (pref++c)))
- (\suff -> observe c pref suff ==
- observe c' pref suff))
- where observe x pref suff = unsafePerformIO (perform (pref++x++suff))
-
-
-delta :: Bool -> [Action] -> Bool
-delta b [] = b
-
-delta b (ReturnInt _:as) = delta b as
-
-delta b (ReturnBool _:as) = delta b as
-
-delta _ (NewEmptyMVar:as) = delta True as
-
-delta _ (NewMVar _:as) = delta False as
-
-delta b (TakeMVar:as) = delta (if b
- then error "take on empty MVar"
- else True) as
-
-delta b (ReadMVar:as) = delta (if b
- then error "read on empty MVar"
- else False) as
-
-delta _ (PutMVar _:as) = delta False as
-
-delta b (SwapMVar _:as) = delta (if b
- then error "swap on empty MVar"
- else False) as
-
-delta b (IsEmptyMVar:as) = delta b as
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/MVar001.stdout b/testsuite/tests/ghc-regress/lib/Concurrent/MVar001.stdout
deleted file mode 100644
index 65be56c733..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/MVar001.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/Makefile b/testsuite/tests/ghc-regress/lib/Concurrent/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/QSem001.hs b/testsuite/tests/ghc-regress/lib/Concurrent/QSem001.hs
deleted file mode 100644
index 1f255997e7..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/QSem001.hs
+++ /dev/null
@@ -1,93 +0,0 @@
-import Debug.QuickCheck
-import System.IO.Unsafe
-import Control.Concurrent.QSem
-import Control.Concurrent
-import Control.Monad
-
-
-main = do
- t <- myThreadId
- forkIO (threadDelay 1000000 >> killThread t)
- -- just in case we deadlock
- testQSem
-
-data Action = NewQSem Int | SignalQSem | WaitQSem
- deriving (Eq,Show)
-
-
-testQSem :: IO ()
-testQSem = do
- quietCheck prop_SignalWait
- quietCheck prop_WaitSignal
-
-quietCheck = check defaultConfig{configEvery = \n args -> ""}
-
-prop_SignalWait n =
- n>=0 ==> [NewQSem n,SignalQSem,WaitQSem] =^ [NewQSem n]
-
-prop_WaitSignal n =
- n>=1 ==> [NewQSem n,WaitQSem,SignalQSem] =^ [NewQSem n]
-
-
-perform :: [Action] -> IO ()
-perform [] = return ()
-
-perform (a:as) =
- case a of
- NewQSem n -> newQSem n >>= \qs -> perform' qs as
- _ -> error $ "Please use NewQSem as first action" ++ show a
-
-
-perform' :: QSem -> [Action] -> IO ()
-perform' _ [] = return ()
-
-perform' qs (a:as) =
- case a of
- SignalQSem -> signalQSem qs >> perform' qs as
- WaitQSem -> waitQSem qs >> perform' qs as
- _ -> error $ "If you want to use " ++ show a
- ++ " please use the =^ operator"
-
-
-actions :: Gen [Action]
-actions = do
- i <- arbitrary
- liftM (NewQSem i:) (actions' i)
-
-
-actions' :: Int -> Gen [Action]
-actions' quantity =
- oneof ([return [],
- liftM (SignalQSem:) (actions' (quantity+1))] ++
- if quantity<=0
- then []
- else [liftM (WaitQSem:) (actions' (quantity-1))])
-
-
-(=^) :: [Action] -> [Action] -> Property
-c =^ c' =
- forAll (actions' (delta 0 c))
- (\suff -> observe c suff == observe c' suff)
- where observe x suff = unsafePerformIO (perform (x++suff))
-
-
-(^=^) :: [Action] -> [Action] -> Property
-c ^=^ c' =
- forAll actions
- (\pref -> forAll (actions' (delta 0 (pref++c)))
- (\suff -> observe c pref suff ==
- observe c' pref suff))
- where observe x pref suff = unsafePerformIO (perform (pref++x++suff))
-
-
-delta :: Int -> [Action] -> Int
-delta i [] = i
-
-delta _ (NewQSem i:as) = delta i as
-
-delta i (SignalQSem:as) = delta (i+1) as
-
-delta i (WaitQSem:as) = delta (if i<=0
- then error "wait on 'empty' QSem"
- else i-1) as
-
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/QSem001.stdout b/testsuite/tests/ghc-regress/lib/Concurrent/QSem001.stdout
deleted file mode 100644
index 7288d19270..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/QSem001.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-OK, passed 100 tests.
-OK, passed 100 tests.
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/QSemN001.hs b/testsuite/tests/ghc-regress/lib/Concurrent/QSemN001.hs
deleted file mode 100644
index c31d6a6964..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/QSemN001.hs
+++ /dev/null
@@ -1,96 +0,0 @@
-import Debug.QuickCheck
-import System.IO.Unsafe
-import Control.Concurrent.QSemN
-import Control.Concurrent
-import Control.Monad
-
-
-main = do
- t <- myThreadId
- forkIO (threadDelay 1000000 >> killThread t)
- -- just in case we deadlock
- testQSemN
-
-data Action = NewQSemN Int | SignalQSemN Int | WaitQSemN Int
- deriving (Eq,Show)
-
-
-testQSemN :: IO ()
-testQSemN = do
- quietCheck prop_SignalWait
- quietCheck prop_WaitSignal
-
-quietCheck = check defaultConfig{configEvery = \n args -> ""}
-
-
-prop_SignalWait l m n = l+m>=n ==>
- [NewQSemN l,SignalQSemN m,WaitQSemN n] =^ [NewQSemN (l+m-n)]
-
-prop_WaitSignal l m n = l>=m ==>
- [NewQSemN l,WaitQSemN m,SignalQSemN n] =^ [NewQSemN (l-m+n)]
-
-
-perform :: [Action] -> IO [Int]
-perform [] = return []
-
-perform (a:as) =
- case a of
- NewQSemN n -> newQSemN n >>= \qs -> perform' qs as
- _ -> error $ "Please use NewQSemN as first action" ++ show a
-
-
-perform' :: QSemN -> [Action] -> IO [Int]
-perform' _ [] = return []
-
-perform' qs (a:as) =
- case a of
- SignalQSemN n -> signalQSemN qs n >> perform' qs as
- WaitQSemN n -> waitQSemN qs n >> perform' qs as
- _ -> error $ "If you want to use " ++ show a
- ++ " please use the =^ operator"
-
-
-actions :: Gen [Action]
-actions = do
- i <- arbitrary
- liftM (NewQSemN i:) (actions' i)
-
-
-actions' :: Int -> Gen [Action]
-actions' quantity =
- oneof ([return [],
- do i<- choose (0,maxBound)
- liftM (SignalQSemN i:) (actions' (quantity+i))] ++
- if quantity<=0
- then []
- else [do i<- choose (0,quantity)
- liftM (WaitQSemN i:) (actions' (quantity-i))])
-
-
-(=^) :: [Action] -> [Action] -> Property
-c =^ c' =
- forAll (actions' (delta 0 c))
- (\suff -> observe c suff == observe c' suff)
- where observe x suff = unsafePerformIO (perform (x++suff))
-
-
-(^=^) :: [Action] -> [Action] -> Property
-c ^=^ c' =
- forAll actions
- (\pref -> forAll (actions' (delta 0 (pref++c)))
- (\suff -> observe c pref suff ==
- observe c' pref suff))
- where observe x pref suff = unsafePerformIO (perform (pref++x++suff))
-
-
-delta :: Int -> [Action] -> Int
-delta i [] = i
-
-delta _ (NewQSemN i:as) = delta i as
-
-delta i (SignalQSemN n:as) = delta (i+n) as
-
-delta i (WaitQSemN n:as) = delta (if i<n
- then error "wait on 'empty' QSemN"
- else i-n) as
-
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/QSemN001.stdout b/testsuite/tests/ghc-regress/lib/Concurrent/QSemN001.stdout
deleted file mode 100644
index 7288d19270..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/QSemN001.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-OK, passed 100 tests.
-OK, passed 100 tests.
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/SampleVar001.hs b/testsuite/tests/ghc-regress/lib/Concurrent/SampleVar001.hs
deleted file mode 100644
index def86c5d54..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/SampleVar001.hs
+++ /dev/null
@@ -1,132 +0,0 @@
--------------------------------------------------------------------------------
--- Module : SampleVarTest
--------------------------------------------------------------------------------
-
-import Debug.QuickCheck
-import System.IO.Unsafe
-import Control.Concurrent
-import Control.Concurrent.SampleVar
-import Control.Monad
-
-
-data Action = NewEmptySampleVar | NewSampleVar Int | EmptySampleVar
- | ReadSampleVar | WriteSampleVar Int | IsEmptySampleVar
- | ReturnInt Int | ReturnBool Bool
- deriving (Eq,Show)
-
-
-main = do
- t <- myThreadId
- forkIO (threadDelay 1000000 >> killThread t)
- -- just in case we deadlock
- testSampleVar
-
-testSampleVar :: IO ()
-testSampleVar = do
- quickCheck prop_NewEIs_NewERet
- quickCheck prop_NewIs_NewRet
- quickCheck prop_NewRead_NewRet
- quickCheck prop_NewEWriteRead_NewERet
- quickCheck prop_WriteEmpty_Empty
- quickCheck prop_WriteRead_Ret
-
-
-
-perform :: [Action] -> IO ([Bool],[Int])
-perform [] = return ([],[])
-
-perform (a:as) =
- case a of
- ReturnInt v -> liftM (\(b,l) -> (b,v:l)) (perform as)
- ReturnBool v -> liftM (\(b,l) -> (v:b,l)) (perform as)
- NewEmptySampleVar -> newEmptySampleVar >>= \sv -> perform' sv as
- NewSampleVar n -> newSampleVar n >>= \sv -> perform' sv as
-
-
-perform' :: SampleVar Int -> [Action] -> IO ([Bool],[Int])
-perform' _ [] = return ([],[])
-
-perform' sv (a:as) =
- case a of
- ReturnInt v -> liftM (\(b,l) -> (b,v:l)) (perform' sv as)
- ReturnBool v -> liftM (\(b,l) -> (v:b,l)) (perform' sv as)
- EmptySampleVar -> emptySampleVar sv >> perform' sv as
- ReadSampleVar -> liftM2 (\v (b,l) -> (b,v:l)) (readSampleVar sv)
- (perform' sv as)
- WriteSampleVar n -> writeSampleVar sv n >> perform' sv as
- IsEmptySampleVar -> liftM2 (\v (b,l) -> (v:b,l)) (isEmptySampleVar sv)
- (perform' sv as)
-
-
-actions :: Gen [Action]
-actions = do
- oneof [liftM (NewEmptySampleVar:) (actions' True),
- liftM2 (:) (liftM NewSampleVar arbitrary) (actions' False)]
-
-
-actions' :: Bool -> Gen [Action]
-actions' empty =
- oneof ([return [],
- liftM (IsEmptySampleVar:) (actions' empty),
- liftM (EmptySampleVar:) (actions' True),
- liftM2 (:) (liftM WriteSampleVar arbitrary) (actions' False)] ++
- if empty
- then []
- else [liftM (ReadSampleVar:) (actions' True)])
-
-
-(=^) :: [Action] -> [Action] -> Property
-c =^ c' =
- forAll (actions' (delta True c))
- (\suff -> observe c suff == observe c' suff)
- where observe x suff = unsafePerformIO (perform (x++suff))
-
-
-(^=^) :: [Action] -> [Action] -> Property
-c ^=^ c' =
- forAll actions
- (\pref -> forAll (actions' (delta True (pref++c)))
- (\suff -> observe c pref suff ==
- observe c' pref suff))
- where observe x pref suff = unsafePerformIO (perform (pref++x++suff))
-
-
-delta :: Bool -> [Action] -> Bool
-delta b [] = b
-
-delta b (ReturnInt _:as) = delta b as
-
-delta b (ReturnBool _:as) = delta b as
-
-delta _ (NewEmptySampleVar:as) = delta True as
-
-delta _ (NewSampleVar _:as) = delta False as
-
-delta _ (EmptySampleVar:as) = delta True as
-
-delta b (ReadSampleVar:as) = delta (if b
- then error "read on empty SampleVar"
- else True) as
-delta _ (WriteSampleVar _:as) = delta False as
-
-delta b (IsEmptySampleVar:as) = delta b as
-
-
-prop_NewEIs_NewERet =
- [NewEmptySampleVar,IsEmptySampleVar] =^ [NewEmptySampleVar,ReturnBool True]
-
-prop_NewIs_NewRet n =
- [NewSampleVar n,IsEmptySampleVar] =^ [NewSampleVar n,ReturnBool False]
-
-prop_NewRead_NewRet n =
- [NewSampleVar n,ReadSampleVar] =^ [NewEmptySampleVar,ReturnInt n]
-
-prop_NewEWriteRead_NewERet n =
- [NewEmptySampleVar,WriteSampleVar n,ReadSampleVar] =^
- [NewEmptySampleVar,ReturnInt n]
-
-prop_WriteEmpty_Empty n =
- [WriteSampleVar n,EmptySampleVar] ^=^ [EmptySampleVar]
-
-prop_WriteRead_Ret n =
- [WriteSampleVar n,ReadSampleVar] ^=^ [EmptySampleVar,ReturnInt n]
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/SampleVar001.stdout b/testsuite/tests/ghc-regress/lib/Concurrent/SampleVar001.stdout
deleted file mode 100644
index 65be56c733..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/SampleVar001.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
-0123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899OK, passed 100 tests.
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/ThreadDelay001.hs b/testsuite/tests/ghc-regress/lib/Concurrent/ThreadDelay001.hs
deleted file mode 100644
index c60f997039..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/ThreadDelay001.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-
--- Test that threadDelay actually sleeps for (at least) as long as we
--- ask it
-
-module Main (main) where
-
-import Control.Concurrent
-import Control.Monad
-import System.Time
-
-main = mapM_ delay (0 : take 11 (iterate (*5) 1))
-
-delay n = do
- tS <- getClockTime
- threadDelay n
- tE <- getClockTime
-
- let req = fromIntegral n * 10 ^ (6 :: Int)
- obs = case normalizeTimeDiff (diffClockTimes tE tS) of
- TimeDiff 0 0 0 0 0 s ps -> 10^12 * fromIntegral s + ps
- diff = obs - req
- diff' :: Double
- diff' = fromIntegral diff / 10^(12 :: Int)
-
- when (obs < req) $ print (tS, tE, req, obs, diff, diff')
-
diff --git a/testsuite/tests/ghc-regress/lib/Concurrent/all.T b/testsuite/tests/ghc-regress/lib/Concurrent/all.T
deleted file mode 100644
index 004c6a1226..0000000000
--- a/testsuite/tests/ghc-regress/lib/Concurrent/all.T
+++ /dev/null
@@ -1,10 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-test('SampleVar001', reqlib('QuickCheck'), compile_and_run, ['-package QuickCheck'])
-test('4876', reqlib('random'), compile_and_run, ['']) # another SampleVar test
-
-test('Chan001', reqlib('QuickCheck'), compile_and_run, ['-package QuickCheck'])
-test('MVar001', reqlib('QuickCheck'), compile_and_run, ['-package QuickCheck'])
-test('QSemN001', reqlib('QuickCheck'), compile_and_run, ['-package QuickCheck'])
-test('QSem001', reqlib('QuickCheck'), compile_and_run, ['-package QuickCheck'])
-test('ThreadDelay001', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/Makefile b/testsuite/tests/ghc-regress/lib/Data.ByteString/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/all.T b/testsuite/tests/ghc-regress/lib/Data.ByteString/all.T
deleted file mode 100644
index 75c5574302..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/all.T
+++ /dev/null
@@ -1,18 +0,0 @@
-test('bytestring001',
- [skip, # This is designed for an earlier version of bytestring
- reqlib('QuickCheck')],
- compile_and_run,
- ['-package bytestring -package QuickCheck'])
-test('bytestring002', normal, compile_and_run, ['-package bytestring'])
-test('bytestring003', normal, compile_and_run, ['-package bytestring'])
-test('bytestring004',
- [skip, # This is designed for an earlier version of bytestring
- reqlib('QuickCheck')],
- compile_and_run,
- ['-package bytestring -package QuickCheck'])
-test('bytestring005',
- [skip, # This is designed for an earlier version of bytestring
- reqlib('QuickCheck')],
- compile_and_run,
- ['-package bytestring -package QuickCheck'])
-test('bytestring006', normal, compile_and_run, ['-package bytestring'])
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring001.hs b/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring001.hs
deleted file mode 100644
index 00cfcb3763..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring001.hs
+++ /dev/null
@@ -1,948 +0,0 @@
-#!/usr/bin/env runhaskell
---
--- Uses multi-param type classes
---
-
-import Test.QuickCheck.Batch
-import Test.QuickCheck
-import Text.Show.Functions
-
-import Data.Char
-import Data.Int
-import Data.List
-import Data.Maybe
-import Data.Word
-
-import System.IO
-import System.Environment
-import System.IO.Unsafe
-import System.Random
-
-import Control.Monad ( liftM2 )
-import Control.Monad.Instances ()
-
-import Text.Printf
-import Debug.Trace
-
-import Foreign.Ptr
-
-import Data.ByteString.Lazy (ByteString(..), pack , unpack)
-import qualified Data.ByteString.Lazy as L
-
-import Data.ByteString.Fusion
-import qualified Data.ByteString as P
-import qualified Data.ByteString.Lazy as L
-import qualified Data.ByteString.Lazy.Internal as L
-
-import qualified Data.ByteString.Char8 as PC
-import qualified Data.ByteString.Lazy.Char8 as LC
-import qualified Data.ByteString as P
-import qualified Data.ByteString.Internal as P
-import qualified Data.ByteString.Char8 as C
-import qualified Data.ByteString.Lazy.Char8 as D
-import Data.ByteString.Fusion
-
-import Prelude hiding (abs)
-
--- Enable this to get verbose test output. Including the actual tests.
-debug = False
-
-mytest :: Testable a => a -> Int -> IO ()
-mytest a n = mycheck defaultConfig
- { configMaxTest=n
- , configEvery= \n args -> if debug then show n ++ ":\n" ++ unlines args else [] } a
-
-mycheck :: Testable a => Config -> a -> IO ()
-mycheck config a =
- do let rnd = mkStdGen 99
- mytests config (evaluate a) rnd 0 0 []
-
-mytests :: Config -> Gen Result -> StdGen -> Int -> Int -> [[String]] -> IO ()
-mytests config gen rnd0 ntest nfail stamps
- | ntest == configMaxTest config = do done "OK," ntest stamps
- | nfail == configMaxFail config = do done "Arguments exhausted after" ntest stamps
- | otherwise =
- do putStr (configEvery config ntest (arguments result)) >> hFlush stdout
- case ok result of
- Nothing ->
- mytests config gen rnd1 ntest (nfail+1) stamps
- Just True ->
- mytests config gen rnd1 (ntest+1) nfail (stamp result:stamps)
- Just False ->
- putStr ( "Falsifiable after "
- ++ show ntest
- ++ " tests:\n"
- ++ unlines (arguments result)
- ) >> hFlush stdout
- where
- result = generate (configSize config ntest) rnd2 gen
- (rnd1,rnd2) = split rnd0
-
-done :: String -> Int -> [[String]] -> IO ()
-done mesg ntest stamps =
- do putStr ( mesg ++ " " ++ show ntest ++ " tests" ++ table )
- where
- table = display
- . map entry
- . reverse
- . sort
- . map pairLength
- . group
- . sort
- . filter (not . null)
- $ stamps
-
- display [] = ".\n"
- display [x] = " (" ++ x ++ ").\n"
- display xs = ".\n" ++ unlines (map (++ ".") xs)
-
- pairLength xss@(xs:_) = (length xss, xs)
- entry (n, xs) = percentage n ntest
- ++ " "
- ++ concat (intersperse ", " xs)
-
- percentage n m = show ((100 * n) `div` m) ++ "%"
-
-------------------------------------------------------------------------
-
-instance Arbitrary Char where
- arbitrary = choose ('a', 'i')
- coarbitrary c = variant (ord c `rem` 4)
-
-instance (Arbitrary a, Arbitrary b) => Arbitrary (PairS a b) where
- arbitrary = liftM2 (:*:) arbitrary arbitrary
- coarbitrary (a :*: b) = coarbitrary a . coarbitrary b
-
-instance Arbitrary Word8 where
- arbitrary = choose (97, 105)
- coarbitrary c = variant (fromIntegral ((fromIntegral c) `rem` 4))
-
-instance Arbitrary Int64 where
- arbitrary = sized $ \n -> choose (-fromIntegral n,fromIntegral n)
- coarbitrary n = variant (fromIntegral (if n >= 0 then 2*n else 2*(-n) + 1))
-
-instance Arbitrary a => Arbitrary (MaybeS a) where
- arbitrary = do a <- arbitrary ; elements [NothingS, JustS a]
- coarbitrary NothingS = variant 0
- coarbitrary _ = variant 1 -- ok?
-
-{-
-instance Arbitrary Char where
- arbitrary = choose ('\0', '\255') -- since we have to test words, unlines too
- coarbitrary c = variant (ord c `rem` 16)
-
-instance Arbitrary Word8 where
- arbitrary = choose (minBound, maxBound)
- coarbitrary c = variant (fromIntegral ((fromIntegral c) `rem` 16))
--}
-
-instance Random Word8 where
- randomR = integralRandomR
- random = randomR (minBound,maxBound)
-
-instance Random Int64 where
- randomR = integralRandomR
- random = randomR (minBound,maxBound)
-
-integralRandomR :: (Integral a, RandomGen g) => (a,a) -> g -> (a,g)
-integralRandomR (a,b) g = case randomR (fromIntegral a :: Integer,
- fromIntegral b :: Integer) g of
- (x,g) -> (fromIntegral x, g)
-
-instance Arbitrary L.ByteString where
- arbitrary = arbitrary >>= return . L.fromChunks . filter (not. P.null) -- maintain the invariant.
- coarbitrary s = coarbitrary (L.unpack s)
-
-instance Arbitrary P.ByteString where
- arbitrary = P.pack `fmap` arbitrary
- coarbitrary s = coarbitrary (P.unpack s)
-
-------------------------------------------------------------------------
---
--- We're doing two forms of testing here. Firstly, model based testing.
--- For our Lazy and strict bytestring types, we have model types:
---
--- i.e. Lazy == Byte
--- \\ //
--- List
---
--- That is, the Lazy type can be modeled by functions in both the Byte
--- and List type. For each of the 3 models, we have a set of tests that
--- check those types match.
---
--- The Model class connects a type and its model type, via a conversion
--- function.
---
---
-class Model a b where
- model :: a -> b -- get the abstract vale from a concrete value
-
---
--- Connecting our Lazy and Strict types to their models. We also check
--- the data invariant on Lazy types.
---
--- These instances represent the arrows in the above diagram
---
-instance Model B P where model = abstr . checkInvariant
-instance Model P [W] where model = P.unpack
-instance Model P [Char] where model = PC.unpack
-instance Model B [W] where model = L.unpack . checkInvariant
-instance Model B [Char] where model = LC.unpack . checkInvariant
-
--- Types are trivially modeled by themselves
-instance Model Bool Bool where model = id
-instance Model Int Int where model = id
-instance Model Int64 Int64 where model = id
-instance Model Int64 Int where model = fromIntegral
-instance Model Word8 Word8 where model = id
-instance Model Ordering Ordering where model = id
-
--- More structured types are modeled recursively, using the NatTrans class from Gofer.
-class (Functor f, Functor g) => NatTrans f g where
- eta :: f a -> g a
-
--- The transformation of the same type is identity
-instance NatTrans [] [] where eta = id
-instance NatTrans Maybe Maybe where eta = id
-instance NatTrans ((->) X) ((->) X) where eta = id
-instance NatTrans ((->) W) ((->) W) where eta = id
-
--- We have a transformation of pairs, if the pairs are in Model
-instance Model f g => NatTrans ((,) f) ((,) g) where eta (f,a) = (model f, a)
-
--- And finally, we can take any (m a) to (n b), if we can Model m n, and a b
-instance (NatTrans m n, Model a b) => Model (m a) (n b) where model x = fmap model (eta x)
-
-------------------------------------------------------------------------
-
--- In a form more useful for QC testing (and it's lazy)
-checkInvariant :: L.ByteString -> L.ByteString
-checkInvariant cs0 = check cs0
- where check L.Empty = L.Empty
- check (L.Chunk c cs)
- | P.null c = error ("invariant violation: " ++ show cs0)
- | otherwise = L.Chunk c (check cs)
-
-abstr :: L.ByteString -> P.ByteString
-abstr = P.concat . L.toChunks
-
-
--- Some short hand.
-type X = Int
-type W = Word8
-type P = P.ByteString
-type B = L.ByteString
-
-------------------------------------------------------------------------
---
--- These comparison functions handle wrapping and equality.
---
--- A single class for these would be nice, but note that they differe in
--- the number of arguments, and those argument types, so we'd need HList
--- tricks. See here: http://okmij.org/ftp/Haskell/vararg-fn.lhs
---
-
-eq1 f g = \a ->
- model (f a) == g (model a)
-eq2 f g = \a b ->
- model (f a b) == g (model a) (model b)
-eq3 f g = \a b c ->
- model (f a b c) == g (model a) (model b) (model c)
-eq4 f g = \a b c d ->
- model (f a b c d) == g (model a) (model b) (model c) (model d)
-eq5 f g = \a b c d e ->
- model (f a b c d e) == g (model a) (model b) (model c) (model d) (model e)
-
---
--- And for functions that take non-null input
---
-eqnotnull1 f g = \x -> (not (isNull x)) ==> eq1 f g x
-eqnotnull2 f g = \x y -> (not (isNull y)) ==> eq2 f g x y
-eqnotnull3 f g = \x y z -> (not (isNull z)) ==> eq3 f g x y z
-
-class IsNull t where isNull :: t -> Bool
-instance IsNull L.ByteString where isNull = L.null
-instance IsNull P.ByteString where isNull = P.null
-
-------------------------------------------------------------------------
-
-
---
--- ByteString.Lazy <=> ByteString
---
-
-prop_concatBP = L.concat `eq1` P.concat
-prop_nullBP = L.null `eq1` P.null
-prop_reverseBP = L.reverse `eq1` P.reverse
-prop_transposeBP = L.transpose `eq1` P.transpose
-prop_groupBP = L.group `eq1` P.group
-prop_initsBP = L.inits `eq1` P.inits
-prop_tailsBP = L.tails `eq1` P.tails
-prop_allBP = L.all `eq2` P.all
-prop_anyBP = L.any `eq2` P.any
-prop_appendBP = L.append `eq2` P.append
-prop_breakBP = L.break `eq2` P.break
--- prop_concatMapBP = L.concatMap `eq2` P.concatMap
-prop_consBP = L.cons `eq2` P.cons
-prop_countBP = L.count `eq2` P.count
-prop_dropBP = L.drop `eq2` P.drop
-prop_dropWhileBP = L.dropWhile `eq2` P.dropWhile
-prop_filterBP = L.filter `eq2` P.filter
-prop_findBP = L.find `eq2` P.find
-prop_findIndexBP = L.findIndex `eq2` P.findIndex
-prop_findIndicesBP = L.findIndices `eq2` P.findIndices
-prop_isPrefixOfBP = L.isPrefixOf `eq2` P.isPrefixOf
-prop_mapBP = L.map `eq2` P.map
-prop_replicateBP = L.replicate `eq2` P.replicate
-prop_snocBP = L.snoc `eq2` P.snoc
-prop_spanBP = L.span `eq2` P.span
-prop_splitBP = L.split `eq2` P.split
-prop_splitAtBP = L.splitAt `eq2` P.splitAt
-prop_takeBP = L.take `eq2` P.take
-prop_takeWhileBP = L.takeWhile `eq2` P.takeWhile
-prop_elemBP = L.elem `eq2` P.elem
-prop_notElemBP = L.notElem `eq2` P.notElem
-prop_elemIndexBP = L.elemIndex `eq2` P.elemIndex
-prop_elemIndicesBP = L.elemIndices `eq2` P.elemIndices
-prop_lengthBP = L.length `eq1` (fromIntegral . P.length :: P.ByteString -> Int64)
-prop_readIntBP = D.readInt `eq1` C.readInt
-prop_linesBP = D.lines `eq1` C.lines
-
-prop_headBP = L.head `eqnotnull1` P.head
-prop_initBP = L.init `eqnotnull1` P.init
-prop_lastBP = L.last `eqnotnull1` P.last
-prop_maximumBP = L.maximum `eqnotnull1` P.maximum
-prop_minimumBP = L.minimum `eqnotnull1` P.minimum
-prop_tailBP = L.tail `eqnotnull1` P.tail
-prop_foldl1BP = L.foldl1 `eqnotnull2` P.foldl1
-prop_foldl1BP' = L.foldl1' `eqnotnull2` P.foldl1'
-prop_foldr1BP = L.foldr1 `eqnotnull2` P.foldr1
-prop_scanlBP = L.scanl `eqnotnull3` P.scanl
-
-prop_eqBP = eq2
- ((==) :: B -> B -> Bool)
- ((==) :: P -> P -> Bool)
-prop_compareBP = eq2
- ((compare) :: B -> B -> Ordering)
- ((compare) :: P -> P -> Ordering)
-prop_foldlBP = eq3
- (L.foldl :: (X -> W -> X) -> X -> B -> X)
- (P.foldl :: (X -> W -> X) -> X -> P -> X)
-prop_foldlBP' = eq3
- (L.foldl' :: (X -> W -> X) -> X -> B -> X)
- (P.foldl' :: (X -> W -> X) -> X -> P -> X)
-prop_foldrBP = eq3
- (L.foldr :: (W -> X -> X) -> X -> B -> X)
- (P.foldr :: (W -> X -> X) -> X -> P -> X)
-prop_mapAccumLBP = eq3
- (L.mapAccumL :: (X -> W -> (X,W)) -> X -> B -> (X, B))
- (P.mapAccumL :: (X -> W -> (X,W)) -> X -> P -> (X, P))
-
-prop_unfoldrBP = eq3
- ((\n f a -> L.take (fromIntegral n) $
- L.unfoldr f a) :: Int -> (X -> Maybe (W,X)) -> X -> B)
- ((\n f a -> fst $
- P.unfoldrN n f a) :: Int -> (X -> Maybe (W,X)) -> X -> P)
-
---
--- properties comparing ByteString.Lazy `eq1` List
---
-
-prop_concatBL = L.concat `eq1` (concat :: [[W]] -> [W])
-prop_lengthBL = L.length `eq1` (length :: [W] -> Int)
-prop_nullBL = L.null `eq1` (null :: [W] -> Bool)
-prop_reverseBL = L.reverse `eq1` (reverse :: [W] -> [W])
-prop_transposeBL = L.transpose `eq1` (transpose :: [[W]] -> [[W]])
-prop_groupBL = L.group `eq1` (group :: [W] -> [[W]])
-prop_initsBL = L.inits `eq1` (inits :: [W] -> [[W]])
-prop_tailsBL = L.tails `eq1` (tails :: [W] -> [[W]])
-prop_allBL = L.all `eq2` (all :: (W -> Bool) -> [W] -> Bool)
-prop_anyBL = L.any `eq2` (any :: (W -> Bool) -> [W] -> Bool)
-prop_appendBL = L.append `eq2` ((++) :: [W] -> [W] -> [W])
-prop_breakBL = L.break `eq2` (break :: (W -> Bool) -> [W] -> ([W],[W]))
--- prop_concatMapBL = L.concatMap `eq2` (concatMap :: (W -> [W]) -> [W] -> [W])
-prop_consBL = L.cons `eq2` ((:) :: W -> [W] -> [W])
-prop_dropBL = L.drop `eq2` (drop :: Int -> [W] -> [W])
-prop_dropWhileBL = L.dropWhile `eq2` (dropWhile :: (W -> Bool) -> [W] -> [W])
-prop_filterBL = L.filter `eq2` (filter :: (W -> Bool ) -> [W] -> [W])
-prop_findBL = L.find `eq2` (find :: (W -> Bool) -> [W] -> Maybe W)
-prop_findIndicesBL = L.findIndices `eq2` (findIndices:: (W -> Bool) -> [W] -> [Int])
-prop_findIndexBL = L.findIndex `eq2` (findIndex :: (W -> Bool) -> [W] -> Maybe Int)
-prop_isPrefixOfBL = L.isPrefixOf `eq2` (isPrefixOf:: [W] -> [W] -> Bool)
-prop_mapBL = L.map `eq2` (map :: (W -> W) -> [W] -> [W])
-prop_replicateBL = L.replicate `eq2` (replicate :: Int -> W -> [W])
-prop_snocBL = L.snoc `eq2` ((\xs x -> xs ++ [x]) :: [W] -> W -> [W])
-prop_spanBL = L.span `eq2` (span :: (W -> Bool) -> [W] -> ([W],[W]))
-prop_splitAtBL = L.splitAt `eq2` (splitAt :: Int -> [W] -> ([W],[W]))
-prop_takeBL = L.take `eq2` (take :: Int -> [W] -> [W])
-prop_takeWhileBL = L.takeWhile `eq2` (takeWhile :: (W -> Bool) -> [W] -> [W])
-prop_elemBL = L.elem `eq2` (elem :: W -> [W] -> Bool)
-prop_notElemBL = L.notElem `eq2` (notElem :: W -> [W] -> Bool)
-prop_elemIndexBL = L.elemIndex `eq2` (elemIndex :: W -> [W] -> Maybe Int)
-prop_elemIndicesBL = L.elemIndices `eq2` (elemIndices:: W -> [W] -> [Int])
-prop_linesBL = D.lines `eq1` (lines :: String -> [String])
-
-prop_foldl1BL = L.foldl1 `eqnotnull2` (foldl1 :: (W -> W -> W) -> [W] -> W)
-prop_foldl1BL' = L.foldl1' `eqnotnull2` (foldl1' :: (W -> W -> W) -> [W] -> W)
-prop_foldr1BL = L.foldr1 `eqnotnull2` (foldr1 :: (W -> W -> W) -> [W] -> W)
-prop_headBL = L.head `eqnotnull1` (head :: [W] -> W)
-prop_initBL = L.init `eqnotnull1` (init :: [W] -> [W])
-prop_lastBL = L.last `eqnotnull1` (last :: [W] -> W)
-prop_maximumBL = L.maximum `eqnotnull1` (maximum :: [W] -> W)
-prop_minimumBL = L.minimum `eqnotnull1` (minimum :: [W] -> W)
-prop_tailBL = L.tail `eqnotnull1` (tail :: [W] -> [W])
-
-prop_eqBL = eq2
- ((==) :: B -> B -> Bool)
- ((==) :: [W] -> [W] -> Bool)
-prop_compareBL = eq2
- ((compare) :: B -> B -> Ordering)
- ((compare) :: [W] -> [W] -> Ordering)
-prop_foldlBL = eq3
- (L.foldl :: (X -> W -> X) -> X -> B -> X)
- ( foldl :: (X -> W -> X) -> X -> [W] -> X)
-prop_foldlBL' = eq3
- (L.foldl' :: (X -> W -> X) -> X -> B -> X)
- ( foldl' :: (X -> W -> X) -> X -> [W] -> X)
-prop_foldrBL = eq3
- (L.foldr :: (W -> X -> X) -> X -> B -> X)
- ( foldr :: (W -> X -> X) -> X -> [W] -> X)
-prop_mapAccumLBL = eq3
- (L.mapAccumL :: (X -> W -> (X,W)) -> X -> B -> (X, B))
- ( mapAccumL :: (X -> W -> (X,W)) -> X -> [W] -> (X, [W]))
-prop_unfoldrBL = eq3
- ((\n f a -> L.take (fromIntegral n) $
- L.unfoldr f a) :: Int -> (X -> Maybe (W,X)) -> X -> B)
- ((\n f a -> take n $
- unfoldr f a) :: Int -> (X -> Maybe (W,X)) -> X -> [W])
-
---
--- And finally, check correspondance between Data.ByteString and List
---
-
-prop_lengthPL = (fromIntegral.P.length :: P -> Int) `eq1` (length :: [W] -> Int)
-prop_nullPL = P.null `eq1` (null :: [W] -> Bool)
-prop_reversePL = P.reverse `eq1` (reverse :: [W] -> [W])
-prop_transposePL = P.transpose `eq1` (transpose :: [[W]] -> [[W]])
-prop_groupPL = P.group `eq1` (group :: [W] -> [[W]])
-prop_initsPL = P.inits `eq1` (inits :: [W] -> [[W]])
-prop_tailsPL = P.tails `eq1` (tails :: [W] -> [[W]])
-prop_concatPL = P.concat `eq1` (concat :: [[W]] -> [W])
-prop_allPL = P.all `eq2` (all :: (W -> Bool) -> [W] -> Bool)
-prop_anyPL = P.any `eq2` (any :: (W -> Bool) -> [W] -> Bool)
-prop_appendPL = P.append `eq2` ((++) :: [W] -> [W] -> [W])
-prop_breakPL = P.break `eq2` (break :: (W -> Bool) -> [W] -> ([W],[W]))
--- prop_concatMapPL = P.concatMap `eq2` (concatMap :: (W -> [W]) -> [W] -> [W])
-prop_consPL = P.cons `eq2` ((:) :: W -> [W] -> [W])
-prop_dropPL = P.drop `eq2` (drop :: Int -> [W] -> [W])
-prop_dropWhilePL = P.dropWhile `eq2` (dropWhile :: (W -> Bool) -> [W] -> [W])
-prop_filterPL = P.filter `eq2` (filter :: (W -> Bool ) -> [W] -> [W])
-prop_findPL = P.find `eq2` (find :: (W -> Bool) -> [W] -> Maybe W)
-prop_findIndexPL = P.findIndex `eq2` (findIndex :: (W -> Bool) -> [W] -> Maybe Int)
-prop_isPrefixOfPL = P.isPrefixOf`eq2` (isPrefixOf:: [W] -> [W] -> Bool)
-prop_mapPL = P.map `eq2` (map :: (W -> W) -> [W] -> [W])
-prop_replicatePL = P.replicate `eq2` (replicate :: Int -> W -> [W])
-prop_snocPL = P.snoc `eq2` ((\xs x -> xs ++ [x]) :: [W] -> W -> [W])
-prop_spanPL = P.span `eq2` (span :: (W -> Bool) -> [W] -> ([W],[W]))
-prop_splitAtPL = P.splitAt `eq2` (splitAt :: Int -> [W] -> ([W],[W]))
-prop_takePL = P.take `eq2` (take :: Int -> [W] -> [W])
-prop_takeWhilePL = P.takeWhile `eq2` (takeWhile :: (W -> Bool) -> [W] -> [W])
-prop_elemPL = P.elem `eq2` (elem :: W -> [W] -> Bool)
-prop_notElemPL = P.notElem `eq2` (notElem :: W -> [W] -> Bool)
-prop_elemIndexPL = P.elemIndex `eq2` (elemIndex :: W -> [W] -> Maybe Int)
-prop_linesPL = C.lines `eq1` (lines :: String -> [String])
-prop_findIndicesPL= P.findIndices`eq2` (findIndices:: (W -> Bool) -> [W] -> [Int])
-prop_elemIndicesPL= P.elemIndices`eq2` (elemIndices:: W -> [W] -> [Int])
-
-prop_foldl1PL = P.foldl1 `eqnotnull2` (foldl1 :: (W -> W -> W) -> [W] -> W)
-prop_foldl1PL' = P.foldl1' `eqnotnull2` (foldl1' :: (W -> W -> W) -> [W] -> W)
-prop_foldr1PL = P.foldr1 `eqnotnull2` (foldr1 :: (W -> W -> W) -> [W] -> W)
-prop_scanlPL = P.scanl `eqnotnull3` (scanl :: (W -> W -> W) -> W -> [W] -> [W])
-prop_scanl1PL = P.scanl1 `eqnotnull2` (scanl1 :: (W -> W -> W) -> [W] -> [W])
-prop_scanrPL = P.scanr `eqnotnull3` (scanr :: (W -> W -> W) -> W -> [W] -> [W])
-prop_scanr1PL = P.scanr1 `eqnotnull2` (scanr1 :: (W -> W -> W) -> [W] -> [W])
-prop_headPL = P.head `eqnotnull1` (head :: [W] -> W)
-prop_initPL = P.init `eqnotnull1` (init :: [W] -> [W])
-prop_lastPL = P.last `eqnotnull1` (last :: [W] -> W)
-prop_maximumPL = P.maximum `eqnotnull1` (maximum :: [W] -> W)
-prop_minimumPL = P.minimum `eqnotnull1` (minimum :: [W] -> W)
-prop_tailPL = P.tail `eqnotnull1` (tail :: [W] -> [W])
-
-prop_eqPL = eq2
- ((==) :: P -> P -> Bool)
- ((==) :: [W] -> [W] -> Bool)
-prop_comparePL = eq2
- ((compare) :: P -> P -> Ordering)
- ((compare) :: [W] -> [W] -> Ordering)
-prop_foldlPL = eq3
- (P.foldl :: (X -> W -> X) -> X -> P -> X)
- ( foldl :: (X -> W -> X) -> X -> [W] -> X)
-prop_foldlPL' = eq3
- (P.foldl' :: (X -> W -> X) -> X -> P -> X)
- ( foldl' :: (X -> W -> X) -> X -> [W] -> X)
-prop_foldrPL = eq3
- (P.foldr :: (W -> X -> X) -> X -> P -> X)
- ( foldr :: (W -> X -> X) -> X -> [W] -> X)
-prop_mapAccumLPL= eq3
- (P.mapAccumL :: (X -> W -> (X,W)) -> X -> P -> (X, P))
- ( mapAccumL :: (X -> W -> (X,W)) -> X -> [W] -> (X, [W]))
-prop_mapAccumRPL= eq3
- (P.mapAccumR :: (X -> W -> (X,W)) -> X -> P -> (X, P))
- ( mapAccumR :: (X -> W -> (X,W)) -> X -> [W] -> (X, [W]))
-prop_unfoldrPL = eq3
- ((\n f a -> fst $
- P.unfoldrN n f a) :: Int -> (X -> Maybe (W,X)) -> X -> P)
- ((\n f a -> take n $
- unfoldr f a) :: Int -> (X -> Maybe (W,X)) -> X -> [W])
-
-------------------------------------------------------------------------
---
--- And check fusion RULES.
---
-
-prop_lazylooploop em1 em2 start1 start2 arr =
- loopL em2 start2 (loopArr (loopL em1 start1 arr)) ==
- loopSndAcc (loopL (em1 `fuseEFL` em2) (start1 :*: start2) arr)
- where
- _ = start1 :: Int
- _ = start2 :: Int
-
-prop_looploop em1 em2 start1 start2 arr =
- loopU em2 start2 (loopArr (loopU em1 start1 arr)) ==
- loopSndAcc (loopU (em1 `fuseEFL` em2) (start1 :*: start2) arr)
- where
- _ = start1 :: Int
- _ = start2 :: Int
-
-------------------------------------------------------------------------
-
--- check associativity of sequence loops
-prop_sequenceloops_assoc n m o x y z a1 a2 a3 xs =
-
- k ((f * g) * h) == k (f * (g * h)) -- associativity
-
- where
- (*) = sequenceLoops
- f = (sel n) x a1
- g = (sel m) y a2
- h = (sel o) z a3
-
- _ = a1 :: Int; _ = a2 :: Int; _ = a3 :: Int
- k g = loopArr (loopWrapper g xs)
-
--- check wrapper elimination
-prop_loop_loop_wrapper_elimination n m x y a1 a2 xs =
- loopWrapper g (loopArr (loopWrapper f xs)) ==
- loopSndAcc (loopWrapper (sequenceLoops f g) xs)
- where
- f = (sel n) x a1
- g = (sel m) y a2
- _ = a1 :: Int; _ = a2 :: Int
-
-sel :: Bool
- -> (acc -> Word8 -> PairS acc (MaybeS Word8))
- -> acc
- -> Ptr Word8
- -> Ptr Word8
- -> Int
- -> IO (PairS (PairS acc Int) Int)
-sel False = doDownLoop
-sel True = doUpLoop
-
-------------------------------------------------------------------------
---
--- Test fusion forms
---
-
-prop_up_up_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doUpLoop f1 acc1) (doUpLoop f2 acc2)) ==
- k (doUpLoop (f1 `fuseAccAccEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int; k g = loopWrapper g xs
-
-prop_down_down_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doDownLoop f1 acc1) (doDownLoop f2 acc2)) ==
- k (doDownLoop (f1 `fuseAccAccEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int ; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_noAcc_noAcc_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doNoAccLoop f1 acc1) (doNoAccLoop f2 acc2)) ==
- k (doNoAccLoop (f1 `fuseNoAccNoAccEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int ; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_noAcc_up_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doNoAccLoop f1 acc1) (doUpLoop f2 acc2)) ==
- k (doUpLoop (f1 `fuseNoAccAccEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int; k g = loopWrapper g xs
-
-prop_up_noAcc_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doUpLoop f1 acc1) (doNoAccLoop f2 acc2)) ==
- k (doUpLoop (f1 `fuseAccNoAccEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int; k g = loopWrapper g xs
-
-prop_noAcc_down_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doNoAccLoop f1 acc1) (doDownLoop f2 acc2)) ==
- k (doDownLoop (f1 `fuseNoAccAccEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_down_noAcc_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doDownLoop f1 acc1) (doNoAccLoop f2 acc2)) ==
- k (doDownLoop (f1 `fuseAccNoAccEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int; k g = loopWrapper g xs
-
-prop_map_map_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doMapLoop f1 acc1) (doMapLoop f2 acc2)) ==
- k (doMapLoop (f1 `fuseMapMapEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_filter_filter_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doFilterLoop f1 acc1) (doFilterLoop f2 acc2)) ==
- k (doFilterLoop (f1 `fuseFilterFilterEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_map_filter_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doMapLoop f1 acc1) (doFilterLoop f2 acc2)) ==
- k (doNoAccLoop (f1 `fuseMapFilterEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_filter_map_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doFilterLoop f1 acc1) (doMapLoop f2 acc2)) ==
- k (doNoAccLoop (f1 `fuseFilterMapEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_map_noAcc_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doMapLoop f1 acc1) (doNoAccLoop f2 acc2)) ==
- k (doNoAccLoop (f1 `fuseMapNoAccEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_noAcc_map_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doNoAccLoop f1 acc1) (doMapLoop f2 acc2)) ==
- k (doNoAccLoop (f1 `fuseNoAccMapEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_map_up_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doMapLoop f1 acc1) (doUpLoop f2 acc2)) ==
- k (doUpLoop (f1 `fuseMapAccEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_up_map_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doUpLoop f1 acc1) (doMapLoop f2 acc2)) ==
- k (doUpLoop (f1 `fuseAccMapEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_map_down_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doMapLoop f1 acc1) (doDownLoop f2 acc2)) ==
- k (doDownLoop (f1 `fuseMapAccEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_down_map_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doDownLoop f1 acc1) (doMapLoop f2 acc2)) ==
- k (doDownLoop (f1 `fuseAccMapEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_filter_noAcc_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doFilterLoop f1 acc1) (doNoAccLoop f2 acc2)) ==
- k (doNoAccLoop (f1 `fuseFilterNoAccEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_noAcc_filter_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doNoAccLoop f1 acc1) (doFilterLoop f2 acc2)) ==
- k (doNoAccLoop (f1 `fuseNoAccFilterEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_filter_up_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doFilterLoop f1 acc1) (doUpLoop f2 acc2)) ==
- k (doUpLoop (f1 `fuseFilterAccEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_up_filter_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doUpLoop f1 acc1) (doFilterLoop f2 acc2)) ==
- k (doUpLoop (f1 `fuseAccFilterEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_filter_down_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doFilterLoop f1 acc1) (doDownLoop f2 acc2)) ==
- k (doDownLoop (f1 `fuseFilterAccEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-prop_down_filter_loop_fusion f1 f2 acc1 acc2 xs =
- k (sequenceLoops (doDownLoop f1 acc1) (doFilterLoop f2 acc2)) ==
- k (doDownLoop (f1 `fuseAccFilterEFL` f2) (acc1 :*: acc2))
- where _ = acc1 :: Int; _ = acc2 :: Int ; k g = loopWrapper g xs
-
-------------------------------------------------------------------------
-
-prop_length_loop_fusion_1 f1 acc1 xs =
- P.length (loopArr (loopWrapper (doUpLoop f1 acc1) xs)) ==
- P.foldl' (const . (+1)) 0 (loopArr (loopWrapper (doUpLoop f1 acc1) xs))
- where _ = acc1 :: Int
-
-prop_length_loop_fusion_2 f1 acc1 xs =
- P.length (loopArr (loopWrapper (doDownLoop f1 acc1) xs)) ==
- P.foldl' (const . (+1)) 0 (loopArr (loopWrapper (doDownLoop f1 acc1) xs))
- where _ = acc1 :: Int
-
-prop_length_loop_fusion_3 f1 acc1 xs =
- P.length (loopArr (loopWrapper (doMapLoop f1 acc1) xs)) ==
- P.foldl' (const . (+1)) 0 (loopArr (loopWrapper (doMapLoop f1 acc1) xs))
- where _ = acc1 :: Int
-
-prop_length_loop_fusion_4 f1 acc1 xs =
- P.length (loopArr (loopWrapper (doFilterLoop f1 acc1) xs)) ==
- P.foldl' (const . (+1)) 0 (loopArr (loopWrapper (doFilterLoop f1 acc1) xs))
- where _ = acc1 :: Int
-
-------------------------------------------------------------------------
--- The entry point
-
-main :: IO ()
-main = myrun tests
-
-myrun :: [(String, Int -> IO ())] -> IO ()
-myrun tests = do
- x <- getArgs
- let n = if null x then 100 else read . head $ x
- mapM_ (\(s,a) -> printf "%-25s: " s >> a n) tests
-
---
--- And now a list of all the properties to test.
---
-
-tests = misc_tests
- ++ bl_tests
- ++ bp_tests
- ++ pl_tests
- ++ fusion_tests
-
-misc_tests =
- [("invariant", mytest prop_invariant)]
-
-------------------------------------------------------------------------
--- ByteString.Lazy <=> List
-
-bl_tests =
- [("all", mytest prop_allBL)
- ,("any", mytest prop_anyBL)
- ,("append", mytest prop_appendBL)
- ,("compare", mytest prop_compareBL)
- ,("concat", mytest prop_concatBL)
- ,("cons", mytest prop_consBL)
- ,("eq", mytest prop_eqBL)
- ,("filter", mytest prop_filterBL)
- ,("find", mytest prop_findBL)
- ,("findIndex", mytest prop_findIndexBL)
- ,("findIndices", mytest prop_findIndicesBL)
- ,("foldl", mytest prop_foldlBL)
- ,("foldl'", mytest prop_foldlBL')
- ,("foldl1", mytest prop_foldl1BL)
- ,("foldl1'", mytest prop_foldl1BL')
- ,("foldr", mytest prop_foldrBL)
- ,("foldr1", mytest prop_foldr1BL)
- ,("mapAccumL", mytest prop_mapAccumLBL)
- ,("unfoldr", mytest prop_unfoldrBL)
- ,("head", mytest prop_headBL)
- ,("init", mytest prop_initBL)
- ,("isPrefixOf", mytest prop_isPrefixOfBL)
- ,("last", mytest prop_lastBL)
- ,("length", mytest prop_lengthBL)
- ,("map", mytest prop_mapBL)
- ,("maximum", mytest prop_maximumBL)
- ,("minimum", mytest prop_minimumBL)
- ,("null", mytest prop_nullBL)
- ,("reverse", mytest prop_reverseBL)
- ,("snoc", mytest prop_snocBL)
- ,("tail", mytest prop_tailBL)
- ,("transpose", mytest prop_transposeBL)
- ,("replicate", mytest prop_replicateBL)
- ,("take", mytest prop_takeBL)
- ,("drop", mytest prop_dropBL)
- ,("splitAt", mytest prop_splitAtBL)
- ,("takeWhile", mytest prop_takeWhileBL)
- ,("dropWhile", mytest prop_dropWhileBL)
- ,("break", mytest prop_breakBL)
- ,("span", mytest prop_spanBL)
- ,("group", mytest prop_groupBL)
- ,("inits", mytest prop_initsBL)
- ,("tails", mytest prop_tailsBL)
- ,("elem", mytest prop_elemBL)
- ,("notElem", mytest prop_notElemBL)
- ,("lines", mytest prop_linesBL)
- ,("elemIndex", mytest prop_elemIndexBL)
- ,("elemIndices", mytest prop_elemIndicesBL)
--- ,("concatMap", mytest prop_concatMapBL)
- ]
-
-------------------------------------------------------------------------
--- ByteString.Lazy <=> ByteString
-
-bp_tests =
- [("all", mytest prop_allBP)
- ,("any", mytest prop_anyBP)
- ,("append", mytest prop_appendBP)
- ,("compare", mytest prop_compareBP)
- ,("concat", mytest prop_concatBP)
- ,("cons", mytest prop_consBP)
- ,("eq", mytest prop_eqBP)
- ,("filter", mytest prop_filterBP)
- ,("find", mytest prop_findBP)
- ,("findIndex", mytest prop_findIndexBP)
- ,("findIndices", mytest prop_findIndicesBP)
- ,("foldl", mytest prop_foldlBP)
- ,("foldl'", mytest prop_foldlBP')
- ,("foldl1", mytest prop_foldl1BP)
- ,("foldl1'", mytest prop_foldl1BP')
- ,("foldr", mytest prop_foldrBP)
- ,("foldr1", mytest prop_foldr1BP)
- ,("mapAccumL", mytest prop_mapAccumLBP)
- ,("unfoldr", mytest prop_unfoldrBP)
- ,("head", mytest prop_headBP)
- ,("init", mytest prop_initBP)
- ,("isPrefixOf", mytest prop_isPrefixOfBP)
- ,("last", mytest prop_lastBP)
- ,("length", mytest prop_lengthBP)
- ,("readInt", mytest prop_readIntBP)
- ,("lines", mytest prop_linesBP)
- ,("map", mytest prop_mapBP)
- ,("maximum ", mytest prop_maximumBP)
- ,("minimum" , mytest prop_minimumBP)
- ,("null", mytest prop_nullBP)
- ,("reverse", mytest prop_reverseBP)
- ,("snoc", mytest prop_snocBP)
- ,("tail", mytest prop_tailBP)
- ,("scanl", mytest prop_scanlBP)
- ,("transpose", mytest prop_transposeBP)
- ,("replicate", mytest prop_replicateBP)
- ,("take", mytest prop_takeBP)
- ,("drop", mytest prop_dropBP)
- ,("splitAt", mytest prop_splitAtBP)
- ,("takeWhile", mytest prop_takeWhileBP)
- ,("dropWhile", mytest prop_dropWhileBP)
- ,("break", mytest prop_breakBP)
- ,("span", mytest prop_spanBP)
- ,("split", mytest prop_splitBP)
- ,("count", mytest prop_countBP)
- ,("group", mytest prop_groupBP)
- ,("inits", mytest prop_initsBP)
- ,("tails", mytest prop_tailsBP)
- ,("elem", mytest prop_elemBP)
- ,("notElem", mytest prop_notElemBP)
- ,("elemIndex", mytest prop_elemIndexBP)
- ,("elemIndices", mytest prop_elemIndicesBP)
--- ,("concatMap", mytest prop_concatMapBP)
- ]
-
-------------------------------------------------------------------------
--- ByteString <=> List
-
-pl_tests =
- [("all", mytest prop_allPL)
- ,("any", mytest prop_anyPL)
- ,("append", mytest prop_appendPL)
- ,("compare", mytest prop_comparePL)
- ,("concat", mytest prop_concatPL)
- ,("cons", mytest prop_consPL)
- ,("eq", mytest prop_eqPL)
- ,("filter", mytest prop_filterPL)
- ,("find", mytest prop_findPL)
- ,("findIndex", mytest prop_findIndexPL)
- ,("findIndices", mytest prop_findIndicesPL)
- ,("foldl", mytest prop_foldlPL)
- ,("foldl'", mytest prop_foldlPL')
- ,("foldl1", mytest prop_foldl1PL)
- ,("foldl1'", mytest prop_foldl1PL')
- ,("foldr1", mytest prop_foldr1PL)
- ,("foldr", mytest prop_foldrPL)
- ,("mapAccumL", mytest prop_mapAccumLPL)
- ,("mapAccumR", mytest prop_mapAccumRPL)
- ,("unfoldr", mytest prop_unfoldrPL)
- ,("scanl", mytest prop_scanlPL)
- ,("scanl1", mytest prop_scanl1PL)
- ,("scanr", mytest prop_scanrPL)
- ,("scanr1", mytest prop_scanr1PL)
- ,("head", mytest prop_headPL)
- ,("init", mytest prop_initPL)
- ,("last", mytest prop_lastPL)
- ,("maximum", mytest prop_maximumPL)
- ,("minimum", mytest prop_minimumPL)
- ,("tail", mytest prop_tailPL)
- ,("isPrefixOf", mytest prop_isPrefixOfPL)
- ,("length", mytest prop_lengthPL)
- ,("map", mytest prop_mapPL)
- ,("null", mytest prop_nullPL)
- ,("reverse", mytest prop_reversePL)
- ,("snoc", mytest prop_snocPL)
- ,("transpose", mytest prop_transposePL)
- ,("replicate", mytest prop_replicatePL)
- ,("take", mytest prop_takePL)
- ,("drop", mytest prop_dropPL)
- ,("splitAt", mytest prop_splitAtPL)
- ,("takeWhile", mytest prop_takeWhilePL)
- ,("dropWhile", mytest prop_dropWhilePL)
- ,("break", mytest prop_breakPL)
- ,("span", mytest prop_spanPL)
- ,("group", mytest prop_groupPL)
- ,("inits", mytest prop_initsPL)
- ,("tails", mytest prop_tailsPL)
- ,("elem", mytest prop_elemPL)
- ,("notElem", mytest prop_notElemPL)
- ,("lines", mytest prop_linesBL)
- ,("elemIndex", mytest prop_elemIndexPL)
- ,("elemIndices", mytest prop_elemIndicesPL)
--- ,("concatMap", mytest prop_concatMapPL)
- ]
-
-------------------------------------------------------------------------
--- Fusion rules
-
-fusion_tests =
--- v1 fusion
- [ ("lazy loop/loop fusion", mytest prop_lazylooploop)
- , ("loop/loop fusion", mytest prop_looploop)
-
--- v2 fusion
- ,("loop/loop wrapper elim", mytest prop_loop_loop_wrapper_elimination)
- ,("sequence association", mytest prop_sequenceloops_assoc)
-
- ,("up/up loop fusion", mytest prop_up_up_loop_fusion)
- ,("down/down loop fusion", mytest prop_down_down_loop_fusion)
- ,("noAcc/noAcc loop fusion", mytest prop_noAcc_noAcc_loop_fusion)
- ,("noAcc/up loop fusion", mytest prop_noAcc_up_loop_fusion)
- ,("up/noAcc loop fusion", mytest prop_up_noAcc_loop_fusion)
- ,("noAcc/down loop fusion", mytest prop_noAcc_down_loop_fusion)
- ,("down/noAcc loop fusion", mytest prop_down_noAcc_loop_fusion)
- ,("map/map loop fusion", mytest prop_map_map_loop_fusion)
- ,("filter/filter loop fusion", mytest prop_filter_filter_loop_fusion)
- ,("map/filter loop fusion", mytest prop_map_filter_loop_fusion)
- ,("filter/map loop fusion", mytest prop_filter_map_loop_fusion)
- ,("map/noAcc loop fusion", mytest prop_map_noAcc_loop_fusion)
- ,("noAcc/map loop fusion", mytest prop_noAcc_map_loop_fusion)
- ,("map/up loop fusion", mytest prop_map_up_loop_fusion)
- ,("up/map loop fusion", mytest prop_up_map_loop_fusion)
- ,("map/down loop fusion", mytest prop_map_down_fusion)
- ,("down/map loop fusion", mytest prop_down_map_loop_fusion)
- ,("filter/noAcc loop fusion", mytest prop_filter_noAcc_loop_fusion)
- ,("noAcc/filter loop fusion", mytest prop_noAcc_filter_loop_fusion)
- ,("filter/up loop fusion", mytest prop_filter_up_loop_fusion)
- ,("up/filter loop fusion", mytest prop_up_filter_loop_fusion)
- ,("filter/down loop fusion", mytest prop_filter_down_fusion)
- ,("down/filter loop fusion", mytest prop_down_filter_loop_fusion)
-
- ,("length/loop fusion", mytest prop_length_loop_fusion_1)
- ,("length/loop fusion", mytest prop_length_loop_fusion_2)
- ,("length/loop fusion", mytest prop_length_loop_fusion_3)
- ,("length/loop fusion", mytest prop_length_loop_fusion_4)
- ]
-
-
-------------------------------------------------------------------------
---
--- These are miscellaneous tests left over. Or else they test some
--- property internal to a type (i.e. head . sort == minimum), without
--- reference to a model type.
---
-
-invariant :: L.ByteString -> Bool
-invariant L.Empty = True
-invariant (L.Chunk c cs) = not (P.null c) && invariant cs
-
-prop_invariant = invariant
-
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring001.stdout b/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring001.stdout
deleted file mode 100644
index e2b220dc41..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring001.stdout
+++ /dev/null
@@ -1,185 +0,0 @@
-invariant : OK, 100 tests.
-all : OK, 100 tests.
-any : OK, 100 tests.
-append : OK, 100 tests.
-compare : OK, 100 tests.
-concat : OK, 100 tests.
-cons : OK, 100 tests.
-eq : OK, 100 tests.
-filter : OK, 100 tests.
-find : OK, 100 tests.
-findIndex : OK, 100 tests.
-findIndices : OK, 100 tests.
-foldl : OK, 100 tests.
-foldl' : OK, 100 tests.
-foldl1 : OK, 100 tests.
-foldl1' : OK, 100 tests.
-foldr : OK, 100 tests.
-foldr1 : OK, 100 tests.
-mapAccumL : OK, 100 tests.
-unfoldr : OK, 100 tests.
-head : OK, 100 tests.
-init : OK, 100 tests.
-isPrefixOf : OK, 100 tests.
-last : OK, 100 tests.
-length : OK, 100 tests.
-map : OK, 100 tests.
-maximum : OK, 100 tests.
-minimum : OK, 100 tests.
-null : OK, 100 tests.
-reverse : OK, 100 tests.
-snoc : OK, 100 tests.
-tail : OK, 100 tests.
-transpose : OK, 100 tests.
-replicate : OK, 100 tests.
-take : OK, 100 tests.
-drop : OK, 100 tests.
-splitAt : OK, 100 tests.
-takeWhile : OK, 100 tests.
-dropWhile : OK, 100 tests.
-break : OK, 100 tests.
-span : OK, 100 tests.
-group : OK, 100 tests.
-inits : OK, 100 tests.
-tails : OK, 100 tests.
-elem : OK, 100 tests.
-notElem : OK, 100 tests.
-lines : OK, 100 tests.
-elemIndex : OK, 100 tests.
-elemIndices : OK, 100 tests.
-all : OK, 100 tests.
-any : OK, 100 tests.
-append : OK, 100 tests.
-compare : OK, 100 tests.
-concat : OK, 100 tests.
-cons : OK, 100 tests.
-eq : OK, 100 tests.
-filter : OK, 100 tests.
-find : OK, 100 tests.
-findIndex : OK, 100 tests.
-findIndices : OK, 100 tests.
-foldl : OK, 100 tests.
-foldl' : OK, 100 tests.
-foldl1 : OK, 100 tests.
-foldl1' : OK, 100 tests.
-foldr : OK, 100 tests.
-foldr1 : OK, 100 tests.
-mapAccumL : OK, 100 tests.
-unfoldr : OK, 100 tests.
-head : OK, 100 tests.
-init : OK, 100 tests.
-isPrefixOf : OK, 100 tests.
-last : OK, 100 tests.
-length : OK, 100 tests.
-readInt : OK, 100 tests.
-lines : OK, 100 tests.
-map : OK, 100 tests.
-maximum : OK, 100 tests.
-minimum : OK, 100 tests.
-null : OK, 100 tests.
-reverse : OK, 100 tests.
-snoc : OK, 100 tests.
-tail : OK, 100 tests.
-scanl : OK, 100 tests.
-transpose : OK, 100 tests.
-replicate : OK, 100 tests.
-take : OK, 100 tests.
-drop : OK, 100 tests.
-splitAt : OK, 100 tests.
-takeWhile : OK, 100 tests.
-dropWhile : OK, 100 tests.
-break : OK, 100 tests.
-span : OK, 100 tests.
-split : OK, 100 tests.
-count : OK, 100 tests.
-group : OK, 100 tests.
-inits : OK, 100 tests.
-tails : OK, 100 tests.
-elem : OK, 100 tests.
-notElem : OK, 100 tests.
-elemIndex : OK, 100 tests.
-elemIndices : OK, 100 tests.
-all : OK, 100 tests.
-any : OK, 100 tests.
-append : OK, 100 tests.
-compare : OK, 100 tests.
-concat : OK, 100 tests.
-cons : OK, 100 tests.
-eq : OK, 100 tests.
-filter : OK, 100 tests.
-find : OK, 100 tests.
-findIndex : OK, 100 tests.
-findIndices : OK, 100 tests.
-foldl : OK, 100 tests.
-foldl' : OK, 100 tests.
-foldl1 : OK, 100 tests.
-foldl1' : OK, 100 tests.
-foldr1 : OK, 100 tests.
-foldr : OK, 100 tests.
-mapAccumL : OK, 100 tests.
-mapAccumR : OK, 100 tests.
-unfoldr : OK, 100 tests.
-scanl : OK, 100 tests.
-scanl1 : OK, 100 tests.
-scanr : OK, 100 tests.
-scanr1 : OK, 100 tests.
-head : OK, 100 tests.
-init : OK, 100 tests.
-last : OK, 100 tests.
-maximum : OK, 100 tests.
-minimum : OK, 100 tests.
-tail : OK, 100 tests.
-isPrefixOf : OK, 100 tests.
-length : OK, 100 tests.
-map : OK, 100 tests.
-null : OK, 100 tests.
-reverse : OK, 100 tests.
-snoc : OK, 100 tests.
-transpose : OK, 100 tests.
-replicate : OK, 100 tests.
-take : OK, 100 tests.
-drop : OK, 100 tests.
-splitAt : OK, 100 tests.
-takeWhile : OK, 100 tests.
-dropWhile : OK, 100 tests.
-break : OK, 100 tests.
-span : OK, 100 tests.
-group : OK, 100 tests.
-inits : OK, 100 tests.
-tails : OK, 100 tests.
-elem : OK, 100 tests.
-notElem : OK, 100 tests.
-lines : OK, 100 tests.
-elemIndex : OK, 100 tests.
-elemIndices : OK, 100 tests.
-lazy loop/loop fusion : OK, 100 tests.
-loop/loop fusion : OK, 100 tests.
-loop/loop wrapper elim : OK, 100 tests.
-sequence association : OK, 100 tests.
-up/up loop fusion: OK, 100 tests.
-down/down loop fusion: OK, 100 tests.
-noAcc/noAcc loop fusion: OK, 100 tests.
-noAcc/up loop fusion: OK, 100 tests.
-up/noAcc loop fusion: OK, 100 tests.
-noAcc/down loop fusion: OK, 100 tests.
-down/noAcc loop fusion: OK, 100 tests.
-map/map loop fusion: OK, 100 tests.
-filter/filter loop fusion: OK, 100 tests.
-map/filter loop fusion: OK, 100 tests.
-filter/map loop fusion: OK, 100 tests.
-map/noAcc loop fusion: OK, 100 tests.
-noAcc/map loop fusion: OK, 100 tests.
-map/up loop fusion: OK, 100 tests.
-up/map loop fusion: OK, 100 tests.
-map/down loop fusion: OK, 100 tests.
-down/map loop fusion: OK, 100 tests.
-filter/noAcc loop fusion: OK, 100 tests.
-noAcc/filter loop fusion: OK, 100 tests.
-filter/up loop fusion: OK, 100 tests.
-up/filter loop fusion: OK, 100 tests.
-filter/down loop fusion: OK, 100 tests.
-down/filter loop fusion: OK, 100 tests.
-length/loop fusion : OK, 100 tests.
-length/loop fusion : OK, 100 tests.
-length/loop fusion : OK, 100 tests.
-length/loop fusion : OK, 100 tests.
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring002.hs b/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring002.hs
deleted file mode 100644
index 23d6cf270f..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring002.hs
+++ /dev/null
@@ -1,6 +0,0 @@
---
--- The unix wc -l program
---
-import qualified Data.ByteString as B
-
-main = print . B.count 10 =<< B.getContents
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring002.stdin b/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring002.stdin
deleted file mode 100644
index abffbabe44..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring002.stdin
+++ /dev/null
@@ -1,1000 +0,0 @@
-A
-a
-aa
-aal
-aalii
-aam
-Aani
-aardvark
-aardwolf
-Aaron
-Aaronic
-Aaronical
-Aaronite
-Aaronitic
-Aaru
-Ab
-aba
-Ababdeh
-Ababua
-abac
-abaca
-abacate
-abacay
-abacinate
-abacination
-abaciscus
-abacist
-aback
-abactinal
-abactinally
-abaction
-abactor
-abaculus
-abacus
-Abadite
-abaff
-abaft
-abaisance
-abaiser
-abaissed
-abalienate
-abalienation
-abalone
-Abama
-abampere
-abandon
-abandonable
-abandoned
-abandonedly
-abandonee
-abandoner
-abandonment
-Abanic
-Abantes
-abaptiston
-Abarambo
-Abaris
-abarthrosis
-abarticular
-abarticulation
-abas
-abase
-abased
-abasedly
-abasedness
-abasement
-abaser
-Abasgi
-abash
-abashed
-abashedly
-abashedness
-abashless
-abashlessly
-abashment
-abasia
-abasic
-abask
-Abassin
-abastardize
-abatable
-abate
-abatement
-abater
-abatis
-abatised
-abaton
-abator
-abattoir
-Abatua
-abature
-abave
-abaxial
-abaxile
-abaze
-abb
-Abba
-abbacomes
-abbacy
-Abbadide
-abbas
-abbasi
-abbassi
-Abbasside
-abbatial
-abbatical
-abbess
-abbey
-abbeystede
-Abbie
-abbot
-abbotcy
-abbotnullius
-abbotship
-abbreviate
-abbreviately
-abbreviation
-abbreviator
-abbreviatory
-abbreviature
-Abby
-abcoulomb
-abdal
-abdat
-Abderian
-Abderite
-abdest
-abdicable
-abdicant
-abdicate
-abdication
-abdicative
-abdicator
-Abdiel
-abditive
-abditory
-abdomen
-abdominal
-Abdominales
-abdominalian
-abdominally
-abdominoanterior
-abdominocardiac
-abdominocentesis
-abdominocystic
-abdominogenital
-abdominohysterectomy
-abdominohysterotomy
-abdominoposterior
-abdominoscope
-abdominoscopy
-abdominothoracic
-abdominous
-abdominovaginal
-abdominovesical
-abduce
-abducens
-abducent
-abduct
-abduction
-abductor
-Abe
-abeam
-abear
-abearance
-abecedarian
-abecedarium
-abecedary
-abed
-abeigh
-Abel
-abele
-Abelia
-Abelian
-Abelicea
-Abelite
-abelite
-Abelmoschus
-abelmosk
-Abelonian
-abeltree
-Abencerrages
-abenteric
-abepithymia
-Aberdeen
-aberdevine
-Aberdonian
-Aberia
-aberrance
-aberrancy
-aberrant
-aberrate
-aberration
-aberrational
-aberrator
-aberrometer
-aberroscope
-aberuncator
-abet
-abetment
-abettal
-abettor
-abevacuation
-abey
-abeyance
-abeyancy
-abeyant
-abfarad
-abhenry
-abhiseka
-abhominable
-abhor
-abhorrence
-abhorrency
-abhorrent
-abhorrently
-abhorrer
-abhorrible
-abhorring
-Abhorson
-abidal
-abidance
-abide
-abider
-abidi
-abiding
-abidingly
-abidingness
-Abie
-Abies
-abietate
-abietene
-abietic
-abietin
-Abietineae
-abietineous
-abietinic
-Abiezer
-Abigail
-abigail
-abigailship
-abigeat
-abigeus
-abilao
-ability
-abilla
-abilo
-abintestate
-abiogenesis
-abiogenesist
-abiogenetic
-abiogenetical
-abiogenetically
-abiogenist
-abiogenous
-abiogeny
-abiological
-abiologically
-abiology
-abiosis
-abiotic
-abiotrophic
-abiotrophy
-Abipon
-abir
-abirritant
-abirritate
-abirritation
-abirritative
-abiston
-Abitibi
-abiuret
-abject
-abjectedness
-abjection
-abjective
-abjectly
-abjectness
-abjoint
-abjudge
-abjudicate
-abjudication
-abjunction
-abjunctive
-abjuration
-abjuratory
-abjure
-abjurement
-abjurer
-abkar
-abkari
-Abkhas
-Abkhasian
-ablach
-ablactate
-ablactation
-ablare
-ablastemic
-ablastous
-ablate
-ablation
-ablatitious
-ablatival
-ablative
-ablator
-ablaut
-ablaze
-able
-ableeze
-ablegate
-ableness
-ablepharia
-ablepharon
-ablepharous
-Ablepharus
-ablepsia
-ableptical
-ableptically
-abler
-ablest
-ablewhackets
-ablins
-abloom
-ablow
-ablude
-abluent
-ablush
-ablution
-ablutionary
-abluvion
-ably
-abmho
-Abnaki
-abnegate
-abnegation
-abnegative
-abnegator
-Abner
-abnerval
-abnet
-abneural
-abnormal
-abnormalism
-abnormalist
-abnormality
-abnormalize
-abnormally
-abnormalness
-abnormity
-abnormous
-abnumerable
-Abo
-aboard
-Abobra
-abode
-abodement
-abody
-abohm
-aboil
-abolish
-abolisher
-abolishment
-abolition
-abolitionary
-abolitionism
-abolitionist
-abolitionize
-abolla
-aboma
-abomasum
-abomasus
-abominable
-abominableness
-abominably
-abominate
-abomination
-abominator
-abomine
-Abongo
-aboon
-aborad
-aboral
-aborally
-abord
-aboriginal
-aboriginality
-aboriginally
-aboriginary
-aborigine
-abort
-aborted
-aborticide
-abortient
-abortifacient
-abortin
-abortion
-abortional
-abortionist
-abortive
-abortively
-abortiveness
-abortus
-abouchement
-abound
-abounder
-abounding
-aboundingly
-about
-abouts
-above
-aboveboard
-abovedeck
-aboveground
-aboveproof
-abovestairs
-abox
-abracadabra
-abrachia
-abradant
-abrade
-abrader
-Abraham
-Abrahamic
-Abrahamidae
-Abrahamite
-Abrahamitic
-abraid
-Abram
-Abramis
-abranchial
-abranchialism
-abranchian
-Abranchiata
-abranchiate
-abranchious
-abrasax
-abrase
-abrash
-abrasiometer
-abrasion
-abrasive
-abrastol
-abraum
-abraxas
-abreact
-abreaction
-abreast
-abrenounce
-abret
-abrico
-abridge
-abridgeable
-abridged
-abridgedly
-abridger
-abridgment
-abrim
-abrin
-abristle
-abroach
-abroad
-Abrocoma
-abrocome
-abrogable
-abrogate
-abrogation
-abrogative
-abrogator
-Abroma
-Abronia
-abrook
-abrotanum
-abrotine
-abrupt
-abruptedly
-abruption
-abruptly
-abruptness
-Abrus
-Absalom
-absampere
-Absaroka
-absarokite
-abscess
-abscessed
-abscession
-abscessroot
-abscind
-abscise
-abscision
-absciss
-abscissa
-abscissae
-abscisse
-abscission
-absconce
-abscond
-absconded
-abscondedly
-abscondence
-absconder
-absconsa
-abscoulomb
-absence
-absent
-absentation
-absentee
-absenteeism
-absenteeship
-absenter
-absently
-absentment
-absentmindedly
-absentness
-absfarad
-abshenry
-Absi
-absinthe
-absinthial
-absinthian
-absinthiate
-absinthic
-absinthin
-absinthine
-absinthism
-absinthismic
-absinthium
-absinthol
-absit
-absmho
-absohm
-absolute
-absolutely
-absoluteness
-absolution
-absolutism
-absolutist
-absolutistic
-absolutistically
-absolutive
-absolutization
-absolutize
-absolutory
-absolvable
-absolvatory
-absolve
-absolvent
-absolver
-absolvitor
-absolvitory
-absonant
-absonous
-absorb
-absorbability
-absorbable
-absorbed
-absorbedly
-absorbedness
-absorbefacient
-absorbency
-absorbent
-absorber
-absorbing
-absorbingly
-absorbition
-absorpt
-absorptance
-absorptiometer
-absorptiometric
-absorption
-absorptive
-absorptively
-absorptiveness
-absorptivity
-absquatulate
-abstain
-abstainer
-abstainment
-abstemious
-abstemiously
-abstemiousness
-abstention
-abstentionist
-abstentious
-absterge
-abstergent
-abstersion
-abstersive
-abstersiveness
-abstinence
-abstinency
-abstinent
-abstinential
-abstinently
-abstract
-abstracted
-abstractedly
-abstractedness
-abstracter
-abstraction
-abstractional
-abstractionism
-abstractionist
-abstractitious
-abstractive
-abstractively
-abstractiveness
-abstractly
-abstractness
-abstractor
-abstrahent
-abstricted
-abstriction
-abstruse
-abstrusely
-abstruseness
-abstrusion
-abstrusity
-absume
-absumption
-absurd
-absurdity
-absurdly
-absurdness
-absvolt
-Absyrtus
-abterminal
-abthain
-abthainrie
-abthainry
-abthanage
-Abu
-abu
-abucco
-abulia
-abulic
-abulomania
-abuna
-abundance
-abundancy
-abundant
-Abundantia
-abundantly
-abura
-aburabozu
-aburban
-aburst
-aburton
-abusable
-abuse
-abusedly
-abusee
-abuseful
-abusefully
-abusefulness
-abuser
-abusion
-abusious
-abusive
-abusively
-abusiveness
-abut
-Abuta
-Abutilon
-abutment
-abuttal
-abutter
-abutting
-abuzz
-abvolt
-abwab
-aby
-abysm
-abysmal
-abysmally
-abyss
-abyssal
-Abyssinian
-abyssobenthonic
-abyssolith
-abyssopelagic
-acacatechin
-acacatechol
-acacetin
-Acacia
-Acacian
-acaciin
-acacin
-academe
-academial
-academian
-Academic
-academic
-academical
-academically
-academicals
-academician
-academicism
-academism
-academist
-academite
-academization
-academize
-Academus
-academy
-Acadia
-acadialite
-Acadian
-Acadie
-Acaena
-acajou
-acaleph
-Acalepha
-Acalephae
-acalephan
-acalephoid
-acalycal
-acalycine
-acalycinous
-acalyculate
-Acalypha
-Acalypterae
-Acalyptrata
-Acalyptratae
-acalyptrate
-Acamar
-acampsia
-acana
-acanaceous
-acanonical
-acanth
-acantha
-Acanthaceae
-acanthaceous
-acanthad
-Acantharia
-Acanthia
-acanthial
-acanthin
-acanthine
-acanthion
-acanthite
-acanthocarpous
-Acanthocephala
-acanthocephalan
-Acanthocephali
-acanthocephalous
-Acanthocereus
-acanthocladous
-Acanthodea
-acanthodean
-Acanthodei
-Acanthodes
-acanthodian
-Acanthodidae
-Acanthodii
-Acanthodini
-acanthoid
-Acantholimon
-acanthological
-acanthology
-acantholysis
-acanthoma
-Acanthomeridae
-acanthon
-Acanthopanax
-Acanthophis
-acanthophorous
-acanthopod
-acanthopodous
-acanthopomatous
-acanthopore
-acanthopteran
-Acanthopteri
-acanthopterous
-acanthopterygian
-Acanthopterygii
-acanthosis
-acanthous
-Acanthuridae
-Acanthurus
-acanthus
-acapnia
-acapnial
-acapsular
-acapu
-acapulco
-acara
-Acarapis
-acardia
-acardiac
-acari
-acarian
-acariasis
-acaricidal
-acaricide
-acarid
-Acarida
-Acaridea
-acaridean
-acaridomatium
-acariform
-Acarina
-acarine
-acarinosis
-acarocecidium
-acarodermatitis
-acaroid
-acarol
-acarologist
-acarology
-acarophilous
-acarophobia
-acarotoxic
-acarpelous
-acarpous
-Acarus
-Acastus
-acatalectic
-acatalepsia
-acatalepsy
-acataleptic
-acatallactic
-acatamathesia
-acataphasia
-acataposis
-acatastasia
-acatastatic
-acate
-acategorical
-acatery
-acatharsia
-acatharsy
-acatholic
-acaudal
-acaudate
-acaulescent
-acauline
-acaulose
-acaulous
-acca
-accede
-accedence
-acceder
-accelerable
-accelerando
-accelerant
-accelerate
-accelerated
-acceleratedly
-acceleration
-accelerative
-accelerator
-acceleratory
-accelerograph
-accelerometer
-accend
-accendibility
-accendible
-accension
-accensor
-accent
-accentless
-accentor
-accentuable
-accentual
-accentuality
-accentually
-accentuate
-accentuation
-accentuator
-accentus
-accept
-acceptability
-acceptable
-acceptableness
-acceptably
-acceptance
-acceptancy
-acceptant
-acceptation
-accepted
-acceptedly
-accepter
-acceptilate
-acceptilation
-acception
-acceptive
-acceptor
-acceptress
-accerse
-accersition
-accersitor
-access
-accessarily
-accessariness
-accessary
-accessaryship
-accessibility
-accessible
-accessibly
-accession
-accessional
-accessioner
-accessive
-accessively
-accessless
-accessorial
-accessorily
-accessoriness
-accessorius
-accessory
-accidence
-accidency
-accident
-accidental
-accidentalism
-accidentalist
-accidentality
-accidentally
-accidentalness
-accidented
-accidential
-accidentiality
-accidently
-accidia
-accidie
-accinge
-accipient
-Accipiter
-accipitral
-accipitrary
-Accipitres
-accipitrine
-accismus
-accite
-acclaim
-acclaimable
-acclaimer
-acclamation
-acclamator
-acclamatory
-acclimatable
-acclimatation
-acclimate
-acclimatement
-acclimation
-acclimatizable
-acclimatization
-acclimatize
-acclimatizer
-acclimature
-acclinal
-acclinate
-acclivitous
-acclivity
-acclivous
-accloy
-accoast
-accoil
-accolade
-accoladed
-accolated
-accolent
-accolle
-accombination
-accommodable
-accommodableness
-accommodate
-accommodately
-accommodateness
-accommodating
-accommodatingly
-accommodation
-accommodational
-accommodative
-accommodativeness
-accommodator
-accompanier
-accompaniment
-accompanimental
-accompanist
-accompany
-accompanyist
-accompletive
-accomplice
-accompliceship
-accomplicity
-accomplish
-accomplishable
-accomplished
-accomplisher
-accomplishment
-accomplisht
-accompt
-accord
-accordable
-accordance
-accordancy
-accordant
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring002.stdout b/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring002.stdout
deleted file mode 100644
index 83b33d238d..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-1000
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring003.hs b/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring003.hs
deleted file mode 100644
index c31ab8d17f..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring003.hs
+++ /dev/null
@@ -1,36 +0,0 @@
-{-# OPTIONS -cpp #-}
-
---
--- 'sums' benchmark from the great language shootout
---
-
-import System.IO
-import qualified Data.ByteString as B
-import Data.ByteString (ByteString)
-import Data.ByteString.Unsafe (unsafeTail,unsafeIndex)
-import Data.Char -- seems to help!
-
-#define STRICT2(f) f a b | a `seq` b `seq` False = undefined
-
-main = print . go 0 =<< B.getContents
-
-STRICT2(go)
-go i ps
- | B.null ps = i
- | x == 45 = neg 0 xs
- | otherwise = pos (parse x) xs
- where
- (x, xs) = (ps `unsafeIndex` 0, unsafeTail ps)
-
- STRICT2(neg)
- neg n qs | x == 10 = go (i-n) xs
- | otherwise = neg (parse x + (10 * n)) xs
- where (x, xs) = (qs `unsafeIndex` 0, unsafeTail qs)
-
- STRICT2(pos)
- pos n qs | x == 10 = go (i+n) xs
- | otherwise = pos (parse x + (10 * n)) xs
- where (x, xs) = (qs `unsafeIndex` 0, unsafeTail qs)
-
-parse w = fromIntegral (w - 48) :: Int
-{-# INLINE parse #-}
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring003.stdin b/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring003.stdin
deleted file mode 100644
index 956aba1447..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring003.stdin
+++ /dev/null
@@ -1,1000 +0,0 @@
-276
-498
--981
-770
--401
-702
-966
-950
--853
--53
--293
-604
-288
-892
--697
-204
-96
-408
-880
--7
--817
-422
--261
--485
--77
-826
-184
-864
--751
-626
-812
--369
--353
--371
-488
--83
--659
-24
-524
--21
-840
--757
--17
--973
--843
-260
-858
--389
--521
--99
-482
--561
--213
-630
-766
-932
-112
--419
--877
-762
-266
--837
-170
-834
-746
-764
-922
--89
-576
--63
-90
-684
-316
-506
--959
-708
-70
-252
--747
-342
--593
--895
--937
--707
-350
-588
--201
--683
--113
--511
--867
-322
-202
-472
-150
--9
--643
-28
-336
-86
--925
-836
--473
--451
--971
--805
--619
-84
--67
-806
-270
-366
-334
--555
--557
--331
--409
--553
--145
--71
-528
-490
-492
-828
-628
--961
-536
--859
--271
-974
--671
--749
-414
--257
-778
-56
-598
--437
--899
--785
--987
-32
--999
-132
--821
--209
-402
--543
-194
--967
-294
--943
--285
--483
--97
-660
--481
--829
--309
--597
--855
-80
--355
-192
--823
-436
-916
-282
--629
-612
--329
--535
-780
--47
-706
-110
-756
--857
--933
--345
--523
-718
--31
-902
-678
-540
-698
-456
--399
-126
-412
--563
--321
--487
--641
--195
--199
--955
-772
-570
-18
--217
-886
-984
--721
--995
-46
--989
-946
-64
-716
--719
--869
--579
-776
-450
-936
-980
--439
--977
--455
--997
-6
-268
--269
--421
-328
-352
-578
--575
-476
-976
--57
--469
-544
-582
--43
-510
--939
--581
--337
--203
--737
--827
-852
--279
--803
--911
--865
-548
-48
--75
-416
--275
-688
--255
--687
--461
--233
-420
-912
--901
--299
-12
-568
-694
--411
--883
--327
--361
--339
-646
--137
--905
-670
-686
--131
--849
--825
-256
-228
--841
-68
-368
--909
-242
-298
-118
-10
-222
-954
--493
--459
--445
-608
--765
-34
-468
--715
-690
--185
--551
--571
--241
-292
-92
-768
--923
-956
-614
-8
-730
-208
--417
-300
-136
--59
--251
--539
-166
-798
-866
-454
--391
--317
-668
-502
--15
-994
-854
--189
-666
-446
--565
--5
-42
--227
--87
--779
-26
-312
-354
-754
-396
--515
-220
-872
-654
-88
--667
-250
-572
-952
-72
-982
-972
--529
--471
--533
--427
-538
-154
--457
--819
-750
-152
-452
--41
-838
--489
-418
--649
--637
--197
-74
-394
--653
--727
--435
--23
-348
-638
--611
-914
--357
--743
--685
-580
--247
--577
-54
--931
--3
-558
--793
--443
--759
-162
--811
-384
-720
--117
-900
--519
--39
-744
-432
-286
--873
-380
--167
--283
-430
--155
--755
-206
-100
-364
--677
-332
--567
-382
--605
--181
-676
--475
--845
-910
-546
-14
-398
-616
--769
-424
-992
--235
--239
-774
-478
--919
-168
--771
--773
--69
--509
-930
-550
--463
-178
--861
--761
--795
-234
--831
--61
--979
--851
--665
--709
-896
-742
--123
-590
--693
--887
--379
-144
--717
-20
-174
-82
-464
-30
--969
--349
--531
--799
--661
--647
--623
-878
-148
--545
-238
--259
-554
-726
--37
--797
-98
-78
--591
--975
-962
-120
-906
--207
-656
--171
-652
-188
-672
--133
--91
-224
-818
--333
--839
--499
-22
--739
-142
-378
--403
--315
-370
-284
-122
-230
--527
--127
-442
-534
-160
-722
-262
--657
-304
-258
--103
-960
--495
--265
-634
--101
-480
--363
-308
-76
--949
--585
-904
-146
--703
-164
-850
-246
-732
--725
-566
-274
--163
--935
--681
--229
-254
--733
--547
--273
--903
-736
--711
-794
-392
--655
--549
-808
--429
-484
--701
--617
-804
-36
--775
--335
--927
-714
--177
--325
--413
--963
-114
--253
--789
--645
-40
-434
-898
-924
--19
-738
-788
-280
--121
-594
--913
-426
-816
--373
--45
-340
--109
--323
-58
--249
-940
--297
-988
-998
--607
--745
--633
--115
-996
--893
-696
-400
-848
-500
--263
-562
--807
--105
--603
-658
--73
--863
-448
-680
--157
--161
-728
-814
--477
--375
-1000
--631
--991
-362
-156
--187
--705
--917
--449
--741
-556
-440
--589
--11
--359
--891
--801
--153
--381
-938
--173
--243
-618
--599
--497
-486
-128
-790
-460
--27
--305
--205
--215
-324
--341
-50
-458
-52
--621
-874
-386
-560
--569
--51
-802
-786
-920
--425
-466
-444
--507
--915
-346
-622
--679
-784
--689
-388
-508
--613
--313
--447
-564
--897
--211
--225
--615
--367
-186
-894
--65
--453
--245
-602
-496
--651
--601
-820
-226
--695
--119
-372
-180
-94
-214
-542
-648
--871
-592
-584
-824
-796
-374
--945
--311
-516
-942
--221
--433
-200
--465
--953
-870
-868
--879
-518
-356
--223
-682
-990
--191
--541
--951
--921
--319
--169
--291
--289
-792
-876
-306
--491
-326
--885
-62
-514
--929
-318
--231
-632
-44
--107
-644
--267
--343
--847
-934
-734
--505
--351
-574
--627
-636
--93
--431
--835
-428
--183
--151
-2
--813
--595
-958
--141
-692
--385
-610
--179
-376
-948
-198
--675
-964
--907
-918
--165
--1
-406
-748
--111
-532
--55
--281
-740
-504
-236
--29
-662
--713
--537
-196
--587
-822
--135
-700
--35
-674
--407
-240
--673
--669
--393
-470
--525
--875
--383
--625
-296
--85
--147
--277
-800
--691
--143
-16
--983
--303
-290
--139
-172
-320
-512
-596
-640
-664
--791
--783
--387
--735
--467
--301
-810
-134
-216
-278
-176
-606
-140
--787
-978
-586
-890
-882
--753
--13
-970
--941
--175
--777
--809
--441
--347
--377
-390
--423
-842
-642
-190
-302
-438
-704
-310
--49
-124
--781
--287
-724
--767
-830
-620
--295
-244
--159
--307
--397
-66
--237
-314
--79
-624
-710
-272
--365
-928
-856
-138
--479
-520
-832
-862
-760
-846
--81
-106
--513
--193
-650
-782
--517
-944
-218
-712
--663
--559
-462
--635
--25
-182
-530
-844
-330
--833
-102
--881
-108
--947
--763
--405
-232
-410
-104
--729
--149
--889
-888
-360
-968
-908
-116
--815
--129
-522
--723
--993
-860
--503
-926
--219
--415
-60
-158
--609
--501
-986
--699
--583
-884
-212
-210
--957
-526
--985
-552
-344
--395
--95
-338
-248
-494
-130
-404
-358
-600
--639
--125
--33
--965
-752
-474
--731
-758
--573
-4
-38
-264
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring003.stdout b/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring003.stdout
deleted file mode 100644
index 1b79f38e25..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring003.stdout
+++ /dev/null
@@ -1 +0,0 @@
-500
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring004.hs b/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring004.hs
deleted file mode 100644
index 5c4df86a90..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring004.hs
+++ /dev/null
@@ -1,564 +0,0 @@
-#!/usr/bin/env runhaskell
---
--- Uses multi-param type classes
---
-
-import Test.QuickCheck.Batch
-import Test.QuickCheck
-import Text.Show.Functions
-
-import Data.Char
-import Data.Int
-import Data.List
-import Data.Maybe
-import Data.Word
-
-import System.IO
-import System.Environment
-import System.IO.Unsafe
-import System.Random
-
-import Control.Monad ( liftM2 )
-import Control.Monad.Instances ()
-
-import Text.Printf
-import Debug.Trace
-
-import Foreign.Ptr
-
-import Data.ByteString.Lazy (ByteString(..), pack , unpack)
-import qualified Data.ByteString.Lazy as L
-import qualified Data.ByteString.Lazy.Internal as L
-
-import Data.ByteString.Fusion
-import qualified Data.ByteString as P
-import qualified Data.ByteString.Lazy as L
-
-import qualified Data.ByteString.Char8 as PC
-import qualified Data.ByteString.Lazy.Char8 as LC
-import qualified Data.ByteString as P
-import qualified Data.ByteString.Internal as P
-import qualified Data.ByteString.Char8 as C
-import qualified Data.ByteString.Lazy.Char8 as D
-import Data.ByteString.Fusion
-
-import Prelude hiding (abs)
-
--- Enable this to get verbose test output. Including the actual tests.
-debug = False
-
-mytest :: Testable a => a -> Int -> IO ()
-mytest a n = mycheck defaultConfig
- { configMaxTest=n
- , configEvery= \n args -> if debug then show n ++ ":\n" ++ unlines args else [] } a
-
-mycheck :: Testable a => Config -> a -> IO ()
-mycheck config a =
- do let rnd = mkStdGen 99
- mytests config (evaluate a) rnd 0 0 []
-
-mytests :: Config -> Gen Result -> StdGen -> Int -> Int -> [[String]] -> IO ()
-mytests config gen rnd0 ntest nfail stamps
- | ntest == configMaxTest config = do done "OK," ntest stamps
- | nfail == configMaxFail config = do done "Arguments exhausted after" ntest stamps
- | otherwise =
- do putStr (configEvery config ntest (arguments result)) >> hFlush stdout
- case ok result of
- Nothing ->
- mytests config gen rnd1 ntest (nfail+1) stamps
- Just True ->
- mytests config gen rnd1 (ntest+1) nfail (stamp result:stamps)
- Just False ->
- putStr ( "Falsifiable after "
- ++ show ntest
- ++ " tests:\n"
- ++ unlines (arguments result)
- ) >> hFlush stdout
- where
- result = generate (configSize config ntest) rnd2 gen
- (rnd1,rnd2) = split rnd0
-
-done :: String -> Int -> [[String]] -> IO ()
-done mesg ntest stamps =
- do putStr ( mesg ++ " " ++ show ntest ++ " tests" ++ table )
- where
- table = display
- . map entry
- . reverse
- . sort
- . map pairLength
- . group
- . sort
- . filter (not . null)
- $ stamps
-
- display [] = ".\n"
- display [x] = " (" ++ x ++ ").\n"
- display xs = ".\n" ++ unlines (map (++ ".") xs)
-
- pairLength xss@(xs:_) = (length xss, xs)
- entry (n, xs) = percentage n ntest
- ++ " "
- ++ concat (intersperse ", " xs)
-
- percentage n m = show ((100 * n) `div` m) ++ "%"
-
-------------------------------------------------------------------------
-
-instance Arbitrary Char where
- arbitrary = choose ('a', 'i')
- coarbitrary c = variant (ord c `rem` 4)
-
-instance (Arbitrary a, Arbitrary b) => Arbitrary (PairS a b) where
- arbitrary = liftM2 (:*:) arbitrary arbitrary
- coarbitrary (a :*: b) = coarbitrary a . coarbitrary b
-
-instance Arbitrary Word8 where
- arbitrary = choose (97, 105)
- coarbitrary c = variant (fromIntegral ((fromIntegral c) `rem` 4))
-
-instance Arbitrary Int64 where
- arbitrary = sized $ \n -> choose (-fromIntegral n,fromIntegral n)
- coarbitrary n = variant (fromIntegral (if n >= 0 then 2*n else 2*(-n) + 1))
-
-instance Arbitrary a => Arbitrary (MaybeS a) where
- arbitrary = do a <- arbitrary ; elements [NothingS, JustS a]
- coarbitrary NothingS = variant 0
- coarbitrary _ = variant 1 -- ok?
-
-{-
-instance Arbitrary Char where
- arbitrary = choose ('\0', '\255') -- since we have to test words, unlines too
- coarbitrary c = variant (ord c `rem` 16)
-
-instance Arbitrary Word8 where
- arbitrary = choose (minBound, maxBound)
- coarbitrary c = variant (fromIntegral ((fromIntegral c) `rem` 16))
--}
-
-instance Random Word8 where
- randomR = integralRandomR
- random = randomR (minBound,maxBound)
-
-instance Random Int64 where
- randomR = integralRandomR
- random = randomR (minBound,maxBound)
-
-integralRandomR :: (Integral a, RandomGen g) => (a,a) -> g -> (a,g)
-integralRandomR (a,b) g = case randomR (fromIntegral a :: Integer,
- fromIntegral b :: Integer) g of
- (x,g) -> (fromIntegral x, g)
-
-instance Arbitrary L.ByteString where
- arbitrary = arbitrary >>= return . L.fromChunks . filter (not. P.null) -- maintain the invariant.
- coarbitrary s = coarbitrary (L.unpack s)
-
-instance Arbitrary P.ByteString where
- arbitrary = P.pack `fmap` arbitrary
- coarbitrary s = coarbitrary (P.unpack s)
-
-------------------------------------------------------------------------
---
--- We're doing two forms of testing here. Firstly, model based testing.
--- For our Lazy and strict bytestring types, we have model types:
---
--- i.e. Lazy == Byte
--- \\ //
--- List
---
--- That is, the Lazy type can be modeled by functions in both the Byte
--- and List type. For each of the 3 models, we have a set of tests that
--- check those types match.
---
--- The Model class connects a type and its model type, via a conversion
--- function.
---
---
-class Model a b where
- model :: a -> b -- get the abstract vale from a concrete value
-
---
--- Connecting our Lazy and Strict types to their models. We also check
--- the data invariant on Lazy types.
---
--- These instances represent the arrows in the above diagram
---
-instance Model B P where model = abstr . checkInvariant
-instance Model P [W] where model = P.unpack
-instance Model P [Char] where model = PC.unpack
-instance Model B [W] where model = L.unpack . checkInvariant
-instance Model B [Char] where model = LC.unpack . checkInvariant
-
--- Types are trivially modeled by themselves
-instance Model Bool Bool where model = id
-instance Model Int Int where model = id
-instance Model Int64 Int64 where model = id
-instance Model Int64 Int where model = fromIntegral
-instance Model Word8 Word8 where model = id
-instance Model Ordering Ordering where model = id
-
--- More structured types are modeled recursively, using the NatTrans class from Gofer.
-class (Functor f, Functor g) => NatTrans f g where
- eta :: f a -> g a
-
--- The transformation of the same type is identity
-instance NatTrans [] [] where eta = id
-instance NatTrans Maybe Maybe where eta = id
-instance NatTrans ((->) X) ((->) X) where eta = id
-instance NatTrans ((->) W) ((->) W) where eta = id
-
--- We have a transformation of pairs, if the pairs are in Model
-instance Model f g => NatTrans ((,) f) ((,) g) where eta (f,a) = (model f, a)
-
--- And finally, we can take any (m a) to (n b), if we can Model m n, and a b
-instance (NatTrans m n, Model a b) => Model (m a) (n b) where model x = fmap model (eta x)
-
-------------------------------------------------------------------------
-
--- In a form more useful for QC testing (and it's lazy)
-checkInvariant :: L.ByteString -> L.ByteString
-checkInvariant cs0 = check cs0
- where check L.Empty = L.Empty
- check (L.Chunk c cs)
- | P.null c = error ("invariant violation: " ++ show cs0)
- | otherwise = L.Chunk c (check cs)
-
-abstr :: L.ByteString -> P.ByteString
-abstr = P.concat . L.toChunks
-
--- Some short hand.
-type X = Int
-type W = Word8
-type P = P.ByteString
-type B = L.ByteString
-
-------------------------------------------------------------------------
---
--- These comparison functions handle wrapping and equality.
---
--- A single class for these would be nice, but note that they differe in
--- the number of arguments, and those argument types, so we'd need HList
--- tricks. See here: http://okmij.org/ftp/Haskell/vararg-fn.lhs
---
-
-eq1 f g = \a ->
- model (f a) == g (model a)
-eq2 f g = \a b ->
- model (f a b) == g (model a) (model b)
-eq3 f g = \a b c ->
- model (f a b c) == g (model a) (model b) (model c)
-eq4 f g = \a b c d ->
- model (f a b c d) == g (model a) (model b) (model c) (model d)
-eq5 f g = \a b c d e ->
- model (f a b c d e) == g (model a) (model b) (model c) (model d) (model e)
-
---
--- And for functions that take non-null input
---
-eqnotnull1 f g = \x -> (not (isNull x)) ==> eq1 f g x
-eqnotnull2 f g = \x y -> (not (isNull y)) ==> eq2 f g x y
-eqnotnull3 f g = \x y z -> (not (isNull z)) ==> eq3 f g x y z
-
-class IsNull t where isNull :: t -> Bool
-instance IsNull L.ByteString where isNull = L.null
-instance IsNull P.ByteString where isNull = P.null
-
-main = do
- x <- getArgs
- let n = if null x then 100 else read . head $ x
- mapM_ (\(s,a) -> printf "%-25s: " s >> a n) tests
-
---
--- Test that, after loop fusion, our code behaves the same as the
--- unfused lazy or list models. Use -ddump-simpl to also check that
--- rules are firing for each case.
---
-tests = -- 29/5/06, all tests are fusing:
- [("down/down list", mytest prop_downdown_list) -- checked
- ,("down/filter list", mytest prop_downfilter_list) -- checked
- ,("down/map list", mytest prop_downmap_list) -- checked
- ,("filter/down lazy", mytest prop_filterdown_lazy) -- checked
- ,("filter/down list", mytest prop_filterdown_list) -- checked
- ,("filter/filter lazy", mytest prop_filterfilter_lazy) -- checked
- ,("filter/filter list", mytest prop_filterfilter_list) -- checked
- ,("filter/map lazy", mytest prop_filtermap_lazy) -- checked
- ,("filter/map list", mytest prop_filtermap_list) -- checked
- ,("filter/up lazy", mytest prop_filterup_lazy) -- checked
- ,("filter/up list", mytest prop_filterup_list) -- checked
- ,("map/down lazy", mytest prop_mapdown_lazy) -- checked
- ,("map/down list", mytest prop_mapdown_list) -- checked
- ,("map/filter lazy", mytest prop_mapfilter_lazy) -- checked
- ,("map/filter list", mytest prop_mapfilter_list) -- checked
- ,("map/map lazy", mytest prop_mapmap_lazy) -- checked
- ,("map/map list", mytest prop_mapmap_list) -- checked
- ,("map/up lazy", mytest prop_mapup_lazy) -- checked
- ,("map/up list", mytest prop_mapup_list) -- checked
- ,("up/filter lazy", mytest prop_upfilter_lazy) -- checked
- ,("up/filter list", mytest prop_upfilter_list) -- checked
- ,("up/map lazy", mytest prop_upmap_lazy) -- checked
- ,("up/map list", mytest prop_upmap_list) -- checked
- ,("up/up lazy", mytest prop_upup_lazy) -- checked
- ,("up/up list", mytest prop_upup_list) -- checked
- ,("noacc/noacc lazy", mytest prop_noacc_noacc_lazy) -- checked
- ,("noacc/noacc list", mytest prop_noacc_noacc_list) -- checked
- ,("noacc/up lazy", mytest prop_noacc_up_lazy) -- checked
- ,("noacc/up list", mytest prop_noacc_up_list) -- checked
- ,("up/noacc lazy", mytest prop_up_noacc_lazy) -- checked
- ,("up/noacc list", mytest prop_up_noacc_list) -- checked
- ,("map/noacc lazy", mytest prop_map_noacc_lazy) -- checked
- ,("map/noacc list", mytest prop_map_noacc_list) -- checked
- ,("noacc/map lazy", mytest prop_noacc_map_lazy) -- checked
- ,("noacc/map list", mytest prop_noacc_map_list) -- checked
- ,("filter/noacc lazy", mytest prop_filter_noacc_lazy) -- checked
- ,("filter/noacc list", mytest prop_filter_noacc_list) -- checked
- ,("noacc/filter lazy", mytest prop_noacc_filter_lazy) -- checked
- ,("noacc/filter list", mytest prop_noacc_filter_list) -- checked
- ,("noacc/down lazy", mytest prop_noacc_down_lazy) -- checked
- ,("noacc/down list", mytest prop_noacc_down_list) -- checked
--- ,("down/noacc lazy", mytest prop_down_noacc_lazy) -- checked
- ,("down/noacc list", mytest prop_down_noacc_list) -- checked
-
-
- ,("length/loop list", mytest prop_lengthloop_list)
--- ,("length/loop lazy", mytest prop_lengthloop_lazy)
- ,("maximum/loop list", mytest prop_maximumloop_list)
--- ,("maximum/loop lazy", mytest prop_maximumloop_lazy)
- ,("minimum/loop list", mytest prop_minimumloop_list)
--- ,("minimum/loop lazy", mytest prop_minimumloop_lazy)
-
- ]
-
-prop_upup_list = eq3
- (\f g -> P.foldl f (0::Int) . P.scanl g (0::W))
- ((\f g -> foldl f (0::Int) . scanl g (0::W)) :: (X -> W -> X) -> (W -> W -> W) -> [W] -> X)
-
-prop_upup_lazy = eq3
- (\f g -> L.foldl f (0::X) . L.scanl g (0::W))
- (\f g -> P.foldl f (0::X) . P.scanl g (0::W))
-
-prop_mapmap_list = eq3
- (\f g -> P.map f . P.map g)
- ((\f g -> map f . map g) :: (W -> W) -> (W -> W) -> [W] -> [W])
-
-prop_mapmap_lazy = eq3
- (\f g -> L.map f . L.map g)
- (\f g -> P.map f . P.map g)
-
-prop_filterfilter_list = eq3
- (\f g -> P.filter f . P.filter g)
- ((\f g -> filter f . filter g) :: (W -> Bool) -> (W -> Bool) -> [W] -> [W])
-
-prop_filterfilter_lazy = eq3
- (\f g -> L.filter f . L.filter g)
- (\f g -> P.filter f . P.filter g)
-
-prop_mapfilter_list = eq3
- (\f g -> P.filter f . P.map g)
- ((\f g -> filter f . map g) :: (W -> Bool) -> (W -> W) -> [W] -> [W])
-
-prop_mapfilter_lazy = eq3
- (\f g -> L.filter f . L.map g)
- (\f g -> P.filter f . P.map g)
-
-prop_filtermap_list = eq3
- (\f g -> P.map f . P.filter g)
- ((\f g -> map f . filter g) :: (W -> W) -> (W -> Bool) -> [W] -> [W])
-
-prop_filtermap_lazy = eq3
- (\f g -> L.map f . L.filter g)
- (\f g -> P.map f . P.filter g)
-
-prop_mapup_list = eq3
- (\f g -> P.foldl g (0::W) . P.map f)
- ((\f g -> foldl g (0::W) . map f) :: (W -> W) -> (W -> W -> W) -> [W] -> W)
-
-prop_mapup_lazy = eq3
- (\f g -> L.foldl g (0::W) . L.map f) -- n.b. scan doesn't fuse here, atm
- (\f g -> P.foldl g (0::W) . P.map f)
-
-prop_upmap_list = eq3
- (\f g -> P.map f . P.scanl g (0::W))
- ((\f g -> map f . scanl g (0::W)) :: (W -> W) -> (W -> W -> W) -> [W] -> [W])
-
-prop_upmap_lazy = eq3
- (\f g -> L.map f . L.scanl g (0::W))
- (\f g -> P.map f . P.scanl g (0::W))
-
-prop_filterup_list = eq3
- (\f g -> P.foldl g (0::W) . P.filter f)
- ((\f g -> foldl g (0::W) . filter f) :: (W -> Bool) -> (W -> W -> W) -> [W] -> W)
-
-prop_filterup_lazy = eq3
- (\f g -> L.foldl g (0::W) . L.filter f)
- (\f g -> P.foldl g (0::W) . P.filter f)
-
-prop_upfilter_list = eq3
- (\f g -> P.filter f . P.scanl g (0::W))
- ((\f g -> filter f . scanl g (0::W)) :: (W -> Bool) -> (W -> W -> W) -> [W] -> [W])
-
-prop_upfilter_lazy = eq3
- (\f g -> L.filter f . L.scanl g (0::W))
- (\f g -> P.filter f . P.scanl g (0::W))
-
-prop_downdown_list = eq3
- (\f g -> P.foldr f (0::X) . P.scanr g (0::W))
- ((\f g -> foldr f (0::X) . scanr g (0::W)) :: (W -> X -> X) -> (W -> W -> W) -> [W] -> X)
-
-{-
--- no lazy scanr yet
-prop_downdown_lazy = eq3
- (\f g -> L.foldr f (0::X) . L.scanr g (0::W))
- (\f g -> P.foldr f (0::X) . P.scanr g (0::W))
--}
-
-prop_mapdown_list = eq3
- (\f g -> P.foldr g (0::W) . P.map f)
- ((\f g -> foldr g (0::W) . map f) :: (W -> W) -> (W -> W -> W) -> [W] -> W)
-
-prop_mapdown_lazy = eq3
- (\f g -> L.foldr g (0::W) . L.map f) -- n.b. scan doesn't fuse here, atm
- (\f g -> P.foldr g (0::W) . P.map f)
-
-prop_downmap_list = eq3
- (\f g -> P.map f . P.scanr g (0::W))
- ((\f g -> map f . scanr g (0::W)) :: (W -> W) -> (W -> W -> W) -> [W] -> [W])
-
-{-
-prop_downmap_lazy = eq3
- (\f g -> L.map f . L.scanr g (0::W))
- (\f g -> P.map f . P.scanr g (0::W))
--}
-
-prop_filterdown_list = eq3
- (\f g -> P.foldr g (0::W) . P.filter f)
- ((\f g -> foldr g (0::W) . filter f) :: (W -> Bool) -> (W -> W -> W) -> [W] -> W)
-
-prop_filterdown_lazy = eq3
- (\f g -> L.foldr g (0::W) . L.filter f) -- n.b. scan doesn't fuse here, atm
- (\f g -> P.foldr g (0::W) . P.filter f)
-
-prop_downfilter_list = eq3
- (\f g -> P.filter f . P.scanr g (0::W))
- ((\f g -> filter f . scanr g (0::W)) :: (W -> Bool) -> (W -> W -> W) -> [W] -> [W])
-
-{-
-prop_downfilter_lazy = eq3
- (\f g -> L.filter f . L.scanr g (0::W))
- (\f g -> P.filter f . P.scanr g (0::W))
--}
-
-prop_noacc_noacc_list = eq5
- (\f g h i -> (P.map f . P.filter g) . (P.map h . P.filter i))
- ((\f g h i -> ( map f . filter g) . ( map h . filter i))
- :: (W -> W) -> (W -> Bool) -> (W -> W) -> (W -> Bool) -> [W] -> [W])
-
-prop_noacc_noacc_lazy = eq5
- (\f g h i -> (L.map f . L.filter g) . (L.map h . L.filter i))
- (\f g h i -> (P.map f . P.filter g) . (P.map h . P.filter i))
-
-prop_noacc_up_list = eq4
- ( \g h i -> P.foldl g (0::W) . (P.map h . P.filter i))
- ((\g h i -> foldl g (0::W) . ( map h . filter i))
- :: (W -> W -> W) -> (W -> W) -> (W -> Bool) -> [W] -> W)
-
-prop_noacc_up_lazy = eq4
- (\g h i -> L.foldl g (0::W) . (L.map h . L.filter i))
- (\g h i -> P.foldl g (0::W) . (P.map h . P.filter i))
-
-prop_up_noacc_list = eq4
- ( \g h i -> (P.map h . P.filter i) . P.scanl g (0::W))
- ((\g h i -> ( map h . filter i) . scanl g (0::W))
- :: (W -> W -> W) -> (W -> W) -> (W -> Bool) -> [W] -> [W])
-
-prop_up_noacc_lazy = eq4
- (\g h i -> (L.map h . L.filter i) . L.scanl g (0::W))
- (\g h i -> (P.map h . P.filter i) . P.scanl g (0::W))
-
-prop_map_noacc_list = eq4
- ( \g h i -> (P.map h . P.filter i) . P.map g)
- ((\g h i -> ( map h . filter i) . map g)
- :: (W -> W) -> (W -> W) -> (W -> Bool) -> [W] -> [W])
-
-prop_map_noacc_lazy = eq4
- (\g h i -> (L.map h . L.filter i) . L.map g)
- (\g h i -> (P.map h . P.filter i) . P.map g)
-
-prop_noacc_map_list = eq4
- ( \g h i -> P.map g . (P.map h . P.filter i))
- ((\g h i -> map g . ( map h . filter i))
- :: (W -> W) -> (W -> W) -> (W -> Bool) -> [W] -> [W])
-
-prop_noacc_map_lazy = eq4
- (\g h i -> L.map g . (L.map h . L.filter i))
- (\g h i -> P.map g . (P.map h . P.filter i))
-
-prop_filter_noacc_list = eq4
- ( \g h i -> (P.map h . P.filter i) . P.filter g)
- ((\g h i -> ( map h . filter i) . filter g)
- :: (W -> Bool) -> (W -> W) -> (W -> Bool) -> [W] -> [W])
-
-prop_filter_noacc_lazy = eq4
- (\g h i -> (L.map h . L.filter i) . L.filter g)
- (\g h i -> (P.map h . P.filter i) . P.filter g)
-
-prop_noacc_filter_list = eq4
- ( \g h i -> P.filter g . (P.map h . P.filter i))
- ((\g h i -> filter g . ( map h . filter i))
- :: (W -> Bool) -> (W -> W) -> (W -> Bool) -> [W] -> [W])
-
-prop_noacc_filter_lazy = eq4
- (\g h i -> L.filter g . (L.map h . L.filter i))
- (\g h i -> P.filter g . (P.map h . P.filter i))
-
-prop_noacc_down_list = eq4
- ( \g h i -> P.foldr g (0::W) . (P.map h . P.filter i))
- ((\g h i -> foldr g (0::W) . ( map h . filter i))
- :: (W -> W -> W) -> (W -> W) -> (W -> Bool) -> [W] -> W)
-
-prop_noacc_down_lazy = eq4
- (\g h i -> L.foldr g (0::W) . (L.map h . L.filter i))
- (\g h i -> P.foldr g (0::W) . (P.map h . P.filter i))
-
-prop_down_noacc_list = eq4
- ( \g h i -> (P.map h . P.filter i) . P.scanr g (0::W))
- ((\g h i -> ( map h . filter i) . scanr g (0::W))
- :: (W -> W -> W) -> (W -> W) -> (W -> Bool) -> [W] -> [W])
-
-{-
-prop_down_noacc_lazy = eq4
- (\g h i -> (L.map h . L.filter i) . L.scanl g (0::W))
- (\g h i -> (P.map h . P.filter i) . P.scanl g (0::W))
--}
-
-------------------------------------------------------------------------
-
-prop_lengthloop_list = eq2
- (\f -> P.length . P.filter f)
- ((\f -> length . filter f) :: (W -> Bool) -> [W] -> X)
-
-{-
-prop_lengthloop_lazy = eq2
- (\f g -> L.length . L.filter f) -- n.b. scan doesn't fuse here, atm
- (\f g -> P.length . P.filter f)
--}
-
-prop_maximumloop_list = eqnotnull2
- (\f -> P.maximum . P.map f) -- so we don't get null strings
- ((\f -> maximum . map f) :: (W -> W) -> [W] -> W)
-
-{-
-prop_maximumloop_lazy = eq2
- (\f g -> L.maximum . L.filter f) -- n.b. scan doesn't fuse here, atm
- (\f g -> P.maximum . P.filter f)
--}
-
-prop_minimumloop_list = eqnotnull2
- (\f -> P.minimum . P.map f)
- ((\f -> minimum . map f) :: (W -> W) -> [W] -> W)
-
-{-
-prop_minimumloop_lazy = eq2
- (\f g -> L.minimum . L.filter f) -- n.b. scan doesn't fuse here, atm
- (\f g -> P.minimum . P.filter f)
--}
-
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring004.stdout b/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring004.stdout
deleted file mode 100644
index cbc88dbf91..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring004.stdout
+++ /dev/null
@@ -1,45 +0,0 @@
-down/down list : OK, 100 tests.
-down/filter list : OK, 100 tests.
-down/map list : OK, 100 tests.
-filter/down lazy : OK, 100 tests.
-filter/down list : OK, 100 tests.
-filter/filter lazy : OK, 100 tests.
-filter/filter list : OK, 100 tests.
-filter/map lazy : OK, 100 tests.
-filter/map list : OK, 100 tests.
-filter/up lazy : OK, 100 tests.
-filter/up list : OK, 100 tests.
-map/down lazy : OK, 100 tests.
-map/down list : OK, 100 tests.
-map/filter lazy : OK, 100 tests.
-map/filter list : OK, 100 tests.
-map/map lazy : OK, 100 tests.
-map/map list : OK, 100 tests.
-map/up lazy : OK, 100 tests.
-map/up list : OK, 100 tests.
-up/filter lazy : OK, 100 tests.
-up/filter list : OK, 100 tests.
-up/map lazy : OK, 100 tests.
-up/map list : OK, 100 tests.
-up/up lazy : OK, 100 tests.
-up/up list : OK, 100 tests.
-noacc/noacc lazy : OK, 100 tests.
-noacc/noacc list : OK, 100 tests.
-noacc/up lazy : OK, 100 tests.
-noacc/up list : OK, 100 tests.
-up/noacc lazy : OK, 100 tests.
-up/noacc list : OK, 100 tests.
-map/noacc lazy : OK, 100 tests.
-map/noacc list : OK, 100 tests.
-noacc/map lazy : OK, 100 tests.
-noacc/map list : OK, 100 tests.
-filter/noacc lazy : OK, 100 tests.
-filter/noacc list : OK, 100 tests.
-noacc/filter lazy : OK, 100 tests.
-noacc/filter list : OK, 100 tests.
-noacc/down lazy : OK, 100 tests.
-noacc/down list : OK, 100 tests.
-down/noacc list : OK, 100 tests.
-length/loop list : OK, 100 tests.
-maximum/loop list : OK, 100 tests.
-minimum/loop list : OK, 100 tests.
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring005.hs b/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring005.hs
deleted file mode 100644
index 7bd37da004..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring005.hs
+++ /dev/null
@@ -1,1138 +0,0 @@
-#!/usr/bin/env runhaskell
---
--- Uses multi-param type classes
---
-
-import Test.QuickCheck
-import Text.Show.Functions
-
-import Data.Char
-import Data.Int
-import Data.List
-import Data.Maybe
-import Data.Word
-
-import System.IO
-import System.Environment
-import System.IO.Unsafe
-import System.Random
-
-import Control.Monad ( liftM2 )
-import Control.Monad.Instances ()
-
-import Text.Printf
-import Debug.Trace
-
-import Foreign.Ptr
-
-import Data.ByteString.Lazy (ByteString(..), pack , unpack)
-import qualified Data.ByteString.Lazy as L
-import qualified Data.ByteString.Lazy.Internal as L
-
-import Data.ByteString.Fusion
-import qualified Data.ByteString as P
-import qualified Data.ByteString.Unsafe as P
-import qualified Data.ByteString.Lazy as L
-
-import qualified Data.ByteString.Char8 as PC
-import qualified Data.ByteString.Lazy.Char8 as LC
-import qualified Data.ByteString as P
-import qualified Data.ByteString.Internal as P
-import qualified Data.ByteString.Char8 as C
-import qualified Data.ByteString.Lazy.Char8 as D
-import Data.ByteString.Fusion
-
-import Prelude hiding (abs)
-
--- Enable this to get verbose test output. Including the actual tests.
-debug = False
-
-mytest :: Testable a => a -> Int -> IO ()
-mytest a n = mycheck defaultConfig
- { configMaxTest=n
- , configEvery= \n args -> if debug then show n ++ ":\n" ++ unlines args else [] } a
-
-mycheck :: Testable a => Config -> a -> IO ()
-mycheck config a =
- do let rnd = mkStdGen 99
- mytests config (evaluate a) rnd 0 0 []
-
-mytests :: Config -> Gen Result -> StdGen -> Int -> Int -> [[String]] -> IO ()
-mytests config gen rnd0 ntest nfail stamps
- | ntest == configMaxTest config = do done "OK," ntest stamps
- | nfail == configMaxFail config = do done "Arguments exhausted after" ntest stamps
- | otherwise =
- do putStr (configEvery config ntest (arguments result)) >> hFlush stdout
- case ok result of
- Nothing ->
- mytests config gen rnd1 ntest (nfail+1) stamps
- Just True ->
- mytests config gen rnd1 (ntest+1) nfail (stamp result:stamps)
- Just False ->
- putStr ( "Falsifiable after "
- ++ show ntest
- ++ " tests:\n"
- ++ unlines (arguments result)
- ) >> hFlush stdout
- where
- result = generate (configSize config ntest) rnd2 gen
- (rnd1,rnd2) = split rnd0
-
-done :: String -> Int -> [[String]] -> IO ()
-done mesg ntest stamps =
- do putStr ( mesg ++ " " ++ show ntest ++ " tests" ++ table )
- where
- table = display
- . map entry
- . reverse
- . sort
- . map pairLength
- . group
- . sort
- . filter (not . null)
- $ stamps
-
- display [] = ".\n"
- display [x] = " (" ++ x ++ ").\n"
- display xs = ".\n" ++ unlines (map (++ ".") xs)
-
- pairLength xss@(xs:_) = (length xss, xs)
- entry (n, xs) = percentage n ntest
- ++ " "
- ++ concat (intersperse ", " xs)
-
- percentage n m = show ((100 * n) `div` m) ++ "%"
-
-------------------------------------------------------------------------
-
-instance Arbitrary Char where
- arbitrary = choose ('a', 'i')
- coarbitrary c = variant (ord c `rem` 4)
-
-instance (Arbitrary a, Arbitrary b) => Arbitrary (PairS a b) where
- arbitrary = liftM2 (:*:) arbitrary arbitrary
- coarbitrary (a :*: b) = coarbitrary a . coarbitrary b
-
-instance Arbitrary Word8 where
- arbitrary = choose (97, 105)
- coarbitrary c = variant (fromIntegral ((fromIntegral c) `rem` 4))
-
-instance Arbitrary Int64 where
- arbitrary = sized $ \n -> choose (-fromIntegral n,fromIntegral n)
- coarbitrary n = variant (fromIntegral (if n >= 0 then 2*n else 2*(-n) + 1))
-
-instance Arbitrary a => Arbitrary (MaybeS a) where
- arbitrary = do a <- arbitrary ; elements [NothingS, JustS a]
- coarbitrary NothingS = variant 0
- coarbitrary _ = variant 1 -- ok?
-
-{-
-instance Arbitrary Char where
- arbitrary = choose ('\0', '\255') -- since we have to test words, unlines too
- coarbitrary c = variant (ord c `rem` 16)
-
-instance Arbitrary Word8 where
- arbitrary = choose (minBound, maxBound)
- coarbitrary c = variant (fromIntegral ((fromIntegral c) `rem` 16))
--}
-
-instance Random Word8 where
- randomR = integralRandomR
- random = randomR (minBound,maxBound)
-
-instance Random Int64 where
- randomR = integralRandomR
- random = randomR (minBound,maxBound)
-
-integralRandomR :: (Integral a, RandomGen g) => (a,a) -> g -> (a,g)
-integralRandomR (a,b) g = case randomR (fromIntegral a :: Integer,
- fromIntegral b :: Integer) g of
- (x,g) -> (fromIntegral x, g)
-
-instance Arbitrary L.ByteString where
- arbitrary = arbitrary >>= return . L.fromChunks . filter (not. P.null) -- maintain the invariant.
- coarbitrary s = coarbitrary (L.unpack s)
-
-instance Arbitrary P.ByteString where
- arbitrary = P.pack `fmap` arbitrary
- coarbitrary s = coarbitrary (P.unpack s)
-
-------------------------------------------------------------------------
---
--- We're doing two forms of testing here. Firstly, model based testing.
--- For our Lazy and strict bytestring types, we have model types:
---
--- i.e. Lazy == Byte
--- \\ //
--- List
---
--- That is, the Lazy type can be modeled by functions in both the Byte
--- and List type. For each of the 3 models, we have a set of tests that
--- check those types match.
---
--- The Model class connects a type and its model type, via a conversion
--- function.
---
---
-class Model a b where
- model :: a -> b -- get the abstract vale from a concrete value
-
---
--- Connecting our Lazy and Strict types to their models. We also check
--- the data invariant on Lazy types.
---
--- These instances represent the arrows in the above diagram
---
-instance Model B P where model = abstr . checkInvariant
-instance Model P [W] where model = P.unpack
-instance Model P [Char] where model = PC.unpack
-instance Model B [W] where model = L.unpack . checkInvariant
-instance Model B [Char] where model = LC.unpack . checkInvariant
-
--- Types are trivially modeled by themselves
-instance Model Bool Bool where model = id
-instance Model Int Int where model = id
-instance Model Int64 Int64 where model = id
-instance Model Int64 Int where model = fromIntegral
-instance Model Word8 Word8 where model = id
-instance Model Ordering Ordering where model = id
-
--- More structured types are modeled recursively, using the NatTrans class from Gofer.
-class (Functor f, Functor g) => NatTrans f g where
- eta :: f a -> g a
-
--- The transformation of the same type is identity
-instance NatTrans [] [] where eta = id
-instance NatTrans Maybe Maybe where eta = id
-instance NatTrans ((->) X) ((->) X) where eta = id
-instance NatTrans ((->) W) ((->) W) where eta = id
-
--- We have a transformation of pairs, if the pairs are in Model
-instance Model f g => NatTrans ((,) f) ((,) g) where eta (f,a) = (model f, a)
-
--- And finally, we can take any (m a) to (n b), if we can Model m n, and a b
-instance (NatTrans m n, Model a b) => Model (m a) (n b) where model x = fmap model (eta x)
-
-------------------------------------------------------------------------
-
--- In a form more useful for QC testing (and it's lazy)
-checkInvariant :: L.ByteString -> L.ByteString
-checkInvariant cs0 = check cs0
- where check L.Empty = L.Empty
- check (L.Chunk c cs)
- | P.null c = error ("invariant violation: " ++ show cs0)
- | otherwise = L.Chunk c (check cs)
-
-abstr :: L.ByteString -> P.ByteString
-abstr = P.concat . L.toChunks
-
--- Some short hand.
-type X = Int
-type W = Word8
-type P = P.ByteString
-type B = L.ByteString
-
-------------------------------------------------------------------------
---
--- These comparison functions handle wrapping and equality.
---
--- A single class for these would be nice, but note that they differe in
--- the number of arguments, and those argument types, so we'd need HList
--- tricks. See here: http://okmij.org/ftp/Haskell/vararg-fn.lhs
---
-
-eq1 f g = \a ->
- model (f a) == g (model a)
-eq2 f g = \a b ->
- model (f a b) == g (model a) (model b)
-eq3 f g = \a b c ->
- model (f a b c) == g (model a) (model b) (model c)
-eq4 f g = \a b c d ->
- model (f a b c d) == g (model a) (model b) (model c) (model d)
-eq5 f g = \a b c d e ->
- model (f a b c d e) == g (model a) (model b) (model c) (model d) (model e)
-
---
--- And for functions that take non-null input
---
-eqnotnull1 f g = \x -> (not (isNull x)) ==> eq1 f g x
-eqnotnull2 f g = \x y -> (not (isNull y)) ==> eq2 f g x y
-eqnotnull3 f g = \x y z -> (not (isNull z)) ==> eq3 f g x y z
-
-class IsNull t where isNull :: t -> Bool
-instance IsNull L.ByteString where isNull = L.null
-instance IsNull P.ByteString where isNull = P.null
-
-------------------------------------------------------------------------
-
---
--- These are miscellaneous tests left over. Or else they test some
--- property internal to a type (i.e. head . sort == minimum), without
--- reference to a model type.
---
-
-invariant :: L.ByteString -> Bool
-invariant L.Empty = True
-invariant (L.Chunk c cs) = not (P.null c) && invariant cs
-
-prop_invariant = invariant
-
-prop_eq_refl x = x == (x :: ByteString)
-prop_eq_symm x y = (x == y) == (y == (x :: ByteString))
-
-prop_eq1 xs = xs == (unpack . pack $ xs)
-prop_eq2 xs = xs == (xs :: ByteString)
-prop_eq3 xs ys = (xs == ys) == (unpack xs == unpack ys)
-
-prop_compare1 xs = (pack xs `compare` pack xs) == EQ
-prop_compare2 xs c = (pack (xs++[c]) `compare` pack xs) == GT
-prop_compare3 xs c = (pack xs `compare` pack (xs++[c])) == LT
-
-prop_compare4 xs = (not (null xs)) ==> (pack xs `compare` L.empty) == GT
-prop_compare5 xs = (not (null xs)) ==> (L.empty `compare` pack xs) == LT
-prop_compare6 xs ys = (not (null ys)) ==> (pack (xs++ys) `compare` pack xs) == GT
-
-prop_compare7 x y = x `compare` y == (L.singleton x `compare` L.singleton y)
-prop_compare8 xs ys = xs `compare` ys == (L.pack xs `compare` L.pack ys)
-
-prop_empty1 = L.length L.empty == 0
-prop_empty2 = L.unpack L.empty == []
-
-prop_packunpack s = (L.unpack . L.pack) s == id s
-prop_unpackpack s = (L.pack . L.unpack) s == id s
-
-prop_null xs = null (L.unpack xs) == L.null xs
-
-prop_length1 xs = fromIntegral (length xs) == L.length (L.pack xs)
-
-prop_length2 xs = L.length xs == length1 xs
- where length1 ys
- | L.null ys = 0
- | otherwise = 1 + length1 (L.tail ys)
-
-prop_cons1 c xs = unpack (L.cons c (pack xs)) == (c:xs)
-prop_cons2 c = L.singleton c == (c `L.cons` L.empty)
-prop_cons3 c = unpack (L.singleton c) == (c:[])
-prop_cons4 c = (c `L.cons` L.empty) == pack (c:[])
-
-prop_snoc1 xs c = xs ++ [c] == unpack ((pack xs) `L.snoc` c)
-
-prop_head xs = (not (null xs)) ==> head xs == (L.head . pack) xs
-prop_head1 xs = not (L.null xs) ==> L.head xs == head (L.unpack xs)
-
-prop_tail xs = not (L.null xs) ==> L.tail xs == pack (tail (unpack xs))
-prop_tail1 xs = (not (null xs)) ==> tail xs == (unpack . L.tail . pack) xs
-
-prop_last xs = (not (null xs)) ==> last xs == (L.last . pack) xs
-
-prop_init xs =
- (not (null xs)) ==>
- init xs == (unpack . L.init . pack) xs
-
-prop_append1 xs = (xs ++ xs) == (unpack $ pack xs `L.append` pack xs)
-prop_append2 xs ys = (xs ++ ys) == (unpack $ pack xs `L.append` pack ys)
-prop_append3 xs ys = L.append xs ys == pack (unpack xs ++ unpack ys)
-
-prop_map1 f xs = L.map f (pack xs) == pack (map f xs)
-prop_map2 f g xs = L.map f (L.map g xs) == L.map (f . g) xs
-prop_map3 f xs = map f xs == (unpack . L.map f . pack) xs
-
-prop_filter1 c xs = (filter (/=c) xs) == (unpack $ L.filter (/=c) (pack xs))
-prop_filter2 p xs = (filter p xs) == (unpack $ L.filter p (pack xs))
-
-prop_reverse xs = reverse xs == (unpack . L.reverse . pack) xs
-prop_reverse1 xs = L.reverse (pack xs) == pack (reverse xs)
-prop_reverse2 xs = reverse (unpack xs) == (unpack . L.reverse) xs
-
-prop_transpose xs = (transpose xs) == ((map unpack) . L.transpose . (map pack)) xs
-
-prop_foldl f c xs = L.foldl f c (pack xs) == foldl f c xs
- where _ = c :: Char
-
-prop_foldr f c xs = L.foldl f c (pack xs) == foldl f c xs
- where _ = c :: Char
-
-prop_foldl_1 xs = L.foldl (\xs c -> c `L.cons` xs) L.empty xs == L.reverse xs
-prop_foldr_1 xs = L.foldr (\c xs -> c `L.cons` xs) L.empty xs == id xs
-
-prop_foldl1_1 xs =
- (not . L.null) xs ==>
- L.foldl1 (\x c -> if c > x then c else x) xs ==
- L.foldl (\x c -> if c > x then c else x) 0 xs
-
-prop_foldl1_2 xs =
- (not . L.null) xs ==>
- L.foldl1 const xs == L.head xs
-
-prop_foldl1_3 xs =
- (not . L.null) xs ==>
- L.foldl1 (flip const) xs == L.last xs
-
-prop_foldr1_1 xs =
- (not . L.null) xs ==>
- L.foldr1 (\c x -> if c > x then c else x) xs ==
- L.foldr (\c x -> if c > x then c else x) 0 xs
-
-prop_foldr1_2 xs =
- (not . L.null) xs ==>
- L.foldr1 (flip const) xs == L.last xs
-
-prop_foldr1_3 xs =
- (not . L.null) xs ==>
- L.foldr1 const xs == L.head xs
-
-prop_concat1 xs = (concat [xs,xs]) == (unpack $ L.concat [pack xs, pack xs])
-prop_concat2 xs = (concat [xs,[]]) == (unpack $ L.concat [pack xs, pack []])
-prop_concat3 xss = L.concat (map pack xss) == pack (concat xss)
-
-prop_concatMap xs = L.concatMap L.singleton xs == (pack . concatMap (:[]) . unpack) xs
-
-prop_any xs a = (any (== a) xs) == (L.any (== a) (pack xs))
-prop_all xs a = (all (== a) xs) == (L.all (== a) (pack xs))
-
-prop_maximum xs = (not (null xs)) ==> (maximum xs) == (L.maximum ( pack xs ))
-prop_minimum xs = (not (null xs)) ==> (minimum xs) == (L.minimum ( pack xs ))
-
-prop_replicate1 n c =
- (n >= 0) ==> unpack (L.replicate (fromIntegral n) c) == replicate n c
-
-prop_replicate2 c = unpack (L.replicate 0 c) == replicate 0 c
-
-prop_take1 i xs = L.take (fromIntegral i) (pack xs) == pack (take i xs)
-prop_drop1 i xs = L.drop (fromIntegral i) (pack xs) == pack (drop i xs)
-
-prop_splitAt i xs = collect (i >= 0 && i < length xs) $
- L.splitAt (fromIntegral i) (pack xs) == let (a,b) = splitAt i xs in (pack a, pack b)
-
-prop_takeWhile f xs = L.takeWhile f (pack xs) == pack (takeWhile f xs)
-prop_dropWhile f xs = L.dropWhile f (pack xs) == pack (dropWhile f xs)
-
-prop_break f xs = L.break f (pack xs) ==
- let (a,b) = break f xs in (pack a, pack b)
-
-prop_breakspan xs c = L.break (==c) xs == L.span (/=c) xs
-
-prop_span xs a = (span (/=a) xs) == (let (x,y) = L.span (/=a) (pack xs) in (unpack x, unpack y))
-
--- prop_breakByte xs c = L.break (== c) xs == L.breakByte c xs
-
--- prop_spanByte c xs = (L.span (==c) xs) == L.spanByte c xs
-
-prop_split c xs = (map L.unpack . map checkInvariant . L.split c $ xs)
- == (map P.unpack . P.split c . P.pack . L.unpack $ xs)
-
-prop_splitWith f xs = (l1 == l2 || l1 == l2+1) &&
- sum (map L.length splits) == L.length xs - l2
- where splits = L.splitWith f xs
- l1 = fromIntegral (length splits)
- l2 = L.length (L.filter f xs)
-
-prop_joinsplit c xs = L.intercalate (pack [c]) (L.split c xs) == id xs
-
-prop_group xs = group xs == (map unpack . L.group . pack) xs
--- prop_groupBy f xs = groupBy f xs == (map unpack . L.groupBy f . pack) xs
-
--- prop_joinjoinByte xs ys c = L.joinWithByte c xs ys == L.join (L.singleton c) [xs,ys]
-
-prop_index xs =
- not (null xs) ==>
- forAll indices $ \i -> (xs !! i) == L.pack xs `L.index` (fromIntegral i)
- where indices = choose (0, length xs -1)
-
-prop_elemIndex xs c = (elemIndex c xs) == fmap fromIntegral (L.elemIndex c (pack xs))
-
-prop_elemIndices xs c = elemIndices c xs == map fromIntegral (L.elemIndices c (pack xs))
-
-prop_count c xs = length (L.elemIndices c xs) == fromIntegral (L.count c xs)
-
-prop_findIndex xs f = (findIndex f xs) == fmap fromIntegral (L.findIndex f (pack xs))
-prop_findIndicies xs f = (findIndices f xs) == map fromIntegral (L.findIndices f (pack xs))
-
-prop_elem xs c = (c `elem` xs) == (c `L.elem` (pack xs))
-prop_notElem xs c = (c `notElem` xs) == (L.notElem c (pack xs))
-prop_elem_notelem xs c = c `L.elem` xs == not (c `L.notElem` xs)
-
--- prop_filterByte xs c = L.filterByte c xs == L.filter (==c) xs
--- prop_filterByte2 xs c = unpack (L.filterByte c xs) == filter (==c) (unpack xs)
-
--- prop_filterNotByte xs c = L.filterNotByte c xs == L.filter (/=c) xs
--- prop_filterNotByte2 xs c = unpack (L.filterNotByte c xs) == filter (/=c) (unpack xs)
-
-prop_find p xs = find p xs == L.find p (pack xs)
-
-prop_find_findIndex p xs =
- L.find p xs == case L.findIndex p xs of
- Just n -> Just (xs `L.index` n)
- _ -> Nothing
-
-prop_isPrefixOf xs ys = isPrefixOf xs ys == (pack xs `L.isPrefixOf` pack ys)
-
-{-
-prop_sort1 xs = sort xs == (unpack . L.sort . pack) xs
-prop_sort2 xs = (not (null xs)) ==> (L.head . L.sort . pack $ xs) == minimum xs
-prop_sort3 xs = (not (null xs)) ==> (L.last . L.sort . pack $ xs) == maximum xs
-prop_sort4 xs ys =
- (not (null xs)) ==>
- (not (null ys)) ==>
- (L.head . L.sort) (L.append (pack xs) (pack ys)) == min (minimum xs) (minimum ys)
-
-prop_sort5 xs ys =
- (not (null xs)) ==>
- (not (null ys)) ==>
- (L.last . L.sort) (L.append (pack xs) (pack ys)) == max (maximum xs) (maximum ys)
-
--}
-
-------------------------------------------------------------------------
--- Misc ByteString properties
-
-prop_nil1BB = P.length P.empty == 0
-prop_nil2BB = P.unpack P.empty == []
-
-prop_tailSBB xs = not (P.null xs) ==> P.tail xs == P.pack (tail (P.unpack xs))
-
-prop_nullBB xs = null (P.unpack xs) == P.null xs
-
-prop_lengthBB xs = P.length xs == length1 xs
- where
- length1 ys
- | P.null ys = 0
- | otherwise = 1 + length1 (P.tail ys)
-
-prop_lengthSBB xs = length xs == P.length (P.pack xs)
-
-prop_indexBB xs =
- not (null xs) ==>
- forAll indices $ \i -> (xs !! i) == P.pack xs `P.index` i
- where indices = choose (0, length xs -1)
-
-prop_unsafeIndexBB xs =
- not (null xs) ==>
- forAll indices $ \i -> (xs !! i) == P.pack xs `P.unsafeIndex` i
- where indices = choose (0, length xs -1)
-
-prop_mapfusionBB f g xs = P.map f (P.map g xs) == P.map (f . g) xs
-
-prop_filterBB f xs = P.filter f (P.pack xs) == P.pack (filter f xs)
-
-prop_filterfusionBB f g xs = P.filter f (P.filter g xs) == P.filter (\c -> f c && g c) xs
-
-prop_elemSBB x xs = P.elem x (P.pack xs) == elem x xs
-
-prop_takeSBB i xs = P.take i (P.pack xs) == P.pack (take i xs)
-prop_dropSBB i xs = P.drop i (P.pack xs) == P.pack (drop i xs)
-
-prop_splitAtSBB i xs = -- collect (i >= 0 && i < length xs) $
- P.splitAt i (P.pack xs) ==
- let (a,b) = splitAt i xs in (P.pack a, P.pack b)
-
-prop_foldlBB f c xs = P.foldl f c (P.pack xs) == foldl f c xs
- where types = c :: Char
-
-prop_scanlfoldlBB f z xs = not (P.null xs) ==> P.last (P.scanl f z xs) == P.foldl f z xs
-
-prop_foldrBB f c xs = P.foldl f c (P.pack xs) == foldl f c xs
- where types = c :: Char
-
-prop_takeWhileSBB f xs = P.takeWhile f (P.pack xs) == P.pack (takeWhile f xs)
-prop_dropWhileSBB f xs = P.dropWhile f (P.pack xs) == P.pack (dropWhile f xs)
-
-prop_spanSBB f xs = P.span f (P.pack xs) ==
- let (a,b) = span f xs in (P.pack a, P.pack b)
-
-prop_breakSBB f xs = P.break f (P.pack xs) ==
- let (a,b) = break f xs in (P.pack a, P.pack b)
-
-prop_breakspan_1BB xs c = P.break (== c) xs == P.span (/= c) xs
-
-prop_linesSBB xs = C.lines (C.pack xs) == map C.pack (lines xs)
-
-prop_unlinesSBB xss = C.unlines (map C.pack xss) == C.pack (unlines xss)
-
-prop_wordsSBB xs =
- C.words (C.pack xs) == map C.pack (words xs)
-
-prop_unwordsSBB xss = C.unwords (map C.pack xss) == C.pack (unwords xss)
-
-prop_splitWithBB f xs = (l1 == l2 || l1 == l2+1) &&
- sum (map P.length splits) == P.length xs - l2
- where splits = P.splitWith f xs
- l1 = length splits
- l2 = P.length (P.filter f xs)
-
-prop_joinsplitBB c xs = P.intercalate (P.pack [c]) (P.split c xs) == xs
-
--- prop_linessplitBB xs =
--- (not . C.null) xs ==>
--- C.lines' xs == C.split '\n' xs
-
-prop_linessplit2BB xs =
- C.lines xs == C.split '\n' xs ++ (if C.last xs == '\n' then [C.empty] else [])
-
-prop_splitsplitWithBB c xs = P.split c xs == P.splitWith (== c) xs
-
-prop_bijectionBB c = (P.w2c . P.c2w) c == id c
-prop_bijectionBB' w = (P.c2w . P.w2c) w == id w
-
-prop_packunpackBB s = (P.unpack . P.pack) s == id s
-prop_packunpackBB' s = (P.pack . P.unpack) s == id s
-
-prop_eq1BB xs = xs == (P.unpack . P.pack $ xs)
-prop_eq2BB xs = xs == xs
-prop_eq3BB xs ys = (xs == ys) == (P.unpack xs == P.unpack ys)
-
-prop_compare1BB xs = (P.pack xs `compare` P.pack xs) == EQ
-prop_compare2BB xs c = (P.pack (xs++[c]) `compare` P.pack xs) == GT
-prop_compare3BB xs c = (P.pack xs `compare` P.pack (xs++[c])) == LT
-
-prop_compare4BB xs = (not (null xs)) ==> (P.pack xs `compare` P.empty) == GT
-prop_compare5BB xs = (not (null xs)) ==> (P.empty `compare` P.pack xs) == LT
-prop_compare6BB xs ys= (not (null ys)) ==> (P.pack (xs++ys) `compare` P.pack xs) == GT
-
-prop_compare7BB x y = x `compare` y == (C.singleton x `compare` C.singleton y)
-prop_compare8BB xs ys = xs `compare` ys == (P.pack xs `compare` P.pack ys)
-
-prop_consBB c xs = P.unpack (P.cons c (P.pack xs)) == (c:xs)
-prop_cons1BB xs = 'X' : xs == C.unpack ('X' `C.cons` (C.pack xs))
-prop_cons2BB xs c = c : xs == P.unpack (c `P.cons` (P.pack xs))
-prop_cons3BB c = C.unpack (C.singleton c) == (c:[])
-prop_cons4BB c = (c `P.cons` P.empty) == P.pack (c:[])
-
-prop_snoc1BB xs c = xs ++ [c] == P.unpack ((P.pack xs) `P.snoc` c)
-
-prop_head1BB xs = (not (null xs)) ==> head xs == (P.head . P.pack) xs
-prop_head2BB xs = (not (null xs)) ==> head xs == (P.unsafeHead . P.pack) xs
-prop_head3BB xs = not (P.null xs) ==> P.head xs == head (P.unpack xs)
-
-prop_tailBB xs = (not (null xs)) ==> tail xs == (P.unpack . P.tail . P.pack) xs
-prop_tail1BB xs = (not (null xs)) ==> tail xs == (P.unpack . P.unsafeTail. P.pack) xs
-
-prop_lastBB xs = (not (null xs)) ==> last xs == (P.last . P.pack) xs
-
-prop_initBB xs =
- (not (null xs)) ==>
- init xs == (P.unpack . P.init . P.pack) xs
-
--- prop_null xs = (null xs) ==> null xs == (nullPS (pack xs))
-
-prop_append1BB xs = (xs ++ xs) == (P.unpack $ P.pack xs `P.append` P.pack xs)
-prop_append2BB xs ys = (xs ++ ys) == (P.unpack $ P.pack xs `P.append` P.pack ys)
-prop_append3BB xs ys = P.append xs ys == P.pack (P.unpack xs ++ P.unpack ys)
-
-prop_map1BB f xs = P.map f (P.pack xs) == P.pack (map f xs)
-prop_map2BB f g xs = P.map f (P.map g xs) == P.map (f . g) xs
-prop_map3BB f xs = map f xs == (P.unpack . P.map f . P.pack) xs
--- prop_mapBB' f xs = P.map' f (P.pack xs) == P.pack (map f xs)
-
-prop_filter1BB xs = (filter (=='X') xs) == (C.unpack $ C.filter (=='X') (C.pack xs))
-prop_filter2BB p xs = (filter p xs) == (P.unpack $ P.filter p (P.pack xs))
-
-prop_findBB p xs = find p xs == P.find p (P.pack xs)
-
-prop_find_findIndexBB p xs =
- P.find p xs == case P.findIndex p xs of
- Just n -> Just (xs `P.unsafeIndex` n)
- _ -> Nothing
-
-prop_foldl1BB xs a = ((foldl (\x c -> if c == a then x else c:x) [] xs)) ==
- (P.unpack $ P.foldl (\x c -> if c == a then x else c `P.cons` x) P.empty (P.pack xs))
-prop_foldl2BB xs = P.foldl (\xs c -> c `P.cons` xs) P.empty (P.pack xs) == P.reverse (P.pack xs)
-
-prop_foldr1BB xs a = ((foldr (\c x -> if c == a then x else c:x) [] xs)) ==
- (P.unpack $ P.foldr (\c x -> if c == a then x else c `P.cons` x)
- P.empty (P.pack xs))
-
-prop_foldr2BB xs = P.foldr (\c xs -> c `P.cons` xs) P.empty (P.pack xs) == (P.pack xs)
-
-prop_foldl1_1BB xs =
- (not . P.null) xs ==>
- P.foldl1 (\x c -> if c > x then c else x) xs ==
- P.foldl (\x c -> if c > x then c else x) 0 xs
-
-prop_foldl1_2BB xs =
- (not . P.null) xs ==>
- P.foldl1 const xs == P.head xs
-
-prop_foldl1_3BB xs =
- (not . P.null) xs ==>
- P.foldl1 (flip const) xs == P.last xs
-
-prop_foldr1_1BB xs =
- (not . P.null) xs ==>
- P.foldr1 (\c x -> if c > x then c else x) xs ==
- P.foldr (\c x -> if c > x then c else x) 0 xs
-
-prop_foldr1_2BB xs =
- (not . P.null) xs ==>
- P.foldr1 (flip const) xs == P.last xs
-
-prop_foldr1_3BB xs =
- (not . P.null) xs ==>
- P.foldr1 const xs == P.head xs
-
-prop_takeWhileBB xs a = (takeWhile (/= a) xs) == (P.unpack . (P.takeWhile (/= a)) . P.pack) xs
-
-prop_dropWhileBB xs a = (dropWhile (/= a) xs) == (P.unpack . (P.dropWhile (/= a)) . P.pack) xs
-
-prop_takeBB xs = (take 10 xs) == (P.unpack . (P.take 10) . P.pack) xs
-
-prop_dropBB xs = (drop 10 xs) == (P.unpack . (P.drop 10) . P.pack) xs
-
-prop_splitAtBB i xs = -- collect (i >= 0 && i < length xs) $
- splitAt i xs ==
- let (x,y) = P.splitAt i (P.pack xs) in (P.unpack x, P.unpack y)
-
-prop_spanBB xs a = (span (/=a) xs) == (let (x,y) = P.span (/=a) (P.pack xs)
- in (P.unpack x, P.unpack y))
-
-prop_breakBB xs a = (break (/=a) xs) == (let (x,y) = P.break (/=a) (P.pack xs)
- in (P.unpack x, P.unpack y))
-
-prop_reverse1BB xs = (reverse xs) == (P.unpack . P.reverse . P.pack) xs
-prop_reverse2BB xs = P.reverse (P.pack xs) == P.pack (reverse xs)
-prop_reverse3BB xs = reverse (P.unpack xs) == (P.unpack . P.reverse) xs
-
-prop_elemBB xs a = (a `elem` xs) == (a `P.elem` (P.pack xs))
-
-prop_notElemBB c xs = P.notElem c (P.pack xs) == notElem c xs
-
--- should try to stress it
-prop_concat1BB xs = (concat [xs,xs]) == (P.unpack $ P.concat [P.pack xs, P.pack xs])
-prop_concat2BB xs = (concat [xs,[]]) == (P.unpack $ P.concat [P.pack xs, P.pack []])
-prop_concatBB xss = P.concat (map P.pack xss) == P.pack (concat xss)
-
-prop_concatMapBB xs = C.concatMap C.singleton xs == (C.pack . concatMap (:[]) . C.unpack) xs
-
-prop_anyBB xs a = (any (== a) xs) == (P.any (== a) (P.pack xs))
-prop_allBB xs a = (all (== a) xs) == (P.all (== a) (P.pack xs))
-
-prop_linesBB xs = (lines xs) == ((map C.unpack) . C.lines . C.pack) xs
-
-prop_unlinesBB xs = (unlines.lines) xs == (C.unpack. C.unlines . C.lines .C.pack) xs
-
-prop_wordsBB xs =
- (words xs) == ((map C.unpack) . C.words . C.pack) xs
--- prop_wordstokensBB xs = C.words xs == C.tokens isSpace xs
-
-prop_unwordsBB xs =
- (C.pack.unwords.words) xs == (C.unwords . C.words .C.pack) xs
-
-prop_groupBB xs = group xs == (map P.unpack . P.group . P.pack) xs
-
-prop_groupByBB xs = groupBy (==) xs == (map P.unpack . P.groupBy (==) . P.pack) xs
-prop_groupBy1BB xs = groupBy (/=) xs == (map P.unpack . P.groupBy (/=) . P.pack) xs
-
-prop_joinBB xs ys = (concat . (intersperse ys) . lines) xs ==
- (C.unpack $ C.intercalate (C.pack ys) (C.lines (C.pack xs)))
-
-prop_elemIndex1BB xs = (elemIndex 'X' xs) == (C.elemIndex 'X' (C.pack xs))
-prop_elemIndex2BB xs c = (elemIndex c xs) == (C.elemIndex c (C.pack xs))
-
--- prop_lineIndices1BB xs = C.elemIndices '\n' xs == C.lineIndices xs
-
-prop_countBB c xs = length (P.elemIndices c xs) == P.count c xs
-
-prop_elemIndexEnd1BB c xs = (P.elemIndexEnd c (P.pack xs)) ==
- (case P.elemIndex c (P.pack (reverse xs)) of
- Nothing -> Nothing
- Just i -> Just (length xs -1 -i))
-
-prop_elemIndexEnd2BB c xs = (P.elemIndexEnd c (P.pack xs)) ==
- ((-) (length xs - 1) `fmap` P.elemIndex c (P.pack $ reverse xs))
-
-prop_elemIndicesBB xs c = elemIndices c xs == P.elemIndices c (P.pack xs)
-
-prop_findIndexBB xs a = (findIndex (==a) xs) == (P.findIndex (==a) (P.pack xs))
-
-prop_findIndiciesBB xs c = (findIndices (==c) xs) == (P.findIndices (==c) (P.pack xs))
-
--- example properties from QuickCheck.Batch
-prop_sort1BB xs = sort xs == (P.unpack . P.sort . P.pack) xs
-prop_sort2BB xs = (not (null xs)) ==> (P.head . P.sort . P.pack $ xs) == minimum xs
-prop_sort3BB xs = (not (null xs)) ==> (P.last . P.sort . P.pack $ xs) == maximum xs
-prop_sort4BB xs ys =
- (not (null xs)) ==>
- (not (null ys)) ==>
- (P.head . P.sort) (P.append (P.pack xs) (P.pack ys)) == min (minimum xs) (minimum ys)
-prop_sort5BB xs ys =
- (not (null xs)) ==>
- (not (null ys)) ==>
- (P.last . P.sort) (P.append (P.pack xs) (P.pack ys)) == max (maximum xs) (maximum ys)
-
-prop_intersperseBB c xs = (intersperse c xs) == (P.unpack $ P.intersperse c (P.pack xs))
-
-prop_transposeBB xs = (transpose xs) == ((map P.unpack) . P.transpose . (map P.pack)) xs
-
-prop_maximumBB xs = (not (null xs)) ==> (maximum xs) == (P.maximum ( P.pack xs ))
-prop_minimumBB xs = (not (null xs)) ==> (minimum xs) == (P.minimum ( P.pack xs ))
-
--- prop_dropSpaceBB xs = dropWhile isSpace xs == C.unpack (C.dropSpace (C.pack xs))
--- prop_dropSpaceEndBB xs = (C.reverse . (C.dropWhile isSpace) . C.reverse) (C.pack xs) ==
--- (C.dropSpaceEnd (C.pack xs))
-
--- prop_breakSpaceBB xs =
--- (let (x,y) = C.breakSpace (C.pack xs)
--- in (C.unpack x, C.unpack y)) == (break isSpace xs)
-
-prop_spanEndBB xs =
- (C.spanEnd (not . isSpace) (C.pack xs)) ==
- (let (x,y) = C.span (not.isSpace) (C.reverse (C.pack xs)) in (C.reverse y,C.reverse x))
-
-prop_breakEndBB p xs = P.breakEnd (not.p) xs == P.spanEnd p xs
-
--- prop_breakCharBB c xs =
--- (break (==c) xs) ==
--- (let (x,y) = C.breakChar c (C.pack xs) in (C.unpack x, C.unpack y))
-
--- prop_spanCharBB c xs =
--- (break (/=c) xs) ==
--- (let (x,y) = C.spanChar c (C.pack xs) in (C.unpack x, C.unpack y))
-
--- prop_spanChar_1BB c xs =
--- (C.span (==c) xs) == C.spanChar c xs
-
--- prop_wordsBB' xs =
--- (C.unpack . C.unwords . C.words' . C.pack) xs ==
--- (map (\c -> if isSpace c then ' ' else c) xs)
-
--- prop_linesBB' xs = (C.unpack . C.unlines' . C.lines' . C.pack) xs == (xs)
-
-prop_unfoldrBB c n =
- (fst $ C.unfoldrN n fn c) == (C.pack $ take n $ unfoldr fn c)
- where
- fn x = Just (x, chr (ord x + 1))
-
-prop_prefixBB xs ys = isPrefixOf xs ys == (P.pack xs `P.isPrefixOf` P.pack ys)
-prop_suffixBB xs ys = isSuffixOf xs ys == (P.pack xs `P.isSuffixOf` P.pack ys)
-
-prop_copyBB xs = let p = P.pack xs in P.copy p == p
-
-prop_initsBB xs = inits xs == map P.unpack (P.inits (P.pack xs))
-
-prop_tailsBB xs = tails xs == map P.unpack (P.tails (P.pack xs))
-
-prop_findSubstringsBB s x l
- = C.findSubstrings (C.pack p) (C.pack s) == naive_findSubstrings p s
- where
- _ = l :: Int
- _ = x :: Int
-
- -- we look for some random substring of the test string
- p = take (model l) $ drop (model x) s
-
- -- naive reference implementation
- naive_findSubstrings :: String -> String -> [Int]
- naive_findSubstrings p s = [x | x <- [0..length s], p `isPrefixOf` drop x s]
-
-prop_replicate1BB n c = P.unpack (P.replicate n c) == replicate n c
-prop_replicate2BB n c = P.replicate n c == fst (P.unfoldrN n (\u -> Just (u,u)) c)
-
-prop_replicate3BB c = P.unpack (P.replicate 0 c) == replicate 0 c
-
-prop_readintBB n = (fst . fromJust . C.readInt . C.pack . show) n == (n :: Int)
-prop_readintLL n = (fst . fromJust . D.readInt . D.pack . show) n == (n :: Int)
-
-prop_readint2BB s =
- let s' = filter (\c -> c `notElem` ['0'..'9']) s
- in C.readInt (C.pack s') == Nothing
-
--- prop_filterChar1BB c xs = (filter (==c) xs) == ((C.unpack . C.filterChar c . C.pack) xs)
--- prop_filterChar2BB c xs = (C.filter (==c) (C.pack xs)) == (C.filterChar c (C.pack xs))
--- prop_filterChar3BB c xs = C.filterChar c xs == C.replicate (C.count c xs) c
-
--- prop_filterNotChar1BB c xs = (filter (/=c) xs) == ((C.unpack . C.filterNotChar c . C.pack) xs)
--- prop_filterNotChar2BB c xs = (C.filter (/=c) (C.pack xs)) == (C.filterNotChar c (C.pack xs))
-
--- prop_joinjoinpathBB xs ys c = C.joinWithChar c xs ys == C.join (C.singleton c) [xs,ys]
-
-prop_zipBB xs ys = zip xs ys == P.zip (P.pack xs) (P.pack ys)
-prop_zip1BB xs ys = P.zip xs ys == zip (P.unpack xs) (P.unpack ys)
-
-prop_zipWithBB xs ys = P.zipWith (,) xs ys == P.zip xs ys
--- prop_zipWith'BB xs ys = P.pack (P.zipWith (+) xs ys) == P.zipWith' (+) xs ys
-
-prop_unzipBB x = let (xs,ys) = unzip x in (P.pack xs, P.pack ys) == P.unzip x
-
-------------------------------------------------------------------------
--- The entry point
-
-main = run tests
-
-run :: [(String, Int -> IO ())] -> IO ()
-run tests = do
- x <- getArgs
- let n = if null x then 100 else read . head $ x
- mapM_ (\(s,a) -> printf "%-25s: " s >> a n) tests
-
---
--- And now a list of all the properties to test.
---
-
-tests = bb_tests ++ ll_tests
-
-------------------------------------------------------------------------
--- extra ByteString properties
-
-bb_tests =
- [ ("bijection", mytest prop_bijectionBB)
- , ("bijection'", mytest prop_bijectionBB')
- , ("pack/unpack", mytest prop_packunpackBB)
- , ("unpack/pack", mytest prop_packunpackBB')
- , ("eq 1", mytest prop_eq1BB)
- , ("eq 2", mytest prop_eq3BB)
- , ("eq 3", mytest prop_eq3BB)
- , ("compare 1", mytest prop_compare1BB)
- , ("compare 2", mytest prop_compare2BB)
- , ("compare 3", mytest prop_compare3BB)
- , ("compare 4", mytest prop_compare4BB)
- , ("compare 5", mytest prop_compare5BB)
- , ("compare 6", mytest prop_compare6BB)
- , ("compare 7", mytest prop_compare7BB)
- , ("compare 8", mytest prop_compare8BB)
- , ("empty 1", mytest prop_nil1BB)
- , ("empty 2", mytest prop_nil2BB)
- , ("null", mytest prop_nullBB)
- , ("length 1", mytest prop_lengthBB)
- , ("length 2", mytest prop_lengthSBB)
- , ("cons 1", mytest prop_consBB)
- , ("cons 2", mytest prop_cons1BB)
- , ("cons 3", mytest prop_cons2BB)
- , ("cons 4", mytest prop_cons3BB)
- , ("cons 5", mytest prop_cons4BB)
- , ("snoc", mytest prop_snoc1BB)
- , ("head 1", mytest prop_head1BB)
- , ("head 2", mytest prop_head2BB)
- , ("head 3", mytest prop_head3BB)
- , ("tail", mytest prop_tailBB)
- , ("tail 1", mytest prop_tail1BB)
- , ("last", mytest prop_lastBB)
- , ("init", mytest prop_initBB)
- , ("append 1", mytest prop_append1BB)
- , ("append 2", mytest prop_append2BB)
- , ("append 3", mytest prop_append3BB)
- , ("map 1", mytest prop_map1BB)
- , ("map 2", mytest prop_map2BB)
- , ("map 3", mytest prop_map3BB)
- , ("filter1", mytest prop_filter1BB)
- , ("filter2", mytest prop_filter2BB)
- , ("map fusion", mytest prop_mapfusionBB)
- , ("filter fusion", mytest prop_filterfusionBB)
- , ("reverse 1", mytest prop_reverse1BB)
- , ("reverse 2", mytest prop_reverse2BB)
- , ("reverse 3", mytest prop_reverse3BB)
- , ("foldl 1", mytest prop_foldl1BB)
- , ("foldl 2", mytest prop_foldl2BB)
- , ("foldr 1", mytest prop_foldr1BB)
- , ("foldr 2", mytest prop_foldr2BB)
- , ("foldl1 1", mytest prop_foldl1_1BB)
- , ("foldl1 2", mytest prop_foldl1_2BB)
- , ("foldl1 3", mytest prop_foldl1_3BB)
- , ("foldr1 1", mytest prop_foldr1_1BB)
- , ("foldr1 2", mytest prop_foldr1_2BB)
- , ("foldr1 3", mytest prop_foldr1_3BB)
- , ("scanl/foldl", mytest prop_scanlfoldlBB)
- , ("all", mytest prop_allBB)
- , ("any", mytest prop_anyBB)
- , ("take", mytest prop_takeBB)
- , ("drop", mytest prop_dropBB)
- , ("takeWhile", mytest prop_takeWhileBB)
- , ("dropWhile", mytest prop_dropWhileBB)
- , ("splitAt", mytest prop_splitAtBB)
- , ("span", mytest prop_spanBB)
- , ("break", mytest prop_breakBB)
- , ("elem", mytest prop_elemBB)
- , ("notElem", mytest prop_notElemBB)
- , ("concat 1", mytest prop_concat1BB)
- , ("concat 2", mytest prop_concat2BB)
- , ("concat 3", mytest prop_concatBB)
- , ("lines", mytest prop_linesBB)
- , ("unlines", mytest prop_unlinesBB)
- , ("words", mytest prop_wordsBB)
- , ("unwords", mytest prop_unwordsBB)
- , ("group", mytest prop_groupBB)
- , ("groupBy", mytest prop_groupByBB)
- , ("groupBy 1", mytest prop_groupBy1BB)
- , ("join", mytest prop_joinBB)
- , ("elemIndex 1", mytest prop_elemIndex1BB)
- , ("elemIndex 2", mytest prop_elemIndex2BB)
- , ("findIndex", mytest prop_findIndexBB)
- , ("findIndicies", mytest prop_findIndiciesBB)
- , ("elemIndices", mytest prop_elemIndicesBB)
- , ("find", mytest prop_findBB)
- , ("find/findIndex", mytest prop_find_findIndexBB)
- , ("sort 1", mytest prop_sort1BB)
- , ("sort 2", mytest prop_sort2BB)
- , ("sort 3", mytest prop_sort3BB)
- , ("sort 4", mytest prop_sort4BB)
- , ("sort 5", mytest prop_sort5BB)
- , ("intersperse", mytest prop_intersperseBB)
- , ("maximum", mytest prop_maximumBB)
- , ("minimum", mytest prop_minimumBB)
--- , ("breakChar", mytest prop_breakCharBB)
--- , ("spanChar 1", mytest prop_spanCharBB)
--- , ("spanChar 2", mytest prop_spanChar_1BB)
--- , ("breakSpace", mytest prop_breakSpaceBB)
--- , ("dropSpace", mytest prop_dropSpaceBB)
- , ("spanEnd", mytest prop_spanEndBB)
- , ("breakEnd", mytest prop_breakEndBB)
- , ("elemIndexEnd 1",mytest prop_elemIndexEnd1BB)
- , ("elemIndexEnd 2",mytest prop_elemIndexEnd2BB)
--- , ("words'", mytest prop_wordsBB')
--- , ("lines'", mytest prop_linesBB')
--- , ("dropSpaceEnd", mytest prop_dropSpaceEndBB)
- , ("unfoldr", mytest prop_unfoldrBB)
- , ("prefix", mytest prop_prefixBB)
- , ("suffix", mytest prop_suffixBB)
- , ("copy", mytest prop_copyBB)
- , ("inits", mytest prop_initsBB)
- , ("tails", mytest prop_tailsBB)
- , ("findSubstrings ",mytest prop_findSubstringsBB)
- , ("replicate1", mytest prop_replicate1BB)
- , ("replicate2", mytest prop_replicate2BB)
- , ("replicate3", mytest prop_replicate3BB)
- , ("readInt", mytest prop_readintBB)
- , ("readInt 2", mytest prop_readint2BB)
- , ("Lazy.readInt", mytest prop_readintLL)
--- , ("filterChar1", mytest prop_filterChar1BB)
--- , ("filterChar2", mytest prop_filterChar2BB)
--- , ("filterChar3", mytest prop_filterChar3BB)
--- , ("filterNotChar1", mytest prop_filterNotChar1BB)
--- , ("filterNotChar2", mytest prop_filterNotChar2BB)
- , ("tail", mytest prop_tailSBB)
- , ("index", mytest prop_indexBB)
- , ("unsafeIndex", mytest prop_unsafeIndexBB)
--- , ("map'", mytest prop_mapBB')
- , ("filter", mytest prop_filterBB)
- , ("elem", mytest prop_elemSBB)
- , ("take", mytest prop_takeSBB)
- , ("drop", mytest prop_dropSBB)
- , ("splitAt", mytest prop_splitAtSBB)
- , ("foldl", mytest prop_foldlBB)
- , ("foldr", mytest prop_foldrBB)
- , ("takeWhile ", mytest prop_takeWhileSBB)
- , ("dropWhile ", mytest prop_dropWhileSBB)
- , ("span ", mytest prop_spanSBB)
- , ("break ", mytest prop_breakSBB)
- , ("breakspan", mytest prop_breakspan_1BB)
- , ("lines ", mytest prop_linesSBB)
- , ("unlines ", mytest prop_unlinesSBB)
- , ("words ", mytest prop_wordsSBB)
- , ("unwords ", mytest prop_unwordsSBB)
--- , ("wordstokens", mytest prop_wordstokensBB)
- , ("splitWith", mytest prop_splitWithBB)
- , ("joinsplit", mytest prop_joinsplitBB)
--- , ("lineIndices", mytest prop_lineIndices1BB)
- , ("count", mytest prop_countBB)
--- , ("linessplit", mytest prop_linessplitBB)
- , ("splitsplitWith", mytest prop_splitsplitWithBB)
--- , ("joinjoinpath", mytest prop_joinjoinpathBB)
- , ("zip", mytest prop_zipBB)
- , ("zip1", mytest prop_zip1BB)
- , ("zipWith", mytest prop_zipWithBB)
--- , ("zipWith'", mytest prop_zipWith'BB)
- , ("unzip", mytest prop_unzipBB)
- , ("concatMap", mytest prop_concatMapBB)
- ]
-
-
-------------------------------------------------------------------------
--- Extra lazy properties
-
-ll_tests =
- [("eq 1", mytest prop_eq1)
- ,("eq 2", mytest prop_eq2)
- ,("eq 3", mytest prop_eq3)
- ,("eq refl", mytest prop_eq_refl)
- ,("eq symm", mytest prop_eq_symm)
- ,("compare 1", mytest prop_compare1)
- ,("compare 2", mytest prop_compare2)
- ,("compare 3", mytest prop_compare3)
- ,("compare 4", mytest prop_compare4)
- ,("compare 5", mytest prop_compare5)
- ,("compare 6", mytest prop_compare6)
- ,("compare 7", mytest prop_compare7)
- ,("compare 8", mytest prop_compare8)
- ,("empty 1", mytest prop_empty1)
- ,("empty 2", mytest prop_empty2)
- ,("pack/unpack", mytest prop_packunpack)
- ,("unpack/pack", mytest prop_unpackpack)
- ,("null", mytest prop_null)
- ,("length 1", mytest prop_length1)
- ,("length 2", mytest prop_length2)
- ,("cons 1" , mytest prop_cons1)
- ,("cons 2" , mytest prop_cons2)
- ,("cons 3" , mytest prop_cons3)
- ,("cons 4" , mytest prop_cons4)
- ,("snoc" , mytest prop_snoc1)
- ,("head/pack", mytest prop_head)
- ,("head/unpack", mytest prop_head1)
- ,("tail/pack", mytest prop_tail)
- ,("tail/unpack", mytest prop_tail1)
- ,("last", mytest prop_last)
- ,("init", mytest prop_init)
- ,("append 1", mytest prop_append1)
- ,("append 2", mytest prop_append2)
- ,("append 3", mytest prop_append3)
- ,("map 1", mytest prop_map1)
- ,("map 2", mytest prop_map2)
- ,("map 3", mytest prop_map3)
- ,("filter 1", mytest prop_filter1)
- ,("filter 2", mytest prop_filter2)
- ,("reverse", mytest prop_reverse)
- ,("reverse1", mytest prop_reverse1)
- ,("reverse2", mytest prop_reverse2)
- ,("transpose", mytest prop_transpose)
- ,("foldl", mytest prop_foldl)
- ,("foldl/reverse", mytest prop_foldl_1)
- ,("foldr", mytest prop_foldr)
- ,("foldr/id", mytest prop_foldr_1)
- ,("foldl1/foldl", mytest prop_foldl1_1)
- ,("foldl1/head", mytest prop_foldl1_2)
- ,("foldl1/tail", mytest prop_foldl1_3)
- ,("foldr1/foldr", mytest prop_foldr1_1)
- ,("foldr1/last", mytest prop_foldr1_2)
- ,("foldr1/head", mytest prop_foldr1_3)
- ,("concat 1", mytest prop_concat1)
- ,("concat 2", mytest prop_concat2)
- ,("concat/pack", mytest prop_concat3)
- ,("any", mytest prop_any)
- ,("all", mytest prop_all)
- ,("maximum", mytest prop_maximum)
- ,("minimum", mytest prop_minimum)
- ,("replicate 1", mytest prop_replicate1)
- ,("replicate 2", mytest prop_replicate2)
- ,("take", mytest prop_take1)
- ,("drop", mytest prop_drop1)
- ,("splitAt", mytest prop_drop1)
- ,("takeWhile", mytest prop_takeWhile)
- ,("dropWhile", mytest prop_dropWhile)
- ,("break", mytest prop_break)
- ,("span", mytest prop_span)
- ,("break/span", mytest prop_breakspan)
--- ,("break/breakByte", mytest prop_breakByte)
--- ,("span/spanByte", mytest prop_spanByte)
- ,("split", mytest prop_split)
- ,("splitWith", mytest prop_splitWith)
- ,("join.split/id", mytest prop_joinsplit)
--- ,("join/joinByte", mytest prop_joinjoinByte)
- ,("group", mytest prop_group)
--- ,("groupBy", mytest prop_groupBy)
- ,("index", mytest prop_index)
- ,("elemIndex", mytest prop_elemIndex)
- ,("elemIndices", mytest prop_elemIndices)
- ,("count/elemIndices", mytest prop_count)
- ,("findIndex", mytest prop_findIndex)
- ,("findIndices", mytest prop_findIndicies)
- ,("find", mytest prop_find)
- ,("find/findIndex", mytest prop_find_findIndex)
- ,("elem", mytest prop_elem)
- ,("notElem", mytest prop_notElem)
- ,("elem/notElem", mytest prop_elem_notelem)
--- ,("filterByte 1", mytest prop_filterByte)
--- ,("filterByte 2", mytest prop_filterByte2)
--- ,("filterNotByte 1", mytest prop_filterNotByte)
--- ,("filterNotByte 2", mytest prop_filterNotByte2)
- ,("isPrefixOf", mytest prop_isPrefixOf)
- ,("concatMap", mytest prop_concatMap)
- ]
-
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring005.stdout b/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring005.stdout
deleted file mode 100644
index 2efe5278dc..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring005.stdout
+++ /dev/null
@@ -1,226 +0,0 @@
-bijection : OK, 100 tests.
-bijection' : OK, 100 tests.
-pack/unpack : OK, 100 tests.
-unpack/pack : OK, 100 tests.
-eq 1 : OK, 100 tests.
-eq 2 : OK, 100 tests.
-eq 3 : OK, 100 tests.
-compare 1 : OK, 100 tests.
-compare 2 : OK, 100 tests.
-compare 3 : OK, 100 tests.
-compare 4 : OK, 100 tests.
-compare 5 : OK, 100 tests.
-compare 6 : OK, 100 tests.
-compare 7 : OK, 100 tests.
-compare 8 : OK, 100 tests.
-empty 1 : OK, 100 tests.
-empty 2 : OK, 100 tests.
-null : OK, 100 tests.
-length 1 : OK, 100 tests.
-length 2 : OK, 100 tests.
-cons 1 : OK, 100 tests.
-cons 2 : OK, 100 tests.
-cons 3 : OK, 100 tests.
-cons 4 : OK, 100 tests.
-cons 5 : OK, 100 tests.
-snoc : OK, 100 tests.
-head 1 : OK, 100 tests.
-head 2 : OK, 100 tests.
-head 3 : OK, 100 tests.
-tail : OK, 100 tests.
-tail 1 : OK, 100 tests.
-last : OK, 100 tests.
-init : OK, 100 tests.
-append 1 : OK, 100 tests.
-append 2 : OK, 100 tests.
-append 3 : OK, 100 tests.
-map 1 : OK, 100 tests.
-map 2 : OK, 100 tests.
-map 3 : OK, 100 tests.
-filter1 : OK, 100 tests.
-filter2 : OK, 100 tests.
-map fusion : OK, 100 tests.
-filter fusion : OK, 100 tests.
-reverse 1 : OK, 100 tests.
-reverse 2 : OK, 100 tests.
-reverse 3 : OK, 100 tests.
-foldl 1 : OK, 100 tests.
-foldl 2 : OK, 100 tests.
-foldr 1 : OK, 100 tests.
-foldr 2 : OK, 100 tests.
-foldl1 1 : OK, 100 tests.
-foldl1 2 : OK, 100 tests.
-foldl1 3 : OK, 100 tests.
-foldr1 1 : OK, 100 tests.
-foldr1 2 : OK, 100 tests.
-foldr1 3 : OK, 100 tests.
-scanl/foldl : OK, 100 tests.
-all : OK, 100 tests.
-any : OK, 100 tests.
-take : OK, 100 tests.
-drop : OK, 100 tests.
-takeWhile : OK, 100 tests.
-dropWhile : OK, 100 tests.
-splitAt : OK, 100 tests.
-span : OK, 100 tests.
-break : OK, 100 tests.
-elem : OK, 100 tests.
-notElem : OK, 100 tests.
-concat 1 : OK, 100 tests.
-concat 2 : OK, 100 tests.
-concat 3 : OK, 100 tests.
-lines : OK, 100 tests.
-unlines : OK, 100 tests.
-words : OK, 100 tests.
-unwords : OK, 100 tests.
-group : OK, 100 tests.
-groupBy : OK, 100 tests.
-groupBy 1 : OK, 100 tests.
-join : OK, 100 tests.
-elemIndex 1 : OK, 100 tests.
-elemIndex 2 : OK, 100 tests.
-findIndex : OK, 100 tests.
-findIndicies : OK, 100 tests.
-elemIndices : OK, 100 tests.
-find : OK, 100 tests.
-find/findIndex : OK, 100 tests.
-sort 1 : OK, 100 tests.
-sort 2 : OK, 100 tests.
-sort 3 : OK, 100 tests.
-sort 4 : OK, 100 tests.
-sort 5 : OK, 100 tests.
-intersperse : OK, 100 tests.
-maximum : OK, 100 tests.
-minimum : OK, 100 tests.
-spanEnd : OK, 100 tests.
-breakEnd : OK, 100 tests.
-elemIndexEnd 1 : OK, 100 tests.
-elemIndexEnd 2 : OK, 100 tests.
-unfoldr : OK, 100 tests.
-prefix : OK, 100 tests.
-suffix : OK, 100 tests.
-copy : OK, 100 tests.
-inits : OK, 100 tests.
-tails : OK, 100 tests.
-findSubstrings : OK, 100 tests.
-replicate1 : OK, 100 tests.
-replicate2 : OK, 100 tests.
-replicate3 : OK, 100 tests.
-readInt : OK, 100 tests.
-readInt 2 : OK, 100 tests.
-Lazy.readInt : OK, 100 tests.
-tail : OK, 100 tests.
-index : OK, 100 tests.
-unsafeIndex : OK, 100 tests.
-filter : OK, 100 tests.
-elem : OK, 100 tests.
-take : OK, 100 tests.
-drop : OK, 100 tests.
-splitAt : OK, 100 tests.
-foldl : OK, 100 tests.
-foldr : OK, 100 tests.
-takeWhile : OK, 100 tests.
-dropWhile : OK, 100 tests.
-span : OK, 100 tests.
-break : OK, 100 tests.
-breakspan : OK, 100 tests.
-lines : OK, 100 tests.
-unlines : OK, 100 tests.
-words : OK, 100 tests.
-unwords : OK, 100 tests.
-splitWith : OK, 100 tests.
-joinsplit : OK, 100 tests.
-count : OK, 100 tests.
-splitsplitWith : OK, 100 tests.
-zip : OK, 100 tests.
-zip1 : OK, 100 tests.
-zipWith : OK, 100 tests.
-unzip : OK, 100 tests.
-concatMap : OK, 100 tests.
-eq 1 : OK, 100 tests.
-eq 2 : OK, 100 tests.
-eq 3 : OK, 100 tests.
-eq refl : OK, 100 tests.
-eq symm : OK, 100 tests.
-compare 1 : OK, 100 tests.
-compare 2 : OK, 100 tests.
-compare 3 : OK, 100 tests.
-compare 4 : OK, 100 tests.
-compare 5 : OK, 100 tests.
-compare 6 : OK, 100 tests.
-compare 7 : OK, 100 tests.
-compare 8 : OK, 100 tests.
-empty 1 : OK, 100 tests.
-empty 2 : OK, 100 tests.
-pack/unpack : OK, 100 tests.
-unpack/pack : OK, 100 tests.
-null : OK, 100 tests.
-length 1 : OK, 100 tests.
-length 2 : OK, 100 tests.
-cons 1 : OK, 100 tests.
-cons 2 : OK, 100 tests.
-cons 3 : OK, 100 tests.
-cons 4 : OK, 100 tests.
-snoc : OK, 100 tests.
-head/pack : OK, 100 tests.
-head/unpack : OK, 100 tests.
-tail/pack : OK, 100 tests.
-tail/unpack : OK, 100 tests.
-last : OK, 100 tests.
-init : OK, 100 tests.
-append 1 : OK, 100 tests.
-append 2 : OK, 100 tests.
-append 3 : OK, 100 tests.
-map 1 : OK, 100 tests.
-map 2 : OK, 100 tests.
-map 3 : OK, 100 tests.
-filter 1 : OK, 100 tests.
-filter 2 : OK, 100 tests.
-reverse : OK, 100 tests.
-reverse1 : OK, 100 tests.
-reverse2 : OK, 100 tests.
-transpose : OK, 100 tests.
-foldl : OK, 100 tests.
-foldl/reverse : OK, 100 tests.
-foldr : OK, 100 tests.
-foldr/id : OK, 100 tests.
-foldl1/foldl : OK, 100 tests.
-foldl1/head : OK, 100 tests.
-foldl1/tail : OK, 100 tests.
-foldr1/foldr : OK, 100 tests.
-foldr1/last : OK, 100 tests.
-foldr1/head : OK, 100 tests.
-concat 1 : OK, 100 tests.
-concat 2 : OK, 100 tests.
-concat/pack : OK, 100 tests.
-any : OK, 100 tests.
-all : OK, 100 tests.
-maximum : OK, 100 tests.
-minimum : OK, 100 tests.
-replicate 1 : OK, 100 tests.
-replicate 2 : OK, 100 tests.
-take : OK, 100 tests.
-drop : OK, 100 tests.
-splitAt : OK, 100 tests.
-takeWhile : OK, 100 tests.
-dropWhile : OK, 100 tests.
-break : OK, 100 tests.
-span : OK, 100 tests.
-break/span : OK, 100 tests.
-split : OK, 100 tests.
-splitWith : OK, 100 tests.
-join.split/id : OK, 100 tests.
-group : OK, 100 tests.
-index : OK, 100 tests.
-elemIndex : OK, 100 tests.
-elemIndices : OK, 100 tests.
-count/elemIndices : OK, 100 tests.
-findIndex : OK, 100 tests.
-findIndices : OK, 100 tests.
-find : OK, 100 tests.
-find/findIndex : OK, 100 tests.
-elem : OK, 100 tests.
-notElem : OK, 100 tests.
-elem/notElem : OK, 100 tests.
-isPrefixOf : OK, 100 tests.
-concatMap : OK, 100 tests.
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring006.hs b/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring006.hs
deleted file mode 100644
index d58147a485..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring006.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-module Main (main) where
-
-import qualified Data.ByteString.Char8 as B
-import qualified Data.ByteString.Lazy.Char8 as L
-
-main :: IO ()
-main = do print $ map B.unpack $ B.lines $ B.pack "a\n\nb\n\nc"
- print $ map L.unpack $ L.lines $ L.pack "a\n\nb\n\nc"
-
diff --git a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring006.stdout b/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring006.stdout
deleted file mode 100644
index 240d746197..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.ByteString/bytestring006.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-["a","","b","","c"]
-["a","","b","","c"]
diff --git a/testsuite/tests/ghc-regress/lib/Data.Fixed/Makefile b/testsuite/tests/ghc-regress/lib/Data.Fixed/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.Fixed/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/Data.Fixed/all.T b/testsuite/tests/ghc-regress/lib/Data.Fixed/all.T
deleted file mode 100644
index c4d77d28c8..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.Fixed/all.T
+++ /dev/null
@@ -1 +0,0 @@
-test('data-fixed-show-read', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/lib/Data.Fixed/data-fixed-show-read.hs b/testsuite/tests/ghc-regress/lib/Data.Fixed/data-fixed-show-read.hs
deleted file mode 100644
index 349f639f2c..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.Fixed/data-fixed-show-read.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-
-module Main (main) where
-
-import Data.Fixed
-
-main :: IO ()
-main = do doit 38.001
- doit 38.009
- doit 38.01
- doit 38.09
- print (read "38" :: Centi)
- doit (-38.001)
- doit (-38.009)
- doit (-38.01)
- doit (-38.09)
- print (read "-38" :: Centi)
-
-doit :: Centi -> IO ()
-doit c = do let s = show c
- r = read s :: Centi
- putStrLn s
- print r
diff --git a/testsuite/tests/ghc-regress/lib/Data.Fixed/data-fixed-show-read.stdout b/testsuite/tests/ghc-regress/lib/Data.Fixed/data-fixed-show-read.stdout
deleted file mode 100644
index 0e5d7caef5..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.Fixed/data-fixed-show-read.stdout
+++ /dev/null
@@ -1,18 +0,0 @@
-38.00
-38.00
-38.00
-38.00
-38.01
-38.01
-38.09
-38.09
-38.00
--38.00
--38.00
--38.00
--38.00
--38.01
--38.01
--38.09
--38.09
--38.00
diff --git a/testsuite/tests/ghc-regress/lib/Data.HashTable/Makefile b/testsuite/tests/ghc-regress/lib/Data.HashTable/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.HashTable/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/Data.HashTable/all.T b/testsuite/tests/ghc-regress/lib/Data.HashTable/all.T
deleted file mode 100644
index 20b60f27cc..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.HashTable/all.T
+++ /dev/null
@@ -1 +0,0 @@
-test('hash001', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/lib/Data.HashTable/hash001.hs b/testsuite/tests/ghc-regress/lib/Data.HashTable/hash001.hs
deleted file mode 100644
index 727f488eb3..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.HashTable/hash001.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-import Data.HashTable
-import qualified Data.HashTable as HT
-
-test :: Int -> IO ()
-test n = do ht <- new (==) hashInt
- sequence_ [ insert ht key 0 | key <- [0..n]]
- sequence_ [ insert ht key 1 | key <- [0..n]]
-
- let check key = do (Just val) <- HT.lookup ht key
- if val==1 then return () else putStrLn $ show key
-
- sequence_ [ check key | key <- [0..n]]
-
-main = test 2048
diff --git a/testsuite/tests/ghc-regress/lib/Data.Ix/Makefile b/testsuite/tests/ghc-regress/lib/Data.Ix/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.Ix/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/Data.Ix/all.T b/testsuite/tests/ghc-regress/lib/Data.Ix/all.T
deleted file mode 100644
index 972be5dc08..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.Ix/all.T
+++ /dev/null
@@ -1 +0,0 @@
-test('ix001', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/lib/Data.Ix/ix001.hs b/testsuite/tests/ghc-regress/lib/Data.Ix/ix001.hs
deleted file mode 100644
index c723472bce..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.Ix/ix001.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-import Data.Ix
-import Data.Int
-
-main = print (index (minBound::Int16,maxBound) maxBound)
diff --git a/testsuite/tests/ghc-regress/lib/Data.Ix/ix001.stdout b/testsuite/tests/ghc-regress/lib/Data.Ix/ix001.stdout
deleted file mode 100644
index 7a53b35687..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.Ix/ix001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-65535
diff --git a/testsuite/tests/ghc-regress/lib/Data.List/Makefile b/testsuite/tests/ghc-regress/lib/Data.List/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.List/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/Data.List/all.T b/testsuite/tests/ghc-regress/lib/Data.List/all.T
deleted file mode 100644
index 125734882a..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.List/all.T
+++ /dev/null
@@ -1,2 +0,0 @@
-test('take001', extra_run_opts('1'), compile_and_run, [''])
-test('genericNegative001', extra_run_opts('-1'), compile_and_run, ['']) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/Data.List/genericNegative001.hs b/testsuite/tests/ghc-regress/lib/Data.List/genericNegative001.hs
deleted file mode 100644
index f59a42ffbc..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.List/genericNegative001.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- Test for http://hackage.haskell.org/trac/ghc/ticket/2533
-import System.Environment
-import Data.List
-main = do
- (n:_) <- getArgs
- print (genericTake (read n) "none taken")
- print (genericDrop (read n) "none dropped")
- print (genericSplitAt (read n) "none split")
diff --git a/testsuite/tests/ghc-regress/lib/Data.List/genericNegative001.stdout b/testsuite/tests/ghc-regress/lib/Data.List/genericNegative001.stdout
deleted file mode 100644
index b8a090716c..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.List/genericNegative001.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-""
-"none dropped"
-("","none split")
diff --git a/testsuite/tests/ghc-regress/lib/Data.List/take001.hs b/testsuite/tests/ghc-regress/lib/Data.List/take001.hs
deleted file mode 100644
index a7a531480a..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.List/take001.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- Test for bug #1219, F/B rule for take was too strict
-import System.Environment
-main = do
- (n:_) <- getArgs
- print (map (const 'x') (take (read n) (undefined:undefined)))
diff --git a/testsuite/tests/ghc-regress/lib/Data.List/take001.stdout b/testsuite/tests/ghc-regress/lib/Data.List/take001.stdout
deleted file mode 100644
index 92232f694a..0000000000
--- a/testsuite/tests/ghc-regress/lib/Data.List/take001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"x"
diff --git a/testsuite/tests/ghc-regress/lib/IO/2122.hs b/testsuite/tests/ghc-regress/lib/IO/2122.hs
deleted file mode 100644
index 6807f3476a..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/2122.hs
+++ /dev/null
@@ -1,76 +0,0 @@
-{-
-
-Before running this, check that /tmp/test does not exist and
-contain something important. Then do:
-
- $ touch /tmp/test
-
-If you do:
-
- $ runhaskell Test.hs
-
-it will work. If you do:
-
- $ runhaskell Test.hs fail
-
-it will fail every time with:
-
-Test.hs: writeFile: /tmp/test: openFile: resource busy (file is locked)
-
--}
-
-import Control.Monad
-import System.Directory
-import System.IO
-import System.Environment
--- Used by test2:
--- import System.Posix.IO
-
-fp = "2122-test"
-
-main :: IO ()
-main = do
- writeFile fp "test"
- test True
-
--- fails everytime when causeFailure is True in GHCi, with runhaskell,
--- or when compiled.
-test :: Bool -> IO ()
-test causeFailure =
- do h1 <- openFile fp ReadMode `Prelude.catch` (\e -> error ("openFile 1: " ++ show e))
- when causeFailure $ do
- h2 <- openFile fp ReadMode `Prelude.catch` (\e -> error ("openFile 2: " ++ show e))
- hClose h2
- hClose h1
- removeFile fp
- writeFile fp (show [1..100]) `Prelude.catch` (\e -> error ("writeFile: " ++ show e))
-
-{-
--- this version never fails (except in GHCi, if test has previously failed).
--- probably because openFd does not try to lock the file
-test2 :: Bool -> IO ()
-test2 causeFailure =
- do fd1 <- openFd fp ReadOnly Nothing defaultFileFlags `Prelude.catch` (\e -> error ("openFile 1: " ++ show e))
- when causeFailure $ do
- fd2 <- openFd fp ReadOnly Nothing defaultFileFlags `Prelude.catch` (\e -> error ("openFile 2: " ++ show e))
- closeFd fd2
- closeFd fd1
- removeFile fp
- writeFile fp (show [1..100]) `Prelude.catch` (\e -> error ("writeFile: " ++ show e))
--}
-
-{-
--- fails sometimes when run repeated in GHCi, but seems fine with
--- runhaskell or compiled
-test3 :: IO ()
-test3 =
- do h1 <- openFile fp ReadMode `Prelude.catch` (\e -> error ("openFile 1: " ++ show e))
- h2 <- openFile fp ReadMode `Prelude.catch` (\e -> error ("openFile 2: " ++ show e))
- removeFile fp
- writeFile fp (show [1..100]) `Prelude.catch` (\e -> error ("writeFile: " ++ show e))
- print =<< hGetContents h1
- print =<< hGetContents h2
- hClose h2
- hClose h1
--}
-
diff --git a/testsuite/tests/ghc-regress/lib/IO/3307.hs b/testsuite/tests/ghc-regress/lib/IO/3307.hs
deleted file mode 100644
index fb1a360ea2..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/3307.hs
+++ /dev/null
@@ -1,52 +0,0 @@
-import Control.Exception
-
-import System.Directory
-import System.Environment
-import System.IO
-
-import Data.Char
-import Data.List
-
-import GHC.IO.Encoding
-
-main = do
- hSetBuffering stdout NoBuffering
-
- -- 1) A file name arriving via an argument
- putStrLn "Test 1"
- [file] <- getArgs
- print $ map ord file
- readFile file >>= putStr
-
- -- 2) A file name arriving via getDirectoryContents
- putStrLn "Test 2"
- [file] <- fmap (filter ("chinese-file-" `isPrefixOf`)) $ getDirectoryContents "."
- print $ map ord file
- readFile file >>= putStr
-
- -- 3) A file name occurring literally in the program
- -- The file is created with a UTF-8 file name as well, so this will only work in Windows or a
- -- UTF-8 locale, or this string will be encoded in some non-UTF-8 way and won't match.
- putStrLn "Test 3"
- let file = "chinese-file-å°è¯´"
- print $ map ord file
- readFile file >>= putStr
-
- -- 4) A file name arriving via another file.
- -- Again, the file is created with UTF-8 contents, so we read it in that encoding.
- -- Once again, on non-Windows this may fail in a non-UTF-8 locale because we could encode the valid
- -- filename string into a useless non-UTF-8 byte sequence.
- putStrLn "Test 4"
- str <- readFileAs utf8 "chinese-name"
- let file = dropTrailingSpace str
- print $ map ord file
- readFile file >>= putStr
-
-readFileAs :: TextEncoding -> FilePath -> IO String
-readFileAs enc fp = do
- h <- openFile fp ReadMode
- hSetEncoding h enc
- hGetContents h
-
-dropTrailingSpace :: String -> String
-dropTrailingSpace = reverse . dropWhile (not . isAlphaNum) . reverse
diff --git a/testsuite/tests/ghc-regress/lib/IO/3307.stdout b/testsuite/tests/ghc-regress/lib/IO/3307.stdout
deleted file mode 100644
index 8b26b5ff1d..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/3307.stdout
+++ /dev/null
@@ -1,12 +0,0 @@
-Test 1
-[99,104,105,110,101,115,101,45,102,105,108,101,45,23567,35828]
-Ni hao
-Test 2
-[99,104,105,110,101,115,101,45,102,105,108,101,45,23567,35828]
-Ni hao
-Test 3
-[99,104,105,110,101,115,101,45,102,105,108,101,45,23567,35828]
-Ni hao
-Test 4
-[99,104,105,110,101,115,101,45,102,105,108,101,45,23567,35828]
-Ni hao
diff --git a/testsuite/tests/ghc-regress/lib/IO/4808.hs b/testsuite/tests/ghc-regress/lib/IO/4808.hs
deleted file mode 100644
index 97ca344bb4..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/4808.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-import System.IO
-import GHC.IO.Handle
-import GHC.IO.FD as FD
-
-main = do
- (fd, _) <- FD.openFile "4808.hs" ReadWriteMode False
- hdl <- mkDuplexHandle fd "4808.hs" Nothing nativeNewlineMode
- hClose hdl
- (fd2, _) <- FD.openFile "4808.hs" ReadWriteMode False
- print (fdFD fd == fdFD fd2) -- should be True
- hGetLine hdl >>= print -- should fail with an exception
-
diff --git a/testsuite/tests/ghc-regress/lib/IO/4808.stderr b/testsuite/tests/ghc-regress/lib/IO/4808.stderr
deleted file mode 100644
index cccd936d05..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/4808.stderr
+++ /dev/null
@@ -1 +0,0 @@
-4808: 4808.hs: hGetLine: illegal operation (handle is closed)
diff --git a/testsuite/tests/ghc-regress/lib/IO/4808.stdout b/testsuite/tests/ghc-regress/lib/IO/4808.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/4808.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/lib/IO/4855.hs b/testsuite/tests/ghc-regress/lib/IO/4855.hs
deleted file mode 100644
index fa862aaf14..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/4855.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-import Debug.Trace
-
-main = trace "我爱我的电脑" $ return () \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/IO/4855.stderr b/testsuite/tests/ghc-regress/lib/IO/4855.stderr
deleted file mode 100644
index 558550e229..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/4855.stderr
+++ /dev/null
@@ -1 +0,0 @@
-我爱我的电脑
diff --git a/testsuite/tests/ghc-regress/lib/IO/4895.hs b/testsuite/tests/ghc-regress/lib/IO/4895.hs
deleted file mode 100644
index bb37915e19..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/4895.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module Main where
-import Foreign.Marshal.Alloc
-import System.IO
-
-main = do
- h <- openBinaryFile "4895.hs" ReadMode
- allocaBytes 10 $ \ptr -> hGetBuf h ptr 10
- some <- allocaBytes 10 $ \ptr -> hGetBufSome h ptr 10
- print some
diff --git a/testsuite/tests/ghc-regress/lib/IO/4895.stdout b/testsuite/tests/ghc-regress/lib/IO/4895.stdout
deleted file mode 100644
index f599e28b8a..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/4895.stdout
+++ /dev/null
@@ -1 +0,0 @@
-10
diff --git a/testsuite/tests/ghc-regress/lib/IO/IOError001.hs b/testsuite/tests/ghc-regress/lib/IO/IOError001.hs
deleted file mode 100644
index dee7f31e29..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/IOError001.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
--- test for a bug in GHC <= 4.08.2: handles were being left locked after
--- being shown in an error message.
-main = do
- getContents
- catch getChar (\e -> print e >> return 'x')
- catch getChar (\e -> print e >> return 'x')
diff --git a/testsuite/tests/ghc-regress/lib/IO/IOError001.stdout b/testsuite/tests/ghc-regress/lib/IO/IOError001.stdout
deleted file mode 100644
index 1e689bb0f9..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/IOError001.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-<stdin>: hGetChar: illegal operation (handle is closed)
-<stdin>: hGetChar: illegal operation (handle is closed)
diff --git a/testsuite/tests/ghc-regress/lib/IO/IOError001.stdout-hugs b/testsuite/tests/ghc-regress/lib/IO/IOError001.stdout-hugs
deleted file mode 100644
index 036084a006..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/IOError001.stdout-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-<stdin>: getChar: illegal operation (handle is semi-closed)
-<stdin>: getChar: illegal operation (handle is semi-closed)
diff --git a/testsuite/tests/ghc-regress/lib/IO/IOError002.hs b/testsuite/tests/ghc-regress/lib/IO/IOError002.hs
deleted file mode 100644
index 144e62783b..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/IOError002.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! IOErrors should have Eq defined
-
-import System.IO
-
-main = print (userError "urk" == userError "urk")
diff --git a/testsuite/tests/ghc-regress/lib/IO/IOError002.stdout b/testsuite/tests/ghc-regress/lib/IO/IOError002.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/IOError002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/lib/IO/Makefile b/testsuite/tests/ghc-regress/lib/IO/Makefile
deleted file mode 100644
index cc9d060c31..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/Makefile
+++ /dev/null
@@ -1,48 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-test.concio001:
- $(TEST_HC) $(TEST_HC_OPTS) --make -fforce-recomp -v0 concio001 -o concio001
- (sleep 1; echo x) | ./concio001
-
-test.concio001.thr:
- $(TEST_HC) $(TEST_HC_OPTS) --make -fforce-recomp -v0 -threaded concio001 -o concio001
- (sleep 1; echo x) | ./concio001
-
-# NB. utf8-test should *not* have a final newline. The last char should be 'X'.
-utf16-test: utf8-test
- iconv -f UTF-8 -t UTF-16 <utf8-test >utf16-test
-
-utf16le-test: utf8-test
- iconv -f UTF-8 -t UTF-16LE <utf8-test >utf16le-test
-
-utf16be-test: utf8-test
- iconv -f UTF-8 -t UTF-16BE <utf8-test >utf16be-test
-
-utf32-test: utf8-test
- iconv -f UTF-8 -t UTF-32 <utf8-test >utf32-test
-
-utf32le-test: utf8-test
- iconv -f UTF-8 -t UTF-32LE <utf8-test >utf32le-test
-
-utf32be-test: utf8-test
- iconv -f UTF-8 -t UTF-32BE <utf8-test >utf32be-test
-
-utf8-bom-test: utf16-test
- iconv -f UTF-16LE -t UTF-8 <utf16-test >utf8-bom-test
-
-hSetEncoding001.in : latin1 utf8-test utf16le-test utf16be-test utf16-test utf32le-test utf32be-test utf32-test utf8-bom-test
- cat >$@ latin1 utf8-test utf16le-test utf16be-test utf16-test utf32-test utf32le-test utf32be-test utf8-bom-test
-
-environment001-test:
- "$(TEST_HC)" --make -fforce-recomp -v0 environment001.hs -o environment001
- GHC_TEST=马克斯 ./environment001 说
-
-3307-test:
- "$(TEST_HC)" --make -fforce-recomp -v0 3307.hs -o 3307
- echo Ni hao > chinese-file-å°è¯´
- echo chinese-file-å°è¯´ > chinese-name
- # The tests are run in whatever the default locale is. This is almost always UTF-8,
- # but in cmd on Windows it will be the non-Unicode CP850 locale.
- ./3307 chinese-file-å°è¯´
diff --git a/testsuite/tests/ghc-regress/lib/IO/T4113.hs b/testsuite/tests/ghc-regress/lib/IO/T4113.hs
deleted file mode 100644
index 3bc8096baa..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/T4113.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-
-module Main (main) where
-
-import Control.Exception
-import Prelude hiding (catch)
-import System.Directory
-
-main :: IO ()
-main = do doit ""
- doit "/no/such/file"
-
-doit :: FilePath -> IO ()
-doit fp = do fp' <- canonicalizePath fp
- print (fp, mangle fp')
- `catch` \e -> putStrLn ("Exception: " ++ show (e :: IOException))
- where -- On Windows, "/no/such/file" -> "C:\\no\\such\\file", so
- -- we remove the drive letter so as to get consistent output
- mangle (_ : ':' : xs) = "drive:" ++ xs
- mangle xs = xs
-
diff --git a/testsuite/tests/ghc-regress/lib/IO/T4113.stdout b/testsuite/tests/ghc-regress/lib/IO/T4113.stdout
deleted file mode 100644
index 86a7e9e295..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/T4113.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Exception: : canonicalizePath: does not exist (No such file or directory)
-Exception: /no/such/file: canonicalizePath: does not exist (No such file or directory)
diff --git a/testsuite/tests/ghc-regress/lib/IO/T4113.stdout-i386-unknown-mingw32 b/testsuite/tests/ghc-regress/lib/IO/T4113.stdout-i386-unknown-mingw32
deleted file mode 100644
index 16f302c475..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/T4113.stdout-i386-unknown-mingw32
+++ /dev/null
@@ -1,2 +0,0 @@
-Exception: getFullPathName: invalid argument (The filename, directory name, or volume label syntax is incorrect.)
-("/no/such/file","drive:\\no\\such\\file")
diff --git a/testsuite/tests/ghc-regress/lib/IO/T4144.hs b/testsuite/tests/ghc-regress/lib/IO/T4144.hs
deleted file mode 100644
index ca14363682..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/T4144.hs
+++ /dev/null
@@ -1,115 +0,0 @@
-{-# LANGUAGE OverloadedStrings, DeriveDataTypeable #-}
-module Main (main) where
-
-import Control.Applicative
-import Control.Concurrent.MVar
-import Control.Monad
-
-import Data.ByteString (ByteString)
-import qualified Data.ByteString as B
-import qualified Data.ByteString.Char8
-import Data.ByteString.Char8()
-import Data.ByteString.Unsafe as B
-import Data.ByteString.Internal (memcpy)
-import Data.Typeable (Typeable)
-import Data.Word
-
-import Foreign
-
-import GHC.IO.Buffer
-import GHC.IO.BufferedIO
-import GHC.IO.Device
-import GHC.IO.Handle
-
-import System.IO
-
--- | Create a seakable read-handle from a bytestring
-bsHandle :: ByteString -> FilePath -> IO Handle
-bsHandle bs fp
- = newBsDevice bs >>= \dev ->
- mkFileHandle dev fp ReadMode Nothing noNewlineTranslation
-
-data BSIODevice
- = BSIODevice
- ByteString
- (MVar Int) -- Position
- deriving Typeable
-
-newBsDevice :: ByteString -> IO BSIODevice
-newBsDevice bs = BSIODevice bs <$> newMVar 0
-
-remaining :: BSIODevice -> IO Int
-remaining (BSIODevice bs mPos)
- = do
- let bsLen = B.length bs
- withMVar mPos $ \pos -> return (bsLen - pos)
-
-sizeBS :: BSIODevice -> Int
-sizeBS (BSIODevice bs _) = B.length bs
-
-seekBS :: BSIODevice -> SeekMode -> Int -> IO ()
-seekBS dev AbsoluteSeek pos
- | pos < 0 = error "Cannot seek to a negative position!"
- | pos > sizeBS dev = error "Cannot seek past end of handle!"
- | otherwise = case dev of
- BSIODevice _ mPos
- -> modifyMVar_ mPos $ \_ -> return pos
-seekBS dev SeekFromEnd pos = seekBS dev AbsoluteSeek (sizeBS dev - pos)
-seekBS dev RelativeSeek pos
- = case dev of
- BSIODevice _bs mPos
- -> modifyMVar_ mPos $ \curPos ->
- let newPos = curPos + pos
- in if newPos < 0 || newPos > sizeBS dev
- then error "Cannot seek outside of handle!"
- else return newPos
-
-tellBS :: BSIODevice -> IO Int
-tellBS (BSIODevice _ mPos) = readMVar mPos
-
-dupBS :: BSIODevice -> IO BSIODevice
-dupBS (BSIODevice bs mPos) = BSIODevice bs <$> (readMVar mPos >>= newMVar)
-
-readBS :: BSIODevice -> Ptr Word8 -> Int -> IO Int
-readBS dev@(BSIODevice bs mPos) buff amount
- = do
- rem <- remaining dev
- if amount > rem
- then readBS dev buff rem
- else B.unsafeUseAsCString bs $ \ptr ->
- do
- memcpy buff (castPtr ptr) (fromIntegral amount)
- modifyMVar_ mPos (return . (+amount))
- return amount
-
-instance BufferedIO BSIODevice where
- newBuffer dev buffState = newByteBuffer (sizeBS dev) buffState
- fillReadBuffer dev buff = readBuf dev buff
- fillReadBuffer0 dev buff
- = do
- (amount, buff') <- fillReadBuffer dev buff
- return (if amount == 0 then Nothing else Just amount, buff')
-
-instance RawIO BSIODevice where
- read = readBS
- readNonBlocking dev buff n = Just `liftM` readBS dev buff n
-
-instance IODevice BSIODevice where
- ready _ True _ = return False -- read only
- ready _ False _ = return True -- always ready
-
- close _ = return ()
- isTerminal _ = return False
- isSeekable _ = return True
- seek dev seekMode pos = seekBS dev seekMode (fromIntegral pos)
- tell dev = fromIntegral <$> tellBS dev
- getSize dev = return $ fromIntegral $ sizeBS dev
- setEcho _ _ = error "Not a terminal device"
- getEcho _ = error "Not a terminal device"
- setRaw _ _ = error "Raw mode not supported"
- devType _ = return RegularFile
- dup = dupBS
- dup2 _ _ = error "Dup2 not supported"
-
-
-main = bsHandle "test" "<fake file>" >>= Data.ByteString.Char8.hGetContents >>= print
diff --git a/testsuite/tests/ghc-regress/lib/IO/T4144.stdout b/testsuite/tests/ghc-regress/lib/IO/T4144.stdout
deleted file mode 100644
index 8b8441b91d..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/T4144.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"test"
diff --git a/testsuite/tests/ghc-regress/lib/IO/all.T b/testsuite/tests/ghc-regress/lib/IO/all.T
deleted file mode 100644
index cf557a6b96..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/all.T
+++ /dev/null
@@ -1,173 +0,0 @@
-# -*- coding: utf-8 -*-
-
-def expect_fail_if_windows(opts):
- f = if_platform('i386-unknown-mingw32', expect_fail);
- return f(opts);
-
-test('IOError001', compose(omit_ways(['ghci']), set_stdin('IOError001.hs')),
- compile_and_run, [''])
-
-test('IOError002', normal, compile_and_run, [''])
-test('finalization001', normal, compile_and_run, [''])
-test('hClose001', extra_clean(['hClose001.tmp']), compile_and_run, [''])
-test('hClose002', extra_clean(['hClose002.tmp']), compile_and_run, [''])
-test('hClose003', reqlib('unix'), compile_and_run, ['-package unix'])
-test('hFileSize001', normal, compile_and_run, [''])
-test('hFileSize002',
- [omit_ways(['ghci']),
- extra_clean(['hFileSize002.out'])],
- compile_and_run, [''])
-test('hFlush001',
- extra_clean(['hFlush001.out']),
- compile_and_run, [''])
-
-test('hGetBuffering001',
- compose(omit_ways(['ghci']), set_stdin('hGetBuffering001.hs')),
- compile_and_run, [''])
-
-test('hGetChar001', normal, compile_and_run, [''])
-test('hGetLine001', set_stdin('hGetLine001.hs'), compile_and_run, ['-cpp'])
-test('hGetLine002', normal, compile_and_run, [''])
-test('hGetLine003', normal, compile_and_run, [''])
-test('hGetPosn001',
- extra_clean(['hGetPosn001.out']),
- compile_and_run, ['-cpp'])
-test('hIsEOF001', normal, compile_and_run, [''])
-test('hIsEOF002', extra_clean(['hIsEOF002.out']), compile_and_run, ['-cpp'])
-
-test('hReady001', normal, compile_and_run, ['-cpp'])
-
-# hReady002 tests that hReady returns False for a pipe that has no
-# data to read. It relies on piping input from 'sleep 1', which doesn't
-# work for the 'ghci' way because in that case we already pipe input from
-# a script, so hence omit_ways(['ghci'])
-test('hReady002', [ no_stdin, cmd_prefix('sleep 1 |'),
- omit_ways(['ghci']) ],
- compile_and_run, [''])
-
-test('hSeek001', normal, compile_and_run, [''])
-test('hSeek002', normal, compile_and_run, ['-cpp'])
-test('hSeek003', normal, compile_and_run, ['-cpp'])
-test('hSeek004', extra_clean(['hSeek004.out']), compile_and_run, ['-cpp'])
-
-test('hSetBuffering002', set_stdin('hSetBuffering002.hs'), compile_and_run, [''])
-
-test('hSetBuffering003', compose(omit_ways(['ghci']),
- set_stdin('hSetBuffering003.hs')),
- compile_and_run, [''])
-
-test('hSetBuffering004', set_stdin('hSetBuffering004.hs'), compile_and_run, [''])
-
-test('ioeGetErrorString001', normal, compile_and_run, ['-cpp'])
-test('ioeGetFileName001', normal, compile_and_run, ['-cpp'])
-test('ioeGetHandle001', normal, compile_and_run, ['-cpp'])
-test('isEOF001', normal, compile_and_run, [''])
-
-test('misc001',
- [extra_run_opts('misc001.hs misc001.out'),
- extra_clean(['misc001.out'])],
- compile_and_run, [''])
-
-test('openFile001', normal, compile_and_run, [''])
-test('openFile002', exit_code(1), compile_and_run, [''])
-test('openFile003', normal, compile_and_run, [''])
-test('openFile004', extra_clean(['openFile004.out']), compile_and_run, [''])
-test('openFile005',
- [if_compiler_type('hugs', expect_fail),
- extra_clean(['openFile005.out1', 'openFile005.out2'])],
- compile_and_run, [''])
-test('openFile006', extra_clean(['openFile006.out']), compile_and_run, [''])
-test('openFile007',
- [if_compiler_type('hugs', expect_fail),
- extra_clean(['openFile007.out'])],
- compile_and_run, [''])
-test('openFile008', cmd_prefix('ulimit -n 1024; '), compile_and_run, [''])
-
-test('putStr001', normal, compile_and_run, [''])
-test('readFile001',
- [if_compiler_type('hugs', expect_fail),
- extra_clean(['readFile001.out'])],
- compile_and_run, [''])
-test('readwrite001',
- extra_clean(['readwrite001.inout']),
- compile_and_run,
- ['-cpp'])
-
-
-test('readwrite002',
- [omit_ways(['ghci']),
- set_stdin('readwrite002.hs'),
- extra_clean(['readwrite002.inout'])],
- compile_and_run, ['-cpp'])
-
-test('readwrite003', extra_clean(['readwrite003.txt']), compile_and_run, [''])
-
-test('hGetBuf001', compose(only_compiler_types(['ghc']),
- compose(skip_if_fast,
- expect_fail_if_windows)), compile_and_run, ['-package unix'])
-
-test('hDuplicateTo001', extra_clean(['tmp']), compile_and_run, [''])
-
-test('countReaders001',
- extra_clean(['countReaders001.txt']),
- compile_and_run, [''])
-
-test('concio001', skip, run_command, ['$MAKE -s --no-print-directory test.concio001'])
-test('concio001.thr', skip, run_command, ['$MAKE -s --no-print-directory test.concio001.thr'])
-
-test('concio002', reqlib('process'), compile_and_run, [''])
-
-test('2122', extra_clean(['2122-test']), compile_and_run, [''])
-test('3307',
- [extra_clean(['chinese-file-å°è¯´', 'chinese-name'])],
- run_command,
- ['$MAKE -s --no-print-directory 3307-test'])
-test('4855', normal, compile_and_run, [''])
-
-test('hSetEncoding001',extra_run_opts('hSetEncoding001.in'), compile_and_run, [''])
-test('decodingerror001',normal, compile_and_run, [''])
-
-test('encoding001',
- extra_clean([
- 'encoding001.utf16', 'encoding001.utf16.utf16be',
- 'encoding001.utf16.utf16le', 'encoding001.utf16.utf32',
- 'encoding001.utf16.utf32be', 'encoding001.utf16.utf32le',
- 'encoding001.utf16.utf8', 'encoding001.utf16be',
- 'encoding001.utf16be.utf16', 'encoding001.utf16be.utf16le',
- 'encoding001.utf16be.utf32', 'encoding001.utf16be.utf32be',
- 'encoding001.utf16be.utf32le', 'encoding001.utf16be.utf8',
- 'encoding001.utf16le', 'encoding001.utf16le.utf16',
- 'encoding001.utf16le.utf16be', 'encoding001.utf16le.utf32',
- 'encoding001.utf16le.utf32be', 'encoding001.utf16le.utf32le',
- 'encoding001.utf16le.utf8', 'encoding001.utf32',
- 'encoding001.utf32.utf16', 'encoding001.utf32.utf16be',
- 'encoding001.utf32.utf16le', 'encoding001.utf32.utf32be',
- 'encoding001.utf32.utf32le', 'encoding001.utf32.utf8',
- 'encoding001.utf32be', 'encoding001.utf32be.utf16',
- 'encoding001.utf32be.utf16be', 'encoding001.utf32be.utf16le',
- 'encoding001.utf32be.utf32', 'encoding001.utf32be.utf32le',
- 'encoding001.utf32be.utf8', 'encoding001.utf32le',
- 'encoding001.utf32le.utf16', 'encoding001.utf32le.utf16be',
- 'encoding001.utf32le.utf16le', 'encoding001.utf32le.utf32',
- 'encoding001.utf32le.utf32be', 'encoding001.utf32le.utf8',
- 'encoding001.utf8', 'encoding001.utf8.utf16',
- 'encoding001.utf8.utf16be', 'encoding001.utf8.utf16le',
- 'encoding001.utf8.utf32', 'encoding001.utf8.utf32be',
- 'encoding001.utf8.utf32le']),
- compile_and_run, [''])
-
-test('encoding002', normal, compile_and_run, [''])
-
-test('environment001', extra_clean(['environment001']), run_command, ['$MAKE -s --no-print-directory environment001-test'])
-
-test('newline001', extra_clean(['newline001.out']), compile_and_run, [''])
-
-test('openTempFile001', normal, compile_and_run, [''])
-test('T4113', normal, compile_and_run, [''])
-
-test('T4144', normal, compile_and_run, [''])
-
-test('encodingerror001', normal, compile_and_run, [''])
-
-test('4808', exit_code(1), compile_and_run, [''])
-test('4895', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/lib/IO/concio001.hs b/testsuite/tests/ghc-regress/lib/IO/concio001.hs
deleted file mode 100644
index 786a311ce5..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/concio001.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-import Control.Concurrent
-
-main = do
- forkIO $ do threadDelay 100000; putStrLn "child"
- getLine
- putStrLn "parent"
diff --git a/testsuite/tests/ghc-regress/lib/IO/concio001.stdout b/testsuite/tests/ghc-regress/lib/IO/concio001.stdout
deleted file mode 100644
index 141a8cd80c..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/concio001.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-child
-parent
diff --git a/testsuite/tests/ghc-regress/lib/IO/concio001.thr.stdout b/testsuite/tests/ghc-regress/lib/IO/concio001.thr.stdout
deleted file mode 100644
index 141a8cd80c..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/concio001.thr.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-child
-parent
diff --git a/testsuite/tests/ghc-regress/lib/IO/concio002.hs b/testsuite/tests/ghc-regress/lib/IO/concio002.hs
deleted file mode 100644
index 60a2ed2a89..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/concio002.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-import System.Process
-import System.IO
-import Control.Concurrent
-
-main = do
- (hin,hout,herr,ph) <- runInteractiveProcess "cat" [] Nothing Nothing
- forkIO $ do threadDelay 100000
- putStrLn "child"
- hFlush stdout
- hPutStrLn hin "msg"
- hFlush hin
- putStrLn "parent1"
- hGetLine hout >>= putStrLn
- putStrLn "parent2"
diff --git a/testsuite/tests/ghc-regress/lib/IO/concio002.stdout b/testsuite/tests/ghc-regress/lib/IO/concio002.stdout
deleted file mode 100644
index 32640aede5..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/concio002.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-parent1
-child
-msg
-parent2
diff --git a/testsuite/tests/ghc-regress/lib/IO/countReaders001.hs b/testsuite/tests/ghc-regress/lib/IO/countReaders001.hs
deleted file mode 100644
index 2648ae77ae..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/countReaders001.hs
+++ /dev/null
@@ -1,17 +0,0 @@
--- test for trac #629. We need to keep track of how many readers
--- there are rather than closing the first read handle causing the
--- lock to be released.
-
-import System.IO
-import System.IO.Error
-
-file = "countReaders001.txt"
-
-main = do
- writeFile file "foo"
-
- h1 <- openFile file ReadMode
- h2 <- openFile file ReadMode
- hClose h1
- tryIOError (openFile file AppendMode) >>= print
-
diff --git a/testsuite/tests/ghc-regress/lib/IO/countReaders001.stdout b/testsuite/tests/ghc-regress/lib/IO/countReaders001.stdout
deleted file mode 100644
index 41644bff37..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/countReaders001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Left countReaders001.txt: openFile: resource busy (file is locked)
diff --git a/testsuite/tests/ghc-regress/lib/IO/countReaders001.stdout-i386-unknown-mingw32 b/testsuite/tests/ghc-regress/lib/IO/countReaders001.stdout-i386-unknown-mingw32
deleted file mode 100644
index bf80d9dc12..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/countReaders001.stdout-i386-unknown-mingw32
+++ /dev/null
@@ -1 +0,0 @@
-Left countReaders001.txt: openFile: permission denied (Permission denied)
diff --git a/testsuite/tests/ghc-regress/lib/IO/decodingerror001.hs b/testsuite/tests/ghc-regress/lib/IO/decodingerror001.hs
deleted file mode 100644
index 6c9dca1489..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/decodingerror001.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-import Control.Monad
-import System.IO
-import System.IO.Error
-import GHC.IO.Encoding (utf8)
-import GHC.IO.Handle (hSetEncoding)
-
-testfiles = ["decodingerror001.in1", "decodingerror001.in2"]
-
-main = mapM_ alltests testfiles
-
-alltests file = mapM (test file) [NoBuffering,
- LineBuffering,
- BlockBuffering Nothing,
- BlockBuffering (Just 9),
- BlockBuffering (Just 23) ]
-
-test file bufmode = do
- h <- openFile file ReadMode
- hSetEncoding h utf8
- hSetBuffering h bufmode
- e <- try $ forever $ hGetChar h >>= putChar
- print (e :: Either IOError ())
diff --git a/testsuite/tests/ghc-regress/lib/IO/decodingerror001.in1 b/testsuite/tests/ghc-regress/lib/IO/decodingerror001.in1
deleted file mode 100644
index 7686e7b2f4..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/decodingerror001.in1
+++ /dev/null
@@ -1 +0,0 @@
-UTF8 error:€after error
diff --git a/testsuite/tests/ghc-regress/lib/IO/decodingerror001.in2 b/testsuite/tests/ghc-regress/lib/IO/decodingerror001.in2
deleted file mode 100644
index fe33bd3883..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/decodingerror001.in2
+++ /dev/null
@@ -1 +0,0 @@
-UTF8 incomplete sequence at end:ð \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/IO/decodingerror001.stdout b/testsuite/tests/ghc-regress/lib/IO/decodingerror001.stdout
deleted file mode 100644
index 21e5208c79..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/decodingerror001.stdout
+++ /dev/null
@@ -1,10 +0,0 @@
-UTF8 error:Left decodingerror001.in1: hGetChar: invalid argument (invalid byte sequence)
-UTF8 error:Left decodingerror001.in1: hGetChar: invalid argument (invalid byte sequence)
-UTF8 error:Left decodingerror001.in1: hGetChar: invalid argument (invalid byte sequence)
-UTF8 error:Left decodingerror001.in1: hGetChar: invalid argument (invalid byte sequence)
-UTF8 error:Left decodingerror001.in1: hGetChar: invalid argument (invalid byte sequence)
-UTF8 incomplete sequence at end:Left decodingerror001.in2: hGetChar: invalid argument (invalid byte sequence for this encoding)
-UTF8 incomplete sequence at end:Left decodingerror001.in2: hGetChar: invalid argument (invalid byte sequence for this encoding)
-UTF8 incomplete sequence at end:Left decodingerror001.in2: hGetChar: invalid argument (invalid byte sequence for this encoding)
-UTF8 incomplete sequence at end:Left decodingerror001.in2: hGetChar: invalid argument (invalid byte sequence for this encoding)
-UTF8 incomplete sequence at end:Left decodingerror001.in2: hGetChar: invalid argument (invalid byte sequence for this encoding)
diff --git a/testsuite/tests/ghc-regress/lib/IO/encoding001.hs b/testsuite/tests/ghc-regress/lib/IO/encoding001.hs
deleted file mode 100644
index 3135155feb..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/encoding001.hs
+++ /dev/null
@@ -1,71 +0,0 @@
-import Control.Monad
-import System.IO
-import GHC.IO.Encoding
-import GHC.IO.Handle
-import Data.Bits
-import Data.Word
-import Data.Char
-import System.FilePath
-import System.Exit
-
-file = "encoding001"
-
-encodings = [(utf8, "utf8"),
- (utf8_bom,"utf8_bom"),
- (utf16, "utf16"),
- (utf16le,"utf16le"),
- (utf16be,"utf16be"),
- (utf32, "utf32"),
- (utf32le,"utf32le"),
- (utf32be,"utf32be")]
-
-main = do
- -- make a UTF-32BE file
- h <- openBinaryFile (file <.> "utf32be") WriteMode
- let expand32 :: Word32 -> [Char]
- expand32 x = [
- chr (fromIntegral (x `shiftR` 24) .&. 0xff),
- chr (fromIntegral (x `shiftR` 16) .&. 0xff),
- chr (fromIntegral (x `shiftR` 8) .&. 0xff),
- chr (fromIntegral x .&. 0xff) ]
- hPutStr h (concatMap expand32 [ 0, 32 .. 0xD7ff ])
- -- We avoid the private-use characters at 0xEF00..0xEFFF
- -- that reserved for GHC's PEP383 roundtripping implementation.
- --
- -- The reason is that currently normal text containing those
- -- characters will be mangled, even if we aren't using an encoding
- -- created using //ROUNDTRIP.
- hPutStr h (concatMap expand32 [ 0xE000, 0xE000+32 .. 0xEEFF ])
- hPutStr h (concatMap expand32 [ 0xF000, 0xF000+32 .. 0x10FFFF ])
- hClose h
-
- -- convert the UTF-32BE file into each other encoding
- forM_ encodings $ \(enc,name) -> do
- when (name /= "utf32be") $ do
- hin <- openFile (file <.> "utf32be") ReadMode
- hSetEncoding hin utf32be
- hout <- openFile (file <.> name) WriteMode
- hSetEncoding hout enc
- hGetContents hin >>= hPutStr hout
- hClose hin
- hClose hout
-
- forM_ [ (from,to) | from <- encodings, to <- encodings, snd from /= snd to ]
- $ \((fromenc,fromname),(toenc,toname)) -> do
- hin <- openFile (file <.> fromname) ReadMode
- hSetEncoding hin fromenc
- hout <- openFile (file <.> toname <.> fromname) WriteMode
- hSetEncoding hout toenc
- hGetContents hin >>= hPutStr hout
- hClose hin
- hClose hout
-
- h1 <- openBinaryFile (file <.> toname) ReadMode
- h2 <- openBinaryFile (file <.> toname <.> fromname) ReadMode
- str1 <- hGetContents h1
- str2 <- hGetContents h2
- when (str1 /= str2) $ do
- putStrLn (file <.> toname ++ " and " ++ file <.> toname <.> fromname ++ " differ")
- exitWith (ExitFailure 1)
- hClose h1
- hClose h2
diff --git a/testsuite/tests/ghc-regress/lib/IO/encoding002.hs b/testsuite/tests/ghc-regress/lib/IO/encoding002.hs
deleted file mode 100644
index 65d60a3993..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/encoding002.hs
+++ /dev/null
@@ -1,67 +0,0 @@
-import Control.Monad
-
-import System.IO
-import Control.Exception
-
-import Foreign.Marshal.Array
-import Foreign.Ptr
-
-import GHC.Foreign
-import GHC.IO.Encoding (TextEncoding, mkTextEncoding)
-
-import Data.Char
-import Data.Word
-
-import Prelude hiding (catch)
-
-
-decode :: TextEncoding -> [Word8] -> IO String
-decode enc xs = withArrayLen xs (\sz p -> peekCStringLen enc (castPtr p, sz)) `catch` \e -> return (show (e :: IOException))
-
-encode :: TextEncoding -> String -> IO [Word8]
-encode enc cs = withCStringLen enc cs (\(p, sz) -> peekArray sz (castPtr p)) `catch` \e -> return (const [] (e :: IOException))
-
-asc :: Char -> Word8
-asc = fromIntegral . ord
-
-families = [ ([asc 'H', asc 'i', 0xED, 0xB2, 0x80, asc '!'],
- ["UTF-8", "UTF-8//IGNORE", "UTF-8//TRANSLIT", "UTF-8//ROUNDTRIP"])
- , ([asc 'H', 0, asc 'i', 0, 0xFF, 0xDF, 0xFF, 0xDF, asc '!', 0],
- ["UTF-16LE", "UTF-16LE//IGNORE", "UTF-16LE//TRANSLIT", "UTF-16LE//ROUNDTRIP"])
- , ([0, asc 'H', 0, asc 'i', 0xDF, 0xFF, 0xDF, 0xFF, 0, asc '!'],
- ["UTF-16BE", "UTF-16BE//IGNORE", "UTF-16BE//TRANSLIT", "UTF-16BE//ROUNDTRIP"])
- , ([asc 'H', 0, 0, 0, asc 'i', 0, 0, 0, 0xED, 0xB2, 0x80, 0, asc '!', 0, 0, 0],
- ["UTF-32LE", "UTF-32LE//IGNORE", "UTF-32LE//TRANSLIT", "UTF-32LE//ROUNDTRIP"])
- , ([0, 0, 0, asc 'H', 0, 0, 0, asc 'i', 0, 0x80, 0xB2, 0xED, 0, 0, 0, asc '!'],
- ["UTF-32BE", "UTF-32BE//IGNORE", "UTF-32BE//TRANSLIT", "UTF-32BE//ROUNDTRIP"])
- ]
-
-main = do
- surrogate_enc <- mkTextEncoding "UTF-8//ROUNDTRIP"
-
- -- Test that invalid input is correctly roundtripped as surrogates
- -- This only works for the UTF-8 UTF since it is the only UTF which
- -- is an ASCII superset.
- putStrLn $ "== UTF-8: roundtripping"
- let invalid_bytes = [asc 'H', asc 'i', 0xED, 0xB2, 0x80, asc '!']
- surrogates <- decode surrogate_enc invalid_bytes
- invalid_bytes' <- encode surrogate_enc surrogates
- print invalid_bytes
- print surrogates
- print invalid_bytes'
- print (invalid_bytes == invalid_bytes')
- putStrLn ""
-
- forM families $ \(invalid_bytes, enc_names) -> do
- encs <- mapM mkTextEncoding enc_names
- let name = head enc_names
-
- -- How we deal with decoding errors in the various modes:
- putStrLn $ "== " ++ name ++ ": decoding"
- forM encs $ \enc -> decode enc invalid_bytes >>= print
-
- -- How about encoding errors, particularly those from embedded surrogates?
- putStrLn $ "== " ++ name ++ ": encoding"
- forM encs $ \enc -> encode enc "Hi\xDC80!" >>= print
-
- putStrLn ""
diff --git a/testsuite/tests/ghc-regress/lib/IO/encoding002.stdout b/testsuite/tests/ghc-regress/lib/IO/encoding002.stdout
deleted file mode 100644
index 70addd37f5..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/encoding002.stdout
+++ /dev/null
@@ -1,61 +0,0 @@
-== UTF-8: roundtripping
-[72,105,237,178,128,33]
-"Hi\61421\61362\61312!"
-[72,105,237,178,128,33]
-True
-
-== UTF-8: decoding
-"recoverDecode: invalid argument (invalid byte sequence)"
-"Hi!"
-"Hi\65533\65533\65533!"
-"Hi\61421\61362\61312!"
-== UTF-8: encoding
-[]
-[72,105,33]
-[72,105,63,33]
-[72,105,128,33]
-
-== UTF-16LE: decoding
-"recoverDecode: invalid argument (invalid byte sequence)"
-"Hi\65503\8671"
-"Hi\65533\65503\8671\65533"
-"Hi\61439\65503\8671\NUL"
-== UTF-16LE: encoding
-[]
-[72,0,105,0,33,0]
-[72,0,105,0,63,0,33,0]
-[72,0,105,0,128,33,0]
-
-== UTF-16BE: decoding
-"recoverDecode: invalid argument (invalid byte sequence)"
-"Hi\65503\65280"
-"Hi\65533\65503\65280\65533"
-"Hi\61407\65503\65280!"
-== UTF-16BE: encoding
-[]
-[0,72,0,105,0,33]
-[0,72,0,105,0,63,0,33]
-[0,72,0,105,128,0,33]
-
-== UTF-32LE: decoding
-"recoverDecode: invalid argument (invalid byte sequence)"
-"Hi\8448"
-"Hi\65533\65533\65533\8448\65533"
-"Hi\61421\61362\61312\8448\NUL"
-== UTF-32LE: encoding
-[]
-[72,0,0,0,105,0,0,0,33,0,0,0]
-[72,0,0,0,105,0,0,0,63,0,0,0,33,0,0,0]
-[72,0,0,0,105,0,0,0,128,33,0,0,0]
-
-== UTF-32BE: decoding
-"recoverDecode: invalid argument (invalid byte sequence)"
-"Hi!"
-"Hi\65533\65533\65533\65533!"
-"Hi\NUL\61312\61362\61421!"
-== UTF-32BE: encoding
-[]
-[0,0,0,72,0,0,0,105,0,0,0,33]
-[0,0,0,72,0,0,0,105,0,0,0,63,0,0,0,33]
-[0,0,0,72,0,0,0,105,128,0,0,0,33]
-
diff --git a/testsuite/tests/ghc-regress/lib/IO/encodingerror001.hs b/testsuite/tests/ghc-regress/lib/IO/encodingerror001.hs
deleted file mode 100644
index 327b490adb..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/encodingerror001.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-import System.IO
-import System.IO.Error
-import Text.Printf
-import Control.Monad
-
-main = do
- hSetEncoding stdout latin1
- forM [NoBuffering,
- LineBuffering,
- BlockBuffering Nothing,
- BlockBuffering (Just 3),
- BlockBuffering (Just 9),
- BlockBuffering (Just 32)] $ \b -> do
- hSetBuffering stdout b
- checkedPutStr "test 1\n"
- checkedPutStr "Ä›\n" -- nothing gets written
- checkedPutStr "test 2\n"
- checkedPutStr "Hέllo\n" -- we should write at least the 'H'
- checkedPutStr "test 3\n"
- checkedPutStr "Hello αβγ\n" -- we should write at least the "Hello "
-
-checkedPutStr str = do
- r <- try $ putStr str
- case r of
- Right _ -> return ()
- Left e -> printf "Caught %s while trying to write %s\n"
- (show e) (show str)
diff --git a/testsuite/tests/ghc-regress/lib/IO/encodingerror001.stdout b/testsuite/tests/ghc-regress/lib/IO/encodingerror001.stdout
deleted file mode 100644
index 7406cd9168..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/encodingerror001.stdout
+++ /dev/null
@@ -1,36 +0,0 @@
-test 1
-Caught <stdout>: hPutChar: invalid argument (invalid character) while trying to write "\283\n"
-test 2
-HCaught <stdout>: hPutChar: invalid argument (invalid character) while trying to write "H\941llo\n"
-test 3
-Hello Caught <stdout>: hPutChar: invalid argument (invalid character) while trying to write "Hello \945\946\947\n"
-test 1
-Caught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "\283\n"
-test 2
-HCaught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "H\941llo\n"
-test 3
-Hello Caught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "Hello \945\946\947\n"
-test 1
-Caught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "\283\n"
-test 2
-HCaught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "H\941llo\n"
-test 3
-Hello Caught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "Hello \945\946\947\n"
-test 1
-Caught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "\283\n"
-test 2
-HCaught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "H\941llo\n"
-test 3
-Hello Caught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "Hello \945\946\947\n"
-test 1
-Caught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "\283\n"
-test 2
-HCaught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "H\941llo\n"
-test 3
-Hello Caught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "Hello \945\946\947\n"
-test 1
-Caught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "\283\n"
-test 2
-HCaught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "H\941llo\n"
-test 3
-Hello Caught <stdout>: commitBuffer: invalid argument (invalid character) while trying to write "Hello \945\946\947\n"
diff --git a/testsuite/tests/ghc-regress/lib/IO/environment001.hs b/testsuite/tests/ghc-regress/lib/IO/environment001.hs
deleted file mode 100644
index 11d7912cdd..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/environment001.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-import System.Environment
-
-main = do
- var0 <- getEnv "GHC_TEST"
- putStrLn var0
- -- The length proves that we actually decoded it properly, not just read it
- -- in as latin1 or something (#3308, #3307)
- putStrLn ("Test 1: " ++ show (length var0))
-
- [arg0] <- getArgs
- putStrLn arg0
- putStrLn ("Test 2: " ++ show (length arg0))
-
- [arg1] <- withArgs ["你好!"] getArgs
- putStrLn arg1
- putStrLn ("Test 3: " ++ show (length arg1))
diff --git a/testsuite/tests/ghc-regress/lib/IO/environment001.stdout b/testsuite/tests/ghc-regress/lib/IO/environment001.stdout
deleted file mode 100644
index 2434d0c14d..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/environment001.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-马克斯
-Test 1: 3
-说
-Test 2: 1
-你好!
-Test 3: 3
diff --git a/testsuite/tests/ghc-regress/lib/IO/finalization001.hs b/testsuite/tests/ghc-regress/lib/IO/finalization001.hs
deleted file mode 100644
index 2bf6353453..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/finalization001.hs
+++ /dev/null
@@ -1,26 +0,0 @@
---- !!! test for bug in handle finalization fixed in
---- !!! 1.60 +1 -2 fptools/ghc/lib/std/PrelHandle.lhs
---- !!! 1.15 +4 -10 fptools/ghc/lib/std/PrelIO.lhs
-
-module Main (main) where
-
-import System.IO
-
-doTest :: IO ()
-doTest = do
- sd <- openFile "finalization001.hs" ReadWriteMode
- result <- hGetContents sd
- slurp result
- hClose sd
- if "" `elem` lines (filter (/= '\r') result)
- then
- putStrLn "ok"
- else
- putStrLn "fail"
-
-slurp :: String -> IO ()
-slurp [] = return ()
-slurp (x:xs) = x `seq` slurp xs
-
-main :: IO ()
-main = sequence_ (take 200 (repeat doTest))
diff --git a/testsuite/tests/ghc-regress/lib/IO/finalization001.stdout b/testsuite/tests/ghc-regress/lib/IO/finalization001.stdout
deleted file mode 100644
index ec04732f97..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/finalization001.stdout
+++ /dev/null
@@ -1,200 +0,0 @@
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
-ok
diff --git a/testsuite/tests/ghc-regress/lib/IO/hClose001.hs b/testsuite/tests/ghc-regress/lib/IO/hClose001.hs
deleted file mode 100644
index 8d31447e95..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hClose001.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-import System.IO
-import System.IO.Error
-
-main = do
- h <- openFile "hClose001.tmp" WriteMode
- hPutStr h "junk"
- hClose h
- hPutStr h "junk" `catchIOError` \ err -> if isIllegalOperation err then putStr "Okay\n" else error "Not okay\n"
diff --git a/testsuite/tests/ghc-regress/lib/IO/hClose001.stdout b/testsuite/tests/ghc-regress/lib/IO/hClose001.stdout
deleted file mode 100644
index 1ddd42bbe7..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hClose001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Okay
diff --git a/testsuite/tests/ghc-regress/lib/IO/hClose002.hs b/testsuite/tests/ghc-regress/lib/IO/hClose002.hs
deleted file mode 100644
index ebf26b4663..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hClose002.hs
+++ /dev/null
@@ -1,32 +0,0 @@
-import System.IO
-import Control.Exception
-
-import qualified GHC.IO.Device as IODevice
-import GHC.IO.Handle
-import GHC.IO.Handle.Internals
-import GHC.IO.Handle.Types
-import System.Posix.Internals
-
-main = do
- h <- openFile "hClose002.tmp" WriteMode
- -- close the FD without telling the IO library:
- naughtyClose h
- -- first hClose will raise an exception, but close the
- -- Handle anyway:
- showPossibleException (hClose h)
- -- second hClose should success (Handle is already closed)
- showPossibleException (hClose h)
- -- this should succeed (checking that the lock on the file has
- -- been released:
- h <- openFile "hClose002.tmp" ReadMode
- showPossibleException (hClose h)
- showPossibleException (hClose h)
-
-showPossibleException :: IO () -> IO ()
-showPossibleException f = do e <- try f
- print (e :: Either SomeException ())
-
-naughtyClose h =
- withHandle_ "naughtyClose" h $ \ Handle__{haDevice=dev} -> do
- IODevice.close dev
-
diff --git a/testsuite/tests/ghc-regress/lib/IO/hClose002.stdout b/testsuite/tests/ghc-regress/lib/IO/hClose002.stdout
deleted file mode 100644
index f26be4ab07..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hClose002.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-Left hClose002.tmp: hClose: invalid argument (Bad file descriptor)
-Right ()
-Right ()
-Right ()
diff --git a/testsuite/tests/ghc-regress/lib/IO/hClose002.stdout-i386-unknown-solaris2 b/testsuite/tests/ghc-regress/lib/IO/hClose002.stdout-i386-unknown-solaris2
deleted file mode 100644
index 39a24de031..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hClose002.stdout-i386-unknown-solaris2
+++ /dev/null
@@ -1,4 +0,0 @@
-Left hClose002.tmp: hClose: invalid argument (Bad file number)
-Right ()
-Right ()
-Right ()
diff --git a/testsuite/tests/ghc-regress/lib/IO/hClose003.hs b/testsuite/tests/ghc-regress/lib/IO/hClose003.hs
deleted file mode 100644
index cbaf49d6db..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hClose003.hs
+++ /dev/null
@@ -1,42 +0,0 @@
--- Test for #3128, file descriptor leak when hClose fails
-
-import System.IO
-import Control.Exception
-import Data.Char
-
-import System.Posix
-import qualified GHC.IO.Device as IODevice
-import GHC.IO.Handle
-import GHC.IO.Handle.Internals
-import GHC.IO.Handle.Types
-import System.Posix.Internals
-
-main = do
- (read,write) <- createPipe
- hread <- fdToHandle read
- hwrite <- fdToHandle write
-
- -- close the FD without telling the IO library:
- showPossibleException (hClose hread)
- hIsOpen hread >>= print
-
- -- put some data in the Handle's write buffer:
- hPutStr hwrite "testing"
- -- now try to close the Handle:
- showPossibleException (hClose hwrite)
- hIsOpen hwrite >>= print
-
-showPossibleException :: IO () -> IO ()
-showPossibleException f = do
- e <- try f
- putStrLn (sanitise (show (e :: Either SomeException ())))
- where
- -- we don't care which file descriptor it is
- sanitise [] = []
- sanitise (x:xs) = if isDigit x then ('X':(sanitise' xs)) else (x:(sanitise xs))
- sanitise' [] = []
- sanitise' (x:xs) = if isDigit x then (sanitise' xs) else (x:(sanitise xs))
-
-naughtyClose h =
- withHandle_ "naughtyClose" h $ \ Handle__{haDevice=dev} -> do
- IODevice.close dev
diff --git a/testsuite/tests/ghc-regress/lib/IO/hClose003.stdout b/testsuite/tests/ghc-regress/lib/IO/hClose003.stdout
deleted file mode 100644
index d12f84d7d7..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hClose003.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-Right ()
-False
-Left <file descriptor: X>: hClose: resource vanished (Broken pipe)
-False
diff --git a/testsuite/tests/ghc-regress/lib/IO/hDuplicateTo001.hs b/testsuite/tests/ghc-regress/lib/IO/hDuplicateTo001.hs
deleted file mode 100644
index 5a1484a012..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hDuplicateTo001.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-import GHC.Handle
-import GHC.IOBase
-import System.IO
-import Control.Concurrent.MVar
-import Data.Typeable
-import qualified GHC.IO.FD as FD
-
-main = do
- h <- openFile "tmp" WriteMode
- hDuplicateTo h stdout
-
- fdh <- getfd h
- fdstdout <- getfd stdout
- hPutStrLn stderr ("h: " ++ show (fdh /= fdstdout) ++ "\nstdout: " ++ show fdstdout)
-
- hClose h
- putStrLn "bla"
-
-
-getfd h@(FileHandle _ mvar) = do
- withMVar mvar $ \h__@Handle__{haDevice=dev} ->
- case cast dev of
- Just fd -> return (FD.fdFD fd)
- Nothing -> error "getfd"
diff --git a/testsuite/tests/ghc-regress/lib/IO/hDuplicateTo001.stderr b/testsuite/tests/ghc-regress/lib/IO/hDuplicateTo001.stderr
deleted file mode 100644
index 14a31438a6..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hDuplicateTo001.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-h: True
-stdout: 1
diff --git a/testsuite/tests/ghc-regress/lib/IO/hFileSize001.hs b/testsuite/tests/ghc-regress/lib/IO/hFileSize001.hs
deleted file mode 100644
index 62b3e88b9c..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hFileSize001.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-import System.IO
-
--- !!! test hFileSize
-
-main = do
- h <- openFile "hFileSize001.hs" ReadMode
- sz <- hFileSize h
- print sz
diff --git a/testsuite/tests/ghc-regress/lib/IO/hFileSize001.stdout b/testsuite/tests/ghc-regress/lib/IO/hFileSize001.stdout
deleted file mode 100644
index 94361d49fd..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hFileSize001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-132
diff --git a/testsuite/tests/ghc-regress/lib/IO/hFileSize001.stdout-mingw b/testsuite/tests/ghc-regress/lib/IO/hFileSize001.stdout-mingw
deleted file mode 100644
index 6a4573e805..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hFileSize001.stdout-mingw
+++ /dev/null
@@ -1 +0,0 @@
-133
diff --git a/testsuite/tests/ghc-regress/lib/IO/hFileSize002.hs b/testsuite/tests/ghc-regress/lib/IO/hFileSize002.hs
deleted file mode 100644
index 6c1ad2f57a..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hFileSize002.hs
+++ /dev/null
@@ -1,35 +0,0 @@
--- !!! Testing IO.hFileSize
-module Main(main) where
-
-import Control.Monad
-import System.Directory ( removeFile, doesFileExist )
-import System.IO
-
-main = do
- sz <- hFileSize stdin `catch` (\ _ -> return (-1))
- print sz
- let fn = "hFileSize002.out"
- f <- doesFileExist fn
- when f (removeFile fn)
- hdl <- openFile fn WriteMode
- hPutStr hdl "file_size"
- -- with default buffering
- sz <- hFileSize hdl
- print sz
-
- hSetBuffering hdl NoBuffering
- hPutStr hdl "file_size"
- -- with no buffering
- sz <- hFileSize hdl
- print sz
- hSetBuffering hdl LineBuffering
- hPutStr hdl "file_size"
- -- with line buffering
- sz <- hFileSize hdl
- print sz
- hSetBuffering hdl (BlockBuffering (Just 4))
- -- with block buffering
- hPutStr hdl "file_size"
- sz <- hFileSize hdl
- print sz
- hClose hdl
diff --git a/testsuite/tests/ghc-regress/lib/IO/hFileSize002.stdout b/testsuite/tests/ghc-regress/lib/IO/hFileSize002.stdout
deleted file mode 100644
index 23dd734048..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hFileSize002.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
--1
-9
-18
-27
-36
diff --git a/testsuite/tests/ghc-regress/lib/IO/hFlush001.hs b/testsuite/tests/ghc-regress/lib/IO/hFlush001.hs
deleted file mode 100644
index 78c7b7eeb3..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hFlush001.hs
+++ /dev/null
@@ -1,31 +0,0 @@
--- !!! Flushing
-module Main(main) where
-
-import Control.Monad
-import System.Directory ( removeFile, doesFileExist )
-import System.IO
-
-main = do
- hFlush stdin `catch` \ _ -> putStrLn "No can do - flushing read-only handles isn't legal"
- putStr "Hello,"
- hFlush stdout
- putStr "Hello - "
- hFlush stderr
- hdl <- openFile "hFlush001.hs" ReadMode
- hFlush hdl `catch` \ _ -> putStrLn "No can do - flushing read-only handles isn't legal"
- hClose hdl
- remove
- hdl <- openFile "hFlush001.out" WriteMode
- hFlush hdl
- hClose hdl
- remove
- hdl <- openFile "hFlush001.out" AppendMode
- hFlush hdl
- hClose hdl
- remove
- hdl <- openFile "hFlush001.out" ReadWriteMode
- hFlush hdl
- hClose hdl
- where remove = do
- f <- doesFileExist "hFlush001.out"
- when f (removeFile "hFlush001.out")
diff --git a/testsuite/tests/ghc-regress/lib/IO/hFlush001.stdout b/testsuite/tests/ghc-regress/lib/IO/hFlush001.stdout
deleted file mode 100644
index 0954a7a0b4..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hFlush001.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-No can do - flushing read-only handles isn't legal
-Hello,Hello - No can do - flushing read-only handles isn't legal
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetBuf001.hs b/testsuite/tests/ghc-regress/lib/IO/hGetBuf001.hs
deleted file mode 100644
index eea599ea74..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetBuf001.hs
+++ /dev/null
@@ -1,218 +0,0 @@
--- !!! Testing hGetBuf(NonBlocking), hPutBuf(NonBlocking)
-
-import System.Posix
-import System.IO
-import Control.Concurrent
-import Foreign
-import Foreign.C
-import System.Exit
-import Control.Exception
-import Control.Monad
-
-
-main = do
- -- test should run quickly, but arrange to kill it if it hangs for any reason:
- main_t <- myThreadId
- forkIO $ do
- threadDelay 10000000
- throwTo main_t (ErrorCall "killed")
-
- zipWithM_ ($)
- [ f rbuf wbuf
- | f <- [hGetBufTest, hGetBufNBTest, hGetBufSomeTest],
- rbuf <- [buf1,buf2,buf3],
- wbuf <- [buf1,buf2,buf3]
- ]
- [1..]
-
-msg = "hello!"
-msg_length = length msg
-
-buf1 = NoBuffering
-buf2 = BlockBuffering (Just 5)
-buf3 = BlockBuffering (Just 10)
-
--- chosen to be larger than buf2 & smaller than buf3, so that we exercise
--- all code paths:
-read_size = 8 :: Int
-
--- ----------------------------------------------------------------------------
-
--- hGetBuf/hPutBuf:
--- - test that it always reads all the data that is available
--- (with buffer size <, =, > message size).
--- - test that at the EOF, it returns a short read.
--- - the writing end is using hPutBuf, with various buffer sizes, and
--- doing an hFlush at the end of each write.
-
-hGetBufTest rbuf wbuf n = do
- (read,write) <- createPipe
- hread <- fdToHandle read
- hwrite <- fdToHandle write
- m1 <- newEmptyMVar
- m2 <- newEmptyMVar
- finished <- newEmptyMVar
- hSetBuffering hread rbuf
- hSetBuffering hwrite wbuf
- forkIO (readProc m1 m2 finished hread)
- writeProc m1 m2 hwrite
- takeMVar finished
- putStrLn ("test " ++ show n ++ " OK")
-
-
-readProc :: MVar () -> MVar () -> MVar () -> Handle -> IO ()
-readProc m1 m2 finished h = do
- buf <- mallocBytes 20
- let
- loop 0 = return ()
- loop n = do putMVar m2 (); takeMVar m1
- r <- hGetBuf h buf msg_length
- if (r /= msg_length)
- then do hPutStr stderr ("error: " ++ show r)
- exitFailure
- else do s <- peekCStringLen (buf,r)
- hPutStr stdout (show n ++ " ")
- loop (n-1)
- loop 100
- hPutStr stdout "\n"
- putMVar m2 (); takeMVar m1
- r <- hGetBuf h buf read_size -- EOF, should get short read
- s <- peekCStringLen (buf,r)
- putStrLn ("got " ++ show r ++ ": " ++ s)
- r <- hGetBuf h buf read_size -- EOF, should get zero-length read
- s <- peekCStringLen (buf,r)
- putStrLn ("got " ++ show r ++ ": " ++ s)
- hClose h
- putMVar finished ()
-
-writeProc :: MVar () -> MVar () -> Handle -> IO ()
-writeProc m1 m2 h = do
- let
- loop 0 = return ()
- loop n =
- withCStringLen msg $ \ (s,len) -> do
- takeMVar m2
- hPutBuf h s len
- hFlush h
- putMVar m1 ()
- loop (n-1)
-
- loop 100
- takeMVar m2
- withCString "end" $ \s -> do
- hPutBuf h s 3
- putMVar m1 ()
- hClose h
-
--- -----------------------------------------------------------------------------
--- hGetBufNonBlocking:
-
-hGetBufNBTest rbuf wbuf n = do
- (read,write) <- createPipe
- hread <- fdToHandle read
- hwrite <- fdToHandle write
- m1 <- newEmptyMVar
- m2 <- newEmptyMVar
- finished <- newEmptyMVar
- hSetBuffering hread rbuf
- hSetBuffering hwrite wbuf
- forkIO (readProcNB m1 m2 finished hread)
- writeProcNB m1 m2 hwrite
- takeMVar finished
- putStrLn ("test " ++ show n ++ " OK")
-
-
-readProcNB :: MVar () -> MVar () -> MVar () -> Handle -> IO ()
-readProcNB m1 m2 finished h = do
- buf <- mallocBytes 20
-
- -- first, test that we can do a non-blocking read:
- r <- hGetBufNonBlocking h buf read_size
- s <- peekCStringLen (buf,r)
- putStrLn ("got " ++ show r ++ ": " ++ s)
-
- let
- loop 0 = return ()
- loop n = do putMVar m2 (); takeMVar m1
- r <- hGetBufNonBlocking h buf read_size
- if (r /= msg_length)
- then do hPutStr stderr ("error: " ++ show r)
- exitFailure
- else do s <- peekCStringLen (buf,r)
- hPutStr stdout (show n ++ " ")
- loop (n-1)
- loop 100
- hPutStr stdout "\n"
- putMVar m2 (); takeMVar m1
- r <- hGetBufNonBlocking h buf read_size -- EOF, should get short read
- s <- peekCStringLen (buf,r)
- putStrLn ("got " ++ show r ++ ": " ++ s)
- r <- hGetBufNonBlocking h buf read_size -- EOF, should get zero-length read
- s <- peekCStringLen (buf,r)
- putStrLn ("got " ++ show r ++ ": " ++ s)
- hClose h
- putMVar finished ()
-
-writeProcNB :: MVar () -> MVar () -> Handle -> IO ()
-writeProcNB m1 m2 h = do
- let
- loop 0 = return ()
- loop n =
- withCStringLen msg $ \ (s,len) -> do
- takeMVar m2
- hPutBufNonBlocking h s len
- hFlush h
- putMVar m1 ()
- loop (n-1)
-
- loop 100
- takeMVar m2
- withCString "end" $ \s -> do
- hPutBuf h s 3
- hFlush h
- putMVar m1 ()
- hClose h
-
--- -----------------------------------------------------------------------------
--- hGetBufSome:
-
-hGetBufSomeTest rbuf wbuf n = do
- (read,write) <- createPipe
- hread <- fdToHandle read
- hwrite <- fdToHandle write
- m1 <- newEmptyMVar
- m2 <- newEmptyMVar
- finished <- newEmptyMVar
- hSetBuffering hread rbuf
- hSetBuffering hwrite wbuf
- forkIO (readProcSome m1 m2 finished hread)
- writeProcNB m1 m2 hwrite
- takeMVar finished
- putStrLn ("test " ++ show n ++ " OK")
-
-
-readProcSome :: MVar () -> MVar () -> MVar () -> Handle -> IO ()
-readProcSome m1 m2 finished h = do
- buf <- mallocBytes 20
-
- let
- loop 0 = return ()
- loop n = do putMVar m2 (); takeMVar m1
- r <- hGetBufSome h buf read_size
- if (r /= msg_length)
- then do hPutStr stderr ("error: " ++ show r)
- exitFailure
- else do s <- peekCStringLen (buf,r)
- hPutStr stdout (show n ++ " ")
- loop (n-1)
- loop 100
- hPutStr stdout "\n"
- putMVar m2 (); takeMVar m1
- r <- hGetBufSome h buf read_size -- EOF, should get short read
- s <- peekCStringLen (buf,r)
- putStrLn ("got " ++ show r ++ ": " ++ s)
- r <- hGetBufSome h buf read_size -- EOF, should get zero-length read
- s <- peekCStringLen (buf,r)
- putStrLn ("got " ++ show r ++ ": " ++ s)
- hClose h
- putMVar finished ()
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetBuf001.stdout b/testsuite/tests/ghc-regress/lib/IO/hGetBuf001.stdout
deleted file mode 100644
index 694ff4eedf..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetBuf001.stdout
+++ /dev/null
@@ -1,117 +0,0 @@
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 1 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 2 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 3 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 4 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 5 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 6 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 7 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 8 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 9 OK
-got 0:
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 10 OK
-got 0:
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 11 OK
-got 0:
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 12 OK
-got 0:
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 13 OK
-got 0:
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 14 OK
-got 0:
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 15 OK
-got 0:
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 16 OK
-got 0:
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 17 OK
-got 0:
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 18 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 19 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 20 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 21 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 22 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 23 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 24 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 25 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 26 OK
-100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
-got 3: end
-got 0:
-test 27 OK
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetBuffering001.hs b/testsuite/tests/ghc-regress/lib/IO/hGetBuffering001.hs
deleted file mode 100644
index 83188b2796..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetBuffering001.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-import System.IO
-
-main =
- sequence (map hIsOpen [stdin, stdout, stderr]) >>= \ opens ->
- print opens >>
- sequence (map hIsClosed [stdin, stdout, stderr]) >>= \ closeds ->
- print closeds >>
- sequence (map hIsReadable [stdin, stdout, stderr]) >>= \ readables ->
- print readables >>
- sequence (map hIsWritable [stdin, stdout, stderr]) >>= \ writables ->
- print writables >>
- sequence (map hIsBlockBuffered [stdin, stdout, stderr]) >>= \ buffereds ->
- print buffereds >>
- sequence (map hIsLineBuffered [stdin, stdout, stderr]) >>= \ buffereds ->
- print buffereds >>
- sequence (map hIsNotBuffered [stdin, stdout, stderr]) >>= \ buffereds ->
- print buffereds
- where
- hIsBlockBuffered h = hGetBuffering h >>= \ b -> return $ case b of { BlockBuffering _ -> True; _ -> False }
- hIsLineBuffered h = hGetBuffering h >>= \ b -> return $ case b of { LineBuffering -> True; _ -> False }
- hIsNotBuffered h = hGetBuffering h >>= \ b -> return $ case b of { NoBuffering -> True; _ -> False }
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetBuffering001.stdout b/testsuite/tests/ghc-regress/lib/IO/hGetBuffering001.stdout
deleted file mode 100644
index 75b9a133d9..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetBuffering001.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-[True,True,True]
-[False,False,False]
-[True,False,False]
-[False,True,True]
-[True,True,False]
-[False,False,False]
-[False,False,True]
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetChar001.hs b/testsuite/tests/ghc-regress/lib/IO/hGetChar001.hs
deleted file mode 100644
index f5ca666828..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetChar001.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-import System.IO
-
-main = do
- hSetBuffering stdout NoBuffering
- putStr "Enter an integer: "
- x1 <- readLine
- putStr "Enter another integer: "
- x2 <- readLine
- putStr ("Their sum is " ++ show (read x1 + read x2 :: Int) ++ "\n")
-
- where readLine = do
- eof <- isEOF
- if eof then return [] else do
- c <- getChar
- if c `elem` ['\n','\r']
- then return []
- else do cs <- readLine
- return (c:cs)
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetChar001.stdin b/testsuite/tests/ghc-regress/lib/IO/hGetChar001.stdin
deleted file mode 100644
index 2510fcaec3..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetChar001.stdin
+++ /dev/null
@@ -1,2 +0,0 @@
-42
--7
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetChar001.stdout b/testsuite/tests/ghc-regress/lib/IO/hGetChar001.stdout
deleted file mode 100644
index 47d4185c64..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetChar001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Enter an integer: Enter another integer: Their sum is 35
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetLine001.hs b/testsuite/tests/ghc-regress/lib/IO/hGetLine001.hs
deleted file mode 100644
index b5950623ea..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetLine001.hs
+++ /dev/null
@@ -1,25 +0,0 @@
--- !!! testing hGetLine
-
-import System.IO
-
--- one version of 'cat'
-main = do
- let loop h = do b <- hIsEOF h
- if b then return ()
- else do l <- hGetLine h; putStrLn l; loop h
- loop stdin
-
- h <- openFile "hGetLine001.hs" ReadMode
-
- hSetBinaryMode stdout True
-
- hSetBuffering h NoBuffering
- loop h
-
- hSeek h AbsoluteSeek 0
- hSetBuffering h LineBuffering
- loop h
-
- hSeek h AbsoluteSeek 0
- hSetBuffering h (BlockBuffering (Just 83))
- loop h
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetLine001.stdout b/testsuite/tests/ghc-regress/lib/IO/hGetLine001.stdout
deleted file mode 100644
index 3e023db8f5..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetLine001.stdout
+++ /dev/null
@@ -1,100 +0,0 @@
--- !!! testing hGetLine
-
-import System.IO
-
--- one version of 'cat'
-main = do
- let loop h = do b <- hIsEOF h
- if b then return ()
- else do l <- hGetLine h; putStrLn l; loop h
- loop stdin
-
- h <- openFile "hGetLine001.hs" ReadMode
-
- hSetBinaryMode stdout True
-
- hSetBuffering h NoBuffering
- loop h
-
- hSeek h AbsoluteSeek 0
- hSetBuffering h LineBuffering
- loop h
-
- hSeek h AbsoluteSeek 0
- hSetBuffering h (BlockBuffering (Just 83))
- loop h
--- !!! testing hGetLine
-
-import System.IO
-
--- one version of 'cat'
-main = do
- let loop h = do b <- hIsEOF h
- if b then return ()
- else do l <- hGetLine h; putStrLn l; loop h
- loop stdin
-
- h <- openFile "hGetLine001.hs" ReadMode
-
- hSetBinaryMode stdout True
-
- hSetBuffering h NoBuffering
- loop h
-
- hSeek h AbsoluteSeek 0
- hSetBuffering h LineBuffering
- loop h
-
- hSeek h AbsoluteSeek 0
- hSetBuffering h (BlockBuffering (Just 83))
- loop h
--- !!! testing hGetLine
-
-import System.IO
-
--- one version of 'cat'
-main = do
- let loop h = do b <- hIsEOF h
- if b then return ()
- else do l <- hGetLine h; putStrLn l; loop h
- loop stdin
-
- h <- openFile "hGetLine001.hs" ReadMode
-
- hSetBinaryMode stdout True
-
- hSetBuffering h NoBuffering
- loop h
-
- hSeek h AbsoluteSeek 0
- hSetBuffering h LineBuffering
- loop h
-
- hSeek h AbsoluteSeek 0
- hSetBuffering h (BlockBuffering (Just 83))
- loop h
--- !!! testing hGetLine
-
-import System.IO
-
--- one version of 'cat'
-main = do
- let loop h = do b <- hIsEOF h
- if b then return ()
- else do l <- hGetLine h; putStrLn l; loop h
- loop stdin
-
- h <- openFile "hGetLine001.hs" ReadMode
-
- hSetBinaryMode stdout True
-
- hSetBuffering h NoBuffering
- loop h
-
- hSeek h AbsoluteSeek 0
- hSetBuffering h LineBuffering
- loop h
-
- hSeek h AbsoluteSeek 0
- hSetBuffering h (BlockBuffering (Just 83))
- loop h
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetLine002.hs b/testsuite/tests/ghc-regress/lib/IO/hGetLine002.hs
deleted file mode 100644
index 5c08b716d1..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetLine002.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- !!! testing hGetLine on a file without a final '\n'.
-
--- According to the Haskell 98 report, getLine should discard a line without a
--- closing newline character (see implementation of getLine).
---
--- However, we don't believe that this is the right behaviour.
-
-import System.IO
-
-main = catch loop (\e -> print e)
-
-loop = do
- hSetBuffering stdin LineBuffering
- l <- hGetLine stdin
- putStrLn l
- loop
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetLine002.stdin b/testsuite/tests/ghc-regress/lib/IO/hGetLine002.stdin
deleted file mode 100644
index 808eafd54b..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetLine002.stdin
+++ /dev/null
@@ -1 +0,0 @@
-this line doesn't end with a newline \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetLine002.stdout b/testsuite/tests/ghc-regress/lib/IO/hGetLine002.stdout
deleted file mode 100644
index 0ec29ade8f..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetLine002.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-this line doesn't end with a newline
-<stdin>: hGetLine: end of file
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetLine002.stdout-hugs b/testsuite/tests/ghc-regress/lib/IO/hGetLine002.stdout-hugs
deleted file mode 100644
index ed871357b7..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetLine002.stdout-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-this line doesn't end with a newline
-<stdin>: IO.hGetChar: end of file (end of file)
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetLine003.hs b/testsuite/tests/ghc-regress/lib/IO/hGetLine003.hs
deleted file mode 100644
index cc03c604aa..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetLine003.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-import System.IO
-
-main = f stdin
- where f h = do p <- hIsEOF h
- if p then putStrLn "done"
- else do l <- hGetLine h
- putStrLn l
- f h
-
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetLine003.stdin b/testsuite/tests/ghc-regress/lib/IO/hGetLine003.stdin
deleted file mode 100644
index b8b74a4b1e..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetLine003.stdin
+++ /dev/null
@@ -1 +0,0 @@
-this line doesn't end with a newline
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetLine003.stdout b/testsuite/tests/ghc-regress/lib/IO/hGetLine003.stdout
deleted file mode 100644
index 6daac48252..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetLine003.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-this line doesn't end with a newline
-done
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetPosn001.hs b/testsuite/tests/ghc-regress/lib/IO/hGetPosn001.hs
deleted file mode 100644
index 5a0d7d4827..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetPosn001.hs
+++ /dev/null
@@ -1,28 +0,0 @@
--- !!! Test file positioning
-
-module Main(main) where
-
-import Control.Monad
-import System.Directory (removeFile, doesFileExist)
-import System.IO
-import System.IO.Error
-
-main = do
- hIn <- openFile "hGetPosn001.in" ReadMode
- f <- doesFileExist "hGetPosn001.out"
- when f (removeFile "hGetPosn001.out")
- hOut <- openFile "hGetPosn001.out" ReadWriteMode
- bof <- hGetPosn hIn
- putStrLn (show bof) -- you can show HandlePosns
- copy hIn hOut
- hSetPosn bof
- copy hIn hOut
- hSeek hOut AbsoluteSeek 0
- stuff <- hGetContents hOut
- putStr stuff
-
-copy :: Handle -> Handle -> IO ()
-copy hIn hOut =
- try (hGetChar hIn) >>=
- either (\ err -> if isEOFError err then return () else error "copy")
- ( \ x -> hPutChar hOut x >> copy hIn hOut)
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetPosn001.in b/testsuite/tests/ghc-regress/lib/IO/hGetPosn001.in
deleted file mode 100644
index 2e2537150f..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetPosn001.in
+++ /dev/null
@@ -1,2 +0,0 @@
-123456789*123456789*123456789*123456789*123456789*123456789*123456789*12
- 1 2 3 4 5 6 7
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetPosn001.stdout b/testsuite/tests/ghc-regress/lib/IO/hGetPosn001.stdout
deleted file mode 100644
index 10adafd933..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetPosn001.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-{handle: hGetPosn001.in} at position 0
-123456789*123456789*123456789*123456789*123456789*123456789*123456789*12
- 1 2 3 4 5 6 7
-123456789*123456789*123456789*123456789*123456789*123456789*123456789*12
- 1 2 3 4 5 6 7
diff --git a/testsuite/tests/ghc-regress/lib/IO/hGetPosn001.stdout-hugs b/testsuite/tests/ghc-regress/lib/IO/hGetPosn001.stdout-hugs
deleted file mode 100644
index 56e989c493..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hGetPosn001.stdout-hugs
+++ /dev/null
@@ -1,5 +0,0 @@
-<handle> at position 0
-123456789*123456789*123456789*123456789*123456789*123456789*123456789*12
- 1 2 3 4 5 6 7
-123456789*123456789*123456789*123456789*123456789*123456789*123456789*12
- 1 2 3 4 5 6 7
diff --git a/testsuite/tests/ghc-regress/lib/IO/hIsEOF001.hs b/testsuite/tests/ghc-regress/lib/IO/hIsEOF001.hs
deleted file mode 100644
index 2e5dbdcb0a..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hIsEOF001.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! hIsEOF (on stdout)
-
-import System.IO ( hIsEOF, stdout )
-
-main = do
- flg <- hIsEOF stdout `catch` \ _ -> putStrLn "hIsEOF failed" >> return False
- print flg
diff --git a/testsuite/tests/ghc-regress/lib/IO/hIsEOF001.stdout b/testsuite/tests/ghc-regress/lib/IO/hIsEOF001.stdout
deleted file mode 100644
index 76460ac50a..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hIsEOF001.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-hIsEOF failed
-False
diff --git a/testsuite/tests/ghc-regress/lib/IO/hIsEOF002.hs b/testsuite/tests/ghc-regress/lib/IO/hIsEOF002.hs
deleted file mode 100644
index 26f5abd9a7..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hIsEOF002.hs
+++ /dev/null
@@ -1,48 +0,0 @@
--- !!! test hIsEOF in various buffering situations
-
-import System.IO
-
-main = do
- h <- openFile "hIsEOF002.hs" ReadMode
- hSetBuffering h NoBuffering
- hSeek h SeekFromEnd 0
- hIsEOF h >>= print
- hSeek h SeekFromEnd (-1)
- hIsEOF h >>= print
- hGetChar h >>= print
-
- hSetBuffering h LineBuffering
- hSeek h SeekFromEnd 0
- hIsEOF h >>= print
- hSeek h SeekFromEnd (-1)
- hIsEOF h >>= print
- hGetChar h >>= print
-
- hSetBuffering h (BlockBuffering (Just 1))
- hSeek h SeekFromEnd 0
- hIsEOF h >>= print
- hSeek h SeekFromEnd (-1)
- hIsEOF h >>= print
- hGetChar h >>= print
-
- hSetBuffering h (BlockBuffering Nothing)
- hSeek h SeekFromEnd 0
- hIsEOF h >>= print
- hSeek h SeekFromEnd (-1)
- hIsEOF h >>= print
- hGetChar h >>= print
- hClose h
-
- h <- openFile "hIsEOF002.out" WriteMode
- hPutStrLn h "hello, world"
- hClose h
-
- h <- openFile "hIsEOF002.out" ReadWriteMode
- hSetBuffering h NoBuffering
- hSeek h SeekFromEnd 0
- hIsEOF h >>= print
- hPutChar h 'x'
- hIsEOF h >>= print
- hSeek h SeekFromEnd (-1)
- hIsEOF h >>= print
- hGetChar h >>= print
diff --git a/testsuite/tests/ghc-regress/lib/IO/hIsEOF002.stdout b/testsuite/tests/ghc-regress/lib/IO/hIsEOF002.stdout
deleted file mode 100644
index 3aa5e1a64d..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hIsEOF002.stdout
+++ /dev/null
@@ -1,16 +0,0 @@
-True
-False
-'\n'
-True
-False
-'\n'
-True
-False
-'\n'
-True
-False
-'\n'
-True
-True
-False
-'x'
diff --git a/testsuite/tests/ghc-regress/lib/IO/hReady001.hs b/testsuite/tests/ghc-regress/lib/IO/hReady001.hs
deleted file mode 100644
index 00888dac2d..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hReady001.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! hReady test
-
- -- hReady should throw and EOF exception at the end of a file. Trac #1063.
-
-import System.IO
-
-main = do
- h <- openFile "hReady001.hs" ReadMode
- hReady h >>= print
- hSeek h SeekFromEnd 0
- (hReady h >> return ()) `catch` print
diff --git a/testsuite/tests/ghc-regress/lib/IO/hReady001.stdout b/testsuite/tests/ghc-regress/lib/IO/hReady001.stdout
deleted file mode 100644
index af35f80533..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hReady001.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-True
-hReady001.hs: hWaitForInput: end of file
diff --git a/testsuite/tests/ghc-regress/lib/IO/hReady002.hs b/testsuite/tests/ghc-regress/lib/IO/hReady002.hs
deleted file mode 100644
index 6db22a13fc..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hReady002.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- test for bug #4078
-import System.IO
-import Control.Concurrent
-import System.Exit
-
-main = do
- m <- newEmptyMVar
- forkIO $ do threadDelay 500000; putMVar m Nothing
- forkIO $ do hReady stdin >>= putMVar m . Just
- takeMVar m >>= print
diff --git a/testsuite/tests/ghc-regress/lib/IO/hReady002.stdout b/testsuite/tests/ghc-regress/lib/IO/hReady002.stdout
deleted file mode 100644
index 6217d00e10..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hReady002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Just False
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSeek001.hs b/testsuite/tests/ghc-regress/lib/IO/hSeek001.hs
deleted file mode 100644
index d05068e955..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSeek001.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE CPP #-}
--- !!! Test seeking
-
-import System.IO
-
-main = do
- h <- openFile "hSeek001.in" ReadMode
- True <- hIsSeekable h
- hSeek h SeekFromEnd (-1)
- z <- hGetChar h
- putStr (z:"\n")
- hSeek h SeekFromEnd (-3)
- x <- hGetChar h
- putStr (x:"\n")
- hSeek h RelativeSeek (-2)
- w <- hGetChar h
- putStr (w:"\n")
- hSeek h RelativeSeek 2
- z <- hGetChar h
- putStr (z:"\n")
- hSeek h AbsoluteSeek (0)
- a <- hGetChar h
- putStr (a:"\n")
- hSeek h AbsoluteSeek (10)
- k <- hGetChar h
- putStr (k:"\n")
- hSeek h AbsoluteSeek (25)
- z <- hGetChar h
- putStr (z:"\n")
- hClose h
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSeek001.in b/testsuite/tests/ghc-regress/lib/IO/hSeek001.in
deleted file mode 100644
index e85d5b4528..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSeek001.in
+++ /dev/null
@@ -1 +0,0 @@
-abcdefghijklmnopqrstuvwxyz \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSeek001.stdout b/testsuite/tests/ghc-regress/lib/IO/hSeek001.stdout
deleted file mode 100644
index ab6c1d751b..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSeek001.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-z
-x
-w
-z
-a
-k
-z
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSeek002.hs b/testsuite/tests/ghc-regress/lib/IO/hSeek002.hs
deleted file mode 100644
index 8c9153cfaa..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSeek002.hs
+++ /dev/null
@@ -1,25 +0,0 @@
--- !!! Testing EOF (and the clearing of it)
-
-module Main(main) where
-
-import System.IO
-import System.Directory ( removeFile )
-
-main :: IO ()
-main = do
- hdl <- openFile "hSeek002.hs" ReadMode
- flg <- hIsEOF hdl
- print flg
- hSeek hdl SeekFromEnd 0
- flg <- hIsEOF hdl
- print flg
- hSeek hdl SeekFromEnd (-1)
- flg <- hIsEOF hdl
- print flg
- hGetChar hdl
- flg <- hIsEOF hdl
- print flg
- hSeek hdl SeekFromEnd (-1)
- flg <- hIsEOF hdl
- print flg
- hClose hdl
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSeek002.stdout b/testsuite/tests/ghc-regress/lib/IO/hSeek002.stdout
deleted file mode 100644
index 8069fe32b0..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSeek002.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-False
-True
-False
-True
-False
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSeek003.hs b/testsuite/tests/ghc-regress/lib/IO/hSeek003.hs
deleted file mode 100644
index 03400573c4..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSeek003.hs
+++ /dev/null
@@ -1,51 +0,0 @@
--- !!! file positions (hGetPosn and hSetPosn)
-
-module Main(main) where
-
-import System.IO
-import Control.Monad ( sequence )
-
-testPosns :: Handle -> BufferMode -> IO ()
-testPosns hdl bmo = do
- hSetBuffering hdl bmo
- putStrLn ("Testing positioning with buffer mode set to: " ++ show bmo)
- testPositioning hdl
-
-bmo_ls = [NoBuffering, LineBuffering, BlockBuffering Nothing,
- BlockBuffering (Just 511),BlockBuffering (Just 3), BlockBuffering (Just 11)]
-
-main = do
- hdl <- openFile "hSeek003.hs" ReadMode
- sequence (zipWith testPosns (repeat hdl) bmo_ls)
- hClose hdl
-
-testPositioning hdl = do
- hSeek hdl AbsoluteSeek 0 -- go to the beginning of the file again.
- ps <- getFilePosns 10 hdl
- hSeek hdl AbsoluteSeek 0
- putStr "First ten chars: "
- ls <- hGetChars 10 hdl
- putStrLn ls
- -- go to the end
- hSeek hdl SeekFromEnd 0
- ls <- sequence (map (\ p -> hSetPosn p >> hGetChar hdl) ps)
- putStr "First ten chars: "
- putStrLn ls
-
- -- position ourselves in the middle.
- sz <- hFileSize hdl
- hSeek hdl AbsoluteSeek (sz `div` 2)
- ls <- sequence (map (\ p -> hSetPosn p >> hGetChar hdl) ps)
- putStr "First ten chars: "
- putStrLn ls
-
-hGetChars :: Int -> Handle -> IO String
-hGetChars n h = sequence (replicate n (hGetChar h))
-
-getFilePosns :: Int -> Handle -> IO [HandlePosn]
-getFilePosns 0 h = return []
-getFilePosns x h = do
- p <- hGetPosn h
- hGetChar h
- ps <- getFilePosns (x-1) h
- return (p:ps)
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSeek003.stdout b/testsuite/tests/ghc-regress/lib/IO/hSeek003.stdout
deleted file mode 100644
index 7c765c5bc5..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSeek003.stdout
+++ /dev/null
@@ -1,24 +0,0 @@
-Testing positioning with buffer mode set to: NoBuffering
-First ten chars: -- !!! fil
-First ten chars: -- !!! fil
-First ten chars: -- !!! fil
-Testing positioning with buffer mode set to: LineBuffering
-First ten chars: -- !!! fil
-First ten chars: -- !!! fil
-First ten chars: -- !!! fil
-Testing positioning with buffer mode set to: BlockBuffering Nothing
-First ten chars: -- !!! fil
-First ten chars: -- !!! fil
-First ten chars: -- !!! fil
-Testing positioning with buffer mode set to: BlockBuffering (Just 511)
-First ten chars: -- !!! fil
-First ten chars: -- !!! fil
-First ten chars: -- !!! fil
-Testing positioning with buffer mode set to: BlockBuffering (Just 3)
-First ten chars: -- !!! fil
-First ten chars: -- !!! fil
-First ten chars: -- !!! fil
-Testing positioning with buffer mode set to: BlockBuffering (Just 11)
-First ten chars: -- !!! fil
-First ten chars: -- !!! fil
-First ten chars: -- !!! fil
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSeek004.hs b/testsuite/tests/ghc-regress/lib/IO/hSeek004.hs
deleted file mode 100644
index 9ad7c13e7f..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSeek004.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! can't seek an AppendMode handle
-
-import System.IO
-import System.IO.Error
-
-main = do
- h <- openFile "hSeek004.out" AppendMode
- try (hSeek h AbsoluteSeek 0) >>= print
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSeek004.stdout b/testsuite/tests/ghc-regress/lib/IO/hSeek004.stdout
deleted file mode 100644
index d2671a6361..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSeek004.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Left hSeek004.out: hSeek: illegal operation (handle is not seekable)
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSeek004.stdout-mingw b/testsuite/tests/ghc-regress/lib/IO/hSeek004.stdout-mingw
deleted file mode 100644
index 7d8e7076ee..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSeek004.stdout-mingw
+++ /dev/null
@@ -1,5 +0,0 @@
-Left illegal operation
-Action: hSeek
-Handle: {loc=hSeek004.out,type=writable (append),binary=True,buffering=block (512)}
-Reason: handle is not seekable
-File: hSeek004.out
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSetBuffering002.hs b/testsuite/tests/ghc-regress/lib/IO/hSetBuffering002.hs
deleted file mode 100644
index 3f553029da..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSetBuffering002.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-import System.IO
-
-main =
- hSetBuffering stdin NoBuffering >>
- hSetBuffering stdout NoBuffering >>
- interact id
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSetBuffering002.stdout b/testsuite/tests/ghc-regress/lib/IO/hSetBuffering002.stdout
deleted file mode 100644
index 3f553029da..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSetBuffering002.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-import System.IO
-
-main =
- hSetBuffering stdin NoBuffering >>
- hSetBuffering stdout NoBuffering >>
- interact id
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSetBuffering003.hs b/testsuite/tests/ghc-regress/lib/IO/hSetBuffering003.hs
deleted file mode 100644
index 74d399e4ff..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSetBuffering003.hs
+++ /dev/null
@@ -1,79 +0,0 @@
--- !!! Reconfiguring the buffering of a handle
-module Main(main) where
-
-import System.IO
-
-queryBuffering :: String -> Handle -> IO ()
-queryBuffering handle_nm handle = do
- bufm <- hGetBuffering handle
- putStrLn ("Buffering for " ++ handle_nm ++ " is: " ++ show bufm)
-
-main = do
- queryBuffering "stdin" stdin
- queryBuffering "stdout" stdout
- queryBuffering "stderr" stderr
-
- -- twiddling the setting for stdin.
- hSetBuffering stdin NoBuffering
- queryBuffering "stdin" stdin
- hSetBuffering stdin LineBuffering
- queryBuffering "stdin" stdin
- hSetBuffering stdin (BlockBuffering (Just 2))
- queryBuffering "stdin" stdin
- hSetBuffering stdin (BlockBuffering Nothing)
- queryBuffering "stdin" stdin
- let bmo = BlockBuffering (Just (-3))
- hSetBuffering stdin bmo `catch` \ _ -> putStrLn ("Caught illegal op: hSetBuffering stdin " ++ showParen True (showsPrec 9 bmo) [])
-
- putChar '\n'
-
- -- twiddling the buffering for stdout
- hPutStr stdout "Hello stdout 1"
- hSetBuffering stdout NoBuffering
- queryBuffering "stdout" stdout
- hPutStr stdout "Hello stdout 2"
- hSetBuffering stdout LineBuffering
- queryBuffering "stdout" stdout
- hPutStr stdout "Hello stdout 3"
- hSetBuffering stdout (BlockBuffering (Just 2))
- queryBuffering "stdout" stdout
- hPutStr stdout "Hello stdout 4"
- hSetBuffering stdout (BlockBuffering Nothing)
- queryBuffering "stdout" stdout
- hPutStr stdout "Hello stdout 5"
- let bmo = BlockBuffering (Just (-3))
- hSetBuffering stdout bmo `catch` \ _ -> putStrLn ("Caught illegal op: hSetBuffering stdout " ++ showParen True (showsPrec 9 bmo) [])
-
- putChar '\n'
-
- -- twiddling the buffering for stderr
- hPutStr stderr "Hello stderr 1"
- hSetBuffering stderr NoBuffering
- queryBuffering "stderr" stderr
- hPutStr stderr "Hello stderr 2"
- hSetBuffering stderr LineBuffering
- queryBuffering "stderr" stderr
- hPutStr stderr "Hello stderr 3"
- hSetBuffering stderr (BlockBuffering (Just 2))
- queryBuffering "stderr" stderr
- hPutStr stderr "Hello stderr 4"
- hSetBuffering stderr (BlockBuffering Nothing)
- queryBuffering "stderr" stderr
- hPutStr stderr "Hello stderr 5"
- let bmo = BlockBuffering (Just (-3))
- hSetBuffering stderr bmo `catch` \ _ -> putStrLn ("Caught illegal op: hSetBuffering stderr " ++ showParen True (showsPrec 9 bmo) [])
-
- ls <- hGetContents stdin
- ls' <- putLine ls
- hSetBuffering stdin NoBuffering
- putLine ls'
- return ()
-
-putLine :: String -> IO String
-putLine [] = return []
-putLine (x:xs) = do
- putChar x
- case x of
- '\n' -> return xs
- _ -> putLine xs
-
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSetBuffering003.stderr b/testsuite/tests/ghc-regress/lib/IO/hSetBuffering003.stderr
deleted file mode 100644
index a4cf8779b4..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSetBuffering003.stderr
+++ /dev/null
@@ -1 +0,0 @@
-Hello stderr 1Hello stderr 2Hello stderr 3Hello stderr 4Hello stderr 5 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSetBuffering003.stdout b/testsuite/tests/ghc-regress/lib/IO/hSetBuffering003.stdout
deleted file mode 100644
index 7768773198..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSetBuffering003.stdout
+++ /dev/null
@@ -1,22 +0,0 @@
-Buffering for stdin is: BlockBuffering Nothing
-Buffering for stdout is: BlockBuffering Nothing
-Buffering for stderr is: NoBuffering
-Buffering for stdin is: NoBuffering
-Buffering for stdin is: LineBuffering
-Buffering for stdin is: BlockBuffering (Just 2)
-Buffering for stdin is: BlockBuffering Nothing
-Caught illegal op: hSetBuffering stdin (BlockBuffering (Just (-3)))
-
-Hello stdout 1Buffering for stdout is: NoBuffering
-Hello stdout 2Buffering for stdout is: LineBuffering
-Hello stdout 3Buffering for stdout is: BlockBuffering (Just 2)
-Hello stdout 4Buffering for stdout is: BlockBuffering Nothing
-Hello stdout 5Caught illegal op: hSetBuffering stdout (BlockBuffering (Just (-3)))
-
-Buffering for stderr is: NoBuffering
-Buffering for stderr is: LineBuffering
-Buffering for stderr is: BlockBuffering (Just 2)
-Buffering for stderr is: BlockBuffering Nothing
-Caught illegal op: hSetBuffering stderr (BlockBuffering (Just (-3)))
--- !!! Reconfiguring the buffering of a handle
-module Main(main) where
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSetBuffering004.hs b/testsuite/tests/ghc-regress/lib/IO/hSetBuffering004.hs
deleted file mode 100644
index eaee6826d2..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSetBuffering004.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- test for #2678
-module Main (main) where
-
-import System.IO
-
-main :: IO ()
-main = do hSetBuffering stdin NoBuffering
- hLookAhead stdin >>= print
- hSetBuffering stdin LineBuffering
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSetBuffering004.stdout b/testsuite/tests/ghc-regress/lib/IO/hSetBuffering004.stdout
deleted file mode 100644
index 7766eec971..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSetBuffering004.stdout
+++ /dev/null
@@ -1 +0,0 @@
-'-'
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSetEncoding001.hs b/testsuite/tests/ghc-regress/lib/IO/hSetEncoding001.hs
deleted file mode 100644
index 95f570d094..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSetEncoding001.hs
+++ /dev/null
@@ -1,49 +0,0 @@
-import System.IO
-import GHC.IO.Handle
-import GHC.IO.Encoding
-import System.Environment
-
--- Test switching encodings
--- The test file is built by the Makefile
-
-main = do
- [file] <- getArgs
- test file NoBuffering
- test file (BlockBuffering Nothing)
- test file (BlockBuffering (Just 5))
-
-test file buf = do
- hSetEncoding stdout utf8
- h <- openBinaryFile file ReadMode
- hSetBuffering stdout buf
- putStrLn "no encoding:"
- getUntilX h
- hSetEncoding h utf8
- putStrLn "UTF8:"
- getUntilX h
- hSetEncoding h utf16le
- putStrLn "UTF16LE:"
- getUntilX h
- hSetEncoding h utf16be
- putStrLn "UTF16BE:"
- getUntilX h
- hSetEncoding h utf16
- putStrLn "UTF16:"
- getUntilX h
- hSetEncoding h utf32
- putStrLn "UTF32:"
- getUntilX h
- hSetEncoding h utf32le
- putStrLn "UTF32LE:"
- getUntilX h
- hSetEncoding h utf32be
- putStrLn "UTF32BE:"
- getUntilX h
- hSetEncoding h utf8_bom
- putStrLn "UTF8-BOM:"
- getUntilX h
- hIsEOF h >>= print
-
-getUntilX h = do
- c <- hGetChar h
- if c == 'X' then return () else do putChar c; getUntilX h
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSetEncoding001.in b/testsuite/tests/ghc-regress/lib/IO/hSetEncoding001.in
deleted file mode 100644
index 03f297441d..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSetEncoding001.in
+++ /dev/null
Binary files differ
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSetEncoding001.stdout b/testsuite/tests/ghc-regress/lib/IO/hSetEncoding001.stdout
deleted file mode 100644
index a1d38ffd77..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSetEncoding001.stdout
+++ /dev/null
@@ -1,90 +0,0 @@
-no encoding:
-c0 | À à Â Ã Ä Ã… Æ Ç È É Ê Ë ÃŒ à Î Ã
-d0 | à Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü à Þ ß
-e0 | à á â ã ä å æ ç è é ê ë ì í î ï
-f0 | ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ
-UTF8:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF16LE:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF16BE:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF16:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF32:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF32LE:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF32BE:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF8-BOM:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-True
-no encoding:
-c0 | À à Â Ã Ä Ã… Æ Ç È É Ê Ë ÃŒ à Î Ã
-d0 | à Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü à Þ ß
-e0 | à á â ã ä å æ ç è é ê ë ì í î ï
-f0 | ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ
-UTF8:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF16LE:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF16BE:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF16:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF32:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF32LE:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF32BE:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF8-BOM:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-True
-no encoding:
-c0 | À à Â Ã Ä Ã… Æ Ç È É Ê Ë ÃŒ à Î Ã
-d0 | à Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü à Þ ß
-e0 | à á â ã ä å æ ç è é ê ë ì í î ï
-f0 | ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ
-UTF8:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF16LE:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF16BE:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF16:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF32:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF32LE:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF32BE:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-UTF8-BOM:
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-True
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSetEncoding002.hs b/testsuite/tests/ghc-regress/lib/IO/hSetEncoding002.hs
deleted file mode 100644
index 35c4e1ce19..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSetEncoding002.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- test for #4066
-
-import System.IO
-
-import GHC.IO.FD as FD (stdout)
-import GHC.IO.Handle.FD as FD (fdToHandle)
-import GHC.IO.Handle ( mkDuplexHandle )
-
-main = do
- h <- mkDuplexHandle FD.stdout "stdout" Nothing noNewlineTranslation
- hSetEncoding h utf8
- hPutStrLn h "ö"
- hClose h
diff --git a/testsuite/tests/ghc-regress/lib/IO/hSetEncoding002.stdout b/testsuite/tests/ghc-regress/lib/IO/hSetEncoding002.stdout
deleted file mode 100644
index d3b4b915a1..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/hSetEncoding002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-ö
diff --git a/testsuite/tests/ghc-regress/lib/IO/ioeGetErrorString001.hs b/testsuite/tests/ghc-regress/lib/IO/ioeGetErrorString001.hs
deleted file mode 100644
index 5621136a55..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/ioeGetErrorString001.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- !!! test ioeGetErrorString
-
-import System.IO
-import System.IO.Error
-import Data.Maybe
-
-main = do
- h <- openFile "ioeGetErrorString001.hs" ReadMode
- hSeek h SeekFromEnd 0
- (hGetChar h >> return ()) `catch`
- \e -> if isEOFError e
- then print (ioeGetErrorString e)
- else putStrLn "failed."
diff --git a/testsuite/tests/ghc-regress/lib/IO/ioeGetErrorString001.stdout b/testsuite/tests/ghc-regress/lib/IO/ioeGetErrorString001.stdout
deleted file mode 100644
index 0b8daea55a..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/ioeGetErrorString001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"end of file"
diff --git a/testsuite/tests/ghc-regress/lib/IO/ioeGetFileName001.hs b/testsuite/tests/ghc-regress/lib/IO/ioeGetFileName001.hs
deleted file mode 100644
index 12c70c98b4..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/ioeGetFileName001.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! test ioeGetFileName
-
-import System.IO
-import System.IO.Error
-
-main = do
- h <- openFile "ioeGetFileName001.hs" ReadMode
- hSeek h SeekFromEnd 0
- (hGetChar h >> return ()) `catch`
- \e -> if isEOFError e
- then print (ioeGetFileName e)
- else putStrLn "failed."
diff --git a/testsuite/tests/ghc-regress/lib/IO/ioeGetFileName001.stdout b/testsuite/tests/ghc-regress/lib/IO/ioeGetFileName001.stdout
deleted file mode 100644
index 7377ad409d..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/ioeGetFileName001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Just "ioeGetFileName001.hs"
diff --git a/testsuite/tests/ghc-regress/lib/IO/ioeGetHandle001.hs b/testsuite/tests/ghc-regress/lib/IO/ioeGetHandle001.hs
deleted file mode 100644
index a9ef58a8ca..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/ioeGetHandle001.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- !!! test ioeGetHandle
-
-import System.IO
-import System.IO.Error
-import Data.Maybe
-
-main = do
- h <- openFile "ioeGetHandle001.hs" ReadMode
- hSeek h SeekFromEnd 0
- (hGetChar h >> return ()) `catch`
- \e -> if isEOFError e && fromJust (ioeGetHandle e) == h
- then putStrLn "ok."
- else putStrLn "failed."
diff --git a/testsuite/tests/ghc-regress/lib/IO/ioeGetHandle001.stdout b/testsuite/tests/ghc-regress/lib/IO/ioeGetHandle001.stdout
deleted file mode 100644
index 90b5016eff..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/ioeGetHandle001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-ok.
diff --git a/testsuite/tests/ghc-regress/lib/IO/isEOF001.hs b/testsuite/tests/ghc-regress/lib/IO/isEOF001.hs
deleted file mode 100644
index bb205703f8..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/isEOF001.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-import System.IO
-
-main = isEOF >>= print
diff --git a/testsuite/tests/ghc-regress/lib/IO/isEOF001.stdout b/testsuite/tests/ghc-regress/lib/IO/isEOF001.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/isEOF001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/lib/IO/latin1 b/testsuite/tests/ghc-regress/lib/IO/latin1
deleted file mode 100644
index a634257fbf..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/latin1
+++ /dev/null
@@ -1,5 +0,0 @@
-c0 | À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï
-d0 | Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß
-e0 | à á â ã ä å æ ç è é ê ë ì í î ï
-f0 | ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ
-X \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/IO/misc001.hs b/testsuite/tests/ghc-regress/lib/IO/misc001.hs
deleted file mode 100644
index 9f9f3e98d0..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/misc001.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-import System.IO
-
-import Data.Char (toUpper)
-import System.Directory (removeFile, doesFileExist)
-import System.Environment (getArgs)
-
-main = do
- [f1,f2] <- getArgs
- h1 <- openFile f1 ReadMode
- f <- doesFileExist f2
- if f then removeFile f2 else return ()
- h2 <- openFile f2 WriteMode
- copyFile h1 h2
- hClose h1
- hClose h2
-
-copyFile h1 h2 = do
- eof <- hIsEOF h1
- if eof
- then return ()
- else do
- c <- hGetChar h1
- c <- hPutChar h2 (toUpper c)
- copyFile h1 h2
diff --git a/testsuite/tests/ghc-regress/lib/IO/misc001.stdout b/testsuite/tests/ghc-regress/lib/IO/misc001.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/misc001.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/IO/newline001.hs b/testsuite/tests/ghc-regress/lib/IO/newline001.hs
deleted file mode 100644
index b12a65bcaa..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/newline001.hs
+++ /dev/null
@@ -1,121 +0,0 @@
-import System.IO
-import GHC.IO.Handle
-import Control.Monad
-import Data.List
-
-newlines = ["\n","\r","\r\n","\n\r","\n\n","\r\r"]
-
--- make sure the file ends in '\r': that's a tricky case for CRLF
--- conversion, because the IO library has to check whether there's a
--- following \n before returning the \r.
-content = concat [ show i ++ t | (i,t) <- zip [1..100] (cycle newlines) ]
-
-filename = "newline001.out"
-
-fromCRLF [] = []
-fromCRLF ('\r':'\n':cs) = '\n' : fromCRLF cs
-fromCRLF (c:cs) = c : fromCRLF cs
-
-toCRLF [] = []
-toCRLF ('\n':cs) = '\r':'\n': toCRLF cs
-toCRLF (c:cs) = c : toCRLF cs
-
-main = do
- h <- openBinaryFile filename WriteMode
- hPutStr h content
- hClose h
- testinput NoBuffering
- testinput LineBuffering
- testinput (BlockBuffering Nothing)
- testinput (BlockBuffering (Just 3))
- testinput (BlockBuffering (Just 7))
- testinput (BlockBuffering (Just 16))
- testoutput NoBuffering
- testoutput LineBuffering
- testoutput (BlockBuffering Nothing)
- testoutput (BlockBuffering (Just 3))
- testoutput (BlockBuffering (Just 7))
- testoutput (BlockBuffering (Just 16))
-
-testinput b = do
- h <- openFile filename ReadMode
- hSetBuffering h b
- hSetNewlineMode h noNewlineTranslation
- str <- hGetContents h
- check "in1" b str content
- hClose h
-
- h <- openFile filename ReadMode
- hSetBuffering h b
- hSetNewlineMode h noNewlineTranslation
- str <- read_chars h
- check "in2" b str content
- hClose h
-
- h <- openFile filename ReadMode
- hSetBuffering h b
- hSetNewlineMode h noNewlineTranslation
- str <- read_lines h
- check "in3" b str content
- hClose h
-
- h <- openFile filename ReadMode
- hSetBuffering h b
- hSetNewlineMode h NewlineMode{ inputNL=CRLF, outputNL=LF }
- str <- hGetContents h
- check "in4" b str (fromCRLF content)
- hClose h
-
- h <- openFile filename ReadMode
- hSetBuffering h b
- hSetNewlineMode h NewlineMode{ inputNL=CRLF, outputNL=LF }
- str <- read_chars h
- check "in5" b str (fromCRLF content)
- hClose h
-
- h <- openFile filename ReadMode
- hSetBuffering h b
- hSetNewlineMode h NewlineMode{ inputNL=CRLF, outputNL=LF }
- str <- read_lines h
- check "in6" b str (fromCRLF content)
- hClose h
-
-testoutput b = do
- h <- openFile filename WriteMode
- hSetBuffering h b
- hSetNewlineMode h NewlineMode{ inputNL=LF, outputNL=CRLF }
- hPutStr h content
- hClose h
- h <- openBinaryFile filename ReadMode
- str <- hGetContents h
- check "out1" b (toCRLF content) str
- hClose h
-
- h <- openFile filename WriteMode
- hSetBuffering h b
- hSetNewlineMode h NewlineMode{ inputNL=LF, outputNL=CRLF }
- mapM_ (hPutChar h) content
- hClose h
- h <- openBinaryFile filename ReadMode
- str <- hGetContents h
- check "out2" b (toCRLF content) str
- hClose h
-
-check s b str1 str2 = do
- when (str1 /= str2) $ error ("failed: " ++ s ++ ", " ++ show b ++ '\n':show str1 ++ '\n':show str2)
-
-read_chars :: Handle -> IO String
-read_chars h = loop h ""
- where loop h acc = do
- b <- hIsEOF h
- if b then return (reverse acc) else do
- c <- hGetChar h
- loop h (c:acc)
-
-read_lines :: Handle -> IO String
-read_lines h = loop h []
- where loop h acc = do
- b <- hIsEOF h
- if b then return (intercalate "\n" (reverse acc)) else do
- l <- hGetLine h
- loop h (l : acc)
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile001.hs b/testsuite/tests/ghc-regress/lib/IO/openFile001.hs
deleted file mode 100644
index f34f093d38..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile001.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! test that a file opened in ReadMode can't be written to
-
-import System.IO
-import System.IO.Error
-
-main = do
- hIn <- openFile "openFile001.hs" ReadMode
- hPutStr hIn "test" `catchIOError` \ err ->
- if isIllegalOperation err
- then putStrLn "ok."
- else error "Oh dear\n"
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile001.stdout b/testsuite/tests/ghc-regress/lib/IO/openFile001.stdout
deleted file mode 100644
index 90b5016eff..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-ok.
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile002.hs b/testsuite/tests/ghc-regress/lib/IO/openFile002.hs
deleted file mode 100644
index 83822621f6..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile002.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-import Data.Char
-import System.IO
-
--- !!! Open a non-existent file for reading (should fail)
-
-main = openFile "nonexistent" ReadMode
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile002.stderr b/testsuite/tests/ghc-regress/lib/IO/openFile002.stderr
deleted file mode 100644
index b011f34146..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile002.stderr
+++ /dev/null
@@ -1 +0,0 @@
-openFile002: nonexistent: openFile: does not exist (No such file or directory)
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile002.stderr-hugs b/testsuite/tests/ghc-regress/lib/IO/openFile002.stderr-hugs
deleted file mode 100644
index aa76710e44..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile002.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-openFile002: nonexistent: IO.openFile: does not exist (file does not exist)
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile003.hs b/testsuite/tests/ghc-regress/lib/IO/openFile003.hs
deleted file mode 100644
index 81b69c40ec..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile003.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-import System.IO
-import System.IO.Error
-
--- !!! Open a directory (should fail)
-
-main = do
- r <- tryIOError (openFile "." ReadMode)
- print r
- r <- tryIOError (openFile "." WriteMode)
- print r
- r <- tryIOError (openFile "." AppendMode)
- print r
- r <- tryIOError (openFile "." ReadWriteMode)
- print r
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout b/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout
deleted file mode 100644
index 57288459bd..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-Left .: openFile: inappropriate type (is a directory)
-Left .: openFile: inappropriate type (Is a directory)
-Left .: openFile: inappropriate type (Is a directory)
-Left .: openFile: inappropriate type (Is a directory)
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-i386-unknown-mingw32 b/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-i386-unknown-mingw32
deleted file mode 100644
index 08eaf891f1..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-i386-unknown-mingw32
+++ /dev/null
@@ -1,4 +0,0 @@
-Left .: openFile: permission denied (Permission denied)
-Left .: openFile: permission denied (Permission denied)
-Left .: openFile: permission denied (Permission denied)
-Left .: openFile: permission denied (Permission denied)
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-i386-unknown-solaris2 b/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-i386-unknown-solaris2
deleted file mode 100644
index 2cbf46b25f..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-i386-unknown-solaris2
+++ /dev/null
@@ -1,4 +0,0 @@
-Left .: openFile: inappropriate type (is a directory)
-Left .: openFile: invalid argument (Invalid argument)
-Left .: openFile: invalid argument (Invalid argument)
-Left .: openFile: invalid argument (Invalid argument)
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-mingw b/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-mingw
deleted file mode 100644
index f7d4410620..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-mingw
+++ /dev/null
@@ -1,16 +0,0 @@
-Left permission denied
-Action: openFile
-Reason: Permission denied
-File: .
-Left permission denied
-Action: openFile
-Reason: Permission denied
-File: .
-Left permission denied
-Action: openFile
-Reason: Permission denied
-File: .
-Left permission denied
-Action: openFile
-Reason: Permission denied
-File: .
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-mips-sgi-irix b/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-mips-sgi-irix
deleted file mode 100644
index 2cbf46b25f..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-mips-sgi-irix
+++ /dev/null
@@ -1,4 +0,0 @@
-Left .: openFile: inappropriate type (is a directory)
-Left .: openFile: invalid argument (Invalid argument)
-Left .: openFile: invalid argument (Invalid argument)
-Left .: openFile: invalid argument (Invalid argument)
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-sparc-sun-solaris2 b/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-sparc-sun-solaris2
deleted file mode 100644
index 2cbf46b25f..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile003.stdout-sparc-sun-solaris2
+++ /dev/null
@@ -1,4 +0,0 @@
-Left .: openFile: inappropriate type (is a directory)
-Left .: openFile: invalid argument (Invalid argument)
-Left .: openFile: invalid argument (Invalid argument)
-Left .: openFile: invalid argument (Invalid argument)
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile004.hs b/testsuite/tests/ghc-regress/lib/IO/openFile004.hs
deleted file mode 100644
index 4124abb0de..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile004.hs
+++ /dev/null
@@ -1,23 +0,0 @@
--- !!! Open a non-existent file for writing
-
-import Control.Monad
-import Data.Char
-import System.Directory
-import System.IO
-
-file = "openFile004.out"
-
-main = do
- b <- doesFileExist file
- when b (removeFile file)
-
- h <- openFile file WriteMode
- hPutStr h "hello world\n"
- hClose h
-
- h <- openFile file ReadMode
- let loop = do
- b <- hIsEOF h
- if b then return ()
- else do c <- hGetChar h; putChar c; loop
- loop
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile004.stdout b/testsuite/tests/ghc-regress/lib/IO/openFile004.stdout
deleted file mode 100644
index 3b18e512db..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile004.stdout
+++ /dev/null
@@ -1 +0,0 @@
-hello world
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile005.hs b/testsuite/tests/ghc-regress/lib/IO/openFile005.hs
deleted file mode 100644
index d8a8f83453..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile005.hs
+++ /dev/null
@@ -1,45 +0,0 @@
--- !!! test multiple-reader single-writer locking semantics
-
-import System.IO
-import System.IO.Error
-
-file1 = "openFile005.out1"
-file2 = "openFile005.out2"
-
-main = do
- putStrLn "two writes (should fail)"
- h <- openFile file1 WriteMode
- tryIOError (openFile file1 WriteMode) >>= print
- hClose h
-
- putStrLn "write and an append (should fail)"
- h <- openFile file1 WriteMode
- tryIOError (openFile file1 AppendMode) >>= print
- hClose h
-
- putStrLn "read/write and a write (should fail)"
- h <- openFile file1 ReadWriteMode
- tryIOError (openFile file1 WriteMode) >>= print
- hClose h
-
- putStrLn "read and a read/write (should fail)"
- h <- openFile file1 ReadMode
- tryIOError (openFile file1 ReadWriteMode) >>= print
- hClose h
-
- putStrLn "write and a read (should fail)"
- h <- openFile file1 WriteMode
- tryIOError (openFile file1 ReadMode) >>= print
- hClose h
-
- putStrLn "two writes, different files (silly, but should succeed)"
- h1 <- openFile file1 WriteMode
- h2 <- openFile file2 WriteMode
- hClose h1
- hClose h2
-
- putStrLn "two reads, should succeed"
- h1 <- openFile file1 ReadMode
- h2 <- openFile file1 ReadMode
- hClose h1
- hClose h2
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile005.stdout b/testsuite/tests/ghc-regress/lib/IO/openFile005.stdout
deleted file mode 100644
index 1a4b843be0..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile005.stdout
+++ /dev/null
@@ -1,12 +0,0 @@
-two writes (should fail)
-Left openFile005.out1: openFile: resource busy (file is locked)
-write and an append (should fail)
-Left openFile005.out1: openFile: resource busy (file is locked)
-read/write and a write (should fail)
-Left openFile005.out1: openFile: resource busy (file is locked)
-read and a read/write (should fail)
-Left openFile005.out1: openFile: resource busy (file is locked)
-write and a read (should fail)
-Left openFile005.out1: openFile: resource busy (file is locked)
-two writes, different files (silly, but should succeed)
-two reads, should succeed
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile005.stdout-i386-unknown-mingw32 b/testsuite/tests/ghc-regress/lib/IO/openFile005.stdout-i386-unknown-mingw32
deleted file mode 100644
index bf227989a9..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile005.stdout-i386-unknown-mingw32
+++ /dev/null
@@ -1,12 +0,0 @@
-two writes (should fail)
-Left openFile005.out1: openFile: permission denied (Permission denied)
-write and an append (should fail)
-Left openFile005.out1: openFile: permission denied (Permission denied)
-read/write and a write (should fail)
-Left openFile005.out1: openFile: permission denied (Permission denied)
-read and a read/write (should fail)
-Left openFile005.out1: openFile: permission denied (Permission denied)
-write and a read (should fail)
-Left openFile005.out1: openFile: permission denied (Permission denied)
-two writes, different files (silly, but should succeed)
-two reads, should succeed
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile006.hs b/testsuite/tests/ghc-regress/lib/IO/openFile006.hs
deleted file mode 100644
index 63cfea1a87..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile006.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !!! opening a file in WriteMode better truncate it
-
-import System.IO
-
-main = do
- h <- openFile "openFile006.out" AppendMode
- hPutStr h "hello, world"
- size <- hFileSize h
- print size
- hClose h
-
- h <- openFile "openFile006.out" WriteMode
- size <- hFileSize h
- print size
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile006.stdout b/testsuite/tests/ghc-regress/lib/IO/openFile006.stdout
deleted file mode 100644
index 368283eb3d..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile006.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-12
-0
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile007.hs b/testsuite/tests/ghc-regress/lib/IO/openFile007.hs
deleted file mode 100644
index e39ed6538f..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile007.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- !!! check that we don't truncate files if the open fails
-
-import Control.Monad
-import System.IO
-import System.IO.Error
-
-tmp = "openFile007.out"
-
-main = do
- h <- openFile tmp WriteMode
- hPutStrLn h "hello, world"
-
- -- second open in write mode better fail, but better not truncate the file
- tryIOError (openFile tmp WriteMode) >>= print
-
- hClose h
- s <- readFile tmp -- make sure our "hello, world" is still there
- putStr s
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile007.stdout b/testsuite/tests/ghc-regress/lib/IO/openFile007.stdout
deleted file mode 100644
index 49669047ff..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile007.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Left openFile007.out: openFile: resource busy (file is locked)
-hello, world
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile007.stdout-i386-unknown-mingw32 b/testsuite/tests/ghc-regress/lib/IO/openFile007.stdout-i386-unknown-mingw32
deleted file mode 100644
index 26f0afe2b2..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile007.stdout-i386-unknown-mingw32
+++ /dev/null
@@ -1,2 +0,0 @@
-Left openFile007.out: openFile: permission denied (Permission denied)
-hello, world
diff --git a/testsuite/tests/ghc-regress/lib/IO/openFile008.hs b/testsuite/tests/ghc-regress/lib/IO/openFile008.hs
deleted file mode 100644
index 9c1a1c47f8..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openFile008.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-import System.IO
-import System.Cmd
-import System.FilePath
-import Text.Printf
-import System.Directory
-import Control.Monad
-
-testdir = "openFile008_testdir"
-
--- Test repeated opening/closing of 1000 files. This is useful for guaging
--- the performance of open/close and file locking.
-main = do
- system ("rm -rf " ++ testdir)
- createDirectory testdir
- let filenames = [testdir </> printf "file%03d" (n::Int) | n <- [1..1000]]
-
- forM_ [1..50] $ \_ -> do
- hs <- mapM (\f -> openFile f WriteMode) filenames
- mapM_ hClose hs
-
- mapM_ removeFile filenames
- removeDirectory testdir
diff --git a/testsuite/tests/ghc-regress/lib/IO/openTempFile001.hs b/testsuite/tests/ghc-regress/lib/IO/openTempFile001.hs
deleted file mode 100644
index 36598e6d5b..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/openTempFile001.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-module Main where
-
-import System.IO
-import Control.Exception
-import System.Directory
-
-main = bracket
- (openTempFile "." "test.txt")
- (\(f,_) -> removeFile f)
- (\(f,h) -> do hPutStrLn h $ "\xa9" -- Copyright symbol
- hClose h
- s <- readFile f
- if (s /= "\xa9\n") then error ("failed: " ++ s) else return ())
diff --git a/testsuite/tests/ghc-regress/lib/IO/putStr001.hs b/testsuite/tests/ghc-regress/lib/IO/putStr001.hs
deleted file mode 100644
index 48b3add3f3..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/putStr001.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! Testing output on stdout
-
--- stdout is buffered, so test if its buffer
--- is flushed upon program termination.
-
-main = putStr "Hello, world\n"
diff --git a/testsuite/tests/ghc-regress/lib/IO/putStr001.stdout b/testsuite/tests/ghc-regress/lib/IO/putStr001.stdout
deleted file mode 100644
index a5c1966771..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/putStr001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Hello, world
diff --git a/testsuite/tests/ghc-regress/lib/IO/readFile001.hs b/testsuite/tests/ghc-regress/lib/IO/readFile001.hs
deleted file mode 100644
index e4a2b34cb7..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/readFile001.hs
+++ /dev/null
@@ -1,26 +0,0 @@
--- !!! readFile test
-
-import System.IO
-import System.IO.Error
-
-source = "readFile001.hs"
-filename = "readFile001.out"
-
-main = do
- s <- readFile source
- h <- openFile filename WriteMode
- hPutStrLn h s
- hClose h
- s <- readFile filename
-
- -- This open should fail, because the readFile hasn't been forced
- -- and the file is therefore still locked.
- tryIOError (openFile filename WriteMode) >>= print
-
- putStrLn s
-
- -- should be able to open it for writing now, because we've forced the
- -- whole file.
- h <- openFile filename WriteMode
-
- print h
diff --git a/testsuite/tests/ghc-regress/lib/IO/readFile001.stdout b/testsuite/tests/ghc-regress/lib/IO/readFile001.stdout
deleted file mode 100644
index cfb75708f9..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/readFile001.stdout
+++ /dev/null
@@ -1,30 +0,0 @@
-Left readFile001.out: openFile: resource busy (file is locked)
--- !!! readFile test
-
-import System.IO
-import System.IO.Error
-
-source = "readFile001.hs"
-filename = "readFile001.out"
-
-main = do
- s <- readFile source
- h <- openFile filename WriteMode
- hPutStrLn h s
- hClose h
- s <- readFile filename
-
- -- This open should fail, because the readFile hasn't been forced
- -- and the file is therefore still locked.
- tryIOError (openFile filename WriteMode) >>= print
-
- putStrLn s
-
- -- should be able to open it for writing now, because we've forced the
- -- whole file.
- h <- openFile filename WriteMode
-
- print h
-
-
-{handle: readFile001.out}
diff --git a/testsuite/tests/ghc-regress/lib/IO/readFile001.stdout-i386-unknown-mingw32 b/testsuite/tests/ghc-regress/lib/IO/readFile001.stdout-i386-unknown-mingw32
deleted file mode 100644
index d086f3a209..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/readFile001.stdout-i386-unknown-mingw32
+++ /dev/null
@@ -1,30 +0,0 @@
-Left readFile001.out: openFile: permission denied (Permission denied)
--- !!! readFile test
-
-import System.IO
-import System.IO.Error
-
-source = "readFile001.hs"
-filename = "readFile001.out"
-
-main = do
- s <- readFile source
- h <- openFile filename WriteMode
- hPutStrLn h s
- hClose h
- s <- readFile filename
-
- -- This open should fail, because the readFile hasn't been forced
- -- and the file is therefore still locked.
- tryIOError (openFile filename WriteMode) >>= print
-
- putStrLn s
-
- -- should be able to open it for writing now, because we've forced the
- -- whole file.
- h <- openFile filename WriteMode
-
- print h
-
-
-{handle: readFile001.out}
diff --git a/testsuite/tests/ghc-regress/lib/IO/readwrite001.hs b/testsuite/tests/ghc-regress/lib/IO/readwrite001.hs
deleted file mode 100644
index 4a94ef10eb..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/readwrite001.hs
+++ /dev/null
@@ -1,23 +0,0 @@
--- !!! RW files
-
-module Main(main) where
-
-import System.IO
-import System.Directory ( removeFile, doesFileExist )
-import Control.Monad
-
-main = do
- f <- doesFileExist "readwrite001.inout"
- when f (removeFile "readwrite001.inout")
- hdl <- openFile "readwrite001.inout" ReadWriteMode
- hSetBuffering hdl LineBuffering
- hPutStr hdl "as"
- hSeek hdl AbsoluteSeek 0
- ch <- hGetChar hdl
- print ch
- hPutStr hdl "ase"
- hSeek hdl AbsoluteSeek 0
- putChar '\n'
- ls <- hGetContents hdl
- putStrLn ls
-
diff --git a/testsuite/tests/ghc-regress/lib/IO/readwrite001.stdout b/testsuite/tests/ghc-regress/lib/IO/readwrite001.stdout
deleted file mode 100644
index e33ba0613d..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/readwrite001.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-'a'
-
-aase
diff --git a/testsuite/tests/ghc-regress/lib/IO/readwrite002.hs b/testsuite/tests/ghc-regress/lib/IO/readwrite002.hs
deleted file mode 100644
index 4bb607e395..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/readwrite002.hs
+++ /dev/null
@@ -1,49 +0,0 @@
--- !!! Testing RW handles
-
-import System.IO
-import System.IO.Error
-import System.Directory (removeFile, doesFileExist)
-import Control.Monad
-import System.Cmd
-
--- This test is weird, full marks to whoever dreamt it up!
-
-main :: IO ()
-main = do
- let username = "readwrite002.inout"
- f <- doesFileExist username
- when f (removeFile username)
- cd <- openFile username ReadWriteMode
-
- -- binary mode needed, otherwise newline translation gives
- -- unpredictable results.
- hSetBinaryMode cd True
-
--- Leva buffering on to make things more interesting:
--- hSetBuffering stdin NoBuffering
--- hSetBuffering stdout NoBuffering
--- hSetBuffering cd NoBuffering
- hPutStr cd speakString
- hSeek cd AbsoluteSeek 0
- speak cd `catch` \ err -> if isEOFError err then putStrLn "\nCaught EOF" else ioError err
- hSeek cd AbsoluteSeek 0
- hSetBuffering cd LineBuffering
- speak cd `catch` \ err -> if isEOFError err then putStrLn "\nCaught EOF" else ioError err
- return ()
- hSeek cd AbsoluteSeek 0
- hSetBuffering cd (BlockBuffering Nothing)
- speak cd `catch` \ err -> if isEOFError err then putStrLn "\nCaught EOF" else ioError err
-
-speakString = "##############################\n"
-
-speak cd = do
- (do
- ready <- hReady cd
- if ready then
- hGetChar cd >>= putChar
- else
- return ()
- ready <- hReady stdin
- if ready then (do { ch <- getChar; hPutChar cd ch})
- else return ())
- speak cd
diff --git a/testsuite/tests/ghc-regress/lib/IO/readwrite002.stdout b/testsuite/tests/ghc-regress/lib/IO/readwrite002.stdout
deleted file mode 100644
index 9aed0284d7..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/readwrite002.stdout
+++ /dev/null
@@ -1,9 +0,0 @@
-###############
-
-Caught EOF
-###############
-
-Caught EOF
-###############
-
-Caught EOF
diff --git a/testsuite/tests/ghc-regress/lib/IO/readwrite003.hs b/testsuite/tests/ghc-regress/lib/IO/readwrite003.hs
deleted file mode 100644
index d7ee78d637..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/readwrite003.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-import System.IO
-
-file = "readwrite003.txt"
-
-main = do
- writeFile file "ab\ncd\nef\ngh"
- h <- openFile file ReadWriteMode
- hGetLine h
- hPutStrLn h "yz"
- hClose h
- h <- openBinaryFile file ReadMode
- hGetContents h >>= putStr
diff --git a/testsuite/tests/ghc-regress/lib/IO/readwrite003.stdout b/testsuite/tests/ghc-regress/lib/IO/readwrite003.stdout
deleted file mode 100644
index 6b4522804e..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/readwrite003.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-ab
-yz
-ef
-gh \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/IO/utf8-test b/testsuite/tests/ghc-regress/lib/IO/utf8-test
deleted file mode 100644
index 7d0f35a448..0000000000
--- a/testsuite/tests/ghc-regress/lib/IO/utf8-test
+++ /dev/null
@@ -1,3 +0,0 @@
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-ð‘Žð‘ð‘ð‘‘ð‘’ð‘“ð‘”ð‘–ð‘—ð‘˜ð‘™ð‘šð‘›ð‘œð‘ð‘žð‘Ÿð‘ ð‘¡ð‘¢ð‘£ð‘¤ð‘¥ð‘¦ð‘§
-X \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/Makefile b/testsuite/tests/ghc-regress/lib/IOExts/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/all.T b/testsuite/tests/ghc-regress/lib/IOExts/all.T
deleted file mode 100644
index 518c8cccbd..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/all.T
+++ /dev/null
@@ -1,15 +0,0 @@
-test('echo001', set_stdin("echo001.hs"), compile_and_run, [''])
-
-test('hTell001', normal, compile_and_run, [''])
-
-test('hTell002', normal, compile_and_run, [''])
-
-test('performGC001', normal, compile_and_run, [''])
-
-# optimisation screws up this test because some of the traces get commoned up
-test('trace001', normal, compile_and_run, [''])
-
-test('hGetBuf002', normal, compile_and_run, [''])
-test('hGetBuf003', normal, compile_and_run, [''])
-test('hPutBuf001', normal, compile_and_run, [''])
-test('hPutBuf002', extra_clean(['hPutBuf002.out']), compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/echo001.hs b/testsuite/tests/ghc-regress/lib/IOExts/echo001.hs
deleted file mode 100644
index 7c803589bf..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/echo001.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-module Main(main) where
-
-import System.IO
-import Data.Char
-
-main = do
- isT <- hIsTerminalDevice stdin
- flg <- if not isT then return False else hGetEcho stdin
- print flg
- if not isT then hSetEcho stdin False else return ()
- hSetBuffering stdin NoBuffering
- interact (map toUpper)
-
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/echo001.stdout b/testsuite/tests/ghc-regress/lib/IOExts/echo001.stdout
deleted file mode 100644
index a9d7699954..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/echo001.stdout
+++ /dev/null
@@ -1,14 +0,0 @@
-False
-MODULE MAIN(MAIN) WHERE
-
-IMPORT SYSTEM.IO
-IMPORT DATA.CHAR
-
-MAIN = DO
- IST <- HISTERMINALDEVICE STDIN
- FLG <- IF NOT IST THEN RETURN FALSE ELSE HGETECHO STDIN
- PRINT FLG
- IF NOT IST THEN HSETECHO STDIN FALSE ELSE RETURN ()
- HSETBUFFERING STDIN NOBUFFERING
- INTERACT (MAP TOUPPER)
-
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/hGetBuf002.hs b/testsuite/tests/ghc-regress/lib/IOExts/hGetBuf002.hs
deleted file mode 100644
index 525eeb8e36..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/hGetBuf002.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-import System.IO
-import Foreign
-import Foreign.C
-
-main = do test True; test False
-
-test blocking = do
- h <- openBinaryFile "hGetBuf002.hs" ReadMode
-
- let sz = 42
- loop = do
- b <- allocaBytes sz $ \ptr -> do
- r <- (if blocking then hGetBuf else hGetBufNonBlocking) h ptr sz
- if (r == 0)
- then return True
- else do s <- peekCStringLen (ptr,r)
- putStr s
- return False
- if b then return () else loop -- tail call
-
- loop
-
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/hGetBuf002.stdout b/testsuite/tests/ghc-regress/lib/IOExts/hGetBuf002.stdout
deleted file mode 100644
index 9cbe498c5c..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/hGetBuf002.stdout
+++ /dev/null
@@ -1,44 +0,0 @@
-import System.IO
-import Foreign
-import Foreign.C
-
-main = do test True; test False
-
-test blocking = do
- h <- openBinaryFile "hGetBuf002.hs" ReadMode
-
- let sz = 42
- loop = do
- b <- allocaBytes sz $ \ptr -> do
- r <- (if blocking then hGetBuf else hGetBufNonBlocking) h ptr sz
- if (r == 0)
- then return True
- else do s <- peekCStringLen (ptr,r)
- putStr s
- return False
- if b then return () else loop -- tail call
-
- loop
-
-import System.IO
-import Foreign
-import Foreign.C
-
-main = do test True; test False
-
-test blocking = do
- h <- openBinaryFile "hGetBuf002.hs" ReadMode
-
- let sz = 42
- loop = do
- b <- allocaBytes sz $ \ptr -> do
- r <- (if blocking then hGetBuf else hGetBufNonBlocking) h ptr sz
- if (r == 0)
- then return True
- else do s <- peekCStringLen (ptr,r)
- putStr s
- return False
- if b then return () else loop -- tail call
-
- loop
-
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/hGetBuf003.hs b/testsuite/tests/ghc-regress/lib/IOExts/hGetBuf003.hs
deleted file mode 100644
index 6eefdf90e8..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/hGetBuf003.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-import System.IO
-import Foreign
-import Foreign.C
-import Control.Monad
-
-main = do test True; test False
-
-test blocking = do
- h <- openBinaryFile "hGetBuf003.hs" ReadMode
-
- let sz = 42
- loop = do
- -- mix ordinary char buffering with hGetBuf
- eof <- hIsEOF h
- when (not eof) $ hGetChar h >>= putChar
- b <- allocaBytes sz $ \ptr -> do
- r <- (if blocking then hGetBuf else hGetBufNonBlocking) h ptr sz
- if (r == 0)
- then return True
- else do s <- peekCStringLen (ptr,r)
- putStr s
- return False
- if b then return () else loop -- tail call
-
- loop
-
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/hGetBuf003.stdout b/testsuite/tests/ghc-regress/lib/IOExts/hGetBuf003.stdout
deleted file mode 100644
index ffeb291563..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/hGetBuf003.stdout
+++ /dev/null
@@ -1,52 +0,0 @@
-import System.IO
-import Foreign
-import Foreign.C
-import Control.Monad
-
-main = do test True; test False
-
-test blocking = do
- h <- openBinaryFile "hGetBuf003.hs" ReadMode
-
- let sz = 42
- loop = do
- -- mix ordinary char buffering with hGetBuf
- eof <- hIsEOF h
- when (not eof) $ hGetChar h >>= putChar
- b <- allocaBytes sz $ \ptr -> do
- r <- (if blocking then hGetBuf else hGetBufNonBlocking) h ptr sz
- if (r == 0)
- then return True
- else do s <- peekCStringLen (ptr,r)
- putStr s
- return False
- if b then return () else loop -- tail call
-
- loop
-
-import System.IO
-import Foreign
-import Foreign.C
-import Control.Monad
-
-main = do test True; test False
-
-test blocking = do
- h <- openBinaryFile "hGetBuf003.hs" ReadMode
-
- let sz = 42
- loop = do
- -- mix ordinary char buffering with hGetBuf
- eof <- hIsEOF h
- when (not eof) $ hGetChar h >>= putChar
- b <- allocaBytes sz $ \ptr -> do
- r <- (if blocking then hGetBuf else hGetBufNonBlocking) h ptr sz
- if (r == 0)
- then return True
- else do s <- peekCStringLen (ptr,r)
- putStr s
- return False
- if b then return () else loop -- tail call
-
- loop
-
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/hPutBuf001.hs b/testsuite/tests/ghc-regress/lib/IOExts/hPutBuf001.hs
deleted file mode 100644
index fa7e076d41..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/hPutBuf001.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-import System.IO
-import Foreign
-import Foreign.C
-
-main = do
- hSetBinaryMode stdout True
- withCStringLen "hello world\n" $ \(ptr,len) -> hPutBuf stdout ptr len
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/hPutBuf001.stdout b/testsuite/tests/ghc-regress/lib/IOExts/hPutBuf001.stdout
deleted file mode 100644
index 3b18e512db..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/hPutBuf001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-hello world
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/hPutBuf002.hs b/testsuite/tests/ghc-regress/lib/IOExts/hPutBuf002.hs
deleted file mode 100644
index a7ea2eed03..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/hPutBuf002.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-import System.IO
-import Foreign
-import Foreign.C
-
--- !!! this test failed to write anything in GHC 5.00.2
-main = do
- h <- openBinaryFile "hPutBuf002.out" ReadWriteMode
- withCStringLen "hello world\n" $ \(ptr,len) -> hPutBuf h ptr len
- hFileSize h >>= print
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/hPutBuf002.stdout b/testsuite/tests/ghc-regress/lib/IOExts/hPutBuf002.stdout
deleted file mode 100644
index 48082f72f0..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/hPutBuf002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-12
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/hTell001.hs b/testsuite/tests/ghc-regress/lib/IOExts/hTell001.hs
deleted file mode 100644
index 6b26eecb97..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/hTell001.hs
+++ /dev/null
@@ -1,63 +0,0 @@
--- !!! Testing hGetPosn and hSetPosn
-module Main(main) where
-
-import System.IO
-
-getPosnAndPrint h = do
- x <- hTell h
- v <- hGetChar h
- putStrLn ("At position: " ++ show x ++ ", found: " ++ show v)
- return x
-
-recordDoAndRepos h a = do
- x <- getPosnAndPrint h
- a
- hSeek h AbsoluteSeek x
- getPosnAndPrint h
- return ()
-
-recordDoAndRepos2 h a = do
- x <- getPosnAndPrint h
- a
- hSeek h AbsoluteSeek x
- getPosnAndPrint h
- return ()
-
-recordDoAndRepos3 h a = do
- x <- getPosnAndPrint h
- a
- hSeek h SeekFromEnd (negate (x + 1))
- getPosnAndPrint h
- return ()
-
-file = "hTell001.hs"
-
-main :: IO ()
-main = do
- h <- openBinaryFile file ReadMode
- recordDoAndRepos h $
- recordDoAndRepos h $
- recordDoAndRepos h $
- recordDoAndRepos h $
- recordDoAndRepos h $
- putStrLn ""
- hClose h
- putStrLn "\nUsing hSeek/AbsoluteSeek: "
- h <- openBinaryFile file ReadMode
- recordDoAndRepos2 h $
- recordDoAndRepos2 h $
- recordDoAndRepos2 h $
- recordDoAndRepos2 h $
- recordDoAndRepos2 h $
- putStrLn ""
-
- hClose h
- putStrLn "\nUsing hSeek/SeekFromEnd: "
- putStrLn "(Don't worry if you're seeing differing numbers here, it might be down to '\\n' vs '\\r\\n')"
- h <- openBinaryFile file ReadMode
- recordDoAndRepos3 h $
- recordDoAndRepos3 h $
- recordDoAndRepos3 h $
- recordDoAndRepos3 h $
- recordDoAndRepos3 h $
- putStrLn ""
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/hTell001.stdout b/testsuite/tests/ghc-regress/lib/IOExts/hTell001.stdout
deleted file mode 100644
index 7e22e69a93..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/hTell001.stdout
+++ /dev/null
@@ -1,38 +0,0 @@
-At position: 0, found: '-'
-At position: 1, found: '-'
-At position: 2, found: ' '
-At position: 3, found: '!'
-At position: 4, found: '!'
-
-At position: 4, found: '!'
-At position: 3, found: '!'
-At position: 2, found: ' '
-At position: 1, found: '-'
-At position: 0, found: '-'
-
-Using hSeek/AbsoluteSeek:
-At position: 0, found: '-'
-At position: 1, found: '-'
-At position: 2, found: ' '
-At position: 3, found: '!'
-At position: 4, found: '!'
-
-At position: 4, found: '!'
-At position: 3, found: '!'
-At position: 2, found: ' '
-At position: 1, found: '-'
-At position: 0, found: '-'
-
-Using hSeek/SeekFromEnd:
-(Don't worry if you're seeing differing numbers here, it might be down to '\n' vs '\r\n')
-At position: 0, found: '-'
-At position: 1, found: '-'
-At position: 2, found: ' '
-At position: 3, found: '!'
-At position: 4, found: '!'
-
-At position: 1376, found: 'n'
-At position: 1377, found: ' '
-At position: 1378, found: '"'
-At position: 1379, found: '"'
-At position: 1380, found: '\n'
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/hTell002.hs b/testsuite/tests/ghc-regress/lib/IOExts/hTell002.hs
deleted file mode 100644
index b790db8fe8..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/hTell002.hs
+++ /dev/null
@@ -1,33 +0,0 @@
--- !!! Testing hSeek
-module Main(main) where
-
-import System.Directory
-import System.IO
-
-main :: IO ()
-main = do
- h <- openFile "tst-seek" WriteMode
- hSetEncoding h utf8 -- hSeek/hTell work with Unicode streams
- hPutStr h "test string1"
- -- seek to EOF should be cool..
- hSeek h SeekFromEnd 0
- hPutStr h "test string2"
- -- seek past EOF should now also be cool..
- hSeek h SeekFromEnd 3
- hPutStr h "test string3"
- hSeek h AbsoluteSeek 13
- hPutStr h "test string4"
- x <- hTell h
- print x
- hSeek h AbsoluteSeek 30
- x1 <- hTell h
- hPutStr h "人間虫" -- we should be able to output Unicode too
- x2 <- hTell h
- print (x2 - x1)
- hPutStr h "filler"
- hClose h
- h <- openFile "tst-seek" ReadMode
- hSetEncoding h utf8
- str <- hGetContents h
- putStrLn str
- removeFile "tst-seek"
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/hTell002.stdout b/testsuite/tests/ghc-regress/lib/IOExts/hTell002.stdout
deleted file mode 100644
index 52696f8a2c..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/hTell002.stdout
+++ /dev/null
Binary files differ
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/performGC001.hs b/testsuite/tests/ghc-regress/lib/IOExts/performGC001.hs
deleted file mode 100644
index f14dab004c..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/performGC001.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! test System.Mem.performGC
-
-import System.Mem
-
-main = performGC
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/performGC001.stdout b/testsuite/tests/ghc-regress/lib/IOExts/performGC001.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/performGC001.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/trace001.hs b/testsuite/tests/ghc-regress/lib/IOExts/trace001.hs
deleted file mode 100644
index 2ed61d486e..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/trace001.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-import System.IO
-import Debug.Trace
-
-main = do
- hPutStr stderr
- (trace (trace (trace (trace (trace (trace (trace
- "one" "fish") "two") "fish") "red") "fish") "blue") "fish")
- hPutStr stdout
- (trace (trace (trace (trace (trace (trace (trace
- "ONE" "FISH") "TWO") "FISH") "RED") "FISH") "BLUE") "FISH")
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/trace001.stderr b/testsuite/tests/ghc-regress/lib/IOExts/trace001.stderr
deleted file mode 100644
index dfe965af21..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/trace001.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-one
-fish
-two
-fish
-red
-fish
-blue
-fishONE
-FISH
-TWO
-FISH
-RED
-FISH
-BLUE
diff --git a/testsuite/tests/ghc-regress/lib/IOExts/trace001.stdout b/testsuite/tests/ghc-regress/lib/IOExts/trace001.stdout
deleted file mode 100644
index 23ddbb4550..0000000000
--- a/testsuite/tests/ghc-regress/lib/IOExts/trace001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-FISH \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/IORef/Makefile b/testsuite/tests/ghc-regress/lib/IORef/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/IORef/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/IORef/all.T b/testsuite/tests/ghc-regress/lib/IORef/all.T
deleted file mode 100644
index cb41d73fa1..0000000000
--- a/testsuite/tests/ghc-regress/lib/IORef/all.T
+++ /dev/null
@@ -1,4 +0,0 @@
-test('ioref001', compose(skip_if_fast,extra_run_opts('+RTS -K64m -RTS')), \
- compile_and_run, ['+RTS -K64m -RTS'])
-
-# need to add -K32m to the compiler opts, so that GHCi gets it too
diff --git a/testsuite/tests/ghc-regress/lib/IORef/ioref001.hs b/testsuite/tests/ghc-regress/lib/IORef/ioref001.hs
deleted file mode 100644
index 837b82e0c1..0000000000
--- a/testsuite/tests/ghc-regress/lib/IORef/ioref001.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-module Main where
-
-import Data.IORef
-
-loop r 0 = return ()
-loop r c = loop r (c-1) >> writeIORef r 42
-
-main = newIORef 0 >>= \r -> loop r 1000000 >> putStrLn "done"
diff --git a/testsuite/tests/ghc-regress/lib/IORef/ioref001.stdout b/testsuite/tests/ghc-regress/lib/IORef/ioref001.stdout
deleted file mode 100644
index 19f86f493a..0000000000
--- a/testsuite/tests/ghc-regress/lib/IORef/ioref001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-done
diff --git a/testsuite/tests/ghc-regress/lib/Lex/Makefile b/testsuite/tests/ghc-regress/lib/Lex/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/Lex/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/Lex/all.T b/testsuite/tests/ghc-regress/lib/Lex/all.T
deleted file mode 100644
index 8c198fb90c..0000000000
--- a/testsuite/tests/ghc-regress/lib/Lex/all.T
+++ /dev/null
@@ -1,2 +0,0 @@
-test('lexNum', normal, compile_and_run, [''])
-
diff --git a/testsuite/tests/ghc-regress/lib/Lex/lexNum.hs b/testsuite/tests/ghc-regress/lib/Lex/lexNum.hs
deleted file mode 100644
index fb63034b52..0000000000
--- a/testsuite/tests/ghc-regress/lib/Lex/lexNum.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-module Main where
-
-testStrings
- = [ "0x3y",
- "0X3abx",
- "0o39y",
- "0O334z",
-
- "NaN",
- "Infinity",
-
- "34yy",
- "34.4x",
- "034.4x",
- "31.45e-6y",
- "49.2v",
- "049.2v",
- "35e-3x",
- "035e-3x",
- "35e+3y",
- "83.3e-22",
- "083.3e-22"
- ]
-
-main = mapM test testStrings
-
-test s = print (lex s)
-
diff --git a/testsuite/tests/ghc-regress/lib/Lex/lexNum.stdout b/testsuite/tests/ghc-regress/lib/Lex/lexNum.stdout
deleted file mode 100644
index 92cb063178..0000000000
--- a/testsuite/tests/ghc-regress/lib/Lex/lexNum.stdout
+++ /dev/null
@@ -1,17 +0,0 @@
-[("0x3","y")]
-[("0X3ab","x")]
-[("0o3","9y")]
-[("0O334","z")]
-[("NaN","")]
-[("Infinity","")]
-[("34","yy")]
-[("34.4","x")]
-[("034.4","x")]
-[("31.45e-6","y")]
-[("49.2","v")]
-[("049.2","v")]
-[("35e-3","x")]
-[("035e-3","x")]
-[("35e+3","y")]
-[("83.3e-22","")]
-[("083.3e-22","")]
diff --git a/testsuite/tests/ghc-regress/lib/Makefile b/testsuite/tests/ghc-regress/lib/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/lib/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/Makefile b/testsuite/tests/ghc-regress/lib/Numeric/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/all.T b/testsuite/tests/ghc-regress/lib/Numeric/all.T
deleted file mode 100644
index d6237fbee8..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/all.T
+++ /dev/null
@@ -1,10 +0,0 @@
-test('num001', normal, compile_and_run, [''])
-test('num002', normal, compile_and_run, [''])
-test('num003', normal, compile_and_run, [''])
-test('num004', normal, compile_and_run, [''])
-test('num005', normal, compile_and_run, [''])
-test('num006', normal, compile_and_run, [''])
-test('num007', normal, compile_and_run, [''])
-test('num008', normal, compile_and_run, [''])
-test('num009', compose(skip_if_fast, if_os('darwin', expect_broken(2370))), compile_and_run, [''])
-test('num010', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num001.hs b/testsuite/tests/ghc-regress/lib/Numeric/num001.hs
deleted file mode 100644
index 8a8c97a11b..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num001.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Main(main) where
-
-import Numeric
-import Data.Ratio
-
-main = print ((fromRat (132874 % 23849))::Double)
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num001.stdout b/testsuite/tests/ghc-regress/lib/Numeric/num001.stdout
deleted file mode 100644
index 6d2f0c7a77..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-5.571470501907837
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num002.hs b/testsuite/tests/ghc-regress/lib/Numeric/num002.hs
deleted file mode 100644
index 31ea76ced9..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num002.hs
+++ /dev/null
@@ -1,20 +0,0 @@
--- Testing showInt, lightly.
-
-module Main(main) where
-
-import Numeric
-
-showSignedInt :: Integral a => a -> String
-showSignedInt x = showSigned (showInt) 0 x ""
-
-main =
- do
- putStrLn (showInt (343023920121::Integer) [])
- putStrLn (showInt (3430239::Int) [])
- putStrLn (showInt (1212 :: Int) [])
- putStrLn (showSignedInt (591125662431 `div` (517::Int)))
- -- showInt just works over naturals, wrap it up inside
- -- a use of Numeric.showSigned to show negative nums.
- putStrLn (showSignedInt (-111::Int))
- putStrLn (showInt (232189458241::Integer) [])
-
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout b/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout
deleted file mode 100644
index ce14dec313..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-343023920121
-3430239
-1212
--3055754
--111
-232189458241
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-alpha-dec-osf3 b/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-alpha-dec-osf3
deleted file mode 100644
index b81876f763..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-alpha-dec-osf3
+++ /dev/null
@@ -1,6 +0,0 @@
-343023920121
-3430239
-1212
-1143376523
--111
-232189458241
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-mips-sgi-irix b/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-mips-sgi-irix
deleted file mode 100644
index b81876f763..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-mips-sgi-irix
+++ /dev/null
@@ -1,6 +0,0 @@
-343023920121
-3430239
-1212
-1143376523
--111
-232189458241
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-ws-64 b/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-ws-64
deleted file mode 100644
index b81876f763..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-ws-64
+++ /dev/null
@@ -1,6 +0,0 @@
-343023920121
-3430239
-1212
-1143376523
--111
-232189458241
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-x86_64-unknown-openbsd b/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-x86_64-unknown-openbsd
deleted file mode 100644
index b81876f763..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num002.stdout-x86_64-unknown-openbsd
+++ /dev/null
@@ -1,6 +0,0 @@
-343023920121
-3430239
-1212
-1143376523
--111
-232189458241
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num003.hs b/testsuite/tests/ghc-regress/lib/Numeric/num003.hs
deleted file mode 100644
index 368be2599a..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num003.hs
+++ /dev/null
@@ -1,20 +0,0 @@
--- Testing readInt, lightly.
---
-module Main(main) where
-
-import Numeric
-import Data.Char
-
-main =
- let
- rd :: ReadS Integer
- rd = readSigned (readInt 10 (isDigit) (digitToInt))
- in
- do
- print (rd (show (343023920121::Integer)))
- print (rd (show (3430239::Int)))
- print (rd (show (1212 :: Int)))
- print (rd (show (591125662431 `div` (517::Int))))
- print (rd (show (-111::Int)))
- print (rd (show (232189458241::Integer)))
-
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout b/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout
deleted file mode 100644
index 1266b608b3..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-[(343023920121,"")]
-[(3430239,"")]
-[(1212,"")]
-[(-3055754,"")]
-[(-111,"")]
-[(232189458241,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-alpha-dec-osf3 b/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-alpha-dec-osf3
deleted file mode 100644
index ae95d2aa0a..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-alpha-dec-osf3
+++ /dev/null
@@ -1,6 +0,0 @@
-[(343023920121,"")]
-[(3430239,"")]
-[(1212,"")]
-[(1143376523,"")]
-[(-111,"")]
-[(232189458241,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-mips-sgi-irix b/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-mips-sgi-irix
deleted file mode 100644
index ae95d2aa0a..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-mips-sgi-irix
+++ /dev/null
@@ -1,6 +0,0 @@
-[(343023920121,"")]
-[(3430239,"")]
-[(1212,"")]
-[(1143376523,"")]
-[(-111,"")]
-[(232189458241,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-ws-64 b/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-ws-64
deleted file mode 100644
index ae95d2aa0a..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-ws-64
+++ /dev/null
@@ -1,6 +0,0 @@
-[(343023920121,"")]
-[(3430239,"")]
-[(1212,"")]
-[(1143376523,"")]
-[(-111,"")]
-[(232189458241,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-x86_64-unknown-openbsd b/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-x86_64-unknown-openbsd
deleted file mode 100644
index ae95d2aa0a..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num003.stdout-x86_64-unknown-openbsd
+++ /dev/null
@@ -1,6 +0,0 @@
-[(343023920121,"")]
-[(3430239,"")]
-[(1212,"")]
-[(1143376523,"")]
-[(-111,"")]
-[(232189458241,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num004.hs b/testsuite/tests/ghc-regress/lib/Numeric/num004.hs
deleted file mode 100644
index 0eb2bee5b0..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num004.hs
+++ /dev/null
@@ -1,20 +0,0 @@
--- Exercising Numeric.readSigned a bit
---
-module Main(main) where
-
-import Numeric
-import Data.Char
-
-main =
- let
- rd :: ReadS Integer
- rd = readSigned (readInt 10 (isDigit) (digitToInt))
- in
- do
- print (rd (show (343023920121::Integer)))
- print (rd (show (3430239::Int)))
- print (rd (show (-0 :: Int)))
- print (rd (show (591125662431 `div` (517::Int))))
- print (rd (show (-111::Int)))
- print (rd (show (232189458241::Integer)))
-
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout b/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout
deleted file mode 100644
index 12610a153d..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-[(343023920121,"")]
-[(3430239,"")]
-[(0,"")]
-[(-3055754,"")]
-[(-111,"")]
-[(232189458241,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-alpha-dec-osf3 b/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-alpha-dec-osf3
deleted file mode 100644
index 150f98e1ea..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-alpha-dec-osf3
+++ /dev/null
@@ -1,6 +0,0 @@
-[(343023920121,"")]
-[(3430239,"")]
-[(0,"")]
-[(1143376523,"")]
-[(-111,"")]
-[(232189458241,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-mips-sgi-irix b/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-mips-sgi-irix
deleted file mode 100644
index 150f98e1ea..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-mips-sgi-irix
+++ /dev/null
@@ -1,6 +0,0 @@
-[(343023920121,"")]
-[(3430239,"")]
-[(0,"")]
-[(1143376523,"")]
-[(-111,"")]
-[(232189458241,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-ws-64 b/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-ws-64
deleted file mode 100644
index 150f98e1ea..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-ws-64
+++ /dev/null
@@ -1,6 +0,0 @@
-[(343023920121,"")]
-[(3430239,"")]
-[(0,"")]
-[(1143376523,"")]
-[(-111,"")]
-[(232189458241,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-x86_64-unknown-openbsd b/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-x86_64-unknown-openbsd
deleted file mode 100644
index 150f98e1ea..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num004.stdout-x86_64-unknown-openbsd
+++ /dev/null
@@ -1,6 +0,0 @@
-[(343023920121,"")]
-[(3430239,"")]
-[(0,"")]
-[(1143376523,"")]
-[(-111,"")]
-[(232189458241,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num005.hs b/testsuite/tests/ghc-regress/lib/Numeric/num005.hs
deleted file mode 100644
index ef647a6967..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num005.hs
+++ /dev/null
@@ -1,23 +0,0 @@
--- Exercising Numeric.readSigned a bit
---
-module Main(main) where
-
-import Numeric
-
-main =
- let
- ls = ["3489348394032498320438240938403","0","-1","1","34323","2L","012","0x23","3243ab"]
- present str f ls =
- sequence (map (\ v -> putStr ('\n':str ++
- ' ': v ++
- " = " ++
- (show (f v)))) ls)
- in
- do
- present "(readDec::ReadS Integer)" (readDec::ReadS Integer) ls
- present "(readDec::ReadS Int)" (readDec::ReadS Int) ls
- present "(readOct::ReadS Integer)" (readOct::ReadS Integer) ls
- present "(readOct::ReadS Int)" (readOct::ReadS Int) ls
- present "(readHex::ReadS Integer)" (readHex::ReadS Integer) ls
- present "(readHex::ReadS Int)" (readHex::ReadS Int) ls
- putStrLn ""
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout b/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout
deleted file mode 100644
index f6ba218eb8..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout
+++ /dev/null
@@ -1,55 +0,0 @@
-
-(readDec::ReadS Integer) 3489348394032498320438240938403 = [(3489348394032498320438240938403,"")]
-(readDec::ReadS Integer) 0 = [(0,"")]
-(readDec::ReadS Integer) -1 = []
-(readDec::ReadS Integer) 1 = [(1,"")]
-(readDec::ReadS Integer) 34323 = [(34323,"")]
-(readDec::ReadS Integer) 2L = [(2,"L")]
-(readDec::ReadS Integer) 012 = [(12,"")]
-(readDec::ReadS Integer) 0x23 = [(0,"x23")]
-(readDec::ReadS Integer) 3243ab = [(3243,"ab")]
-(readDec::ReadS Int) 3489348394032498320438240938403 = [(-1268053597,"")]
-(readDec::ReadS Int) 0 = [(0,"")]
-(readDec::ReadS Int) -1 = []
-(readDec::ReadS Int) 1 = [(1,"")]
-(readDec::ReadS Int) 34323 = [(34323,"")]
-(readDec::ReadS Int) 2L = [(2,"L")]
-(readDec::ReadS Int) 012 = [(12,"")]
-(readDec::ReadS Int) 0x23 = [(0,"x23")]
-(readDec::ReadS Int) 3243ab = [(3243,"ab")]
-(readOct::ReadS Integer) 3489348394032498320438240938403 = [(28,"89348394032498320438240938403")]
-(readOct::ReadS Integer) 0 = [(0,"")]
-(readOct::ReadS Integer) -1 = []
-(readOct::ReadS Integer) 1 = [(1,"")]
-(readOct::ReadS Integer) 34323 = [(14547,"")]
-(readOct::ReadS Integer) 2L = [(2,"L")]
-(readOct::ReadS Integer) 012 = [(10,"")]
-(readOct::ReadS Integer) 0x23 = [(0,"x23")]
-(readOct::ReadS Integer) 3243ab = [(1699,"ab")]
-(readOct::ReadS Int) 3489348394032498320438240938403 = [(28,"89348394032498320438240938403")]
-(readOct::ReadS Int) 0 = [(0,"")]
-(readOct::ReadS Int) -1 = []
-(readOct::ReadS Int) 1 = [(1,"")]
-(readOct::ReadS Int) 34323 = [(14547,"")]
-(readOct::ReadS Int) 2L = [(2,"L")]
-(readOct::ReadS Int) 012 = [(10,"")]
-(readOct::ReadS Int) 0x23 = [(0,"x23")]
-(readOct::ReadS Int) 3243ab = [(1699,"ab")]
-(readHex::ReadS Integer) 3489348394032498320438240938403 = [(4364516597526947317207336190131536899,"")]
-(readHex::ReadS Integer) 0 = [(0,"")]
-(readHex::ReadS Integer) -1 = []
-(readHex::ReadS Integer) 1 = [(1,"")]
-(readHex::ReadS Integer) 34323 = [(213795,"")]
-(readHex::ReadS Integer) 2L = [(2,"L")]
-(readHex::ReadS Integer) 012 = [(18,"")]
-(readHex::ReadS Integer) 0x23 = [(0,"x23")]
-(readHex::ReadS Integer) 3243ab = [(3294123,"")]
-(readHex::ReadS Int) 3489348394032498320438240938403 = [(1083409411,"")]
-(readHex::ReadS Int) 0 = [(0,"")]
-(readHex::ReadS Int) -1 = []
-(readHex::ReadS Int) 1 = [(1,"")]
-(readHex::ReadS Int) 34323 = [(213795,"")]
-(readHex::ReadS Int) 2L = [(2,"L")]
-(readHex::ReadS Int) 012 = [(18,"")]
-(readHex::ReadS Int) 0x23 = [(0,"x23")]
-(readHex::ReadS Int) 3243ab = [(3294123,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-alpha-dec-osf3 b/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-alpha-dec-osf3
deleted file mode 100644
index 35678af82f..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-alpha-dec-osf3
+++ /dev/null
@@ -1,55 +0,0 @@
-
-(readDec::ReadS Integer) 3489348394032498320438240938403 = [(3489348394032498320438240938403,"")]
-(readDec::ReadS Integer) 0 = [(0,"")]
-(readDec::ReadS Integer) -1 = []
-(readDec::ReadS Integer) 1 = [(1,"")]
-(readDec::ReadS Integer) 34323 = [(34323,"")]
-(readDec::ReadS Integer) 2L = [(2,"L")]
-(readDec::ReadS Integer) 012 = [(12,"")]
-(readDec::ReadS Integer) 0x23 = [(0,"x23")]
-(readDec::ReadS Integer) 3243ab = [(3243,"ab")]
-(readDec::ReadS Int) 3489348394032498320438240938403 = [(8154046292665502115,"")]
-(readDec::ReadS Int) 0 = [(0,"")]
-(readDec::ReadS Int) -1 = []
-(readDec::ReadS Int) 1 = [(1,"")]
-(readDec::ReadS Int) 34323 = [(34323,"")]
-(readDec::ReadS Int) 2L = [(2,"L")]
-(readDec::ReadS Int) 012 = [(12,"")]
-(readDec::ReadS Int) 0x23 = [(0,"x23")]
-(readDec::ReadS Int) 3243ab = [(3243,"ab")]
-(readOct::ReadS Integer) 3489348394032498320438240938403 = [(28,"89348394032498320438240938403")]
-(readOct::ReadS Integer) 0 = [(0,"")]
-(readOct::ReadS Integer) -1 = []
-(readOct::ReadS Integer) 1 = [(1,"")]
-(readOct::ReadS Integer) 34323 = [(14547,"")]
-(readOct::ReadS Integer) 2L = [(2,"L")]
-(readOct::ReadS Integer) 012 = [(10,"")]
-(readOct::ReadS Integer) 0x23 = [(0,"x23")]
-(readOct::ReadS Integer) 3243ab = [(1699,"ab")]
-(readOct::ReadS Int) 3489348394032498320438240938403 = [(28,"89348394032498320438240938403")]
-(readOct::ReadS Int) 0 = [(0,"")]
-(readOct::ReadS Int) -1 = []
-(readOct::ReadS Int) 1 = [(1,"")]
-(readOct::ReadS Int) 34323 = [(14547,"")]
-(readOct::ReadS Int) 2L = [(2,"L")]
-(readOct::ReadS Int) 012 = [(10,"")]
-(readOct::ReadS Int) 0x23 = [(0,"x23")]
-(readOct::ReadS Int) 3243ab = [(1699,"ab")]
-(readHex::ReadS Integer) 3489348394032498320438240938403 = [(4364516597526947317207336190131536899,"")]
-(readHex::ReadS Integer) 0 = [(0,"")]
-(readHex::ReadS Integer) -1 = []
-(readHex::ReadS Integer) 1 = [(1,"")]
-(readHex::ReadS Integer) 34323 = [(213795,"")]
-(readHex::ReadS Integer) 2L = [(2,"L")]
-(readHex::ReadS Integer) 012 = [(18,"")]
-(readHex::ReadS Integer) 0x23 = [(0,"x23")]
-(readHex::ReadS Integer) 3243ab = [(3294123,"")]
-(readHex::ReadS Int) 3489348394032498320438240938403 = [(-8998117828778032125,"")]
-(readHex::ReadS Int) 0 = [(0,"")]
-(readHex::ReadS Int) -1 = []
-(readHex::ReadS Int) 1 = [(1,"")]
-(readHex::ReadS Int) 34323 = [(213795,"")]
-(readHex::ReadS Int) 2L = [(2,"L")]
-(readHex::ReadS Int) 012 = [(18,"")]
-(readHex::ReadS Int) 0x23 = [(0,"x23")]
-(readHex::ReadS Int) 3243ab = [(3294123,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-mips-sgi-irix b/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-mips-sgi-irix
deleted file mode 100644
index 35678af82f..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-mips-sgi-irix
+++ /dev/null
@@ -1,55 +0,0 @@
-
-(readDec::ReadS Integer) 3489348394032498320438240938403 = [(3489348394032498320438240938403,"")]
-(readDec::ReadS Integer) 0 = [(0,"")]
-(readDec::ReadS Integer) -1 = []
-(readDec::ReadS Integer) 1 = [(1,"")]
-(readDec::ReadS Integer) 34323 = [(34323,"")]
-(readDec::ReadS Integer) 2L = [(2,"L")]
-(readDec::ReadS Integer) 012 = [(12,"")]
-(readDec::ReadS Integer) 0x23 = [(0,"x23")]
-(readDec::ReadS Integer) 3243ab = [(3243,"ab")]
-(readDec::ReadS Int) 3489348394032498320438240938403 = [(8154046292665502115,"")]
-(readDec::ReadS Int) 0 = [(0,"")]
-(readDec::ReadS Int) -1 = []
-(readDec::ReadS Int) 1 = [(1,"")]
-(readDec::ReadS Int) 34323 = [(34323,"")]
-(readDec::ReadS Int) 2L = [(2,"L")]
-(readDec::ReadS Int) 012 = [(12,"")]
-(readDec::ReadS Int) 0x23 = [(0,"x23")]
-(readDec::ReadS Int) 3243ab = [(3243,"ab")]
-(readOct::ReadS Integer) 3489348394032498320438240938403 = [(28,"89348394032498320438240938403")]
-(readOct::ReadS Integer) 0 = [(0,"")]
-(readOct::ReadS Integer) -1 = []
-(readOct::ReadS Integer) 1 = [(1,"")]
-(readOct::ReadS Integer) 34323 = [(14547,"")]
-(readOct::ReadS Integer) 2L = [(2,"L")]
-(readOct::ReadS Integer) 012 = [(10,"")]
-(readOct::ReadS Integer) 0x23 = [(0,"x23")]
-(readOct::ReadS Integer) 3243ab = [(1699,"ab")]
-(readOct::ReadS Int) 3489348394032498320438240938403 = [(28,"89348394032498320438240938403")]
-(readOct::ReadS Int) 0 = [(0,"")]
-(readOct::ReadS Int) -1 = []
-(readOct::ReadS Int) 1 = [(1,"")]
-(readOct::ReadS Int) 34323 = [(14547,"")]
-(readOct::ReadS Int) 2L = [(2,"L")]
-(readOct::ReadS Int) 012 = [(10,"")]
-(readOct::ReadS Int) 0x23 = [(0,"x23")]
-(readOct::ReadS Int) 3243ab = [(1699,"ab")]
-(readHex::ReadS Integer) 3489348394032498320438240938403 = [(4364516597526947317207336190131536899,"")]
-(readHex::ReadS Integer) 0 = [(0,"")]
-(readHex::ReadS Integer) -1 = []
-(readHex::ReadS Integer) 1 = [(1,"")]
-(readHex::ReadS Integer) 34323 = [(213795,"")]
-(readHex::ReadS Integer) 2L = [(2,"L")]
-(readHex::ReadS Integer) 012 = [(18,"")]
-(readHex::ReadS Integer) 0x23 = [(0,"x23")]
-(readHex::ReadS Integer) 3243ab = [(3294123,"")]
-(readHex::ReadS Int) 3489348394032498320438240938403 = [(-8998117828778032125,"")]
-(readHex::ReadS Int) 0 = [(0,"")]
-(readHex::ReadS Int) -1 = []
-(readHex::ReadS Int) 1 = [(1,"")]
-(readHex::ReadS Int) 34323 = [(213795,"")]
-(readHex::ReadS Int) 2L = [(2,"L")]
-(readHex::ReadS Int) 012 = [(18,"")]
-(readHex::ReadS Int) 0x23 = [(0,"x23")]
-(readHex::ReadS Int) 3243ab = [(3294123,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-ws-64 b/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-ws-64
deleted file mode 100644
index 35678af82f..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-ws-64
+++ /dev/null
@@ -1,55 +0,0 @@
-
-(readDec::ReadS Integer) 3489348394032498320438240938403 = [(3489348394032498320438240938403,"")]
-(readDec::ReadS Integer) 0 = [(0,"")]
-(readDec::ReadS Integer) -1 = []
-(readDec::ReadS Integer) 1 = [(1,"")]
-(readDec::ReadS Integer) 34323 = [(34323,"")]
-(readDec::ReadS Integer) 2L = [(2,"L")]
-(readDec::ReadS Integer) 012 = [(12,"")]
-(readDec::ReadS Integer) 0x23 = [(0,"x23")]
-(readDec::ReadS Integer) 3243ab = [(3243,"ab")]
-(readDec::ReadS Int) 3489348394032498320438240938403 = [(8154046292665502115,"")]
-(readDec::ReadS Int) 0 = [(0,"")]
-(readDec::ReadS Int) -1 = []
-(readDec::ReadS Int) 1 = [(1,"")]
-(readDec::ReadS Int) 34323 = [(34323,"")]
-(readDec::ReadS Int) 2L = [(2,"L")]
-(readDec::ReadS Int) 012 = [(12,"")]
-(readDec::ReadS Int) 0x23 = [(0,"x23")]
-(readDec::ReadS Int) 3243ab = [(3243,"ab")]
-(readOct::ReadS Integer) 3489348394032498320438240938403 = [(28,"89348394032498320438240938403")]
-(readOct::ReadS Integer) 0 = [(0,"")]
-(readOct::ReadS Integer) -1 = []
-(readOct::ReadS Integer) 1 = [(1,"")]
-(readOct::ReadS Integer) 34323 = [(14547,"")]
-(readOct::ReadS Integer) 2L = [(2,"L")]
-(readOct::ReadS Integer) 012 = [(10,"")]
-(readOct::ReadS Integer) 0x23 = [(0,"x23")]
-(readOct::ReadS Integer) 3243ab = [(1699,"ab")]
-(readOct::ReadS Int) 3489348394032498320438240938403 = [(28,"89348394032498320438240938403")]
-(readOct::ReadS Int) 0 = [(0,"")]
-(readOct::ReadS Int) -1 = []
-(readOct::ReadS Int) 1 = [(1,"")]
-(readOct::ReadS Int) 34323 = [(14547,"")]
-(readOct::ReadS Int) 2L = [(2,"L")]
-(readOct::ReadS Int) 012 = [(10,"")]
-(readOct::ReadS Int) 0x23 = [(0,"x23")]
-(readOct::ReadS Int) 3243ab = [(1699,"ab")]
-(readHex::ReadS Integer) 3489348394032498320438240938403 = [(4364516597526947317207336190131536899,"")]
-(readHex::ReadS Integer) 0 = [(0,"")]
-(readHex::ReadS Integer) -1 = []
-(readHex::ReadS Integer) 1 = [(1,"")]
-(readHex::ReadS Integer) 34323 = [(213795,"")]
-(readHex::ReadS Integer) 2L = [(2,"L")]
-(readHex::ReadS Integer) 012 = [(18,"")]
-(readHex::ReadS Integer) 0x23 = [(0,"x23")]
-(readHex::ReadS Integer) 3243ab = [(3294123,"")]
-(readHex::ReadS Int) 3489348394032498320438240938403 = [(-8998117828778032125,"")]
-(readHex::ReadS Int) 0 = [(0,"")]
-(readHex::ReadS Int) -1 = []
-(readHex::ReadS Int) 1 = [(1,"")]
-(readHex::ReadS Int) 34323 = [(213795,"")]
-(readHex::ReadS Int) 2L = [(2,"L")]
-(readHex::ReadS Int) 012 = [(18,"")]
-(readHex::ReadS Int) 0x23 = [(0,"x23")]
-(readHex::ReadS Int) 3243ab = [(3294123,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-x86_64-unknown-openbsd b/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-x86_64-unknown-openbsd
deleted file mode 100644
index 35678af82f..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num005.stdout-x86_64-unknown-openbsd
+++ /dev/null
@@ -1,55 +0,0 @@
-
-(readDec::ReadS Integer) 3489348394032498320438240938403 = [(3489348394032498320438240938403,"")]
-(readDec::ReadS Integer) 0 = [(0,"")]
-(readDec::ReadS Integer) -1 = []
-(readDec::ReadS Integer) 1 = [(1,"")]
-(readDec::ReadS Integer) 34323 = [(34323,"")]
-(readDec::ReadS Integer) 2L = [(2,"L")]
-(readDec::ReadS Integer) 012 = [(12,"")]
-(readDec::ReadS Integer) 0x23 = [(0,"x23")]
-(readDec::ReadS Integer) 3243ab = [(3243,"ab")]
-(readDec::ReadS Int) 3489348394032498320438240938403 = [(8154046292665502115,"")]
-(readDec::ReadS Int) 0 = [(0,"")]
-(readDec::ReadS Int) -1 = []
-(readDec::ReadS Int) 1 = [(1,"")]
-(readDec::ReadS Int) 34323 = [(34323,"")]
-(readDec::ReadS Int) 2L = [(2,"L")]
-(readDec::ReadS Int) 012 = [(12,"")]
-(readDec::ReadS Int) 0x23 = [(0,"x23")]
-(readDec::ReadS Int) 3243ab = [(3243,"ab")]
-(readOct::ReadS Integer) 3489348394032498320438240938403 = [(28,"89348394032498320438240938403")]
-(readOct::ReadS Integer) 0 = [(0,"")]
-(readOct::ReadS Integer) -1 = []
-(readOct::ReadS Integer) 1 = [(1,"")]
-(readOct::ReadS Integer) 34323 = [(14547,"")]
-(readOct::ReadS Integer) 2L = [(2,"L")]
-(readOct::ReadS Integer) 012 = [(10,"")]
-(readOct::ReadS Integer) 0x23 = [(0,"x23")]
-(readOct::ReadS Integer) 3243ab = [(1699,"ab")]
-(readOct::ReadS Int) 3489348394032498320438240938403 = [(28,"89348394032498320438240938403")]
-(readOct::ReadS Int) 0 = [(0,"")]
-(readOct::ReadS Int) -1 = []
-(readOct::ReadS Int) 1 = [(1,"")]
-(readOct::ReadS Int) 34323 = [(14547,"")]
-(readOct::ReadS Int) 2L = [(2,"L")]
-(readOct::ReadS Int) 012 = [(10,"")]
-(readOct::ReadS Int) 0x23 = [(0,"x23")]
-(readOct::ReadS Int) 3243ab = [(1699,"ab")]
-(readHex::ReadS Integer) 3489348394032498320438240938403 = [(4364516597526947317207336190131536899,"")]
-(readHex::ReadS Integer) 0 = [(0,"")]
-(readHex::ReadS Integer) -1 = []
-(readHex::ReadS Integer) 1 = [(1,"")]
-(readHex::ReadS Integer) 34323 = [(213795,"")]
-(readHex::ReadS Integer) 2L = [(2,"L")]
-(readHex::ReadS Integer) 012 = [(18,"")]
-(readHex::ReadS Integer) 0x23 = [(0,"x23")]
-(readHex::ReadS Integer) 3243ab = [(3294123,"")]
-(readHex::ReadS Int) 3489348394032498320438240938403 = [(-8998117828778032125,"")]
-(readHex::ReadS Int) 0 = [(0,"")]
-(readHex::ReadS Int) -1 = []
-(readHex::ReadS Int) 1 = [(1,"")]
-(readHex::ReadS Int) 34323 = [(213795,"")]
-(readHex::ReadS Int) 2L = [(2,"L")]
-(readHex::ReadS Int) 012 = [(18,"")]
-(readHex::ReadS Int) 0x23 = [(0,"x23")]
-(readHex::ReadS Int) 3243ab = [(3294123,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num006.hs b/testsuite/tests/ghc-regress/lib/Numeric/num006.hs
deleted file mode 100644
index f421ed72a2..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num006.hs
+++ /dev/null
@@ -1,28 +0,0 @@
--- Exercising the showing of positive numbers at various bases.
---
-module Main(main) where
-
-import Numeric
-import Data.Char
-
---showDec :: Integral a => a -> ShowS
-showDec = showInt
-
-{-
---showBinary :: Integral a => a -> ShowS
-showBinary n r =
- showString "0b" $
- showIntAtBase 2 (toChr) n r
- where toChr d = chr (ord '0' + fromIntegral d)
--}
-
-main =
- do
- print (map (\ x -> showOct x []) [1..32])
- print (map (\ x -> showDec x []) [1..32])
- print (map (\ x -> showHex x []) [1..32])
--- print (map (\ x -> showBinary x []) [1..32])
- putStrLn (showOct (241324784::Int) [])
- putStrLn (showDec (241324784::Int) [])
- putStrLn (showHex (241324784::Int) [])
---- putStrLn (showBinary (241324784::Int) [])
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num006.stdout b/testsuite/tests/ghc-regress/lib/Numeric/num006.stdout
deleted file mode 100644
index e0c45403ec..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num006.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-["1","2","3","4","5","6","7","10","11","12","13","14","15","16","17","20","21","22","23","24","25","26","27","30","31","32","33","34","35","36","37","40"]
-["1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31","32"]
-["1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","10","11","12","13","14","15","16","17","18","19","1a","1b","1c","1d","1e","1f","20"]
-1630451360
-241324784
-e6252f0
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num007.hs b/testsuite/tests/ghc-regress/lib/Numeric/num007.hs
deleted file mode 100644
index 1c40ecfdbd..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num007.hs
+++ /dev/null
@@ -1,17 +0,0 @@
--- Exercising the reading of positive numbers at various bases.
---
-module Main(main) where
-
-import Numeric
-
-main =
- do
- putStrLn (show (readOct "00000111"))
- putStrLn (show (readDec "00000111"))
- putStrLn (show (readHex "00000111"))
- putStrLn (show (readOct "-24"))
- putStrLn (show (readDec "-24"))
- putStrLn (show (readHex "-24"))
- putStrLn (show ((readOct ::ReadS Integer) "3248784372843778438743"))
- putStrLn (show ((readDec ::ReadS Integer) "3248784372843778438743"))
- putStrLn (show ((readHex ::ReadS Integer) "3248784372843778438743"))
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num007.stdout b/testsuite/tests/ghc-regress/lib/Numeric/num007.stdout
deleted file mode 100644
index ef60021827..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num007.stdout
+++ /dev/null
@@ -1,9 +0,0 @@
-[(73,"")]
-[(111,"")]
-[(273,"")]
-[]
-[]
-[]
-[(212,"8784372843778438743")]
-[(3248784372843778438743,"")]
-[(60788519836879239998834499,"")]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num008.hs b/testsuite/tests/ghc-regress/lib/Numeric/num008.hs
deleted file mode 100644
index 36158240b4..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num008.hs
+++ /dev/null
@@ -1,57 +0,0 @@
--- showing/reading floats
---
-module Main(main) where
-
-import Numeric
-
-main = do
- let dbls = map (shEFloat (Just 7)) doubles
- ++ map (shEFloat (Just 0)) doubles
- ++ map (shEFloat Nothing) doubles
- ++ map (shFFloat (Just 7)) doubles
- ++ map (shFFloat (Just 0)) doubles
- ++ map (shFFloat Nothing) doubles
- ++ map (shGFloat (Just 7)) doubles
- ++ map (shGFloat (Just 0)) doubles
- ++ map (shGFloat Nothing) doubles
-
- flts = map (shEFloat (Just 7)) floats
- ++ map (shEFloat (Just 0)) floats
- ++ map (shEFloat Nothing) floats
- ++ map (shFFloat (Just 7)) floats
- ++ map (shFFloat (Just 0)) floats
- ++ map (shFFloat Nothing) floats
- ++ map (shGFloat (Just 7)) floats
- ++ map (shGFloat (Just 0)) floats
- ++ map (shGFloat Nothing) floats
-
- putStrLn (unlines dbls)
- putStrLn (unlines flts)
- print (map read dbls :: [Double])
- print (map read flts :: [Double])
-
-shEFloat p f = showEFloat p f ""
-shFFloat p f = showFFloat p f ""
-shGFloat p f = showGFloat p f ""
-
-doubles :: [ Double ]
-doubles = [ 0.0
- , 420
- , 42
- , 4.2
- , 0.42
- , 0.042
- , 1.82173691287639817263897126389712638972163
- , 1.82173691287639817263897126389712638972163e-300
- ]
-
-floats :: [ Float ]
-floats = [ 0.0
- , 420
- , 42
- , 4.2
- , 0.42
- , 0.042
- , 1.82173691287639817263897126389712638972163
- , 1.82173691287639817263897126389712638972163e-300
- ]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num008.stdout b/testsuite/tests/ghc-regress/lib/Numeric/num008.stdout
deleted file mode 100644
index 5086442f0f..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num008.stdout
+++ /dev/null
@@ -1,148 +0,0 @@
-0.0000000e0
-4.2000000e2
-4.2000000e1
-4.2000000e0
-4.2000000e-1
-4.2000000e-2
-1.8217369e0
-1.8217369e-300
-0.0e0
-4.2e2
-4.2e1
-4.2e0
-4.2e-1
-4.2e-2
-1.8e0
-1.8e-300
-0.0e0
-4.2e2
-4.2e1
-4.2e0
-4.2e-1
-4.2e-2
-1.8217369128763983e0
-1.821736912876398e-300
-0.0000000
-420.0000000
-42.0000000
-4.2000000
-0.4200000
-0.0420000
-1.8217369
-0.0000000
-0
-420
-42
-4
-0
-0
-2
-0
-0.0
-420.0
-42.0
-4.2
-0.42
-0.042
-1.8217369128763983
-0.000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001821736912876398
-0.0000000
-420.0000000
-42.0000000
-4.2000000
-0.4200000
-4.2000000e-2
-1.8217369
-1.8217369e-300
-0
-420
-42
-4
-0
-4.2e-2
-2
-1.8e-300
-0.0
-420.0
-42.0
-4.2
-0.42
-4.2e-2
-1.8217369128763983
-1.821736912876398e-300
-
-0.0000000e0
-4.2000000e2
-4.2000000e1
-4.2000000e0
-4.2000000e-1
-4.2000000e-2
-1.8217369e0
-0.0000000e0
-0.0e0
-4.2e2
-4.2e1
-4.2e0
-4.2e-1
-4.2e-2
-1.8e0
-0.0e0
-0.0e0
-4.2e2
-4.2e1
-4.2e0
-4.2e-1
-4.2e-2
-1.8217369e0
-0.0e0
-0.0000000
-420.0000000
-42.0000000
-4.2000000
-0.4200000
-0.0420000
-1.8217369
-0.0000000
-0
-420
-42
-4
-0
-0
-2
-0
-0.0
-420.0
-42.0
-4.2
-0.42
-0.042
-1.8217369
-0.0
-0.0000000
-420.0000000
-42.0000000
-4.2000000
-0.4200000
-4.2000000e-2
-1.8217369
-0.0000000
-0
-420
-42
-4
-0
-4.2e-2
-2
-0
-0.0
-420.0
-42.0
-4.2
-0.42
-4.2e-2
-1.8217369
-0.0
-
-[0.0,420.0,42.0,4.2,0.42,4.2e-2,1.8217369,1.8217369e-300,0.0,420.0,42.0,4.2,0.42,4.2e-2,1.8,1.8e-300,0.0,420.0,42.0,4.2,0.42,4.2e-2,1.8217369128763983,1.821736912876398e-300,0.0,420.0,42.0,4.2,0.42,4.2e-2,1.8217369,0.0,0.0,420.0,42.0,4.0,0.0,0.0,2.0,0.0,0.0,420.0,42.0,4.2,0.42,4.2e-2,1.8217369128763983,1.821736912876398e-300,0.0,420.0,42.0,4.2,0.42,4.2e-2,1.8217369,1.8217369e-300,0.0,420.0,42.0,4.0,0.0,4.2e-2,2.0,1.8e-300,0.0,420.0,42.0,4.2,0.42,4.2e-2,1.8217369128763983,1.821736912876398e-300]
-[0.0,420.0,42.0,4.2,0.42,4.2e-2,1.8217369,0.0,0.0,420.0,42.0,4.2,0.42,4.2e-2,1.8,0.0,0.0,420.0,42.0,4.2,0.42,4.2e-2,1.8217369,0.0,0.0,420.0,42.0,4.2,0.42,4.2e-2,1.8217369,0.0,0.0,420.0,42.0,4.0,0.0,0.0,2.0,0.0,0.0,420.0,42.0,4.2,0.42,4.2e-2,1.8217369,0.0,0.0,420.0,42.0,4.2,0.42,4.2e-2,1.8217369,0.0,0.0,420.0,42.0,4.0,0.0,4.2e-2,2.0,0.0,0.0,420.0,42.0,4.2,0.42,4.2e-2,1.8217369,0.0]
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num009.hs b/testsuite/tests/ghc-regress/lib/Numeric/num009.hs
deleted file mode 100644
index 6910f2f840..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num009.hs
+++ /dev/null
@@ -1,39 +0,0 @@
--- trac #2059
-
-{-# LANGUAGE ForeignFunctionInterface #-}
-
-module Main(main) where
-
-import Control.Monad
-import Foreign.C
-
-main = do let d = 1e20 :: Double
- f = 1e20 :: Float
- test "sind" sind sin d
- test "sinf" sinf sin f
- test "cosd" cosd cos d
- test "cosf" cosf cos f
- test "tand" tand tan d
- test "tanf" tanf tan f
- putStrLn "Done"
-
-test :: (RealFloat a, Floating a, RealFloat b, Floating b)
- => String -> (a -> a) -> (b -> b) -> b -> IO ()
-test s f g x = do let y = realToFrac (f (realToFrac x))
- z = g x
- unless (y == z) $ do
- putStrLn s
- print y
- print z
- print $ decodeFloat y
- print $ decodeFloat z
-
-foreign import ccall "math.h sin" sind :: CDouble -> CDouble
-foreign import ccall "math.h sinf" sinf :: CFloat -> CFloat
-
-foreign import ccall "math.h cos" cosd :: CDouble -> CDouble
-foreign import ccall "math.h cosf" cosf :: CFloat -> CFloat
-
-foreign import ccall "math.h tan" tand :: CDouble -> CDouble
-foreign import ccall "math.h tanf" tanf :: CFloat -> CFloat
-
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num009.stdout b/testsuite/tests/ghc-regress/lib/Numeric/num009.stdout
deleted file mode 100644
index a965a70ed4..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num009.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Done
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num010.hs b/testsuite/tests/ghc-regress/lib/Numeric/num010.hs
deleted file mode 100644
index bf1d5a2734..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num010.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-
-module Main(main) where
-
-main = sequence_ [ f x y | x <- [0,
- 1000,
- 1000000000000, -- > 2^32
- 1000000000000000000000000, -- > 2^64
- -1000,
- -1000000000000, -- < -2^32
- -1000000000000000000000000] -- < -2^64
- , y <- [0, -10, 10] ]
-
-f :: Integer -> Int -> IO ()
-f x y = do putStrLn "------------------------"
- print x
- print y
- let d :: Double
- d = encodeFloat x y
- (xd, yd) = decodeFloat d
- let f :: Float
- f = encodeFloat x y
- (xf, yf) = decodeFloat f
- print d
- print xd
- print yd
- print f
- print xf
- print yf
-
diff --git a/testsuite/tests/ghc-regress/lib/Numeric/num010.stdout b/testsuite/tests/ghc-regress/lib/Numeric/num010.stdout
deleted file mode 100644
index 877d35c722..0000000000
--- a/testsuite/tests/ghc-regress/lib/Numeric/num010.stdout
+++ /dev/null
@@ -1,189 +0,0 @@
-------------------------
-0
-0
-0.0
-0
-0
-0.0
-0
-0
-------------------------
-0
--10
-0.0
-0
-0
-0.0
-0
-0
-------------------------
-0
-10
-0.0
-0
-0
-0.0
-0
-0
-------------------------
-1000
-0
-1000.0
-8796093022208000
--43
-1000.0
-16384000
--14
-------------------------
-1000
--10
-0.9765625
-8796093022208000
--53
-0.9765625
-16384000
--24
-------------------------
-1000
-10
-1024000.0
-8796093022208000
--33
-1024000.0
-16384000
--4
-------------------------
-1000000000000
-0
-1.0e12
-8192000000000000
--13
-1.0e12
-15258789
-16
-------------------------
-1000000000000
--10
-9.765625e8
-8192000000000000
--23
-9.765625e8
-15258789
-6
-------------------------
-1000000000000
-10
-1.024e15
-8192000000000000
--3
-1.024e15
-15258789
-26
-------------------------
-1000000000000000000000000
-0
-1.0e24
-7450580596923828
-27
-1.0e24
-13877788
-56
-------------------------
-1000000000000000000000000
--10
-9.765625e20
-7450580596923828
-17
-9.765625e20
-13877788
-46
-------------------------
-1000000000000000000000000
-10
-1.024e27
-7450580596923828
-37
-1.024e27
-13877788
-66
-------------------------
--1000
-0
--1000.0
--8796093022208000
--43
--1000.0
--16384000
--14
-------------------------
--1000
--10
--0.9765625
--8796093022208000
--53
--0.9765625
--16384000
--24
-------------------------
--1000
-10
--1024000.0
--8796093022208000
--33
--1024000.0
--16384000
--4
-------------------------
--1000000000000
-0
--1.0e12
--8192000000000000
--13
--1.0e12
--15258789
-16
-------------------------
--1000000000000
--10
--9.765625e8
--8192000000000000
--23
--9.765625e8
--15258789
-6
-------------------------
--1000000000000
-10
--1.024e15
--8192000000000000
--3
--1.024e15
--15258789
-26
-------------------------
--1000000000000000000000000
-0
--1.0e24
--7450580596923828
-27
--1.0e24
--13877788
-56
-------------------------
--1000000000000000000000000
--10
--9.765625e20
--7450580596923828
-17
--9.765625e20
--13877788
-46
-------------------------
--1000000000000000000000000
-10
--1.024e27
--7450580596923828
-37
--1.024e27
--13877788
-66
diff --git a/testsuite/tests/ghc-regress/lib/OldException/Makefile b/testsuite/tests/ghc-regress/lib/OldException/Makefile
deleted file mode 100644
index 50191fd8b9..0000000000
--- a/testsuite/tests/ghc-regress/lib/OldException/Makefile
+++ /dev/null
@@ -1,4 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
diff --git a/testsuite/tests/ghc-regress/lib/OldException/OldException001.hs b/testsuite/tests/ghc-regress/lib/OldException/OldException001.hs
deleted file mode 100644
index 150dc2aba7..0000000000
--- a/testsuite/tests/ghc-regress/lib/OldException/OldException001.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-
--- trace #2913
-
-{-# LANGUAGE DeriveDataTypeable #-}
-
-import qualified Control.Exception as New
-import qualified Control.OldException as Old
-
-import Data.Typeable
-
-data MyException = MyException
- deriving (Eq, Show, Typeable)
-
-instance New.Exception MyException
-
-main :: IO ()
-main = (New.throwIO MyException
- `Old.catch`
- (\e -> do putStrLn ("Old got " ++ show e)
- Old.throw e)
- ) `New.catch` (\e -> putStrLn ("New got " ++ show (e :: MyException)))
-
diff --git a/testsuite/tests/ghc-regress/lib/OldException/OldException001.stdout b/testsuite/tests/ghc-regress/lib/OldException/OldException001.stdout
deleted file mode 100644
index ba73072274..0000000000
--- a/testsuite/tests/ghc-regress/lib/OldException/OldException001.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Old got exception :: SomeException
-New got MyException
diff --git a/testsuite/tests/ghc-regress/lib/OldException/all.T b/testsuite/tests/ghc-regress/lib/OldException/all.T
deleted file mode 100644
index 55459823eb..0000000000
--- a/testsuite/tests/ghc-regress/lib/OldException/all.T
+++ /dev/null
@@ -1,3 +0,0 @@
-
-test('OldException001', normal, compile_and_run, [''])
-
diff --git a/testsuite/tests/ghc-regress/lib/PrettyPrint/Makefile b/testsuite/tests/ghc-regress/lib/PrettyPrint/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/PrettyPrint/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/PrettyPrint/T3911.hs b/testsuite/tests/ghc-regress/lib/PrettyPrint/T3911.hs
deleted file mode 100644
index 01ccb22b01..0000000000
--- a/testsuite/tests/ghc-regress/lib/PrettyPrint/T3911.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-
-module Main where
-
-import Text.PrettyPrint.HughesPJ
-
-xs :: [Doc]
-xs = [text "hello",
- nest 10 (text "world")]
-
-d1 :: Doc
-d1 = vcat xs
-
-d2 :: Doc
-d2 = foldr ($$) empty xs
-
-d3 :: Doc
-d3 = foldr ($+$) empty xs
-
-main :: IO ()
-main = do print d1
- print d2
- print d3
-
diff --git a/testsuite/tests/ghc-regress/lib/PrettyPrint/T3911.stdout b/testsuite/tests/ghc-regress/lib/PrettyPrint/T3911.stdout
deleted file mode 100644
index 7677e8d6f4..0000000000
--- a/testsuite/tests/ghc-regress/lib/PrettyPrint/T3911.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-hello world
-hello world
-hello
- world
diff --git a/testsuite/tests/ghc-regress/lib/PrettyPrint/all.T b/testsuite/tests/ghc-regress/lib/PrettyPrint/all.T
deleted file mode 100644
index 5189843c15..0000000000
--- a/testsuite/tests/ghc-regress/lib/PrettyPrint/all.T
+++ /dev/null
@@ -1,2 +0,0 @@
-test('pp1', compose(expect_broken(1062), only_ways(['normal'])), compile_and_run, [''])
-test('T3911', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/lib/PrettyPrint/pp1.hs b/testsuite/tests/ghc-regress/lib/PrettyPrint/pp1.hs
deleted file mode 100644
index 55cfba9d27..0000000000
--- a/testsuite/tests/ghc-regress/lib/PrettyPrint/pp1.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- This code used to print an infinite string, by calling 'spaces'
--- with a negative argument. There's a patch in the library now,
--- which makes 'spaces' do somehthing sensible when called with a negative
--- argument, but it really should not happen at all.
-
-
-module Main where
-
-import Text.PrettyPrint.HughesPJ
-
-
-ncat x y = nest 4 $ cat [ x, y ]
-
-d1 = foldl1 ncat $ take 50 $ repeat $ char 'a'
-d2 = parens $ sep [ d1, text "+" , d1 ]
-
-main = print d2
-
diff --git a/testsuite/tests/ghc-regress/lib/PrettyPrint/pp1.stdout b/testsuite/tests/ghc-regress/lib/PrettyPrint/pp1.stdout
deleted file mode 100644
index 6915311150..0000000000
--- a/testsuite/tests/ghc-regress/lib/PrettyPrint/pp1.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-This output is not what is expected, becuase the
-test "works" now, by virtue of a hack in HughesPJ.spaces.
-I'm leaving this strange output here to remind us to look
-at the root cause of the problem. Sometime. \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/Regex/Makefile b/testsuite/tests/ghc-regress/lib/Regex/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/Regex/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/Regex/all.T b/testsuite/tests/ghc-regress/lib/Regex/all.T
deleted file mode 100644
index c69bfd665a..0000000000
--- a/testsuite/tests/ghc-regress/lib/Regex/all.T
+++ /dev/null
@@ -1,3 +0,0 @@
-test('regex001', reqlib('regex-posix'), compile_and_run, ['-package regex-posix'])
-test('regex002', reqlib('regex-posix'), compile_and_run, ['-package regex-posix'])
-test('regex003', reqlib('regex-posix'), compile_and_run, ['-package regex-posix'])
diff --git a/testsuite/tests/ghc-regress/lib/Regex/regex001.hs b/testsuite/tests/ghc-regress/lib/Regex/regex001.hs
deleted file mode 100644
index 1c9393c1b2..0000000000
--- a/testsuite/tests/ghc-regress/lib/Regex/regex001.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-module Main where
-
-import Control.Exception
-import Text.Regex.Posix
-
--- caused GHC 6.0 to crash, due to regfree'ing the regex after a
--- failed regcomp.
-main = sequence_
- [ try ("abc" =~~ "[[[" :: IO Bool) :: IO (Either IOException Bool)
- | _ <- [1..10000] ]
-
diff --git a/testsuite/tests/ghc-regress/lib/Regex/regex002.hs b/testsuite/tests/ghc-regress/lib/Regex/regex002.hs
deleted file mode 100644
index 9a87a85618..0000000000
--- a/testsuite/tests/ghc-regress/lib/Regex/regex002.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-import Text.Regex.Base
-import Text.Regex.Posix((=~),(=~~)) -- or DFA or PCRE or PosixRE
-import qualified Data.ByteString.Char8 as B(ByteString,pack)
-
-main = let b :: Bool
- b = ("abaca" =~ "(.)a")
- c :: [MatchArray]
- c = ("abaca" =~ "(.)a")
- d :: Maybe (String,String,String,[String])
- d = ("abaca" =~~ "(.)a")
- in do print b
- print c
- print d
diff --git a/testsuite/tests/ghc-regress/lib/Regex/regex002.stdout b/testsuite/tests/ghc-regress/lib/Regex/regex002.stdout
deleted file mode 100644
index 99b5656f91..0000000000
--- a/testsuite/tests/ghc-regress/lib/Regex/regex002.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-True
-[array (0,1) [(0,(1,2)),(1,(1,1))],array (0,1) [(0,(3,2)),(1,(3,1))]]
-Just ("a","ba","ca",["b"])
diff --git a/testsuite/tests/ghc-regress/lib/Regex/regex003.hs b/testsuite/tests/ghc-regress/lib/Regex/regex003.hs
deleted file mode 100644
index 0aa51fe7aa..0000000000
--- a/testsuite/tests/ghc-regress/lib/Regex/regex003.hs
+++ /dev/null
@@ -1,43 +0,0 @@
-import Text.Regex.Base
-import Text.Regex.Posix(Regex,(=~),(=~~)) -- or DFA or PCRE or PosixRE
-import qualified Data.ByteString.Char8 as B(ByteString,pack)
-
--- Show mixing of ByteString and String as well as polymorphism:
-
-main = let x :: (RegexContext Regex String target) => target
- x = ("abaca" =~ B.pack "(.)a")
- x' :: (RegexContext Regex String target,Monad m) => m target
- x' = ("abaca" =~~ "(.)a")
- y :: (RegexContext Regex B.ByteString target) => target
- y = (B.pack "abaca" =~ "(.)a")
- y' :: (RegexContext Regex B.ByteString target,Monad m) => m target
- y' = (B.pack "abaca" =~~ B.pack "(.)a")
- in do print (x :: Bool)
- print (x :: Int)
- print (x :: [MatchArray])
- print (x' :: Maybe (String,String,String,[String]))
- print (y :: Bool)
- print (y :: Int)
- print (y :: [MatchArray])
- print (y' :: Maybe (B.ByteString,B.ByteString,B.ByteString,[B.ByteString]))
-
-{- Output is, except for replacing Full with DFA (which has no capture)
-True
-2
-[array (0,1) [(0,(1,2)),(1,(1,1))],array (0,1) [(0,(3,2)),(1,(3,1))]]
-Just ("a","ba","ca",["b"])
-True
-2
-[array (0,1) [(0,(1,2)),(1,(1,1))],array (0,1) [(0,(3,2)),(1,(3,1))]]
-Just ("a","ba","ca",["b"])
--}
-{- The output for DFA is
-True
-2
-[array (0,0) [(0,(1,2))],array (0,0) [(0,(3,2))]]
-Just ("a","ba","ca",[])
-True
-2
-[array (0,0) [(0,(1,2))],array (0,0) [(0,(3,2))]]
-Just ("a","ba","ca",[])
--}
diff --git a/testsuite/tests/ghc-regress/lib/Regex/regex003.stdout b/testsuite/tests/ghc-regress/lib/Regex/regex003.stdout
deleted file mode 100644
index 49d7499e91..0000000000
--- a/testsuite/tests/ghc-regress/lib/Regex/regex003.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-True
-2
-[array (0,1) [(0,(1,2)),(1,(1,1))],array (0,1) [(0,(3,2)),(1,(3,1))]]
-Just ("a","ba","ca",["b"])
-True
-2
-[array (0,1) [(0,(1,2)),(1,(1,1))],array (0,1) [(0,(3,2)),(1,(3,1))]]
-Just ("a","ba","ca",["b"])
diff --git a/testsuite/tests/ghc-regress/lib/Show/Makefile b/testsuite/tests/ghc-regress/lib/Show/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/Show/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/Show/all.T b/testsuite/tests/ghc-regress/lib/Show/all.T
deleted file mode 100644
index 0e98a0e5a9..0000000000
--- a/testsuite/tests/ghc-regress/lib/Show/all.T
+++ /dev/null
@@ -1,2 +0,0 @@
-test('showDouble', normal, compile_and_run, [''])
-
diff --git a/testsuite/tests/ghc-regress/lib/Show/showDouble.hs b/testsuite/tests/ghc-regress/lib/Show/showDouble.hs
deleted file mode 100644
index 399af28450..0000000000
--- a/testsuite/tests/ghc-regress/lib/Show/showDouble.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-
-module Main (main) where
-
-main :: IO ()
-main = do let xs = [p0, p01, p3, p31, n0, n01, n3, n31, pinf, ninf, nan]
- mapM_ print xs
- mapM_ (print . Just) xs
-
-p0 :: Double
-p0 = 0
-
-p01 :: Double
-p01 = 0.1
-
-p3 :: Double
-p3 = 3
-
-p31 :: Double
-p31 = 3.1
-
-n0 :: Double
-n0 = -0
-
-n01 :: Double
-n01 = -0.1
-
-n3 :: Double
-n3 = -3
-
-n31 :: Double
-n31 = -3.1
-
-pinf :: Double
-pinf = 1 / 0
-
-ninf :: Double
-ninf = - 1 / 0
-
-nan :: Double
-nan = 0 / 0
-
diff --git a/testsuite/tests/ghc-regress/lib/Show/showDouble.stdout b/testsuite/tests/ghc-regress/lib/Show/showDouble.stdout
deleted file mode 100644
index fb1b4de5e4..0000000000
--- a/testsuite/tests/ghc-regress/lib/Show/showDouble.stdout
+++ /dev/null
@@ -1,22 +0,0 @@
-0.0
-0.1
-3.0
-3.1
--0.0
--0.1
--3.0
--3.1
-Infinity
--Infinity
-NaN
-Just 0.0
-Just 0.1
-Just 3.0
-Just 3.1
-Just (-0.0)
-Just (-0.1)
-Just (-3.0)
-Just (-3.1)
-Just Infinity
-Just (-Infinity)
-Just NaN
diff --git a/testsuite/tests/ghc-regress/lib/System/Makefile b/testsuite/tests/ghc-regress/lib/System/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/System/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/System/all.T b/testsuite/tests/ghc-regress/lib/System/all.T
deleted file mode 100644
index 996946fd69..0000000000
--- a/testsuite/tests/ghc-regress/lib/System/all.T
+++ /dev/null
@@ -1,8 +0,0 @@
-
-test('exitWith001', exit_code(42), compile_and_run, [''])
-test('getArgs001', normal, compile_and_run, [''])
-test('getEnv001', normal, compile_and_run, [''])
-
-test('system001', if_platform("i386-unknown-mingw32", expect_fail), \
- compile_and_run, [''])
-
diff --git a/testsuite/tests/ghc-regress/lib/System/exitWith001.hs b/testsuite/tests/ghc-regress/lib/System/exitWith001.hs
deleted file mode 100644
index 38dc38a9d5..0000000000
--- a/testsuite/tests/ghc-regress/lib/System/exitWith001.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-import System.Exit (exitWith, ExitCode(..))
-
-main = exitWith (ExitFailure 42)
diff --git a/testsuite/tests/ghc-regress/lib/System/exitWith001.stdout b/testsuite/tests/ghc-regress/lib/System/exitWith001.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/System/exitWith001.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/System/getArgs001.hs b/testsuite/tests/ghc-regress/lib/System/getArgs001.hs
deleted file mode 100644
index 4b8df9101b..0000000000
--- a/testsuite/tests/ghc-regress/lib/System/getArgs001.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-import System.Environment (getProgName, getArgs)
-
-main =
- getProgName >>= \ argv0 ->
- putStr argv0 >>
- getArgs >>= \ argv ->
- sequence (map (\ x -> putChar ' ' >> putStr x) argv) >>
- putChar '\n'
-
diff --git a/testsuite/tests/ghc-regress/lib/System/getArgs001.stdout b/testsuite/tests/ghc-regress/lib/System/getArgs001.stdout
deleted file mode 100644
index e732087713..0000000000
--- a/testsuite/tests/ghc-regress/lib/System/getArgs001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-getArgs001
diff --git a/testsuite/tests/ghc-regress/lib/System/getEnv001.hs b/testsuite/tests/ghc-regress/lib/System/getEnv001.hs
deleted file mode 100644
index 745f8eaa7f..0000000000
--- a/testsuite/tests/ghc-regress/lib/System/getEnv001.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-
-import System.Environment (getEnv)
-import System.IO.Error (catchIOError, isDoesNotExistError)
-
-main :: IO ()
-main = do
- term <- getEnv "PATH"
- putStrLn "Got $PATH"
- fish <- getEnv "One fish, two fish, red fish, blue fish" `catchIOError` getEnv_except
- putStrLn fish
-
-getEnv_except :: IOError -> IO String
-getEnv_except ioe
- | isDoesNotExistError ioe = return ""
- | otherwise = ioError ioe
diff --git a/testsuite/tests/ghc-regress/lib/System/getEnv001.stdout b/testsuite/tests/ghc-regress/lib/System/getEnv001.stdout
deleted file mode 100644
index b191cc3dd1..0000000000
--- a/testsuite/tests/ghc-regress/lib/System/getEnv001.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Got $PATH
-
diff --git a/testsuite/tests/ghc-regress/lib/System/system001.hs b/testsuite/tests/ghc-regress/lib/System/system001.hs
deleted file mode 100644
index 4237d526af..0000000000
--- a/testsuite/tests/ghc-regress/lib/System/system001.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- Not run on mingw, because of /dev/null use
-
-import System.Cmd (system)
-import System.Exit (ExitCode(..), exitWith)
-
-main =
- system "cat dog 1>/dev/null 2>&1" >>= \ ec ->
- case ec of
- ExitSuccess -> putStr "What?!?\n" >> ioError (userError "dog succeeded")
- ExitFailure _ ->
- system "cat system001.hs 2>/dev/null" >>= \ ec ->
- case ec of
- ExitSuccess -> exitWith ExitSuccess
- ExitFailure _ -> putStr "What?!?\n" >> ioError (userError "cat failed")
diff --git a/testsuite/tests/ghc-regress/lib/System/system001.stdout b/testsuite/tests/ghc-regress/lib/System/system001.stdout
deleted file mode 100644
index 4237d526af..0000000000
--- a/testsuite/tests/ghc-regress/lib/System/system001.stdout
+++ /dev/null
@@ -1,14 +0,0 @@
--- Not run on mingw, because of /dev/null use
-
-import System.Cmd (system)
-import System.Exit (ExitCode(..), exitWith)
-
-main =
- system "cat dog 1>/dev/null 2>&1" >>= \ ec ->
- case ec of
- ExitSuccess -> putStr "What?!?\n" >> ioError (userError "dog succeeded")
- ExitFailure _ ->
- system "cat system001.hs 2>/dev/null" >>= \ ec ->
- case ec of
- ExitSuccess -> exitWith ExitSuccess
- ExitFailure _ -> putStr "What?!?\n" >> ioError (userError "cat failed")
diff --git a/testsuite/tests/ghc-regress/lib/Text.Printf/1548.hs b/testsuite/tests/ghc-regress/lib/Text.Printf/1548.hs
deleted file mode 100644
index 68cec0548f..0000000000
--- a/testsuite/tests/ghc-regress/lib/Text.Printf/1548.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-import Text.Printf
-
-main = do
- printf "%.*f\n" (2::Int) ((1/3) :: Double)
- -- (expected: "0.33")
-
- printf "%.3s\n" "foobar"
- -- (expected: "foo")
-
- printf "%10.5d\n" (4::Int)
- -- (expected: " 00004")
diff --git a/testsuite/tests/ghc-regress/lib/Text.Printf/1548.stdout b/testsuite/tests/ghc-regress/lib/Text.Printf/1548.stdout
deleted file mode 100644
index 4976334b4f..0000000000
--- a/testsuite/tests/ghc-regress/lib/Text.Printf/1548.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-0.33
-foo
- 00004
diff --git a/testsuite/tests/ghc-regress/lib/Text.Printf/Makefile b/testsuite/tests/ghc-regress/lib/Text.Printf/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/Text.Printf/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/Text.Printf/all.T b/testsuite/tests/ghc-regress/lib/Text.Printf/all.T
deleted file mode 100644
index aa26ff2d96..0000000000
--- a/testsuite/tests/ghc-regress/lib/Text.Printf/all.T
+++ /dev/null
@@ -1 +0,0 @@
-test('1548', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/lib/Time/Makefile b/testsuite/tests/ghc-regress/lib/Time/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/Time/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/Time/all.T b/testsuite/tests/ghc-regress/lib/Time/all.T
deleted file mode 100644
index 25b40820c0..0000000000
--- a/testsuite/tests/ghc-regress/lib/Time/all.T
+++ /dev/null
@@ -1,3 +0,0 @@
-test('time002', normal, compile_and_run, [''])
-test('time003', normal, compile_and_run, [''])
-test('time004', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/lib/Time/time002.hs b/testsuite/tests/ghc-regress/lib/Time/time002.hs
deleted file mode 100644
index e2f9bcb7a7..0000000000
--- a/testsuite/tests/ghc-regress/lib/Time/time002.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-import System.Time
-
--- !!! check that we can read the current ClockTime, convert it
--- !!! to CalendarTime and back again, and that all three times when
--- !!! converted to strings compare equal.
-
-main = do
- t <- getClockTime
- let clock = show t
- c <- toCalendarTime t
- let cal = calendarTimeToString c
- let t2 = toClockTime c
- clock2 = show t2
- if (clock == cal && clock == clock2)
- then putStrLn "Ok."
- else putStrLn "Failed."
diff --git a/testsuite/tests/ghc-regress/lib/Time/time002.stdout b/testsuite/tests/ghc-regress/lib/Time/time002.stdout
deleted file mode 100644
index 587579af91..0000000000
--- a/testsuite/tests/ghc-regress/lib/Time/time002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Ok.
diff --git a/testsuite/tests/ghc-regress/lib/Time/time003.hs b/testsuite/tests/ghc-regress/lib/Time/time003.hs
deleted file mode 100644
index 4dda0e466f..0000000000
--- a/testsuite/tests/ghc-regress/lib/Time/time003.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-import System.Time
-
-main :: IO ()
-main = do
- time <- getClockTime
- print (plausible (show time))
- let (CalendarTime year month mday hour min sec psec
- wday yday timezone gmtoff isdst) = toUTCTime time
- time2 = wdays !! fromEnum wday ++
- (' ' : months !! fromEnum month) ++
- (' ' : shows2 mday (' ' : shows2 hour (':' : shows2 min (':' : shows2 sec
- (' ' : timezone ++ ' ' : shows year "\n")))))
- print (plausible time2)
-
- where
- wdays = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"]
- months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun",
- "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
- shows2 x = showString (pad2 x)
- pad2 x = case show x of
- c@[_] -> '0' : c
- cs -> cs
-
- plausible str = filter (== ':') str == "::" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/Time/time003.stdout b/testsuite/tests/ghc-regress/lib/Time/time003.stdout
deleted file mode 100644
index dbde422651..0000000000
--- a/testsuite/tests/ghc-regress/lib/Time/time003.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-True
-True
diff --git a/testsuite/tests/ghc-regress/lib/Time/time004.hs b/testsuite/tests/ghc-regress/lib/Time/time004.hs
deleted file mode 100644
index 9a281a10da..0000000000
--- a/testsuite/tests/ghc-regress/lib/Time/time004.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-import System.Time
-
-main :: IO ()
-main = do
- time <- getClockTime
- let (CalendarTime year month mday hour min sec psec
- wday yday timezone gmtoff isdst) = toUTCTime time
- time' = toClockTime (CalendarTime (year - 1) month mday hour min sec psec
- wday yday timezone gmtoff isdst)
- print (length (show time) == length (show time'))
diff --git a/testsuite/tests/ghc-regress/lib/Time/time004.stdout b/testsuite/tests/ghc-regress/lib/Time/time004.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/lib/Time/time004.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/lib/exceptions/Makefile b/testsuite/tests/ghc-regress/lib/exceptions/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/exceptions/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/exceptions/all.T b/testsuite/tests/ghc-regress/lib/exceptions/all.T
deleted file mode 100644
index 04b3a7fce4..0000000000
--- a/testsuite/tests/ghc-regress/lib/exceptions/all.T
+++ /dev/null
@@ -1 +0,0 @@
-test('exceptions001', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/lib/exceptions/exceptions001.hs b/testsuite/tests/ghc-regress/lib/exceptions/exceptions001.hs
deleted file mode 100644
index f5fcbf0087..0000000000
--- a/testsuite/tests/ghc-regress/lib/exceptions/exceptions001.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
--- trac #2508
-
-import System.Exit
-import Control.OldException
-
-main = exitWith ExitSuccess `finally` return ()
diff --git a/testsuite/tests/ghc-regress/lib/haskell98/Makefile b/testsuite/tests/ghc-regress/lib/haskell98/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/haskell98/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/haskell98/all.T b/testsuite/tests/ghc-regress/lib/haskell98/all.T
deleted file mode 100644
index 85e226fdb7..0000000000
--- a/testsuite/tests/ghc-regress/lib/haskell98/all.T
+++ /dev/null
@@ -1 +0,0 @@
-test('instance-leaks', normal, compile, ['-hide-all-packages -package haskell98'])
diff --git a/testsuite/tests/ghc-regress/lib/haskell98/instance-leaks.hs b/testsuite/tests/ghc-regress/lib/haskell98/instance-leaks.hs
deleted file mode 100644
index 131d42cbd9..0000000000
--- a/testsuite/tests/ghc-regress/lib/haskell98/instance-leaks.hs
+++ /dev/null
@@ -1,27 +0,0 @@
--- Check that the instances in Control.Monad.Instances do not leak
--- into any Haskell 98 modules.
-module Main where
-
--- import all Haskell 98 modules
-import Array
-import Char
-import Complex
-import CPUTime
-import Directory
-import IO
-import Ix
-import List
-import Locale
-import Maybe
-import Monad
-import Numeric
-import Random
-import Ratio
-import System
-import Time
-
--- This will fail if any of the Haskell 98 modules indirectly import
--- Control.Monad.Instances
-instance Functor ((->) r) where fmap = (.)
-
-main = undefined
diff --git a/testsuite/tests/ghc-regress/lib/integer/Makefile b/testsuite/tests/ghc-regress/lib/integer/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/integer/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/integer/all.T b/testsuite/tests/ghc-regress/lib/integer/all.T
deleted file mode 100644
index a3568e7606..0000000000
--- a/testsuite/tests/ghc-regress/lib/integer/all.T
+++ /dev/null
@@ -1,3 +0,0 @@
-test('integerBits', normal, compile_and_run, [''])
-test('integerConversions', normal, compile_and_run, [''])
-
diff --git a/testsuite/tests/ghc-regress/lib/integer/integerBits.hs b/testsuite/tests/ghc-regress/lib/integer/integerBits.hs
deleted file mode 100644
index d5538dd544..0000000000
--- a/testsuite/tests/ghc-regress/lib/integer/integerBits.hs
+++ /dev/null
@@ -1,134 +0,0 @@
-
-module Main (main) where
-
-import Data.Bits
-
-{-
-Do some bitwise operations on some large numbers.
-These number are designed so that they are likely to exercise all the
-interesting split-up cases for implementations that implement Integer
-as some sort of sequence of roughly word-sized values. They are
-essentially random apart from that.
--}
-
-px, py, nx, ny :: Integer
-px = 0x03A4B5C281F6E9D7029C3FE81D6A4B75
-nx = -0x03A4B5C281F6E9D7029C3FE81D6A4B75
-py = 0x069AF53C4D1BE728
-ny = -0x069AF53C4D1BE728
- -- \.. 64 bits ../\.. 64 bits ../
-
-{-
-px = 0 0000001110100100101101011100001010000001111101101110100111010111 0000001010011100001111111110100000011101011010100100101101110101
-py = 0 0000000000000000000000000000000000000000000000000000000000000000 0000011010011010111101010011110001001101000110111110011100101000
-px and py = 0 0000000000000000000000000000000000000000000000000000000000000000 0000001010011000001101010010100000001101000010100100001100100000
-
-px = 0 0000001110100100101101011100001010000001111101101110100111010111 0000001010011100001111111110100000011101011010100100101101110101
-ny = 1 1111111111111111111111111111111111111111111111111111111111111111 1111100101100101000010101100001110110010111001000001100011011000
-px and ny = 0 0000001110100100101101011100001010000001111101101110100111010111 0000000000000100000010101100000000010000011000000000100001010000
-
-nx = 1 1111110001011011010010100011110101111110000010010001011000101000 1111110101100011110000000001011111100010100101011011010010001011
-py = 0 0000000000000000000000000000000000000000000000000000000000000000 0000011010011010111101010011110001001101000110111110011100101000
-nx and py = 0 0000000000000000000000000000000000000000000000000000000000000000 0000010000000010110000000001010001000000000100011010010000001000
-
-nx = 1 1111110001011011010010100011110101111110000010010001011000101000 1111110101100011110000000001011111100010100101011011010010001011
-ny = 1 1111111111111111111111111111111111111111111111111111111111111111 1111100101100101000010101100001110110010111001000001100011011000
-nx and ny = 1 1111110001011011010010100011110101111110000010010001011000101000 1111100101100001000000000000001110100010100001000001000010001000
- = neg 0 0000001110100100101101011100001010000001111101101110100111010111 0000011010011110111111111111110001011101011110111110111101111000
-
-px = 0 0000001110100100101101011100001010000001111101101110100111010111 0000001010011100001111111110100000011101011010100100101101110101
-py = 0 0000000000000000000000000000000000000000000000000000000000000000 0000011010011010111101010011110001001101000110111110011100101000
-px or py = 0 0000001110100100101101011100001010000001111101101110100111010111 0000011010011110111111111111110001011101011110111110111101111101
-
-px = 0 0000001110100100101101011100001010000001111101101110100111010111 0000001010011100001111111110100000011101011010100100101101110101
-ny = 1 1111111111111111111111111111111111111111111111111111111111111111 1111100101100101000010101100001110110010111001000001100011011000
-px or ny = 1 1111111111111111111111111111111111111111111111111111111111111111 1111101111111101001111111110101110111111111011100101101111111101
- = neg 0 0000000000000000000000000000000000000000000000000000000000000000 0000010000000010110000000001010001000000000100011010010000000011
-
-nx = 1 1111110001011011010010100011110101111110000010010001011000101000 1111110101100011110000000001011111100010100101011011010010001011
-py = 0 0000000000000000000000000000000000000000000000000000000000000000 0000011010011010111101010011110001001101000110111110011100101000
-nx or py = 1 1111110001011011010010100011110101111110000010010001011000101000 1111111111111011111101010011111111101111100111111111011110101011
- = neg 0 0000001110100100101101011100001010000001111101101110100111010111 0000000000000100000010101100000000010000011000000000100001010101
-
-nx = 1 1111110001011011010010100011110101111110000010010001011000101000 1111110101100011110000000001011111100010100101011011010010001011
-ny = 1 1111111111111111111111111111111111111111111111111111111111111111 1111100101100101000010101100001110110010111001000001100011011000
-nx or ny = 1 1111111111111111111111111111111111111111111111111111111111111111 1111110101100111110010101101011111110010111101011011110011011011
- = neg 0 0000000000000000000000000000000000000000000000000000000000000000 0000001010011000001101010010100000001101000010100100001100100101
-
-px = 0 0000001110100100101101011100001010000001111101101110100111010111 0000001010011100001111111110100000011101011010100100101101110101
-py = 0 0000000000000000000000000000000000000000000000000000000000000000 0000011010011010111101010011110001001101000110111110011100101000
-px xor py = 0 0000001110100100101101011100001010000001111101101110100111010111 0000010000000110110010101101010001010000011100011010110001011101
-
-px = 0 0000001110100100101101011100001010000001111101101110100111010111 0000001010011100001111111110100000011101011010100100101101110101
-ny = 1 1111111111111111111111111111111111111111111111111111111111111111 1111100101100101000010101100001110110010111001000001100011011000
-px xor ny = 1 1111110001011011010010100011110101111110000010010001011000101000 1111101111111001001101010010101110101111100011100101001110101101
- = neg 0 0000001110100100101101011100001010000001111101101110100111010111 0000010000000110110010101101010001010000011100011010110001010011
-
-nx = 1 1111110001011011010010100011110101111110000010010001011000101000 1111110101100011110000000001011111100010100101011011010010001011
-py = 0 0000000000000000000000000000000000000000000000000000000000000000 0000011010011010111101010011110001001101000110111110011100101000
-nx xor py = 1 1111110001011011010010100011110101111110000010010001011000101000 1111101111111001001101010010101110101111100011100101001110100011
- = neg 0 0000001110100100101101011100001010000001111101101110100111010111 0000010000000110110010101101010001010000011100011010110001011101
-
-nx = 1 1111110001011011010010100011110101111110000010010001011000101000 1111110101100011110000000001011111100010100101011011010010001011
-ny = 1 1111111111111111111111111111111111111111111111111111111111111111 1111100101100101000010101100001110110010111001000001100011011000
-nx xor ny = 0 0000001110100100101101011100001010000001111101101110100111010111 0000010000000110110010101101010001010000011100011010110001010011
-
--}
-
-px_and_py :: Integer
-px_and_py = 0x29835280D0A4320
-
-px_and_ny :: Integer
-px_and_ny = 0x3A4B5C281F6E9D700040AC010600850
-
-nx_and_py :: Integer
-nx_and_py = 0x402C0144011A408
-
-nx_and_ny :: Integer
-nx_and_ny = -0x3A4B5C281F6E9D7069EFFFC5D7BEF78
-
-px_or_py :: Integer
-px_or_py = 0x3A4B5C281F6E9D7069EFFFC5D7BEF7D
-
-px_or_ny :: Integer
-px_or_ny = -0x402C0144011A403
-
-nx_or_py :: Integer
-nx_or_py = -0x3A4B5C281F6E9D700040AC010600855
-
-nx_or_ny :: Integer
-nx_or_ny = -0x29835280D0A4325
-
-px_xor_py :: Integer
-px_xor_py = 0x3A4B5C281F6E9D70406CAD45071AC5D
-
-px_xor_ny :: Integer
-px_xor_ny = -0x3A4B5C281F6E9D70406CAD45071AC53
-
-nx_xor_py :: Integer
-nx_xor_py = -0x3A4B5C281F6E9D70406CAD45071AC5D
-
-nx_xor_ny :: Integer
-nx_xor_ny = 0x3A4B5C281F6E9D70406CAD45071AC53
-
-main :: IO ()
-main = do putStrLn "Start"
- test "px and py" px_and_py (px .&. py)
- test "px and ny" px_and_ny (px .&. ny)
- test "nx and py" nx_and_py (nx .&. py)
- test "nx and ny" nx_and_ny (nx .&. ny)
- test "px or py" px_or_py (px .|. py)
- test "px or ny" px_or_ny (px .|. ny)
- test "nx or py" nx_or_py (nx .|. py)
- test "nx or ny" nx_or_ny (nx .|. ny)
- test "px xor py" px_xor_py (px `xor` py)
- test "px xor ny" px_xor_ny (px `xor` ny)
- test "nx xor py" nx_xor_py (nx `xor` py)
- test "nx xor ny" nx_xor_ny (nx `xor` ny)
- putStrLn "End"
-
-test :: String -> Integer -> Integer -> IO ()
-test what want got
- | want == got = return ()
- | otherwise = print (what, want, got)
-
diff --git a/testsuite/tests/ghc-regress/lib/integer/integerBits.stdout b/testsuite/tests/ghc-regress/lib/integer/integerBits.stdout
deleted file mode 100644
index 621e83f953..0000000000
--- a/testsuite/tests/ghc-regress/lib/integer/integerBits.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Start
-End
diff --git a/testsuite/tests/ghc-regress/lib/integer/integerConversions.hs b/testsuite/tests/ghc-regress/lib/integer/integerConversions.hs
deleted file mode 100644
index 9b10bbdff2..0000000000
--- a/testsuite/tests/ghc-regress/lib/integer/integerConversions.hs
+++ /dev/null
@@ -1,80 +0,0 @@
-
-module Main (main) where
-
-import Data.Int
-import Data.Word
-
-around :: Integer -> [Integer]
-around i = [i - 2, i - 1, i, i + 1, i + 2]
-
-dump :: Show a => String -> [a] -> IO ()
-dump s xs = do putStrLn "===================================="
- putStrLn s
- mapM_ print xs
-
-main :: IO ()
-main = do let xs :: [[Integer]]
- xs = [around 0,
- around (2^30),
- around (2^31),
- around (2^32),
- around (2^33),
- around (2^34),
- around (2^62),
- around (2^63),
- around (2^64),
- around (2^65),
- around (2^66),
- around (-(2^30)),
- around (-(2^31)),
- around (-(2^32)),
- around (-(2^33)),
- around (-(2^34)),
- around (-(2^62)),
- around (-(2^63)),
- around (-(2^64)),
- around (-(2^65)),
- around (-(2^66))]
- xsInt :: [[Int]]
- xsInt = map (map fromInteger) xs
- xsIntInteger :: [[Integer]]
- xsIntInteger = map (map toInteger) xsInt
- xsInt32 :: [[Int32]]
- xsInt32 = map (map fromInteger) xs
- xsInt32Integer :: [[Integer]]
- xsInt32Integer = map (map toInteger) xsInt32
- xsInt64 :: [[Int64]]
- xsInt64 = map (map fromInteger) xs
- xsInt64Integer :: [[Integer]]
- xsInt64Integer = map (map toInteger) xsInt64
- xsWord :: [[Word]]
- xsWord = map (map fromInteger) xs
- xsWordInteger :: [[Integer]]
- xsWordInteger = map (map toInteger) xsWord
- xsWord32 :: [[Word32]]
- xsWord32 = map (map fromInteger) xs
- xsWord32Integer :: [[Integer]]
- xsWord32Integer = map (map toInteger) xsWord32
- xsWord64 :: [[Word64]]
- xsWord64 = map (map fromInteger) xs
- xsWord64Integer :: [[Integer]]
- xsWord64Integer = map (map toInteger) xsWord64
- dump "xs" xs
- dump "xsInt" xsInt
- dump "xsIntInteger" xsIntInteger
- dump "xsInt32" xsInt32
- dump "xsInt32Integer" xsInt32Integer
- dump "xsInt64" xsInt64
- dump "xsInt64Integer" xsInt64Integer
- dump "xsWord" xsWord
- dump "xsWordInteger" xsWordInteger
- dump "xsWord32" xsWord32
- dump "xsWord32Integer" xsWord32Integer
- dump "xsWord64" xsWord64
- dump "xsWord64Integer" xsWord64Integer
-
-test :: String -> Integer -> Integer -> IO ()
-test what want got
- | want == got = return ()
- | otherwise = print (what, want, got)
-
diff --git a/testsuite/tests/ghc-regress/lib/integer/integerConversions.stdout b/testsuite/tests/ghc-regress/lib/integer/integerConversions.stdout
deleted file mode 100644
index 18af7927e1..0000000000
--- a/testsuite/tests/ghc-regress/lib/integer/integerConversions.stdout
+++ /dev/null
@@ -1,299 +0,0 @@
-====================================
-xs
-[-2,-1,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,4294967296,4294967297,4294967298]
-[8589934590,8589934591,8589934592,8589934593,8589934594]
-[17179869182,17179869183,17179869184,17179869185,17179869186]
-[4611686018427387902,4611686018427387903,4611686018427387904,4611686018427387905,4611686018427387906]
-[9223372036854775806,9223372036854775807,9223372036854775808,9223372036854775809,9223372036854775810]
-[18446744073709551614,18446744073709551615,18446744073709551616,18446744073709551617,18446744073709551618]
-[36893488147419103230,36893488147419103231,36893488147419103232,36893488147419103233,36893488147419103234]
-[73786976294838206462,73786976294838206463,73786976294838206464,73786976294838206465,73786976294838206466]
-[-1073741826,-1073741825,-1073741824,-1073741823,-1073741822]
-[-2147483650,-2147483649,-2147483648,-2147483647,-2147483646]
-[-4294967298,-4294967297,-4294967296,-4294967295,-4294967294]
-[-8589934594,-8589934593,-8589934592,-8589934591,-8589934590]
-[-17179869186,-17179869185,-17179869184,-17179869183,-17179869182]
-[-4611686018427387906,-4611686018427387905,-4611686018427387904,-4611686018427387903,-4611686018427387902]
-[-9223372036854775810,-9223372036854775809,-9223372036854775808,-9223372036854775807,-9223372036854775806]
-[-18446744073709551618,-18446744073709551617,-18446744073709551616,-18446744073709551615,-18446744073709551614]
-[-36893488147419103234,-36893488147419103233,-36893488147419103232,-36893488147419103231,-36893488147419103230]
-[-73786976294838206466,-73786976294838206465,-73786976294838206464,-73786976294838206463,-73786976294838206462]
-====================================
-xsInt
-[-2,-1,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,-2147483648,-2147483647,-2147483646]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-1073741826,-1073741825,-1073741824,-1073741823,-1073741822]
-[2147483646,2147483647,-2147483648,-2147483647,-2147483646]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-====================================
-xsIntInteger
-[-2,-1,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,-2147483648,-2147483647,-2147483646]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-1073741826,-1073741825,-1073741824,-1073741823,-1073741822]
-[2147483646,2147483647,-2147483648,-2147483647,-2147483646]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-====================================
-xsInt32
-[-2,-1,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,-2147483648,-2147483647,-2147483646]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-1073741826,-1073741825,-1073741824,-1073741823,-1073741822]
-[2147483646,2147483647,-2147483648,-2147483647,-2147483646]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-====================================
-xsInt32Integer
-[-2,-1,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,-2147483648,-2147483647,-2147483646]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-1073741826,-1073741825,-1073741824,-1073741823,-1073741822]
-[2147483646,2147483647,-2147483648,-2147483647,-2147483646]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-====================================
-xsInt64
-[-2,-1,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,4294967296,4294967297,4294967298]
-[8589934590,8589934591,8589934592,8589934593,8589934594]
-[17179869182,17179869183,17179869184,17179869185,17179869186]
-[4611686018427387902,4611686018427387903,4611686018427387904,4611686018427387905,4611686018427387906]
-[9223372036854775806,9223372036854775807,-9223372036854775808,-9223372036854775807,-9223372036854775806]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-1073741826,-1073741825,-1073741824,-1073741823,-1073741822]
-[-2147483650,-2147483649,-2147483648,-2147483647,-2147483646]
-[-4294967298,-4294967297,-4294967296,-4294967295,-4294967294]
-[-8589934594,-8589934593,-8589934592,-8589934591,-8589934590]
-[-17179869186,-17179869185,-17179869184,-17179869183,-17179869182]
-[-4611686018427387906,-4611686018427387905,-4611686018427387904,-4611686018427387903,-4611686018427387902]
-[9223372036854775806,9223372036854775807,-9223372036854775808,-9223372036854775807,-9223372036854775806]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-====================================
-xsInt64Integer
-[-2,-1,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,4294967296,4294967297,4294967298]
-[8589934590,8589934591,8589934592,8589934593,8589934594]
-[17179869182,17179869183,17179869184,17179869185,17179869186]
-[4611686018427387902,4611686018427387903,4611686018427387904,4611686018427387905,4611686018427387906]
-[9223372036854775806,9223372036854775807,-9223372036854775808,-9223372036854775807,-9223372036854775806]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-1073741826,-1073741825,-1073741824,-1073741823,-1073741822]
-[-2147483650,-2147483649,-2147483648,-2147483647,-2147483646]
-[-4294967298,-4294967297,-4294967296,-4294967295,-4294967294]
-[-8589934594,-8589934593,-8589934592,-8589934591,-8589934590]
-[-17179869186,-17179869185,-17179869184,-17179869183,-17179869182]
-[-4611686018427387906,-4611686018427387905,-4611686018427387904,-4611686018427387903,-4611686018427387902]
-[9223372036854775806,9223372036854775807,-9223372036854775808,-9223372036854775807,-9223372036854775806]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-====================================
-xsWord
-[4294967294,4294967295,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[3221225470,3221225471,3221225472,3221225473,3221225474]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-====================================
-xsWordInteger
-[4294967294,4294967295,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[3221225470,3221225471,3221225472,3221225473,3221225474]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-====================================
-xsWord32
-[4294967294,4294967295,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[3221225470,3221225471,3221225472,3221225473,3221225474]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-====================================
-xsWord32Integer
-[4294967294,4294967295,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[3221225470,3221225471,3221225472,3221225473,3221225474]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-====================================
-xsWord64
-[18446744073709551614,18446744073709551615,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,4294967296,4294967297,4294967298]
-[8589934590,8589934591,8589934592,8589934593,8589934594]
-[17179869182,17179869183,17179869184,17179869185,17179869186]
-[4611686018427387902,4611686018427387903,4611686018427387904,4611686018427387905,4611686018427387906]
-[9223372036854775806,9223372036854775807,9223372036854775808,9223372036854775809,9223372036854775810]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744072635809790,18446744072635809791,18446744072635809792,18446744072635809793,18446744072635809794]
-[18446744071562067966,18446744071562067967,18446744071562067968,18446744071562067969,18446744071562067970]
-[18446744069414584318,18446744069414584319,18446744069414584320,18446744069414584321,18446744069414584322]
-[18446744065119617022,18446744065119617023,18446744065119617024,18446744065119617025,18446744065119617026]
-[18446744056529682430,18446744056529682431,18446744056529682432,18446744056529682433,18446744056529682434]
-[13835058055282163710,13835058055282163711,13835058055282163712,13835058055282163713,13835058055282163714]
-[9223372036854775806,9223372036854775807,9223372036854775808,9223372036854775809,9223372036854775810]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-====================================
-xsWord64Integer
-[18446744073709551614,18446744073709551615,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,4294967296,4294967297,4294967298]
-[8589934590,8589934591,8589934592,8589934593,8589934594]
-[17179869182,17179869183,17179869184,17179869185,17179869186]
-[4611686018427387902,4611686018427387903,4611686018427387904,4611686018427387905,4611686018427387906]
-[9223372036854775806,9223372036854775807,9223372036854775808,9223372036854775809,9223372036854775810]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744072635809790,18446744072635809791,18446744072635809792,18446744072635809793,18446744072635809794]
-[18446744071562067966,18446744071562067967,18446744071562067968,18446744071562067969,18446744071562067970]
-[18446744069414584318,18446744069414584319,18446744069414584320,18446744069414584321,18446744069414584322]
-[18446744065119617022,18446744065119617023,18446744065119617024,18446744065119617025,18446744065119617026]
-[18446744056529682430,18446744056529682431,18446744056529682432,18446744056529682433,18446744056529682434]
-[13835058055282163710,13835058055282163711,13835058055282163712,13835058055282163713,13835058055282163714]
-[9223372036854775806,9223372036854775807,9223372036854775808,9223372036854775809,9223372036854775810]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
diff --git a/testsuite/tests/ghc-regress/lib/integer/integerConversions.stdout-ws-64 b/testsuite/tests/ghc-regress/lib/integer/integerConversions.stdout-ws-64
deleted file mode 100644
index 9dcd6d98c2..0000000000
--- a/testsuite/tests/ghc-regress/lib/integer/integerConversions.stdout-ws-64
+++ /dev/null
@@ -1,299 +0,0 @@
-====================================
-xs
-[-2,-1,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,4294967296,4294967297,4294967298]
-[8589934590,8589934591,8589934592,8589934593,8589934594]
-[17179869182,17179869183,17179869184,17179869185,17179869186]
-[4611686018427387902,4611686018427387903,4611686018427387904,4611686018427387905,4611686018427387906]
-[9223372036854775806,9223372036854775807,9223372036854775808,9223372036854775809,9223372036854775810]
-[18446744073709551614,18446744073709551615,18446744073709551616,18446744073709551617,18446744073709551618]
-[36893488147419103230,36893488147419103231,36893488147419103232,36893488147419103233,36893488147419103234]
-[73786976294838206462,73786976294838206463,73786976294838206464,73786976294838206465,73786976294838206466]
-[-1073741826,-1073741825,-1073741824,-1073741823,-1073741822]
-[-2147483650,-2147483649,-2147483648,-2147483647,-2147483646]
-[-4294967298,-4294967297,-4294967296,-4294967295,-4294967294]
-[-8589934594,-8589934593,-8589934592,-8589934591,-8589934590]
-[-17179869186,-17179869185,-17179869184,-17179869183,-17179869182]
-[-4611686018427387906,-4611686018427387905,-4611686018427387904,-4611686018427387903,-4611686018427387902]
-[-9223372036854775810,-9223372036854775809,-9223372036854775808,-9223372036854775807,-9223372036854775806]
-[-18446744073709551618,-18446744073709551617,-18446744073709551616,-18446744073709551615,-18446744073709551614]
-[-36893488147419103234,-36893488147419103233,-36893488147419103232,-36893488147419103231,-36893488147419103230]
-[-73786976294838206466,-73786976294838206465,-73786976294838206464,-73786976294838206463,-73786976294838206462]
-====================================
-xsInt
-[-2,-1,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,4294967296,4294967297,4294967298]
-[8589934590,8589934591,8589934592,8589934593,8589934594]
-[17179869182,17179869183,17179869184,17179869185,17179869186]
-[4611686018427387902,4611686018427387903,4611686018427387904,4611686018427387905,4611686018427387906]
-[9223372036854775806,9223372036854775807,-9223372036854775808,-9223372036854775807,-9223372036854775806]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-1073741826,-1073741825,-1073741824,-1073741823,-1073741822]
-[-2147483650,-2147483649,-2147483648,-2147483647,-2147483646]
-[-4294967298,-4294967297,-4294967296,-4294967295,-4294967294]
-[-8589934594,-8589934593,-8589934592,-8589934591,-8589934590]
-[-17179869186,-17179869185,-17179869184,-17179869183,-17179869182]
-[-4611686018427387906,-4611686018427387905,-4611686018427387904,-4611686018427387903,-4611686018427387902]
-[9223372036854775806,9223372036854775807,-9223372036854775808,-9223372036854775807,-9223372036854775806]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-====================================
-xsIntInteger
-[-2,-1,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,4294967296,4294967297,4294967298]
-[8589934590,8589934591,8589934592,8589934593,8589934594]
-[17179869182,17179869183,17179869184,17179869185,17179869186]
-[4611686018427387902,4611686018427387903,4611686018427387904,4611686018427387905,4611686018427387906]
-[9223372036854775806,9223372036854775807,-9223372036854775808,-9223372036854775807,-9223372036854775806]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-1073741826,-1073741825,-1073741824,-1073741823,-1073741822]
-[-2147483650,-2147483649,-2147483648,-2147483647,-2147483646]
-[-4294967298,-4294967297,-4294967296,-4294967295,-4294967294]
-[-8589934594,-8589934593,-8589934592,-8589934591,-8589934590]
-[-17179869186,-17179869185,-17179869184,-17179869183,-17179869182]
-[-4611686018427387906,-4611686018427387905,-4611686018427387904,-4611686018427387903,-4611686018427387902]
-[9223372036854775806,9223372036854775807,-9223372036854775808,-9223372036854775807,-9223372036854775806]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-====================================
-xsInt32
-[-2,-1,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,-2147483648,-2147483647,-2147483646]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-1073741826,-1073741825,-1073741824,-1073741823,-1073741822]
-[2147483646,2147483647,-2147483648,-2147483647,-2147483646]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-====================================
-xsInt32Integer
-[-2,-1,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,-2147483648,-2147483647,-2147483646]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-1073741826,-1073741825,-1073741824,-1073741823,-1073741822]
-[2147483646,2147483647,-2147483648,-2147483647,-2147483646]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-====================================
-xsInt64
-[-2,-1,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,4294967296,4294967297,4294967298]
-[8589934590,8589934591,8589934592,8589934593,8589934594]
-[17179869182,17179869183,17179869184,17179869185,17179869186]
-[4611686018427387902,4611686018427387903,4611686018427387904,4611686018427387905,4611686018427387906]
-[9223372036854775806,9223372036854775807,-9223372036854775808,-9223372036854775807,-9223372036854775806]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-1073741826,-1073741825,-1073741824,-1073741823,-1073741822]
-[-2147483650,-2147483649,-2147483648,-2147483647,-2147483646]
-[-4294967298,-4294967297,-4294967296,-4294967295,-4294967294]
-[-8589934594,-8589934593,-8589934592,-8589934591,-8589934590]
-[-17179869186,-17179869185,-17179869184,-17179869183,-17179869182]
-[-4611686018427387906,-4611686018427387905,-4611686018427387904,-4611686018427387903,-4611686018427387902]
-[9223372036854775806,9223372036854775807,-9223372036854775808,-9223372036854775807,-9223372036854775806]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-====================================
-xsInt64Integer
-[-2,-1,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,4294967296,4294967297,4294967298]
-[8589934590,8589934591,8589934592,8589934593,8589934594]
-[17179869182,17179869183,17179869184,17179869185,17179869186]
-[4611686018427387902,4611686018427387903,4611686018427387904,4611686018427387905,4611686018427387906]
-[9223372036854775806,9223372036854775807,-9223372036854775808,-9223372036854775807,-9223372036854775806]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-1073741826,-1073741825,-1073741824,-1073741823,-1073741822]
-[-2147483650,-2147483649,-2147483648,-2147483647,-2147483646]
-[-4294967298,-4294967297,-4294967296,-4294967295,-4294967294]
-[-8589934594,-8589934593,-8589934592,-8589934591,-8589934590]
-[-17179869186,-17179869185,-17179869184,-17179869183,-17179869182]
-[-4611686018427387906,-4611686018427387905,-4611686018427387904,-4611686018427387903,-4611686018427387902]
-[9223372036854775806,9223372036854775807,-9223372036854775808,-9223372036854775807,-9223372036854775806]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-[-2,-1,0,1,2]
-====================================
-xsWord
-[18446744073709551614,18446744073709551615,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,4294967296,4294967297,4294967298]
-[8589934590,8589934591,8589934592,8589934593,8589934594]
-[17179869182,17179869183,17179869184,17179869185,17179869186]
-[4611686018427387902,4611686018427387903,4611686018427387904,4611686018427387905,4611686018427387906]
-[9223372036854775806,9223372036854775807,9223372036854775808,9223372036854775809,9223372036854775810]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744072635809790,18446744072635809791,18446744072635809792,18446744072635809793,18446744072635809794]
-[18446744071562067966,18446744071562067967,18446744071562067968,18446744071562067969,18446744071562067970]
-[18446744069414584318,18446744069414584319,18446744069414584320,18446744069414584321,18446744069414584322]
-[18446744065119617022,18446744065119617023,18446744065119617024,18446744065119617025,18446744065119617026]
-[18446744056529682430,18446744056529682431,18446744056529682432,18446744056529682433,18446744056529682434]
-[13835058055282163710,13835058055282163711,13835058055282163712,13835058055282163713,13835058055282163714]
-[9223372036854775806,9223372036854775807,9223372036854775808,9223372036854775809,9223372036854775810]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-====================================
-xsWordInteger
-[18446744073709551614,18446744073709551615,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,4294967296,4294967297,4294967298]
-[8589934590,8589934591,8589934592,8589934593,8589934594]
-[17179869182,17179869183,17179869184,17179869185,17179869186]
-[4611686018427387902,4611686018427387903,4611686018427387904,4611686018427387905,4611686018427387906]
-[9223372036854775806,9223372036854775807,9223372036854775808,9223372036854775809,9223372036854775810]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744072635809790,18446744072635809791,18446744072635809792,18446744072635809793,18446744072635809794]
-[18446744071562067966,18446744071562067967,18446744071562067968,18446744071562067969,18446744071562067970]
-[18446744069414584318,18446744069414584319,18446744069414584320,18446744069414584321,18446744069414584322]
-[18446744065119617022,18446744065119617023,18446744065119617024,18446744065119617025,18446744065119617026]
-[18446744056529682430,18446744056529682431,18446744056529682432,18446744056529682433,18446744056529682434]
-[13835058055282163710,13835058055282163711,13835058055282163712,13835058055282163713,13835058055282163714]
-[9223372036854775806,9223372036854775807,9223372036854775808,9223372036854775809,9223372036854775810]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-====================================
-xsWord32
-[4294967294,4294967295,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[3221225470,3221225471,3221225472,3221225473,3221225474]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-====================================
-xsWord32Integer
-[4294967294,4294967295,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[3221225470,3221225471,3221225472,3221225473,3221225474]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-[4294967294,4294967295,0,1,2]
-====================================
-xsWord64
-[18446744073709551614,18446744073709551615,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,4294967296,4294967297,4294967298]
-[8589934590,8589934591,8589934592,8589934593,8589934594]
-[17179869182,17179869183,17179869184,17179869185,17179869186]
-[4611686018427387902,4611686018427387903,4611686018427387904,4611686018427387905,4611686018427387906]
-[9223372036854775806,9223372036854775807,9223372036854775808,9223372036854775809,9223372036854775810]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744072635809790,18446744072635809791,18446744072635809792,18446744072635809793,18446744072635809794]
-[18446744071562067966,18446744071562067967,18446744071562067968,18446744071562067969,18446744071562067970]
-[18446744069414584318,18446744069414584319,18446744069414584320,18446744069414584321,18446744069414584322]
-[18446744065119617022,18446744065119617023,18446744065119617024,18446744065119617025,18446744065119617026]
-[18446744056529682430,18446744056529682431,18446744056529682432,18446744056529682433,18446744056529682434]
-[13835058055282163710,13835058055282163711,13835058055282163712,13835058055282163713,13835058055282163714]
-[9223372036854775806,9223372036854775807,9223372036854775808,9223372036854775809,9223372036854775810]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-====================================
-xsWord64Integer
-[18446744073709551614,18446744073709551615,0,1,2]
-[1073741822,1073741823,1073741824,1073741825,1073741826]
-[2147483646,2147483647,2147483648,2147483649,2147483650]
-[4294967294,4294967295,4294967296,4294967297,4294967298]
-[8589934590,8589934591,8589934592,8589934593,8589934594]
-[17179869182,17179869183,17179869184,17179869185,17179869186]
-[4611686018427387902,4611686018427387903,4611686018427387904,4611686018427387905,4611686018427387906]
-[9223372036854775806,9223372036854775807,9223372036854775808,9223372036854775809,9223372036854775810]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744072635809790,18446744072635809791,18446744072635809792,18446744072635809793,18446744072635809794]
-[18446744071562067966,18446744071562067967,18446744071562067968,18446744071562067969,18446744071562067970]
-[18446744069414584318,18446744069414584319,18446744069414584320,18446744069414584321,18446744069414584322]
-[18446744065119617022,18446744065119617023,18446744065119617024,18446744065119617025,18446744065119617026]
-[18446744056529682430,18446744056529682431,18446744056529682432,18446744056529682433,18446744056529682434]
-[13835058055282163710,13835058055282163711,13835058055282163712,13835058055282163713,13835058055282163714]
-[9223372036854775806,9223372036854775807,9223372036854775808,9223372036854775809,9223372036854775810]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
-[18446744073709551614,18446744073709551615,0,1,2]
diff --git a/testsuite/tests/ghc-regress/lib/libposix/Makefile b/testsuite/tests/ghc-regress/lib/libposix/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix001.hs b/testsuite/tests/ghc-regress/lib/libposix/posix001.hs
deleted file mode 100644
index ed20df7939..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix001.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-module Main(main) where
-
-import Posix
-
-main :: IO ()
-main = do
- ppid <- getParentProcessID
- pid <- getProcessID
- putStr "Parent Process ID: "
- print ppid
- putStr "Process ID: "
- print pid
- putStr "forking ps ux"
- print ppid
- child <- forkProcess
- case child of
- Nothing -> executeFile "ps" True ["ux" ++ show ppid] Nothing
- Just x -> doParent x pid
-
-doParent cpid pid = do
- getProcessStatus True False cpid
- putStr "\nChild finished. Now exec'ing ps ux\n"
- print pid
- executeFile "ps" True ["ux" ++ show pid] Nothing
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix001.stdout b/testsuite/tests/ghc-regress/lib/libposix/posix001.stdout
deleted file mode 100644
index c9cd245bbe..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix001.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-USER PID %CPU %MEM SIZE RSS TTY STAT START TIME COMMAND
-sof 30160 0.0 0.2 1244 648 p0 S 15:09 0:00 /bin/sh -c ./posix001
-USER PID %CPU %MEM SIZE RSS TTY STAT START TIME COMMAND
-sof 30161 0.0 0.1 892 336 p0 R 15:09 0:00 ps ux30161
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix002.hs b/testsuite/tests/ghc-regress/lib/libposix/posix002.hs
deleted file mode 100644
index 8d01e8b69f..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix002.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-import Posix
-
-main =
- executeFile "printenv" True [] (Just [("ONE","1"),("TWO","2")])
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix002.stdout b/testsuite/tests/ghc-regress/lib/libposix/posix002.stdout
deleted file mode 100644
index 5e17a60f42..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix002.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-ONE=1
-TWO=2
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix003.hs b/testsuite/tests/ghc-regress/lib/libposix/posix003.hs
deleted file mode 100644
index dbea5e1d9b..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix003.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-import IO
-import Posix
-
-main =
- openFile "po003.out" WriteMode >>= \ h ->
- runProcess "pwd" [] Nothing (Just "/usr/tmp") Nothing (Just h) Nothing
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix003.stdout b/testsuite/tests/ghc-regress/lib/libposix/posix003.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix003.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix004.hs b/testsuite/tests/ghc-regress/lib/libposix/posix004.hs
deleted file mode 100644
index 2423f3f77a..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix004.hs
+++ /dev/null
@@ -1,58 +0,0 @@
-import Posix
-import System(ExitCode(..), exitWith)
-
-main =
- forkProcess >>= \ maybe_pid ->
- case maybe_pid of
- Nothing -> raiseSignal floatingPointException
- _ -> doParent
-
-doParent =
- getAnyProcessStatus True False >>= \ (Just (pid, tc)) ->
- case tc of
- Terminated sig | sig == floatingPointException -> forkChild2
- _ -> fail (userError "unexpected termination cause")
-
-forkChild2 =
- forkProcess >>= \ maybe_pid ->
- case maybe_pid of
- Nothing -> exitImmediately (ExitFailure 42)
- _ -> doParent2
-
-doParent2 =
- getAnyProcessStatus True False >>= \ (Just (pid, tc)) ->
- case tc of
- Exited (ExitFailure 42) -> forkChild3
- _ -> fail (userError "unexpected termination cause (2)")
-
-forkChild3 =
- forkProcess >>= \ maybe_pid ->
- case maybe_pid of
- Nothing -> exitImmediately (ExitSuccess)
- _ -> doParent3
-
-doParent3 =
- getAnyProcessStatus True False >>= \ (Just (pid, tc)) ->
- case tc of
- Exited ExitSuccess -> forkChild4
- _ -> fail (userError "unexpected termination cause (3)")
-
-forkChild4 =
- forkProcess >>= \ maybe_pid ->
- case maybe_pid of
- Nothing -> raiseSignal softwareStop
- _ -> doParent4
-
-doParent4 =
- getAnyProcessStatus True True >>= \ (Just (pid, tc)) ->
- case tc of
- Stopped sig | sig == softwareStop -> enoughAlready pid
- _ -> fail (userError "unexpected termination cause (4)")
-
-enoughAlready pid =
- signalProcess killProcess pid >>
- getAnyProcessStatus True True >>= \ (Just (pid, tc)) ->
- case tc of
- Terminated sig | sig == killProcess -> putStr "I'm happy.\n"
- _ -> fail (userError "unexpected termination cause (5)")
-
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix004.stdout b/testsuite/tests/ghc-regress/lib/libposix/posix004.stdout
deleted file mode 100644
index 8ed7ee54d5..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix004.stdout
+++ /dev/null
@@ -1 +0,0 @@
-I'm happy.
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix005.hs b/testsuite/tests/ghc-regress/lib/libposix/posix005.hs
deleted file mode 100644
index a53182971a..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix005.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-import Posix
-import IO
-main =
- hSetBuffering stdout NoBuffering >>
- getEnvVar "TERM" >>= \ term ->
- putStrLn term >>
- setEnvironment [("one","1"),("two","2")] >>
- getEnvironment >>= \ env ->
- print env >>
- setEnvVar "foo" "bar" >>
- getEnvironment >>= \ env ->
- print env >>
- setEnvVar "foo" "baz" >>
- getEnvironment >>= \ env ->
- print env >>
- setEnvVar "fu" "bar" >>
- getEnvironment >>= \ env ->
- print env >>
- removeEnvVar "foo" >>
- getEnvironment >>= \ env ->
- print env >>
- setEnvironment [] >>
- getEnvironment >>= \ env ->
- print env
-
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix005.stdout b/testsuite/tests/ghc-regress/lib/libposix/posix005.stdout
deleted file mode 100644
index 9896f43da7..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix005.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-emacs
-[("one","1"),("two","2")]
-[("one","1"),("two","2"),("foo","bar")]
-[("one","1"),("two","2"),("foo","baz")]
-[("one","1"),("two","2"),("foo","baz"),("fu","bar")]
-[("one","1"),("two","2"),("fu","bar")]
-[]
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix006.hs b/testsuite/tests/ghc-regress/lib/libposix/posix006.hs
deleted file mode 100644
index eb6451dd73..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix006.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-import Posix
-
-main =
- epochTime >>= \ start ->
- sleep 5 >>
- let timeleft = 0 in
- epochTime >>= \ finish ->
- putStr "Started: " >>
- print start >>
- putStr "\nSlept: " >>
- print (5 - timeleft) >>
- putStr "\nFinished: " >>
- print finish >>
- putChar '\n'
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix006.stdout b/testsuite/tests/ghc-regress/lib/libposix/posix006.stdout
deleted file mode 100644
index d66a4ff4ab..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix006.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-Started: 902585354
-
-Slept: 5
-
-Finished: 902585359
-
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix007.hs b/testsuite/tests/ghc-regress/lib/libposix/posix007.hs
deleted file mode 100644
index 2e62820511..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix007.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-import Posix
-
--- This test is an example of where something more sophisticated than runstdtest
--- is required, as its interactive.
-
-main = do
- installHandler keyboardSignal (Catch doCtrlC) Nothing
- ta <- getTerminalAttributes stdInput
- case (controlChar ta Interrupt) of
- Nothing -> fixMe ta
- Just x -> continue x
-
-fixMe ta = do
- putStr "Oops...no interrupt character?\nI can fix that...\n"
- setTerminalAttributes stdInput (withCC ta (Interrupt, '\ETX')) Immediately
- ta <- getTerminalAttributes stdInput
- case (controlChar ta Interrupt) of
- Nothing -> putStr "...Then again, maybe I can't\n"
- Just x -> continue x
-
-continue x =
- putStr "Press '"
- putStr (ccStr x)
- putStr "'.\n"
- awaitSignal Nothing
- putStr "How did I get here?\n"
-
-doCtrlC =
- putStr "Caught an interrupt.\n"
-
-ccStr '\DEL' = "^?"
-ccStr x
- | x >= ' ' = [x]
- | otherwise = ['^', (toEnum (fromEnum x + fromEnum '@'))]
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix007.stdout b/testsuite/tests/ghc-regress/lib/libposix/posix007.stdout
deleted file mode 100644
index a69478b004..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix007.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Press '^C'.
-Caught an interrupt.
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix008.hs b/testsuite/tests/ghc-regress/lib/libposix/posix008.hs
deleted file mode 100644
index 249e58eedc..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix008.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-import Posix
-
-main =
- installHandler realTimeAlarm (Catch alarmclock) Nothing >>
- putStr "Scheduling an alarm in 5 seconds...\n" >>
- scheduleAlarm 5 >>
- putStr "Sleeping one minute.\n" >>
- sleep 60 >>
- putStr "How did I get here?\n"
-
-alarmclock =
- putStr "The alarm went off.\n"
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix008.stdout b/testsuite/tests/ghc-regress/lib/libposix/posix008.stdout
deleted file mode 100644
index 582d22b225..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix008.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-Scheduling an alarm in 5 seconds...
-Sleeping one minute.
-The alarm went off.
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix009.hs b/testsuite/tests/ghc-regress/lib/libposix/posix009.hs
deleted file mode 100644
index 1f230f648c..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix009.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-import Posix
-
-main =
- putStr "Blocking real time alarms.\n" >>
- blockSignals (addSignal realTimeAlarm emptySignalSet) >>
- putStr "Scheduling an alarm in 2 seconds...\n" >>
- scheduleAlarm 2 >>
- putStr "Sleeping 5 seconds.\n" >>
- sleep 5 >>
- putStrLn "Woken up" >>
- getPendingSignals >>= \ ints ->
- putStr "Checking pending interrupts for RealTimeAlarm\n" >>
- print (inSignalSet realTimeAlarm ints) >>
- putChar '\n'
-
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix009.stdout b/testsuite/tests/ghc-regress/lib/libposix/posix009.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix009.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix010.hs b/testsuite/tests/ghc-regress/lib/libposix/posix010.hs
deleted file mode 100644
index 83d5f27ee0..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix010.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-import Posix
-
-main =
- getUserEntryForName "sof" >>= \ sof ->
- getUserEntryForName "partain" >>= \ partain ->
- putStr (ue2String sof) >>
- putChar '\n' >>
- putStr (ue2String partain) >>
- putChar '\n' >>
- getUserEntryForID (userID sof) >>= \ muid ->
- getUserEntryForID (userID partain) >>= \ puid ->
- putStr (ue2String muid) >>
- putChar '\n' >>
- putStr (ue2String puid) >>
- putChar '\n'
-
-ue2String ue =
- name ++ (':' : (show uid) ++ (':' : (show gid) ++ (':' : home ++ (':' : shell))))
- where
- name = userName ue
- uid = userID ue
- gid = userGroupID ue
- home = homeDirectory ue
- shell = userShell ue
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix010.stdout b/testsuite/tests/ghc-regress/lib/libposix/posix010.stdout
deleted file mode 100644
index ec1d729853..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix010.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-mattson:104:401:/users/fp/mattson:/bin/csh
-partain:184:401:/users/fp/partain:/usr/local/bin/tcsh
-mattson:104:401:/users/fp/mattson:/bin/csh
-partain:184:401:/users/fp/partain:/usr/local/bin/tcsh
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix011.hs b/testsuite/tests/ghc-regress/lib/libposix/posix011.hs
deleted file mode 100644
index f8baf1cbc2..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix011.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-import Posix
-
-main =
- getGroupEntryForName "grasp" >>= \ grasp ->
- getGroupEntryForName "staff" >>= \ staff ->
- putStr (ge2String grasp) >>
- putChar '\n' >>
- putStr (ge2String staff) >>
- putChar '\n' >>
- getGroupEntryForID (groupID grasp) >>= \ guid ->
- getGroupEntryForID (groupID staff) >>= \ suid ->
- putStr (ge2String guid) >>
- putChar '\n' >>
- putStr (ge2String suid) >>
- putChar '\n'
-
-ge2String ge =
- name ++ (':' : (show gid) ++ (':' : members))
- where
- name = groupName ge
- gid = groupID ge
- members = foldr (\x y -> x ++ (',' : y)) "" (groupMembers ge)
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix011.stdout b/testsuite/tests/ghc-regress/lib/libposix/posix011.stdout
deleted file mode 100644
index 11b5df4f1b..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix011.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-grasp:401:andre,andy,ap,areid,cvh,dm,dnt,gnik,grasp,hwloidl,jan,johan,jonathan,jtod,kh,laszlo,mattson,partain,sansom,satnam,sewardj,sharpkm,simonm,simonpj,sof,trinder,wadler,
-staff:9:aileen,alexa,ali,alison,andy,anne,ansftp,aran,arthur,audit,bill,botech,bw,carol,carron,cathy,conftp,cs2head,cvh,dam,darryn,daw,dcg,debbie,del,deptlib,dkm,dlg,dm,dnt,ellen,f131mgr,fabio,fairouz,faxback,fido,finance,fiona,footsie,george,gilbert,gilles,gsm,handbook,harrismi,helen,hme,hmg,huw,iain,id,igr,iii,imis-doc,imm,inei,infoman,ingres,inventdb,irfest,isabel,jacksonn,jacqui,james,janice,jej,jim,jl,jmm,johnson,jon,jstack,jtod,jwp,keith,kempj,kh,kieran,kimb,kirsten,kmssys,laurent,lewis,lisa,lizbeth,logiej,love,lyons,maclib,macneisd,margaret,mark,mary,mattson,meurig,mjj,mmi,monica,mossin,mpa,muffy,nk,norman,partain,pd,pdg,pete,pp,ps,quintin,rab,ray,rdm,reh,replib,rff,rffingres,rich,rios,rjw,rn,ron,ruffin,rwi,sanderso,sandy,sansom,satnam,sheila,sid,simonm,simonpj,slurry,softlib,stephen,steve,stevem,stuart,support,susan,tania,tech,teresa,tfm,tommyk,tracy,trinder,types,typesftp,wadler,wf,xadmin,
-grasp:401:andre,andy,ap,areid,cvh,dm,dnt,gnik,grasp,hwloidl,jan,johan,jonathan,jtod,kh,laszlo,mattson,partain,sansom,satnam,sewardj,sharpkm,simonm,simonpj,sof,trinder,wadler,
-staff:9:aileen,alexa,ali,alison,andy,anne,ansftp,aran,arthur,audit,bill,botech,bw,carol,carron,cathy,conftp,cs2head,cvh,dam,darryn,daw,dcg,debbie,del,deptlib,dkm,dlg,dm,dnt,ellen,f131mgr,fabio,fairouz,faxback,fido,finance,fiona,footsie,george,gilbert,gilles,gsm,handbook,harrismi,helen,hme,hmg,huw,iain,id,igr,iii,imis-doc,imm,inei,infoman,ingres,inventdb,irfest,isabel,jacksonn,jacqui,james,janice,jej,jim,jl,jmm,johnson,jon,jstack,jtod,jwp,keith,kempj,kh,kieran,kimb,kirsten,kmssys,laurent,lewis,lisa,lizbeth,logiej,love,lyons,maclib,macneisd,margaret,mark,mary,mattson,meurig,mjj,mmi,monica,mossin,mpa,muffy,nk,norman,partain,pd,pdg,pete,pp,ps,quintin,rab,ray,rdm,reh,replib,rff,rffingres,rich,rios,rjw,rn,ron,ruffin,rwi,sanderso,sandy,sansom,satnam,sheila,sid,simonm,simonpj,slurry,softlib,stephen,steve,stevem,stuart,support,susan,tania,tech,teresa,tfm,tommyk,tracy,trinder,types,typesftp,wadler,wf,xadmin,
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix012.hs b/testsuite/tests/ghc-regress/lib/libposix/posix012.hs
deleted file mode 100644
index 87f002a6cd..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix012.hs
+++ /dev/null
@@ -1,59 +0,0 @@
-import Posix
-import IO -- 1.3
-
-main =
- createFile "po012.out" stdFileMode >>= \ fd ->
- installHandler processStatusChanged (Catch (reap1 fd)) Nothing >>
- ls >>
- awaitSignal Nothing
-
-ls =
- runProcess "ls" ["-l"] Nothing Nothing Nothing Nothing Nothing
-
-reap1 fd =
- hPutStrLn stderr "Reaper1" >>
- getAnyProcessStatus True False >>
- installHandler processStatusChanged (Catch (reap2 fd)) Nothing >>
- fdWrite fd (take 666 (repeat 'x')) >>
- ls >>
- awaitSignal Nothing
-
-reap2 fd =
- hPutStrLn stderr "Reaper2" >>
- getAnyProcessStatus True False >>
- installHandler processStatusChanged (Catch (reap3 fd)) Nothing >>
- setFileMode "po012.out"
- (foldr1 unionFileModes [ownerReadMode,ownerWriteMode,groupReadMode,otherReadMode]) >>
- ls >>
- awaitSignal Nothing
-
-reap3 fd =
- hPutStrLn stderr "Reaper3" >>
- getAnyProcessStatus True False >>
- installHandler processStatusChanged (Catch (reap4 fd)) Nothing >>
- setFileTimes "po012.out" 0 0 >>
- ls >>
- awaitSignal Nothing
-
-reap4 fd =
- hPutStrLn stderr "Reaper4" >>
- getAnyProcessStatus True False >>
- installHandler processStatusChanged (Catch (reap5 fd)) Nothing >>
- --removeLink "po012.out" >>
- ls >>
- awaitSignal Nothing
-
-reap5 fd =
- hPutStrLn stderr "Reaper5" >>
- getAnyProcessStatus True False >>
- fdSeek fd SeekFromEnd 0 >>= \ bytes ->
- if bytes == 666 then
- fdSeek fd AbsoluteSeek 0 >>
- hPutStrLn stderr "Reaper5" >>
- fdRead fd 666 >>= \ (str, _) ->
- if str == (take 666 (repeat 'x')) then
- putStr "Okay\n"
- else
- putStr "Read failed\n"
- else
- putStr "Seek returned wrong size\n"
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix012.stdout b/testsuite/tests/ghc-regress/lib/libposix/posix012.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix012.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix013.hs b/testsuite/tests/ghc-regress/lib/libposix/posix013.hs
deleted file mode 100644
index b78930b44e..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix013.hs
+++ /dev/null
@@ -1,21 +0,0 @@
---!! Querying for system information.
-module Main(main) where
-
-import Posix
-
-main = do
- sid <- getSystemID
- let
- info =
- [ "Node Name: " , nodeName sid
- , "OS: " , systemName sid
- , "Arch: " , machine sid
- , "Version: " , version sid
- , "Release: " , release sid
- ]
- putStrLn2 info
-
-putStrLn2 :: [String] -> IO ()
-putStrLn2 [] = return ()
-putStrLn2 [x] = putStrLn x
-putStrLn2 (x1:x2:xs) = putStrLn (x1++x2) >> putStrLn2 xs
diff --git a/testsuite/tests/ghc-regress/lib/libposix/posix014.hs b/testsuite/tests/ghc-regress/lib/libposix/posix014.hs
deleted file mode 100644
index bb3518c440..0000000000
--- a/testsuite/tests/ghc-regress/lib/libposix/posix014.hs
+++ /dev/null
@@ -1,19 +0,0 @@
---!! Basic pipe usage
-module Main(main) where
-
-import Posix
-
-main = do
- str <- getEffectiveUserName
- putStrLn str
- (rd, wd) <- createPipe
- n <- forkProcess
- case n of
- Nothing -> do
- (str,_) <- fdRead rd 32
- -- avoid them zombies
- putStrLn str
- Just pid -> do
- fdWrite wd "Hi, there - forked child calling"
--- getProcessStatus False True pid
- return ()
diff --git a/testsuite/tests/ghc-regress/lib/should_run/4006.hs b/testsuite/tests/ghc-regress/lib/should_run/4006.hs
deleted file mode 100644
index 662b0f62e3..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/4006.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-import System.Process
-
-testUnicode :: String -> IO String
-testUnicode str = readProcess "printf" ["%s", str] ""
-
-main = do
- testUnicode "It works here" >>= putStrLn
- testUnicode "РздеÑÑŒ ÑломалоÑÑŒ" >>= putStrLn
diff --git a/testsuite/tests/ghc-regress/lib/should_run/4006.stdout b/testsuite/tests/ghc-regress/lib/should_run/4006.stdout
deleted file mode 100644
index 9db8a8ced2..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/4006.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-It works here
-РздеÑÑŒ ÑломалоÑÑŒ
diff --git a/testsuite/tests/ghc-regress/lib/should_run/Makefile b/testsuite/tests/ghc-regress/lib/should_run/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/should_run/Memo1.lhs b/testsuite/tests/ghc-regress/lib/should_run/Memo1.lhs
deleted file mode 100644
index 796f6121e4..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/Memo1.lhs
+++ /dev/null
@@ -1,142 +0,0 @@
-% $Id: Memo.lhs,v 1.1 2005/12/16 10:46:05 simonmar Exp $
-%
-% (c) The GHC Team, 1999
-%
-% Hashing memo tables.
-
-\begin{code}
-{-# LANGUAGE CPP #-}
-
-module Memo1
- {-# DEPRECATED "This module is unmaintained, and will disappear soon" #-}
-#ifndef __PARALLEL_HASKELL__
- ( memo -- :: (a -> b) -> a -> b
- , memoSized -- :: Int -> (a -> b) -> a -> b
- )
-#endif
- where
-
-#ifndef __PARALLEL_HASKELL__
-
-import System.Mem.StableName ( StableName, makeStableName, hashStableName )
-import System.Mem.Weak ( Weak, mkWeakPtr, mkWeak, deRefWeak, finalize )
-import Data.Array.IO ( IOArray, newArray, readArray, writeArray )
-import System.IO.Unsafe ( unsafePerformIO )
-import Control.Concurrent.MVar ( MVar, newMVar, putMVar, takeMVar )
-\end{code}
-
------------------------------------------------------------------------------
-Memo table representation.
-
-The representation is this: a fixed-size hash table where each bucket
-is a list of table entries, of the form (key,value).
-
-The key in this case is (StableName key), and we use hashStableName to
-hash it.
-
-It's important that we can garbage collect old entries in the table
-when the key is no longer reachable in the heap. Hence the value part
-of each table entry is (Weak val), where the weak pointer "key" is the
-key for our memo table, and 'val' is the value of this memo table
-entry. When the key becomes unreachable, a finalizer will fire and
-remove this entry from the hash bucket, and further attempts to
-dereference the weak pointer will return Nothing. References from
-'val' to the key are ignored (see the semantics of weak pointers in
-the documentation).
-
-\begin{code}
-type MemoTable key val
- = MVar (
- Int, -- current table size
- IOArray Int [MemoEntry key val] -- hash table
- )
-
--- a memo table entry: compile with -funbox-strict-fields to eliminate
--- the boxes around the StableName and Weak fields.
-data MemoEntry key val = MemoEntry !(StableName key) !(Weak val)
-\end{code}
-
-We use an MVar to the hash table, so that several threads may safely
-access it concurrently. This includes the finalization threads that
-remove entries from the table.
-
-ToDo: Can efficiency be improved at all?
-
-\begin{code}
-memo :: (a -> b) -> a -> b
-memo f = memoSized default_table_size f
-
-default_table_size = 1001
-
--- Our memo functions are *strict*. Lazy memo functions tend to be
--- less useful because it is less likely you'll get a memo table hit
--- for a thunk. This change was made to match Hugs's Memo
--- implementation, and as the result of feedback from Conal Elliot
--- <conal@microsoft.com>.
-
-memoSized :: Int -> (a -> b) -> a -> b
-memoSized size f = strict (lazyMemoSized size f)
-
-strict = ($!)
-
-lazyMemoSized :: Int -> (a -> b) -> a -> b
-lazyMemoSized size f =
- let (table,weak) = unsafePerformIO (
- do { tbl <- newArray (0,size) []
- ; mvar <- newMVar (size,tbl)
- ; weak <- mkWeakPtr mvar (Just (table_finalizer tbl size))
- ; return (mvar,weak)
- })
- in memo' f table weak
-
-table_finalizer :: IOArray Int [MemoEntry key val] -> Int -> IO ()
-table_finalizer table size =
- sequence_ [ finalizeBucket i | i <- [0..size] ]
- where
- finalizeBucket i = do
- bucket <- readArray table i
- sequence_ [ finalize w | MemoEntry _ w <- bucket ]
-
-memo' :: (a -> b) -> MemoTable a b -> Weak (MemoTable a b) -> a -> b
-memo' f ref weak_ref = \k -> unsafePerformIO $ do
- stable_key <- makeStableName k
- (size, table) <- takeMVar ref
- let hash_key = hashStableName stable_key `mod` size
- bucket <- readArray table hash_key
- lkp <- lookupSN stable_key bucket
-
- case lkp of
- Just result -> do
- putMVar ref (size,table)
- return result
- Nothing -> do
- let result = f k
- weak <- mkWeak k result (Just (finalizer hash_key stable_key weak_ref))
- writeArray table hash_key (MemoEntry stable_key weak : bucket)
- putMVar ref (size,table)
- return result
-
-finalizer :: Int -> StableName a -> Weak (MemoTable a b) -> IO ()
-finalizer hash_key stable_key weak_ref =
- do r <- deRefWeak weak_ref
- case r of
- Nothing -> return ()
- Just mvar -> do
- (size,table) <- takeMVar mvar
- bucket <- readArray table hash_key
- let new_bucket = [ e | e@(MemoEntry sn weak) <- bucket,
- sn /= stable_key ]
- writeArray table hash_key new_bucket
- putMVar mvar (size,table)
-
-lookupSN :: StableName key -> [MemoEntry key val] -> IO (Maybe val)
-lookupSN sn [] = sn `seq` return Nothing -- make it strict in sn
-lookupSN sn (MemoEntry sn' weak : xs)
- | sn == sn' = do maybe_item <- deRefWeak weak
- case maybe_item of
- Nothing -> error ("dead weak pair: " ++
- show (hashStableName sn))
- Just v -> return (Just v)
- | otherwise = lookupSN sn xs
-#endif
-\end{code}
diff --git a/testsuite/tests/ghc-regress/lib/should_run/Memo2.lhs b/testsuite/tests/ghc-regress/lib/should_run/Memo2.lhs
deleted file mode 100644
index 5193ec2899..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/Memo2.lhs
+++ /dev/null
@@ -1,142 +0,0 @@
-% $Id: Memo.lhs,v 1.1 2005/12/16 10:46:05 simonmar Exp $
-%
-% (c) The GHC Team, 1999
-%
-% Hashing memo tables.
-
-\begin{code}
-{-# LANGUAGE CPP #-}
-
-module Memo2
- {-# DEPRECATED "This module is unmaintained, and will disappear soon" #-}
-#ifndef __PARALLEL_HASKELL__
- ( memo -- :: (a -> b) -> a -> b
- , memoSized -- :: Int -> (a -> b) -> a -> b
- )
-#endif
- where
-
-#ifndef __PARALLEL_HASKELL__
-
-import System.Mem.StableName ( StableName, makeStableName, hashStableName )
-import System.Mem.Weak ( Weak, mkWeakPtr, mkWeak, deRefWeak, finalize )
-import Data.Array.IO ( IOArray, newArray, readArray, writeArray )
-import System.IO.Unsafe ( unsafePerformIO )
-import Control.Concurrent.MVar ( MVar, newMVar, putMVar, takeMVar )
-\end{code}
-
------------------------------------------------------------------------------
-Memo table representation.
-
-The representation is this: a fixed-size hash table where each bucket
-is a list of table entries, of the form (key,value).
-
-The key in this case is (StableName key), and we use hashStableName to
-hash it.
-
-It's important that we can garbage collect old entries in the table
-when the key is no longer reachable in the heap. Hence the value part
-of each table entry is (Weak val), where the weak pointer "key" is the
-key for our memo table, and 'val' is the value of this memo table
-entry. When the key becomes unreachable, a finalizer will fire and
-remove this entry from the hash bucket, and further attempts to
-dereference the weak pointer will return Nothing. References from
-'val' to the key are ignored (see the semantics of weak pointers in
-the documentation).
-
-\begin{code}
-type MemoTable key val
- = MVar (
- Int, -- current table size
- IOArray Int [MemoEntry key val] -- hash table
- )
-
--- a memo table entry: compile with -funbox-strict-fields to eliminate
--- the boxes around the StableName and Weak fields.
-data MemoEntry key val = MemoEntry !(StableName key) !(Weak val)
-\end{code}
-
-We use an MVar to the hash table, so that several threads may safely
-access it concurrently. This includes the finalization threads that
-remove entries from the table.
-
-ToDo: Can efficiency be improved at all?
-
-\begin{code}
-memo :: (a -> b) -> a -> b
-memo f = memoSized default_table_size f
-
-default_table_size = 1001
-
--- Our memo functions are *strict*. Lazy memo functions tend to be
--- less useful because it is less likely you'll get a memo table hit
--- for a thunk. This change was made to match Hugs's Memo
--- implementation, and as the result of feedback from Conal Elliot
--- <conal@microsoft.com>.
-
-memoSized :: Int -> (a -> b) -> a -> b
-memoSized size f = strict (lazyMemoSized size f)
-
-strict = ($!)
-
-lazyMemoSized :: Int -> (a -> b) -> a -> b
-lazyMemoSized size f =
- let (table,weak) = unsafePerformIO (
- do { tbl <- newArray (0,size) []
- ; mvar <- newMVar (size,tbl)
- ; weak <- mkWeakPtr mvar (Just (table_finalizer tbl size))
- ; return (mvar,weak)
- })
- in memo' f table weak
-
-table_finalizer :: IOArray Int [MemoEntry key val] -> Int -> IO ()
-table_finalizer table size =
- sequence_ [ finalizeBucket i | i <- [0..size] ]
- where
- finalizeBucket i = do
- bucket <- readArray table i
- sequence_ [ finalize w | MemoEntry _ w <- bucket ]
-
-memo' :: (a -> b) -> MemoTable a b -> Weak (MemoTable a b) -> a -> b
-memo' f ref weak_ref = \k -> unsafePerformIO $ do
- stable_key <- makeStableName k
- (size, table) <- takeMVar ref
- let hash_key = hashStableName stable_key `mod` size
- bucket <- readArray table hash_key
- lkp <- lookupSN stable_key bucket
-
- case lkp of
- Just result -> do
- putMVar ref (size,table)
- return result
- Nothing -> do
- let result = f k
- weak <- mkWeak k result (Just (finalizer hash_key stable_key weak_ref))
- writeArray table hash_key (MemoEntry stable_key weak : bucket)
- putMVar ref (size,table)
- return result
-
-finalizer :: Int -> StableName a -> Weak (MemoTable a b) -> IO ()
-finalizer hash_key stable_key weak_ref =
- do r <- deRefWeak weak_ref
- case r of
- Nothing -> return ()
- Just mvar -> do
- (size,table) <- takeMVar mvar
- bucket <- readArray table hash_key
- let new_bucket = [ e | e@(MemoEntry sn weak) <- bucket,
- sn /= stable_key ]
- writeArray table hash_key new_bucket
- putMVar mvar (size,table)
-
-lookupSN :: StableName key -> [MemoEntry key val] -> IO (Maybe val)
-lookupSN sn [] = sn `seq` return Nothing -- make it strict in sn
-lookupSN sn (MemoEntry sn' weak : xs)
- | sn == sn' = do maybe_item <- deRefWeak weak
- case maybe_item of
- Nothing -> error ("dead weak pair: " ++
- show (hashStableName sn))
- Just v -> return (Just v)
- | otherwise = lookupSN sn xs
-#endif
-\end{code}
diff --git a/testsuite/tests/ghc-regress/lib/should_run/addr001.hs b/testsuite/tests/ghc-regress/lib/should_run/addr001.hs
deleted file mode 100644
index 436a066063..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/addr001.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! Testing that Show for Addr is OK..
-module Main(main) where
-
-import Foreign.Ptr
-
-main :: IO ()
-main = do
- print (nullPtr `plusPtr` maxBound)
- print (nullPtr `plusPtr` minBound)
-
diff --git a/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout b/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout
deleted file mode 100644
index e098b1be49..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-0x7fffffff
-0x80000000
diff --git a/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-alpha-dec-osf3 b/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-alpha-dec-osf3
deleted file mode 100644
index f38ea71861..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-alpha-dec-osf3
+++ /dev/null
@@ -1,2 +0,0 @@
-0x7fffffffffffffff
-0x8000000000000000
diff --git a/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-mips-sgi-irix b/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-mips-sgi-irix
deleted file mode 100644
index f38ea71861..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-mips-sgi-irix
+++ /dev/null
@@ -1,2 +0,0 @@
-0x7fffffffffffffff
-0x8000000000000000
diff --git a/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-ws-64 b/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-ws-64
deleted file mode 100644
index f38ea71861..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-ws-64
+++ /dev/null
@@ -1,2 +0,0 @@
-0x7fffffffffffffff
-0x8000000000000000
diff --git a/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-x86_64-unknown-openbsd b/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-x86_64-unknown-openbsd
deleted file mode 100644
index f38ea71861..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/addr001.stdout-x86_64-unknown-openbsd
+++ /dev/null
@@ -1,2 +0,0 @@
-0x7fffffffffffffff
-0x8000000000000000
diff --git a/testsuite/tests/ghc-regress/lib/should_run/all.T b/testsuite/tests/ghc-regress/lib/should_run/all.T
deleted file mode 100644
index 502f868e7f..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/all.T
+++ /dev/null
@@ -1,70 +0,0 @@
-test('array001', normal, compile_and_run, [''])
-
-test('char001', normal, compile_and_run, [''])
-test('char002', normal, compile_and_run, [''])
-
-test('cstring001', normal, compile_and_run, [''])
-
-test('length001',
- # This fails without -O, as it relies on a RULE being applied
- expect_fail_for(['normal', 'threaded1', 'llvm']),
- compile_and_run,
- [''])
-
-test('ratio001', normal, compile_and_run, [''])
-
-test('rand001', reqlib('random'), compile_and_run, [''])
-test('reads001', normal, compile_and_run, [''])
-test('show001', normal, compile_and_run, [''])
-test('text001', normal, compile_and_run, [''])
-
-test('tup001', normal, compile_and_run, [''])
-
-test('addr001', normal, compile_and_run, [''])
-test('dynamic001', normal, compile_and_run, [''])
-test('dynamic002', normal, compile_and_run, [''])
-test('dynamic003', extra_run_opts('+RTS -K32m -RTS'), compile_and_run, [''])
-test('dynamic004', normal, compile_and_run, [''])
-test('dynamic005', normal, compile_and_run, [''])
-test('enum01', skip_if_fast, compile_and_run, ['-cpp'])
-test('enum02', skip_if_fast, compile_and_run, ['-cpp'])
-test('enum03', skip_if_fast, compile_and_run, ['-cpp'])
-test('enum04', normal, compile_and_run, [''])
-test('exceptionsrun001', normal, compile_and_run, [''])
-test('exceptionsrun002', normal, compile_and_run, [''])
-test('list001' , skip_if_fast, compile_and_run, [''])
-test('list002', skip_if_fast, compile_and_run, [''])
-test('list003', skip_if_fast, compile_and_run, [''])
-
-test('memo001',
- [skip_if_fast,
- extra_run_opts('+RTS -A10k -RTS'),
- extra_clean(['Memo1.hi', 'Memo1.o'])],
- multimod_compile_and_run,
- ['memo001',''])
-
-test('memo002',
- [skip_if_fast,
- extra_run_opts('20'),
- extra_clean(['Memo2.hi', 'Memo2.o'])],
- multimod_compile_and_run, ['memo002',''])
-
-test('packedstring001', reqlib('packedstring'), compile_and_run, ['-package packedstring'])
-
-test('stableptr001',
- [skip_if_fast, extra_run_opts('+RTS -K8m -RTS')],
- compile_and_run, [''])
-test('stableptr003', normal, compile_and_run, [''])
-test('stableptr004', extra_run_opts('+RTS -K4m -RTS'), compile_and_run, [''])
-test('stableptr005', normal, compile_and_run, [''])
-
-test('weak001', normal, compile_and_run, [''])
-
-# In the 65001 codepage, we can't even cat the expected output on msys:
-# $ cat 4006.stdout
-# It works here
-# cat: write error: Permission denied
-# Seems to be a known problem, e.g.
-# http://mingw-users.1079350.n2.nabble.com/Bug-re-Unicode-on-the-console-td3121717.html
-test('4006', if_msys(expect_fail), compile_and_run, [''])
-
diff --git a/testsuite/tests/ghc-regress/lib/should_run/array001.hs b/testsuite/tests/ghc-regress/lib/should_run/array001.hs
deleted file mode 100644
index b5839b9d53..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/array001.hs
+++ /dev/null
@@ -1,34 +0,0 @@
--- !!! Testing that #4827 is fixed (hPutArray/hGetArray use count argument)
-module Main(main) where
-
-import Control.Monad
-
-import Data.Array.MArray
-import Data.Array.IO
-
-import System.IO
-
-main :: IO ()
-main = do
- the_array <- newListArray (0, 11) [1..12]
-
- -- Write out almost all of the array
- h_out <- openBinaryFile "array001.data" WriteMode
- hPutArray h_out the_array 11
- hClose h_out
-
-
- the_array <- newListArray (0, 11) [0 | i <- [1..12]]
-
- -- Read in almost all of the array
- h_in <- openBinaryFile "array001.data" ReadMode
- wrote_size <- hFileSize h_in
- hGetArray h_in the_array 10
- hClose h_in
-
-
- read_elems <- getElems the_array
-
-
- print wrote_size -- Bytes written, should == 11
- print read_elems -- Bytes read, should match written array in first 10 bytes, be 0 afterwards
diff --git a/testsuite/tests/ghc-regress/lib/should_run/array001.stdout b/testsuite/tests/ghc-regress/lib/should_run/array001.stdout
deleted file mode 100644
index 7c9b768654..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/array001.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-11
-[1,2,3,4,5,6,7,8,9,10,0,0]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/char001.hs b/testsuite/tests/ghc-regress/lib/should_run/char001.hs
deleted file mode 100644
index 2fb0edce0f..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/char001.hs
+++ /dev/null
@@ -1,43 +0,0 @@
--- !!! Testing the behaviour of Char.lexLitChar a little..
-
--- [March 2003] We now allow \X and \O as escapes although the
--- spec only permits \x and \o. Seems more consistent.
-
-module Main where
-
-import Data.Char
-
-lex' str = do
- putStr ("lex " ++ str ++ " = ")
- print (lex str)
-
-hexes = do
- lex' "'\\X00'"
- lex' "'\\x0f2'"
- lex' "'\\xf2'"
- lex' "'\\xf2t'"
- lex' "'\\X24'"
- lex' "'\\x24b'"
- lex' "'\\Xa4b'"
- lex' "'\\xa4bg'"
-
-octs = do
- lex' "'\\o00'"
- lex' "'\\o05'"
- lex' "'\\o50'"
- lex' "'\\o72'"
- lex' "'\\o82'"
- lex' "'\\O24'"
- lex' "'\\O000024'"
- lex' "'\\024b'"
- lex' "'\\o14b'"
- lex' "'\\0a4bg'"
-
-main = do
- hexes
- octs
-
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/lib/should_run/char001.stdout b/testsuite/tests/ghc-regress/lib/should_run/char001.stdout
deleted file mode 100644
index 0c13ac7c03..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/char001.stdout
+++ /dev/null
@@ -1,18 +0,0 @@
-lex '\X00' = [("'\\X00'","")]
-lex '\x0f2' = [("'\\x0f2'","")]
-lex '\xf2' = [("'\\xf2'","")]
-lex '\xf2t' = []
-lex '\X24' = [("'\\X24'","")]
-lex '\x24b' = [("'\\x24b'","")]
-lex '\Xa4b' = [("'\\Xa4b'","")]
-lex '\xa4bg' = []
-lex '\o00' = [("'\\o00'","")]
-lex '\o05' = [("'\\o05'","")]
-lex '\o50' = [("'\\o50'","")]
-lex '\o72' = [("'\\o72'","")]
-lex '\o82' = []
-lex '\O24' = [("'\\O24'","")]
-lex '\O000024' = [("'\\O000024'","")]
-lex '\024b' = []
-lex '\o14b' = []
-lex '\0a4bg' = []
diff --git a/testsuite/tests/ghc-regress/lib/should_run/char002.hs b/testsuite/tests/ghc-regress/lib/should_run/char002.hs
deleted file mode 100644
index 60b8b03cda..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/char002.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! tests for large character values in literals
-import Data.Char
-main = do
- print (ord '\xffff')
- print (ord '\o7777')
- print (ord '\65535')
- print (map ord "\xffff\o7777\65535")
diff --git a/testsuite/tests/ghc-regress/lib/should_run/char002.stdout b/testsuite/tests/ghc-regress/lib/should_run/char002.stdout
deleted file mode 100644
index 5190ad9c53..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/char002.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-65535
-4095
-65535
-[65535,4095,65535]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/cstring001.hs b/testsuite/tests/ghc-regress/lib/should_run/cstring001.hs
deleted file mode 100644
index 38d0d25db2..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/cstring001.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-import Control.Monad
-import Foreign.C.String
-
-test_strings = ["Hello World", replicate 10000 'a']
-
-assertEqual :: (Eq a, Show a) => a -> a -> IO ()
-assertEqual x y = if x == y then return () else error $ "assertEqual: " ++ show x ++ " /= " ++ show y
-
-main = do
- -- Try roundtripping some ASCII strings through the locale encoding
- forM test_strings $ \try_str -> do
- got_str <- withCString try_str peekCString
- got_str `assertEqual` try_str
-
- -- Try roundtripping some ASCII strings with lengths through the locale encoding
- forM test_strings $ \try_str -> do
- got_str <- withCStringLen try_str peekCStringLen
- got_str `assertEqual` try_str
diff --git a/testsuite/tests/ghc-regress/lib/should_run/dynamic001.hs b/testsuite/tests/ghc-regress/lib/should_run/dynamic001.hs
deleted file mode 100644
index 7a3fd515e9..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/dynamic001.hs
+++ /dev/null
@@ -1,107 +0,0 @@
--- !!! Dynamic library regression tests
-module Main(main) where
-
-import Data.Dynamic
-
-main :: IO ()
-main = do
- test "toDyn" toDyn_list
- testIO "fromDyn" fromDyn_test
-
-toDyn_list :: [Dynamic]
-toDyn_list =
- [ toDyn (1::Int)
- , toDyn ('a')
- , toDyn False
- , toDyn ((-1.0)::Float)
- , toDyn (0.0::Double)
- , toDyn (1394::Integer)
- , toDyn (print "hello")
- , toDyn toDyn_list
- , toDyn ([]::[Int])
- , toDyn (Nothing :: Maybe Int)
- , toDyn ((Just 2) :: Maybe Int)
- , toDyn ((Just 2) :: Maybe Int)
- , toDyn ((Left 3) :: Either Int Bool)
- , toDyn ((Right 3) :: Either Char Int)
- , toDyn ()
- , toDyn LT
- , toDyn ((),2::Int)
- , toDyn ((),2::Int,'a')
- , toDyn ((),2::Int,'a',1.0::Double)
- , toDyn ((),2::Int,'a',1.0::Double,Nothing::Maybe Bool)
- , toDyn ((+) :: Int -> Int -> Int)
- , toDyn ((+) :: Integer -> Integer -> Integer)
- , toDyn ((++) :: [Char] -> [Char] -> [Char])
- ]
-
--- Testing the conversion from Dynamic values:
-fromDyn_test :: IO ()
-fromDyn_test = do
- print (fromDyn (toDyn (1::Int)) (0::Int))
- print (fromDyn (toDyn ('a'::Char)) (0::Int))
- print (fromDyn (toDyn 'a') 'b')
- print (fromDyn (toDyn (1::Float)) (0::Float))
- print (fromDyn (toDyn (2::Float)) (0::Int))
- print (fromDyn (toDyn (3::Double)) (0::Double))
- print (fromDyn (toDyn (4::Double)) (0::Int))
- print (fromDyn (toDyn (5::Integer)) (0::Integer))
- print (fromDyn (toDyn (6::Integer)) False)
- print (fromDyn (toDyn [1,3,5::Integer]) ([]::[Integer]))
- print (fromDyn (toDyn (Just True)) (Nothing::Maybe Bool))
- print (fromDyn (toDyn (Left True::Either Bool Bool)) (Right False :: Either Bool Bool))
- print (fromDyn (toDyn LT) GT)
- print (fromDyn (toDyn ((+1)::Int->Int)) False)
- print ((fromDyn (toDyn ((+1)::Int->Int)) ((+2)::Int->Int)) 3)
- print ((fromDyn (toDyn ((++)::[Int]->[Int]->[Int])) ((undefined)::[Int]->[Int]->[Int])) [1] [2])
-
-
--- Misc test utilities:
-test :: Show a => String -> [a] -> IO ()
-test str ls = do
- putStrLn ("*** Testing: " ++ str ++ " ***")
- putStrLn (showListLn ls)
-
-testIO :: String -> IO () -> IO ()
-testIO str tst = do
- putStrLn ("*** Testing: " ++ str ++ " ***")
- tst
-
-
--- showListLn presents a list in a diff-friendly format.
--- showListLn [a1,..an]
--- =>
--- [ a1
--- , a2
--- ..
--- , an
--- ]
---
-showListLn :: Show a => [a] -> String
-showListLn [] = ""
-showListLn ls = '[' : ' ' : go ls
- where
- go [x] = show x ++ "\n]"
- go (x:xs) = show x ++ '\n':',':' ':go xs
-
-{-
-test8 = toDyn (mkAppTy listTc)
-test9 :: Float
-test9 = fromDyn test8 0
-
-printf :: String -> [Dynamic] -> IO ()
-printf str args = putStr (decode str args)
- where
- decode [] [] = []
- decode ('%':'n':cs) (d:ds) =
- (\ v -> show v++decode cs ds) (fromDyn d (0::Int))
- decode ('%':'c':cs) (d:ds) =
- (\ v -> show v++decode cs ds) (fromDyn d ('\0'))
- decode ('%':'b':cs) (d:ds) =
- (\ v -> show v++decode cs ds) (fromDyn d (False::Bool))
- decode (x:xs) ds = x:decode xs ds
-
-test10 :: IO ()
-test10 = printf "%n = %c, that much is %b\n" [toDyn (3::Int),toDyn 'a', toDyn False]
-
--}
diff --git a/testsuite/tests/ghc-regress/lib/should_run/dynamic001.stdout b/testsuite/tests/ghc-regress/lib/should_run/dynamic001.stdout
deleted file mode 100644
index c2d365a7c6..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/dynamic001.stdout
+++ /dev/null
@@ -1,42 +0,0 @@
-*** Testing: toDyn ***
-[ <<Int>>
-, <<Char>>
-, <<Bool>>
-, <<Float>>
-, <<Double>>
-, <<Integer>>
-, <<IO ()>>
-, <<[Dynamic]>>
-, <<[Int]>>
-, <<Maybe Int>>
-, <<Maybe Int>>
-, <<Maybe Int>>
-, <<Either Int Bool>>
-, <<Either Char Int>>
-, <<()>>
-, <<Ordering>>
-, <<((),Int)>>
-, <<((),Int,Char)>>
-, <<((),Int,Char,Double)>>
-, <<((),Int,Char,Double,(Maybe Bool))>>
-, <<Int -> Int -> Int>>
-, <<Integer -> Integer -> Integer>>
-, <<[Char] -> [Char] -> [Char]>>
-]
-*** Testing: fromDyn ***
-1
-0
-'a'
-1.0
-0
-3.0
-0
-5
-False
-[1,3,5]
-Just True
-Left True
-LT
-False
-4
-[1,2]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/dynamic002.hs b/testsuite/tests/ghc-regress/lib/should_run/dynamic002.hs
deleted file mode 100644
index 6d53d2ed1e..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/dynamic002.hs
+++ /dev/null
@@ -1,91 +0,0 @@
--- !!! Testing Typeable instances
-module Main(main) where
-
-import Data.Dynamic
-import Data.Array
-import Data.Array.MArray
-import Data.Array.ST
-import Data.Array.IO
-import Data.Array.Unboxed
-import Data.Complex
-import Data.Int
-import Data.Word
-import Data.IORef
-import System.IO
-import Control.Monad.ST
-import System.Mem.StableName
-import System.Mem.Weak
-import Foreign.StablePtr
-import Control.Exception
-import Foreign.C.Types
-
-main :: IO ()
-main = do
- print (typeOf (undefined :: [()]))
- print (typeOf (undefined :: ()))
- print (typeOf (undefined :: ((),())))
- print (typeOf (undefined :: ((),(),())))
- print (typeOf (undefined :: ((),(),(),())))
- print (typeOf (undefined :: ((),(),(),(),())))
- print (typeOf (undefined :: (() -> ())))
- print (typeOf (undefined :: (Array () ())))
- print (typeOf (undefined :: Bool))
- print (typeOf (undefined :: Char))
- print (typeOf (undefined :: (Complex ())))
- print (typeOf (undefined :: Double))
- print (typeOf (undefined :: (Either () ())))
- print (typeOf (undefined :: Float))
- print (typeOf (undefined :: Handle))
- print (typeOf (undefined :: Int))
- print (typeOf (undefined :: Integer))
- print (typeOf (undefined :: IO ()))
- print (typeOf (undefined :: (Maybe ())))
- print (typeOf (undefined :: Ordering))
-
- print (typeOf (undefined :: Dynamic))
- print (typeOf (undefined :: (IORef ())))
- print (typeOf (undefined :: Int8))
- print (typeOf (undefined :: Int16))
- print (typeOf (undefined :: Int32))
- print (typeOf (undefined :: Int64))
- print (typeOf (undefined :: (ST () ())))
- print (typeOf (undefined :: (StableName ())))
- print (typeOf (undefined :: (StablePtr ())))
- print (typeOf (undefined :: TyCon))
- print (typeOf (undefined :: TypeRep))
- print (typeOf (undefined :: Word8))
- print (typeOf (undefined :: Word16))
- print (typeOf (undefined :: Word32))
- print (typeOf (undefined :: Word64))
-
- print (typeOf (undefined :: ArithException))
- print (typeOf (undefined :: AsyncException))
- print (typeOf (undefined :: (IOArray () ())))
- print (typeOf (undefined :: (IOUArray () ())))
- print (typeOf (undefined :: (STArray () () ())))
- print (typeOf (undefined :: (STUArray () () ())))
- print (typeOf (undefined :: (StableName ())))
- print (typeOf (undefined :: (StablePtr ())))
- print (typeOf (undefined :: (UArray () ())))
- print (typeOf (undefined :: (Weak ())))
-
- print (typeOf (undefined :: CChar))
- print (typeOf (undefined :: CSChar))
- print (typeOf (undefined :: CUChar))
- print (typeOf (undefined :: CShort))
- print (typeOf (undefined :: CUShort))
- print (typeOf (undefined :: CInt))
- print (typeOf (undefined :: CUInt))
- print (typeOf (undefined :: CLong))
- print (typeOf (undefined :: CULong))
- print (typeOf (undefined :: CLLong))
- print (typeOf (undefined :: CULLong))
- print (typeOf (undefined :: CFloat))
- print (typeOf (undefined :: CDouble))
-
- print (typeOf (undefined :: CPtrdiff))
- print (typeOf (undefined :: CSize))
- print (typeOf (undefined :: CWchar))
- print (typeOf (undefined :: CSigAtomic))
- print (typeOf (undefined :: CClock))
- print (typeOf (undefined :: CTime))
diff --git a/testsuite/tests/ghc-regress/lib/should_run/dynamic002.stdout b/testsuite/tests/ghc-regress/lib/should_run/dynamic002.stdout
deleted file mode 100644
index 8b55566ada..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/dynamic002.stdout
+++ /dev/null
@@ -1,64 +0,0 @@
-[()]
-()
-((),())
-((),(),())
-((),(),(),())
-((),(),(),(),())
-() -> ()
-Array () ()
-Bool
-Char
-Complex ()
-Double
-Either () ()
-Float
-Handle
-Int
-Integer
-IO ()
-Maybe ()
-Ordering
-Dynamic
-IORef ()
-Int8
-Int16
-Int32
-Int64
-ST () ()
-StableName ()
-StablePtr ()
-TyCon
-TypeRep
-Word8
-Word16
-Word32
-Word64
-ArithException
-AsyncException
-IOArray () ()
-IOUArray () ()
-STArray () () ()
-STUArray () () ()
-StableName ()
-StablePtr ()
-UArray () ()
-Weak ()
-CChar
-CSChar
-CUChar
-CShort
-CUShort
-CInt
-CUInt
-CLong
-CULong
-CLLong
-CULLong
-CFloat
-CDouble
-CPtrdiff
-CSize
-CWchar
-CSigAtomic
-CClock
-CTime
diff --git a/testsuite/tests/ghc-regress/lib/should_run/dynamic003.hs b/testsuite/tests/ghc-regress/lib/should_run/dynamic003.hs
deleted file mode 100644
index fae8bdb276..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/dynamic003.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module Main where
-
--- Test generation of large TypeReps
--- (can be used as a benchmark)
-
-import Data.Typeable
-
-f :: Typeable a => Int -> a -> TypeRep
-f 0 a = typeOf a
-f n a = f (n-1) [a]
-
-main = print (f 50000 () == f 50001 ())
diff --git a/testsuite/tests/ghc-regress/lib/should_run/dynamic003.stdout b/testsuite/tests/ghc-regress/lib/should_run/dynamic003.stdout
deleted file mode 100644
index bc59c12aa1..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/dynamic003.stdout
+++ /dev/null
@@ -1 +0,0 @@
-False
diff --git a/testsuite/tests/ghc-regress/lib/should_run/dynamic004.hs b/testsuite/tests/ghc-regress/lib/should_run/dynamic004.hs
deleted file mode 100644
index e6b7a82bfd..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/dynamic004.hs
+++ /dev/null
@@ -1,36 +0,0 @@
-module Main where
-
-import Data.Typeable
-import Data.Typeable.Internal
-import GHC.Fingerprint
-import Text.Printf
-
-f :: Typeable a => Int -> a -> [TypeRep]
-f 0 a = []
-f n a = typeOf a : f (n-1) [a]
-
--- pointwise compare 1000x1001 TypeReps, there should be exactly 1000 equalities
--- (can be used as a benchmark)
-main = print $ length [ t1 | t1 <- f 1000 (), t2 <- f 1001 (), t1 == t2 ]
-
-{-
- DEBUGGING code to help find bugs in the TypeRep implementation when
- this test fails:
-
- where
- g (x:xs) (y:ys)
- | x == y = g xs ys
- | otherwise = do
- print x
- case x of
- TypeRep f1 (TyCon f2 _ _ _) [TypeRep f3 _ _] ->
- printf "f1: %s\nf2: %s\nf3: %s\n" (show_fp f1) (show_fp f2) (show_fp f3)
- case y of
- TypeRep f1 (TyCon f2 _ _ _) [TypeRep f3 _ _] ->
- printf "f1: %s\nf2: %s\nf3: %s\n" (show_fp f1) (show_fp f2) (show_fp f3)
- g _ _ = return ()
-
- show_fp :: Fingerprint -> String
- show_fp (Fingerprint h l) =
- printf "%x %x" h l
--}
diff --git a/testsuite/tests/ghc-regress/lib/should_run/dynamic004.stdout b/testsuite/tests/ghc-regress/lib/should_run/dynamic004.stdout
deleted file mode 100644
index 83b33d238d..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/dynamic004.stdout
+++ /dev/null
@@ -1 +0,0 @@
-1000
diff --git a/testsuite/tests/ghc-regress/lib/should_run/dynamic005.hs b/testsuite/tests/ghc-regress/lib/should_run/dynamic005.hs
deleted file mode 100644
index e90aeea960..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/dynamic005.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-module Main where
-
-import Data.Typeable
-
-f :: Typeable a => Int -> a -> [TypeRep]
-f 0 a = []
-f n a = typeOf a : f (n-1) [a]
-
--- pointwise compare 1000x1000 different TypeReps, there should be no equalities
--- (can be used as a benchmark)
-
-main = print $ length [ t1 | t1 <- replicate 1000 (f 10 ()),
- t2 <- replicate 1000 (f 10 'a'),
- t1 == t2 ]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/dynamic005.stdout b/testsuite/tests/ghc-regress/lib/should_run/dynamic005.stdout
deleted file mode 100644
index 573541ac97..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/dynamic005.stdout
+++ /dev/null
@@ -1 +0,0 @@
-0
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum01.hs b/testsuite/tests/ghc-regress/lib/should_run/enum01.hs
deleted file mode 100644
index d8178667eb..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum01.hs
+++ /dev/null
@@ -1,526 +0,0 @@
--- !!! Testing the Prelude's Enum instances.
-module Main(main) where
-
-import Control.Exception
-import Prelude hiding (catch)
-import Data.Char
-import Data.Ratio
-
-main = do
- -- Enum Int
- putStrLn "Testing Enum Int: "
- testEnumInt
- -- Enum Integer
- putStrLn "Testing Enum Integer: "
- testEnumInteger
- -- Enum Char
- putStrLn "Testing Enum Char: "
- testEnumChar
- -- Enum ()
- putStrLn "Testing Enum (): "
- testEnumUnit
- -- Enum Ordering
- putStrLn "Testing Enum Ordering (derived): "
- testEnumOrdering
- -- Enum Bool
- putStrLn "Testing Enum Bool: "
- testEnumBool
- -- Enum Rational
- putStrLn "Testing Enum Rational: "
- testEnumRational
- -- Enum (Ratio Int)
- putStrLn "Testing Enum (Ratio Int): "
- testEnumRatioInt
-
-{-
- Here's the properties that's supposed to
- hold for arithmetic sequences over Int:
-
- - [e1..] = [e1, (e1+1), (e1+2), ..., maxBound]
-
- - [e1,e2..] = [e1, (e1+i), (e1+2*i), ... upper]
- where
- i = e2 - e1
- upper
- | i > 0 = maxBound
- | i < 0 = minBound
- | i == 0 = maxBound -- this really shouldn't matter (I feel.)
- - [e1..e3] = [e1, (e1+i), (e1+2*i),..e3]
- where
- i
- | e3 >= e1 = 1
- | e3 < e1 = (-1)
-
- - [e1,e2..e3] = res
- where
- i = e2 - e1
-
- res
- | i >= 0 && e3 < e1 = []
- | i < 0 && e3 >= e1 = [] -- (*)
- | otherwise = [e1, (e1+i), (e1 + 2*i), .. e3]
-
- Note:
- (*) - I think this instead should be (i < 0 && e3 > e1), since, as is,
-
- [x,(x+1) ..x] = [x]
- [x,(x-1) ..x] = []
-
- which does not look right, symmetrically speaking.
-
-
- The same properties hold for other Prelude types that
- are instances of Enum as well as being Bounded.
-
- For non-Bounded types (e.g., Float and Double), the properties are similar,
- except that the boundary tests become slightly different, i.e., when an
- element becomes greater than (e3 + i/2) (or less than (e3 + i/2) for negative
- i.)
-
- Q - does [(x::Double)..] have an upper bound? (ditto for Float.)
-
- OK - on with the regression testing.
--}
-
-#define printTest(x) (do{ putStr ( " " ++ "x" ++ " = " ) ; print (x) })
-
-
-testEnumInt :: IO ()
-testEnumInt = do
- -- succ
- printTest ((succ (0::Int)))
- printTest ((succ (minBound::Int)))
- mayBomb (printTest ((succ (maxBound::Int))))
-
- -- pred
- printTest (pred (1::Int))
- printTest (pred (maxBound::Int))
- mayBomb (printTest (pred (minBound::Int)))
-
- -- toEnum
- printTest ((map (toEnum::Int->Int) [1,minBound,maxBound]))
-
- -- fromEnum
- printTest ((map fromEnum [(1::Int),minBound,maxBound]))
-
- -- [x..] aka enumFrom
- printTest ((take 7 [(1::Int)..]))
- printTest ((take 7 [((maxBound::Int)-5)..])) -- just in case it doesn't catch the upper bound..
-
- -- [x,y..] aka enumFromThen
- printTest ((take 7 [(1::Int),2..]))
- printTest ((take 7 [(1::Int),7..]))
- printTest ((take 7 [(1::Int),1..]))
- printTest ((take 7 [(1::Int),0..]))
- printTest ((take 7 [(5::Int),2..]))
- let x = (minBound::Int) + 1
- printTest ((take 7 [x, x-1 ..]))
- let x = (minBound::Int) + 5
- printTest ((take 7 [x, x-1 ..]))
- let x = (maxBound::Int) - 5
- printTest ((take 7 [x, (x+1) ..]))
-
- -- Test overflow conditions
- printTest (([minBound::Int,1..]))
- printTest (([minBound::Int,0..]))
- printTest (([minBound::Int,-1..]))
- printTest (([maxBound::Int,1..]))
- printTest (([maxBound::Int,0..]))
- printTest (([maxBound::Int,-1..]))
-
- -- [x..y] aka enumFromTo
- printTest ((take 7 ([(1::Int) .. 5])))
- printTest ((take 4 ([(1::Int) .. 1])))
- printTest ((take 7 ([(1::Int) .. 0])))
- printTest ((take 7 ([(5::Int) .. 0])))
- printTest ((take 7 ([(maxBound-(5::Int)) .. maxBound])))
- printTest ((take 7 ([(minBound+(5::Int)) .. minBound])))
-
- -- [x,y..z] aka enumFromThenTo
- printTest ((take 7 [(5::Int),4..1]))
- printTest ((take 7 [(5::Int),3..1]))
- printTest ((take 7 [(5::Int),3..2]))
- printTest ((take 7 [(1::Int),2..1]))
- printTest ((take 7 [(2::Int),1..2]))
- printTest ((take 7 [(2::Int),1..1]))
- printTest ((take 7 [(2::Int),3..1]))
-
- -- Test overflow conditions
- printTest (([minBound, 1..maxBound::Int]))
- printTest (([minBound, 0..maxBound::Int]))
- printTest (([minBound,-1..maxBound::Int]))
- printTest (([minBound,-1..maxBound-1::Int]))
- printTest (([minBound,-1..maxBound-2::Int]))
-
- printTest (([maxBound, 1..minBound::Int]))
- printTest (([maxBound, 0..minBound::Int]))
- printTest (([maxBound, 0..minBound+1::Int]))
- printTest (([maxBound, 0..minBound+2::Int]))
- printTest (([maxBound,-1..minBound::Int]))
-
- let x = (maxBound::Int) - 4
- printTest ((take 7 [x,(x+1)..maxBound]))
- let x = (minBound::Int) + 5
- printTest ((take 7 [x,(x-1)..minBound]))
-
-testEnumChar :: IO ()
-testEnumChar = do
- -- succ
- printTest ((succ 'a'))
- printTest ((succ (minBound::Char)))
- mayBomb (printTest ((succ (maxBound::Char))))
-
- -- pred
- printTest ((pred 'b'))
- printTest (pred (maxBound::Char))
- mayBomb (printTest (pred (minBound::Char)))
-
- -- toEnum
- printTest ((map (toEnum::Int->Char) [123,ord (minBound::Char), ord(maxBound::Char)]))
- mayBomb (printTest ((toEnum::Int->Char) (minBound::Int)))
-
- -- fromEnum
- printTest ((map fromEnum ['X',minBound,maxBound]))
-
- -- [x..] aka enumFrom
- -- printTest ((take 7 ['\NUL' .. ]))
- do{ putStr ( " " ++ "(take 7 ['\\NUL' .. ])" ++ " = " ) ; print (take 7 ['\NUL' .. ]) }
- -- printTest ((take 7 ['\250' .. ]))
- do{ putStr ( " " ++ "(take 7 ['\\250' .. ])" ++ " = " ) ; print (take 7 ['\250' .. ]) }
-
- -- [x,y..] aka enumFromThen
- printTest ((take 7 ['a','b'..]))
- printTest ((take 7 ['a','e'..]))
- printTest ((take 7 ['a','a'..]))
- printTest ((take 7 ['z','y'..]))
- printTest ((take 7 ['z','v'..]))
- let x = '\1'
- -- printTest ((take 7 ['\1', '\0' ..]))
- do{ putStr ( " " ++ "(take 7 ['\\1', '\\0' ..])" ++ " = " ) ; print (take 7 ['\1', '\0' ..]) }
- let x = '\5'
- -- printTest ((take 7 ['\5', '\4' ..]))
- do{ putStr ( " " ++ "(take 7 ['\\5', '\\4' ..])" ++ " = " ) ; print (take 7 ['\5', '\4' ..]) }
- let x = (maxBound::Int) - 5
- -- printTest ((take 7 ['\250', '\251' ..]))
- do{ putStr ( " " ++ "(take 7 ['\\250', '\\251' ..])" ++ " = " ) ; print (take 7 ['\250', '\251' ..]) }
-
- -- [x..y] aka enumFromTo
- printTest ((take 7 (['a' .. 'e'])))
- printTest ((take 4 (['a' .. 'a'])))
- printTest ((take 7 (['b' .. 'a'])))
- printTest ((take 7 (['e' .. 'a'])))
- -- printTest ((take 7 (['\250' .. '\255'])))
- do{ putStr ( " " ++ "(take 7 (['\\250' .. '\\255']))" ++ " = " ) ; print (take 7 (['\250' .. '\255'])) }
- -- printTest ((take 7 (['\5' .. '\0'])))
- do{ putStr ( " " ++ "(take 7 (['\\5' .. '\\0']))" ++ " = " ) ; print (take 7 (['\5' .. '\0'])) }
-
- -- [x,y..z] aka enumFromThenTo
- printTest ((take 7 ['f','e' .. 'b']))
- printTest ((take 7 ['g','e' .. 'b']))
- printTest ((take 7 ['g','d' .. 'c']))
- printTest ((take 7 ['b','c' .. 'b']))
- printTest ((take 7 ['c','b' .. 'c']))
- printTest ((take 7 ['c','b' .. 'b']))
- printTest ((take 7 ['c','d' .. 'b']))
- -- printTest ((take 7 ['\251', '\252' .. maxBound]))
- do{ putStr ( " " ++ "(take 7 ['\\251', '\\252' .. maxBound])" ++ " = " ) ; print (take 7 ['\251', '\252' .. maxBound]) }
- -- printTest ((take 7 ['\5', '\4' .. minBound]))
- do{ putStr ( " " ++ "(take 7 ['\\5', '\\4' .. minBound])" ++ " = " ) ; print (take 7 ['\5', '\4' .. minBound]) }
-
-
-testEnumUnit :: IO ()
-testEnumUnit = do
- -- succ:
- mayBomb (printTest ((succ ())))
- mayBomb (printTest ((succ (minBound::()))))
- mayBomb (printTest ((succ (maxBound::()))))
-
- -- pred:
- mayBomb (printTest ((pred ())))
- mayBomb (printTest ((pred (minBound::()))))
- mayBomb (printTest ((pred (maxBound::()))))
-
- -- toEnum:
- printTest ((toEnum 0)::())
- mayBomb (printTest ((toEnum 1)::()))
-
- -- fromEnum:
- printTest ((fromEnum ()))
-
- -- enumFrom:
- printTest ((take 7 [()..]))
-
- -- enumFromThen:
- printTest ((take 7 [(),()..]))
-
- -- enumFromTo
- printTest ((take 7 [()..()]))
-
- -- enumFromThenTo
- printTest ((take 7 [(),()..()]))
-
-testEnumOrdering :: IO ()
-testEnumOrdering = do
- -- succ:
- printTest ((succ LT))
- printTest ((succ (minBound::Ordering)))
- mayBomb (printTest ((succ (maxBound::Ordering))))
-
- -- pred:
- printTest ((pred GT))
- printTest ((pred (maxBound::Ordering)))
- mayBomb (printTest ((pred (minBound::Ordering))))
-
- -- toEnum:
- printTest ((toEnum 0)::Ordering)
- mayBomb (printTest ((toEnum 5)::Ordering))
-
- -- fromEnum:
- printTest ((fromEnum LT))
- printTest ((fromEnum EQ))
- printTest ((fromEnum GT))
-
- -- enumFrom:
- printTest (([LT ..]))
- printTest (([EQ ..]))
- printTest (([GT ..]))
-
- -- enumFromThen:
- printTest (([LT,EQ ..]))
- printTest (([EQ,GT ..]))
- printTest (([EQ,LT ..]))
- printTest (([LT,GT ..]))
- printTest (([GT,LT ..]))
- printTest (take 7 (([GT,GT ..])))
- printTest (take 7 (([LT,LT ..])))
-
- -- enumFromTo
- printTest (([LT .. GT]))
- printTest (([LT .. EQ]))
- printTest (([LT .. LT]))
- printTest (([GT .. LT]))
- printTest (([GT .. EQ]))
- printTest (([GT .. GT]))
-
- -- enumFromThenTo
- printTest (([LT,EQ .. GT]))
- printTest (([GT,EQ .. LT]))
- printTest (([GT,EQ .. EQ]))
- printTest (([GT,EQ .. GT]))
- printTest (([GT,EQ .. LT]))
- printTest (([LT,EQ .. LT]))
- printTest (([LT,EQ .. GT]))
- printTest (take 7 (([LT,LT .. GT])))
- printTest (take 7 (([GT,GT .. LT])))
-
-testEnumBool :: IO ()
-testEnumBool = do
- -- succ:
- printTest ((succ False))
- printTest ((succ (minBound::Bool)))
- mayBomb (printTest ((succ (maxBound::Bool))))
-
- -- pred:
- printTest ((pred True))
- printTest ((pred (maxBound::Bool)))
- mayBomb (printTest ((pred (minBound::Bool))))
-
- -- toEnum:
- printTest ((toEnum 0)::Bool)
- mayBomb (printTest ((toEnum 5)::Bool))
-
- -- fromEnum:
- printTest ((fromEnum False))
- printTest ((fromEnum True))
-
- -- enumFrom:
- printTest (([False ..]))
- printTest (([True ..]))
-
- -- enumFromThen:
- printTest (([False,True ..]))
- printTest (([True,False ..]))
- printTest ((take 7 ([False,False ..])))
- printTest ((take 7 ([True,True ..])))
-
- -- enumFromTo
- printTest (([False .. True]))
- printTest (([True .. False]))
-
- -- enumFromThenTo
- printTest (take 7 ([False,False .. False]))
- printTest (take 7 ([False,False .. True]))
- printTest (take 7 ([False,True .. False]))
- printTest (take 7 ([False,True .. True]))
- printTest (take 7 ([True,False .. False]))
- printTest (take 7 ([True,False .. True]))
- printTest (take 7 ([True,True .. False]))
- printTest (take 7 ([True,True .. True]))
-
-
-testEnumInteger :: IO ()
-testEnumInteger = do
- -- succ
- printTest ((succ (0::Integer)))
- printTest ((succ ((-1)::Integer)))
-
- -- pred
- printTest (pred (1::Integer))
- printTest (pred (0::Integer))
-
- -- toEnum
- printTest ((map (toEnum::Int->Integer) [1,minBound,maxBound]))
-
- -- fromEnum
- printTest ((map fromEnum [(1::Integer),42,45]))
-
- -- [x..] aka enumFrom
- printTest ((take 7 [(1::Integer)..]))
- printTest ((take 7 [(-5::Integer)..]))
-
- -- [x,y..] aka enumFromThen
- printTest ((take 7 [(1::Integer),2..]))
- printTest ((take 7 [(1::Integer),7..]))
- printTest ((take 7 [(1::Integer),1..]))
- printTest ((take 7 [(1::Integer),0..]))
- printTest ((take 7 [(5::Integer),2..]))
-
- -- [x..y] aka enumFromTo
- printTest ((take 7 ([(1::Integer) .. 5])))
- printTest ((take 4 ([(1::Integer) .. 1])))
- printTest ((take 7 ([(1::Integer) .. 0])))
- printTest ((take 7 ([(5::Integer) .. 0])))
-
- -- [x,y..z] aka enumFromThenTo
- printTest ((take 7 [(5::Integer),4..1]))
- printTest ((take 7 [(5::Integer),3..1]))
- printTest ((take 7 [(5::Integer),3..2]))
- printTest ((take 7 [(1::Integer),2..1]))
- printTest ((take 7 [(2::Integer),1..2]))
- printTest ((take 7 [(2::Integer),1..1]))
- printTest ((take 7 [(2::Integer),3..1]))
-
-testEnumRational :: IO ()
-testEnumRational = do
- -- succ
- printTest ((succ (0::Rational)))
- printTest ((succ ((-1)::Rational)))
-
- -- pred
- printTest (pred (1::Rational))
- printTest (pred (0::Rational))
-
- -- toEnum
- printTest ((map (toEnum::Int->Rational) [1,minBound,maxBound]))
-
- -- fromEnum
- printTest ((map fromEnum [(1::Rational),42,45]))
-
- -- [x..] aka enumFrom
- printTest ((take 7 [(1::Rational)..]))
- printTest ((take 7 [(-5::Rational)..]))
-
- -- [x,y..] aka enumFromThen
- printTest ((take 7 [(1::Rational),2..]))
- printTest ((take 7 [(1::Rational),7..]))
- printTest ((take 7 [(1::Rational),1..]))
- printTest ((take 7 [(1::Rational),0..]))
- printTest ((take 7 [(5::Rational),2..]))
-
- -- [x..y] aka enumFromTo
- printTest ((take 7 ([(1::Rational) .. 5])))
- printTest ((take 4 ([(1::Rational) .. 1])))
- printTest ((take 7 ([(1::Rational) .. 0])))
- printTest ((take 7 ([(5::Rational) .. 0])))
-
- -- [x,y..z] aka enumFromThenTo
- printTest ((take 7 [(5::Rational),4..1]))
- printTest ((take 7 [(5::Rational),3..1]))
- printTest ((take 7 [(5::Rational),3..2]))
- printTest ((take 7 [(1::Rational),2..1]))
- printTest ((take 7 [(2::Rational),1..2]))
- printTest ((take 7 [(2::Rational),1..1]))
- printTest ((take 7 [(2::Rational),3..1]))
-
-testEnumRatioInt :: IO ()
-testEnumRatioInt = do
- -- succ
- printTest ((succ (0::Ratio Int)))
- printTest ((succ ((-1)::Ratio Int)))
-
- -- pred
- printTest (pred (1::Ratio Int))
- printTest (pred (0::Ratio Int))
-
- -- toEnum
- printTest ((map (toEnum::Int->Ratio Int) [1,minBound,maxBound]))
-
- -- fromEnum
- printTest ((map fromEnum [(1::Ratio Int),42,45]))
-
- -- [x..] aka enumFrom
- printTest ((take 7 [(1::Ratio Int)..]))
- printTest ((take 7 [(-5::Ratio Int)..]))
- printTest ((take 7 [((toEnum ((maxBound::Int)-5))::Ratio Int)..]))
-
- -- [x,y..] aka enumFromThen
- printTest ((take 7 [(1::Ratio Int),2..]))
- printTest ((take 7 [(1::Ratio Int),7..]))
- printTest ((take 7 [(1::Ratio Int),1..]))
- printTest ((take 7 [(1::Ratio Int),0..]))
- printTest ((take 7 [(5::Ratio Int),2..]))
- let x = (toEnum ((minBound::Int) + 1))::Ratio Int
- printTest ((take 7 [x, x-1 ..]))
- let x = (toEnum ((minBound::Int) + 5))::Ratio Int
- printTest ((take 7 [x, x-1 ..]))
- let x = (toEnum ((maxBound::Int) - 5))::Ratio Int
- printTest ((take 7 [x, (x+1) ..]))
-
- -- [x..y] aka enumFromTo
- printTest ((take 7 ([(1::Ratio Int) .. 5])))
- printTest ((take 4 ([(1::Ratio Int) .. 1])))
- printTest ((take 7 ([(1::Ratio Int) .. 0])))
- printTest ((take 7 ([(5::Ratio Int) .. 0])))
- let x = (toEnum (maxBound - (5::Int))) :: Ratio Int
- let y = (toEnum (maxBound::Int)) :: Ratio Int
- printTest ((take 7 ([x..y])))
- let x = (toEnum (minBound + (5::Int))) :: Ratio Int
- let y = (toEnum (minBound::Int)) :: Ratio Int
- printTest ((take 7 ([x..y])))
-
- -- [x,y..z] aka enumFromThenTo
- printTest ((take 7 [(5::Ratio Int),4..1]))
- printTest ((take 7 [(5::Ratio Int),3..1]))
- printTest ((take 7 [(5::Ratio Int),3..2]))
- printTest ((take 7 [(1::Ratio Int),2..1]))
- printTest ((take 7 [(2::Ratio Int),1..2]))
- printTest ((take 7 [(2::Ratio Int),1..1]))
- printTest ((take 7 [(2::Ratio Int),3..1]))
-
- let x = (toEnum ((maxBound::Int) - 4)) :: Ratio Int
- let y = (toEnum (maxBound::Int)) :: Ratio Int
- printTest ((take 7 [x,(x+1)..y]))
- let x = (toEnum ((minBound::Int) + 5)) :: Ratio Int
- let y = (toEnum (minBound::Int)) :: Ratio Int
- printTest ((take 7 [x,(x-1)..y]))
-
---
---
--- Utils
---
---
-
-
-mayBomb x = catch x (\(ErrorCall e) -> putStrLn ("error " ++ show e))
- `catch` (\e -> putStrLn ("Fail: " ++ show (e :: SomeException)))
-
-test :: Show a => String -> String -> a -> IO ()
-test test_nm expected val = do
- putStr test_nm
- if expected == got then
- putStrLn ": SUCCEEDED"
- else do
- putStr ": FAILED"
- putStrLn ("( expected: " ++ show expected ++ " , got: " ++ show got ++ " )")
- where
- got = show val
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum01.stdout b/testsuite/tests/ghc-regress/lib/should_run/enum01.stdout
deleted file mode 100644
index 71e5bd6d1a..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum01.stdout
+++ /dev/null
@@ -1,246 +0,0 @@
-Testing Enum Int:
- (succ (0::Int)) = 1
- (succ (minBound::Int)) = -2147483647
- (succ (maxBound::Int)) = error "Prelude.Enum.succ{Int}: tried to take `succ' of maxBound"
- pred (1::Int) = 0
- pred (maxBound::Int) = 2147483646
- pred (minBound::Int) = error "Prelude.Enum.pred{Int}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int) [1,minBound,maxBound]) = [1,-2147483648,2147483647]
- (map fromEnum [(1::Int),minBound,maxBound]) = [1,-2147483648,2147483647]
- (take 7 [(1::Int)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int)-5)..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [(1::Int),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-2147483647,-2147483648]
- (take 7 [x, x-1 ..]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
- (take 7 [x, (x+1) ..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- ([minBound::Int,1..]) = [-2147483648,1]
- ([minBound::Int,0..]) = [-2147483648,0]
- ([minBound::Int,-1..]) = [-2147483648,-1,2147483646]
- ([maxBound::Int,1..]) = [2147483647,1,-2147483645]
- ([maxBound::Int,0..]) = [2147483647,0,-2147483647]
- ([maxBound::Int,-1..]) = [2147483647,-1]
- (take 7 ([(1::Int) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int) .. 1])) = [1]
- (take 7 ([(1::Int) .. 0])) = []
- (take 7 ([(5::Int) .. 0])) = []
- (take 7 ([(maxBound-(5::Int)) .. maxBound])) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 ([(minBound+(5::Int)) .. minBound])) = []
- (take 7 [(5::Int),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int),3..1]) = [5,3,1]
- (take 7 [(5::Int),3..2]) = [5,3]
- (take 7 [(1::Int),2..1]) = [1]
- (take 7 [(2::Int),1..2]) = [2]
- (take 7 [(2::Int),1..1]) = [2,1]
- (take 7 [(2::Int),3..1]) = []
- ([minBound, 1..maxBound::Int]) = [-2147483648,1]
- ([minBound, 0..maxBound::Int]) = [-2147483648,0]
- ([minBound,-1..maxBound::Int]) = [-2147483648,-1,2147483646]
- ([minBound,-1..maxBound-1::Int]) = [-2147483648,-1,2147483646]
- ([minBound,-1..maxBound-2::Int]) = [-2147483648,-1]
- ([maxBound, 1..minBound::Int]) = [2147483647,1,-2147483645]
- ([maxBound, 0..minBound::Int]) = [2147483647,0,-2147483647]
- ([maxBound, 0..minBound+1::Int]) = [2147483647,0,-2147483647]
- ([maxBound, 0..minBound+2::Int]) = [2147483647,0]
- ([maxBound,-1..minBound::Int]) = [2147483647,-1]
- (take 7 [x,(x+1)..maxBound]) = [2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [x,(x-1)..minBound]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
-Testing Enum Integer:
- (succ (0::Integer)) = 1
- (succ ((-1)::Integer)) = 0
- pred (1::Integer) = 0
- pred (0::Integer) = -1
- (map (toEnum::Int->Integer) [1,minBound,maxBound]) = [1,-2147483648,2147483647]
- (map fromEnum [(1::Integer),42,45]) = [1,42,45]
- (take 7 [(1::Integer)..]) = [1,2,3,4,5,6,7]
- (take 7 [(-5::Integer)..]) = [-5,-4,-3,-2,-1,0,1]
- (take 7 [(1::Integer),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Integer),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Integer),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Integer),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Integer),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 ([(1::Integer) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Integer) .. 1])) = [1]
- (take 7 ([(1::Integer) .. 0])) = []
- (take 7 ([(5::Integer) .. 0])) = []
- (take 7 [(5::Integer),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Integer),3..1]) = [5,3,1]
- (take 7 [(5::Integer),3..2]) = [5,3]
- (take 7 [(1::Integer),2..1]) = [1]
- (take 7 [(2::Integer),1..2]) = [2]
- (take 7 [(2::Integer),1..1]) = [2,1]
- (take 7 [(2::Integer),3..1]) = []
-Testing Enum Char:
- (succ 'a') = 'b'
- (succ (minBound::Char)) = '\SOH'
- (succ (maxBound::Char)) = error "Prelude.Enum.Char.succ: bad argument"
- (pred 'b') = 'a'
- pred (maxBound::Char) = '\1114110'
- pred (minBound::Char) = error "Prelude.Enum.Char.pred: bad argument"
- (map (toEnum::Int->Char) [123,ord (minBound::Char), ord(maxBound::Char)]) = "{\NUL\1114111"
- (toEnum::Int->Char) (minBound::Int) = error "Prelude.chr: bad argument: (-2147483648)"
- (map fromEnum ['X',minBound,maxBound]) = [88,0,1114111]
- (take 7 ['\NUL' .. ]) = "\NUL\SOH\STX\ETX\EOT\ENQ\ACK"
- (take 7 ['\250' .. ]) = "\250\251\252\253\254\255\256"
- (take 7 ['a','b'..]) = "abcdefg"
- (take 7 ['a','e'..]) = "aeimquy"
- (take 7 ['a','a'..]) = "aaaaaaa"
- (take 7 ['z','y'..]) = "zyxwvut"
- (take 7 ['z','v'..]) = "zvrnjfb"
- (take 7 ['\1', '\0' ..]) = "\SOH\NUL"
- (take 7 ['\5', '\4' ..]) = "\ENQ\EOT\ETX\STX\SOH\NUL"
- (take 7 ['\250', '\251' ..]) = "\250\251\252\253\254\255\256"
- (take 7 (['a' .. 'e'])) = "abcde"
- (take 4 (['a' .. 'a'])) = "a"
- (take 7 (['b' .. 'a'])) = ""
- (take 7 (['e' .. 'a'])) = ""
- (take 7 (['\250' .. '\255'])) = "\250\251\252\253\254\255"
- (take 7 (['\5' .. '\0'])) = ""
- (take 7 ['f','e' .. 'b']) = "fedcb"
- (take 7 ['g','e' .. 'b']) = "gec"
- (take 7 ['g','d' .. 'c']) = "gd"
- (take 7 ['b','c' .. 'b']) = "b"
- (take 7 ['c','b' .. 'c']) = "c"
- (take 7 ['c','b' .. 'b']) = "cb"
- (take 7 ['c','d' .. 'b']) = ""
- (take 7 ['\251', '\252' .. maxBound]) = "\251\252\253\254\255\256\257"
- (take 7 ['\5', '\4' .. minBound]) = "\ENQ\EOT\ETX\STX\SOH\NUL"
-Testing Enum ():
- (succ ()) = error "Prelude.Enum.().succ: bad argument"
- (succ (minBound::())) = error "Prelude.Enum.().succ: bad argument"
- (succ (maxBound::())) = error "Prelude.Enum.().succ: bad argument"
- (pred ()) = error "Prelude.Enum.().pred: bad argument"
- (pred (minBound::())) = error "Prelude.Enum.().pred: bad argument"
- (pred (maxBound::())) = error "Prelude.Enum.().pred: bad argument"
- (toEnum 0)::() = ()
- (toEnum 1)::() = error "Prelude.Enum.().toEnum: bad argument"
- (fromEnum ()) = 0
- (take 7 [()..]) = [()]
- (take 7 [(),()..]) = [(),(),(),(),(),(),()]
- (take 7 [()..()]) = [()]
- (take 7 [(),()..()]) = [(),(),(),(),(),(),()]
-Testing Enum Ordering (derived):
- (succ LT) = EQ
- (succ (minBound::Ordering)) = EQ
- (succ (maxBound::Ordering)) = error "Prelude.Enum.Ordering.succ: bad argument"
- (pred GT) = EQ
- (pred (maxBound::Ordering)) = EQ
- (pred (minBound::Ordering)) = error "Prelude.Enum.Ordering.pred: bad argument"
- (toEnum 0)::Ordering = LT
- (toEnum 5)::Ordering = error "Prelude.Enum.Ordering.toEnum: bad argument"
- (fromEnum LT) = 0
- (fromEnum EQ) = 1
- (fromEnum GT) = 2
- ([LT ..]) = [LT,EQ,GT]
- ([EQ ..]) = [EQ,GT]
- ([GT ..]) = [GT]
- ([LT,EQ ..]) = [LT,EQ,GT]
- ([EQ,GT ..]) = [EQ,GT]
- ([EQ,LT ..]) = [EQ,LT]
- ([LT,GT ..]) = [LT,GT]
- ([GT,LT ..]) = [GT,LT]
- take 7 (([GT,GT ..])) = [GT,GT,GT,GT,GT,GT,GT]
- take 7 (([LT,LT ..])) = [LT,LT,LT,LT,LT,LT,LT]
- ([LT .. GT]) = [LT,EQ,GT]
- ([LT .. EQ]) = [LT,EQ]
- ([LT .. LT]) = [LT]
- ([GT .. LT]) = []
- ([GT .. EQ]) = []
- ([GT .. GT]) = [GT]
- ([LT,EQ .. GT]) = [LT,EQ,GT]
- ([GT,EQ .. LT]) = [GT,EQ,LT]
- ([GT,EQ .. EQ]) = [GT,EQ]
- ([GT,EQ .. GT]) = [GT]
- ([GT,EQ .. LT]) = [GT,EQ,LT]
- ([LT,EQ .. LT]) = [LT]
- ([LT,EQ .. GT]) = [LT,EQ,GT]
- take 7 (([LT,LT .. GT])) = [LT,LT,LT,LT,LT,LT,LT]
- take 7 (([GT,GT .. LT])) = []
-Testing Enum Bool:
- (succ False) = True
- (succ (minBound::Bool)) = True
- (succ (maxBound::Bool)) = error "Prelude.Enum.Bool.succ: bad argument"
- (pred True) = False
- (pred (maxBound::Bool)) = False
- (pred (minBound::Bool)) = error "Prelude.Enum.Bool.pred: bad argument"
- (toEnum 0)::Bool = False
- (toEnum 5)::Bool = error "Prelude.Enum.Bool.toEnum: bad argument"
- (fromEnum False) = 0
- (fromEnum True) = 1
- ([False ..]) = [False,True]
- ([True ..]) = [True]
- ([False,True ..]) = [False,True]
- ([True,False ..]) = [True,False]
- (take 7 ([False,False ..])) = [False,False,False,False,False,False,False]
- (take 7 ([True,True ..])) = [True,True,True,True,True,True,True]
- ([False .. True]) = [False,True]
- ([True .. False]) = []
- take 7 ([False,False .. False]) = [False,False,False,False,False,False,False]
- take 7 ([False,False .. True]) = [False,False,False,False,False,False,False]
- take 7 ([False,True .. False]) = [False]
- take 7 ([False,True .. True]) = [False,True]
- take 7 ([True,False .. False]) = [True,False]
- take 7 ([True,False .. True]) = [True]
- take 7 ([True,True .. False]) = []
- take 7 ([True,True .. True]) = [True,True,True,True,True,True,True]
-Testing Enum Rational:
- (succ (0::Rational)) = 1 % 1
- (succ ((-1)::Rational)) = 0 % 1
- pred (1::Rational) = 0 % 1
- pred (0::Rational) = (-1) % 1
- (map (toEnum::Int->Rational) [1,minBound,maxBound]) = [1 % 1,(-2147483648) % 1,2147483647 % 1]
- (map fromEnum [(1::Rational),42,45]) = [1,42,45]
- (take 7 [(1::Rational)..]) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1,6 % 1,7 % 1]
- (take 7 [(-5::Rational)..]) = [(-5) % 1,(-4) % 1,(-3) % 1,(-2) % 1,(-1) % 1,0 % 1,1 % 1]
- (take 7 [(1::Rational),2..]) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1,6 % 1,7 % 1]
- (take 7 [(1::Rational),7..]) = [1 % 1,7 % 1,13 % 1,19 % 1,25 % 1,31 % 1,37 % 1]
- (take 7 [(1::Rational),1..]) = [1 % 1,1 % 1,1 % 1,1 % 1,1 % 1,1 % 1,1 % 1]
- (take 7 [(1::Rational),0..]) = [1 % 1,0 % 1,(-1) % 1,(-2) % 1,(-3) % 1,(-4) % 1,(-5) % 1]
- (take 7 [(5::Rational),2..]) = [5 % 1,2 % 1,(-1) % 1,(-4) % 1,(-7) % 1,(-10) % 1,(-13) % 1]
- (take 7 ([(1::Rational) .. 5])) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1]
- (take 4 ([(1::Rational) .. 1])) = [1 % 1]
- (take 7 ([(1::Rational) .. 0])) = []
- (take 7 ([(5::Rational) .. 0])) = []
- (take 7 [(5::Rational),4..1]) = [5 % 1,4 % 1,3 % 1,2 % 1,1 % 1]
- (take 7 [(5::Rational),3..1]) = [5 % 1,3 % 1,1 % 1]
- (take 7 [(5::Rational),3..2]) = [5 % 1,3 % 1,1 % 1]
- (take 7 [(1::Rational),2..1]) = [1 % 1]
- (take 7 [(2::Rational),1..2]) = [2 % 1]
- (take 7 [(2::Rational),1..1]) = [2 % 1,1 % 1]
- (take 7 [(2::Rational),3..1]) = []
-Testing Enum (Ratio Int):
- (succ (0::Ratio Int)) = 1 % 1
- (succ ((-1)::Ratio Int)) = 0 % 1
- pred (1::Ratio Int) = 0 % 1
- pred (0::Ratio Int) = (-1) % 1
- (map (toEnum::Int->Ratio Int) [1,minBound,maxBound]) = [1 % 1,(-2147483648) % 1,2147483647 % 1]
- (map fromEnum [(1::Ratio Int),42,45]) = [1,42,45]
- (take 7 [(1::Ratio Int)..]) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1,6 % 1,7 % 1]
- (take 7 [(-5::Ratio Int)..]) = [(-5) % 1,(-4) % 1,(-3) % 1,(-2) % 1,(-1) % 1,0 % 1,1 % 1]
- (take 7 [((toEnum ((maxBound::Int)-5))::Ratio Int)..]) = [2147483642 % 1,2147483643 % 1,2147483644 % 1,2147483645 % 1,2147483646 % 1,2147483647 % 1,(-2147483648) % 1]
- (take 7 [(1::Ratio Int),2..]) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1,6 % 1,7 % 1]
- (take 7 [(1::Ratio Int),7..]) = [1 % 1,7 % 1,13 % 1,19 % 1,25 % 1,31 % 1,37 % 1]
- (take 7 [(1::Ratio Int),1..]) = [1 % 1,1 % 1,1 % 1,1 % 1,1 % 1,1 % 1,1 % 1]
- (take 7 [(1::Ratio Int),0..]) = [1 % 1,0 % 1,(-1) % 1,(-2) % 1,(-3) % 1,(-4) % 1,(-5) % 1]
- (take 7 [(5::Ratio Int),2..]) = [5 % 1,2 % 1,(-1) % 1,(-4) % 1,(-7) % 1,(-10) % 1,(-13) % 1]
- (take 7 [x, x-1 ..]) = [(-2147483647) % 1,(-2147483648) % 1,2147483647 % 1,2147483646 % 1,2147483645 % 1,2147483644 % 1,2147483643 % 1]
- (take 7 [x, x-1 ..]) = [(-2147483643) % 1,(-2147483644) % 1,(-2147483645) % 1,(-2147483646) % 1,(-2147483647) % 1,(-2147483648) % 1,2147483647 % 1]
- (take 7 [x, (x+1) ..]) = [2147483642 % 1,2147483643 % 1,2147483644 % 1,2147483645 % 1,2147483646 % 1,2147483647 % 1,(-2147483648) % 1]
- (take 7 ([(1::Ratio Int) .. 5])) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1]
- (take 4 ([(1::Ratio Int) .. 1])) = [1 % 1]
- (take 7 ([(1::Ratio Int) .. 0])) = []
- (take 7 ([(5::Ratio Int) .. 0])) = []
- (take 7 ([x..y])) = [2147483642 % 1,2147483643 % 1,2147483644 % 1,2147483645 % 1,2147483646 % 1,2147483647 % 1]
- (take 7 ([x..y])) = []
- (take 7 [(5::Ratio Int),4..1]) = [5 % 1,4 % 1,3 % 1,2 % 1,1 % 1]
- (take 7 [(5::Ratio Int),3..1]) = [5 % 1,3 % 1,1 % 1]
- (take 7 [(5::Ratio Int),3..2]) = [5 % 1,3 % 1,1 % 1]
- (take 7 [(1::Ratio Int),2..1]) = [1 % 1]
- (take 7 [(2::Ratio Int),1..2]) = [2 % 1]
- (take 7 [(2::Ratio Int),1..1]) = [2 % 1,1 % 1]
- (take 7 [(2::Ratio Int),3..1]) = []
- (take 7 [x,(x+1)..y]) = [2147483643 % 1,2147483644 % 1,2147483645 % 1,2147483646 % 1,2147483647 % 1]
- (take 7 [x,(x-1)..y]) = [(-2147483643) % 1,(-2147483644) % 1,(-2147483645) % 1,(-2147483646) % 1,(-2147483647) % 1,(-2147483648) % 1]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum01.stdout-alpha-dec-osf3 b/testsuite/tests/ghc-regress/lib/should_run/enum01.stdout-alpha-dec-osf3
deleted file mode 100644
index 63ba3e2fb3..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum01.stdout-alpha-dec-osf3
+++ /dev/null
@@ -1,230 +0,0 @@
-Testing Enum Int:
- (succ (0::Int)) = 1
- (succ (minBound::Int)) = -9223372036854775807
- (succ (maxBound::Int)) = error "Prelude.Enum.succ{Int}: tried to take `succ' of maxBound"
- pred (1::Int) = 0
- pred (maxBound::Int) = 9223372036854775806
- pred (minBound::Int) = error "Prelude.Enum.pred{Int}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int) [1,minBound,maxBound]) = [1,-9223372036854775808,9223372036854775807]
- (map fromEnum [(1::Int),minBound,maxBound]) = [1,-9223372036854775808,9223372036854775807]
- (take 7 [(1::Int)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int)-5)..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [(1::Int),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-9223372036854775807,-9223372036854775808]
- (take 7 [x, x-1 ..]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
- (take 7 [x, (x+1) ..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(1::Int) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int) .. 1])) = [1]
- (take 7 ([(1::Int) .. 0])) = []
- (take 7 ([(5::Int) .. 0])) = []
- (take 7 ([(maxBound-(5::Int)) .. maxBound])) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(minBound+(5::Int)) .. minBound])) = []
- (take 7 [(5::Int),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int),3..1]) = [5,3,1]
- (take 7 [(5::Int),3..2]) = [5,3]
- (take 7 [(1::Int),2..1]) = [1]
- (take 7 [(2::Int),1..2]) = [2]
- (take 7 [(2::Int),1..1]) = [2,1]
- (take 7 [(2::Int),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [x,(x-1)..minBound]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
-Testing Enum Integer:
- (succ (0::Integer)) = 1
- (succ ((-1)::Integer)) = 0
- pred (1::Integer) = 0
- pred (0::Integer) = -1
- (map (toEnum::Int->Integer) [1,minBound,maxBound]) = [1,-9223372036854775808,9223372036854775807]
- (map fromEnum [(1::Integer),42,45]) = [1,42,45]
- (take 7 [(1::Integer)..]) = [1,2,3,4,5,6,7]
- (take 7 [(-5::Integer)..]) = [-5,-4,-3,-2,-1,0,1]
- (take 7 [(1::Integer),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Integer),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Integer),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Integer),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Integer),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 ([(1::Integer) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Integer) .. 1])) = [1]
- (take 7 ([(1::Integer) .. 0])) = []
- (take 7 ([(5::Integer) .. 0])) = []
- (take 7 [(5::Integer),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Integer),3..1]) = [5,3,1]
- (take 7 [(5::Integer),3..2]) = [5,3]
- (take 7 [(1::Integer),2..1]) = [1]
- (take 7 [(2::Integer),1..2]) = [2]
- (take 7 [(2::Integer),1..1]) = [2,1]
- (take 7 [(2::Integer),3..1]) = []
-Testing Enum Char:
- (succ 'a') = 'b'
- (succ (minBound::Char)) = '\SOH'
- (succ (maxBound::Char)) = error "Prelude.Enum.Char.succ: bad argument"
- (pred 'b') = 'a'
- pred (maxBound::Char) = '\1114110'
- pred (minBound::Char) = error "Prelude.Enum.Char.pred: bad argument"
- (map (toEnum::Int->Char) [123,ord (minBound::Char), ord(maxBound::Char)]) = "{\NUL\1114111"
- (toEnum::Int->Char) (minBound::Int) = error "Prelude.chr: bad argument"
- (map fromEnum ['X',minBound,maxBound]) = [88,0,1114111]
- (take 7 ['\NUL' .. ]) = "\NUL\SOH\STX\ETX\EOT\ENQ\ACK"
- (take 7 ['\250' .. ]) = "\250\251\252\253\254\255\256"
- (take 7 ['a','b'..]) = "abcdefg"
- (take 7 ['a','e'..]) = "aeimquy"
- (take 7 ['a','a'..]) = "aaaaaaa"
- (take 7 ['z','y'..]) = "zyxwvut"
- (take 7 ['z','v'..]) = "zvrnjfb"
- (take 7 ['\1', '\0' ..]) = "\SOH\NUL"
- (take 7 ['\5', '\4' ..]) = "\ENQ\EOT\ETX\STX\SOH\NUL"
- (take 7 ['\250', '\251' ..]) = "\250\251\252\253\254\255\256"
- (take 7 (['a' .. 'e'])) = "abcde"
- (take 4 (['a' .. 'a'])) = "a"
- (take 7 (['b' .. 'a'])) = ""
- (take 7 (['e' .. 'a'])) = ""
- (take 7 (['\250' .. '\255'])) = "\250\251\252\253\254\255"
- (take 7 (['\5' .. '\0'])) = ""
- (take 7 ['f','e' .. 'b']) = "fedcb"
- (take 7 ['g','e' .. 'b']) = "gec"
- (take 7 ['g','d' .. 'c']) = "gd"
- (take 7 ['b','c' .. 'b']) = "b"
- (take 7 ['c','b' .. 'c']) = "c"
- (take 7 ['c','b' .. 'b']) = "cb"
- (take 7 ['c','d' .. 'b']) = ""
- (take 7 ['\251', '\252' .. maxBound]) = "\251\252\253\254\255\256\257"
- (take 7 ['\5', '\4' .. minBound]) = "\ENQ\EOT\ETX\STX\SOH\NUL"
-Testing Enum ():
- (succ ()) = error "Prelude.Enum.().succ: bad argument"
- (succ (minBound::())) = error "Prelude.Enum.().succ: bad argument"
- (succ (maxBound::())) = error "Prelude.Enum.().succ: bad argument"
- (pred ()) = error "Prelude.Enum.().pred: bad argument"
- (pred (minBound::())) = error "Prelude.Enum.().pred: bad argument"
- (pred (maxBound::())) = error "Prelude.Enum.().pred: bad argument"
- (toEnum 0)::() = ()
- (toEnum 1)::() = error "Prelude.Enum.().toEnum: bad argument"
- (fromEnum ()) = 0
- (take 7 [()..]) = [()]
- (take 7 [(),()..]) = [(),(),(),(),(),(),()]
- (take 7 [()..()]) = [()]
- (take 7 [(),()..()]) = [(),(),(),(),(),(),()]
-Testing Enum Ordering (derived):
- (succ LT) = EQ
- (succ (minBound::Ordering)) = EQ
- (succ (maxBound::Ordering)) = error "Prelude.Enum.Ordering.succ: bad argument"
- (pred GT) = EQ
- (pred (maxBound::Ordering)) = EQ
- (pred (minBound::Ordering)) = error "Prelude.Enum.Ordering.pred: bad argument"
- (toEnum 0)::Ordering = LT
- (toEnum 5)::Ordering = error "Prelude.Enum.Ordering.toEnum: bad argument"
- (fromEnum LT) = 0
- (fromEnum EQ) = 1
- (fromEnum GT) = 2
- ([LT ..]) = [LT,EQ,GT]
- ([EQ ..]) = [EQ,GT]
- ([GT ..]) = [GT]
- ([LT,EQ ..]) = [LT,EQ,GT]
- ([EQ,GT ..]) = [EQ,GT]
- ([EQ,LT ..]) = [EQ,LT]
- ([LT,GT ..]) = [LT,GT]
- ([GT,LT ..]) = [GT,LT]
- take 7 (([GT,GT ..])) = [GT,GT,GT,GT,GT,GT,GT]
- take 7 (([LT,LT ..])) = [LT,LT,LT,LT,LT,LT,LT]
- ([LT .. GT]) = [LT,EQ,GT]
- ([LT .. EQ]) = [LT,EQ]
- ([LT .. LT]) = [LT]
- ([GT .. LT]) = []
- ([GT .. EQ]) = []
- ([GT .. GT]) = [GT]
- ([LT,EQ .. GT]) = [LT,EQ,GT]
- ([GT,EQ .. LT]) = [GT,EQ,LT]
- ([GT,EQ .. EQ]) = [GT,EQ]
- ([GT,EQ .. GT]) = [GT]
- ([GT,EQ .. LT]) = [GT,EQ,LT]
- ([LT,EQ .. LT]) = [LT]
- ([LT,EQ .. GT]) = [LT,EQ,GT]
- take 7 (([LT,LT .. GT])) = [LT,LT,LT,LT,LT,LT,LT]
- take 7 (([GT,GT .. LT])) = []
-Testing Enum Bool:
- (succ False) = True
- (succ (minBound::Bool)) = True
- (succ (maxBound::Bool)) = error "Prelude.Enum.Bool.succ: bad argument"
- (pred True) = False
- (pred (maxBound::Bool)) = False
- (pred (minBound::Bool)) = error "Prelude.Enum.Bool.pred: bad argument"
- (toEnum 0)::Bool = False
- (toEnum 5)::Bool = error "Prelude.Enum.Bool.toEnum: bad argument"
- (fromEnum False) = 0
- (fromEnum True) = 1
- ([False ..]) = [False,True]
- ([True ..]) = [True]
- ([False,True ..]) = [False,True]
- ([True,False ..]) = [True,False]
- (take 7 ([False,False ..])) = [False,False,False,False,False,False,False]
- (take 7 ([True,True ..])) = [True,True,True,True,True,True,True]
- ([False .. True]) = [False,True]
- ([True .. False]) = []
- take 7 ([False,False .. False]) = [False,False,False,False,False,False,False]
- take 7 ([False,False .. True]) = [False,False,False,False,False,False,False]
- take 7 ([False,True .. False]) = [False]
- take 7 ([False,True .. True]) = [False,True]
- take 7 ([True,False .. False]) = [True,False]
- take 7 ([True,False .. True]) = [True]
- take 7 ([True,True .. False]) = []
- take 7 ([True,True .. True]) = [True,True,True,True,True,True,True]
-Testing Enum Rational:
- (succ (0::Rational)) = 1%1
- (succ ((-1)::Rational)) = 0%1
- pred (1::Rational) = 0%1
- pred (0::Rational) = (-1)%1
- (map (toEnum::Int->Rational) [1,minBound,maxBound]) = [1%1,(-9223372036854775808)%1,9223372036854775807%1]
- (map fromEnum [(1::Rational),42,45]) = [1,42,45]
- (take 7 [(1::Rational)..]) = [1%1,2%1,3%1,4%1,5%1,6%1,7%1]
- (take 7 [(-5::Rational)..]) = [(-5)%1,(-4)%1,(-3)%1,(-2)%1,(-1)%1,0%1,1%1]
- (take 7 [(1::Rational),2..]) = [1%1,2%1,3%1,4%1,5%1,6%1,7%1]
- (take 7 [(1::Rational),7..]) = [1%1,7%1,13%1,19%1,25%1,31%1,37%1]
- (take 7 [(1::Rational),1..]) = [1%1,1%1,1%1,1%1,1%1,1%1,1%1]
- (take 7 [(1::Rational),0..]) = [1%1,0%1,(-1)%1,(-2)%1,(-3)%1,(-4)%1,(-5)%1]
- (take 7 [(5::Rational),2..]) = [5%1,2%1,(-1)%1,(-4)%1,(-7)%1,(-10)%1,(-13)%1]
- (take 7 ([(1::Rational) .. 5])) = [1%1,2%1,3%1,4%1,5%1]
- (take 4 ([(1::Rational) .. 1])) = [1%1]
- (take 7 ([(1::Rational) .. 0])) = []
- (take 7 ([(5::Rational) .. 0])) = []
- (take 7 [(5::Rational),4..1]) = [5%1,4%1,3%1,2%1,1%1]
- (take 7 [(5::Rational),3..1]) = [5%1,3%1,1%1]
- (take 7 [(5::Rational),3..2]) = [5%1,3%1,1%1]
- (take 7 [(1::Rational),2..1]) = [1%1]
- (take 7 [(2::Rational),1..2]) = [2%1]
- (take 7 [(2::Rational),1..1]) = [2%1,1%1]
- (take 7 [(2::Rational),3..1]) = []
-Testing Enum (Ratio Int):
- (succ (0::Ratio Int)) = 1%1
- (succ ((-1)::Ratio Int)) = 0%1
- pred (1::Ratio Int) = 0%1
- pred (0::Ratio Int) = (-1)%1
- (map (toEnum::Int->Ratio Int) [1,minBound,maxBound]) = [1%1,(-9223372036854775808)%1,9223372036854775807%1]
- (map fromEnum [(1::Ratio Int),42,45]) = [1,42,45]
- (take 7 [(1::Ratio Int)..]) = [1%1,2%1,3%1,4%1,5%1,6%1,7%1]
- (take 7 [(-5::Ratio Int)..]) = [(-5)%1,(-4)%1,(-3)%1,(-2)%1,(-1)%1,0%1,1%1]
- (take 7 [((toEnum ((maxBound::Int)-5))::Ratio Int)..]) = [9223372036854775802%1,9223372036854775803%1,9223372036854775804%1,9223372036854775805%1,9223372036854775806%1,9223372036854775807%1,(-9223372036854775808)%1]
- (take 7 [(1::Ratio Int),2..]) = [1%1,2%1,3%1,4%1,5%1,6%1,7%1]
- (take 7 [(1::Ratio Int),7..]) = [1%1,7%1,13%1,19%1,25%1,31%1,37%1]
- (take 7 [(1::Ratio Int),1..]) = [1%1,1%1,1%1,1%1,1%1,1%1,1%1]
- (take 7 [(1::Ratio Int),0..]) = [1%1,0%1,(-1)%1,(-2)%1,(-3)%1,(-4)%1,(-5)%1]
- (take 7 [(5::Ratio Int),2..]) = [5%1,2%1,(-1)%1,(-4)%1,(-7)%1,(-10)%1,(-13)%1]
- (take 7 [x, x-1 ..]) = [(-9223372036854775807)%1,(-9223372036854775808)%1,9223372036854775807%1,9223372036854775806%1,9223372036854775805%1,9223372036854775804%1,9223372036854775803%1]
- (take 7 [x, x-1 ..]) = [(-9223372036854775803)%1,(-9223372036854775804)%1,(-9223372036854775805)%1,(-9223372036854775806)%1,(-9223372036854775807)%1,(-9223372036854775808)%1,9223372036854775807%1]
- (take 7 [x, (x+1) ..]) = [9223372036854775802%1,9223372036854775803%1,9223372036854775804%1,9223372036854775805%1,9223372036854775806%1,9223372036854775807%1,(-9223372036854775808)%1]
- (take 7 ([(1::Ratio Int) .. 5])) = [1%1,2%1,3%1,4%1,5%1]
- (take 4 ([(1::Ratio Int) .. 1])) = [1%1]
- (take 7 ([(1::Ratio Int) .. 0])) = []
- (take 7 ([(5::Ratio Int) .. 0])) = []
- (take 7 ([x..y])) = [9223372036854775802%1,9223372036854775803%1,9223372036854775804%1,9223372036854775805%1,9223372036854775806%1,9223372036854775807%1]
- (take 7 ([x..y])) = []
- (take 7 [(5::Ratio Int),4..1]) = [5%1,4%1,3%1,2%1,1%1]
- (take 7 [(5::Ratio Int),3..1]) = [5%1,3%1,1%1]
- (take 7 [(5::Ratio Int),3..2]) = [5%1,3%1,1%1]
- (take 7 [(1::Ratio Int),2..1]) = [1%1]
- (take 7 [(2::Ratio Int),1..2]) = [2%1]
- (take 7 [(2::Ratio Int),1..1]) = [2%1,1%1]
- (take 7 [(2::Ratio Int),3..1]) = []
- (take 7 [x,(x+1)..y]) = [9223372036854775803%1,9223372036854775804%1,9223372036854775805%1,9223372036854775806%1,9223372036854775807%1]
- (take 7 [x,(x-1)..y]) = [(-9223372036854775803)%1,(-9223372036854775804)%1,(-9223372036854775805)%1,(-9223372036854775806)%1,(-9223372036854775807)%1,(-9223372036854775808)%1]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum01.stdout-hugs b/testsuite/tests/ghc-regress/lib/should_run/enum01.stdout-hugs
deleted file mode 100644
index 41bb64d598..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum01.stdout-hugs
+++ /dev/null
@@ -1,246 +0,0 @@
-Testing Enum Int:
- (succ (0::Int)) = 1
- (succ (minBound::Int)) = -2147483647
- (succ (maxBound::Int)) = error "succ: applied to maxBound"
- pred (1::Int) = 0
- pred (maxBound::Int) = 2147483646
- pred (minBound::Int) = error "pred: applied to minBound"
- (map (toEnum::Int->Int) [1,minBound,maxBound]) = [1,-2147483648,2147483647]
- (map fromEnum [(1::Int),minBound,maxBound]) = [1,-2147483648,2147483647]
- (take 7 [(1::Int)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int)-5)..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [(1::Int),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-2147483647,-2147483648]
- (take 7 [x, x-1 ..]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
- (take 7 [x, (x+1) ..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- ([minBound::Int,1..]) = [-2147483648,1]
- ([minBound::Int,0..]) = [-2147483648,0]
- ([minBound::Int,-1..]) = [-2147483648,-1,2147483646]
- ([maxBound::Int,1..]) = [2147483647,1,-2147483645]
- ([maxBound::Int,0..]) = [2147483647,0,-2147483647]
- ([maxBound::Int,-1..]) = [2147483647,-1]
- (take 7 ([(1::Int) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int) .. 1])) = [1]
- (take 7 ([(1::Int) .. 0])) = []
- (take 7 ([(5::Int) .. 0])) = []
- (take 7 ([(maxBound-(5::Int)) .. maxBound])) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 ([(minBound+(5::Int)) .. minBound])) = []
- (take 7 [(5::Int),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int),3..1]) = [5,3,1]
- (take 7 [(5::Int),3..2]) = [5,3]
- (take 7 [(1::Int),2..1]) = [1]
- (take 7 [(2::Int),1..2]) = [2]
- (take 7 [(2::Int),1..1]) = [2,1]
- (take 7 [(2::Int),3..1]) = []
- ([minBound, 1..maxBound::Int]) = [-2147483648,1]
- ([minBound, 0..maxBound::Int]) = [-2147483648,0]
- ([minBound,-1..maxBound::Int]) = [-2147483648,-1,2147483646]
- ([minBound,-1..maxBound-1::Int]) = [-2147483648,-1,2147483646]
- ([minBound,-1..maxBound-2::Int]) = [-2147483648,-1]
- ([maxBound, 1..minBound::Int]) = [2147483647,1,-2147483645]
- ([maxBound, 0..minBound::Int]) = [2147483647,0,-2147483647]
- ([maxBound, 0..minBound+1::Int]) = [2147483647,0,-2147483647]
- ([maxBound, 0..minBound+2::Int]) = [2147483647,0]
- ([maxBound,-1..minBound::Int]) = [2147483647,-1]
- (take 7 [x,(x+1)..maxBound]) = [2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [x,(x-1)..minBound]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
-Testing Enum Integer:
- (succ (0::Integer)) = 1
- (succ ((-1)::Integer)) = 0
- pred (1::Integer) = 0
- pred (0::Integer) = -1
- (map (toEnum::Int->Integer) [1,minBound,maxBound]) = [1,-2147483648,2147483647]
- (map fromEnum [(1::Integer),42,45]) = [1,42,45]
- (take 7 [(1::Integer)..]) = [1,2,3,4,5,6,7]
- (take 7 [(-5::Integer)..]) = [-5,-4,-3,-2,-1,0,1]
- (take 7 [(1::Integer),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Integer),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Integer),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Integer),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Integer),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 ([(1::Integer) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Integer) .. 1])) = [1]
- (take 7 ([(1::Integer) .. 0])) = []
- (take 7 ([(5::Integer) .. 0])) = []
- (take 7 [(5::Integer),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Integer),3..1]) = [5,3,1]
- (take 7 [(5::Integer),3..2]) = [5,3]
- (take 7 [(1::Integer),2..1]) = [1]
- (take 7 [(2::Integer),1..2]) = [2]
- (take 7 [(2::Integer),1..1]) = [2,1]
- (take 7 [(2::Integer),3..1]) = []
-Testing Enum Char:
- (succ 'a') = 'b'
- (succ (minBound::Char)) = '\SOH'
- (succ (maxBound::Char)) = error "chr: out of range"
- (pred 'b') = 'a'
- pred (maxBound::Char) = '\1114110'
- pred (minBound::Char) = error "chr: out of range"
- (map (toEnum::Int->Char) [123,ord (minBound::Char), ord(maxBound::Char)]) = "{\NUL\1114111"
- (toEnum::Int->Char) (minBound::Int) = error "chr: out of range"
- (map fromEnum ['X',minBound,maxBound]) = [88,0,1114111]
- (take 7 ['\NUL' .. ]) = "\NUL\SOH\STX\ETX\EOT\ENQ\ACK"
- (take 7 ['\250' .. ]) = "\250\251\252\253\254\255\256"
- (take 7 ['a','b'..]) = "abcdefg"
- (take 7 ['a','e'..]) = "aeimquy"
- (take 7 ['a','a'..]) = "aaaaaaa"
- (take 7 ['z','y'..]) = "zyxwvut"
- (take 7 ['z','v'..]) = "zvrnjfb"
- (take 7 ['\1', '\0' ..]) = "\SOH\NUL"
- (take 7 ['\5', '\4' ..]) = "\ENQ\EOT\ETX\STX\SOH\NUL"
- (take 7 ['\250', '\251' ..]) = "\250\251\252\253\254\255\256"
- (take 7 (['a' .. 'e'])) = "abcde"
- (take 4 (['a' .. 'a'])) = "a"
- (take 7 (['b' .. 'a'])) = ""
- (take 7 (['e' .. 'a'])) = ""
- (take 7 (['\250' .. '\255'])) = "\250\251\252\253\254\255"
- (take 7 (['\5' .. '\0'])) = ""
- (take 7 ['f','e' .. 'b']) = "fedcb"
- (take 7 ['g','e' .. 'b']) = "gec"
- (take 7 ['g','d' .. 'c']) = "gd"
- (take 7 ['b','c' .. 'b']) = "b"
- (take 7 ['c','b' .. 'c']) = "c"
- (take 7 ['c','b' .. 'b']) = "cb"
- (take 7 ['c','d' .. 'b']) = ""
- (take 7 ['\251', '\252' .. maxBound]) = "\251\252\253\254\255\256\257"
- (take 7 ['\5', '\4' .. minBound]) = "\ENQ\EOT\ETX\STX\SOH\NUL"
-Testing Enum ():
- (succ ()) = Fail: pattern match failure
- (succ (minBound::())) = Fail: pattern match failure
- (succ (maxBound::())) = Fail: pattern match failure
- (pred ()) = Fail: pattern match failure
- (pred (minBound::())) = Fail: pattern match failure
- (pred (maxBound::())) = Fail: pattern match failure
- (toEnum 0)::() = ()
- (toEnum 1)::() = Fail: pattern match failure
- (fromEnum ()) = 0
- (take 7 [()..]) = [()]
- (take 7 [(),()..]) = [(),(),(),(),(),(),()]
- (take 7 [()..()]) = [()]
- (take 7 [(),()..()]) = [(),(),(),(),(),(),()]
-Testing Enum Ordering (derived):
- (succ LT) = EQ
- (succ (minBound::Ordering)) = EQ
- (succ (maxBound::Ordering)) = error "toEnum: out of range"
- (pred GT) = EQ
- (pred (maxBound::Ordering)) = EQ
- (pred (minBound::Ordering)) = error "toEnum: out of range"
- (toEnum 0)::Ordering = LT
- (toEnum 5)::Ordering = error "toEnum: out of range"
- (fromEnum LT) = 0
- (fromEnum EQ) = 1
- (fromEnum GT) = 2
- ([LT ..]) = [LT,EQ,GT]
- ([EQ ..]) = [EQ,GT]
- ([GT ..]) = [GT]
- ([LT,EQ ..]) = [LT,EQ,GT]
- ([EQ,GT ..]) = [EQ,GT]
- ([EQ,LT ..]) = [EQ,LT]
- ([LT,GT ..]) = [LT,GT]
- ([GT,LT ..]) = [GT,LT]
- take 7 (([GT,GT ..])) = [GT,GT,GT,GT,GT,GT,GT]
- take 7 (([LT,LT ..])) = [LT,LT,LT,LT,LT,LT,LT]
- ([LT .. GT]) = [LT,EQ,GT]
- ([LT .. EQ]) = [LT,EQ]
- ([LT .. LT]) = [LT]
- ([GT .. LT]) = []
- ([GT .. EQ]) = []
- ([GT .. GT]) = [GT]
- ([LT,EQ .. GT]) = [LT,EQ,GT]
- ([GT,EQ .. LT]) = [GT,EQ,LT]
- ([GT,EQ .. EQ]) = [GT,EQ]
- ([GT,EQ .. GT]) = [GT]
- ([GT,EQ .. LT]) = [GT,EQ,LT]
- ([LT,EQ .. LT]) = [LT]
- ([LT,EQ .. GT]) = [LT,EQ,GT]
- take 7 (([LT,LT .. GT])) = [LT,LT,LT,LT,LT,LT,LT]
- take 7 (([GT,GT .. LT])) = []
-Testing Enum Bool:
- (succ False) = True
- (succ (minBound::Bool)) = True
- (succ (maxBound::Bool)) = error "toEnum: out of range"
- (pred True) = False
- (pred (maxBound::Bool)) = False
- (pred (minBound::Bool)) = error "toEnum: out of range"
- (toEnum 0)::Bool = False
- (toEnum 5)::Bool = error "toEnum: out of range"
- (fromEnum False) = 0
- (fromEnum True) = 1
- ([False ..]) = [False,True]
- ([True ..]) = [True]
- ([False,True ..]) = [False,True]
- ([True,False ..]) = [True,False]
- (take 7 ([False,False ..])) = [False,False,False,False,False,False,False]
- (take 7 ([True,True ..])) = [True,True,True,True,True,True,True]
- ([False .. True]) = [False,True]
- ([True .. False]) = []
- take 7 ([False,False .. False]) = [False,False,False,False,False,False,False]
- take 7 ([False,False .. True]) = [False,False,False,False,False,False,False]
- take 7 ([False,True .. False]) = [False]
- take 7 ([False,True .. True]) = [False,True]
- take 7 ([True,False .. False]) = [True,False]
- take 7 ([True,False .. True]) = [True]
- take 7 ([True,True .. False]) = []
- take 7 ([True,True .. True]) = [True,True,True,True,True,True,True]
-Testing Enum Rational:
- (succ (0::Rational)) = 1 % 1
- (succ ((-1)::Rational)) = 0 % 1
- pred (1::Rational) = 0 % 1
- pred (0::Rational) = (-1) % 1
- (map (toEnum::Int->Rational) [1,minBound,maxBound]) = [1 % 1,(-2147483648) % 1,2147483647 % 1]
- (map fromEnum [(1::Rational),42,45]) = [1,42,45]
- (take 7 [(1::Rational)..]) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1,6 % 1,7 % 1]
- (take 7 [(-5::Rational)..]) = [(-5) % 1,(-4) % 1,(-3) % 1,(-2) % 1,(-1) % 1,0 % 1,1 % 1]
- (take 7 [(1::Rational),2..]) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1,6 % 1,7 % 1]
- (take 7 [(1::Rational),7..]) = [1 % 1,7 % 1,13 % 1,19 % 1,25 % 1,31 % 1,37 % 1]
- (take 7 [(1::Rational),1..]) = [1 % 1,1 % 1,1 % 1,1 % 1,1 % 1,1 % 1,1 % 1]
- (take 7 [(1::Rational),0..]) = [1 % 1,0 % 1,(-1) % 1,(-2) % 1,(-3) % 1,(-4) % 1,(-5) % 1]
- (take 7 [(5::Rational),2..]) = [5 % 1,2 % 1,(-1) % 1,(-4) % 1,(-7) % 1,(-10) % 1,(-13) % 1]
- (take 7 ([(1::Rational) .. 5])) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1]
- (take 4 ([(1::Rational) .. 1])) = [1 % 1]
- (take 7 ([(1::Rational) .. 0])) = []
- (take 7 ([(5::Rational) .. 0])) = []
- (take 7 [(5::Rational),4..1]) = [5 % 1,4 % 1,3 % 1,2 % 1,1 % 1]
- (take 7 [(5::Rational),3..1]) = [5 % 1,3 % 1,1 % 1]
- (take 7 [(5::Rational),3..2]) = [5 % 1,3 % 1,1 % 1]
- (take 7 [(1::Rational),2..1]) = [1 % 1]
- (take 7 [(2::Rational),1..2]) = [2 % 1]
- (take 7 [(2::Rational),1..1]) = [2 % 1,1 % 1]
- (take 7 [(2::Rational),3..1]) = []
-Testing Enum (Ratio Int):
- (succ (0::Ratio Int)) = 1 % 1
- (succ ((-1)::Ratio Int)) = 0 % 1
- pred (1::Ratio Int) = 0 % 1
- pred (0::Ratio Int) = (-1) % 1
- (map (toEnum::Int->Ratio Int) [1,minBound,maxBound]) = [1 % 1,(-2147483648) % 1,2147483647 % 1]
- (map fromEnum [(1::Ratio Int),42,45]) = [1,42,45]
- (take 7 [(1::Ratio Int)..]) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1,6 % 1,7 % 1]
- (take 7 [(-5::Ratio Int)..]) = [(-5) % 1,(-4) % 1,(-3) % 1,(-2) % 1,(-1) % 1,0 % 1,1 % 1]
- (take 7 [((toEnum ((maxBound::Int)-5))::Ratio Int)..]) = [2147483642 % 1,2147483643 % 1,2147483644 % 1,2147483645 % 1,2147483646 % 1,2147483647 % 1,(-2147483648) % 1]
- (take 7 [(1::Ratio Int),2..]) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1,6 % 1,7 % 1]
- (take 7 [(1::Ratio Int),7..]) = [1 % 1,7 % 1,13 % 1,19 % 1,25 % 1,31 % 1,37 % 1]
- (take 7 [(1::Ratio Int),1..]) = [1 % 1,1 % 1,1 % 1,1 % 1,1 % 1,1 % 1,1 % 1]
- (take 7 [(1::Ratio Int),0..]) = [1 % 1,0 % 1,(-1) % 1,(-2) % 1,(-3) % 1,(-4) % 1,(-5) % 1]
- (take 7 [(5::Ratio Int),2..]) = [5 % 1,2 % 1,(-1) % 1,(-4) % 1,(-7) % 1,(-10) % 1,(-13) % 1]
- (take 7 [x, x-1 ..]) = [(-2147483647) % 1,(-2147483648) % 1,2147483647 % 1,2147483646 % 1,2147483645 % 1,2147483644 % 1,2147483643 % 1]
- (take 7 [x, x-1 ..]) = [(-2147483643) % 1,(-2147483644) % 1,(-2147483645) % 1,(-2147483646) % 1,(-2147483647) % 1,(-2147483648) % 1,2147483647 % 1]
- (take 7 [x, (x+1) ..]) = [2147483642 % 1,2147483643 % 1,2147483644 % 1,2147483645 % 1,2147483646 % 1,2147483647 % 1,(-2147483648) % 1]
- (take 7 ([(1::Ratio Int) .. 5])) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1]
- (take 4 ([(1::Ratio Int) .. 1])) = [1 % 1]
- (take 7 ([(1::Ratio Int) .. 0])) = []
- (take 7 ([(5::Ratio Int) .. 0])) = []
- (take 7 ([x..y])) = [2147483642 % 1,2147483643 % 1,2147483644 % 1,2147483645 % 1,2147483646 % 1,2147483647 % 1]
- (take 7 ([x..y])) = []
- (take 7 [(5::Ratio Int),4..1]) = [5 % 1,4 % 1,3 % 1,2 % 1,1 % 1]
- (take 7 [(5::Ratio Int),3..1]) = [5 % 1,3 % 1,1 % 1]
- (take 7 [(5::Ratio Int),3..2]) = [5 % 1,3 % 1,1 % 1]
- (take 7 [(1::Ratio Int),2..1]) = [1 % 1]
- (take 7 [(2::Ratio Int),1..2]) = [2 % 1]
- (take 7 [(2::Ratio Int),1..1]) = [2 % 1,1 % 1]
- (take 7 [(2::Ratio Int),3..1]) = []
- (take 7 [x,(x+1)..y]) = [2147483643 % 1,2147483644 % 1,2147483645 % 1,2147483646 % 1,2147483647 % 1]
- (take 7 [x,(x-1)..y]) = [(-2147483643) % 1,(-2147483644) % 1,(-2147483645) % 1,(-2147483646) % 1,(-2147483647) % 1,(-2147483648) % 1]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum01.stdout-ws-64 b/testsuite/tests/ghc-regress/lib/should_run/enum01.stdout-ws-64
deleted file mode 100644
index 3804dd2470..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum01.stdout-ws-64
+++ /dev/null
@@ -1,246 +0,0 @@
-Testing Enum Int:
- (succ (0::Int)) = 1
- (succ (minBound::Int)) = -9223372036854775807
- (succ (maxBound::Int)) = error "Prelude.Enum.succ{Int}: tried to take `succ' of maxBound"
- pred (1::Int) = 0
- pred (maxBound::Int) = 9223372036854775806
- pred (minBound::Int) = error "Prelude.Enum.pred{Int}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int) [1,minBound,maxBound]) = [1,-9223372036854775808,9223372036854775807]
- (map fromEnum [(1::Int),minBound,maxBound]) = [1,-9223372036854775808,9223372036854775807]
- (take 7 [(1::Int)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int)-5)..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [(1::Int),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-9223372036854775807,-9223372036854775808]
- (take 7 [x, x-1 ..]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
- (take 7 [x, (x+1) ..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- ([minBound::Int,1..]) = [-9223372036854775808,1]
- ([minBound::Int,0..]) = [-9223372036854775808,0]
- ([minBound::Int,-1..]) = [-9223372036854775808,-1,9223372036854775806]
- ([maxBound::Int,1..]) = [9223372036854775807,1,-9223372036854775805]
- ([maxBound::Int,0..]) = [9223372036854775807,0,-9223372036854775807]
- ([maxBound::Int,-1..]) = [9223372036854775807,-1]
- (take 7 ([(1::Int) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int) .. 1])) = [1]
- (take 7 ([(1::Int) .. 0])) = []
- (take 7 ([(5::Int) .. 0])) = []
- (take 7 ([(maxBound-(5::Int)) .. maxBound])) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(minBound+(5::Int)) .. minBound])) = []
- (take 7 [(5::Int),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int),3..1]) = [5,3,1]
- (take 7 [(5::Int),3..2]) = [5,3]
- (take 7 [(1::Int),2..1]) = [1]
- (take 7 [(2::Int),1..2]) = [2]
- (take 7 [(2::Int),1..1]) = [2,1]
- (take 7 [(2::Int),3..1]) = []
- ([minBound, 1..maxBound::Int]) = [-9223372036854775808,1]
- ([minBound, 0..maxBound::Int]) = [-9223372036854775808,0]
- ([minBound,-1..maxBound::Int]) = [-9223372036854775808,-1,9223372036854775806]
- ([minBound,-1..maxBound-1::Int]) = [-9223372036854775808,-1,9223372036854775806]
- ([minBound,-1..maxBound-2::Int]) = [-9223372036854775808,-1]
- ([maxBound, 1..minBound::Int]) = [9223372036854775807,1,-9223372036854775805]
- ([maxBound, 0..minBound::Int]) = [9223372036854775807,0,-9223372036854775807]
- ([maxBound, 0..minBound+1::Int]) = [9223372036854775807,0,-9223372036854775807]
- ([maxBound, 0..minBound+2::Int]) = [9223372036854775807,0]
- ([maxBound,-1..minBound::Int]) = [9223372036854775807,-1]
- (take 7 [x,(x+1)..maxBound]) = [9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [x,(x-1)..minBound]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
-Testing Enum Integer:
- (succ (0::Integer)) = 1
- (succ ((-1)::Integer)) = 0
- pred (1::Integer) = 0
- pred (0::Integer) = -1
- (map (toEnum::Int->Integer) [1,minBound,maxBound]) = [1,-9223372036854775808,9223372036854775807]
- (map fromEnum [(1::Integer),42,45]) = [1,42,45]
- (take 7 [(1::Integer)..]) = [1,2,3,4,5,6,7]
- (take 7 [(-5::Integer)..]) = [-5,-4,-3,-2,-1,0,1]
- (take 7 [(1::Integer),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Integer),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Integer),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Integer),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Integer),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 ([(1::Integer) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Integer) .. 1])) = [1]
- (take 7 ([(1::Integer) .. 0])) = []
- (take 7 ([(5::Integer) .. 0])) = []
- (take 7 [(5::Integer),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Integer),3..1]) = [5,3,1]
- (take 7 [(5::Integer),3..2]) = [5,3]
- (take 7 [(1::Integer),2..1]) = [1]
- (take 7 [(2::Integer),1..2]) = [2]
- (take 7 [(2::Integer),1..1]) = [2,1]
- (take 7 [(2::Integer),3..1]) = []
-Testing Enum Char:
- (succ 'a') = 'b'
- (succ (minBound::Char)) = '\SOH'
- (succ (maxBound::Char)) = error "Prelude.Enum.Char.succ: bad argument"
- (pred 'b') = 'a'
- pred (maxBound::Char) = '\1114110'
- pred (minBound::Char) = error "Prelude.Enum.Char.pred: bad argument"
- (map (toEnum::Int->Char) [123,ord (minBound::Char), ord(maxBound::Char)]) = "{\NUL\1114111"
- (toEnum::Int->Char) (minBound::Int) = error "Prelude.chr: bad argument: (-9223372036854775808)"
- (map fromEnum ['X',minBound,maxBound]) = [88,0,1114111]
- (take 7 ['\NUL' .. ]) = "\NUL\SOH\STX\ETX\EOT\ENQ\ACK"
- (take 7 ['\250' .. ]) = "\250\251\252\253\254\255\256"
- (take 7 ['a','b'..]) = "abcdefg"
- (take 7 ['a','e'..]) = "aeimquy"
- (take 7 ['a','a'..]) = "aaaaaaa"
- (take 7 ['z','y'..]) = "zyxwvut"
- (take 7 ['z','v'..]) = "zvrnjfb"
- (take 7 ['\1', '\0' ..]) = "\SOH\NUL"
- (take 7 ['\5', '\4' ..]) = "\ENQ\EOT\ETX\STX\SOH\NUL"
- (take 7 ['\250', '\251' ..]) = "\250\251\252\253\254\255\256"
- (take 7 (['a' .. 'e'])) = "abcde"
- (take 4 (['a' .. 'a'])) = "a"
- (take 7 (['b' .. 'a'])) = ""
- (take 7 (['e' .. 'a'])) = ""
- (take 7 (['\250' .. '\255'])) = "\250\251\252\253\254\255"
- (take 7 (['\5' .. '\0'])) = ""
- (take 7 ['f','e' .. 'b']) = "fedcb"
- (take 7 ['g','e' .. 'b']) = "gec"
- (take 7 ['g','d' .. 'c']) = "gd"
- (take 7 ['b','c' .. 'b']) = "b"
- (take 7 ['c','b' .. 'c']) = "c"
- (take 7 ['c','b' .. 'b']) = "cb"
- (take 7 ['c','d' .. 'b']) = ""
- (take 7 ['\251', '\252' .. maxBound]) = "\251\252\253\254\255\256\257"
- (take 7 ['\5', '\4' .. minBound]) = "\ENQ\EOT\ETX\STX\SOH\NUL"
-Testing Enum ():
- (succ ()) = error "Prelude.Enum.().succ: bad argument"
- (succ (minBound::())) = error "Prelude.Enum.().succ: bad argument"
- (succ (maxBound::())) = error "Prelude.Enum.().succ: bad argument"
- (pred ()) = error "Prelude.Enum.().pred: bad argument"
- (pred (minBound::())) = error "Prelude.Enum.().pred: bad argument"
- (pred (maxBound::())) = error "Prelude.Enum.().pred: bad argument"
- (toEnum 0)::() = ()
- (toEnum 1)::() = error "Prelude.Enum.().toEnum: bad argument"
- (fromEnum ()) = 0
- (take 7 [()..]) = [()]
- (take 7 [(),()..]) = [(),(),(),(),(),(),()]
- (take 7 [()..()]) = [()]
- (take 7 [(),()..()]) = [(),(),(),(),(),(),()]
-Testing Enum Ordering (derived):
- (succ LT) = EQ
- (succ (minBound::Ordering)) = EQ
- (succ (maxBound::Ordering)) = error "Prelude.Enum.Ordering.succ: bad argument"
- (pred GT) = EQ
- (pred (maxBound::Ordering)) = EQ
- (pred (minBound::Ordering)) = error "Prelude.Enum.Ordering.pred: bad argument"
- (toEnum 0)::Ordering = LT
- (toEnum 5)::Ordering = error "Prelude.Enum.Ordering.toEnum: bad argument"
- (fromEnum LT) = 0
- (fromEnum EQ) = 1
- (fromEnum GT) = 2
- ([LT ..]) = [LT,EQ,GT]
- ([EQ ..]) = [EQ,GT]
- ([GT ..]) = [GT]
- ([LT,EQ ..]) = [LT,EQ,GT]
- ([EQ,GT ..]) = [EQ,GT]
- ([EQ,LT ..]) = [EQ,LT]
- ([LT,GT ..]) = [LT,GT]
- ([GT,LT ..]) = [GT,LT]
- take 7 (([GT,GT ..])) = [GT,GT,GT,GT,GT,GT,GT]
- take 7 (([LT,LT ..])) = [LT,LT,LT,LT,LT,LT,LT]
- ([LT .. GT]) = [LT,EQ,GT]
- ([LT .. EQ]) = [LT,EQ]
- ([LT .. LT]) = [LT]
- ([GT .. LT]) = []
- ([GT .. EQ]) = []
- ([GT .. GT]) = [GT]
- ([LT,EQ .. GT]) = [LT,EQ,GT]
- ([GT,EQ .. LT]) = [GT,EQ,LT]
- ([GT,EQ .. EQ]) = [GT,EQ]
- ([GT,EQ .. GT]) = [GT]
- ([GT,EQ .. LT]) = [GT,EQ,LT]
- ([LT,EQ .. LT]) = [LT]
- ([LT,EQ .. GT]) = [LT,EQ,GT]
- take 7 (([LT,LT .. GT])) = [LT,LT,LT,LT,LT,LT,LT]
- take 7 (([GT,GT .. LT])) = []
-Testing Enum Bool:
- (succ False) = True
- (succ (minBound::Bool)) = True
- (succ (maxBound::Bool)) = error "Prelude.Enum.Bool.succ: bad argument"
- (pred True) = False
- (pred (maxBound::Bool)) = False
- (pred (minBound::Bool)) = error "Prelude.Enum.Bool.pred: bad argument"
- (toEnum 0)::Bool = False
- (toEnum 5)::Bool = error "Prelude.Enum.Bool.toEnum: bad argument"
- (fromEnum False) = 0
- (fromEnum True) = 1
- ([False ..]) = [False,True]
- ([True ..]) = [True]
- ([False,True ..]) = [False,True]
- ([True,False ..]) = [True,False]
- (take 7 ([False,False ..])) = [False,False,False,False,False,False,False]
- (take 7 ([True,True ..])) = [True,True,True,True,True,True,True]
- ([False .. True]) = [False,True]
- ([True .. False]) = []
- take 7 ([False,False .. False]) = [False,False,False,False,False,False,False]
- take 7 ([False,False .. True]) = [False,False,False,False,False,False,False]
- take 7 ([False,True .. False]) = [False]
- take 7 ([False,True .. True]) = [False,True]
- take 7 ([True,False .. False]) = [True,False]
- take 7 ([True,False .. True]) = [True]
- take 7 ([True,True .. False]) = []
- take 7 ([True,True .. True]) = [True,True,True,True,True,True,True]
-Testing Enum Rational:
- (succ (0::Rational)) = 1 % 1
- (succ ((-1)::Rational)) = 0 % 1
- pred (1::Rational) = 0 % 1
- pred (0::Rational) = (-1) % 1
- (map (toEnum::Int->Rational) [1,minBound,maxBound]) = [1 % 1,(-9223372036854775808) % 1,9223372036854775807 % 1]
- (map fromEnum [(1::Rational),42,45]) = [1,42,45]
- (take 7 [(1::Rational)..]) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1,6 % 1,7 % 1]
- (take 7 [(-5::Rational)..]) = [(-5) % 1,(-4) % 1,(-3) % 1,(-2) % 1,(-1) % 1,0 % 1,1 % 1]
- (take 7 [(1::Rational),2..]) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1,6 % 1,7 % 1]
- (take 7 [(1::Rational),7..]) = [1 % 1,7 % 1,13 % 1,19 % 1,25 % 1,31 % 1,37 % 1]
- (take 7 [(1::Rational),1..]) = [1 % 1,1 % 1,1 % 1,1 % 1,1 % 1,1 % 1,1 % 1]
- (take 7 [(1::Rational),0..]) = [1 % 1,0 % 1,(-1) % 1,(-2) % 1,(-3) % 1,(-4) % 1,(-5) % 1]
- (take 7 [(5::Rational),2..]) = [5 % 1,2 % 1,(-1) % 1,(-4) % 1,(-7) % 1,(-10) % 1,(-13) % 1]
- (take 7 ([(1::Rational) .. 5])) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1]
- (take 4 ([(1::Rational) .. 1])) = [1 % 1]
- (take 7 ([(1::Rational) .. 0])) = []
- (take 7 ([(5::Rational) .. 0])) = []
- (take 7 [(5::Rational),4..1]) = [5 % 1,4 % 1,3 % 1,2 % 1,1 % 1]
- (take 7 [(5::Rational),3..1]) = [5 % 1,3 % 1,1 % 1]
- (take 7 [(5::Rational),3..2]) = [5 % 1,3 % 1,1 % 1]
- (take 7 [(1::Rational),2..1]) = [1 % 1]
- (take 7 [(2::Rational),1..2]) = [2 % 1]
- (take 7 [(2::Rational),1..1]) = [2 % 1,1 % 1]
- (take 7 [(2::Rational),3..1]) = []
-Testing Enum (Ratio Int):
- (succ (0::Ratio Int)) = 1 % 1
- (succ ((-1)::Ratio Int)) = 0 % 1
- pred (1::Ratio Int) = 0 % 1
- pred (0::Ratio Int) = (-1) % 1
- (map (toEnum::Int->Ratio Int) [1,minBound,maxBound]) = [1 % 1,(-9223372036854775808) % 1,9223372036854775807 % 1]
- (map fromEnum [(1::Ratio Int),42,45]) = [1,42,45]
- (take 7 [(1::Ratio Int)..]) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1,6 % 1,7 % 1]
- (take 7 [(-5::Ratio Int)..]) = [(-5) % 1,(-4) % 1,(-3) % 1,(-2) % 1,(-1) % 1,0 % 1,1 % 1]
- (take 7 [((toEnum ((maxBound::Int)-5))::Ratio Int)..]) = [9223372036854775802 % 1,9223372036854775803 % 1,9223372036854775804 % 1,9223372036854775805 % 1,9223372036854775806 % 1,9223372036854775807 % 1,(-9223372036854775808) % 1]
- (take 7 [(1::Ratio Int),2..]) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1,6 % 1,7 % 1]
- (take 7 [(1::Ratio Int),7..]) = [1 % 1,7 % 1,13 % 1,19 % 1,25 % 1,31 % 1,37 % 1]
- (take 7 [(1::Ratio Int),1..]) = [1 % 1,1 % 1,1 % 1,1 % 1,1 % 1,1 % 1,1 % 1]
- (take 7 [(1::Ratio Int),0..]) = [1 % 1,0 % 1,(-1) % 1,(-2) % 1,(-3) % 1,(-4) % 1,(-5) % 1]
- (take 7 [(5::Ratio Int),2..]) = [5 % 1,2 % 1,(-1) % 1,(-4) % 1,(-7) % 1,(-10) % 1,(-13) % 1]
- (take 7 [x, x-1 ..]) = [(-9223372036854775807) % 1,(-9223372036854775808) % 1,9223372036854775807 % 1,9223372036854775806 % 1,9223372036854775805 % 1,9223372036854775804 % 1,9223372036854775803 % 1]
- (take 7 [x, x-1 ..]) = [(-9223372036854775803) % 1,(-9223372036854775804) % 1,(-9223372036854775805) % 1,(-9223372036854775806) % 1,(-9223372036854775807) % 1,(-9223372036854775808) % 1,9223372036854775807 % 1]
- (take 7 [x, (x+1) ..]) = [9223372036854775802 % 1,9223372036854775803 % 1,9223372036854775804 % 1,9223372036854775805 % 1,9223372036854775806 % 1,9223372036854775807 % 1,(-9223372036854775808) % 1]
- (take 7 ([(1::Ratio Int) .. 5])) = [1 % 1,2 % 1,3 % 1,4 % 1,5 % 1]
- (take 4 ([(1::Ratio Int) .. 1])) = [1 % 1]
- (take 7 ([(1::Ratio Int) .. 0])) = []
- (take 7 ([(5::Ratio Int) .. 0])) = []
- (take 7 ([x..y])) = [9223372036854775802 % 1,9223372036854775803 % 1,9223372036854775804 % 1,9223372036854775805 % 1,9223372036854775806 % 1,9223372036854775807 % 1]
- (take 7 ([x..y])) = []
- (take 7 [(5::Ratio Int),4..1]) = [5 % 1,4 % 1,3 % 1,2 % 1,1 % 1]
- (take 7 [(5::Ratio Int),3..1]) = [5 % 1,3 % 1,1 % 1]
- (take 7 [(5::Ratio Int),3..2]) = [5 % 1,3 % 1,1 % 1]
- (take 7 [(1::Ratio Int),2..1]) = [1 % 1]
- (take 7 [(2::Ratio Int),1..2]) = [2 % 1]
- (take 7 [(2::Ratio Int),1..1]) = [2 % 1,1 % 1]
- (take 7 [(2::Ratio Int),3..1]) = []
- (take 7 [x,(x+1)..y]) = [9223372036854775803 % 1,9223372036854775804 % 1,9223372036854775805 % 1,9223372036854775806 % 1,9223372036854775807 % 1]
- (take 7 [x,(x-1)..y]) = [(-9223372036854775803) % 1,(-9223372036854775804) % 1,(-9223372036854775805) % 1,(-9223372036854775806) % 1,(-9223372036854775807) % 1,(-9223372036854775808) % 1]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum02.hs b/testsuite/tests/ghc-regress/lib/should_run/enum02.hs
deleted file mode 100644
index 3ba9d4912d..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum02.hs
+++ /dev/null
@@ -1,263 +0,0 @@
--- !!! Testing the Int Enum instances.
-module Main(main) where
-
-import Control.Exception
-import Prelude hiding (catch)
-import Data.Int
-
-main = do
- putStrLn "Testing Enum Int8:"
- testEnumInt8
- putStrLn "Testing Enum Int16:"
- testEnumInt16
- putStrLn "Testing Enum Int32:"
- testEnumInt32
- putStrLn "Testing Enum Int64:"
- testEnumInt64
-
-#define printTest(x) (do{ putStr ( " " ++ "x" ++ " = " ) ; print (x) })
-
-testEnumInt8 :: IO ()
-testEnumInt8 = do
- -- succ
- printTest ((succ (0::Int8)))
- printTest ((succ (minBound::Int8)))
- mayBomb (printTest ((succ (maxBound::Int8))))
-
- -- pred
- printTest (pred (1::Int8))
- printTest (pred (maxBound::Int8))
- mayBomb (printTest (pred (minBound::Int8)))
-
- -- toEnum
- printTest ((map (toEnum::Int->Int8) [1, fromIntegral (minBound::Int8), fromIntegral (maxBound::Int8)]))
- mayBomb (printTest ((toEnum (maxBound::Int))::Int8))
-
- -- fromEnum
- printTest ((map fromEnum [(1::Int8),minBound,maxBound]))
-
- -- [x..] aka enumFrom
- printTest ((take 7 [(1::Int8)..]))
- printTest ((take 7 [((maxBound::Int8)-5)..])) -- just in case it doesn't catch the upper bound..
-
- -- [x,y..] aka enumFromThen
- printTest ((take 7 [(1::Int8),2..]))
- printTest ((take 7 [(1::Int8),7..]))
- printTest ((take 7 [(1::Int8),1..]))
- printTest ((take 7 [(1::Int8),0..]))
- printTest ((take 7 [(5::Int8),2..]))
- let x = (minBound::Int8) + 1
- printTest ((take 7 [x, x-1 ..]))
- let x = (minBound::Int8) + 5
- printTest ((take 7 [x, x-1 ..]))
- let x = (maxBound::Int8) - 5
- printTest ((take 7 [x, (x+1) ..]))
-
- -- [x..y] aka enumFromTo
- printTest ((take 7 ([(1::Int8) .. 5])))
- printTest ((take 4 ([(1::Int8) .. 1])))
- printTest ((take 7 ([(1::Int8) .. 0])))
- printTest ((take 7 ([(5::Int8) .. 0])))
- printTest ((take 7 ([(maxBound-(5::Int8)) .. maxBound])))
- printTest ((take 7 ([(minBound+(5::Int8)) .. minBound])))
-
- -- [x,y..z] aka enumFromThenTo
- printTest ((take 7 [(5::Int8),4..1]))
- printTest ((take 7 [(5::Int8),3..1]))
- printTest ((take 7 [(5::Int8),3..2]))
- printTest ((take 7 [(1::Int8),2..1]))
- printTest ((take 7 [(2::Int8),1..2]))
- printTest ((take 7 [(2::Int8),1..1]))
- printTest ((take 7 [(2::Int8),3..1]))
-
- let x = (maxBound::Int8) - 4
- printTest ((take 7 [x,(x+1)..maxBound]))
- let x = (minBound::Int8) + 5
- printTest ((take 7 [x,(x-1)..minBound]))
-
-testEnumInt16 :: IO ()
-testEnumInt16 = do
- -- succ
- printTest ((succ (0::Int16)))
- printTest ((succ (minBound::Int16)))
- mayBomb (printTest ((succ (maxBound::Int16))))
-
- -- pred
- printTest (pred (1::Int16))
- printTest (pred (maxBound::Int16))
- mayBomb (printTest (pred (minBound::Int16)))
-
- -- toEnum
- printTest ((map (toEnum::Int->Int16) [1, fromIntegral (minBound::Int16), fromIntegral (maxBound::Int16)]))
- mayBomb (printTest ((toEnum (maxBound::Int))::Int16))
-
-
- -- fromEnum
- printTest ((map fromEnum [(1::Int16),minBound,maxBound]))
-
- -- [x..] aka enumFrom
- printTest ((take 7 [(1::Int16)..]))
- printTest ((take 7 [((maxBound::Int16)-5)..])) -- just in case it doesn't catch the upper bound..
-
- -- [x,y..] aka enumFromThen
- printTest ((take 7 [(1::Int16),2..]))
- printTest ((take 7 [(1::Int16),7..]))
- printTest ((take 7 [(1::Int16),1..]))
- printTest ((take 7 [(1::Int16),0..]))
- printTest ((take 7 [(5::Int16),2..]))
- let x = (minBound::Int16) + 1
- printTest ((take 7 [x, x-1 ..]))
- let x = (minBound::Int16) + 5
- printTest ((take 7 [x, x-1 ..]))
- let x = (maxBound::Int16) - 5
- printTest ((take 7 [x, (x+1) ..]))
-
- -- [x..y] aka enumFromTo
- printTest ((take 7 ([(1::Int16) .. 5])))
- printTest ((take 4 ([(1::Int16) .. 1])))
- printTest ((take 7 ([(1::Int16) .. 0])))
- printTest ((take 7 ([(5::Int16) .. 0])))
- printTest ((take 7 ([(maxBound-(5::Int16)) .. maxBound])))
- printTest ((take 7 ([(minBound+(5::Int16)) .. minBound])))
-
- -- [x,y..z] aka enumFromThenTo
- printTest ((take 7 [(5::Int16),4..1]))
- printTest ((take 7 [(5::Int16),3..1]))
- printTest ((take 7 [(5::Int16),3..2]))
- printTest ((take 7 [(1::Int16),2..1]))
- printTest ((take 7 [(2::Int16),1..2]))
- printTest ((take 7 [(2::Int16),1..1]))
- printTest ((take 7 [(2::Int16),3..1]))
-
- let x = (maxBound::Int16) - 4
- printTest ((take 7 [x,(x+1)..maxBound]))
- let x = (minBound::Int16) + 5
- printTest ((take 7 [x,(x-1)..minBound]))
-
-testEnumInt32 :: IO ()
-testEnumInt32 = do
- -- succ
- printTest ((succ (0::Int32)))
- printTest ((succ (minBound::Int32)))
- mayBomb (printTest ((succ (maxBound::Int32))))
-
- -- pred
- printTest (pred (1::Int32))
- printTest (pred (maxBound::Int32))
- mayBomb (printTest (pred (minBound::Int32)))
-
- -- toEnum
- printTest ((map (toEnum::Int->Int32) [1, fromIntegral (minBound::Int32), fromIntegral (maxBound::Int32)]))
- mayBomb (printTest ((toEnum (maxBound::Int))::Int32))
-
- -- fromEnum
- printTest ((map fromEnum [(1::Int32),minBound,maxBound]))
-
- -- [x..] aka enumFrom
- printTest ((take 7 [(1::Int32)..]))
- printTest ((take 7 [((maxBound::Int32)-5)..])) -- just in case it doesn't catch the upper bound..
-
- -- [x,y..] aka enumFromThen
- printTest ((take 7 [(1::Int32),2..]))
- printTest ((take 7 [(1::Int32),7..]))
- printTest ((take 7 [(1::Int32),1..]))
- printTest ((take 7 [(1::Int32),0..]))
- printTest ((take 7 [(5::Int32),2..]))
- let x = (minBound::Int32) + 1
- printTest ((take 7 [x, x-1 ..]))
- let x = (minBound::Int32) + 5
- printTest ((take 7 [x, x-1 ..]))
- let x = (maxBound::Int32) - 5
- printTest ((take 7 [x, (x+1) ..]))
-
- -- [x..y] aka enumFromTo
- printTest ((take 7 ([(1::Int32) .. 5])))
- printTest ((take 4 ([(1::Int32) .. 1])))
- printTest ((take 7 ([(1::Int32) .. 0])))
- printTest ((take 7 ([(5::Int32) .. 0])))
- printTest ((take 7 ([(maxBound-(5::Int32)) .. maxBound])))
- printTest ((take 7 ([(minBound+(5::Int32)) .. minBound])))
-
- -- [x,y..z] aka enumFromThenTo
- printTest ((take 7 [(5::Int32),4..1]))
- printTest ((take 7 [(5::Int32),3..1]))
- printTest ((take 7 [(5::Int32),3..2]))
- printTest ((take 7 [(1::Int32),2..1]))
- printTest ((take 7 [(2::Int32),1..2]))
- printTest ((take 7 [(2::Int32),1..1]))
- printTest ((take 7 [(2::Int32),3..1]))
-
- let x = (maxBound::Int32) - 4
- printTest ((take 7 [x,(x+1)..maxBound]))
- let x = (minBound::Int32) + 5
- printTest ((take 7 [x,(x-1)..minBound]))
-
-testEnumInt64 :: IO ()
-testEnumInt64 = do
- -- succ
- printTest ((succ (0::Int64)))
- printTest ((succ (minBound::Int64)))
- mayBomb (printTest ((succ (maxBound::Int64))))
-
- -- pred
- printTest (pred (1::Int64))
- printTest (pred (maxBound::Int64))
- mayBomb (printTest (pred (minBound::Int64)))
-
- -- toEnum
- mayBomb (printTest ((map (toEnum::Int->Int64) [1, fromIntegral (minBound::Int64), fromIntegral (maxBound::Int64)])))
- mayBomb (printTest ((toEnum (maxBound::Int))::Int64))
-
- -- fromEnum
- printTest ((map fromEnum [(1::Int64),fromIntegral (minBound::Int) ,fromIntegral (maxBound::Int)]))
- mayBomb (printTest (fromEnum (maxBound::Int64)))
-
- -- [x..] aka enumFrom
- printTest ((take 7 [(1::Int64)..]))
- printTest ((take 7 [((maxBound::Int64)-5)..])) -- just in case it doesn't catch the upper bound..
-
- -- [x,y..] aka enumFromThen
- printTest ((take 7 [(1::Int64),2..]))
- printTest ((take 7 [(1::Int64),7..]))
- printTest ((take 7 [(1::Int64),1..]))
- printTest ((take 7 [(1::Int64),0..]))
- printTest ((take 7 [(5::Int64),2..]))
- let x = (minBound::Int64) + 1
- printTest ((take 7 [x, x-1 ..]))
- let x = (minBound::Int64) + 5
- printTest ((take 7 [x, x-1 ..]))
- let x = (maxBound::Int64) - 5
- printTest ((take 7 [x, (x+1) ..]))
-
- -- [x..y] aka enumFromTo
- printTest ((take 7 ([(1::Int64) .. 5])))
- printTest ((take 4 ([(1::Int64) .. 1])))
- printTest ((take 7 ([(1::Int64) .. 0])))
- printTest ((take 7 ([(5::Int64) .. 0])))
- printTest ((take 7 ([(maxBound-(5::Int64)) .. maxBound])))
- printTest ((take 7 ([(minBound+(5::Int64)) .. minBound])))
-
- -- [x,y..z] aka enumFromThenTo
- printTest ((take 7 [(5::Int64),4..1]))
- printTest ((take 7 [(5::Int64),3..1]))
- printTest ((take 7 [(5::Int64),3..2]))
- printTest ((take 7 [(1::Int64),2..1]))
- printTest ((take 7 [(2::Int64),1..2]))
- printTest ((take 7 [(2::Int64),1..1]))
- printTest ((take 7 [(2::Int64),3..1]))
-
- let x = (maxBound::Int64) - 4
- printTest ((take 7 [x,(x+1)..maxBound]))
- let x = (minBound::Int64) + 5
- printTest ((take 7 [x,(x-1)..minBound]))
-
-
---
---
--- Utils
---
---
-
-
-mayBomb x = catch x (\(ErrorCall e) -> putStrLn ("error " ++ show e))
- `catch` (\e -> putStrLn ("Fail: " ++ show (e :: SomeException)))
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout b/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout
deleted file mode 100644
index 06d3bb5cae..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout
+++ /dev/null
@@ -1,141 +0,0 @@
-Testing Enum Int8:
- (succ (0::Int8)) = 1
- (succ (minBound::Int8)) = -127
- (succ (maxBound::Int8)) = error "Enum.succ{Int8}: tried to take `succ' of maxBound"
- pred (1::Int8) = 0
- pred (maxBound::Int8) = 126
- pred (minBound::Int8) = error "Enum.pred{Int8}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int8) [1, fromIntegral (minBound::Int8), fromIntegral (maxBound::Int8)]) = [1,-128,127]
- (toEnum (maxBound::Int))::Int8 = error "Enum.toEnum{Int8}: tag (2147483647) is outside of bounds (-128,127)"
- (map fromEnum [(1::Int8),minBound,maxBound]) = [1,-128,127]
- (take 7 [(1::Int8)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int8)-5)..]) = [122,123,124,125,126,127]
- (take 7 [(1::Int8),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int8),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int8),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int8),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int8),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-127,-128]
- (take 7 [x, x-1 ..]) = [-123,-124,-125,-126,-127,-128]
- (take 7 [x, (x+1) ..]) = [122,123,124,125,126,127]
- (take 7 ([(1::Int8) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int8) .. 1])) = [1]
- (take 7 ([(1::Int8) .. 0])) = []
- (take 7 ([(5::Int8) .. 0])) = []
- (take 7 ([(maxBound-(5::Int8)) .. maxBound])) = [122,123,124,125,126,127]
- (take 7 ([(minBound+(5::Int8)) .. minBound])) = []
- (take 7 [(5::Int8),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int8),3..1]) = [5,3,1]
- (take 7 [(5::Int8),3..2]) = [5,3]
- (take 7 [(1::Int8),2..1]) = [1]
- (take 7 [(2::Int8),1..2]) = [2]
- (take 7 [(2::Int8),1..1]) = [2,1]
- (take 7 [(2::Int8),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [123,124,125,126,127]
- (take 7 [x,(x-1)..minBound]) = [-123,-124,-125,-126,-127,-128]
-Testing Enum Int16:
- (succ (0::Int16)) = 1
- (succ (minBound::Int16)) = -32767
- (succ (maxBound::Int16)) = error "Enum.succ{Int16}: tried to take `succ' of maxBound"
- pred (1::Int16) = 0
- pred (maxBound::Int16) = 32766
- pred (minBound::Int16) = error "Enum.pred{Int16}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int16) [1, fromIntegral (minBound::Int16), fromIntegral (maxBound::Int16)]) = [1,-32768,32767]
- (toEnum (maxBound::Int))::Int16 = error "Enum.toEnum{Int16}: tag (2147483647) is outside of bounds (-32768,32767)"
- (map fromEnum [(1::Int16),minBound,maxBound]) = [1,-32768,32767]
- (take 7 [(1::Int16)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int16)-5)..]) = [32762,32763,32764,32765,32766,32767]
- (take 7 [(1::Int16),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int16),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int16),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int16),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int16),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-32767,-32768]
- (take 7 [x, x-1 ..]) = [-32763,-32764,-32765,-32766,-32767,-32768]
- (take 7 [x, (x+1) ..]) = [32762,32763,32764,32765,32766,32767]
- (take 7 ([(1::Int16) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int16) .. 1])) = [1]
- (take 7 ([(1::Int16) .. 0])) = []
- (take 7 ([(5::Int16) .. 0])) = []
- (take 7 ([(maxBound-(5::Int16)) .. maxBound])) = [32762,32763,32764,32765,32766,32767]
- (take 7 ([(minBound+(5::Int16)) .. minBound])) = []
- (take 7 [(5::Int16),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int16),3..1]) = [5,3,1]
- (take 7 [(5::Int16),3..2]) = [5,3]
- (take 7 [(1::Int16),2..1]) = [1]
- (take 7 [(2::Int16),1..2]) = [2]
- (take 7 [(2::Int16),1..1]) = [2,1]
- (take 7 [(2::Int16),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [32763,32764,32765,32766,32767]
- (take 7 [x,(x-1)..minBound]) = [-32763,-32764,-32765,-32766,-32767,-32768]
-Testing Enum Int32:
- (succ (0::Int32)) = 1
- (succ (minBound::Int32)) = -2147483647
- (succ (maxBound::Int32)) = error "Enum.succ{Int32}: tried to take `succ' of maxBound"
- pred (1::Int32) = 0
- pred (maxBound::Int32) = 2147483646
- pred (minBound::Int32) = error "Enum.pred{Int32}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int32) [1, fromIntegral (minBound::Int32), fromIntegral (maxBound::Int32)]) = [1,-2147483648,2147483647]
- (toEnum (maxBound::Int))::Int32 = 2147483647
- (map fromEnum [(1::Int32),minBound,maxBound]) = [1,-2147483648,2147483647]
- (take 7 [(1::Int32)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int32)-5)..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [(1::Int32),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int32),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int32),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int32),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int32),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-2147483647,-2147483648]
- (take 7 [x, x-1 ..]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
- (take 7 [x, (x+1) ..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 ([(1::Int32) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int32) .. 1])) = [1]
- (take 7 ([(1::Int32) .. 0])) = []
- (take 7 ([(5::Int32) .. 0])) = []
- (take 7 ([(maxBound-(5::Int32)) .. maxBound])) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 ([(minBound+(5::Int32)) .. minBound])) = []
- (take 7 [(5::Int32),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int32),3..1]) = [5,3,1]
- (take 7 [(5::Int32),3..2]) = [5,3]
- (take 7 [(1::Int32),2..1]) = [1]
- (take 7 [(2::Int32),1..2]) = [2]
- (take 7 [(2::Int32),1..1]) = [2,1]
- (take 7 [(2::Int32),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [x,(x-1)..minBound]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
-Testing Enum Int64:
- (succ (0::Int64)) = 1
- (succ (minBound::Int64)) = -9223372036854775807
- (succ (maxBound::Int64)) = error "Enum.succ{Int64}: tried to take `succ' of maxBound"
- pred (1::Int64) = 0
- pred (maxBound::Int64) = 9223372036854775806
- pred (minBound::Int64) = error "Enum.pred{Int64}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int64) [1, fromIntegral (minBound::Int64), fromIntegral (maxBound::Int64)]) = [1,0,-1]
- (toEnum (maxBound::Int))::Int64 = 2147483647
- (map fromEnum [(1::Int64),fromIntegral (minBound::Int) ,fromIntegral (maxBound::Int)]) = [1,-2147483648,2147483647]
- fromEnum (maxBound::Int64) = error "Enum.fromEnum{Int64}: value (9223372036854775807) is outside of Int's bounds (-2147483648,2147483647)"
- (take 7 [(1::Int64)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int64)-5)..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [(1::Int64),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int64),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int64),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int64),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int64),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-9223372036854775807,-9223372036854775808]
- (take 7 [x, x-1 ..]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
- (take 7 [x, (x+1) ..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(1::Int64) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int64) .. 1])) = [1]
- (take 7 ([(1::Int64) .. 0])) = []
- (take 7 ([(5::Int64) .. 0])) = []
- (take 7 ([(maxBound-(5::Int64)) .. maxBound])) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(minBound+(5::Int64)) .. minBound])) = []
- (take 7 [(5::Int64),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int64),3..1]) = [5,3,1]
- (take 7 [(5::Int64),3..2]) = [5,3]
- (take 7 [(1::Int64),2..1]) = [1]
- (take 7 [(2::Int64),1..2]) = [2]
- (take 7 [(2::Int64),1..1]) = [2,1]
- (take 7 [(2::Int64),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [x,(x-1)..minBound]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-alpha-dec-osf3 b/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-alpha-dec-osf3
deleted file mode 100644
index 23222450b5..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-alpha-dec-osf3
+++ /dev/null
@@ -1,141 +0,0 @@
-Testing Enum Int8:
- (succ (0::Int8)) = 1
- (succ (minBound::Int8)) = -127
- (succ (maxBound::Int8)) = error "Enum.succ{Int8}: tried to take `succ' of maxBound"
- pred (1::Int8) = 0
- pred (maxBound::Int8) = 126
- pred (minBound::Int8) = error "Enum.pred{Int8}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int8) [1, toInt (minBound::Int8), toInt (maxBound::Int8)]) = [1,-128,127]
- (toEnum (maxBound::Int))::Int8 = error "Enum.toEnum{Int8}: tag (9223372036854775807) is outside of bounds (-128,127)"
- (map fromEnum [(1::Int8),minBound,maxBound]) = [1,-128,127]
- (take 7 [(1::Int8)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int8)-5)..]) = [122,123,124,125,126,127]
- (take 7 [(1::Int8),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int8),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int8),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int8),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int8),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-127,-128]
- (take 7 [x, x-1 ..]) = [-123,-124,-125,-126,-127,-128]
- (take 7 [x, (x+1) ..]) = [122,123,124,125,126,127]
- (take 7 ([(1::Int8) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int8) .. 1])) = [1]
- (take 7 ([(1::Int8) .. 0])) = []
- (take 7 ([(5::Int8) .. 0])) = []
- (take 7 ([(maxBound-(5::Int8)) .. maxBound])) = [122,123,124,125,126,127]
- (take 7 ([(minBound+(5::Int8)) .. minBound])) = []
- (take 7 [(5::Int8),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int8),3..1]) = [5,3,1]
- (take 7 [(5::Int8),3..2]) = [5,3]
- (take 7 [(1::Int8),2..1]) = [1]
- (take 7 [(2::Int8),1..2]) = [2]
- (take 7 [(2::Int8),1..1]) = [2,1]
- (take 7 [(2::Int8),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [123,124,125,126,127]
- (take 7 [x,(x-1)..minBound]) = [-123,-124,-125,-126,-127,-128]
-Testing Enum Int16:
- (succ (0::Int16)) = 1
- (succ (minBound::Int16)) = -32767
- (succ (maxBound::Int16)) = error "Enum.succ{Int16}: tried to take `succ' of maxBound"
- pred (1::Int16) = 0
- pred (maxBound::Int16) = 32766
- pred (minBound::Int16) = error "Enum.pred{Int16}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int16) [1, toInt (minBound::Int16), toInt (maxBound::Int16)]) = [1,-32768,32767]
- (toEnum (maxBound::Int))::Int16 = error "Enum.toEnum{Int16}: tag (9223372036854775807) is outside of bounds (-32768,32767)"
- (map fromEnum [(1::Int16),minBound,maxBound]) = [1,-32768,32767]
- (take 7 [(1::Int16)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int16)-5)..]) = [32762,32763,32764,32765,32766,32767]
- (take 7 [(1::Int16),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int16),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int16),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int16),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int16),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-32767,-32768]
- (take 7 [x, x-1 ..]) = [-32763,-32764,-32765,-32766,-32767,-32768]
- (take 7 [x, (x+1) ..]) = [32762,32763,32764,32765,32766,32767]
- (take 7 ([(1::Int16) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int16) .. 1])) = [1]
- (take 7 ([(1::Int16) .. 0])) = []
- (take 7 ([(5::Int16) .. 0])) = []
- (take 7 ([(maxBound-(5::Int16)) .. maxBound])) = [32762,32763,32764,32765,32766,32767]
- (take 7 ([(minBound+(5::Int16)) .. minBound])) = []
- (take 7 [(5::Int16),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int16),3..1]) = [5,3,1]
- (take 7 [(5::Int16),3..2]) = [5,3]
- (take 7 [(1::Int16),2..1]) = [1]
- (take 7 [(2::Int16),1..2]) = [2]
- (take 7 [(2::Int16),1..1]) = [2,1]
- (take 7 [(2::Int16),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [32763,32764,32765,32766,32767]
- (take 7 [x,(x-1)..minBound]) = [-32763,-32764,-32765,-32766,-32767,-32768]
-Testing Enum Int32:
- (succ (0::Int32)) = 1
- (succ (minBound::Int32)) = -2147483647
- (succ (maxBound::Int32)) = error "Enum.succ{Int32}: tried to take `succ' of maxBound"
- pred (1::Int32) = 0
- pred (maxBound::Int32) = 2147483646
- pred (minBound::Int32) = error "Enum.pred{Int32}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int32) [1, toInt (minBound::Int32), toInt (maxBound::Int32)]) = [1,-2147483648,2147483647]
- (toEnum (maxBound::Int))::Int32 = error "Enum.toEnum{Int32}: tag (9223372036854775807) is outside of bounds (-2147483648,2147483647)"
- (map fromEnum [(1::Int32),minBound,maxBound]) = [1,-2147483648,2147483647]
- (take 7 [(1::Int32)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int32)-5)..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [(1::Int32),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int32),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int32),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int32),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int32),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-2147483647,-2147483648]
- (take 7 [x, x-1 ..]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
- (take 7 [x, (x+1) ..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 ([(1::Int32) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int32) .. 1])) = [1]
- (take 7 ([(1::Int32) .. 0])) = []
- (take 7 ([(5::Int32) .. 0])) = []
- (take 7 ([(maxBound-(5::Int32)) .. maxBound])) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 ([(minBound+(5::Int32)) .. minBound])) = []
- (take 7 [(5::Int32),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int32),3..1]) = [5,3,1]
- (take 7 [(5::Int32),3..2]) = [5,3]
- (take 7 [(1::Int32),2..1]) = [1]
- (take 7 [(2::Int32),1..2]) = [2]
- (take 7 [(2::Int32),1..1]) = [2,1]
- (take 7 [(2::Int32),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [x,(x-1)..minBound]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
-Testing Enum Int64:
- (succ (0::Int64)) = 1
- (succ (minBound::Int64)) = -9223372036854775807
- (succ (maxBound::Int64)) = error "Enum.succ{Int64}: tried to take `succ' of maxBound"
- pred (1::Int64) = 0
- pred (maxBound::Int64) = 9223372036854775806
- pred (minBound::Int64) = error "Enum.pred{Int64}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int64) [1, toInt (minBound::Int64), toInt (maxBound::Int64)]) = [1,-9223372036854775808,9223372036854775807]
- (toEnum (maxBound::Int))::Int64 = 9223372036854775807
- (map fromEnum [(1::Int64),fromInt (minBound::Int) ,fromInt (maxBound::Int)]) = [1,-9223372036854775808,9223372036854775807]
- fromEnum (maxBound::Int64) = 9223372036854775807
- (take 7 [(1::Int64)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int64)-5)..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [(1::Int64),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int64),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int64),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int64),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int64),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-9223372036854775807,-9223372036854775808]
- (take 7 [x, x-1 ..]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
- (take 7 [x, (x+1) ..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(1::Int64) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int64) .. 1])) = [1]
- (take 7 ([(1::Int64) .. 0])) = []
- (take 7 ([(5::Int64) .. 0])) = []
- (take 7 ([(maxBound-(5::Int64)) .. maxBound])) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(minBound+(5::Int64)) .. minBound])) = []
- (take 7 [(5::Int64),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int64),3..1]) = [5,3,1]
- (take 7 [(5::Int64),3..2]) = [5,3]
- (take 7 [(1::Int64),2..1]) = [1]
- (take 7 [(2::Int64),1..2]) = [2]
- (take 7 [(2::Int64),1..1]) = [2,1]
- (take 7 [(2::Int64),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [x,(x-1)..minBound]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-hugs b/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-hugs
deleted file mode 100644
index a28b84b187..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-hugs
+++ /dev/null
@@ -1,141 +0,0 @@
-Testing Enum Int8:
- (succ (0::Int8)) = 1
- (succ (minBound::Int8)) = -127
- (succ (maxBound::Int8)) = error "succ: applied to maxBound"
- pred (1::Int8) = 0
- pred (maxBound::Int8) = 126
- pred (minBound::Int8) = error "pred: applied to minBound"
- (map (toEnum::Int->Int8) [1, fromIntegral (minBound::Int8), fromIntegral (maxBound::Int8)]) = [1,-128,127]
- (toEnum (maxBound::Int))::Int8 = -1
- (map fromEnum [(1::Int8),minBound,maxBound]) = [1,-128,127]
- (take 7 [(1::Int8)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int8)-5)..]) = [122,123,124,125,126,127]
- (take 7 [(1::Int8),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int8),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int8),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int8),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int8),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-127,-128]
- (take 7 [x, x-1 ..]) = [-123,-124,-125,-126,-127,-128]
- (take 7 [x, (x+1) ..]) = [122,123,124,125,126,127]
- (take 7 ([(1::Int8) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int8) .. 1])) = [1]
- (take 7 ([(1::Int8) .. 0])) = []
- (take 7 ([(5::Int8) .. 0])) = []
- (take 7 ([(maxBound-(5::Int8)) .. maxBound])) = [122,123,124,125,126,127]
- (take 7 ([(minBound+(5::Int8)) .. minBound])) = []
- (take 7 [(5::Int8),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int8),3..1]) = [5,3,1]
- (take 7 [(5::Int8),3..2]) = [5,3]
- (take 7 [(1::Int8),2..1]) = [1]
- (take 7 [(2::Int8),1..2]) = [2]
- (take 7 [(2::Int8),1..1]) = [2,1]
- (take 7 [(2::Int8),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [123,124,125,126,127]
- (take 7 [x,(x-1)..minBound]) = [-123,-124,-125,-126,-127,-128]
-Testing Enum Int16:
- (succ (0::Int16)) = 1
- (succ (minBound::Int16)) = -32767
- (succ (maxBound::Int16)) = error "succ: applied to maxBound"
- pred (1::Int16) = 0
- pred (maxBound::Int16) = 32766
- pred (minBound::Int16) = error "pred: applied to minBound"
- (map (toEnum::Int->Int16) [1, fromIntegral (minBound::Int16), fromIntegral (maxBound::Int16)]) = [1,-32768,32767]
- (toEnum (maxBound::Int))::Int16 = -1
- (map fromEnum [(1::Int16),minBound,maxBound]) = [1,-32768,32767]
- (take 7 [(1::Int16)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int16)-5)..]) = [32762,32763,32764,32765,32766,32767]
- (take 7 [(1::Int16),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int16),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int16),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int16),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int16),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-32767,-32768]
- (take 7 [x, x-1 ..]) = [-32763,-32764,-32765,-32766,-32767,-32768]
- (take 7 [x, (x+1) ..]) = [32762,32763,32764,32765,32766,32767]
- (take 7 ([(1::Int16) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int16) .. 1])) = [1]
- (take 7 ([(1::Int16) .. 0])) = []
- (take 7 ([(5::Int16) .. 0])) = []
- (take 7 ([(maxBound-(5::Int16)) .. maxBound])) = [32762,32763,32764,32765,32766,32767]
- (take 7 ([(minBound+(5::Int16)) .. minBound])) = []
- (take 7 [(5::Int16),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int16),3..1]) = [5,3,1]
- (take 7 [(5::Int16),3..2]) = [5,3]
- (take 7 [(1::Int16),2..1]) = [1]
- (take 7 [(2::Int16),1..2]) = [2]
- (take 7 [(2::Int16),1..1]) = [2,1]
- (take 7 [(2::Int16),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [32763,32764,32765,32766,32767]
- (take 7 [x,(x-1)..minBound]) = [-32763,-32764,-32765,-32766,-32767,-32768]
-Testing Enum Int32:
- (succ (0::Int32)) = 1
- (succ (minBound::Int32)) = -2147483647
- (succ (maxBound::Int32)) = error "succ: applied to maxBound"
- pred (1::Int32) = 0
- pred (maxBound::Int32) = 2147483646
- pred (minBound::Int32) = error "pred: applied to minBound"
- (map (toEnum::Int->Int32) [1, fromIntegral (minBound::Int32), fromIntegral (maxBound::Int32)]) = [1,-2147483648,2147483647]
- (toEnum (maxBound::Int))::Int32 = 2147483647
- (map fromEnum [(1::Int32),minBound,maxBound]) = [1,-2147483648,2147483647]
- (take 7 [(1::Int32)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int32)-5)..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [(1::Int32),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int32),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int32),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int32),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int32),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-2147483647,-2147483648]
- (take 7 [x, x-1 ..]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
- (take 7 [x, (x+1) ..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 ([(1::Int32) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int32) .. 1])) = [1]
- (take 7 ([(1::Int32) .. 0])) = []
- (take 7 ([(5::Int32) .. 0])) = []
- (take 7 ([(maxBound-(5::Int32)) .. maxBound])) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 ([(minBound+(5::Int32)) .. minBound])) = []
- (take 7 [(5::Int32),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int32),3..1]) = [5,3,1]
- (take 7 [(5::Int32),3..2]) = [5,3]
- (take 7 [(1::Int32),2..1]) = [1]
- (take 7 [(2::Int32),1..2]) = [2]
- (take 7 [(2::Int32),1..1]) = [2,1]
- (take 7 [(2::Int32),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [x,(x-1)..minBound]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
-Testing Enum Int64:
- (succ (0::Int64)) = 1
- (succ (minBound::Int64)) = -9223372036854775807
- (succ (maxBound::Int64)) = error "succ: applied to maxBound"
- pred (1::Int64) = 0
- pred (maxBound::Int64) = 9223372036854775806
- pred (minBound::Int64) = error "pred: applied to minBound"
- (map (toEnum::Int->Int64) [1, fromIntegral (minBound::Int64), fromIntegral (maxBound::Int64)]) = [1,Fail: arithmetic overflow
- (toEnum (maxBound::Int))::Int64 = 2147483647
- (map fromEnum [(1::Int64),fromIntegral (minBound::Int) ,fromIntegral (maxBound::Int)]) = [1,-2147483648,2147483647]
- fromEnum (maxBound::Int64) = Fail: arithmetic overflow
- (take 7 [(1::Int64)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int64)-5)..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [(1::Int64),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int64),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int64),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int64),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int64),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-9223372036854775807,-9223372036854775808]
- (take 7 [x, x-1 ..]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
- (take 7 [x, (x+1) ..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(1::Int64) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int64) .. 1])) = [1]
- (take 7 ([(1::Int64) .. 0])) = []
- (take 7 ([(5::Int64) .. 0])) = []
- (take 7 ([(maxBound-(5::Int64)) .. maxBound])) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(minBound+(5::Int64)) .. minBound])) = []
- (take 7 [(5::Int64),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int64),3..1]) = [5,3,1]
- (take 7 [(5::Int64),3..2]) = [5,3]
- (take 7 [(1::Int64),2..1]) = [1]
- (take 7 [(2::Int64),1..2]) = [2]
- (take 7 [(2::Int64),1..1]) = [2,1]
- (take 7 [(2::Int64),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [x,(x-1)..minBound]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-mips-sgi-irix b/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-mips-sgi-irix
deleted file mode 100644
index 3177d541f4..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-mips-sgi-irix
+++ /dev/null
@@ -1,141 +0,0 @@
-Testing Enum Int8:
- (succ (0::Int8)) = 1
- (succ (minBound::Int8)) = -127
- (succ (maxBound::Int8)) = error "Enum.succ{Int8}: tried to take `succ' of maxBound"
- pred (1::Int8) = 0
- pred (maxBound::Int8) = 126
- pred (minBound::Int8) = error "Enum.pred{Int8}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int8) [1, fromIntegral (minBound::Int8), fromIntegral (maxBound::Int8)]) = [1,-128,127]
- (toEnum (maxBound::Int))::Int8 = error "Enum.toEnum{Int8}: tag (9223372036854775807) is outside of bounds (-128,127)"
- (map fromEnum [(1::Int8),minBound,maxBound]) = [1,-128,127]
- (take 7 [(1::Int8)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int8)-5)..]) = [122,123,124,125,126,127]
- (take 7 [(1::Int8),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int8),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int8),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int8),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int8),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-127,-128]
- (take 7 [x, x-1 ..]) = [-123,-124,-125,-126,-127,-128]
- (take 7 [x, (x+1) ..]) = [122,123,124,125,126,127]
- (take 7 ([(1::Int8) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int8) .. 1])) = [1]
- (take 7 ([(1::Int8) .. 0])) = []
- (take 7 ([(5::Int8) .. 0])) = []
- (take 7 ([(maxBound-(5::Int8)) .. maxBound])) = [122,123,124,125,126,127]
- (take 7 ([(minBound+(5::Int8)) .. minBound])) = []
- (take 7 [(5::Int8),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int8),3..1]) = [5,3,1]
- (take 7 [(5::Int8),3..2]) = [5,3]
- (take 7 [(1::Int8),2..1]) = [1]
- (take 7 [(2::Int8),1..2]) = [2]
- (take 7 [(2::Int8),1..1]) = [2,1]
- (take 7 [(2::Int8),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [123,124,125,126,127]
- (take 7 [x,(x-1)..minBound]) = [-123,-124,-125,-126,-127,-128]
-Testing Enum Int16:
- (succ (0::Int16)) = 1
- (succ (minBound::Int16)) = -32767
- (succ (maxBound::Int16)) = error "Enum.succ{Int16}: tried to take `succ' of maxBound"
- pred (1::Int16) = 0
- pred (maxBound::Int16) = 32766
- pred (minBound::Int16) = error "Enum.pred{Int16}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int16) [1, fromIntegral (minBound::Int16), fromIntegral (maxBound::Int16)]) = [1,-32768,32767]
- (toEnum (maxBound::Int))::Int16 = error "Enum.toEnum{Int16}: tag (9223372036854775807) is outside of bounds (-32768,32767)"
- (map fromEnum [(1::Int16),minBound,maxBound]) = [1,-32768,32767]
- (take 7 [(1::Int16)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int16)-5)..]) = [32762,32763,32764,32765,32766,32767]
- (take 7 [(1::Int16),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int16),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int16),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int16),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int16),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-32767,-32768]
- (take 7 [x, x-1 ..]) = [-32763,-32764,-32765,-32766,-32767,-32768]
- (take 7 [x, (x+1) ..]) = [32762,32763,32764,32765,32766,32767]
- (take 7 ([(1::Int16) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int16) .. 1])) = [1]
- (take 7 ([(1::Int16) .. 0])) = []
- (take 7 ([(5::Int16) .. 0])) = []
- (take 7 ([(maxBound-(5::Int16)) .. maxBound])) = [32762,32763,32764,32765,32766,32767]
- (take 7 ([(minBound+(5::Int16)) .. minBound])) = []
- (take 7 [(5::Int16),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int16),3..1]) = [5,3,1]
- (take 7 [(5::Int16),3..2]) = [5,3]
- (take 7 [(1::Int16),2..1]) = [1]
- (take 7 [(2::Int16),1..2]) = [2]
- (take 7 [(2::Int16),1..1]) = [2,1]
- (take 7 [(2::Int16),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [32763,32764,32765,32766,32767]
- (take 7 [x,(x-1)..minBound]) = [-32763,-32764,-32765,-32766,-32767,-32768]
-Testing Enum Int32:
- (succ (0::Int32)) = 1
- (succ (minBound::Int32)) = -2147483647
- (succ (maxBound::Int32)) = error "Enum.succ{Int32}: tried to take `succ' of maxBound"
- pred (1::Int32) = 0
- pred (maxBound::Int32) = 2147483646
- pred (minBound::Int32) = error "Enum.pred{Int32}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int32) [1, fromIntegral (minBound::Int32), fromIntegral (maxBound::Int32)]) = [1,-2147483648,2147483647]
- (toEnum (maxBound::Int))::Int32 = error "Enum.toEnum{Int32}: tag (9223372036854775807) is outside of bounds (-2147483648,2147483647)"
- (map fromEnum [(1::Int32),minBound,maxBound]) = [1,-2147483648,2147483647]
- (take 7 [(1::Int32)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int32)-5)..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [(1::Int32),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int32),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int32),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int32),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int32),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-2147483647,-2147483648]
- (take 7 [x, x-1 ..]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
- (take 7 [x, (x+1) ..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 ([(1::Int32) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int32) .. 1])) = [1]
- (take 7 ([(1::Int32) .. 0])) = []
- (take 7 ([(5::Int32) .. 0])) = []
- (take 7 ([(maxBound-(5::Int32)) .. maxBound])) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 ([(minBound+(5::Int32)) .. minBound])) = []
- (take 7 [(5::Int32),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int32),3..1]) = [5,3,1]
- (take 7 [(5::Int32),3..2]) = [5,3]
- (take 7 [(1::Int32),2..1]) = [1]
- (take 7 [(2::Int32),1..2]) = [2]
- (take 7 [(2::Int32),1..1]) = [2,1]
- (take 7 [(2::Int32),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [x,(x-1)..minBound]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
-Testing Enum Int64:
- (succ (0::Int64)) = 1
- (succ (minBound::Int64)) = -9223372036854775807
- (succ (maxBound::Int64)) = error "Enum.succ{Int64}: tried to take `succ' of maxBound"
- pred (1::Int64) = 0
- pred (maxBound::Int64) = 9223372036854775806
- pred (minBound::Int64) = error "Enum.pred{Int64}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int64) [1, fromIntegral (minBound::Int64), fromIntegral (maxBound::Int64)]) = [1,-9223372036854775808,9223372036854775807]
- (toEnum (maxBound::Int))::Int64 = 9223372036854775807
- (map fromEnum [(1::Int64),fromIntegral (minBound::Int) ,fromIntegral (maxBound::Int)]) = [1,-9223372036854775808,9223372036854775807]
- fromEnum (maxBound::Int64) = 9223372036854775807
- (take 7 [(1::Int64)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int64)-5)..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [(1::Int64),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int64),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int64),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int64),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int64),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-9223372036854775807,-9223372036854775808]
- (take 7 [x, x-1 ..]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
- (take 7 [x, (x+1) ..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(1::Int64) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int64) .. 1])) = [1]
- (take 7 ([(1::Int64) .. 0])) = []
- (take 7 ([(5::Int64) .. 0])) = []
- (take 7 ([(maxBound-(5::Int64)) .. maxBound])) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(minBound+(5::Int64)) .. minBound])) = []
- (take 7 [(5::Int64),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int64),3..1]) = [5,3,1]
- (take 7 [(5::Int64),3..2]) = [5,3]
- (take 7 [(1::Int64),2..1]) = [1]
- (take 7 [(2::Int64),1..2]) = [2]
- (take 7 [(2::Int64),1..1]) = [2,1]
- (take 7 [(2::Int64),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [x,(x-1)..minBound]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-ws-64 b/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-ws-64
deleted file mode 100644
index 3177d541f4..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-ws-64
+++ /dev/null
@@ -1,141 +0,0 @@
-Testing Enum Int8:
- (succ (0::Int8)) = 1
- (succ (minBound::Int8)) = -127
- (succ (maxBound::Int8)) = error "Enum.succ{Int8}: tried to take `succ' of maxBound"
- pred (1::Int8) = 0
- pred (maxBound::Int8) = 126
- pred (minBound::Int8) = error "Enum.pred{Int8}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int8) [1, fromIntegral (minBound::Int8), fromIntegral (maxBound::Int8)]) = [1,-128,127]
- (toEnum (maxBound::Int))::Int8 = error "Enum.toEnum{Int8}: tag (9223372036854775807) is outside of bounds (-128,127)"
- (map fromEnum [(1::Int8),minBound,maxBound]) = [1,-128,127]
- (take 7 [(1::Int8)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int8)-5)..]) = [122,123,124,125,126,127]
- (take 7 [(1::Int8),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int8),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int8),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int8),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int8),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-127,-128]
- (take 7 [x, x-1 ..]) = [-123,-124,-125,-126,-127,-128]
- (take 7 [x, (x+1) ..]) = [122,123,124,125,126,127]
- (take 7 ([(1::Int8) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int8) .. 1])) = [1]
- (take 7 ([(1::Int8) .. 0])) = []
- (take 7 ([(5::Int8) .. 0])) = []
- (take 7 ([(maxBound-(5::Int8)) .. maxBound])) = [122,123,124,125,126,127]
- (take 7 ([(minBound+(5::Int8)) .. minBound])) = []
- (take 7 [(5::Int8),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int8),3..1]) = [5,3,1]
- (take 7 [(5::Int8),3..2]) = [5,3]
- (take 7 [(1::Int8),2..1]) = [1]
- (take 7 [(2::Int8),1..2]) = [2]
- (take 7 [(2::Int8),1..1]) = [2,1]
- (take 7 [(2::Int8),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [123,124,125,126,127]
- (take 7 [x,(x-1)..minBound]) = [-123,-124,-125,-126,-127,-128]
-Testing Enum Int16:
- (succ (0::Int16)) = 1
- (succ (minBound::Int16)) = -32767
- (succ (maxBound::Int16)) = error "Enum.succ{Int16}: tried to take `succ' of maxBound"
- pred (1::Int16) = 0
- pred (maxBound::Int16) = 32766
- pred (minBound::Int16) = error "Enum.pred{Int16}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int16) [1, fromIntegral (minBound::Int16), fromIntegral (maxBound::Int16)]) = [1,-32768,32767]
- (toEnum (maxBound::Int))::Int16 = error "Enum.toEnum{Int16}: tag (9223372036854775807) is outside of bounds (-32768,32767)"
- (map fromEnum [(1::Int16),minBound,maxBound]) = [1,-32768,32767]
- (take 7 [(1::Int16)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int16)-5)..]) = [32762,32763,32764,32765,32766,32767]
- (take 7 [(1::Int16),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int16),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int16),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int16),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int16),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-32767,-32768]
- (take 7 [x, x-1 ..]) = [-32763,-32764,-32765,-32766,-32767,-32768]
- (take 7 [x, (x+1) ..]) = [32762,32763,32764,32765,32766,32767]
- (take 7 ([(1::Int16) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int16) .. 1])) = [1]
- (take 7 ([(1::Int16) .. 0])) = []
- (take 7 ([(5::Int16) .. 0])) = []
- (take 7 ([(maxBound-(5::Int16)) .. maxBound])) = [32762,32763,32764,32765,32766,32767]
- (take 7 ([(minBound+(5::Int16)) .. minBound])) = []
- (take 7 [(5::Int16),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int16),3..1]) = [5,3,1]
- (take 7 [(5::Int16),3..2]) = [5,3]
- (take 7 [(1::Int16),2..1]) = [1]
- (take 7 [(2::Int16),1..2]) = [2]
- (take 7 [(2::Int16),1..1]) = [2,1]
- (take 7 [(2::Int16),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [32763,32764,32765,32766,32767]
- (take 7 [x,(x-1)..minBound]) = [-32763,-32764,-32765,-32766,-32767,-32768]
-Testing Enum Int32:
- (succ (0::Int32)) = 1
- (succ (minBound::Int32)) = -2147483647
- (succ (maxBound::Int32)) = error "Enum.succ{Int32}: tried to take `succ' of maxBound"
- pred (1::Int32) = 0
- pred (maxBound::Int32) = 2147483646
- pred (minBound::Int32) = error "Enum.pred{Int32}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int32) [1, fromIntegral (minBound::Int32), fromIntegral (maxBound::Int32)]) = [1,-2147483648,2147483647]
- (toEnum (maxBound::Int))::Int32 = error "Enum.toEnum{Int32}: tag (9223372036854775807) is outside of bounds (-2147483648,2147483647)"
- (map fromEnum [(1::Int32),minBound,maxBound]) = [1,-2147483648,2147483647]
- (take 7 [(1::Int32)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int32)-5)..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [(1::Int32),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int32),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int32),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int32),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int32),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-2147483647,-2147483648]
- (take 7 [x, x-1 ..]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
- (take 7 [x, (x+1) ..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 ([(1::Int32) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int32) .. 1])) = [1]
- (take 7 ([(1::Int32) .. 0])) = []
- (take 7 ([(5::Int32) .. 0])) = []
- (take 7 ([(maxBound-(5::Int32)) .. maxBound])) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 ([(minBound+(5::Int32)) .. minBound])) = []
- (take 7 [(5::Int32),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int32),3..1]) = [5,3,1]
- (take 7 [(5::Int32),3..2]) = [5,3]
- (take 7 [(1::Int32),2..1]) = [1]
- (take 7 [(2::Int32),1..2]) = [2]
- (take 7 [(2::Int32),1..1]) = [2,1]
- (take 7 [(2::Int32),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [x,(x-1)..minBound]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
-Testing Enum Int64:
- (succ (0::Int64)) = 1
- (succ (minBound::Int64)) = -9223372036854775807
- (succ (maxBound::Int64)) = error "Enum.succ{Int64}: tried to take `succ' of maxBound"
- pred (1::Int64) = 0
- pred (maxBound::Int64) = 9223372036854775806
- pred (minBound::Int64) = error "Enum.pred{Int64}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int64) [1, fromIntegral (minBound::Int64), fromIntegral (maxBound::Int64)]) = [1,-9223372036854775808,9223372036854775807]
- (toEnum (maxBound::Int))::Int64 = 9223372036854775807
- (map fromEnum [(1::Int64),fromIntegral (minBound::Int) ,fromIntegral (maxBound::Int)]) = [1,-9223372036854775808,9223372036854775807]
- fromEnum (maxBound::Int64) = 9223372036854775807
- (take 7 [(1::Int64)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int64)-5)..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [(1::Int64),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int64),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int64),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int64),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int64),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-9223372036854775807,-9223372036854775808]
- (take 7 [x, x-1 ..]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
- (take 7 [x, (x+1) ..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(1::Int64) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int64) .. 1])) = [1]
- (take 7 ([(1::Int64) .. 0])) = []
- (take 7 ([(5::Int64) .. 0])) = []
- (take 7 ([(maxBound-(5::Int64)) .. maxBound])) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(minBound+(5::Int64)) .. minBound])) = []
- (take 7 [(5::Int64),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int64),3..1]) = [5,3,1]
- (take 7 [(5::Int64),3..2]) = [5,3]
- (take 7 [(1::Int64),2..1]) = [1]
- (take 7 [(2::Int64),1..2]) = [2]
- (take 7 [(2::Int64),1..1]) = [2,1]
- (take 7 [(2::Int64),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [x,(x-1)..minBound]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-x86_64-unknown-openbsd b/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-x86_64-unknown-openbsd
deleted file mode 100644
index 3177d541f4..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum02.stdout-x86_64-unknown-openbsd
+++ /dev/null
@@ -1,141 +0,0 @@
-Testing Enum Int8:
- (succ (0::Int8)) = 1
- (succ (minBound::Int8)) = -127
- (succ (maxBound::Int8)) = error "Enum.succ{Int8}: tried to take `succ' of maxBound"
- pred (1::Int8) = 0
- pred (maxBound::Int8) = 126
- pred (minBound::Int8) = error "Enum.pred{Int8}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int8) [1, fromIntegral (minBound::Int8), fromIntegral (maxBound::Int8)]) = [1,-128,127]
- (toEnum (maxBound::Int))::Int8 = error "Enum.toEnum{Int8}: tag (9223372036854775807) is outside of bounds (-128,127)"
- (map fromEnum [(1::Int8),minBound,maxBound]) = [1,-128,127]
- (take 7 [(1::Int8)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int8)-5)..]) = [122,123,124,125,126,127]
- (take 7 [(1::Int8),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int8),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int8),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int8),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int8),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-127,-128]
- (take 7 [x, x-1 ..]) = [-123,-124,-125,-126,-127,-128]
- (take 7 [x, (x+1) ..]) = [122,123,124,125,126,127]
- (take 7 ([(1::Int8) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int8) .. 1])) = [1]
- (take 7 ([(1::Int8) .. 0])) = []
- (take 7 ([(5::Int8) .. 0])) = []
- (take 7 ([(maxBound-(5::Int8)) .. maxBound])) = [122,123,124,125,126,127]
- (take 7 ([(minBound+(5::Int8)) .. minBound])) = []
- (take 7 [(5::Int8),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int8),3..1]) = [5,3,1]
- (take 7 [(5::Int8),3..2]) = [5,3]
- (take 7 [(1::Int8),2..1]) = [1]
- (take 7 [(2::Int8),1..2]) = [2]
- (take 7 [(2::Int8),1..1]) = [2,1]
- (take 7 [(2::Int8),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [123,124,125,126,127]
- (take 7 [x,(x-1)..minBound]) = [-123,-124,-125,-126,-127,-128]
-Testing Enum Int16:
- (succ (0::Int16)) = 1
- (succ (minBound::Int16)) = -32767
- (succ (maxBound::Int16)) = error "Enum.succ{Int16}: tried to take `succ' of maxBound"
- pred (1::Int16) = 0
- pred (maxBound::Int16) = 32766
- pred (minBound::Int16) = error "Enum.pred{Int16}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int16) [1, fromIntegral (minBound::Int16), fromIntegral (maxBound::Int16)]) = [1,-32768,32767]
- (toEnum (maxBound::Int))::Int16 = error "Enum.toEnum{Int16}: tag (9223372036854775807) is outside of bounds (-32768,32767)"
- (map fromEnum [(1::Int16),minBound,maxBound]) = [1,-32768,32767]
- (take 7 [(1::Int16)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int16)-5)..]) = [32762,32763,32764,32765,32766,32767]
- (take 7 [(1::Int16),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int16),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int16),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int16),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int16),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-32767,-32768]
- (take 7 [x, x-1 ..]) = [-32763,-32764,-32765,-32766,-32767,-32768]
- (take 7 [x, (x+1) ..]) = [32762,32763,32764,32765,32766,32767]
- (take 7 ([(1::Int16) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int16) .. 1])) = [1]
- (take 7 ([(1::Int16) .. 0])) = []
- (take 7 ([(5::Int16) .. 0])) = []
- (take 7 ([(maxBound-(5::Int16)) .. maxBound])) = [32762,32763,32764,32765,32766,32767]
- (take 7 ([(minBound+(5::Int16)) .. minBound])) = []
- (take 7 [(5::Int16),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int16),3..1]) = [5,3,1]
- (take 7 [(5::Int16),3..2]) = [5,3]
- (take 7 [(1::Int16),2..1]) = [1]
- (take 7 [(2::Int16),1..2]) = [2]
- (take 7 [(2::Int16),1..1]) = [2,1]
- (take 7 [(2::Int16),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [32763,32764,32765,32766,32767]
- (take 7 [x,(x-1)..minBound]) = [-32763,-32764,-32765,-32766,-32767,-32768]
-Testing Enum Int32:
- (succ (0::Int32)) = 1
- (succ (minBound::Int32)) = -2147483647
- (succ (maxBound::Int32)) = error "Enum.succ{Int32}: tried to take `succ' of maxBound"
- pred (1::Int32) = 0
- pred (maxBound::Int32) = 2147483646
- pred (minBound::Int32) = error "Enum.pred{Int32}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int32) [1, fromIntegral (minBound::Int32), fromIntegral (maxBound::Int32)]) = [1,-2147483648,2147483647]
- (toEnum (maxBound::Int))::Int32 = error "Enum.toEnum{Int32}: tag (9223372036854775807) is outside of bounds (-2147483648,2147483647)"
- (map fromEnum [(1::Int32),minBound,maxBound]) = [1,-2147483648,2147483647]
- (take 7 [(1::Int32)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int32)-5)..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [(1::Int32),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int32),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int32),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int32),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int32),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-2147483647,-2147483648]
- (take 7 [x, x-1 ..]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
- (take 7 [x, (x+1) ..]) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 ([(1::Int32) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int32) .. 1])) = [1]
- (take 7 ([(1::Int32) .. 0])) = []
- (take 7 ([(5::Int32) .. 0])) = []
- (take 7 ([(maxBound-(5::Int32)) .. maxBound])) = [2147483642,2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 ([(minBound+(5::Int32)) .. minBound])) = []
- (take 7 [(5::Int32),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int32),3..1]) = [5,3,1]
- (take 7 [(5::Int32),3..2]) = [5,3]
- (take 7 [(1::Int32),2..1]) = [1]
- (take 7 [(2::Int32),1..2]) = [2]
- (take 7 [(2::Int32),1..1]) = [2,1]
- (take 7 [(2::Int32),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [2147483643,2147483644,2147483645,2147483646,2147483647]
- (take 7 [x,(x-1)..minBound]) = [-2147483643,-2147483644,-2147483645,-2147483646,-2147483647,-2147483648]
-Testing Enum Int64:
- (succ (0::Int64)) = 1
- (succ (minBound::Int64)) = -9223372036854775807
- (succ (maxBound::Int64)) = error "Enum.succ{Int64}: tried to take `succ' of maxBound"
- pred (1::Int64) = 0
- pred (maxBound::Int64) = 9223372036854775806
- pred (minBound::Int64) = error "Enum.pred{Int64}: tried to take `pred' of minBound"
- (map (toEnum::Int->Int64) [1, fromIntegral (minBound::Int64), fromIntegral (maxBound::Int64)]) = [1,-9223372036854775808,9223372036854775807]
- (toEnum (maxBound::Int))::Int64 = 9223372036854775807
- (map fromEnum [(1::Int64),fromIntegral (minBound::Int) ,fromIntegral (maxBound::Int)]) = [1,-9223372036854775808,9223372036854775807]
- fromEnum (maxBound::Int64) = 9223372036854775807
- (take 7 [(1::Int64)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Int64)-5)..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [(1::Int64),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Int64),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Int64),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Int64),0..]) = [1,0,-1,-2,-3,-4,-5]
- (take 7 [(5::Int64),2..]) = [5,2,-1,-4,-7,-10,-13]
- (take 7 [x, x-1 ..]) = [-9223372036854775807,-9223372036854775808]
- (take 7 [x, x-1 ..]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
- (take 7 [x, (x+1) ..]) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(1::Int64) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Int64) .. 1])) = [1]
- (take 7 ([(1::Int64) .. 0])) = []
- (take 7 ([(5::Int64) .. 0])) = []
- (take 7 ([(maxBound-(5::Int64)) .. maxBound])) = [9223372036854775802,9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 ([(minBound+(5::Int64)) .. minBound])) = []
- (take 7 [(5::Int64),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Int64),3..1]) = [5,3,1]
- (take 7 [(5::Int64),3..2]) = [5,3]
- (take 7 [(1::Int64),2..1]) = [1]
- (take 7 [(2::Int64),1..2]) = [2]
- (take 7 [(2::Int64),1..1]) = [2,1]
- (take 7 [(2::Int64),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [9223372036854775803,9223372036854775804,9223372036854775805,9223372036854775806,9223372036854775807]
- (take 7 [x,(x-1)..minBound]) = [-9223372036854775803,-9223372036854775804,-9223372036854775805,-9223372036854775806,-9223372036854775807,-9223372036854775808]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum03.hs b/testsuite/tests/ghc-regress/lib/should_run/enum03.hs
deleted file mode 100644
index 908f3dd1a0..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum03.hs
+++ /dev/null
@@ -1,266 +0,0 @@
--- !!! Testing the Word Enum instances.
-module Main(main) where
-
-import Prelude hiding (catch)
-import Control.Exception
-import Data.Word
-import Data.Int
-
-main = do
- putStrLn "Testing Enum Word8:"
- testEnumWord8
- putStrLn "Testing Enum Word16:"
- testEnumWord16
- putStrLn "Testing Enum Word32:"
- testEnumWord32
- putStrLn "Testing Enum Word64:"
- testEnumWord64
-
-
-#define printTest(x) (do{ putStr ( " " ++ "x" ++ " = " ) ; print (x) })
-
-testEnumWord8 :: IO ()
-testEnumWord8 = do
- -- succ
- printTest ((succ (0::Word8)))
- printTest ((succ (minBound::Word8)))
- mayBomb (printTest ((succ (maxBound::Word8))))
-
- -- pred
- printTest (pred (1::Word8))
- printTest (pred (maxBound::Word8))
- mayBomb (printTest (pred (minBound::Word8)))
-
- -- toEnum
- printTest ((map (toEnum::Int->Word8) [1, fromIntegral (minBound::Word8)::Int, fromIntegral (maxBound::Word8)::Int]))
- mayBomb (printTest ((toEnum (maxBound::Int))::Word8))
-
- -- fromEnum
- printTest ((map fromEnum [(1::Word8),minBound,maxBound]))
-
- -- [x..] aka enumFrom
- printTest ((take 7 [(1::Word8)..]))
- printTest ((take 7 [((maxBound::Word8)-5)..])) -- just in case it doesn't catch the upper bound..
-
- -- [x,y..] aka enumFromThen
- printTest ((take 7 [(1::Word8),2..]))
- printTest ((take 7 [(1::Word8),7..]))
- printTest ((take 7 [(1::Word8),1..]))
- printTest ((take 7 [(1::Word8),0..]))
- printTest ((take 7 [(5::Word8),2..]))
- let x = (minBound::Word8) + 1
- printTest ((take 7 [x, x-1 ..]))
- let x = (minBound::Word8) + 5
- printTest ((take 7 [x, x-1 ..]))
- let x = (maxBound::Word8) - 5
- printTest ((take 7 [x, (x+1) ..]))
-
- -- [x..y] aka enumFromTo
- printTest ((take 7 ([(1::Word8) .. 5])))
- printTest ((take 4 ([(1::Word8) .. 1])))
- printTest ((take 7 ([(1::Word8) .. 0])))
- printTest ((take 7 ([(5::Word8) .. 0])))
- printTest ((take 7 ([(maxBound-(5::Word8)) .. maxBound])))
- printTest ((take 7 ([(minBound+(5::Word8)) .. minBound])))
-
- -- [x,y..z] aka enumFromThenTo
- printTest ((take 7 [(5::Word8),4..1]))
- printTest ((take 7 [(5::Word8),3..1]))
- printTest ((take 7 [(5::Word8),3..2]))
- printTest ((take 7 [(1::Word8),2..1]))
- printTest ((take 7 [(2::Word8),1..2]))
- printTest ((take 7 [(2::Word8),1..1]))
- printTest ((take 7 [(2::Word8),3..1]))
-
- let x = (maxBound::Word8) - 4
- printTest ((take 7 [x,(x+1)..maxBound]))
- let x = (minBound::Word8) + 5
- printTest ((take 7 [x,(x-1)..minBound]))
-
-testEnumWord16 :: IO ()
-testEnumWord16 = do
- -- succ
- printTest ((succ (0::Word16)))
- printTest ((succ (minBound::Word16)))
- mayBomb (printTest ((succ (maxBound::Word16))))
-
- -- pred
- printTest (pred (1::Word16))
- printTest (pred (maxBound::Word16))
- mayBomb (printTest (pred (minBound::Word16)))
-
- -- toEnum
- printTest ((map (toEnum::Int->Word16) [1, fromIntegral (minBound::Word16)::Int, fromIntegral (maxBound::Word16)::Int]))
- mayBomb (printTest ((toEnum (maxBound::Int))::Word16))
-
-
- -- fromEnum
- printTest ((map fromEnum [(1::Word16),minBound,maxBound]))
-
- -- [x..] aka enumFrom
- printTest ((take 7 [(1::Word16)..]))
- printTest ((take 7 [((maxBound::Word16)-5)..])) -- just in case it doesn't catch the upper bound..
-
- -- [x,y..] aka enumFromThen
- printTest ((take 7 [(1::Word16),2..]))
- printTest ((take 7 [(1::Word16),7..]))
- printTest ((take 7 [(1::Word16),1..]))
- printTest ((take 7 [(1::Word16),0..]))
- printTest ((take 7 [(5::Word16),2..]))
- let x = (minBound::Word16) + 1
- printTest ((take 7 [x, x-1 ..]))
- let x = (minBound::Word16) + 5
- printTest ((take 7 [x, x-1 ..]))
- let x = (maxBound::Word16) - 5
- printTest ((take 7 [x, (x+1) ..]))
-
- -- [x..y] aka enumFromTo
- printTest ((take 7 ([(1::Word16) .. 5])))
- printTest ((take 4 ([(1::Word16) .. 1])))
- printTest ((take 7 ([(1::Word16) .. 0])))
- printTest ((take 7 ([(5::Word16) .. 0])))
- printTest ((take 7 ([(maxBound-(5::Word16)) .. maxBound])))
- printTest ((take 7 ([(minBound+(5::Word16)) .. minBound])))
-
- -- [x,y..z] aka enumFromThenTo
- printTest ((take 7 [(5::Word16),4..1]))
- printTest ((take 7 [(5::Word16),3..1]))
- printTest ((take 7 [(5::Word16),3..2]))
- printTest ((take 7 [(1::Word16),2..1]))
- printTest ((take 7 [(2::Word16),1..2]))
- printTest ((take 7 [(2::Word16),1..1]))
- printTest ((take 7 [(2::Word16),3..1]))
-
- let x = (maxBound::Word16) - 4
- printTest ((take 7 [x,(x+1)..maxBound]))
- let x = (minBound::Word16) + 5
- printTest ((take 7 [x,(x-1)..minBound]))
-
-testEnumWord32 :: IO ()
-testEnumWord32 = do
- -- succ
- printTest ((succ (0::Word32)))
- printTest ((succ (minBound::Word32)))
- mayBomb (printTest ((succ (maxBound::Word32))))
-
- -- pred
- printTest (pred (1::Word32))
- printTest (pred (maxBound::Word32))
- mayBomb (printTest (pred (minBound::Word32)))
-
- -- toEnum
- printTest ((map (toEnum::Int->Word32) [1, fromIntegral (minBound::Word32)::Int, fromIntegral (maxBound::Int32)::Int]))
- mayBomb (printTest ((toEnum (maxBound::Int))::Word32))
-
- -- fromEnum
- printTest ((map fromEnum [(1::Word32),minBound,fromIntegral (maxBound::Int)]))
- mayBomb (printTest (fromEnum (maxBound::Word32)))
-
- -- [x..] aka enumFrom
- printTest ((take 7 [(1::Word32)..]))
- printTest ((take 7 [((maxBound::Word32)-5)..])) -- just in case it doesn't catch the upper bound..
-
- -- [x,y..] aka enumFromThen
- printTest ((take 7 [(1::Word32),2..]))
- printTest ((take 7 [(1::Word32),7..]))
- printTest ((take 7 [(1::Word32),1..]))
- printTest ((take 7 [(1::Word32),0..]))
- printTest ((take 7 [(5::Word32),2..]))
- let x = (minBound::Word32) + 1
- printTest ((take 7 [x, x-1 ..]))
- let x = (minBound::Word32) + 5
- printTest ((take 7 [x, x-1 ..]))
- let x = (maxBound::Word32) - 5
- printTest ((take 7 [x, (x+1) ..]))
-
- -- [x..y] aka enumFromTo
- printTest ((take 7 ([(1::Word32) .. 5])))
- printTest ((take 4 ([(1::Word32) .. 1])))
- printTest ((take 7 ([(1::Word32) .. 0])))
- printTest ((take 7 ([(5::Word32) .. 0])))
- printTest ((take 7 ([(maxBound-(5::Word32)) .. maxBound])))
- printTest ((take 7 ([(minBound+(5::Word32)) .. minBound])))
-
- -- [x,y..z] aka enumFromThenTo
- printTest ((take 7 [(5::Word32),4..1]))
- printTest ((take 7 [(5::Word32),3..1]))
- printTest ((take 7 [(5::Word32),3..2]))
- printTest ((take 7 [(1::Word32),2..1]))
- printTest ((take 7 [(2::Word32),1..2]))
- printTest ((take 7 [(2::Word32),1..1]))
- printTest ((take 7 [(2::Word32),3..1]))
-
- let x = (maxBound::Word32) - 4
- printTest ((take 7 [x,(x+1)..maxBound]))
- let x = (minBound::Word32) + 5
- printTest ((take 7 [x,(x-1)..minBound]))
-
-testEnumWord64 :: IO ()
-testEnumWord64 = do
- -- succ
- printTest ((succ (0::Word64)))
- printTest ((succ (minBound::Word64)))
- mayBomb (printTest ((succ (maxBound::Word64))))
-
- -- pred
- printTest (pred (1::Word64))
- printTest (pred (maxBound::Word64))
- mayBomb (printTest (pred (minBound::Word64)))
-
- -- toEnum
- mayBomb (printTest ((map (toEnum::Int->Word64) [1, fromIntegral (minBound::Word64)::Int, maxBound::Int])))
- mayBomb (printTest ((toEnum (maxBound::Int))::Word64))
-
- -- fromEnum
- printTest ((map fromEnum [(1::Word64),minBound,fromIntegral (maxBound::Int)]))
- mayBomb (printTest (fromEnum (maxBound::Word64)))
-
- -- [x..] aka enumFrom
- printTest ((take 7 [(1::Word64)..]))
- printTest ((take 7 [((maxBound::Word64)-5)..])) -- just in case it doesn't catch the upper bound..
-
- -- [x,y..] aka enumFromThen
- printTest ((take 7 [(1::Word64),2..]))
- printTest ((take 7 [(1::Word64),7..]))
- printTest ((take 7 [(1::Word64),1..]))
- printTest ((take 7 [(1::Word64),0..]))
- printTest ((take 7 [(5::Word64),2..]))
- let x = (minBound::Word64) + 1
- printTest ((take 7 [x, x-1 ..]))
- let x = (minBound::Word64) + 5
- printTest ((take 7 [x, x-1 ..]))
- let x = (maxBound::Word64) - 5
- printTest ((take 7 [x, (x+1) ..]))
-
- -- [x..y] aka enumFromTo
- printTest ((take 7 ([(1::Word64) .. 5])))
- printTest ((take 4 ([(1::Word64) .. 1])))
- printTest ((take 7 ([(1::Word64) .. 0])))
- printTest ((take 7 ([(5::Word64) .. 0])))
- printTest ((take 7 ([(maxBound-(5::Word64)) .. maxBound])))
- printTest ((take 7 ([(minBound+(5::Word64)) .. minBound])))
-
- -- [x,y..z] aka enumFromThenTo
- printTest ((take 7 [(5::Word64),4..1]))
- printTest ((take 7 [(5::Word64),3..1]))
- printTest ((take 7 [(5::Word64),3..2]))
- printTest ((take 7 [(1::Word64),2..1]))
- printTest ((take 7 [(2::Word64),1..2]))
- printTest ((take 7 [(2::Word64),1..1]))
- printTest ((take 7 [(2::Word64),3..1]))
-
- let x = (maxBound::Word64) - 4
- printTest ((take 7 [x,(x+1)..maxBound]))
- let x = (minBound::Word64) + 5
- printTest ((take 7 [x,(x-1)..minBound]))
-
-
---
---
--- Utils
---
---
-
-
-mayBomb x = catch x (\(ErrorCall e) -> putStrLn ("error " ++ show e))
- `catch` (\e -> putStrLn ("Fail: " ++ show (e :: SomeException)))
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout b/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout
deleted file mode 100644
index d6db561a72..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout
+++ /dev/null
@@ -1,142 +0,0 @@
-Testing Enum Word8:
- (succ (0::Word8)) = 1
- (succ (minBound::Word8)) = 1
- (succ (maxBound::Word8)) = error "Enum.succ{Word8}: tried to take `succ' of maxBound"
- pred (1::Word8) = 0
- pred (maxBound::Word8) = 254
- pred (minBound::Word8) = error "Enum.pred{Word8}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word8) [1, fromIntegral (minBound::Word8)::Int, fromIntegral (maxBound::Word8)::Int]) = [1,0,255]
- (toEnum (maxBound::Int))::Word8 = error "Enum.toEnum{Word8}: tag (2147483647) is outside of bounds (0,255)"
- (map fromEnum [(1::Word8),minBound,maxBound]) = [1,0,255]
- (take 7 [(1::Word8)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word8)-5)..]) = [250,251,252,253,254,255]
- (take 7 [(1::Word8),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word8),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word8),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word8),0..]) = [1,0]
- (take 7 [(5::Word8),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [250,251,252,253,254,255]
- (take 7 ([(1::Word8) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word8) .. 1])) = [1]
- (take 7 ([(1::Word8) .. 0])) = []
- (take 7 ([(5::Word8) .. 0])) = []
- (take 7 ([(maxBound-(5::Word8)) .. maxBound])) = [250,251,252,253,254,255]
- (take 7 ([(minBound+(5::Word8)) .. minBound])) = []
- (take 7 [(5::Word8),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word8),3..1]) = [5,3,1]
- (take 7 [(5::Word8),3..2]) = [5,3]
- (take 7 [(1::Word8),2..1]) = [1]
- (take 7 [(2::Word8),1..2]) = [2]
- (take 7 [(2::Word8),1..1]) = [2,1]
- (take 7 [(2::Word8),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [251,252,253,254,255]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word16:
- (succ (0::Word16)) = 1
- (succ (minBound::Word16)) = 1
- (succ (maxBound::Word16)) = error "Enum.succ{Word16}: tried to take `succ' of maxBound"
- pred (1::Word16) = 0
- pred (maxBound::Word16) = 65534
- pred (minBound::Word16) = error "Enum.pred{Word16}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word16) [1, fromIntegral (minBound::Word16)::Int, fromIntegral (maxBound::Word16)::Int]) = [1,0,65535]
- (toEnum (maxBound::Int))::Word16 = error "Enum.toEnum{Word16}: tag (2147483647) is outside of bounds (0,65535)"
- (map fromEnum [(1::Word16),minBound,maxBound]) = [1,0,65535]
- (take 7 [(1::Word16)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word16)-5)..]) = [65530,65531,65532,65533,65534,65535]
- (take 7 [(1::Word16),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word16),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word16),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word16),0..]) = [1,0]
- (take 7 [(5::Word16),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [65530,65531,65532,65533,65534,65535]
- (take 7 ([(1::Word16) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word16) .. 1])) = [1]
- (take 7 ([(1::Word16) .. 0])) = []
- (take 7 ([(5::Word16) .. 0])) = []
- (take 7 ([(maxBound-(5::Word16)) .. maxBound])) = [65530,65531,65532,65533,65534,65535]
- (take 7 ([(minBound+(5::Word16)) .. minBound])) = []
- (take 7 [(5::Word16),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word16),3..1]) = [5,3,1]
- (take 7 [(5::Word16),3..2]) = [5,3]
- (take 7 [(1::Word16),2..1]) = [1]
- (take 7 [(2::Word16),1..2]) = [2]
- (take 7 [(2::Word16),1..1]) = [2,1]
- (take 7 [(2::Word16),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [65531,65532,65533,65534,65535]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word32:
- (succ (0::Word32)) = 1
- (succ (minBound::Word32)) = 1
- (succ (maxBound::Word32)) = error "Enum.succ{Word32}: tried to take `succ' of maxBound"
- pred (1::Word32) = 0
- pred (maxBound::Word32) = 4294967294
- pred (minBound::Word32) = error "Enum.pred{Word32}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word32) [1, fromIntegral (minBound::Word32)::Int, fromIntegral (maxBound::Int32)::Int]) = [1,0,2147483647]
- (toEnum (maxBound::Int))::Word32 = 2147483647
- (map fromEnum [(1::Word32),minBound,fromIntegral (maxBound::Int)]) = [1,0,2147483647]
- fromEnum (maxBound::Word32) = error "Enum.fromEnum{Word32}: value (4294967295) is outside of Int's bounds (-2147483648,2147483647)"
- (take 7 [(1::Word32)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word32)-5)..]) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 [(1::Word32),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word32),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word32),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word32),0..]) = [1,0]
- (take 7 [(5::Word32),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 ([(1::Word32) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word32) .. 1])) = [1]
- (take 7 ([(1::Word32) .. 0])) = []
- (take 7 ([(5::Word32) .. 0])) = []
- (take 7 ([(maxBound-(5::Word32)) .. maxBound])) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 ([(minBound+(5::Word32)) .. minBound])) = []
- (take 7 [(5::Word32),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word32),3..1]) = [5,3,1]
- (take 7 [(5::Word32),3..2]) = [5,3]
- (take 7 [(1::Word32),2..1]) = [1]
- (take 7 [(2::Word32),1..2]) = [2]
- (take 7 [(2::Word32),1..1]) = [2,1]
- (take 7 [(2::Word32),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word64:
- (succ (0::Word64)) = 1
- (succ (minBound::Word64)) = 1
- (succ (maxBound::Word64)) = error "Enum.succ{Word64}: tried to take `succ' of maxBound"
- pred (1::Word64) = 0
- pred (maxBound::Word64) = 18446744073709551614
- pred (minBound::Word64) = error "Enum.pred{Word64}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word64) [1, fromIntegral (minBound::Word64)::Int, maxBound::Int]) = [1,0,2147483647]
- (toEnum (maxBound::Int))::Word64 = 2147483647
- (map fromEnum [(1::Word64),minBound,fromIntegral (maxBound::Int)]) = [1,0,2147483647]
- fromEnum (maxBound::Word64) = error "Enum.fromEnum{Word64}: value (18446744073709551615) is outside of Int's bounds (-2147483648,2147483647)"
- (take 7 [(1::Word64)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word64)-5)..]) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 [(1::Word64),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word64),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word64),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word64),0..]) = [1,0]
- (take 7 [(5::Word64),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 ([(1::Word64) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word64) .. 1])) = [1]
- (take 7 ([(1::Word64) .. 0])) = []
- (take 7 ([(5::Word64) .. 0])) = []
- (take 7 ([(maxBound-(5::Word64)) .. maxBound])) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 ([(minBound+(5::Word64)) .. minBound])) = []
- (take 7 [(5::Word64),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word64),3..1]) = [5,3,1]
- (take 7 [(5::Word64),3..2]) = [5,3]
- (take 7 [(1::Word64),2..1]) = [1]
- (take 7 [(2::Word64),1..2]) = [2]
- (take 7 [(2::Word64),1..1]) = [2,1]
- (take 7 [(2::Word64),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-alpha-dec-osf3 b/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-alpha-dec-osf3
deleted file mode 100644
index 716782c46a..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-alpha-dec-osf3
+++ /dev/null
@@ -1,142 +0,0 @@
-Testing Enum Word8:
- (succ (0::Word8)) = 1
- (succ (minBound::Word8)) = 1
- (succ (maxBound::Word8)) = error "Enum.succ{Word8}: tried to take `succ' of maxBound"
- pred (1::Word8) = 0
- pred (maxBound::Word8) = 254
- pred (minBound::Word8) = error "Enum.pred{Word8}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word8) [1, fromIntegral (minBound::Word8)::Int, fromIntegral (maxBound::Word8)::Int]) = [1,0,255]
- (toEnum (maxBound::Int))::Word8 = error "Enum.toEnum{Word8}: tag (9223372036854775807) is outside of bounds (0,255)"
- (map fromEnum [(1::Word8),minBound,maxBound]) = [1,0,255]
- (take 7 [(1::Word8)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word8)-5)..]) = [250,251,252,253,254,255]
- (take 7 [(1::Word8),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word8),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word8),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word8),0..]) = [1,0]
- (take 7 [(5::Word8),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [250,251,252,253,254,255]
- (take 7 ([(1::Word8) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word8) .. 1])) = [1]
- (take 7 ([(1::Word8) .. 0])) = []
- (take 7 ([(5::Word8) .. 0])) = []
- (take 7 ([(maxBound-(5::Word8)) .. maxBound])) = [250,251,252,253,254,255]
- (take 7 ([(minBound+(5::Word8)) .. minBound])) = []
- (take 7 [(5::Word8),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word8),3..1]) = [5,3,1]
- (take 7 [(5::Word8),3..2]) = [5,3]
- (take 7 [(1::Word8),2..1]) = [1]
- (take 7 [(2::Word8),1..2]) = [2]
- (take 7 [(2::Word8),1..1]) = [2,1]
- (take 7 [(2::Word8),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [251,252,253,254,255]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word16:
- (succ (0::Word16)) = 1
- (succ (minBound::Word16)) = 1
- (succ (maxBound::Word16)) = error "Enum.succ{Word16}: tried to take `succ' of maxBound"
- pred (1::Word16) = 0
- pred (maxBound::Word16) = 65534
- pred (minBound::Word16) = error "Enum.pred{Word16}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word16) [1, fromIntegral (minBound::Word16)::Int, fromIntegral (maxBound::Word16)::Int]) = [1,0,65535]
- (toEnum (maxBound::Int))::Word16 = error "Enum.toEnum{Word16}: tag (9223372036854775807) is outside of bounds (0,65535)"
- (map fromEnum [(1::Word16),minBound,maxBound]) = [1,0,65535]
- (take 7 [(1::Word16)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word16)-5)..]) = [65530,65531,65532,65533,65534,65535]
- (take 7 [(1::Word16),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word16),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word16),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word16),0..]) = [1,0]
- (take 7 [(5::Word16),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [65530,65531,65532,65533,65534,65535]
- (take 7 ([(1::Word16) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word16) .. 1])) = [1]
- (take 7 ([(1::Word16) .. 0])) = []
- (take 7 ([(5::Word16) .. 0])) = []
- (take 7 ([(maxBound-(5::Word16)) .. maxBound])) = [65530,65531,65532,65533,65534,65535]
- (take 7 ([(minBound+(5::Word16)) .. minBound])) = []
- (take 7 [(5::Word16),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word16),3..1]) = [5,3,1]
- (take 7 [(5::Word16),3..2]) = [5,3]
- (take 7 [(1::Word16),2..1]) = [1]
- (take 7 [(2::Word16),1..2]) = [2]
- (take 7 [(2::Word16),1..1]) = [2,1]
- (take 7 [(2::Word16),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [65531,65532,65533,65534,65535]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word32:
- (succ (0::Word32)) = 1
- (succ (minBound::Word32)) = 1
- (succ (maxBound::Word32)) = error "Enum.succ{Word32}: tried to take `succ' of maxBound"
- pred (1::Word32) = 0
- pred (maxBound::Word32) = 4294967294
- pred (minBound::Word32) = error "Enum.pred{Word32}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word32) [1, fromIntegral (minBound::Word32)::Int, fromIntegral (maxBound::Int32)::Int]) = [1,0,2147483647]
- (toEnum (maxBound::Int))::Word32 = error "Enum.toEnum{Word32}: tag (9223372036854775807) is outside of bounds (0,4294967295)"
- (map fromEnum [(1::Word32),minBound,fromIntegral (maxBound::Int)]) = [1,0,4294967295]
- fromEnum (maxBound::Word32) = 4294967295
- (take 7 [(1::Word32)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word32)-5)..]) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 [(1::Word32),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word32),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word32),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word32),0..]) = [1,0]
- (take 7 [(5::Word32),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 ([(1::Word32) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word32) .. 1])) = [1]
- (take 7 ([(1::Word32) .. 0])) = []
- (take 7 ([(5::Word32) .. 0])) = []
- (take 7 ([(maxBound-(5::Word32)) .. maxBound])) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 ([(minBound+(5::Word32)) .. minBound])) = []
- (take 7 [(5::Word32),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word32),3..1]) = [5,3,1]
- (take 7 [(5::Word32),3..2]) = [5,3]
- (take 7 [(1::Word32),2..1]) = [1]
- (take 7 [(2::Word32),1..2]) = [2]
- (take 7 [(2::Word32),1..1]) = [2,1]
- (take 7 [(2::Word32),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word64:
- (succ (0::Word64)) = 1
- (succ (minBound::Word64)) = 1
- (succ (maxBound::Word64)) = error "Enum.succ{Word64}: tried to take `succ' of maxBound"
- pred (1::Word64) = 0
- pred (maxBound::Word64) = 18446744073709551614
- pred (minBound::Word64) = error "Enum.pred{Word64}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word64) [1, fromIntegral (minBound::Word64)::Int, maxBound::Int]) = [1,0,9223372036854775807]
- (toEnum (maxBound::Int))::Word64 = 9223372036854775807
- (map fromEnum [(1::Word64),minBound,fromIntegral (maxBound::Int)]) = [1,0,9223372036854775807]
- fromEnum (maxBound::Word64) = error "Enum.fromEnum{Word64}: value (18446744073709551615) is outside of Int's bounds (-9223372036854775808,9223372036854775807)"
- (take 7 [(1::Word64)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word64)-5)..]) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 [(1::Word64),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word64),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word64),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word64),0..]) = [1,0]
- (take 7 [(5::Word64),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 ([(1::Word64) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word64) .. 1])) = [1]
- (take 7 ([(1::Word64) .. 0])) = []
- (take 7 ([(5::Word64) .. 0])) = []
- (take 7 ([(maxBound-(5::Word64)) .. maxBound])) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 ([(minBound+(5::Word64)) .. minBound])) = []
- (take 7 [(5::Word64),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word64),3..1]) = [5,3,1]
- (take 7 [(5::Word64),3..2]) = [5,3]
- (take 7 [(1::Word64),2..1]) = [1]
- (take 7 [(2::Word64),1..2]) = [2]
- (take 7 [(2::Word64),1..1]) = [2,1]
- (take 7 [(2::Word64),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-hugs b/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-hugs
deleted file mode 100644
index babc1c2e9e..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-hugs
+++ /dev/null
@@ -1,142 +0,0 @@
-Testing Enum Word8:
- (succ (0::Word8)) = 1
- (succ (minBound::Word8)) = 1
- (succ (maxBound::Word8)) = error "succ: applied to maxBound"
- pred (1::Word8) = 0
- pred (maxBound::Word8) = 254
- pred (minBound::Word8) = error "pred: applied to minBound"
- (map (toEnum::Int->Word8) [1, fromIntegral (minBound::Word8)::Int, fromIntegral (maxBound::Word8)::Int]) = [1,0,255]
- (toEnum (maxBound::Int))::Word8 = 255
- (map fromEnum [(1::Word8),minBound,maxBound]) = [1,0,255]
- (take 7 [(1::Word8)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word8)-5)..]) = [250,251,252,253,254,255]
- (take 7 [(1::Word8),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word8),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word8),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word8),0..]) = [1,0]
- (take 7 [(5::Word8),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [250,251,252,253,254,255]
- (take 7 ([(1::Word8) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word8) .. 1])) = [1]
- (take 7 ([(1::Word8) .. 0])) = []
- (take 7 ([(5::Word8) .. 0])) = []
- (take 7 ([(maxBound-(5::Word8)) .. maxBound])) = [250,251,252,253,254,255]
- (take 7 ([(minBound+(5::Word8)) .. minBound])) = []
- (take 7 [(5::Word8),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word8),3..1]) = [5,3,1]
- (take 7 [(5::Word8),3..2]) = [5,3]
- (take 7 [(1::Word8),2..1]) = [1]
- (take 7 [(2::Word8),1..2]) = [2]
- (take 7 [(2::Word8),1..1]) = [2,1]
- (take 7 [(2::Word8),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [251,252,253,254,255]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word16:
- (succ (0::Word16)) = 1
- (succ (minBound::Word16)) = 1
- (succ (maxBound::Word16)) = error "succ: applied to maxBound"
- pred (1::Word16) = 0
- pred (maxBound::Word16) = 65534
- pred (minBound::Word16) = error "pred: applied to minBound"
- (map (toEnum::Int->Word16) [1, fromIntegral (minBound::Word16)::Int, fromIntegral (maxBound::Word16)::Int]) = [1,0,65535]
- (toEnum (maxBound::Int))::Word16 = 65535
- (map fromEnum [(1::Word16),minBound,maxBound]) = [1,0,65535]
- (take 7 [(1::Word16)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word16)-5)..]) = [65530,65531,65532,65533,65534,65535]
- (take 7 [(1::Word16),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word16),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word16),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word16),0..]) = [1,0]
- (take 7 [(5::Word16),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [65530,65531,65532,65533,65534,65535]
- (take 7 ([(1::Word16) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word16) .. 1])) = [1]
- (take 7 ([(1::Word16) .. 0])) = []
- (take 7 ([(5::Word16) .. 0])) = []
- (take 7 ([(maxBound-(5::Word16)) .. maxBound])) = [65530,65531,65532,65533,65534,65535]
- (take 7 ([(minBound+(5::Word16)) .. minBound])) = []
- (take 7 [(5::Word16),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word16),3..1]) = [5,3,1]
- (take 7 [(5::Word16),3..2]) = [5,3]
- (take 7 [(1::Word16),2..1]) = [1]
- (take 7 [(2::Word16),1..2]) = [2]
- (take 7 [(2::Word16),1..1]) = [2,1]
- (take 7 [(2::Word16),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [65531,65532,65533,65534,65535]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word32:
- (succ (0::Word32)) = 1
- (succ (minBound::Word32)) = 1
- (succ (maxBound::Word32)) = error "succ: applied to maxBound"
- pred (1::Word32) = 0
- pred (maxBound::Word32) = 4294967294
- pred (minBound::Word32) = error "pred: applied to minBound"
- (map (toEnum::Int->Word32) [1, fromIntegral (minBound::Word32)::Int, fromIntegral (maxBound::Int32)::Int]) = [1,0,2147483647]
- (toEnum (maxBound::Int))::Word32 = 2147483647
- (map fromEnum [(1::Word32),minBound,fromIntegral (maxBound::Int)]) = [1,0,2147483647]
- fromEnum (maxBound::Word32) = -1
- (take 7 [(1::Word32)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word32)-5)..]) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 [(1::Word32),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word32),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word32),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word32),0..]) = [1,0]
- (take 7 [(5::Word32),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 ([(1::Word32) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word32) .. 1])) = [1]
- (take 7 ([(1::Word32) .. 0])) = []
- (take 7 ([(5::Word32) .. 0])) = []
- (take 7 ([(maxBound-(5::Word32)) .. maxBound])) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 ([(minBound+(5::Word32)) .. minBound])) = []
- (take 7 [(5::Word32),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word32),3..1]) = [5,3,1]
- (take 7 [(5::Word32),3..2]) = [5,3]
- (take 7 [(1::Word32),2..1]) = [1]
- (take 7 [(2::Word32),1..2]) = [2]
- (take 7 [(2::Word32),1..1]) = [2,1]
- (take 7 [(2::Word32),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word64:
- (succ (0::Word64)) = 1
- (succ (minBound::Word64)) = 1
- (succ (maxBound::Word64)) = error "succ: applied to maxBound"
- pred (1::Word64) = 0
- pred (maxBound::Word64) = 18446744073709551614
- pred (minBound::Word64) = error "pred: applied to minBound"
- (map (toEnum::Int->Word64) [1, fromIntegral (minBound::Word64)::Int, maxBound::Int]) = [1,0,2147483647]
- (toEnum (maxBound::Int))::Word64 = 2147483647
- (map fromEnum [(1::Word64),minBound,fromIntegral (maxBound::Int)]) = [1,0,2147483647]
- fromEnum (maxBound::Word64) = Fail: arithmetic overflow
- (take 7 [(1::Word64)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word64)-5)..]) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 [(1::Word64),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word64),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word64),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word64),0..]) = [1,0]
- (take 7 [(5::Word64),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 ([(1::Word64) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word64) .. 1])) = [1]
- (take 7 ([(1::Word64) .. 0])) = []
- (take 7 ([(5::Word64) .. 0])) = []
- (take 7 ([(maxBound-(5::Word64)) .. maxBound])) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 ([(minBound+(5::Word64)) .. minBound])) = []
- (take 7 [(5::Word64),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word64),3..1]) = [5,3,1]
- (take 7 [(5::Word64),3..2]) = [5,3]
- (take 7 [(1::Word64),2..1]) = [1]
- (take 7 [(2::Word64),1..2]) = [2]
- (take 7 [(2::Word64),1..1]) = [2,1]
- (take 7 [(2::Word64),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-mips-sgi-irix b/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-mips-sgi-irix
deleted file mode 100644
index 716782c46a..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-mips-sgi-irix
+++ /dev/null
@@ -1,142 +0,0 @@
-Testing Enum Word8:
- (succ (0::Word8)) = 1
- (succ (minBound::Word8)) = 1
- (succ (maxBound::Word8)) = error "Enum.succ{Word8}: tried to take `succ' of maxBound"
- pred (1::Word8) = 0
- pred (maxBound::Word8) = 254
- pred (minBound::Word8) = error "Enum.pred{Word8}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word8) [1, fromIntegral (minBound::Word8)::Int, fromIntegral (maxBound::Word8)::Int]) = [1,0,255]
- (toEnum (maxBound::Int))::Word8 = error "Enum.toEnum{Word8}: tag (9223372036854775807) is outside of bounds (0,255)"
- (map fromEnum [(1::Word8),minBound,maxBound]) = [1,0,255]
- (take 7 [(1::Word8)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word8)-5)..]) = [250,251,252,253,254,255]
- (take 7 [(1::Word8),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word8),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word8),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word8),0..]) = [1,0]
- (take 7 [(5::Word8),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [250,251,252,253,254,255]
- (take 7 ([(1::Word8) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word8) .. 1])) = [1]
- (take 7 ([(1::Word8) .. 0])) = []
- (take 7 ([(5::Word8) .. 0])) = []
- (take 7 ([(maxBound-(5::Word8)) .. maxBound])) = [250,251,252,253,254,255]
- (take 7 ([(minBound+(5::Word8)) .. minBound])) = []
- (take 7 [(5::Word8),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word8),3..1]) = [5,3,1]
- (take 7 [(5::Word8),3..2]) = [5,3]
- (take 7 [(1::Word8),2..1]) = [1]
- (take 7 [(2::Word8),1..2]) = [2]
- (take 7 [(2::Word8),1..1]) = [2,1]
- (take 7 [(2::Word8),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [251,252,253,254,255]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word16:
- (succ (0::Word16)) = 1
- (succ (minBound::Word16)) = 1
- (succ (maxBound::Word16)) = error "Enum.succ{Word16}: tried to take `succ' of maxBound"
- pred (1::Word16) = 0
- pred (maxBound::Word16) = 65534
- pred (minBound::Word16) = error "Enum.pred{Word16}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word16) [1, fromIntegral (minBound::Word16)::Int, fromIntegral (maxBound::Word16)::Int]) = [1,0,65535]
- (toEnum (maxBound::Int))::Word16 = error "Enum.toEnum{Word16}: tag (9223372036854775807) is outside of bounds (0,65535)"
- (map fromEnum [(1::Word16),minBound,maxBound]) = [1,0,65535]
- (take 7 [(1::Word16)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word16)-5)..]) = [65530,65531,65532,65533,65534,65535]
- (take 7 [(1::Word16),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word16),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word16),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word16),0..]) = [1,0]
- (take 7 [(5::Word16),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [65530,65531,65532,65533,65534,65535]
- (take 7 ([(1::Word16) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word16) .. 1])) = [1]
- (take 7 ([(1::Word16) .. 0])) = []
- (take 7 ([(5::Word16) .. 0])) = []
- (take 7 ([(maxBound-(5::Word16)) .. maxBound])) = [65530,65531,65532,65533,65534,65535]
- (take 7 ([(minBound+(5::Word16)) .. minBound])) = []
- (take 7 [(5::Word16),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word16),3..1]) = [5,3,1]
- (take 7 [(5::Word16),3..2]) = [5,3]
- (take 7 [(1::Word16),2..1]) = [1]
- (take 7 [(2::Word16),1..2]) = [2]
- (take 7 [(2::Word16),1..1]) = [2,1]
- (take 7 [(2::Word16),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [65531,65532,65533,65534,65535]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word32:
- (succ (0::Word32)) = 1
- (succ (minBound::Word32)) = 1
- (succ (maxBound::Word32)) = error "Enum.succ{Word32}: tried to take `succ' of maxBound"
- pred (1::Word32) = 0
- pred (maxBound::Word32) = 4294967294
- pred (minBound::Word32) = error "Enum.pred{Word32}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word32) [1, fromIntegral (minBound::Word32)::Int, fromIntegral (maxBound::Int32)::Int]) = [1,0,2147483647]
- (toEnum (maxBound::Int))::Word32 = error "Enum.toEnum{Word32}: tag (9223372036854775807) is outside of bounds (0,4294967295)"
- (map fromEnum [(1::Word32),minBound,fromIntegral (maxBound::Int)]) = [1,0,4294967295]
- fromEnum (maxBound::Word32) = 4294967295
- (take 7 [(1::Word32)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word32)-5)..]) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 [(1::Word32),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word32),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word32),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word32),0..]) = [1,0]
- (take 7 [(5::Word32),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 ([(1::Word32) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word32) .. 1])) = [1]
- (take 7 ([(1::Word32) .. 0])) = []
- (take 7 ([(5::Word32) .. 0])) = []
- (take 7 ([(maxBound-(5::Word32)) .. maxBound])) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 ([(minBound+(5::Word32)) .. minBound])) = []
- (take 7 [(5::Word32),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word32),3..1]) = [5,3,1]
- (take 7 [(5::Word32),3..2]) = [5,3]
- (take 7 [(1::Word32),2..1]) = [1]
- (take 7 [(2::Word32),1..2]) = [2]
- (take 7 [(2::Word32),1..1]) = [2,1]
- (take 7 [(2::Word32),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word64:
- (succ (0::Word64)) = 1
- (succ (minBound::Word64)) = 1
- (succ (maxBound::Word64)) = error "Enum.succ{Word64}: tried to take `succ' of maxBound"
- pred (1::Word64) = 0
- pred (maxBound::Word64) = 18446744073709551614
- pred (minBound::Word64) = error "Enum.pred{Word64}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word64) [1, fromIntegral (minBound::Word64)::Int, maxBound::Int]) = [1,0,9223372036854775807]
- (toEnum (maxBound::Int))::Word64 = 9223372036854775807
- (map fromEnum [(1::Word64),minBound,fromIntegral (maxBound::Int)]) = [1,0,9223372036854775807]
- fromEnum (maxBound::Word64) = error "Enum.fromEnum{Word64}: value (18446744073709551615) is outside of Int's bounds (-9223372036854775808,9223372036854775807)"
- (take 7 [(1::Word64)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word64)-5)..]) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 [(1::Word64),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word64),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word64),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word64),0..]) = [1,0]
- (take 7 [(5::Word64),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 ([(1::Word64) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word64) .. 1])) = [1]
- (take 7 ([(1::Word64) .. 0])) = []
- (take 7 ([(5::Word64) .. 0])) = []
- (take 7 ([(maxBound-(5::Word64)) .. maxBound])) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 ([(minBound+(5::Word64)) .. minBound])) = []
- (take 7 [(5::Word64),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word64),3..1]) = [5,3,1]
- (take 7 [(5::Word64),3..2]) = [5,3]
- (take 7 [(1::Word64),2..1]) = [1]
- (take 7 [(2::Word64),1..2]) = [2]
- (take 7 [(2::Word64),1..1]) = [2,1]
- (take 7 [(2::Word64),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-ws-64 b/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-ws-64
deleted file mode 100644
index 716782c46a..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-ws-64
+++ /dev/null
@@ -1,142 +0,0 @@
-Testing Enum Word8:
- (succ (0::Word8)) = 1
- (succ (minBound::Word8)) = 1
- (succ (maxBound::Word8)) = error "Enum.succ{Word8}: tried to take `succ' of maxBound"
- pred (1::Word8) = 0
- pred (maxBound::Word8) = 254
- pred (minBound::Word8) = error "Enum.pred{Word8}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word8) [1, fromIntegral (minBound::Word8)::Int, fromIntegral (maxBound::Word8)::Int]) = [1,0,255]
- (toEnum (maxBound::Int))::Word8 = error "Enum.toEnum{Word8}: tag (9223372036854775807) is outside of bounds (0,255)"
- (map fromEnum [(1::Word8),minBound,maxBound]) = [1,0,255]
- (take 7 [(1::Word8)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word8)-5)..]) = [250,251,252,253,254,255]
- (take 7 [(1::Word8),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word8),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word8),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word8),0..]) = [1,0]
- (take 7 [(5::Word8),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [250,251,252,253,254,255]
- (take 7 ([(1::Word8) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word8) .. 1])) = [1]
- (take 7 ([(1::Word8) .. 0])) = []
- (take 7 ([(5::Word8) .. 0])) = []
- (take 7 ([(maxBound-(5::Word8)) .. maxBound])) = [250,251,252,253,254,255]
- (take 7 ([(minBound+(5::Word8)) .. minBound])) = []
- (take 7 [(5::Word8),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word8),3..1]) = [5,3,1]
- (take 7 [(5::Word8),3..2]) = [5,3]
- (take 7 [(1::Word8),2..1]) = [1]
- (take 7 [(2::Word8),1..2]) = [2]
- (take 7 [(2::Word8),1..1]) = [2,1]
- (take 7 [(2::Word8),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [251,252,253,254,255]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word16:
- (succ (0::Word16)) = 1
- (succ (minBound::Word16)) = 1
- (succ (maxBound::Word16)) = error "Enum.succ{Word16}: tried to take `succ' of maxBound"
- pred (1::Word16) = 0
- pred (maxBound::Word16) = 65534
- pred (minBound::Word16) = error "Enum.pred{Word16}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word16) [1, fromIntegral (minBound::Word16)::Int, fromIntegral (maxBound::Word16)::Int]) = [1,0,65535]
- (toEnum (maxBound::Int))::Word16 = error "Enum.toEnum{Word16}: tag (9223372036854775807) is outside of bounds (0,65535)"
- (map fromEnum [(1::Word16),minBound,maxBound]) = [1,0,65535]
- (take 7 [(1::Word16)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word16)-5)..]) = [65530,65531,65532,65533,65534,65535]
- (take 7 [(1::Word16),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word16),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word16),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word16),0..]) = [1,0]
- (take 7 [(5::Word16),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [65530,65531,65532,65533,65534,65535]
- (take 7 ([(1::Word16) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word16) .. 1])) = [1]
- (take 7 ([(1::Word16) .. 0])) = []
- (take 7 ([(5::Word16) .. 0])) = []
- (take 7 ([(maxBound-(5::Word16)) .. maxBound])) = [65530,65531,65532,65533,65534,65535]
- (take 7 ([(minBound+(5::Word16)) .. minBound])) = []
- (take 7 [(5::Word16),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word16),3..1]) = [5,3,1]
- (take 7 [(5::Word16),3..2]) = [5,3]
- (take 7 [(1::Word16),2..1]) = [1]
- (take 7 [(2::Word16),1..2]) = [2]
- (take 7 [(2::Word16),1..1]) = [2,1]
- (take 7 [(2::Word16),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [65531,65532,65533,65534,65535]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word32:
- (succ (0::Word32)) = 1
- (succ (minBound::Word32)) = 1
- (succ (maxBound::Word32)) = error "Enum.succ{Word32}: tried to take `succ' of maxBound"
- pred (1::Word32) = 0
- pred (maxBound::Word32) = 4294967294
- pred (minBound::Word32) = error "Enum.pred{Word32}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word32) [1, fromIntegral (minBound::Word32)::Int, fromIntegral (maxBound::Int32)::Int]) = [1,0,2147483647]
- (toEnum (maxBound::Int))::Word32 = error "Enum.toEnum{Word32}: tag (9223372036854775807) is outside of bounds (0,4294967295)"
- (map fromEnum [(1::Word32),minBound,fromIntegral (maxBound::Int)]) = [1,0,4294967295]
- fromEnum (maxBound::Word32) = 4294967295
- (take 7 [(1::Word32)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word32)-5)..]) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 [(1::Word32),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word32),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word32),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word32),0..]) = [1,0]
- (take 7 [(5::Word32),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 ([(1::Word32) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word32) .. 1])) = [1]
- (take 7 ([(1::Word32) .. 0])) = []
- (take 7 ([(5::Word32) .. 0])) = []
- (take 7 ([(maxBound-(5::Word32)) .. maxBound])) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 ([(minBound+(5::Word32)) .. minBound])) = []
- (take 7 [(5::Word32),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word32),3..1]) = [5,3,1]
- (take 7 [(5::Word32),3..2]) = [5,3]
- (take 7 [(1::Word32),2..1]) = [1]
- (take 7 [(2::Word32),1..2]) = [2]
- (take 7 [(2::Word32),1..1]) = [2,1]
- (take 7 [(2::Word32),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word64:
- (succ (0::Word64)) = 1
- (succ (minBound::Word64)) = 1
- (succ (maxBound::Word64)) = error "Enum.succ{Word64}: tried to take `succ' of maxBound"
- pred (1::Word64) = 0
- pred (maxBound::Word64) = 18446744073709551614
- pred (minBound::Word64) = error "Enum.pred{Word64}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word64) [1, fromIntegral (minBound::Word64)::Int, maxBound::Int]) = [1,0,9223372036854775807]
- (toEnum (maxBound::Int))::Word64 = 9223372036854775807
- (map fromEnum [(1::Word64),minBound,fromIntegral (maxBound::Int)]) = [1,0,9223372036854775807]
- fromEnum (maxBound::Word64) = error "Enum.fromEnum{Word64}: value (18446744073709551615) is outside of Int's bounds (-9223372036854775808,9223372036854775807)"
- (take 7 [(1::Word64)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word64)-5)..]) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 [(1::Word64),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word64),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word64),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word64),0..]) = [1,0]
- (take 7 [(5::Word64),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 ([(1::Word64) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word64) .. 1])) = [1]
- (take 7 ([(1::Word64) .. 0])) = []
- (take 7 ([(5::Word64) .. 0])) = []
- (take 7 ([(maxBound-(5::Word64)) .. maxBound])) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 ([(minBound+(5::Word64)) .. minBound])) = []
- (take 7 [(5::Word64),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word64),3..1]) = [5,3,1]
- (take 7 [(5::Word64),3..2]) = [5,3]
- (take 7 [(1::Word64),2..1]) = [1]
- (take 7 [(2::Word64),1..2]) = [2]
- (take 7 [(2::Word64),1..1]) = [2,1]
- (take 7 [(2::Word64),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-x86_64-unknown-openbsd b/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-x86_64-unknown-openbsd
deleted file mode 100644
index 716782c46a..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum03.stdout-x86_64-unknown-openbsd
+++ /dev/null
@@ -1,142 +0,0 @@
-Testing Enum Word8:
- (succ (0::Word8)) = 1
- (succ (minBound::Word8)) = 1
- (succ (maxBound::Word8)) = error "Enum.succ{Word8}: tried to take `succ' of maxBound"
- pred (1::Word8) = 0
- pred (maxBound::Word8) = 254
- pred (minBound::Word8) = error "Enum.pred{Word8}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word8) [1, fromIntegral (minBound::Word8)::Int, fromIntegral (maxBound::Word8)::Int]) = [1,0,255]
- (toEnum (maxBound::Int))::Word8 = error "Enum.toEnum{Word8}: tag (9223372036854775807) is outside of bounds (0,255)"
- (map fromEnum [(1::Word8),minBound,maxBound]) = [1,0,255]
- (take 7 [(1::Word8)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word8)-5)..]) = [250,251,252,253,254,255]
- (take 7 [(1::Word8),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word8),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word8),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word8),0..]) = [1,0]
- (take 7 [(5::Word8),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [250,251,252,253,254,255]
- (take 7 ([(1::Word8) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word8) .. 1])) = [1]
- (take 7 ([(1::Word8) .. 0])) = []
- (take 7 ([(5::Word8) .. 0])) = []
- (take 7 ([(maxBound-(5::Word8)) .. maxBound])) = [250,251,252,253,254,255]
- (take 7 ([(minBound+(5::Word8)) .. minBound])) = []
- (take 7 [(5::Word8),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word8),3..1]) = [5,3,1]
- (take 7 [(5::Word8),3..2]) = [5,3]
- (take 7 [(1::Word8),2..1]) = [1]
- (take 7 [(2::Word8),1..2]) = [2]
- (take 7 [(2::Word8),1..1]) = [2,1]
- (take 7 [(2::Word8),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [251,252,253,254,255]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word16:
- (succ (0::Word16)) = 1
- (succ (minBound::Word16)) = 1
- (succ (maxBound::Word16)) = error "Enum.succ{Word16}: tried to take `succ' of maxBound"
- pred (1::Word16) = 0
- pred (maxBound::Word16) = 65534
- pred (minBound::Word16) = error "Enum.pred{Word16}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word16) [1, fromIntegral (minBound::Word16)::Int, fromIntegral (maxBound::Word16)::Int]) = [1,0,65535]
- (toEnum (maxBound::Int))::Word16 = error "Enum.toEnum{Word16}: tag (9223372036854775807) is outside of bounds (0,65535)"
- (map fromEnum [(1::Word16),minBound,maxBound]) = [1,0,65535]
- (take 7 [(1::Word16)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word16)-5)..]) = [65530,65531,65532,65533,65534,65535]
- (take 7 [(1::Word16),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word16),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word16),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word16),0..]) = [1,0]
- (take 7 [(5::Word16),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [65530,65531,65532,65533,65534,65535]
- (take 7 ([(1::Word16) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word16) .. 1])) = [1]
- (take 7 ([(1::Word16) .. 0])) = []
- (take 7 ([(5::Word16) .. 0])) = []
- (take 7 ([(maxBound-(5::Word16)) .. maxBound])) = [65530,65531,65532,65533,65534,65535]
- (take 7 ([(minBound+(5::Word16)) .. minBound])) = []
- (take 7 [(5::Word16),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word16),3..1]) = [5,3,1]
- (take 7 [(5::Word16),3..2]) = [5,3]
- (take 7 [(1::Word16),2..1]) = [1]
- (take 7 [(2::Word16),1..2]) = [2]
- (take 7 [(2::Word16),1..1]) = [2,1]
- (take 7 [(2::Word16),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [65531,65532,65533,65534,65535]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word32:
- (succ (0::Word32)) = 1
- (succ (minBound::Word32)) = 1
- (succ (maxBound::Word32)) = error "Enum.succ{Word32}: tried to take `succ' of maxBound"
- pred (1::Word32) = 0
- pred (maxBound::Word32) = 4294967294
- pred (minBound::Word32) = error "Enum.pred{Word32}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word32) [1, fromIntegral (minBound::Word32)::Int, fromIntegral (maxBound::Int32)::Int]) = [1,0,2147483647]
- (toEnum (maxBound::Int))::Word32 = error "Enum.toEnum{Word32}: tag (9223372036854775807) is outside of bounds (0,4294967295)"
- (map fromEnum [(1::Word32),minBound,fromIntegral (maxBound::Int)]) = [1,0,4294967295]
- fromEnum (maxBound::Word32) = 4294967295
- (take 7 [(1::Word32)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word32)-5)..]) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 [(1::Word32),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word32),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word32),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word32),0..]) = [1,0]
- (take 7 [(5::Word32),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 ([(1::Word32) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word32) .. 1])) = [1]
- (take 7 ([(1::Word32) .. 0])) = []
- (take 7 ([(5::Word32) .. 0])) = []
- (take 7 ([(maxBound-(5::Word32)) .. maxBound])) = [4294967290,4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 ([(minBound+(5::Word32)) .. minBound])) = []
- (take 7 [(5::Word32),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word32),3..1]) = [5,3,1]
- (take 7 [(5::Word32),3..2]) = [5,3]
- (take 7 [(1::Word32),2..1]) = [1]
- (take 7 [(2::Word32),1..2]) = [2]
- (take 7 [(2::Word32),1..1]) = [2,1]
- (take 7 [(2::Word32),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [4294967291,4294967292,4294967293,4294967294,4294967295]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
-Testing Enum Word64:
- (succ (0::Word64)) = 1
- (succ (minBound::Word64)) = 1
- (succ (maxBound::Word64)) = error "Enum.succ{Word64}: tried to take `succ' of maxBound"
- pred (1::Word64) = 0
- pred (maxBound::Word64) = 18446744073709551614
- pred (minBound::Word64) = error "Enum.pred{Word64}: tried to take `pred' of minBound"
- (map (toEnum::Int->Word64) [1, fromIntegral (minBound::Word64)::Int, maxBound::Int]) = [1,0,9223372036854775807]
- (toEnum (maxBound::Int))::Word64 = 9223372036854775807
- (map fromEnum [(1::Word64),minBound,fromIntegral (maxBound::Int)]) = [1,0,9223372036854775807]
- fromEnum (maxBound::Word64) = error "Enum.fromEnum{Word64}: value (18446744073709551615) is outside of Int's bounds (-9223372036854775808,9223372036854775807)"
- (take 7 [(1::Word64)..]) = [1,2,3,4,5,6,7]
- (take 7 [((maxBound::Word64)-5)..]) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 [(1::Word64),2..]) = [1,2,3,4,5,6,7]
- (take 7 [(1::Word64),7..]) = [1,7,13,19,25,31,37]
- (take 7 [(1::Word64),1..]) = [1,1,1,1,1,1,1]
- (take 7 [(1::Word64),0..]) = [1,0]
- (take 7 [(5::Word64),2..]) = [5,2]
- (take 7 [x, x-1 ..]) = [1,0]
- (take 7 [x, x-1 ..]) = [5,4,3,2,1,0]
- (take 7 [x, (x+1) ..]) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 ([(1::Word64) .. 5])) = [1,2,3,4,5]
- (take 4 ([(1::Word64) .. 1])) = [1]
- (take 7 ([(1::Word64) .. 0])) = []
- (take 7 ([(5::Word64) .. 0])) = []
- (take 7 ([(maxBound-(5::Word64)) .. maxBound])) = [18446744073709551610,18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 ([(minBound+(5::Word64)) .. minBound])) = []
- (take 7 [(5::Word64),4..1]) = [5,4,3,2,1]
- (take 7 [(5::Word64),3..1]) = [5,3,1]
- (take 7 [(5::Word64),3..2]) = [5,3]
- (take 7 [(1::Word64),2..1]) = [1]
- (take 7 [(2::Word64),1..2]) = [2]
- (take 7 [(2::Word64),1..1]) = [2,1]
- (take 7 [(2::Word64),3..1]) = []
- (take 7 [x,(x+1)..maxBound]) = [18446744073709551611,18446744073709551612,18446744073709551613,18446744073709551614,18446744073709551615]
- (take 7 [x,(x-1)..minBound]) = [5,4,3,2,1,0]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum04.hs b/testsuite/tests/ghc-regress/lib/should_run/enum04.hs
deleted file mode 100644
index fed9e8c4ef..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum04.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
-import Control.Exception
-import Prelude hiding (catch)
-
--- enumFrom on basic numeric types should be strict
--- (possibly a bug in the Haskell Report: it specifies that
--- these ops should be strict in the section on Enum, but the
--- sample code in the Prelude doesn't agree, at least for
--- Float and Double).
-
-main = do
- catch (evaluate [error "" :: Int ..] >> return ()) (\(e::SomeException) -> putStrLn "ok1")
- catch (evaluate [error "" :: Integer ..] >> return ()) (\(e::SomeException) -> putStrLn "ok2")
- catch (evaluate [error "" :: Float ..] >> return ()) (\(e::SomeException) -> putStrLn "ok3")
- catch (evaluate [error "" :: Double ..] >> return ()) (\(e::SomeException) -> putStrLn "ok4")
diff --git a/testsuite/tests/ghc-regress/lib/should_run/enum04.stdout b/testsuite/tests/ghc-regress/lib/should_run/enum04.stdout
deleted file mode 100644
index c8a3e21e6d..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/enum04.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-ok1
-ok2
-ok3
-ok4
diff --git a/testsuite/tests/ghc-regress/lib/should_run/exceptionsrun001.hs b/testsuite/tests/ghc-regress/lib/should_run/exceptionsrun001.hs
deleted file mode 100644
index 9c6febc049..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/exceptionsrun001.hs
+++ /dev/null
@@ -1,56 +0,0 @@
-module Main where
-
-import Prelude hiding (catch)
-import Control.OldException
-
-main = do
- ioTest
- errorTest
- noMethodTest
- patMatchTest
- guardTest
- dynTest
-
-ioTest :: IO ()
-ioTest = catchJust userErrors (ioError (userError "wibble"))
- (\ex -> putStr "user exception caught\n")
-
-errorTest :: IO ()
-errorTest = try (evaluate (1 + error "call to 'error'")) >>= \r ->
- case r of
- Left exception -> putStr "error call caught\n"
- Right _ -> error "help!"
-
-instance (Show a, Eq a) => Num (Maybe a) where {}
-
-noMethodTest :: IO ()
-noMethodTest = try (evaluate (Just () + Just ())) >>= \ r ->
- case r of
- Left (NoMethodError err) -> putStr "no method error\n"
- Right _ -> error "help!"
-
-patMatchTest :: IO ()
-patMatchTest = catch (case test1 [1..10] of () -> return ())
- (\ex -> case ex of
- PatternMatchFail err -> putStr err
- other -> error "help!")
-
-test1 [] = ()
-
-guardTest = catch (case test2 of () -> return ())
- (\ex -> case ex of
- PatternMatchFail err -> putStr err
- other -> error "help!")
-
-test2 | all (==0) [1] = ()
-
-dynTest = catchDyn (case throwDyn (42::Int, (+1)::Int->Int) of () -> return ())
- (\(i,f) -> let x = f (i::Int) :: Int in putStr (show x))
-
-{-
-recSelTest
-recConTest
-recUpdTest
-assertTest
-arithTest
--}
diff --git a/testsuite/tests/ghc-regress/lib/should_run/exceptionsrun001.stdout b/testsuite/tests/ghc-regress/lib/should_run/exceptionsrun001.stdout
deleted file mode 100644
index 2d1930f8c9..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/exceptionsrun001.stdout
+++ /dev/null
@@ -1,6 +0,0 @@
-user exception caught
-error call caught
-no method error
-exceptionsrun001.hs:38:1-13: Non-exhaustive patterns in function test1
-exceptionsrun001.hs:45:1-26: Non-exhaustive patterns in function test2
-43 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/should_run/exceptionsrun002.hs b/testsuite/tests/ghc-regress/lib/should_run/exceptionsrun002.hs
deleted file mode 100644
index 13b642a3ab..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/exceptionsrun002.hs
+++ /dev/null
@@ -1,105 +0,0 @@
-module Main where
- {
- import qualified Control.OldException as Exception;
- import Data.IORef;
- import Prelude;
-
- safeCatch :: IO () -> IO ();
- safeCatch f = Exception.catch f (\_ -> return ());
-
- type Thrower = IO Bool;
-
- type Catcher = IO Bool -> IO () -> IO ();
-
- checkCatch :: Catcher -> Thrower -> IO Bool;
- checkCatch catcher thrower = do
- {
- ref <- newIORef False;
- safeCatch (catcher thrower (writeIORef ref True));
- readIORef ref;
- };
-
- data Named a = MkNamed String a;
-
- checkNamedCatch :: Named Catcher -> Named Thrower -> IO ();
- checkNamedCatch (MkNamed cname catcher) (MkNamed tname thrower) = do
- {
- didCatch <- checkCatch catcher thrower;
- putStrLn (cname ++ (if didCatch then " CAUGHT " else " MISSED ") ++ tname);
- };
-
- checkNamedCatches :: [Named Catcher] -> [Named Thrower] -> IO ();
- checkNamedCatches [] _ = return ();
- checkNamedCatches _ [] = return ();
- checkNamedCatches [c] (t:tr) = do
- {
- checkNamedCatch c t;
- checkNamedCatches [c] tr;
- };
- checkNamedCatches (c:cr) ts = do
- {
- checkNamedCatches [c] ts;
- checkNamedCatches cr ts
- };
-
-
- -- throwers
-
- returnThrower :: Named Thrower;
- returnThrower = MkNamed "return" (return True);
-
- returnUndefinedThrower :: Named Thrower;
- returnUndefinedThrower = MkNamed "return undefined" (return undefined);
-
- returnErrorThrower :: Named Thrower;
- returnErrorThrower = MkNamed "return error" (return (error "some error"));
-
- undefinedThrower :: Named Thrower;
- undefinedThrower = MkNamed "undefined" undefined;
-
- failThrower :: Named Thrower;
- failThrower = MkNamed "fail" (fail "some failure");
-
- errorThrower :: Named Thrower;
- errorThrower = MkNamed "error" (error "some error");
-
- throwThrower :: Named Thrower;
- throwThrower = MkNamed "Exception.throw"
- (Exception.throw (Exception.ErrorCall "throw error"));
-
- ioErrorErrorCallThrower :: Named Thrower;
- ioErrorErrorCallThrower = MkNamed "ioError ErrorCall"
- (Exception.throwIO (Exception.ErrorCall "throw error"));
-
- ioErrorIOExceptionThrower :: Named Thrower;
- ioErrorIOExceptionThrower = MkNamed "ioError IOException"
- (Exception.throwIO (Exception.IOException undefined));
-
- returnThrowThrower :: Named Thrower;
- returnThrowThrower = MkNamed "return Exception.throw"
- (return (Exception.throw (Exception.ErrorCall "throw error")));
-
-
- -- catchers
-
- bindCatcher :: Named Catcher;
- bindCatcher = MkNamed ">>" (>>);
-
- preludeCatchCatcher :: Named Catcher;
- preludeCatchCatcher = MkNamed "Prelude.catch"
- (\f cc -> Prelude.catch (f >> (return ())) (const cc));
-
- ceCatchCatcher :: Named Catcher;
- ceCatchCatcher = MkNamed "Exception.catch"
- (\f cc -> Exception.catch (f >> (return ())) (const cc));
-
- finallyCatcher :: Named Catcher;
- finallyCatcher = MkNamed "Exception.finally"
- (\f cc -> Exception.finally (f >> (return ())) cc);
-
- main = checkNamedCatches
- [bindCatcher,preludeCatchCatcher,ceCatchCatcher,finallyCatcher]
- [returnThrower,returnUndefinedThrower,returnThrowThrower,returnErrorThrower,failThrower,
- errorThrower,throwThrower,ioErrorErrorCallThrower,ioErrorIOExceptionThrower,undefinedThrower];
-
- }
diff --git a/testsuite/tests/ghc-regress/lib/should_run/exceptionsrun002.stdout b/testsuite/tests/ghc-regress/lib/should_run/exceptionsrun002.stdout
deleted file mode 100644
index e15116f5c0..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/exceptionsrun002.stdout
+++ /dev/null
@@ -1,40 +0,0 @@
->> CAUGHT return
->> CAUGHT return undefined
->> CAUGHT return Exception.throw
->> CAUGHT return error
->> MISSED fail
->> MISSED error
->> MISSED Exception.throw
->> MISSED ioError ErrorCall
->> MISSED ioError IOException
->> MISSED undefined
-Prelude.catch MISSED return
-Prelude.catch MISSED return undefined
-Prelude.catch MISSED return Exception.throw
-Prelude.catch MISSED return error
-Prelude.catch CAUGHT fail
-Prelude.catch MISSED error
-Prelude.catch MISSED Exception.throw
-Prelude.catch MISSED ioError ErrorCall
-Prelude.catch CAUGHT ioError IOException
-Prelude.catch MISSED undefined
-Exception.catch MISSED return
-Exception.catch MISSED return undefined
-Exception.catch MISSED return Exception.throw
-Exception.catch MISSED return error
-Exception.catch CAUGHT fail
-Exception.catch CAUGHT error
-Exception.catch CAUGHT Exception.throw
-Exception.catch CAUGHT ioError ErrorCall
-Exception.catch CAUGHT ioError IOException
-Exception.catch CAUGHT undefined
-Exception.finally CAUGHT return
-Exception.finally CAUGHT return undefined
-Exception.finally CAUGHT return Exception.throw
-Exception.finally CAUGHT return error
-Exception.finally CAUGHT fail
-Exception.finally CAUGHT error
-Exception.finally CAUGHT Exception.throw
-Exception.finally CAUGHT ioError ErrorCall
-Exception.finally CAUGHT ioError IOException
-Exception.finally CAUGHT undefined
diff --git a/testsuite/tests/ghc-regress/lib/should_run/length001.hs b/testsuite/tests/ghc-regress/lib/should_run/length001.hs
deleted file mode 100644
index 321a1b9dfc..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/length001.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-module Main (main) where
-
-import Data.List
-
-main :: IO ()
-main = do print (genericLength [1..10000000] :: Int)
- print (genericLength [1..10000000] :: Integer)
diff --git a/testsuite/tests/ghc-regress/lib/should_run/length001.stdout b/testsuite/tests/ghc-regress/lib/should_run/length001.stdout
deleted file mode 100644
index 4e65c4e0d2..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/length001.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-10000000
-10000000
diff --git a/testsuite/tests/ghc-regress/lib/should_run/list001.hs b/testsuite/tests/ghc-regress/lib/should_run/list001.hs
deleted file mode 100644
index c0a1eced27..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/list001.hs
+++ /dev/null
@@ -1,152 +0,0 @@
-module Main where
-
-import Data.List
-import Control.Exception
-import Prelude hiding (catch)
-
--- This module briefly tests all the functions in PrelList and a few
--- from List.
-
--- ToDo: test strictness properties.
-
-main = do
-
- -- head
- print (head [1,2,3,4], head "a")
- catch (print (head [] :: String)) (\(ErrorCall _) -> putStr "head []\n")
-
- -- tail
- print (tail [1,2,3,4], tail "a")
- catch (print (tail [] :: String)) (\(ErrorCall _) -> putStr "tail []\n")
-
- -- init
- print (init [1,2,3,4], init "a")
- catch (print (init [] :: String)) (\(ErrorCall _) -> putStr "init []\n")
-
- -- last
- print (last [1,2,3,4], last "a")
- catch (print (last [] :: String)) (\(ErrorCall _) -> putStr "last []\n")
-
- -- null
- print [null [], null "abc"]
-
- -- length
- print (length [1..10])
-
- -- foldl
- print (foldl (+) 1 [1..10])
-
- -- foldl1
- print (foldl1 (+) [1..10])
- catch (print (foldl1 (+) [] :: Int)) (\(ErrorCall _) -> putStr "foldl1 []\n")
-
- -- scanl
- print (scanl (+) 1 [1..10])
-
- -- scanl1
- print (scanl1 (+) [1..10])
- print (scanl1 (+) [] :: [Int])
-
- -- foldr1
- print (foldr1 (+) [1..10])
- catch (print (foldr1 (+) [] :: Int)) (\(ErrorCall _) -> putStr "foldr1 []\n")
-
- -- scanr
- print (scanr (+) 1 [1..10])
-
- -- scanr1
- print (scanr1 (+) [1..10])
- print (scanr1 (+) [] :: [Int])
-
- -- iterate
- print (take 10 (cycle (take 4 (iterate (+1) 1))))
-
- -- take
- print (take 4 (repeat "x"), take 0 (repeat "x"), take 5 [1..4])
- catch (print (take (-1) [1..10])) (\(ErrorCall _) -> putStr "take (-1)\n")
-
- -- replicate
- print [replicate 2 "abc", replicate 0 "abc", replicate 3 []]
-
- -- drop
- print [drop 5 [1..10], drop 0 [1..10], drop 5 [1..4]]
- catch (print (drop (-1) [1..10])) (\(ErrorCall _) -> putStr "drop (-1)\n")
-
- -- splitAt
- print [splitAt 5 [1..10], splitAt 5 [1..4]]
- catch (print (splitAt (-1) [1..10])) (\(ErrorCall _) -> putStr "splitAt (-1)\n")
-
- -- scan
- print (span (<5) [1..10])
-
- -- break
- print (break (<5) [1..10])
-
- -- reverse
- print [reverse [1..10], reverse []]
-
- -- and
- print [and [], and [True], and [False]]
-
- -- or
- print [or [], or [True], or [False]]
-
- -- elem
- print [elem 5 [1..10], elem 0 [1..10], elem 1 []]
-
- -- notElem
- print [notElem 5 [1..10], notElem 0 [1..10], notElem 1 []]
-
- -- lookkup
- print (lookup 4 (zip [1..10] (reverse [1..10])))
-
- -- sum
- print [sum [1..10], sum []]
-
- -- product
- print [product [1..10], product []]
-
- -- maximum
- print (maximum [1..10])
- catch (print (maximum [] :: Int)) (\(ErrorCall _) -> putStr "maximum []\n")
-
- -- minimum
- print (minimum [1..10])
- catch (print (minimum [] :: Int)) (\(ErrorCall _) -> putStr "minimum []\n")
-
- -- concatMap
- print (concatMap (:[]) [(1::Int)..10])
-
- -- zip
- print [zip [1] [2], zip [1] [], zip [] [2], zip [1..5] [2..6]]
-
- -- zip3
- print (zip3 [1,2] [3,4] [5,6])
-
- -- zipWith
- print [zipWith (+) [1,2] [3,4], zipWith (+) [1] [], zipWith (+) [] []]
-
- -- unzip
- print [unzip [(1,2),(3,4)], unzip []]
-
- -- unzip3
- print [unzip3 [(1,2,3),(3,4,5)], unzip3 []]
-
- -- unlines
- print (unlines (lines "a\nb\nc\n"), lines "", unlines [])
-
- -- words
- print (unwords (words "a b c d"), words "", unwords [])
-
- -- deleteBy
- print [deleteBy (==) 1 [0,1,1,2,3,4],
- deleteBy (==) (error "deleteBy") []]
-
- -- delete
- print [delete 1 [0,1,1,2,3,4],
- delete (error "delete") []]
-
- -- \\
- print [ [0,1,1,2,3,4] \\ [3,2,1],
- [1,2,3,4] \\ [],
- [] \\ [error "\\\\"] ]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/list001.stdout b/testsuite/tests/ghc-regress/lib/should_run/list001.stdout
deleted file mode 100644
index b8254f066e..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/list001.stdout
+++ /dev/null
@@ -1,54 +0,0 @@
-(1,'a')
-"head []
-([2,3,4],"")
-"tail []
-([1,2,3],"")
-"init []
-(4,'a')
-"last []
-[True,False]
-10
-56
-55
-foldl1 []
-[1,2,4,7,11,16,22,29,37,46,56]
-[1,3,6,10,15,21,28,36,45,55]
-[]
-55
-foldr1 []
-[56,55,53,50,46,41,35,28,20,11,1]
-[55,54,52,49,45,40,34,27,19,10]
-[]
-[1,2,3,4,1,2,3,4,1,2]
-(["x","x","x","x"],[],[1,2,3,4])
-[]
-[["abc","abc"],[],["","",""]]
-[[6,7,8,9,10],[1,2,3,4,5,6,7,8,9,10],[]]
-[1,2,3,4,5,6,7,8,9,10]
-[([1,2,3,4,5],[6,7,8,9,10]),([1,2,3,4],[])]
-([],[1,2,3,4,5,6,7,8,9,10])
-([1,2,3,4],[5,6,7,8,9,10])
-([],[1,2,3,4,5,6,7,8,9,10])
-[[10,9,8,7,6,5,4,3,2,1],[]]
-[True,True,False]
-[False,True,False]
-[True,False,False]
-[False,True,True]
-Just 7
-[55,0]
-[3628800,1]
-10
-maximum []
-1
-minimum []
-[1,2,3,4,5,6,7,8,9,10]
-[[(1,2)],[],[],[(1,2),(2,3),(3,4),(4,5),(5,6)]]
-[(1,3,5),(2,4,6)]
-[[4,6],[],[]]
-[([1,3],[2,4]),([],[])]
-[([1,3],[2,4],[3,5]),([],[],[])]
-("a\nb\nc\n",[],"")
-("a b c d",[],"")
-[[0,1,2,3,4],[]]
-[[0,1,2,3,4],[]]
-[[0,1,4],[1,2,3,4],[]]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/list001.stdout-ghc b/testsuite/tests/ghc-regress/lib/should_run/list001.stdout-ghc
deleted file mode 100644
index 16e780ac7b..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/list001.stdout-ghc
+++ /dev/null
@@ -1,54 +0,0 @@
-(1,'a')
-head []
-([2,3,4],"")
-tail []
-([1,2,3],"")
-init []
-(4,'a')
-last []
-[True,False]
-10
-56
-55
-foldl1 []
-[1,2,4,7,11,16,22,29,37,46,56]
-[1,3,6,10,15,21,28,36,45,55]
-[]
-55
-foldr1 []
-[56,55,53,50,46,41,35,28,20,11,1]
-[55,54,52,49,45,40,34,27,19,10]
-[]
-[1,2,3,4,1,2,3,4,1,2]
-(["x","x","x","x"],[],[1,2,3,4])
-[]
-[["abc","abc"],[],["","",""]]
-[[6,7,8,9,10],[1,2,3,4,5,6,7,8,9,10],[]]
-[1,2,3,4,5,6,7,8,9,10]
-[([1,2,3,4,5],[6,7,8,9,10]),([1,2,3,4],[])]
-([],[1,2,3,4,5,6,7,8,9,10])
-([1,2,3,4],[5,6,7,8,9,10])
-([],[1,2,3,4,5,6,7,8,9,10])
-[[10,9,8,7,6,5,4,3,2,1],[]]
-[True,True,False]
-[False,True,False]
-[True,False,False]
-[False,True,True]
-Just 7
-[55,0]
-[3628800,1]
-10
-maximum []
-1
-minimum []
-[1,2,3,4,5,6,7,8,9,10]
-[[(1,2)],[],[],[(1,2),(2,3),(3,4),(4,5),(5,6)]]
-[(1,3,5),(2,4,6)]
-[[4,6],[],[]]
-[([1,3],[2,4]),([],[])]
-[([1,3],[2,4],[3,5]),([],[],[])]
-("a\nb\nc\n",[],"")
-("a b c d",[],"")
-[[0,1,2,3,4],[]]
-[[0,1,2,3,4],[]]
-[[0,1,4],[1,2,3,4],[]]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/list002.hs b/testsuite/tests/ghc-regress/lib/should_run/list002.hs
deleted file mode 100644
index 188ff8953d..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/list002.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! Test that List.sortBy is stable.
-
-import Data.List
-
-main = print (sortBy (\(a,b) (a',b')->compare a a')
- ([1,1,1,1,1,1,1,1,1,1]`zip`[1..10]))
diff --git a/testsuite/tests/ghc-regress/lib/should_run/list002.stdout b/testsuite/tests/ghc-regress/lib/should_run/list002.stdout
deleted file mode 100644
index 18e1fcad8a..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/list002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[(1,1),(1,2),(1,3),(1,4),(1,5),(1,6),(1,7),(1,8),(1,9),(1,10)]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/list003.hs b/testsuite/tests/ghc-regress/lib/should_run/list003.hs
deleted file mode 100644
index a792094438..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/list003.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! Test that length doesn't give a stack overflow
-
-module Main (main) where
-
-main :: IO ()
-main = print $ length $ filter odd [0 .. 9999999]
-
diff --git a/testsuite/tests/ghc-regress/lib/should_run/list003.stdout b/testsuite/tests/ghc-regress/lib/should_run/list003.stdout
deleted file mode 100644
index 447a331b1b..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/list003.stdout
+++ /dev/null
@@ -1 +0,0 @@
-5000000
diff --git a/testsuite/tests/ghc-regress/lib/should_run/memo001.hs b/testsuite/tests/ghc-regress/lib/should_run/memo001.hs
deleted file mode 100644
index 551bcd8cf4..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/memo001.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-module Main(main) where
-
-import Memo1
-
-testMemo = do
- let keys = [ [1..n] | n <- [1..1000] ]
- keys2 = [ [n,n-1..1] | n <- [1..1000] ]
- mlength = memo length
- putStr (show (map mlength (keys ++ keys ++ keys2 ++ keys2)))
- putStr (show (mlength [1..100000]))
-
--- mlength will memoize itself over each element of 'keys', returning
--- the memoized result the second time around. Then we move onto
--- keys2, and while we're doing this the first lot of memo table
--- entries can be purged. Finally, we do a a large computation
--- (length [1..10000]) to allow time for the memo table to be fully
--- purged.
-
-main = testMemo
diff --git a/testsuite/tests/ghc-regress/lib/should_run/memo001.stdout b/testsuite/tests/ghc-regress/lib/should_run/memo001.stdout
deleted file mode 100644
index 0e1bce9647..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/memo001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000]100000 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/should_run/memo002.hs b/testsuite/tests/ghc-regress/lib/should_run/memo002.hs
deleted file mode 100644
index aa0a1d27c9..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/memo002.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-module Main where
-
-import Memo2 ( memo )
-import Data.List ( genericLength, genericReplicate )
-import System.Environment ( getArgs )
-
-main :: IO ()
-main = do (arg:_) <- getArgs
- mapM_ printTriple [ (i,fib i,mfib i) | i <- [10..read arg] ]
- where printTriple (i,fi,mfi) = do print i
- print fi
- print mfi
- putStrLn ""
-
--- There is not much point in memoising Integers, so we use unary "numbers" instead
-mfib :: Integer -> Integer
-mfib = genericLength . mfib' . flip genericReplicate ()
-
-mfib' :: [()] -> [()]
-mfib' = memo ufib
-
-ufib :: [()] -> [()]
-ufib [] = [()]
-ufib [()] = [()]
-ufib (():n1@(():n2)) = mfib' n1 ++ mfib' n2
-
-fib :: Integer -> Integer
-fib 0 = 1
-fib 1 = 1
-fib n = fib (n-1) + fib (n-2)
diff --git a/testsuite/tests/ghc-regress/lib/should_run/memo002.stdout b/testsuite/tests/ghc-regress/lib/should_run/memo002.stdout
deleted file mode 100644
index 7369b408ef..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/memo002.stdout
+++ /dev/null
@@ -1,44 +0,0 @@
-10
-89
-89
-
-11
-144
-144
-
-12
-233
-233
-
-13
-377
-377
-
-14
-610
-610
-
-15
-987
-987
-
-16
-1597
-1597
-
-17
-2584
-2584
-
-18
-4181
-4181
-
-19
-6765
-6765
-
-20
-10946
-10946
-
diff --git a/testsuite/tests/ghc-regress/lib/should_run/packedstring001.hs b/testsuite/tests/ghc-regress/lib/should_run/packedstring001.hs
deleted file mode 100644
index 9ee24e232c..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/packedstring001.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-module Main (main) where
-
-import Char (isSpace)
-import Data.PackedString
-
--- Bug in PackedString.lhs (fixed in rev 1.5)
-
-foo = packString "this is a test"
-main = print (filterPS (not.isSpace) foo)
-
diff --git a/testsuite/tests/ghc-regress/lib/should_run/packedstring001.stdout b/testsuite/tests/ghc-regress/lib/should_run/packedstring001.stdout
deleted file mode 100644
index fbd5abc3a0..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/packedstring001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"thisisatest"
diff --git a/testsuite/tests/ghc-regress/lib/should_run/rand001.hs b/testsuite/tests/ghc-regress/lib/should_run/rand001.hs
deleted file mode 100644
index 3567ae0dd8..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/rand001.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-module Main(main) where
-
-import System.Random
-
-tstRnd rng = checkRange rng (genRnd 50 rng)
-
-genRnd n rng = take n (randomRs rng (mkStdGen 2))
-
-checkRange (lo,hi) = all pred
- where
- pred
- | lo <= hi = \ x -> x >= lo && x <= hi
- | otherwise = \ x -> x >= hi && x <= lo
-
-main :: IO ()
-main = do
- print (tstRnd (1,5::Double))
- print (tstRnd (1,5::Int))
- print (tstRnd (10,54::Integer))
- print (tstRnd ((-6),2::Int))
- print (tstRnd (2,(-6)::Int))
-
diff --git a/testsuite/tests/ghc-regress/lib/should_run/rand001.stdout b/testsuite/tests/ghc-regress/lib/should_run/rand001.stdout
deleted file mode 100644
index 2e883c51de..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/rand001.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-True
-True
-True
-True
-True
diff --git a/testsuite/tests/ghc-regress/lib/should_run/ratio001.hs b/testsuite/tests/ghc-regress/lib/should_run/ratio001.hs
deleted file mode 100644
index 4d65dfbccf..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/ratio001.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-import Data.Ratio
-
--- !!! Test that (%) has the right fixity
-main = print (2^3%5)
diff --git a/testsuite/tests/ghc-regress/lib/should_run/ratio001.stdout b/testsuite/tests/ghc-regress/lib/should_run/ratio001.stdout
deleted file mode 100644
index f7355f9a4a..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/ratio001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-8 % 5
diff --git a/testsuite/tests/ghc-regress/lib/should_run/ratio001.stdout-ghc b/testsuite/tests/ghc-regress/lib/should_run/ratio001.stdout-ghc
deleted file mode 100644
index f7355f9a4a..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/ratio001.stdout-ghc
+++ /dev/null
@@ -1 +0,0 @@
-8 % 5
diff --git a/testsuite/tests/ghc-regress/lib/should_run/reads001.hs b/testsuite/tests/ghc-regress/lib/should_run/reads001.hs
deleted file mode 100644
index 318367e7f4..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/reads001.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- Test the classic "\SOH" ambiguity
-
-module Main(main) where
-
-main = do { print soh ; print (length (fst (head soh))) ;
- print so ; print (length (fst (head so))) }
- where
- so, soh :: [(String,String)]
- soh = reads "\"\\SOH\"" -- Should read \SOH
- so = reads "\"\\SOx\"" -- Should read \SO followed by x
diff --git a/testsuite/tests/ghc-regress/lib/should_run/reads001.stdout b/testsuite/tests/ghc-regress/lib/should_run/reads001.stdout
deleted file mode 100644
index 23639933e8..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/reads001.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-[("\SOH","")]
-1
-[("\SOx","")]
-2
diff --git a/testsuite/tests/ghc-regress/lib/should_run/show001.hs b/testsuite/tests/ghc-regress/lib/should_run/show001.hs
deleted file mode 100644
index 69c27d01ea..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/show001.hs
+++ /dev/null
@@ -1,24 +0,0 @@
--- !!! Testing Show on Maybes and Eithers
-module Main(main) where
-
-x :: Maybe ()
-x = Nothing
-
-main :: IO ()
-main = do
- print x
- print (Just ())
- print ((Just (Just ())) :: Maybe (Maybe ()))
- print (Just x)
- print ((Left 'a') :: Either Char Int)
- print ((Right 'b') :: Either Int Char)
- print ((Right x) :: Either Int (Maybe ()))
- print ((Right (Just 'c')) :: Either Int (Maybe Char))
- print ((Right (Right 'd')) :: Either Int (Either Char Char))
- print ((Right (Left 'e')) :: Either Int (Either Char Int))
- print ((Left 'f') :: Either Char Int)
- print ((Left x) :: Either (Maybe ()) Char)
- print ((Left (Just 'g')) :: Either (Maybe Char) ())
- print ((Left (Right 'h')) :: Either (Either Int Char) Char)
- print ((Left (Right 'i')) :: Either (Either Int Char) ())
-
diff --git a/testsuite/tests/ghc-regress/lib/should_run/show001.stdout b/testsuite/tests/ghc-regress/lib/should_run/show001.stdout
deleted file mode 100644
index 3be0062e87..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/show001.stdout
+++ /dev/null
@@ -1,15 +0,0 @@
-Nothing
-Just ()
-Just (Just ())
-Just Nothing
-Left 'a'
-Right 'b'
-Right Nothing
-Right (Just 'c')
-Right (Right 'd')
-Right (Left 'e')
-Left 'f'
-Left Nothing
-Left (Just 'g')
-Left (Right 'h')
-Left (Right 'i')
diff --git a/testsuite/tests/ghc-regress/lib/should_run/stableptr001.hs b/testsuite/tests/ghc-regress/lib/should_run/stableptr001.hs
deleted file mode 100644
index 1bc857aba6..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/stableptr001.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-
-module Main where
-
-import Foreign
-
--- simple test for building/dereferencing stable ptrs
-
-main
- = do l <- mapM newStablePtr [1..100000]
- sum <- stable_sum l
- print sum
-
-stable_sum :: [StablePtr Integer] -> IO Integer
-stable_sum [] = return 0
-stable_sum (x:xs)
- = do x' <- deRefStablePtr x
- freeStablePtr x
- xs' <- stable_sum xs
- return (x' + xs')
diff --git a/testsuite/tests/ghc-regress/lib/should_run/stableptr001.stdout b/testsuite/tests/ghc-regress/lib/should_run/stableptr001.stdout
deleted file mode 100644
index 90ee71a089..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/stableptr001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-5000050000
diff --git a/testsuite/tests/ghc-regress/lib/should_run/stableptr003.hs b/testsuite/tests/ghc-regress/lib/should_run/stableptr003.hs
deleted file mode 100644
index 77f4e3c9dc..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/stableptr003.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-module Main where
-
-import Control.Monad
-import System.Mem.StableName
-import Control.Exception
-
-main = do
- mapM_ evaluate list
- stable_list1 <- mapM makeStableName list
- stable_list2 <- mapM makeStableName list
- unless (stable_list1 == stable_list2) $ do
- let l1 = map hashStableName stable_list1
- let l2 = map hashStableName stable_list2
- print $ zip l1 l2
-
-list = [1..10000] :: [Integer]
diff --git a/testsuite/tests/ghc-regress/lib/should_run/stableptr004.hs b/testsuite/tests/ghc-regress/lib/should_run/stableptr004.hs
deleted file mode 100644
index 2d6f567cae..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/stableptr004.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-import Foreign.StablePtr
-
--- compile without optimisation.
--- run with +RTS -D256 to see the stable pointer being garbage collected.
-
-main = do
- let xs = [ 1 .. 50000 ]
- let ys = [ 1 .. 60000 ]
- s1 <- newStablePtr xs
- print (sum xs)
- freeStablePtr s1
- print (sum ys)
diff --git a/testsuite/tests/ghc-regress/lib/should_run/stableptr004.stdout b/testsuite/tests/ghc-regress/lib/should_run/stableptr004.stdout
deleted file mode 100644
index 30e717b5bd..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/stableptr004.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-1250025000
-1800030000
diff --git a/testsuite/tests/ghc-regress/lib/should_run/stableptr005.hs b/testsuite/tests/ghc-regress/lib/should_run/stableptr005.hs
deleted file mode 100644
index dc4928ab6c..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/stableptr005.hs
+++ /dev/null
@@ -1,22 +0,0 @@
--- !!! triggered a temporary bug in freeStablePtr around 20020424
-
-module Main where
-import Foreign.StablePtr (newStablePtr, freeStablePtr)
-
-data Foo = A | B | C | D
-
-main :: IO ()
-main = do aSPtr <- newStablePtr A
- bSPtr <- newStablePtr B
- cSPtr <- newStablePtr C
- cSPtr' <- newStablePtr C
- freeStablePtr aSPtr
- freeStablePtr bSPtr
- freeStablePtr cSPtr
- freeStablePtr cSPtr'
- aSPtr <- newStablePtr A
- bSPtr <- newStablePtr B
- cSPtr <- newStablePtr C
- dSPtr <- newStablePtr D
- print "Hello World"
-
diff --git a/testsuite/tests/ghc-regress/lib/should_run/stableptr005.stdout b/testsuite/tests/ghc-regress/lib/should_run/stableptr005.stdout
deleted file mode 100644
index 06ae699f22..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/stableptr005.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"Hello World"
diff --git a/testsuite/tests/ghc-regress/lib/should_run/text001.hs b/testsuite/tests/ghc-regress/lib/should_run/text001.hs
deleted file mode 100644
index 18aab82dd9..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/text001.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{- Bug report 28 May 99
-
-When compiled with ghc-4.02, everything's fine, it outputs "Value 7" as
-expected. But compiled with ghc-pre-4.03 it yields this error message.
-
- Fail: Prelude.read: no parse
--}
-
-module Main where
-
-data Msg = Value Int | Inc deriving (Show, Read)
-
-main = do let v = read "Value 7"::Msg
- print v
-
diff --git a/testsuite/tests/ghc-regress/lib/should_run/text001.stdout b/testsuite/tests/ghc-regress/lib/should_run/text001.stdout
deleted file mode 100644
index a0c782242e..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/text001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Value 7
diff --git a/testsuite/tests/ghc-regress/lib/should_run/tup001.hs b/testsuite/tests/ghc-regress/lib/should_run/tup001.hs
deleted file mode 100644
index a70e09027a..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/tup001.hs
+++ /dev/null
@@ -1,33 +0,0 @@
--- Test instances for tuples up to 15
--- For Read, Show, Eq, Ord, Bounded
-
-module Main where
-
-data T = A | B | C | D | E | F | G | H | I | J | K | L | M | N | O
- deriving( Eq, Ord, Show, Read, Bounded )
-
-t15 = (A,B,C,D,E,F,G,H,I,J,K,L,M,N,O)
-t14 = (A,B,C,D,E,F,G,H,I,J,K,L,M,N)
-t13 = (A,B,C,D,E,F,G,H,I,J,K,L,M)
-t12 = (A,B,C,D,E,F,G,H,I,J,K,L)
-t11 = (A,B,C,D,E,F,G,H,I,J,K)
-t10 = (A,B,C,D,E,F,G,H,I,J)
-t9 = (A,B,C,D,E,F,G,H,I)
-t8 = (A,B,C,D,E,F,G,H)
-t7 = (A,B,C,D,E,F,G)
-t6 = (A,B,C,D,E,F)
-t5 = (A,B,C,D,E)
-t4 = (A,B,C,D)
-t3 = (A,B,C)
-t2 = (A,B)
-t0 = ()
-
-big = (t0,t2,t3,t4,t5,t6,t7,t8,t9,t10,t11,t12,t13,t14,t15)
-
-main = do print big
- print (read (show big) `asTypeOf` big)
- print (big == big)
- print (big < big)
- print (big > big)
- print (minBound `asTypeOf` big)
- print (maxBound `asTypeOf` big) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/lib/should_run/tup001.stdout b/testsuite/tests/ghc-regress/lib/should_run/tup001.stdout
deleted file mode 100644
index 540340b816..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/tup001.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-((),(A,B),(A,B,C),(A,B,C,D),(A,B,C,D,E),(A,B,C,D,E,F),(A,B,C,D,E,F,G),(A,B,C,D,E,F,G,H),(A,B,C,D,E,F,G,H,I),(A,B,C,D,E,F,G,H,I,J),(A,B,C,D,E,F,G,H,I,J,K),(A,B,C,D,E,F,G,H,I,J,K,L),(A,B,C,D,E,F,G,H,I,J,K,L,M),(A,B,C,D,E,F,G,H,I,J,K,L,M,N),(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O))
-((),(A,B),(A,B,C),(A,B,C,D),(A,B,C,D,E),(A,B,C,D,E,F),(A,B,C,D,E,F,G),(A,B,C,D,E,F,G,H),(A,B,C,D,E,F,G,H,I),(A,B,C,D,E,F,G,H,I,J),(A,B,C,D,E,F,G,H,I,J,K),(A,B,C,D,E,F,G,H,I,J,K,L),(A,B,C,D,E,F,G,H,I,J,K,L,M),(A,B,C,D,E,F,G,H,I,J,K,L,M,N),(A,B,C,D,E,F,G,H,I,J,K,L,M,N,O))
-True
-False
-False
-((),(A,A),(A,A,A),(A,A,A,A),(A,A,A,A,A),(A,A,A,A,A,A),(A,A,A,A,A,A,A),(A,A,A,A,A,A,A,A),(A,A,A,A,A,A,A,A,A),(A,A,A,A,A,A,A,A,A,A),(A,A,A,A,A,A,A,A,A,A,A),(A,A,A,A,A,A,A,A,A,A,A,A),(A,A,A,A,A,A,A,A,A,A,A,A,A),(A,A,A,A,A,A,A,A,A,A,A,A,A,A),(A,A,A,A,A,A,A,A,A,A,A,A,A,A,A))
-((),(O,O),(O,O,O),(O,O,O,O),(O,O,O,O,O),(O,O,O,O,O,O),(O,O,O,O,O,O,O),(O,O,O,O,O,O,O,O),(O,O,O,O,O,O,O,O,O),(O,O,O,O,O,O,O,O,O,O),(O,O,O,O,O,O,O,O,O,O,O),(O,O,O,O,O,O,O,O,O,O,O,O),(O,O,O,O,O,O,O,O,O,O,O,O,O),(O,O,O,O,O,O,O,O,O,O,O,O,O,O),(O,O,O,O,O,O,O,O,O,O,O,O,O,O,O))
diff --git a/testsuite/tests/ghc-regress/lib/should_run/weak001.hs b/testsuite/tests/ghc-regress/lib/should_run/weak001.hs
deleted file mode 100644
index 60dc9c4a12..0000000000
--- a/testsuite/tests/ghc-regress/lib/should_run/weak001.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-import Foreign
-import System.Mem.Weak
-
-kill:: Ptr a -> IO ()
-kill a = do
- w <- mkWeakPtr a Nothing
- addFinalizer a $
- deRefWeak w >> return ()
-
-main:: IO ()
-main = sequence_ . take 10000 . repeat $
- mallocBytes 100 >>= kill >> return ()
diff --git a/testsuite/tests/ghc-regress/lib/socket/Makefile b/testsuite/tests/ghc-regress/lib/socket/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket001.hs b/testsuite/tests/ghc-regress/lib/socket/socket001.hs
deleted file mode 100644
index 0af7afa0d7..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket001.hs
+++ /dev/null
@@ -1,58 +0,0 @@
-{- server
-
-The purpose of this test driver is to test TCP Stream sockets.
-All values have been hard coded since the BSD library is not used to
-query the databases for the values. In therory this code is thus not
-portable but net007/Main.hs provides a portable version using the BSD
-module.
-
-This creates a stream socket bound to port 5000 and waits for incoming
-messages it then reads all available data before closing the
-connection to that peer.
-
-No form of error checking is provided other than that already provided
-by module SocketPrim.
-
-
-TESTS:
- socket
- bindSocket
- listen
- accept
- readSocket
- sClose
-
--}
-
-
-module Main where
-
-import SocketPrim
-
-main = do
- s <- socket AF_INET Stream 6
- bindSocket s (SockAddrInet (fromIntegral 5000) iNADDR_ANY)
- listen s 5
-
- let
- loop =
- accept s >>= \ (s',peerAddr) ->
- putStr "*** Start of Transfer ***\n" >>
- h <- socketToHandle s'
- let
- read_all =
- b <- hEOF h
- c <- hGetChar h
- putChar c
-
- if nbytes /= 0 then
- putStr str >>
- read_all
- else
- putStr "\n*** End of Transfer ***\n" >>
- sClose s'
- in
- read_all
-
- loop
-
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket001.stdout b/testsuite/tests/ghc-regress/lib/socket/socket001.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket001.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket002.hs b/testsuite/tests/ghc-regress/lib/socket/socket002.hs
deleted file mode 100644
index 1e7b19da0b..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket002.hs
+++ /dev/null
@@ -1,45 +0,0 @@
-{- client
-
-Client side to net001/Main.hs.
-
-Note that the machine IP numbers have been hard coded into this
-program so it is unlikely that you will be able to run this test if
-you are not at dcs.gla.ac.uk :-(
-
-The reason for this is to aviod using the BSD module at this stage of
-testing.
-
-
-TESTS:
- socket
- connect
- writeSocket
- shutdown
- inet_addr
--}
-
-
-module Main where
-
-import SocketPrim
-
-
-starbuck = "130.209.240.81" -- SunOS 4.1.3 1 sun4c
-marcus = "130.209.247.2" -- SunOS 4.1.3 6 sun4m
-avon = "130.209.247.4" -- OSF1 V2.0 240 alpha
-karkar = "130.209.247.3" -- OSF1 V2.0 240 alpha
-nauru = "130.209.247.5" -- Linux 2.0.30 (RH-4.2) x86
-easter = "130.209.247.6" -- Linux 2.0.30 (RH-4.2) x86
-
-message = "Hello World"
-
-
-main =
- socket AF_INET Stream 6 >>= \ s ->
- inet_addr easter >>= \ ia ->
- connect s (SockAddrInet (mkPortNumber 5000) ia) >>
-
- writeSocket s message >>
- shutdown s ShutdownBoth >>
- sClose s
-
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket002.stdout b/testsuite/tests/ghc-regress/lib/socket/socket002.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket002.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket003.hs b/testsuite/tests/ghc-regress/lib/socket/socket003.hs
deleted file mode 100644
index ea88a34dde..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket003.hs
+++ /dev/null
@@ -1,43 +0,0 @@
-{- server
-
-As for net001 but gets the system to allocate the next free port
-number. It also prints out the IP number of the peer.
-
-TESTS:
- getSocketName
- inet_ntoa
-
--}
-
-module Main where
-
-import SocketPrim
-
-
-main =
- socket AF_INET Stream 6 >>= \ s ->
- bindSocket s (SockAddrInet aNY_PORT iNADDR_ANY) >>
- getSocketName s >>= \ (SockAddrInet port _) ->
- putStr ("Allocated Port Number: " ++ show port ++ "\n") >>
- listen s 5 >>
-
-
- let
- loop =
- accept s >>= \ (s',(SockAddrInet _ haddr)) ->
- inet_ntoa haddr >>= \ na ->
- putStr ("*** Start of Transfer from: " ++ na ++ "***\n") >>
- let
- read_all =
- readSocket s' 4 >>= \ (str, nbytes) ->
- if nbytes /= 0 then
- putStr str >>
- read_all
- else
- putStr "\n*** End of Transfer ***\n" >>
- sClose s'
- in
- read_all
- in
- loop
-
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket003.stdout b/testsuite/tests/ghc-regress/lib/socket/socket003.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket003.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket004.hs b/testsuite/tests/ghc-regress/lib/socket/socket004.hs
deleted file mode 100644
index d7fbdc91bc..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket004.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-{- client
-
-As for net002 but reads port number and message as arguments.
-It also prints out the IP number of the peer machine.
-
-
-
-TESTS:
- getPeerName
--}
-
-
-module Main(main) where
-
-import SocketPrim
-import System
-
-
-starbuck = "130.209.240.81"
-marcus = "130.209.247.2"
-
-nauru = "130.209.247.5" -- Linux 2.0.30 (RH-4.2) x86
-easter = "130.209.247.6" -- Linux 2.0.30 (RH-4.2) x86
-
-
-main =
- getArgs >>= \ [port, message] ->
- socket AF_INET Stream 6 >>= \ s ->
- inet_addr easter >>= \ i_addr ->
- connect s (SockAddrInet (mkPortNumber (read port)) i_addr) >>
-
- getPeerName s >>= \ (SockAddrInet p haddr) ->
- inet_ntoa haddr >>= \ a ->
- putStr ("Connected to : " ++ a ++ "\n") >>
- writeSocket s message >>
- shutdown s ShutdownBoth >>
- sClose s
-
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket004.stdout b/testsuite/tests/ghc-regress/lib/socket/socket004.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket004.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket005.hs b/testsuite/tests/ghc-regress/lib/socket/socket005.hs
deleted file mode 100644
index ec504aa480..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket005.hs
+++ /dev/null
@@ -1,37 +0,0 @@
-{- server
-
-Server as net001 but for Unix Domain Datagram sockets.
-
-TESTS:
- socket
- bindSocket
- readSocket
-
--}
-
-
-module Main where
-
-import SocketPrim
-
-
-main =
- socket AF_UNIX Datagram 0 >>= \ s ->
- bindSocket s (SockAddrUnix "sock") >>
-
- let
- loop =
- putStr "*** Start of Transfer ***\n" >>
- let
- read_all =
- readSocket s 1024 >>= \ (str, nbytes) ->
- if nbytes /= 0 then
- putStr str >>
- read_all
- else
- putStr "\n*** End of Transfer ***\n"
- in
- read_all
- in
- loop
-
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket005.stdout b/testsuite/tests/ghc-regress/lib/socket/socket005.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket005.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket006.hs b/testsuite/tests/ghc-regress/lib/socket/socket006.hs
deleted file mode 100644
index e2ad13ae49..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket006.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{- client
-
-Client side of net005
-
-TESTS:
- socket
- connect
- writeSocket
- shutdown
- sClose
--}
-
-
-module Main where
-
-import SocketPrim
-
-message = "Hello World"
-
-
-main =
- socket AF_UNIX Datagram 0 >>= \ s ->
- connect s (SockAddrUnix "sock") >>
-
- writeSocket s message >>
- shutdown s ShutdownBoth >>
- sClose s
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket006.stdout b/testsuite/tests/ghc-regress/lib/socket/socket006.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket006.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket007.hs b/testsuite/tests/ghc-regress/lib/socket/socket007.hs
deleted file mode 100644
index fbc9ff04e0..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket007.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-{- server
-
-As net003 but uses the BSD module for portability. Also prints the
-common name of the host rather than its IP number.
-
-TESTS:
- getProtocolNumber
- getSocketName
- getHostByAddr
-
--}
-
-module Main where
-
-import BSD
-import SocketPrim
-
-main =
- getProtocolNumber "tcp" >>= \ proto ->
- socket AF_INET Stream proto >>= \ s ->
- bindSocket s (SockAddrInet aNY_PORT iNADDR_ANY) >>
- getSocketName s >>= \ (SockAddrInet port _) ->
- putStr ("Allocated Port Number: " ++ show port ++ "\n") >>
- listen s 5 >>
-
-
- let
- loop =
- accept s >>= \ (s',(SockAddrInet _ haddr)) ->
- getHostByAddr AF_INET haddr >>= \ (HostEntry hname _ _ _) ->
- putStr ("*** Start of Transfer from: " ++ hname ++ "***\n") >>
- let
- read_all =
- readSocket s' 4 >>= \ (str, nbytes) ->
- if nbytes /= 0 then
- putStr str >>
- read_all
- else
- putStr "\n*** End of Transfer ***\n" >>
- sClose s'
- in
- read_all
- in
- loop
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket007.stdout b/testsuite/tests/ghc-regress/lib/socket/socket007.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket007.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket008.hs b/testsuite/tests/ghc-regress/lib/socket/socket008.hs
deleted file mode 100644
index 896763409e..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket008.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-module Main where
-
-import SocketPrim
-import BSD
-import System
-
-main =
- getArgs >>= \ [host, port, message] ->
- getProtocolNumber "tcp" >>= \ proto ->
- socket AF_INET Stream proto >>= \ s ->
- getHostByName host >>= \ (HostEntry _ _ _ haddrs) ->
- connect s (SockAddrInet (mkPortNumber (read port))
- (head haddrs)) >>
-
- getPeerName s >>= \ (SockAddrInet _ haddr) ->
- getHostByAddr AF_INET haddr >>= \ (HostEntry hname _ _ _) ->
- putStr ("Connected to : " ++ hname ++ "\n") >>
- writeSocket s message >>
- shutdown s ShutdownBoth >>
- sClose s
-
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket008.stdout b/testsuite/tests/ghc-regress/lib/socket/socket008.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket008.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket009.hs b/testsuite/tests/ghc-regress/lib/socket/socket009.hs
deleted file mode 100644
index c34334e691..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket009.hs
+++ /dev/null
@@ -1,28 +0,0 @@
--- Sigbjorn and I don't understand what this test is meant to do
--- It simply hangs on stdin!
-
-import IO -- 1.3
-
-import System(getArgs)
-
-main = getArgs >>= \ [user,host] ->
- let username = (user ++ "@" ++ host) in
- openFile username ReadWriteMode >>= \ cd ->
- hSetBuffering stdin NoBuffering >>
- hSetBuffering stdout NoBuffering >>
- hSetBuffering cd NoBuffering >>
- hPutStr cd speakString >>
- speak cd
-
-speakString = "Someone wants to speak with you\n"
-
-speak cd =
- (hReady cd >>= \ ready ->
- if ready then (hGetChar cd >>= putChar)
- else return () >>
-
- hReady stdin >>= \ ready ->
- if ready then (getChar >>= hPutChar cd)
- else return ()) >>
-
- speak cd
diff --git a/testsuite/tests/ghc-regress/lib/socket/socket009.stdout b/testsuite/tests/ghc-regress/lib/socket/socket009.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/lib/socket/socket009.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/lib/win32/Makefile b/testsuite/tests/ghc-regress/lib/win32/Makefile
deleted file mode 100644
index a0ded392fa..0000000000
--- a/testsuite/tests/ghc-regress/lib/win32/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/lib/win32/all.T b/testsuite/tests/ghc-regress/lib/win32/all.T
deleted file mode 100644
index 1e9378a5e6..0000000000
--- a/testsuite/tests/ghc-regress/lib/win32/all.T
+++ /dev/null
@@ -1,10 +0,0 @@
-def win_only(opts):
- if config.platform != "i386-unknown-mingw32" and \
- config.platform != "i386-unknown-cygwin32":
- opts.skip = 1
-
-# This isn't a very good test to run automatically at the moment, since
-# it doesn't terminate
-test('win32001', skip, compile_and_run, ['-package lang -package win32'])
-
-test('win32002', win_only, compile_and_run, ['-package Win32'])
diff --git a/testsuite/tests/ghc-regress/lib/win32/win32001.hs b/testsuite/tests/ghc-regress/lib/win32/win32001.hs
deleted file mode 100644
index 8765dcb0fd..0000000000
--- a/testsuite/tests/ghc-regress/lib/win32/win32001.hs
+++ /dev/null
@@ -1,104 +0,0 @@
--- Haskell version of "Hello, World" using the Win32 library.
--- Demonstrates how the Win32 library can be put to use.
--- (c) sof 1999
-
-
-module Main(main) where
-
-import qualified Win32
-import Addr
-
--- Toplevel main just creates a window and pumps messages.
--- The window procedure (wndProc) we pass in is partially
--- applied with the user action that takes care of responding
--- to repaint messages (WM_PAINT).
-
-main :: IO ()
-main = do
- lpps <- Win32.malloc Win32.sizeofPAINTSTRUCT
- hwnd <- createWindow 200 200 (wndProc lpps onPaint)
- messagePump hwnd
-
--- OnPaint handler for a window - draw a string centred
--- inside it.
-onPaint :: Win32.RECT -> Win32.HDC -> IO ()
-onPaint (_,_,w,h) hdc = do
- Win32.setBkMode hdc Win32.tRANSPARENT
- Win32.setTextColor hdc (Win32.rgb 255 255 0)
- let y | h==10 = 0
- | otherwise = ((h-10) `div` 2)
- x | w==50 = 0
- | otherwise = (w-50) `div` 2
- Win32.textOut hdc x y "Hello, world"
- return ()
-
--- Simple window procedure - one way to improve and generalise
--- it would be to pass it a message map (represented as a
--- finite map from WindowMessages to actions, perhaps).
-
-wndProc :: Win32.LPPAINTSTRUCT
- -> (Win32.RECT -> Win32.HDC -> IO ()) -- on paint action
- -> Win32.HWND
- -> Win32.WindowMessage
- -> Win32.WPARAM
- -> Win32.LPARAM
- -> IO Win32.LRESULT
-wndProc lpps onPaint hwnd wmsg wParam lParam
- | wmsg == Win32.wM_DESTROY = do
- Win32.sendMessage hwnd Win32.wM_QUIT 1 0
- return 0
- | wmsg == Win32.wM_PAINT && hwnd /= nullAddr = do
- r <- Win32.getClientRect hwnd
- paintWith lpps hwnd (onPaint r)
- return 0
- | otherwise =
- Win32.defWindowProc (Just hwnd) wmsg wParam lParam
-
-createWindow :: Int -> Int -> Win32.WindowClosure -> IO Win32.HWND
-createWindow width height wndProc = do
- let winClass = Win32.mkClassName "Hello"
- icon <- Win32.loadIcon Nothing Win32.iDI_APPLICATION
- cursor <- Win32.loadCursor Nothing Win32.iDC_ARROW
- bgBrush <- Win32.createSolidBrush (Win32.rgb 0 0 255)
- mainInstance <- Win32.getModuleHandle Nothing
- Win32.registerClass
- ( Win32.cS_VREDRAW + Win32.cS_HREDRAW
- , mainInstance
- , Just icon
- , Just cursor
- , Just bgBrush
- , Nothing
- , winClass
- )
- w <- Win32.createWindow
- winClass
- "Hello, World example"
- Win32.wS_OVERLAPPEDWINDOW
- Nothing Nothing -- leave it to the shell to decide the position
- -- at where to put the window initially
- (Just width)
- (Just height)
- Nothing -- no parent, i.e, root window is the parent.
- Nothing -- no menu handle
- mainInstance
- wndProc
- Win32.showWindow w Win32.sW_SHOWNORMAL
- Win32.updateWindow w
- return w
-
-messagePump :: Win32.HWND -> IO ()
-messagePump hwnd = do
- msg <- Win32.getMessage (Just hwnd) `catch` \ _ -> return nullAddr
- if msg == nullAddr then
- return ()
- else do
- Win32.translateMessage msg
- Win32.dispatchMessage msg
- messagePump hwnd
-
-paintWith :: Win32.LPPAINTSTRUCT -> Win32.HWND -> (Win32.HDC -> IO a) -> IO a
-paintWith lpps hwnd p = do
- hdc <- Win32.beginPaint hwnd lpps
- a <- p hdc
- Win32.endPaint hwnd lpps
- return a
diff --git a/testsuite/tests/ghc-regress/lib/win32/win32002.hs b/testsuite/tests/ghc-regress/lib/win32/win32002.hs
deleted file mode 100644
index 0b57985333..0000000000
--- a/testsuite/tests/ghc-regress/lib/win32/win32002.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
--- Test that the Win32 error code from getLastError is thread-local.
-
-import System.Win32
-import Control.Monad
-import Control.Concurrent
-
-main = do
- setLastError 42
- r <- getLastError
- when (r /= 42) $ fail ("wrong: " ++ show r)
- m <- newEmptyMVar
- forkIO $ do setLastError 43; putMVar m ()
- takeMVar m
- r <- getLastError
- when (r /= 42) $ fail ("wrong: " ++ show r)
-
-foreign import stdcall unsafe "windows.h SetLastError"
- setLastError :: ErrCode -> IO ()
diff --git a/testsuite/tests/ghc-regress/mdo/Makefile b/testsuite/tests/ghc-regress/mdo/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/mdo/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/mdo/should_compile/Makefile b/testsuite/tests/ghc-regress/mdo/should_compile/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_compile/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/mdo/should_compile/all.T b/testsuite/tests/ghc-regress/mdo/should_compile/all.T
deleted file mode 100644
index 49be01fc59..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_compile/all.T
+++ /dev/null
@@ -1,8 +0,0 @@
-setTestOpts(only_ways(['normal']));
-
-test('mdo001', normal, compile_and_run, [''])
-test('mdo002', normal, compile_and_run, [''])
-test('mdo003', normal, compile_and_run, [''])
-test('mdo004', only_compiler_types(['ghc']), compile_and_run, [''])
-test('mdo005', normal, compile_and_run, [''])
-test('mdo006', normal, compile, [''])
diff --git a/testsuite/tests/ghc-regress/mdo/should_compile/mdo001.hs b/testsuite/tests/ghc-regress/mdo/should_compile/mdo001.hs
deleted file mode 100644
index e193743553..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_compile/mdo001.hs
+++ /dev/null
@@ -1,36 +0,0 @@
-{-# OPTIONS -XRecursiveDo #-}
-
--- test that we have all the promised instances
-
-module Main(main) where
-
-import Control.Monad.Fix
-import qualified Control.Monad.ST as SST
-import qualified Control.Monad.ST.Lazy as LST
-
-generic :: MonadFix m => m [Int]
-generic = mdo xs <- return (1:xs)
- return (take 4 xs)
-
-io :: IO [Int]
-io = generic
-
-sst :: SST.ST s [Int]
-sst = generic
-
-lst :: LST.ST s [Int]
-lst = generic
-
-mb :: Maybe [Int]
-mb = generic
-
-ls :: [[Int]]
-ls = generic
-
-main :: IO ()
-main = do
- print =<< io
- print $ SST.runST sst
- print $ LST.runST lst
- print $ mb
- print $ ls
diff --git a/testsuite/tests/ghc-regress/mdo/should_compile/mdo001.stdout b/testsuite/tests/ghc-regress/mdo/should_compile/mdo001.stdout
deleted file mode 100644
index cfaadf8fad..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_compile/mdo001.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-[1,1,1,1]
-[1,1,1,1]
-[1,1,1,1]
-Just [1,1,1,1]
-[[1,1,1,1]]
diff --git a/testsuite/tests/ghc-regress/mdo/should_compile/mdo002.hs b/testsuite/tests/ghc-regress/mdo/should_compile/mdo002.hs
deleted file mode 100644
index dc33595590..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_compile/mdo002.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# OPTIONS -XRecursiveDo #-}
-
--- test of user defined instance of MonadFix
-
-module Main (main) where
-
-import Control.Monad.Fix
-
-data X a = X a deriving Show
-
-instance Monad X where
- return = X
- (X a) >>= f = f a
-
-instance MonadFix X where
- mfix f = fix (f . unX)
- where unX ~(X x) = x
-
-z :: X [Int]
-z = mdo x <- return (1:x)
- return (take 4 x)
-
-main = print z
diff --git a/testsuite/tests/ghc-regress/mdo/should_compile/mdo002.stdout b/testsuite/tests/ghc-regress/mdo/should_compile/mdo002.stdout
deleted file mode 100644
index f3b1299b8c..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_compile/mdo002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-X [1,1,1,1]
diff --git a/testsuite/tests/ghc-regress/mdo/should_compile/mdo003.hs b/testsuite/tests/ghc-regress/mdo/should_compile/mdo003.hs
deleted file mode 100644
index 1a0cb37c2e..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_compile/mdo003.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# OPTIONS -XRecursiveDo #-}
-
--- test let bindings
-
-module Main (main) where
-
-import Control.Monad.Fix
-
-t :: IO Int
-t = mdo x <- return (l "1")
- let l [] = 0
- l (x:xs) = 1 + l xs
- return x
-
-main :: IO ()
-main = t >>= print
diff --git a/testsuite/tests/ghc-regress/mdo/should_compile/mdo003.stdout b/testsuite/tests/ghc-regress/mdo/should_compile/mdo003.stdout
deleted file mode 100644
index d00491fd7e..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_compile/mdo003.stdout
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/testsuite/tests/ghc-regress/mdo/should_compile/mdo004.hs b/testsuite/tests/ghc-regress/mdo/should_compile/mdo004.hs
deleted file mode 100644
index 544ee6cc66..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_compile/mdo004.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# OPTIONS -XRecursiveDo #-}
-
--- test let bindings, polymorphism is ok provided they are not
--- isolated in a recursive segment
--- NB. this is not what Hugs does!
-
-module Main (main) where
-
-import Control.Monad.Fix
-
-t :: IO (Int, Int)
-t = mdo let l [] = 0
- l (x:xs) = 1 + l xs
- return (l "1", l [1,2,3])
-
-main :: IO ()
-main = t >>= print
diff --git a/testsuite/tests/ghc-regress/mdo/should_compile/mdo004.stdout b/testsuite/tests/ghc-regress/mdo/should_compile/mdo004.stdout
deleted file mode 100644
index 99a45a1c91..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_compile/mdo004.stdout
+++ /dev/null
@@ -1 +0,0 @@
-(1,3)
diff --git a/testsuite/tests/ghc-regress/mdo/should_compile/mdo005.hs b/testsuite/tests/ghc-regress/mdo/should_compile/mdo005.hs
deleted file mode 100644
index 0b6301b8a5..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_compile/mdo005.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# OPTIONS -XRecursiveDo #-}
-
--- test scoping
-
-module Main (main) where
-
-import Control.Monad.Fix
-import Data.Maybe ( fromJust )
-
-t = mdo x <- fromJust (mdo x <- Just (1:x)
- return (take 4 x))
- return x
-
-main :: IO ()
-main = print t
diff --git a/testsuite/tests/ghc-regress/mdo/should_compile/mdo005.stdout b/testsuite/tests/ghc-regress/mdo/should_compile/mdo005.stdout
deleted file mode 100644
index ee67c15ef8..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_compile/mdo005.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[1,1,1,1]
diff --git a/testsuite/tests/ghc-regress/mdo/should_compile/mdo006.hs b/testsuite/tests/ghc-regress/mdo/should_compile/mdo006.hs
deleted file mode 100644
index 6ccfb94041..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_compile/mdo006.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# OPTIONS -XRecursiveDo #-}
-
--- This test, from Iavor Diatchki, made GHC 6.2 loop (testLoop)
--- or panic (testPanic); there was a Lint error.
--- The reason was a missing bindInstsOfLocalFuns in tcStmtAndThen
-
-module ShouldCompile where
-
-import Control.Monad.Fix
-
-testLoop _ = mdo x <- mapM undefined (f x)
- let f _ = []
- return (f x)
-
-testPanic _ = mdo x <- f x
- let f _ = return ()
- f x
diff --git a/testsuite/tests/ghc-regress/mdo/should_compile/mdo006.stderr b/testsuite/tests/ghc-regress/mdo/should_compile/mdo006.stderr
deleted file mode 100644
index 218ba444b8..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_compile/mdo006.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-mdo006.hs:1:12:
- Warning: -XRecursiveDo is deprecated: use -XDoRec or pragma {-# LANGUAGE DoRec #-} instead
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/Makefile b/testsuite/tests/ghc-regress/mdo/should_fail/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/all.T b/testsuite/tests/ghc-regress/mdo/should_fail/all.T
deleted file mode 100644
index 6693587bab..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/all.T
+++ /dev/null
@@ -1,7 +0,0 @@
-setTestOpts(only_ways(['normal']));
-
-test('mdofail001', normal, compile_fail, [''])
-test('mdofail002', normal, compile_fail, [''])
-test('mdofail003', normal, compile_fail, [''])
-test('mdofail004', normal, compile, [''])
-test('mdofail005', normal, compile_fail, [''])
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.hs b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.hs
deleted file mode 100644
index fe8f95e766..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# OPTIONS -XRecursiveDo #-}
-
--- let bindings are monomorphic if used prior to their definition
-
-module Main (main) where
-
-import Control.Monad.Fix
-
-t :: IO (Int, Int)
-t = mdo x <- return (l "1", l [1,2,3])
- let l [] = 0
- l (x:xs) = 1 + l xs
- return x
-
-main :: IO ()
-main = t >>= print
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.stderr b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.stderr
deleted file mode 100644
index 8660e167fe..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-mdofail001.hs:1:12:
- Warning: -XRecursiveDo is deprecated: use -XDoRec or pragma {-# LANGUAGE DoRec #-} instead
-
-mdofail001.hs:10:36:
- No instance for (Num Char)
- arising from the literal `3'
- Possible fix: add an instance declaration for (Num Char)
- In the expression: 3
- In the first argument of `l', namely `[1, 2, 3]'
- In the expression: l [1, 2, 3]
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.stderr-ghc-7.0 b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.stderr-ghc-7.0
deleted file mode 100644
index 189c414315..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.stderr-ghc-7.0
+++ /dev/null
@@ -1,8 +0,0 @@
-
-mdofail001.hs:10:36:
- No instance for (Num Char)
- arising from the literal `3'
- Possible fix: add an instance declaration for (Num Char)
- In the expression: 3
- In the first argument of `l', namely `[1, 2, 3]'
- In the expression: l [1, 2, 3]
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.stderr-hugs b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.stderr-hugs
deleted file mode 100644
index 3bfe41e9f4..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail001.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mdofail001.hs":10 - Instance of Num Char required for definition of t
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.hs b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.hs
deleted file mode 100644
index 27c9861f38..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# OPTIONS -XRecursiveDo #-}
-
--- shadowing is not allowed
-
-module Main (main) where
-
-import Control.Monad.Fix
-
-t :: IO ()
-t = mdo x <- return 1
- x <- return 2
- return ()
-
-main :: IO ()
-main = t
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.stderr b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.stderr
deleted file mode 100644
index 4da766311e..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-mdofail002.hs:1:12:
- Warning: -XRecursiveDo is deprecated: use -XDoRec or pragma {-# LANGUAGE DoRec #-} instead
-
-mdofail002.hs:10:9:
- Conflicting definitions for `x'
- Bound at: mdofail002.hs:10:9
- mdofail002.hs:11:9
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.stderr-ghc-7.0 b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.stderr-ghc-7.0
deleted file mode 100644
index a1327c6dfd..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.stderr-ghc-7.0
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mdofail002.hs:10:9:
- Conflicting definitions for `x'
- Bound at: mdofail002.hs:10:9
- mdofail002.hs:11:9
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.stderr-hugs b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.stderr-hugs
deleted file mode 100644
index 4f1c0a0bb4..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail002.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mdofail002.hs":10 - Repeated use of variable "x" in pattern binding
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.hs b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.hs
deleted file mode 100644
index ba7e80a74b..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# OPTIONS -XRecursiveDo #-}
-
--- shadowing is not allowed II
-
-module Main (main) where
-
-import Control.Monad.Fix
-
-t :: IO ()
-t = mdo x <- return 1
- let x 0 = 4
- return ()
-
-main :: IO ()
-main = t
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.stderr b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.stderr
deleted file mode 100644
index fceb7d2b82..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-mdofail003.hs:1:12:
- Warning: -XRecursiveDo is deprecated: use -XDoRec or pragma {-# LANGUAGE DoRec #-} instead
-
-mdofail003.hs:10:9:
- Conflicting definitions for `x'
- Bound at: mdofail003.hs:10:9
- mdofail003.hs:11:13
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.stderr-ghc-7.0 b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.stderr-ghc-7.0
deleted file mode 100644
index e093fe0a75..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.stderr-ghc-7.0
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mdofail003.hs:10:9:
- Conflicting definitions for `x'
- Bound at: mdofail003.hs:10:9
- mdofail003.hs:11:13
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.stderr-hugs b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.stderr-hugs
deleted file mode 100644
index ef14fdcff3..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail003.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mdofail003.hs":10 - Repeated use of variable "x" in pattern binding
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.hs b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.hs
deleted file mode 100644
index 37cd757312..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# OPTIONS -XRecursiveDo #-}
-
--- OLD: mdo requires MonadFix instance, even
--- if no recursion is present
-
--- Dec 2010: Small change of behaviour
--- MonadFix is only required if recursion is present
-
-module Main (main) where
-
-import Control.Monad.Fix
-
-data X a = X a deriving Show
-
-instance Monad X where
- return = X
- (X a) >>= f = f a
-
-z :: X [Int]
-z = mdo { a <- return 1; return [a] }
-
-main = print z
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.stderr b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.stderr
deleted file mode 100644
index 7a96d65197..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-mdofail004.hs:1:12:
- Warning: -XRecursiveDo is deprecated: use -XDoRec or pragma {-# LANGUAGE DoRec #-} instead
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.stderr-ghc-7.0 b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.stderr-ghc-7.0
deleted file mode 100644
index 63c0cae6ac..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.stderr-ghc-7.0
+++ /dev/null
@@ -1,7 +0,0 @@
-
-mdofail004.hs:17:5:
- No instance for (MonadFix X)
- arising from a do statement
- Possible fix: add an instance declaration for (MonadFix X)
- In the expression: mdo { return [1, 2, ....] }
- In an equation for `z': z = mdo { return [1, ....] }
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.stderr-hugs b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.stderr-hugs
deleted file mode 100644
index c787c4209b..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail004.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mdofail004.hs":17 - Instance of MonadFix X required for definition of z
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail005.hs b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail005.hs
deleted file mode 100644
index b4d52918a5..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail005.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
--- use of mdo requires an extension,
--- so let's try not enabling it
-
-module Main (main) where
-
-import Control.Monad.Fix
-
-main :: IO ()
-main = mdo x <- return (1:x)
- return ()
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail005.stderr b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail005.stderr
deleted file mode 100644
index 306df25706..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail005.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mdofail005.hs:11:14: parse error on input `<-'
diff --git a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail005.stderr-hugs b/testsuite/tests/ghc-regress/mdo/should_fail/mdofail005.stderr-hugs
deleted file mode 100644
index 6bb11378a1..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_fail/mdofail005.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mdofail005.hs":11 - Syntax error in input (unexpected `<-')
diff --git a/testsuite/tests/ghc-regress/mdo/should_run/Makefile b/testsuite/tests/ghc-regress/mdo/should_run/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_run/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/mdo/should_run/all.T b/testsuite/tests/ghc-regress/mdo/should_run/all.T
deleted file mode 100644
index 53730bebe6..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_run/all.T
+++ /dev/null
@@ -1,5 +0,0 @@
-setTestOpts(only_ways(['normal']));
-
-test('mdorun001', normal, compile_and_run, [''])
-test('mdorun002', normal, compile_and_run, [''])
-test('mdorun003', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/mdo/should_run/mdorun001.hs b/testsuite/tests/ghc-regress/mdo/should_run/mdorun001.hs
deleted file mode 100644
index 8527e5b2b1..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_run/mdorun001.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-{-# OPTIONS -XRecursiveDo -XScopedTypeVariables #-}
-
-module Main(main) where
-
-import Control.Monad.Fix
-import Data.Array.IO
-import Control.Monad
-
-norm a = mdo (_, sz) <- getBounds a
- s <- ioaA 1 s sz 0
- return ()
- where
- ioaA i s sz acc
- | i > sz = return acc
- | True = do v <- readArray a i
- writeArray a i (v / s)
- ioaA (i+1) s sz $! (v + acc)
-
-toList a = do (_, sz) <- getBounds a
- mapM (\i -> readArray a i) [1..sz]
-
-test :: Int -> IO ()
-test sz = do
- (arr :: IOArray Int Float) <- newArray (1, sz) 12
- putStrLn "Before: "
- toList arr >>= print
- norm arr
- putStrLn "After: "
- lst <- toList arr
- print lst
- putStrLn ("Normalized sum: " ++ show (sum lst))
-
-main = test 10
diff --git a/testsuite/tests/ghc-regress/mdo/should_run/mdorun001.stdout b/testsuite/tests/ghc-regress/mdo/should_run/mdorun001.stdout
deleted file mode 100644
index 7b0453fcf9..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_run/mdorun001.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-Before:
-[12.0,12.0,12.0,12.0,12.0,12.0,12.0,12.0,12.0,12.0]
-After:
-[0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1]
-Normalized sum: 1.0000001
diff --git a/testsuite/tests/ghc-regress/mdo/should_run/mdorun002.hs b/testsuite/tests/ghc-regress/mdo/should_run/mdorun002.hs
deleted file mode 100644
index 191e40039d..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_run/mdorun002.hs
+++ /dev/null
@@ -1,56 +0,0 @@
-{-# OPTIONS -XRecursiveDo #-}
-
-module Main(main) where
-
-import Control.Monad.Fix
-import Control.Monad.ST
-import Data.STRef
-
-newtype Node s a = N (STRef s Bool, Node s a, a, Node s a)
-
-newNode :: Node s a -> a -> Node s a -> ST s (Node s a)
-newNode b c f = do v <- newSTRef False
- return (N (v, b, c, f))
-
-ll :: ST s (Node s Int)
-ll = mdo n0 <- newNode n3 0 n1
- n1 <- newNode n0 1 n2
- n2 <- newNode n1 2 n3
- n3 <- newNode n2 3 n0
- return n0
-
-data Direction = Forward | Backward deriving Eq
-
-traverse :: Direction -> Node s a -> ST s [a]
-traverse dir (N (v, b, i, f)) =
- do visited <- readSTRef v
- if visited
- then return []
- else do writeSTRef v True
- let n = if dir == Forward then f else b
- is <- traverse dir n
- return (i:is)
-
-l2dll :: [a] -> ST s (Node s a)
-l2dll (x:xs) = mdo c <- newNode l x f
- (f, l) <- l2dll' c xs
- return c
-
-l2dll' :: Node s a -> [a] -> ST s (Node s a, Node s a)
-l2dll' p [] = return (p, p)
-l2dll' p (x:xs) = mdo c <- newNode p x f
- (f, l) <- l2dll' c xs
- return (c, l)
-
-insertAfter :: Node s a -> a -> ST s (Node s a)
-insertAfter cur@(N (v, prev, val, next)) i
- = do vis <- newSTRef False
- let newCell = N (vis, cur, i, next)
- return (N (v, prev, val, newCell))
-
-test = runST (do l <- l2dll [1 .. 10]
- l' <- insertAfter l 12
- l'' <- insertAfter l' 13
- traverse Forward l'')
-
-main = print test
diff --git a/testsuite/tests/ghc-regress/mdo/should_run/mdorun002.stdout b/testsuite/tests/ghc-regress/mdo/should_run/mdorun002.stdout
deleted file mode 100644
index 34df74ba96..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_run/mdorun002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[1,13,12,2,3,4,5,6,7,8,9,10]
diff --git a/testsuite/tests/ghc-regress/mdo/should_run/mdorun003.hs b/testsuite/tests/ghc-regress/mdo/should_run/mdorun003.hs
deleted file mode 100644
index f818afa56a..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_run/mdorun003.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE DoRec #-}
-
-main :: IO ()
-main = do x <- return (length [1 .. 42 :: Int])
- rec b <- return x
- let a = const c
- c <- print "x"
- print (b, a b)
diff --git a/testsuite/tests/ghc-regress/mdo/should_run/mdorun003.stdout b/testsuite/tests/ghc-regress/mdo/should_run/mdorun003.stdout
deleted file mode 100644
index 912f3a2a53..0000000000
--- a/testsuite/tests/ghc-regress/mdo/should_run/mdorun003.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-"x"
-(42,())
diff --git a/testsuite/tests/ghc-regress/module/Makefile b/testsuite/tests/ghc-regress/module/Makefile
deleted file mode 100644
index 1b85f61c62..0000000000
--- a/testsuite/tests/ghc-regress/module/Makefile
+++ /dev/null
@@ -1,70 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-# We don't want make to fail here, because it emits an unpredictable
-# error message. Instead we really want to test the exit code of GHC,
-# hence the
-# echo "exit($$?)" 1>&2
-# which emits GHC's exit code to stderr so the test driver can compare it.
-
-mod144::
- rm -f Mod144_A.o Mod144_A.hi mod144.o mod144.hi mod144
- '$(TEST_HC)' $(TEST_HC_OPTS) -c Mod144_A.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c mod144.hs || echo "exit($$?)" 1>&2
-
-# These tests share some source files, so to avoid clashing when
-# using multiple threads we direct the outputs to different files
-# depending on the test name.
-AUX_O = $@_o
-AUX_HI = $@_hi
-AUX_OPTS = -osuf $(AUX_O) -hisuf $(AUX_HI)
-
-mod146::
- rm -f Mod145_A.$(AUX_O) Mod145_A.$(AUX_HI) mod146.$(AUX_O) mod146.$(AUX_HI) mod146
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod145_A.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c mod146.hs || echo "exit($$?)" 1>&2
-
-mod158::
- rm -f Mod157_*.$(AUX_O) Mod157_*.$(AUX_HI)
- rm -f mod158.$(AUX_O) mod158.$(AUX_HI) mod158
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod157_A.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod157_B.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod157_C.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod157_D.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c mod158.hs || echo "exit($$?)" 1>&2
-
-mod160::
- rm -f Mod159_*.$(AUX_O)
- rm -f Mod159_*.$(AUX_HI)
- rm -f mod160.$(AUX_O) mod160.$(AUX_HI) mod160
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod159_A.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod159_B.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod159_C.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod159_D.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c mod160.hs || echo "exit($$?)" 1>&2
-
-mod165::
- rm -f Mod164_*.$(AUX_O)
- rm -f Mod164_*.$(AUX_HI)
- rm -f mod165.$(AUX_O) mod165.$(AUX_HI) mod165
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod164_A.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod164_B.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c mod165.hs || echo "exit($$?)" 1>&2
-
-mod166::
- rm -f Mod164_*.$(AUX_O)
- rm -f Mod164_*.$(AUX_HI)
- rm -f mod166.$(AUX_O) mod166.$(AUX_HI) mod166
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod164_A.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod164_B.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c mod166.hs || echo "exit($$?)" 1>&2
-
-mod167::
- rm -f Mod164_*.$(AUX_O)
- rm -f Mod164_*.$(AUX_HI)
- rm -f mod167.$(AUX_O) mod167.$(AUX_HI) mod167
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod164_A.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c Mod164_B.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) $(AUX_OPTS) -c mod167.hs || echo "exit($$?)" 1>&2
-
diff --git a/testsuite/tests/ghc-regress/module/Mod101_AuxA.hs b/testsuite/tests/ghc-regress/module/Mod101_AuxA.hs
deleted file mode 100644
index 39ff86868d..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod101_AuxA.hs
+++ /dev/null
@@ -1,5 +0,0 @@
---
--- Helper module for mod101.hs
-module Mod101_AuxA where
-
-data DataA = ConA Int | ConB Bool
diff --git a/testsuite/tests/ghc-regress/module/Mod101_AuxB.hs b/testsuite/tests/ghc-regress/module/Mod101_AuxB.hs
deleted file mode 100644
index af05c72510..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod101_AuxB.hs
+++ /dev/null
@@ -1,6 +0,0 @@
---
--- Helper module for mod101.hs
---
-module Mod101_AuxB ( DataA(..) ) where
-
-import Mod101_AuxA ( DataA(ConA) )
diff --git a/testsuite/tests/ghc-regress/module/Mod102_AuxA.hs b/testsuite/tests/ghc-regress/module/Mod102_AuxA.hs
deleted file mode 100644
index dfa478e542..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod102_AuxA.hs
+++ /dev/null
@@ -1,9 +0,0 @@
---
--- Helper module for mod102.hs
---
-module Mod102_AuxA where
-
-class ClassA a where
- methA :: Int -> a
- methB :: Bool -> a
-
diff --git a/testsuite/tests/ghc-regress/module/Mod102_AuxB.hs b/testsuite/tests/ghc-regress/module/Mod102_AuxB.hs
deleted file mode 100644
index 71fc071e78..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod102_AuxB.hs
+++ /dev/null
@@ -1,6 +0,0 @@
---
--- Helper module for mod102.hs
---
-module Mod102_AuxB ( ClassA(..) ) where
-
-import Mod102_AuxA ( ClassA(methA) )
diff --git a/testsuite/tests/ghc-regress/module/Mod114_Help.hs b/testsuite/tests/ghc-regress/module/Mod114_Help.hs
deleted file mode 100644
index 46e8fc53ea..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod114_Help.hs
+++ /dev/null
@@ -1 +0,0 @@
-module Mod114_Help(Stuff(Foo, Bar)) where data Stuff = Foo | Bar
diff --git a/testsuite/tests/ghc-regress/module/Mod115_A.hs b/testsuite/tests/ghc-regress/module/Mod115_A.hs
deleted file mode 100644
index 77430951c1..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod115_A.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- re-exporting m2 outside of C(..)
-module Mod115_A( C(m1), m2) where
-
-class C a where
- m1 :: a -> Int
- m2 :: a -> Bool
-
-instance C Int where
- m1 _ = 1
- m2 _ = True
-
diff --git a/testsuite/tests/ghc-regress/module/Mod115_B.hs b/testsuite/tests/ghc-regress/module/Mod115_B.hs
deleted file mode 100644
index d344c442b6..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod115_B.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- re-export all of C
-module Mod115_B (C(..)) where
-
-import Mod115_A (C(m1), m2)
diff --git a/testsuite/tests/ghc-regress/module/Mod117_A.hs b/testsuite/tests/ghc-regress/module/Mod117_A.hs
deleted file mode 100644
index 259bb76681..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod117_A.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- re-exporting m2 outside of T(..)
-module Mod117_A( T(T,m1), m2) where
-
-data T = T { m1 :: Int, m2 :: Int}
-
diff --git a/testsuite/tests/ghc-regress/module/Mod117_B.hs b/testsuite/tests/ghc-regress/module/Mod117_B.hs
deleted file mode 100644
index d1711b1d89..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod117_B.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- re-export all of T
-module Mod117_B (T(..)) where
-
-import Mod117_A ( T(T,m1),m2 )
diff --git a/testsuite/tests/ghc-regress/module/Mod118_A.hs b/testsuite/tests/ghc-regress/module/Mod118_A.hs
deleted file mode 100644
index b52fbfa7df..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod118_A.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- re-exporting m2 outside of C(..)
-module Mod118_A( C(m1), m2) where
-
-class C a where
- m1 :: a -> Int
- m2 :: a -> Bool
-
-instance C Int where
- m1 _ = 1
- m2 _ = True
-
diff --git a/testsuite/tests/ghc-regress/module/Mod118_B.hs b/testsuite/tests/ghc-regress/module/Mod118_B.hs
deleted file mode 100644
index 21852215da..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod118_B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- re-export all of C
-module Mod118_B (C(..)) where
-
-import Mod118_A hiding (C(m1))
-import Mod118_A (C)
diff --git a/testsuite/tests/ghc-regress/module/Mod119_A.hs b/testsuite/tests/ghc-regress/module/Mod119_A.hs
deleted file mode 100644
index b07646cee0..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod119_A.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module Mod119_A(f) where
-f = id
diff --git a/testsuite/tests/ghc-regress/module/Mod119_B.hs b/testsuite/tests/ghc-regress/module/Mod119_B.hs
deleted file mode 100644
index 79f1dfb732..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod119_B.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module Mod119_B (module Mod119_A) where
-import Mod119_A
diff --git a/testsuite/tests/ghc-regress/module/Mod120_A.hs b/testsuite/tests/ghc-regress/module/Mod120_A.hs
deleted file mode 100644
index 2ec3c2be55..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod120_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod120_A(T) where
-
-data T = Foo
diff --git a/testsuite/tests/ghc-regress/module/Mod121_A.hs b/testsuite/tests/ghc-regress/module/Mod121_A.hs
deleted file mode 100644
index 4648f3da08..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod121_A.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Mod121_A(C(m1)) where
-
-class C a where
- m1 :: a -> Int
- m2 :: a -> Bool
diff --git a/testsuite/tests/ghc-regress/module/Mod122_A.hs b/testsuite/tests/ghc-regress/module/Mod122_A.hs
deleted file mode 100644
index 93b7076551..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod122_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod122_A (m1) where
-
-class C a where m1 :: a -> a
diff --git a/testsuite/tests/ghc-regress/module/Mod123_A.hs b/testsuite/tests/ghc-regress/module/Mod123_A.hs
deleted file mode 100644
index 7ec23e6172..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod123_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod123_A (f1) where
-
-data T = MkT { f1 :: Int }
diff --git a/testsuite/tests/ghc-regress/module/Mod124_A.hs b/testsuite/tests/ghc-regress/module/Mod124_A.hs
deleted file mode 100644
index 8e9310bb32..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod124_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod124_A where
-
-data T = T
diff --git a/testsuite/tests/ghc-regress/module/Mod125_A.hs b/testsuite/tests/ghc-regress/module/Mod125_A.hs
deleted file mode 100644
index be190cf188..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod125_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod125_A where
-
-data T = T
diff --git a/testsuite/tests/ghc-regress/module/Mod126_A.hs b/testsuite/tests/ghc-regress/module/Mod126_A.hs
deleted file mode 100644
index 8c2d36491c..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod126_A.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Mod126_A where
-
-class T a where m1 :: a -> a
-
-data T1 = T
-
diff --git a/testsuite/tests/ghc-regress/module/Mod127_A.hs b/testsuite/tests/ghc-regress/module/Mod127_A.hs
deleted file mode 100644
index 605952de63..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod127_A.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Mod127_A where
-
-class T a where m1 :: a -> a
-
-data T1 = T
-
diff --git a/testsuite/tests/ghc-regress/module/Mod128_A.hs b/testsuite/tests/ghc-regress/module/Mod128_A.hs
deleted file mode 100644
index e2df4aca73..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod128_A.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- repeated exports of a type/class accumulate.
-module Mod128_A(T,T(Con)) where
-
-data T = Con
-
diff --git a/testsuite/tests/ghc-regress/module/Mod131_A.hs b/testsuite/tests/ghc-regress/module/Mod131_A.hs
deleted file mode 100644
index 5206ee4a23..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod131_A.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Mod131_A (f) where
-
-f x = x
-
diff --git a/testsuite/tests/ghc-regress/module/Mod131_B.hs b/testsuite/tests/ghc-regress/module/Mod131_B.hs
deleted file mode 100644
index ff7f83e76c..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod131_B.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Mod131_B(f) where
-
-f = 'a'
-
-
-
diff --git a/testsuite/tests/ghc-regress/module/Mod132_A.hs b/testsuite/tests/ghc-regress/module/Mod132_A.hs
deleted file mode 100644
index 178eef49ce..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod132_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod132_A where
-
-data Foo = Foo
diff --git a/testsuite/tests/ghc-regress/module/Mod132_B.hs b/testsuite/tests/ghc-regress/module/Mod132_B.hs
deleted file mode 100644
index e7c33b0d51..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod132_B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- exporting everything but the Foo dcon.
-module Mod132_B (module Mod132_A) where
-
-import Mod132_A hiding (Foo)
-import Mod132_A (Foo)
diff --git a/testsuite/tests/ghc-regress/module/Mod136_A.hs b/testsuite/tests/ghc-regress/module/Mod136_A.hs
deleted file mode 100644
index a69d8ee1a3..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod136_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod136_A (module Data.List) where
-
-import qualified Data.List
diff --git a/testsuite/tests/ghc-regress/module/Mod137_A.hs b/testsuite/tests/ghc-regress/module/Mod137_A.hs
deleted file mode 100644
index ba71afce39..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod137_A.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Mod137_A (module Data.Char) where
-
-import Data.Char
-import Data.List as Data.Char
-
-
diff --git a/testsuite/tests/ghc-regress/module/Mod138_A.hs b/testsuite/tests/ghc-regress/module/Mod138_A.hs
deleted file mode 100644
index 44f6645d1b..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod138_A.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Mod138_A (module Data.Char) where
-
-import qualified Data.Char
-import Data.List as Data.Char
-
-
diff --git a/testsuite/tests/ghc-regress/module/Mod139_A.hs b/testsuite/tests/ghc-regress/module/Mod139_A.hs
deleted file mode 100644
index 9114c897ad..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod139_A.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-module Mod139_A where
-
-data Foo = Bar
-
-class C a where
- m1 :: a -> Int
-
-instance C Int where
- m1 _ = 2
-
-x = 'x'
-
-
-
diff --git a/testsuite/tests/ghc-regress/module/Mod139_B.hs b/testsuite/tests/ghc-regress/module/Mod139_B.hs
deleted file mode 100644
index 064a3e3034..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod139_B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Mod139_B ( module A ) where
-
-import Mod139_A as A hiding (C,Foo)
-
-
diff --git a/testsuite/tests/ghc-regress/module/Mod140_A.hs b/testsuite/tests/ghc-regress/module/Mod140_A.hs
deleted file mode 100644
index 8dfd113b04..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod140_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod140_A where
-
-data Foo = Bar
diff --git a/testsuite/tests/ghc-regress/module/Mod141_A.hs b/testsuite/tests/ghc-regress/module/Mod141_A.hs
deleted file mode 100644
index fc6c1da430..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod141_A.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Mod141_A (partition, module Data.List) where
-
-import Data.List hiding (partition)
-
-partition :: String
-partition = "partition"
-
diff --git a/testsuite/tests/ghc-regress/module/Mod142_A.hs b/testsuite/tests/ghc-regress/module/Mod142_A.hs
deleted file mode 100644
index a153f35f80..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod142_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod142_A where
-
-x = 'y'
diff --git a/testsuite/tests/ghc-regress/module/Mod143_A.hs b/testsuite/tests/ghc-regress/module/Mod143_A.hs
deleted file mode 100644
index 37a50468d2..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod143_A.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Mod143_A where
-
-data Foo = Bar
-
diff --git a/testsuite/tests/ghc-regress/module/Mod144_A.hs b/testsuite/tests/ghc-regress/module/Mod144_A.hs
deleted file mode 100644
index 9818cccc64..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod144_A.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Mod144_A where
-
-data Foo = Bar
-
diff --git a/testsuite/tests/ghc-regress/module/Mod145_A.hs b/testsuite/tests/ghc-regress/module/Mod145_A.hs
deleted file mode 100644
index 7f935aa5ea..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod145_A.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Mod145_A where
-
-class C2 a where
- m1 :: (a,a) -> Int
diff --git a/testsuite/tests/ghc-regress/module/Mod147_A.hs b/testsuite/tests/ghc-regress/module/Mod147_A.hs
deleted file mode 100644
index 5262ca5ebc..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod147_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod147_A(D) where
-
-data D = D Int
diff --git a/testsuite/tests/ghc-regress/module/Mod157_A.hs b/testsuite/tests/ghc-regress/module/Mod157_A.hs
deleted file mode 100644
index 7e79595e30..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod157_A.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Mod157_A (T(..)) where
-
-data T = A | B | C
-
diff --git a/testsuite/tests/ghc-regress/module/Mod157_B.hs b/testsuite/tests/ghc-regress/module/Mod157_B.hs
deleted file mode 100644
index 4ef8d2c0c2..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod157_B.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod157_B (T(..)) where
-
-import Mod157_A(T(A))
diff --git a/testsuite/tests/ghc-regress/module/Mod157_C.hs b/testsuite/tests/ghc-regress/module/Mod157_C.hs
deleted file mode 100644
index b770018e21..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod157_C.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod157_C(T(..)) where
-
-import Mod157_A(T(B))
diff --git a/testsuite/tests/ghc-regress/module/Mod157_D.hs b/testsuite/tests/ghc-regress/module/Mod157_D.hs
deleted file mode 100644
index 1bab0e8ba3..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod157_D.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Mod157_D(T(..)) where
-
-import Mod157_B(T(..))
-import Mod157_C(T(..))
-
diff --git a/testsuite/tests/ghc-regress/module/Mod159_A.hs b/testsuite/tests/ghc-regress/module/Mod159_A.hs
deleted file mode 100644
index 396fcd8252..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod159_A.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-module Mod159_A (C(..)) where
-
-class C a where
- m1 :: a -> Int
- m2 :: a -> Int
- m3 :: a -> Int
-
-instance C Char where
- m1 _ = 1
- m2 _ = 2
- m3 _ = 3
-
-
diff --git a/testsuite/tests/ghc-regress/module/Mod159_B.hs b/testsuite/tests/ghc-regress/module/Mod159_B.hs
deleted file mode 100644
index 35bfe9a2b8..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod159_B.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod159_B (C(..)) where
-
-import Mod159_A(C(m1))
diff --git a/testsuite/tests/ghc-regress/module/Mod159_C.hs b/testsuite/tests/ghc-regress/module/Mod159_C.hs
deleted file mode 100644
index ba48933f42..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod159_C.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod159_C(C(..)) where
-
-import Mod159_A(C(m2))
diff --git a/testsuite/tests/ghc-regress/module/Mod159_D.hs b/testsuite/tests/ghc-regress/module/Mod159_D.hs
deleted file mode 100644
index 8731430ea6..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod159_D.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Mod159_D(C(..)) where
-
-import Mod159_B(C(..))
-import Mod159_C(C(..))
diff --git a/testsuite/tests/ghc-regress/module/Mod162_A.hs b/testsuite/tests/ghc-regress/module/Mod162_A.hs
deleted file mode 100644
index 68a753ba65..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod162_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod162_A where
-
-data T = T
diff --git a/testsuite/tests/ghc-regress/module/Mod163_A.hs b/testsuite/tests/ghc-regress/module/Mod163_A.hs
deleted file mode 100644
index cd5c3da328..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod163_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod163_A where
-
-data C = MkC { f :: Char }
diff --git a/testsuite/tests/ghc-regress/module/Mod164_A.hs b/testsuite/tests/ghc-regress/module/Mod164_A.hs
deleted file mode 100644
index e2f3d8c27b..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod164_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod164_A where
-
-data T = D1 | D2
diff --git a/testsuite/tests/ghc-regress/module/Mod164_B.hs b/testsuite/tests/ghc-regress/module/Mod164_B.hs
deleted file mode 100644
index c26e387ed8..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod164_B.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod164_B where
-
-data S = D1 | D3
diff --git a/testsuite/tests/ghc-regress/module/Mod170_A.hs b/testsuite/tests/ghc-regress/module/Mod170_A.hs
deleted file mode 100644
index 3a5fb66891..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod170_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod170_A (Type(..)) where
-
-data Type = Constr { field :: Int }
diff --git a/testsuite/tests/ghc-regress/module/Mod171_A.hs b/testsuite/tests/ghc-regress/module/Mod171_A.hs
deleted file mode 100644
index 27d296670c..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod171_A.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Mod171_A where
-
-f :: Int -> Int
-f x = x
diff --git a/testsuite/tests/ghc-regress/module/Mod171_B.hs b/testsuite/tests/ghc-regress/module/Mod171_B.hs
deleted file mode 100644
index 57e611a95b..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod171_B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Mod171_B (g, module Mod171_A) where
-import Mod171_A
-
-g :: Int -> Int
-g = f
diff --git a/testsuite/tests/ghc-regress/module/Mod172_B.hs b/testsuite/tests/ghc-regress/module/Mod172_B.hs
deleted file mode 100644
index 863208f50e..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod172_B.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Mod172_B( module Mod172_C ) where
-
-import Mod172_C
diff --git a/testsuite/tests/ghc-regress/module/Mod172_C.hs b/testsuite/tests/ghc-regress/module/Mod172_C.hs
deleted file mode 100644
index 36f086c8ac..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod172_C.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Mod172_C( f,g ) where
-
-class A a where f :: a
-data R = R { g :: Int }
diff --git a/testsuite/tests/ghc-regress/module/Mod173_Aux.hs b/testsuite/tests/ghc-regress/module/Mod173_Aux.hs
deleted file mode 100644
index 1c947914e1..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod173_Aux.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module Mod173_Aux( module Mod173_Aux ) where
-
-import qualified Data.List as Mod173_Aux( nub )
- -- This should not be exported
-
-import Data.List as Mod173_Aux( partition )
- -- This one should be exported
-
-frob x = Mod173_Aux.nub (x::[Int]) -- This one should
diff --git a/testsuite/tests/ghc-regress/module/Mod178_2.hs b/testsuite/tests/ghc-regress/module/Mod178_2.hs
deleted file mode 100644
index 818095da0f..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod178_2.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mmmodule Foo where
-
-foo = 'c'
-
diff --git a/testsuite/tests/ghc-regress/module/Mod179_A.hs b/testsuite/tests/ghc-regress/module/Mod179_A.hs
deleted file mode 100644
index 3291e72a89..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod179_A.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module Mod179_A where
-
-x = True
-
diff --git a/testsuite/tests/ghc-regress/module/Mod180_A.hs b/testsuite/tests/ghc-regress/module/Mod180_A.hs
deleted file mode 100644
index 5e11bdb116..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod180_A.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Mod180_A where
-
-data T = T
-x = T
diff --git a/testsuite/tests/ghc-regress/module/Mod180_B.hs b/testsuite/tests/ghc-regress/module/Mod180_B.hs
deleted file mode 100644
index e3f29fc37e..0000000000
--- a/testsuite/tests/ghc-regress/module/Mod180_B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Mod180_B where
-
-data T = U
-x = U
-
diff --git a/testsuite/tests/ghc-regress/module/T1074.hs b/testsuite/tests/ghc-regress/module/T1074.hs
deleted file mode 100644
index 6cd647ba6d..0000000000
--- a/testsuite/tests/ghc-regress/module/T1074.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# OPTIONS_GHC -fwarn-unused-imports #-}
-module Test where
-
-import qualified Control.Monad (ap)
-import qualified Control.Monad.Reader
-
-foo :: IO ()
-foo = return id `Control.Monad.ap` return ()
diff --git a/testsuite/tests/ghc-regress/module/T1074.stderr b/testsuite/tests/ghc-regress/module/T1074.stderr
deleted file mode 100644
index b368ca119e..0000000000
--- a/testsuite/tests/ghc-regress/module/T1074.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T1074.hs:5:1:
- Warning: The import of `Control.Monad.Reader' is redundant
- except perhaps to import instances from `Control.Monad.Reader'
- To import instances alone, use: import Control.Monad.Reader()
diff --git a/testsuite/tests/ghc-regress/module/T1074a.hs b/testsuite/tests/ghc-regress/module/T1074a.hs
deleted file mode 100644
index 0fcbdf600f..0000000000
--- a/testsuite/tests/ghc-regress/module/T1074a.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-{-# OPTIONS_GHC -fwarn-unused-imports #-}
-
-module Test where
-
-import qualified System.FilePath as FilePath.Native
- ( joinPath )
-import qualified System.FilePath.Posix as FilePath.Posix
- ( joinPath, splitDirectories )
-import qualified System.FilePath.Windows as FilePath.Windows
- ( joinPath )
-
-data TarPath = TarPath FilePath -- path name, 100 characters max.
- FilePath -- path prefix, 155 characters max.
-
-fromTarPath, fromTarPathToPosixPath
- , fromTarPathToWindowsPath :: TarPath -> FilePath
-
-fromTarPath (TarPath name prefix) =
- FilePath.Native.joinPath $ FilePath.Posix.splitDirectories prefix
- ++ FilePath.Posix.splitDirectories name
-
-fromTarPathToPosixPath (TarPath name prefix) =
- FilePath.Posix.joinPath $ FilePath.Posix.splitDirectories prefix
- ++ FilePath.Posix.splitDirectories name
-
-fromTarPathToWindowsPath (TarPath name prefix) =
- FilePath.Windows.joinPath $ FilePath.Posix.splitDirectories prefix
- ++ FilePath.Posix.splitDirectories name
diff --git a/testsuite/tests/ghc-regress/module/T1148.hs b/testsuite/tests/ghc-regress/module/T1148.hs
deleted file mode 100644
index c6758e580b..0000000000
--- a/testsuite/tests/ghc-regress/module/T1148.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# OPTIONS_GHC -XFlexibleContexts -fwarn-unused-imports #-}
-
-module ArrayBoundedU
- ( T
- , create
- , at
- ) where
-
-import Data.Ix
-import qualified Data.Array.Unboxed as Array
-import Data.Array.Base (unsafeAt)
-
-newtype T i e = T (Array.UArray i e)
-
-create :: (Ix i, Bounded i, Array.IArray Array.UArray e) => [(i,e)] -> T i e
-create ies = T (Array.array (minBound, maxBound) ies)
-
-at :: (Ix i, Bounded i, Array.IArray Array.UArray e) => T i e -> i -> e
-at (T a) i = unsafeAt a (index (minBound, maxBound) i)
diff --git a/testsuite/tests/ghc-regress/module/T2267.hs b/testsuite/tests/ghc-regress/module/T2267.hs
deleted file mode 100644
index 851997cd9d..0000000000
--- a/testsuite/tests/ghc-regress/module/T2267.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# OPTIONS_GHC -fwarn-unused-imports -Werror #-}
-
-module T2267 where
-
-import qualified Data.ByteString as B
-import qualified Data.ByteString.UTF8 as BU
-
-toString :: B.ByteString -> String
-toString = BU.toString
-
-fromString :: String -> B.ByteString
-fromString = BU.fromString
diff --git a/testsuite/tests/ghc-regress/module/T3776.hs b/testsuite/tests/ghc-regress/module/T3776.hs
deleted file mode 100644
index b522cfe0e0..0000000000
--- a/testsuite/tests/ghc-regress/module/T3776.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# OPTIONS_GHC -fwarn-unused-imports -fno-warn-missing-methods #-}
-
--- Check that although 'index' is apparently only used
--- unqualified, we nevertheless do not get a redundant-import warning
--- Trac #3776
-
-module T3776 where
-
-import qualified Data.Ix( Ix(index) )
-
-instance Data.Ix.Ix Float where
- index = error "urk"
diff --git a/testsuite/tests/ghc-regress/module/T414.hs b/testsuite/tests/ghc-regress/module/T414.hs
deleted file mode 100644
index 5f2d49b315..0000000000
--- a/testsuite/tests/ghc-regress/module/T414.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- should fail, Main must *export* main (#414)
-module Main () where
-main = return ()
diff --git a/testsuite/tests/ghc-regress/module/T414.stderr b/testsuite/tests/ghc-regress/module/T414.stderr
deleted file mode 100644
index a5052fb76d..0000000000
--- a/testsuite/tests/ghc-regress/module/T414.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-T414.hs:1:1:
- The main function `main' is not exported by module `Main'
diff --git a/testsuite/tests/ghc-regress/module/T414a.hs b/testsuite/tests/ghc-regress/module/T414a.hs
deleted file mode 100644
index 25f5c49d57..0000000000
--- a/testsuite/tests/ghc-regress/module/T414a.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module Main where
-main = return ()
diff --git a/testsuite/tests/ghc-regress/module/T414b.hs b/testsuite/tests/ghc-regress/module/T414b.hs
deleted file mode 100644
index 29425570e8..0000000000
--- a/testsuite/tests/ghc-regress/module/T414b.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module Main (module Main) where
-main = return ()
diff --git a/testsuite/tests/ghc-regress/module/all.T b/testsuite/tests/ghc-regress/module/all.T
deleted file mode 100644
index b8a5355a97..0000000000
--- a/testsuite/tests/ghc-regress/module/all.T
+++ /dev/null
@@ -1,336 +0,0 @@
-# These tests were swiped from the hugs98 source tree, in hugs98/tests/static,
-# on 16/10/2002.
-#
-# I used something like this to partly-automate the transition:
-#
-# for i in mod*.hs; do
-# if ! test -f ${i%.hs}.output; then
-# echo "test('${i%.hs}', normal, compile, [''])"
-# else if grep error ${i%.hs}.output >/dev/null; then
-# echo "test('${i%.hs}', normal, compile_fail, [''])"
-# else
-# echo "test('${i%.hs}', normal, compile, [''])"
-# fi fi
-# done
-#
-# A few of the tests use Hugs-specific extensions, and have been
-# commented out.
-
-# No point in doing anything except the normal way for renamer tests
-setTestOpts(only_ways(['normal']));
-
-test('mod1', normal, compile_fail, [''])
-test('mod2', normal, compile_fail, [''])
-test('mod3', normal, compile_fail, [''])
-test('mod4', normal, compile_fail, [''])
-test('mod5', normal, compile, [''])
-test('mod6', normal, compile, [''])
-test('mod7', normal, compile_fail, [''])
-test('mod8', normal, compile_fail, [''])
-test('mod9', normal, compile_fail, [''])
-test('mod10', normal, compile_fail, [''])
-test('mod11', normal, compile, [''])
-test('mod12', normal, compile, [''])
-test('mod13', normal, compile, [''])
-test('mod14', normal, compile, [''])
-test('mod15', normal, compile, [''])
-test('mod16', normal, compile, [''])
-test('mod17', normal, compile_fail, [''])
-test('mod18', normal, compile_fail, [''])
-test('mod19', normal, compile_fail, [''])
-test('mod20', normal, compile_fail, [''])
-test('mod21', normal, compile_fail, [''])
-test('mod22', normal, compile_fail, [''])
-test('mod23', normal, compile_fail, [''])
-test('mod24', normal, compile_fail, [''])
-test('mod25', normal, compile_fail, [''])
-test('mod26', normal, compile_fail, [''])
-test('mod27', normal, compile_fail, [''])
-#test('mod28', normal, compile_fail, [''])
-test('mod29', normal, compile_fail, [''])
-test('mod30', normal, compile, [''])
-test('mod31', normal, compile, [''])
-test('mod32', normal, compile, [''])
-test('mod33', normal, compile, [''])
-test('mod34', normal, compile, [''])
-test('mod35', normal, compile, [''])
-test('mod36', normal, compile_fail, [''])
-test('mod37', normal, compile, [''])
-test('mod38', normal, compile_fail, [''])
-test('mod39', normal, compile, [''])
-test('mod40', normal, compile_fail, [''])
-test('mod41', normal, compile_fail, [''])
-test('mod42', normal, compile_fail, [''])
-test('mod43', normal, compile_fail, [''])
-test('mod44', normal, compile_fail, [''])
-test('mod45', normal, compile_fail, [''])
-test('mod46', normal, compile_fail, [''])
-test('mod47', normal, compile_fail, [''])
-test('mod48', normal, compile_fail, [''])
-test('mod49', normal, compile_fail, [''])
-test('mod50', normal, compile_fail, [''])
-test('mod51', normal, compile_fail, [''])
-test('mod52', normal, compile_fail, [''])
-test('mod53', normal, compile_fail, [''])
-test('mod54', normal, compile_fail, [''])
-test('mod55', normal, compile_fail, [''])
-test('mod56', normal, compile_fail, [''])
-#test('mod57', normal, compile_fail, [''])
-test('mod58', normal, compile_fail, [''])
-test('mod59', normal, compile_fail, [''])
-test('mod60', normal, compile_fail, [''])
-test('mod61', normal, compile_fail, [''])
-test('mod62', normal, compile_fail, [''])
-test('mod63', normal, compile_fail, [''])
-test('mod64', normal, compile, [''])
-test('mod65', normal, compile, [''])
-test('mod66', normal, compile_fail, [''])
-test('mod67', normal, compile_fail, [''])
-test('mod68', normal, compile_fail, [''])
-test('mod69', normal, compile_fail, [''])
-test('mod70', normal, compile_fail, [''])
-test('mod71', normal, compile_fail, [''])
-test('mod72', normal, compile_fail, [''])
-test('mod73', normal, compile_fail, [''])
-test('mod74', normal, compile_fail, [''])
-test('mod75', normal, compile, [''])
-test('mod76', normal, compile_fail, [''])
-test('mod77', normal, compile_fail, [''])
-#test('mod78', normal, compile_fail, [''])
-test('mod79', normal, compile_fail, [''])
-test('mod80', normal, compile_fail, [''])
-test('mod81', normal, compile_fail, [''])
-test('mod82', normal, compile, [''])
-test('mod83', normal, compile, [''])
-test('mod84', normal, compile, [''])
-test('mod85', normal, compile, [''])
-test('mod86', normal, compile, [''])
-test('mod87', normal, compile_fail, [''])
-test('mod88', normal, compile_fail, [''])
-test('mod89', normal, compile_fail, [''])
-test('mod90', normal, compile_fail, [''])
-test('mod91', normal, compile_fail, [''])
-test('mod92', normal, compile, [''])
-test('mod93', normal, compile, [''])
-test('mod94', normal, compile, [''])
-test('mod95', normal, compile, [''])
-test('mod96', normal, compile, [''])
-test('mod97', normal, compile_fail, [''])
-test('mod98', normal, compile_fail, [''])
-test('mod99', normal, compile, [''])
-test('mod100', normal, compile, [''])
-
-test('mod101',
- extra_clean(['Mod101_AuxA.hi', 'Mod101_AuxA.o', 'Mod101_AuxB.hi', 'Mod101_AuxB.o']),
- multimod_compile_fail, ['mod101', '-v0'])
-
-test('mod102',
- extra_clean(['Mod102_AuxA.hi', 'Mod102_AuxA.o', 'Mod102_AuxB.hi', 'Mod102_AuxB.o']),
- multimod_compile_fail, ['mod102', '-v0'])
-
-test('mod103', normal, compile, [''])
-test('mod104', normal, compile, [''])
-test('mod105', normal, compile, [''])
-test('mod106', normal, compile, [''])
-test('mod107', normal, compile, [''])
-test('mod108', normal, compile, [''])
-test('mod109', normal, compile, [''])
-test('mod110', normal, compile_fail, [''])
-test('mod111', normal, compile, [''])
-test('mod112', normal, compile, [''])
-test('mod113', normal, compile, [''])
-test('mod114', extra_clean(['Mod114_Help.hi', 'Mod114_Help.o']),
- multimod_compile_fail, ['mod114', '-v0'])
-
-test('mod115',
- extra_clean(['Mod115_A.hi', 'Mod115_A.o', 'Mod115_B.hi', 'Mod115_B.o']),
- multimod_compile, ['mod115', '-v0'])
-
-test('mod116', normal, compile_fail, [''])
-test('mod117',
- extra_clean(['Mod117_A.hi', 'Mod117_A.o', 'Mod117_B.hi', 'Mod117_B.o']),
- multimod_compile, ['mod117', '-v0'])
-
-test('mod118',
- extra_clean(['Mod118_A.hi', 'Mod118_A.o', 'Mod118_B.hi', 'Mod118_B.o']),
- multimod_compile, ['mod118', '-v0'])
-
-test('mod119',
- extra_clean(['Mod119_A.hi', 'Mod119_A.o', 'Mod119_B.hi', 'Mod119_B.o']),
- multimod_compile, ['mod119', '-v0'])
-
-test('mod120',
- extra_clean(['Mod120_A.hi', 'Mod120_A.o']),
- multimod_compile_fail, ['mod120', '-v0'])
-
-test('mod121',
- extra_clean(['Mod121_A.hi', 'Mod121_A.o']),
- multimod_compile_fail, ['mod121', '-v0'])
-
-test('mod122',
- extra_clean(['Mod122_A.hi', 'Mod122_A.o']),
- multimod_compile_fail, ['mod122', '-v0'])
-
-test('mod123',
- extra_clean(['Mod123_A.hi', 'Mod123_A.o']),
- multimod_compile_fail, ['mod123', '-v0'])
-
-test('mod124',
- extra_clean(['Mod124_A.hi', 'Mod124_A.o']),
- multimod_compile_fail, ['mod124', '-v0'])
-
-test('mod125',
- extra_clean(['Mod125_A.hi', 'Mod125_A.o']),
- multimod_compile_fail, ['mod125', '-v0'])
-
-test('mod126',
- extra_clean(['Mod126_A.hi', 'Mod126_A.o']),
- multimod_compile_fail, ['mod126', '-v0'])
-
-test('mod127',
- extra_clean(['Mod127_A.hi', 'Mod127_A.o']),
- multimod_compile_fail, ['mod127', '-v0'])
-
-test('mod128',
- extra_clean(['Mod128_A.hi', 'Mod128_A.o']) ,
- multimod_compile, ['mod128', '-v0'])
-
-test('mod129', normal, compile, [''])
-test('mod130', normal, compile_fail, [''])
-test('mod131',
- extra_clean(['Mod131_A.hi', 'Mod131_A.o', 'Mod131_B.hi', 'Mod131_B.o']),
- multimod_compile_fail, ['mod131', '-v0'])
-
-test('mod132',
- extra_clean(['Mod132_A.hi', 'Mod132_A.o', 'Mod132_B.hi', 'Mod132_B.o']),
- multimod_compile_fail, ['mod132', '-v0'])
-
-test('mod133', reqlib('mtl'), compile, [''])
-test('mod134', normal, compile_fail, [''])
-test('mod135', normal, compile_fail, [''])
-test('mod136', extra_clean(['Mod136_A.hi', 'Mod136_A.o']),
- multimod_compile_fail, ['mod136', '-v0'])
-
-test('mod137', extra_clean(['Mod137_A.hi', 'Mod137_A.o']),
- multimod_compile, ['mod137', '-v0'])
-
-test('mod138', extra_clean(['Mod138_A.hi', 'Mod138_A.o']),
- multimod_compile_fail, ['mod138', '-v0'])
-
-test('mod139', extra_clean(['Mod139_A.hi', 'Mod139_A.o', 'Mod139_B.hi', 'Mod139_B.o']),
- multimod_compile, ['mod139', '-v0'])
-
-test('mod140', extra_clean(['Mod140_A.hi', 'Mod140_A.o']),
- multimod_compile, ['mod140', '-v0'])
-
-test('mod141', extra_clean(['Mod141_A.hi', 'Mod141_A.o']),
- multimod_compile, ['mod141', '-v0'])
-
-test('mod142', extra_clean(['Mod142_A.hi', 'Mod142_A.o']),
- multimod_compile_fail, ['mod142', '-v0'])
-
-test('mod143', extra_clean(['Mod143_A.hi', 'Mod143_A.o']),
- multimod_compile_fail, ['mod143', '-v0'])
-
-test('mod144', extra_clean(['Mod144_A.hi', 'Mod144_A.o']),
- run_command, ['$MAKE -s --no-print-directory mod144'])
-
-test('mod145', extra_clean(['Mod145_A.hi', 'Mod145_A.o']),
- multimod_compile_fail, ['mod145', '-v0'])
-
-test('mod146',
- extra_clean(['Mod145_A.mod146_hi', 'Mod145_A.mod146_o', 'mod146.mod146_o', 'mod146.mod146_hi']),
- run_command, ['$MAKE -s --no-print-directory mod146'])
-
-test('mod147', extra_clean(['Mod147_A.hi', 'Mod147_A.o']),
- multimod_compile_fail, ['mod147', '-v0'])
-
-test('mod148', normal, compile, [''])
-test('mod149', normal, compile, [''])
-test('mod150', normal, compile_fail, [''])
-test('mod151', normal, compile_fail, [''])
-test('mod152', normal, compile_fail, [''])
-test('mod153', normal, compile_fail, [''])
-test('mod154', if_compiler_type('hugs', expect_fail), compile, [''])
-test('mod155', normal, compile_fail, [''])
-test('mod156', normal, compile, [''])
-test('mod157',
- extra_clean(['Mod157_A.hi', 'Mod157_A.o', 'Mod157_B.hi', 'Mod157_B.o',
- 'Mod157_C.hi', 'Mod157_C.o', 'Mod157_D.hi', 'Mod157_D.o']),
- multimod_compile, ['mod157', '-v0'])
-
-test('mod158',
- extra_clean(['Mod157_A.mod158_hi', 'Mod157_A.mod158_o', 'Mod157_B.mod158_hi', 'Mod157_B.mod158_o',
- 'Mod157_C.mod158_hi', 'Mod157_C.mod158_o', 'Mod157_D.mod158_hi', 'Mod157_D.mod158_o']),
- run_command, ['$MAKE -s --no-print-directory mod158'])
-
-test('mod159',
- extra_clean(['Mod159_A.hi', 'Mod159_A.o', 'Mod159_B.hi', 'Mod159_B.o',
- 'Mod159_C.hi', 'Mod159_C.o', 'Mod159_D.hi', 'Mod159_D.o']),
- multimod_compile, ['mod159', '-v0'])
-
-test('mod160',
- extra_clean(['Mod159_A.mod160_hi', 'Mod159_A.mod160_o', 'Mod159_B.mod160_hi', 'Mod159_B.mod160_o',
- 'Mod159_C.mod160_hi', 'Mod159_C.mod160_o', 'Mod159_D.mod160_hi', 'Mod159_D.mod160_o']),
- run_command, ['$MAKE -s --no-print-directory mod160'])
-
-test('mod161', normal, compile_fail, [''])
-test('mod162', extra_clean(['Mod162_A.hi', 'Mod162_A.o']),
- multimod_compile, ['mod162', '-v0'])
-
-test('mod163', extra_clean(['Mod163_A.hi', 'Mod163_A.o']),
- multimod_compile, ['mod163', '-v0'])
-
-test('mod164', extra_clean(['Mod164_A.hi', 'Mod164_A.o', 'Mod164_B.hi', 'Mod164_B.o']),
- multimod_compile_fail, ['mod164', '-v0'])
-
-test('mod165', extra_clean(['Mod164_A.mod165_hi', 'Mod164_A.mod165_o', 'Mod164_B.mod165_hi', 'Mod164_B.mod165_o']),
- run_command, ['$MAKE -s --no-print-directory mod165'])
-
-test('mod166', extra_clean(['Mod164_A.mod166_hi', 'Mod164_A.mod166_o', 'Mod164_B.mod166_hi', 'Mod164_B.mod166_o', 'mod166.mod166_o', 'mod166.mod166_hi']),
- run_command, ['$MAKE -s --no-print-directory mod166 MAKELEVEL='])
-
-test('mod167', extra_clean(['Mod164_A.mod167_hi', 'Mod164_A.mod167_o', 'Mod164_B.mod167_hi', 'Mod164_B.mod167_o', 'mod167.mod167_o', 'mod167.mod167_hi']),
- run_command, ['$MAKE -s --no-print-directory mod167 MAKELEVEL='])
-
-test('mod168', normal, compile, [''])
-test('mod169', normal, compile, [''])
-test('mod170', extra_clean(['Mod170_A.hi', 'Mod170_A.o']),
- multimod_compile, ['mod170', '-v0'])
-
-
-test('mod171', extra_clean(['Mod171_A.hi', 'Mod171_A.o', 'Mod171_B.hi', 'Mod171_B.o']),
- multimod_compile, ['mod171', '-v0 -Wall'])
-
-
-test('mod172', extra_clean(['Mod172_B.hi', 'Mod172_B.o', 'Mod172_C.hi', 'Mod172_C.o']),
- multimod_compile, ['mod172', '-v0'])
-
-
-test('mod173', extra_clean(['Mod173_Aux.hi', 'Mod173_Aux.o']),
- multimod_compile, ['mod173', '-v0'])
-
-test('mod174', normal, compile_fail, [''])
-
-# mod175 is a sub-directory
-
-test('mod176', normal, compile, ['-fwarn-unused-imports'])
-test('mod177', normal, compile, ['-fwarn-unused-imports'])
-test('mod178', extra_clean(['Mod178_2.hi', 'Mod178_2.o']),
- multimod_compile_fail, ['mod178', '-v0'])
-
-test('mod179', extra_clean(['Mod179_A.hi', 'Mod179_A.o']),
- multimod_compile, ['mod179', '-v0'])
-
-
-test('mod180', extra_clean(['Mod180_A.hi', 'Mod180_A.o', 'Mod180_B.hi', 'Mod180_B.o']),
- multimod_compile_fail, ['mod180', '-v0'])
-
-test('T1148', normal, compile, [''])
-test('T1074', reqlib('mtl'), compile, [''])
-test('T1074a', normal, compile, [''])
-test('T2267', reqlib('utf8-string'), compile, [''])
-test('T414', normal, compile_fail, [''])
-test('T414a', normal, compile, [''])
-test('T414b', normal, compile, [''])
-test('T3776', normal, compile, [''])
diff --git a/testsuite/tests/ghc-regress/module/base01/GHC/Base.hs b/testsuite/tests/ghc-regress/module/base01/GHC/Base.hs
deleted file mode 100644
index 9149f8544b..0000000000
--- a/testsuite/tests/ghc-regress/module/base01/GHC/Base.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-
-module GHC.Base (module GHC.Base, Bool(..)) where
-
-import GHC.Prim
-import GHC.Types
-
-default ()
-
-class Eq a where
- (==), (/=) :: a -> a -> Bool
-
- x /= y = not (x == y)
- x == y = not (x /= y)
-
-instance Eq Bool where
- False == False = True
- True == True = True
- _ == _ = False
-
-not :: Bool -> Bool
-not True = False
-not False = True
-
-inline x = x
-
diff --git a/testsuite/tests/ghc-regress/module/base01/GHC/Foo.hs b/testsuite/tests/ghc-regress/module/base01/GHC/Foo.hs
deleted file mode 100644
index c23ef0ceb3..0000000000
--- a/testsuite/tests/ghc-regress/module/base01/GHC/Foo.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-module GHC.Foo where
-
-import GHC.Base
-
-foo = True == True
-
diff --git a/testsuite/tests/ghc-regress/module/base01/Makefile b/testsuite/tests/ghc-regress/module/base01/Makefile
deleted file mode 100644
index 1f6273c330..0000000000
--- a/testsuite/tests/ghc-regress/module/base01/Makefile
+++ /dev/null
@@ -1,14 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-clean:
- rm -f GHC/*.o
- rm -f GHC/*.hi
-
-base01:
- rm -f GHC/*.o
- rm -f GHC/*.hi
- '$(TEST_HC)' $(TEST_HC_OPTS) -XNoImplicitPrelude -package-name base -c GHC/Base.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -XNoImplicitPrelude -package-name base --make GHC.Foo
-
diff --git a/testsuite/tests/ghc-regress/module/base01/all.T b/testsuite/tests/ghc-regress/module/base01/all.T
deleted file mode 100644
index d0dbb2960d..0000000000
--- a/testsuite/tests/ghc-regress/module/base01/all.T
+++ /dev/null
@@ -1,9 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-test('base01',
- [if_compiler_lt('ghc', '7.1', expect_fail),
- normalise_slashes,
- clean_cmd('$MAKE -s clean')],
- run_command,
- ['$MAKE -s base01 --no-print-directory'])
-
diff --git a/testsuite/tests/ghc-regress/module/base01/base01.stdout b/testsuite/tests/ghc-regress/module/base01/base01.stdout
deleted file mode 100644
index 9ab7d2124e..0000000000
--- a/testsuite/tests/ghc-regress/module/base01/base01.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[2 of 2] Compiling GHC.Foo ( GHC/Foo.hs, GHC/Foo.o )
diff --git a/testsuite/tests/ghc-regress/module/convert-tests.sh b/testsuite/tests/ghc-regress/module/convert-tests.sh
deleted file mode 100644
index d4053472ac..0000000000
--- a/testsuite/tests/ghc-regress/module/convert-tests.sh
+++ /dev/null
@@ -1,12 +0,0 @@
-#! /bin/sh
-
-# something like this...
-for i in mod*.hs; do
- if ! test -f ${i%.hs}.output; then
- echo "test('${i%.hs}', normal, compile, [''])"
- else if grep error ${i%.hs}.output >/dev/null; then
- echo "test('${i%.hs}', normal, compile_fail, [''])"
- else
- echo "test('${i%.hs}', normal, compile, [''])"
- fi fi
-done
diff --git a/testsuite/tests/ghc-regress/module/mod1.hs b/testsuite/tests/ghc-regress/module/mod1.hs
deleted file mode 100644
index c8276cda87..0000000000
--- a/testsuite/tests/ghc-regress/module/mod1.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Importing unknown module
-module M where
-import N
diff --git a/testsuite/tests/ghc-regress/module/mod1.stderr b/testsuite/tests/ghc-regress/module/mod1.stderr
deleted file mode 100644
index e665f8468e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod1.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-mod1.hs:3:1:
- Failed to load interface for `N'
- Use -v to see a list of the files searched for.
diff --git a/testsuite/tests/ghc-regress/module/mod1.stderr-hugs b/testsuite/tests/ghc-regress/module/mod1.stderr-hugs
deleted file mode 100644
index 0f432cd7d6..0000000000
--- a/testsuite/tests/ghc-regress/module/mod1.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod1.hs" - Can't find imported module "N"
diff --git a/testsuite/tests/ghc-regress/module/mod10.hs b/testsuite/tests/ghc-regress/module/mod10.hs
deleted file mode 100644
index 1e8046f05e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod10.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Exporting non-existent datatype transparently
-module M(T(K1)) where
-x = 'a' -- dummy definition to get round a separate bug
diff --git a/testsuite/tests/ghc-regress/module/mod10.stderr b/testsuite/tests/ghc-regress/module/mod10.stderr
deleted file mode 100644
index 5369fa0f8b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod10.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod10.hs:2:10: Not in scope: type constructor or class `T'
diff --git a/testsuite/tests/ghc-regress/module/mod10.stderr-hugs b/testsuite/tests/ghc-regress/module/mod10.stderr-hugs
deleted file mode 100644
index 2020e4ceab..0000000000
--- a/testsuite/tests/ghc-regress/module/mod10.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod10.hs" - Explicit export list given for non-class/datatype "T" in export list of module "M"
diff --git a/testsuite/tests/ghc-regress/module/mod100.hs b/testsuite/tests/ghc-regress/module/mod100.hs
deleted file mode 100644
index f370d09f87..0000000000
--- a/testsuite/tests/ghc-regress/module/mod100.hs
+++ /dev/null
@@ -1,28 +0,0 @@
--- !!! Empty where declarations list
-module Mod100 where
-
-y = 3
-
-x = v where v = 2 where
-
-{- Example of a nested context not being further
- indented than the enclosing - an error (from the
- Sec B.2 of the H98 report).
-
-f x = let
- h y = let
- p z = z
- in p
- in h
-
--}
-
-f e = let { x = e; y = x } in y
-
-z = 'a' where
-
-class A a where
-
-instance A Int where
-
-instance A Char
diff --git a/testsuite/tests/ghc-regress/module/mod101.hs b/testsuite/tests/ghc-regress/module/mod101.hs
deleted file mode 100644
index ffc393cbff..0000000000
--- a/testsuite/tests/ghc-regress/module/mod101.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! Re-exporting a subset of a alg. data type's constructors
-module Mod101 where
-
-import Mod101_AuxB
-
--- ConB is not imported by Mod101_AuxB, hence not exported either.
-x :: DataA
-x = ConB False
diff --git a/testsuite/tests/ghc-regress/module/mod101.stderr b/testsuite/tests/ghc-regress/module/mod101.stderr
deleted file mode 100644
index 662c38e89a..0000000000
--- a/testsuite/tests/ghc-regress/module/mod101.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-mod101.hs:8:5:
- Not in scope: data constructor `ConB'
- Perhaps you meant `ConA' (imported from Mod101_AuxB)
diff --git a/testsuite/tests/ghc-regress/module/mod101.stderr-hugs b/testsuite/tests/ghc-regress/module/mod101.stderr-hugs
deleted file mode 100644
index 3902e9c3b5..0000000000
--- a/testsuite/tests/ghc-regress/module/mod101.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod101.hs":8 - Undefined data constructor "ConB"
diff --git a/testsuite/tests/ghc-regress/module/mod102.hs b/testsuite/tests/ghc-regress/module/mod102.hs
deleted file mode 100644
index 945276937c..0000000000
--- a/testsuite/tests/ghc-regress/module/mod102.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! Fixed bug: Re-exporting a subset of a class' methods
-module Mod102 where
-
-import Mod102_AuxB
-
--- methB is not imported by Mod102_AuxB, hence not exported either.
-x :: Bool -> ()
-x = methB False
diff --git a/testsuite/tests/ghc-regress/module/mod102.stderr b/testsuite/tests/ghc-regress/module/mod102.stderr
deleted file mode 100644
index 60f7b28ab2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod102.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-mod102.hs:8:5:
- Not in scope: `methB'
- Perhaps you meant `methA' (imported from Mod102_AuxB)
diff --git a/testsuite/tests/ghc-regress/module/mod102.stderr-hugs b/testsuite/tests/ghc-regress/module/mod102.stderr-hugs
deleted file mode 100644
index 97d80614cf..0000000000
--- a/testsuite/tests/ghc-regress/module/mod102.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod102.hs":8 - Undefined variable "methB"
diff --git a/testsuite/tests/ghc-regress/module/mod103.hs b/testsuite/tests/ghc-regress/module/mod103.hs
deleted file mode 100644
index ccd6ddfd0d..0000000000
--- a/testsuite/tests/ghc-regress/module/mod103.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! Layout rule extension (restricting empty do's).
-module Foo where
-
-g :: Int -> (Int -> IO a) -> IO a
-g x cont = cont x
-
-f :: Int -> IO Int
-f x = do
- g x $ \ y -> do
- f y
-
-
diff --git a/testsuite/tests/ghc-regress/module/mod104.hs b/testsuite/tests/ghc-regress/module/mod104.hs
deleted file mode 100644
index f44289971f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod104.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! Redefining imported Prelude entities
-module A where
---import Prelude
-
-head = "head"
-
diff --git a/testsuite/tests/ghc-regress/module/mod105.hs b/testsuite/tests/ghc-regress/module/mod105.hs
deleted file mode 100644
index 2ae72ba491..0000000000
--- a/testsuite/tests/ghc-regress/module/mod105.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! Re-defining Prelude entities
-module Ring where
-import qualified Prelude
-import Data.List ( nub )
-
-l1 + l2 = l1 Prelude.++ l2
-l1 * l2 = nub (l1 + l2)
-
-succ = (Prelude.+ 1)
diff --git a/testsuite/tests/ghc-regress/module/mod106.hs b/testsuite/tests/ghc-regress/module/mod106.hs
deleted file mode 100644
index a871377d38..0000000000
--- a/testsuite/tests/ghc-regress/module/mod106.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! local aliases
-module M where
-
-import qualified Data.List as M
-import qualified Data.Maybe as M
-
-x = M.length
-b = M.isJust
diff --git a/testsuite/tests/ghc-regress/module/mod107.hs b/testsuite/tests/ghc-regress/module/mod107.hs
deleted file mode 100644
index cd660d96af..0000000000
--- a/testsuite/tests/ghc-regress/module/mod107.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! Redefining and using Prelude entities
-module F where
-
-sin :: Float -> Float
-sin x = (x::Float)
-f x = Prelude.sin (F.sin x)
diff --git a/testsuite/tests/ghc-regress/module/mod108.hs b/testsuite/tests/ghc-regress/module/mod108.hs
deleted file mode 100644
index 2a5ffa4934..0000000000
--- a/testsuite/tests/ghc-regress/module/mod108.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! Local alias same as module
-module F where
-
-import Prelude as F
-
-x = 'a'
diff --git a/testsuite/tests/ghc-regress/module/mod109.hs b/testsuite/tests/ghc-regress/module/mod109.hs
deleted file mode 100644
index e9b6f29171..0000000000
--- a/testsuite/tests/ghc-regress/module/mod109.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! redefining and using Prelude entities
-module A( null, nonNull ) where
-import Prelude hiding( null )
-import qualified Prelude
-null, nonNull :: Int -> Bool
-null x = x == 0
-nonNull x = not (Prelude.null [x]) && not (null x)
diff --git a/testsuite/tests/ghc-regress/module/mod11.hs b/testsuite/tests/ghc-regress/module/mod11.hs
deleted file mode 100644
index 84353668ba..0000000000
--- a/testsuite/tests/ghc-regress/module/mod11.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- !!! Empty module body
-module M where
diff --git a/testsuite/tests/ghc-regress/module/mod110.hs b/testsuite/tests/ghc-regress/module/mod110.hs
deleted file mode 100644
index 897dd12cdb..0000000000
--- a/testsuite/tests/ghc-regress/module/mod110.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- !!! Re-defining Prelude class
-module M where
-
-import Prelude
---import qualified Prelude
-
-class Eq a where
- equal :: a -> a -> Prelude.Bool
- negate :: a -> a
-
-instance Eq Prelude.Int where
- equal x y = x Prelude.== y
- negate x = Prelude.negate x
-x = M.negate (2 :: Prelude.Int)
-
diff --git a/testsuite/tests/ghc-regress/module/mod110.stderr b/testsuite/tests/ghc-regress/module/mod110.stderr
deleted file mode 100644
index c371bc1bd7..0000000000
--- a/testsuite/tests/ghc-regress/module/mod110.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod110.hs:11:10:
- Ambiguous occurrence `Eq'
- It could refer to either `M.Eq', defined at mod110.hs:7:7
- or `Prelude.Eq', imported from Prelude at mod110.hs:4:1-14
diff --git a/testsuite/tests/ghc-regress/module/mod110.stderr-hugs b/testsuite/tests/ghc-regress/module/mod110.stderr-hugs
deleted file mode 100644
index ac19a7121a..0000000000
--- a/testsuite/tests/ghc-regress/module/mod110.stderr-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-ERROR "mod110.hs":11 - Ambiguous class occurrence "Eq"
-*** Could refer to: M.Eq Hugs.Prelude.Eq
diff --git a/testsuite/tests/ghc-regress/module/mod111.hs b/testsuite/tests/ghc-regress/module/mod111.hs
deleted file mode 100644
index fbc8c0ec31..0000000000
--- a/testsuite/tests/ghc-regress/module/mod111.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! Hiding an abstract (Prelude) type
-module M where
-
-import Prelude hiding ( Char )
-import Data.Char hiding ( ord, Char )
-import qualified Data.Char ( ord )
-
-type Char = Int
-
-ord :: Char -> Int
-ord x = Data.Char.ord (chr x) + 1
-
diff --git a/testsuite/tests/ghc-regress/module/mod112.hs b/testsuite/tests/ghc-regress/module/mod112.hs
deleted file mode 100644
index 953d930603..0000000000
--- a/testsuite/tests/ghc-regress/module/mod112.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! Hiding an abstract (Prelude) class
-module M where
-
-import Prelude hiding ( Eq )
-
-class Eq a where
- equ :: a -> Bool
-
-f :: Eq a => a -> Bool
-f x = equ x
-
-
diff --git a/testsuite/tests/ghc-regress/module/mod113.hs b/testsuite/tests/ghc-regress/module/mod113.hs
deleted file mode 100644
index 89f812f74f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod113.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! empty decls, alts and stmts
-module M where {
-;;;;;;;;import Data.Char;;x = 1;;y = 2;
-v = do {;;;;;;;;;;;;;;;;;;;;;;;x <- [1];;return x;;};
-f x = case x of { ;;;;;;2 -> 'a';;;;;;3->'b';;;;;;;;;;;};;;
-g x = case x of { ;;;;;;;;;; _ -> "aa"; }
-}
diff --git a/testsuite/tests/ghc-regress/module/mod114.hs b/testsuite/tests/ghc-regress/module/mod114.hs
deleted file mode 100644
index b739c5d283..0000000000
--- a/testsuite/tests/ghc-regress/module/mod114.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Type re-exportation test
--- (from bug reported by Ross Paterson.)
-module Mod114 (Stuff) where
-import Mod114_Help hiding(Stuff(..))
diff --git a/testsuite/tests/ghc-regress/module/mod114.stderr b/testsuite/tests/ghc-regress/module/mod114.stderr
deleted file mode 100644
index be7202ce01..0000000000
--- a/testsuite/tests/ghc-regress/module/mod114.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod114.hs:3:16: Not in scope: type constructor or class `Stuff'
diff --git a/testsuite/tests/ghc-regress/module/mod114.stderr-hugs b/testsuite/tests/ghc-regress/module/mod114.stderr-hugs
deleted file mode 100644
index d71b45dea4..0000000000
--- a/testsuite/tests/ghc-regress/module/mod114.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod114.hs" - Unknown entity "Stuff" exported from module "Mod114"
diff --git a/testsuite/tests/ghc-regress/module/mod115.hs b/testsuite/tests/ghc-regress/module/mod115.hs
deleted file mode 100644
index f0bf9439a2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod115.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! class method (re-)exportation trickery
-module M where
-
-import Mod115_B
-
-f = m1 (1::Int)
-g = m2 (2::Int)
diff --git a/testsuite/tests/ghc-regress/module/mod116.hs b/testsuite/tests/ghc-regress/module/mod116.hs
deleted file mode 100644
index 42d668c9c8..0000000000
--- a/testsuite/tests/ghc-regress/module/mod116.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! data ctor (re-)exportation
-module M (T(M1), M2) where
-
-data T = M1 Int | M2 Int
-
diff --git a/testsuite/tests/ghc-regress/module/mod116.stderr b/testsuite/tests/ghc-regress/module/mod116.stderr
deleted file mode 100644
index c9fb1ded5f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod116.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod116.hs:2:18: Not in scope: type constructor or class `M2'
diff --git a/testsuite/tests/ghc-regress/module/mod116.stderr-hugs b/testsuite/tests/ghc-regress/module/mod116.stderr-hugs
deleted file mode 100644
index 34cb5d7398..0000000000
--- a/testsuite/tests/ghc-regress/module/mod116.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod116.hs" - Illegal export of a lone data constructor "M2"
diff --git a/testsuite/tests/ghc-regress/module/mod117.hs b/testsuite/tests/ghc-regress/module/mod117.hs
deleted file mode 100644
index 83dc056f9c..0000000000
--- a/testsuite/tests/ghc-regress/module/mod117.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! field name (re-)exportation trickery
-module M where
-
-import Mod117_B
-
-f = m1 undefined
-g = m2 undefined
diff --git a/testsuite/tests/ghc-regress/module/mod118.hs b/testsuite/tests/ghc-regress/module/mod118.hs
deleted file mode 100644
index a443b6f123..0000000000
--- a/testsuite/tests/ghc-regress/module/mod118.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! more class method (re-)exportation trickery.
-module M where
-
-import Mod118_B
-
-g = m2 (2::Int)
diff --git a/testsuite/tests/ghc-regress/module/mod119.hs b/testsuite/tests/ghc-regress/module/mod119.hs
deleted file mode 100644
index d51f5674d9..0000000000
--- a/testsuite/tests/ghc-regress/module/mod119.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! module re-exportation
-module M where
-import Mod119_B(f)
diff --git a/testsuite/tests/ghc-regress/module/mod12.hs b/testsuite/tests/ghc-regress/module/mod12.hs
deleted file mode 100644
index dcbacb6728..0000000000
--- a/testsuite/tests/ghc-regress/module/mod12.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Correct class export
-module M(C(m1,m2,m3)) where
-class C a where
- m1 :: a
- m2, m3 :: a
diff --git a/testsuite/tests/ghc-regress/module/mod120.hs b/testsuite/tests/ghc-regress/module/mod120.hs
deleted file mode 100644
index 04e5039463..0000000000
--- a/testsuite/tests/ghc-regress/module/mod120.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! (..) importation of partially exported types
--- (test / bug report due to Ross Paterson.)
-module M where
-import Mod120_A(T(..))
-f = Foo
diff --git a/testsuite/tests/ghc-regress/module/mod120.stderr b/testsuite/tests/ghc-regress/module/mod120.stderr
deleted file mode 100644
index 0d6181e61a..0000000000
--- a/testsuite/tests/ghc-regress/module/mod120.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod120.hs:5:5: Not in scope: data constructor `Foo'
diff --git a/testsuite/tests/ghc-regress/module/mod120.stderr-hugs b/testsuite/tests/ghc-regress/module/mod120.stderr-hugs
deleted file mode 100644
index 81d8072d77..0000000000
--- a/testsuite/tests/ghc-regress/module/mod120.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod120.hs":5 - Undefined data constructor "Foo"
diff --git a/testsuite/tests/ghc-regress/module/mod121.hs b/testsuite/tests/ghc-regress/module/mod121.hs
deleted file mode 100644
index f39427d623..0000000000
--- a/testsuite/tests/ghc-regress/module/mod121.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! (..) importation of partially exported class
--- (test / bug report due to Ross Paterson.)
-module M where
-import Mod121_A(C(..))
-f = m2 (1::Int)
diff --git a/testsuite/tests/ghc-regress/module/mod121.stderr b/testsuite/tests/ghc-regress/module/mod121.stderr
deleted file mode 100644
index 7c2cf2cc9d..0000000000
--- a/testsuite/tests/ghc-regress/module/mod121.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-mod121.hs:5:5:
- Not in scope: `m2'
- Perhaps you meant `m1' (imported from Mod121_A)
diff --git a/testsuite/tests/ghc-regress/module/mod121.stderr-hugs b/testsuite/tests/ghc-regress/module/mod121.stderr-hugs
deleted file mode 100644
index 9e77b4cb9f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod121.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod121.hs":5 - Undefined variable "m2"
diff --git a/testsuite/tests/ghc-regress/module/mod122.hs b/testsuite/tests/ghc-regress/module/mod122.hs
deleted file mode 100644
index 84440d1668..0000000000
--- a/testsuite/tests/ghc-regress/module/mod122.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! exporting a method (but not its class)
-module M where
-import Mod122_A
-
-f :: C a => a -> a
-f = m1
diff --git a/testsuite/tests/ghc-regress/module/mod122.stderr b/testsuite/tests/ghc-regress/module/mod122.stderr
deleted file mode 100644
index b65f8e9964..0000000000
--- a/testsuite/tests/ghc-regress/module/mod122.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod122.hs:5:6: Not in scope: type constructor or class `C'
diff --git a/testsuite/tests/ghc-regress/module/mod122.stderr-hugs b/testsuite/tests/ghc-regress/module/mod122.stderr-hugs
deleted file mode 100644
index 569a2f50aa..0000000000
--- a/testsuite/tests/ghc-regress/module/mod122.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod122.hs":5 - Undefined class "C"
diff --git a/testsuite/tests/ghc-regress/module/mod123.hs b/testsuite/tests/ghc-regress/module/mod123.hs
deleted file mode 100644
index cdf7402115..0000000000
--- a/testsuite/tests/ghc-regress/module/mod123.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! exporting a field name (but not its type)
-module M where
-import Mod123_A
-
-f :: T -> Int
-f x = f1 x
diff --git a/testsuite/tests/ghc-regress/module/mod123.stderr b/testsuite/tests/ghc-regress/module/mod123.stderr
deleted file mode 100644
index 91f75483d3..0000000000
--- a/testsuite/tests/ghc-regress/module/mod123.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod123.hs:5:6: Not in scope: type constructor or class `T'
diff --git a/testsuite/tests/ghc-regress/module/mod123.stderr-hugs b/testsuite/tests/ghc-regress/module/mod123.stderr-hugs
deleted file mode 100644
index 41f158e73c..0000000000
--- a/testsuite/tests/ghc-regress/module/mod123.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod123.hs":5 - Undefined type constructor "T"
diff --git a/testsuite/tests/ghc-regress/module/mod124.hs b/testsuite/tests/ghc-regress/module/mod124.hs
deleted file mode 100644
index 3fd26f0fb9..0000000000
--- a/testsuite/tests/ghc-regress/module/mod124.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! hiding an entity T (where T is both a type and a dcon.)
-module M where
-
-import Mod124_A hiding (T)
-
-x :: T
-x = undefined
diff --git a/testsuite/tests/ghc-regress/module/mod124.stderr b/testsuite/tests/ghc-regress/module/mod124.stderr
deleted file mode 100644
index 22644aa07b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod124.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod124.hs:6:6: Not in scope: type constructor or class `T'
diff --git a/testsuite/tests/ghc-regress/module/mod124.stderr-hugs b/testsuite/tests/ghc-regress/module/mod124.stderr-hugs
deleted file mode 100644
index b6fd8cbb70..0000000000
--- a/testsuite/tests/ghc-regress/module/mod124.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod124.hs":6 - Undefined type constructor "T"
diff --git a/testsuite/tests/ghc-regress/module/mod125.hs b/testsuite/tests/ghc-regress/module/mod125.hs
deleted file mode 100644
index 1ee439ef2c..0000000000
--- a/testsuite/tests/ghc-regress/module/mod125.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! hiding an entity T (where T is both a type and a dcon.)
-module M where
-
-import Mod125_A hiding (T)
-
---x :: T
-x = T
diff --git a/testsuite/tests/ghc-regress/module/mod125.stderr b/testsuite/tests/ghc-regress/module/mod125.stderr
deleted file mode 100644
index b2f7fa4503..0000000000
--- a/testsuite/tests/ghc-regress/module/mod125.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod125.hs:7:5: Not in scope: data constructor `T'
diff --git a/testsuite/tests/ghc-regress/module/mod125.stderr-hugs b/testsuite/tests/ghc-regress/module/mod125.stderr-hugs
deleted file mode 100644
index e13bdb1cbc..0000000000
--- a/testsuite/tests/ghc-regress/module/mod125.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod125.hs":7 - Undefined data constructor "T"
diff --git a/testsuite/tests/ghc-regress/module/mod126.hs b/testsuite/tests/ghc-regress/module/mod126.hs
deleted file mode 100644
index b661d385c3..0000000000
--- a/testsuite/tests/ghc-regress/module/mod126.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! hiding an entity T (where T is both a class and a dcon.)
-module M where
-
-import Mod126_A hiding (T)
-
---x :: T
-x = T
diff --git a/testsuite/tests/ghc-regress/module/mod126.stderr b/testsuite/tests/ghc-regress/module/mod126.stderr
deleted file mode 100644
index 22243759ca..0000000000
--- a/testsuite/tests/ghc-regress/module/mod126.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod126.hs:7:5: Not in scope: data constructor `T'
diff --git a/testsuite/tests/ghc-regress/module/mod126.stderr-hugs b/testsuite/tests/ghc-regress/module/mod126.stderr-hugs
deleted file mode 100644
index e9ada3dac5..0000000000
--- a/testsuite/tests/ghc-regress/module/mod126.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod126.hs":7 - Undefined data constructor "T"
diff --git a/testsuite/tests/ghc-regress/module/mod127.hs b/testsuite/tests/ghc-regress/module/mod127.hs
deleted file mode 100644
index 4b869f79fd..0000000000
--- a/testsuite/tests/ghc-regress/module/mod127.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! hiding an entity T (where T is both a class and a dcon.)
-module M where
-
-import Mod127_A hiding (T)
-
-x :: T a => a -> a
-x = undefined
diff --git a/testsuite/tests/ghc-regress/module/mod127.stderr b/testsuite/tests/ghc-regress/module/mod127.stderr
deleted file mode 100644
index 5ffb1b71b6..0000000000
--- a/testsuite/tests/ghc-regress/module/mod127.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod127.hs:6:6: Not in scope: type constructor or class `T'
diff --git a/testsuite/tests/ghc-regress/module/mod127.stderr-hugs b/testsuite/tests/ghc-regress/module/mod127.stderr-hugs
deleted file mode 100644
index c2d17c3ee3..0000000000
--- a/testsuite/tests/ghc-regress/module/mod127.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod127.hs":6 - Undefined class "T"
diff --git a/testsuite/tests/ghc-regress/module/mod128.hs b/testsuite/tests/ghc-regress/module/mod128.hs
deleted file mode 100644
index 5d96e0f464..0000000000
--- a/testsuite/tests/ghc-regress/module/mod128.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Cumulative exportation
-module M where
-import Mod128_A(T(..))
-
-f = Con
diff --git a/testsuite/tests/ghc-regress/module/mod128.stderr-ghc b/testsuite/tests/ghc-regress/module/mod128.stderr-ghc
deleted file mode 100644
index 18c7864048..0000000000
--- a/testsuite/tests/ghc-regress/module/mod128.stderr-ghc
+++ /dev/null
@@ -1,2 +0,0 @@
-
-Mod128_A.hs:2:19: Warning: `T' is exported by `T(Con)' and `T'
diff --git a/testsuite/tests/ghc-regress/module/mod129.hs b/testsuite/tests/ghc-regress/module/mod129.hs
deleted file mode 100644
index 4229e9e88a..0000000000
--- a/testsuite/tests/ghc-regress/module/mod129.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! hiding class members (but not class.)
-module M where
-
-import Prelude hiding ( (<), (>))
-
-x :: Ord a => a -> a
-x = undefined
-
diff --git a/testsuite/tests/ghc-regress/module/mod13.hs b/testsuite/tests/ghc-regress/module/mod13.hs
deleted file mode 100644
index d7aeb7db94..0000000000
--- a/testsuite/tests/ghc-regress/module/mod13.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Omitted member from export list
-module M(C(m1,m3)) where
-class C a where
- m1 :: a
- m2, m3 :: a
diff --git a/testsuite/tests/ghc-regress/module/mod130.hs b/testsuite/tests/ghc-regress/module/mod130.hs
deleted file mode 100644
index 97dbacbfd2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod130.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! hiding class members.
-module M where
-
-import Prelude hiding ( (<), (>))
-
-x :: Int -> Int
-x = (<) 2
diff --git a/testsuite/tests/ghc-regress/module/mod130.stderr b/testsuite/tests/ghc-regress/module/mod130.stderr
deleted file mode 100644
index 27d3f8470e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod130.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod130.hs:7:5: Not in scope: `<'
diff --git a/testsuite/tests/ghc-regress/module/mod130.stderr-hugs b/testsuite/tests/ghc-regress/module/mod130.stderr-hugs
deleted file mode 100644
index fcaad49433..0000000000
--- a/testsuite/tests/ghc-regress/module/mod130.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod130.hs":7 - Undefined variable "<"
diff --git a/testsuite/tests/ghc-regress/module/mod131.hs b/testsuite/tests/ghc-regress/module/mod131.hs
deleted file mode 100644
index 64f7dd1eac..0000000000
--- a/testsuite/tests/ghc-regress/module/mod131.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! unqual name conflicts in export lists. Should fail
-module C ( Mod131_A.f, g, module Mod131_B ) where
-import Mod131_B(f)
-import qualified Mod131_A(f)
-g = f
diff --git a/testsuite/tests/ghc-regress/module/mod131.stderr b/testsuite/tests/ghc-regress/module/mod131.stderr
deleted file mode 100644
index 5dcc5efab8..0000000000
--- a/testsuite/tests/ghc-regress/module/mod131.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-mod131.hs:2:27:
- Conflicting exports for `f':
- `module Mod131_B' exports `f' imported from Mod131_B at mod131.hs:3:17
- (defined at Mod131_B.hs:3:1)
- `Mod131_A.f' exports `Mod131_A.f' imported from Mod131_A at mod131.hs:4:27
- (defined at Mod131_A.hs:3:1)
diff --git a/testsuite/tests/ghc-regress/module/mod131.stderr-hugs b/testsuite/tests/ghc-regress/module/mod131.stderr-hugs
deleted file mode 100644
index c27a6e428f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod131.stderr-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-ERROR "mod131.hs" - Conflicting exports of entity "f"
-*** Could refer to Mod131_A.f or Mod131_B.f
diff --git a/testsuite/tests/ghc-regress/module/mod132.hs b/testsuite/tests/ghc-regress/module/mod132.hs
deleted file mode 100644
index cecbb9d684..0000000000
--- a/testsuite/tests/ghc-regress/module/mod132.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! dcon hiding (in the presence of identically named tycon.)
--- (test contributed by Ross Paterson.)
-module M where
-import Mod132_B
-
-foo = Foo
diff --git a/testsuite/tests/ghc-regress/module/mod132.stderr b/testsuite/tests/ghc-regress/module/mod132.stderr
deleted file mode 100644
index 8dbf51014c..0000000000
--- a/testsuite/tests/ghc-regress/module/mod132.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod132.hs:6:7: Not in scope: data constructor `Foo'
diff --git a/testsuite/tests/ghc-regress/module/mod132.stderr-hugs b/testsuite/tests/ghc-regress/module/mod132.stderr-hugs
deleted file mode 100644
index 0bf2ce0a96..0000000000
--- a/testsuite/tests/ghc-regress/module/mod132.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod132.hs":6 - Undefined data constructor "Foo"
diff --git a/testsuite/tests/ghc-regress/module/mod133.hs b/testsuite/tests/ghc-regress/module/mod133.hs
deleted file mode 100644
index be05057ac9..0000000000
--- a/testsuite/tests/ghc-regress/module/mod133.hs
+++ /dev/null
@@ -1,17 +0,0 @@
--- Control.Monad.Error re-exports Control.Monad.Fix.
--- This test checks that the subordinate-name test
--- for a class operation (when renaming the instance decl)
--- works correctly.
-
-module ShouldCompile where
-
-import Control.Monad.Error
-
-data Foo a = Foo a
-
-instance Monad Foo where
- return a = Foo a
- (Foo a) >>= k = k a
-
-instance MonadFix Foo where
- mfix = undefined
diff --git a/testsuite/tests/ghc-regress/module/mod134.hs b/testsuite/tests/ghc-regress/module/mod134.hs
deleted file mode 100644
index aae30f55e0..0000000000
--- a/testsuite/tests/ghc-regress/module/mod134.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- Test that 'hiding' hides the qualified name too
-
-module Main where
-import Prelude hiding (head)
-
-main = do print (Prelude.head [0..])
- head
-
-head = print "head"
diff --git a/testsuite/tests/ghc-regress/module/mod134.stderr b/testsuite/tests/ghc-regress/module/mod134.stderr
deleted file mode 100644
index ed8382db63..0000000000
--- a/testsuite/tests/ghc-regress/module/mod134.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-mod134.hs:6:19:
- Not in scope: `Prelude.head'
- Perhaps you meant one of these:
- `Prelude.read' (imported from Prelude),
- `Prelude.reads' (imported from Prelude),
- `Prelude.snd' (imported from Prelude)
diff --git a/testsuite/tests/ghc-regress/module/mod134.stderr-hugs b/testsuite/tests/ghc-regress/module/mod134.stderr-hugs
deleted file mode 100644
index b39457eedc..0000000000
--- a/testsuite/tests/ghc-regress/module/mod134.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod134.hs":6 - Undefined qualified variable "Prelude.head"
diff --git a/testsuite/tests/ghc-regress/module/mod135.hs b/testsuite/tests/ghc-regress/module/mod135.hs
deleted file mode 100644
index 3905274fec..0000000000
--- a/testsuite/tests/ghc-regress/module/mod135.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! Re-exporting qualified import.
-module M (module Data.List) where
-
-import Data.List as Data.Char
-
-
diff --git a/testsuite/tests/ghc-regress/module/mod135.stderr b/testsuite/tests/ghc-regress/module/mod135.stderr
deleted file mode 100644
index a08f93cb67..0000000000
--- a/testsuite/tests/ghc-regress/module/mod135.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod135.hs:2:11: The export item `module Data.List' is not imported
diff --git a/testsuite/tests/ghc-regress/module/mod135.stderr-hugs b/testsuite/tests/ghc-regress/module/mod135.stderr-hugs
deleted file mode 100644
index 334aa7bdcf..0000000000
--- a/testsuite/tests/ghc-regress/module/mod135.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod135.hs" - Unknown module "List" exported from module "M"
diff --git a/testsuite/tests/ghc-regress/module/mod136.hs b/testsuite/tests/ghc-regress/module/mod136.hs
deleted file mode 100644
index 1729eea789..0000000000
--- a/testsuite/tests/ghc-regress/module/mod136.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! Re-exporting qualified module.
-module M where
-
-import Mod136_A
-
-x = zipWith5
-
diff --git a/testsuite/tests/ghc-regress/module/mod136.stderr b/testsuite/tests/ghc-regress/module/mod136.stderr
deleted file mode 100644
index 242d20b3de..0000000000
--- a/testsuite/tests/ghc-regress/module/mod136.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-mod136.hs:6:5:
- Not in scope: `zipWith5'
- Perhaps you meant one of these:
- `zipWith' (imported from Mod136_A),
- `zipWith3' (imported from Mod136_A)
diff --git a/testsuite/tests/ghc-regress/module/mod136.stderr-hugs b/testsuite/tests/ghc-regress/module/mod136.stderr-hugs
deleted file mode 100644
index 5333800eea..0000000000
--- a/testsuite/tests/ghc-regress/module/mod136.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod136.hs":6 - Undefined variable "zipWith5"
diff --git a/testsuite/tests/ghc-regress/module/mod137.hs b/testsuite/tests/ghc-regress/module/mod137.hs
deleted file mode 100644
index 0541e54509..0000000000
--- a/testsuite/tests/ghc-regress/module/mod137.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! Re-exporting alias which maps to multiple mods.
-module M where
-
-import Mod137_A
-
-x = zipWith5
-y = isLatin1
-
-
diff --git a/testsuite/tests/ghc-regress/module/mod138.hs b/testsuite/tests/ghc-regress/module/mod138.hs
deleted file mode 100644
index c10487d476..0000000000
--- a/testsuite/tests/ghc-regress/module/mod138.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! Re-exporting alias which maps to multiple mods; some qualified.
-module M where
-
-import Mod138_A
-
-x = zipWith5
-y = isLatin1
-
-
diff --git a/testsuite/tests/ghc-regress/module/mod138.stderr b/testsuite/tests/ghc-regress/module/mod138.stderr
deleted file mode 100644
index 2e8a5190d6..0000000000
--- a/testsuite/tests/ghc-regress/module/mod138.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod138.hs:7:5: Not in scope: `isLatin1'
diff --git a/testsuite/tests/ghc-regress/module/mod138.stderr-hugs b/testsuite/tests/ghc-regress/module/mod138.stderr-hugs
deleted file mode 100644
index 7d1daa0d36..0000000000
--- a/testsuite/tests/ghc-regress/module/mod138.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod138.hs":7 - Undefined variable "isLatin1"
diff --git a/testsuite/tests/ghc-regress/module/mod139.hs b/testsuite/tests/ghc-regress/module/mod139.hs
deleted file mode 100644
index ae91e2b8ca..0000000000
--- a/testsuite/tests/ghc-regress/module/mod139.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! re-exporting module alias, with hiding.
-module M where
-
-import Mod139_B
-
-z = Bar
-a = Mod139_B.x
-
-y = m1 (2::Int)
-
-
diff --git a/testsuite/tests/ghc-regress/module/mod14.hs b/testsuite/tests/ghc-regress/module/mod14.hs
deleted file mode 100644
index b88a4a6988..0000000000
--- a/testsuite/tests/ghc-regress/module/mod14.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Duplicate member in export list
-module M(C(m1,m2,m2,m3)) where
-class C a where
- m1 :: a
- m2, m3 :: a
diff --git a/testsuite/tests/ghc-regress/module/mod14.stderr-ghc b/testsuite/tests/ghc-regress/module/mod14.stderr-ghc
deleted file mode 100644
index be838c3886..0000000000
--- a/testsuite/tests/ghc-regress/module/mod14.stderr-ghc
+++ /dev/null
@@ -1,4 +0,0 @@
-
-mod14.hs:2:10:
- Warning: `m2' is exported by `C(m1, m2, m2, m3)' and `C(m1, m2, m2,
- m3)'
diff --git a/testsuite/tests/ghc-regress/module/mod140.hs b/testsuite/tests/ghc-regress/module/mod140.hs
deleted file mode 100644
index e40de96e39..0000000000
--- a/testsuite/tests/ghc-regress/module/mod140.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! hiding tycon _only_.
-module M where
-
-import Mod140_A
-
-a = Bar
diff --git a/testsuite/tests/ghc-regress/module/mod141.hs b/testsuite/tests/ghc-regress/module/mod141.hs
deleted file mode 100644
index f8a65e5a8c..0000000000
--- a/testsuite/tests/ghc-regress/module/mod141.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! re-exportation to override select entities.
-module M where
-
-import Mod141_A
-
-a :: String
-a = partition
diff --git a/testsuite/tests/ghc-regress/module/mod142.hs b/testsuite/tests/ghc-regress/module/mod142.hs
deleted file mode 100644
index 3be36f3fd2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod142.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! Conflicting re-exportation of var
-module M (module M, module Mod142_A) where
-
-import Mod142_A
-
-x = 'x'
diff --git a/testsuite/tests/ghc-regress/module/mod142.stderr b/testsuite/tests/ghc-regress/module/mod142.stderr
deleted file mode 100644
index c1c4023e1e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod142.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-mod142.hs:2:21:
- Conflicting exports for `x':
- `module Mod142_A' exports `Mod142_A.x' imported from Mod142_A at mod142.hs:4:1-15
- (defined at Mod142_A.hs:3:1)
- `module M' exports `M.x' defined at mod142.hs:6:1
diff --git a/testsuite/tests/ghc-regress/module/mod142.stderr-hugs b/testsuite/tests/ghc-regress/module/mod142.stderr-hugs
deleted file mode 100644
index 1cedd94837..0000000000
--- a/testsuite/tests/ghc-regress/module/mod142.stderr-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-ERROR "mod142.hs" - Conflicting exports of entity "x"
-*** Could refer to M.x or Mod142_A.x
diff --git a/testsuite/tests/ghc-regress/module/mod143.hs b/testsuite/tests/ghc-regress/module/mod143.hs
deleted file mode 100644
index 92c3d438d7..0000000000
--- a/testsuite/tests/ghc-regress/module/mod143.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! Conflicting re-exportation of tycon
-module M (module M, module Mod143_A) where
-
-import Mod143_A
-
-data Foo = Baz
-
diff --git a/testsuite/tests/ghc-regress/module/mod143.stderr b/testsuite/tests/ghc-regress/module/mod143.stderr
deleted file mode 100644
index e74bc238e1..0000000000
--- a/testsuite/tests/ghc-regress/module/mod143.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-mod143.hs:2:21:
- Conflicting exports for `Foo':
- `module Mod143_A' exports `Mod143_A.Foo' imported from Mod143_A at mod143.hs:4:1-15
- (defined at Mod143_A.hs:3:6)
- `module M' exports `M.Foo' defined at mod143.hs:6:6
diff --git a/testsuite/tests/ghc-regress/module/mod143.stderr-hugs b/testsuite/tests/ghc-regress/module/mod143.stderr-hugs
deleted file mode 100644
index c728b9c04d..0000000000
--- a/testsuite/tests/ghc-regress/module/mod143.stderr-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-ERROR "mod143.hs" - Conflicting exports of entity "Foo"
-*** Could refer to M.Foo or Mod143_A.Foo
diff --git a/testsuite/tests/ghc-regress/module/mod144.hs b/testsuite/tests/ghc-regress/module/mod144.hs
deleted file mode 100644
index d808f63f91..0000000000
--- a/testsuite/tests/ghc-regress/module/mod144.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! Conflicting re-exportation of dcon
-module M (module Mod144_A,module M) where
-
-import Mod144_A
-
-data Foo1 = Bar
-
diff --git a/testsuite/tests/ghc-regress/module/mod144.stderr b/testsuite/tests/ghc-regress/module/mod144.stderr
deleted file mode 100644
index e97acdc528..0000000000
--- a/testsuite/tests/ghc-regress/module/mod144.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-mod144.hs:2:27:
- Conflicting exports for `Bar':
- `module Mod144_A' exports `Mod144_A.Bar' imported from Mod144_A at mod144.hs:4:1-15
- `module M' exports `M.Bar' defined at mod144.hs:6:13
-exit(1)
diff --git a/testsuite/tests/ghc-regress/module/mod144.stderr-hugs b/testsuite/tests/ghc-regress/module/mod144.stderr-hugs
deleted file mode 100644
index 3b0c8240e1..0000000000
--- a/testsuite/tests/ghc-regress/module/mod144.stderr-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-ERROR "mod144.hs" - Conflicting exports of entity "Bar"
-*** Could refer to Mod143_A.Bar or M.Bar
diff --git a/testsuite/tests/ghc-regress/module/mod145.hs b/testsuite/tests/ghc-regress/module/mod145.hs
deleted file mode 100644
index 63c5b72a73..0000000000
--- a/testsuite/tests/ghc-regress/module/mod145.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! Conflicting re-exportation of class methods
-module Mod145(module Mod145, module Mod145_A) where
-
-import Mod145_A
-
-class C1 a where
- m1 :: a -> Int
-
-
diff --git a/testsuite/tests/ghc-regress/module/mod145.stderr b/testsuite/tests/ghc-regress/module/mod145.stderr
deleted file mode 100644
index 47cb0e61cb..0000000000
--- a/testsuite/tests/ghc-regress/module/mod145.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-mod145.hs:2:30:
- Conflicting exports for `m1':
- `module Mod145_A' exports `Mod145_A.m1' imported from Mod145_A at mod145.hs:4:1-15
- (defined at Mod145_A.hs:4:3)
- `module Mod145' exports `Mod145.m1' defined at mod145.hs:7:3
diff --git a/testsuite/tests/ghc-regress/module/mod145.stderr-hugs b/testsuite/tests/ghc-regress/module/mod145.stderr-hugs
deleted file mode 100644
index a00c9b605d..0000000000
--- a/testsuite/tests/ghc-regress/module/mod145.stderr-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-ERROR "mod145.hs" - Conflicting exports of entity "m1"
-*** Could refer to Mod145.m1 or Mod145_A.m1
diff --git a/testsuite/tests/ghc-regress/module/mod146.hs b/testsuite/tests/ghc-regress/module/mod146.hs
deleted file mode 100644
index b87f6d51cb..0000000000
--- a/testsuite/tests/ghc-regress/module/mod146.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! Conflicting re-exportation of class methods
-module Mod146(module Mod146, module Mod145_A) where
-
-import Mod145_A
-
-class C1 a where
- m1 :: a -> Int
-
diff --git a/testsuite/tests/ghc-regress/module/mod146.stderr b/testsuite/tests/ghc-regress/module/mod146.stderr
deleted file mode 100644
index d43f33feb3..0000000000
--- a/testsuite/tests/ghc-regress/module/mod146.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-mod146.hs:2:30:
- Conflicting exports for `m1':
- `module Mod145_A' exports `Mod145_A.m1' imported from Mod145_A at mod146.hs:4:1-15
- `module Mod146' exports `Mod146.m1' defined at mod146.hs:7:3
-exit(1)
diff --git a/testsuite/tests/ghc-regress/module/mod146.stderr-hugs b/testsuite/tests/ghc-regress/module/mod146.stderr-hugs
deleted file mode 100644
index ba17693f61..0000000000
--- a/testsuite/tests/ghc-regress/module/mod146.stderr-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-ERROR "mod146.hs" - Conflicting exports of entity "m1"
-*** Could refer to Mod146.m1 or Mod145_A.m1
diff --git a/testsuite/tests/ghc-regress/module/mod147.hs b/testsuite/tests/ghc-regress/module/mod147.hs
deleted file mode 100644
index 0743c4cb51..0000000000
--- a/testsuite/tests/ghc-regress/module/mod147.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! exporting tycon (but not dcon with same name.)
-module M where
-
-import Mod147_A
-
-x = D 4
diff --git a/testsuite/tests/ghc-regress/module/mod147.stderr b/testsuite/tests/ghc-regress/module/mod147.stderr
deleted file mode 100644
index b3bbf76612..0000000000
--- a/testsuite/tests/ghc-regress/module/mod147.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod147.hs:6:5: Not in scope: data constructor `D'
diff --git a/testsuite/tests/ghc-regress/module/mod147.stderr-hugs b/testsuite/tests/ghc-regress/module/mod147.stderr-hugs
deleted file mode 100644
index 4a469a194f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod147.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod147.hs":6 - Undefined data constructor "D"
diff --git a/testsuite/tests/ghc-regress/module/mod148.hs b/testsuite/tests/ghc-regress/module/mod148.hs
deleted file mode 100644
index 77ccfef6d1..0000000000
--- a/testsuite/tests/ghc-regress/module/mod148.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! re-exportation and ambiguity
--- should not fail as the absence of an export
--- list spec means "export all entities defined,
--- but none imported".
-module M where id x = [];
diff --git a/testsuite/tests/ghc-regress/module/mod149.hs b/testsuite/tests/ghc-regress/module/mod149.hs
deleted file mode 100644
index e8187e1ae3..0000000000
--- a/testsuite/tests/ghc-regress/module/mod149.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! re-exportation and ambiguity again.
--- Exporting M (=> id) is not ambiguous, as
--- Prelude isn't also exported.
-module M (module M) where id x = x;
diff --git a/testsuite/tests/ghc-regress/module/mod15.hs b/testsuite/tests/ghc-regress/module/mod15.hs
deleted file mode 100644
index c2de445c50..0000000000
--- a/testsuite/tests/ghc-regress/module/mod15.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Correct class export
-module M(C(..)) where
-class C a where
- m1 :: a
- m2, m3 :: a
diff --git a/testsuite/tests/ghc-regress/module/mod150.hs b/testsuite/tests/ghc-regress/module/mod150.hs
deleted file mode 100644
index 92bb4f1e67..0000000000
--- a/testsuite/tests/ghc-regress/module/mod150.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- !!! ambiguous re-exportation.
-module M (module M,module Prelude) where id x = x;
diff --git a/testsuite/tests/ghc-regress/module/mod150.stderr b/testsuite/tests/ghc-regress/module/mod150.stderr
deleted file mode 100644
index 7c5fca1eb4..0000000000
--- a/testsuite/tests/ghc-regress/module/mod150.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod150.hs:2:20:
- Conflicting exports for `id':
- `module M' exports `M.id' defined at mod150.hs:2:42
- `module Prelude' exports `Prelude.id' imported from Prelude
diff --git a/testsuite/tests/ghc-regress/module/mod150.stderr-hugs b/testsuite/tests/ghc-regress/module/mod150.stderr-hugs
deleted file mode 100644
index 8693c13d38..0000000000
--- a/testsuite/tests/ghc-regress/module/mod150.stderr-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-ERROR "mod150.hs" - Conflicting exports of entity "id"
-*** Could refer to M.id or Hugs.Prelude.id
diff --git a/testsuite/tests/ghc-regress/module/mod151.hs b/testsuite/tests/ghc-regress/module/mod151.hs
deleted file mode 100644
index 3bbeda508d..0000000000
--- a/testsuite/tests/ghc-regress/module/mod151.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- !!! ambiguous re-exportation.
-module M (module M,id) where id x = x;
diff --git a/testsuite/tests/ghc-regress/module/mod151.stderr b/testsuite/tests/ghc-regress/module/mod151.stderr
deleted file mode 100644
index edcea97e44..0000000000
--- a/testsuite/tests/ghc-regress/module/mod151.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod151.hs:2:20:
- Ambiguous occurrence `id'
- It could refer to either `M.id', defined at mod151.hs:2:30
- or `Prelude.id', imported from Prelude
diff --git a/testsuite/tests/ghc-regress/module/mod151.stderr-hugs b/testsuite/tests/ghc-regress/module/mod151.stderr-hugs
deleted file mode 100644
index 93e6333df0..0000000000
--- a/testsuite/tests/ghc-regress/module/mod151.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "mod151.hs" - Ambiguous export of entity "id"
-*** Could refer to: M.id Hugs.Prelude.id
-
diff --git a/testsuite/tests/ghc-regress/module/mod152.hs b/testsuite/tests/ghc-regress/module/mod152.hs
deleted file mode 100644
index 8f9911b1e5..0000000000
--- a/testsuite/tests/ghc-regress/module/mod152.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- !!! ambiguous re-exportation.
-module M (module Prelude,id) where id x = x;
diff --git a/testsuite/tests/ghc-regress/module/mod152.stderr b/testsuite/tests/ghc-regress/module/mod152.stderr
deleted file mode 100644
index 3d67ecbd62..0000000000
--- a/testsuite/tests/ghc-regress/module/mod152.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-mod152.hs:2:26:
- Ambiguous occurrence `id'
- It could refer to either `M.id', defined at mod152.hs:2:36
- or `Prelude.id', imported from Prelude
-
-mod152.hs:2:26:
- Conflicting exports for `id':
- `id' exports `M.id' defined at mod152.hs:2:36
- `module Prelude' exports `Prelude.id' imported from Prelude
diff --git a/testsuite/tests/ghc-regress/module/mod152.stderr-hugs b/testsuite/tests/ghc-regress/module/mod152.stderr-hugs
deleted file mode 100644
index c0fa28bb27..0000000000
--- a/testsuite/tests/ghc-regress/module/mod152.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "mod152.hs" - Ambiguous export of entity "id"
-*** Could refer to: M.id Hugs.Prelude.id
-
diff --git a/testsuite/tests/ghc-regress/module/mod153.hs b/testsuite/tests/ghc-regress/module/mod153.hs
deleted file mode 100644
index ee50c89bda..0000000000
--- a/testsuite/tests/ghc-regress/module/mod153.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- !!! ambiguous re-exportation.
-module M (id) where id x = x;
diff --git a/testsuite/tests/ghc-regress/module/mod153.stderr b/testsuite/tests/ghc-regress/module/mod153.stderr
deleted file mode 100644
index 5a35ceb51a..0000000000
--- a/testsuite/tests/ghc-regress/module/mod153.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod153.hs:2:11:
- Ambiguous occurrence `id'
- It could refer to either `M.id', defined at mod153.hs:2:21
- or `Prelude.id', imported from Prelude
diff --git a/testsuite/tests/ghc-regress/module/mod153.stderr-hugs b/testsuite/tests/ghc-regress/module/mod153.stderr-hugs
deleted file mode 100644
index 7d07f0b360..0000000000
--- a/testsuite/tests/ghc-regress/module/mod153.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "mod153.hs" - Ambiguous export of entity "id"
-*** Could refer to: M.id Hugs.Prelude.id
-
diff --git a/testsuite/tests/ghc-regress/module/mod154.hs b/testsuite/tests/ghc-regress/module/mod154.hs
deleted file mode 100644
index 6155b830f0..0000000000
--- a/testsuite/tests/ghc-regress/module/mod154.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! Default export list isn't the same as (module M)
--- This should succeed, exporting only the local 'sort',
--- and not being confused by the 'sort' from 'List'.
--- (Hugs gets this wrong)
-
-module M where
-
-import Data.List as M
-sort = "foo"
diff --git a/testsuite/tests/ghc-regress/module/mod155.hs b/testsuite/tests/ghc-regress/module/mod155.hs
deleted file mode 100644
index 4b94525439..0000000000
--- a/testsuite/tests/ghc-regress/module/mod155.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! ambiguous re-exportation.
-module M(module M) where
-
-import Prelude as M
-id x = x
diff --git a/testsuite/tests/ghc-regress/module/mod155.stderr b/testsuite/tests/ghc-regress/module/mod155.stderr
deleted file mode 100644
index a6a732c5b8..0000000000
--- a/testsuite/tests/ghc-regress/module/mod155.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod155.hs:2:10:
- Conflicting exports for `id':
- `module M' exports `M.id' imported from Prelude at mod155.hs:4:1-19
- `module M' exports `M.id' defined at mod155.hs:5:1
diff --git a/testsuite/tests/ghc-regress/module/mod155.stderr-hugs b/testsuite/tests/ghc-regress/module/mod155.stderr-hugs
deleted file mode 100644
index 0f6025a369..0000000000
--- a/testsuite/tests/ghc-regress/module/mod155.stderr-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-ERROR "mod155.hs" - Conflicting exports of entity "id"
-*** Could refer to Hugs.Prelude.id or M.id
diff --git a/testsuite/tests/ghc-regress/module/mod156.hs b/testsuite/tests/ghc-regress/module/mod156.hs
deleted file mode 100644
index 20c2884425..0000000000
--- a/testsuite/tests/ghc-regress/module/mod156.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- !!! non-ambiguous re-exportation.
-module M (module Prelude) where id x = x;
diff --git a/testsuite/tests/ghc-regress/module/mod157.hs b/testsuite/tests/ghc-regress/module/mod157.hs
deleted file mode 100644
index 582e1a708b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod157.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- !!! cumulative re-exportation of data constructors
-module M where
-
-import Mod157_D
-
--- Mod157_D re-exports the type T using (..). T is defined
--- in Mod157_A, but (only) two of its constructors are visible
--- in Mod157_D, one via Mod157_B, the other via Mod157_C.
-a = A
-b = B
-
-
-
diff --git a/testsuite/tests/ghc-regress/module/mod158.hs b/testsuite/tests/ghc-regress/module/mod158.hs
deleted file mode 100644
index 611ec04f03..0000000000
--- a/testsuite/tests/ghc-regress/module/mod158.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !!! cumulative re-exportation of data constructors, pt 2.
-module M where
-
-import Mod157_D
-
--- Mod157_D re-exports the type T using (..). T is defined
--- in Mod157_A, but (only) two of its constructors is visible
--- in Mod157_D, one via Mod157_B, the other via Mod157_C.
-a = A
-b = B
--- C is out of scope.
-c = C
-
-
diff --git a/testsuite/tests/ghc-regress/module/mod158.stderr b/testsuite/tests/ghc-regress/module/mod158.stderr
deleted file mode 100644
index 7f6c7d7e85..0000000000
--- a/testsuite/tests/ghc-regress/module/mod158.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-mod158.hs:12:5: Not in scope: data constructor `C'
-exit(1)
diff --git a/testsuite/tests/ghc-regress/module/mod158.stderr-hugs b/testsuite/tests/ghc-regress/module/mod158.stderr-hugs
deleted file mode 100644
index d08ca3aa14..0000000000
--- a/testsuite/tests/ghc-regress/module/mod158.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod158.hs":12 - Undefined data constructor "C"
diff --git a/testsuite/tests/ghc-regress/module/mod159.hs b/testsuite/tests/ghc-regress/module/mod159.hs
deleted file mode 100644
index f858d03f30..0000000000
--- a/testsuite/tests/ghc-regress/module/mod159.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! cumulative re-exportation of class methods
-module M where
-
-import Mod159_D
-
--- Mod159_D re-exports the class C using (..). C is defined
--- in Mod159_A, but (only) two of its methods are visible
--- in Mod159_D, one via Mod159_B, the other via Mod159_C.
-a = m1 'a'
-b = m2 'b'
diff --git a/testsuite/tests/ghc-regress/module/mod16.hs b/testsuite/tests/ghc-regress/module/mod16.hs
deleted file mode 100644
index 3b0e6d7bd9..0000000000
--- a/testsuite/tests/ghc-regress/module/mod16.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Correct abstract class export
-module M(C) where
-class C a where
- m1 :: a
- m2, m3 :: a
diff --git a/testsuite/tests/ghc-regress/module/mod160.hs b/testsuite/tests/ghc-regress/module/mod160.hs
deleted file mode 100644
index a279471c11..0000000000
--- a/testsuite/tests/ghc-regress/module/mod160.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! cumulative re-exportation of class methods, pt 2.
-module M where
-
-import Mod159_D
-
--- Mod159_D re-exports the class C using (..). C is defined
--- in Mod159_A, but (only) two of its methods are visible
--- in Mod159_D, one via Mod159_B, the other via Mod159_C.
-a = m1 'a'
-b = m2 'b'
--- m3 isn't in scope
-c = m3 'c'
diff --git a/testsuite/tests/ghc-regress/module/mod160.stderr b/testsuite/tests/ghc-regress/module/mod160.stderr
deleted file mode 100644
index c2dbd5647a..0000000000
--- a/testsuite/tests/ghc-regress/module/mod160.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-mod160.hs:12:5:
- Not in scope: `m3'
- Perhaps you meant one of these:
- `m1' (imported from Mod159_D), `m2' (imported from Mod159_D)
-exit(1)
diff --git a/testsuite/tests/ghc-regress/module/mod160.stderr-hugs b/testsuite/tests/ghc-regress/module/mod160.stderr-hugs
deleted file mode 100644
index 5157fb6630..0000000000
--- a/testsuite/tests/ghc-regress/module/mod160.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod160.hs":12 - Undefined variable "m3"
diff --git a/testsuite/tests/ghc-regress/module/mod161.hs b/testsuite/tests/ghc-regress/module/mod161.hs
deleted file mode 100644
index 8e900ad72b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod161.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Testing export of unknown name
-module Bar(bar) where
-foo = foo \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/module/mod161.stderr b/testsuite/tests/ghc-regress/module/mod161.stderr
deleted file mode 100644
index 1272093eaa..0000000000
--- a/testsuite/tests/ghc-regress/module/mod161.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod161.hs:2:12: Not in scope: `bar'
diff --git a/testsuite/tests/ghc-regress/module/mod161.stderr-hugs b/testsuite/tests/ghc-regress/module/mod161.stderr-hugs
deleted file mode 100644
index 0ea61db9c1..0000000000
--- a/testsuite/tests/ghc-regress/module/mod161.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod161.hs" - Unknown entity "bar" exported from module "Bar"
diff --git a/testsuite/tests/ghc-regress/module/mod162.hs b/testsuite/tests/ghc-regress/module/mod162.hs
deleted file mode 100644
index 8164ac5354..0000000000
--- a/testsuite/tests/ghc-regress/module/mod162.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! hiding a type (but not dcon of same name)
-module M where
-
-import Mod162_A hiding (T())
-
-x = T
diff --git a/testsuite/tests/ghc-regress/module/mod163.hs b/testsuite/tests/ghc-regress/module/mod163.hs
deleted file mode 100644
index f095e1af0c..0000000000
--- a/testsuite/tests/ghc-regress/module/mod163.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! lazy name conflict reporting for field labels/selectors.
-module M where
-
-import Mod163_A
-
-data T = MkT { f :: Int }
diff --git a/testsuite/tests/ghc-regress/module/mod164.hs b/testsuite/tests/ghc-regress/module/mod164.hs
deleted file mode 100644
index f472bfdddc..0000000000
--- a/testsuite/tests/ghc-regress/module/mod164.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! lazy name conflict reporting for data constructors
-module M where
-
-import Mod164_A
-import Mod164_B
-
-f x =
- case x of
- D1 -> 'a'
-
diff --git a/testsuite/tests/ghc-regress/module/mod164.stderr b/testsuite/tests/ghc-regress/module/mod164.stderr
deleted file mode 100644
index 7a014187ac..0000000000
--- a/testsuite/tests/ghc-regress/module/mod164.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-mod164.hs:9:5:
- Ambiguous occurrence `D1'
- It could refer to either `Mod164_A.D1', imported from Mod164_A at mod164.hs:4:1-15
- (defined at Mod164_A.hs:3:10)
- or `Mod164_B.D1', imported from Mod164_B at mod164.hs:5:1-15
- (defined at Mod164_B.hs:3:10)
diff --git a/testsuite/tests/ghc-regress/module/mod164.stderr-hugs b/testsuite/tests/ghc-regress/module/mod164.stderr-hugs
deleted file mode 100644
index d219a28f02..0000000000
--- a/testsuite/tests/ghc-regress/module/mod164.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "mod164.hs":7 - Ambiguous data constructor occurrence "D1"
-*** Could refer to: Mod164_B.D1 Mod164_A.D1
-
diff --git a/testsuite/tests/ghc-regress/module/mod165.hs b/testsuite/tests/ghc-regress/module/mod165.hs
deleted file mode 100644
index 847280ffaf..0000000000
--- a/testsuite/tests/ghc-regress/module/mod165.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! lazy name conflict reporting for data constructors (pt.2)
-module M where
-
-import Mod164_A as A
-import Mod164_B as A
-
-f x =
- case x of
- A.D1 -> 'a'
-
diff --git a/testsuite/tests/ghc-regress/module/mod165.stderr b/testsuite/tests/ghc-regress/module/mod165.stderr
deleted file mode 100644
index 8a813594a9..0000000000
--- a/testsuite/tests/ghc-regress/module/mod165.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-mod165.hs:9:5:
- Ambiguous occurrence `A.D1'
- It could refer to either `A.D1',
- imported from Mod164_A at mod165.hs:4:1-20
- or `A.D1', imported from Mod164_B at mod165.hs:5:1-20
-exit(1)
diff --git a/testsuite/tests/ghc-regress/module/mod165.stderr-hugs b/testsuite/tests/ghc-regress/module/mod165.stderr-hugs
deleted file mode 100644
index c545d2501f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod165.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "mod165.hs":7 - Ambiguous qualified data constructor occurrence "A.D1"
-*** Could refer to: Mod164_B.D1 Mod164_A.D1
-
diff --git a/testsuite/tests/ghc-regress/module/mod166.hs b/testsuite/tests/ghc-regress/module/mod166.hs
deleted file mode 100644
index 86e32cd489..0000000000
--- a/testsuite/tests/ghc-regress/module/mod166.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! lazy name conflict reporting for data constructors (pt.3)
-module M where
-
-import Mod164_A as A
-import Mod164_B
-
-f x =
- case x of
- A.D1 -> 'a'
-
diff --git a/testsuite/tests/ghc-regress/module/mod167.hs b/testsuite/tests/ghc-regress/module/mod167.hs
deleted file mode 100644
index 520d5b1383..0000000000
--- a/testsuite/tests/ghc-regress/module/mod167.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! qualified + hiding type constructors (or classes)
-module M where
-
-import qualified Mod164_A hiding (T)
-
-data T = D1 | D3
-
-f = D1
-g = Mod164_A.D1
diff --git a/testsuite/tests/ghc-regress/module/mod168.hs b/testsuite/tests/ghc-regress/module/mod168.hs
deleted file mode 100644
index 1c0deaa579..0000000000
--- a/testsuite/tests/ghc-regress/module/mod168.hs
+++ /dev/null
@@ -1,20 +0,0 @@
--- !!! hiding Prelude method names
--- (based on bug report by Iavor Diatchi:
--- http://haskell.org/pipermail/hugs-bugs/2003-October/001369.html
--- )
-module M where
-
-import Prelude hiding ( negate, enumFrom,
- enumFromThen, enumFromTo,
- enumFromThenTo )
-import Data.Ix hiding ( rangeSize )
-negate = undefined
-enumFrom = undefined
-enumFromThen = undefined
-enumFromTo = undefined
-enumFromThenTo = undefined
-rangeSize = undefined
-
-x = [negate,enumFrom, enumFromThen, enumFromTo, enumFromThenTo, rangeSize]
-
-
diff --git a/testsuite/tests/ghc-regress/module/mod169.hs b/testsuite/tests/ghc-regress/module/mod169.hs
deleted file mode 100644
index 521da07a39..0000000000
--- a/testsuite/tests/ghc-regress/module/mod169.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Non-clashing local binding and occurrence.
-module M where
-
-m :: Int
-m = let length _ = 5 in length []
diff --git a/testsuite/tests/ghc-regress/module/mod17.hs b/testsuite/tests/ghc-regress/module/mod17.hs
deleted file mode 100644
index c3f219edde..0000000000
--- a/testsuite/tests/ghc-regress/module/mod17.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Testing non-member function in explicit class export list
-module M(C(m1,m2,m3,Left)) where
-class C a where
- m1 :: a
- m2, m3 :: a
diff --git a/testsuite/tests/ghc-regress/module/mod17.stderr b/testsuite/tests/ghc-regress/module/mod17.stderr
deleted file mode 100644
index 1192637967..0000000000
--- a/testsuite/tests/ghc-regress/module/mod17.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-mod17.hs:2:10:
- The export item `C(m1, m2, m3, Left)'
- attempts to export constructors or class methods that are not visible here
diff --git a/testsuite/tests/ghc-regress/module/mod17.stderr-hugs b/testsuite/tests/ghc-regress/module/mod17.stderr-hugs
deleted file mode 100644
index 74ee84bb82..0000000000
--- a/testsuite/tests/ghc-regress/module/mod17.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod17.hs" - Entity "Left" is not a member of class "C"
diff --git a/testsuite/tests/ghc-regress/module/mod170.hs b/testsuite/tests/ghc-regress/module/mod170.hs
deleted file mode 100644
index 2a53820645..0000000000
--- a/testsuite/tests/ghc-regress/module/mod170.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !! Lone import of field label
--- (contributed/reported by Ross Paterson.)
-module M where
-
-import Mod170_A(field)
-
-x = field
diff --git a/testsuite/tests/ghc-regress/module/mod171.hs b/testsuite/tests/ghc-regress/module/mod171.hs
deleted file mode 100644
index a61e886784..0000000000
--- a/testsuite/tests/ghc-regress/module/mod171.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !! Test import-unused warnings on 'module M' exports
--- This one should not generate any warnings
-
-module M (module Mod171_A, h) where
-
-import Mod171_A -- This isn't unused...
-import Mod171_B -- even though this imports all the same stuff
-
-h :: Int -> Int
-h = g
-
diff --git a/testsuite/tests/ghc-regress/module/mod172.hs b/testsuite/tests/ghc-regress/module/mod172.hs
deleted file mode 100644
index 20af846d72..0000000000
--- a/testsuite/tests/ghc-regress/module/mod172.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- Hugs failed this test Jan06
-
-module Mod172 where
-
-import Mod172_B (f,g)
diff --git a/testsuite/tests/ghc-regress/module/mod173.hs b/testsuite/tests/ghc-regress/module/mod173.hs
deleted file mode 100644
index a7e185bcf6..0000000000
--- a/testsuite/tests/ghc-regress/module/mod173.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module ShouldCompile where
-
-import Mod173_Aux
-
-t1 = partition -- From the import
-
-nub = True
-t2 = nub -- Unambiguous; nub should not have been exported
-
-t3 = frob
-
-
diff --git a/testsuite/tests/ghc-regress/module/mod174.hs b/testsuite/tests/ghc-regress/module/mod174.hs
deleted file mode 100644
index 8e8149db7a..0000000000
--- a/testsuite/tests/ghc-regress/module/mod174.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
--- Test for trac #414
--- If main is not exported from Main then we should emit an error
--- instead of running it anyway
-
-module Main () where
-
-main = putStrLn "Hello, World"
-
diff --git a/testsuite/tests/ghc-regress/module/mod174.stderr b/testsuite/tests/ghc-regress/module/mod174.stderr
deleted file mode 100644
index 6ef2e753d0..0000000000
--- a/testsuite/tests/ghc-regress/module/mod174.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-mod174.hs:1:1:
- The main function `main' is not exported by module `Main'
diff --git a/testsuite/tests/ghc-regress/module/mod175/Makefile b/testsuite/tests/ghc-regress/module/mod175/Makefile
deleted file mode 100644
index 7bba7d2026..0000000000
--- a/testsuite/tests/ghc-regress/module/mod175/Makefile
+++ /dev/null
@@ -1,19 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-clean:
- rm -f *.o
- rm -f *.hi
- rm -f test test2
-
-# Test for trac bug #437 (Test2 needs to be recompiled in the second GHC
-# invocation as the main-is flag now applies to it).
-
-mod175:
- $(MAKE) clean
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make -main-is Test.main Test.hs -o test
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make -main-is Test2.main Test2.hs -o test2
- ./test
- ./test2
-
diff --git a/testsuite/tests/ghc-regress/module/mod175/Test.hs b/testsuite/tests/ghc-regress/module/mod175/Test.hs
deleted file mode 100644
index bc280d86a6..0000000000
--- a/testsuite/tests/ghc-regress/module/mod175/Test.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-module Test where
-
-import Test2 hiding (main)
-
-main = doit
-
diff --git a/testsuite/tests/ghc-regress/module/mod175/Test2.hs b/testsuite/tests/ghc-regress/module/mod175/Test2.hs
deleted file mode 100644
index 08d75ddf6e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod175/Test2.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module Test2 where
-
-doit = putStrLn "You have run Test2.doit"
-main = putStrLn "You have run Test2.main"
-
diff --git a/testsuite/tests/ghc-regress/module/mod175/all.T b/testsuite/tests/ghc-regress/module/mod175/all.T
deleted file mode 100644
index 8edbf0ae0f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod175/all.T
+++ /dev/null
@@ -1,8 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-test('mod175',
- [expect_broken(437),
- clean_cmd('$MAKE -s clean')],
- run_command,
- ['$MAKE -s mod175'])
-
diff --git a/testsuite/tests/ghc-regress/module/mod175/mod175.stdout b/testsuite/tests/ghc-regress/module/mod175/mod175.stdout
deleted file mode 100644
index a69871173d..0000000000
--- a/testsuite/tests/ghc-regress/module/mod175/mod175.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-You have run Test2.doit
-You have run Test2.main
diff --git a/testsuite/tests/ghc-regress/module/mod176.hs b/testsuite/tests/ghc-regress/module/mod176.hs
deleted file mode 100644
index 250711345c..0000000000
--- a/testsuite/tests/ghc-regress/module/mod176.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module ShouldCompile where
-
-import Prelude ()
-import Control.Monad( Monad(return), mapM )
- -- Should report Monad and return as unused imports
-import GHC.Base
- -- But not their import from here
-
-x = True
-y x = mapM
diff --git a/testsuite/tests/ghc-regress/module/mod176.stderr b/testsuite/tests/ghc-regress/module/mod176.stderr
deleted file mode 100644
index 7301324a91..0000000000
--- a/testsuite/tests/ghc-regress/module/mod176.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-mod176.hs:4:1:
- Warning: The import of `return, Monad'
- from module `Control.Monad' is redundant
diff --git a/testsuite/tests/ghc-regress/module/mod177.hs b/testsuite/tests/ghc-regress/module/mod177.hs
deleted file mode 100644
index 23fdd73b45..0000000000
--- a/testsuite/tests/ghc-regress/module/mod177.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module ShouldCompile where
-
-import Prelude ()
-import Data.Maybe( Maybe(..) )
-import Data.Maybe
-
-f x = Just x
diff --git a/testsuite/tests/ghc-regress/module/mod177.stderr b/testsuite/tests/ghc-regress/module/mod177.stderr
deleted file mode 100644
index 1dc7c5c6ae..0000000000
--- a/testsuite/tests/ghc-regress/module/mod177.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod177.hs:4:1:
- Warning: The import of `Data.Maybe' is redundant
- except perhaps to import instances from `Data.Maybe'
- To import instances alone, use: import Data.Maybe()
diff --git a/testsuite/tests/ghc-regress/module/mod178.hs b/testsuite/tests/ghc-regress/module/mod178.hs
deleted file mode 100644
index 00ec81d369..0000000000
--- a/testsuite/tests/ghc-regress/module/mod178.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-module Main where
-
-import Mod178_2
-
-main :: IO ()
-main = print foo
-
diff --git a/testsuite/tests/ghc-regress/module/mod178.stderr b/testsuite/tests/ghc-regress/module/mod178.stderr
deleted file mode 100644
index 3edd9a4066..0000000000
--- a/testsuite/tests/ghc-regress/module/mod178.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-Mod178_2.hs:1:1:
- File name does not match module name:
- Saw: `Main'
- Expected: `Mod178_2'
diff --git a/testsuite/tests/ghc-regress/module/mod179.hs b/testsuite/tests/ghc-regress/module/mod179.hs
deleted file mode 100644
index 3ff71a07a4..0000000000
--- a/testsuite/tests/ghc-regress/module/mod179.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module Main(main) where
-import qualified Mod179_A hiding ()
-main = print Mod179_A.x
-
diff --git a/testsuite/tests/ghc-regress/module/mod179.stdout b/testsuite/tests/ghc-regress/module/mod179.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/module/mod179.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/module/mod18.hs b/testsuite/tests/ghc-regress/module/mod18.hs
deleted file mode 100644
index cfbcdbf62a..0000000000
--- a/testsuite/tests/ghc-regress/module/mod18.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Testing duplicate type synonyms
-type T = Int
-type T = Float
diff --git a/testsuite/tests/ghc-regress/module/mod18.stderr b/testsuite/tests/ghc-regress/module/mod18.stderr
deleted file mode 100644
index 2b9a800bc6..0000000000
--- a/testsuite/tests/ghc-regress/module/mod18.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod18.hs:3:6:
- Multiple declarations of `Main.T'
- Declared at: mod18.hs:2:6
- mod18.hs:3:6
diff --git a/testsuite/tests/ghc-regress/module/mod18.stderr-hugs b/testsuite/tests/ghc-regress/module/mod18.stderr-hugs
deleted file mode 100644
index 50fff9d5e2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod18.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod18.hs":3 - Multiple declarations of type constructor "T"
diff --git a/testsuite/tests/ghc-regress/module/mod180.hs b/testsuite/tests/ghc-regress/module/mod180.hs
deleted file mode 100644
index 68e043bc50..0000000000
--- a/testsuite/tests/ghc-regress/module/mod180.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-module ShouldFail where
-
-import qualified Mod180_B as Mod180_A
-import Mod180_B (T)
-import Mod180_A (x)
-
-z :: T
-z = x
- -- fiendishly, this error message must mention Mod180_A.T (the type
- -- of x), but in the current scope, Mod180_A.T means something different:
- -- due to the 'import .. as' above, Mod180_A.T actually refers to Mod180_B.T.
- -- GHC should notice this and use a fully qualified name "main:Mod180_A.T"
- -- in the error message.
diff --git a/testsuite/tests/ghc-regress/module/mod180.stderr b/testsuite/tests/ghc-regress/module/mod180.stderr
deleted file mode 100644
index 2790d92a33..0000000000
--- a/testsuite/tests/ghc-regress/module/mod180.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod180.hs:8:5:
- Couldn't match expected type `T' with actual type `main:Mod180_A.T'
- In the expression: x
- In an equation for `z': z = x
diff --git a/testsuite/tests/ghc-regress/module/mod19.hs b/testsuite/tests/ghc-regress/module/mod19.hs
deleted file mode 100644
index 9f8b49f2b2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod19.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Testing duplicate classes
-class C a where m :: a
-class C a where m :: a
diff --git a/testsuite/tests/ghc-regress/module/mod19.stderr b/testsuite/tests/ghc-regress/module/mod19.stderr
deleted file mode 100644
index a988040291..0000000000
--- a/testsuite/tests/ghc-regress/module/mod19.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-mod19.hs:3:7:
- Multiple declarations of `Main.C'
- Declared at: mod19.hs:2:7
- mod19.hs:3:7
-
-mod19.hs:3:17:
- Multiple declarations of `Main.m'
- Declared at: mod19.hs:2:17
- mod19.hs:3:17
diff --git a/testsuite/tests/ghc-regress/module/mod19.stderr-hugs b/testsuite/tests/ghc-regress/module/mod19.stderr-hugs
deleted file mode 100644
index c38263918b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod19.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod19.hs":3 - Multiple declarations of class "C"
diff --git a/testsuite/tests/ghc-regress/module/mod2.hs b/testsuite/tests/ghc-regress/module/mod2.hs
deleted file mode 100644
index d0821071b6..0000000000
--- a/testsuite/tests/ghc-regress/module/mod2.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Qualified import of unknown module
-module M where
-import qualified N
diff --git a/testsuite/tests/ghc-regress/module/mod2.stderr b/testsuite/tests/ghc-regress/module/mod2.stderr
deleted file mode 100644
index e928ab3b19..0000000000
--- a/testsuite/tests/ghc-regress/module/mod2.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-mod2.hs:3:1:
- Failed to load interface for `N'
- Use -v to see a list of the files searched for.
diff --git a/testsuite/tests/ghc-regress/module/mod2.stderr-hugs b/testsuite/tests/ghc-regress/module/mod2.stderr-hugs
deleted file mode 100644
index ee12e8e265..0000000000
--- a/testsuite/tests/ghc-regress/module/mod2.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod2.hs" - Can't find imported module "N"
diff --git a/testsuite/tests/ghc-regress/module/mod20.hs b/testsuite/tests/ghc-regress/module/mod20.hs
deleted file mode 100644
index 68d6ede9d0..0000000000
--- a/testsuite/tests/ghc-regress/module/mod20.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Testing duplicate members
-class C1 a where m :: a
-class C2 a where m :: a \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/module/mod20.stderr b/testsuite/tests/ghc-regress/module/mod20.stderr
deleted file mode 100644
index 355fe1c038..0000000000
--- a/testsuite/tests/ghc-regress/module/mod20.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod20.hs:3:18:
- Multiple declarations of `Main.m'
- Declared at: mod20.hs:2:18
- mod20.hs:3:18
diff --git a/testsuite/tests/ghc-regress/module/mod20.stderr-hugs b/testsuite/tests/ghc-regress/module/mod20.stderr-hugs
deleted file mode 100644
index c8951af078..0000000000
--- a/testsuite/tests/ghc-regress/module/mod20.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod20.hs":2 - Multiple declarations for member function "m"
diff --git a/testsuite/tests/ghc-regress/module/mod21.hs b/testsuite/tests/ghc-regress/module/mod21.hs
deleted file mode 100644
index 7d24286464..0000000000
--- a/testsuite/tests/ghc-regress/module/mod21.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Testing duplicate type constructors
-data T = K1
-data T = K2
diff --git a/testsuite/tests/ghc-regress/module/mod21.stderr b/testsuite/tests/ghc-regress/module/mod21.stderr
deleted file mode 100644
index 4a6a8edec7..0000000000
--- a/testsuite/tests/ghc-regress/module/mod21.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod21.hs:3:6:
- Multiple declarations of `Main.T'
- Declared at: mod21.hs:2:6
- mod21.hs:3:6
diff --git a/testsuite/tests/ghc-regress/module/mod21.stderr-hugs b/testsuite/tests/ghc-regress/module/mod21.stderr-hugs
deleted file mode 100644
index bdf6f93413..0000000000
--- a/testsuite/tests/ghc-regress/module/mod21.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod21.hs":3 - Multiple declarations of type constructor "T"
diff --git a/testsuite/tests/ghc-regress/module/mod22.hs b/testsuite/tests/ghc-regress/module/mod22.hs
deleted file mode 100644
index 69cc870720..0000000000
--- a/testsuite/tests/ghc-regress/module/mod22.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Testing duplicate data constructors
-data T1 = K
-data T2 = K
diff --git a/testsuite/tests/ghc-regress/module/mod22.stderr b/testsuite/tests/ghc-regress/module/mod22.stderr
deleted file mode 100644
index 9cf3f768d2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod22.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod22.hs:3:11:
- Multiple declarations of `Main.K'
- Declared at: mod22.hs:2:11
- mod22.hs:3:11
diff --git a/testsuite/tests/ghc-regress/module/mod22.stderr-hugs b/testsuite/tests/ghc-regress/module/mod22.stderr-hugs
deleted file mode 100644
index 734348f1cb..0000000000
--- a/testsuite/tests/ghc-regress/module/mod22.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod22.hs":2 - Multiple declarations for data constructor "K"
diff --git a/testsuite/tests/ghc-regress/module/mod23.hs b/testsuite/tests/ghc-regress/module/mod23.hs
deleted file mode 100644
index 84753b4189..0000000000
--- a/testsuite/tests/ghc-regress/module/mod23.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
--- !!! Testing duplicate type variables
-type T a a = Either a a
diff --git a/testsuite/tests/ghc-regress/module/mod23.stderr b/testsuite/tests/ghc-regress/module/mod23.stderr
deleted file mode 100644
index 3085cfff37..0000000000
--- a/testsuite/tests/ghc-regress/module/mod23.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod23.hs:3:8:
- Conflicting definitions for `a'
- Bound at: mod23.hs:3:8
- mod23.hs:3:10
diff --git a/testsuite/tests/ghc-regress/module/mod23.stderr-hugs b/testsuite/tests/ghc-regress/module/mod23.stderr-hugs
deleted file mode 100644
index 71f47b8e3c..0000000000
--- a/testsuite/tests/ghc-regress/module/mod23.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod23.hs":3 - Repeated type variable "a" on left hand side
diff --git a/testsuite/tests/ghc-regress/module/mod24.hs b/testsuite/tests/ghc-regress/module/mod24.hs
deleted file mode 100644
index 6e1654b4f9..0000000000
--- a/testsuite/tests/ghc-regress/module/mod24.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
--- !!! Testing duplicate type variables
-data T a a = K a a
diff --git a/testsuite/tests/ghc-regress/module/mod24.stderr b/testsuite/tests/ghc-regress/module/mod24.stderr
deleted file mode 100644
index 12ed89e59a..0000000000
--- a/testsuite/tests/ghc-regress/module/mod24.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod24.hs:3:8:
- Conflicting definitions for `a'
- Bound at: mod24.hs:3:8
- mod24.hs:3:10
diff --git a/testsuite/tests/ghc-regress/module/mod24.stderr-hugs b/testsuite/tests/ghc-regress/module/mod24.stderr-hugs
deleted file mode 100644
index 60ffcc5f90..0000000000
--- a/testsuite/tests/ghc-regress/module/mod24.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod24.hs":3 - Repeated type variable "a" on left hand side
diff --git a/testsuite/tests/ghc-regress/module/mod25.hs b/testsuite/tests/ghc-regress/module/mod25.hs
deleted file mode 100644
index e1f5087379..0000000000
--- a/testsuite/tests/ghc-regress/module/mod25.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
--- !!! Testing bogus (or existential) type variables
-data T a = K a b
diff --git a/testsuite/tests/ghc-regress/module/mod25.stderr b/testsuite/tests/ghc-regress/module/mod25.stderr
deleted file mode 100644
index 49a15454aa..0000000000
--- a/testsuite/tests/ghc-regress/module/mod25.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod25.hs:3:16: Not in scope: type variable `b'
diff --git a/testsuite/tests/ghc-regress/module/mod25.stderr-hugs b/testsuite/tests/ghc-regress/module/mod25.stderr-hugs
deleted file mode 100644
index e5fa83448b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod25.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod25.hs":3 - Undefined type variable "b"
diff --git a/testsuite/tests/ghc-regress/module/mod26.hs b/testsuite/tests/ghc-regress/module/mod26.hs
deleted file mode 100644
index d58b1de1d0..0000000000
--- a/testsuite/tests/ghc-regress/module/mod26.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
--- !!! Testing bogus (or existential) type variables
-type T a = Either a b
diff --git a/testsuite/tests/ghc-regress/module/mod26.stderr b/testsuite/tests/ghc-regress/module/mod26.stderr
deleted file mode 100644
index 914f879d61..0000000000
--- a/testsuite/tests/ghc-regress/module/mod26.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod26.hs:3:21: Not in scope: type variable `b'
diff --git a/testsuite/tests/ghc-regress/module/mod26.stderr-hugs b/testsuite/tests/ghc-regress/module/mod26.stderr-hugs
deleted file mode 100644
index 2f279dfcdc..0000000000
--- a/testsuite/tests/ghc-regress/module/mod26.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod26.hs":3 - Undefined type variable "b"
diff --git a/testsuite/tests/ghc-regress/module/mod27.hs b/testsuite/tests/ghc-regress/module/mod27.hs
deleted file mode 100644
index 394fa2341d..0000000000
--- a/testsuite/tests/ghc-regress/module/mod27.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldFail where
--- !!! Testing recursive type synonyms
-type T1 = (Int,T2)
-type T2 = (Int,T1)
diff --git a/testsuite/tests/ghc-regress/module/mod27.stderr b/testsuite/tests/ghc-regress/module/mod27.stderr
deleted file mode 100644
index 85848345d5..0000000000
--- a/testsuite/tests/ghc-regress/module/mod27.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod27.hs:3:1:
- Cycle in type synonym declarations:
- mod27.hs:3:1-18: type T1 = (Int, T2)
- mod27.hs:4:1-18: type T2 = (Int, T1)
diff --git a/testsuite/tests/ghc-regress/module/mod27.stderr-hugs b/testsuite/tests/ghc-regress/module/mod27.stderr-hugs
deleted file mode 100644
index 0590e990da..0000000000
--- a/testsuite/tests/ghc-regress/module/mod27.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod27.hs":3 - Type synonyms "T1" and "T2" are mutually recursive
diff --git a/testsuite/tests/ghc-regress/module/mod29.hs b/testsuite/tests/ghc-regress/module/mod29.hs
deleted file mode 100644
index cce8eb5f5b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod29.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! Testing for out of scope Prelude types.
--- was: Imported tycon clashes with local definition
--- (but that's OK, as long as the type isn't _used_.)
-module M where
-import Prelude(Int)
-type Int = Char
diff --git a/testsuite/tests/ghc-regress/module/mod29.stderr b/testsuite/tests/ghc-regress/module/mod29.stderr
deleted file mode 100644
index ba62a734f0..0000000000
--- a/testsuite/tests/ghc-regress/module/mod29.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod29.hs:6:12: Not in scope: type constructor or class `Char'
diff --git a/testsuite/tests/ghc-regress/module/mod29.stderr-hugs b/testsuite/tests/ghc-regress/module/mod29.stderr-hugs
deleted file mode 100644
index ce2a23bf0f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod29.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod29.hs":6 - Undefined type constructor "Char"
diff --git a/testsuite/tests/ghc-regress/module/mod3.hs b/testsuite/tests/ghc-regress/module/mod3.hs
deleted file mode 100644
index ec31b6e480..0000000000
--- a/testsuite/tests/ghc-regress/module/mod3.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Exporting "constructor" of a type synonym
-module M(T(K1)) where
-type T = T'
-data T' = K1 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/module/mod3.stderr b/testsuite/tests/ghc-regress/module/mod3.stderr
deleted file mode 100644
index 2b0cae95fa..0000000000
--- a/testsuite/tests/ghc-regress/module/mod3.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-mod3.hs:2:10:
- The export item `T(K1)'
- attempts to export constructors or class methods that are not visible here
diff --git a/testsuite/tests/ghc-regress/module/mod3.stderr-hugs b/testsuite/tests/ghc-regress/module/mod3.stderr-hugs
deleted file mode 100644
index 4aa156e5ca..0000000000
--- a/testsuite/tests/ghc-regress/module/mod3.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod3.hs" - Explicit constructor list given for type synonym "T" in export list of module "M"
diff --git a/testsuite/tests/ghc-regress/module/mod30.hs b/testsuite/tests/ghc-regress/module/mod30.hs
deleted file mode 100644
index 8f87970a2d..0000000000
--- a/testsuite/tests/ghc-regress/module/mod30.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Imported class clashes with local class definition
-module M where
-import Prelude(Eq,Bool)
-class Eq a where (==) :: a -> a -> Bool
diff --git a/testsuite/tests/ghc-regress/module/mod31.hs b/testsuite/tests/ghc-regress/module/mod31.hs
deleted file mode 100644
index 70f66a391e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod31.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Defining local type with same name as imported class
--- was: Imported class clashes with local type definition
-module M where
-import Prelude(Eq,Bool)
-type Eq = Bool
diff --git a/testsuite/tests/ghc-regress/module/mod32.hs b/testsuite/tests/ghc-regress/module/mod32.hs
deleted file mode 100644
index 2922bab0ce..0000000000
--- a/testsuite/tests/ghc-regress/module/mod32.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Defining local class with same name as imported type.
--- was: Imported tycon clashes with local class definition
-module M where
-import Prelude(Int,Bool)
-class Int a where (==) :: a -> a -> Bool
diff --git a/testsuite/tests/ghc-regress/module/mod33.hs b/testsuite/tests/ghc-regress/module/mod33.hs
deleted file mode 100644
index 04d984af39..0000000000
--- a/testsuite/tests/ghc-regress/module/mod33.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Redefining an imported name
--- was: Imported var clashes with local var definition
-module M where
-import Prelude(id)
-id x = x
diff --git a/testsuite/tests/ghc-regress/module/mod34.hs b/testsuite/tests/ghc-regress/module/mod34.hs
deleted file mode 100644
index 9b59245630..0000000000
--- a/testsuite/tests/ghc-regress/module/mod34.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Defining local value with same name as imported class member.
--- was: Imported member fun clashes with local var definition
-module M where
-import Data.Ix(Ix(..))
-index x = x
diff --git a/testsuite/tests/ghc-regress/module/mod35.hs b/testsuite/tests/ghc-regress/module/mod35.hs
deleted file mode 100644
index 614bb73130..0000000000
--- a/testsuite/tests/ghc-regress/module/mod35.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Redefining imported data constructors
--- was: Imported constructor clashes with local constructor
-module M where
-import Prelude(Bool(True,False))
-data T = True
diff --git a/testsuite/tests/ghc-regress/module/mod36.hs b/testsuite/tests/ghc-regress/module/mod36.hs
deleted file mode 100644
index 9bd609c019..0000000000
--- a/testsuite/tests/ghc-regress/module/mod36.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Hiding lists "intersect" part 1
-module M where
-import Prelude hiding (const,id)
-import Prelude hiding (const)
-x = const
diff --git a/testsuite/tests/ghc-regress/module/mod36.stderr b/testsuite/tests/ghc-regress/module/mod36.stderr
deleted file mode 100644
index 9d6b97bfa9..0000000000
--- a/testsuite/tests/ghc-regress/module/mod36.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod36.hs:5:5: Not in scope: `const'
diff --git a/testsuite/tests/ghc-regress/module/mod36.stderr-hugs b/testsuite/tests/ghc-regress/module/mod36.stderr-hugs
deleted file mode 100644
index b97ba265bd..0000000000
--- a/testsuite/tests/ghc-regress/module/mod36.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod36.hs":5 - Undefined variable "const"
diff --git a/testsuite/tests/ghc-regress/module/mod37.hs b/testsuite/tests/ghc-regress/module/mod37.hs
deleted file mode 100644
index 4e21e6c9a9..0000000000
--- a/testsuite/tests/ghc-regress/module/mod37.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Hiding lists "intersect" part 2
-module M where
-import Prelude hiding (const,id)
-import Prelude hiding (const)
-x = id
diff --git a/testsuite/tests/ghc-regress/module/mod38.hs b/testsuite/tests/ghc-regress/module/mod38.hs
deleted file mode 100644
index 1391fbaeaf..0000000000
--- a/testsuite/tests/ghc-regress/module/mod38.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Class decl clashes with type decl
-module M where
-type C = Int
-class C a where f :: a
diff --git a/testsuite/tests/ghc-regress/module/mod38.stderr b/testsuite/tests/ghc-regress/module/mod38.stderr
deleted file mode 100644
index 2b124d5f6c..0000000000
--- a/testsuite/tests/ghc-regress/module/mod38.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod38.hs:4:7:
- Multiple declarations of `M.C'
- Declared at: mod38.hs:3:6
- mod38.hs:4:7
diff --git a/testsuite/tests/ghc-regress/module/mod38.stderr-hugs b/testsuite/tests/ghc-regress/module/mod38.stderr-hugs
deleted file mode 100644
index 1c2fed7dee..0000000000
--- a/testsuite/tests/ghc-regress/module/mod38.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod38.hs":4 - "C" used as both class and type constructor
diff --git a/testsuite/tests/ghc-regress/module/mod39.hs b/testsuite/tests/ghc-regress/module/mod39.hs
deleted file mode 100644
index 477e0a3854..0000000000
--- a/testsuite/tests/ghc-regress/module/mod39.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Class variable constraints on member funs
-module M where
-class C a where f :: Eq a => a
diff --git a/testsuite/tests/ghc-regress/module/mod4.hs b/testsuite/tests/ghc-regress/module/mod4.hs
deleted file mode 100644
index 02f579800f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod4.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Exporting unknown constructor
-module M(T(K1,K2)) where
-data T = K1
diff --git a/testsuite/tests/ghc-regress/module/mod4.stderr b/testsuite/tests/ghc-regress/module/mod4.stderr
deleted file mode 100644
index 84d7cfa19e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod4.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-mod4.hs:2:10:
- The export item `T(K1, K2)'
- attempts to export constructors or class methods that are not visible here
diff --git a/testsuite/tests/ghc-regress/module/mod4.stderr-hugs b/testsuite/tests/ghc-regress/module/mod4.stderr-hugs
deleted file mode 100644
index e3aa770ecd..0000000000
--- a/testsuite/tests/ghc-regress/module/mod4.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod4.hs" - Entity "K2" is not a constructor of type "T"
diff --git a/testsuite/tests/ghc-regress/module/mod40.hs b/testsuite/tests/ghc-regress/module/mod40.hs
deleted file mode 100644
index 5fc8a2e0f7..0000000000
--- a/testsuite/tests/ghc-regress/module/mod40.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Cyclic class hierarchy
-module M where
-class C2 a => C1 a where f :: a
-class C1 a => C2 a where g :: a
diff --git a/testsuite/tests/ghc-regress/module/mod40.stderr b/testsuite/tests/ghc-regress/module/mod40.stderr
deleted file mode 100644
index 35c2151e83..0000000000
--- a/testsuite/tests/ghc-regress/module/mod40.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod40.hs:3:1:
- Cycle in class declarations (via superclasses):
- mod40.hs:3:1-31: class C2 a => C1 a
- mod40.hs:4:1-31: class C1 a => C2 a
diff --git a/testsuite/tests/ghc-regress/module/mod40.stderr-hugs b/testsuite/tests/ghc-regress/module/mod40.stderr-hugs
deleted file mode 100644
index 50b78c836e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod40.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod40.hs":4 - Superclass relation for "C2" is cyclic
diff --git a/testsuite/tests/ghc-regress/module/mod41.hs b/testsuite/tests/ghc-regress/module/mod41.hs
deleted file mode 100644
index a1ac924242..0000000000
--- a/testsuite/tests/ghc-regress/module/mod41.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Repeated variable in instance predicate
-module M where
-instance Eq a => Eq (Either a a)
diff --git a/testsuite/tests/ghc-regress/module/mod41.stderr b/testsuite/tests/ghc-regress/module/mod41.stderr
deleted file mode 100644
index 5ec4355fbe..0000000000
--- a/testsuite/tests/ghc-regress/module/mod41.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-mod41.hs:3:18:
- Illegal instance declaration for `Eq (Either a a)'
- (All instance types must be of the form (T a1 ... an)
- where a1 ... an are *distinct type variables*,
- and each type variable appears at most once in the instance head.
- Use -XFlexibleInstances if you want to disable this.)
- In the instance declaration for `Eq (Either a a)'
diff --git a/testsuite/tests/ghc-regress/module/mod41.stderr-hugs b/testsuite/tests/ghc-regress/module/mod41.stderr-hugs
deleted file mode 100644
index 50f49c0297..0000000000
--- a/testsuite/tests/ghc-regress/module/mod41.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod41.hs":3 - Repeated type variable "a" in instance head
diff --git a/testsuite/tests/ghc-regress/module/mod42.hs b/testsuite/tests/ghc-regress/module/mod42.hs
deleted file mode 100644
index 9828d8b642..0000000000
--- a/testsuite/tests/ghc-regress/module/mod42.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Not "simple type" in instance
-module M where
-instance Eq a
diff --git a/testsuite/tests/ghc-regress/module/mod42.stderr b/testsuite/tests/ghc-regress/module/mod42.stderr
deleted file mode 100644
index 319f42ba05..0000000000
--- a/testsuite/tests/ghc-regress/module/mod42.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-mod42.hs:3:10:
- Illegal instance declaration for `Eq a'
- (All instance types must be of the form (T a1 ... an)
- where a1 ... an are *distinct type variables*,
- and each type variable appears at most once in the instance head.
- Use -XFlexibleInstances if you want to disable this.)
- In the instance declaration for `Eq a'
diff --git a/testsuite/tests/ghc-regress/module/mod42.stderr-hugs b/testsuite/tests/ghc-regress/module/mod42.stderr-hugs
deleted file mode 100644
index 481d86444d..0000000000
--- a/testsuite/tests/ghc-regress/module/mod42.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod42.hs":3 - Syntax error in instance head (constructor expected)
diff --git a/testsuite/tests/ghc-regress/module/mod43.hs b/testsuite/tests/ghc-regress/module/mod43.hs
deleted file mode 100644
index 085382f8b0..0000000000
--- a/testsuite/tests/ghc-regress/module/mod43.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Type synonym in instance
-module M where
-instance Eq String
diff --git a/testsuite/tests/ghc-regress/module/mod43.stderr b/testsuite/tests/ghc-regress/module/mod43.stderr
deleted file mode 100644
index 7fc4da0b8b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod43.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-mod43.hs:3:10:
- Illegal instance declaration for `Eq String'
- (All instance types must be of the form (T t1 ... tn)
- where T is not a synonym.
- Use -XTypeSynonymInstances if you want to disable this.)
- In the instance declaration for `Eq String'
diff --git a/testsuite/tests/ghc-regress/module/mod43.stderr-hugs b/testsuite/tests/ghc-regress/module/mod43.stderr-hugs
deleted file mode 100644
index 4c8f7aeefd..0000000000
--- a/testsuite/tests/ghc-regress/module/mod43.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod43.hs":3 - Cannot use type synonym in instance head
diff --git a/testsuite/tests/ghc-regress/module/mod44.hs b/testsuite/tests/ghc-regress/module/mod44.hs
deleted file mode 100644
index f5b34cd50e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod44.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Repeated instance decl
-module M where
-data T = T Int
-instance Eq T
-instance Eq T
diff --git a/testsuite/tests/ghc-regress/module/mod44.stderr b/testsuite/tests/ghc-regress/module/mod44.stderr
deleted file mode 100644
index b6276a5235..0000000000
--- a/testsuite/tests/ghc-regress/module/mod44.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod44.hs:4:10:
- Duplicate instance declarations:
- instance Eq T -- Defined at mod44.hs:4:10-13
- instance Eq T -- Defined at mod44.hs:5:10-13
diff --git a/testsuite/tests/ghc-regress/module/mod44.stderr-hugs b/testsuite/tests/ghc-regress/module/mod44.stderr-hugs
deleted file mode 100644
index c23e7218d7..0000000000
--- a/testsuite/tests/ghc-regress/module/mod44.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "mod44.hs":5 - Overlapping instances for class "Eq"
-*** This instance : Eq T
-*** Overlaps with : Eq T
-*** Common instance : Eq T
diff --git a/testsuite/tests/ghc-regress/module/mod45.hs b/testsuite/tests/ghc-regress/module/mod45.hs
deleted file mode 100644
index 03a1bc32ba..0000000000
--- a/testsuite/tests/ghc-regress/module/mod45.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! Type sigs in instance decl
-module M where
-data T = T Int
-instance Eq T where
- (==) :: T -> T -> Bool
- T x == T y = x == y
-
diff --git a/testsuite/tests/ghc-regress/module/mod45.stderr b/testsuite/tests/ghc-regress/module/mod45.stderr
deleted file mode 100644
index bba6b1b7d7..0000000000
--- a/testsuite/tests/ghc-regress/module/mod45.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod45.hs:5:3: Misplaced type signature: == :: T -> T -> Bool
diff --git a/testsuite/tests/ghc-regress/module/mod45.stderr-hugs b/testsuite/tests/ghc-regress/module/mod45.stderr-hugs
deleted file mode 100644
index 5874ebc5fa..0000000000
--- a/testsuite/tests/ghc-regress/module/mod45.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod45.hs":4 - Type signature declarations not permitted in instance declaration
diff --git a/testsuite/tests/ghc-regress/module/mod46.hs b/testsuite/tests/ghc-regress/module/mod46.hs
deleted file mode 100644
index 4b7a8f8135..0000000000
--- a/testsuite/tests/ghc-regress/module/mod46.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Instances of superclasses exist
-module M where
-data T = T Int
-instance Ord T
diff --git a/testsuite/tests/ghc-regress/module/mod46.stderr b/testsuite/tests/ghc-regress/module/mod46.stderr
deleted file mode 100644
index 603d0d6e79..0000000000
--- a/testsuite/tests/ghc-regress/module/mod46.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-mod46.hs:4:10:
- No instance for (Eq T)
- arising from the superclasses of an instance declaration
- Possible fix: add an instance declaration for (Eq T)
- In the instance declaration for `Ord T'
diff --git a/testsuite/tests/ghc-regress/module/mod46.stderr-hugs b/testsuite/tests/ghc-regress/module/mod46.stderr-hugs
deleted file mode 100644
index ae15a4f695..0000000000
--- a/testsuite/tests/ghc-regress/module/mod46.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "mod46.hs":4 - Cannot build superclass instance
-*** Instance : Ord T
-*** Context supplied : ()
-*** Required superclass : Eq T
diff --git a/testsuite/tests/ghc-regress/module/mod47.hs b/testsuite/tests/ghc-regress/module/mod47.hs
deleted file mode 100644
index f0f487dda2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod47.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! Instance context can't satisfy class-hierarchy constraint
-module M where
-class Foo a
-class Foo a => Bar a
-instance Num a => Foo [a]
-instance (Eq a, Enum a) => Bar [a]
-
diff --git a/testsuite/tests/ghc-regress/module/mod47.stderr b/testsuite/tests/ghc-regress/module/mod47.stderr
deleted file mode 100644
index 1b8fd0b411..0000000000
--- a/testsuite/tests/ghc-regress/module/mod47.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-mod47.hs:6:10:
- Could not deduce (Num a)
- arising from the superclasses of an instance declaration
- from the context (Eq a, Enum a)
- bound by the instance declaration at mod47.hs:6:10-34
- Possible fix:
- add (Num a) to the context of the instance declaration
- In the instance declaration for `Bar [a]'
diff --git a/testsuite/tests/ghc-regress/module/mod47.stderr-hugs b/testsuite/tests/ghc-regress/module/mod47.stderr-hugs
deleted file mode 100644
index a26b99b109..0000000000
--- a/testsuite/tests/ghc-regress/module/mod47.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "mod47.hs":6 - Cannot build superclass instance
-*** Instance : Bar [a]
-*** Context supplied : (Eq a, Enum a)
-*** Required superclass : Foo [a]
diff --git a/testsuite/tests/ghc-regress/module/mod48.hs b/testsuite/tests/ghc-regress/module/mod48.hs
deleted file mode 100644
index 681d356e2e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod48.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Class decl can't use pattern bindings
-module M where
-class C a where
- x,y :: a
- (x,y) = error "foo" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/module/mod48.stderr b/testsuite/tests/ghc-regress/module/mod48.stderr
deleted file mode 100644
index d184d2a7a2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod48.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-mod48.hs:5:3:
- Pattern bindings (except simple variables) not allowed in instance declarations
- (x, y) = error "foo"
diff --git a/testsuite/tests/ghc-regress/module/mod48.stderr-hugs b/testsuite/tests/ghc-regress/module/mod48.stderr-hugs
deleted file mode 100644
index 9abf8c5dbd..0000000000
--- a/testsuite/tests/ghc-regress/module/mod48.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod48.hs":5 - Pattern binding illegal in class declaration
diff --git a/testsuite/tests/ghc-regress/module/mod49.hs b/testsuite/tests/ghc-regress/module/mod49.hs
deleted file mode 100644
index 7f995ecfbc..0000000000
--- a/testsuite/tests/ghc-regress/module/mod49.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Default decl for non-method
-module M where
-class C a where
- x :: a
- y = error "foo"
diff --git a/testsuite/tests/ghc-regress/module/mod49.stderr b/testsuite/tests/ghc-regress/module/mod49.stderr
deleted file mode 100644
index f08b36e0c4..0000000000
--- a/testsuite/tests/ghc-regress/module/mod49.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod49.hs:5:3: `y' is not a (visible) method of class `C'
diff --git a/testsuite/tests/ghc-regress/module/mod49.stderr-hugs b/testsuite/tests/ghc-regress/module/mod49.stderr-hugs
deleted file mode 100644
index 873cf50f82..0000000000
--- a/testsuite/tests/ghc-regress/module/mod49.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod49.hs":5 - No member "y" in class "C"
diff --git a/testsuite/tests/ghc-regress/module/mod5.hs b/testsuite/tests/ghc-regress/module/mod5.hs
deleted file mode 100644
index 5b059ecc1a..0000000000
--- a/testsuite/tests/ghc-regress/module/mod5.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Duplicate export of constructor
-module M(T(K1,K1)) where
-data T = K1
diff --git a/testsuite/tests/ghc-regress/module/mod5.stderr-ghc b/testsuite/tests/ghc-regress/module/mod5.stderr-ghc
deleted file mode 100644
index 7992560ca3..0000000000
--- a/testsuite/tests/ghc-regress/module/mod5.stderr-ghc
+++ /dev/null
@@ -1,3 +0,0 @@
-
-mod5.hs:2:10:
- Warning: `K1' is exported by `T(K1, K1)' and `T(K1, K1)'
diff --git a/testsuite/tests/ghc-regress/module/mod50.hs b/testsuite/tests/ghc-regress/module/mod50.hs
deleted file mode 100644
index 5f26b8d487..0000000000
--- a/testsuite/tests/ghc-regress/module/mod50.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Default decl for non-method
-module M where
-data T = C deriving (Foo) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/module/mod50.stderr b/testsuite/tests/ghc-regress/module/mod50.stderr
deleted file mode 100644
index 9357f7a2d8..0000000000
--- a/testsuite/tests/ghc-regress/module/mod50.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod50.hs:3:22: Not in scope: type constructor or class `Foo'
diff --git a/testsuite/tests/ghc-regress/module/mod50.stderr-hugs b/testsuite/tests/ghc-regress/module/mod50.stderr-hugs
deleted file mode 100644
index b3ca66839e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod50.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod50.hs":3 - Unknown class "Foo" in derived instance
diff --git a/testsuite/tests/ghc-regress/module/mod51.hs b/testsuite/tests/ghc-regress/module/mod51.hs
deleted file mode 100644
index c3069a6c3e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod51.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Duplicate derived instance
-module M where
-data T = C deriving (Eq,Eq) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/module/mod51.stderr b/testsuite/tests/ghc-regress/module/mod51.stderr
deleted file mode 100644
index db74d7a5df..0000000000
--- a/testsuite/tests/ghc-regress/module/mod51.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod51.hs:3:25:
- Duplicate instance declarations:
- instance Eq T -- Defined at mod51.hs:3:25-26
- instance Eq T -- Defined at mod51.hs:3:22-23
diff --git a/testsuite/tests/ghc-regress/module/mod51.stderr-hugs b/testsuite/tests/ghc-regress/module/mod51.stderr-hugs
deleted file mode 100644
index 54d5198bea..0000000000
--- a/testsuite/tests/ghc-regress/module/mod51.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "mod51.hs":3 - Overlapping instances for class "Eq"
-*** This instance : Eq T
-*** Overlaps with : Eq T
-*** Common instance : Eq T
diff --git a/testsuite/tests/ghc-regress/module/mod52.hs b/testsuite/tests/ghc-regress/module/mod52.hs
deleted file mode 100644
index c907afe215..0000000000
--- a/testsuite/tests/ghc-regress/module/mod52.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Duplicate derived instance
-module M where
-data T = C deriving (Eq)
-instance Eq T \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/module/mod52.stderr b/testsuite/tests/ghc-regress/module/mod52.stderr
deleted file mode 100644
index 23818e8bf3..0000000000
--- a/testsuite/tests/ghc-regress/module/mod52.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod52.hs:3:22:
- Duplicate instance declarations:
- instance Eq T -- Defined at mod52.hs:3:22-23
- instance Eq T -- Defined at mod52.hs:4:10-13
diff --git a/testsuite/tests/ghc-regress/module/mod52.stderr-hugs b/testsuite/tests/ghc-regress/module/mod52.stderr-hugs
deleted file mode 100644
index 634069431f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod52.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "mod52.hs":3 - Overlapping instances for class "Eq"
-*** This instance : Eq T
-*** Overlaps with : Eq T
-*** Common instance : Eq T
diff --git a/testsuite/tests/ghc-regress/module/mod53.hs b/testsuite/tests/ghc-regress/module/mod53.hs
deleted file mode 100644
index c7291e43a7..0000000000
--- a/testsuite/tests/ghc-regress/module/mod53.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Duplicate derived instance
-module M where
-class C a
-data T = K deriving (C)
diff --git a/testsuite/tests/ghc-regress/module/mod53.stderr b/testsuite/tests/ghc-regress/module/mod53.stderr
deleted file mode 100644
index b8b44a471e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod53.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod53.hs:4:22:
- Can't make a derived instance of `C T':
- `C' is not a derivable class
- In the data type declaration for `T'
diff --git a/testsuite/tests/ghc-regress/module/mod53.stderr-hugs b/testsuite/tests/ghc-regress/module/mod53.stderr-hugs
deleted file mode 100644
index 92b3f424c2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod53.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod53.hs":4 - Cannot derive instances of class "C"
diff --git a/testsuite/tests/ghc-regress/module/mod54.hs b/testsuite/tests/ghc-regress/module/mod54.hs
deleted file mode 100644
index 0814a5e57b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod54.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Duplicate derived instance
-module M where
-data T = K deriving (Ord)
diff --git a/testsuite/tests/ghc-regress/module/mod54.stderr b/testsuite/tests/ghc-regress/module/mod54.stderr
deleted file mode 100644
index 8b41e7f8bc..0000000000
--- a/testsuite/tests/ghc-regress/module/mod54.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-mod54.hs:3:22:
- No instance for (Eq T)
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Eq T)
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Ord T)
diff --git a/testsuite/tests/ghc-regress/module/mod54.stderr-hugs b/testsuite/tests/ghc-regress/module/mod54.stderr-hugs
deleted file mode 100644
index ff65e5ce96..0000000000
--- a/testsuite/tests/ghc-regress/module/mod54.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "mod54.hs":3 - Cannot build superclass instance
-*** Instance : Ord T
-*** Context supplied : ()
-*** Required superclass : Eq T
diff --git a/testsuite/tests/ghc-regress/module/mod55.hs b/testsuite/tests/ghc-regress/module/mod55.hs
deleted file mode 100644
index 55cfab7d60..0000000000
--- a/testsuite/tests/ghc-regress/module/mod55.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Illegal deriving Enum
-module M where
-data T = K Int deriving (Enum)
diff --git a/testsuite/tests/ghc-regress/module/mod55.stderr b/testsuite/tests/ghc-regress/module/mod55.stderr
deleted file mode 100644
index 7787ea3b2f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod55.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-mod55.hs:3:26:
- Can't make a derived instance of `Enum T':
- `T' must be an enumeration type
- (an enumeration consists of one or more nullary, non-GADT constructors)
- In the data type declaration for `T'
diff --git a/testsuite/tests/ghc-regress/module/mod55.stderr-hugs b/testsuite/tests/ghc-regress/module/mod55.stderr-hugs
deleted file mode 100644
index 1c0b452698..0000000000
--- a/testsuite/tests/ghc-regress/module/mod55.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod55.hs":3 - Can only derive instances of Enum for enumeration types
diff --git a/testsuite/tests/ghc-regress/module/mod56.hs b/testsuite/tests/ghc-regress/module/mod56.hs
deleted file mode 100644
index 2fb79baaa6..0000000000
--- a/testsuite/tests/ghc-regress/module/mod56.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Illegal deriving Ix
-module M where
-import Data.Ix(Ix)
-data T = K1 Int | K2 deriving (Eq,Ord,Ix)
diff --git a/testsuite/tests/ghc-regress/module/mod56.stderr b/testsuite/tests/ghc-regress/module/mod56.stderr
deleted file mode 100644
index 3dca4e2e10..0000000000
--- a/testsuite/tests/ghc-regress/module/mod56.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-mod56.hs:4:39:
- Can't make a derived instance of `Ix T':
- `T' must be an enumeration type
- (an enumeration consists of one or more nullary, non-GADT constructors)
- or
- `T' must have precisely one constructor
- In the data type declaration for `T'
diff --git a/testsuite/tests/ghc-regress/module/mod56.stderr-hugs b/testsuite/tests/ghc-regress/module/mod56.stderr-hugs
deleted file mode 100644
index 74e44165a4..0000000000
--- a/testsuite/tests/ghc-regress/module/mod56.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod56.hs":4 - Can only derive instances of Ix for enumeration or product types
diff --git a/testsuite/tests/ghc-regress/module/mod58.hs b/testsuite/tests/ghc-regress/module/mod58.hs
deleted file mode 100644
index 4ab2f71737..0000000000
--- a/testsuite/tests/ghc-regress/module/mod58.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Multiple (identical) default decls
-module M where
-default (Int,Integer)
-default (Int,Integer)
diff --git a/testsuite/tests/ghc-regress/module/mod58.stderr b/testsuite/tests/ghc-regress/module/mod58.stderr
deleted file mode 100644
index d92345a8af..0000000000
--- a/testsuite/tests/ghc-regress/module/mod58.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-mod58.hs:4:1:
- Multiple default declarations
- here was another default declaration mod58.hs:3:1-21
diff --git a/testsuite/tests/ghc-regress/module/mod58.stderr-hugs b/testsuite/tests/ghc-regress/module/mod58.stderr-hugs
deleted file mode 100644
index 7dd4839a26..0000000000
--- a/testsuite/tests/ghc-regress/module/mod58.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod58.hs":4 - Multiple default declarations are not permitted in a single script file.
diff --git a/testsuite/tests/ghc-regress/module/mod59.hs b/testsuite/tests/ghc-regress/module/mod59.hs
deleted file mode 100644
index ecb026e894..0000000000
--- a/testsuite/tests/ghc-regress/module/mod59.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Malformed pattern (unknown constructor)
-module M where
-f K = error "foo" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/module/mod59.stderr b/testsuite/tests/ghc-regress/module/mod59.stderr
deleted file mode 100644
index c08db2a55f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod59.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod59.hs:3:3: Not in scope: data constructor `K'
diff --git a/testsuite/tests/ghc-regress/module/mod59.stderr-hugs b/testsuite/tests/ghc-regress/module/mod59.stderr-hugs
deleted file mode 100644
index 5a408f345b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod59.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod59.hs":3 - Undefined data constructor "K"
diff --git a/testsuite/tests/ghc-regress/module/mod6.hs b/testsuite/tests/ghc-regress/module/mod6.hs
deleted file mode 100644
index 91a9a780cd..0000000000
--- a/testsuite/tests/ghc-regress/module/mod6.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Omitted constructor from export list
-module M(T(K1)) where
-data T = K1|K2
diff --git a/testsuite/tests/ghc-regress/module/mod60.hs b/testsuite/tests/ghc-regress/module/mod60.hs
deleted file mode 100644
index 61884850b3..0000000000
--- a/testsuite/tests/ghc-regress/module/mod60.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Malformed pattern (arity)
-module M where
-f (Left) = error "foo" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/module/mod60.stderr b/testsuite/tests/ghc-regress/module/mod60.stderr
deleted file mode 100644
index f363cb933b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod60.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod60.hs:3:4:
- Constructor `Left' should have 1 argument, but has been given none
- In the pattern: Left
- In an equation for `f': f (Left) = error "foo"
diff --git a/testsuite/tests/ghc-regress/module/mod60.stderr-hugs b/testsuite/tests/ghc-regress/module/mod60.stderr-hugs
deleted file mode 100644
index 17e7120319..0000000000
--- a/testsuite/tests/ghc-regress/module/mod60.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod60.hs":3 - Constructor "Left" must have exactly 1 argument in pattern
diff --git a/testsuite/tests/ghc-regress/module/mod61.hs b/testsuite/tests/ghc-regress/module/mod61.hs
deleted file mode 100644
index 62fdef2dd3..0000000000
--- a/testsuite/tests/ghc-regress/module/mod61.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Malformed infix expression
-module M where
-f a b c = a==b==c \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/module/mod61.stderr b/testsuite/tests/ghc-regress/module/mod61.stderr
deleted file mode 100644
index 3ac4937437..0000000000
--- a/testsuite/tests/ghc-regress/module/mod61.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-mod61.hs:3:11:
- Precedence parsing error
- cannot mix `==' [infix 4] and `==' [infix 4] in the same infix expression
diff --git a/testsuite/tests/ghc-regress/module/mod61.stderr-hugs b/testsuite/tests/ghc-regress/module/mod61.stderr-hugs
deleted file mode 100644
index 32c0138b81..0000000000
--- a/testsuite/tests/ghc-regress/module/mod61.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod61.hs":3 - Ambiguous use of operator "(==)" with "(==)"
diff --git a/testsuite/tests/ghc-regress/module/mod62.hs b/testsuite/tests/ghc-regress/module/mod62.hs
deleted file mode 100644
index b1140fdd6b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod62.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Malformed binding (qualified)
-module M where
-x = let M.y = 'a' in M.y
diff --git a/testsuite/tests/ghc-regress/module/mod62.stderr b/testsuite/tests/ghc-regress/module/mod62.stderr
deleted file mode 100644
index d435dbd6b9..0000000000
--- a/testsuite/tests/ghc-regress/module/mod62.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-mod62.hs:3:9: Qualified name in binding position: M.y
-
-mod62.hs:3:22:
- Not in scope: `M.y'
- Perhaps you meant `M.x' (line 3)
diff --git a/testsuite/tests/ghc-regress/module/mod62.stderr-hugs b/testsuite/tests/ghc-regress/module/mod62.stderr-hugs
deleted file mode 100644
index 1c50fab13a..0000000000
--- a/testsuite/tests/ghc-regress/module/mod62.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod62.hs":3 - Syntax error in expression (unexpected symbol "M.y")
diff --git a/testsuite/tests/ghc-regress/module/mod63.hs b/testsuite/tests/ghc-regress/module/mod63.hs
deleted file mode 100644
index 70da4c30c2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod63.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Bindings of different arities
-module M where
-f 0 = id
-f x y = x+y
diff --git a/testsuite/tests/ghc-regress/module/mod63.stderr b/testsuite/tests/ghc-regress/module/mod63.stderr
deleted file mode 100644
index a4745b2e49..0000000000
--- a/testsuite/tests/ghc-regress/module/mod63.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod63.hs:3:1:
- Equations for `f' have different numbers of arguments
- mod63.hs:3:1-8
- mod63.hs:4:1-11
diff --git a/testsuite/tests/ghc-regress/module/mod63.stderr-hugs b/testsuite/tests/ghc-regress/module/mod63.stderr-hugs
deleted file mode 100644
index a2f6d6a677..0000000000
--- a/testsuite/tests/ghc-regress/module/mod63.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod63.hs":3 - Equations give different arities for "f"
diff --git a/testsuite/tests/ghc-regress/module/mod64.hs b/testsuite/tests/ghc-regress/module/mod64.hs
deleted file mode 100644
index 9a9c6aef78..0000000000
--- a/testsuite/tests/ghc-regress/module/mod64.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Pattern binding must bind (not an error in standard Haskell)
-module M where
-x = let ['a'] = "a" in 'a'
diff --git a/testsuite/tests/ghc-regress/module/mod64.stderr b/testsuite/tests/ghc-regress/module/mod64.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod64.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/module/mod65.hs b/testsuite/tests/ghc-regress/module/mod65.hs
deleted file mode 100644
index 96866b9666..0000000000
--- a/testsuite/tests/ghc-regress/module/mod65.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Malformed lhs (pointless but legal in Haskell 1.3, rejected by Hugs)
-module M where
-x = let [] = "a" in 'a'
diff --git a/testsuite/tests/ghc-regress/module/mod65.stderr b/testsuite/tests/ghc-regress/module/mod65.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod65.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/module/mod66.hs b/testsuite/tests/ghc-regress/module/mod66.hs
deleted file mode 100644
index d162ae09d5..0000000000
--- a/testsuite/tests/ghc-regress/module/mod66.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Multiple value bindings
-module M where
-f x = 'a'
-g x = 'b'
-f x = 'c' \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/module/mod66.stderr b/testsuite/tests/ghc-regress/module/mod66.stderr
deleted file mode 100644
index 7949ae3ec0..0000000000
--- a/testsuite/tests/ghc-regress/module/mod66.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod66.hs:5:1:
- Multiple declarations of `M.f'
- Declared at: mod66.hs:3:1
- mod66.hs:5:1
diff --git a/testsuite/tests/ghc-regress/module/mod66.stderr-hugs b/testsuite/tests/ghc-regress/module/mod66.stderr-hugs
deleted file mode 100644
index 2f954b8337..0000000000
--- a/testsuite/tests/ghc-regress/module/mod66.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod66.hs":3 - "f" multiply defined
diff --git a/testsuite/tests/ghc-regress/module/mod67.hs b/testsuite/tests/ghc-regress/module/mod67.hs
deleted file mode 100644
index addfbfb946..0000000000
--- a/testsuite/tests/ghc-regress/module/mod67.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Type decl but no body
-module M where
-f :: Int -> Bool \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/module/mod67.stderr b/testsuite/tests/ghc-regress/module/mod67.stderr
deleted file mode 100644
index 2c2323b83f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod67.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-mod67.hs:3:1:
- The type signature for `f' lacks an accompanying binding
diff --git a/testsuite/tests/ghc-regress/module/mod67.stderr-hugs b/testsuite/tests/ghc-regress/module/mod67.stderr-hugs
deleted file mode 100644
index 395507373d..0000000000
--- a/testsuite/tests/ghc-regress/module/mod67.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod67.hs":3 - Missing binding for variable "f" in type signature
diff --git a/testsuite/tests/ghc-regress/module/mod68.hs b/testsuite/tests/ghc-regress/module/mod68.hs
deleted file mode 100644
index fd10684e2c..0000000000
--- a/testsuite/tests/ghc-regress/module/mod68.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Multiple type decls
-module M where
-f :: Int -> Bool
-f :: Int -> Bool
-f = even \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/module/mod68.stderr b/testsuite/tests/ghc-regress/module/mod68.stderr
deleted file mode 100644
index 2d5ece6f47..0000000000
--- a/testsuite/tests/ghc-regress/module/mod68.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-mod68.hs:4:1:
- Duplicate type signature:
- mod68.hs:4:1-16: f :: Int -> Bool
- mod68.hs:3:1-16: f :: Int -> Bool
diff --git a/testsuite/tests/ghc-regress/module/mod68.stderr-hugs b/testsuite/tests/ghc-regress/module/mod68.stderr-hugs
deleted file mode 100644
index 362c681500..0000000000
--- a/testsuite/tests/ghc-regress/module/mod68.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod68.hs":4 - Multiple type signatures for "f"
diff --git a/testsuite/tests/ghc-regress/module/mod69.hs b/testsuite/tests/ghc-regress/module/mod69.hs
deleted file mode 100644
index 8360274d21..0000000000
--- a/testsuite/tests/ghc-regress/module/mod69.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Illegal @ in expression
-module M where
-f x = x@1
diff --git a/testsuite/tests/ghc-regress/module/mod69.stderr b/testsuite/tests/ghc-regress/module/mod69.stderr
deleted file mode 100644
index d7f92be69a..0000000000
--- a/testsuite/tests/ghc-regress/module/mod69.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod69.hs:3:7: Pattern syntax in expression context: x@1
diff --git a/testsuite/tests/ghc-regress/module/mod69.stderr-hugs b/testsuite/tests/ghc-regress/module/mod69.stderr-hugs
deleted file mode 100644
index 36c2ef4df3..0000000000
--- a/testsuite/tests/ghc-regress/module/mod69.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod69.hs":3 - Illegal `@' in expression
diff --git a/testsuite/tests/ghc-regress/module/mod7.hs b/testsuite/tests/ghc-regress/module/mod7.hs
deleted file mode 100644
index 68aacee63b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod7.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Exporting non-existent type/class
-module M(T) where
-x = 'a' -- dummy definition to get round a separate bug
diff --git a/testsuite/tests/ghc-regress/module/mod7.stderr b/testsuite/tests/ghc-regress/module/mod7.stderr
deleted file mode 100644
index f9119cd786..0000000000
--- a/testsuite/tests/ghc-regress/module/mod7.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod7.hs:2:10: Not in scope: type constructor or class `T'
diff --git a/testsuite/tests/ghc-regress/module/mod7.stderr-hugs b/testsuite/tests/ghc-regress/module/mod7.stderr-hugs
deleted file mode 100644
index a8bf4f0904..0000000000
--- a/testsuite/tests/ghc-regress/module/mod7.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod7.hs" - Unknown entity "T" exported from module "M"
diff --git a/testsuite/tests/ghc-regress/module/mod70.hs b/testsuite/tests/ghc-regress/module/mod70.hs
deleted file mode 100644
index cb7d51fe3b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod70.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Illegal ~ in expression
-module M where
-f x = x~1
diff --git a/testsuite/tests/ghc-regress/module/mod70.stderr b/testsuite/tests/ghc-regress/module/mod70.stderr
deleted file mode 100644
index 110ff24afe..0000000000
--- a/testsuite/tests/ghc-regress/module/mod70.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod70.hs:3:8: Pattern syntax in expression context: ~1
diff --git a/testsuite/tests/ghc-regress/module/mod70.stderr-hugs b/testsuite/tests/ghc-regress/module/mod70.stderr-hugs
deleted file mode 100644
index 661f02ff6f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod70.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod70.hs":3 - Illegal `~' in expression
diff --git a/testsuite/tests/ghc-regress/module/mod71.hs b/testsuite/tests/ghc-regress/module/mod71.hs
deleted file mode 100644
index 49cc66d4b1..0000000000
--- a/testsuite/tests/ghc-regress/module/mod71.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Illegal _ in expression
-module M where
-f x = x _ 1
diff --git a/testsuite/tests/ghc-regress/module/mod71.stderr b/testsuite/tests/ghc-regress/module/mod71.stderr
deleted file mode 100644
index 956f05e8d5..0000000000
--- a/testsuite/tests/ghc-regress/module/mod71.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod71.hs:3:9: Pattern syntax in expression context: _
diff --git a/testsuite/tests/ghc-regress/module/mod71.stderr-hugs b/testsuite/tests/ghc-regress/module/mod71.stderr-hugs
deleted file mode 100644
index ebb60587c4..0000000000
--- a/testsuite/tests/ghc-regress/module/mod71.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod71.hs":3 - Illegal `_' in expression
diff --git a/testsuite/tests/ghc-regress/module/mod72.hs b/testsuite/tests/ghc-regress/module/mod72.hs
deleted file mode 100644
index 355d235c1e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod72.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Undefined variable in expression
-module M where
-f x = g x
diff --git a/testsuite/tests/ghc-regress/module/mod72.stderr b/testsuite/tests/ghc-regress/module/mod72.stderr
deleted file mode 100644
index 7f047d8023..0000000000
--- a/testsuite/tests/ghc-regress/module/mod72.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod72.hs:3:7: Not in scope: `g'
diff --git a/testsuite/tests/ghc-regress/module/mod72.stderr-hugs b/testsuite/tests/ghc-regress/module/mod72.stderr-hugs
deleted file mode 100644
index f801cf0fd5..0000000000
--- a/testsuite/tests/ghc-regress/module/mod72.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod72.hs":3 - Undefined variable "g"
diff --git a/testsuite/tests/ghc-regress/module/mod73.hs b/testsuite/tests/ghc-regress/module/mod73.hs
deleted file mode 100644
index dd825d997a..0000000000
--- a/testsuite/tests/ghc-regress/module/mod73.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Undefined qualified variable in expression
-module M where
-f x = Prelude.g x
diff --git a/testsuite/tests/ghc-regress/module/mod73.stderr b/testsuite/tests/ghc-regress/module/mod73.stderr
deleted file mode 100644
index c99c7ef1cb..0000000000
--- a/testsuite/tests/ghc-regress/module/mod73.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-mod73.hs:3:7:
- Not in scope: `Prelude.g'
- Perhaps you meant one of these:
- `Prelude.id' (imported from Prelude),
- `Prelude.gcd' (imported from Prelude),
- `Prelude.log' (imported from Prelude)
diff --git a/testsuite/tests/ghc-regress/module/mod73.stderr-hugs b/testsuite/tests/ghc-regress/module/mod73.stderr-hugs
deleted file mode 100644
index 3afec93055..0000000000
--- a/testsuite/tests/ghc-regress/module/mod73.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod73.hs":3 - Undefined qualified variable "Prelude.g"
diff --git a/testsuite/tests/ghc-regress/module/mod74.hs b/testsuite/tests/ghc-regress/module/mod74.hs
deleted file mode 100644
index af580a130b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod74.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Undefined qualifier in expression
-module M where
-f x = N.g x
diff --git a/testsuite/tests/ghc-regress/module/mod74.stderr b/testsuite/tests/ghc-regress/module/mod74.stderr
deleted file mode 100644
index b4d417bac2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod74.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod74.hs:3:7: Not in scope: `N.g'
diff --git a/testsuite/tests/ghc-regress/module/mod74.stderr-hugs b/testsuite/tests/ghc-regress/module/mod74.stderr-hugs
deleted file mode 100644
index 55feed3698..0000000000
--- a/testsuite/tests/ghc-regress/module/mod74.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod74.hs":3 - Undefined qualified variable "N.g"
diff --git a/testsuite/tests/ghc-regress/module/mod75.hs b/testsuite/tests/ghc-regress/module/mod75.hs
deleted file mode 100644
index 4428de8237..0000000000
--- a/testsuite/tests/ghc-regress/module/mod75.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Qualifying with local module name
-module M where
-f x = M.f x
diff --git a/testsuite/tests/ghc-regress/module/mod76.hs b/testsuite/tests/ghc-regress/module/mod76.hs
deleted file mode 100644
index ccf4efa0ff..0000000000
--- a/testsuite/tests/ghc-regress/module/mod76.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! Multiple modules per file
-module M where
-foo = 'a'
-
-module N where
-bar = 'b'
-
diff --git a/testsuite/tests/ghc-regress/module/mod76.stderr b/testsuite/tests/ghc-regress/module/mod76.stderr
deleted file mode 100644
index cf7a94495c..0000000000
--- a/testsuite/tests/ghc-regress/module/mod76.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod76.hs:5:1: parse error on input `module'
diff --git a/testsuite/tests/ghc-regress/module/mod76.stderr-hugs b/testsuite/tests/ghc-regress/module/mod76.stderr-hugs
deleted file mode 100644
index a9f2f9ed4f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod76.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod76.hs":5 - Syntax error in input (unexpected keyword "module")
diff --git a/testsuite/tests/ghc-regress/module/mod77.hs b/testsuite/tests/ghc-regress/module/mod77.hs
deleted file mode 100644
index ea5f89d53e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod77.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Naked fixity declaration
-module M where
-infix $$$
-x = 'a'
diff --git a/testsuite/tests/ghc-regress/module/mod77.stderr b/testsuite/tests/ghc-regress/module/mod77.stderr
deleted file mode 100644
index 0cb4920e31..0000000000
--- a/testsuite/tests/ghc-regress/module/mod77.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-mod77.hs:3:7:
- The fixity signature for `$$$' lacks an accompanying binding
diff --git a/testsuite/tests/ghc-regress/module/mod77.stderr-hugs b/testsuite/tests/ghc-regress/module/mod77.stderr-hugs
deleted file mode 100644
index 49dc7008bd..0000000000
--- a/testsuite/tests/ghc-regress/module/mod77.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod77.hs":3 - Cannot find binding for operator "$$$" in fixity declaration
diff --git a/testsuite/tests/ghc-regress/module/mod79.hs b/testsuite/tests/ghc-regress/module/mod79.hs
deleted file mode 100644
index ae46dd88cd..0000000000
--- a/testsuite/tests/ghc-regress/module/mod79.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Importing unknown class/tycon
-module M where
-import Prelude(C)
-
diff --git a/testsuite/tests/ghc-regress/module/mod79.stderr b/testsuite/tests/ghc-regress/module/mod79.stderr
deleted file mode 100644
index f8a185725e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod79.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod79.hs:3:16: Module `Prelude' does not export `C'
diff --git a/testsuite/tests/ghc-regress/module/mod79.stderr-hugs b/testsuite/tests/ghc-regress/module/mod79.stderr-hugs
deleted file mode 100644
index 43c079b009..0000000000
--- a/testsuite/tests/ghc-regress/module/mod79.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod79.hs" - Unknown entity "C" imported from module "Prelude"
diff --git a/testsuite/tests/ghc-regress/module/mod8.hs b/testsuite/tests/ghc-regress/module/mod8.hs
deleted file mode 100644
index 8d7c3e003e..0000000000
--- a/testsuite/tests/ghc-regress/module/mod8.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Exporting non-existent module
-module M(module N) where
-x = 'a' -- dummy definition to get round a separate bug
diff --git a/testsuite/tests/ghc-regress/module/mod8.stderr b/testsuite/tests/ghc-regress/module/mod8.stderr
deleted file mode 100644
index cba84c8502..0000000000
--- a/testsuite/tests/ghc-regress/module/mod8.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod8.hs:2:10: The export item `module N' is not imported
diff --git a/testsuite/tests/ghc-regress/module/mod8.stderr-hugs b/testsuite/tests/ghc-regress/module/mod8.stderr-hugs
deleted file mode 100644
index 4ac6093dd1..0000000000
--- a/testsuite/tests/ghc-regress/module/mod8.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod8.hs" - Unknown module "N" exported from module "M"
diff --git a/testsuite/tests/ghc-regress/module/mod80.hs b/testsuite/tests/ghc-regress/module/mod80.hs
deleted file mode 100644
index 4ab1539054..0000000000
--- a/testsuite/tests/ghc-regress/module/mod80.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Importing unknown name
-module M where
-import Prelude(f)
-
diff --git a/testsuite/tests/ghc-regress/module/mod80.stderr b/testsuite/tests/ghc-regress/module/mod80.stderr
deleted file mode 100644
index c56caf0ae6..0000000000
--- a/testsuite/tests/ghc-regress/module/mod80.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod80.hs:3:16: Module `Prelude' does not export `f'
diff --git a/testsuite/tests/ghc-regress/module/mod80.stderr-hugs b/testsuite/tests/ghc-regress/module/mod80.stderr-hugs
deleted file mode 100644
index cea1259f7f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod80.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod80.hs" - Unknown entity "f" imported from module "Prelude"
diff --git a/testsuite/tests/ghc-regress/module/mod81.hs b/testsuite/tests/ghc-regress/module/mod81.hs
deleted file mode 100644
index ef1c8639fd..0000000000
--- a/testsuite/tests/ghc-regress/module/mod81.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Importing Tycon with bogus constructor
-module M where
-import Prelude(Either(Left,Right,Foo))
-
diff --git a/testsuite/tests/ghc-regress/module/mod81.stderr b/testsuite/tests/ghc-regress/module/mod81.stderr
deleted file mode 100644
index d3f0d5c427..0000000000
--- a/testsuite/tests/ghc-regress/module/mod81.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-mod81.hs:3:16:
- Module `Prelude' does not export `Either(Left, Right, Foo)'
diff --git a/testsuite/tests/ghc-regress/module/mod81.stderr-hugs b/testsuite/tests/ghc-regress/module/mod81.stderr-hugs
deleted file mode 100644
index 1204130fb9..0000000000
--- a/testsuite/tests/ghc-regress/module/mod81.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod81.hs" - Entity "Foo" is not a constructor of type "Either"
diff --git a/testsuite/tests/ghc-regress/module/mod82.hs b/testsuite/tests/ghc-regress/module/mod82.hs
deleted file mode 100644
index 62c630ac24..0000000000
--- a/testsuite/tests/ghc-regress/module/mod82.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Importing Tycon with missing constructor
-module M where
-import Prelude(Either(Left))
-
diff --git a/testsuite/tests/ghc-regress/module/mod83.hs b/testsuite/tests/ghc-regress/module/mod83.hs
deleted file mode 100644
index efce6dd02f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod83.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Importing Tycon with duplicate constructor
-module M where
-import Prelude(Either(Left,Right,Right))
-
diff --git a/testsuite/tests/ghc-regress/module/mod84.hs b/testsuite/tests/ghc-regress/module/mod84.hs
deleted file mode 100644
index 737cf7b14f..0000000000
--- a/testsuite/tests/ghc-regress/module/mod84.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Correct tycon import (explicit constructor list)
-module M where
-import Prelude(Either(Left,Right))
-x = (Left 'a', Right 'a')
diff --git a/testsuite/tests/ghc-regress/module/mod85.hs b/testsuite/tests/ghc-regress/module/mod85.hs
deleted file mode 100644
index f9322f7517..0000000000
--- a/testsuite/tests/ghc-regress/module/mod85.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Correct tycon import (implicit constructor list)
-module M where
-import Prelude(Either(..))
-x = (Left 'a', Right 'a')
-
diff --git a/testsuite/tests/ghc-regress/module/mod86.hs b/testsuite/tests/ghc-regress/module/mod86.hs
deleted file mode 100644
index e143c44504..0000000000
--- a/testsuite/tests/ghc-regress/module/mod86.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Correct abstract tycon import
-module M where
-import Prelude(Either)
-
diff --git a/testsuite/tests/ghc-regress/module/mod87.hs b/testsuite/tests/ghc-regress/module/mod87.hs
deleted file mode 100644
index 161ab3c031..0000000000
--- a/testsuite/tests/ghc-regress/module/mod87.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Trying to use constructors of abstractly imported type.
-module M where
-import Prelude(Either)
-x = Left 'a'
diff --git a/testsuite/tests/ghc-regress/module/mod87.stderr b/testsuite/tests/ghc-regress/module/mod87.stderr
deleted file mode 100644
index 1536679aa6..0000000000
--- a/testsuite/tests/ghc-regress/module/mod87.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod87.hs:4:5: Not in scope: data constructor `Left'
diff --git a/testsuite/tests/ghc-regress/module/mod87.stderr-hugs b/testsuite/tests/ghc-regress/module/mod87.stderr-hugs
deleted file mode 100644
index 90399b0b20..0000000000
--- a/testsuite/tests/ghc-regress/module/mod87.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod87.hs":4 - Undefined data constructor "Left"
diff --git a/testsuite/tests/ghc-regress/module/mod88.hs b/testsuite/tests/ghc-regress/module/mod88.hs
deleted file mode 100644
index aacf912915..0000000000
--- a/testsuite/tests/ghc-regress/module/mod88.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Honouring qualified imports lists
--- was: Known bug: Qualified import ignores import list
-module M where
-import qualified Prelude (map)
-x = Prelude.Left 'a'
diff --git a/testsuite/tests/ghc-regress/module/mod88.stderr b/testsuite/tests/ghc-regress/module/mod88.stderr
deleted file mode 100644
index f166c864c7..0000000000
--- a/testsuite/tests/ghc-regress/module/mod88.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod88.hs:5:5: Not in scope: data constructor `Prelude.Left'
diff --git a/testsuite/tests/ghc-regress/module/mod88.stderr-hugs b/testsuite/tests/ghc-regress/module/mod88.stderr-hugs
deleted file mode 100644
index 23c3ba90cf..0000000000
--- a/testsuite/tests/ghc-regress/module/mod88.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod88.hs":5 - Undefined data constructor "Prelude.Left"
diff --git a/testsuite/tests/ghc-regress/module/mod89.hs b/testsuite/tests/ghc-regress/module/mod89.hs
deleted file mode 100644
index 2c48d65a16..0000000000
--- a/testsuite/tests/ghc-regress/module/mod89.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Sublist for non-class/tycon
-module M where
-import Prelude(map(..))
-
diff --git a/testsuite/tests/ghc-regress/module/mod89.stderr b/testsuite/tests/ghc-regress/module/mod89.stderr
deleted file mode 100644
index ddf38b0d13..0000000000
--- a/testsuite/tests/ghc-regress/module/mod89.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod89.hs:3:19: parse error on input `('
diff --git a/testsuite/tests/ghc-regress/module/mod89.stderr-hugs b/testsuite/tests/ghc-regress/module/mod89.stderr-hugs
deleted file mode 100644
index 5fcc8ae812..0000000000
--- a/testsuite/tests/ghc-regress/module/mod89.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod89.hs":3 - Syntax error in import declaration (unexpected `(')
diff --git a/testsuite/tests/ghc-regress/module/mod9.hs b/testsuite/tests/ghc-regress/module/mod9.hs
deleted file mode 100644
index a08690679b..0000000000
--- a/testsuite/tests/ghc-regress/module/mod9.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! Exporting non-existent type transparently
-module M(T(..)) where
-x = 'a' -- dummy definition to get round a separate bug
diff --git a/testsuite/tests/ghc-regress/module/mod9.stderr b/testsuite/tests/ghc-regress/module/mod9.stderr
deleted file mode 100644
index 19bec80bb2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod9.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod9.hs:2:10: Not in scope: type constructor or class `T'
diff --git a/testsuite/tests/ghc-regress/module/mod9.stderr-hugs b/testsuite/tests/ghc-regress/module/mod9.stderr-hugs
deleted file mode 100644
index cf018ce7c8..0000000000
--- a/testsuite/tests/ghc-regress/module/mod9.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod9.hs" - Explicit export list given for non-class/datatype "T" in export list of module "M"
diff --git a/testsuite/tests/ghc-regress/module/mod90.hs b/testsuite/tests/ghc-regress/module/mod90.hs
deleted file mode 100644
index 7b44ff57e2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod90.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Sublist for non-class/tycon
-module M where
-import Prelude(Left(..))
-
diff --git a/testsuite/tests/ghc-regress/module/mod90.stderr b/testsuite/tests/ghc-regress/module/mod90.stderr
deleted file mode 100644
index a5c03e0b9a..0000000000
--- a/testsuite/tests/ghc-regress/module/mod90.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-mod90.hs:3:16:
- In module `Prelude':
- `Left' is a data constructor of `Either'
- To import it use
- `import Prelude (Either (Left))'
- or
- `import Prelude (Either (..))'
diff --git a/testsuite/tests/ghc-regress/module/mod90.stderr-hugs b/testsuite/tests/ghc-regress/module/mod90.stderr-hugs
deleted file mode 100644
index b157660b31..0000000000
--- a/testsuite/tests/ghc-regress/module/mod90.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod90.hs" - Unknown entity "Left" imported from module "Prelude"
diff --git a/testsuite/tests/ghc-regress/module/mod91.hs b/testsuite/tests/ghc-regress/module/mod91.hs
deleted file mode 100644
index 8a7387e8ad..0000000000
--- a/testsuite/tests/ghc-regress/module/mod91.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Importing Class with bogus member
-module M where
-import Prelude(Eq((==),(/=),eq))
-
diff --git a/testsuite/tests/ghc-regress/module/mod91.stderr b/testsuite/tests/ghc-regress/module/mod91.stderr
deleted file mode 100644
index 5d7d6e1df6..0000000000
--- a/testsuite/tests/ghc-regress/module/mod91.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-mod91.hs:3:16:
- Module `Prelude' does not export `Eq((==), (/=), eq)'
diff --git a/testsuite/tests/ghc-regress/module/mod91.stderr-hugs b/testsuite/tests/ghc-regress/module/mod91.stderr-hugs
deleted file mode 100644
index a5de80fc6c..0000000000
--- a/testsuite/tests/ghc-regress/module/mod91.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod91.hs" - Entity "eq" is not a member of class "Eq"
diff --git a/testsuite/tests/ghc-regress/module/mod92.hs b/testsuite/tests/ghc-regress/module/mod92.hs
deleted file mode 100644
index e9045b9335..0000000000
--- a/testsuite/tests/ghc-regress/module/mod92.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Importing Class with missing member
-module M where
-import Prelude(Eq((==)))
-
diff --git a/testsuite/tests/ghc-regress/module/mod93.hs b/testsuite/tests/ghc-regress/module/mod93.hs
deleted file mode 100644
index 9dbd82cc9d..0000000000
--- a/testsuite/tests/ghc-regress/module/mod93.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Importing Class with duplicate member
-module M where
-import Prelude(Eq((==),(/=),(==)))
-
diff --git a/testsuite/tests/ghc-regress/module/mod94.hs b/testsuite/tests/ghc-regress/module/mod94.hs
deleted file mode 100644
index d485705132..0000000000
--- a/testsuite/tests/ghc-regress/module/mod94.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Correct Class import (explicit member list)
-module M where
-import Prelude(Eq((==),(/=)))
-x = 'a' == 'b'
-y = 'a' /= 'b'
diff --git a/testsuite/tests/ghc-regress/module/mod95.hs b/testsuite/tests/ghc-regress/module/mod95.hs
deleted file mode 100644
index b1969b58a2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod95.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Correct Class import (explicit member list)
-module M where
-import Prelude(Eq(..))
-x = 'a' == 'b'
-y = 'a' /= 'b'
diff --git a/testsuite/tests/ghc-regress/module/mod96.hs b/testsuite/tests/ghc-regress/module/mod96.hs
deleted file mode 100644
index 2f20be02b8..0000000000
--- a/testsuite/tests/ghc-regress/module/mod96.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Correct abstract class import
-module M where
-import Prelude(Eq)
-
diff --git a/testsuite/tests/ghc-regress/module/mod97.hs b/testsuite/tests/ghc-regress/module/mod97.hs
deleted file mode 100644
index ee51c8b9fb..0000000000
--- a/testsuite/tests/ghc-regress/module/mod97.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Trying to use members of abstractly imported class
-module M where
-import Prelude(Eq)
-x = 'a' == 'b'
diff --git a/testsuite/tests/ghc-regress/module/mod97.stderr b/testsuite/tests/ghc-regress/module/mod97.stderr
deleted file mode 100644
index fea2306c19..0000000000
--- a/testsuite/tests/ghc-regress/module/mod97.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mod97.hs:4:9: Not in scope: `=='
diff --git a/testsuite/tests/ghc-regress/module/mod97.stderr-hugs b/testsuite/tests/ghc-regress/module/mod97.stderr-hugs
deleted file mode 100644
index 7763ec3677..0000000000
--- a/testsuite/tests/ghc-regress/module/mod97.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod97.hs":4 - Undefined variable "=="
diff --git a/testsuite/tests/ghc-regress/module/mod98.hs b/testsuite/tests/ghc-regress/module/mod98.hs
deleted file mode 100644
index e0dc3c32c2..0000000000
--- a/testsuite/tests/ghc-regress/module/mod98.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Type signature for qualified name
-module M where
-M.x :: Char
-x = 'a'
diff --git a/testsuite/tests/ghc-regress/module/mod98.stderr b/testsuite/tests/ghc-regress/module/mod98.stderr
deleted file mode 100644
index 0a6a23d124..0000000000
--- a/testsuite/tests/ghc-regress/module/mod98.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-mod98.hs:3:1:
- Invalid type signature: M.x :: Char
- Should be of form <variable> :: <type>
diff --git a/testsuite/tests/ghc-regress/module/mod98.stderr-hugs b/testsuite/tests/ghc-regress/module/mod98.stderr-hugs
deleted file mode 100644
index 7f01f8b636..0000000000
--- a/testsuite/tests/ghc-regress/module/mod98.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "mod98.hs":3 - Syntax error in input (unexpected symbol "M.x")
diff --git a/testsuite/tests/ghc-regress/module/mod99.hs b/testsuite/tests/ghc-regress/module/mod99.hs
deleted file mode 100644
index 8298cf1c69..0000000000
--- a/testsuite/tests/ghc-regress/module/mod99.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Empty export list
-module M(,) where
-
-x = 2
diff --git a/testsuite/tests/ghc-regress/numeric/Makefile b/testsuite/tests/ghc-regress/numeric/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/numeric/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/1603.hs b/testsuite/tests/ghc-regress/numeric/should_run/1603.hs
deleted file mode 100644
index 09dd05a550..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/1603.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Main where
-
-main = print (syn [-1])
-
-syn :: [Int] -> [Int]
-syn (d:ds) = rem d 0x40000000 : syn ds
-syn [] = []
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/1603.stdout b/testsuite/tests/ghc-regress/numeric/should_run/1603.stdout
deleted file mode 100644
index 2363a1ac08..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/1603.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[-1]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/3676.hs b/testsuite/tests/ghc-regress/numeric/should_run/3676.hs
deleted file mode 100644
index 242a9c5bb3..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/3676.hs
+++ /dev/null
@@ -1,32 +0,0 @@
--- test conversion of funny numbers through Rational (#3676)
-
-main = mapM_ putStrLn $ concat $
- [map (show.d2d) doubles1,
- map (show.d2f) doubles1,
- map (show.d2r) doubles1,
- map (show.f2d) floats1,
- map (show.f2f) floats1,
- map (show.f2r) floats1,
- map (show.d2d) doubles2,
- map (show.d2f) doubles2,
- map (show.d2r) doubles2,
- map (show.f2d) floats2,
- map (show.f2f) floats2,
- map (show.f2r) floats2
- ]
-
-d2d = realToFrac :: Double -> Double
-d2f = realToFrac :: Double -> Float
-d2r = realToFrac :: Double -> Rational
-f2d = realToFrac :: Float -> Double
-f2f = realToFrac :: Float -> Float
-f2r = realToFrac :: Float -> Rational
-
-doubles1 = [0/0, 1/0, -1/0, 0/(-1)] :: [Double]
-floats1 = [0/0, 1/0, -1/0, 0/(-1)] :: [Float]
-
-doubles2 = names :: [Double]
-floats2 = names :: [Float]
-
-names :: Read a => [a]
-names = map read ["NaN", "Infinity", "-Infinity", "-0"]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/3676.stdout b/testsuite/tests/ghc-regress/numeric/should_run/3676.stdout
deleted file mode 100644
index ab3234f458..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/3676.stdout
+++ /dev/null
@@ -1,48 +0,0 @@
-NaN
-Infinity
--Infinity
--0.0
-NaN
-Infinity
--Infinity
--0.0
-0 % 0
-1 % 0
-(-1) % 0
-0 % (-1)
-NaN
-Infinity
--Infinity
--0.0
-NaN
-Infinity
--Infinity
--0.0
-0 % 0
-1 % 0
-(-1) % 0
-0 % (-1)
-NaN
-Infinity
--Infinity
--0.0
-NaN
-Infinity
--Infinity
--0.0
-0 % 0
-1 % 0
-(-1) % 0
-0 % (-1)
-NaN
-Infinity
--Infinity
--0.0
-NaN
-Infinity
--Infinity
--0.0
-0 % 0
-1 % 0
-(-1) % 0
-0 % (-1)
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/4381.hs b/testsuite/tests/ghc-regress/numeric/should_run/4381.hs
deleted file mode 100644
index e55a86939e..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/4381.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Main where
-
-main = do
- print (scaleFloat 30000 1)
- print (scaleFloat (maxBound :: Int) 1)
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/4381.stdout b/testsuite/tests/ghc-regress/numeric/should_run/4381.stdout
deleted file mode 100644
index 715699eb5e..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/4381.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Infinity
-Infinity
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/4383.hs b/testsuite/tests/ghc-regress/numeric/should_run/4383.hs
deleted file mode 100644
index 06c7b265d7..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/4383.hs
+++ /dev/null
@@ -1 +0,0 @@
-main = print (0.5 ^ 1030)
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/4383.stdout b/testsuite/tests/ghc-regress/numeric/should_run/4383.stdout
deleted file mode 100644
index d6e38dc3fc..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/4383.stdout
+++ /dev/null
@@ -1 +0,0 @@
-8.691694759794e-311
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/Makefile b/testsuite/tests/ghc-regress/numeric/should_run/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/all.T b/testsuite/tests/ghc-regress/numeric/should_run/all.T
deleted file mode 100644
index 0916af1d7d..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/all.T
+++ /dev/null
@@ -1,50 +0,0 @@
-# Args to compile_and_run are:
-# extra compile flags
-# extra run flags
-# expected process return value, if not zero
-
-test('arith001', normal, compile_and_run, [''])
-test('arith002', normal, compile_and_run, [''])
-test('arith003', normal, compile_and_run, [''])
-test('arith004', normal, compile_and_run, [''])
-test('arith005', normal, compile_and_run, [''])
-test('arith006', normal, compile_and_run, [''])
-test('arith007', normal, compile_and_run, [''])
-
-# On i386, we need -msse2 to get reliable floating point results
-ways = normal
-opts = ''
-if config.platform.startswith('i386-'):
- if config.compiler_type == 'ghc' and \
- version_ge(config.compiler_version, '6.13'):
- opts = '-msse2'
- else:
- ways = expect_fail_for(['optasm','threaded2','hpc','dyn','profasm'])
-
-test('arith008', ways, compile_and_run, [opts])
-
-test('arith009', normal, compile_and_run, [''])
-test('arith010', normal, compile_and_run, [''])
-test('arith011', normal, compile_and_run, [''])
-
-test('arith012', ways, compile_and_run, [opts])
-
-test('arith013', compose(normal,only_compiler_types(['ghc'])), compile_and_run, [''])
-test('arith014', normal, compile_and_run, [''])
-test('arith015', normal, compile_and_run, [''])
-test('numrun009', normal, compile_and_run, [''])
-test('numrun010', normal, compile_and_run, [''])
-test('numrun011', normal, compile_and_run, [''])
-test('numrun012', normal, compile_and_run, [''])
-test('numrun013', normal, compile_and_run, [''])
-test('numrun014', normal, compile_and_run, [''])
-test('arith016', compose(normal,only_compiler_types(['ghc'])), compile_and_run, [''])
-test('arith017', normal, compile_and_run, [''])
-test('arith018', normal, compile_and_run, [''])
-test('arith019', normal, compile_and_run, [''])
-test('expfloat', normal, compile_and_run, [''])
-
-test('1603', skip, compile_and_run, [''])
-test('3676', expect_broken(3676), compile_and_run, [''])
-test('4381', normal, compile_and_run, [''])
-test('4383', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith001.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith001.hs
deleted file mode 100644
index ed9cd5febc..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith001.hs
+++ /dev/null
@@ -1,28 +0,0 @@
--- !!! conversions: Double <=> Rational/Integer things
---
-import Data.Ratio
-
-main = putStr (show r42 ++ "\n" ++
- show nu42 ++ ", " ++
- show de42 ++ "\n" ++
- show nu42d ++ ", " ++
- show de42d ++ "\n" ++
- show s2 ++ ", " ++
- show e2 ++ "\n" ++
- show s ++ ", " ++
- show e ++ "\n" )
- where
- d42 :: Double
- r42 :: Rational
- nu42, de42 :: Integer
- nu42d, de42d :: Double
-
- d42 = 42
- r42 = toRational d42
- nu42 = numerator r42
- de42 = denominator r42
- nu42d= fromInteger nu42
- de42d= fromInteger de42
-
- (s,e)= decodeFloat (nu42d / de42d )
- (s2,e2) = decodeFloat d42
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith001.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith001.stdout
deleted file mode 100644
index 741c4809ef..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith001.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-42 % 1
-42, 1
-42.0, 1.0
-5910974510923776, -47
-5910974510923776, -47
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith001.stdout-ghc b/testsuite/tests/ghc-regress/numeric/should_run/arith001.stdout-ghc
deleted file mode 100644
index 741c4809ef..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith001.stdout-ghc
+++ /dev/null
@@ -1,5 +0,0 @@
-42 % 1
-42, 1
-42.0, 1.0
-5910974510923776, -47
-5910974510923776, -47
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith002.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith002.hs
deleted file mode 100644
index b7f5acf136..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith002.hs
+++ /dev/null
@@ -1,52 +0,0 @@
--- !!! basic Rational operations
---
-import Data.Ratio
-
-main
- = putStr
- (-- Ratio Ints
- show [i0a, i0b, i0c, i2a, i2b, im2a, im2b, i_pi, i_misc]
- ++ "\n"
- -- the Ints
- ++ show ((map numerator [i0a, i0b, i0c, i2a, i2b, im2a, im2b, i_pi, i_misc])
- ++(map denominator [i0a, i0b, i0c, i2a, i2b, im2a, im2b, i_pi, i_misc]))
- ++ "\n"
- -- Booleans
--- ++ show []
--- ++ "\n"
-
- -- Rationals (Ratio Integers)
- ++ show [r0a, r0b, r0c, r2a, r2b, rm2a, rm2b, r_pi, r_misc]
- ++ "\n"
- -- the Integers
- ++ show ((map numerator [r0a, r0b, r0c, r2a, r2b, rm2a, rm2b, r_pi, r_misc])
- ++(map denominator [r0a, r0b, r0c, r2a, r2b, rm2a, rm2b, r_pi, r_misc]))
- ++ "\n"
- -- Booleans
--- ++ show []
--- ++ "\n"
- )
- where
- i0a, i0b, i0c, i2a, i2b, im2a, im2b, i_pi, i_misc :: Ratio Int
-
- i0a = 0 % 1
- i0b = (-0) % 1
- i0c = 0 % (-1)
- i2a = 4 % 2
- i2b = (-4) % (-2)
- im2a = (-4) % 2
- im2b = 4 % (-2)
- i_pi = 22 % 7
- i_misc = 2 % 10000
-
- r0a, r0b, r0c, r2a, r2b, rm2a, rm2b, r_pi, r_misc :: Rational
-
- r0a = 0 % 1
- r0b = (-0) % 1
- r0c = 0 % (-1)
- r2a = 4 % 2
- r2b = (-4) % (-2)
- rm2a = (-4) % 2
- rm2b = 4 % (-2)
- r_pi = 22 % 7
- r_misc = 2 % 10000
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith002.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith002.stdout
deleted file mode 100644
index ab717549fd..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith002.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-[0 % 1,0 % 1,0 % 1,2 % 1,2 % 1,(-2) % 1,(-2) % 1,22 % 7,1 % 5000]
-[0,0,0,2,2,-2,-2,22,1,1,1,1,1,1,1,1,7,5000]
-[0 % 1,0 % 1,0 % 1,2 % 1,2 % 1,(-2) % 1,(-2) % 1,22 % 7,1 % 5000]
-[0,0,0,2,2,-2,-2,22,1,1,1,1,1,1,1,1,7,5000]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith002.stdout-ghc b/testsuite/tests/ghc-regress/numeric/should_run/arith002.stdout-ghc
deleted file mode 100644
index ab717549fd..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith002.stdout-ghc
+++ /dev/null
@@ -1,4 +0,0 @@
-[0 % 1,0 % 1,0 % 1,2 % 1,2 % 1,(-2) % 1,(-2) % 1,22 % 7,1 % 5000]
-[0,0,0,2,2,-2,-2,22,1,1,1,1,1,1,1,1,7,5000]
-[0 % 1,0 % 1,0 % 1,2 % 1,2 % 1,(-2) % 1,(-2) % 1,22 % 7,1 % 5000]
-[0,0,0,2,2,-2,-2,22,1,1,1,1,1,1,1,1,7,5000]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith003.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith003.hs
deleted file mode 100644
index 46f008120a..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith003.hs
+++ /dev/null
@@ -1,84 +0,0 @@
--- $Id: arith003.hs,v 1.2 2002/01/25 13:40:39 simonmar Exp $
---
--- !!! test Int/Integer arithmetic operations from the Prelude.
---
-
-main
- = putStr
- (
- showit (do_ops int_ops) ++
- showit (do_ops integer_ops)
- )
-
-showit :: Integral a => [(String, a, a, a)] -> String
-showit stuff = concat
- [ str ++ " " ++ show l ++ " " ++ show r ++ " = " ++ show result ++ "\n"
- | (str, l, r, result) <- stuff
- ]
-
-do_ops :: Integral a => [((a -> a -> a), String, [(a,a)])]
- -> [(String, a, a, a)]
-do_ops ops = [ (str, l, r, l `op` r) | (op,str,args) <- ops, (l,r) <- args ]
-
-small_operands, non_min_operands, operands, non_max_operands
- :: Integral a => [a]
-small_operands = [ 0, 1, -1, 2, -2 ]
-operands = small_operands ++ [ fromIntegral minInt, fromIntegral maxInt ]
-non_min_operands = small_operands ++ [ fromIntegral maxInt ]
-non_max_operands = small_operands ++ [ fromIntegral minInt ]
-
-large_operands :: [ Integer ]
-large_operands = operands ++
- [ fromIntegral minInt - 1,
- fromIntegral maxInt + 1,
- fromIntegral minInt * 2,
- fromIntegral maxInt * 2,
- fromIntegral minInt ^ 2,
- fromIntegral maxInt ^ 2
- ]
-
-integer_ops :: [((Integer -> Integer -> Integer), String, [(Integer,Integer)])]
-integer_ops = [
- ((+), "(+)", both_large),
- ((-), "(-)", both_large),
- (div, "div", large_non_zero_r),
- (mod, "mod", large_non_zero_r),
- (quot, "quot", large_non_zero_r),
- (rem, "rem", large_non_zero_r),
- (gcd, "gcd", large_either_non_zero),
- (lcm, "lcm", large_either_non_zero)
- ]
-
-int_ops :: [((Int -> Int -> Int), String, [(Int,Int)])]
-int_ops = [
- ((+), "(+)", both_small),
- ((-), "(-)", both_small),
- ((^), "(^)", small_non_neg_r),
- (div, "div", non_min_l_or_zero_r),
- (mod, "mod", non_min_l_or_zero_r),
- (quot, "quot", non_min_l_or_zero_r),
- (rem, "rem", non_min_l_or_zero_r),
- (gcd, "gcd", non_min_either_non_zero),
- (lcm, "lcm", non_max_r_either_non_zero)
- ]
-
--- NOTE: when abs(minInt) is undefined (it is in GHC, because
--- abs(minInt) would be greater than maxInt), then gcd on Ints is also
--- undefined when either operand is minInt.
-
-both_small, non_zero_r, non_min_either_non_zero, non_min_l_or_zero_r,
- non_max_r_either_non_zero, small_non_neg_r
- :: Integral a => [(a,a)]
-
-both_small = [ (l,r) | l <- operands, r <- operands ]
-both_large = [ (l,r) | l <- large_operands, r <- large_operands ]
-large_non_zero_r = [ (l,r) | l <- operands, r <- large_operands, r /= 0 ]
-non_zero_r = [ (l,r) | l <- operands, r <- operands, r /= 0 ]
-non_min_either_non_zero = [ (l,r) | l <- non_min_operands, r <- non_min_operands, l /= 0 || r /= 0 ]
-large_either_non_zero = [ (l,r) | l <- operands, r <- operands, l /= 0 || r /= 0 ]
-small_non_neg_r = [ (l,r) | l <- operands, r <- small_operands, r >= 0 ]
-non_min_l_or_zero_r = [ (l,r) | l <- non_min_operands, r <- operands, r /= 0 ]
-non_max_r_either_non_zero = [ (l,r) | l <- operands, r <- non_max_operands, l /= 0 || r /= 0 ]
-
-minInt = minBound :: Int
-maxInt = maxBound :: Int
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout
deleted file mode 100644
index a147c3003c..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout
+++ /dev/null
@@ -1,1109 +0,0 @@
-(+) 0 0 = 0
-(+) 0 1 = 1
-(+) 0 -1 = -1
-(+) 0 2 = 2
-(+) 0 -2 = -2
-(+) 0 -2147483648 = -2147483648
-(+) 0 2147483647 = 2147483647
-(+) 1 0 = 1
-(+) 1 1 = 2
-(+) 1 -1 = 0
-(+) 1 2 = 3
-(+) 1 -2 = -1
-(+) 1 -2147483648 = -2147483647
-(+) 1 2147483647 = -2147483648
-(+) -1 0 = -1
-(+) -1 1 = 0
-(+) -1 -1 = -2
-(+) -1 2 = 1
-(+) -1 -2 = -3
-(+) -1 -2147483648 = 2147483647
-(+) -1 2147483647 = 2147483646
-(+) 2 0 = 2
-(+) 2 1 = 3
-(+) 2 -1 = 1
-(+) 2 2 = 4
-(+) 2 -2 = 0
-(+) 2 -2147483648 = -2147483646
-(+) 2 2147483647 = -2147483647
-(+) -2 0 = -2
-(+) -2 1 = -1
-(+) -2 -1 = -3
-(+) -2 2 = 0
-(+) -2 -2 = -4
-(+) -2 -2147483648 = 2147483646
-(+) -2 2147483647 = 2147483645
-(+) -2147483648 0 = -2147483648
-(+) -2147483648 1 = -2147483647
-(+) -2147483648 -1 = 2147483647
-(+) -2147483648 2 = -2147483646
-(+) -2147483648 -2 = 2147483646
-(+) -2147483648 -2147483648 = 0
-(+) -2147483648 2147483647 = -1
-(+) 2147483647 0 = 2147483647
-(+) 2147483647 1 = -2147483648
-(+) 2147483647 -1 = 2147483646
-(+) 2147483647 2 = -2147483647
-(+) 2147483647 -2 = 2147483645
-(+) 2147483647 -2147483648 = -1
-(+) 2147483647 2147483647 = -2
-(-) 0 0 = 0
-(-) 0 1 = -1
-(-) 0 -1 = 1
-(-) 0 2 = -2
-(-) 0 -2 = 2
-(-) 0 -2147483648 = -2147483648
-(-) 0 2147483647 = -2147483647
-(-) 1 0 = 1
-(-) 1 1 = 0
-(-) 1 -1 = 2
-(-) 1 2 = -1
-(-) 1 -2 = 3
-(-) 1 -2147483648 = -2147483647
-(-) 1 2147483647 = -2147483646
-(-) -1 0 = -1
-(-) -1 1 = -2
-(-) -1 -1 = 0
-(-) -1 2 = -3
-(-) -1 -2 = 1
-(-) -1 -2147483648 = 2147483647
-(-) -1 2147483647 = -2147483648
-(-) 2 0 = 2
-(-) 2 1 = 1
-(-) 2 -1 = 3
-(-) 2 2 = 0
-(-) 2 -2 = 4
-(-) 2 -2147483648 = -2147483646
-(-) 2 2147483647 = -2147483645
-(-) -2 0 = -2
-(-) -2 1 = -3
-(-) -2 -1 = -1
-(-) -2 2 = -4
-(-) -2 -2 = 0
-(-) -2 -2147483648 = 2147483646
-(-) -2 2147483647 = 2147483647
-(-) -2147483648 0 = -2147483648
-(-) -2147483648 1 = 2147483647
-(-) -2147483648 -1 = -2147483647
-(-) -2147483648 2 = 2147483646
-(-) -2147483648 -2 = -2147483646
-(-) -2147483648 -2147483648 = 0
-(-) -2147483648 2147483647 = 1
-(-) 2147483647 0 = 2147483647
-(-) 2147483647 1 = 2147483646
-(-) 2147483647 -1 = -2147483648
-(-) 2147483647 2 = 2147483645
-(-) 2147483647 -2 = -2147483647
-(-) 2147483647 -2147483648 = -1
-(-) 2147483647 2147483647 = 0
-(^) 0 0 = 1
-(^) 0 1 = 0
-(^) 0 2 = 0
-(^) 1 0 = 1
-(^) 1 1 = 1
-(^) 1 2 = 1
-(^) -1 0 = 1
-(^) -1 1 = -1
-(^) -1 2 = 1
-(^) 2 0 = 1
-(^) 2 1 = 2
-(^) 2 2 = 4
-(^) -2 0 = 1
-(^) -2 1 = -2
-(^) -2 2 = 4
-(^) -2147483648 0 = 1
-(^) -2147483648 1 = -2147483648
-(^) -2147483648 2 = 0
-(^) 2147483647 0 = 1
-(^) 2147483647 1 = 2147483647
-(^) 2147483647 2 = 1
-div 0 1 = 0
-div 0 -1 = 0
-div 0 2 = 0
-div 0 -2 = 0
-div 0 -2147483648 = 0
-div 0 2147483647 = 0
-div 1 1 = 1
-div 1 -1 = -1
-div 1 2 = 0
-div 1 -2 = -1
-div 1 -2147483648 = -1
-div 1 2147483647 = 0
-div -1 1 = -1
-div -1 -1 = 1
-div -1 2 = -1
-div -1 -2 = 0
-div -1 -2147483648 = 0
-div -1 2147483647 = -1
-div 2 1 = 2
-div 2 -1 = -2
-div 2 2 = 1
-div 2 -2 = -1
-div 2 -2147483648 = -1
-div 2 2147483647 = 0
-div -2 1 = -2
-div -2 -1 = 2
-div -2 2 = -1
-div -2 -2 = 1
-div -2 -2147483648 = 0
-div -2 2147483647 = -1
-div 2147483647 1 = 2147483647
-div 2147483647 -1 = -2147483647
-div 2147483647 2 = 1073741823
-div 2147483647 -2 = -1073741824
-div 2147483647 -2147483648 = -1
-div 2147483647 2147483647 = 1
-mod 0 1 = 0
-mod 0 -1 = 0
-mod 0 2 = 0
-mod 0 -2 = 0
-mod 0 -2147483648 = 0
-mod 0 2147483647 = 0
-mod 1 1 = 0
-mod 1 -1 = 0
-mod 1 2 = 1
-mod 1 -2 = -1
-mod 1 -2147483648 = -2147483647
-mod 1 2147483647 = 1
-mod -1 1 = 0
-mod -1 -1 = 0
-mod -1 2 = 1
-mod -1 -2 = -1
-mod -1 -2147483648 = -1
-mod -1 2147483647 = 2147483646
-mod 2 1 = 0
-mod 2 -1 = 0
-mod 2 2 = 0
-mod 2 -2 = 0
-mod 2 -2147483648 = -2147483646
-mod 2 2147483647 = 2
-mod -2 1 = 0
-mod -2 -1 = 0
-mod -2 2 = 0
-mod -2 -2 = 0
-mod -2 -2147483648 = -2
-mod -2 2147483647 = 2147483645
-mod 2147483647 1 = 0
-mod 2147483647 -1 = 0
-mod 2147483647 2 = 1
-mod 2147483647 -2 = -1
-mod 2147483647 -2147483648 = -1
-mod 2147483647 2147483647 = 0
-quot 0 1 = 0
-quot 0 -1 = 0
-quot 0 2 = 0
-quot 0 -2 = 0
-quot 0 -2147483648 = 0
-quot 0 2147483647 = 0
-quot 1 1 = 1
-quot 1 -1 = -1
-quot 1 2 = 0
-quot 1 -2 = 0
-quot 1 -2147483648 = 0
-quot 1 2147483647 = 0
-quot -1 1 = -1
-quot -1 -1 = 1
-quot -1 2 = 0
-quot -1 -2 = 0
-quot -1 -2147483648 = 0
-quot -1 2147483647 = 0
-quot 2 1 = 2
-quot 2 -1 = -2
-quot 2 2 = 1
-quot 2 -2 = -1
-quot 2 -2147483648 = 0
-quot 2 2147483647 = 0
-quot -2 1 = -2
-quot -2 -1 = 2
-quot -2 2 = -1
-quot -2 -2 = 1
-quot -2 -2147483648 = 0
-quot -2 2147483647 = 0
-quot 2147483647 1 = 2147483647
-quot 2147483647 -1 = -2147483647
-quot 2147483647 2 = 1073741823
-quot 2147483647 -2 = -1073741823
-quot 2147483647 -2147483648 = 0
-quot 2147483647 2147483647 = 1
-rem 0 1 = 0
-rem 0 -1 = 0
-rem 0 2 = 0
-rem 0 -2 = 0
-rem 0 -2147483648 = 0
-rem 0 2147483647 = 0
-rem 1 1 = 0
-rem 1 -1 = 0
-rem 1 2 = 1
-rem 1 -2 = 1
-rem 1 -2147483648 = 1
-rem 1 2147483647 = 1
-rem -1 1 = 0
-rem -1 -1 = 0
-rem -1 2 = -1
-rem -1 -2 = -1
-rem -1 -2147483648 = -1
-rem -1 2147483647 = -1
-rem 2 1 = 0
-rem 2 -1 = 0
-rem 2 2 = 0
-rem 2 -2 = 0
-rem 2 -2147483648 = 2
-rem 2 2147483647 = 2
-rem -2 1 = 0
-rem -2 -1 = 0
-rem -2 2 = 0
-rem -2 -2 = 0
-rem -2 -2147483648 = -2
-rem -2 2147483647 = -2
-rem 2147483647 1 = 0
-rem 2147483647 -1 = 0
-rem 2147483647 2 = 1
-rem 2147483647 -2 = 1
-rem 2147483647 -2147483648 = 2147483647
-rem 2147483647 2147483647 = 0
-gcd 0 1 = 1
-gcd 0 -1 = 1
-gcd 0 2 = 2
-gcd 0 -2 = 2
-gcd 0 2147483647 = 2147483647
-gcd 1 0 = 1
-gcd 1 1 = 1
-gcd 1 -1 = 1
-gcd 1 2 = 1
-gcd 1 -2 = 1
-gcd 1 2147483647 = 1
-gcd -1 0 = 1
-gcd -1 1 = 1
-gcd -1 -1 = 1
-gcd -1 2 = 1
-gcd -1 -2 = 1
-gcd -1 2147483647 = 1
-gcd 2 0 = 2
-gcd 2 1 = 1
-gcd 2 -1 = 1
-gcd 2 2 = 2
-gcd 2 -2 = 2
-gcd 2 2147483647 = 1
-gcd -2 0 = 2
-gcd -2 1 = 1
-gcd -2 -1 = 1
-gcd -2 2 = 2
-gcd -2 -2 = 2
-gcd -2 2147483647 = 1
-gcd 2147483647 0 = 2147483647
-gcd 2147483647 1 = 1
-gcd 2147483647 -1 = 1
-gcd 2147483647 2 = 1
-gcd 2147483647 -2 = 1
-gcd 2147483647 2147483647 = 2147483647
-lcm 0 1 = 0
-lcm 0 -1 = 0
-lcm 0 2 = 0
-lcm 0 -2 = 0
-lcm 0 -2147483648 = 0
-lcm 1 0 = 0
-lcm 1 1 = 1
-lcm 1 -1 = 1
-lcm 1 2 = 2
-lcm 1 -2 = 2
-lcm 1 -2147483648 = -2147483648
-lcm -1 0 = 0
-lcm -1 1 = 1
-lcm -1 -1 = 1
-lcm -1 2 = 2
-lcm -1 -2 = 2
-lcm -1 -2147483648 = -2147483648
-lcm 2 0 = 0
-lcm 2 1 = 2
-lcm 2 -1 = 2
-lcm 2 2 = 2
-lcm 2 -2 = 2
-lcm 2 -2147483648 = -2147483648
-lcm -2 0 = 0
-lcm -2 1 = 2
-lcm -2 -1 = 2
-lcm -2 2 = 2
-lcm -2 -2 = 2
-lcm -2 -2147483648 = -2147483648
-lcm -2147483648 0 = 0
-lcm -2147483648 1 = -2147483648
-lcm -2147483648 -1 = -2147483648
-lcm -2147483648 2 = -2147483648
-lcm -2147483648 -2 = -2147483648
-lcm -2147483648 -2147483648 = -2147483648
-lcm 2147483647 0 = 0
-lcm 2147483647 1 = 2147483647
-lcm 2147483647 -1 = 2147483647
-lcm 2147483647 2 = 2
-lcm 2147483647 -2 = 2
-lcm 2147483647 -2147483648 = -2147483648
-(+) 0 0 = 0
-(+) 0 1 = 1
-(+) 0 -1 = -1
-(+) 0 2 = 2
-(+) 0 -2 = -2
-(+) 0 -2147483648 = -2147483648
-(+) 0 2147483647 = 2147483647
-(+) 0 -2147483649 = -2147483649
-(+) 0 2147483648 = 2147483648
-(+) 0 -4294967296 = -4294967296
-(+) 0 4294967294 = 4294967294
-(+) 0 4611686018427387904 = 4611686018427387904
-(+) 0 4611686014132420609 = 4611686014132420609
-(+) 1 0 = 1
-(+) 1 1 = 2
-(+) 1 -1 = 0
-(+) 1 2 = 3
-(+) 1 -2 = -1
-(+) 1 -2147483648 = -2147483647
-(+) 1 2147483647 = 2147483648
-(+) 1 -2147483649 = -2147483648
-(+) 1 2147483648 = 2147483649
-(+) 1 -4294967296 = -4294967295
-(+) 1 4294967294 = 4294967295
-(+) 1 4611686018427387904 = 4611686018427387905
-(+) 1 4611686014132420609 = 4611686014132420610
-(+) -1 0 = -1
-(+) -1 1 = 0
-(+) -1 -1 = -2
-(+) -1 2 = 1
-(+) -1 -2 = -3
-(+) -1 -2147483648 = -2147483649
-(+) -1 2147483647 = 2147483646
-(+) -1 -2147483649 = -2147483650
-(+) -1 2147483648 = 2147483647
-(+) -1 -4294967296 = -4294967297
-(+) -1 4294967294 = 4294967293
-(+) -1 4611686018427387904 = 4611686018427387903
-(+) -1 4611686014132420609 = 4611686014132420608
-(+) 2 0 = 2
-(+) 2 1 = 3
-(+) 2 -1 = 1
-(+) 2 2 = 4
-(+) 2 -2 = 0
-(+) 2 -2147483648 = -2147483646
-(+) 2 2147483647 = 2147483649
-(+) 2 -2147483649 = -2147483647
-(+) 2 2147483648 = 2147483650
-(+) 2 -4294967296 = -4294967294
-(+) 2 4294967294 = 4294967296
-(+) 2 4611686018427387904 = 4611686018427387906
-(+) 2 4611686014132420609 = 4611686014132420611
-(+) -2 0 = -2
-(+) -2 1 = -1
-(+) -2 -1 = -3
-(+) -2 2 = 0
-(+) -2 -2 = -4
-(+) -2 -2147483648 = -2147483650
-(+) -2 2147483647 = 2147483645
-(+) -2 -2147483649 = -2147483651
-(+) -2 2147483648 = 2147483646
-(+) -2 -4294967296 = -4294967298
-(+) -2 4294967294 = 4294967292
-(+) -2 4611686018427387904 = 4611686018427387902
-(+) -2 4611686014132420609 = 4611686014132420607
-(+) -2147483648 0 = -2147483648
-(+) -2147483648 1 = -2147483647
-(+) -2147483648 -1 = -2147483649
-(+) -2147483648 2 = -2147483646
-(+) -2147483648 -2 = -2147483650
-(+) -2147483648 -2147483648 = -4294967296
-(+) -2147483648 2147483647 = -1
-(+) -2147483648 -2147483649 = -4294967297
-(+) -2147483648 2147483648 = 0
-(+) -2147483648 -4294967296 = -6442450944
-(+) -2147483648 4294967294 = 2147483646
-(+) -2147483648 4611686018427387904 = 4611686016279904256
-(+) -2147483648 4611686014132420609 = 4611686011984936961
-(+) 2147483647 0 = 2147483647
-(+) 2147483647 1 = 2147483648
-(+) 2147483647 -1 = 2147483646
-(+) 2147483647 2 = 2147483649
-(+) 2147483647 -2 = 2147483645
-(+) 2147483647 -2147483648 = -1
-(+) 2147483647 2147483647 = 4294967294
-(+) 2147483647 -2147483649 = -2
-(+) 2147483647 2147483648 = 4294967295
-(+) 2147483647 -4294967296 = -2147483649
-(+) 2147483647 4294967294 = 6442450941
-(+) 2147483647 4611686018427387904 = 4611686020574871551
-(+) 2147483647 4611686014132420609 = 4611686016279904256
-(+) -2147483649 0 = -2147483649
-(+) -2147483649 1 = -2147483648
-(+) -2147483649 -1 = -2147483650
-(+) -2147483649 2 = -2147483647
-(+) -2147483649 -2 = -2147483651
-(+) -2147483649 -2147483648 = -4294967297
-(+) -2147483649 2147483647 = -2
-(+) -2147483649 -2147483649 = -4294967298
-(+) -2147483649 2147483648 = -1
-(+) -2147483649 -4294967296 = -6442450945
-(+) -2147483649 4294967294 = 2147483645
-(+) -2147483649 4611686018427387904 = 4611686016279904255
-(+) -2147483649 4611686014132420609 = 4611686011984936960
-(+) 2147483648 0 = 2147483648
-(+) 2147483648 1 = 2147483649
-(+) 2147483648 -1 = 2147483647
-(+) 2147483648 2 = 2147483650
-(+) 2147483648 -2 = 2147483646
-(+) 2147483648 -2147483648 = 0
-(+) 2147483648 2147483647 = 4294967295
-(+) 2147483648 -2147483649 = -1
-(+) 2147483648 2147483648 = 4294967296
-(+) 2147483648 -4294967296 = -2147483648
-(+) 2147483648 4294967294 = 6442450942
-(+) 2147483648 4611686018427387904 = 4611686020574871552
-(+) 2147483648 4611686014132420609 = 4611686016279904257
-(+) -4294967296 0 = -4294967296
-(+) -4294967296 1 = -4294967295
-(+) -4294967296 -1 = -4294967297
-(+) -4294967296 2 = -4294967294
-(+) -4294967296 -2 = -4294967298
-(+) -4294967296 -2147483648 = -6442450944
-(+) -4294967296 2147483647 = -2147483649
-(+) -4294967296 -2147483649 = -6442450945
-(+) -4294967296 2147483648 = -2147483648
-(+) -4294967296 -4294967296 = -8589934592
-(+) -4294967296 4294967294 = -2
-(+) -4294967296 4611686018427387904 = 4611686014132420608
-(+) -4294967296 4611686014132420609 = 4611686009837453313
-(+) 4294967294 0 = 4294967294
-(+) 4294967294 1 = 4294967295
-(+) 4294967294 -1 = 4294967293
-(+) 4294967294 2 = 4294967296
-(+) 4294967294 -2 = 4294967292
-(+) 4294967294 -2147483648 = 2147483646
-(+) 4294967294 2147483647 = 6442450941
-(+) 4294967294 -2147483649 = 2147483645
-(+) 4294967294 2147483648 = 6442450942
-(+) 4294967294 -4294967296 = -2
-(+) 4294967294 4294967294 = 8589934588
-(+) 4294967294 4611686018427387904 = 4611686022722355198
-(+) 4294967294 4611686014132420609 = 4611686018427387903
-(+) 4611686018427387904 0 = 4611686018427387904
-(+) 4611686018427387904 1 = 4611686018427387905
-(+) 4611686018427387904 -1 = 4611686018427387903
-(+) 4611686018427387904 2 = 4611686018427387906
-(+) 4611686018427387904 -2 = 4611686018427387902
-(+) 4611686018427387904 -2147483648 = 4611686016279904256
-(+) 4611686018427387904 2147483647 = 4611686020574871551
-(+) 4611686018427387904 -2147483649 = 4611686016279904255
-(+) 4611686018427387904 2147483648 = 4611686020574871552
-(+) 4611686018427387904 -4294967296 = 4611686014132420608
-(+) 4611686018427387904 4294967294 = 4611686022722355198
-(+) 4611686018427387904 4611686018427387904 = 9223372036854775808
-(+) 4611686018427387904 4611686014132420609 = 9223372032559808513
-(+) 4611686014132420609 0 = 4611686014132420609
-(+) 4611686014132420609 1 = 4611686014132420610
-(+) 4611686014132420609 -1 = 4611686014132420608
-(+) 4611686014132420609 2 = 4611686014132420611
-(+) 4611686014132420609 -2 = 4611686014132420607
-(+) 4611686014132420609 -2147483648 = 4611686011984936961
-(+) 4611686014132420609 2147483647 = 4611686016279904256
-(+) 4611686014132420609 -2147483649 = 4611686011984936960
-(+) 4611686014132420609 2147483648 = 4611686016279904257
-(+) 4611686014132420609 -4294967296 = 4611686009837453313
-(+) 4611686014132420609 4294967294 = 4611686018427387903
-(+) 4611686014132420609 4611686018427387904 = 9223372032559808513
-(+) 4611686014132420609 4611686014132420609 = 9223372028264841218
-(-) 0 0 = 0
-(-) 0 1 = -1
-(-) 0 -1 = 1
-(-) 0 2 = -2
-(-) 0 -2 = 2
-(-) 0 -2147483648 = 2147483648
-(-) 0 2147483647 = -2147483647
-(-) 0 -2147483649 = 2147483649
-(-) 0 2147483648 = -2147483648
-(-) 0 -4294967296 = 4294967296
-(-) 0 4294967294 = -4294967294
-(-) 0 4611686018427387904 = -4611686018427387904
-(-) 0 4611686014132420609 = -4611686014132420609
-(-) 1 0 = 1
-(-) 1 1 = 0
-(-) 1 -1 = 2
-(-) 1 2 = -1
-(-) 1 -2 = 3
-(-) 1 -2147483648 = 2147483649
-(-) 1 2147483647 = -2147483646
-(-) 1 -2147483649 = 2147483650
-(-) 1 2147483648 = -2147483647
-(-) 1 -4294967296 = 4294967297
-(-) 1 4294967294 = -4294967293
-(-) 1 4611686018427387904 = -4611686018427387903
-(-) 1 4611686014132420609 = -4611686014132420608
-(-) -1 0 = -1
-(-) -1 1 = -2
-(-) -1 -1 = 0
-(-) -1 2 = -3
-(-) -1 -2 = 1
-(-) -1 -2147483648 = 2147483647
-(-) -1 2147483647 = -2147483648
-(-) -1 -2147483649 = 2147483648
-(-) -1 2147483648 = -2147483649
-(-) -1 -4294967296 = 4294967295
-(-) -1 4294967294 = -4294967295
-(-) -1 4611686018427387904 = -4611686018427387905
-(-) -1 4611686014132420609 = -4611686014132420610
-(-) 2 0 = 2
-(-) 2 1 = 1
-(-) 2 -1 = 3
-(-) 2 2 = 0
-(-) 2 -2 = 4
-(-) 2 -2147483648 = 2147483650
-(-) 2 2147483647 = -2147483645
-(-) 2 -2147483649 = 2147483651
-(-) 2 2147483648 = -2147483646
-(-) 2 -4294967296 = 4294967298
-(-) 2 4294967294 = -4294967292
-(-) 2 4611686018427387904 = -4611686018427387902
-(-) 2 4611686014132420609 = -4611686014132420607
-(-) -2 0 = -2
-(-) -2 1 = -3
-(-) -2 -1 = -1
-(-) -2 2 = -4
-(-) -2 -2 = 0
-(-) -2 -2147483648 = 2147483646
-(-) -2 2147483647 = -2147483649
-(-) -2 -2147483649 = 2147483647
-(-) -2 2147483648 = -2147483650
-(-) -2 -4294967296 = 4294967294
-(-) -2 4294967294 = -4294967296
-(-) -2 4611686018427387904 = -4611686018427387906
-(-) -2 4611686014132420609 = -4611686014132420611
-(-) -2147483648 0 = -2147483648
-(-) -2147483648 1 = -2147483649
-(-) -2147483648 -1 = -2147483647
-(-) -2147483648 2 = -2147483650
-(-) -2147483648 -2 = -2147483646
-(-) -2147483648 -2147483648 = 0
-(-) -2147483648 2147483647 = -4294967295
-(-) -2147483648 -2147483649 = 1
-(-) -2147483648 2147483648 = -4294967296
-(-) -2147483648 -4294967296 = 2147483648
-(-) -2147483648 4294967294 = -6442450942
-(-) -2147483648 4611686018427387904 = -4611686020574871552
-(-) -2147483648 4611686014132420609 = -4611686016279904257
-(-) 2147483647 0 = 2147483647
-(-) 2147483647 1 = 2147483646
-(-) 2147483647 -1 = 2147483648
-(-) 2147483647 2 = 2147483645
-(-) 2147483647 -2 = 2147483649
-(-) 2147483647 -2147483648 = 4294967295
-(-) 2147483647 2147483647 = 0
-(-) 2147483647 -2147483649 = 4294967296
-(-) 2147483647 2147483648 = -1
-(-) 2147483647 -4294967296 = 6442450943
-(-) 2147483647 4294967294 = -2147483647
-(-) 2147483647 4611686018427387904 = -4611686016279904257
-(-) 2147483647 4611686014132420609 = -4611686011984936962
-(-) -2147483649 0 = -2147483649
-(-) -2147483649 1 = -2147483650
-(-) -2147483649 -1 = -2147483648
-(-) -2147483649 2 = -2147483651
-(-) -2147483649 -2 = -2147483647
-(-) -2147483649 -2147483648 = -1
-(-) -2147483649 2147483647 = -4294967296
-(-) -2147483649 -2147483649 = 0
-(-) -2147483649 2147483648 = -4294967297
-(-) -2147483649 -4294967296 = 2147483647
-(-) -2147483649 4294967294 = -6442450943
-(-) -2147483649 4611686018427387904 = -4611686020574871553
-(-) -2147483649 4611686014132420609 = -4611686016279904258
-(-) 2147483648 0 = 2147483648
-(-) 2147483648 1 = 2147483647
-(-) 2147483648 -1 = 2147483649
-(-) 2147483648 2 = 2147483646
-(-) 2147483648 -2 = 2147483650
-(-) 2147483648 -2147483648 = 4294967296
-(-) 2147483648 2147483647 = 1
-(-) 2147483648 -2147483649 = 4294967297
-(-) 2147483648 2147483648 = 0
-(-) 2147483648 -4294967296 = 6442450944
-(-) 2147483648 4294967294 = -2147483646
-(-) 2147483648 4611686018427387904 = -4611686016279904256
-(-) 2147483648 4611686014132420609 = -4611686011984936961
-(-) -4294967296 0 = -4294967296
-(-) -4294967296 1 = -4294967297
-(-) -4294967296 -1 = -4294967295
-(-) -4294967296 2 = -4294967298
-(-) -4294967296 -2 = -4294967294
-(-) -4294967296 -2147483648 = -2147483648
-(-) -4294967296 2147483647 = -6442450943
-(-) -4294967296 -2147483649 = -2147483647
-(-) -4294967296 2147483648 = -6442450944
-(-) -4294967296 -4294967296 = 0
-(-) -4294967296 4294967294 = -8589934590
-(-) -4294967296 4611686018427387904 = -4611686022722355200
-(-) -4294967296 4611686014132420609 = -4611686018427387905
-(-) 4294967294 0 = 4294967294
-(-) 4294967294 1 = 4294967293
-(-) 4294967294 -1 = 4294967295
-(-) 4294967294 2 = 4294967292
-(-) 4294967294 -2 = 4294967296
-(-) 4294967294 -2147483648 = 6442450942
-(-) 4294967294 2147483647 = 2147483647
-(-) 4294967294 -2147483649 = 6442450943
-(-) 4294967294 2147483648 = 2147483646
-(-) 4294967294 -4294967296 = 8589934590
-(-) 4294967294 4294967294 = 0
-(-) 4294967294 4611686018427387904 = -4611686014132420610
-(-) 4294967294 4611686014132420609 = -4611686009837453315
-(-) 4611686018427387904 0 = 4611686018427387904
-(-) 4611686018427387904 1 = 4611686018427387903
-(-) 4611686018427387904 -1 = 4611686018427387905
-(-) 4611686018427387904 2 = 4611686018427387902
-(-) 4611686018427387904 -2 = 4611686018427387906
-(-) 4611686018427387904 -2147483648 = 4611686020574871552
-(-) 4611686018427387904 2147483647 = 4611686016279904257
-(-) 4611686018427387904 -2147483649 = 4611686020574871553
-(-) 4611686018427387904 2147483648 = 4611686016279904256
-(-) 4611686018427387904 -4294967296 = 4611686022722355200
-(-) 4611686018427387904 4294967294 = 4611686014132420610
-(-) 4611686018427387904 4611686018427387904 = 0
-(-) 4611686018427387904 4611686014132420609 = 4294967295
-(-) 4611686014132420609 0 = 4611686014132420609
-(-) 4611686014132420609 1 = 4611686014132420608
-(-) 4611686014132420609 -1 = 4611686014132420610
-(-) 4611686014132420609 2 = 4611686014132420607
-(-) 4611686014132420609 -2 = 4611686014132420611
-(-) 4611686014132420609 -2147483648 = 4611686016279904257
-(-) 4611686014132420609 2147483647 = 4611686011984936962
-(-) 4611686014132420609 -2147483649 = 4611686016279904258
-(-) 4611686014132420609 2147483648 = 4611686011984936961
-(-) 4611686014132420609 -4294967296 = 4611686018427387905
-(-) 4611686014132420609 4294967294 = 4611686009837453315
-(-) 4611686014132420609 4611686018427387904 = -4294967295
-(-) 4611686014132420609 4611686014132420609 = 0
-div 0 1 = 0
-div 0 -1 = 0
-div 0 2 = 0
-div 0 -2 = 0
-div 0 -2147483648 = 0
-div 0 2147483647 = 0
-div 0 -2147483649 = 0
-div 0 2147483648 = 0
-div 0 -4294967296 = 0
-div 0 4294967294 = 0
-div 0 4611686018427387904 = 0
-div 0 4611686014132420609 = 0
-div 1 1 = 1
-div 1 -1 = -1
-div 1 2 = 0
-div 1 -2 = -1
-div 1 -2147483648 = -1
-div 1 2147483647 = 0
-div 1 -2147483649 = -1
-div 1 2147483648 = 0
-div 1 -4294967296 = -1
-div 1 4294967294 = 0
-div 1 4611686018427387904 = 0
-div 1 4611686014132420609 = 0
-div -1 1 = -1
-div -1 -1 = 1
-div -1 2 = -1
-div -1 -2 = 0
-div -1 -2147483648 = 0
-div -1 2147483647 = -1
-div -1 -2147483649 = 0
-div -1 2147483648 = -1
-div -1 -4294967296 = 0
-div -1 4294967294 = -1
-div -1 4611686018427387904 = -1
-div -1 4611686014132420609 = -1
-div 2 1 = 2
-div 2 -1 = -2
-div 2 2 = 1
-div 2 -2 = -1
-div 2 -2147483648 = -1
-div 2 2147483647 = 0
-div 2 -2147483649 = -1
-div 2 2147483648 = 0
-div 2 -4294967296 = -1
-div 2 4294967294 = 0
-div 2 4611686018427387904 = 0
-div 2 4611686014132420609 = 0
-div -2 1 = -2
-div -2 -1 = 2
-div -2 2 = -1
-div -2 -2 = 1
-div -2 -2147483648 = 0
-div -2 2147483647 = -1
-div -2 -2147483649 = 0
-div -2 2147483648 = -1
-div -2 -4294967296 = 0
-div -2 4294967294 = -1
-div -2 4611686018427387904 = -1
-div -2 4611686014132420609 = -1
-div -2147483648 1 = -2147483648
-div -2147483648 -1 = 2147483648
-div -2147483648 2 = -1073741824
-div -2147483648 -2 = 1073741824
-div -2147483648 -2147483648 = 1
-div -2147483648 2147483647 = -2
-div -2147483648 -2147483649 = 0
-div -2147483648 2147483648 = -1
-div -2147483648 -4294967296 = 0
-div -2147483648 4294967294 = -1
-div -2147483648 4611686018427387904 = -1
-div -2147483648 4611686014132420609 = -1
-div 2147483647 1 = 2147483647
-div 2147483647 -1 = -2147483647
-div 2147483647 2 = 1073741823
-div 2147483647 -2 = -1073741824
-div 2147483647 -2147483648 = -1
-div 2147483647 2147483647 = 1
-div 2147483647 -2147483649 = -1
-div 2147483647 2147483648 = 0
-div 2147483647 -4294967296 = -1
-div 2147483647 4294967294 = 0
-div 2147483647 4611686018427387904 = 0
-div 2147483647 4611686014132420609 = 0
-mod 0 1 = 0
-mod 0 -1 = 0
-mod 0 2 = 0
-mod 0 -2 = 0
-mod 0 -2147483648 = 0
-mod 0 2147483647 = 0
-mod 0 -2147483649 = 0
-mod 0 2147483648 = 0
-mod 0 -4294967296 = 0
-mod 0 4294967294 = 0
-mod 0 4611686018427387904 = 0
-mod 0 4611686014132420609 = 0
-mod 1 1 = 0
-mod 1 -1 = 0
-mod 1 2 = 1
-mod 1 -2 = -1
-mod 1 -2147483648 = -2147483647
-mod 1 2147483647 = 1
-mod 1 -2147483649 = -2147483648
-mod 1 2147483648 = 1
-mod 1 -4294967296 = -4294967295
-mod 1 4294967294 = 1
-mod 1 4611686018427387904 = 1
-mod 1 4611686014132420609 = 1
-mod -1 1 = 0
-mod -1 -1 = 0
-mod -1 2 = 1
-mod -1 -2 = -1
-mod -1 -2147483648 = -1
-mod -1 2147483647 = 2147483646
-mod -1 -2147483649 = -1
-mod -1 2147483648 = 2147483647
-mod -1 -4294967296 = -1
-mod -1 4294967294 = 4294967293
-mod -1 4611686018427387904 = 4611686018427387903
-mod -1 4611686014132420609 = 4611686014132420608
-mod 2 1 = 0
-mod 2 -1 = 0
-mod 2 2 = 0
-mod 2 -2 = 0
-mod 2 -2147483648 = -2147483646
-mod 2 2147483647 = 2
-mod 2 -2147483649 = -2147483647
-mod 2 2147483648 = 2
-mod 2 -4294967296 = -4294967294
-mod 2 4294967294 = 2
-mod 2 4611686018427387904 = 2
-mod 2 4611686014132420609 = 2
-mod -2 1 = 0
-mod -2 -1 = 0
-mod -2 2 = 0
-mod -2 -2 = 0
-mod -2 -2147483648 = -2
-mod -2 2147483647 = 2147483645
-mod -2 -2147483649 = -2
-mod -2 2147483648 = 2147483646
-mod -2 -4294967296 = -2
-mod -2 4294967294 = 4294967292
-mod -2 4611686018427387904 = 4611686018427387902
-mod -2 4611686014132420609 = 4611686014132420607
-mod -2147483648 1 = 0
-mod -2147483648 -1 = 0
-mod -2147483648 2 = 0
-mod -2147483648 -2 = 0
-mod -2147483648 -2147483648 = 0
-mod -2147483648 2147483647 = 2147483646
-mod -2147483648 -2147483649 = -2147483648
-mod -2147483648 2147483648 = 0
-mod -2147483648 -4294967296 = -2147483648
-mod -2147483648 4294967294 = 2147483646
-mod -2147483648 4611686018427387904 = 4611686016279904256
-mod -2147483648 4611686014132420609 = 4611686011984936961
-mod 2147483647 1 = 0
-mod 2147483647 -1 = 0
-mod 2147483647 2 = 1
-mod 2147483647 -2 = -1
-mod 2147483647 -2147483648 = -1
-mod 2147483647 2147483647 = 0
-mod 2147483647 -2147483649 = -2
-mod 2147483647 2147483648 = 2147483647
-mod 2147483647 -4294967296 = -2147483649
-mod 2147483647 4294967294 = 2147483647
-mod 2147483647 4611686018427387904 = 2147483647
-mod 2147483647 4611686014132420609 = 2147483647
-quot 0 1 = 0
-quot 0 -1 = 0
-quot 0 2 = 0
-quot 0 -2 = 0
-quot 0 -2147483648 = 0
-quot 0 2147483647 = 0
-quot 0 -2147483649 = 0
-quot 0 2147483648 = 0
-quot 0 -4294967296 = 0
-quot 0 4294967294 = 0
-quot 0 4611686018427387904 = 0
-quot 0 4611686014132420609 = 0
-quot 1 1 = 1
-quot 1 -1 = -1
-quot 1 2 = 0
-quot 1 -2 = 0
-quot 1 -2147483648 = 0
-quot 1 2147483647 = 0
-quot 1 -2147483649 = 0
-quot 1 2147483648 = 0
-quot 1 -4294967296 = 0
-quot 1 4294967294 = 0
-quot 1 4611686018427387904 = 0
-quot 1 4611686014132420609 = 0
-quot -1 1 = -1
-quot -1 -1 = 1
-quot -1 2 = 0
-quot -1 -2 = 0
-quot -1 -2147483648 = 0
-quot -1 2147483647 = 0
-quot -1 -2147483649 = 0
-quot -1 2147483648 = 0
-quot -1 -4294967296 = 0
-quot -1 4294967294 = 0
-quot -1 4611686018427387904 = 0
-quot -1 4611686014132420609 = 0
-quot 2 1 = 2
-quot 2 -1 = -2
-quot 2 2 = 1
-quot 2 -2 = -1
-quot 2 -2147483648 = 0
-quot 2 2147483647 = 0
-quot 2 -2147483649 = 0
-quot 2 2147483648 = 0
-quot 2 -4294967296 = 0
-quot 2 4294967294 = 0
-quot 2 4611686018427387904 = 0
-quot 2 4611686014132420609 = 0
-quot -2 1 = -2
-quot -2 -1 = 2
-quot -2 2 = -1
-quot -2 -2 = 1
-quot -2 -2147483648 = 0
-quot -2 2147483647 = 0
-quot -2 -2147483649 = 0
-quot -2 2147483648 = 0
-quot -2 -4294967296 = 0
-quot -2 4294967294 = 0
-quot -2 4611686018427387904 = 0
-quot -2 4611686014132420609 = 0
-quot -2147483648 1 = -2147483648
-quot -2147483648 -1 = 2147483648
-quot -2147483648 2 = -1073741824
-quot -2147483648 -2 = 1073741824
-quot -2147483648 -2147483648 = 1
-quot -2147483648 2147483647 = -1
-quot -2147483648 -2147483649 = 0
-quot -2147483648 2147483648 = -1
-quot -2147483648 -4294967296 = 0
-quot -2147483648 4294967294 = 0
-quot -2147483648 4611686018427387904 = 0
-quot -2147483648 4611686014132420609 = 0
-quot 2147483647 1 = 2147483647
-quot 2147483647 -1 = -2147483647
-quot 2147483647 2 = 1073741823
-quot 2147483647 -2 = -1073741823
-quot 2147483647 -2147483648 = 0
-quot 2147483647 2147483647 = 1
-quot 2147483647 -2147483649 = 0
-quot 2147483647 2147483648 = 0
-quot 2147483647 -4294967296 = 0
-quot 2147483647 4294967294 = 0
-quot 2147483647 4611686018427387904 = 0
-quot 2147483647 4611686014132420609 = 0
-rem 0 1 = 0
-rem 0 -1 = 0
-rem 0 2 = 0
-rem 0 -2 = 0
-rem 0 -2147483648 = 0
-rem 0 2147483647 = 0
-rem 0 -2147483649 = 0
-rem 0 2147483648 = 0
-rem 0 -4294967296 = 0
-rem 0 4294967294 = 0
-rem 0 4611686018427387904 = 0
-rem 0 4611686014132420609 = 0
-rem 1 1 = 0
-rem 1 -1 = 0
-rem 1 2 = 1
-rem 1 -2 = 1
-rem 1 -2147483648 = 1
-rem 1 2147483647 = 1
-rem 1 -2147483649 = 1
-rem 1 2147483648 = 1
-rem 1 -4294967296 = 1
-rem 1 4294967294 = 1
-rem 1 4611686018427387904 = 1
-rem 1 4611686014132420609 = 1
-rem -1 1 = 0
-rem -1 -1 = 0
-rem -1 2 = -1
-rem -1 -2 = -1
-rem -1 -2147483648 = -1
-rem -1 2147483647 = -1
-rem -1 -2147483649 = -1
-rem -1 2147483648 = -1
-rem -1 -4294967296 = -1
-rem -1 4294967294 = -1
-rem -1 4611686018427387904 = -1
-rem -1 4611686014132420609 = -1
-rem 2 1 = 0
-rem 2 -1 = 0
-rem 2 2 = 0
-rem 2 -2 = 0
-rem 2 -2147483648 = 2
-rem 2 2147483647 = 2
-rem 2 -2147483649 = 2
-rem 2 2147483648 = 2
-rem 2 -4294967296 = 2
-rem 2 4294967294 = 2
-rem 2 4611686018427387904 = 2
-rem 2 4611686014132420609 = 2
-rem -2 1 = 0
-rem -2 -1 = 0
-rem -2 2 = 0
-rem -2 -2 = 0
-rem -2 -2147483648 = -2
-rem -2 2147483647 = -2
-rem -2 -2147483649 = -2
-rem -2 2147483648 = -2
-rem -2 -4294967296 = -2
-rem -2 4294967294 = -2
-rem -2 4611686018427387904 = -2
-rem -2 4611686014132420609 = -2
-rem -2147483648 1 = 0
-rem -2147483648 -1 = 0
-rem -2147483648 2 = 0
-rem -2147483648 -2 = 0
-rem -2147483648 -2147483648 = 0
-rem -2147483648 2147483647 = -1
-rem -2147483648 -2147483649 = -2147483648
-rem -2147483648 2147483648 = 0
-rem -2147483648 -4294967296 = -2147483648
-rem -2147483648 4294967294 = -2147483648
-rem -2147483648 4611686018427387904 = -2147483648
-rem -2147483648 4611686014132420609 = -2147483648
-rem 2147483647 1 = 0
-rem 2147483647 -1 = 0
-rem 2147483647 2 = 1
-rem 2147483647 -2 = 1
-rem 2147483647 -2147483648 = 2147483647
-rem 2147483647 2147483647 = 0
-rem 2147483647 -2147483649 = 2147483647
-rem 2147483647 2147483648 = 2147483647
-rem 2147483647 -4294967296 = 2147483647
-rem 2147483647 4294967294 = 2147483647
-rem 2147483647 4611686018427387904 = 2147483647
-rem 2147483647 4611686014132420609 = 2147483647
-gcd 0 1 = 1
-gcd 0 -1 = 1
-gcd 0 2 = 2
-gcd 0 -2 = 2
-gcd 0 -2147483648 = 2147483648
-gcd 0 2147483647 = 2147483647
-gcd 1 0 = 1
-gcd 1 1 = 1
-gcd 1 -1 = 1
-gcd 1 2 = 1
-gcd 1 -2 = 1
-gcd 1 -2147483648 = 1
-gcd 1 2147483647 = 1
-gcd -1 0 = 1
-gcd -1 1 = 1
-gcd -1 -1 = 1
-gcd -1 2 = 1
-gcd -1 -2 = 1
-gcd -1 -2147483648 = 1
-gcd -1 2147483647 = 1
-gcd 2 0 = 2
-gcd 2 1 = 1
-gcd 2 -1 = 1
-gcd 2 2 = 2
-gcd 2 -2 = 2
-gcd 2 -2147483648 = 2
-gcd 2 2147483647 = 1
-gcd -2 0 = 2
-gcd -2 1 = 1
-gcd -2 -1 = 1
-gcd -2 2 = 2
-gcd -2 -2 = 2
-gcd -2 -2147483648 = 2
-gcd -2 2147483647 = 1
-gcd -2147483648 0 = 2147483648
-gcd -2147483648 1 = 1
-gcd -2147483648 -1 = 1
-gcd -2147483648 2 = 2
-gcd -2147483648 -2 = 2
-gcd -2147483648 -2147483648 = 2147483648
-gcd -2147483648 2147483647 = 1
-gcd 2147483647 0 = 2147483647
-gcd 2147483647 1 = 1
-gcd 2147483647 -1 = 1
-gcd 2147483647 2 = 1
-gcd 2147483647 -2 = 1
-gcd 2147483647 -2147483648 = 1
-gcd 2147483647 2147483647 = 2147483647
-lcm 0 1 = 0
-lcm 0 -1 = 0
-lcm 0 2 = 0
-lcm 0 -2 = 0
-lcm 0 -2147483648 = 0
-lcm 0 2147483647 = 0
-lcm 1 0 = 0
-lcm 1 1 = 1
-lcm 1 -1 = 1
-lcm 1 2 = 2
-lcm 1 -2 = 2
-lcm 1 -2147483648 = 2147483648
-lcm 1 2147483647 = 2147483647
-lcm -1 0 = 0
-lcm -1 1 = 1
-lcm -1 -1 = 1
-lcm -1 2 = 2
-lcm -1 -2 = 2
-lcm -1 -2147483648 = 2147483648
-lcm -1 2147483647 = 2147483647
-lcm 2 0 = 0
-lcm 2 1 = 2
-lcm 2 -1 = 2
-lcm 2 2 = 2
-lcm 2 -2 = 2
-lcm 2 -2147483648 = 2147483648
-lcm 2 2147483647 = 4294967294
-lcm -2 0 = 0
-lcm -2 1 = 2
-lcm -2 -1 = 2
-lcm -2 2 = 2
-lcm -2 -2 = 2
-lcm -2 -2147483648 = 2147483648
-lcm -2 2147483647 = 4294967294
-lcm -2147483648 0 = 0
-lcm -2147483648 1 = 2147483648
-lcm -2147483648 -1 = 2147483648
-lcm -2147483648 2 = 2147483648
-lcm -2147483648 -2 = 2147483648
-lcm -2147483648 -2147483648 = 2147483648
-lcm -2147483648 2147483647 = 4611686016279904256
-lcm 2147483647 0 = 0
-lcm 2147483647 1 = 2147483647
-lcm 2147483647 -1 = 2147483647
-lcm 2147483647 2 = 4294967294
-lcm 2147483647 -2 = 4294967294
-lcm 2147483647 -2147483648 = 4611686016279904256
-lcm 2147483647 2147483647 = 2147483647
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout-alpha-dec-osf3 b/testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout-alpha-dec-osf3
deleted file mode 100644
index 9ea4a0f2eb..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout-alpha-dec-osf3
+++ /dev/null
@@ -1,1053 +0,0 @@
-(+) 0 0 = 0
-(+) 0 1 = 1
-(+) 0 -1 = -1
-(+) 0 2 = 2
-(+) 0 -2 = -2
-(+) 0 -9223372036854775808 = -9223372036854775808
-(+) 0 9223372036854775807 = 9223372036854775807
-(+) 1 0 = 1
-(+) 1 1 = 2
-(+) 1 -1 = 0
-(+) 1 2 = 3
-(+) 1 -2 = -1
-(+) 1 -9223372036854775808 = -9223372036854775807
-(+) 1 9223372036854775807 = -9223372036854775808
-(+) -1 0 = -1
-(+) -1 1 = 0
-(+) -1 -1 = -2
-(+) -1 2 = 1
-(+) -1 -2 = -3
-(+) -1 -9223372036854775808 = 9223372036854775807
-(+) -1 9223372036854775807 = 9223372036854775806
-(+) 2 0 = 2
-(+) 2 1 = 3
-(+) 2 -1 = 1
-(+) 2 2 = 4
-(+) 2 -2 = 0
-(+) 2 -9223372036854775808 = -9223372036854775806
-(+) 2 9223372036854775807 = -9223372036854775807
-(+) -2 0 = -2
-(+) -2 1 = -1
-(+) -2 -1 = -3
-(+) -2 2 = 0
-(+) -2 -2 = -4
-(+) -2 -9223372036854775808 = 9223372036854775806
-(+) -2 9223372036854775807 = 9223372036854775805
-(+) -9223372036854775808 0 = -9223372036854775808
-(+) -9223372036854775808 1 = -9223372036854775807
-(+) -9223372036854775808 -1 = 9223372036854775807
-(+) -9223372036854775808 2 = -9223372036854775806
-(+) -9223372036854775808 -2 = 9223372036854775806
-(+) -9223372036854775808 -9223372036854775808 = 0
-(+) -9223372036854775808 9223372036854775807 = -1
-(+) 9223372036854775807 0 = 9223372036854775807
-(+) 9223372036854775807 1 = -9223372036854775808
-(+) 9223372036854775807 -1 = 9223372036854775806
-(+) 9223372036854775807 2 = -9223372036854775807
-(+) 9223372036854775807 -2 = 9223372036854775805
-(+) 9223372036854775807 -9223372036854775808 = -1
-(+) 9223372036854775807 9223372036854775807 = -2
-(-) 0 0 = 0
-(-) 0 1 = -1
-(-) 0 -1 = 1
-(-) 0 2 = -2
-(-) 0 -2 = 2
-(-) 0 -9223372036854775808 = -9223372036854775808
-(-) 0 9223372036854775807 = -9223372036854775807
-(-) 1 0 = 1
-(-) 1 1 = 0
-(-) 1 -1 = 2
-(-) 1 2 = -1
-(-) 1 -2 = 3
-(-) 1 -9223372036854775808 = -9223372036854775807
-(-) 1 9223372036854775807 = -9223372036854775806
-(-) -1 0 = -1
-(-) -1 1 = -2
-(-) -1 -1 = 0
-(-) -1 2 = -3
-(-) -1 -2 = 1
-(-) -1 -9223372036854775808 = 9223372036854775807
-(-) -1 9223372036854775807 = -9223372036854775808
-(-) 2 0 = 2
-(-) 2 1 = 1
-(-) 2 -1 = 3
-(-) 2 2 = 0
-(-) 2 -2 = 4
-(-) 2 -9223372036854775808 = -9223372036854775806
-(-) 2 9223372036854775807 = -9223372036854775805
-(-) -2 0 = -2
-(-) -2 1 = -3
-(-) -2 -1 = -1
-(-) -2 2 = -4
-(-) -2 -2 = 0
-(-) -2 -9223372036854775808 = 9223372036854775806
-(-) -2 9223372036854775807 = 9223372036854775807
-(-) -9223372036854775808 0 = -9223372036854775808
-(-) -9223372036854775808 1 = 9223372036854775807
-(-) -9223372036854775808 -1 = -9223372036854775807
-(-) -9223372036854775808 2 = 9223372036854775806
-(-) -9223372036854775808 -2 = -9223372036854775806
-(-) -9223372036854775808 -9223372036854775808 = 0
-(-) -9223372036854775808 9223372036854775807 = 1
-(-) 9223372036854775807 0 = 9223372036854775807
-(-) 9223372036854775807 1 = 9223372036854775806
-(-) 9223372036854775807 -1 = -9223372036854775808
-(-) 9223372036854775807 2 = 9223372036854775805
-(-) 9223372036854775807 -2 = -9223372036854775807
-(-) 9223372036854775807 -9223372036854775808 = -1
-(-) 9223372036854775807 9223372036854775807 = 0
-(^) 0 0 = 1
-(^) 0 1 = 0
-(^) 0 2 = 0
-(^) 1 0 = 1
-(^) 1 1 = 1
-(^) 1 2 = 1
-(^) -1 0 = 1
-(^) -1 1 = -1
-(^) -1 2 = 1
-(^) 2 0 = 1
-(^) 2 1 = 2
-(^) 2 2 = 4
-(^) -2 0 = 1
-(^) -2 1 = -2
-(^) -2 2 = 4
-(^) -9223372036854775808 0 = 1
-(^) -9223372036854775808 1 = -9223372036854775808
-(^) -9223372036854775808 2 = 0
-(^) 9223372036854775807 0 = 1
-(^) 9223372036854775807 1 = 9223372036854775807
-(^) 9223372036854775807 2 = 1
-div 0 1 = 0
-div 0 -1 = 0
-div 0 2 = 0
-div 0 -2 = 0
-div 0 -9223372036854775808 = 0
-div 0 9223372036854775807 = 0
-div 1 1 = 1
-div 1 -1 = -1
-div 1 2 = 0
-div 1 -2 = -1
-div 1 -9223372036854775808 = -1
-div 1 9223372036854775807 = 0
-div -1 1 = -1
-div -1 -1 = 1
-div -1 2 = -1
-div -1 -2 = 0
-div -1 -9223372036854775808 = 0
-div -1 9223372036854775807 = -1
-div 2 1 = 2
-div 2 -1 = -2
-div 2 2 = 1
-div 2 -2 = -1
-div 2 -9223372036854775808 = -1
-div 2 9223372036854775807 = 0
-div -2 1 = -2
-div -2 -1 = 2
-div -2 2 = -1
-div -2 -2 = 1
-div -2 -9223372036854775808 = 0
-div -2 9223372036854775807 = -1
-div 9223372036854775807 1 = 9223372036854775807
-div 9223372036854775807 -1 = -9223372036854775807
-div 9223372036854775807 2 = 4611686018427387903
-div 9223372036854775807 -2 = -4611686018427387904
-div 9223372036854775807 -9223372036854775808 = -1
-div 9223372036854775807 9223372036854775807 = 1
-mod 0 1 = 0
-mod 0 -1 = 0
-mod 0 2 = 0
-mod 0 -2 = 0
-mod 0 -9223372036854775808 = 0
-mod 0 9223372036854775807 = 0
-mod 1 1 = 0
-mod 1 -1 = 0
-mod 1 2 = 1
-mod 1 -2 = -1
-mod 1 -9223372036854775808 = -9223372036854775807
-mod 1 9223372036854775807 = 1
-mod -1 1 = 0
-mod -1 -1 = 0
-mod -1 2 = 1
-mod -1 -2 = -1
-mod -1 -9223372036854775808 = -1
-mod -1 9223372036854775807 = 9223372036854775806
-mod 2 1 = 0
-mod 2 -1 = 0
-mod 2 2 = 0
-mod 2 -2 = 0
-mod 2 -9223372036854775808 = -9223372036854775806
-mod 2 9223372036854775807 = 2
-mod -2 1 = 0
-mod -2 -1 = 0
-mod -2 2 = 0
-mod -2 -2 = 0
-mod -2 -9223372036854775808 = -2
-mod -2 9223372036854775807 = 9223372036854775805
-mod 9223372036854775807 1 = 0
-mod 9223372036854775807 -1 = 0
-mod 9223372036854775807 2 = 1
-mod 9223372036854775807 -2 = -1
-mod 9223372036854775807 -9223372036854775808 = -1
-mod 9223372036854775807 9223372036854775807 = 0
-quot 0 1 = 0
-quot 0 -1 = 0
-quot 0 2 = 0
-quot 0 -2 = 0
-quot 0 -9223372036854775808 = 0
-quot 0 9223372036854775807 = 0
-quot 1 1 = 1
-quot 1 -1 = -1
-quot 1 2 = 0
-quot 1 -2 = 0
-quot 1 -9223372036854775808 = 0
-quot 1 9223372036854775807 = 0
-quot -1 1 = -1
-quot -1 -1 = 1
-quot -1 2 = 0
-quot -1 -2 = 0
-quot -1 -9223372036854775808 = 0
-quot -1 9223372036854775807 = 0
-quot 2 1 = 2
-quot 2 -1 = -2
-quot 2 2 = 1
-quot 2 -2 = -1
-quot 2 -9223372036854775808 = 0
-quot 2 9223372036854775807 = 0
-quot -2 1 = -2
-quot -2 -1 = 2
-quot -2 2 = -1
-quot -2 -2 = 1
-quot -2 -9223372036854775808 = 0
-quot -2 9223372036854775807 = 0
-quot 9223372036854775807 1 = 9223372036854775807
-quot 9223372036854775807 -1 = -9223372036854775807
-quot 9223372036854775807 2 = 4611686018427387903
-quot 9223372036854775807 -2 = -4611686018427387903
-quot 9223372036854775807 -9223372036854775808 = 0
-quot 9223372036854775807 9223372036854775807 = 1
-rem 0 1 = 0
-rem 0 -1 = 0
-rem 0 2 = 0
-rem 0 -2 = 0
-rem 0 -9223372036854775808 = 0
-rem 0 9223372036854775807 = 0
-rem 1 1 = 0
-rem 1 -1 = 0
-rem 1 2 = 1
-rem 1 -2 = 1
-rem 1 -9223372036854775808 = 1
-rem 1 9223372036854775807 = 1
-rem -1 1 = 0
-rem -1 -1 = 0
-rem -1 2 = -1
-rem -1 -2 = -1
-rem -1 -9223372036854775808 = -1
-rem -1 9223372036854775807 = -1
-rem 2 1 = 0
-rem 2 -1 = 0
-rem 2 2 = 0
-rem 2 -2 = 0
-rem 2 -9223372036854775808 = 2
-rem 2 9223372036854775807 = 2
-rem -2 1 = 0
-rem -2 -1 = 0
-rem -2 2 = 0
-rem -2 -2 = 0
-rem -2 -9223372036854775808 = -2
-rem -2 9223372036854775807 = -2
-rem 9223372036854775807 1 = 0
-rem 9223372036854775807 -1 = 0
-rem 9223372036854775807 2 = 1
-rem 9223372036854775807 -2 = 1
-rem 9223372036854775807 -9223372036854775808 = 9223372036854775807
-rem 9223372036854775807 9223372036854775807 = 0
-gcd 0 1 = 1
-gcd 0 -1 = 1
-gcd 0 2 = 2
-gcd 0 -2 = 2
-gcd 0 9223372036854775807 = 9223372036854775807
-gcd 1 0 = 1
-gcd 1 1 = 1
-gcd 1 -1 = 1
-gcd 1 2 = 1
-gcd 1 -2 = 1
-gcd 1 9223372036854775807 = 1
-gcd -1 0 = 1
-gcd -1 1 = 1
-gcd -1 -1 = 1
-gcd -1 2 = 1
-gcd -1 -2 = 1
-gcd -1 9223372036854775807 = 1
-gcd 2 0 = 2
-gcd 2 1 = 1
-gcd 2 -1 = 1
-gcd 2 2 = 2
-gcd 2 -2 = 2
-gcd 2 9223372036854775807 = 1
-gcd -2 0 = 2
-gcd -2 1 = 1
-gcd -2 -1 = 1
-gcd -2 2 = 2
-gcd -2 -2 = 2
-gcd -2 9223372036854775807 = 1
-gcd 9223372036854775807 0 = 9223372036854775807
-gcd 9223372036854775807 1 = 1
-gcd 9223372036854775807 -1 = 1
-gcd 9223372036854775807 2 = 1
-gcd 9223372036854775807 -2 = 1
-gcd 9223372036854775807 9223372036854775807 = 9223372036854775807
-lcm 0 1 = 0
-lcm 0 -1 = 0
-lcm 0 2 = 0
-lcm 0 -2 = 0
-lcm 0 -9223372036854775808 = 0
-lcm 1 0 = 0
-lcm 1 1 = 1
-lcm 1 -1 = 1
-lcm 1 2 = 2
-lcm 1 -2 = 2
-lcm 1 -9223372036854775808 = -9223372036854775808
-lcm -1 0 = 0
-lcm -1 1 = 1
-lcm -1 -1 = 1
-lcm -1 2 = 2
-lcm -1 -2 = 2
-lcm -1 -9223372036854775808 = -9223372036854775808
-lcm 2 0 = 0
-lcm 2 1 = 2
-lcm 2 -1 = 2
-lcm 2 2 = 2
-lcm 2 -2 = 2
-lcm 2 -9223372036854775808 = -9223372036854775808
-lcm -2 0 = 0
-lcm -2 1 = 2
-lcm -2 -1 = 2
-lcm -2 2 = 2
-lcm -2 -2 = 2
-lcm -2 -9223372036854775808 = -9223372036854775808
-lcm -9223372036854775808 0 = 0
-lcm -9223372036854775808 1 = -9223372036854775808
-lcm -9223372036854775808 -1 = -9223372036854775808
-lcm -9223372036854775808 2 = -9223372036854775808
-lcm -9223372036854775808 -2 = -9223372036854775808
-lcm -9223372036854775808 -9223372036854775808 = -9223372036854775808
-lcm 9223372036854775807 0 = 0
-lcm 9223372036854775807 1 = 9223372036854775807
-lcm 9223372036854775807 -1 = 9223372036854775807
-lcm 9223372036854775807 2 = 2
-lcm 9223372036854775807 -2 = 2
-lcm 9223372036854775807 -9223372036854775808 = -9223372036854775808
-(+) 0 0 = 0
-(+) 0 1 = 1
-(+) 0 -1 = -1
-(+) 0 2 = 2
-(+) 0 -2 = -2
-(+) 0 -9223372036854775808 = -9223372036854775808
-(+) 0 9223372036854775807 = 9223372036854775807
-(+) 0 -9223372036854775809 = -9223372036854775809
-(+) 0 9223372036854775808 = 9223372036854775808
-(+) 0 0 = 0
-(+) 0 18446744073709551614 = 18446744073709551614
-(+) 0 0 = 0
-(+) 0 85070591730234615847396907784232501249 = 85070591730234615847396907784232501249
-(+) 1 0 = 1
-(+) 1 1 = 2
-(+) 1 -1 = 0
-(+) 1 2 = 3
-(+) 1 -2 = -1
-(+) 1 -9223372036854775808 = -9223372036854775807
-(+) 1 9223372036854775807 = 9223372036854775808
-(+) 1 -9223372036854775809 = -9223372036854775808
-(+) 1 9223372036854775808 = 9223372036854775809
-(+) 1 0 = 1
-(+) 1 18446744073709551614 = 18446744073709551615
-(+) 1 0 = 1
-(+) 1 85070591730234615847396907784232501249 = 85070591730234615847396907784232501250
-(+) -1 0 = -1
-(+) -1 1 = 0
-(+) -1 -1 = -2
-(+) -1 2 = 1
-(+) -1 -2 = -3
-(+) -1 -9223372036854775808 = -9223372036854775809
-(+) -1 9223372036854775807 = 9223372036854775806
-(+) -1 -9223372036854775809 = -9223372036854775810
-(+) -1 9223372036854775808 = 9223372036854775807
-(+) -1 0 = -1
-(+) -1 18446744073709551614 = 18446744073709551613
-(+) -1 0 = -1
-(+) -1 85070591730234615847396907784232501249 = 85070591730234615847396907784232501248
-(+) 2 0 = 2
-(+) 2 1 = 3
-(+) 2 -1 = 1
-(+) 2 2 = 4
-(+) 2 -2 = 0
-(+) 2 -9223372036854775808 = -9223372036854775806
-(+) 2 9223372036854775807 = 9223372036854775809
-(+) 2 -9223372036854775809 = -9223372036854775807
-(+) 2 9223372036854775808 = 9223372036854775810
-(+) 2 0 = 2
-(+) 2 18446744073709551614 = 18446744073709551616
-(+) 2 0 = 2
-(+) 2 85070591730234615847396907784232501249 = 85070591730234615847396907784232501251
-(+) -2 0 = -2
-(+) -2 1 = -1
-(+) -2 -1 = -3
-(+) -2 2 = 0
-(+) -2 -2 = -4
-(+) -2 -9223372036854775808 = -9223372036854775810
-(+) -2 9223372036854775807 = 9223372036854775805
-(+) -2 -9223372036854775809 = -9223372036854775811
-(+) -2 9223372036854775808 = 9223372036854775806
-(+) -2 0 = -2
-(+) -2 18446744073709551614 = 18446744073709551612
-(+) -2 0 = -2
-(+) -2 85070591730234615847396907784232501249 = 85070591730234615847396907784232501247
-(+) -9223372036854775808 0 = -9223372036854775808
-(+) -9223372036854775808 1 = -9223372036854775807
-(+) -9223372036854775808 -1 = -9223372036854775809
-(+) -9223372036854775808 2 = -9223372036854775806
-(+) -9223372036854775808 -2 = -9223372036854775810
-(+) -9223372036854775808 -9223372036854775808 = -18446744073709551616
-(+) -9223372036854775808 9223372036854775807 = -1
-(+) -9223372036854775808 -9223372036854775809 = -18446744073709551617
-(+) -9223372036854775808 9223372036854775808 = 0
-(+) -9223372036854775808 0 = -9223372036854775808
-(+) -9223372036854775808 18446744073709551614 = 9223372036854775806
-(+) -9223372036854775808 0 = -9223372036854775808
-(+) -9223372036854775808 85070591730234615847396907784232501249 = 85070591730234615838173535747377725441
-(+) 9223372036854775807 0 = 9223372036854775807
-(+) 9223372036854775807 1 = 9223372036854775808
-(+) 9223372036854775807 -1 = 9223372036854775806
-(+) 9223372036854775807 2 = 9223372036854775809
-(+) 9223372036854775807 -2 = 9223372036854775805
-(+) 9223372036854775807 -9223372036854775808 = -1
-(+) 9223372036854775807 9223372036854775807 = 18446744073709551614
-(+) 9223372036854775807 -9223372036854775809 = -2
-(+) 9223372036854775807 9223372036854775808 = 18446744073709551615
-(+) 9223372036854775807 0 = 9223372036854775807
-(+) 9223372036854775807 18446744073709551614 = 27670116110564327421
-(+) 9223372036854775807 0 = 9223372036854775807
-(+) 9223372036854775807 85070591730234615847396907784232501249 = 85070591730234615856620279821087277056
-(+) -9223372036854775809 0 = -9223372036854775809
-(+) -9223372036854775809 1 = -9223372036854775808
-(+) -9223372036854775809 -1 = -9223372036854775810
-(+) -9223372036854775809 2 = -9223372036854775807
-(+) -9223372036854775809 -2 = -9223372036854775811
-(+) -9223372036854775809 -9223372036854775808 = -18446744073709551617
-(+) -9223372036854775809 9223372036854775807 = -2
-(+) -9223372036854775809 -9223372036854775809 = -18446744073709551618
-(+) -9223372036854775809 9223372036854775808 = -1
-(+) -9223372036854775809 0 = -9223372036854775809
-(+) -9223372036854775809 18446744073709551614 = 9223372036854775805
-(+) -9223372036854775809 0 = -9223372036854775809
-(+) -9223372036854775809 85070591730234615847396907784232501249 = 85070591730234615838173535747377725440
-(+) 9223372036854775808 0 = 9223372036854775808
-(+) 9223372036854775808 1 = 9223372036854775809
-(+) 9223372036854775808 -1 = 9223372036854775807
-(+) 9223372036854775808 2 = 9223372036854775810
-(+) 9223372036854775808 -2 = 9223372036854775806
-(+) 9223372036854775808 -9223372036854775808 = 0
-(+) 9223372036854775808 9223372036854775807 = 18446744073709551615
-(+) 9223372036854775808 -9223372036854775809 = -1
-(+) 9223372036854775808 9223372036854775808 = 18446744073709551616
-(+) 9223372036854775808 0 = 9223372036854775808
-(+) 9223372036854775808 18446744073709551614 = 27670116110564327422
-(+) 9223372036854775808 0 = 9223372036854775808
-(+) 9223372036854775808 85070591730234615847396907784232501249 = 85070591730234615856620279821087277057
-(+) 0 0 = 0
-(+) 0 1 = 1
-(+) 0 -1 = -1
-(+) 0 2 = 2
-(+) 0 -2 = -2
-(+) 0 -9223372036854775808 = -9223372036854775808
-(+) 0 9223372036854775807 = 9223372036854775807
-(+) 0 -9223372036854775809 = -9223372036854775809
-(+) 0 9223372036854775808 = 9223372036854775808
-(+) 0 0 = 0
-(+) 0 18446744073709551614 = 18446744073709551614
-(+) 0 0 = 0
-(+) 0 85070591730234615847396907784232501249 = 85070591730234615847396907784232501249
-(+) 18446744073709551614 0 = 18446744073709551614
-(+) 18446744073709551614 1 = 18446744073709551615
-(+) 18446744073709551614 -1 = 18446744073709551613
-(+) 18446744073709551614 2 = 18446744073709551616
-(+) 18446744073709551614 -2 = 18446744073709551612
-(+) 18446744073709551614 -9223372036854775808 = 9223372036854775806
-(+) 18446744073709551614 9223372036854775807 = 27670116110564327421
-(+) 18446744073709551614 -9223372036854775809 = 9223372036854775805
-(+) 18446744073709551614 9223372036854775808 = 27670116110564327422
-(+) 18446744073709551614 0 = 18446744073709551614
-(+) 18446744073709551614 18446744073709551614 = 36893488147419103228
-(+) 18446744073709551614 0 = 18446744073709551614
-(+) 18446744073709551614 85070591730234615847396907784232501249 = 85070591730234615865843651857942052863
-(+) 0 0 = 0
-(+) 0 1 = 1
-(+) 0 -1 = -1
-(+) 0 2 = 2
-(+) 0 -2 = -2
-(+) 0 -9223372036854775808 = -9223372036854775808
-(+) 0 9223372036854775807 = 9223372036854775807
-(+) 0 -9223372036854775809 = -9223372036854775809
-(+) 0 9223372036854775808 = 9223372036854775808
-(+) 0 0 = 0
-(+) 0 18446744073709551614 = 18446744073709551614
-(+) 0 0 = 0
-(+) 0 85070591730234615847396907784232501249 = 85070591730234615847396907784232501249
-(+) 85070591730234615847396907784232501249 0 = 85070591730234615847396907784232501249
-(+) 85070591730234615847396907784232501249 1 = 85070591730234615847396907784232501250
-(+) 85070591730234615847396907784232501249 -1 = 85070591730234615847396907784232501248
-(+) 85070591730234615847396907784232501249 2 = 85070591730234615847396907784232501251
-(+) 85070591730234615847396907784232501249 -2 = 85070591730234615847396907784232501247
-(+) 85070591730234615847396907784232501249 -9223372036854775808 = 85070591730234615838173535747377725441
-(+) 85070591730234615847396907784232501249 9223372036854775807 = 85070591730234615856620279821087277056
-(+) 85070591730234615847396907784232501249 -9223372036854775809 = 85070591730234615838173535747377725440
-(+) 85070591730234615847396907784232501249 9223372036854775808 = 85070591730234615856620279821087277057
-(+) 85070591730234615847396907784232501249 0 = 85070591730234615847396907784232501249
-(+) 85070591730234615847396907784232501249 18446744073709551614 = 85070591730234615865843651857942052863
-(+) 85070591730234615847396907784232501249 0 = 85070591730234615847396907784232501249
-(+) 85070591730234615847396907784232501249 85070591730234615847396907784232501249 = 170141183460469231694793815568465002498
-(-) 0 0 = 0
-(-) 0 1 = -1
-(-) 0 -1 = 1
-(-) 0 2 = -2
-(-) 0 -2 = 2
-(-) 0 -9223372036854775808 = 9223372036854775808
-(-) 0 9223372036854775807 = -9223372036854775807
-(-) 0 -9223372036854775809 = 9223372036854775809
-(-) 0 9223372036854775808 = -9223372036854775808
-(-) 0 0 = 0
-(-) 0 18446744073709551614 = -18446744073709551614
-(-) 0 0 = 0
-(-) 0 85070591730234615847396907784232501249 = -85070591730234615847396907784232501249
-(-) 1 0 = 1
-(-) 1 1 = 0
-(-) 1 -1 = 2
-(-) 1 2 = -1
-(-) 1 -2 = 3
-(-) 1 -9223372036854775808 = 9223372036854775809
-(-) 1 9223372036854775807 = -9223372036854775806
-(-) 1 -9223372036854775809 = 9223372036854775810
-(-) 1 9223372036854775808 = -9223372036854775807
-(-) 1 0 = 1
-(-) 1 18446744073709551614 = -18446744073709551613
-(-) 1 0 = 1
-(-) 1 85070591730234615847396907784232501249 = -85070591730234615847396907784232501248
-(-) -1 0 = -1
-(-) -1 1 = -2
-(-) -1 -1 = 0
-(-) -1 2 = -3
-(-) -1 -2 = 1
-(-) -1 -9223372036854775808 = 9223372036854775807
-(-) -1 9223372036854775807 = -9223372036854775808
-(-) -1 -9223372036854775809 = 9223372036854775808
-(-) -1 9223372036854775808 = -9223372036854775809
-(-) -1 0 = -1
-(-) -1 18446744073709551614 = -18446744073709551615
-(-) -1 0 = -1
-(-) -1 85070591730234615847396907784232501249 = -85070591730234615847396907784232501250
-(-) 2 0 = 2
-(-) 2 1 = 1
-(-) 2 -1 = 3
-(-) 2 2 = 0
-(-) 2 -2 = 4
-(-) 2 -9223372036854775808 = 9223372036854775810
-(-) 2 9223372036854775807 = -9223372036854775805
-(-) 2 -9223372036854775809 = 9223372036854775811
-(-) 2 9223372036854775808 = -9223372036854775806
-(-) 2 0 = 2
-(-) 2 18446744073709551614 = -18446744073709551612
-(-) 2 0 = 2
-(-) 2 85070591730234615847396907784232501249 = -85070591730234615847396907784232501247
-(-) -2 0 = -2
-(-) -2 1 = -3
-(-) -2 -1 = -1
-(-) -2 2 = -4
-(-) -2 -2 = 0
-(-) -2 -9223372036854775808 = 9223372036854775806
-(-) -2 9223372036854775807 = -9223372036854775809
-(-) -2 -9223372036854775809 = 9223372036854775807
-(-) -2 9223372036854775808 = -9223372036854775810
-(-) -2 0 = -2
-(-) -2 18446744073709551614 = -18446744073709551616
-(-) -2 0 = -2
-(-) -2 85070591730234615847396907784232501249 = -85070591730234615847396907784232501251
-(-) -9223372036854775808 0 = -9223372036854775808
-(-) -9223372036854775808 1 = -9223372036854775809
-(-) -9223372036854775808 -1 = -9223372036854775807
-(-) -9223372036854775808 2 = -9223372036854775810
-(-) -9223372036854775808 -2 = -9223372036854775806
-(-) -9223372036854775808 -9223372036854775808 = 0
-(-) -9223372036854775808 9223372036854775807 = -18446744073709551615
-(-) -9223372036854775808 -9223372036854775809 = 1
-(-) -9223372036854775808 9223372036854775808 = -18446744073709551616
-(-) -9223372036854775808 0 = -9223372036854775808
-(-) -9223372036854775808 18446744073709551614 = -27670116110564327422
-(-) -9223372036854775808 0 = -9223372036854775808
-(-) -9223372036854775808 85070591730234615847396907784232501249 = -85070591730234615856620279821087277057
-(-) 9223372036854775807 0 = 9223372036854775807
-(-) 9223372036854775807 1 = 9223372036854775806
-(-) 9223372036854775807 -1 = 9223372036854775808
-(-) 9223372036854775807 2 = 9223372036854775805
-(-) 9223372036854775807 -2 = 9223372036854775809
-(-) 9223372036854775807 -9223372036854775808 = 18446744073709551615
-(-) 9223372036854775807 9223372036854775807 = 0
-(-) 9223372036854775807 -9223372036854775809 = 18446744073709551616
-(-) 9223372036854775807 9223372036854775808 = -1
-(-) 9223372036854775807 0 = 9223372036854775807
-(-) 9223372036854775807 18446744073709551614 = -9223372036854775807
-(-) 9223372036854775807 0 = 9223372036854775807
-(-) 9223372036854775807 85070591730234615847396907784232501249 = -85070591730234615838173535747377725442
-(-) -9223372036854775809 0 = -9223372036854775809
-(-) -9223372036854775809 1 = -9223372036854775810
-(-) -9223372036854775809 -1 = -9223372036854775808
-(-) -9223372036854775809 2 = -9223372036854775811
-(-) -9223372036854775809 -2 = -9223372036854775807
-(-) -9223372036854775809 -9223372036854775808 = -1
-(-) -9223372036854775809 9223372036854775807 = -18446744073709551616
-(-) -9223372036854775809 -9223372036854775809 = 0
-(-) -9223372036854775809 9223372036854775808 = -18446744073709551617
-(-) -9223372036854775809 0 = -9223372036854775809
-(-) -9223372036854775809 18446744073709551614 = -27670116110564327423
-(-) -9223372036854775809 0 = -9223372036854775809
-(-) -9223372036854775809 85070591730234615847396907784232501249 = -85070591730234615856620279821087277058
-(-) 9223372036854775808 0 = 9223372036854775808
-(-) 9223372036854775808 1 = 9223372036854775807
-(-) 9223372036854775808 -1 = 9223372036854775809
-(-) 9223372036854775808 2 = 9223372036854775806
-(-) 9223372036854775808 -2 = 9223372036854775810
-(-) 9223372036854775808 -9223372036854775808 = 18446744073709551616
-(-) 9223372036854775808 9223372036854775807 = 1
-(-) 9223372036854775808 -9223372036854775809 = 18446744073709551617
-(-) 9223372036854775808 9223372036854775808 = 0
-(-) 9223372036854775808 0 = 9223372036854775808
-(-) 9223372036854775808 18446744073709551614 = -9223372036854775806
-(-) 9223372036854775808 0 = 9223372036854775808
-(-) 9223372036854775808 85070591730234615847396907784232501249 = -85070591730234615838173535747377725441
-(-) 0 0 = 0
-(-) 0 1 = -1
-(-) 0 -1 = 1
-(-) 0 2 = -2
-(-) 0 -2 = 2
-(-) 0 -9223372036854775808 = 9223372036854775808
-(-) 0 9223372036854775807 = -9223372036854775807
-(-) 0 -9223372036854775809 = 9223372036854775809
-(-) 0 9223372036854775808 = -9223372036854775808
-(-) 0 0 = 0
-(-) 0 18446744073709551614 = -18446744073709551614
-(-) 0 0 = 0
-(-) 0 85070591730234615847396907784232501249 = -85070591730234615847396907784232501249
-(-) 18446744073709551614 0 = 18446744073709551614
-(-) 18446744073709551614 1 = 18446744073709551613
-(-) 18446744073709551614 -1 = 18446744073709551615
-(-) 18446744073709551614 2 = 18446744073709551612
-(-) 18446744073709551614 -2 = 18446744073709551616
-(-) 18446744073709551614 -9223372036854775808 = 27670116110564327422
-(-) 18446744073709551614 9223372036854775807 = 9223372036854775807
-(-) 18446744073709551614 -9223372036854775809 = 27670116110564327423
-(-) 18446744073709551614 9223372036854775808 = 9223372036854775806
-(-) 18446744073709551614 0 = 18446744073709551614
-(-) 18446744073709551614 18446744073709551614 = 0
-(-) 18446744073709551614 0 = 18446744073709551614
-(-) 18446744073709551614 85070591730234615847396907784232501249 = -85070591730234615828950163710522949635
-(-) 0 0 = 0
-(-) 0 1 = -1
-(-) 0 -1 = 1
-(-) 0 2 = -2
-(-) 0 -2 = 2
-(-) 0 -9223372036854775808 = 9223372036854775808
-(-) 0 9223372036854775807 = -9223372036854775807
-(-) 0 -9223372036854775809 = 9223372036854775809
-(-) 0 9223372036854775808 = -9223372036854775808
-(-) 0 0 = 0
-(-) 0 18446744073709551614 = -18446744073709551614
-(-) 0 0 = 0
-(-) 0 85070591730234615847396907784232501249 = -85070591730234615847396907784232501249
-(-) 85070591730234615847396907784232501249 0 = 85070591730234615847396907784232501249
-(-) 85070591730234615847396907784232501249 1 = 85070591730234615847396907784232501248
-(-) 85070591730234615847396907784232501249 -1 = 85070591730234615847396907784232501250
-(-) 85070591730234615847396907784232501249 2 = 85070591730234615847396907784232501247
-(-) 85070591730234615847396907784232501249 -2 = 85070591730234615847396907784232501251
-(-) 85070591730234615847396907784232501249 -9223372036854775808 = 85070591730234615856620279821087277057
-(-) 85070591730234615847396907784232501249 9223372036854775807 = 85070591730234615838173535747377725442
-(-) 85070591730234615847396907784232501249 -9223372036854775809 = 85070591730234615856620279821087277058
-(-) 85070591730234615847396907784232501249 9223372036854775808 = 85070591730234615838173535747377725441
-(-) 85070591730234615847396907784232501249 0 = 85070591730234615847396907784232501249
-(-) 85070591730234615847396907784232501249 18446744073709551614 = 85070591730234615828950163710522949635
-(-) 85070591730234615847396907784232501249 0 = 85070591730234615847396907784232501249
-(-) 85070591730234615847396907784232501249 85070591730234615847396907784232501249 = 0
-div 0 1 = 0
-div 0 -1 = 0
-div 0 2 = 0
-div 0 -2 = 0
-div 0 -9223372036854775808 = 0
-div 0 9223372036854775807 = 0
-div 0 -9223372036854775809 = 0
-div 0 9223372036854775808 = 0
-div 0 18446744073709551614 = 0
-div 0 85070591730234615847396907784232501249 = 0
-div 1 1 = 1
-div 1 -1 = -1
-div 1 2 = 0
-div 1 -2 = -1
-div 1 -9223372036854775808 = -1
-div 1 9223372036854775807 = 0
-div 1 -9223372036854775809 = -1
-div 1 9223372036854775808 = 0
-div 1 18446744073709551614 = 0
-div 1 85070591730234615847396907784232501249 = 0
-div -1 1 = -1
-div -1 -1 = 1
-div -1 2 = -1
-div -1 -2 = 0
-div -1 -9223372036854775808 = 0
-div -1 9223372036854775807 = -1
-div -1 -9223372036854775809 = 0
-div -1 9223372036854775808 = -1
-div -1 18446744073709551614 = -1
-div -1 85070591730234615847396907784232501249 = -1
-div 2 1 = 2
-div 2 -1 = -2
-div 2 2 = 1
-div 2 -2 = -1
-div 2 -9223372036854775808 = -1
-div 2 9223372036854775807 = 0
-div 2 -9223372036854775809 = -1
-div 2 9223372036854775808 = 0
-div 2 18446744073709551614 = 0
-div 2 85070591730234615847396907784232501249 = 0
-div -2 1 = -2
-div -2 -1 = 2
-div -2 2 = -1
-div -2 -2 = 1
-div -2 -9223372036854775808 = 0
-div -2 9223372036854775807 = -1
-div -2 -9223372036854775809 = 0
-div -2 9223372036854775808 = -1
-div -2 18446744073709551614 = -1
-div -2 85070591730234615847396907784232501249 = -1
-div -9223372036854775808 1 = -9223372036854775808
-div -9223372036854775808 -1 = 9223372036854775808
-div -9223372036854775808 2 = -4611686018427387904
-div -9223372036854775808 -2 = 4611686018427387904
-div -9223372036854775808 -9223372036854775808 = 1
-div -9223372036854775808 9223372036854775807 = -2
-div -9223372036854775808 -9223372036854775809 = 0
-div -9223372036854775808 9223372036854775808 = -1
-div -9223372036854775808 18446744073709551614 = -1
-div -9223372036854775808 85070591730234615847396907784232501249 = -1
-div 9223372036854775807 1 = 9223372036854775807
-div 9223372036854775807 -1 = -9223372036854775807
-div 9223372036854775807 2 = 4611686018427387903
-div 9223372036854775807 -2 = -4611686018427387904
-div 9223372036854775807 -9223372036854775808 = -1
-div 9223372036854775807 9223372036854775807 = 1
-div 9223372036854775807 -9223372036854775809 = -1
-div 9223372036854775807 9223372036854775808 = 0
-div 9223372036854775807 18446744073709551614 = 0
-div 9223372036854775807 85070591730234615847396907784232501249 = 0
-mod 0 1 = 0
-mod 0 -1 = 0
-mod 0 2 = 0
-mod 0 -2 = 0
-mod 0 -9223372036854775808 = 0
-mod 0 9223372036854775807 = 0
-mod 0 -9223372036854775809 = 0
-mod 0 9223372036854775808 = 0
-mod 0 18446744073709551614 = 0
-mod 0 85070591730234615847396907784232501249 = 0
-mod 1 1 = 0
-mod 1 -1 = 0
-mod 1 2 = 1
-mod 1 -2 = -1
-mod 1 -9223372036854775808 = -9223372036854775807
-mod 1 9223372036854775807 = 1
-mod 1 -9223372036854775809 = -9223372036854775808
-mod 1 9223372036854775808 = 1
-mod 1 18446744073709551614 = 1
-mod 1 85070591730234615847396907784232501249 = 1
-mod -1 1 = 0
-mod -1 -1 = 0
-mod -1 2 = 1
-mod -1 -2 = -1
-mod -1 -9223372036854775808 = -1
-mod -1 9223372036854775807 = 9223372036854775806
-mod -1 -9223372036854775809 = -1
-mod -1 9223372036854775808 = 9223372036854775807
-mod -1 18446744073709551614 = 18446744073709551613
-mod -1 85070591730234615847396907784232501249 = 85070591730234615847396907784232501248
-mod 2 1 = 0
-mod 2 -1 = 0
-mod 2 2 = 0
-mod 2 -2 = 0
-mod 2 -9223372036854775808 = -9223372036854775806
-mod 2 9223372036854775807 = 2
-mod 2 -9223372036854775809 = -9223372036854775807
-mod 2 9223372036854775808 = 2
-mod 2 18446744073709551614 = 2
-mod 2 85070591730234615847396907784232501249 = 2
-mod -2 1 = 0
-mod -2 -1 = 0
-mod -2 2 = 0
-mod -2 -2 = 0
-mod -2 -9223372036854775808 = -2
-mod -2 9223372036854775807 = 9223372036854775805
-mod -2 -9223372036854775809 = -2
-mod -2 9223372036854775808 = 9223372036854775806
-mod -2 18446744073709551614 = 18446744073709551612
-mod -2 85070591730234615847396907784232501249 = 85070591730234615847396907784232501247
-mod -9223372036854775808 1 = 0
-mod -9223372036854775808 -1 = 0
-mod -9223372036854775808 2 = 0
-mod -9223372036854775808 -2 = 0
-mod -9223372036854775808 -9223372036854775808 = 0
-mod -9223372036854775808 9223372036854775807 = 9223372036854775806
-mod -9223372036854775808 -9223372036854775809 = -9223372036854775808
-mod -9223372036854775808 9223372036854775808 = 0
-mod -9223372036854775808 18446744073709551614 = 9223372036854775806
-mod -9223372036854775808 85070591730234615847396907784232501249 = 85070591730234615838173535747377725441
-mod 9223372036854775807 1 = 0
-mod 9223372036854775807 -1 = 0
-mod 9223372036854775807 2 = 1
-mod 9223372036854775807 -2 = -1
-mod 9223372036854775807 -9223372036854775808 = -1
-mod 9223372036854775807 9223372036854775807 = 0
-mod 9223372036854775807 -9223372036854775809 = -2
-mod 9223372036854775807 9223372036854775808 = 9223372036854775807
-mod 9223372036854775807 18446744073709551614 = 9223372036854775807
-mod 9223372036854775807 85070591730234615847396907784232501249 = 9223372036854775807
-quot 0 1 = 0
-quot 0 -1 = 0
-quot 0 2 = 0
-quot 0 -2 = 0
-quot 0 -9223372036854775808 = 0
-quot 0 9223372036854775807 = 0
-quot 0 -9223372036854775809 = 0
-quot 0 9223372036854775808 = 0
-quot 0 18446744073709551614 = 0
-quot 0 85070591730234615847396907784232501249 = 0
-quot 1 1 = 1
-quot 1 -1 = -1
-quot 1 2 = 0
-quot 1 -2 = 0
-quot 1 -9223372036854775808 = 0
-quot 1 9223372036854775807 = 0
-quot 1 -9223372036854775809 = 0
-quot 1 9223372036854775808 = 0
-quot 1 18446744073709551614 = 0
-quot 1 85070591730234615847396907784232501249 = 0
-quot -1 1 = -1
-quot -1 -1 = 1
-quot -1 2 = 0
-quot -1 -2 = 0
-quot -1 -9223372036854775808 = 0
-quot -1 9223372036854775807 = 0
-quot -1 -9223372036854775809 = 0
-quot -1 9223372036854775808 = 0
-quot -1 18446744073709551614 = 0
-quot -1 85070591730234615847396907784232501249 = 0
-quot 2 1 = 2
-quot 2 -1 = -2
-quot 2 2 = 1
-quot 2 -2 = -1
-quot 2 -9223372036854775808 = 0
-quot 2 9223372036854775807 = 0
-quot 2 -9223372036854775809 = 0
-quot 2 9223372036854775808 = 0
-quot 2 18446744073709551614 = 0
-quot 2 85070591730234615847396907784232501249 = 0
-quot -2 1 = -2
-quot -2 -1 = 2
-quot -2 2 = -1
-quot -2 -2 = 1
-quot -2 -9223372036854775808 = 0
-quot -2 9223372036854775807 = 0
-quot -2 -9223372036854775809 = 0
-quot -2 9223372036854775808 = 0
-quot -2 18446744073709551614 = 0
-quot -2 85070591730234615847396907784232501249 = 0
-quot -9223372036854775808 1 = -9223372036854775808
-quot -9223372036854775808 -1 = 9223372036854775808
-quot -9223372036854775808 2 = -4611686018427387904
-quot -9223372036854775808 -2 = 4611686018427387904
-quot -9223372036854775808 -9223372036854775808 = 1
-quot -9223372036854775808 9223372036854775807 = -1
-quot -9223372036854775808 -9223372036854775809 = 0
-quot -9223372036854775808 9223372036854775808 = -1
-quot -9223372036854775808 18446744073709551614 = 0
-quot -9223372036854775808 85070591730234615847396907784232501249 = 0
-quot 9223372036854775807 1 = 9223372036854775807
-quot 9223372036854775807 -1 = -9223372036854775807
-quot 9223372036854775807 2 = 4611686018427387903
-quot 9223372036854775807 -2 = -4611686018427387903
-quot 9223372036854775807 -9223372036854775808 = 0
-quot 9223372036854775807 9223372036854775807 = 1
-quot 9223372036854775807 -9223372036854775809 = 0
-quot 9223372036854775807 9223372036854775808 = 0
-quot 9223372036854775807 18446744073709551614 = 0
-quot 9223372036854775807 85070591730234615847396907784232501249 = 0
-rem 0 1 = 0
-rem 0 -1 = 0
-rem 0 2 = 0
-rem 0 -2 = 0
-rem 0 -9223372036854775808 = 0
-rem 0 9223372036854775807 = 0
-rem 0 -9223372036854775809 = 0
-rem 0 9223372036854775808 = 0
-rem 0 18446744073709551614 = 0
-rem 0 85070591730234615847396907784232501249 = 0
-rem 1 1 = 0
-rem 1 -1 = 0
-rem 1 2 = 1
-rem 1 -2 = 1
-rem 1 -9223372036854775808 = 1
-rem 1 9223372036854775807 = 1
-rem 1 -9223372036854775809 = 1
-rem 1 9223372036854775808 = 1
-rem 1 18446744073709551614 = 1
-rem 1 85070591730234615847396907784232501249 = 1
-rem -1 1 = 0
-rem -1 -1 = 0
-rem -1 2 = -1
-rem -1 -2 = -1
-rem -1 -9223372036854775808 = -1
-rem -1 9223372036854775807 = -1
-rem -1 -9223372036854775809 = -1
-rem -1 9223372036854775808 = -1
-rem -1 18446744073709551614 = -1
-rem -1 85070591730234615847396907784232501249 = -1
-rem 2 1 = 0
-rem 2 -1 = 0
-rem 2 2 = 0
-rem 2 -2 = 0
-rem 2 -9223372036854775808 = 2
-rem 2 9223372036854775807 = 2
-rem 2 -9223372036854775809 = 2
-rem 2 9223372036854775808 = 2
-rem 2 18446744073709551614 = 2
-rem 2 85070591730234615847396907784232501249 = 2
-rem -2 1 = 0
-rem -2 -1 = 0
-rem -2 2 = 0
-rem -2 -2 = 0
-rem -2 -9223372036854775808 = -2
-rem -2 9223372036854775807 = -2
-rem -2 -9223372036854775809 = -2
-rem -2 9223372036854775808 = -2
-rem -2 18446744073709551614 = -2
-rem -2 85070591730234615847396907784232501249 = -2
-rem -9223372036854775808 1 = 0
-rem -9223372036854775808 -1 = 0
-rem -9223372036854775808 2 = 0
-rem -9223372036854775808 -2 = 0
-rem -9223372036854775808 -9223372036854775808 = 0
-rem -9223372036854775808 9223372036854775807 = -1
-rem -9223372036854775808 -9223372036854775809 = -9223372036854775808
-rem -9223372036854775808 9223372036854775808 = 0
-rem -9223372036854775808 18446744073709551614 = -9223372036854775808
-rem -9223372036854775808 85070591730234615847396907784232501249 = -9223372036854775808
-rem 9223372036854775807 1 = 0
-rem 9223372036854775807 -1 = 0
-rem 9223372036854775807 2 = 1
-rem 9223372036854775807 -2 = 1
-rem 9223372036854775807 -9223372036854775808 = 9223372036854775807
-rem 9223372036854775807 9223372036854775807 = 0
-rem 9223372036854775807 -9223372036854775809 = 9223372036854775807
-rem 9223372036854775807 9223372036854775808 = 9223372036854775807
-rem 9223372036854775807 18446744073709551614 = 9223372036854775807
-rem 9223372036854775807 85070591730234615847396907784232501249 = 9223372036854775807
-gcd 0 1 = 1
-gcd 0 -1 = 1
-gcd 0 2 = 2
-gcd 0 -2 = 2
-gcd 0 -9223372036854775808 = 9223372036854775808
-gcd 0 9223372036854775807 = 9223372036854775807
-gcd 1 0 = 1
-gcd 1 1 = 1
-gcd 1 -1 = 1
-gcd 1 2 = 1
-gcd 1 -2 = 1
-gcd 1 -9223372036854775808 = 1
-gcd 1 9223372036854775807 = 1
-gcd -1 0 = 1
-gcd -1 1 = 1
-gcd -1 -1 = 1
-gcd -1 2 = 1
-gcd -1 -2 = 1
-gcd -1 -9223372036854775808 = 1
-gcd -1 9223372036854775807 = 1
-gcd 2 0 = 2
-gcd 2 1 = 1
-gcd 2 -1 = 1
-gcd 2 2 = 2
-gcd 2 -2 = 2
-gcd 2 -9223372036854775808 = 2
-gcd 2 9223372036854775807 = 1
-gcd -2 0 = 2
-gcd -2 1 = 1
-gcd -2 -1 = 1
-gcd -2 2 = 2
-gcd -2 -2 = 2
-gcd -2 -9223372036854775808 = 2
-gcd -2 9223372036854775807 = 1
-gcd -9223372036854775808 0 = 9223372036854775808
-gcd -9223372036854775808 1 = 1
-gcd -9223372036854775808 -1 = 1
-gcd -9223372036854775808 2 = 2
-gcd -9223372036854775808 -2 = 2
-gcd -9223372036854775808 -9223372036854775808 = 9223372036854775808
-gcd -9223372036854775808 9223372036854775807 = 1
-gcd 9223372036854775807 0 = 9223372036854775807
-gcd 9223372036854775807 1 = 1
-gcd 9223372036854775807 -1 = 1
-gcd 9223372036854775807 2 = 1
-gcd 9223372036854775807 -2 = 1
-gcd 9223372036854775807 -9223372036854775808 = 1
-gcd 9223372036854775807 9223372036854775807 = 9223372036854775807
-lcm 0 1 = 0
-lcm 0 -1 = 0
-lcm 0 2 = 0
-lcm 0 -2 = 0
-lcm 0 -9223372036854775808 = 0
-lcm 0 9223372036854775807 = 0
-lcm 1 0 = 0
-lcm 1 1 = 1
-lcm 1 -1 = 1
-lcm 1 2 = 2
-lcm 1 -2 = 2
-lcm 1 -9223372036854775808 = 9223372036854775808
-lcm 1 9223372036854775807 = 9223372036854775807
-lcm -1 0 = 0
-lcm -1 1 = 1
-lcm -1 -1 = 1
-lcm -1 2 = 2
-lcm -1 -2 = 2
-lcm -1 -9223372036854775808 = 9223372036854775808
-lcm -1 9223372036854775807 = 9223372036854775807
-lcm 2 0 = 0
-lcm 2 1 = 2
-lcm 2 -1 = 2
-lcm 2 2 = 2
-lcm 2 -2 = 2
-lcm 2 -9223372036854775808 = 9223372036854775808
-lcm 2 9223372036854775807 = 18446744073709551614
-lcm -2 0 = 0
-lcm -2 1 = 2
-lcm -2 -1 = 2
-lcm -2 2 = 2
-lcm -2 -2 = 2
-lcm -2 -9223372036854775808 = 9223372036854775808
-lcm -2 9223372036854775807 = 18446744073709551614
-lcm -9223372036854775808 0 = 0
-lcm -9223372036854775808 1 = 9223372036854775808
-lcm -9223372036854775808 -1 = 9223372036854775808
-lcm -9223372036854775808 2 = 9223372036854775808
-lcm -9223372036854775808 -2 = 9223372036854775808
-lcm -9223372036854775808 -9223372036854775808 = 9223372036854775808
-lcm -9223372036854775808 9223372036854775807 = 85070591730234615856620279821087277056
-lcm 9223372036854775807 0 = 0
-lcm 9223372036854775807 1 = 9223372036854775807
-lcm 9223372036854775807 -1 = 9223372036854775807
-lcm 9223372036854775807 2 = 18446744073709551614
-lcm 9223372036854775807 -2 = 18446744073709551614
-lcm 9223372036854775807 -9223372036854775808 = 85070591730234615856620279821087277056
-lcm 9223372036854775807 9223372036854775807 = 9223372036854775807
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout-mips-sgi-irix b/testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout-mips-sgi-irix
deleted file mode 100644
index 9ea4a0f2eb..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout-mips-sgi-irix
+++ /dev/null
@@ -1,1053 +0,0 @@
-(+) 0 0 = 0
-(+) 0 1 = 1
-(+) 0 -1 = -1
-(+) 0 2 = 2
-(+) 0 -2 = -2
-(+) 0 -9223372036854775808 = -9223372036854775808
-(+) 0 9223372036854775807 = 9223372036854775807
-(+) 1 0 = 1
-(+) 1 1 = 2
-(+) 1 -1 = 0
-(+) 1 2 = 3
-(+) 1 -2 = -1
-(+) 1 -9223372036854775808 = -9223372036854775807
-(+) 1 9223372036854775807 = -9223372036854775808
-(+) -1 0 = -1
-(+) -1 1 = 0
-(+) -1 -1 = -2
-(+) -1 2 = 1
-(+) -1 -2 = -3
-(+) -1 -9223372036854775808 = 9223372036854775807
-(+) -1 9223372036854775807 = 9223372036854775806
-(+) 2 0 = 2
-(+) 2 1 = 3
-(+) 2 -1 = 1
-(+) 2 2 = 4
-(+) 2 -2 = 0
-(+) 2 -9223372036854775808 = -9223372036854775806
-(+) 2 9223372036854775807 = -9223372036854775807
-(+) -2 0 = -2
-(+) -2 1 = -1
-(+) -2 -1 = -3
-(+) -2 2 = 0
-(+) -2 -2 = -4
-(+) -2 -9223372036854775808 = 9223372036854775806
-(+) -2 9223372036854775807 = 9223372036854775805
-(+) -9223372036854775808 0 = -9223372036854775808
-(+) -9223372036854775808 1 = -9223372036854775807
-(+) -9223372036854775808 -1 = 9223372036854775807
-(+) -9223372036854775808 2 = -9223372036854775806
-(+) -9223372036854775808 -2 = 9223372036854775806
-(+) -9223372036854775808 -9223372036854775808 = 0
-(+) -9223372036854775808 9223372036854775807 = -1
-(+) 9223372036854775807 0 = 9223372036854775807
-(+) 9223372036854775807 1 = -9223372036854775808
-(+) 9223372036854775807 -1 = 9223372036854775806
-(+) 9223372036854775807 2 = -9223372036854775807
-(+) 9223372036854775807 -2 = 9223372036854775805
-(+) 9223372036854775807 -9223372036854775808 = -1
-(+) 9223372036854775807 9223372036854775807 = -2
-(-) 0 0 = 0
-(-) 0 1 = -1
-(-) 0 -1 = 1
-(-) 0 2 = -2
-(-) 0 -2 = 2
-(-) 0 -9223372036854775808 = -9223372036854775808
-(-) 0 9223372036854775807 = -9223372036854775807
-(-) 1 0 = 1
-(-) 1 1 = 0
-(-) 1 -1 = 2
-(-) 1 2 = -1
-(-) 1 -2 = 3
-(-) 1 -9223372036854775808 = -9223372036854775807
-(-) 1 9223372036854775807 = -9223372036854775806
-(-) -1 0 = -1
-(-) -1 1 = -2
-(-) -1 -1 = 0
-(-) -1 2 = -3
-(-) -1 -2 = 1
-(-) -1 -9223372036854775808 = 9223372036854775807
-(-) -1 9223372036854775807 = -9223372036854775808
-(-) 2 0 = 2
-(-) 2 1 = 1
-(-) 2 -1 = 3
-(-) 2 2 = 0
-(-) 2 -2 = 4
-(-) 2 -9223372036854775808 = -9223372036854775806
-(-) 2 9223372036854775807 = -9223372036854775805
-(-) -2 0 = -2
-(-) -2 1 = -3
-(-) -2 -1 = -1
-(-) -2 2 = -4
-(-) -2 -2 = 0
-(-) -2 -9223372036854775808 = 9223372036854775806
-(-) -2 9223372036854775807 = 9223372036854775807
-(-) -9223372036854775808 0 = -9223372036854775808
-(-) -9223372036854775808 1 = 9223372036854775807
-(-) -9223372036854775808 -1 = -9223372036854775807
-(-) -9223372036854775808 2 = 9223372036854775806
-(-) -9223372036854775808 -2 = -9223372036854775806
-(-) -9223372036854775808 -9223372036854775808 = 0
-(-) -9223372036854775808 9223372036854775807 = 1
-(-) 9223372036854775807 0 = 9223372036854775807
-(-) 9223372036854775807 1 = 9223372036854775806
-(-) 9223372036854775807 -1 = -9223372036854775808
-(-) 9223372036854775807 2 = 9223372036854775805
-(-) 9223372036854775807 -2 = -9223372036854775807
-(-) 9223372036854775807 -9223372036854775808 = -1
-(-) 9223372036854775807 9223372036854775807 = 0
-(^) 0 0 = 1
-(^) 0 1 = 0
-(^) 0 2 = 0
-(^) 1 0 = 1
-(^) 1 1 = 1
-(^) 1 2 = 1
-(^) -1 0 = 1
-(^) -1 1 = -1
-(^) -1 2 = 1
-(^) 2 0 = 1
-(^) 2 1 = 2
-(^) 2 2 = 4
-(^) -2 0 = 1
-(^) -2 1 = -2
-(^) -2 2 = 4
-(^) -9223372036854775808 0 = 1
-(^) -9223372036854775808 1 = -9223372036854775808
-(^) -9223372036854775808 2 = 0
-(^) 9223372036854775807 0 = 1
-(^) 9223372036854775807 1 = 9223372036854775807
-(^) 9223372036854775807 2 = 1
-div 0 1 = 0
-div 0 -1 = 0
-div 0 2 = 0
-div 0 -2 = 0
-div 0 -9223372036854775808 = 0
-div 0 9223372036854775807 = 0
-div 1 1 = 1
-div 1 -1 = -1
-div 1 2 = 0
-div 1 -2 = -1
-div 1 -9223372036854775808 = -1
-div 1 9223372036854775807 = 0
-div -1 1 = -1
-div -1 -1 = 1
-div -1 2 = -1
-div -1 -2 = 0
-div -1 -9223372036854775808 = 0
-div -1 9223372036854775807 = -1
-div 2 1 = 2
-div 2 -1 = -2
-div 2 2 = 1
-div 2 -2 = -1
-div 2 -9223372036854775808 = -1
-div 2 9223372036854775807 = 0
-div -2 1 = -2
-div -2 -1 = 2
-div -2 2 = -1
-div -2 -2 = 1
-div -2 -9223372036854775808 = 0
-div -2 9223372036854775807 = -1
-div 9223372036854775807 1 = 9223372036854775807
-div 9223372036854775807 -1 = -9223372036854775807
-div 9223372036854775807 2 = 4611686018427387903
-div 9223372036854775807 -2 = -4611686018427387904
-div 9223372036854775807 -9223372036854775808 = -1
-div 9223372036854775807 9223372036854775807 = 1
-mod 0 1 = 0
-mod 0 -1 = 0
-mod 0 2 = 0
-mod 0 -2 = 0
-mod 0 -9223372036854775808 = 0
-mod 0 9223372036854775807 = 0
-mod 1 1 = 0
-mod 1 -1 = 0
-mod 1 2 = 1
-mod 1 -2 = -1
-mod 1 -9223372036854775808 = -9223372036854775807
-mod 1 9223372036854775807 = 1
-mod -1 1 = 0
-mod -1 -1 = 0
-mod -1 2 = 1
-mod -1 -2 = -1
-mod -1 -9223372036854775808 = -1
-mod -1 9223372036854775807 = 9223372036854775806
-mod 2 1 = 0
-mod 2 -1 = 0
-mod 2 2 = 0
-mod 2 -2 = 0
-mod 2 -9223372036854775808 = -9223372036854775806
-mod 2 9223372036854775807 = 2
-mod -2 1 = 0
-mod -2 -1 = 0
-mod -2 2 = 0
-mod -2 -2 = 0
-mod -2 -9223372036854775808 = -2
-mod -2 9223372036854775807 = 9223372036854775805
-mod 9223372036854775807 1 = 0
-mod 9223372036854775807 -1 = 0
-mod 9223372036854775807 2 = 1
-mod 9223372036854775807 -2 = -1
-mod 9223372036854775807 -9223372036854775808 = -1
-mod 9223372036854775807 9223372036854775807 = 0
-quot 0 1 = 0
-quot 0 -1 = 0
-quot 0 2 = 0
-quot 0 -2 = 0
-quot 0 -9223372036854775808 = 0
-quot 0 9223372036854775807 = 0
-quot 1 1 = 1
-quot 1 -1 = -1
-quot 1 2 = 0
-quot 1 -2 = 0
-quot 1 -9223372036854775808 = 0
-quot 1 9223372036854775807 = 0
-quot -1 1 = -1
-quot -1 -1 = 1
-quot -1 2 = 0
-quot -1 -2 = 0
-quot -1 -9223372036854775808 = 0
-quot -1 9223372036854775807 = 0
-quot 2 1 = 2
-quot 2 -1 = -2
-quot 2 2 = 1
-quot 2 -2 = -1
-quot 2 -9223372036854775808 = 0
-quot 2 9223372036854775807 = 0
-quot -2 1 = -2
-quot -2 -1 = 2
-quot -2 2 = -1
-quot -2 -2 = 1
-quot -2 -9223372036854775808 = 0
-quot -2 9223372036854775807 = 0
-quot 9223372036854775807 1 = 9223372036854775807
-quot 9223372036854775807 -1 = -9223372036854775807
-quot 9223372036854775807 2 = 4611686018427387903
-quot 9223372036854775807 -2 = -4611686018427387903
-quot 9223372036854775807 -9223372036854775808 = 0
-quot 9223372036854775807 9223372036854775807 = 1
-rem 0 1 = 0
-rem 0 -1 = 0
-rem 0 2 = 0
-rem 0 -2 = 0
-rem 0 -9223372036854775808 = 0
-rem 0 9223372036854775807 = 0
-rem 1 1 = 0
-rem 1 -1 = 0
-rem 1 2 = 1
-rem 1 -2 = 1
-rem 1 -9223372036854775808 = 1
-rem 1 9223372036854775807 = 1
-rem -1 1 = 0
-rem -1 -1 = 0
-rem -1 2 = -1
-rem -1 -2 = -1
-rem -1 -9223372036854775808 = -1
-rem -1 9223372036854775807 = -1
-rem 2 1 = 0
-rem 2 -1 = 0
-rem 2 2 = 0
-rem 2 -2 = 0
-rem 2 -9223372036854775808 = 2
-rem 2 9223372036854775807 = 2
-rem -2 1 = 0
-rem -2 -1 = 0
-rem -2 2 = 0
-rem -2 -2 = 0
-rem -2 -9223372036854775808 = -2
-rem -2 9223372036854775807 = -2
-rem 9223372036854775807 1 = 0
-rem 9223372036854775807 -1 = 0
-rem 9223372036854775807 2 = 1
-rem 9223372036854775807 -2 = 1
-rem 9223372036854775807 -9223372036854775808 = 9223372036854775807
-rem 9223372036854775807 9223372036854775807 = 0
-gcd 0 1 = 1
-gcd 0 -1 = 1
-gcd 0 2 = 2
-gcd 0 -2 = 2
-gcd 0 9223372036854775807 = 9223372036854775807
-gcd 1 0 = 1
-gcd 1 1 = 1
-gcd 1 -1 = 1
-gcd 1 2 = 1
-gcd 1 -2 = 1
-gcd 1 9223372036854775807 = 1
-gcd -1 0 = 1
-gcd -1 1 = 1
-gcd -1 -1 = 1
-gcd -1 2 = 1
-gcd -1 -2 = 1
-gcd -1 9223372036854775807 = 1
-gcd 2 0 = 2
-gcd 2 1 = 1
-gcd 2 -1 = 1
-gcd 2 2 = 2
-gcd 2 -2 = 2
-gcd 2 9223372036854775807 = 1
-gcd -2 0 = 2
-gcd -2 1 = 1
-gcd -2 -1 = 1
-gcd -2 2 = 2
-gcd -2 -2 = 2
-gcd -2 9223372036854775807 = 1
-gcd 9223372036854775807 0 = 9223372036854775807
-gcd 9223372036854775807 1 = 1
-gcd 9223372036854775807 -1 = 1
-gcd 9223372036854775807 2 = 1
-gcd 9223372036854775807 -2 = 1
-gcd 9223372036854775807 9223372036854775807 = 9223372036854775807
-lcm 0 1 = 0
-lcm 0 -1 = 0
-lcm 0 2 = 0
-lcm 0 -2 = 0
-lcm 0 -9223372036854775808 = 0
-lcm 1 0 = 0
-lcm 1 1 = 1
-lcm 1 -1 = 1
-lcm 1 2 = 2
-lcm 1 -2 = 2
-lcm 1 -9223372036854775808 = -9223372036854775808
-lcm -1 0 = 0
-lcm -1 1 = 1
-lcm -1 -1 = 1
-lcm -1 2 = 2
-lcm -1 -2 = 2
-lcm -1 -9223372036854775808 = -9223372036854775808
-lcm 2 0 = 0
-lcm 2 1 = 2
-lcm 2 -1 = 2
-lcm 2 2 = 2
-lcm 2 -2 = 2
-lcm 2 -9223372036854775808 = -9223372036854775808
-lcm -2 0 = 0
-lcm -2 1 = 2
-lcm -2 -1 = 2
-lcm -2 2 = 2
-lcm -2 -2 = 2
-lcm -2 -9223372036854775808 = -9223372036854775808
-lcm -9223372036854775808 0 = 0
-lcm -9223372036854775808 1 = -9223372036854775808
-lcm -9223372036854775808 -1 = -9223372036854775808
-lcm -9223372036854775808 2 = -9223372036854775808
-lcm -9223372036854775808 -2 = -9223372036854775808
-lcm -9223372036854775808 -9223372036854775808 = -9223372036854775808
-lcm 9223372036854775807 0 = 0
-lcm 9223372036854775807 1 = 9223372036854775807
-lcm 9223372036854775807 -1 = 9223372036854775807
-lcm 9223372036854775807 2 = 2
-lcm 9223372036854775807 -2 = 2
-lcm 9223372036854775807 -9223372036854775808 = -9223372036854775808
-(+) 0 0 = 0
-(+) 0 1 = 1
-(+) 0 -1 = -1
-(+) 0 2 = 2
-(+) 0 -2 = -2
-(+) 0 -9223372036854775808 = -9223372036854775808
-(+) 0 9223372036854775807 = 9223372036854775807
-(+) 0 -9223372036854775809 = -9223372036854775809
-(+) 0 9223372036854775808 = 9223372036854775808
-(+) 0 0 = 0
-(+) 0 18446744073709551614 = 18446744073709551614
-(+) 0 0 = 0
-(+) 0 85070591730234615847396907784232501249 = 85070591730234615847396907784232501249
-(+) 1 0 = 1
-(+) 1 1 = 2
-(+) 1 -1 = 0
-(+) 1 2 = 3
-(+) 1 -2 = -1
-(+) 1 -9223372036854775808 = -9223372036854775807
-(+) 1 9223372036854775807 = 9223372036854775808
-(+) 1 -9223372036854775809 = -9223372036854775808
-(+) 1 9223372036854775808 = 9223372036854775809
-(+) 1 0 = 1
-(+) 1 18446744073709551614 = 18446744073709551615
-(+) 1 0 = 1
-(+) 1 85070591730234615847396907784232501249 = 85070591730234615847396907784232501250
-(+) -1 0 = -1
-(+) -1 1 = 0
-(+) -1 -1 = -2
-(+) -1 2 = 1
-(+) -1 -2 = -3
-(+) -1 -9223372036854775808 = -9223372036854775809
-(+) -1 9223372036854775807 = 9223372036854775806
-(+) -1 -9223372036854775809 = -9223372036854775810
-(+) -1 9223372036854775808 = 9223372036854775807
-(+) -1 0 = -1
-(+) -1 18446744073709551614 = 18446744073709551613
-(+) -1 0 = -1
-(+) -1 85070591730234615847396907784232501249 = 85070591730234615847396907784232501248
-(+) 2 0 = 2
-(+) 2 1 = 3
-(+) 2 -1 = 1
-(+) 2 2 = 4
-(+) 2 -2 = 0
-(+) 2 -9223372036854775808 = -9223372036854775806
-(+) 2 9223372036854775807 = 9223372036854775809
-(+) 2 -9223372036854775809 = -9223372036854775807
-(+) 2 9223372036854775808 = 9223372036854775810
-(+) 2 0 = 2
-(+) 2 18446744073709551614 = 18446744073709551616
-(+) 2 0 = 2
-(+) 2 85070591730234615847396907784232501249 = 85070591730234615847396907784232501251
-(+) -2 0 = -2
-(+) -2 1 = -1
-(+) -2 -1 = -3
-(+) -2 2 = 0
-(+) -2 -2 = -4
-(+) -2 -9223372036854775808 = -9223372036854775810
-(+) -2 9223372036854775807 = 9223372036854775805
-(+) -2 -9223372036854775809 = -9223372036854775811
-(+) -2 9223372036854775808 = 9223372036854775806
-(+) -2 0 = -2
-(+) -2 18446744073709551614 = 18446744073709551612
-(+) -2 0 = -2
-(+) -2 85070591730234615847396907784232501249 = 85070591730234615847396907784232501247
-(+) -9223372036854775808 0 = -9223372036854775808
-(+) -9223372036854775808 1 = -9223372036854775807
-(+) -9223372036854775808 -1 = -9223372036854775809
-(+) -9223372036854775808 2 = -9223372036854775806
-(+) -9223372036854775808 -2 = -9223372036854775810
-(+) -9223372036854775808 -9223372036854775808 = -18446744073709551616
-(+) -9223372036854775808 9223372036854775807 = -1
-(+) -9223372036854775808 -9223372036854775809 = -18446744073709551617
-(+) -9223372036854775808 9223372036854775808 = 0
-(+) -9223372036854775808 0 = -9223372036854775808
-(+) -9223372036854775808 18446744073709551614 = 9223372036854775806
-(+) -9223372036854775808 0 = -9223372036854775808
-(+) -9223372036854775808 85070591730234615847396907784232501249 = 85070591730234615838173535747377725441
-(+) 9223372036854775807 0 = 9223372036854775807
-(+) 9223372036854775807 1 = 9223372036854775808
-(+) 9223372036854775807 -1 = 9223372036854775806
-(+) 9223372036854775807 2 = 9223372036854775809
-(+) 9223372036854775807 -2 = 9223372036854775805
-(+) 9223372036854775807 -9223372036854775808 = -1
-(+) 9223372036854775807 9223372036854775807 = 18446744073709551614
-(+) 9223372036854775807 -9223372036854775809 = -2
-(+) 9223372036854775807 9223372036854775808 = 18446744073709551615
-(+) 9223372036854775807 0 = 9223372036854775807
-(+) 9223372036854775807 18446744073709551614 = 27670116110564327421
-(+) 9223372036854775807 0 = 9223372036854775807
-(+) 9223372036854775807 85070591730234615847396907784232501249 = 85070591730234615856620279821087277056
-(+) -9223372036854775809 0 = -9223372036854775809
-(+) -9223372036854775809 1 = -9223372036854775808
-(+) -9223372036854775809 -1 = -9223372036854775810
-(+) -9223372036854775809 2 = -9223372036854775807
-(+) -9223372036854775809 -2 = -9223372036854775811
-(+) -9223372036854775809 -9223372036854775808 = -18446744073709551617
-(+) -9223372036854775809 9223372036854775807 = -2
-(+) -9223372036854775809 -9223372036854775809 = -18446744073709551618
-(+) -9223372036854775809 9223372036854775808 = -1
-(+) -9223372036854775809 0 = -9223372036854775809
-(+) -9223372036854775809 18446744073709551614 = 9223372036854775805
-(+) -9223372036854775809 0 = -9223372036854775809
-(+) -9223372036854775809 85070591730234615847396907784232501249 = 85070591730234615838173535747377725440
-(+) 9223372036854775808 0 = 9223372036854775808
-(+) 9223372036854775808 1 = 9223372036854775809
-(+) 9223372036854775808 -1 = 9223372036854775807
-(+) 9223372036854775808 2 = 9223372036854775810
-(+) 9223372036854775808 -2 = 9223372036854775806
-(+) 9223372036854775808 -9223372036854775808 = 0
-(+) 9223372036854775808 9223372036854775807 = 18446744073709551615
-(+) 9223372036854775808 -9223372036854775809 = -1
-(+) 9223372036854775808 9223372036854775808 = 18446744073709551616
-(+) 9223372036854775808 0 = 9223372036854775808
-(+) 9223372036854775808 18446744073709551614 = 27670116110564327422
-(+) 9223372036854775808 0 = 9223372036854775808
-(+) 9223372036854775808 85070591730234615847396907784232501249 = 85070591730234615856620279821087277057
-(+) 0 0 = 0
-(+) 0 1 = 1
-(+) 0 -1 = -1
-(+) 0 2 = 2
-(+) 0 -2 = -2
-(+) 0 -9223372036854775808 = -9223372036854775808
-(+) 0 9223372036854775807 = 9223372036854775807
-(+) 0 -9223372036854775809 = -9223372036854775809
-(+) 0 9223372036854775808 = 9223372036854775808
-(+) 0 0 = 0
-(+) 0 18446744073709551614 = 18446744073709551614
-(+) 0 0 = 0
-(+) 0 85070591730234615847396907784232501249 = 85070591730234615847396907784232501249
-(+) 18446744073709551614 0 = 18446744073709551614
-(+) 18446744073709551614 1 = 18446744073709551615
-(+) 18446744073709551614 -1 = 18446744073709551613
-(+) 18446744073709551614 2 = 18446744073709551616
-(+) 18446744073709551614 -2 = 18446744073709551612
-(+) 18446744073709551614 -9223372036854775808 = 9223372036854775806
-(+) 18446744073709551614 9223372036854775807 = 27670116110564327421
-(+) 18446744073709551614 -9223372036854775809 = 9223372036854775805
-(+) 18446744073709551614 9223372036854775808 = 27670116110564327422
-(+) 18446744073709551614 0 = 18446744073709551614
-(+) 18446744073709551614 18446744073709551614 = 36893488147419103228
-(+) 18446744073709551614 0 = 18446744073709551614
-(+) 18446744073709551614 85070591730234615847396907784232501249 = 85070591730234615865843651857942052863
-(+) 0 0 = 0
-(+) 0 1 = 1
-(+) 0 -1 = -1
-(+) 0 2 = 2
-(+) 0 -2 = -2
-(+) 0 -9223372036854775808 = -9223372036854775808
-(+) 0 9223372036854775807 = 9223372036854775807
-(+) 0 -9223372036854775809 = -9223372036854775809
-(+) 0 9223372036854775808 = 9223372036854775808
-(+) 0 0 = 0
-(+) 0 18446744073709551614 = 18446744073709551614
-(+) 0 0 = 0
-(+) 0 85070591730234615847396907784232501249 = 85070591730234615847396907784232501249
-(+) 85070591730234615847396907784232501249 0 = 85070591730234615847396907784232501249
-(+) 85070591730234615847396907784232501249 1 = 85070591730234615847396907784232501250
-(+) 85070591730234615847396907784232501249 -1 = 85070591730234615847396907784232501248
-(+) 85070591730234615847396907784232501249 2 = 85070591730234615847396907784232501251
-(+) 85070591730234615847396907784232501249 -2 = 85070591730234615847396907784232501247
-(+) 85070591730234615847396907784232501249 -9223372036854775808 = 85070591730234615838173535747377725441
-(+) 85070591730234615847396907784232501249 9223372036854775807 = 85070591730234615856620279821087277056
-(+) 85070591730234615847396907784232501249 -9223372036854775809 = 85070591730234615838173535747377725440
-(+) 85070591730234615847396907784232501249 9223372036854775808 = 85070591730234615856620279821087277057
-(+) 85070591730234615847396907784232501249 0 = 85070591730234615847396907784232501249
-(+) 85070591730234615847396907784232501249 18446744073709551614 = 85070591730234615865843651857942052863
-(+) 85070591730234615847396907784232501249 0 = 85070591730234615847396907784232501249
-(+) 85070591730234615847396907784232501249 85070591730234615847396907784232501249 = 170141183460469231694793815568465002498
-(-) 0 0 = 0
-(-) 0 1 = -1
-(-) 0 -1 = 1
-(-) 0 2 = -2
-(-) 0 -2 = 2
-(-) 0 -9223372036854775808 = 9223372036854775808
-(-) 0 9223372036854775807 = -9223372036854775807
-(-) 0 -9223372036854775809 = 9223372036854775809
-(-) 0 9223372036854775808 = -9223372036854775808
-(-) 0 0 = 0
-(-) 0 18446744073709551614 = -18446744073709551614
-(-) 0 0 = 0
-(-) 0 85070591730234615847396907784232501249 = -85070591730234615847396907784232501249
-(-) 1 0 = 1
-(-) 1 1 = 0
-(-) 1 -1 = 2
-(-) 1 2 = -1
-(-) 1 -2 = 3
-(-) 1 -9223372036854775808 = 9223372036854775809
-(-) 1 9223372036854775807 = -9223372036854775806
-(-) 1 -9223372036854775809 = 9223372036854775810
-(-) 1 9223372036854775808 = -9223372036854775807
-(-) 1 0 = 1
-(-) 1 18446744073709551614 = -18446744073709551613
-(-) 1 0 = 1
-(-) 1 85070591730234615847396907784232501249 = -85070591730234615847396907784232501248
-(-) -1 0 = -1
-(-) -1 1 = -2
-(-) -1 -1 = 0
-(-) -1 2 = -3
-(-) -1 -2 = 1
-(-) -1 -9223372036854775808 = 9223372036854775807
-(-) -1 9223372036854775807 = -9223372036854775808
-(-) -1 -9223372036854775809 = 9223372036854775808
-(-) -1 9223372036854775808 = -9223372036854775809
-(-) -1 0 = -1
-(-) -1 18446744073709551614 = -18446744073709551615
-(-) -1 0 = -1
-(-) -1 85070591730234615847396907784232501249 = -85070591730234615847396907784232501250
-(-) 2 0 = 2
-(-) 2 1 = 1
-(-) 2 -1 = 3
-(-) 2 2 = 0
-(-) 2 -2 = 4
-(-) 2 -9223372036854775808 = 9223372036854775810
-(-) 2 9223372036854775807 = -9223372036854775805
-(-) 2 -9223372036854775809 = 9223372036854775811
-(-) 2 9223372036854775808 = -9223372036854775806
-(-) 2 0 = 2
-(-) 2 18446744073709551614 = -18446744073709551612
-(-) 2 0 = 2
-(-) 2 85070591730234615847396907784232501249 = -85070591730234615847396907784232501247
-(-) -2 0 = -2
-(-) -2 1 = -3
-(-) -2 -1 = -1
-(-) -2 2 = -4
-(-) -2 -2 = 0
-(-) -2 -9223372036854775808 = 9223372036854775806
-(-) -2 9223372036854775807 = -9223372036854775809
-(-) -2 -9223372036854775809 = 9223372036854775807
-(-) -2 9223372036854775808 = -9223372036854775810
-(-) -2 0 = -2
-(-) -2 18446744073709551614 = -18446744073709551616
-(-) -2 0 = -2
-(-) -2 85070591730234615847396907784232501249 = -85070591730234615847396907784232501251
-(-) -9223372036854775808 0 = -9223372036854775808
-(-) -9223372036854775808 1 = -9223372036854775809
-(-) -9223372036854775808 -1 = -9223372036854775807
-(-) -9223372036854775808 2 = -9223372036854775810
-(-) -9223372036854775808 -2 = -9223372036854775806
-(-) -9223372036854775808 -9223372036854775808 = 0
-(-) -9223372036854775808 9223372036854775807 = -18446744073709551615
-(-) -9223372036854775808 -9223372036854775809 = 1
-(-) -9223372036854775808 9223372036854775808 = -18446744073709551616
-(-) -9223372036854775808 0 = -9223372036854775808
-(-) -9223372036854775808 18446744073709551614 = -27670116110564327422
-(-) -9223372036854775808 0 = -9223372036854775808
-(-) -9223372036854775808 85070591730234615847396907784232501249 = -85070591730234615856620279821087277057
-(-) 9223372036854775807 0 = 9223372036854775807
-(-) 9223372036854775807 1 = 9223372036854775806
-(-) 9223372036854775807 -1 = 9223372036854775808
-(-) 9223372036854775807 2 = 9223372036854775805
-(-) 9223372036854775807 -2 = 9223372036854775809
-(-) 9223372036854775807 -9223372036854775808 = 18446744073709551615
-(-) 9223372036854775807 9223372036854775807 = 0
-(-) 9223372036854775807 -9223372036854775809 = 18446744073709551616
-(-) 9223372036854775807 9223372036854775808 = -1
-(-) 9223372036854775807 0 = 9223372036854775807
-(-) 9223372036854775807 18446744073709551614 = -9223372036854775807
-(-) 9223372036854775807 0 = 9223372036854775807
-(-) 9223372036854775807 85070591730234615847396907784232501249 = -85070591730234615838173535747377725442
-(-) -9223372036854775809 0 = -9223372036854775809
-(-) -9223372036854775809 1 = -9223372036854775810
-(-) -9223372036854775809 -1 = -9223372036854775808
-(-) -9223372036854775809 2 = -9223372036854775811
-(-) -9223372036854775809 -2 = -9223372036854775807
-(-) -9223372036854775809 -9223372036854775808 = -1
-(-) -9223372036854775809 9223372036854775807 = -18446744073709551616
-(-) -9223372036854775809 -9223372036854775809 = 0
-(-) -9223372036854775809 9223372036854775808 = -18446744073709551617
-(-) -9223372036854775809 0 = -9223372036854775809
-(-) -9223372036854775809 18446744073709551614 = -27670116110564327423
-(-) -9223372036854775809 0 = -9223372036854775809
-(-) -9223372036854775809 85070591730234615847396907784232501249 = -85070591730234615856620279821087277058
-(-) 9223372036854775808 0 = 9223372036854775808
-(-) 9223372036854775808 1 = 9223372036854775807
-(-) 9223372036854775808 -1 = 9223372036854775809
-(-) 9223372036854775808 2 = 9223372036854775806
-(-) 9223372036854775808 -2 = 9223372036854775810
-(-) 9223372036854775808 -9223372036854775808 = 18446744073709551616
-(-) 9223372036854775808 9223372036854775807 = 1
-(-) 9223372036854775808 -9223372036854775809 = 18446744073709551617
-(-) 9223372036854775808 9223372036854775808 = 0
-(-) 9223372036854775808 0 = 9223372036854775808
-(-) 9223372036854775808 18446744073709551614 = -9223372036854775806
-(-) 9223372036854775808 0 = 9223372036854775808
-(-) 9223372036854775808 85070591730234615847396907784232501249 = -85070591730234615838173535747377725441
-(-) 0 0 = 0
-(-) 0 1 = -1
-(-) 0 -1 = 1
-(-) 0 2 = -2
-(-) 0 -2 = 2
-(-) 0 -9223372036854775808 = 9223372036854775808
-(-) 0 9223372036854775807 = -9223372036854775807
-(-) 0 -9223372036854775809 = 9223372036854775809
-(-) 0 9223372036854775808 = -9223372036854775808
-(-) 0 0 = 0
-(-) 0 18446744073709551614 = -18446744073709551614
-(-) 0 0 = 0
-(-) 0 85070591730234615847396907784232501249 = -85070591730234615847396907784232501249
-(-) 18446744073709551614 0 = 18446744073709551614
-(-) 18446744073709551614 1 = 18446744073709551613
-(-) 18446744073709551614 -1 = 18446744073709551615
-(-) 18446744073709551614 2 = 18446744073709551612
-(-) 18446744073709551614 -2 = 18446744073709551616
-(-) 18446744073709551614 -9223372036854775808 = 27670116110564327422
-(-) 18446744073709551614 9223372036854775807 = 9223372036854775807
-(-) 18446744073709551614 -9223372036854775809 = 27670116110564327423
-(-) 18446744073709551614 9223372036854775808 = 9223372036854775806
-(-) 18446744073709551614 0 = 18446744073709551614
-(-) 18446744073709551614 18446744073709551614 = 0
-(-) 18446744073709551614 0 = 18446744073709551614
-(-) 18446744073709551614 85070591730234615847396907784232501249 = -85070591730234615828950163710522949635
-(-) 0 0 = 0
-(-) 0 1 = -1
-(-) 0 -1 = 1
-(-) 0 2 = -2
-(-) 0 -2 = 2
-(-) 0 -9223372036854775808 = 9223372036854775808
-(-) 0 9223372036854775807 = -9223372036854775807
-(-) 0 -9223372036854775809 = 9223372036854775809
-(-) 0 9223372036854775808 = -9223372036854775808
-(-) 0 0 = 0
-(-) 0 18446744073709551614 = -18446744073709551614
-(-) 0 0 = 0
-(-) 0 85070591730234615847396907784232501249 = -85070591730234615847396907784232501249
-(-) 85070591730234615847396907784232501249 0 = 85070591730234615847396907784232501249
-(-) 85070591730234615847396907784232501249 1 = 85070591730234615847396907784232501248
-(-) 85070591730234615847396907784232501249 -1 = 85070591730234615847396907784232501250
-(-) 85070591730234615847396907784232501249 2 = 85070591730234615847396907784232501247
-(-) 85070591730234615847396907784232501249 -2 = 85070591730234615847396907784232501251
-(-) 85070591730234615847396907784232501249 -9223372036854775808 = 85070591730234615856620279821087277057
-(-) 85070591730234615847396907784232501249 9223372036854775807 = 85070591730234615838173535747377725442
-(-) 85070591730234615847396907784232501249 -9223372036854775809 = 85070591730234615856620279821087277058
-(-) 85070591730234615847396907784232501249 9223372036854775808 = 85070591730234615838173535747377725441
-(-) 85070591730234615847396907784232501249 0 = 85070591730234615847396907784232501249
-(-) 85070591730234615847396907784232501249 18446744073709551614 = 85070591730234615828950163710522949635
-(-) 85070591730234615847396907784232501249 0 = 85070591730234615847396907784232501249
-(-) 85070591730234615847396907784232501249 85070591730234615847396907784232501249 = 0
-div 0 1 = 0
-div 0 -1 = 0
-div 0 2 = 0
-div 0 -2 = 0
-div 0 -9223372036854775808 = 0
-div 0 9223372036854775807 = 0
-div 0 -9223372036854775809 = 0
-div 0 9223372036854775808 = 0
-div 0 18446744073709551614 = 0
-div 0 85070591730234615847396907784232501249 = 0
-div 1 1 = 1
-div 1 -1 = -1
-div 1 2 = 0
-div 1 -2 = -1
-div 1 -9223372036854775808 = -1
-div 1 9223372036854775807 = 0
-div 1 -9223372036854775809 = -1
-div 1 9223372036854775808 = 0
-div 1 18446744073709551614 = 0
-div 1 85070591730234615847396907784232501249 = 0
-div -1 1 = -1
-div -1 -1 = 1
-div -1 2 = -1
-div -1 -2 = 0
-div -1 -9223372036854775808 = 0
-div -1 9223372036854775807 = -1
-div -1 -9223372036854775809 = 0
-div -1 9223372036854775808 = -1
-div -1 18446744073709551614 = -1
-div -1 85070591730234615847396907784232501249 = -1
-div 2 1 = 2
-div 2 -1 = -2
-div 2 2 = 1
-div 2 -2 = -1
-div 2 -9223372036854775808 = -1
-div 2 9223372036854775807 = 0
-div 2 -9223372036854775809 = -1
-div 2 9223372036854775808 = 0
-div 2 18446744073709551614 = 0
-div 2 85070591730234615847396907784232501249 = 0
-div -2 1 = -2
-div -2 -1 = 2
-div -2 2 = -1
-div -2 -2 = 1
-div -2 -9223372036854775808 = 0
-div -2 9223372036854775807 = -1
-div -2 -9223372036854775809 = 0
-div -2 9223372036854775808 = -1
-div -2 18446744073709551614 = -1
-div -2 85070591730234615847396907784232501249 = -1
-div -9223372036854775808 1 = -9223372036854775808
-div -9223372036854775808 -1 = 9223372036854775808
-div -9223372036854775808 2 = -4611686018427387904
-div -9223372036854775808 -2 = 4611686018427387904
-div -9223372036854775808 -9223372036854775808 = 1
-div -9223372036854775808 9223372036854775807 = -2
-div -9223372036854775808 -9223372036854775809 = 0
-div -9223372036854775808 9223372036854775808 = -1
-div -9223372036854775808 18446744073709551614 = -1
-div -9223372036854775808 85070591730234615847396907784232501249 = -1
-div 9223372036854775807 1 = 9223372036854775807
-div 9223372036854775807 -1 = -9223372036854775807
-div 9223372036854775807 2 = 4611686018427387903
-div 9223372036854775807 -2 = -4611686018427387904
-div 9223372036854775807 -9223372036854775808 = -1
-div 9223372036854775807 9223372036854775807 = 1
-div 9223372036854775807 -9223372036854775809 = -1
-div 9223372036854775807 9223372036854775808 = 0
-div 9223372036854775807 18446744073709551614 = 0
-div 9223372036854775807 85070591730234615847396907784232501249 = 0
-mod 0 1 = 0
-mod 0 -1 = 0
-mod 0 2 = 0
-mod 0 -2 = 0
-mod 0 -9223372036854775808 = 0
-mod 0 9223372036854775807 = 0
-mod 0 -9223372036854775809 = 0
-mod 0 9223372036854775808 = 0
-mod 0 18446744073709551614 = 0
-mod 0 85070591730234615847396907784232501249 = 0
-mod 1 1 = 0
-mod 1 -1 = 0
-mod 1 2 = 1
-mod 1 -2 = -1
-mod 1 -9223372036854775808 = -9223372036854775807
-mod 1 9223372036854775807 = 1
-mod 1 -9223372036854775809 = -9223372036854775808
-mod 1 9223372036854775808 = 1
-mod 1 18446744073709551614 = 1
-mod 1 85070591730234615847396907784232501249 = 1
-mod -1 1 = 0
-mod -1 -1 = 0
-mod -1 2 = 1
-mod -1 -2 = -1
-mod -1 -9223372036854775808 = -1
-mod -1 9223372036854775807 = 9223372036854775806
-mod -1 -9223372036854775809 = -1
-mod -1 9223372036854775808 = 9223372036854775807
-mod -1 18446744073709551614 = 18446744073709551613
-mod -1 85070591730234615847396907784232501249 = 85070591730234615847396907784232501248
-mod 2 1 = 0
-mod 2 -1 = 0
-mod 2 2 = 0
-mod 2 -2 = 0
-mod 2 -9223372036854775808 = -9223372036854775806
-mod 2 9223372036854775807 = 2
-mod 2 -9223372036854775809 = -9223372036854775807
-mod 2 9223372036854775808 = 2
-mod 2 18446744073709551614 = 2
-mod 2 85070591730234615847396907784232501249 = 2
-mod -2 1 = 0
-mod -2 -1 = 0
-mod -2 2 = 0
-mod -2 -2 = 0
-mod -2 -9223372036854775808 = -2
-mod -2 9223372036854775807 = 9223372036854775805
-mod -2 -9223372036854775809 = -2
-mod -2 9223372036854775808 = 9223372036854775806
-mod -2 18446744073709551614 = 18446744073709551612
-mod -2 85070591730234615847396907784232501249 = 85070591730234615847396907784232501247
-mod -9223372036854775808 1 = 0
-mod -9223372036854775808 -1 = 0
-mod -9223372036854775808 2 = 0
-mod -9223372036854775808 -2 = 0
-mod -9223372036854775808 -9223372036854775808 = 0
-mod -9223372036854775808 9223372036854775807 = 9223372036854775806
-mod -9223372036854775808 -9223372036854775809 = -9223372036854775808
-mod -9223372036854775808 9223372036854775808 = 0
-mod -9223372036854775808 18446744073709551614 = 9223372036854775806
-mod -9223372036854775808 85070591730234615847396907784232501249 = 85070591730234615838173535747377725441
-mod 9223372036854775807 1 = 0
-mod 9223372036854775807 -1 = 0
-mod 9223372036854775807 2 = 1
-mod 9223372036854775807 -2 = -1
-mod 9223372036854775807 -9223372036854775808 = -1
-mod 9223372036854775807 9223372036854775807 = 0
-mod 9223372036854775807 -9223372036854775809 = -2
-mod 9223372036854775807 9223372036854775808 = 9223372036854775807
-mod 9223372036854775807 18446744073709551614 = 9223372036854775807
-mod 9223372036854775807 85070591730234615847396907784232501249 = 9223372036854775807
-quot 0 1 = 0
-quot 0 -1 = 0
-quot 0 2 = 0
-quot 0 -2 = 0
-quot 0 -9223372036854775808 = 0
-quot 0 9223372036854775807 = 0
-quot 0 -9223372036854775809 = 0
-quot 0 9223372036854775808 = 0
-quot 0 18446744073709551614 = 0
-quot 0 85070591730234615847396907784232501249 = 0
-quot 1 1 = 1
-quot 1 -1 = -1
-quot 1 2 = 0
-quot 1 -2 = 0
-quot 1 -9223372036854775808 = 0
-quot 1 9223372036854775807 = 0
-quot 1 -9223372036854775809 = 0
-quot 1 9223372036854775808 = 0
-quot 1 18446744073709551614 = 0
-quot 1 85070591730234615847396907784232501249 = 0
-quot -1 1 = -1
-quot -1 -1 = 1
-quot -1 2 = 0
-quot -1 -2 = 0
-quot -1 -9223372036854775808 = 0
-quot -1 9223372036854775807 = 0
-quot -1 -9223372036854775809 = 0
-quot -1 9223372036854775808 = 0
-quot -1 18446744073709551614 = 0
-quot -1 85070591730234615847396907784232501249 = 0
-quot 2 1 = 2
-quot 2 -1 = -2
-quot 2 2 = 1
-quot 2 -2 = -1
-quot 2 -9223372036854775808 = 0
-quot 2 9223372036854775807 = 0
-quot 2 -9223372036854775809 = 0
-quot 2 9223372036854775808 = 0
-quot 2 18446744073709551614 = 0
-quot 2 85070591730234615847396907784232501249 = 0
-quot -2 1 = -2
-quot -2 -1 = 2
-quot -2 2 = -1
-quot -2 -2 = 1
-quot -2 -9223372036854775808 = 0
-quot -2 9223372036854775807 = 0
-quot -2 -9223372036854775809 = 0
-quot -2 9223372036854775808 = 0
-quot -2 18446744073709551614 = 0
-quot -2 85070591730234615847396907784232501249 = 0
-quot -9223372036854775808 1 = -9223372036854775808
-quot -9223372036854775808 -1 = 9223372036854775808
-quot -9223372036854775808 2 = -4611686018427387904
-quot -9223372036854775808 -2 = 4611686018427387904
-quot -9223372036854775808 -9223372036854775808 = 1
-quot -9223372036854775808 9223372036854775807 = -1
-quot -9223372036854775808 -9223372036854775809 = 0
-quot -9223372036854775808 9223372036854775808 = -1
-quot -9223372036854775808 18446744073709551614 = 0
-quot -9223372036854775808 85070591730234615847396907784232501249 = 0
-quot 9223372036854775807 1 = 9223372036854775807
-quot 9223372036854775807 -1 = -9223372036854775807
-quot 9223372036854775807 2 = 4611686018427387903
-quot 9223372036854775807 -2 = -4611686018427387903
-quot 9223372036854775807 -9223372036854775808 = 0
-quot 9223372036854775807 9223372036854775807 = 1
-quot 9223372036854775807 -9223372036854775809 = 0
-quot 9223372036854775807 9223372036854775808 = 0
-quot 9223372036854775807 18446744073709551614 = 0
-quot 9223372036854775807 85070591730234615847396907784232501249 = 0
-rem 0 1 = 0
-rem 0 -1 = 0
-rem 0 2 = 0
-rem 0 -2 = 0
-rem 0 -9223372036854775808 = 0
-rem 0 9223372036854775807 = 0
-rem 0 -9223372036854775809 = 0
-rem 0 9223372036854775808 = 0
-rem 0 18446744073709551614 = 0
-rem 0 85070591730234615847396907784232501249 = 0
-rem 1 1 = 0
-rem 1 -1 = 0
-rem 1 2 = 1
-rem 1 -2 = 1
-rem 1 -9223372036854775808 = 1
-rem 1 9223372036854775807 = 1
-rem 1 -9223372036854775809 = 1
-rem 1 9223372036854775808 = 1
-rem 1 18446744073709551614 = 1
-rem 1 85070591730234615847396907784232501249 = 1
-rem -1 1 = 0
-rem -1 -1 = 0
-rem -1 2 = -1
-rem -1 -2 = -1
-rem -1 -9223372036854775808 = -1
-rem -1 9223372036854775807 = -1
-rem -1 -9223372036854775809 = -1
-rem -1 9223372036854775808 = -1
-rem -1 18446744073709551614 = -1
-rem -1 85070591730234615847396907784232501249 = -1
-rem 2 1 = 0
-rem 2 -1 = 0
-rem 2 2 = 0
-rem 2 -2 = 0
-rem 2 -9223372036854775808 = 2
-rem 2 9223372036854775807 = 2
-rem 2 -9223372036854775809 = 2
-rem 2 9223372036854775808 = 2
-rem 2 18446744073709551614 = 2
-rem 2 85070591730234615847396907784232501249 = 2
-rem -2 1 = 0
-rem -2 -1 = 0
-rem -2 2 = 0
-rem -2 -2 = 0
-rem -2 -9223372036854775808 = -2
-rem -2 9223372036854775807 = -2
-rem -2 -9223372036854775809 = -2
-rem -2 9223372036854775808 = -2
-rem -2 18446744073709551614 = -2
-rem -2 85070591730234615847396907784232501249 = -2
-rem -9223372036854775808 1 = 0
-rem -9223372036854775808 -1 = 0
-rem -9223372036854775808 2 = 0
-rem -9223372036854775808 -2 = 0
-rem -9223372036854775808 -9223372036854775808 = 0
-rem -9223372036854775808 9223372036854775807 = -1
-rem -9223372036854775808 -9223372036854775809 = -9223372036854775808
-rem -9223372036854775808 9223372036854775808 = 0
-rem -9223372036854775808 18446744073709551614 = -9223372036854775808
-rem -9223372036854775808 85070591730234615847396907784232501249 = -9223372036854775808
-rem 9223372036854775807 1 = 0
-rem 9223372036854775807 -1 = 0
-rem 9223372036854775807 2 = 1
-rem 9223372036854775807 -2 = 1
-rem 9223372036854775807 -9223372036854775808 = 9223372036854775807
-rem 9223372036854775807 9223372036854775807 = 0
-rem 9223372036854775807 -9223372036854775809 = 9223372036854775807
-rem 9223372036854775807 9223372036854775808 = 9223372036854775807
-rem 9223372036854775807 18446744073709551614 = 9223372036854775807
-rem 9223372036854775807 85070591730234615847396907784232501249 = 9223372036854775807
-gcd 0 1 = 1
-gcd 0 -1 = 1
-gcd 0 2 = 2
-gcd 0 -2 = 2
-gcd 0 -9223372036854775808 = 9223372036854775808
-gcd 0 9223372036854775807 = 9223372036854775807
-gcd 1 0 = 1
-gcd 1 1 = 1
-gcd 1 -1 = 1
-gcd 1 2 = 1
-gcd 1 -2 = 1
-gcd 1 -9223372036854775808 = 1
-gcd 1 9223372036854775807 = 1
-gcd -1 0 = 1
-gcd -1 1 = 1
-gcd -1 -1 = 1
-gcd -1 2 = 1
-gcd -1 -2 = 1
-gcd -1 -9223372036854775808 = 1
-gcd -1 9223372036854775807 = 1
-gcd 2 0 = 2
-gcd 2 1 = 1
-gcd 2 -1 = 1
-gcd 2 2 = 2
-gcd 2 -2 = 2
-gcd 2 -9223372036854775808 = 2
-gcd 2 9223372036854775807 = 1
-gcd -2 0 = 2
-gcd -2 1 = 1
-gcd -2 -1 = 1
-gcd -2 2 = 2
-gcd -2 -2 = 2
-gcd -2 -9223372036854775808 = 2
-gcd -2 9223372036854775807 = 1
-gcd -9223372036854775808 0 = 9223372036854775808
-gcd -9223372036854775808 1 = 1
-gcd -9223372036854775808 -1 = 1
-gcd -9223372036854775808 2 = 2
-gcd -9223372036854775808 -2 = 2
-gcd -9223372036854775808 -9223372036854775808 = 9223372036854775808
-gcd -9223372036854775808 9223372036854775807 = 1
-gcd 9223372036854775807 0 = 9223372036854775807
-gcd 9223372036854775807 1 = 1
-gcd 9223372036854775807 -1 = 1
-gcd 9223372036854775807 2 = 1
-gcd 9223372036854775807 -2 = 1
-gcd 9223372036854775807 -9223372036854775808 = 1
-gcd 9223372036854775807 9223372036854775807 = 9223372036854775807
-lcm 0 1 = 0
-lcm 0 -1 = 0
-lcm 0 2 = 0
-lcm 0 -2 = 0
-lcm 0 -9223372036854775808 = 0
-lcm 0 9223372036854775807 = 0
-lcm 1 0 = 0
-lcm 1 1 = 1
-lcm 1 -1 = 1
-lcm 1 2 = 2
-lcm 1 -2 = 2
-lcm 1 -9223372036854775808 = 9223372036854775808
-lcm 1 9223372036854775807 = 9223372036854775807
-lcm -1 0 = 0
-lcm -1 1 = 1
-lcm -1 -1 = 1
-lcm -1 2 = 2
-lcm -1 -2 = 2
-lcm -1 -9223372036854775808 = 9223372036854775808
-lcm -1 9223372036854775807 = 9223372036854775807
-lcm 2 0 = 0
-lcm 2 1 = 2
-lcm 2 -1 = 2
-lcm 2 2 = 2
-lcm 2 -2 = 2
-lcm 2 -9223372036854775808 = 9223372036854775808
-lcm 2 9223372036854775807 = 18446744073709551614
-lcm -2 0 = 0
-lcm -2 1 = 2
-lcm -2 -1 = 2
-lcm -2 2 = 2
-lcm -2 -2 = 2
-lcm -2 -9223372036854775808 = 9223372036854775808
-lcm -2 9223372036854775807 = 18446744073709551614
-lcm -9223372036854775808 0 = 0
-lcm -9223372036854775808 1 = 9223372036854775808
-lcm -9223372036854775808 -1 = 9223372036854775808
-lcm -9223372036854775808 2 = 9223372036854775808
-lcm -9223372036854775808 -2 = 9223372036854775808
-lcm -9223372036854775808 -9223372036854775808 = 9223372036854775808
-lcm -9223372036854775808 9223372036854775807 = 85070591730234615856620279821087277056
-lcm 9223372036854775807 0 = 0
-lcm 9223372036854775807 1 = 9223372036854775807
-lcm 9223372036854775807 -1 = 9223372036854775807
-lcm 9223372036854775807 2 = 18446744073709551614
-lcm 9223372036854775807 -2 = 18446744073709551614
-lcm 9223372036854775807 -9223372036854775808 = 85070591730234615856620279821087277056
-lcm 9223372036854775807 9223372036854775807 = 9223372036854775807
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout-ws-64 b/testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout-ws-64
deleted file mode 100644
index 9d8f7eee82..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith003.stdout-ws-64
+++ /dev/null
@@ -1,1109 +0,0 @@
-(+) 0 0 = 0
-(+) 0 1 = 1
-(+) 0 -1 = -1
-(+) 0 2 = 2
-(+) 0 -2 = -2
-(+) 0 -9223372036854775808 = -9223372036854775808
-(+) 0 9223372036854775807 = 9223372036854775807
-(+) 1 0 = 1
-(+) 1 1 = 2
-(+) 1 -1 = 0
-(+) 1 2 = 3
-(+) 1 -2 = -1
-(+) 1 -9223372036854775808 = -9223372036854775807
-(+) 1 9223372036854775807 = -9223372036854775808
-(+) -1 0 = -1
-(+) -1 1 = 0
-(+) -1 -1 = -2
-(+) -1 2 = 1
-(+) -1 -2 = -3
-(+) -1 -9223372036854775808 = 9223372036854775807
-(+) -1 9223372036854775807 = 9223372036854775806
-(+) 2 0 = 2
-(+) 2 1 = 3
-(+) 2 -1 = 1
-(+) 2 2 = 4
-(+) 2 -2 = 0
-(+) 2 -9223372036854775808 = -9223372036854775806
-(+) 2 9223372036854775807 = -9223372036854775807
-(+) -2 0 = -2
-(+) -2 1 = -1
-(+) -2 -1 = -3
-(+) -2 2 = 0
-(+) -2 -2 = -4
-(+) -2 -9223372036854775808 = 9223372036854775806
-(+) -2 9223372036854775807 = 9223372036854775805
-(+) -9223372036854775808 0 = -9223372036854775808
-(+) -9223372036854775808 1 = -9223372036854775807
-(+) -9223372036854775808 -1 = 9223372036854775807
-(+) -9223372036854775808 2 = -9223372036854775806
-(+) -9223372036854775808 -2 = 9223372036854775806
-(+) -9223372036854775808 -9223372036854775808 = 0
-(+) -9223372036854775808 9223372036854775807 = -1
-(+) 9223372036854775807 0 = 9223372036854775807
-(+) 9223372036854775807 1 = -9223372036854775808
-(+) 9223372036854775807 -1 = 9223372036854775806
-(+) 9223372036854775807 2 = -9223372036854775807
-(+) 9223372036854775807 -2 = 9223372036854775805
-(+) 9223372036854775807 -9223372036854775808 = -1
-(+) 9223372036854775807 9223372036854775807 = -2
-(-) 0 0 = 0
-(-) 0 1 = -1
-(-) 0 -1 = 1
-(-) 0 2 = -2
-(-) 0 -2 = 2
-(-) 0 -9223372036854775808 = -9223372036854775808
-(-) 0 9223372036854775807 = -9223372036854775807
-(-) 1 0 = 1
-(-) 1 1 = 0
-(-) 1 -1 = 2
-(-) 1 2 = -1
-(-) 1 -2 = 3
-(-) 1 -9223372036854775808 = -9223372036854775807
-(-) 1 9223372036854775807 = -9223372036854775806
-(-) -1 0 = -1
-(-) -1 1 = -2
-(-) -1 -1 = 0
-(-) -1 2 = -3
-(-) -1 -2 = 1
-(-) -1 -9223372036854775808 = 9223372036854775807
-(-) -1 9223372036854775807 = -9223372036854775808
-(-) 2 0 = 2
-(-) 2 1 = 1
-(-) 2 -1 = 3
-(-) 2 2 = 0
-(-) 2 -2 = 4
-(-) 2 -9223372036854775808 = -9223372036854775806
-(-) 2 9223372036854775807 = -9223372036854775805
-(-) -2 0 = -2
-(-) -2 1 = -3
-(-) -2 -1 = -1
-(-) -2 2 = -4
-(-) -2 -2 = 0
-(-) -2 -9223372036854775808 = 9223372036854775806
-(-) -2 9223372036854775807 = 9223372036854775807
-(-) -9223372036854775808 0 = -9223372036854775808
-(-) -9223372036854775808 1 = 9223372036854775807
-(-) -9223372036854775808 -1 = -9223372036854775807
-(-) -9223372036854775808 2 = 9223372036854775806
-(-) -9223372036854775808 -2 = -9223372036854775806
-(-) -9223372036854775808 -9223372036854775808 = 0
-(-) -9223372036854775808 9223372036854775807 = 1
-(-) 9223372036854775807 0 = 9223372036854775807
-(-) 9223372036854775807 1 = 9223372036854775806
-(-) 9223372036854775807 -1 = -9223372036854775808
-(-) 9223372036854775807 2 = 9223372036854775805
-(-) 9223372036854775807 -2 = -9223372036854775807
-(-) 9223372036854775807 -9223372036854775808 = -1
-(-) 9223372036854775807 9223372036854775807 = 0
-(^) 0 0 = 1
-(^) 0 1 = 0
-(^) 0 2 = 0
-(^) 1 0 = 1
-(^) 1 1 = 1
-(^) 1 2 = 1
-(^) -1 0 = 1
-(^) -1 1 = -1
-(^) -1 2 = 1
-(^) 2 0 = 1
-(^) 2 1 = 2
-(^) 2 2 = 4
-(^) -2 0 = 1
-(^) -2 1 = -2
-(^) -2 2 = 4
-(^) -9223372036854775808 0 = 1
-(^) -9223372036854775808 1 = -9223372036854775808
-(^) -9223372036854775808 2 = 0
-(^) 9223372036854775807 0 = 1
-(^) 9223372036854775807 1 = 9223372036854775807
-(^) 9223372036854775807 2 = 1
-div 0 1 = 0
-div 0 -1 = 0
-div 0 2 = 0
-div 0 -2 = 0
-div 0 -9223372036854775808 = 0
-div 0 9223372036854775807 = 0
-div 1 1 = 1
-div 1 -1 = -1
-div 1 2 = 0
-div 1 -2 = -1
-div 1 -9223372036854775808 = -1
-div 1 9223372036854775807 = 0
-div -1 1 = -1
-div -1 -1 = 1
-div -1 2 = -1
-div -1 -2 = 0
-div -1 -9223372036854775808 = 0
-div -1 9223372036854775807 = -1
-div 2 1 = 2
-div 2 -1 = -2
-div 2 2 = 1
-div 2 -2 = -1
-div 2 -9223372036854775808 = -1
-div 2 9223372036854775807 = 0
-div -2 1 = -2
-div -2 -1 = 2
-div -2 2 = -1
-div -2 -2 = 1
-div -2 -9223372036854775808 = 0
-div -2 9223372036854775807 = -1
-div 9223372036854775807 1 = 9223372036854775807
-div 9223372036854775807 -1 = -9223372036854775807
-div 9223372036854775807 2 = 4611686018427387903
-div 9223372036854775807 -2 = -4611686018427387904
-div 9223372036854775807 -9223372036854775808 = -1
-div 9223372036854775807 9223372036854775807 = 1
-mod 0 1 = 0
-mod 0 -1 = 0
-mod 0 2 = 0
-mod 0 -2 = 0
-mod 0 -9223372036854775808 = 0
-mod 0 9223372036854775807 = 0
-mod 1 1 = 0
-mod 1 -1 = 0
-mod 1 2 = 1
-mod 1 -2 = -1
-mod 1 -9223372036854775808 = -9223372036854775807
-mod 1 9223372036854775807 = 1
-mod -1 1 = 0
-mod -1 -1 = 0
-mod -1 2 = 1
-mod -1 -2 = -1
-mod -1 -9223372036854775808 = -1
-mod -1 9223372036854775807 = 9223372036854775806
-mod 2 1 = 0
-mod 2 -1 = 0
-mod 2 2 = 0
-mod 2 -2 = 0
-mod 2 -9223372036854775808 = -9223372036854775806
-mod 2 9223372036854775807 = 2
-mod -2 1 = 0
-mod -2 -1 = 0
-mod -2 2 = 0
-mod -2 -2 = 0
-mod -2 -9223372036854775808 = -2
-mod -2 9223372036854775807 = 9223372036854775805
-mod 9223372036854775807 1 = 0
-mod 9223372036854775807 -1 = 0
-mod 9223372036854775807 2 = 1
-mod 9223372036854775807 -2 = -1
-mod 9223372036854775807 -9223372036854775808 = -1
-mod 9223372036854775807 9223372036854775807 = 0
-quot 0 1 = 0
-quot 0 -1 = 0
-quot 0 2 = 0
-quot 0 -2 = 0
-quot 0 -9223372036854775808 = 0
-quot 0 9223372036854775807 = 0
-quot 1 1 = 1
-quot 1 -1 = -1
-quot 1 2 = 0
-quot 1 -2 = 0
-quot 1 -9223372036854775808 = 0
-quot 1 9223372036854775807 = 0
-quot -1 1 = -1
-quot -1 -1 = 1
-quot -1 2 = 0
-quot -1 -2 = 0
-quot -1 -9223372036854775808 = 0
-quot -1 9223372036854775807 = 0
-quot 2 1 = 2
-quot 2 -1 = -2
-quot 2 2 = 1
-quot 2 -2 = -1
-quot 2 -9223372036854775808 = 0
-quot 2 9223372036854775807 = 0
-quot -2 1 = -2
-quot -2 -1 = 2
-quot -2 2 = -1
-quot -2 -2 = 1
-quot -2 -9223372036854775808 = 0
-quot -2 9223372036854775807 = 0
-quot 9223372036854775807 1 = 9223372036854775807
-quot 9223372036854775807 -1 = -9223372036854775807
-quot 9223372036854775807 2 = 4611686018427387903
-quot 9223372036854775807 -2 = -4611686018427387903
-quot 9223372036854775807 -9223372036854775808 = 0
-quot 9223372036854775807 9223372036854775807 = 1
-rem 0 1 = 0
-rem 0 -1 = 0
-rem 0 2 = 0
-rem 0 -2 = 0
-rem 0 -9223372036854775808 = 0
-rem 0 9223372036854775807 = 0
-rem 1 1 = 0
-rem 1 -1 = 0
-rem 1 2 = 1
-rem 1 -2 = 1
-rem 1 -9223372036854775808 = 1
-rem 1 9223372036854775807 = 1
-rem -1 1 = 0
-rem -1 -1 = 0
-rem -1 2 = -1
-rem -1 -2 = -1
-rem -1 -9223372036854775808 = -1
-rem -1 9223372036854775807 = -1
-rem 2 1 = 0
-rem 2 -1 = 0
-rem 2 2 = 0
-rem 2 -2 = 0
-rem 2 -9223372036854775808 = 2
-rem 2 9223372036854775807 = 2
-rem -2 1 = 0
-rem -2 -1 = 0
-rem -2 2 = 0
-rem -2 -2 = 0
-rem -2 -9223372036854775808 = -2
-rem -2 9223372036854775807 = -2
-rem 9223372036854775807 1 = 0
-rem 9223372036854775807 -1 = 0
-rem 9223372036854775807 2 = 1
-rem 9223372036854775807 -2 = 1
-rem 9223372036854775807 -9223372036854775808 = 9223372036854775807
-rem 9223372036854775807 9223372036854775807 = 0
-gcd 0 1 = 1
-gcd 0 -1 = 1
-gcd 0 2 = 2
-gcd 0 -2 = 2
-gcd 0 9223372036854775807 = 9223372036854775807
-gcd 1 0 = 1
-gcd 1 1 = 1
-gcd 1 -1 = 1
-gcd 1 2 = 1
-gcd 1 -2 = 1
-gcd 1 9223372036854775807 = 1
-gcd -1 0 = 1
-gcd -1 1 = 1
-gcd -1 -1 = 1
-gcd -1 2 = 1
-gcd -1 -2 = 1
-gcd -1 9223372036854775807 = 1
-gcd 2 0 = 2
-gcd 2 1 = 1
-gcd 2 -1 = 1
-gcd 2 2 = 2
-gcd 2 -2 = 2
-gcd 2 9223372036854775807 = 1
-gcd -2 0 = 2
-gcd -2 1 = 1
-gcd -2 -1 = 1
-gcd -2 2 = 2
-gcd -2 -2 = 2
-gcd -2 9223372036854775807 = 1
-gcd 9223372036854775807 0 = 9223372036854775807
-gcd 9223372036854775807 1 = 1
-gcd 9223372036854775807 -1 = 1
-gcd 9223372036854775807 2 = 1
-gcd 9223372036854775807 -2 = 1
-gcd 9223372036854775807 9223372036854775807 = 9223372036854775807
-lcm 0 1 = 0
-lcm 0 -1 = 0
-lcm 0 2 = 0
-lcm 0 -2 = 0
-lcm 0 -9223372036854775808 = 0
-lcm 1 0 = 0
-lcm 1 1 = 1
-lcm 1 -1 = 1
-lcm 1 2 = 2
-lcm 1 -2 = 2
-lcm 1 -9223372036854775808 = -9223372036854775808
-lcm -1 0 = 0
-lcm -1 1 = 1
-lcm -1 -1 = 1
-lcm -1 2 = 2
-lcm -1 -2 = 2
-lcm -1 -9223372036854775808 = -9223372036854775808
-lcm 2 0 = 0
-lcm 2 1 = 2
-lcm 2 -1 = 2
-lcm 2 2 = 2
-lcm 2 -2 = 2
-lcm 2 -9223372036854775808 = -9223372036854775808
-lcm -2 0 = 0
-lcm -2 1 = 2
-lcm -2 -1 = 2
-lcm -2 2 = 2
-lcm -2 -2 = 2
-lcm -2 -9223372036854775808 = -9223372036854775808
-lcm -9223372036854775808 0 = 0
-lcm -9223372036854775808 1 = -9223372036854775808
-lcm -9223372036854775808 -1 = -9223372036854775808
-lcm -9223372036854775808 2 = -9223372036854775808
-lcm -9223372036854775808 -2 = -9223372036854775808
-lcm -9223372036854775808 -9223372036854775808 = -9223372036854775808
-lcm 9223372036854775807 0 = 0
-lcm 9223372036854775807 1 = 9223372036854775807
-lcm 9223372036854775807 -1 = 9223372036854775807
-lcm 9223372036854775807 2 = 2
-lcm 9223372036854775807 -2 = 2
-lcm 9223372036854775807 -9223372036854775808 = -9223372036854775808
-(+) 0 0 = 0
-(+) 0 1 = 1
-(+) 0 -1 = -1
-(+) 0 2 = 2
-(+) 0 -2 = -2
-(+) 0 -9223372036854775808 = -9223372036854775808
-(+) 0 9223372036854775807 = 9223372036854775807
-(+) 0 -9223372036854775809 = -9223372036854775809
-(+) 0 9223372036854775808 = 9223372036854775808
-(+) 0 -18446744073709551616 = -18446744073709551616
-(+) 0 18446744073709551614 = 18446744073709551614
-(+) 0 85070591730234615865843651857942052864 = 85070591730234615865843651857942052864
-(+) 0 85070591730234615847396907784232501249 = 85070591730234615847396907784232501249
-(+) 1 0 = 1
-(+) 1 1 = 2
-(+) 1 -1 = 0
-(+) 1 2 = 3
-(+) 1 -2 = -1
-(+) 1 -9223372036854775808 = -9223372036854775807
-(+) 1 9223372036854775807 = 9223372036854775808
-(+) 1 -9223372036854775809 = -9223372036854775808
-(+) 1 9223372036854775808 = 9223372036854775809
-(+) 1 -18446744073709551616 = -18446744073709551615
-(+) 1 18446744073709551614 = 18446744073709551615
-(+) 1 85070591730234615865843651857942052864 = 85070591730234615865843651857942052865
-(+) 1 85070591730234615847396907784232501249 = 85070591730234615847396907784232501250
-(+) -1 0 = -1
-(+) -1 1 = 0
-(+) -1 -1 = -2
-(+) -1 2 = 1
-(+) -1 -2 = -3
-(+) -1 -9223372036854775808 = -9223372036854775809
-(+) -1 9223372036854775807 = 9223372036854775806
-(+) -1 -9223372036854775809 = -9223372036854775810
-(+) -1 9223372036854775808 = 9223372036854775807
-(+) -1 -18446744073709551616 = -18446744073709551617
-(+) -1 18446744073709551614 = 18446744073709551613
-(+) -1 85070591730234615865843651857942052864 = 85070591730234615865843651857942052863
-(+) -1 85070591730234615847396907784232501249 = 85070591730234615847396907784232501248
-(+) 2 0 = 2
-(+) 2 1 = 3
-(+) 2 -1 = 1
-(+) 2 2 = 4
-(+) 2 -2 = 0
-(+) 2 -9223372036854775808 = -9223372036854775806
-(+) 2 9223372036854775807 = 9223372036854775809
-(+) 2 -9223372036854775809 = -9223372036854775807
-(+) 2 9223372036854775808 = 9223372036854775810
-(+) 2 -18446744073709551616 = -18446744073709551614
-(+) 2 18446744073709551614 = 18446744073709551616
-(+) 2 85070591730234615865843651857942052864 = 85070591730234615865843651857942052866
-(+) 2 85070591730234615847396907784232501249 = 85070591730234615847396907784232501251
-(+) -2 0 = -2
-(+) -2 1 = -1
-(+) -2 -1 = -3
-(+) -2 2 = 0
-(+) -2 -2 = -4
-(+) -2 -9223372036854775808 = -9223372036854775810
-(+) -2 9223372036854775807 = 9223372036854775805
-(+) -2 -9223372036854775809 = -9223372036854775811
-(+) -2 9223372036854775808 = 9223372036854775806
-(+) -2 -18446744073709551616 = -18446744073709551618
-(+) -2 18446744073709551614 = 18446744073709551612
-(+) -2 85070591730234615865843651857942052864 = 85070591730234615865843651857942052862
-(+) -2 85070591730234615847396907784232501249 = 85070591730234615847396907784232501247
-(+) -9223372036854775808 0 = -9223372036854775808
-(+) -9223372036854775808 1 = -9223372036854775807
-(+) -9223372036854775808 -1 = -9223372036854775809
-(+) -9223372036854775808 2 = -9223372036854775806
-(+) -9223372036854775808 -2 = -9223372036854775810
-(+) -9223372036854775808 -9223372036854775808 = -18446744073709551616
-(+) -9223372036854775808 9223372036854775807 = -1
-(+) -9223372036854775808 -9223372036854775809 = -18446744073709551617
-(+) -9223372036854775808 9223372036854775808 = 0
-(+) -9223372036854775808 -18446744073709551616 = -27670116110564327424
-(+) -9223372036854775808 18446744073709551614 = 9223372036854775806
-(+) -9223372036854775808 85070591730234615865843651857942052864 = 85070591730234615856620279821087277056
-(+) -9223372036854775808 85070591730234615847396907784232501249 = 85070591730234615838173535747377725441
-(+) 9223372036854775807 0 = 9223372036854775807
-(+) 9223372036854775807 1 = 9223372036854775808
-(+) 9223372036854775807 -1 = 9223372036854775806
-(+) 9223372036854775807 2 = 9223372036854775809
-(+) 9223372036854775807 -2 = 9223372036854775805
-(+) 9223372036854775807 -9223372036854775808 = -1
-(+) 9223372036854775807 9223372036854775807 = 18446744073709551614
-(+) 9223372036854775807 -9223372036854775809 = -2
-(+) 9223372036854775807 9223372036854775808 = 18446744073709551615
-(+) 9223372036854775807 -18446744073709551616 = -9223372036854775809
-(+) 9223372036854775807 18446744073709551614 = 27670116110564327421
-(+) 9223372036854775807 85070591730234615865843651857942052864 = 85070591730234615875067023894796828671
-(+) 9223372036854775807 85070591730234615847396907784232501249 = 85070591730234615856620279821087277056
-(+) -9223372036854775809 0 = -9223372036854775809
-(+) -9223372036854775809 1 = -9223372036854775808
-(+) -9223372036854775809 -1 = -9223372036854775810
-(+) -9223372036854775809 2 = -9223372036854775807
-(+) -9223372036854775809 -2 = -9223372036854775811
-(+) -9223372036854775809 -9223372036854775808 = -18446744073709551617
-(+) -9223372036854775809 9223372036854775807 = -2
-(+) -9223372036854775809 -9223372036854775809 = -18446744073709551618
-(+) -9223372036854775809 9223372036854775808 = -1
-(+) -9223372036854775809 -18446744073709551616 = -27670116110564327425
-(+) -9223372036854775809 18446744073709551614 = 9223372036854775805
-(+) -9223372036854775809 85070591730234615865843651857942052864 = 85070591730234615856620279821087277055
-(+) -9223372036854775809 85070591730234615847396907784232501249 = 85070591730234615838173535747377725440
-(+) 9223372036854775808 0 = 9223372036854775808
-(+) 9223372036854775808 1 = 9223372036854775809
-(+) 9223372036854775808 -1 = 9223372036854775807
-(+) 9223372036854775808 2 = 9223372036854775810
-(+) 9223372036854775808 -2 = 9223372036854775806
-(+) 9223372036854775808 -9223372036854775808 = 0
-(+) 9223372036854775808 9223372036854775807 = 18446744073709551615
-(+) 9223372036854775808 -9223372036854775809 = -1
-(+) 9223372036854775808 9223372036854775808 = 18446744073709551616
-(+) 9223372036854775808 -18446744073709551616 = -9223372036854775808
-(+) 9223372036854775808 18446744073709551614 = 27670116110564327422
-(+) 9223372036854775808 85070591730234615865843651857942052864 = 85070591730234615875067023894796828672
-(+) 9223372036854775808 85070591730234615847396907784232501249 = 85070591730234615856620279821087277057
-(+) -18446744073709551616 0 = -18446744073709551616
-(+) -18446744073709551616 1 = -18446744073709551615
-(+) -18446744073709551616 -1 = -18446744073709551617
-(+) -18446744073709551616 2 = -18446744073709551614
-(+) -18446744073709551616 -2 = -18446744073709551618
-(+) -18446744073709551616 -9223372036854775808 = -27670116110564327424
-(+) -18446744073709551616 9223372036854775807 = -9223372036854775809
-(+) -18446744073709551616 -9223372036854775809 = -27670116110564327425
-(+) -18446744073709551616 9223372036854775808 = -9223372036854775808
-(+) -18446744073709551616 -18446744073709551616 = -36893488147419103232
-(+) -18446744073709551616 18446744073709551614 = -2
-(+) -18446744073709551616 85070591730234615865843651857942052864 = 85070591730234615847396907784232501248
-(+) -18446744073709551616 85070591730234615847396907784232501249 = 85070591730234615828950163710522949633
-(+) 18446744073709551614 0 = 18446744073709551614
-(+) 18446744073709551614 1 = 18446744073709551615
-(+) 18446744073709551614 -1 = 18446744073709551613
-(+) 18446744073709551614 2 = 18446744073709551616
-(+) 18446744073709551614 -2 = 18446744073709551612
-(+) 18446744073709551614 -9223372036854775808 = 9223372036854775806
-(+) 18446744073709551614 9223372036854775807 = 27670116110564327421
-(+) 18446744073709551614 -9223372036854775809 = 9223372036854775805
-(+) 18446744073709551614 9223372036854775808 = 27670116110564327422
-(+) 18446744073709551614 -18446744073709551616 = -2
-(+) 18446744073709551614 18446744073709551614 = 36893488147419103228
-(+) 18446744073709551614 85070591730234615865843651857942052864 = 85070591730234615884290395931651604478
-(+) 18446744073709551614 85070591730234615847396907784232501249 = 85070591730234615865843651857942052863
-(+) 85070591730234615865843651857942052864 0 = 85070591730234615865843651857942052864
-(+) 85070591730234615865843651857942052864 1 = 85070591730234615865843651857942052865
-(+) 85070591730234615865843651857942052864 -1 = 85070591730234615865843651857942052863
-(+) 85070591730234615865843651857942052864 2 = 85070591730234615865843651857942052866
-(+) 85070591730234615865843651857942052864 -2 = 85070591730234615865843651857942052862
-(+) 85070591730234615865843651857942052864 -9223372036854775808 = 85070591730234615856620279821087277056
-(+) 85070591730234615865843651857942052864 9223372036854775807 = 85070591730234615875067023894796828671
-(+) 85070591730234615865843651857942052864 -9223372036854775809 = 85070591730234615856620279821087277055
-(+) 85070591730234615865843651857942052864 9223372036854775808 = 85070591730234615875067023894796828672
-(+) 85070591730234615865843651857942052864 -18446744073709551616 = 85070591730234615847396907784232501248
-(+) 85070591730234615865843651857942052864 18446744073709551614 = 85070591730234615884290395931651604478
-(+) 85070591730234615865843651857942052864 85070591730234615865843651857942052864 = 170141183460469231731687303715884105728
-(+) 85070591730234615865843651857942052864 85070591730234615847396907784232501249 = 170141183460469231713240559642174554113
-(+) 85070591730234615847396907784232501249 0 = 85070591730234615847396907784232501249
-(+) 85070591730234615847396907784232501249 1 = 85070591730234615847396907784232501250
-(+) 85070591730234615847396907784232501249 -1 = 85070591730234615847396907784232501248
-(+) 85070591730234615847396907784232501249 2 = 85070591730234615847396907784232501251
-(+) 85070591730234615847396907784232501249 -2 = 85070591730234615847396907784232501247
-(+) 85070591730234615847396907784232501249 -9223372036854775808 = 85070591730234615838173535747377725441
-(+) 85070591730234615847396907784232501249 9223372036854775807 = 85070591730234615856620279821087277056
-(+) 85070591730234615847396907784232501249 -9223372036854775809 = 85070591730234615838173535747377725440
-(+) 85070591730234615847396907784232501249 9223372036854775808 = 85070591730234615856620279821087277057
-(+) 85070591730234615847396907784232501249 -18446744073709551616 = 85070591730234615828950163710522949633
-(+) 85070591730234615847396907784232501249 18446744073709551614 = 85070591730234615865843651857942052863
-(+) 85070591730234615847396907784232501249 85070591730234615865843651857942052864 = 170141183460469231713240559642174554113
-(+) 85070591730234615847396907784232501249 85070591730234615847396907784232501249 = 170141183460469231694793815568465002498
-(-) 0 0 = 0
-(-) 0 1 = -1
-(-) 0 -1 = 1
-(-) 0 2 = -2
-(-) 0 -2 = 2
-(-) 0 -9223372036854775808 = 9223372036854775808
-(-) 0 9223372036854775807 = -9223372036854775807
-(-) 0 -9223372036854775809 = 9223372036854775809
-(-) 0 9223372036854775808 = -9223372036854775808
-(-) 0 -18446744073709551616 = 18446744073709551616
-(-) 0 18446744073709551614 = -18446744073709551614
-(-) 0 85070591730234615865843651857942052864 = -85070591730234615865843651857942052864
-(-) 0 85070591730234615847396907784232501249 = -85070591730234615847396907784232501249
-(-) 1 0 = 1
-(-) 1 1 = 0
-(-) 1 -1 = 2
-(-) 1 2 = -1
-(-) 1 -2 = 3
-(-) 1 -9223372036854775808 = 9223372036854775809
-(-) 1 9223372036854775807 = -9223372036854775806
-(-) 1 -9223372036854775809 = 9223372036854775810
-(-) 1 9223372036854775808 = -9223372036854775807
-(-) 1 -18446744073709551616 = 18446744073709551617
-(-) 1 18446744073709551614 = -18446744073709551613
-(-) 1 85070591730234615865843651857942052864 = -85070591730234615865843651857942052863
-(-) 1 85070591730234615847396907784232501249 = -85070591730234615847396907784232501248
-(-) -1 0 = -1
-(-) -1 1 = -2
-(-) -1 -1 = 0
-(-) -1 2 = -3
-(-) -1 -2 = 1
-(-) -1 -9223372036854775808 = 9223372036854775807
-(-) -1 9223372036854775807 = -9223372036854775808
-(-) -1 -9223372036854775809 = 9223372036854775808
-(-) -1 9223372036854775808 = -9223372036854775809
-(-) -1 -18446744073709551616 = 18446744073709551615
-(-) -1 18446744073709551614 = -18446744073709551615
-(-) -1 85070591730234615865843651857942052864 = -85070591730234615865843651857942052865
-(-) -1 85070591730234615847396907784232501249 = -85070591730234615847396907784232501250
-(-) 2 0 = 2
-(-) 2 1 = 1
-(-) 2 -1 = 3
-(-) 2 2 = 0
-(-) 2 -2 = 4
-(-) 2 -9223372036854775808 = 9223372036854775810
-(-) 2 9223372036854775807 = -9223372036854775805
-(-) 2 -9223372036854775809 = 9223372036854775811
-(-) 2 9223372036854775808 = -9223372036854775806
-(-) 2 -18446744073709551616 = 18446744073709551618
-(-) 2 18446744073709551614 = -18446744073709551612
-(-) 2 85070591730234615865843651857942052864 = -85070591730234615865843651857942052862
-(-) 2 85070591730234615847396907784232501249 = -85070591730234615847396907784232501247
-(-) -2 0 = -2
-(-) -2 1 = -3
-(-) -2 -1 = -1
-(-) -2 2 = -4
-(-) -2 -2 = 0
-(-) -2 -9223372036854775808 = 9223372036854775806
-(-) -2 9223372036854775807 = -9223372036854775809
-(-) -2 -9223372036854775809 = 9223372036854775807
-(-) -2 9223372036854775808 = -9223372036854775810
-(-) -2 -18446744073709551616 = 18446744073709551614
-(-) -2 18446744073709551614 = -18446744073709551616
-(-) -2 85070591730234615865843651857942052864 = -85070591730234615865843651857942052866
-(-) -2 85070591730234615847396907784232501249 = -85070591730234615847396907784232501251
-(-) -9223372036854775808 0 = -9223372036854775808
-(-) -9223372036854775808 1 = -9223372036854775809
-(-) -9223372036854775808 -1 = -9223372036854775807
-(-) -9223372036854775808 2 = -9223372036854775810
-(-) -9223372036854775808 -2 = -9223372036854775806
-(-) -9223372036854775808 -9223372036854775808 = 0
-(-) -9223372036854775808 9223372036854775807 = -18446744073709551615
-(-) -9223372036854775808 -9223372036854775809 = 1
-(-) -9223372036854775808 9223372036854775808 = -18446744073709551616
-(-) -9223372036854775808 -18446744073709551616 = 9223372036854775808
-(-) -9223372036854775808 18446744073709551614 = -27670116110564327422
-(-) -9223372036854775808 85070591730234615865843651857942052864 = -85070591730234615875067023894796828672
-(-) -9223372036854775808 85070591730234615847396907784232501249 = -85070591730234615856620279821087277057
-(-) 9223372036854775807 0 = 9223372036854775807
-(-) 9223372036854775807 1 = 9223372036854775806
-(-) 9223372036854775807 -1 = 9223372036854775808
-(-) 9223372036854775807 2 = 9223372036854775805
-(-) 9223372036854775807 -2 = 9223372036854775809
-(-) 9223372036854775807 -9223372036854775808 = 18446744073709551615
-(-) 9223372036854775807 9223372036854775807 = 0
-(-) 9223372036854775807 -9223372036854775809 = 18446744073709551616
-(-) 9223372036854775807 9223372036854775808 = -1
-(-) 9223372036854775807 -18446744073709551616 = 27670116110564327423
-(-) 9223372036854775807 18446744073709551614 = -9223372036854775807
-(-) 9223372036854775807 85070591730234615865843651857942052864 = -85070591730234615856620279821087277057
-(-) 9223372036854775807 85070591730234615847396907784232501249 = -85070591730234615838173535747377725442
-(-) -9223372036854775809 0 = -9223372036854775809
-(-) -9223372036854775809 1 = -9223372036854775810
-(-) -9223372036854775809 -1 = -9223372036854775808
-(-) -9223372036854775809 2 = -9223372036854775811
-(-) -9223372036854775809 -2 = -9223372036854775807
-(-) -9223372036854775809 -9223372036854775808 = -1
-(-) -9223372036854775809 9223372036854775807 = -18446744073709551616
-(-) -9223372036854775809 -9223372036854775809 = 0
-(-) -9223372036854775809 9223372036854775808 = -18446744073709551617
-(-) -9223372036854775809 -18446744073709551616 = 9223372036854775807
-(-) -9223372036854775809 18446744073709551614 = -27670116110564327423
-(-) -9223372036854775809 85070591730234615865843651857942052864 = -85070591730234615875067023894796828673
-(-) -9223372036854775809 85070591730234615847396907784232501249 = -85070591730234615856620279821087277058
-(-) 9223372036854775808 0 = 9223372036854775808
-(-) 9223372036854775808 1 = 9223372036854775807
-(-) 9223372036854775808 -1 = 9223372036854775809
-(-) 9223372036854775808 2 = 9223372036854775806
-(-) 9223372036854775808 -2 = 9223372036854775810
-(-) 9223372036854775808 -9223372036854775808 = 18446744073709551616
-(-) 9223372036854775808 9223372036854775807 = 1
-(-) 9223372036854775808 -9223372036854775809 = 18446744073709551617
-(-) 9223372036854775808 9223372036854775808 = 0
-(-) 9223372036854775808 -18446744073709551616 = 27670116110564327424
-(-) 9223372036854775808 18446744073709551614 = -9223372036854775806
-(-) 9223372036854775808 85070591730234615865843651857942052864 = -85070591730234615856620279821087277056
-(-) 9223372036854775808 85070591730234615847396907784232501249 = -85070591730234615838173535747377725441
-(-) -18446744073709551616 0 = -18446744073709551616
-(-) -18446744073709551616 1 = -18446744073709551617
-(-) -18446744073709551616 -1 = -18446744073709551615
-(-) -18446744073709551616 2 = -18446744073709551618
-(-) -18446744073709551616 -2 = -18446744073709551614
-(-) -18446744073709551616 -9223372036854775808 = -9223372036854775808
-(-) -18446744073709551616 9223372036854775807 = -27670116110564327423
-(-) -18446744073709551616 -9223372036854775809 = -9223372036854775807
-(-) -18446744073709551616 9223372036854775808 = -27670116110564327424
-(-) -18446744073709551616 -18446744073709551616 = 0
-(-) -18446744073709551616 18446744073709551614 = -36893488147419103230
-(-) -18446744073709551616 85070591730234615865843651857942052864 = -85070591730234615884290395931651604480
-(-) -18446744073709551616 85070591730234615847396907784232501249 = -85070591730234615865843651857942052865
-(-) 18446744073709551614 0 = 18446744073709551614
-(-) 18446744073709551614 1 = 18446744073709551613
-(-) 18446744073709551614 -1 = 18446744073709551615
-(-) 18446744073709551614 2 = 18446744073709551612
-(-) 18446744073709551614 -2 = 18446744073709551616
-(-) 18446744073709551614 -9223372036854775808 = 27670116110564327422
-(-) 18446744073709551614 9223372036854775807 = 9223372036854775807
-(-) 18446744073709551614 -9223372036854775809 = 27670116110564327423
-(-) 18446744073709551614 9223372036854775808 = 9223372036854775806
-(-) 18446744073709551614 -18446744073709551616 = 36893488147419103230
-(-) 18446744073709551614 18446744073709551614 = 0
-(-) 18446744073709551614 85070591730234615865843651857942052864 = -85070591730234615847396907784232501250
-(-) 18446744073709551614 85070591730234615847396907784232501249 = -85070591730234615828950163710522949635
-(-) 85070591730234615865843651857942052864 0 = 85070591730234615865843651857942052864
-(-) 85070591730234615865843651857942052864 1 = 85070591730234615865843651857942052863
-(-) 85070591730234615865843651857942052864 -1 = 85070591730234615865843651857942052865
-(-) 85070591730234615865843651857942052864 2 = 85070591730234615865843651857942052862
-(-) 85070591730234615865843651857942052864 -2 = 85070591730234615865843651857942052866
-(-) 85070591730234615865843651857942052864 -9223372036854775808 = 85070591730234615875067023894796828672
-(-) 85070591730234615865843651857942052864 9223372036854775807 = 85070591730234615856620279821087277057
-(-) 85070591730234615865843651857942052864 -9223372036854775809 = 85070591730234615875067023894796828673
-(-) 85070591730234615865843651857942052864 9223372036854775808 = 85070591730234615856620279821087277056
-(-) 85070591730234615865843651857942052864 -18446744073709551616 = 85070591730234615884290395931651604480
-(-) 85070591730234615865843651857942052864 18446744073709551614 = 85070591730234615847396907784232501250
-(-) 85070591730234615865843651857942052864 85070591730234615865843651857942052864 = 0
-(-) 85070591730234615865843651857942052864 85070591730234615847396907784232501249 = 18446744073709551615
-(-) 85070591730234615847396907784232501249 0 = 85070591730234615847396907784232501249
-(-) 85070591730234615847396907784232501249 1 = 85070591730234615847396907784232501248
-(-) 85070591730234615847396907784232501249 -1 = 85070591730234615847396907784232501250
-(-) 85070591730234615847396907784232501249 2 = 85070591730234615847396907784232501247
-(-) 85070591730234615847396907784232501249 -2 = 85070591730234615847396907784232501251
-(-) 85070591730234615847396907784232501249 -9223372036854775808 = 85070591730234615856620279821087277057
-(-) 85070591730234615847396907784232501249 9223372036854775807 = 85070591730234615838173535747377725442
-(-) 85070591730234615847396907784232501249 -9223372036854775809 = 85070591730234615856620279821087277058
-(-) 85070591730234615847396907784232501249 9223372036854775808 = 85070591730234615838173535747377725441
-(-) 85070591730234615847396907784232501249 -18446744073709551616 = 85070591730234615865843651857942052865
-(-) 85070591730234615847396907784232501249 18446744073709551614 = 85070591730234615828950163710522949635
-(-) 85070591730234615847396907784232501249 85070591730234615865843651857942052864 = -18446744073709551615
-(-) 85070591730234615847396907784232501249 85070591730234615847396907784232501249 = 0
-div 0 1 = 0
-div 0 -1 = 0
-div 0 2 = 0
-div 0 -2 = 0
-div 0 -9223372036854775808 = 0
-div 0 9223372036854775807 = 0
-div 0 -9223372036854775809 = 0
-div 0 9223372036854775808 = 0
-div 0 -18446744073709551616 = 0
-div 0 18446744073709551614 = 0
-div 0 85070591730234615865843651857942052864 = 0
-div 0 85070591730234615847396907784232501249 = 0
-div 1 1 = 1
-div 1 -1 = -1
-div 1 2 = 0
-div 1 -2 = -1
-div 1 -9223372036854775808 = -1
-div 1 9223372036854775807 = 0
-div 1 -9223372036854775809 = -1
-div 1 9223372036854775808 = 0
-div 1 -18446744073709551616 = -1
-div 1 18446744073709551614 = 0
-div 1 85070591730234615865843651857942052864 = 0
-div 1 85070591730234615847396907784232501249 = 0
-div -1 1 = -1
-div -1 -1 = 1
-div -1 2 = -1
-div -1 -2 = 0
-div -1 -9223372036854775808 = 0
-div -1 9223372036854775807 = -1
-div -1 -9223372036854775809 = 0
-div -1 9223372036854775808 = -1
-div -1 -18446744073709551616 = 0
-div -1 18446744073709551614 = -1
-div -1 85070591730234615865843651857942052864 = -1
-div -1 85070591730234615847396907784232501249 = -1
-div 2 1 = 2
-div 2 -1 = -2
-div 2 2 = 1
-div 2 -2 = -1
-div 2 -9223372036854775808 = -1
-div 2 9223372036854775807 = 0
-div 2 -9223372036854775809 = -1
-div 2 9223372036854775808 = 0
-div 2 -18446744073709551616 = -1
-div 2 18446744073709551614 = 0
-div 2 85070591730234615865843651857942052864 = 0
-div 2 85070591730234615847396907784232501249 = 0
-div -2 1 = -2
-div -2 -1 = 2
-div -2 2 = -1
-div -2 -2 = 1
-div -2 -9223372036854775808 = 0
-div -2 9223372036854775807 = -1
-div -2 -9223372036854775809 = 0
-div -2 9223372036854775808 = -1
-div -2 -18446744073709551616 = 0
-div -2 18446744073709551614 = -1
-div -2 85070591730234615865843651857942052864 = -1
-div -2 85070591730234615847396907784232501249 = -1
-div -9223372036854775808 1 = -9223372036854775808
-div -9223372036854775808 -1 = 9223372036854775808
-div -9223372036854775808 2 = -4611686018427387904
-div -9223372036854775808 -2 = 4611686018427387904
-div -9223372036854775808 -9223372036854775808 = 1
-div -9223372036854775808 9223372036854775807 = -2
-div -9223372036854775808 -9223372036854775809 = 0
-div -9223372036854775808 9223372036854775808 = -1
-div -9223372036854775808 -18446744073709551616 = 0
-div -9223372036854775808 18446744073709551614 = -1
-div -9223372036854775808 85070591730234615865843651857942052864 = -1
-div -9223372036854775808 85070591730234615847396907784232501249 = -1
-div 9223372036854775807 1 = 9223372036854775807
-div 9223372036854775807 -1 = -9223372036854775807
-div 9223372036854775807 2 = 4611686018427387903
-div 9223372036854775807 -2 = -4611686018427387904
-div 9223372036854775807 -9223372036854775808 = -1
-div 9223372036854775807 9223372036854775807 = 1
-div 9223372036854775807 -9223372036854775809 = -1
-div 9223372036854775807 9223372036854775808 = 0
-div 9223372036854775807 -18446744073709551616 = -1
-div 9223372036854775807 18446744073709551614 = 0
-div 9223372036854775807 85070591730234615865843651857942052864 = 0
-div 9223372036854775807 85070591730234615847396907784232501249 = 0
-mod 0 1 = 0
-mod 0 -1 = 0
-mod 0 2 = 0
-mod 0 -2 = 0
-mod 0 -9223372036854775808 = 0
-mod 0 9223372036854775807 = 0
-mod 0 -9223372036854775809 = 0
-mod 0 9223372036854775808 = 0
-mod 0 -18446744073709551616 = 0
-mod 0 18446744073709551614 = 0
-mod 0 85070591730234615865843651857942052864 = 0
-mod 0 85070591730234615847396907784232501249 = 0
-mod 1 1 = 0
-mod 1 -1 = 0
-mod 1 2 = 1
-mod 1 -2 = -1
-mod 1 -9223372036854775808 = -9223372036854775807
-mod 1 9223372036854775807 = 1
-mod 1 -9223372036854775809 = -9223372036854775808
-mod 1 9223372036854775808 = 1
-mod 1 -18446744073709551616 = -18446744073709551615
-mod 1 18446744073709551614 = 1
-mod 1 85070591730234615865843651857942052864 = 1
-mod 1 85070591730234615847396907784232501249 = 1
-mod -1 1 = 0
-mod -1 -1 = 0
-mod -1 2 = 1
-mod -1 -2 = -1
-mod -1 -9223372036854775808 = -1
-mod -1 9223372036854775807 = 9223372036854775806
-mod -1 -9223372036854775809 = -1
-mod -1 9223372036854775808 = 9223372036854775807
-mod -1 -18446744073709551616 = -1
-mod -1 18446744073709551614 = 18446744073709551613
-mod -1 85070591730234615865843651857942052864 = 85070591730234615865843651857942052863
-mod -1 85070591730234615847396907784232501249 = 85070591730234615847396907784232501248
-mod 2 1 = 0
-mod 2 -1 = 0
-mod 2 2 = 0
-mod 2 -2 = 0
-mod 2 -9223372036854775808 = -9223372036854775806
-mod 2 9223372036854775807 = 2
-mod 2 -9223372036854775809 = -9223372036854775807
-mod 2 9223372036854775808 = 2
-mod 2 -18446744073709551616 = -18446744073709551614
-mod 2 18446744073709551614 = 2
-mod 2 85070591730234615865843651857942052864 = 2
-mod 2 85070591730234615847396907784232501249 = 2
-mod -2 1 = 0
-mod -2 -1 = 0
-mod -2 2 = 0
-mod -2 -2 = 0
-mod -2 -9223372036854775808 = -2
-mod -2 9223372036854775807 = 9223372036854775805
-mod -2 -9223372036854775809 = -2
-mod -2 9223372036854775808 = 9223372036854775806
-mod -2 -18446744073709551616 = -2
-mod -2 18446744073709551614 = 18446744073709551612
-mod -2 85070591730234615865843651857942052864 = 85070591730234615865843651857942052862
-mod -2 85070591730234615847396907784232501249 = 85070591730234615847396907784232501247
-mod -9223372036854775808 1 = 0
-mod -9223372036854775808 -1 = 0
-mod -9223372036854775808 2 = 0
-mod -9223372036854775808 -2 = 0
-mod -9223372036854775808 -9223372036854775808 = 0
-mod -9223372036854775808 9223372036854775807 = 9223372036854775806
-mod -9223372036854775808 -9223372036854775809 = -9223372036854775808
-mod -9223372036854775808 9223372036854775808 = 0
-mod -9223372036854775808 -18446744073709551616 = -9223372036854775808
-mod -9223372036854775808 18446744073709551614 = 9223372036854775806
-mod -9223372036854775808 85070591730234615865843651857942052864 = 85070591730234615856620279821087277056
-mod -9223372036854775808 85070591730234615847396907784232501249 = 85070591730234615838173535747377725441
-mod 9223372036854775807 1 = 0
-mod 9223372036854775807 -1 = 0
-mod 9223372036854775807 2 = 1
-mod 9223372036854775807 -2 = -1
-mod 9223372036854775807 -9223372036854775808 = -1
-mod 9223372036854775807 9223372036854775807 = 0
-mod 9223372036854775807 -9223372036854775809 = -2
-mod 9223372036854775807 9223372036854775808 = 9223372036854775807
-mod 9223372036854775807 -18446744073709551616 = -9223372036854775809
-mod 9223372036854775807 18446744073709551614 = 9223372036854775807
-mod 9223372036854775807 85070591730234615865843651857942052864 = 9223372036854775807
-mod 9223372036854775807 85070591730234615847396907784232501249 = 9223372036854775807
-quot 0 1 = 0
-quot 0 -1 = 0
-quot 0 2 = 0
-quot 0 -2 = 0
-quot 0 -9223372036854775808 = 0
-quot 0 9223372036854775807 = 0
-quot 0 -9223372036854775809 = 0
-quot 0 9223372036854775808 = 0
-quot 0 -18446744073709551616 = 0
-quot 0 18446744073709551614 = 0
-quot 0 85070591730234615865843651857942052864 = 0
-quot 0 85070591730234615847396907784232501249 = 0
-quot 1 1 = 1
-quot 1 -1 = -1
-quot 1 2 = 0
-quot 1 -2 = 0
-quot 1 -9223372036854775808 = 0
-quot 1 9223372036854775807 = 0
-quot 1 -9223372036854775809 = 0
-quot 1 9223372036854775808 = 0
-quot 1 -18446744073709551616 = 0
-quot 1 18446744073709551614 = 0
-quot 1 85070591730234615865843651857942052864 = 0
-quot 1 85070591730234615847396907784232501249 = 0
-quot -1 1 = -1
-quot -1 -1 = 1
-quot -1 2 = 0
-quot -1 -2 = 0
-quot -1 -9223372036854775808 = 0
-quot -1 9223372036854775807 = 0
-quot -1 -9223372036854775809 = 0
-quot -1 9223372036854775808 = 0
-quot -1 -18446744073709551616 = 0
-quot -1 18446744073709551614 = 0
-quot -1 85070591730234615865843651857942052864 = 0
-quot -1 85070591730234615847396907784232501249 = 0
-quot 2 1 = 2
-quot 2 -1 = -2
-quot 2 2 = 1
-quot 2 -2 = -1
-quot 2 -9223372036854775808 = 0
-quot 2 9223372036854775807 = 0
-quot 2 -9223372036854775809 = 0
-quot 2 9223372036854775808 = 0
-quot 2 -18446744073709551616 = 0
-quot 2 18446744073709551614 = 0
-quot 2 85070591730234615865843651857942052864 = 0
-quot 2 85070591730234615847396907784232501249 = 0
-quot -2 1 = -2
-quot -2 -1 = 2
-quot -2 2 = -1
-quot -2 -2 = 1
-quot -2 -9223372036854775808 = 0
-quot -2 9223372036854775807 = 0
-quot -2 -9223372036854775809 = 0
-quot -2 9223372036854775808 = 0
-quot -2 -18446744073709551616 = 0
-quot -2 18446744073709551614 = 0
-quot -2 85070591730234615865843651857942052864 = 0
-quot -2 85070591730234615847396907784232501249 = 0
-quot -9223372036854775808 1 = -9223372036854775808
-quot -9223372036854775808 -1 = 9223372036854775808
-quot -9223372036854775808 2 = -4611686018427387904
-quot -9223372036854775808 -2 = 4611686018427387904
-quot -9223372036854775808 -9223372036854775808 = 1
-quot -9223372036854775808 9223372036854775807 = -1
-quot -9223372036854775808 -9223372036854775809 = 0
-quot -9223372036854775808 9223372036854775808 = -1
-quot -9223372036854775808 -18446744073709551616 = 0
-quot -9223372036854775808 18446744073709551614 = 0
-quot -9223372036854775808 85070591730234615865843651857942052864 = 0
-quot -9223372036854775808 85070591730234615847396907784232501249 = 0
-quot 9223372036854775807 1 = 9223372036854775807
-quot 9223372036854775807 -1 = -9223372036854775807
-quot 9223372036854775807 2 = 4611686018427387903
-quot 9223372036854775807 -2 = -4611686018427387903
-quot 9223372036854775807 -9223372036854775808 = 0
-quot 9223372036854775807 9223372036854775807 = 1
-quot 9223372036854775807 -9223372036854775809 = 0
-quot 9223372036854775807 9223372036854775808 = 0
-quot 9223372036854775807 -18446744073709551616 = 0
-quot 9223372036854775807 18446744073709551614 = 0
-quot 9223372036854775807 85070591730234615865843651857942052864 = 0
-quot 9223372036854775807 85070591730234615847396907784232501249 = 0
-rem 0 1 = 0
-rem 0 -1 = 0
-rem 0 2 = 0
-rem 0 -2 = 0
-rem 0 -9223372036854775808 = 0
-rem 0 9223372036854775807 = 0
-rem 0 -9223372036854775809 = 0
-rem 0 9223372036854775808 = 0
-rem 0 -18446744073709551616 = 0
-rem 0 18446744073709551614 = 0
-rem 0 85070591730234615865843651857942052864 = 0
-rem 0 85070591730234615847396907784232501249 = 0
-rem 1 1 = 0
-rem 1 -1 = 0
-rem 1 2 = 1
-rem 1 -2 = 1
-rem 1 -9223372036854775808 = 1
-rem 1 9223372036854775807 = 1
-rem 1 -9223372036854775809 = 1
-rem 1 9223372036854775808 = 1
-rem 1 -18446744073709551616 = 1
-rem 1 18446744073709551614 = 1
-rem 1 85070591730234615865843651857942052864 = 1
-rem 1 85070591730234615847396907784232501249 = 1
-rem -1 1 = 0
-rem -1 -1 = 0
-rem -1 2 = -1
-rem -1 -2 = -1
-rem -1 -9223372036854775808 = -1
-rem -1 9223372036854775807 = -1
-rem -1 -9223372036854775809 = -1
-rem -1 9223372036854775808 = -1
-rem -1 -18446744073709551616 = -1
-rem -1 18446744073709551614 = -1
-rem -1 85070591730234615865843651857942052864 = -1
-rem -1 85070591730234615847396907784232501249 = -1
-rem 2 1 = 0
-rem 2 -1 = 0
-rem 2 2 = 0
-rem 2 -2 = 0
-rem 2 -9223372036854775808 = 2
-rem 2 9223372036854775807 = 2
-rem 2 -9223372036854775809 = 2
-rem 2 9223372036854775808 = 2
-rem 2 -18446744073709551616 = 2
-rem 2 18446744073709551614 = 2
-rem 2 85070591730234615865843651857942052864 = 2
-rem 2 85070591730234615847396907784232501249 = 2
-rem -2 1 = 0
-rem -2 -1 = 0
-rem -2 2 = 0
-rem -2 -2 = 0
-rem -2 -9223372036854775808 = -2
-rem -2 9223372036854775807 = -2
-rem -2 -9223372036854775809 = -2
-rem -2 9223372036854775808 = -2
-rem -2 -18446744073709551616 = -2
-rem -2 18446744073709551614 = -2
-rem -2 85070591730234615865843651857942052864 = -2
-rem -2 85070591730234615847396907784232501249 = -2
-rem -9223372036854775808 1 = 0
-rem -9223372036854775808 -1 = 0
-rem -9223372036854775808 2 = 0
-rem -9223372036854775808 -2 = 0
-rem -9223372036854775808 -9223372036854775808 = 0
-rem -9223372036854775808 9223372036854775807 = -1
-rem -9223372036854775808 -9223372036854775809 = -9223372036854775808
-rem -9223372036854775808 9223372036854775808 = 0
-rem -9223372036854775808 -18446744073709551616 = -9223372036854775808
-rem -9223372036854775808 18446744073709551614 = -9223372036854775808
-rem -9223372036854775808 85070591730234615865843651857942052864 = -9223372036854775808
-rem -9223372036854775808 85070591730234615847396907784232501249 = -9223372036854775808
-rem 9223372036854775807 1 = 0
-rem 9223372036854775807 -1 = 0
-rem 9223372036854775807 2 = 1
-rem 9223372036854775807 -2 = 1
-rem 9223372036854775807 -9223372036854775808 = 9223372036854775807
-rem 9223372036854775807 9223372036854775807 = 0
-rem 9223372036854775807 -9223372036854775809 = 9223372036854775807
-rem 9223372036854775807 9223372036854775808 = 9223372036854775807
-rem 9223372036854775807 -18446744073709551616 = 9223372036854775807
-rem 9223372036854775807 18446744073709551614 = 9223372036854775807
-rem 9223372036854775807 85070591730234615865843651857942052864 = 9223372036854775807
-rem 9223372036854775807 85070591730234615847396907784232501249 = 9223372036854775807
-gcd 0 1 = 1
-gcd 0 -1 = 1
-gcd 0 2 = 2
-gcd 0 -2 = 2
-gcd 0 -9223372036854775808 = 9223372036854775808
-gcd 0 9223372036854775807 = 9223372036854775807
-gcd 1 0 = 1
-gcd 1 1 = 1
-gcd 1 -1 = 1
-gcd 1 2 = 1
-gcd 1 -2 = 1
-gcd 1 -9223372036854775808 = 1
-gcd 1 9223372036854775807 = 1
-gcd -1 0 = 1
-gcd -1 1 = 1
-gcd -1 -1 = 1
-gcd -1 2 = 1
-gcd -1 -2 = 1
-gcd -1 -9223372036854775808 = 1
-gcd -1 9223372036854775807 = 1
-gcd 2 0 = 2
-gcd 2 1 = 1
-gcd 2 -1 = 1
-gcd 2 2 = 2
-gcd 2 -2 = 2
-gcd 2 -9223372036854775808 = 2
-gcd 2 9223372036854775807 = 1
-gcd -2 0 = 2
-gcd -2 1 = 1
-gcd -2 -1 = 1
-gcd -2 2 = 2
-gcd -2 -2 = 2
-gcd -2 -9223372036854775808 = 2
-gcd -2 9223372036854775807 = 1
-gcd -9223372036854775808 0 = 9223372036854775808
-gcd -9223372036854775808 1 = 1
-gcd -9223372036854775808 -1 = 1
-gcd -9223372036854775808 2 = 2
-gcd -9223372036854775808 -2 = 2
-gcd -9223372036854775808 -9223372036854775808 = 9223372036854775808
-gcd -9223372036854775808 9223372036854775807 = 1
-gcd 9223372036854775807 0 = 9223372036854775807
-gcd 9223372036854775807 1 = 1
-gcd 9223372036854775807 -1 = 1
-gcd 9223372036854775807 2 = 1
-gcd 9223372036854775807 -2 = 1
-gcd 9223372036854775807 -9223372036854775808 = 1
-gcd 9223372036854775807 9223372036854775807 = 9223372036854775807
-lcm 0 1 = 0
-lcm 0 -1 = 0
-lcm 0 2 = 0
-lcm 0 -2 = 0
-lcm 0 -9223372036854775808 = 0
-lcm 0 9223372036854775807 = 0
-lcm 1 0 = 0
-lcm 1 1 = 1
-lcm 1 -1 = 1
-lcm 1 2 = 2
-lcm 1 -2 = 2
-lcm 1 -9223372036854775808 = 9223372036854775808
-lcm 1 9223372036854775807 = 9223372036854775807
-lcm -1 0 = 0
-lcm -1 1 = 1
-lcm -1 -1 = 1
-lcm -1 2 = 2
-lcm -1 -2 = 2
-lcm -1 -9223372036854775808 = 9223372036854775808
-lcm -1 9223372036854775807 = 9223372036854775807
-lcm 2 0 = 0
-lcm 2 1 = 2
-lcm 2 -1 = 2
-lcm 2 2 = 2
-lcm 2 -2 = 2
-lcm 2 -9223372036854775808 = 9223372036854775808
-lcm 2 9223372036854775807 = 18446744073709551614
-lcm -2 0 = 0
-lcm -2 1 = 2
-lcm -2 -1 = 2
-lcm -2 2 = 2
-lcm -2 -2 = 2
-lcm -2 -9223372036854775808 = 9223372036854775808
-lcm -2 9223372036854775807 = 18446744073709551614
-lcm -9223372036854775808 0 = 0
-lcm -9223372036854775808 1 = 9223372036854775808
-lcm -9223372036854775808 -1 = 9223372036854775808
-lcm -9223372036854775808 2 = 9223372036854775808
-lcm -9223372036854775808 -2 = 9223372036854775808
-lcm -9223372036854775808 -9223372036854775808 = 9223372036854775808
-lcm -9223372036854775808 9223372036854775807 = 85070591730234615856620279821087277056
-lcm 9223372036854775807 0 = 0
-lcm 9223372036854775807 1 = 9223372036854775807
-lcm 9223372036854775807 -1 = 9223372036854775807
-lcm 9223372036854775807 2 = 18446744073709551614
-lcm 9223372036854775807 -2 = 18446744073709551614
-lcm 9223372036854775807 -9223372036854775808 = 85070591730234615856620279821087277056
-lcm 9223372036854775807 9223372036854775807 = 9223372036854775807
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith004.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith004.hs
deleted file mode 100644
index 68e601128e..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith004.hs
+++ /dev/null
@@ -1,86 +0,0 @@
--- !!! test quot/rem/div/mod functions on Ints and Integers
---
-main
- = putStr
- (-- w/ Ints and Integers
- show (unzipWith div ints_list)
- ++ "\n"
- ++ show (unzipWith div integers_list)
- ++ "\n"
- ++ show (unzipWith rem ints_list)
- ++ "\n"
- ++ show (unzipWith rem integers_list)
- ++ "\n"
- ++ show (unzipWith quot ints_list)
- ++ "\n"
- ++ show (unzipWith quot integers_list)
- ++ "\n"
- ++ show (unzipWith mod ints_list)
- ++ "\n"
- ++ show (unzipWith mod integers_list)
- ++ "\n"
- ++ show (unzipWith law1 ints_list)
- ++ "\n"
- ++ show (unzipWith law1 integers_list)
- ++ "\n"
- ++ show (unzipWith law2 ints_list)
- ++ "\n"
- ++ show (unzipWith law2 integers_list)
- ++ "\n"
- )
- where
- ints_list :: [(Int, Int)]
- integers_list :: [(Integer, Integer)]
-
- ints_list = [
- (0, 4),
- (0, -8),
- (7, 3),
- (13, 4),
- (13, -4),
- (-13, 4),
- (-13, -4),
- (12345678, 10000),
- (12345678, -10000),
- (-12345678, 10000),
- (-12345678, -10000),
- (123456,10000),
- (1234567,20000),
- (12345678,-10000),
- (123456789,10000),
- (1234567890,-10000),
- (-12345,10000),
- (-123456789,-10000)
- ]
-
- integers_list = [
- (0, 4),
- (0, -8),
- (7, 3),
- (13, 4),
- (13, -4),
- (-13, 4),
- (-13, -4),
- (12345678, 10000),
- (12345678, -10000),
- (-12345678, 10000),
- (-12345678, -10000),
- (123456,10000),
- (1234567,20000),
- (12345678,-10000),
- (123456789,10000),
- (1234567890,-10000),
- (-12345,10000),
- (-123456789,-10000),
- (12345678900,500000000),
- (1234000000000000000000005678900,5001111111111111000000)
- ]
-
-unzipWith :: (a -> b -> c) -> [(a,b)] -> [c]
-unzipWith f [] = []
-unzipWith f ((x,y):zs) = f x y : unzipWith f zs
-
-law1, law2 :: Integral a => a -> a -> Bool
-
-law1 x y = (x `quot` y)*y + (x `rem` y) == x
-law2 x y = (x `div` y)*y + (x `mod` y) == x
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith004.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith004.stdout
deleted file mode 100644
index 0ce885eb27..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith004.stdout
+++ /dev/null
@@ -1,12 +0,0 @@
-[0,0,2,3,-4,-4,3,1234,-1235,-1235,1234,12,61,-1235,12345,-123457,-2,12345]
-[0,0,2,3,-4,-4,3,1234,-1235,-1235,1234,12,61,-1235,12345,-123457,-2,12345,24,246745167]
-[0,0,1,1,1,-1,-1,5678,5678,-5678,-5678,3456,14567,5678,6789,7890,-2345,-6789]
-[0,0,1,1,1,-1,-1,5678,5678,-5678,-5678,3456,14567,5678,6789,7890,-2345,-6789,345678900,3703333360749468678900]
-[0,0,2,3,-3,-3,3,1234,-1234,-1234,1234,12,61,-1234,12345,-123456,-1,12345]
-[0,0,2,3,-3,-3,3,1234,-1234,-1234,1234,12,61,-1234,12345,-123456,-1,12345,24,246745167]
-[0,0,1,1,-3,3,-1,5678,-4322,4322,-5678,3456,14567,-4322,6789,-2110,7655,-6789]
-[0,0,1,1,-3,3,-1,5678,-4322,4322,-5678,3456,14567,-4322,6789,-2110,7655,-6789,345678900,3703333360749468678900]
-[True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True]
-[True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True]
-[True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True]
-[True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True,True]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith005.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith005.hs
deleted file mode 100644
index 179d7b33dc..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith005.hs
+++ /dev/null
@@ -1,60 +0,0 @@
--- !!! test RealFrac ops (ceiling/floor/etc.) on Floats/Doubles
---
-main =
- putStr $
- unlines
- [ -- just for fun, we show the floats to
- -- exercise the code responsible.
- 'A' : show (float_list :: [Float])
- , 'B' : show (double_list :: [Double])
- -- {Float,Double} inputs, {Int,Integer} outputs
- , 'C' : show ((map ceiling small_float_list) :: [Int])
- , 'D' : show ((map ceiling float_list) :: [Integer])
- , 'E' : show ((map ceiling small_double_list) :: [Int])
- , 'F' : show ((map ceiling double_list) :: [Integer])
- , 'G' : show ((map floor small_float_list) :: [Int])
- , 'H' : show ((map floor float_list) :: [Integer])
- , 'I' : show ((map floor small_double_list) :: [Int])
- , 'J' : show ((map floor double_list) :: [Integer])
- , 'K' : show ((map truncate small_float_list) :: [Int])
- , 'L' : show ((map truncate float_list) :: [Integer])
- , 'M' : show ((map truncate small_double_list) :: [Int])
- , 'N' : show ((map truncate double_list) :: [Integer])
- , 'n' : show ((map round small_float_list) :: [Int])
- , 'O' : show ((map round float_list) :: [Integer])
- , 'P' : show ((map round small_double_list) :: [Int])
- , 'Q' : show ((map round double_list) :: [Integer])
- , 'R' : show ((map properFraction small_float_list) :: [(Int,Float)])
- , 'S' : show ((map properFraction float_list) :: [(Integer,Float)])
- , 'T' : show ((map properFraction small_double_list) :: [(Int,Double)])
- , 'U' : show ((map properFraction double_list) :: [(Integer,Double)])
- ]
- where
- -- these fit into an Int when truncated. Truncation when the
- -- result does not fit into the target is undefined - not explicitly
- -- so in Haskell 98, but that's the interpretation we've taken in GHC.
- -- See bug #1254
- small_float_list :: [Float]
- small_float_list = [
- 0.0, -0.0, 1.1, 2.8, 3.5, 4.5, -1.0000000001, -2.9999995,
- -3.50000000001, -4.49999999999, 1000012.0, 123.456, 100.25,
- 102.5, 0.0012, -0.00000012, 1.7e4, -1.7e-4, 0.15e-6, pi
- ]
-
- float_list :: [Float]
- float_list = small_float_list ++ [
- 1.18088e+11, 1.2111e+14
- ]
-
- -- these fit into an Int
- small_double_list :: [Double]
- small_double_list = [
- 0.0, -0.0, 1.1, 2.8, 3.5, 4.5, -1.0000000001, -2.9999995,
- -3.50000000001, -4.49999999999, 1000012.0, 123.456, 100.25,
- 102.5, 0.0012, -0.00000012, 1.7e4, -1.7e-4, 0.15e-6, pi
- ]
-
- double_list :: [Double]
- double_list = small_double_list ++ [
- 1.18088e+11, 1.2111e+14
- ]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith005.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith005.stdout
deleted file mode 100644
index 8881543412..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith005.stdout
+++ /dev/null
@@ -1,22 +0,0 @@
-A[0.0,-0.0,1.1,2.8,3.5,4.5,-1.0,-2.9999995,-3.5,-4.5,1000012.0,123.456,100.25,102.5,1.2e-3,-1.2e-7,17000.0,-1.7e-4,1.5e-7,3.1415927,1.18088e11,1.2111e14]
-B[0.0,-0.0,1.1,2.8,3.5,4.5,-1.0000000001,-2.9999995,-3.50000000001,-4.49999999999,1000012.0,123.456,100.25,102.5,1.2e-3,-1.2e-7,17000.0,-1.7e-4,1.5e-7,3.141592653589793,1.18088e11,1.2111e14]
-C[0,0,2,3,4,5,-1,-2,-3,-4,1000012,124,101,103,1,0,17000,0,1,4]
-D[0,0,2,3,4,5,-1,-2,-3,-4,1000012,124,101,103,1,0,17000,0,1,4,118087999488,121109999517696]
-E[0,0,2,3,4,5,-1,-2,-3,-4,1000012,124,101,103,1,0,17000,0,1,4]
-F[0,0,2,3,4,5,-1,-2,-3,-4,1000012,124,101,103,1,0,17000,0,1,4,118088000000,121110000000000]
-G[0,0,1,2,3,4,-1,-3,-4,-5,1000012,123,100,102,0,-1,17000,-1,0,3]
-H[0,0,1,2,3,4,-1,-3,-4,-5,1000012,123,100,102,0,-1,17000,-1,0,3,118087999488,121109999517696]
-I[0,0,1,2,3,4,-2,-3,-4,-5,1000012,123,100,102,0,-1,17000,-1,0,3]
-J[0,0,1,2,3,4,-2,-3,-4,-5,1000012,123,100,102,0,-1,17000,-1,0,3,118088000000,121110000000000]
-K[0,0,1,2,3,4,-1,-2,-3,-4,1000012,123,100,102,0,0,17000,0,0,3]
-L[0,0,1,2,3,4,-1,-2,-3,-4,1000012,123,100,102,0,0,17000,0,0,3,118087999488,121109999517696]
-M[0,0,1,2,3,4,-1,-2,-3,-4,1000012,123,100,102,0,0,17000,0,0,3]
-N[0,0,1,2,3,4,-1,-2,-3,-4,1000012,123,100,102,0,0,17000,0,0,3,118088000000,121110000000000]
-n[0,0,1,3,4,4,-1,-3,-4,-4,1000012,123,100,102,0,0,17000,0,0,3]
-O[0,0,1,3,4,4,-1,-3,-4,-4,1000012,123,100,102,0,0,17000,0,0,3,118087999488,121109999517696]
-P[0,0,1,3,4,4,-1,-3,-4,-4,1000012,123,100,102,0,0,17000,0,0,3]
-Q[0,0,1,3,4,4,-1,-3,-4,-4,1000012,123,100,102,0,0,17000,0,0,3,118088000000,121110000000000]
-R[(0,0.0),(0,0.0),(1,0.100000024),(2,0.79999995),(3,0.5),(4,0.5),(-1,0.0),(-2,-0.9999995),(-3,-0.5),(-4,-0.5),(1000012,0.0),(123,0.45600128),(100,0.25),(102,0.5),(0,1.2e-3),(0,-1.2e-7),(17000,0.0),(0,-1.7e-4),(0,1.5e-7),(3,0.14159274)]
-S[(0,0.0),(0,0.0),(1,0.100000024),(2,0.79999995),(3,0.5),(4,0.5),(-1,0.0),(-2,-0.9999995),(-3,-0.5),(-4,-0.5),(1000012,0.0),(123,0.45600128),(100,0.25),(102,0.5),(0,1.2e-3),(0,-1.2e-7),(17000,0.0),(0,-1.7e-4),(0,1.5e-7),(3,0.14159274),(118087999488,0.0),(121109999517696,0.0)]
-T[(0,0.0),(0,0.0),(1,0.10000000000000009),(2,0.7999999999999998),(3,0.5),(4,0.5),(-1,-1.000000082740371e-10),(-2,-0.9999994999999999),(-3,-0.50000000001),(-4,-0.49999999999),(1000012,0.0),(123,0.45600000000000307),(100,0.25),(102,0.5),(0,1.2e-3),(0,-1.2e-7),(17000,0.0),(0,-1.7e-4),(0,1.5e-7),(3,0.14159265358979312)]
-U[(0,0.0),(0,0.0),(1,0.10000000000000009),(2,0.7999999999999998),(3,0.5),(4,0.5),(-1,-1.000000082740371e-10),(-2,-0.9999994999999999),(-3,-0.50000000001),(-4,-0.49999999999),(1000012,0.0),(123,0.45600000000000307),(100,0.25),(102,0.5),(0,1.2e-3),(0,-1.2e-7),(17000,0.0),(0,-1.7e-4),(0,1.5e-7),(3,0.14159265358979312),(118088000000,0.0),(121110000000000,0.0)]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith005.stdout-ws-64 b/testsuite/tests/ghc-regress/numeric/should_run/arith005.stdout-ws-64
deleted file mode 100644
index 8881543412..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith005.stdout-ws-64
+++ /dev/null
@@ -1,22 +0,0 @@
-A[0.0,-0.0,1.1,2.8,3.5,4.5,-1.0,-2.9999995,-3.5,-4.5,1000012.0,123.456,100.25,102.5,1.2e-3,-1.2e-7,17000.0,-1.7e-4,1.5e-7,3.1415927,1.18088e11,1.2111e14]
-B[0.0,-0.0,1.1,2.8,3.5,4.5,-1.0000000001,-2.9999995,-3.50000000001,-4.49999999999,1000012.0,123.456,100.25,102.5,1.2e-3,-1.2e-7,17000.0,-1.7e-4,1.5e-7,3.141592653589793,1.18088e11,1.2111e14]
-C[0,0,2,3,4,5,-1,-2,-3,-4,1000012,124,101,103,1,0,17000,0,1,4]
-D[0,0,2,3,4,5,-1,-2,-3,-4,1000012,124,101,103,1,0,17000,0,1,4,118087999488,121109999517696]
-E[0,0,2,3,4,5,-1,-2,-3,-4,1000012,124,101,103,1,0,17000,0,1,4]
-F[0,0,2,3,4,5,-1,-2,-3,-4,1000012,124,101,103,1,0,17000,0,1,4,118088000000,121110000000000]
-G[0,0,1,2,3,4,-1,-3,-4,-5,1000012,123,100,102,0,-1,17000,-1,0,3]
-H[0,0,1,2,3,4,-1,-3,-4,-5,1000012,123,100,102,0,-1,17000,-1,0,3,118087999488,121109999517696]
-I[0,0,1,2,3,4,-2,-3,-4,-5,1000012,123,100,102,0,-1,17000,-1,0,3]
-J[0,0,1,2,3,4,-2,-3,-4,-5,1000012,123,100,102,0,-1,17000,-1,0,3,118088000000,121110000000000]
-K[0,0,1,2,3,4,-1,-2,-3,-4,1000012,123,100,102,0,0,17000,0,0,3]
-L[0,0,1,2,3,4,-1,-2,-3,-4,1000012,123,100,102,0,0,17000,0,0,3,118087999488,121109999517696]
-M[0,0,1,2,3,4,-1,-2,-3,-4,1000012,123,100,102,0,0,17000,0,0,3]
-N[0,0,1,2,3,4,-1,-2,-3,-4,1000012,123,100,102,0,0,17000,0,0,3,118088000000,121110000000000]
-n[0,0,1,3,4,4,-1,-3,-4,-4,1000012,123,100,102,0,0,17000,0,0,3]
-O[0,0,1,3,4,4,-1,-3,-4,-4,1000012,123,100,102,0,0,17000,0,0,3,118087999488,121109999517696]
-P[0,0,1,3,4,4,-1,-3,-4,-4,1000012,123,100,102,0,0,17000,0,0,3]
-Q[0,0,1,3,4,4,-1,-3,-4,-4,1000012,123,100,102,0,0,17000,0,0,3,118088000000,121110000000000]
-R[(0,0.0),(0,0.0),(1,0.100000024),(2,0.79999995),(3,0.5),(4,0.5),(-1,0.0),(-2,-0.9999995),(-3,-0.5),(-4,-0.5),(1000012,0.0),(123,0.45600128),(100,0.25),(102,0.5),(0,1.2e-3),(0,-1.2e-7),(17000,0.0),(0,-1.7e-4),(0,1.5e-7),(3,0.14159274)]
-S[(0,0.0),(0,0.0),(1,0.100000024),(2,0.79999995),(3,0.5),(4,0.5),(-1,0.0),(-2,-0.9999995),(-3,-0.5),(-4,-0.5),(1000012,0.0),(123,0.45600128),(100,0.25),(102,0.5),(0,1.2e-3),(0,-1.2e-7),(17000,0.0),(0,-1.7e-4),(0,1.5e-7),(3,0.14159274),(118087999488,0.0),(121109999517696,0.0)]
-T[(0,0.0),(0,0.0),(1,0.10000000000000009),(2,0.7999999999999998),(3,0.5),(4,0.5),(-1,-1.000000082740371e-10),(-2,-0.9999994999999999),(-3,-0.50000000001),(-4,-0.49999999999),(1000012,0.0),(123,0.45600000000000307),(100,0.25),(102,0.5),(0,1.2e-3),(0,-1.2e-7),(17000,0.0),(0,-1.7e-4),(0,1.5e-7),(3,0.14159265358979312)]
-U[(0,0.0),(0,0.0),(1,0.10000000000000009),(2,0.7999999999999998),(3,0.5),(4,0.5),(-1,-1.000000082740371e-10),(-2,-0.9999994999999999),(-3,-0.50000000001),(-4,-0.49999999999),(1000012,0.0),(123,0.45600000000000307),(100,0.25),(102,0.5),(0,1.2e-3),(0,-1.2e-7),(17000,0.0),(0,-1.7e-4),(0,1.5e-7),(3,0.14159265358979312),(118088000000,0.0),(121110000000000,0.0)]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith006.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith006.hs
deleted file mode 100644
index b837692dae..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith006.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! printing Floats; was a bug in hbc (reported by andy)
---
-
-main = print ((fromIntegral (42 :: Int)) :: Float)
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith006.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith006.stdout
deleted file mode 100644
index 713c2229f5..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith006.stdout
+++ /dev/null
@@ -1 +0,0 @@
-42.0
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith007.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith007.hs
deleted file mode 100644
index 3d42d1fb10..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith007.hs
+++ /dev/null
@@ -1,23 +0,0 @@
--- !!! test simple Integer things
---
-
-f x y z = x y z
-
-main = do
- putStr (shows integer_list "\n")
- where
- int_list :: [Int]
- integer_list :: [Integer]
-
- int_list = (map fromInteger integer_list)
-
- integer_list = (map (* 2)
- [1,3,5,7,9,
- 11111111111111111111111111111,
- 2222222222222222222222222222222222222,
- 3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333,
- -11111111111111111111111111111,
- -2222222222222222222222222222222222222,
- -3333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333333
- ])
-
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith007.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith007.stdout
deleted file mode 100644
index 1d7c97d108..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith007.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[2,6,10,14,18,22222222222222222222222222222,4444444444444444444444444444444444444,6666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666,-22222222222222222222222222222,-4444444444444444444444444444444444444,-6666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666666]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith008.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith008.hs
deleted file mode 100644
index 15a3903a0e..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith008.hs
+++ /dev/null
@@ -1,24 +0,0 @@
--- !!! a random test from Nick North
--- (got this in mid-1993; don't remember why. WDP 95/02)
---
-
-random_numbers :: (Int, Int, Int) -> [Float]
-random_numbers (s1,s2,s3)
- = map (snd . properFraction . combine) (iterate f (s1,s2,s3))
- where
- combine :: (Int,Int,Int) -> Float
- combine (a,b,c) =
- fromIntegral(a)/30269 + fromIntegral(b)/30307
- + fromIntegral(c)/30323
- f (a,b,c) =
- ((171*a) `mod` 30269, (172*b) `mod` 30307, (170*c) `mod` 30323)
-
--- partain: changed to cvt spaces into newlines (easier to see bugs)
--- sof: define approp. version of showList to do this.
-main = putStr (showL (showsPrec 0) (take 1000 (random_numbers (9807, 65, 32975))) "\n")
-
-showL showx [] = showString "[]"
-showL showx (x:xs) = showChar '[' . showx x . showl xs
- where
- showl [] = showChar ']'
- showl (x:xs) = showString ",\n" . showx x . showl xs
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith008.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith008.stdout
deleted file mode 100644
index 6a6007c745..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith008.stdout
+++ /dev/null
@@ -1,1000 +0,0 @@
-[0.41359794,
-0.6399324,
-0.92941284,
-0.8322308,
-0.6558542,
-0.27844667,
-0.48358274,
-0.21114683,
-0.7582127,
-0.12166107,
-0.981663,
-0.79931486,
-0.8722358,
-0.45195377,
-3.4911394e-2,
-0.7246227,
-0.24528801,
-0.6998143,
-0.9876834,
-0.42533565,
-0.59525573,
-0.38930762,
-0.119990826,
-0.9083969,
-0.26239872,
-2.744031e-2,
-0.7286656,
-0.92476606,
-0.8718927,
-0.1687454,
-0.13774204,
-0.28789735,
-0.9548291,
-0.41255307,
-0.8564267,
-8.4107876e-2,
-0.48756683,
-0.11202359,
-0.51587105,
-0.5511048,
-0.93413484,
-0.6428783,
-0.87145376,
-0.67891765,
-0.23348927,
-0.3780495,
-0.87735546,
-0.85223985,
-0.19405353,
-0.3535874,
-0.72997916,
-0.23668802,
-0.61755717,
-0.9253086,
-0.7007494,
-0.98090434,
-0.23180747,
-0.8951179,
-0.18330741,
-0.30362415,
-0.57720375,
-0.8465313,
-0.31598616,
-0.20875359,
-0.18506193,
-0.56406593,
-0.87965286,
-2.7450562e-2,
-0.14676762,
-0.74345183,
-0.92644644,
-1.5535355e-3,
-0.8126061,
-0.6636951,
-0.15379143,
-0.16009843,
-0.29956555,
-0.71643496,
-0.65267706,
-1.2942791e-2,
-0.15469885,
-0.70281076,
-0.49925303,
-0.9001132,
-0.55416614,
-0.2577113,
-0.28545964,
-0.26130748,
-0.91633797,
-0.2018559,
-0.88357884,
-0.6068319,
-0.41902173,
-0.80342615,
-0.5469477,
-0.5351703,
-0.36879182,
-0.85823405,
-0.18722737,
-0.20447707,
-0.5052972,
-0.41609886,
-0.13425875,
-0.8554218,
-0.37205708,
-9.450865e-2,
-0.97575045,
-0.8755969,
-0.7150241,
-0.6752708,
-0.6860019,
-0.21408677,
-0.30702153,
-0.3567884,
-0.6356261,
-0.84917825,
-0.13312805,
-0.1351955,
-0.2726475,
-0.77746105,
-0.39467335,
-0.42776418,
-0.15337801,
-0.1592257,
-0.28089368,
-0.6215863,
-0.15158892,
-0.62589145,
-0.9849372,
-0.47261155,
-0.13879633,
-0.53436935,
-0.8684354,
-0.49009013,
-0.8487663,
-0.415954,
-0.49733603,
-0.81666195,
-0.50797117,
-0.19971132,
-0.5820248,
-0.9983189,
-0.27208292,
-0.67335844,
-0.27931952,
-0.42391694,
-0.9081789,
-7.466531e-2,
-5.3013563e-2,
-0.2840109,
-0.4830655,
-0.1756686,
-0.62167895,
-0.89717495,
-0.19109178,
-0.78958845,
-1.543045e-2,
-5.0975323e-2,
-0.21466875,
-0.4129461,
-0.289948,
-0.7271167,
-0.99582183,
-6.0527444e-2,
-0.75902903,
-0.6639817,
-0.8994356,
-2.9090405e-2,
-0.3309772,
-0.8311074,
-0.27760005,
-1.6489744e-2,
-4.7184825e-2,
-6.268692e-2,
-0.37376666,
-0.9638035,
-0.80776775,
-0.690861,
-0.6061044,
-0.6701783,
-0.8412647,
-0.5805452,
-0.41863844,
-0.5514518,
-0.5801554,
-9.124398e-2,
-0.737221,
-0.24314034,
-0.74114823,
-0.32066846,
-1.3154507e-2,
-0.50678635,
-0.5137007,
-0.551865,
-0.69038117,
-0.61931777,
-0.70399594,
-0.9727828,
-0.20246375,
-0.85520244,
-5.0735712e-2,
-0.9930371,
-0.30815053,
-0.22076559,
-0.32370973,
-0.17521977,
-0.43994308,
-0.9906125,
-0.5326147,
-0.66132426,
-7.4525714e-2,
-1.51029825e-2,
-3.151095e-2,
-0.8795854,
-0.1700325,
-0.2575338,
-0.75477123,
-0.8775394,
-0.53388363,
-0.7104862,
-0.13311696,
-0.73177624,
-0.19375706,
-0.88381815,
-0.75322676,
-0.6076188,
-0.48591495,
-0.53411245,
-0.7115935,
-0.48955488,
-0.59558845,
-0.9807129,
-0.8284396,
-0.95038444,
-0.59036994,
-0.52881944,
-0.9948325,
-0.49523282,
-0.7008028,
-0.78729224,
-0.9902679,
-0.5339551,
-4.0822983e-2,
-0.37561977,
-0.5063989,
-0.28711128,
-0.32709387,
-0.8450576,
-0.64256006,
-0.906507,
-4.6909094e-2,
-0.637144,
-0.16923797,
-0.7377299,
-0.30585575,
-0.3570485,
-0.98593795,
-0.5611129,
-7.524538e-2,
-0.8517368,
-0.74607563,
-0.4913547,
-0.83715105,
-0.59740007,
-0.9108657,
-0.14394355,
-8.5148096e-2,
-0.582165,
-2.120018e-3,
-0.705053,
-0.97463274,
-0.58965266,
-0.6484089,
-0.79429245,
-0.7779026,
-0.3388164,
-0.35976696,
-9.1204405e-2,
-0.6134187,
-0.8495743,
-0.9256909,
-0.8651266,
-0.19850588,
-0.7568064,
-0.44688892,
-0.89375556,
-0.28960586,
-0.5118885,
-0.39481246,
-0.23119497,
-0.99098516,
-0.6882521,
-2.3570538e-2,
-0.46816385,
-0.43301296,
-5.7090998e-2,
-0.7131885,
-0.49999893,
-0.8016077,
-0.6981158,
-0.7528713,
-0.50114954,
-0.86821973,
-0.88443303,
-0.4772892,
-0.80758643,
-0.38138628,
-8.940506e-2,
-0.6924608,
-0.52786016,
-0.802331,
-0.98923236,
-0.17653704,
-0.68997073,
-0.1820991,
-0.64604473,
-0.38469362,
-0.8968754,
-0.15813422,
-0.868925,
-4.019952e-2,
-0.25560212,
-0.3128089,
-0.41993904,
-0.948833,
-0.826739,
-0.10151219,
-0.787004,
-0.9594268,
-0.14901423,
-0.1414566,
-0.24321175,
-9.9901915e-2,
-0.8921989,
-0.32741654,
-0.6458428,
-0.16487455,
-0.12096548,
-0.48751688,
-5.245471e-2,
-0.71360433,
-0.94619334,
-0.2514913,
-0.31235778,
-0.3618456,
-0.57202005,
-8.347988e-3,
-0.1945982,
-0.6956324,
-0.9895966,
-0.87327766,
-0.26017582,
-0.47406793,
-0.9971419,
-0.5826107,
-0.17589438,
-0.89086056,
-0.18030643,
-0.4091003,
-0.39576983,
-0.38442576,
-0.13684058,
-8.986688e-2,
-0.17313194,
-0.7679503,
-0.36211073,
-0.82255757,
-0.9100534,
-0.6802888,
-0.11309266,
-0.47404623,
-0.8113966,
-0.42064667,
-0.42901254,
-0.14277196,
-0.1055603,
-0.57029915,
-0.5498085,
-0.71666944,
-0.13909936,
-6.697273e-2,
-0.30388212,
-0.84999645,
-0.61905026,
-0.80875367,
-0.7628211,
-0.7617794,
-0.24128532,
-0.8171586,
-0.7165446,
-0.29046047,
-5.484104e-3,
-0.29707146,
-0.45159855,
-0.8470775,
-0.9105661,
-0.6157371,
-0.24743724,
-0.26728547,
-0.3399787,
-0.30999124,
-0.27707434,
-0.26195288,
-0.57788026,
-0.98340875,
-0.7114443,
-0.10142648,
-0.8840177,
-0.3299948,
-0.27686334,
-0.66194046,
-0.5837232,
-0.34851027,
-0.61612344,
-0.60064816,
-2.1667004e-2,
-0.51634264,
-0.5840348,
-0.54137635,
-0.93811476,
-0.88630515,
-0.35464,
-0.659227,
-0.74290437,
-0.6366904,
-0.12916958,
-0.19237244,
-4.462242e-3,
-8.1073284e-2,
-0.847996,
-0.8305576,
-9.401786e-2,
-0.17688239,
-0.36067092,
-0.56400156,
-0.4449073,
-0.80550474,
-0.94339013,
-0.2624426,
-0.43337846,
-0.79860497,
-0.9083978,
-7.7695847e-3,
-0.28432655,
-0.8844242,
-0.43196678,
-0.5022042,
-0.71939504,
-0.87787163,
-2.2063255e-2,
-0.5932679,
-0.88764143,
-0.6470535,
-2.7034998e-2,
-0.72032475,
-0.19539523,
-0.77757996,
-0.37001276,
-0.84153897,
-0.6239723,
-0.3756181,
-6.846321e-2,
-0.8378935,
-0.59974074,
-0.68847823,
-0.7352172,
-1.07290745e-2,
-0.5101199,
-0.85353947,
-0.14964247,
-0.5860499,
-0.17709386,
-0.89342284,
-0.17894697,
-0.5400078,
-0.4210199,
-0.23370409,
-0.5818304,
-0.68282104,
-5.1081896e-2,
-0.9042077,
-0.3783505,
-0.44932246,
-0.6200993,
-0.18954074,
-0.4474795,
-0.31125343,
-0.8426063,
-6.332576e-2,
-0.8104075,
-0.8648635,
-0.44148827,
-0.84095,
-0.79439354,
-0.5551748,
-0.687835,
-0.118896365,
-0.4412912,
-0.57976437,
-0.6679896,
-0.30952072,
-0.35373104,
-0.18037248,
-9.540319e-3,
-0.48488736,
-0.1673789,
-0.73954326,
-0.56652427,
-0.49777925,
-0.5246444,
-0.6702163,
-0.87621975,
-0.359416,
-0.832193,
-0.18441534,
-0.20517778,
-0.32071996,
-0.65496826,
-3.7642956e-2,
-0.5331861,
-0.29038882,
-0.35165787,
-0.655563,
-0.7891048,
-0.14961207,
-1.6696453e-3,
-0.47526348,
-0.82897127,
-4.0933132e-2,
-0.24862742,
-0.44936025,
-0.2355707,
-0.13713741,
-0.7814115,
-0.80927956,
-0.583858,
-0.7193563,
-0.19353557,
-0.36663485,
-0.107114315,
-0.72664094,
-0.121150136,
-0.6676494,
-0.3600223,
-0.90352046,
-0.9873058,
-0.8213589,
-0.4037695,
-0.42661357,
-0.8075288,
-0.49739814,
-0.708357,
-0.89534307,
-2.7906299e-2,
-0.5197699,
-0.5873811,
-0.37502038,
-0.25809133,
-0.41655612,
-0.35278225,
-0.16273963,
-0.66940236,
-0.97849786,
-0.28304625,
-0.6673634,
-0.19332111,
-0.7478994,
-0.59783196,
-7.6501966e-2,
-0.32878637,
-0.5024115,
-0.7220932,
-0.8336895,
-0.56268775,
-0.89503884,
-0.9931685,
-0.3670969,
-0.6999072,
-0.77585983,
-0.31907177,
-0.76584256,
-4.325044e-2,
-0.29987824,
-0.89478886,
-0.21245062,
-0.2749796,
-0.27403784,
-0.12384033,
-8.77223e-2,
-0.6968431,
-0.41428828,
-0.86889815,
-0.93862987,
-0.28137636,
-0.4471743,
-0.2681458,
-0.16012955,
-0.62948954,
-0.7444658,
-0.57012916,
-0.10132849,
-0.8278511,
-0.19847322,
-0.50814533,
-0.62132853,
-0.18225956,
-0.16162908,
-0.43761563,
-0.10031223,
-0.75076735,
-0.75551176,
-0.5453377,
-0.5066473,
-0.42767167,
-0.5992305,
-0.9446988,
-0.41565955,
-0.9331987,
-0.9897334,
-0.89694524,
-0.6788764,
-0.85561335,
-0.6666684,
-0.80166984,
-0.40720224,
-0.86944854,
-0.92634535,
-0.27878547,
-0.8053527,
-0.6522385,
-0.5152416,
-0.17939234,
-0.24954629,
-0.6818764,
-0.7267182,
-0.36313987,
-9.25622e-2,
-0.84685767,
-0.4344505,
-0.692098,
-0.34008884,
-5.9524536e-2,
-3.827691e-2,
-0.9333053,
-0.2090958,
-0.5924697,
-0.61903036,
-0.30183077,
-0.4231342,
-0.49257803,
-0.83910036,
-0.43436274,
-0.9565089,
-0.2666788,
-4.047084e-2,
-0.41260076,
-0.84976804,
-0.9851905,
-0.62259483,
-0.8959986,
-0.31737566,
-0.3398435,
-0.27567053,
-0.9734041,
-0.77031887,
-0.8473544,
-0.3174919,
-0.58769834,
-0.34807217,
-0.5406821,
-0.8544055,
-0.62600684,
-0.33839083,
-0.9849396,
-1.2942314e-2,
-0.1475277,
-0.4787073,
-0.54596233,
-0.1752423,
-0.77059823,
-9.041047e-2,
-0.2985853,
-0.23247159,
-0.23486897,
-0.23700523,
-0.47728157,
-0.49480152,
-0.72553325,
-0.19682777,
-0.88427216,
-6.551409e-2,
-0.6175699,
-0.8277023,
-0.2039113,
-0.9962605,
-0.9707756,
-9.154308e-2,
-0.123990774,
-0.41500008,
-0.45899975,
-0.7904736,
-0.64120626,
-0.29223895,
-0.48712683,
-0.16071367,
-0.7799654,
-0.7871841,
-0.34515953,
-0.24462819,
-0.7682588,
-0.45865273,
-0.97019315,
-0.52276766,
-1.2032986e-3,
-0.2552061,
-0.35652947,
-1.6108036e-2,
-0.22363806,
-6.0125113e-2,
-0.6667728,
-0.13875532,
-0.48999977,
-0.21847558,
-0.12436485,
-0.6117995,
-0.96883655,
-0.7170677,
-0.7637136,
-0.50507927,
-0.88803625,
-0.6205857,
-0.22137904,
-0.97533226,
-0.9804591,
-0.97967625,
-7.506108e-2,
-0.27170992,
-0.8107689,
-0.76826,
-0.8306192,
-0.77724457,
-0.80831075,
-0.76732874,
-8.157933e-2,
-0.3223102,
-0.8257649,
-0.973259,
-7.5988054e-2,
-0.5415702,
-0.25776172,
-0.76154125,
-0.91835296,
-0.837816,
-0.68698716,
-0.99165297,
-0.36068523,
-0.53661215,
-0.94795275,
-0.24835014,
-0.53556097,
-0.7917472,
-0.17282593,
-0.44980502,
-0.8159183,
-0.2109356,
-8.1673145e-2,
-0.9069164,
-0.8804593,
-0.38818514,
-0.42148066,
-0.84182596,
-0.85033655,
-0.11290777,
-0.9591603,
-0.9008815,
-0.12636256,
-0.62351793,
-0.5625932,
-0.40783405,
-0.9398462,
-0.9048507,
-0.70350707,
-0.5732843,
-0.9578413,
-0.471671,
-0.80402017,
-0.23877287,
-2.8808951e-2,
-0.79105496,
-0.39669204,
-0.5252528,
-5.068612e-2,
-0.17306566,
-0.33026814,
-0.8069451,
-0.774801,
-0.29274237,
-0.9410742,
-0.24736834,
-0.45892864,
-0.32286835,
-9.423089e-2,
-0.23926187,
-0.938661,
-0.11605501,
-0.7519337,
-0.44994712,
-0.8859633,
-0.79223514,
-0.7983874,
-7.165241e-2,
-0.9462296,
-0.8046231,
-0.9736757,
-0.9235935,
-0.85922825,
-0.14425218,
-0.96055603,
-0.4746909,
-0.3689847,
-0.3266207,
-0.6575446,
-0.90298265,
-0.612165,
-0.94542164,
-4.7265768e-2,
-0.9178722,
-0.7290449,
-0.7926531,
-0.8426634,
-0.79898036,
-1.8381119e-2,
-5.914831e-2,
-0.5302744,
-0.3689797,
-0.4085008,
-8.593702e-2,
-0.8765965,
-2.9750824e-2,
-0.23264515,
-0.15577197,
-0.21319818,
-0.21833336,
-0.3431382,
-0.6172347,
-0.5659256,
-0.9447398,
-0.7262399,
-0.7598543,
-0.56384385,
-0.845103,
-0.4162705,
-0.13864326,
-0.7863791,
-0.13542509,
-0.6184137,
-0.2607739,
-0.15591526,
-0.77601504,
-0.76669025,
-0.56118643,
-1.807928e-2,
-0.31010872,
-0.8704659,
-0.98514426,
-0.40933478,
-0.1785686,
-0.48007095,
-8.039451e-2,
-3.796923e-2,
-0.8610754,
-0.9595243,
-0.9287634,
-7.802105e-2,
-0.8274702,
-0.6773733,
-0.97041106,
-0.2371938,
-0.7191273,
-0.36731863,
-0.6625139,
-0.3092258,
-0.47899795,
-2.6395798e-2,
-4.1056633e-2,
-0.7962029,
-0.5768552,
-0.5356126,
-1.3688564e-2,
-0.41969243,
-0.8178707,
-0.5881722,
-0.4442004,
-0.42637897,
-0.76563597,
-8.336306e-3,
-3.3709526e-2,
-0.53669834,
-0.53756106,
-0.31038988,
-0.41079557,
-0.39238024,
-0.24557912,
-9.8520994e-2,
-0.6807518,
-0.12773252,
-0.67073166,
-0.34699106,
-0.9979162,
-0.42680383,
-0.9087982,
-0.6900128,
-0.94652975,
-0.17221642,
-0.33502197,
-0.30609477,
-0.70375323,
-0.41938114,
-0.8668362,
-0.77143216,
-8.8229895e-2,
-0.18202114,
-0.21520734,
-0.10074675,
-0.38907886,
-5.9812307e-2,
-0.62150526,
-0.99084735,
-0.31110406,
-0.7914846,
-0.8661854,
-0.518523,
-0.6151075,
-0.9395801,
-0.4002422,
-0.35337317,
-0.40262416,
-0.7039368,
-0.935411,
-1.2230396e-2,
-0.6683055,
-0.11150932,
-5.5537343e-2,
-8.355498e-2,
-0.6007279,
-0.4403205,
-0.5811975,
-0.86318696,
-5.6501627e-2,
-0.23753202,
-0.9949539,
-0.64893156,
-0.90060663,
-0.14257383,
-0.8300431,
-0.37252688,
-0.18130136,
-0.20323014,
-0.4809363,
-0.8961161,
-0.23287201,
-0.43141174,
-0.3489914,
-0.51495457,
-0.8010473,
-0.23635447,
-0.54324985,
-0.69954085,
-0.48034823,
-0.68947554,
-0.77823305,
-0.7533914,
-0.24090028,
-0.8162971,
-0.46965337,
-0.59434736,
-0.1630373,
-0.6848186,
-1.57516e-2,
-0.8775939,
-0.99723464,
-0.4292655,
-0.47325504,
-0.8548535,
-0.4219792,
-0.7294735,
-0.77217937,
-0.8508531,
-0.117975116,
-0.36563516,
-0.37111998,
-0.3301561,
-6.940341e-2,
-0.5864358,
-0.113250256,
-0.67253065,
-0.8080728,
-0.44792616,
-0.34973896,
-0.25323582]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith009.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith009.hs
deleted file mode 100644
index 43fe1b2923..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith009.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- a prefix minus precedence test
-
-f :: Int -> Int -> Int -> Int
-f x y z = - x * y ^ z
-
-main = putStr (shows (f 5 2 3) "\n")
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith009.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith009.stdout
deleted file mode 100644
index 949a11b741..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith009.stdout
+++ /dev/null
@@ -1 +0,0 @@
--40
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith010.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith010.hs
deleted file mode 100644
index 846f76e4d1..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith010.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Tests enumerations
-
-main = do
- print [1..10]
- print [10..1] -- []
- print [1,3..10]
- print [10,8..1]
- print ['a'..'f']
- print ['f'..'a'] -- []
- print ['a','c'..'m']
- print ['m','l'..'a']
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith010.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith010.stdout
deleted file mode 100644
index e6a2b37721..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith010.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-[1,2,3,4,5,6,7,8,9,10]
-[]
-[1,3,5,7,9]
-[10,8,6,4,2]
-"abcdef"
-""
-"acegikm"
-"mlkjihgfedcba"
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith011.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith011.hs
deleted file mode 100644
index 308cc824a6..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith011.hs
+++ /dev/null
@@ -1,174 +0,0 @@
--- !!! Testing Int and Word
-module Main(main) where
-import Data.Int
-import Data.Word
-import Data.Bits
-import Data.Ix -- added SOF
-import Control.Exception
-
-main :: IO ()
-main = test
-
-test :: IO ()
-test = do
- testIntlike "Int" (0::Int)
- testIntlike "Int8" (0::Int8)
- testIntlike "Int16" (0::Int16)
- testIntlike "Int32" (0::Int32)
- testIntlike "Int64" (0::Int64)
- testIntlike "Word8" (0::Word8)
- testIntlike "Word16" (0::Word16)
- testIntlike "Word32" (0::Word32)
- testIntlike "Word64" (0::Word64)
- testInteger
-
-testIntlike :: (Bounded a, Integral a, Ix a, Read a, Bits a) => String -> a -> IO ()
-testIntlike name zero = do
- putStrLn $ "--------------------------------"
- putStrLn $ "--Testing " ++ name
- putStrLn $ "--------------------------------"
- testBounded zero
- testEnum zero
- testReadShow zero
- testEq zero
- testOrd zero
- testNum zero
- testReal zero
- testIntegral zero
- testConversions zero
- testBits zero True
-
-testInteger = do
- let zero = 0 :: Integer
- putStrLn $ "--------------------------------"
- putStrLn $ "--Testing Integer"
- putStrLn $ "--------------------------------"
- testEnum zero
- testReadShow zero
- testEq zero
- testOrd zero
- testNum zero
- testReal zero
- testIntegral zero
- testBits zero False
-
--- In all these tests, zero is a dummy element used to get
--- the overloading to work
-
-testBounded zero = do
- putStrLn "testBounded"
- print $ (minBound-1, minBound, minBound+1) `asTypeOf` (zero,zero,zero)
- print $ (maxBound-1, maxBound, maxBound+1) `asTypeOf` (zero,zero,zero)
-
-testEnum zero = do
- putStrLn "testEnum"
- print $ take 10 [zero .. ] -- enumFrom
- print $ take 10 [zero, toEnum 2 .. ] -- enumFromThen
- print [zero .. toEnum 20] -- enumFromTo
- print [zero, toEnum 2 .. toEnum 20] -- enumFromThenTo
-
-testConversions zero = do
- putStrLn "testConversions"
- putStr "Integer : " >> print (map fromIntegral numbers :: [Integer])
- putStr "Int : " >> print (map fromIntegral numbers :: [Int])
- putStr "Int8 : " >> print (map fromIntegral numbers :: [Int8])
- putStr "Int16 : " >> print (map fromIntegral numbers :: [Int16])
- putStr "Int32 : " >> print (map fromIntegral numbers :: [Int32])
- putStr "Int64 : " >> print (map fromIntegral numbers :: [Int64])
- putStr "Word8 : " >> print (map fromIntegral numbers :: [Word8])
- putStr "Word16 : " >> print (map fromIntegral numbers :: [Word16])
- putStr "Word32 : " >> print (map fromIntegral numbers :: [Word32])
- putStr "Word64 : " >> print (map fromIntegral numbers :: [Word64])
- where numbers = [minBound, 0, maxBound] `asTypeOf` [zero]
-
-samples :: (Num a) => a -> [a]
-samples zero = map fromInteger ([-3 .. -1]++[0 .. 3])
-
-table1 :: (Show a, Show b) => String -> (a -> b) -> [a] -> IO ()
-table1 nm f xs = do
- sequence [ f' x | x <- xs ]
- putStrLn "#"
- where
- f' x = putStrLn (nm ++ " " ++ show x ++ " = " ++ show (f x))
-
-table2 :: (Show a, Show b, Show c) => String -> (a -> b -> c) -> [a] -> [b] -> IO ()
-table2 nm op xs ys = do
- sequence [ sequence [ op' x y | y <- ys ] >> putStrLn " "
- | x <- xs
- ]
- putStrLn "#"
- where
- op' x y = do s <- Control.Exception.catch
- (evaluate (show (op x y)))
- (\e -> return (show (e :: SomeException)))
- putStrLn (show x ++ " " ++ nm ++ " " ++ show y ++ " = " ++ s)
-
-testReadShow zero = do
- putStrLn "testReadShow"
- print xs
- print (map read_show xs)
- where
- xs = samples zero
- read_show x = (read (show x) `asTypeOf` zero)
-
-testEq zero = do
- putStrLn "testEq"
- table2 "==" (==) xs xs
- table2 "/=" (/=) xs xs
- where
- xs = samples zero
-
-testOrd zero = do
- putStrLn "testOrd"
- table2 "<=" (<=) xs xs
- table2 "< " (<) xs xs
- table2 "> " (>) xs xs
- table2 ">=" (>=) xs xs
- table2 "`compare`" compare xs xs
- where
- xs = samples zero
-
-testNum zero = do
- putStrLn "testNum"
- table2 "+" (+) xs xs
- table2 "-" (-) xs xs
- table2 "*" (*) xs xs
- table1 "negate" negate xs
- where
- xs = samples zero
-
-testReal zero = do
- putStrLn "testReal"
- table1 "toRational" toRational xs
- where
- xs = samples zero
-
-testIntegral zero = do
- putStrLn "testIntegral"
- table2 "`divMod` " divMod xs xs
- table2 "`div` " div xs xs
- table2 "`mod` " mod xs xs
- table2 "`quotRem`" quotRem xs xs
- table2 "`quot` " quot xs xs
- table2 "`rem` " rem xs xs
- where
- xs = samples zero
-
-testBits zero do_bitsize = do
- putStrLn "testBits"
- table2 ".&. " (.&.) xs xs
- table2 ".|. " (.|.) xs xs
- table2 "`xor`" xor xs xs
- table1 "complement" complement xs
- table2 "`shiftL`" shiftL xs ([0..3] ++ [32,64])
- table2 "`shiftR`" shiftR xs ([0..3] ++ [32,64])
- table2 "`rotate`" rotate xs ([-3..3] ++ [-64,-32,32,64])
- table1 "bit" (\ x -> (bit x) `asTypeOf` zero) [(0::Int)..3]
- table2 "`setBit`" setBit xs ([0..3] ++ [32,64])
- table2 "`clearBit`" clearBit xs ([0..3] ++ [32,64])
- table2 "`complementBit`" complementBit xs ([0..3] ++ [32,64])
- table2 "`testBit`" testBit xs ([0..3] ++ [32,64])
- if do_bitsize then table1 "bitSize" bitSize xs else return ()
- table1 "isSigned" isSigned xs
- where
- xs = samples zero
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout
deleted file mode 100644
index 7404c4b353..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout
+++ /dev/null
@@ -1,15418 +0,0 @@
---------------------------------
---Testing Int
---------------------------------
-testBounded
-(2147483647,-2147483648,-2147483647)
-(2147483646,2147483647,-2147483648)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-2147483648,0,2147483647]
-Int : [-2147483648,0,2147483647]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [-2147483648,0,2147483647]
-Int64 : [-2147483648,0,2147483647]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [2147483648,0,2147483647]
-Word64 : [18446744071562067968,0,2147483647]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = 0
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = 0
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = 0
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -1073741825
--3 `rotate` -2 = 2147483647
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
--3 `rotate` -64 = -3
--3 `rotate` -32 = -3
--3 `rotate` 32 = -3
--3 `rotate` 64 = -3
-
--2 `rotate` -3 = -536870913
--2 `rotate` -2 = -1073741825
--2 `rotate` -1 = 2147483647
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
--2 `rotate` -64 = -2
--2 `rotate` -32 = -2
--2 `rotate` 32 = -2
--2 `rotate` 64 = -2
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
--1 `rotate` -64 = -1
--1 `rotate` -32 = -1
--1 `rotate` 32 = -1
--1 `rotate` 64 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 536870912
-1 `rotate` -2 = 1073741824
-1 `rotate` -1 = -2147483648
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 1
-1 `rotate` 32 = 1
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 1073741824
-2 `rotate` -2 = -2147483648
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 2
-2 `rotate` 32 = 2
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 1610612736
-3 `rotate` -2 = -1073741824
-3 `rotate` -1 = -2147483647
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 3
-3 `rotate` 32 = 3
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -3
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -2
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -1
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -3
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -2
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -1
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = False
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = False
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = False
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 32
-bitSize -2 = 32
-bitSize -1 = 32
-bitSize 0 = 32
-bitSize 1 = 32
-bitSize 2 = 32
-bitSize 3 = 32
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int8
---------------------------------
-testBounded
-(127,-128,-127)
-(126,127,-128)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-128,0,127]
-Int : [-128,0,127]
-Int8 : [-128,0,127]
-Int16 : [-128,0,127]
-Int32 : [-128,0,127]
-Int64 : [-128,0,127]
-Word8 : [128,0,127]
-Word16 : [65408,0,127]
-Word32 : [4294967168,0,127]
-Word64 : [18446744073709551488,0,127]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = 0
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = 0
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = 0
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -65
--3 `rotate` -2 = 127
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
--3 `rotate` -64 = -3
--3 `rotate` -32 = -3
--3 `rotate` 32 = -3
--3 `rotate` 64 = -3
-
--2 `rotate` -3 = -33
--2 `rotate` -2 = -65
--2 `rotate` -1 = 127
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
--2 `rotate` -64 = -2
--2 `rotate` -32 = -2
--2 `rotate` 32 = -2
--2 `rotate` 64 = -2
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
--1 `rotate` -64 = -1
--1 `rotate` -32 = -1
--1 `rotate` 32 = -1
--1 `rotate` 64 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 32
-1 `rotate` -2 = 64
-1 `rotate` -1 = -128
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 1
-1 `rotate` 32 = 1
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 64
-2 `rotate` -2 = -128
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 2
-2 `rotate` 32 = 2
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 96
-3 `rotate` -2 = -64
-3 `rotate` -1 = -127
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 3
-3 `rotate` 32 = 3
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -3
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -2
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -1
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -3
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -2
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -1
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = False
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = False
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = False
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 8
-bitSize -2 = 8
-bitSize -1 = 8
-bitSize 0 = 8
-bitSize 1 = 8
-bitSize 2 = 8
-bitSize 3 = 8
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int16
---------------------------------
-testBounded
-(32767,-32768,-32767)
-(32766,32767,-32768)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-32768,0,32767]
-Int : [-32768,0,32767]
-Int8 : [0,0,-1]
-Int16 : [-32768,0,32767]
-Int32 : [-32768,0,32767]
-Int64 : [-32768,0,32767]
-Word8 : [0,0,255]
-Word16 : [32768,0,32767]
-Word32 : [4294934528,0,32767]
-Word64 : [18446744073709518848,0,32767]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = 0
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = 0
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = 0
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -16385
--3 `rotate` -2 = 32767
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
--3 `rotate` -64 = -3
--3 `rotate` -32 = -3
--3 `rotate` 32 = -3
--3 `rotate` 64 = -3
-
--2 `rotate` -3 = -8193
--2 `rotate` -2 = -16385
--2 `rotate` -1 = 32767
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
--2 `rotate` -64 = -2
--2 `rotate` -32 = -2
--2 `rotate` 32 = -2
--2 `rotate` 64 = -2
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
--1 `rotate` -64 = -1
--1 `rotate` -32 = -1
--1 `rotate` 32 = -1
--1 `rotate` 64 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 8192
-1 `rotate` -2 = 16384
-1 `rotate` -1 = -32768
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 1
-1 `rotate` 32 = 1
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 16384
-2 `rotate` -2 = -32768
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 2
-2 `rotate` 32 = 2
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 24576
-3 `rotate` -2 = -16384
-3 `rotate` -1 = -32767
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 3
-3 `rotate` 32 = 3
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -3
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -2
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -1
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -3
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -2
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -1
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = False
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = False
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = False
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 16
-bitSize -2 = 16
-bitSize -1 = 16
-bitSize 0 = 16
-bitSize 1 = 16
-bitSize 2 = 16
-bitSize 3 = 16
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int32
---------------------------------
-testBounded
-(2147483647,-2147483648,-2147483647)
-(2147483646,2147483647,-2147483648)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-2147483648,0,2147483647]
-Int : [-2147483648,0,2147483647]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [-2147483648,0,2147483647]
-Int64 : [-2147483648,0,2147483647]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [2147483648,0,2147483647]
-Word64 : [18446744071562067968,0,2147483647]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = 0
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = 0
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = 0
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -1073741825
--3 `rotate` -2 = 2147483647
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
--3 `rotate` -64 = -3
--3 `rotate` -32 = -3
--3 `rotate` 32 = -3
--3 `rotate` 64 = -3
-
--2 `rotate` -3 = -536870913
--2 `rotate` -2 = -1073741825
--2 `rotate` -1 = 2147483647
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
--2 `rotate` -64 = -2
--2 `rotate` -32 = -2
--2 `rotate` 32 = -2
--2 `rotate` 64 = -2
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
--1 `rotate` -64 = -1
--1 `rotate` -32 = -1
--1 `rotate` 32 = -1
--1 `rotate` 64 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 536870912
-1 `rotate` -2 = 1073741824
-1 `rotate` -1 = -2147483648
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 1
-1 `rotate` 32 = 1
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 1073741824
-2 `rotate` -2 = -2147483648
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 2
-2 `rotate` 32 = 2
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 1610612736
-3 `rotate` -2 = -1073741824
-3 `rotate` -1 = -2147483647
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 3
-3 `rotate` 32 = 3
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -3
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -2
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -1
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -3
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -2
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -1
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = False
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = False
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = False
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 32
-bitSize -2 = 32
-bitSize -1 = 32
-bitSize 0 = 32
-bitSize 1 = 32
-bitSize 2 = 32
-bitSize 3 = 32
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int64
---------------------------------
-testBounded
-(9223372036854775807,-9223372036854775808,-9223372036854775807)
-(9223372036854775806,9223372036854775807,-9223372036854775808)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-9223372036854775808,0,9223372036854775807]
-Int : [0,0,-1]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [-9223372036854775808,0,9223372036854775807]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [9223372036854775808,0,9223372036854775807]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = -12884901888
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = -8589934592
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = -4294967296
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -4611686018427387905
--3 `rotate` -2 = 9223372036854775807
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
--3 `rotate` -64 = -3
--3 `rotate` -32 = -8589934593
--3 `rotate` 32 = -8589934593
--3 `rotate` 64 = -3
-
--2 `rotate` -3 = -2305843009213693953
--2 `rotate` -2 = -4611686018427387905
--2 `rotate` -1 = 9223372036854775807
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
--2 `rotate` -64 = -2
--2 `rotate` -32 = -4294967297
--2 `rotate` 32 = -4294967297
--2 `rotate` 64 = -2
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
--1 `rotate` -64 = -1
--1 `rotate` -32 = -1
--1 `rotate` 32 = -1
--1 `rotate` 64 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 2305843009213693952
-1 `rotate` -2 = 4611686018427387904
-1 `rotate` -1 = -9223372036854775808
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 4294967296
-1 `rotate` 32 = 4294967296
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 4611686018427387904
-2 `rotate` -2 = -9223372036854775808
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 8589934592
-2 `rotate` 32 = 8589934592
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 6917529027641081856
-3 `rotate` -2 = -4611686018427387904
-3 `rotate` -1 = -9223372036854775807
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 12884901888
-3 `rotate` 32 = 12884901888
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -4294967299
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -4294967298
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -4294967297
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -4294967299
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -4294967298
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -4294967297
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = True
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = True
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = True
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 64
-bitSize -2 = 64
-bitSize -1 = 64
-bitSize 0 = 64
-bitSize 1 = 64
-bitSize 2 = 64
-bitSize 3 = 64
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Word8
---------------------------------
-testBounded
-(255,0,1)
-(254,255,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[253,254,255,0,1,2,3]
-[253,254,255,0,1,2,3]
-testEq
-253 == 253 = True
-253 == 254 = False
-253 == 255 = False
-253 == 0 = False
-253 == 1 = False
-253 == 2 = False
-253 == 3 = False
-
-254 == 253 = False
-254 == 254 = True
-254 == 255 = False
-254 == 0 = False
-254 == 1 = False
-254 == 2 = False
-254 == 3 = False
-
-255 == 253 = False
-255 == 254 = False
-255 == 255 = True
-255 == 0 = False
-255 == 1 = False
-255 == 2 = False
-255 == 3 = False
-
-0 == 253 = False
-0 == 254 = False
-0 == 255 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 253 = False
-1 == 254 = False
-1 == 255 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 253 = False
-2 == 254 = False
-2 == 255 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 253 = False
-3 == 254 = False
-3 == 255 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-253 /= 253 = False
-253 /= 254 = True
-253 /= 255 = True
-253 /= 0 = True
-253 /= 1 = True
-253 /= 2 = True
-253 /= 3 = True
-
-254 /= 253 = True
-254 /= 254 = False
-254 /= 255 = True
-254 /= 0 = True
-254 /= 1 = True
-254 /= 2 = True
-254 /= 3 = True
-
-255 /= 253 = True
-255 /= 254 = True
-255 /= 255 = False
-255 /= 0 = True
-255 /= 1 = True
-255 /= 2 = True
-255 /= 3 = True
-
-0 /= 253 = True
-0 /= 254 = True
-0 /= 255 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 253 = True
-1 /= 254 = True
-1 /= 255 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 253 = True
-2 /= 254 = True
-2 /= 255 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 253 = True
-3 /= 254 = True
-3 /= 255 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-253 <= 253 = True
-253 <= 254 = True
-253 <= 255 = True
-253 <= 0 = False
-253 <= 1 = False
-253 <= 2 = False
-253 <= 3 = False
-
-254 <= 253 = False
-254 <= 254 = True
-254 <= 255 = True
-254 <= 0 = False
-254 <= 1 = False
-254 <= 2 = False
-254 <= 3 = False
-
-255 <= 253 = False
-255 <= 254 = False
-255 <= 255 = True
-255 <= 0 = False
-255 <= 1 = False
-255 <= 2 = False
-255 <= 3 = False
-
-0 <= 253 = True
-0 <= 254 = True
-0 <= 255 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 253 = True
-1 <= 254 = True
-1 <= 255 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 253 = True
-2 <= 254 = True
-2 <= 255 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 253 = True
-3 <= 254 = True
-3 <= 255 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-253 < 253 = False
-253 < 254 = True
-253 < 255 = True
-253 < 0 = False
-253 < 1 = False
-253 < 2 = False
-253 < 3 = False
-
-254 < 253 = False
-254 < 254 = False
-254 < 255 = True
-254 < 0 = False
-254 < 1 = False
-254 < 2 = False
-254 < 3 = False
-
-255 < 253 = False
-255 < 254 = False
-255 < 255 = False
-255 < 0 = False
-255 < 1 = False
-255 < 2 = False
-255 < 3 = False
-
-0 < 253 = True
-0 < 254 = True
-0 < 255 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 253 = True
-1 < 254 = True
-1 < 255 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 253 = True
-2 < 254 = True
-2 < 255 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 253 = True
-3 < 254 = True
-3 < 255 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-253 > 253 = False
-253 > 254 = False
-253 > 255 = False
-253 > 0 = True
-253 > 1 = True
-253 > 2 = True
-253 > 3 = True
-
-254 > 253 = True
-254 > 254 = False
-254 > 255 = False
-254 > 0 = True
-254 > 1 = True
-254 > 2 = True
-254 > 3 = True
-
-255 > 253 = True
-255 > 254 = True
-255 > 255 = False
-255 > 0 = True
-255 > 1 = True
-255 > 2 = True
-255 > 3 = True
-
-0 > 253 = False
-0 > 254 = False
-0 > 255 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 253 = False
-1 > 254 = False
-1 > 255 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 253 = False
-2 > 254 = False
-2 > 255 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 253 = False
-3 > 254 = False
-3 > 255 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-253 >= 253 = True
-253 >= 254 = False
-253 >= 255 = False
-253 >= 0 = True
-253 >= 1 = True
-253 >= 2 = True
-253 >= 3 = True
-
-254 >= 253 = True
-254 >= 254 = True
-254 >= 255 = False
-254 >= 0 = True
-254 >= 1 = True
-254 >= 2 = True
-254 >= 3 = True
-
-255 >= 253 = True
-255 >= 254 = True
-255 >= 255 = True
-255 >= 0 = True
-255 >= 1 = True
-255 >= 2 = True
-255 >= 3 = True
-
-0 >= 253 = False
-0 >= 254 = False
-0 >= 255 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 253 = False
-1 >= 254 = False
-1 >= 255 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 253 = False
-2 >= 254 = False
-2 >= 255 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 253 = False
-3 >= 254 = False
-3 >= 255 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-253 `compare` 253 = EQ
-253 `compare` 254 = LT
-253 `compare` 255 = LT
-253 `compare` 0 = GT
-253 `compare` 1 = GT
-253 `compare` 2 = GT
-253 `compare` 3 = GT
-
-254 `compare` 253 = GT
-254 `compare` 254 = EQ
-254 `compare` 255 = LT
-254 `compare` 0 = GT
-254 `compare` 1 = GT
-254 `compare` 2 = GT
-254 `compare` 3 = GT
-
-255 `compare` 253 = GT
-255 `compare` 254 = GT
-255 `compare` 255 = EQ
-255 `compare` 0 = GT
-255 `compare` 1 = GT
-255 `compare` 2 = GT
-255 `compare` 3 = GT
-
-0 `compare` 253 = LT
-0 `compare` 254 = LT
-0 `compare` 255 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 253 = LT
-1 `compare` 254 = LT
-1 `compare` 255 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 253 = LT
-2 `compare` 254 = LT
-2 `compare` 255 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 253 = LT
-3 `compare` 254 = LT
-3 `compare` 255 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-253 + 253 = 250
-253 + 254 = 251
-253 + 255 = 252
-253 + 0 = 253
-253 + 1 = 254
-253 + 2 = 255
-253 + 3 = 0
-
-254 + 253 = 251
-254 + 254 = 252
-254 + 255 = 253
-254 + 0 = 254
-254 + 1 = 255
-254 + 2 = 0
-254 + 3 = 1
-
-255 + 253 = 252
-255 + 254 = 253
-255 + 255 = 254
-255 + 0 = 255
-255 + 1 = 0
-255 + 2 = 1
-255 + 3 = 2
-
-0 + 253 = 253
-0 + 254 = 254
-0 + 255 = 255
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 253 = 254
-1 + 254 = 255
-1 + 255 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 253 = 255
-2 + 254 = 0
-2 + 255 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 253 = 0
-3 + 254 = 1
-3 + 255 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-253 - 253 = 0
-253 - 254 = 255
-253 - 255 = 254
-253 - 0 = 253
-253 - 1 = 252
-253 - 2 = 251
-253 - 3 = 250
-
-254 - 253 = 1
-254 - 254 = 0
-254 - 255 = 255
-254 - 0 = 254
-254 - 1 = 253
-254 - 2 = 252
-254 - 3 = 251
-
-255 - 253 = 2
-255 - 254 = 1
-255 - 255 = 0
-255 - 0 = 255
-255 - 1 = 254
-255 - 2 = 253
-255 - 3 = 252
-
-0 - 253 = 3
-0 - 254 = 2
-0 - 255 = 1
-0 - 0 = 0
-0 - 1 = 255
-0 - 2 = 254
-0 - 3 = 253
-
-1 - 253 = 4
-1 - 254 = 3
-1 - 255 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 255
-1 - 3 = 254
-
-2 - 253 = 5
-2 - 254 = 4
-2 - 255 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 255
-
-3 - 253 = 6
-3 - 254 = 5
-3 - 255 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-253 * 253 = 9
-253 * 254 = 6
-253 * 255 = 3
-253 * 0 = 0
-253 * 1 = 253
-253 * 2 = 250
-253 * 3 = 247
-
-254 * 253 = 6
-254 * 254 = 4
-254 * 255 = 2
-254 * 0 = 0
-254 * 1 = 254
-254 * 2 = 252
-254 * 3 = 250
-
-255 * 253 = 3
-255 * 254 = 2
-255 * 255 = 1
-255 * 0 = 0
-255 * 1 = 255
-255 * 2 = 254
-255 * 3 = 253
-
-0 * 253 = 0
-0 * 254 = 0
-0 * 255 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 253 = 253
-1 * 254 = 254
-1 * 255 = 255
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 253 = 250
-2 * 254 = 252
-2 * 255 = 254
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 253 = 247
-3 * 254 = 250
-3 * 255 = 253
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 253 = 3
-negate 254 = 2
-negate 255 = 1
-negate 0 = 0
-negate 1 = 255
-negate 2 = 254
-negate 3 = 253
-#
-testReal
-toRational 253 = 253 % 1
-toRational 254 = 254 % 1
-toRational 255 = 255 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-253 `divMod` 253 = (1,0)
-253 `divMod` 254 = (0,253)
-253 `divMod` 255 = (0,253)
-253 `divMod` 0 = divide by zero
-253 `divMod` 1 = (253,0)
-253 `divMod` 2 = (126,1)
-253 `divMod` 3 = (84,1)
-
-254 `divMod` 253 = (1,1)
-254 `divMod` 254 = (1,0)
-254 `divMod` 255 = (0,254)
-254 `divMod` 0 = divide by zero
-254 `divMod` 1 = (254,0)
-254 `divMod` 2 = (127,0)
-254 `divMod` 3 = (84,2)
-
-255 `divMod` 253 = (1,2)
-255 `divMod` 254 = (1,1)
-255 `divMod` 255 = (1,0)
-255 `divMod` 0 = divide by zero
-255 `divMod` 1 = (255,0)
-255 `divMod` 2 = (127,1)
-255 `divMod` 3 = (85,0)
-
-0 `divMod` 253 = (0,0)
-0 `divMod` 254 = (0,0)
-0 `divMod` 255 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 253 = (0,1)
-1 `divMod` 254 = (0,1)
-1 `divMod` 255 = (0,1)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 253 = (0,2)
-2 `divMod` 254 = (0,2)
-2 `divMod` 255 = (0,2)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 253 = (0,3)
-3 `divMod` 254 = (0,3)
-3 `divMod` 255 = (0,3)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-253 `div` 253 = 1
-253 `div` 254 = 0
-253 `div` 255 = 0
-253 `div` 0 = divide by zero
-253 `div` 1 = 253
-253 `div` 2 = 126
-253 `div` 3 = 84
-
-254 `div` 253 = 1
-254 `div` 254 = 1
-254 `div` 255 = 0
-254 `div` 0 = divide by zero
-254 `div` 1 = 254
-254 `div` 2 = 127
-254 `div` 3 = 84
-
-255 `div` 253 = 1
-255 `div` 254 = 1
-255 `div` 255 = 1
-255 `div` 0 = divide by zero
-255 `div` 1 = 255
-255 `div` 2 = 127
-255 `div` 3 = 85
-
-0 `div` 253 = 0
-0 `div` 254 = 0
-0 `div` 255 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 253 = 0
-1 `div` 254 = 0
-1 `div` 255 = 0
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 253 = 0
-2 `div` 254 = 0
-2 `div` 255 = 0
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 253 = 0
-3 `div` 254 = 0
-3 `div` 255 = 0
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-253 `mod` 253 = 0
-253 `mod` 254 = 253
-253 `mod` 255 = 253
-253 `mod` 0 = divide by zero
-253 `mod` 1 = 0
-253 `mod` 2 = 1
-253 `mod` 3 = 1
-
-254 `mod` 253 = 1
-254 `mod` 254 = 0
-254 `mod` 255 = 254
-254 `mod` 0 = divide by zero
-254 `mod` 1 = 0
-254 `mod` 2 = 0
-254 `mod` 3 = 2
-
-255 `mod` 253 = 2
-255 `mod` 254 = 1
-255 `mod` 255 = 0
-255 `mod` 0 = divide by zero
-255 `mod` 1 = 0
-255 `mod` 2 = 1
-255 `mod` 3 = 0
-
-0 `mod` 253 = 0
-0 `mod` 254 = 0
-0 `mod` 255 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 253 = 1
-1 `mod` 254 = 1
-1 `mod` 255 = 1
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 253 = 2
-2 `mod` 254 = 2
-2 `mod` 255 = 2
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 253 = 3
-3 `mod` 254 = 3
-3 `mod` 255 = 3
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-253 `quotRem` 253 = (1,0)
-253 `quotRem` 254 = (0,253)
-253 `quotRem` 255 = (0,253)
-253 `quotRem` 0 = divide by zero
-253 `quotRem` 1 = (253,0)
-253 `quotRem` 2 = (126,1)
-253 `quotRem` 3 = (84,1)
-
-254 `quotRem` 253 = (1,1)
-254 `quotRem` 254 = (1,0)
-254 `quotRem` 255 = (0,254)
-254 `quotRem` 0 = divide by zero
-254 `quotRem` 1 = (254,0)
-254 `quotRem` 2 = (127,0)
-254 `quotRem` 3 = (84,2)
-
-255 `quotRem` 253 = (1,2)
-255 `quotRem` 254 = (1,1)
-255 `quotRem` 255 = (1,0)
-255 `quotRem` 0 = divide by zero
-255 `quotRem` 1 = (255,0)
-255 `quotRem` 2 = (127,1)
-255 `quotRem` 3 = (85,0)
-
-0 `quotRem` 253 = (0,0)
-0 `quotRem` 254 = (0,0)
-0 `quotRem` 255 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 253 = (0,1)
-1 `quotRem` 254 = (0,1)
-1 `quotRem` 255 = (0,1)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 253 = (0,2)
-2 `quotRem` 254 = (0,2)
-2 `quotRem` 255 = (0,2)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 253 = (0,3)
-3 `quotRem` 254 = (0,3)
-3 `quotRem` 255 = (0,3)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-253 `quot` 253 = 1
-253 `quot` 254 = 0
-253 `quot` 255 = 0
-253 `quot` 0 = divide by zero
-253 `quot` 1 = 253
-253 `quot` 2 = 126
-253 `quot` 3 = 84
-
-254 `quot` 253 = 1
-254 `quot` 254 = 1
-254 `quot` 255 = 0
-254 `quot` 0 = divide by zero
-254 `quot` 1 = 254
-254 `quot` 2 = 127
-254 `quot` 3 = 84
-
-255 `quot` 253 = 1
-255 `quot` 254 = 1
-255 `quot` 255 = 1
-255 `quot` 0 = divide by zero
-255 `quot` 1 = 255
-255 `quot` 2 = 127
-255 `quot` 3 = 85
-
-0 `quot` 253 = 0
-0 `quot` 254 = 0
-0 `quot` 255 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 253 = 0
-1 `quot` 254 = 0
-1 `quot` 255 = 0
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 253 = 0
-2 `quot` 254 = 0
-2 `quot` 255 = 0
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 253 = 0
-3 `quot` 254 = 0
-3 `quot` 255 = 0
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-253 `rem` 253 = 0
-253 `rem` 254 = 253
-253 `rem` 255 = 253
-253 `rem` 0 = divide by zero
-253 `rem` 1 = 0
-253 `rem` 2 = 1
-253 `rem` 3 = 1
-
-254 `rem` 253 = 1
-254 `rem` 254 = 0
-254 `rem` 255 = 254
-254 `rem` 0 = divide by zero
-254 `rem` 1 = 0
-254 `rem` 2 = 0
-254 `rem` 3 = 2
-
-255 `rem` 253 = 2
-255 `rem` 254 = 1
-255 `rem` 255 = 0
-255 `rem` 0 = divide by zero
-255 `rem` 1 = 0
-255 `rem` 2 = 1
-255 `rem` 3 = 0
-
-0 `rem` 253 = 0
-0 `rem` 254 = 0
-0 `rem` 255 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 253 = 1
-1 `rem` 254 = 1
-1 `rem` 255 = 1
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 253 = 2
-2 `rem` 254 = 2
-2 `rem` 255 = 2
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 253 = 3
-3 `rem` 254 = 3
-3 `rem` 255 = 3
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,255]
-Int : [0,0,255]
-Int8 : [0,0,-1]
-Int16 : [0,0,255]
-Int32 : [0,0,255]
-Int64 : [0,0,255]
-Word8 : [0,0,255]
-Word16 : [0,0,255]
-Word32 : [0,0,255]
-Word64 : [0,0,255]
-testBits
-253 .&. 253 = 253
-253 .&. 254 = 252
-253 .&. 255 = 253
-253 .&. 0 = 0
-253 .&. 1 = 1
-253 .&. 2 = 0
-253 .&. 3 = 1
-
-254 .&. 253 = 252
-254 .&. 254 = 254
-254 .&. 255 = 254
-254 .&. 0 = 0
-254 .&. 1 = 0
-254 .&. 2 = 2
-254 .&. 3 = 2
-
-255 .&. 253 = 253
-255 .&. 254 = 254
-255 .&. 255 = 255
-255 .&. 0 = 0
-255 .&. 1 = 1
-255 .&. 2 = 2
-255 .&. 3 = 3
-
-0 .&. 253 = 0
-0 .&. 254 = 0
-0 .&. 255 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 253 = 1
-1 .&. 254 = 0
-1 .&. 255 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 253 = 0
-2 .&. 254 = 2
-2 .&. 255 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 253 = 1
-3 .&. 254 = 2
-3 .&. 255 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-253 .|. 253 = 253
-253 .|. 254 = 255
-253 .|. 255 = 255
-253 .|. 0 = 253
-253 .|. 1 = 253
-253 .|. 2 = 255
-253 .|. 3 = 255
-
-254 .|. 253 = 255
-254 .|. 254 = 254
-254 .|. 255 = 255
-254 .|. 0 = 254
-254 .|. 1 = 255
-254 .|. 2 = 254
-254 .|. 3 = 255
-
-255 .|. 253 = 255
-255 .|. 254 = 255
-255 .|. 255 = 255
-255 .|. 0 = 255
-255 .|. 1 = 255
-255 .|. 2 = 255
-255 .|. 3 = 255
-
-0 .|. 253 = 253
-0 .|. 254 = 254
-0 .|. 255 = 255
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 253 = 253
-1 .|. 254 = 255
-1 .|. 255 = 255
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 253 = 255
-2 .|. 254 = 254
-2 .|. 255 = 255
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 253 = 255
-3 .|. 254 = 255
-3 .|. 255 = 255
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-253 `xor` 253 = 0
-253 `xor` 254 = 3
-253 `xor` 255 = 2
-253 `xor` 0 = 253
-253 `xor` 1 = 252
-253 `xor` 2 = 255
-253 `xor` 3 = 254
-
-254 `xor` 253 = 3
-254 `xor` 254 = 0
-254 `xor` 255 = 1
-254 `xor` 0 = 254
-254 `xor` 1 = 255
-254 `xor` 2 = 252
-254 `xor` 3 = 253
-
-255 `xor` 253 = 2
-255 `xor` 254 = 1
-255 `xor` 255 = 0
-255 `xor` 0 = 255
-255 `xor` 1 = 254
-255 `xor` 2 = 253
-255 `xor` 3 = 252
-
-0 `xor` 253 = 253
-0 `xor` 254 = 254
-0 `xor` 255 = 255
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 253 = 252
-1 `xor` 254 = 255
-1 `xor` 255 = 254
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 253 = 255
-2 `xor` 254 = 252
-2 `xor` 255 = 253
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 253 = 254
-3 `xor` 254 = 253
-3 `xor` 255 = 252
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 253 = 2
-complement 254 = 1
-complement 255 = 0
-complement 0 = 255
-complement 1 = 254
-complement 2 = 253
-complement 3 = 252
-#
-253 `shiftL` 0 = 253
-253 `shiftL` 1 = 250
-253 `shiftL` 2 = 244
-253 `shiftL` 3 = 232
-253 `shiftL` 32 = 0
-253 `shiftL` 64 = 0
-
-254 `shiftL` 0 = 254
-254 `shiftL` 1 = 252
-254 `shiftL` 2 = 248
-254 `shiftL` 3 = 240
-254 `shiftL` 32 = 0
-254 `shiftL` 64 = 0
-
-255 `shiftL` 0 = 255
-255 `shiftL` 1 = 254
-255 `shiftL` 2 = 252
-255 `shiftL` 3 = 248
-255 `shiftL` 32 = 0
-255 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
-253 `shiftR` 0 = 253
-253 `shiftR` 1 = 126
-253 `shiftR` 2 = 63
-253 `shiftR` 3 = 31
-253 `shiftR` 32 = 0
-253 `shiftR` 64 = 0
-
-254 `shiftR` 0 = 254
-254 `shiftR` 1 = 127
-254 `shiftR` 2 = 63
-254 `shiftR` 3 = 31
-254 `shiftR` 32 = 0
-254 `shiftR` 64 = 0
-
-255 `shiftR` 0 = 255
-255 `shiftR` 1 = 127
-255 `shiftR` 2 = 63
-255 `shiftR` 3 = 31
-255 `shiftR` 32 = 0
-255 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-253 `rotate` -3 = 191
-253 `rotate` -2 = 127
-253 `rotate` -1 = 254
-253 `rotate` 0 = 253
-253 `rotate` 1 = 251
-253 `rotate` 2 = 247
-253 `rotate` 3 = 239
-253 `rotate` -64 = 253
-253 `rotate` -32 = 253
-253 `rotate` 32 = 253
-253 `rotate` 64 = 253
-
-254 `rotate` -3 = 223
-254 `rotate` -2 = 191
-254 `rotate` -1 = 127
-254 `rotate` 0 = 254
-254 `rotate` 1 = 253
-254 `rotate` 2 = 251
-254 `rotate` 3 = 247
-254 `rotate` -64 = 254
-254 `rotate` -32 = 254
-254 `rotate` 32 = 254
-254 `rotate` 64 = 254
-
-255 `rotate` -3 = 255
-255 `rotate` -2 = 255
-255 `rotate` -1 = 255
-255 `rotate` 0 = 255
-255 `rotate` 1 = 255
-255 `rotate` 2 = 255
-255 `rotate` 3 = 255
-255 `rotate` -64 = 255
-255 `rotate` -32 = 255
-255 `rotate` 32 = 255
-255 `rotate` 64 = 255
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 32
-1 `rotate` -2 = 64
-1 `rotate` -1 = 128
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 1
-1 `rotate` 32 = 1
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 64
-2 `rotate` -2 = 128
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 2
-2 `rotate` 32 = 2
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 96
-3 `rotate` -2 = 192
-3 `rotate` -1 = 129
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 3
-3 `rotate` 32 = 3
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-253 `setBit` 0 = 253
-253 `setBit` 1 = 255
-253 `setBit` 2 = 253
-253 `setBit` 3 = 253
-253 `setBit` 32 = 253
-253 `setBit` 64 = 253
-
-254 `setBit` 0 = 255
-254 `setBit` 1 = 254
-254 `setBit` 2 = 254
-254 `setBit` 3 = 254
-254 `setBit` 32 = 254
-254 `setBit` 64 = 254
-
-255 `setBit` 0 = 255
-255 `setBit` 1 = 255
-255 `setBit` 2 = 255
-255 `setBit` 3 = 255
-255 `setBit` 32 = 255
-255 `setBit` 64 = 255
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
-253 `clearBit` 0 = 252
-253 `clearBit` 1 = 253
-253 `clearBit` 2 = 249
-253 `clearBit` 3 = 245
-253 `clearBit` 32 = 253
-253 `clearBit` 64 = 253
-
-254 `clearBit` 0 = 254
-254 `clearBit` 1 = 252
-254 `clearBit` 2 = 250
-254 `clearBit` 3 = 246
-254 `clearBit` 32 = 254
-254 `clearBit` 64 = 254
-
-255 `clearBit` 0 = 254
-255 `clearBit` 1 = 253
-255 `clearBit` 2 = 251
-255 `clearBit` 3 = 247
-255 `clearBit` 32 = 255
-255 `clearBit` 64 = 255
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-253 `complementBit` 0 = 252
-253 `complementBit` 1 = 255
-253 `complementBit` 2 = 249
-253 `complementBit` 3 = 245
-253 `complementBit` 32 = 253
-253 `complementBit` 64 = 253
-
-254 `complementBit` 0 = 255
-254 `complementBit` 1 = 252
-254 `complementBit` 2 = 250
-254 `complementBit` 3 = 246
-254 `complementBit` 32 = 254
-254 `complementBit` 64 = 254
-
-255 `complementBit` 0 = 254
-255 `complementBit` 1 = 253
-255 `complementBit` 2 = 251
-255 `complementBit` 3 = 247
-255 `complementBit` 32 = 255
-255 `complementBit` 64 = 255
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
-253 `testBit` 0 = True
-253 `testBit` 1 = False
-253 `testBit` 2 = True
-253 `testBit` 3 = True
-253 `testBit` 32 = False
-253 `testBit` 64 = False
-
-254 `testBit` 0 = False
-254 `testBit` 1 = True
-254 `testBit` 2 = True
-254 `testBit` 3 = True
-254 `testBit` 32 = False
-254 `testBit` 64 = False
-
-255 `testBit` 0 = True
-255 `testBit` 1 = True
-255 `testBit` 2 = True
-255 `testBit` 3 = True
-255 `testBit` 32 = False
-255 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 253 = 8
-bitSize 254 = 8
-bitSize 255 = 8
-bitSize 0 = 8
-bitSize 1 = 8
-bitSize 2 = 8
-bitSize 3 = 8
-#
-isSigned 253 = False
-isSigned 254 = False
-isSigned 255 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Word16
---------------------------------
-testBounded
-(65535,0,1)
-(65534,65535,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[65533,65534,65535,0,1,2,3]
-[65533,65534,65535,0,1,2,3]
-testEq
-65533 == 65533 = True
-65533 == 65534 = False
-65533 == 65535 = False
-65533 == 0 = False
-65533 == 1 = False
-65533 == 2 = False
-65533 == 3 = False
-
-65534 == 65533 = False
-65534 == 65534 = True
-65534 == 65535 = False
-65534 == 0 = False
-65534 == 1 = False
-65534 == 2 = False
-65534 == 3 = False
-
-65535 == 65533 = False
-65535 == 65534 = False
-65535 == 65535 = True
-65535 == 0 = False
-65535 == 1 = False
-65535 == 2 = False
-65535 == 3 = False
-
-0 == 65533 = False
-0 == 65534 = False
-0 == 65535 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 65533 = False
-1 == 65534 = False
-1 == 65535 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 65533 = False
-2 == 65534 = False
-2 == 65535 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 65533 = False
-3 == 65534 = False
-3 == 65535 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-65533 /= 65533 = False
-65533 /= 65534 = True
-65533 /= 65535 = True
-65533 /= 0 = True
-65533 /= 1 = True
-65533 /= 2 = True
-65533 /= 3 = True
-
-65534 /= 65533 = True
-65534 /= 65534 = False
-65534 /= 65535 = True
-65534 /= 0 = True
-65534 /= 1 = True
-65534 /= 2 = True
-65534 /= 3 = True
-
-65535 /= 65533 = True
-65535 /= 65534 = True
-65535 /= 65535 = False
-65535 /= 0 = True
-65535 /= 1 = True
-65535 /= 2 = True
-65535 /= 3 = True
-
-0 /= 65533 = True
-0 /= 65534 = True
-0 /= 65535 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 65533 = True
-1 /= 65534 = True
-1 /= 65535 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 65533 = True
-2 /= 65534 = True
-2 /= 65535 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 65533 = True
-3 /= 65534 = True
-3 /= 65535 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-65533 <= 65533 = True
-65533 <= 65534 = True
-65533 <= 65535 = True
-65533 <= 0 = False
-65533 <= 1 = False
-65533 <= 2 = False
-65533 <= 3 = False
-
-65534 <= 65533 = False
-65534 <= 65534 = True
-65534 <= 65535 = True
-65534 <= 0 = False
-65534 <= 1 = False
-65534 <= 2 = False
-65534 <= 3 = False
-
-65535 <= 65533 = False
-65535 <= 65534 = False
-65535 <= 65535 = True
-65535 <= 0 = False
-65535 <= 1 = False
-65535 <= 2 = False
-65535 <= 3 = False
-
-0 <= 65533 = True
-0 <= 65534 = True
-0 <= 65535 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 65533 = True
-1 <= 65534 = True
-1 <= 65535 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 65533 = True
-2 <= 65534 = True
-2 <= 65535 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 65533 = True
-3 <= 65534 = True
-3 <= 65535 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-65533 < 65533 = False
-65533 < 65534 = True
-65533 < 65535 = True
-65533 < 0 = False
-65533 < 1 = False
-65533 < 2 = False
-65533 < 3 = False
-
-65534 < 65533 = False
-65534 < 65534 = False
-65534 < 65535 = True
-65534 < 0 = False
-65534 < 1 = False
-65534 < 2 = False
-65534 < 3 = False
-
-65535 < 65533 = False
-65535 < 65534 = False
-65535 < 65535 = False
-65535 < 0 = False
-65535 < 1 = False
-65535 < 2 = False
-65535 < 3 = False
-
-0 < 65533 = True
-0 < 65534 = True
-0 < 65535 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 65533 = True
-1 < 65534 = True
-1 < 65535 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 65533 = True
-2 < 65534 = True
-2 < 65535 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 65533 = True
-3 < 65534 = True
-3 < 65535 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-65533 > 65533 = False
-65533 > 65534 = False
-65533 > 65535 = False
-65533 > 0 = True
-65533 > 1 = True
-65533 > 2 = True
-65533 > 3 = True
-
-65534 > 65533 = True
-65534 > 65534 = False
-65534 > 65535 = False
-65534 > 0 = True
-65534 > 1 = True
-65534 > 2 = True
-65534 > 3 = True
-
-65535 > 65533 = True
-65535 > 65534 = True
-65535 > 65535 = False
-65535 > 0 = True
-65535 > 1 = True
-65535 > 2 = True
-65535 > 3 = True
-
-0 > 65533 = False
-0 > 65534 = False
-0 > 65535 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 65533 = False
-1 > 65534 = False
-1 > 65535 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 65533 = False
-2 > 65534 = False
-2 > 65535 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 65533 = False
-3 > 65534 = False
-3 > 65535 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-65533 >= 65533 = True
-65533 >= 65534 = False
-65533 >= 65535 = False
-65533 >= 0 = True
-65533 >= 1 = True
-65533 >= 2 = True
-65533 >= 3 = True
-
-65534 >= 65533 = True
-65534 >= 65534 = True
-65534 >= 65535 = False
-65534 >= 0 = True
-65534 >= 1 = True
-65534 >= 2 = True
-65534 >= 3 = True
-
-65535 >= 65533 = True
-65535 >= 65534 = True
-65535 >= 65535 = True
-65535 >= 0 = True
-65535 >= 1 = True
-65535 >= 2 = True
-65535 >= 3 = True
-
-0 >= 65533 = False
-0 >= 65534 = False
-0 >= 65535 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 65533 = False
-1 >= 65534 = False
-1 >= 65535 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 65533 = False
-2 >= 65534 = False
-2 >= 65535 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 65533 = False
-3 >= 65534 = False
-3 >= 65535 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-65533 `compare` 65533 = EQ
-65533 `compare` 65534 = LT
-65533 `compare` 65535 = LT
-65533 `compare` 0 = GT
-65533 `compare` 1 = GT
-65533 `compare` 2 = GT
-65533 `compare` 3 = GT
-
-65534 `compare` 65533 = GT
-65534 `compare` 65534 = EQ
-65534 `compare` 65535 = LT
-65534 `compare` 0 = GT
-65534 `compare` 1 = GT
-65534 `compare` 2 = GT
-65534 `compare` 3 = GT
-
-65535 `compare` 65533 = GT
-65535 `compare` 65534 = GT
-65535 `compare` 65535 = EQ
-65535 `compare` 0 = GT
-65535 `compare` 1 = GT
-65535 `compare` 2 = GT
-65535 `compare` 3 = GT
-
-0 `compare` 65533 = LT
-0 `compare` 65534 = LT
-0 `compare` 65535 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 65533 = LT
-1 `compare` 65534 = LT
-1 `compare` 65535 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 65533 = LT
-2 `compare` 65534 = LT
-2 `compare` 65535 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 65533 = LT
-3 `compare` 65534 = LT
-3 `compare` 65535 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-65533 + 65533 = 65530
-65533 + 65534 = 65531
-65533 + 65535 = 65532
-65533 + 0 = 65533
-65533 + 1 = 65534
-65533 + 2 = 65535
-65533 + 3 = 0
-
-65534 + 65533 = 65531
-65534 + 65534 = 65532
-65534 + 65535 = 65533
-65534 + 0 = 65534
-65534 + 1 = 65535
-65534 + 2 = 0
-65534 + 3 = 1
-
-65535 + 65533 = 65532
-65535 + 65534 = 65533
-65535 + 65535 = 65534
-65535 + 0 = 65535
-65535 + 1 = 0
-65535 + 2 = 1
-65535 + 3 = 2
-
-0 + 65533 = 65533
-0 + 65534 = 65534
-0 + 65535 = 65535
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 65533 = 65534
-1 + 65534 = 65535
-1 + 65535 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 65533 = 65535
-2 + 65534 = 0
-2 + 65535 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 65533 = 0
-3 + 65534 = 1
-3 + 65535 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-65533 - 65533 = 0
-65533 - 65534 = 65535
-65533 - 65535 = 65534
-65533 - 0 = 65533
-65533 - 1 = 65532
-65533 - 2 = 65531
-65533 - 3 = 65530
-
-65534 - 65533 = 1
-65534 - 65534 = 0
-65534 - 65535 = 65535
-65534 - 0 = 65534
-65534 - 1 = 65533
-65534 - 2 = 65532
-65534 - 3 = 65531
-
-65535 - 65533 = 2
-65535 - 65534 = 1
-65535 - 65535 = 0
-65535 - 0 = 65535
-65535 - 1 = 65534
-65535 - 2 = 65533
-65535 - 3 = 65532
-
-0 - 65533 = 3
-0 - 65534 = 2
-0 - 65535 = 1
-0 - 0 = 0
-0 - 1 = 65535
-0 - 2 = 65534
-0 - 3 = 65533
-
-1 - 65533 = 4
-1 - 65534 = 3
-1 - 65535 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 65535
-1 - 3 = 65534
-
-2 - 65533 = 5
-2 - 65534 = 4
-2 - 65535 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 65535
-
-3 - 65533 = 6
-3 - 65534 = 5
-3 - 65535 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-65533 * 65533 = 9
-65533 * 65534 = 6
-65533 * 65535 = 3
-65533 * 0 = 0
-65533 * 1 = 65533
-65533 * 2 = 65530
-65533 * 3 = 65527
-
-65534 * 65533 = 6
-65534 * 65534 = 4
-65534 * 65535 = 2
-65534 * 0 = 0
-65534 * 1 = 65534
-65534 * 2 = 65532
-65534 * 3 = 65530
-
-65535 * 65533 = 3
-65535 * 65534 = 2
-65535 * 65535 = 1
-65535 * 0 = 0
-65535 * 1 = 65535
-65535 * 2 = 65534
-65535 * 3 = 65533
-
-0 * 65533 = 0
-0 * 65534 = 0
-0 * 65535 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 65533 = 65533
-1 * 65534 = 65534
-1 * 65535 = 65535
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 65533 = 65530
-2 * 65534 = 65532
-2 * 65535 = 65534
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 65533 = 65527
-3 * 65534 = 65530
-3 * 65535 = 65533
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 65533 = 3
-negate 65534 = 2
-negate 65535 = 1
-negate 0 = 0
-negate 1 = 65535
-negate 2 = 65534
-negate 3 = 65533
-#
-testReal
-toRational 65533 = 65533 % 1
-toRational 65534 = 65534 % 1
-toRational 65535 = 65535 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-65533 `divMod` 65533 = (1,0)
-65533 `divMod` 65534 = (0,65533)
-65533 `divMod` 65535 = (0,65533)
-65533 `divMod` 0 = divide by zero
-65533 `divMod` 1 = (65533,0)
-65533 `divMod` 2 = (32766,1)
-65533 `divMod` 3 = (21844,1)
-
-65534 `divMod` 65533 = (1,1)
-65534 `divMod` 65534 = (1,0)
-65534 `divMod` 65535 = (0,65534)
-65534 `divMod` 0 = divide by zero
-65534 `divMod` 1 = (65534,0)
-65534 `divMod` 2 = (32767,0)
-65534 `divMod` 3 = (21844,2)
-
-65535 `divMod` 65533 = (1,2)
-65535 `divMod` 65534 = (1,1)
-65535 `divMod` 65535 = (1,0)
-65535 `divMod` 0 = divide by zero
-65535 `divMod` 1 = (65535,0)
-65535 `divMod` 2 = (32767,1)
-65535 `divMod` 3 = (21845,0)
-
-0 `divMod` 65533 = (0,0)
-0 `divMod` 65534 = (0,0)
-0 `divMod` 65535 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 65533 = (0,1)
-1 `divMod` 65534 = (0,1)
-1 `divMod` 65535 = (0,1)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 65533 = (0,2)
-2 `divMod` 65534 = (0,2)
-2 `divMod` 65535 = (0,2)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 65533 = (0,3)
-3 `divMod` 65534 = (0,3)
-3 `divMod` 65535 = (0,3)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-65533 `div` 65533 = 1
-65533 `div` 65534 = 0
-65533 `div` 65535 = 0
-65533 `div` 0 = divide by zero
-65533 `div` 1 = 65533
-65533 `div` 2 = 32766
-65533 `div` 3 = 21844
-
-65534 `div` 65533 = 1
-65534 `div` 65534 = 1
-65534 `div` 65535 = 0
-65534 `div` 0 = divide by zero
-65534 `div` 1 = 65534
-65534 `div` 2 = 32767
-65534 `div` 3 = 21844
-
-65535 `div` 65533 = 1
-65535 `div` 65534 = 1
-65535 `div` 65535 = 1
-65535 `div` 0 = divide by zero
-65535 `div` 1 = 65535
-65535 `div` 2 = 32767
-65535 `div` 3 = 21845
-
-0 `div` 65533 = 0
-0 `div` 65534 = 0
-0 `div` 65535 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 65533 = 0
-1 `div` 65534 = 0
-1 `div` 65535 = 0
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 65533 = 0
-2 `div` 65534 = 0
-2 `div` 65535 = 0
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 65533 = 0
-3 `div` 65534 = 0
-3 `div` 65535 = 0
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-65533 `mod` 65533 = 0
-65533 `mod` 65534 = 65533
-65533 `mod` 65535 = 65533
-65533 `mod` 0 = divide by zero
-65533 `mod` 1 = 0
-65533 `mod` 2 = 1
-65533 `mod` 3 = 1
-
-65534 `mod` 65533 = 1
-65534 `mod` 65534 = 0
-65534 `mod` 65535 = 65534
-65534 `mod` 0 = divide by zero
-65534 `mod` 1 = 0
-65534 `mod` 2 = 0
-65534 `mod` 3 = 2
-
-65535 `mod` 65533 = 2
-65535 `mod` 65534 = 1
-65535 `mod` 65535 = 0
-65535 `mod` 0 = divide by zero
-65535 `mod` 1 = 0
-65535 `mod` 2 = 1
-65535 `mod` 3 = 0
-
-0 `mod` 65533 = 0
-0 `mod` 65534 = 0
-0 `mod` 65535 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 65533 = 1
-1 `mod` 65534 = 1
-1 `mod` 65535 = 1
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 65533 = 2
-2 `mod` 65534 = 2
-2 `mod` 65535 = 2
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 65533 = 3
-3 `mod` 65534 = 3
-3 `mod` 65535 = 3
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-65533 `quotRem` 65533 = (1,0)
-65533 `quotRem` 65534 = (0,65533)
-65533 `quotRem` 65535 = (0,65533)
-65533 `quotRem` 0 = divide by zero
-65533 `quotRem` 1 = (65533,0)
-65533 `quotRem` 2 = (32766,1)
-65533 `quotRem` 3 = (21844,1)
-
-65534 `quotRem` 65533 = (1,1)
-65534 `quotRem` 65534 = (1,0)
-65534 `quotRem` 65535 = (0,65534)
-65534 `quotRem` 0 = divide by zero
-65534 `quotRem` 1 = (65534,0)
-65534 `quotRem` 2 = (32767,0)
-65534 `quotRem` 3 = (21844,2)
-
-65535 `quotRem` 65533 = (1,2)
-65535 `quotRem` 65534 = (1,1)
-65535 `quotRem` 65535 = (1,0)
-65535 `quotRem` 0 = divide by zero
-65535 `quotRem` 1 = (65535,0)
-65535 `quotRem` 2 = (32767,1)
-65535 `quotRem` 3 = (21845,0)
-
-0 `quotRem` 65533 = (0,0)
-0 `quotRem` 65534 = (0,0)
-0 `quotRem` 65535 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 65533 = (0,1)
-1 `quotRem` 65534 = (0,1)
-1 `quotRem` 65535 = (0,1)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 65533 = (0,2)
-2 `quotRem` 65534 = (0,2)
-2 `quotRem` 65535 = (0,2)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 65533 = (0,3)
-3 `quotRem` 65534 = (0,3)
-3 `quotRem` 65535 = (0,3)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-65533 `quot` 65533 = 1
-65533 `quot` 65534 = 0
-65533 `quot` 65535 = 0
-65533 `quot` 0 = divide by zero
-65533 `quot` 1 = 65533
-65533 `quot` 2 = 32766
-65533 `quot` 3 = 21844
-
-65534 `quot` 65533 = 1
-65534 `quot` 65534 = 1
-65534 `quot` 65535 = 0
-65534 `quot` 0 = divide by zero
-65534 `quot` 1 = 65534
-65534 `quot` 2 = 32767
-65534 `quot` 3 = 21844
-
-65535 `quot` 65533 = 1
-65535 `quot` 65534 = 1
-65535 `quot` 65535 = 1
-65535 `quot` 0 = divide by zero
-65535 `quot` 1 = 65535
-65535 `quot` 2 = 32767
-65535 `quot` 3 = 21845
-
-0 `quot` 65533 = 0
-0 `quot` 65534 = 0
-0 `quot` 65535 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 65533 = 0
-1 `quot` 65534 = 0
-1 `quot` 65535 = 0
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 65533 = 0
-2 `quot` 65534 = 0
-2 `quot` 65535 = 0
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 65533 = 0
-3 `quot` 65534 = 0
-3 `quot` 65535 = 0
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-65533 `rem` 65533 = 0
-65533 `rem` 65534 = 65533
-65533 `rem` 65535 = 65533
-65533 `rem` 0 = divide by zero
-65533 `rem` 1 = 0
-65533 `rem` 2 = 1
-65533 `rem` 3 = 1
-
-65534 `rem` 65533 = 1
-65534 `rem` 65534 = 0
-65534 `rem` 65535 = 65534
-65534 `rem` 0 = divide by zero
-65534 `rem` 1 = 0
-65534 `rem` 2 = 0
-65534 `rem` 3 = 2
-
-65535 `rem` 65533 = 2
-65535 `rem` 65534 = 1
-65535 `rem` 65535 = 0
-65535 `rem` 0 = divide by zero
-65535 `rem` 1 = 0
-65535 `rem` 2 = 1
-65535 `rem` 3 = 0
-
-0 `rem` 65533 = 0
-0 `rem` 65534 = 0
-0 `rem` 65535 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 65533 = 1
-1 `rem` 65534 = 1
-1 `rem` 65535 = 1
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 65533 = 2
-2 `rem` 65534 = 2
-2 `rem` 65535 = 2
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 65533 = 3
-3 `rem` 65534 = 3
-3 `rem` 65535 = 3
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,65535]
-Int : [0,0,65535]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,65535]
-Int64 : [0,0,65535]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,65535]
-Word64 : [0,0,65535]
-testBits
-65533 .&. 65533 = 65533
-65533 .&. 65534 = 65532
-65533 .&. 65535 = 65533
-65533 .&. 0 = 0
-65533 .&. 1 = 1
-65533 .&. 2 = 0
-65533 .&. 3 = 1
-
-65534 .&. 65533 = 65532
-65534 .&. 65534 = 65534
-65534 .&. 65535 = 65534
-65534 .&. 0 = 0
-65534 .&. 1 = 0
-65534 .&. 2 = 2
-65534 .&. 3 = 2
-
-65535 .&. 65533 = 65533
-65535 .&. 65534 = 65534
-65535 .&. 65535 = 65535
-65535 .&. 0 = 0
-65535 .&. 1 = 1
-65535 .&. 2 = 2
-65535 .&. 3 = 3
-
-0 .&. 65533 = 0
-0 .&. 65534 = 0
-0 .&. 65535 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 65533 = 1
-1 .&. 65534 = 0
-1 .&. 65535 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 65533 = 0
-2 .&. 65534 = 2
-2 .&. 65535 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 65533 = 1
-3 .&. 65534 = 2
-3 .&. 65535 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-65533 .|. 65533 = 65533
-65533 .|. 65534 = 65535
-65533 .|. 65535 = 65535
-65533 .|. 0 = 65533
-65533 .|. 1 = 65533
-65533 .|. 2 = 65535
-65533 .|. 3 = 65535
-
-65534 .|. 65533 = 65535
-65534 .|. 65534 = 65534
-65534 .|. 65535 = 65535
-65534 .|. 0 = 65534
-65534 .|. 1 = 65535
-65534 .|. 2 = 65534
-65534 .|. 3 = 65535
-
-65535 .|. 65533 = 65535
-65535 .|. 65534 = 65535
-65535 .|. 65535 = 65535
-65535 .|. 0 = 65535
-65535 .|. 1 = 65535
-65535 .|. 2 = 65535
-65535 .|. 3 = 65535
-
-0 .|. 65533 = 65533
-0 .|. 65534 = 65534
-0 .|. 65535 = 65535
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 65533 = 65533
-1 .|. 65534 = 65535
-1 .|. 65535 = 65535
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 65533 = 65535
-2 .|. 65534 = 65534
-2 .|. 65535 = 65535
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 65533 = 65535
-3 .|. 65534 = 65535
-3 .|. 65535 = 65535
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-65533 `xor` 65533 = 0
-65533 `xor` 65534 = 3
-65533 `xor` 65535 = 2
-65533 `xor` 0 = 65533
-65533 `xor` 1 = 65532
-65533 `xor` 2 = 65535
-65533 `xor` 3 = 65534
-
-65534 `xor` 65533 = 3
-65534 `xor` 65534 = 0
-65534 `xor` 65535 = 1
-65534 `xor` 0 = 65534
-65534 `xor` 1 = 65535
-65534 `xor` 2 = 65532
-65534 `xor` 3 = 65533
-
-65535 `xor` 65533 = 2
-65535 `xor` 65534 = 1
-65535 `xor` 65535 = 0
-65535 `xor` 0 = 65535
-65535 `xor` 1 = 65534
-65535 `xor` 2 = 65533
-65535 `xor` 3 = 65532
-
-0 `xor` 65533 = 65533
-0 `xor` 65534 = 65534
-0 `xor` 65535 = 65535
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 65533 = 65532
-1 `xor` 65534 = 65535
-1 `xor` 65535 = 65534
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 65533 = 65535
-2 `xor` 65534 = 65532
-2 `xor` 65535 = 65533
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 65533 = 65534
-3 `xor` 65534 = 65533
-3 `xor` 65535 = 65532
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 65533 = 2
-complement 65534 = 1
-complement 65535 = 0
-complement 0 = 65535
-complement 1 = 65534
-complement 2 = 65533
-complement 3 = 65532
-#
-65533 `shiftL` 0 = 65533
-65533 `shiftL` 1 = 65530
-65533 `shiftL` 2 = 65524
-65533 `shiftL` 3 = 65512
-65533 `shiftL` 32 = 0
-65533 `shiftL` 64 = 0
-
-65534 `shiftL` 0 = 65534
-65534 `shiftL` 1 = 65532
-65534 `shiftL` 2 = 65528
-65534 `shiftL` 3 = 65520
-65534 `shiftL` 32 = 0
-65534 `shiftL` 64 = 0
-
-65535 `shiftL` 0 = 65535
-65535 `shiftL` 1 = 65534
-65535 `shiftL` 2 = 65532
-65535 `shiftL` 3 = 65528
-65535 `shiftL` 32 = 0
-65535 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
-65533 `shiftR` 0 = 65533
-65533 `shiftR` 1 = 32766
-65533 `shiftR` 2 = 16383
-65533 `shiftR` 3 = 8191
-65533 `shiftR` 32 = 0
-65533 `shiftR` 64 = 0
-
-65534 `shiftR` 0 = 65534
-65534 `shiftR` 1 = 32767
-65534 `shiftR` 2 = 16383
-65534 `shiftR` 3 = 8191
-65534 `shiftR` 32 = 0
-65534 `shiftR` 64 = 0
-
-65535 `shiftR` 0 = 65535
-65535 `shiftR` 1 = 32767
-65535 `shiftR` 2 = 16383
-65535 `shiftR` 3 = 8191
-65535 `shiftR` 32 = 0
-65535 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-65533 `rotate` -3 = 49151
-65533 `rotate` -2 = 32767
-65533 `rotate` -1 = 65534
-65533 `rotate` 0 = 65533
-65533 `rotate` 1 = 65531
-65533 `rotate` 2 = 65527
-65533 `rotate` 3 = 65519
-65533 `rotate` -64 = 65533
-65533 `rotate` -32 = 65533
-65533 `rotate` 32 = 65533
-65533 `rotate` 64 = 65533
-
-65534 `rotate` -3 = 57343
-65534 `rotate` -2 = 49151
-65534 `rotate` -1 = 32767
-65534 `rotate` 0 = 65534
-65534 `rotate` 1 = 65533
-65534 `rotate` 2 = 65531
-65534 `rotate` 3 = 65527
-65534 `rotate` -64 = 65534
-65534 `rotate` -32 = 65534
-65534 `rotate` 32 = 65534
-65534 `rotate` 64 = 65534
-
-65535 `rotate` -3 = 65535
-65535 `rotate` -2 = 65535
-65535 `rotate` -1 = 65535
-65535 `rotate` 0 = 65535
-65535 `rotate` 1 = 65535
-65535 `rotate` 2 = 65535
-65535 `rotate` 3 = 65535
-65535 `rotate` -64 = 65535
-65535 `rotate` -32 = 65535
-65535 `rotate` 32 = 65535
-65535 `rotate` 64 = 65535
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 8192
-1 `rotate` -2 = 16384
-1 `rotate` -1 = 32768
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 1
-1 `rotate` 32 = 1
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 16384
-2 `rotate` -2 = 32768
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 2
-2 `rotate` 32 = 2
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 24576
-3 `rotate` -2 = 49152
-3 `rotate` -1 = 32769
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 3
-3 `rotate` 32 = 3
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-65533 `setBit` 0 = 65533
-65533 `setBit` 1 = 65535
-65533 `setBit` 2 = 65533
-65533 `setBit` 3 = 65533
-65533 `setBit` 32 = 65533
-65533 `setBit` 64 = 65533
-
-65534 `setBit` 0 = 65535
-65534 `setBit` 1 = 65534
-65534 `setBit` 2 = 65534
-65534 `setBit` 3 = 65534
-65534 `setBit` 32 = 65534
-65534 `setBit` 64 = 65534
-
-65535 `setBit` 0 = 65535
-65535 `setBit` 1 = 65535
-65535 `setBit` 2 = 65535
-65535 `setBit` 3 = 65535
-65535 `setBit` 32 = 65535
-65535 `setBit` 64 = 65535
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
-65533 `clearBit` 0 = 65532
-65533 `clearBit` 1 = 65533
-65533 `clearBit` 2 = 65529
-65533 `clearBit` 3 = 65525
-65533 `clearBit` 32 = 65533
-65533 `clearBit` 64 = 65533
-
-65534 `clearBit` 0 = 65534
-65534 `clearBit` 1 = 65532
-65534 `clearBit` 2 = 65530
-65534 `clearBit` 3 = 65526
-65534 `clearBit` 32 = 65534
-65534 `clearBit` 64 = 65534
-
-65535 `clearBit` 0 = 65534
-65535 `clearBit` 1 = 65533
-65535 `clearBit` 2 = 65531
-65535 `clearBit` 3 = 65527
-65535 `clearBit` 32 = 65535
-65535 `clearBit` 64 = 65535
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-65533 `complementBit` 0 = 65532
-65533 `complementBit` 1 = 65535
-65533 `complementBit` 2 = 65529
-65533 `complementBit` 3 = 65525
-65533 `complementBit` 32 = 65533
-65533 `complementBit` 64 = 65533
-
-65534 `complementBit` 0 = 65535
-65534 `complementBit` 1 = 65532
-65534 `complementBit` 2 = 65530
-65534 `complementBit` 3 = 65526
-65534 `complementBit` 32 = 65534
-65534 `complementBit` 64 = 65534
-
-65535 `complementBit` 0 = 65534
-65535 `complementBit` 1 = 65533
-65535 `complementBit` 2 = 65531
-65535 `complementBit` 3 = 65527
-65535 `complementBit` 32 = 65535
-65535 `complementBit` 64 = 65535
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
-65533 `testBit` 0 = True
-65533 `testBit` 1 = False
-65533 `testBit` 2 = True
-65533 `testBit` 3 = True
-65533 `testBit` 32 = False
-65533 `testBit` 64 = False
-
-65534 `testBit` 0 = False
-65534 `testBit` 1 = True
-65534 `testBit` 2 = True
-65534 `testBit` 3 = True
-65534 `testBit` 32 = False
-65534 `testBit` 64 = False
-
-65535 `testBit` 0 = True
-65535 `testBit` 1 = True
-65535 `testBit` 2 = True
-65535 `testBit` 3 = True
-65535 `testBit` 32 = False
-65535 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 65533 = 16
-bitSize 65534 = 16
-bitSize 65535 = 16
-bitSize 0 = 16
-bitSize 1 = 16
-bitSize 2 = 16
-bitSize 3 = 16
-#
-isSigned 65533 = False
-isSigned 65534 = False
-isSigned 65535 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Word32
---------------------------------
-testBounded
-(4294967295,0,1)
-(4294967294,4294967295,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[4294967293,4294967294,4294967295,0,1,2,3]
-[4294967293,4294967294,4294967295,0,1,2,3]
-testEq
-4294967293 == 4294967293 = True
-4294967293 == 4294967294 = False
-4294967293 == 4294967295 = False
-4294967293 == 0 = False
-4294967293 == 1 = False
-4294967293 == 2 = False
-4294967293 == 3 = False
-
-4294967294 == 4294967293 = False
-4294967294 == 4294967294 = True
-4294967294 == 4294967295 = False
-4294967294 == 0 = False
-4294967294 == 1 = False
-4294967294 == 2 = False
-4294967294 == 3 = False
-
-4294967295 == 4294967293 = False
-4294967295 == 4294967294 = False
-4294967295 == 4294967295 = True
-4294967295 == 0 = False
-4294967295 == 1 = False
-4294967295 == 2 = False
-4294967295 == 3 = False
-
-0 == 4294967293 = False
-0 == 4294967294 = False
-0 == 4294967295 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 4294967293 = False
-1 == 4294967294 = False
-1 == 4294967295 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 4294967293 = False
-2 == 4294967294 = False
-2 == 4294967295 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 4294967293 = False
-3 == 4294967294 = False
-3 == 4294967295 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-4294967293 /= 4294967293 = False
-4294967293 /= 4294967294 = True
-4294967293 /= 4294967295 = True
-4294967293 /= 0 = True
-4294967293 /= 1 = True
-4294967293 /= 2 = True
-4294967293 /= 3 = True
-
-4294967294 /= 4294967293 = True
-4294967294 /= 4294967294 = False
-4294967294 /= 4294967295 = True
-4294967294 /= 0 = True
-4294967294 /= 1 = True
-4294967294 /= 2 = True
-4294967294 /= 3 = True
-
-4294967295 /= 4294967293 = True
-4294967295 /= 4294967294 = True
-4294967295 /= 4294967295 = False
-4294967295 /= 0 = True
-4294967295 /= 1 = True
-4294967295 /= 2 = True
-4294967295 /= 3 = True
-
-0 /= 4294967293 = True
-0 /= 4294967294 = True
-0 /= 4294967295 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 4294967293 = True
-1 /= 4294967294 = True
-1 /= 4294967295 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 4294967293 = True
-2 /= 4294967294 = True
-2 /= 4294967295 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 4294967293 = True
-3 /= 4294967294 = True
-3 /= 4294967295 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-4294967293 <= 4294967293 = True
-4294967293 <= 4294967294 = True
-4294967293 <= 4294967295 = True
-4294967293 <= 0 = False
-4294967293 <= 1 = False
-4294967293 <= 2 = False
-4294967293 <= 3 = False
-
-4294967294 <= 4294967293 = False
-4294967294 <= 4294967294 = True
-4294967294 <= 4294967295 = True
-4294967294 <= 0 = False
-4294967294 <= 1 = False
-4294967294 <= 2 = False
-4294967294 <= 3 = False
-
-4294967295 <= 4294967293 = False
-4294967295 <= 4294967294 = False
-4294967295 <= 4294967295 = True
-4294967295 <= 0 = False
-4294967295 <= 1 = False
-4294967295 <= 2 = False
-4294967295 <= 3 = False
-
-0 <= 4294967293 = True
-0 <= 4294967294 = True
-0 <= 4294967295 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 4294967293 = True
-1 <= 4294967294 = True
-1 <= 4294967295 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 4294967293 = True
-2 <= 4294967294 = True
-2 <= 4294967295 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 4294967293 = True
-3 <= 4294967294 = True
-3 <= 4294967295 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-4294967293 < 4294967293 = False
-4294967293 < 4294967294 = True
-4294967293 < 4294967295 = True
-4294967293 < 0 = False
-4294967293 < 1 = False
-4294967293 < 2 = False
-4294967293 < 3 = False
-
-4294967294 < 4294967293 = False
-4294967294 < 4294967294 = False
-4294967294 < 4294967295 = True
-4294967294 < 0 = False
-4294967294 < 1 = False
-4294967294 < 2 = False
-4294967294 < 3 = False
-
-4294967295 < 4294967293 = False
-4294967295 < 4294967294 = False
-4294967295 < 4294967295 = False
-4294967295 < 0 = False
-4294967295 < 1 = False
-4294967295 < 2 = False
-4294967295 < 3 = False
-
-0 < 4294967293 = True
-0 < 4294967294 = True
-0 < 4294967295 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 4294967293 = True
-1 < 4294967294 = True
-1 < 4294967295 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 4294967293 = True
-2 < 4294967294 = True
-2 < 4294967295 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 4294967293 = True
-3 < 4294967294 = True
-3 < 4294967295 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-4294967293 > 4294967293 = False
-4294967293 > 4294967294 = False
-4294967293 > 4294967295 = False
-4294967293 > 0 = True
-4294967293 > 1 = True
-4294967293 > 2 = True
-4294967293 > 3 = True
-
-4294967294 > 4294967293 = True
-4294967294 > 4294967294 = False
-4294967294 > 4294967295 = False
-4294967294 > 0 = True
-4294967294 > 1 = True
-4294967294 > 2 = True
-4294967294 > 3 = True
-
-4294967295 > 4294967293 = True
-4294967295 > 4294967294 = True
-4294967295 > 4294967295 = False
-4294967295 > 0 = True
-4294967295 > 1 = True
-4294967295 > 2 = True
-4294967295 > 3 = True
-
-0 > 4294967293 = False
-0 > 4294967294 = False
-0 > 4294967295 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 4294967293 = False
-1 > 4294967294 = False
-1 > 4294967295 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 4294967293 = False
-2 > 4294967294 = False
-2 > 4294967295 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 4294967293 = False
-3 > 4294967294 = False
-3 > 4294967295 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-4294967293 >= 4294967293 = True
-4294967293 >= 4294967294 = False
-4294967293 >= 4294967295 = False
-4294967293 >= 0 = True
-4294967293 >= 1 = True
-4294967293 >= 2 = True
-4294967293 >= 3 = True
-
-4294967294 >= 4294967293 = True
-4294967294 >= 4294967294 = True
-4294967294 >= 4294967295 = False
-4294967294 >= 0 = True
-4294967294 >= 1 = True
-4294967294 >= 2 = True
-4294967294 >= 3 = True
-
-4294967295 >= 4294967293 = True
-4294967295 >= 4294967294 = True
-4294967295 >= 4294967295 = True
-4294967295 >= 0 = True
-4294967295 >= 1 = True
-4294967295 >= 2 = True
-4294967295 >= 3 = True
-
-0 >= 4294967293 = False
-0 >= 4294967294 = False
-0 >= 4294967295 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 4294967293 = False
-1 >= 4294967294 = False
-1 >= 4294967295 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 4294967293 = False
-2 >= 4294967294 = False
-2 >= 4294967295 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 4294967293 = False
-3 >= 4294967294 = False
-3 >= 4294967295 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-4294967293 `compare` 4294967293 = EQ
-4294967293 `compare` 4294967294 = LT
-4294967293 `compare` 4294967295 = LT
-4294967293 `compare` 0 = GT
-4294967293 `compare` 1 = GT
-4294967293 `compare` 2 = GT
-4294967293 `compare` 3 = GT
-
-4294967294 `compare` 4294967293 = GT
-4294967294 `compare` 4294967294 = EQ
-4294967294 `compare` 4294967295 = LT
-4294967294 `compare` 0 = GT
-4294967294 `compare` 1 = GT
-4294967294 `compare` 2 = GT
-4294967294 `compare` 3 = GT
-
-4294967295 `compare` 4294967293 = GT
-4294967295 `compare` 4294967294 = GT
-4294967295 `compare` 4294967295 = EQ
-4294967295 `compare` 0 = GT
-4294967295 `compare` 1 = GT
-4294967295 `compare` 2 = GT
-4294967295 `compare` 3 = GT
-
-0 `compare` 4294967293 = LT
-0 `compare` 4294967294 = LT
-0 `compare` 4294967295 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 4294967293 = LT
-1 `compare` 4294967294 = LT
-1 `compare` 4294967295 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 4294967293 = LT
-2 `compare` 4294967294 = LT
-2 `compare` 4294967295 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 4294967293 = LT
-3 `compare` 4294967294 = LT
-3 `compare` 4294967295 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-4294967293 + 4294967293 = 4294967290
-4294967293 + 4294967294 = 4294967291
-4294967293 + 4294967295 = 4294967292
-4294967293 + 0 = 4294967293
-4294967293 + 1 = 4294967294
-4294967293 + 2 = 4294967295
-4294967293 + 3 = 0
-
-4294967294 + 4294967293 = 4294967291
-4294967294 + 4294967294 = 4294967292
-4294967294 + 4294967295 = 4294967293
-4294967294 + 0 = 4294967294
-4294967294 + 1 = 4294967295
-4294967294 + 2 = 0
-4294967294 + 3 = 1
-
-4294967295 + 4294967293 = 4294967292
-4294967295 + 4294967294 = 4294967293
-4294967295 + 4294967295 = 4294967294
-4294967295 + 0 = 4294967295
-4294967295 + 1 = 0
-4294967295 + 2 = 1
-4294967295 + 3 = 2
-
-0 + 4294967293 = 4294967293
-0 + 4294967294 = 4294967294
-0 + 4294967295 = 4294967295
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 4294967293 = 4294967294
-1 + 4294967294 = 4294967295
-1 + 4294967295 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 4294967293 = 4294967295
-2 + 4294967294 = 0
-2 + 4294967295 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 4294967293 = 0
-3 + 4294967294 = 1
-3 + 4294967295 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-4294967293 - 4294967293 = 0
-4294967293 - 4294967294 = 4294967295
-4294967293 - 4294967295 = 4294967294
-4294967293 - 0 = 4294967293
-4294967293 - 1 = 4294967292
-4294967293 - 2 = 4294967291
-4294967293 - 3 = 4294967290
-
-4294967294 - 4294967293 = 1
-4294967294 - 4294967294 = 0
-4294967294 - 4294967295 = 4294967295
-4294967294 - 0 = 4294967294
-4294967294 - 1 = 4294967293
-4294967294 - 2 = 4294967292
-4294967294 - 3 = 4294967291
-
-4294967295 - 4294967293 = 2
-4294967295 - 4294967294 = 1
-4294967295 - 4294967295 = 0
-4294967295 - 0 = 4294967295
-4294967295 - 1 = 4294967294
-4294967295 - 2 = 4294967293
-4294967295 - 3 = 4294967292
-
-0 - 4294967293 = 3
-0 - 4294967294 = 2
-0 - 4294967295 = 1
-0 - 0 = 0
-0 - 1 = 4294967295
-0 - 2 = 4294967294
-0 - 3 = 4294967293
-
-1 - 4294967293 = 4
-1 - 4294967294 = 3
-1 - 4294967295 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 4294967295
-1 - 3 = 4294967294
-
-2 - 4294967293 = 5
-2 - 4294967294 = 4
-2 - 4294967295 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 4294967295
-
-3 - 4294967293 = 6
-3 - 4294967294 = 5
-3 - 4294967295 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-4294967293 * 4294967293 = 9
-4294967293 * 4294967294 = 6
-4294967293 * 4294967295 = 3
-4294967293 * 0 = 0
-4294967293 * 1 = 4294967293
-4294967293 * 2 = 4294967290
-4294967293 * 3 = 4294967287
-
-4294967294 * 4294967293 = 6
-4294967294 * 4294967294 = 4
-4294967294 * 4294967295 = 2
-4294967294 * 0 = 0
-4294967294 * 1 = 4294967294
-4294967294 * 2 = 4294967292
-4294967294 * 3 = 4294967290
-
-4294967295 * 4294967293 = 3
-4294967295 * 4294967294 = 2
-4294967295 * 4294967295 = 1
-4294967295 * 0 = 0
-4294967295 * 1 = 4294967295
-4294967295 * 2 = 4294967294
-4294967295 * 3 = 4294967293
-
-0 * 4294967293 = 0
-0 * 4294967294 = 0
-0 * 4294967295 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 4294967293 = 4294967293
-1 * 4294967294 = 4294967294
-1 * 4294967295 = 4294967295
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 4294967293 = 4294967290
-2 * 4294967294 = 4294967292
-2 * 4294967295 = 4294967294
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 4294967293 = 4294967287
-3 * 4294967294 = 4294967290
-3 * 4294967295 = 4294967293
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 4294967293 = 3
-negate 4294967294 = 2
-negate 4294967295 = 1
-negate 0 = 0
-negate 1 = 4294967295
-negate 2 = 4294967294
-negate 3 = 4294967293
-#
-testReal
-toRational 4294967293 = 4294967293 % 1
-toRational 4294967294 = 4294967294 % 1
-toRational 4294967295 = 4294967295 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-4294967293 `divMod` 4294967293 = (1,0)
-4294967293 `divMod` 4294967294 = (0,4294967293)
-4294967293 `divMod` 4294967295 = (0,4294967293)
-4294967293 `divMod` 0 = divide by zero
-4294967293 `divMod` 1 = (4294967293,0)
-4294967293 `divMod` 2 = (2147483646,1)
-4294967293 `divMod` 3 = (1431655764,1)
-
-4294967294 `divMod` 4294967293 = (1,1)
-4294967294 `divMod` 4294967294 = (1,0)
-4294967294 `divMod` 4294967295 = (0,4294967294)
-4294967294 `divMod` 0 = divide by zero
-4294967294 `divMod` 1 = (4294967294,0)
-4294967294 `divMod` 2 = (2147483647,0)
-4294967294 `divMod` 3 = (1431655764,2)
-
-4294967295 `divMod` 4294967293 = (1,2)
-4294967295 `divMod` 4294967294 = (1,1)
-4294967295 `divMod` 4294967295 = (1,0)
-4294967295 `divMod` 0 = divide by zero
-4294967295 `divMod` 1 = (4294967295,0)
-4294967295 `divMod` 2 = (2147483647,1)
-4294967295 `divMod` 3 = (1431655765,0)
-
-0 `divMod` 4294967293 = (0,0)
-0 `divMod` 4294967294 = (0,0)
-0 `divMod` 4294967295 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 4294967293 = (0,1)
-1 `divMod` 4294967294 = (0,1)
-1 `divMod` 4294967295 = (0,1)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 4294967293 = (0,2)
-2 `divMod` 4294967294 = (0,2)
-2 `divMod` 4294967295 = (0,2)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 4294967293 = (0,3)
-3 `divMod` 4294967294 = (0,3)
-3 `divMod` 4294967295 = (0,3)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-4294967293 `div` 4294967293 = 1
-4294967293 `div` 4294967294 = 0
-4294967293 `div` 4294967295 = 0
-4294967293 `div` 0 = divide by zero
-4294967293 `div` 1 = 4294967293
-4294967293 `div` 2 = 2147483646
-4294967293 `div` 3 = 1431655764
-
-4294967294 `div` 4294967293 = 1
-4294967294 `div` 4294967294 = 1
-4294967294 `div` 4294967295 = 0
-4294967294 `div` 0 = divide by zero
-4294967294 `div` 1 = 4294967294
-4294967294 `div` 2 = 2147483647
-4294967294 `div` 3 = 1431655764
-
-4294967295 `div` 4294967293 = 1
-4294967295 `div` 4294967294 = 1
-4294967295 `div` 4294967295 = 1
-4294967295 `div` 0 = divide by zero
-4294967295 `div` 1 = 4294967295
-4294967295 `div` 2 = 2147483647
-4294967295 `div` 3 = 1431655765
-
-0 `div` 4294967293 = 0
-0 `div` 4294967294 = 0
-0 `div` 4294967295 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 4294967293 = 0
-1 `div` 4294967294 = 0
-1 `div` 4294967295 = 0
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 4294967293 = 0
-2 `div` 4294967294 = 0
-2 `div` 4294967295 = 0
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 4294967293 = 0
-3 `div` 4294967294 = 0
-3 `div` 4294967295 = 0
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-4294967293 `mod` 4294967293 = 0
-4294967293 `mod` 4294967294 = 4294967293
-4294967293 `mod` 4294967295 = 4294967293
-4294967293 `mod` 0 = divide by zero
-4294967293 `mod` 1 = 0
-4294967293 `mod` 2 = 1
-4294967293 `mod` 3 = 1
-
-4294967294 `mod` 4294967293 = 1
-4294967294 `mod` 4294967294 = 0
-4294967294 `mod` 4294967295 = 4294967294
-4294967294 `mod` 0 = divide by zero
-4294967294 `mod` 1 = 0
-4294967294 `mod` 2 = 0
-4294967294 `mod` 3 = 2
-
-4294967295 `mod` 4294967293 = 2
-4294967295 `mod` 4294967294 = 1
-4294967295 `mod` 4294967295 = 0
-4294967295 `mod` 0 = divide by zero
-4294967295 `mod` 1 = 0
-4294967295 `mod` 2 = 1
-4294967295 `mod` 3 = 0
-
-0 `mod` 4294967293 = 0
-0 `mod` 4294967294 = 0
-0 `mod` 4294967295 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 4294967293 = 1
-1 `mod` 4294967294 = 1
-1 `mod` 4294967295 = 1
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 4294967293 = 2
-2 `mod` 4294967294 = 2
-2 `mod` 4294967295 = 2
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 4294967293 = 3
-3 `mod` 4294967294 = 3
-3 `mod` 4294967295 = 3
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-4294967293 `quotRem` 4294967293 = (1,0)
-4294967293 `quotRem` 4294967294 = (0,4294967293)
-4294967293 `quotRem` 4294967295 = (0,4294967293)
-4294967293 `quotRem` 0 = divide by zero
-4294967293 `quotRem` 1 = (4294967293,0)
-4294967293 `quotRem` 2 = (2147483646,1)
-4294967293 `quotRem` 3 = (1431655764,1)
-
-4294967294 `quotRem` 4294967293 = (1,1)
-4294967294 `quotRem` 4294967294 = (1,0)
-4294967294 `quotRem` 4294967295 = (0,4294967294)
-4294967294 `quotRem` 0 = divide by zero
-4294967294 `quotRem` 1 = (4294967294,0)
-4294967294 `quotRem` 2 = (2147483647,0)
-4294967294 `quotRem` 3 = (1431655764,2)
-
-4294967295 `quotRem` 4294967293 = (1,2)
-4294967295 `quotRem` 4294967294 = (1,1)
-4294967295 `quotRem` 4294967295 = (1,0)
-4294967295 `quotRem` 0 = divide by zero
-4294967295 `quotRem` 1 = (4294967295,0)
-4294967295 `quotRem` 2 = (2147483647,1)
-4294967295 `quotRem` 3 = (1431655765,0)
-
-0 `quotRem` 4294967293 = (0,0)
-0 `quotRem` 4294967294 = (0,0)
-0 `quotRem` 4294967295 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 4294967293 = (0,1)
-1 `quotRem` 4294967294 = (0,1)
-1 `quotRem` 4294967295 = (0,1)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 4294967293 = (0,2)
-2 `quotRem` 4294967294 = (0,2)
-2 `quotRem` 4294967295 = (0,2)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 4294967293 = (0,3)
-3 `quotRem` 4294967294 = (0,3)
-3 `quotRem` 4294967295 = (0,3)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-4294967293 `quot` 4294967293 = 1
-4294967293 `quot` 4294967294 = 0
-4294967293 `quot` 4294967295 = 0
-4294967293 `quot` 0 = divide by zero
-4294967293 `quot` 1 = 4294967293
-4294967293 `quot` 2 = 2147483646
-4294967293 `quot` 3 = 1431655764
-
-4294967294 `quot` 4294967293 = 1
-4294967294 `quot` 4294967294 = 1
-4294967294 `quot` 4294967295 = 0
-4294967294 `quot` 0 = divide by zero
-4294967294 `quot` 1 = 4294967294
-4294967294 `quot` 2 = 2147483647
-4294967294 `quot` 3 = 1431655764
-
-4294967295 `quot` 4294967293 = 1
-4294967295 `quot` 4294967294 = 1
-4294967295 `quot` 4294967295 = 1
-4294967295 `quot` 0 = divide by zero
-4294967295 `quot` 1 = 4294967295
-4294967295 `quot` 2 = 2147483647
-4294967295 `quot` 3 = 1431655765
-
-0 `quot` 4294967293 = 0
-0 `quot` 4294967294 = 0
-0 `quot` 4294967295 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 4294967293 = 0
-1 `quot` 4294967294 = 0
-1 `quot` 4294967295 = 0
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 4294967293 = 0
-2 `quot` 4294967294 = 0
-2 `quot` 4294967295 = 0
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 4294967293 = 0
-3 `quot` 4294967294 = 0
-3 `quot` 4294967295 = 0
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-4294967293 `rem` 4294967293 = 0
-4294967293 `rem` 4294967294 = 4294967293
-4294967293 `rem` 4294967295 = 4294967293
-4294967293 `rem` 0 = divide by zero
-4294967293 `rem` 1 = 0
-4294967293 `rem` 2 = 1
-4294967293 `rem` 3 = 1
-
-4294967294 `rem` 4294967293 = 1
-4294967294 `rem` 4294967294 = 0
-4294967294 `rem` 4294967295 = 4294967294
-4294967294 `rem` 0 = divide by zero
-4294967294 `rem` 1 = 0
-4294967294 `rem` 2 = 0
-4294967294 `rem` 3 = 2
-
-4294967295 `rem` 4294967293 = 2
-4294967295 `rem` 4294967294 = 1
-4294967295 `rem` 4294967295 = 0
-4294967295 `rem` 0 = divide by zero
-4294967295 `rem` 1 = 0
-4294967295 `rem` 2 = 1
-4294967295 `rem` 3 = 0
-
-0 `rem` 4294967293 = 0
-0 `rem` 4294967294 = 0
-0 `rem` 4294967295 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 4294967293 = 1
-1 `rem` 4294967294 = 1
-1 `rem` 4294967295 = 1
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 4294967293 = 2
-2 `rem` 4294967294 = 2
-2 `rem` 4294967295 = 2
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 4294967293 = 3
-3 `rem` 4294967294 = 3
-3 `rem` 4294967295 = 3
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,4294967295]
-Int : [0,0,-1]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [0,0,4294967295]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [0,0,4294967295]
-testBits
-4294967293 .&. 4294967293 = 4294967293
-4294967293 .&. 4294967294 = 4294967292
-4294967293 .&. 4294967295 = 4294967293
-4294967293 .&. 0 = 0
-4294967293 .&. 1 = 1
-4294967293 .&. 2 = 0
-4294967293 .&. 3 = 1
-
-4294967294 .&. 4294967293 = 4294967292
-4294967294 .&. 4294967294 = 4294967294
-4294967294 .&. 4294967295 = 4294967294
-4294967294 .&. 0 = 0
-4294967294 .&. 1 = 0
-4294967294 .&. 2 = 2
-4294967294 .&. 3 = 2
-
-4294967295 .&. 4294967293 = 4294967293
-4294967295 .&. 4294967294 = 4294967294
-4294967295 .&. 4294967295 = 4294967295
-4294967295 .&. 0 = 0
-4294967295 .&. 1 = 1
-4294967295 .&. 2 = 2
-4294967295 .&. 3 = 3
-
-0 .&. 4294967293 = 0
-0 .&. 4294967294 = 0
-0 .&. 4294967295 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 4294967293 = 1
-1 .&. 4294967294 = 0
-1 .&. 4294967295 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 4294967293 = 0
-2 .&. 4294967294 = 2
-2 .&. 4294967295 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 4294967293 = 1
-3 .&. 4294967294 = 2
-3 .&. 4294967295 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-4294967293 .|. 4294967293 = 4294967293
-4294967293 .|. 4294967294 = 4294967295
-4294967293 .|. 4294967295 = 4294967295
-4294967293 .|. 0 = 4294967293
-4294967293 .|. 1 = 4294967293
-4294967293 .|. 2 = 4294967295
-4294967293 .|. 3 = 4294967295
-
-4294967294 .|. 4294967293 = 4294967295
-4294967294 .|. 4294967294 = 4294967294
-4294967294 .|. 4294967295 = 4294967295
-4294967294 .|. 0 = 4294967294
-4294967294 .|. 1 = 4294967295
-4294967294 .|. 2 = 4294967294
-4294967294 .|. 3 = 4294967295
-
-4294967295 .|. 4294967293 = 4294967295
-4294967295 .|. 4294967294 = 4294967295
-4294967295 .|. 4294967295 = 4294967295
-4294967295 .|. 0 = 4294967295
-4294967295 .|. 1 = 4294967295
-4294967295 .|. 2 = 4294967295
-4294967295 .|. 3 = 4294967295
-
-0 .|. 4294967293 = 4294967293
-0 .|. 4294967294 = 4294967294
-0 .|. 4294967295 = 4294967295
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 4294967293 = 4294967293
-1 .|. 4294967294 = 4294967295
-1 .|. 4294967295 = 4294967295
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 4294967293 = 4294967295
-2 .|. 4294967294 = 4294967294
-2 .|. 4294967295 = 4294967295
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 4294967293 = 4294967295
-3 .|. 4294967294 = 4294967295
-3 .|. 4294967295 = 4294967295
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-4294967293 `xor` 4294967293 = 0
-4294967293 `xor` 4294967294 = 3
-4294967293 `xor` 4294967295 = 2
-4294967293 `xor` 0 = 4294967293
-4294967293 `xor` 1 = 4294967292
-4294967293 `xor` 2 = 4294967295
-4294967293 `xor` 3 = 4294967294
-
-4294967294 `xor` 4294967293 = 3
-4294967294 `xor` 4294967294 = 0
-4294967294 `xor` 4294967295 = 1
-4294967294 `xor` 0 = 4294967294
-4294967294 `xor` 1 = 4294967295
-4294967294 `xor` 2 = 4294967292
-4294967294 `xor` 3 = 4294967293
-
-4294967295 `xor` 4294967293 = 2
-4294967295 `xor` 4294967294 = 1
-4294967295 `xor` 4294967295 = 0
-4294967295 `xor` 0 = 4294967295
-4294967295 `xor` 1 = 4294967294
-4294967295 `xor` 2 = 4294967293
-4294967295 `xor` 3 = 4294967292
-
-0 `xor` 4294967293 = 4294967293
-0 `xor` 4294967294 = 4294967294
-0 `xor` 4294967295 = 4294967295
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 4294967293 = 4294967292
-1 `xor` 4294967294 = 4294967295
-1 `xor` 4294967295 = 4294967294
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 4294967293 = 4294967295
-2 `xor` 4294967294 = 4294967292
-2 `xor` 4294967295 = 4294967293
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 4294967293 = 4294967294
-3 `xor` 4294967294 = 4294967293
-3 `xor` 4294967295 = 4294967292
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 4294967293 = 2
-complement 4294967294 = 1
-complement 4294967295 = 0
-complement 0 = 4294967295
-complement 1 = 4294967294
-complement 2 = 4294967293
-complement 3 = 4294967292
-#
-4294967293 `shiftL` 0 = 4294967293
-4294967293 `shiftL` 1 = 4294967290
-4294967293 `shiftL` 2 = 4294967284
-4294967293 `shiftL` 3 = 4294967272
-4294967293 `shiftL` 32 = 0
-4294967293 `shiftL` 64 = 0
-
-4294967294 `shiftL` 0 = 4294967294
-4294967294 `shiftL` 1 = 4294967292
-4294967294 `shiftL` 2 = 4294967288
-4294967294 `shiftL` 3 = 4294967280
-4294967294 `shiftL` 32 = 0
-4294967294 `shiftL` 64 = 0
-
-4294967295 `shiftL` 0 = 4294967295
-4294967295 `shiftL` 1 = 4294967294
-4294967295 `shiftL` 2 = 4294967292
-4294967295 `shiftL` 3 = 4294967288
-4294967295 `shiftL` 32 = 0
-4294967295 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
-4294967293 `shiftR` 0 = 4294967293
-4294967293 `shiftR` 1 = 2147483646
-4294967293 `shiftR` 2 = 1073741823
-4294967293 `shiftR` 3 = 536870911
-4294967293 `shiftR` 32 = 0
-4294967293 `shiftR` 64 = 0
-
-4294967294 `shiftR` 0 = 4294967294
-4294967294 `shiftR` 1 = 2147483647
-4294967294 `shiftR` 2 = 1073741823
-4294967294 `shiftR` 3 = 536870911
-4294967294 `shiftR` 32 = 0
-4294967294 `shiftR` 64 = 0
-
-4294967295 `shiftR` 0 = 4294967295
-4294967295 `shiftR` 1 = 2147483647
-4294967295 `shiftR` 2 = 1073741823
-4294967295 `shiftR` 3 = 536870911
-4294967295 `shiftR` 32 = 0
-4294967295 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-4294967293 `rotate` -3 = 3221225471
-4294967293 `rotate` -2 = 2147483647
-4294967293 `rotate` -1 = 4294967294
-4294967293 `rotate` 0 = 4294967293
-4294967293 `rotate` 1 = 4294967291
-4294967293 `rotate` 2 = 4294967287
-4294967293 `rotate` 3 = 4294967279
-4294967293 `rotate` -64 = 4294967293
-4294967293 `rotate` -32 = 4294967293
-4294967293 `rotate` 32 = 4294967293
-4294967293 `rotate` 64 = 4294967293
-
-4294967294 `rotate` -3 = 3758096383
-4294967294 `rotate` -2 = 3221225471
-4294967294 `rotate` -1 = 2147483647
-4294967294 `rotate` 0 = 4294967294
-4294967294 `rotate` 1 = 4294967293
-4294967294 `rotate` 2 = 4294967291
-4294967294 `rotate` 3 = 4294967287
-4294967294 `rotate` -64 = 4294967294
-4294967294 `rotate` -32 = 4294967294
-4294967294 `rotate` 32 = 4294967294
-4294967294 `rotate` 64 = 4294967294
-
-4294967295 `rotate` -3 = 4294967295
-4294967295 `rotate` -2 = 4294967295
-4294967295 `rotate` -1 = 4294967295
-4294967295 `rotate` 0 = 4294967295
-4294967295 `rotate` 1 = 4294967295
-4294967295 `rotate` 2 = 4294967295
-4294967295 `rotate` 3 = 4294967295
-4294967295 `rotate` -64 = 4294967295
-4294967295 `rotate` -32 = 4294967295
-4294967295 `rotate` 32 = 4294967295
-4294967295 `rotate` 64 = 4294967295
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 536870912
-1 `rotate` -2 = 1073741824
-1 `rotate` -1 = 2147483648
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 1
-1 `rotate` 32 = 1
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 1073741824
-2 `rotate` -2 = 2147483648
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 2
-2 `rotate` 32 = 2
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 1610612736
-3 `rotate` -2 = 3221225472
-3 `rotate` -1 = 2147483649
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 3
-3 `rotate` 32 = 3
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-4294967293 `setBit` 0 = 4294967293
-4294967293 `setBit` 1 = 4294967295
-4294967293 `setBit` 2 = 4294967293
-4294967293 `setBit` 3 = 4294967293
-4294967293 `setBit` 32 = 4294967293
-4294967293 `setBit` 64 = 4294967293
-
-4294967294 `setBit` 0 = 4294967295
-4294967294 `setBit` 1 = 4294967294
-4294967294 `setBit` 2 = 4294967294
-4294967294 `setBit` 3 = 4294967294
-4294967294 `setBit` 32 = 4294967294
-4294967294 `setBit` 64 = 4294967294
-
-4294967295 `setBit` 0 = 4294967295
-4294967295 `setBit` 1 = 4294967295
-4294967295 `setBit` 2 = 4294967295
-4294967295 `setBit` 3 = 4294967295
-4294967295 `setBit` 32 = 4294967295
-4294967295 `setBit` 64 = 4294967295
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
-4294967293 `clearBit` 0 = 4294967292
-4294967293 `clearBit` 1 = 4294967293
-4294967293 `clearBit` 2 = 4294967289
-4294967293 `clearBit` 3 = 4294967285
-4294967293 `clearBit` 32 = 4294967293
-4294967293 `clearBit` 64 = 4294967293
-
-4294967294 `clearBit` 0 = 4294967294
-4294967294 `clearBit` 1 = 4294967292
-4294967294 `clearBit` 2 = 4294967290
-4294967294 `clearBit` 3 = 4294967286
-4294967294 `clearBit` 32 = 4294967294
-4294967294 `clearBit` 64 = 4294967294
-
-4294967295 `clearBit` 0 = 4294967294
-4294967295 `clearBit` 1 = 4294967293
-4294967295 `clearBit` 2 = 4294967291
-4294967295 `clearBit` 3 = 4294967287
-4294967295 `clearBit` 32 = 4294967295
-4294967295 `clearBit` 64 = 4294967295
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-4294967293 `complementBit` 0 = 4294967292
-4294967293 `complementBit` 1 = 4294967295
-4294967293 `complementBit` 2 = 4294967289
-4294967293 `complementBit` 3 = 4294967285
-4294967293 `complementBit` 32 = 4294967293
-4294967293 `complementBit` 64 = 4294967293
-
-4294967294 `complementBit` 0 = 4294967295
-4294967294 `complementBit` 1 = 4294967292
-4294967294 `complementBit` 2 = 4294967290
-4294967294 `complementBit` 3 = 4294967286
-4294967294 `complementBit` 32 = 4294967294
-4294967294 `complementBit` 64 = 4294967294
-
-4294967295 `complementBit` 0 = 4294967294
-4294967295 `complementBit` 1 = 4294967293
-4294967295 `complementBit` 2 = 4294967291
-4294967295 `complementBit` 3 = 4294967287
-4294967295 `complementBit` 32 = 4294967295
-4294967295 `complementBit` 64 = 4294967295
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
-4294967293 `testBit` 0 = True
-4294967293 `testBit` 1 = False
-4294967293 `testBit` 2 = True
-4294967293 `testBit` 3 = True
-4294967293 `testBit` 32 = False
-4294967293 `testBit` 64 = False
-
-4294967294 `testBit` 0 = False
-4294967294 `testBit` 1 = True
-4294967294 `testBit` 2 = True
-4294967294 `testBit` 3 = True
-4294967294 `testBit` 32 = False
-4294967294 `testBit` 64 = False
-
-4294967295 `testBit` 0 = True
-4294967295 `testBit` 1 = True
-4294967295 `testBit` 2 = True
-4294967295 `testBit` 3 = True
-4294967295 `testBit` 32 = False
-4294967295 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 4294967293 = 32
-bitSize 4294967294 = 32
-bitSize 4294967295 = 32
-bitSize 0 = 32
-bitSize 1 = 32
-bitSize 2 = 32
-bitSize 3 = 32
-#
-isSigned 4294967293 = False
-isSigned 4294967294 = False
-isSigned 4294967295 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Word64
---------------------------------
-testBounded
-(18446744073709551615,0,1)
-(18446744073709551614,18446744073709551615,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[18446744073709551613,18446744073709551614,18446744073709551615,0,1,2,3]
-[18446744073709551613,18446744073709551614,18446744073709551615,0,1,2,3]
-testEq
-18446744073709551613 == 18446744073709551613 = True
-18446744073709551613 == 18446744073709551614 = False
-18446744073709551613 == 18446744073709551615 = False
-18446744073709551613 == 0 = False
-18446744073709551613 == 1 = False
-18446744073709551613 == 2 = False
-18446744073709551613 == 3 = False
-
-18446744073709551614 == 18446744073709551613 = False
-18446744073709551614 == 18446744073709551614 = True
-18446744073709551614 == 18446744073709551615 = False
-18446744073709551614 == 0 = False
-18446744073709551614 == 1 = False
-18446744073709551614 == 2 = False
-18446744073709551614 == 3 = False
-
-18446744073709551615 == 18446744073709551613 = False
-18446744073709551615 == 18446744073709551614 = False
-18446744073709551615 == 18446744073709551615 = True
-18446744073709551615 == 0 = False
-18446744073709551615 == 1 = False
-18446744073709551615 == 2 = False
-18446744073709551615 == 3 = False
-
-0 == 18446744073709551613 = False
-0 == 18446744073709551614 = False
-0 == 18446744073709551615 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 18446744073709551613 = False
-1 == 18446744073709551614 = False
-1 == 18446744073709551615 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 18446744073709551613 = False
-2 == 18446744073709551614 = False
-2 == 18446744073709551615 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 18446744073709551613 = False
-3 == 18446744073709551614 = False
-3 == 18446744073709551615 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-18446744073709551613 /= 18446744073709551613 = False
-18446744073709551613 /= 18446744073709551614 = True
-18446744073709551613 /= 18446744073709551615 = True
-18446744073709551613 /= 0 = True
-18446744073709551613 /= 1 = True
-18446744073709551613 /= 2 = True
-18446744073709551613 /= 3 = True
-
-18446744073709551614 /= 18446744073709551613 = True
-18446744073709551614 /= 18446744073709551614 = False
-18446744073709551614 /= 18446744073709551615 = True
-18446744073709551614 /= 0 = True
-18446744073709551614 /= 1 = True
-18446744073709551614 /= 2 = True
-18446744073709551614 /= 3 = True
-
-18446744073709551615 /= 18446744073709551613 = True
-18446744073709551615 /= 18446744073709551614 = True
-18446744073709551615 /= 18446744073709551615 = False
-18446744073709551615 /= 0 = True
-18446744073709551615 /= 1 = True
-18446744073709551615 /= 2 = True
-18446744073709551615 /= 3 = True
-
-0 /= 18446744073709551613 = True
-0 /= 18446744073709551614 = True
-0 /= 18446744073709551615 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 18446744073709551613 = True
-1 /= 18446744073709551614 = True
-1 /= 18446744073709551615 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 18446744073709551613 = True
-2 /= 18446744073709551614 = True
-2 /= 18446744073709551615 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 18446744073709551613 = True
-3 /= 18446744073709551614 = True
-3 /= 18446744073709551615 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-18446744073709551613 <= 18446744073709551613 = True
-18446744073709551613 <= 18446744073709551614 = True
-18446744073709551613 <= 18446744073709551615 = True
-18446744073709551613 <= 0 = False
-18446744073709551613 <= 1 = False
-18446744073709551613 <= 2 = False
-18446744073709551613 <= 3 = False
-
-18446744073709551614 <= 18446744073709551613 = False
-18446744073709551614 <= 18446744073709551614 = True
-18446744073709551614 <= 18446744073709551615 = True
-18446744073709551614 <= 0 = False
-18446744073709551614 <= 1 = False
-18446744073709551614 <= 2 = False
-18446744073709551614 <= 3 = False
-
-18446744073709551615 <= 18446744073709551613 = False
-18446744073709551615 <= 18446744073709551614 = False
-18446744073709551615 <= 18446744073709551615 = True
-18446744073709551615 <= 0 = False
-18446744073709551615 <= 1 = False
-18446744073709551615 <= 2 = False
-18446744073709551615 <= 3 = False
-
-0 <= 18446744073709551613 = True
-0 <= 18446744073709551614 = True
-0 <= 18446744073709551615 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 18446744073709551613 = True
-1 <= 18446744073709551614 = True
-1 <= 18446744073709551615 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 18446744073709551613 = True
-2 <= 18446744073709551614 = True
-2 <= 18446744073709551615 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 18446744073709551613 = True
-3 <= 18446744073709551614 = True
-3 <= 18446744073709551615 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-18446744073709551613 < 18446744073709551613 = False
-18446744073709551613 < 18446744073709551614 = True
-18446744073709551613 < 18446744073709551615 = True
-18446744073709551613 < 0 = False
-18446744073709551613 < 1 = False
-18446744073709551613 < 2 = False
-18446744073709551613 < 3 = False
-
-18446744073709551614 < 18446744073709551613 = False
-18446744073709551614 < 18446744073709551614 = False
-18446744073709551614 < 18446744073709551615 = True
-18446744073709551614 < 0 = False
-18446744073709551614 < 1 = False
-18446744073709551614 < 2 = False
-18446744073709551614 < 3 = False
-
-18446744073709551615 < 18446744073709551613 = False
-18446744073709551615 < 18446744073709551614 = False
-18446744073709551615 < 18446744073709551615 = False
-18446744073709551615 < 0 = False
-18446744073709551615 < 1 = False
-18446744073709551615 < 2 = False
-18446744073709551615 < 3 = False
-
-0 < 18446744073709551613 = True
-0 < 18446744073709551614 = True
-0 < 18446744073709551615 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 18446744073709551613 = True
-1 < 18446744073709551614 = True
-1 < 18446744073709551615 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 18446744073709551613 = True
-2 < 18446744073709551614 = True
-2 < 18446744073709551615 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 18446744073709551613 = True
-3 < 18446744073709551614 = True
-3 < 18446744073709551615 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-18446744073709551613 > 18446744073709551613 = False
-18446744073709551613 > 18446744073709551614 = False
-18446744073709551613 > 18446744073709551615 = False
-18446744073709551613 > 0 = True
-18446744073709551613 > 1 = True
-18446744073709551613 > 2 = True
-18446744073709551613 > 3 = True
-
-18446744073709551614 > 18446744073709551613 = True
-18446744073709551614 > 18446744073709551614 = False
-18446744073709551614 > 18446744073709551615 = False
-18446744073709551614 > 0 = True
-18446744073709551614 > 1 = True
-18446744073709551614 > 2 = True
-18446744073709551614 > 3 = True
-
-18446744073709551615 > 18446744073709551613 = True
-18446744073709551615 > 18446744073709551614 = True
-18446744073709551615 > 18446744073709551615 = False
-18446744073709551615 > 0 = True
-18446744073709551615 > 1 = True
-18446744073709551615 > 2 = True
-18446744073709551615 > 3 = True
-
-0 > 18446744073709551613 = False
-0 > 18446744073709551614 = False
-0 > 18446744073709551615 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 18446744073709551613 = False
-1 > 18446744073709551614 = False
-1 > 18446744073709551615 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 18446744073709551613 = False
-2 > 18446744073709551614 = False
-2 > 18446744073709551615 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 18446744073709551613 = False
-3 > 18446744073709551614 = False
-3 > 18446744073709551615 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-18446744073709551613 >= 18446744073709551613 = True
-18446744073709551613 >= 18446744073709551614 = False
-18446744073709551613 >= 18446744073709551615 = False
-18446744073709551613 >= 0 = True
-18446744073709551613 >= 1 = True
-18446744073709551613 >= 2 = True
-18446744073709551613 >= 3 = True
-
-18446744073709551614 >= 18446744073709551613 = True
-18446744073709551614 >= 18446744073709551614 = True
-18446744073709551614 >= 18446744073709551615 = False
-18446744073709551614 >= 0 = True
-18446744073709551614 >= 1 = True
-18446744073709551614 >= 2 = True
-18446744073709551614 >= 3 = True
-
-18446744073709551615 >= 18446744073709551613 = True
-18446744073709551615 >= 18446744073709551614 = True
-18446744073709551615 >= 18446744073709551615 = True
-18446744073709551615 >= 0 = True
-18446744073709551615 >= 1 = True
-18446744073709551615 >= 2 = True
-18446744073709551615 >= 3 = True
-
-0 >= 18446744073709551613 = False
-0 >= 18446744073709551614 = False
-0 >= 18446744073709551615 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 18446744073709551613 = False
-1 >= 18446744073709551614 = False
-1 >= 18446744073709551615 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 18446744073709551613 = False
-2 >= 18446744073709551614 = False
-2 >= 18446744073709551615 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 18446744073709551613 = False
-3 >= 18446744073709551614 = False
-3 >= 18446744073709551615 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-18446744073709551613 `compare` 18446744073709551613 = EQ
-18446744073709551613 `compare` 18446744073709551614 = LT
-18446744073709551613 `compare` 18446744073709551615 = LT
-18446744073709551613 `compare` 0 = GT
-18446744073709551613 `compare` 1 = GT
-18446744073709551613 `compare` 2 = GT
-18446744073709551613 `compare` 3 = GT
-
-18446744073709551614 `compare` 18446744073709551613 = GT
-18446744073709551614 `compare` 18446744073709551614 = EQ
-18446744073709551614 `compare` 18446744073709551615 = LT
-18446744073709551614 `compare` 0 = GT
-18446744073709551614 `compare` 1 = GT
-18446744073709551614 `compare` 2 = GT
-18446744073709551614 `compare` 3 = GT
-
-18446744073709551615 `compare` 18446744073709551613 = GT
-18446744073709551615 `compare` 18446744073709551614 = GT
-18446744073709551615 `compare` 18446744073709551615 = EQ
-18446744073709551615 `compare` 0 = GT
-18446744073709551615 `compare` 1 = GT
-18446744073709551615 `compare` 2 = GT
-18446744073709551615 `compare` 3 = GT
-
-0 `compare` 18446744073709551613 = LT
-0 `compare` 18446744073709551614 = LT
-0 `compare` 18446744073709551615 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 18446744073709551613 = LT
-1 `compare` 18446744073709551614 = LT
-1 `compare` 18446744073709551615 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 18446744073709551613 = LT
-2 `compare` 18446744073709551614 = LT
-2 `compare` 18446744073709551615 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 18446744073709551613 = LT
-3 `compare` 18446744073709551614 = LT
-3 `compare` 18446744073709551615 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-18446744073709551613 + 18446744073709551613 = 18446744073709551610
-18446744073709551613 + 18446744073709551614 = 18446744073709551611
-18446744073709551613 + 18446744073709551615 = 18446744073709551612
-18446744073709551613 + 0 = 18446744073709551613
-18446744073709551613 + 1 = 18446744073709551614
-18446744073709551613 + 2 = 18446744073709551615
-18446744073709551613 + 3 = 0
-
-18446744073709551614 + 18446744073709551613 = 18446744073709551611
-18446744073709551614 + 18446744073709551614 = 18446744073709551612
-18446744073709551614 + 18446744073709551615 = 18446744073709551613
-18446744073709551614 + 0 = 18446744073709551614
-18446744073709551614 + 1 = 18446744073709551615
-18446744073709551614 + 2 = 0
-18446744073709551614 + 3 = 1
-
-18446744073709551615 + 18446744073709551613 = 18446744073709551612
-18446744073709551615 + 18446744073709551614 = 18446744073709551613
-18446744073709551615 + 18446744073709551615 = 18446744073709551614
-18446744073709551615 + 0 = 18446744073709551615
-18446744073709551615 + 1 = 0
-18446744073709551615 + 2 = 1
-18446744073709551615 + 3 = 2
-
-0 + 18446744073709551613 = 18446744073709551613
-0 + 18446744073709551614 = 18446744073709551614
-0 + 18446744073709551615 = 18446744073709551615
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 18446744073709551613 = 18446744073709551614
-1 + 18446744073709551614 = 18446744073709551615
-1 + 18446744073709551615 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 18446744073709551613 = 18446744073709551615
-2 + 18446744073709551614 = 0
-2 + 18446744073709551615 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 18446744073709551613 = 0
-3 + 18446744073709551614 = 1
-3 + 18446744073709551615 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-18446744073709551613 - 18446744073709551613 = 0
-18446744073709551613 - 18446744073709551614 = 18446744073709551615
-18446744073709551613 - 18446744073709551615 = 18446744073709551614
-18446744073709551613 - 0 = 18446744073709551613
-18446744073709551613 - 1 = 18446744073709551612
-18446744073709551613 - 2 = 18446744073709551611
-18446744073709551613 - 3 = 18446744073709551610
-
-18446744073709551614 - 18446744073709551613 = 1
-18446744073709551614 - 18446744073709551614 = 0
-18446744073709551614 - 18446744073709551615 = 18446744073709551615
-18446744073709551614 - 0 = 18446744073709551614
-18446744073709551614 - 1 = 18446744073709551613
-18446744073709551614 - 2 = 18446744073709551612
-18446744073709551614 - 3 = 18446744073709551611
-
-18446744073709551615 - 18446744073709551613 = 2
-18446744073709551615 - 18446744073709551614 = 1
-18446744073709551615 - 18446744073709551615 = 0
-18446744073709551615 - 0 = 18446744073709551615
-18446744073709551615 - 1 = 18446744073709551614
-18446744073709551615 - 2 = 18446744073709551613
-18446744073709551615 - 3 = 18446744073709551612
-
-0 - 18446744073709551613 = 3
-0 - 18446744073709551614 = 2
-0 - 18446744073709551615 = 1
-0 - 0 = 0
-0 - 1 = 18446744073709551615
-0 - 2 = 18446744073709551614
-0 - 3 = 18446744073709551613
-
-1 - 18446744073709551613 = 4
-1 - 18446744073709551614 = 3
-1 - 18446744073709551615 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 18446744073709551615
-1 - 3 = 18446744073709551614
-
-2 - 18446744073709551613 = 5
-2 - 18446744073709551614 = 4
-2 - 18446744073709551615 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 18446744073709551615
-
-3 - 18446744073709551613 = 6
-3 - 18446744073709551614 = 5
-3 - 18446744073709551615 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-18446744073709551613 * 18446744073709551613 = 9
-18446744073709551613 * 18446744073709551614 = 6
-18446744073709551613 * 18446744073709551615 = 3
-18446744073709551613 * 0 = 0
-18446744073709551613 * 1 = 18446744073709551613
-18446744073709551613 * 2 = 18446744073709551610
-18446744073709551613 * 3 = 18446744073709551607
-
-18446744073709551614 * 18446744073709551613 = 6
-18446744073709551614 * 18446744073709551614 = 4
-18446744073709551614 * 18446744073709551615 = 2
-18446744073709551614 * 0 = 0
-18446744073709551614 * 1 = 18446744073709551614
-18446744073709551614 * 2 = 18446744073709551612
-18446744073709551614 * 3 = 18446744073709551610
-
-18446744073709551615 * 18446744073709551613 = 3
-18446744073709551615 * 18446744073709551614 = 2
-18446744073709551615 * 18446744073709551615 = 1
-18446744073709551615 * 0 = 0
-18446744073709551615 * 1 = 18446744073709551615
-18446744073709551615 * 2 = 18446744073709551614
-18446744073709551615 * 3 = 18446744073709551613
-
-0 * 18446744073709551613 = 0
-0 * 18446744073709551614 = 0
-0 * 18446744073709551615 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 18446744073709551613 = 18446744073709551613
-1 * 18446744073709551614 = 18446744073709551614
-1 * 18446744073709551615 = 18446744073709551615
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 18446744073709551613 = 18446744073709551610
-2 * 18446744073709551614 = 18446744073709551612
-2 * 18446744073709551615 = 18446744073709551614
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 18446744073709551613 = 18446744073709551607
-3 * 18446744073709551614 = 18446744073709551610
-3 * 18446744073709551615 = 18446744073709551613
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 18446744073709551613 = 3
-negate 18446744073709551614 = 2
-negate 18446744073709551615 = 1
-negate 0 = 0
-negate 1 = 18446744073709551615
-negate 2 = 18446744073709551614
-negate 3 = 18446744073709551613
-#
-testReal
-toRational 18446744073709551613 = 18446744073709551613 % 1
-toRational 18446744073709551614 = 18446744073709551614 % 1
-toRational 18446744073709551615 = 18446744073709551615 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-18446744073709551613 `divMod` 18446744073709551613 = (1,0)
-18446744073709551613 `divMod` 18446744073709551614 = (0,18446744073709551613)
-18446744073709551613 `divMod` 18446744073709551615 = (0,18446744073709551613)
-18446744073709551613 `divMod` 0 = divide by zero
-18446744073709551613 `divMod` 1 = (18446744073709551613,0)
-18446744073709551613 `divMod` 2 = (9223372036854775806,1)
-18446744073709551613 `divMod` 3 = (6148914691236517204,1)
-
-18446744073709551614 `divMod` 18446744073709551613 = (1,1)
-18446744073709551614 `divMod` 18446744073709551614 = (1,0)
-18446744073709551614 `divMod` 18446744073709551615 = (0,18446744073709551614)
-18446744073709551614 `divMod` 0 = divide by zero
-18446744073709551614 `divMod` 1 = (18446744073709551614,0)
-18446744073709551614 `divMod` 2 = (9223372036854775807,0)
-18446744073709551614 `divMod` 3 = (6148914691236517204,2)
-
-18446744073709551615 `divMod` 18446744073709551613 = (1,2)
-18446744073709551615 `divMod` 18446744073709551614 = (1,1)
-18446744073709551615 `divMod` 18446744073709551615 = (1,0)
-18446744073709551615 `divMod` 0 = divide by zero
-18446744073709551615 `divMod` 1 = (18446744073709551615,0)
-18446744073709551615 `divMod` 2 = (9223372036854775807,1)
-18446744073709551615 `divMod` 3 = (6148914691236517205,0)
-
-0 `divMod` 18446744073709551613 = (0,0)
-0 `divMod` 18446744073709551614 = (0,0)
-0 `divMod` 18446744073709551615 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 18446744073709551613 = (0,1)
-1 `divMod` 18446744073709551614 = (0,1)
-1 `divMod` 18446744073709551615 = (0,1)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 18446744073709551613 = (0,2)
-2 `divMod` 18446744073709551614 = (0,2)
-2 `divMod` 18446744073709551615 = (0,2)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 18446744073709551613 = (0,3)
-3 `divMod` 18446744073709551614 = (0,3)
-3 `divMod` 18446744073709551615 = (0,3)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-18446744073709551613 `div` 18446744073709551613 = 1
-18446744073709551613 `div` 18446744073709551614 = 0
-18446744073709551613 `div` 18446744073709551615 = 0
-18446744073709551613 `div` 0 = divide by zero
-18446744073709551613 `div` 1 = 18446744073709551613
-18446744073709551613 `div` 2 = 9223372036854775806
-18446744073709551613 `div` 3 = 6148914691236517204
-
-18446744073709551614 `div` 18446744073709551613 = 1
-18446744073709551614 `div` 18446744073709551614 = 1
-18446744073709551614 `div` 18446744073709551615 = 0
-18446744073709551614 `div` 0 = divide by zero
-18446744073709551614 `div` 1 = 18446744073709551614
-18446744073709551614 `div` 2 = 9223372036854775807
-18446744073709551614 `div` 3 = 6148914691236517204
-
-18446744073709551615 `div` 18446744073709551613 = 1
-18446744073709551615 `div` 18446744073709551614 = 1
-18446744073709551615 `div` 18446744073709551615 = 1
-18446744073709551615 `div` 0 = divide by zero
-18446744073709551615 `div` 1 = 18446744073709551615
-18446744073709551615 `div` 2 = 9223372036854775807
-18446744073709551615 `div` 3 = 6148914691236517205
-
-0 `div` 18446744073709551613 = 0
-0 `div` 18446744073709551614 = 0
-0 `div` 18446744073709551615 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 18446744073709551613 = 0
-1 `div` 18446744073709551614 = 0
-1 `div` 18446744073709551615 = 0
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 18446744073709551613 = 0
-2 `div` 18446744073709551614 = 0
-2 `div` 18446744073709551615 = 0
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 18446744073709551613 = 0
-3 `div` 18446744073709551614 = 0
-3 `div` 18446744073709551615 = 0
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-18446744073709551613 `mod` 18446744073709551613 = 0
-18446744073709551613 `mod` 18446744073709551614 = 18446744073709551613
-18446744073709551613 `mod` 18446744073709551615 = 18446744073709551613
-18446744073709551613 `mod` 0 = divide by zero
-18446744073709551613 `mod` 1 = 0
-18446744073709551613 `mod` 2 = 1
-18446744073709551613 `mod` 3 = 1
-
-18446744073709551614 `mod` 18446744073709551613 = 1
-18446744073709551614 `mod` 18446744073709551614 = 0
-18446744073709551614 `mod` 18446744073709551615 = 18446744073709551614
-18446744073709551614 `mod` 0 = divide by zero
-18446744073709551614 `mod` 1 = 0
-18446744073709551614 `mod` 2 = 0
-18446744073709551614 `mod` 3 = 2
-
-18446744073709551615 `mod` 18446744073709551613 = 2
-18446744073709551615 `mod` 18446744073709551614 = 1
-18446744073709551615 `mod` 18446744073709551615 = 0
-18446744073709551615 `mod` 0 = divide by zero
-18446744073709551615 `mod` 1 = 0
-18446744073709551615 `mod` 2 = 1
-18446744073709551615 `mod` 3 = 0
-
-0 `mod` 18446744073709551613 = 0
-0 `mod` 18446744073709551614 = 0
-0 `mod` 18446744073709551615 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 18446744073709551613 = 1
-1 `mod` 18446744073709551614 = 1
-1 `mod` 18446744073709551615 = 1
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 18446744073709551613 = 2
-2 `mod` 18446744073709551614 = 2
-2 `mod` 18446744073709551615 = 2
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 18446744073709551613 = 3
-3 `mod` 18446744073709551614 = 3
-3 `mod` 18446744073709551615 = 3
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-18446744073709551613 `quotRem` 18446744073709551613 = (1,0)
-18446744073709551613 `quotRem` 18446744073709551614 = (0,18446744073709551613)
-18446744073709551613 `quotRem` 18446744073709551615 = (0,18446744073709551613)
-18446744073709551613 `quotRem` 0 = divide by zero
-18446744073709551613 `quotRem` 1 = (18446744073709551613,0)
-18446744073709551613 `quotRem` 2 = (9223372036854775806,1)
-18446744073709551613 `quotRem` 3 = (6148914691236517204,1)
-
-18446744073709551614 `quotRem` 18446744073709551613 = (1,1)
-18446744073709551614 `quotRem` 18446744073709551614 = (1,0)
-18446744073709551614 `quotRem` 18446744073709551615 = (0,18446744073709551614)
-18446744073709551614 `quotRem` 0 = divide by zero
-18446744073709551614 `quotRem` 1 = (18446744073709551614,0)
-18446744073709551614 `quotRem` 2 = (9223372036854775807,0)
-18446744073709551614 `quotRem` 3 = (6148914691236517204,2)
-
-18446744073709551615 `quotRem` 18446744073709551613 = (1,2)
-18446744073709551615 `quotRem` 18446744073709551614 = (1,1)
-18446744073709551615 `quotRem` 18446744073709551615 = (1,0)
-18446744073709551615 `quotRem` 0 = divide by zero
-18446744073709551615 `quotRem` 1 = (18446744073709551615,0)
-18446744073709551615 `quotRem` 2 = (9223372036854775807,1)
-18446744073709551615 `quotRem` 3 = (6148914691236517205,0)
-
-0 `quotRem` 18446744073709551613 = (0,0)
-0 `quotRem` 18446744073709551614 = (0,0)
-0 `quotRem` 18446744073709551615 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 18446744073709551613 = (0,1)
-1 `quotRem` 18446744073709551614 = (0,1)
-1 `quotRem` 18446744073709551615 = (0,1)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 18446744073709551613 = (0,2)
-2 `quotRem` 18446744073709551614 = (0,2)
-2 `quotRem` 18446744073709551615 = (0,2)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 18446744073709551613 = (0,3)
-3 `quotRem` 18446744073709551614 = (0,3)
-3 `quotRem` 18446744073709551615 = (0,3)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-18446744073709551613 `quot` 18446744073709551613 = 1
-18446744073709551613 `quot` 18446744073709551614 = 0
-18446744073709551613 `quot` 18446744073709551615 = 0
-18446744073709551613 `quot` 0 = divide by zero
-18446744073709551613 `quot` 1 = 18446744073709551613
-18446744073709551613 `quot` 2 = 9223372036854775806
-18446744073709551613 `quot` 3 = 6148914691236517204
-
-18446744073709551614 `quot` 18446744073709551613 = 1
-18446744073709551614 `quot` 18446744073709551614 = 1
-18446744073709551614 `quot` 18446744073709551615 = 0
-18446744073709551614 `quot` 0 = divide by zero
-18446744073709551614 `quot` 1 = 18446744073709551614
-18446744073709551614 `quot` 2 = 9223372036854775807
-18446744073709551614 `quot` 3 = 6148914691236517204
-
-18446744073709551615 `quot` 18446744073709551613 = 1
-18446744073709551615 `quot` 18446744073709551614 = 1
-18446744073709551615 `quot` 18446744073709551615 = 1
-18446744073709551615 `quot` 0 = divide by zero
-18446744073709551615 `quot` 1 = 18446744073709551615
-18446744073709551615 `quot` 2 = 9223372036854775807
-18446744073709551615 `quot` 3 = 6148914691236517205
-
-0 `quot` 18446744073709551613 = 0
-0 `quot` 18446744073709551614 = 0
-0 `quot` 18446744073709551615 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 18446744073709551613 = 0
-1 `quot` 18446744073709551614 = 0
-1 `quot` 18446744073709551615 = 0
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 18446744073709551613 = 0
-2 `quot` 18446744073709551614 = 0
-2 `quot` 18446744073709551615 = 0
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 18446744073709551613 = 0
-3 `quot` 18446744073709551614 = 0
-3 `quot` 18446744073709551615 = 0
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-18446744073709551613 `rem` 18446744073709551613 = 0
-18446744073709551613 `rem` 18446744073709551614 = 18446744073709551613
-18446744073709551613 `rem` 18446744073709551615 = 18446744073709551613
-18446744073709551613 `rem` 0 = divide by zero
-18446744073709551613 `rem` 1 = 0
-18446744073709551613 `rem` 2 = 1
-18446744073709551613 `rem` 3 = 1
-
-18446744073709551614 `rem` 18446744073709551613 = 1
-18446744073709551614 `rem` 18446744073709551614 = 0
-18446744073709551614 `rem` 18446744073709551615 = 18446744073709551614
-18446744073709551614 `rem` 0 = divide by zero
-18446744073709551614 `rem` 1 = 0
-18446744073709551614 `rem` 2 = 0
-18446744073709551614 `rem` 3 = 2
-
-18446744073709551615 `rem` 18446744073709551613 = 2
-18446744073709551615 `rem` 18446744073709551614 = 1
-18446744073709551615 `rem` 18446744073709551615 = 0
-18446744073709551615 `rem` 0 = divide by zero
-18446744073709551615 `rem` 1 = 0
-18446744073709551615 `rem` 2 = 1
-18446744073709551615 `rem` 3 = 0
-
-0 `rem` 18446744073709551613 = 0
-0 `rem` 18446744073709551614 = 0
-0 `rem` 18446744073709551615 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 18446744073709551613 = 1
-1 `rem` 18446744073709551614 = 1
-1 `rem` 18446744073709551615 = 1
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 18446744073709551613 = 2
-2 `rem` 18446744073709551614 = 2
-2 `rem` 18446744073709551615 = 2
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 18446744073709551613 = 3
-3 `rem` 18446744073709551614 = 3
-3 `rem` 18446744073709551615 = 3
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,18446744073709551615]
-Int : [0,0,-1]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [0,0,-1]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [0,0,18446744073709551615]
-testBits
-18446744073709551613 .&. 18446744073709551613 = 18446744073709551613
-18446744073709551613 .&. 18446744073709551614 = 18446744073709551612
-18446744073709551613 .&. 18446744073709551615 = 18446744073709551613
-18446744073709551613 .&. 0 = 0
-18446744073709551613 .&. 1 = 1
-18446744073709551613 .&. 2 = 0
-18446744073709551613 .&. 3 = 1
-
-18446744073709551614 .&. 18446744073709551613 = 18446744073709551612
-18446744073709551614 .&. 18446744073709551614 = 18446744073709551614
-18446744073709551614 .&. 18446744073709551615 = 18446744073709551614
-18446744073709551614 .&. 0 = 0
-18446744073709551614 .&. 1 = 0
-18446744073709551614 .&. 2 = 2
-18446744073709551614 .&. 3 = 2
-
-18446744073709551615 .&. 18446744073709551613 = 18446744073709551613
-18446744073709551615 .&. 18446744073709551614 = 18446744073709551614
-18446744073709551615 .&. 18446744073709551615 = 18446744073709551615
-18446744073709551615 .&. 0 = 0
-18446744073709551615 .&. 1 = 1
-18446744073709551615 .&. 2 = 2
-18446744073709551615 .&. 3 = 3
-
-0 .&. 18446744073709551613 = 0
-0 .&. 18446744073709551614 = 0
-0 .&. 18446744073709551615 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 18446744073709551613 = 1
-1 .&. 18446744073709551614 = 0
-1 .&. 18446744073709551615 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 18446744073709551613 = 0
-2 .&. 18446744073709551614 = 2
-2 .&. 18446744073709551615 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 18446744073709551613 = 1
-3 .&. 18446744073709551614 = 2
-3 .&. 18446744073709551615 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-18446744073709551613 .|. 18446744073709551613 = 18446744073709551613
-18446744073709551613 .|. 18446744073709551614 = 18446744073709551615
-18446744073709551613 .|. 18446744073709551615 = 18446744073709551615
-18446744073709551613 .|. 0 = 18446744073709551613
-18446744073709551613 .|. 1 = 18446744073709551613
-18446744073709551613 .|. 2 = 18446744073709551615
-18446744073709551613 .|. 3 = 18446744073709551615
-
-18446744073709551614 .|. 18446744073709551613 = 18446744073709551615
-18446744073709551614 .|. 18446744073709551614 = 18446744073709551614
-18446744073709551614 .|. 18446744073709551615 = 18446744073709551615
-18446744073709551614 .|. 0 = 18446744073709551614
-18446744073709551614 .|. 1 = 18446744073709551615
-18446744073709551614 .|. 2 = 18446744073709551614
-18446744073709551614 .|. 3 = 18446744073709551615
-
-18446744073709551615 .|. 18446744073709551613 = 18446744073709551615
-18446744073709551615 .|. 18446744073709551614 = 18446744073709551615
-18446744073709551615 .|. 18446744073709551615 = 18446744073709551615
-18446744073709551615 .|. 0 = 18446744073709551615
-18446744073709551615 .|. 1 = 18446744073709551615
-18446744073709551615 .|. 2 = 18446744073709551615
-18446744073709551615 .|. 3 = 18446744073709551615
-
-0 .|. 18446744073709551613 = 18446744073709551613
-0 .|. 18446744073709551614 = 18446744073709551614
-0 .|. 18446744073709551615 = 18446744073709551615
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 18446744073709551613 = 18446744073709551613
-1 .|. 18446744073709551614 = 18446744073709551615
-1 .|. 18446744073709551615 = 18446744073709551615
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 18446744073709551613 = 18446744073709551615
-2 .|. 18446744073709551614 = 18446744073709551614
-2 .|. 18446744073709551615 = 18446744073709551615
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 18446744073709551613 = 18446744073709551615
-3 .|. 18446744073709551614 = 18446744073709551615
-3 .|. 18446744073709551615 = 18446744073709551615
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-18446744073709551613 `xor` 18446744073709551613 = 0
-18446744073709551613 `xor` 18446744073709551614 = 3
-18446744073709551613 `xor` 18446744073709551615 = 2
-18446744073709551613 `xor` 0 = 18446744073709551613
-18446744073709551613 `xor` 1 = 18446744073709551612
-18446744073709551613 `xor` 2 = 18446744073709551615
-18446744073709551613 `xor` 3 = 18446744073709551614
-
-18446744073709551614 `xor` 18446744073709551613 = 3
-18446744073709551614 `xor` 18446744073709551614 = 0
-18446744073709551614 `xor` 18446744073709551615 = 1
-18446744073709551614 `xor` 0 = 18446744073709551614
-18446744073709551614 `xor` 1 = 18446744073709551615
-18446744073709551614 `xor` 2 = 18446744073709551612
-18446744073709551614 `xor` 3 = 18446744073709551613
-
-18446744073709551615 `xor` 18446744073709551613 = 2
-18446744073709551615 `xor` 18446744073709551614 = 1
-18446744073709551615 `xor` 18446744073709551615 = 0
-18446744073709551615 `xor` 0 = 18446744073709551615
-18446744073709551615 `xor` 1 = 18446744073709551614
-18446744073709551615 `xor` 2 = 18446744073709551613
-18446744073709551615 `xor` 3 = 18446744073709551612
-
-0 `xor` 18446744073709551613 = 18446744073709551613
-0 `xor` 18446744073709551614 = 18446744073709551614
-0 `xor` 18446744073709551615 = 18446744073709551615
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 18446744073709551613 = 18446744073709551612
-1 `xor` 18446744073709551614 = 18446744073709551615
-1 `xor` 18446744073709551615 = 18446744073709551614
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 18446744073709551613 = 18446744073709551615
-2 `xor` 18446744073709551614 = 18446744073709551612
-2 `xor` 18446744073709551615 = 18446744073709551613
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 18446744073709551613 = 18446744073709551614
-3 `xor` 18446744073709551614 = 18446744073709551613
-3 `xor` 18446744073709551615 = 18446744073709551612
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 18446744073709551613 = 2
-complement 18446744073709551614 = 1
-complement 18446744073709551615 = 0
-complement 0 = 18446744073709551615
-complement 1 = 18446744073709551614
-complement 2 = 18446744073709551613
-complement 3 = 18446744073709551612
-#
-18446744073709551613 `shiftL` 0 = 18446744073709551613
-18446744073709551613 `shiftL` 1 = 18446744073709551610
-18446744073709551613 `shiftL` 2 = 18446744073709551604
-18446744073709551613 `shiftL` 3 = 18446744073709551592
-18446744073709551613 `shiftL` 32 = 18446744060824649728
-18446744073709551613 `shiftL` 64 = 0
-
-18446744073709551614 `shiftL` 0 = 18446744073709551614
-18446744073709551614 `shiftL` 1 = 18446744073709551612
-18446744073709551614 `shiftL` 2 = 18446744073709551608
-18446744073709551614 `shiftL` 3 = 18446744073709551600
-18446744073709551614 `shiftL` 32 = 18446744065119617024
-18446744073709551614 `shiftL` 64 = 0
-
-18446744073709551615 `shiftL` 0 = 18446744073709551615
-18446744073709551615 `shiftL` 1 = 18446744073709551614
-18446744073709551615 `shiftL` 2 = 18446744073709551612
-18446744073709551615 `shiftL` 3 = 18446744073709551608
-18446744073709551615 `shiftL` 32 = 18446744069414584320
-18446744073709551615 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 0
-
-#
-18446744073709551613 `shiftR` 0 = 18446744073709551613
-18446744073709551613 `shiftR` 1 = 9223372036854775806
-18446744073709551613 `shiftR` 2 = 4611686018427387903
-18446744073709551613 `shiftR` 3 = 2305843009213693951
-18446744073709551613 `shiftR` 32 = 4294967295
-18446744073709551613 `shiftR` 64 = 0
-
-18446744073709551614 `shiftR` 0 = 18446744073709551614
-18446744073709551614 `shiftR` 1 = 9223372036854775807
-18446744073709551614 `shiftR` 2 = 4611686018427387903
-18446744073709551614 `shiftR` 3 = 2305843009213693951
-18446744073709551614 `shiftR` 32 = 4294967295
-18446744073709551614 `shiftR` 64 = 0
-
-18446744073709551615 `shiftR` 0 = 18446744073709551615
-18446744073709551615 `shiftR` 1 = 9223372036854775807
-18446744073709551615 `shiftR` 2 = 4611686018427387903
-18446744073709551615 `shiftR` 3 = 2305843009213693951
-18446744073709551615 `shiftR` 32 = 4294967295
-18446744073709551615 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-18446744073709551613 `rotate` -3 = 13835058055282163711
-18446744073709551613 `rotate` -2 = 9223372036854775807
-18446744073709551613 `rotate` -1 = 18446744073709551614
-18446744073709551613 `rotate` 0 = 18446744073709551613
-18446744073709551613 `rotate` 1 = 18446744073709551611
-18446744073709551613 `rotate` 2 = 18446744073709551607
-18446744073709551613 `rotate` 3 = 18446744073709551599
-18446744073709551613 `rotate` -64 = 18446744073709551613
-18446744073709551613 `rotate` -32 = 18446744065119617023
-18446744073709551613 `rotate` 32 = 18446744065119617023
-18446744073709551613 `rotate` 64 = 18446744073709551613
-
-18446744073709551614 `rotate` -3 = 16140901064495857663
-18446744073709551614 `rotate` -2 = 13835058055282163711
-18446744073709551614 `rotate` -1 = 9223372036854775807
-18446744073709551614 `rotate` 0 = 18446744073709551614
-18446744073709551614 `rotate` 1 = 18446744073709551613
-18446744073709551614 `rotate` 2 = 18446744073709551611
-18446744073709551614 `rotate` 3 = 18446744073709551607
-18446744073709551614 `rotate` -64 = 18446744073709551614
-18446744073709551614 `rotate` -32 = 18446744069414584319
-18446744073709551614 `rotate` 32 = 18446744069414584319
-18446744073709551614 `rotate` 64 = 18446744073709551614
-
-18446744073709551615 `rotate` -3 = 18446744073709551615
-18446744073709551615 `rotate` -2 = 18446744073709551615
-18446744073709551615 `rotate` -1 = 18446744073709551615
-18446744073709551615 `rotate` 0 = 18446744073709551615
-18446744073709551615 `rotate` 1 = 18446744073709551615
-18446744073709551615 `rotate` 2 = 18446744073709551615
-18446744073709551615 `rotate` 3 = 18446744073709551615
-18446744073709551615 `rotate` -64 = 18446744073709551615
-18446744073709551615 `rotate` -32 = 18446744073709551615
-18446744073709551615 `rotate` 32 = 18446744073709551615
-18446744073709551615 `rotate` 64 = 18446744073709551615
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 2305843009213693952
-1 `rotate` -2 = 4611686018427387904
-1 `rotate` -1 = 9223372036854775808
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 4294967296
-1 `rotate` 32 = 4294967296
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 4611686018427387904
-2 `rotate` -2 = 9223372036854775808
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 8589934592
-2 `rotate` 32 = 8589934592
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 6917529027641081856
-3 `rotate` -2 = 13835058055282163712
-3 `rotate` -1 = 9223372036854775809
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 12884901888
-3 `rotate` 32 = 12884901888
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-18446744073709551613 `setBit` 0 = 18446744073709551613
-18446744073709551613 `setBit` 1 = 18446744073709551615
-18446744073709551613 `setBit` 2 = 18446744073709551613
-18446744073709551613 `setBit` 3 = 18446744073709551613
-18446744073709551613 `setBit` 32 = 18446744073709551613
-18446744073709551613 `setBit` 64 = 18446744073709551613
-
-18446744073709551614 `setBit` 0 = 18446744073709551615
-18446744073709551614 `setBit` 1 = 18446744073709551614
-18446744073709551614 `setBit` 2 = 18446744073709551614
-18446744073709551614 `setBit` 3 = 18446744073709551614
-18446744073709551614 `setBit` 32 = 18446744073709551614
-18446744073709551614 `setBit` 64 = 18446744073709551614
-
-18446744073709551615 `setBit` 0 = 18446744073709551615
-18446744073709551615 `setBit` 1 = 18446744073709551615
-18446744073709551615 `setBit` 2 = 18446744073709551615
-18446744073709551615 `setBit` 3 = 18446744073709551615
-18446744073709551615 `setBit` 32 = 18446744073709551615
-18446744073709551615 `setBit` 64 = 18446744073709551615
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 3
-
-#
-18446744073709551613 `clearBit` 0 = 18446744073709551612
-18446744073709551613 `clearBit` 1 = 18446744073709551613
-18446744073709551613 `clearBit` 2 = 18446744073709551609
-18446744073709551613 `clearBit` 3 = 18446744073709551605
-18446744073709551613 `clearBit` 32 = 18446744069414584317
-18446744073709551613 `clearBit` 64 = 18446744073709551613
-
-18446744073709551614 `clearBit` 0 = 18446744073709551614
-18446744073709551614 `clearBit` 1 = 18446744073709551612
-18446744073709551614 `clearBit` 2 = 18446744073709551610
-18446744073709551614 `clearBit` 3 = 18446744073709551606
-18446744073709551614 `clearBit` 32 = 18446744069414584318
-18446744073709551614 `clearBit` 64 = 18446744073709551614
-
-18446744073709551615 `clearBit` 0 = 18446744073709551614
-18446744073709551615 `clearBit` 1 = 18446744073709551613
-18446744073709551615 `clearBit` 2 = 18446744073709551611
-18446744073709551615 `clearBit` 3 = 18446744073709551607
-18446744073709551615 `clearBit` 32 = 18446744069414584319
-18446744073709551615 `clearBit` 64 = 18446744073709551615
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-18446744073709551613 `complementBit` 0 = 18446744073709551612
-18446744073709551613 `complementBit` 1 = 18446744073709551615
-18446744073709551613 `complementBit` 2 = 18446744073709551609
-18446744073709551613 `complementBit` 3 = 18446744073709551605
-18446744073709551613 `complementBit` 32 = 18446744069414584317
-18446744073709551613 `complementBit` 64 = 18446744073709551613
-
-18446744073709551614 `complementBit` 0 = 18446744073709551615
-18446744073709551614 `complementBit` 1 = 18446744073709551612
-18446744073709551614 `complementBit` 2 = 18446744073709551610
-18446744073709551614 `complementBit` 3 = 18446744073709551606
-18446744073709551614 `complementBit` 32 = 18446744069414584318
-18446744073709551614 `complementBit` 64 = 18446744073709551614
-
-18446744073709551615 `complementBit` 0 = 18446744073709551614
-18446744073709551615 `complementBit` 1 = 18446744073709551613
-18446744073709551615 `complementBit` 2 = 18446744073709551611
-18446744073709551615 `complementBit` 3 = 18446744073709551607
-18446744073709551615 `complementBit` 32 = 18446744069414584319
-18446744073709551615 `complementBit` 64 = 18446744073709551615
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 3
-
-#
-18446744073709551613 `testBit` 0 = True
-18446744073709551613 `testBit` 1 = False
-18446744073709551613 `testBit` 2 = True
-18446744073709551613 `testBit` 3 = True
-18446744073709551613 `testBit` 32 = True
-18446744073709551613 `testBit` 64 = False
-
-18446744073709551614 `testBit` 0 = False
-18446744073709551614 `testBit` 1 = True
-18446744073709551614 `testBit` 2 = True
-18446744073709551614 `testBit` 3 = True
-18446744073709551614 `testBit` 32 = True
-18446744073709551614 `testBit` 64 = False
-
-18446744073709551615 `testBit` 0 = True
-18446744073709551615 `testBit` 1 = True
-18446744073709551615 `testBit` 2 = True
-18446744073709551615 `testBit` 3 = True
-18446744073709551615 `testBit` 32 = True
-18446744073709551615 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 18446744073709551613 = 64
-bitSize 18446744073709551614 = 64
-bitSize 18446744073709551615 = 64
-bitSize 0 = 64
-bitSize 1 = 64
-bitSize 2 = 64
-bitSize 3 = 64
-#
-isSigned 18446744073709551613 = False
-isSigned 18446744073709551614 = False
-isSigned 18446744073709551615 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Integer
---------------------------------
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = -12884901888
--3 `shiftL` 64 = -55340232221128654848
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = -8589934592
--2 `shiftL` 64 = -36893488147419103232
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = -4294967296
--1 `shiftL` 64 = -18446744073709551616
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 18446744073709551616
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 36893488147419103232
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 55340232221128654848
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -1
--3 `rotate` -2 = -1
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -6
--3 `rotate` 2 = -12
--3 `rotate` 3 = -24
--3 `rotate` -64 = -1
--3 `rotate` -32 = -1
--3 `rotate` 32 = -12884901888
--3 `rotate` 64 = -55340232221128654848
-
--2 `rotate` -3 = -1
--2 `rotate` -2 = -1
--2 `rotate` -1 = -1
--2 `rotate` 0 = -2
--2 `rotate` 1 = -4
--2 `rotate` 2 = -8
--2 `rotate` 3 = -16
--2 `rotate` -64 = -1
--2 `rotate` -32 = -1
--2 `rotate` 32 = -8589934592
--2 `rotate` 64 = -36893488147419103232
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -2
--1 `rotate` 2 = -4
--1 `rotate` 3 = -8
--1 `rotate` -64 = -1
--1 `rotate` -32 = -1
--1 `rotate` 32 = -4294967296
--1 `rotate` 64 = -18446744073709551616
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 0
-1 `rotate` -2 = 0
-1 `rotate` -1 = 0
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 0
-1 `rotate` -32 = 0
-1 `rotate` 32 = 4294967296
-1 `rotate` 64 = 18446744073709551616
-
-2 `rotate` -3 = 0
-2 `rotate` -2 = 0
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 0
-2 `rotate` -32 = 0
-2 `rotate` 32 = 8589934592
-2 `rotate` 64 = 36893488147419103232
-
-3 `rotate` -3 = 0
-3 `rotate` -2 = 0
-3 `rotate` -1 = 1
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 0
-3 `rotate` -32 = 0
-3 `rotate` 32 = 12884901888
-3 `rotate` 64 = 55340232221128654848
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 18446744073709551616
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 18446744073709551617
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 18446744073709551618
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 18446744073709551619
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -4294967299
--3 `clearBit` 64 = -18446744073709551619
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -4294967298
--2 `clearBit` 64 = -18446744073709551618
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -4294967297
--1 `clearBit` 64 = -18446744073709551617
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -4294967299
--3 `complementBit` 64 = -18446744073709551619
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -4294967298
--2 `complementBit` 64 = -18446744073709551618
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -4294967297
--1 `complementBit` 64 = -18446744073709551617
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 18446744073709551616
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 18446744073709551617
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 18446744073709551618
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 18446744073709551619
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = True
--3 `testBit` 64 = True
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = True
--2 `testBit` 64 = True
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = True
--1 `testBit` 64 = True
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout-alpha-dec-osf3 b/testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout-alpha-dec-osf3
deleted file mode 100644
index c6c1fd04e4..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout-alpha-dec-osf3
+++ /dev/null
@@ -1,14508 +0,0 @@
---------------------------------
---Testing Int
---------------------------------
-testBounded
-(9223372036854775807,-9223372036854775808,-9223372036854775807)
-(9223372036854775806,9223372036854775807,-9223372036854775808)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-9223372036854775808,0,9223372036854775807]
-Int : [-9223372036854775808,0,9223372036854775807]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [-9223372036854775808,0,9223372036854775807]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [9223372036854775808,0,9223372036854775807]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = -12884901888
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = -8589934592
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = -4294967296
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -4611686018427387905
--3 `rotate` -2 = 9223372036854775807
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
-
--2 `rotate` -3 = -2305843009213693953
--2 `rotate` -2 = -4611686018427387905
--2 `rotate` -1 = 9223372036854775807
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 2305843009213693952
-1 `rotate` -2 = 4611686018427387904
-1 `rotate` -1 = -9223372036854775808
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 4611686018427387904
-2 `rotate` -2 = -9223372036854775808
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 6917529027641081856
-3 `rotate` -2 = -4611686018427387904
-3 `rotate` -1 = -9223372036854775807
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -4294967299
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -4294967298
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -4294967297
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -4294967299
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -4294967298
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -4294967297
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = True
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = True
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = True
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 64
-bitSize -2 = 64
-bitSize -1 = 64
-bitSize 0 = 64
-bitSize 1 = 64
-bitSize 2 = 64
-bitSize 3 = 64
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int8
---------------------------------
-testBounded
-(127,-128,-127)
-(126,127,-128)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-128,0,127]
-Int : [-128,0,127]
-Int8 : [-128,0,127]
-Int16 : [-128,0,127]
-Int32 : [-128,0,127]
-Int64 : [-128,0,127]
-Word8 : [128,0,127]
-Word16 : [65408,0,127]
-Word32 : [4294967168,0,127]
-Word64 : [18446744073709551488,0,127]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = 0
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = 0
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = 0
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -65
--3 `rotate` -2 = 127
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
-
--2 `rotate` -3 = -33
--2 `rotate` -2 = -65
--2 `rotate` -1 = 127
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 32
-1 `rotate` -2 = 64
-1 `rotate` -1 = -128
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 64
-2 `rotate` -2 = -128
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 96
-3 `rotate` -2 = -64
-3 `rotate` -1 = -127
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -3
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -2
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -1
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -3
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -2
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -1
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = False
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = False
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = False
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 8
-bitSize -2 = 8
-bitSize -1 = 8
-bitSize 0 = 8
-bitSize 1 = 8
-bitSize 2 = 8
-bitSize 3 = 8
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int16
---------------------------------
-testBounded
-(32767,-32768,-32767)
-(32766,32767,-32768)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-32768,0,32767]
-Int : [-32768,0,32767]
-Int8 : [0,0,-1]
-Int16 : [-32768,0,32767]
-Int32 : [-32768,0,32767]
-Int64 : [-32768,0,32767]
-Word8 : [0,0,255]
-Word16 : [32768,0,32767]
-Word32 : [4294934528,0,32767]
-Word64 : [18446744073709518848,0,32767]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = 0
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = 0
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = 0
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -16385
--3 `rotate` -2 = 32767
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
-
--2 `rotate` -3 = -8193
--2 `rotate` -2 = -16385
--2 `rotate` -1 = 32767
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 8192
-1 `rotate` -2 = 16384
-1 `rotate` -1 = -32768
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 16384
-2 `rotate` -2 = -32768
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 24576
-3 `rotate` -2 = -16384
-3 `rotate` -1 = -32767
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -3
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -2
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -1
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -3
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -2
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -1
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = False
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = False
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = False
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 16
-bitSize -2 = 16
-bitSize -1 = 16
-bitSize 0 = 16
-bitSize 1 = 16
-bitSize 2 = 16
-bitSize 3 = 16
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int32
---------------------------------
-testBounded
-(2147483647,-2147483648,-2147483647)
-(2147483646,2147483647,-2147483648)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-2147483648,0,2147483647]
-Int : [-2147483648,0,2147483647]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [-2147483648,0,2147483647]
-Int64 : [-2147483648,0,2147483647]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [2147483648,0,2147483647]
-Word64 : [18446744071562067968,0,2147483647]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = 0
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = 0
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = 0
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -1073741825
--3 `rotate` -2 = 2147483647
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
-
--2 `rotate` -3 = -536870913
--2 `rotate` -2 = -1073741825
--2 `rotate` -1 = 2147483647
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 536870912
-1 `rotate` -2 = 1073741824
-1 `rotate` -1 = -2147483648
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 1073741824
-2 `rotate` -2 = -2147483648
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 1610612736
-3 `rotate` -2 = -1073741824
-3 `rotate` -1 = -2147483647
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -3
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -2
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -1
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -3
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -2
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -1
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = False
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = False
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = False
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 32
-bitSize -2 = 32
-bitSize -1 = 32
-bitSize 0 = 32
-bitSize 1 = 32
-bitSize 2 = 32
-bitSize 3 = 32
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int64
---------------------------------
-testBounded
-(9223372036854775807,-9223372036854775808,-9223372036854775807)
-(9223372036854775806,9223372036854775807,-9223372036854775808)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-9223372036854775808,0,9223372036854775807]
-Int : [-9223372036854775808,0,9223372036854775807]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [-9223372036854775808,0,9223372036854775807]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [9223372036854775808,0,9223372036854775807]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = -12884901888
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = -8589934592
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = -4294967296
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -4611686018427387905
--3 `rotate` -2 = 9223372036854775807
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
-
--2 `rotate` -3 = -2305843009213693953
--2 `rotate` -2 = -4611686018427387905
--2 `rotate` -1 = 9223372036854775807
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 2305843009213693952
-1 `rotate` -2 = 4611686018427387904
-1 `rotate` -1 = -9223372036854775808
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 4611686018427387904
-2 `rotate` -2 = -9223372036854775808
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 6917529027641081856
-3 `rotate` -2 = -4611686018427387904
-3 `rotate` -1 = -9223372036854775807
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -4294967299
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -4294967298
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -4294967297
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -4294967299
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -4294967298
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -4294967297
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = True
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = True
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = True
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 64
-bitSize -2 = 64
-bitSize -1 = 64
-bitSize 0 = 64
-bitSize 1 = 64
-bitSize 2 = 64
-bitSize 3 = 64
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Word8
---------------------------------
-testBounded
-(255,0,1)
-(254,255,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[253,254,255,0,1,2,3]
-[253,254,255,0,1,2,3]
-testEq
-253 == 253 = True
-253 == 254 = False
-253 == 255 = False
-253 == 0 = False
-253 == 1 = False
-253 == 2 = False
-253 == 3 = False
-
-254 == 253 = False
-254 == 254 = True
-254 == 255 = False
-254 == 0 = False
-254 == 1 = False
-254 == 2 = False
-254 == 3 = False
-
-255 == 253 = False
-255 == 254 = False
-255 == 255 = True
-255 == 0 = False
-255 == 1 = False
-255 == 2 = False
-255 == 3 = False
-
-0 == 253 = False
-0 == 254 = False
-0 == 255 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 253 = False
-1 == 254 = False
-1 == 255 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 253 = False
-2 == 254 = False
-2 == 255 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 253 = False
-3 == 254 = False
-3 == 255 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-253 /= 253 = False
-253 /= 254 = True
-253 /= 255 = True
-253 /= 0 = True
-253 /= 1 = True
-253 /= 2 = True
-253 /= 3 = True
-
-254 /= 253 = True
-254 /= 254 = False
-254 /= 255 = True
-254 /= 0 = True
-254 /= 1 = True
-254 /= 2 = True
-254 /= 3 = True
-
-255 /= 253 = True
-255 /= 254 = True
-255 /= 255 = False
-255 /= 0 = True
-255 /= 1 = True
-255 /= 2 = True
-255 /= 3 = True
-
-0 /= 253 = True
-0 /= 254 = True
-0 /= 255 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 253 = True
-1 /= 254 = True
-1 /= 255 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 253 = True
-2 /= 254 = True
-2 /= 255 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 253 = True
-3 /= 254 = True
-3 /= 255 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-253 <= 253 = True
-253 <= 254 = True
-253 <= 255 = True
-253 <= 0 = False
-253 <= 1 = False
-253 <= 2 = False
-253 <= 3 = False
-
-254 <= 253 = False
-254 <= 254 = True
-254 <= 255 = True
-254 <= 0 = False
-254 <= 1 = False
-254 <= 2 = False
-254 <= 3 = False
-
-255 <= 253 = False
-255 <= 254 = False
-255 <= 255 = True
-255 <= 0 = False
-255 <= 1 = False
-255 <= 2 = False
-255 <= 3 = False
-
-0 <= 253 = True
-0 <= 254 = True
-0 <= 255 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 253 = True
-1 <= 254 = True
-1 <= 255 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 253 = True
-2 <= 254 = True
-2 <= 255 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 253 = True
-3 <= 254 = True
-3 <= 255 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-253 < 253 = False
-253 < 254 = True
-253 < 255 = True
-253 < 0 = False
-253 < 1 = False
-253 < 2 = False
-253 < 3 = False
-
-254 < 253 = False
-254 < 254 = False
-254 < 255 = True
-254 < 0 = False
-254 < 1 = False
-254 < 2 = False
-254 < 3 = False
-
-255 < 253 = False
-255 < 254 = False
-255 < 255 = False
-255 < 0 = False
-255 < 1 = False
-255 < 2 = False
-255 < 3 = False
-
-0 < 253 = True
-0 < 254 = True
-0 < 255 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 253 = True
-1 < 254 = True
-1 < 255 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 253 = True
-2 < 254 = True
-2 < 255 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 253 = True
-3 < 254 = True
-3 < 255 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-253 > 253 = False
-253 > 254 = False
-253 > 255 = False
-253 > 0 = True
-253 > 1 = True
-253 > 2 = True
-253 > 3 = True
-
-254 > 253 = True
-254 > 254 = False
-254 > 255 = False
-254 > 0 = True
-254 > 1 = True
-254 > 2 = True
-254 > 3 = True
-
-255 > 253 = True
-255 > 254 = True
-255 > 255 = False
-255 > 0 = True
-255 > 1 = True
-255 > 2 = True
-255 > 3 = True
-
-0 > 253 = False
-0 > 254 = False
-0 > 255 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 253 = False
-1 > 254 = False
-1 > 255 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 253 = False
-2 > 254 = False
-2 > 255 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 253 = False
-3 > 254 = False
-3 > 255 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-253 >= 253 = True
-253 >= 254 = False
-253 >= 255 = False
-253 >= 0 = True
-253 >= 1 = True
-253 >= 2 = True
-253 >= 3 = True
-
-254 >= 253 = True
-254 >= 254 = True
-254 >= 255 = False
-254 >= 0 = True
-254 >= 1 = True
-254 >= 2 = True
-254 >= 3 = True
-
-255 >= 253 = True
-255 >= 254 = True
-255 >= 255 = True
-255 >= 0 = True
-255 >= 1 = True
-255 >= 2 = True
-255 >= 3 = True
-
-0 >= 253 = False
-0 >= 254 = False
-0 >= 255 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 253 = False
-1 >= 254 = False
-1 >= 255 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 253 = False
-2 >= 254 = False
-2 >= 255 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 253 = False
-3 >= 254 = False
-3 >= 255 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-253 `compare` 253 = EQ
-253 `compare` 254 = LT
-253 `compare` 255 = LT
-253 `compare` 0 = GT
-253 `compare` 1 = GT
-253 `compare` 2 = GT
-253 `compare` 3 = GT
-
-254 `compare` 253 = GT
-254 `compare` 254 = EQ
-254 `compare` 255 = LT
-254 `compare` 0 = GT
-254 `compare` 1 = GT
-254 `compare` 2 = GT
-254 `compare` 3 = GT
-
-255 `compare` 253 = GT
-255 `compare` 254 = GT
-255 `compare` 255 = EQ
-255 `compare` 0 = GT
-255 `compare` 1 = GT
-255 `compare` 2 = GT
-255 `compare` 3 = GT
-
-0 `compare` 253 = LT
-0 `compare` 254 = LT
-0 `compare` 255 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 253 = LT
-1 `compare` 254 = LT
-1 `compare` 255 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 253 = LT
-2 `compare` 254 = LT
-2 `compare` 255 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 253 = LT
-3 `compare` 254 = LT
-3 `compare` 255 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-253 + 253 = 250
-253 + 254 = 251
-253 + 255 = 252
-253 + 0 = 253
-253 + 1 = 254
-253 + 2 = 255
-253 + 3 = 0
-
-254 + 253 = 251
-254 + 254 = 252
-254 + 255 = 253
-254 + 0 = 254
-254 + 1 = 255
-254 + 2 = 0
-254 + 3 = 1
-
-255 + 253 = 252
-255 + 254 = 253
-255 + 255 = 254
-255 + 0 = 255
-255 + 1 = 0
-255 + 2 = 1
-255 + 3 = 2
-
-0 + 253 = 253
-0 + 254 = 254
-0 + 255 = 255
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 253 = 254
-1 + 254 = 255
-1 + 255 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 253 = 255
-2 + 254 = 0
-2 + 255 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 253 = 0
-3 + 254 = 1
-3 + 255 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-253 - 253 = 0
-253 - 254 = 255
-253 - 255 = 254
-253 - 0 = 253
-253 - 1 = 252
-253 - 2 = 251
-253 - 3 = 250
-
-254 - 253 = 1
-254 - 254 = 0
-254 - 255 = 255
-254 - 0 = 254
-254 - 1 = 253
-254 - 2 = 252
-254 - 3 = 251
-
-255 - 253 = 2
-255 - 254 = 1
-255 - 255 = 0
-255 - 0 = 255
-255 - 1 = 254
-255 - 2 = 253
-255 - 3 = 252
-
-0 - 253 = 3
-0 - 254 = 2
-0 - 255 = 1
-0 - 0 = 0
-0 - 1 = 255
-0 - 2 = 254
-0 - 3 = 253
-
-1 - 253 = 4
-1 - 254 = 3
-1 - 255 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 255
-1 - 3 = 254
-
-2 - 253 = 5
-2 - 254 = 4
-2 - 255 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 255
-
-3 - 253 = 6
-3 - 254 = 5
-3 - 255 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-253 * 253 = 9
-253 * 254 = 6
-253 * 255 = 3
-253 * 0 = 0
-253 * 1 = 253
-253 * 2 = 250
-253 * 3 = 247
-
-254 * 253 = 6
-254 * 254 = 4
-254 * 255 = 2
-254 * 0 = 0
-254 * 1 = 254
-254 * 2 = 252
-254 * 3 = 250
-
-255 * 253 = 3
-255 * 254 = 2
-255 * 255 = 1
-255 * 0 = 0
-255 * 1 = 255
-255 * 2 = 254
-255 * 3 = 253
-
-0 * 253 = 0
-0 * 254 = 0
-0 * 255 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 253 = 253
-1 * 254 = 254
-1 * 255 = 255
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 253 = 250
-2 * 254 = 252
-2 * 255 = 254
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 253 = 247
-3 * 254 = 250
-3 * 255 = 253
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 253 = 3
-negate 254 = 2
-negate 255 = 1
-negate 0 = 0
-negate 1 = 255
-negate 2 = 254
-negate 3 = 253
-#
-testReal
-toRational 253 = 253 % 1
-toRational 254 = 254 % 1
-toRational 255 = 255 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-253 `divMod` 253 = (1,0)
-253 `divMod` 254 = (0,253)
-253 `divMod` 255 = (0,253)
-253 `divMod` 1 = (253,0)
-253 `divMod` 2 = (126,1)
-253 `divMod` 3 = (84,1)
-
-254 `divMod` 253 = (1,1)
-254 `divMod` 254 = (1,0)
-254 `divMod` 255 = (0,254)
-254 `divMod` 1 = (254,0)
-254 `divMod` 2 = (127,0)
-254 `divMod` 3 = (84,2)
-
-255 `divMod` 253 = (1,2)
-255 `divMod` 254 = (1,1)
-255 `divMod` 255 = (1,0)
-255 `divMod` 1 = (255,0)
-255 `divMod` 2 = (127,1)
-255 `divMod` 3 = (85,0)
-
-0 `divMod` 253 = (0,0)
-0 `divMod` 254 = (0,0)
-0 `divMod` 255 = (0,0)
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 253 = (0,1)
-1 `divMod` 254 = (0,1)
-1 `divMod` 255 = (0,1)
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 253 = (0,2)
-2 `divMod` 254 = (0,2)
-2 `divMod` 255 = (0,2)
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 253 = (0,3)
-3 `divMod` 254 = (0,3)
-3 `divMod` 255 = (0,3)
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-253 `div` 253 = 1
-253 `div` 254 = 0
-253 `div` 255 = 0
-253 `div` 1 = 253
-253 `div` 2 = 126
-253 `div` 3 = 84
-
-254 `div` 253 = 1
-254 `div` 254 = 1
-254 `div` 255 = 0
-254 `div` 1 = 254
-254 `div` 2 = 127
-254 `div` 3 = 84
-
-255 `div` 253 = 1
-255 `div` 254 = 1
-255 `div` 255 = 1
-255 `div` 1 = 255
-255 `div` 2 = 127
-255 `div` 3 = 85
-
-0 `div` 253 = 0
-0 `div` 254 = 0
-0 `div` 255 = 0
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 253 = 0
-1 `div` 254 = 0
-1 `div` 255 = 0
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 253 = 0
-2 `div` 254 = 0
-2 `div` 255 = 0
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 253 = 0
-3 `div` 254 = 0
-3 `div` 255 = 0
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-253 `mod` 253 = 0
-253 `mod` 254 = 253
-253 `mod` 255 = 253
-253 `mod` 1 = 0
-253 `mod` 2 = 1
-253 `mod` 3 = 1
-
-254 `mod` 253 = 1
-254 `mod` 254 = 0
-254 `mod` 255 = 254
-254 `mod` 1 = 0
-254 `mod` 2 = 0
-254 `mod` 3 = 2
-
-255 `mod` 253 = 2
-255 `mod` 254 = 1
-255 `mod` 255 = 0
-255 `mod` 1 = 0
-255 `mod` 2 = 1
-255 `mod` 3 = 0
-
-0 `mod` 253 = 0
-0 `mod` 254 = 0
-0 `mod` 255 = 0
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 253 = 1
-1 `mod` 254 = 1
-1 `mod` 255 = 1
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 253 = 2
-2 `mod` 254 = 2
-2 `mod` 255 = 2
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 253 = 3
-3 `mod` 254 = 3
-3 `mod` 255 = 3
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-253 `quotRem` 253 = (1,0)
-253 `quotRem` 254 = (0,253)
-253 `quotRem` 255 = (0,253)
-253 `quotRem` 1 = (253,0)
-253 `quotRem` 2 = (126,1)
-253 `quotRem` 3 = (84,1)
-
-254 `quotRem` 253 = (1,1)
-254 `quotRem` 254 = (1,0)
-254 `quotRem` 255 = (0,254)
-254 `quotRem` 1 = (254,0)
-254 `quotRem` 2 = (127,0)
-254 `quotRem` 3 = (84,2)
-
-255 `quotRem` 253 = (1,2)
-255 `quotRem` 254 = (1,1)
-255 `quotRem` 255 = (1,0)
-255 `quotRem` 1 = (255,0)
-255 `quotRem` 2 = (127,1)
-255 `quotRem` 3 = (85,0)
-
-0 `quotRem` 253 = (0,0)
-0 `quotRem` 254 = (0,0)
-0 `quotRem` 255 = (0,0)
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 253 = (0,1)
-1 `quotRem` 254 = (0,1)
-1 `quotRem` 255 = (0,1)
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 253 = (0,2)
-2 `quotRem` 254 = (0,2)
-2 `quotRem` 255 = (0,2)
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 253 = (0,3)
-3 `quotRem` 254 = (0,3)
-3 `quotRem` 255 = (0,3)
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-253 `quot` 253 = 1
-253 `quot` 254 = 0
-253 `quot` 255 = 0
-253 `quot` 1 = 253
-253 `quot` 2 = 126
-253 `quot` 3 = 84
-
-254 `quot` 253 = 1
-254 `quot` 254 = 1
-254 `quot` 255 = 0
-254 `quot` 1 = 254
-254 `quot` 2 = 127
-254 `quot` 3 = 84
-
-255 `quot` 253 = 1
-255 `quot` 254 = 1
-255 `quot` 255 = 1
-255 `quot` 1 = 255
-255 `quot` 2 = 127
-255 `quot` 3 = 85
-
-0 `quot` 253 = 0
-0 `quot` 254 = 0
-0 `quot` 255 = 0
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 253 = 0
-1 `quot` 254 = 0
-1 `quot` 255 = 0
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 253 = 0
-2 `quot` 254 = 0
-2 `quot` 255 = 0
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 253 = 0
-3 `quot` 254 = 0
-3 `quot` 255 = 0
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-253 `rem` 253 = 0
-253 `rem` 254 = 253
-253 `rem` 255 = 253
-253 `rem` 1 = 0
-253 `rem` 2 = 1
-253 `rem` 3 = 1
-
-254 `rem` 253 = 1
-254 `rem` 254 = 0
-254 `rem` 255 = 254
-254 `rem` 1 = 0
-254 `rem` 2 = 0
-254 `rem` 3 = 2
-
-255 `rem` 253 = 2
-255 `rem` 254 = 1
-255 `rem` 255 = 0
-255 `rem` 1 = 0
-255 `rem` 2 = 1
-255 `rem` 3 = 0
-
-0 `rem` 253 = 0
-0 `rem` 254 = 0
-0 `rem` 255 = 0
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 253 = 1
-1 `rem` 254 = 1
-1 `rem` 255 = 1
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 253 = 2
-2 `rem` 254 = 2
-2 `rem` 255 = 2
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 253 = 3
-3 `rem` 254 = 3
-3 `rem` 255 = 3
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,255]
-Int : [0,0,255]
-Int8 : [0,0,-1]
-Int16 : [0,0,255]
-Int32 : [0,0,255]
-Int64 : [0,0,255]
-Word8 : [0,0,255]
-Word16 : [0,0,255]
-Word32 : [0,0,255]
-Word64 : [0,0,255]
-testBits
-253 .&. 253 = 253
-253 .&. 254 = 252
-253 .&. 255 = 253
-253 .&. 1 = 1
-253 .&. 2 = 0
-253 .&. 3 = 1
-
-254 .&. 253 = 252
-254 .&. 254 = 254
-254 .&. 255 = 254
-254 .&. 1 = 0
-254 .&. 2 = 2
-254 .&. 3 = 2
-
-255 .&. 253 = 253
-255 .&. 254 = 254
-255 .&. 255 = 255
-255 .&. 1 = 1
-255 .&. 2 = 2
-255 .&. 3 = 3
-
-0 .&. 253 = 0
-0 .&. 254 = 0
-0 .&. 255 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 253 = 1
-1 .&. 254 = 0
-1 .&. 255 = 1
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 253 = 0
-2 .&. 254 = 2
-2 .&. 255 = 2
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 253 = 1
-3 .&. 254 = 2
-3 .&. 255 = 3
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-253 .|. 253 = 253
-253 .|. 254 = 255
-253 .|. 255 = 255
-253 .|. 1 = 253
-253 .|. 2 = 255
-253 .|. 3 = 255
-
-254 .|. 253 = 255
-254 .|. 254 = 254
-254 .|. 255 = 255
-254 .|. 1 = 255
-254 .|. 2 = 254
-254 .|. 3 = 255
-
-255 .|. 253 = 255
-255 .|. 254 = 255
-255 .|. 255 = 255
-255 .|. 1 = 255
-255 .|. 2 = 255
-255 .|. 3 = 255
-
-0 .|. 253 = 253
-0 .|. 254 = 254
-0 .|. 255 = 255
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 253 = 253
-1 .|. 254 = 255
-1 .|. 255 = 255
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 253 = 255
-2 .|. 254 = 254
-2 .|. 255 = 255
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 253 = 255
-3 .|. 254 = 255
-3 .|. 255 = 255
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-253 `xor` 253 = 0
-253 `xor` 254 = 3
-253 `xor` 255 = 2
-253 `xor` 1 = 252
-253 `xor` 2 = 255
-253 `xor` 3 = 254
-
-254 `xor` 253 = 3
-254 `xor` 254 = 0
-254 `xor` 255 = 1
-254 `xor` 1 = 255
-254 `xor` 2 = 252
-254 `xor` 3 = 253
-
-255 `xor` 253 = 2
-255 `xor` 254 = 1
-255 `xor` 255 = 0
-255 `xor` 1 = 254
-255 `xor` 2 = 253
-255 `xor` 3 = 252
-
-0 `xor` 253 = 253
-0 `xor` 254 = 254
-0 `xor` 255 = 255
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 253 = 252
-1 `xor` 254 = 255
-1 `xor` 255 = 254
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 253 = 255
-2 `xor` 254 = 252
-2 `xor` 255 = 253
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 253 = 254
-3 `xor` 254 = 253
-3 `xor` 255 = 252
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 253 = 2
-complement 254 = 1
-complement 255 = 0
-complement 0 = 255
-complement 1 = 254
-complement 2 = 253
-complement 3 = 252
-#
-253 `shiftL` 0 = 253
-253 `shiftL` 1 = 250
-253 `shiftL` 2 = 244
-253 `shiftL` 3 = 232
-253 `shiftL` 32 = 0
-253 `shiftL` 64 = 0
-
-254 `shiftL` 0 = 254
-254 `shiftL` 1 = 252
-254 `shiftL` 2 = 248
-254 `shiftL` 3 = 240
-254 `shiftL` 32 = 0
-254 `shiftL` 64 = 0
-
-255 `shiftL` 0 = 255
-255 `shiftL` 1 = 254
-255 `shiftL` 2 = 252
-255 `shiftL` 3 = 248
-255 `shiftL` 32 = 0
-255 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
-253 `shiftR` 0 = 253
-253 `shiftR` 1 = 126
-253 `shiftR` 2 = 63
-253 `shiftR` 3 = 31
-253 `shiftR` 32 = 0
-253 `shiftR` 64 = 0
-
-254 `shiftR` 0 = 254
-254 `shiftR` 1 = 127
-254 `shiftR` 2 = 63
-254 `shiftR` 3 = 31
-254 `shiftR` 32 = 0
-254 `shiftR` 64 = 0
-
-255 `shiftR` 0 = 255
-255 `shiftR` 1 = 127
-255 `shiftR` 2 = 63
-255 `shiftR` 3 = 31
-255 `shiftR` 32 = 0
-255 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-253 `rotate` -3 = 191
-253 `rotate` -2 = 127
-253 `rotate` -1 = 254
-253 `rotate` 0 = 253
-253 `rotate` 1 = 251
-253 `rotate` 2 = 247
-253 `rotate` 3 = 239
-
-254 `rotate` -3 = 223
-254 `rotate` -2 = 191
-254 `rotate` -1 = 127
-254 `rotate` 0 = 254
-254 `rotate` 1 = 253
-254 `rotate` 2 = 251
-254 `rotate` 3 = 247
-
-255 `rotate` -3 = 255
-255 `rotate` -2 = 255
-255 `rotate` -1 = 255
-255 `rotate` 0 = 255
-255 `rotate` 1 = 255
-255 `rotate` 2 = 255
-255 `rotate` 3 = 255
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 32
-1 `rotate` -2 = 64
-1 `rotate` -1 = 128
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 64
-2 `rotate` -2 = 128
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 96
-3 `rotate` -2 = 192
-3 `rotate` -1 = 129
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-253 `setBit` 0 = 253
-253 `setBit` 1 = 255
-253 `setBit` 2 = 253
-253 `setBit` 3 = 253
-253 `setBit` 32 = 253
-253 `setBit` 64 = 253
-
-254 `setBit` 0 = 255
-254 `setBit` 1 = 254
-254 `setBit` 2 = 254
-254 `setBit` 3 = 254
-254 `setBit` 32 = 254
-254 `setBit` 64 = 254
-
-255 `setBit` 0 = 255
-255 `setBit` 1 = 255
-255 `setBit` 2 = 255
-255 `setBit` 3 = 255
-255 `setBit` 32 = 255
-255 `setBit` 64 = 255
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
-253 `clearBit` 0 = 252
-253 `clearBit` 1 = 253
-253 `clearBit` 2 = 249
-253 `clearBit` 3 = 245
-253 `clearBit` 32 = 253
-253 `clearBit` 64 = 253
-
-254 `clearBit` 0 = 254
-254 `clearBit` 1 = 252
-254 `clearBit` 2 = 250
-254 `clearBit` 3 = 246
-254 `clearBit` 32 = 254
-254 `clearBit` 64 = 254
-
-255 `clearBit` 0 = 254
-255 `clearBit` 1 = 253
-255 `clearBit` 2 = 251
-255 `clearBit` 3 = 247
-255 `clearBit` 32 = 255
-255 `clearBit` 64 = 255
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-253 `complementBit` 0 = 252
-253 `complementBit` 1 = 255
-253 `complementBit` 2 = 249
-253 `complementBit` 3 = 245
-253 `complementBit` 32 = 253
-253 `complementBit` 64 = 253
-
-254 `complementBit` 0 = 255
-254 `complementBit` 1 = 252
-254 `complementBit` 2 = 250
-254 `complementBit` 3 = 246
-254 `complementBit` 32 = 254
-254 `complementBit` 64 = 254
-
-255 `complementBit` 0 = 254
-255 `complementBit` 1 = 253
-255 `complementBit` 2 = 251
-255 `complementBit` 3 = 247
-255 `complementBit` 32 = 255
-255 `complementBit` 64 = 255
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
-253 `testBit` 0 = True
-253 `testBit` 1 = False
-253 `testBit` 2 = True
-253 `testBit` 3 = True
-253 `testBit` 32 = False
-253 `testBit` 64 = False
-
-254 `testBit` 0 = False
-254 `testBit` 1 = True
-254 `testBit` 2 = True
-254 `testBit` 3 = True
-254 `testBit` 32 = False
-254 `testBit` 64 = False
-
-255 `testBit` 0 = True
-255 `testBit` 1 = True
-255 `testBit` 2 = True
-255 `testBit` 3 = True
-255 `testBit` 32 = False
-255 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 253 = 8
-bitSize 254 = 8
-bitSize 255 = 8
-bitSize 0 = 8
-bitSize 1 = 8
-bitSize 2 = 8
-bitSize 3 = 8
-#
-isSigned 253 = False
-isSigned 254 = False
-isSigned 255 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Word16
---------------------------------
-testBounded
-(65535,0,1)
-(65534,65535,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[65533,65534,65535,0,1,2,3]
-[65533,65534,65535,0,1,2,3]
-testEq
-65533 == 65533 = True
-65533 == 65534 = False
-65533 == 65535 = False
-65533 == 0 = False
-65533 == 1 = False
-65533 == 2 = False
-65533 == 3 = False
-
-65534 == 65533 = False
-65534 == 65534 = True
-65534 == 65535 = False
-65534 == 0 = False
-65534 == 1 = False
-65534 == 2 = False
-65534 == 3 = False
-
-65535 == 65533 = False
-65535 == 65534 = False
-65535 == 65535 = True
-65535 == 0 = False
-65535 == 1 = False
-65535 == 2 = False
-65535 == 3 = False
-
-0 == 65533 = False
-0 == 65534 = False
-0 == 65535 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 65533 = False
-1 == 65534 = False
-1 == 65535 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 65533 = False
-2 == 65534 = False
-2 == 65535 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 65533 = False
-3 == 65534 = False
-3 == 65535 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-65533 /= 65533 = False
-65533 /= 65534 = True
-65533 /= 65535 = True
-65533 /= 0 = True
-65533 /= 1 = True
-65533 /= 2 = True
-65533 /= 3 = True
-
-65534 /= 65533 = True
-65534 /= 65534 = False
-65534 /= 65535 = True
-65534 /= 0 = True
-65534 /= 1 = True
-65534 /= 2 = True
-65534 /= 3 = True
-
-65535 /= 65533 = True
-65535 /= 65534 = True
-65535 /= 65535 = False
-65535 /= 0 = True
-65535 /= 1 = True
-65535 /= 2 = True
-65535 /= 3 = True
-
-0 /= 65533 = True
-0 /= 65534 = True
-0 /= 65535 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 65533 = True
-1 /= 65534 = True
-1 /= 65535 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 65533 = True
-2 /= 65534 = True
-2 /= 65535 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 65533 = True
-3 /= 65534 = True
-3 /= 65535 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-65533 <= 65533 = True
-65533 <= 65534 = True
-65533 <= 65535 = True
-65533 <= 0 = False
-65533 <= 1 = False
-65533 <= 2 = False
-65533 <= 3 = False
-
-65534 <= 65533 = False
-65534 <= 65534 = True
-65534 <= 65535 = True
-65534 <= 0 = False
-65534 <= 1 = False
-65534 <= 2 = False
-65534 <= 3 = False
-
-65535 <= 65533 = False
-65535 <= 65534 = False
-65535 <= 65535 = True
-65535 <= 0 = False
-65535 <= 1 = False
-65535 <= 2 = False
-65535 <= 3 = False
-
-0 <= 65533 = True
-0 <= 65534 = True
-0 <= 65535 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 65533 = True
-1 <= 65534 = True
-1 <= 65535 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 65533 = True
-2 <= 65534 = True
-2 <= 65535 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 65533 = True
-3 <= 65534 = True
-3 <= 65535 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-65533 < 65533 = False
-65533 < 65534 = True
-65533 < 65535 = True
-65533 < 0 = False
-65533 < 1 = False
-65533 < 2 = False
-65533 < 3 = False
-
-65534 < 65533 = False
-65534 < 65534 = False
-65534 < 65535 = True
-65534 < 0 = False
-65534 < 1 = False
-65534 < 2 = False
-65534 < 3 = False
-
-65535 < 65533 = False
-65535 < 65534 = False
-65535 < 65535 = False
-65535 < 0 = False
-65535 < 1 = False
-65535 < 2 = False
-65535 < 3 = False
-
-0 < 65533 = True
-0 < 65534 = True
-0 < 65535 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 65533 = True
-1 < 65534 = True
-1 < 65535 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 65533 = True
-2 < 65534 = True
-2 < 65535 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 65533 = True
-3 < 65534 = True
-3 < 65535 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-65533 > 65533 = False
-65533 > 65534 = False
-65533 > 65535 = False
-65533 > 0 = True
-65533 > 1 = True
-65533 > 2 = True
-65533 > 3 = True
-
-65534 > 65533 = True
-65534 > 65534 = False
-65534 > 65535 = False
-65534 > 0 = True
-65534 > 1 = True
-65534 > 2 = True
-65534 > 3 = True
-
-65535 > 65533 = True
-65535 > 65534 = True
-65535 > 65535 = False
-65535 > 0 = True
-65535 > 1 = True
-65535 > 2 = True
-65535 > 3 = True
-
-0 > 65533 = False
-0 > 65534 = False
-0 > 65535 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 65533 = False
-1 > 65534 = False
-1 > 65535 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 65533 = False
-2 > 65534 = False
-2 > 65535 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 65533 = False
-3 > 65534 = False
-3 > 65535 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-65533 >= 65533 = True
-65533 >= 65534 = False
-65533 >= 65535 = False
-65533 >= 0 = True
-65533 >= 1 = True
-65533 >= 2 = True
-65533 >= 3 = True
-
-65534 >= 65533 = True
-65534 >= 65534 = True
-65534 >= 65535 = False
-65534 >= 0 = True
-65534 >= 1 = True
-65534 >= 2 = True
-65534 >= 3 = True
-
-65535 >= 65533 = True
-65535 >= 65534 = True
-65535 >= 65535 = True
-65535 >= 0 = True
-65535 >= 1 = True
-65535 >= 2 = True
-65535 >= 3 = True
-
-0 >= 65533 = False
-0 >= 65534 = False
-0 >= 65535 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 65533 = False
-1 >= 65534 = False
-1 >= 65535 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 65533 = False
-2 >= 65534 = False
-2 >= 65535 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 65533 = False
-3 >= 65534 = False
-3 >= 65535 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-65533 `compare` 65533 = EQ
-65533 `compare` 65534 = LT
-65533 `compare` 65535 = LT
-65533 `compare` 0 = GT
-65533 `compare` 1 = GT
-65533 `compare` 2 = GT
-65533 `compare` 3 = GT
-
-65534 `compare` 65533 = GT
-65534 `compare` 65534 = EQ
-65534 `compare` 65535 = LT
-65534 `compare` 0 = GT
-65534 `compare` 1 = GT
-65534 `compare` 2 = GT
-65534 `compare` 3 = GT
-
-65535 `compare` 65533 = GT
-65535 `compare` 65534 = GT
-65535 `compare` 65535 = EQ
-65535 `compare` 0 = GT
-65535 `compare` 1 = GT
-65535 `compare` 2 = GT
-65535 `compare` 3 = GT
-
-0 `compare` 65533 = LT
-0 `compare` 65534 = LT
-0 `compare` 65535 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 65533 = LT
-1 `compare` 65534 = LT
-1 `compare` 65535 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 65533 = LT
-2 `compare` 65534 = LT
-2 `compare` 65535 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 65533 = LT
-3 `compare` 65534 = LT
-3 `compare` 65535 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-65533 + 65533 = 65530
-65533 + 65534 = 65531
-65533 + 65535 = 65532
-65533 + 0 = 65533
-65533 + 1 = 65534
-65533 + 2 = 65535
-65533 + 3 = 0
-
-65534 + 65533 = 65531
-65534 + 65534 = 65532
-65534 + 65535 = 65533
-65534 + 0 = 65534
-65534 + 1 = 65535
-65534 + 2 = 0
-65534 + 3 = 1
-
-65535 + 65533 = 65532
-65535 + 65534 = 65533
-65535 + 65535 = 65534
-65535 + 0 = 65535
-65535 + 1 = 0
-65535 + 2 = 1
-65535 + 3 = 2
-
-0 + 65533 = 65533
-0 + 65534 = 65534
-0 + 65535 = 65535
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 65533 = 65534
-1 + 65534 = 65535
-1 + 65535 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 65533 = 65535
-2 + 65534 = 0
-2 + 65535 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 65533 = 0
-3 + 65534 = 1
-3 + 65535 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-65533 - 65533 = 0
-65533 - 65534 = 65535
-65533 - 65535 = 65534
-65533 - 0 = 65533
-65533 - 1 = 65532
-65533 - 2 = 65531
-65533 - 3 = 65530
-
-65534 - 65533 = 1
-65534 - 65534 = 0
-65534 - 65535 = 65535
-65534 - 0 = 65534
-65534 - 1 = 65533
-65534 - 2 = 65532
-65534 - 3 = 65531
-
-65535 - 65533 = 2
-65535 - 65534 = 1
-65535 - 65535 = 0
-65535 - 0 = 65535
-65535 - 1 = 65534
-65535 - 2 = 65533
-65535 - 3 = 65532
-
-0 - 65533 = 3
-0 - 65534 = 2
-0 - 65535 = 1
-0 - 0 = 0
-0 - 1 = 65535
-0 - 2 = 65534
-0 - 3 = 65533
-
-1 - 65533 = 4
-1 - 65534 = 3
-1 - 65535 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 65535
-1 - 3 = 65534
-
-2 - 65533 = 5
-2 - 65534 = 4
-2 - 65535 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 65535
-
-3 - 65533 = 6
-3 - 65534 = 5
-3 - 65535 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-65533 * 65533 = 9
-65533 * 65534 = 6
-65533 * 65535 = 3
-65533 * 0 = 0
-65533 * 1 = 65533
-65533 * 2 = 65530
-65533 * 3 = 65527
-
-65534 * 65533 = 6
-65534 * 65534 = 4
-65534 * 65535 = 2
-65534 * 0 = 0
-65534 * 1 = 65534
-65534 * 2 = 65532
-65534 * 3 = 65530
-
-65535 * 65533 = 3
-65535 * 65534 = 2
-65535 * 65535 = 1
-65535 * 0 = 0
-65535 * 1 = 65535
-65535 * 2 = 65534
-65535 * 3 = 65533
-
-0 * 65533 = 0
-0 * 65534 = 0
-0 * 65535 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 65533 = 65533
-1 * 65534 = 65534
-1 * 65535 = 65535
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 65533 = 65530
-2 * 65534 = 65532
-2 * 65535 = 65534
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 65533 = 65527
-3 * 65534 = 65530
-3 * 65535 = 65533
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 65533 = 3
-negate 65534 = 2
-negate 65535 = 1
-negate 0 = 0
-negate 1 = 65535
-negate 2 = 65534
-negate 3 = 65533
-#
-testReal
-toRational 65533 = 65533 % 1
-toRational 65534 = 65534 % 1
-toRational 65535 = 65535 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-65533 `divMod` 65533 = (1,0)
-65533 `divMod` 65534 = (0,65533)
-65533 `divMod` 65535 = (0,65533)
-65533 `divMod` 1 = (65533,0)
-65533 `divMod` 2 = (32766,1)
-65533 `divMod` 3 = (21844,1)
-
-65534 `divMod` 65533 = (1,1)
-65534 `divMod` 65534 = (1,0)
-65534 `divMod` 65535 = (0,65534)
-65534 `divMod` 1 = (65534,0)
-65534 `divMod` 2 = (32767,0)
-65534 `divMod` 3 = (21844,2)
-
-65535 `divMod` 65533 = (1,2)
-65535 `divMod` 65534 = (1,1)
-65535 `divMod` 65535 = (1,0)
-65535 `divMod` 1 = (65535,0)
-65535 `divMod` 2 = (32767,1)
-65535 `divMod` 3 = (21845,0)
-
-0 `divMod` 65533 = (0,0)
-0 `divMod` 65534 = (0,0)
-0 `divMod` 65535 = (0,0)
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 65533 = (0,1)
-1 `divMod` 65534 = (0,1)
-1 `divMod` 65535 = (0,1)
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 65533 = (0,2)
-2 `divMod` 65534 = (0,2)
-2 `divMod` 65535 = (0,2)
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 65533 = (0,3)
-3 `divMod` 65534 = (0,3)
-3 `divMod` 65535 = (0,3)
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-65533 `div` 65533 = 1
-65533 `div` 65534 = 0
-65533 `div` 65535 = 0
-65533 `div` 1 = 65533
-65533 `div` 2 = 32766
-65533 `div` 3 = 21844
-
-65534 `div` 65533 = 1
-65534 `div` 65534 = 1
-65534 `div` 65535 = 0
-65534 `div` 1 = 65534
-65534 `div` 2 = 32767
-65534 `div` 3 = 21844
-
-65535 `div` 65533 = 1
-65535 `div` 65534 = 1
-65535 `div` 65535 = 1
-65535 `div` 1 = 65535
-65535 `div` 2 = 32767
-65535 `div` 3 = 21845
-
-0 `div` 65533 = 0
-0 `div` 65534 = 0
-0 `div` 65535 = 0
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 65533 = 0
-1 `div` 65534 = 0
-1 `div` 65535 = 0
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 65533 = 0
-2 `div` 65534 = 0
-2 `div` 65535 = 0
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 65533 = 0
-3 `div` 65534 = 0
-3 `div` 65535 = 0
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-65533 `mod` 65533 = 0
-65533 `mod` 65534 = 65533
-65533 `mod` 65535 = 65533
-65533 `mod` 1 = 0
-65533 `mod` 2 = 1
-65533 `mod` 3 = 1
-
-65534 `mod` 65533 = 1
-65534 `mod` 65534 = 0
-65534 `mod` 65535 = 65534
-65534 `mod` 1 = 0
-65534 `mod` 2 = 0
-65534 `mod` 3 = 2
-
-65535 `mod` 65533 = 2
-65535 `mod` 65534 = 1
-65535 `mod` 65535 = 0
-65535 `mod` 1 = 0
-65535 `mod` 2 = 1
-65535 `mod` 3 = 0
-
-0 `mod` 65533 = 0
-0 `mod` 65534 = 0
-0 `mod` 65535 = 0
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 65533 = 1
-1 `mod` 65534 = 1
-1 `mod` 65535 = 1
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 65533 = 2
-2 `mod` 65534 = 2
-2 `mod` 65535 = 2
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 65533 = 3
-3 `mod` 65534 = 3
-3 `mod` 65535 = 3
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-65533 `quotRem` 65533 = (1,0)
-65533 `quotRem` 65534 = (0,65533)
-65533 `quotRem` 65535 = (0,65533)
-65533 `quotRem` 1 = (65533,0)
-65533 `quotRem` 2 = (32766,1)
-65533 `quotRem` 3 = (21844,1)
-
-65534 `quotRem` 65533 = (1,1)
-65534 `quotRem` 65534 = (1,0)
-65534 `quotRem` 65535 = (0,65534)
-65534 `quotRem` 1 = (65534,0)
-65534 `quotRem` 2 = (32767,0)
-65534 `quotRem` 3 = (21844,2)
-
-65535 `quotRem` 65533 = (1,2)
-65535 `quotRem` 65534 = (1,1)
-65535 `quotRem` 65535 = (1,0)
-65535 `quotRem` 1 = (65535,0)
-65535 `quotRem` 2 = (32767,1)
-65535 `quotRem` 3 = (21845,0)
-
-0 `quotRem` 65533 = (0,0)
-0 `quotRem` 65534 = (0,0)
-0 `quotRem` 65535 = (0,0)
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 65533 = (0,1)
-1 `quotRem` 65534 = (0,1)
-1 `quotRem` 65535 = (0,1)
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 65533 = (0,2)
-2 `quotRem` 65534 = (0,2)
-2 `quotRem` 65535 = (0,2)
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 65533 = (0,3)
-3 `quotRem` 65534 = (0,3)
-3 `quotRem` 65535 = (0,3)
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-65533 `quot` 65533 = 1
-65533 `quot` 65534 = 0
-65533 `quot` 65535 = 0
-65533 `quot` 1 = 65533
-65533 `quot` 2 = 32766
-65533 `quot` 3 = 21844
-
-65534 `quot` 65533 = 1
-65534 `quot` 65534 = 1
-65534 `quot` 65535 = 0
-65534 `quot` 1 = 65534
-65534 `quot` 2 = 32767
-65534 `quot` 3 = 21844
-
-65535 `quot` 65533 = 1
-65535 `quot` 65534 = 1
-65535 `quot` 65535 = 1
-65535 `quot` 1 = 65535
-65535 `quot` 2 = 32767
-65535 `quot` 3 = 21845
-
-0 `quot` 65533 = 0
-0 `quot` 65534 = 0
-0 `quot` 65535 = 0
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 65533 = 0
-1 `quot` 65534 = 0
-1 `quot` 65535 = 0
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 65533 = 0
-2 `quot` 65534 = 0
-2 `quot` 65535 = 0
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 65533 = 0
-3 `quot` 65534 = 0
-3 `quot` 65535 = 0
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-65533 `rem` 65533 = 0
-65533 `rem` 65534 = 65533
-65533 `rem` 65535 = 65533
-65533 `rem` 1 = 0
-65533 `rem` 2 = 1
-65533 `rem` 3 = 1
-
-65534 `rem` 65533 = 1
-65534 `rem` 65534 = 0
-65534 `rem` 65535 = 65534
-65534 `rem` 1 = 0
-65534 `rem` 2 = 0
-65534 `rem` 3 = 2
-
-65535 `rem` 65533 = 2
-65535 `rem` 65534 = 1
-65535 `rem` 65535 = 0
-65535 `rem` 1 = 0
-65535 `rem` 2 = 1
-65535 `rem` 3 = 0
-
-0 `rem` 65533 = 0
-0 `rem` 65534 = 0
-0 `rem` 65535 = 0
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 65533 = 1
-1 `rem` 65534 = 1
-1 `rem` 65535 = 1
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 65533 = 2
-2 `rem` 65534 = 2
-2 `rem` 65535 = 2
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 65533 = 3
-3 `rem` 65534 = 3
-3 `rem` 65535 = 3
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,65535]
-Int : [0,0,65535]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,65535]
-Int64 : [0,0,65535]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,65535]
-Word64 : [0,0,65535]
-testBits
-65533 .&. 65533 = 65533
-65533 .&. 65534 = 65532
-65533 .&. 65535 = 65533
-65533 .&. 1 = 1
-65533 .&. 2 = 0
-65533 .&. 3 = 1
-
-65534 .&. 65533 = 65532
-65534 .&. 65534 = 65534
-65534 .&. 65535 = 65534
-65534 .&. 1 = 0
-65534 .&. 2 = 2
-65534 .&. 3 = 2
-
-65535 .&. 65533 = 65533
-65535 .&. 65534 = 65534
-65535 .&. 65535 = 65535
-65535 .&. 1 = 1
-65535 .&. 2 = 2
-65535 .&. 3 = 3
-
-0 .&. 65533 = 0
-0 .&. 65534 = 0
-0 .&. 65535 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 65533 = 1
-1 .&. 65534 = 0
-1 .&. 65535 = 1
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 65533 = 0
-2 .&. 65534 = 2
-2 .&. 65535 = 2
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 65533 = 1
-3 .&. 65534 = 2
-3 .&. 65535 = 3
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-65533 .|. 65533 = 65533
-65533 .|. 65534 = 65535
-65533 .|. 65535 = 65535
-65533 .|. 1 = 65533
-65533 .|. 2 = 65535
-65533 .|. 3 = 65535
-
-65534 .|. 65533 = 65535
-65534 .|. 65534 = 65534
-65534 .|. 65535 = 65535
-65534 .|. 1 = 65535
-65534 .|. 2 = 65534
-65534 .|. 3 = 65535
-
-65535 .|. 65533 = 65535
-65535 .|. 65534 = 65535
-65535 .|. 65535 = 65535
-65535 .|. 1 = 65535
-65535 .|. 2 = 65535
-65535 .|. 3 = 65535
-
-0 .|. 65533 = 65533
-0 .|. 65534 = 65534
-0 .|. 65535 = 65535
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 65533 = 65533
-1 .|. 65534 = 65535
-1 .|. 65535 = 65535
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 65533 = 65535
-2 .|. 65534 = 65534
-2 .|. 65535 = 65535
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 65533 = 65535
-3 .|. 65534 = 65535
-3 .|. 65535 = 65535
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-65533 `xor` 65533 = 0
-65533 `xor` 65534 = 3
-65533 `xor` 65535 = 2
-65533 `xor` 1 = 65532
-65533 `xor` 2 = 65535
-65533 `xor` 3 = 65534
-
-65534 `xor` 65533 = 3
-65534 `xor` 65534 = 0
-65534 `xor` 65535 = 1
-65534 `xor` 1 = 65535
-65534 `xor` 2 = 65532
-65534 `xor` 3 = 65533
-
-65535 `xor` 65533 = 2
-65535 `xor` 65534 = 1
-65535 `xor` 65535 = 0
-65535 `xor` 1 = 65534
-65535 `xor` 2 = 65533
-65535 `xor` 3 = 65532
-
-0 `xor` 65533 = 65533
-0 `xor` 65534 = 65534
-0 `xor` 65535 = 65535
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 65533 = 65532
-1 `xor` 65534 = 65535
-1 `xor` 65535 = 65534
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 65533 = 65535
-2 `xor` 65534 = 65532
-2 `xor` 65535 = 65533
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 65533 = 65534
-3 `xor` 65534 = 65533
-3 `xor` 65535 = 65532
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 65533 = 2
-complement 65534 = 1
-complement 65535 = 0
-complement 0 = 65535
-complement 1 = 65534
-complement 2 = 65533
-complement 3 = 65532
-#
-65533 `shiftL` 0 = 65533
-65533 `shiftL` 1 = 65530
-65533 `shiftL` 2 = 65524
-65533 `shiftL` 3 = 65512
-65533 `shiftL` 32 = 0
-65533 `shiftL` 64 = 0
-
-65534 `shiftL` 0 = 65534
-65534 `shiftL` 1 = 65532
-65534 `shiftL` 2 = 65528
-65534 `shiftL` 3 = 65520
-65534 `shiftL` 32 = 0
-65534 `shiftL` 64 = 0
-
-65535 `shiftL` 0 = 65535
-65535 `shiftL` 1 = 65534
-65535 `shiftL` 2 = 65532
-65535 `shiftL` 3 = 65528
-65535 `shiftL` 32 = 0
-65535 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
-65533 `shiftR` 0 = 65533
-65533 `shiftR` 1 = 32766
-65533 `shiftR` 2 = 16383
-65533 `shiftR` 3 = 8191
-65533 `shiftR` 32 = 0
-65533 `shiftR` 64 = 0
-
-65534 `shiftR` 0 = 65534
-65534 `shiftR` 1 = 32767
-65534 `shiftR` 2 = 16383
-65534 `shiftR` 3 = 8191
-65534 `shiftR` 32 = 0
-65534 `shiftR` 64 = 0
-
-65535 `shiftR` 0 = 65535
-65535 `shiftR` 1 = 32767
-65535 `shiftR` 2 = 16383
-65535 `shiftR` 3 = 8191
-65535 `shiftR` 32 = 0
-65535 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-65533 `rotate` -3 = 49151
-65533 `rotate` -2 = 32767
-65533 `rotate` -1 = 65534
-65533 `rotate` 0 = 65533
-65533 `rotate` 1 = 65531
-65533 `rotate` 2 = 65527
-65533 `rotate` 3 = 65519
-
-65534 `rotate` -3 = 57343
-65534 `rotate` -2 = 49151
-65534 `rotate` -1 = 32767
-65534 `rotate` 0 = 65534
-65534 `rotate` 1 = 65533
-65534 `rotate` 2 = 65531
-65534 `rotate` 3 = 65527
-
-65535 `rotate` -3 = 65535
-65535 `rotate` -2 = 65535
-65535 `rotate` -1 = 65535
-65535 `rotate` 0 = 65535
-65535 `rotate` 1 = 65535
-65535 `rotate` 2 = 65535
-65535 `rotate` 3 = 65535
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 8192
-1 `rotate` -2 = 16384
-1 `rotate` -1 = 32768
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 16384
-2 `rotate` -2 = 32768
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 24576
-3 `rotate` -2 = 49152
-3 `rotate` -1 = 32769
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-65533 `setBit` 0 = 65533
-65533 `setBit` 1 = 65535
-65533 `setBit` 2 = 65533
-65533 `setBit` 3 = 65533
-65533 `setBit` 32 = 65533
-65533 `setBit` 64 = 65533
-
-65534 `setBit` 0 = 65535
-65534 `setBit` 1 = 65534
-65534 `setBit` 2 = 65534
-65534 `setBit` 3 = 65534
-65534 `setBit` 32 = 65534
-65534 `setBit` 64 = 65534
-
-65535 `setBit` 0 = 65535
-65535 `setBit` 1 = 65535
-65535 `setBit` 2 = 65535
-65535 `setBit` 3 = 65535
-65535 `setBit` 32 = 65535
-65535 `setBit` 64 = 65535
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
-65533 `clearBit` 0 = 65532
-65533 `clearBit` 1 = 65533
-65533 `clearBit` 2 = 65529
-65533 `clearBit` 3 = 65525
-65533 `clearBit` 32 = 65533
-65533 `clearBit` 64 = 65533
-
-65534 `clearBit` 0 = 65534
-65534 `clearBit` 1 = 65532
-65534 `clearBit` 2 = 65530
-65534 `clearBit` 3 = 65526
-65534 `clearBit` 32 = 65534
-65534 `clearBit` 64 = 65534
-
-65535 `clearBit` 0 = 65534
-65535 `clearBit` 1 = 65533
-65535 `clearBit` 2 = 65531
-65535 `clearBit` 3 = 65527
-65535 `clearBit` 32 = 65535
-65535 `clearBit` 64 = 65535
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-65533 `complementBit` 0 = 65532
-65533 `complementBit` 1 = 65535
-65533 `complementBit` 2 = 65529
-65533 `complementBit` 3 = 65525
-65533 `complementBit` 32 = 65533
-65533 `complementBit` 64 = 65533
-
-65534 `complementBit` 0 = 65535
-65534 `complementBit` 1 = 65532
-65534 `complementBit` 2 = 65530
-65534 `complementBit` 3 = 65526
-65534 `complementBit` 32 = 65534
-65534 `complementBit` 64 = 65534
-
-65535 `complementBit` 0 = 65534
-65535 `complementBit` 1 = 65533
-65535 `complementBit` 2 = 65531
-65535 `complementBit` 3 = 65527
-65535 `complementBit` 32 = 65535
-65535 `complementBit` 64 = 65535
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
-65533 `testBit` 0 = True
-65533 `testBit` 1 = False
-65533 `testBit` 2 = True
-65533 `testBit` 3 = True
-65533 `testBit` 32 = False
-65533 `testBit` 64 = False
-
-65534 `testBit` 0 = False
-65534 `testBit` 1 = True
-65534 `testBit` 2 = True
-65534 `testBit` 3 = True
-65534 `testBit` 32 = False
-65534 `testBit` 64 = False
-
-65535 `testBit` 0 = True
-65535 `testBit` 1 = True
-65535 `testBit` 2 = True
-65535 `testBit` 3 = True
-65535 `testBit` 32 = False
-65535 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 65533 = 16
-bitSize 65534 = 16
-bitSize 65535 = 16
-bitSize 0 = 16
-bitSize 1 = 16
-bitSize 2 = 16
-bitSize 3 = 16
-#
-isSigned 65533 = False
-isSigned 65534 = False
-isSigned 65535 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Word32
---------------------------------
-testBounded
-(4294967295,0,1)
-(4294967294,4294967295,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[4294967293,4294967294,4294967295,0,1,2,3]
-[4294967293,4294967294,4294967295,0,1,2,3]
-testEq
-4294967293 == 4294967293 = True
-4294967293 == 4294967294 = False
-4294967293 == 4294967295 = False
-4294967293 == 0 = False
-4294967293 == 1 = False
-4294967293 == 2 = False
-4294967293 == 3 = False
-
-4294967294 == 4294967293 = False
-4294967294 == 4294967294 = True
-4294967294 == 4294967295 = False
-4294967294 == 0 = False
-4294967294 == 1 = False
-4294967294 == 2 = False
-4294967294 == 3 = False
-
-4294967295 == 4294967293 = False
-4294967295 == 4294967294 = False
-4294967295 == 4294967295 = True
-4294967295 == 0 = False
-4294967295 == 1 = False
-4294967295 == 2 = False
-4294967295 == 3 = False
-
-0 == 4294967293 = False
-0 == 4294967294 = False
-0 == 4294967295 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 4294967293 = False
-1 == 4294967294 = False
-1 == 4294967295 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 4294967293 = False
-2 == 4294967294 = False
-2 == 4294967295 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 4294967293 = False
-3 == 4294967294 = False
-3 == 4294967295 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-4294967293 /= 4294967293 = False
-4294967293 /= 4294967294 = True
-4294967293 /= 4294967295 = True
-4294967293 /= 0 = True
-4294967293 /= 1 = True
-4294967293 /= 2 = True
-4294967293 /= 3 = True
-
-4294967294 /= 4294967293 = True
-4294967294 /= 4294967294 = False
-4294967294 /= 4294967295 = True
-4294967294 /= 0 = True
-4294967294 /= 1 = True
-4294967294 /= 2 = True
-4294967294 /= 3 = True
-
-4294967295 /= 4294967293 = True
-4294967295 /= 4294967294 = True
-4294967295 /= 4294967295 = False
-4294967295 /= 0 = True
-4294967295 /= 1 = True
-4294967295 /= 2 = True
-4294967295 /= 3 = True
-
-0 /= 4294967293 = True
-0 /= 4294967294 = True
-0 /= 4294967295 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 4294967293 = True
-1 /= 4294967294 = True
-1 /= 4294967295 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 4294967293 = True
-2 /= 4294967294 = True
-2 /= 4294967295 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 4294967293 = True
-3 /= 4294967294 = True
-3 /= 4294967295 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-4294967293 <= 4294967293 = True
-4294967293 <= 4294967294 = True
-4294967293 <= 4294967295 = True
-4294967293 <= 0 = False
-4294967293 <= 1 = False
-4294967293 <= 2 = False
-4294967293 <= 3 = False
-
-4294967294 <= 4294967293 = False
-4294967294 <= 4294967294 = True
-4294967294 <= 4294967295 = True
-4294967294 <= 0 = False
-4294967294 <= 1 = False
-4294967294 <= 2 = False
-4294967294 <= 3 = False
-
-4294967295 <= 4294967293 = False
-4294967295 <= 4294967294 = False
-4294967295 <= 4294967295 = True
-4294967295 <= 0 = False
-4294967295 <= 1 = False
-4294967295 <= 2 = False
-4294967295 <= 3 = False
-
-0 <= 4294967293 = True
-0 <= 4294967294 = True
-0 <= 4294967295 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 4294967293 = True
-1 <= 4294967294 = True
-1 <= 4294967295 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 4294967293 = True
-2 <= 4294967294 = True
-2 <= 4294967295 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 4294967293 = True
-3 <= 4294967294 = True
-3 <= 4294967295 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-4294967293 < 4294967293 = False
-4294967293 < 4294967294 = True
-4294967293 < 4294967295 = True
-4294967293 < 0 = False
-4294967293 < 1 = False
-4294967293 < 2 = False
-4294967293 < 3 = False
-
-4294967294 < 4294967293 = False
-4294967294 < 4294967294 = False
-4294967294 < 4294967295 = True
-4294967294 < 0 = False
-4294967294 < 1 = False
-4294967294 < 2 = False
-4294967294 < 3 = False
-
-4294967295 < 4294967293 = False
-4294967295 < 4294967294 = False
-4294967295 < 4294967295 = False
-4294967295 < 0 = False
-4294967295 < 1 = False
-4294967295 < 2 = False
-4294967295 < 3 = False
-
-0 < 4294967293 = True
-0 < 4294967294 = True
-0 < 4294967295 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 4294967293 = True
-1 < 4294967294 = True
-1 < 4294967295 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 4294967293 = True
-2 < 4294967294 = True
-2 < 4294967295 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 4294967293 = True
-3 < 4294967294 = True
-3 < 4294967295 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-4294967293 > 4294967293 = False
-4294967293 > 4294967294 = False
-4294967293 > 4294967295 = False
-4294967293 > 0 = True
-4294967293 > 1 = True
-4294967293 > 2 = True
-4294967293 > 3 = True
-
-4294967294 > 4294967293 = True
-4294967294 > 4294967294 = False
-4294967294 > 4294967295 = False
-4294967294 > 0 = True
-4294967294 > 1 = True
-4294967294 > 2 = True
-4294967294 > 3 = True
-
-4294967295 > 4294967293 = True
-4294967295 > 4294967294 = True
-4294967295 > 4294967295 = False
-4294967295 > 0 = True
-4294967295 > 1 = True
-4294967295 > 2 = True
-4294967295 > 3 = True
-
-0 > 4294967293 = False
-0 > 4294967294 = False
-0 > 4294967295 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 4294967293 = False
-1 > 4294967294 = False
-1 > 4294967295 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 4294967293 = False
-2 > 4294967294 = False
-2 > 4294967295 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 4294967293 = False
-3 > 4294967294 = False
-3 > 4294967295 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-4294967293 >= 4294967293 = True
-4294967293 >= 4294967294 = False
-4294967293 >= 4294967295 = False
-4294967293 >= 0 = True
-4294967293 >= 1 = True
-4294967293 >= 2 = True
-4294967293 >= 3 = True
-
-4294967294 >= 4294967293 = True
-4294967294 >= 4294967294 = True
-4294967294 >= 4294967295 = False
-4294967294 >= 0 = True
-4294967294 >= 1 = True
-4294967294 >= 2 = True
-4294967294 >= 3 = True
-
-4294967295 >= 4294967293 = True
-4294967295 >= 4294967294 = True
-4294967295 >= 4294967295 = True
-4294967295 >= 0 = True
-4294967295 >= 1 = True
-4294967295 >= 2 = True
-4294967295 >= 3 = True
-
-0 >= 4294967293 = False
-0 >= 4294967294 = False
-0 >= 4294967295 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 4294967293 = False
-1 >= 4294967294 = False
-1 >= 4294967295 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 4294967293 = False
-2 >= 4294967294 = False
-2 >= 4294967295 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 4294967293 = False
-3 >= 4294967294 = False
-3 >= 4294967295 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-4294967293 `compare` 4294967293 = EQ
-4294967293 `compare` 4294967294 = LT
-4294967293 `compare` 4294967295 = LT
-4294967293 `compare` 0 = GT
-4294967293 `compare` 1 = GT
-4294967293 `compare` 2 = GT
-4294967293 `compare` 3 = GT
-
-4294967294 `compare` 4294967293 = GT
-4294967294 `compare` 4294967294 = EQ
-4294967294 `compare` 4294967295 = LT
-4294967294 `compare` 0 = GT
-4294967294 `compare` 1 = GT
-4294967294 `compare` 2 = GT
-4294967294 `compare` 3 = GT
-
-4294967295 `compare` 4294967293 = GT
-4294967295 `compare` 4294967294 = GT
-4294967295 `compare` 4294967295 = EQ
-4294967295 `compare` 0 = GT
-4294967295 `compare` 1 = GT
-4294967295 `compare` 2 = GT
-4294967295 `compare` 3 = GT
-
-0 `compare` 4294967293 = LT
-0 `compare` 4294967294 = LT
-0 `compare` 4294967295 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 4294967293 = LT
-1 `compare` 4294967294 = LT
-1 `compare` 4294967295 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 4294967293 = LT
-2 `compare` 4294967294 = LT
-2 `compare` 4294967295 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 4294967293 = LT
-3 `compare` 4294967294 = LT
-3 `compare` 4294967295 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-4294967293 + 4294967293 = 4294967290
-4294967293 + 4294967294 = 4294967291
-4294967293 + 4294967295 = 4294967292
-4294967293 + 0 = 4294967293
-4294967293 + 1 = 4294967294
-4294967293 + 2 = 4294967295
-4294967293 + 3 = 0
-
-4294967294 + 4294967293 = 4294967291
-4294967294 + 4294967294 = 4294967292
-4294967294 + 4294967295 = 4294967293
-4294967294 + 0 = 4294967294
-4294967294 + 1 = 4294967295
-4294967294 + 2 = 0
-4294967294 + 3 = 1
-
-4294967295 + 4294967293 = 4294967292
-4294967295 + 4294967294 = 4294967293
-4294967295 + 4294967295 = 4294967294
-4294967295 + 0 = 4294967295
-4294967295 + 1 = 0
-4294967295 + 2 = 1
-4294967295 + 3 = 2
-
-0 + 4294967293 = 4294967293
-0 + 4294967294 = 4294967294
-0 + 4294967295 = 4294967295
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 4294967293 = 4294967294
-1 + 4294967294 = 4294967295
-1 + 4294967295 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 4294967293 = 4294967295
-2 + 4294967294 = 0
-2 + 4294967295 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 4294967293 = 0
-3 + 4294967294 = 1
-3 + 4294967295 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-4294967293 - 4294967293 = 0
-4294967293 - 4294967294 = 4294967295
-4294967293 - 4294967295 = 4294967294
-4294967293 - 0 = 4294967293
-4294967293 - 1 = 4294967292
-4294967293 - 2 = 4294967291
-4294967293 - 3 = 4294967290
-
-4294967294 - 4294967293 = 1
-4294967294 - 4294967294 = 0
-4294967294 - 4294967295 = 4294967295
-4294967294 - 0 = 4294967294
-4294967294 - 1 = 4294967293
-4294967294 - 2 = 4294967292
-4294967294 - 3 = 4294967291
-
-4294967295 - 4294967293 = 2
-4294967295 - 4294967294 = 1
-4294967295 - 4294967295 = 0
-4294967295 - 0 = 4294967295
-4294967295 - 1 = 4294967294
-4294967295 - 2 = 4294967293
-4294967295 - 3 = 4294967292
-
-0 - 4294967293 = 3
-0 - 4294967294 = 2
-0 - 4294967295 = 1
-0 - 0 = 0
-0 - 1 = 4294967295
-0 - 2 = 4294967294
-0 - 3 = 4294967293
-
-1 - 4294967293 = 4
-1 - 4294967294 = 3
-1 - 4294967295 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 4294967295
-1 - 3 = 4294967294
-
-2 - 4294967293 = 5
-2 - 4294967294 = 4
-2 - 4294967295 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 4294967295
-
-3 - 4294967293 = 6
-3 - 4294967294 = 5
-3 - 4294967295 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-4294967293 * 4294967293 = 9
-4294967293 * 4294967294 = 6
-4294967293 * 4294967295 = 3
-4294967293 * 0 = 0
-4294967293 * 1 = 4294967293
-4294967293 * 2 = 4294967290
-4294967293 * 3 = 4294967287
-
-4294967294 * 4294967293 = 6
-4294967294 * 4294967294 = 4
-4294967294 * 4294967295 = 2
-4294967294 * 0 = 0
-4294967294 * 1 = 4294967294
-4294967294 * 2 = 4294967292
-4294967294 * 3 = 4294967290
-
-4294967295 * 4294967293 = 3
-4294967295 * 4294967294 = 2
-4294967295 * 4294967295 = 1
-4294967295 * 0 = 0
-4294967295 * 1 = 4294967295
-4294967295 * 2 = 4294967294
-4294967295 * 3 = 4294967293
-
-0 * 4294967293 = 0
-0 * 4294967294 = 0
-0 * 4294967295 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 4294967293 = 4294967293
-1 * 4294967294 = 4294967294
-1 * 4294967295 = 4294967295
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 4294967293 = 4294967290
-2 * 4294967294 = 4294967292
-2 * 4294967295 = 4294967294
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 4294967293 = 4294967287
-3 * 4294967294 = 4294967290
-3 * 4294967295 = 4294967293
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 4294967293 = 3
-negate 4294967294 = 2
-negate 4294967295 = 1
-negate 0 = 0
-negate 1 = 4294967295
-negate 2 = 4294967294
-negate 3 = 4294967293
-#
-testReal
-toRational 4294967293 = 4294967293 % 1
-toRational 4294967294 = 4294967294 % 1
-toRational 4294967295 = 4294967295 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-4294967293 `divMod` 4294967293 = (1,0)
-4294967293 `divMod` 4294967294 = (0,4294967293)
-4294967293 `divMod` 4294967295 = (0,4294967293)
-4294967293 `divMod` 1 = (4294967293,0)
-4294967293 `divMod` 2 = (2147483646,1)
-4294967293 `divMod` 3 = (1431655764,1)
-
-4294967294 `divMod` 4294967293 = (1,1)
-4294967294 `divMod` 4294967294 = (1,0)
-4294967294 `divMod` 4294967295 = (0,4294967294)
-4294967294 `divMod` 1 = (4294967294,0)
-4294967294 `divMod` 2 = (2147483647,0)
-4294967294 `divMod` 3 = (1431655764,2)
-
-4294967295 `divMod` 4294967293 = (1,2)
-4294967295 `divMod` 4294967294 = (1,1)
-4294967295 `divMod` 4294967295 = (1,0)
-4294967295 `divMod` 1 = (4294967295,0)
-4294967295 `divMod` 2 = (2147483647,1)
-4294967295 `divMod` 3 = (1431655765,0)
-
-0 `divMod` 4294967293 = (0,0)
-0 `divMod` 4294967294 = (0,0)
-0 `divMod` 4294967295 = (0,0)
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 4294967293 = (0,1)
-1 `divMod` 4294967294 = (0,1)
-1 `divMod` 4294967295 = (0,1)
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 4294967293 = (0,2)
-2 `divMod` 4294967294 = (0,2)
-2 `divMod` 4294967295 = (0,2)
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 4294967293 = (0,3)
-3 `divMod` 4294967294 = (0,3)
-3 `divMod` 4294967295 = (0,3)
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-4294967293 `div` 4294967293 = 1
-4294967293 `div` 4294967294 = 0
-4294967293 `div` 4294967295 = 0
-4294967293 `div` 1 = 4294967293
-4294967293 `div` 2 = 2147483646
-4294967293 `div` 3 = 1431655764
-
-4294967294 `div` 4294967293 = 1
-4294967294 `div` 4294967294 = 1
-4294967294 `div` 4294967295 = 0
-4294967294 `div` 1 = 4294967294
-4294967294 `div` 2 = 2147483647
-4294967294 `div` 3 = 1431655764
-
-4294967295 `div` 4294967293 = 1
-4294967295 `div` 4294967294 = 1
-4294967295 `div` 4294967295 = 1
-4294967295 `div` 1 = 4294967295
-4294967295 `div` 2 = 2147483647
-4294967295 `div` 3 = 1431655765
-
-0 `div` 4294967293 = 0
-0 `div` 4294967294 = 0
-0 `div` 4294967295 = 0
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 4294967293 = 0
-1 `div` 4294967294 = 0
-1 `div` 4294967295 = 0
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 4294967293 = 0
-2 `div` 4294967294 = 0
-2 `div` 4294967295 = 0
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 4294967293 = 0
-3 `div` 4294967294 = 0
-3 `div` 4294967295 = 0
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-4294967293 `mod` 4294967293 = 0
-4294967293 `mod` 4294967294 = 4294967293
-4294967293 `mod` 4294967295 = 4294967293
-4294967293 `mod` 1 = 0
-4294967293 `mod` 2 = 1
-4294967293 `mod` 3 = 1
-
-4294967294 `mod` 4294967293 = 1
-4294967294 `mod` 4294967294 = 0
-4294967294 `mod` 4294967295 = 4294967294
-4294967294 `mod` 1 = 0
-4294967294 `mod` 2 = 0
-4294967294 `mod` 3 = 2
-
-4294967295 `mod` 4294967293 = 2
-4294967295 `mod` 4294967294 = 1
-4294967295 `mod` 4294967295 = 0
-4294967295 `mod` 1 = 0
-4294967295 `mod` 2 = 1
-4294967295 `mod` 3 = 0
-
-0 `mod` 4294967293 = 0
-0 `mod` 4294967294 = 0
-0 `mod` 4294967295 = 0
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 4294967293 = 1
-1 `mod` 4294967294 = 1
-1 `mod` 4294967295 = 1
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 4294967293 = 2
-2 `mod` 4294967294 = 2
-2 `mod` 4294967295 = 2
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 4294967293 = 3
-3 `mod` 4294967294 = 3
-3 `mod` 4294967295 = 3
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-4294967293 `quotRem` 4294967293 = (1,0)
-4294967293 `quotRem` 4294967294 = (0,4294967293)
-4294967293 `quotRem` 4294967295 = (0,4294967293)
-4294967293 `quotRem` 1 = (4294967293,0)
-4294967293 `quotRem` 2 = (2147483646,1)
-4294967293 `quotRem` 3 = (1431655764,1)
-
-4294967294 `quotRem` 4294967293 = (1,1)
-4294967294 `quotRem` 4294967294 = (1,0)
-4294967294 `quotRem` 4294967295 = (0,4294967294)
-4294967294 `quotRem` 1 = (4294967294,0)
-4294967294 `quotRem` 2 = (2147483647,0)
-4294967294 `quotRem` 3 = (1431655764,2)
-
-4294967295 `quotRem` 4294967293 = (1,2)
-4294967295 `quotRem` 4294967294 = (1,1)
-4294967295 `quotRem` 4294967295 = (1,0)
-4294967295 `quotRem` 1 = (4294967295,0)
-4294967295 `quotRem` 2 = (2147483647,1)
-4294967295 `quotRem` 3 = (1431655765,0)
-
-0 `quotRem` 4294967293 = (0,0)
-0 `quotRem` 4294967294 = (0,0)
-0 `quotRem` 4294967295 = (0,0)
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 4294967293 = (0,1)
-1 `quotRem` 4294967294 = (0,1)
-1 `quotRem` 4294967295 = (0,1)
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 4294967293 = (0,2)
-2 `quotRem` 4294967294 = (0,2)
-2 `quotRem` 4294967295 = (0,2)
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 4294967293 = (0,3)
-3 `quotRem` 4294967294 = (0,3)
-3 `quotRem` 4294967295 = (0,3)
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-4294967293 `quot` 4294967293 = 1
-4294967293 `quot` 4294967294 = 0
-4294967293 `quot` 4294967295 = 0
-4294967293 `quot` 1 = 4294967293
-4294967293 `quot` 2 = 2147483646
-4294967293 `quot` 3 = 1431655764
-
-4294967294 `quot` 4294967293 = 1
-4294967294 `quot` 4294967294 = 1
-4294967294 `quot` 4294967295 = 0
-4294967294 `quot` 1 = 4294967294
-4294967294 `quot` 2 = 2147483647
-4294967294 `quot` 3 = 1431655764
-
-4294967295 `quot` 4294967293 = 1
-4294967295 `quot` 4294967294 = 1
-4294967295 `quot` 4294967295 = 1
-4294967295 `quot` 1 = 4294967295
-4294967295 `quot` 2 = 2147483647
-4294967295 `quot` 3 = 1431655765
-
-0 `quot` 4294967293 = 0
-0 `quot` 4294967294 = 0
-0 `quot` 4294967295 = 0
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 4294967293 = 0
-1 `quot` 4294967294 = 0
-1 `quot` 4294967295 = 0
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 4294967293 = 0
-2 `quot` 4294967294 = 0
-2 `quot` 4294967295 = 0
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 4294967293 = 0
-3 `quot` 4294967294 = 0
-3 `quot` 4294967295 = 0
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-4294967293 `rem` 4294967293 = 0
-4294967293 `rem` 4294967294 = 4294967293
-4294967293 `rem` 4294967295 = 4294967293
-4294967293 `rem` 1 = 0
-4294967293 `rem` 2 = 1
-4294967293 `rem` 3 = 1
-
-4294967294 `rem` 4294967293 = 1
-4294967294 `rem` 4294967294 = 0
-4294967294 `rem` 4294967295 = 4294967294
-4294967294 `rem` 1 = 0
-4294967294 `rem` 2 = 0
-4294967294 `rem` 3 = 2
-
-4294967295 `rem` 4294967293 = 2
-4294967295 `rem` 4294967294 = 1
-4294967295 `rem` 4294967295 = 0
-4294967295 `rem` 1 = 0
-4294967295 `rem` 2 = 1
-4294967295 `rem` 3 = 0
-
-0 `rem` 4294967293 = 0
-0 `rem` 4294967294 = 0
-0 `rem` 4294967295 = 0
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 4294967293 = 1
-1 `rem` 4294967294 = 1
-1 `rem` 4294967295 = 1
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 4294967293 = 2
-2 `rem` 4294967294 = 2
-2 `rem` 4294967295 = 2
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 4294967293 = 3
-3 `rem` 4294967294 = 3
-3 `rem` 4294967295 = 3
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,4294967295]
-Int : [0,0,4294967295]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [0,0,4294967295]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [0,0,4294967295]
-testBits
-4294967293 .&. 4294967293 = 4294967293
-4294967293 .&. 4294967294 = 4294967292
-4294967293 .&. 4294967295 = 4294967293
-4294967293 .&. 1 = 1
-4294967293 .&. 2 = 0
-4294967293 .&. 3 = 1
-
-4294967294 .&. 4294967293 = 4294967292
-4294967294 .&. 4294967294 = 4294967294
-4294967294 .&. 4294967295 = 4294967294
-4294967294 .&. 1 = 0
-4294967294 .&. 2 = 2
-4294967294 .&. 3 = 2
-
-4294967295 .&. 4294967293 = 4294967293
-4294967295 .&. 4294967294 = 4294967294
-4294967295 .&. 4294967295 = 4294967295
-4294967295 .&. 1 = 1
-4294967295 .&. 2 = 2
-4294967295 .&. 3 = 3
-
-0 .&. 4294967293 = 0
-0 .&. 4294967294 = 0
-0 .&. 4294967295 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 4294967293 = 1
-1 .&. 4294967294 = 0
-1 .&. 4294967295 = 1
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 4294967293 = 0
-2 .&. 4294967294 = 2
-2 .&. 4294967295 = 2
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 4294967293 = 1
-3 .&. 4294967294 = 2
-3 .&. 4294967295 = 3
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-4294967293 .|. 4294967293 = 4294967293
-4294967293 .|. 4294967294 = 4294967295
-4294967293 .|. 4294967295 = 4294967295
-4294967293 .|. 1 = 4294967293
-4294967293 .|. 2 = 4294967295
-4294967293 .|. 3 = 4294967295
-
-4294967294 .|. 4294967293 = 4294967295
-4294967294 .|. 4294967294 = 4294967294
-4294967294 .|. 4294967295 = 4294967295
-4294967294 .|. 1 = 4294967295
-4294967294 .|. 2 = 4294967294
-4294967294 .|. 3 = 4294967295
-
-4294967295 .|. 4294967293 = 4294967295
-4294967295 .|. 4294967294 = 4294967295
-4294967295 .|. 4294967295 = 4294967295
-4294967295 .|. 1 = 4294967295
-4294967295 .|. 2 = 4294967295
-4294967295 .|. 3 = 4294967295
-
-0 .|. 4294967293 = 4294967293
-0 .|. 4294967294 = 4294967294
-0 .|. 4294967295 = 4294967295
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 4294967293 = 4294967293
-1 .|. 4294967294 = 4294967295
-1 .|. 4294967295 = 4294967295
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 4294967293 = 4294967295
-2 .|. 4294967294 = 4294967294
-2 .|. 4294967295 = 4294967295
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 4294967293 = 4294967295
-3 .|. 4294967294 = 4294967295
-3 .|. 4294967295 = 4294967295
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-4294967293 `xor` 4294967293 = 0
-4294967293 `xor` 4294967294 = 3
-4294967293 `xor` 4294967295 = 2
-4294967293 `xor` 1 = 4294967292
-4294967293 `xor` 2 = 4294967295
-4294967293 `xor` 3 = 4294967294
-
-4294967294 `xor` 4294967293 = 3
-4294967294 `xor` 4294967294 = 0
-4294967294 `xor` 4294967295 = 1
-4294967294 `xor` 1 = 4294967295
-4294967294 `xor` 2 = 4294967292
-4294967294 `xor` 3 = 4294967293
-
-4294967295 `xor` 4294967293 = 2
-4294967295 `xor` 4294967294 = 1
-4294967295 `xor` 4294967295 = 0
-4294967295 `xor` 1 = 4294967294
-4294967295 `xor` 2 = 4294967293
-4294967295 `xor` 3 = 4294967292
-
-0 `xor` 4294967293 = 4294967293
-0 `xor` 4294967294 = 4294967294
-0 `xor` 4294967295 = 4294967295
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 4294967293 = 4294967292
-1 `xor` 4294967294 = 4294967295
-1 `xor` 4294967295 = 4294967294
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 4294967293 = 4294967295
-2 `xor` 4294967294 = 4294967292
-2 `xor` 4294967295 = 4294967293
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 4294967293 = 4294967294
-3 `xor` 4294967294 = 4294967293
-3 `xor` 4294967295 = 4294967292
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 4294967293 = 2
-complement 4294967294 = 1
-complement 4294967295 = 0
-complement 0 = 4294967295
-complement 1 = 4294967294
-complement 2 = 4294967293
-complement 3 = 4294967292
-#
-4294967293 `shiftL` 0 = 4294967293
-4294967293 `shiftL` 1 = 4294967290
-4294967293 `shiftL` 2 = 4294967284
-4294967293 `shiftL` 3 = 4294967272
-4294967293 `shiftL` 32 = 0
-4294967293 `shiftL` 64 = 0
-
-4294967294 `shiftL` 0 = 4294967294
-4294967294 `shiftL` 1 = 4294967292
-4294967294 `shiftL` 2 = 4294967288
-4294967294 `shiftL` 3 = 4294967280
-4294967294 `shiftL` 32 = 0
-4294967294 `shiftL` 64 = 0
-
-4294967295 `shiftL` 0 = 4294967295
-4294967295 `shiftL` 1 = 4294967294
-4294967295 `shiftL` 2 = 4294967292
-4294967295 `shiftL` 3 = 4294967288
-4294967295 `shiftL` 32 = 0
-4294967295 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
-4294967293 `shiftR` 0 = 4294967293
-4294967293 `shiftR` 1 = 2147483646
-4294967293 `shiftR` 2 = 1073741823
-4294967293 `shiftR` 3 = 536870911
-4294967293 `shiftR` 32 = 0
-4294967293 `shiftR` 64 = 0
-
-4294967294 `shiftR` 0 = 4294967294
-4294967294 `shiftR` 1 = 2147483647
-4294967294 `shiftR` 2 = 1073741823
-4294967294 `shiftR` 3 = 536870911
-4294967294 `shiftR` 32 = 0
-4294967294 `shiftR` 64 = 0
-
-4294967295 `shiftR` 0 = 4294967295
-4294967295 `shiftR` 1 = 2147483647
-4294967295 `shiftR` 2 = 1073741823
-4294967295 `shiftR` 3 = 536870911
-4294967295 `shiftR` 32 = 0
-4294967295 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-4294967293 `rotate` -3 = 3221225471
-4294967293 `rotate` -2 = 2147483647
-4294967293 `rotate` -1 = 4294967294
-4294967293 `rotate` 0 = 4294967293
-4294967293 `rotate` 1 = 4294967291
-4294967293 `rotate` 2 = 4294967287
-4294967293 `rotate` 3 = 4294967279
-
-4294967294 `rotate` -3 = 3758096383
-4294967294 `rotate` -2 = 3221225471
-4294967294 `rotate` -1 = 2147483647
-4294967294 `rotate` 0 = 4294967294
-4294967294 `rotate` 1 = 4294967293
-4294967294 `rotate` 2 = 4294967291
-4294967294 `rotate` 3 = 4294967287
-
-4294967295 `rotate` -3 = 4294967295
-4294967295 `rotate` -2 = 4294967295
-4294967295 `rotate` -1 = 4294967295
-4294967295 `rotate` 0 = 4294967295
-4294967295 `rotate` 1 = 4294967295
-4294967295 `rotate` 2 = 4294967295
-4294967295 `rotate` 3 = 4294967295
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 536870912
-1 `rotate` -2 = 1073741824
-1 `rotate` -1 = 2147483648
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 1073741824
-2 `rotate` -2 = 2147483648
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 1610612736
-3 `rotate` -2 = 3221225472
-3 `rotate` -1 = 2147483649
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-4294967293 `setBit` 0 = 4294967293
-4294967293 `setBit` 1 = 4294967295
-4294967293 `setBit` 2 = 4294967293
-4294967293 `setBit` 3 = 4294967293
-4294967293 `setBit` 32 = 4294967293
-4294967293 `setBit` 64 = 4294967293
-
-4294967294 `setBit` 0 = 4294967295
-4294967294 `setBit` 1 = 4294967294
-4294967294 `setBit` 2 = 4294967294
-4294967294 `setBit` 3 = 4294967294
-4294967294 `setBit` 32 = 4294967294
-4294967294 `setBit` 64 = 4294967294
-
-4294967295 `setBit` 0 = 4294967295
-4294967295 `setBit` 1 = 4294967295
-4294967295 `setBit` 2 = 4294967295
-4294967295 `setBit` 3 = 4294967295
-4294967295 `setBit` 32 = 4294967295
-4294967295 `setBit` 64 = 4294967295
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
-4294967293 `clearBit` 0 = 4294967292
-4294967293 `clearBit` 1 = 4294967293
-4294967293 `clearBit` 2 = 4294967289
-4294967293 `clearBit` 3 = 4294967285
-4294967293 `clearBit` 32 = 4294967293
-4294967293 `clearBit` 64 = 4294967293
-
-4294967294 `clearBit` 0 = 4294967294
-4294967294 `clearBit` 1 = 4294967292
-4294967294 `clearBit` 2 = 4294967290
-4294967294 `clearBit` 3 = 4294967286
-4294967294 `clearBit` 32 = 4294967294
-4294967294 `clearBit` 64 = 4294967294
-
-4294967295 `clearBit` 0 = 4294967294
-4294967295 `clearBit` 1 = 4294967293
-4294967295 `clearBit` 2 = 4294967291
-4294967295 `clearBit` 3 = 4294967287
-4294967295 `clearBit` 32 = 4294967295
-4294967295 `clearBit` 64 = 4294967295
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-4294967293 `complementBit` 0 = 4294967292
-4294967293 `complementBit` 1 = 4294967295
-4294967293 `complementBit` 2 = 4294967289
-4294967293 `complementBit` 3 = 4294967285
-4294967293 `complementBit` 32 = 4294967293
-4294967293 `complementBit` 64 = 4294967293
-
-4294967294 `complementBit` 0 = 4294967295
-4294967294 `complementBit` 1 = 4294967292
-4294967294 `complementBit` 2 = 4294967290
-4294967294 `complementBit` 3 = 4294967286
-4294967294 `complementBit` 32 = 4294967294
-4294967294 `complementBit` 64 = 4294967294
-
-4294967295 `complementBit` 0 = 4294967294
-4294967295 `complementBit` 1 = 4294967293
-4294967295 `complementBit` 2 = 4294967291
-4294967295 `complementBit` 3 = 4294967287
-4294967295 `complementBit` 32 = 4294967295
-4294967295 `complementBit` 64 = 4294967295
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
-4294967293 `testBit` 0 = True
-4294967293 `testBit` 1 = False
-4294967293 `testBit` 2 = True
-4294967293 `testBit` 3 = True
-4294967293 `testBit` 32 = False
-4294967293 `testBit` 64 = False
-
-4294967294 `testBit` 0 = False
-4294967294 `testBit` 1 = True
-4294967294 `testBit` 2 = True
-4294967294 `testBit` 3 = True
-4294967294 `testBit` 32 = False
-4294967294 `testBit` 64 = False
-
-4294967295 `testBit` 0 = True
-4294967295 `testBit` 1 = True
-4294967295 `testBit` 2 = True
-4294967295 `testBit` 3 = True
-4294967295 `testBit` 32 = False
-4294967295 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 4294967293 = 32
-bitSize 4294967294 = 32
-bitSize 4294967295 = 32
-bitSize 0 = 32
-bitSize 1 = 32
-bitSize 2 = 32
-bitSize 3 = 32
-#
-isSigned 4294967293 = False
-isSigned 4294967294 = False
-isSigned 4294967295 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Word64
---------------------------------
-testBounded
-(18446744073709551615,0,1)
-(18446744073709551614,18446744073709551615,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[18446744073709551613,18446744073709551614,18446744073709551615,0,1,2,3]
-[18446744073709551613,18446744073709551614,18446744073709551615,0,1,2,3]
-testEq
-18446744073709551613 == 18446744073709551613 = True
-18446744073709551613 == 18446744073709551614 = False
-18446744073709551613 == 18446744073709551615 = False
-18446744073709551613 == 0 = False
-18446744073709551613 == 1 = False
-18446744073709551613 == 2 = False
-18446744073709551613 == 3 = False
-
-18446744073709551614 == 18446744073709551613 = False
-18446744073709551614 == 18446744073709551614 = True
-18446744073709551614 == 18446744073709551615 = False
-18446744073709551614 == 0 = False
-18446744073709551614 == 1 = False
-18446744073709551614 == 2 = False
-18446744073709551614 == 3 = False
-
-18446744073709551615 == 18446744073709551613 = False
-18446744073709551615 == 18446744073709551614 = False
-18446744073709551615 == 18446744073709551615 = True
-18446744073709551615 == 0 = False
-18446744073709551615 == 1 = False
-18446744073709551615 == 2 = False
-18446744073709551615 == 3 = False
-
-0 == 18446744073709551613 = False
-0 == 18446744073709551614 = False
-0 == 18446744073709551615 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 18446744073709551613 = False
-1 == 18446744073709551614 = False
-1 == 18446744073709551615 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 18446744073709551613 = False
-2 == 18446744073709551614 = False
-2 == 18446744073709551615 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 18446744073709551613 = False
-3 == 18446744073709551614 = False
-3 == 18446744073709551615 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-18446744073709551613 /= 18446744073709551613 = False
-18446744073709551613 /= 18446744073709551614 = True
-18446744073709551613 /= 18446744073709551615 = True
-18446744073709551613 /= 0 = True
-18446744073709551613 /= 1 = True
-18446744073709551613 /= 2 = True
-18446744073709551613 /= 3 = True
-
-18446744073709551614 /= 18446744073709551613 = True
-18446744073709551614 /= 18446744073709551614 = False
-18446744073709551614 /= 18446744073709551615 = True
-18446744073709551614 /= 0 = True
-18446744073709551614 /= 1 = True
-18446744073709551614 /= 2 = True
-18446744073709551614 /= 3 = True
-
-18446744073709551615 /= 18446744073709551613 = True
-18446744073709551615 /= 18446744073709551614 = True
-18446744073709551615 /= 18446744073709551615 = False
-18446744073709551615 /= 0 = True
-18446744073709551615 /= 1 = True
-18446744073709551615 /= 2 = True
-18446744073709551615 /= 3 = True
-
-0 /= 18446744073709551613 = True
-0 /= 18446744073709551614 = True
-0 /= 18446744073709551615 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 18446744073709551613 = True
-1 /= 18446744073709551614 = True
-1 /= 18446744073709551615 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 18446744073709551613 = True
-2 /= 18446744073709551614 = True
-2 /= 18446744073709551615 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 18446744073709551613 = True
-3 /= 18446744073709551614 = True
-3 /= 18446744073709551615 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-18446744073709551613 <= 18446744073709551613 = True
-18446744073709551613 <= 18446744073709551614 = True
-18446744073709551613 <= 18446744073709551615 = True
-18446744073709551613 <= 0 = False
-18446744073709551613 <= 1 = False
-18446744073709551613 <= 2 = False
-18446744073709551613 <= 3 = False
-
-18446744073709551614 <= 18446744073709551613 = False
-18446744073709551614 <= 18446744073709551614 = True
-18446744073709551614 <= 18446744073709551615 = True
-18446744073709551614 <= 0 = False
-18446744073709551614 <= 1 = False
-18446744073709551614 <= 2 = False
-18446744073709551614 <= 3 = False
-
-18446744073709551615 <= 18446744073709551613 = False
-18446744073709551615 <= 18446744073709551614 = False
-18446744073709551615 <= 18446744073709551615 = True
-18446744073709551615 <= 0 = False
-18446744073709551615 <= 1 = False
-18446744073709551615 <= 2 = False
-18446744073709551615 <= 3 = False
-
-0 <= 18446744073709551613 = True
-0 <= 18446744073709551614 = True
-0 <= 18446744073709551615 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 18446744073709551613 = True
-1 <= 18446744073709551614 = True
-1 <= 18446744073709551615 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 18446744073709551613 = True
-2 <= 18446744073709551614 = True
-2 <= 18446744073709551615 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 18446744073709551613 = True
-3 <= 18446744073709551614 = True
-3 <= 18446744073709551615 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-18446744073709551613 < 18446744073709551613 = False
-18446744073709551613 < 18446744073709551614 = True
-18446744073709551613 < 18446744073709551615 = True
-18446744073709551613 < 0 = False
-18446744073709551613 < 1 = False
-18446744073709551613 < 2 = False
-18446744073709551613 < 3 = False
-
-18446744073709551614 < 18446744073709551613 = False
-18446744073709551614 < 18446744073709551614 = False
-18446744073709551614 < 18446744073709551615 = True
-18446744073709551614 < 0 = False
-18446744073709551614 < 1 = False
-18446744073709551614 < 2 = False
-18446744073709551614 < 3 = False
-
-18446744073709551615 < 18446744073709551613 = False
-18446744073709551615 < 18446744073709551614 = False
-18446744073709551615 < 18446744073709551615 = False
-18446744073709551615 < 0 = False
-18446744073709551615 < 1 = False
-18446744073709551615 < 2 = False
-18446744073709551615 < 3 = False
-
-0 < 18446744073709551613 = True
-0 < 18446744073709551614 = True
-0 < 18446744073709551615 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 18446744073709551613 = True
-1 < 18446744073709551614 = True
-1 < 18446744073709551615 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 18446744073709551613 = True
-2 < 18446744073709551614 = True
-2 < 18446744073709551615 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 18446744073709551613 = True
-3 < 18446744073709551614 = True
-3 < 18446744073709551615 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-18446744073709551613 > 18446744073709551613 = False
-18446744073709551613 > 18446744073709551614 = False
-18446744073709551613 > 18446744073709551615 = False
-18446744073709551613 > 0 = True
-18446744073709551613 > 1 = True
-18446744073709551613 > 2 = True
-18446744073709551613 > 3 = True
-
-18446744073709551614 > 18446744073709551613 = True
-18446744073709551614 > 18446744073709551614 = False
-18446744073709551614 > 18446744073709551615 = False
-18446744073709551614 > 0 = True
-18446744073709551614 > 1 = True
-18446744073709551614 > 2 = True
-18446744073709551614 > 3 = True
-
-18446744073709551615 > 18446744073709551613 = True
-18446744073709551615 > 18446744073709551614 = True
-18446744073709551615 > 18446744073709551615 = False
-18446744073709551615 > 0 = True
-18446744073709551615 > 1 = True
-18446744073709551615 > 2 = True
-18446744073709551615 > 3 = True
-
-0 > 18446744073709551613 = False
-0 > 18446744073709551614 = False
-0 > 18446744073709551615 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 18446744073709551613 = False
-1 > 18446744073709551614 = False
-1 > 18446744073709551615 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 18446744073709551613 = False
-2 > 18446744073709551614 = False
-2 > 18446744073709551615 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 18446744073709551613 = False
-3 > 18446744073709551614 = False
-3 > 18446744073709551615 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-18446744073709551613 >= 18446744073709551613 = True
-18446744073709551613 >= 18446744073709551614 = False
-18446744073709551613 >= 18446744073709551615 = False
-18446744073709551613 >= 0 = True
-18446744073709551613 >= 1 = True
-18446744073709551613 >= 2 = True
-18446744073709551613 >= 3 = True
-
-18446744073709551614 >= 18446744073709551613 = True
-18446744073709551614 >= 18446744073709551614 = True
-18446744073709551614 >= 18446744073709551615 = False
-18446744073709551614 >= 0 = True
-18446744073709551614 >= 1 = True
-18446744073709551614 >= 2 = True
-18446744073709551614 >= 3 = True
-
-18446744073709551615 >= 18446744073709551613 = True
-18446744073709551615 >= 18446744073709551614 = True
-18446744073709551615 >= 18446744073709551615 = True
-18446744073709551615 >= 0 = True
-18446744073709551615 >= 1 = True
-18446744073709551615 >= 2 = True
-18446744073709551615 >= 3 = True
-
-0 >= 18446744073709551613 = False
-0 >= 18446744073709551614 = False
-0 >= 18446744073709551615 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 18446744073709551613 = False
-1 >= 18446744073709551614 = False
-1 >= 18446744073709551615 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 18446744073709551613 = False
-2 >= 18446744073709551614 = False
-2 >= 18446744073709551615 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 18446744073709551613 = False
-3 >= 18446744073709551614 = False
-3 >= 18446744073709551615 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-18446744073709551613 `compare` 18446744073709551613 = EQ
-18446744073709551613 `compare` 18446744073709551614 = LT
-18446744073709551613 `compare` 18446744073709551615 = LT
-18446744073709551613 `compare` 0 = GT
-18446744073709551613 `compare` 1 = GT
-18446744073709551613 `compare` 2 = GT
-18446744073709551613 `compare` 3 = GT
-
-18446744073709551614 `compare` 18446744073709551613 = GT
-18446744073709551614 `compare` 18446744073709551614 = EQ
-18446744073709551614 `compare` 18446744073709551615 = LT
-18446744073709551614 `compare` 0 = GT
-18446744073709551614 `compare` 1 = GT
-18446744073709551614 `compare` 2 = GT
-18446744073709551614 `compare` 3 = GT
-
-18446744073709551615 `compare` 18446744073709551613 = GT
-18446744073709551615 `compare` 18446744073709551614 = GT
-18446744073709551615 `compare` 18446744073709551615 = EQ
-18446744073709551615 `compare` 0 = GT
-18446744073709551615 `compare` 1 = GT
-18446744073709551615 `compare` 2 = GT
-18446744073709551615 `compare` 3 = GT
-
-0 `compare` 18446744073709551613 = LT
-0 `compare` 18446744073709551614 = LT
-0 `compare` 18446744073709551615 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 18446744073709551613 = LT
-1 `compare` 18446744073709551614 = LT
-1 `compare` 18446744073709551615 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 18446744073709551613 = LT
-2 `compare` 18446744073709551614 = LT
-2 `compare` 18446744073709551615 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 18446744073709551613 = LT
-3 `compare` 18446744073709551614 = LT
-3 `compare` 18446744073709551615 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-18446744073709551613 + 18446744073709551613 = 18446744073709551610
-18446744073709551613 + 18446744073709551614 = 18446744073709551611
-18446744073709551613 + 18446744073709551615 = 18446744073709551612
-18446744073709551613 + 0 = 18446744073709551613
-18446744073709551613 + 1 = 18446744073709551614
-18446744073709551613 + 2 = 18446744073709551615
-18446744073709551613 + 3 = 0
-
-18446744073709551614 + 18446744073709551613 = 18446744073709551611
-18446744073709551614 + 18446744073709551614 = 18446744073709551612
-18446744073709551614 + 18446744073709551615 = 18446744073709551613
-18446744073709551614 + 0 = 18446744073709551614
-18446744073709551614 + 1 = 18446744073709551615
-18446744073709551614 + 2 = 0
-18446744073709551614 + 3 = 1
-
-18446744073709551615 + 18446744073709551613 = 18446744073709551612
-18446744073709551615 + 18446744073709551614 = 18446744073709551613
-18446744073709551615 + 18446744073709551615 = 18446744073709551614
-18446744073709551615 + 0 = 18446744073709551615
-18446744073709551615 + 1 = 0
-18446744073709551615 + 2 = 1
-18446744073709551615 + 3 = 2
-
-0 + 18446744073709551613 = 18446744073709551613
-0 + 18446744073709551614 = 18446744073709551614
-0 + 18446744073709551615 = 18446744073709551615
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 18446744073709551613 = 18446744073709551614
-1 + 18446744073709551614 = 18446744073709551615
-1 + 18446744073709551615 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 18446744073709551613 = 18446744073709551615
-2 + 18446744073709551614 = 0
-2 + 18446744073709551615 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 18446744073709551613 = 0
-3 + 18446744073709551614 = 1
-3 + 18446744073709551615 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-18446744073709551613 - 18446744073709551613 = 0
-18446744073709551613 - 18446744073709551614 = 18446744073709551615
-18446744073709551613 - 18446744073709551615 = 18446744073709551614
-18446744073709551613 - 0 = 18446744073709551613
-18446744073709551613 - 1 = 18446744073709551612
-18446744073709551613 - 2 = 18446744073709551611
-18446744073709551613 - 3 = 18446744073709551610
-
-18446744073709551614 - 18446744073709551613 = 1
-18446744073709551614 - 18446744073709551614 = 0
-18446744073709551614 - 18446744073709551615 = 18446744073709551615
-18446744073709551614 - 0 = 18446744073709551614
-18446744073709551614 - 1 = 18446744073709551613
-18446744073709551614 - 2 = 18446744073709551612
-18446744073709551614 - 3 = 18446744073709551611
-
-18446744073709551615 - 18446744073709551613 = 2
-18446744073709551615 - 18446744073709551614 = 1
-18446744073709551615 - 18446744073709551615 = 0
-18446744073709551615 - 0 = 18446744073709551615
-18446744073709551615 - 1 = 18446744073709551614
-18446744073709551615 - 2 = 18446744073709551613
-18446744073709551615 - 3 = 18446744073709551612
-
-0 - 18446744073709551613 = 3
-0 - 18446744073709551614 = 2
-0 - 18446744073709551615 = 1
-0 - 0 = 0
-0 - 1 = 18446744073709551615
-0 - 2 = 18446744073709551614
-0 - 3 = 18446744073709551613
-
-1 - 18446744073709551613 = 4
-1 - 18446744073709551614 = 3
-1 - 18446744073709551615 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 18446744073709551615
-1 - 3 = 18446744073709551614
-
-2 - 18446744073709551613 = 5
-2 - 18446744073709551614 = 4
-2 - 18446744073709551615 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 18446744073709551615
-
-3 - 18446744073709551613 = 6
-3 - 18446744073709551614 = 5
-3 - 18446744073709551615 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-18446744073709551613 * 18446744073709551613 = 9
-18446744073709551613 * 18446744073709551614 = 6
-18446744073709551613 * 18446744073709551615 = 3
-18446744073709551613 * 0 = 0
-18446744073709551613 * 1 = 18446744073709551613
-18446744073709551613 * 2 = 18446744073709551610
-18446744073709551613 * 3 = 18446744073709551607
-
-18446744073709551614 * 18446744073709551613 = 6
-18446744073709551614 * 18446744073709551614 = 4
-18446744073709551614 * 18446744073709551615 = 2
-18446744073709551614 * 0 = 0
-18446744073709551614 * 1 = 18446744073709551614
-18446744073709551614 * 2 = 18446744073709551612
-18446744073709551614 * 3 = 18446744073709551610
-
-18446744073709551615 * 18446744073709551613 = 3
-18446744073709551615 * 18446744073709551614 = 2
-18446744073709551615 * 18446744073709551615 = 1
-18446744073709551615 * 0 = 0
-18446744073709551615 * 1 = 18446744073709551615
-18446744073709551615 * 2 = 18446744073709551614
-18446744073709551615 * 3 = 18446744073709551613
-
-0 * 18446744073709551613 = 0
-0 * 18446744073709551614 = 0
-0 * 18446744073709551615 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 18446744073709551613 = 18446744073709551613
-1 * 18446744073709551614 = 18446744073709551614
-1 * 18446744073709551615 = 18446744073709551615
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 18446744073709551613 = 18446744073709551610
-2 * 18446744073709551614 = 18446744073709551612
-2 * 18446744073709551615 = 18446744073709551614
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 18446744073709551613 = 18446744073709551607
-3 * 18446744073709551614 = 18446744073709551610
-3 * 18446744073709551615 = 18446744073709551613
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 18446744073709551613 = 3
-negate 18446744073709551614 = 2
-negate 18446744073709551615 = 1
-negate 0 = 0
-negate 1 = 18446744073709551615
-negate 2 = 18446744073709551614
-negate 3 = 18446744073709551613
-#
-testReal
-toRational 18446744073709551613 = 18446744073709551613 % 1
-toRational 18446744073709551614 = 18446744073709551614 % 1
-toRational 18446744073709551615 = 18446744073709551615 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-18446744073709551613 `divMod` 18446744073709551613 = (1,0)
-18446744073709551613 `divMod` 18446744073709551614 = (0,18446744073709551613)
-18446744073709551613 `divMod` 18446744073709551615 = (0,18446744073709551613)
-18446744073709551613 `divMod` 1 = (18446744073709551613,0)
-18446744073709551613 `divMod` 2 = (9223372036854775806,1)
-18446744073709551613 `divMod` 3 = (6148914691236517204,1)
-
-18446744073709551614 `divMod` 18446744073709551613 = (1,1)
-18446744073709551614 `divMod` 18446744073709551614 = (1,0)
-18446744073709551614 `divMod` 18446744073709551615 = (0,18446744073709551614)
-18446744073709551614 `divMod` 1 = (18446744073709551614,0)
-18446744073709551614 `divMod` 2 = (9223372036854775807,0)
-18446744073709551614 `divMod` 3 = (6148914691236517204,2)
-
-18446744073709551615 `divMod` 18446744073709551613 = (1,2)
-18446744073709551615 `divMod` 18446744073709551614 = (1,1)
-18446744073709551615 `divMod` 18446744073709551615 = (1,0)
-18446744073709551615 `divMod` 1 = (18446744073709551615,0)
-18446744073709551615 `divMod` 2 = (9223372036854775807,1)
-18446744073709551615 `divMod` 3 = (6148914691236517205,0)
-
-0 `divMod` 18446744073709551613 = (0,0)
-0 `divMod` 18446744073709551614 = (0,0)
-0 `divMod` 18446744073709551615 = (0,0)
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 18446744073709551613 = (0,1)
-1 `divMod` 18446744073709551614 = (0,1)
-1 `divMod` 18446744073709551615 = (0,1)
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 18446744073709551613 = (0,2)
-2 `divMod` 18446744073709551614 = (0,2)
-2 `divMod` 18446744073709551615 = (0,2)
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 18446744073709551613 = (0,3)
-3 `divMod` 18446744073709551614 = (0,3)
-3 `divMod` 18446744073709551615 = (0,3)
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-18446744073709551613 `div` 18446744073709551613 = 1
-18446744073709551613 `div` 18446744073709551614 = 0
-18446744073709551613 `div` 18446744073709551615 = 0
-18446744073709551613 `div` 1 = 18446744073709551613
-18446744073709551613 `div` 2 = 9223372036854775806
-18446744073709551613 `div` 3 = 6148914691236517204
-
-18446744073709551614 `div` 18446744073709551613 = 1
-18446744073709551614 `div` 18446744073709551614 = 1
-18446744073709551614 `div` 18446744073709551615 = 0
-18446744073709551614 `div` 1 = 18446744073709551614
-18446744073709551614 `div` 2 = 9223372036854775807
-18446744073709551614 `div` 3 = 6148914691236517204
-
-18446744073709551615 `div` 18446744073709551613 = 1
-18446744073709551615 `div` 18446744073709551614 = 1
-18446744073709551615 `div` 18446744073709551615 = 1
-18446744073709551615 `div` 1 = 18446744073709551615
-18446744073709551615 `div` 2 = 9223372036854775807
-18446744073709551615 `div` 3 = 6148914691236517205
-
-0 `div` 18446744073709551613 = 0
-0 `div` 18446744073709551614 = 0
-0 `div` 18446744073709551615 = 0
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 18446744073709551613 = 0
-1 `div` 18446744073709551614 = 0
-1 `div` 18446744073709551615 = 0
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 18446744073709551613 = 0
-2 `div` 18446744073709551614 = 0
-2 `div` 18446744073709551615 = 0
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 18446744073709551613 = 0
-3 `div` 18446744073709551614 = 0
-3 `div` 18446744073709551615 = 0
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-18446744073709551613 `mod` 18446744073709551613 = 0
-18446744073709551613 `mod` 18446744073709551614 = 18446744073709551613
-18446744073709551613 `mod` 18446744073709551615 = 18446744073709551613
-18446744073709551613 `mod` 1 = 0
-18446744073709551613 `mod` 2 = 1
-18446744073709551613 `mod` 3 = 1
-
-18446744073709551614 `mod` 18446744073709551613 = 1
-18446744073709551614 `mod` 18446744073709551614 = 0
-18446744073709551614 `mod` 18446744073709551615 = 18446744073709551614
-18446744073709551614 `mod` 1 = 0
-18446744073709551614 `mod` 2 = 0
-18446744073709551614 `mod` 3 = 2
-
-18446744073709551615 `mod` 18446744073709551613 = 2
-18446744073709551615 `mod` 18446744073709551614 = 1
-18446744073709551615 `mod` 18446744073709551615 = 0
-18446744073709551615 `mod` 1 = 0
-18446744073709551615 `mod` 2 = 1
-18446744073709551615 `mod` 3 = 0
-
-0 `mod` 18446744073709551613 = 0
-0 `mod` 18446744073709551614 = 0
-0 `mod` 18446744073709551615 = 0
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 18446744073709551613 = 1
-1 `mod` 18446744073709551614 = 1
-1 `mod` 18446744073709551615 = 1
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 18446744073709551613 = 2
-2 `mod` 18446744073709551614 = 2
-2 `mod` 18446744073709551615 = 2
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 18446744073709551613 = 3
-3 `mod` 18446744073709551614 = 3
-3 `mod` 18446744073709551615 = 3
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-18446744073709551613 `quotRem` 18446744073709551613 = (1,0)
-18446744073709551613 `quotRem` 18446744073709551614 = (0,18446744073709551613)
-18446744073709551613 `quotRem` 18446744073709551615 = (0,18446744073709551613)
-18446744073709551613 `quotRem` 1 = (18446744073709551613,0)
-18446744073709551613 `quotRem` 2 = (9223372036854775806,1)
-18446744073709551613 `quotRem` 3 = (6148914691236517204,1)
-
-18446744073709551614 `quotRem` 18446744073709551613 = (1,1)
-18446744073709551614 `quotRem` 18446744073709551614 = (1,0)
-18446744073709551614 `quotRem` 18446744073709551615 = (0,18446744073709551614)
-18446744073709551614 `quotRem` 1 = (18446744073709551614,0)
-18446744073709551614 `quotRem` 2 = (9223372036854775807,0)
-18446744073709551614 `quotRem` 3 = (6148914691236517204,2)
-
-18446744073709551615 `quotRem` 18446744073709551613 = (1,2)
-18446744073709551615 `quotRem` 18446744073709551614 = (1,1)
-18446744073709551615 `quotRem` 18446744073709551615 = (1,0)
-18446744073709551615 `quotRem` 1 = (18446744073709551615,0)
-18446744073709551615 `quotRem` 2 = (9223372036854775807,1)
-18446744073709551615 `quotRem` 3 = (6148914691236517205,0)
-
-0 `quotRem` 18446744073709551613 = (0,0)
-0 `quotRem` 18446744073709551614 = (0,0)
-0 `quotRem` 18446744073709551615 = (0,0)
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 18446744073709551613 = (0,1)
-1 `quotRem` 18446744073709551614 = (0,1)
-1 `quotRem` 18446744073709551615 = (0,1)
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 18446744073709551613 = (0,2)
-2 `quotRem` 18446744073709551614 = (0,2)
-2 `quotRem` 18446744073709551615 = (0,2)
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 18446744073709551613 = (0,3)
-3 `quotRem` 18446744073709551614 = (0,3)
-3 `quotRem` 18446744073709551615 = (0,3)
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-18446744073709551613 `quot` 18446744073709551613 = 1
-18446744073709551613 `quot` 18446744073709551614 = 0
-18446744073709551613 `quot` 18446744073709551615 = 0
-18446744073709551613 `quot` 1 = 18446744073709551613
-18446744073709551613 `quot` 2 = 9223372036854775806
-18446744073709551613 `quot` 3 = 6148914691236517204
-
-18446744073709551614 `quot` 18446744073709551613 = 1
-18446744073709551614 `quot` 18446744073709551614 = 1
-18446744073709551614 `quot` 18446744073709551615 = 0
-18446744073709551614 `quot` 1 = 18446744073709551614
-18446744073709551614 `quot` 2 = 9223372036854775807
-18446744073709551614 `quot` 3 = 6148914691236517204
-
-18446744073709551615 `quot` 18446744073709551613 = 1
-18446744073709551615 `quot` 18446744073709551614 = 1
-18446744073709551615 `quot` 18446744073709551615 = 1
-18446744073709551615 `quot` 1 = 18446744073709551615
-18446744073709551615 `quot` 2 = 9223372036854775807
-18446744073709551615 `quot` 3 = 6148914691236517205
-
-0 `quot` 18446744073709551613 = 0
-0 `quot` 18446744073709551614 = 0
-0 `quot` 18446744073709551615 = 0
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 18446744073709551613 = 0
-1 `quot` 18446744073709551614 = 0
-1 `quot` 18446744073709551615 = 0
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 18446744073709551613 = 0
-2 `quot` 18446744073709551614 = 0
-2 `quot` 18446744073709551615 = 0
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 18446744073709551613 = 0
-3 `quot` 18446744073709551614 = 0
-3 `quot` 18446744073709551615 = 0
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-18446744073709551613 `rem` 18446744073709551613 = 0
-18446744073709551613 `rem` 18446744073709551614 = 18446744073709551613
-18446744073709551613 `rem` 18446744073709551615 = 18446744073709551613
-18446744073709551613 `rem` 1 = 0
-18446744073709551613 `rem` 2 = 1
-18446744073709551613 `rem` 3 = 1
-
-18446744073709551614 `rem` 18446744073709551613 = 1
-18446744073709551614 `rem` 18446744073709551614 = 0
-18446744073709551614 `rem` 18446744073709551615 = 18446744073709551614
-18446744073709551614 `rem` 1 = 0
-18446744073709551614 `rem` 2 = 0
-18446744073709551614 `rem` 3 = 2
-
-18446744073709551615 `rem` 18446744073709551613 = 2
-18446744073709551615 `rem` 18446744073709551614 = 1
-18446744073709551615 `rem` 18446744073709551615 = 0
-18446744073709551615 `rem` 1 = 0
-18446744073709551615 `rem` 2 = 1
-18446744073709551615 `rem` 3 = 0
-
-0 `rem` 18446744073709551613 = 0
-0 `rem` 18446744073709551614 = 0
-0 `rem` 18446744073709551615 = 0
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 18446744073709551613 = 1
-1 `rem` 18446744073709551614 = 1
-1 `rem` 18446744073709551615 = 1
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 18446744073709551613 = 2
-2 `rem` 18446744073709551614 = 2
-2 `rem` 18446744073709551615 = 2
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 18446744073709551613 = 3
-3 `rem` 18446744073709551614 = 3
-3 `rem` 18446744073709551615 = 3
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,18446744073709551615]
-Int : [0,0,-1]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [0,0,-1]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [0,0,18446744073709551615]
-testBits
-18446744073709551613 .&. 18446744073709551613 = 18446744073709551613
-18446744073709551613 .&. 18446744073709551614 = 18446744073709551612
-18446744073709551613 .&. 18446744073709551615 = 18446744073709551613
-18446744073709551613 .&. 1 = 1
-18446744073709551613 .&. 2 = 0
-18446744073709551613 .&. 3 = 1
-
-18446744073709551614 .&. 18446744073709551613 = 18446744073709551612
-18446744073709551614 .&. 18446744073709551614 = 18446744073709551614
-18446744073709551614 .&. 18446744073709551615 = 18446744073709551614
-18446744073709551614 .&. 1 = 0
-18446744073709551614 .&. 2 = 2
-18446744073709551614 .&. 3 = 2
-
-18446744073709551615 .&. 18446744073709551613 = 18446744073709551613
-18446744073709551615 .&. 18446744073709551614 = 18446744073709551614
-18446744073709551615 .&. 18446744073709551615 = 18446744073709551615
-18446744073709551615 .&. 1 = 1
-18446744073709551615 .&. 2 = 2
-18446744073709551615 .&. 3 = 3
-
-0 .&. 18446744073709551613 = 0
-0 .&. 18446744073709551614 = 0
-0 .&. 18446744073709551615 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 18446744073709551613 = 1
-1 .&. 18446744073709551614 = 0
-1 .&. 18446744073709551615 = 1
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 18446744073709551613 = 0
-2 .&. 18446744073709551614 = 2
-2 .&. 18446744073709551615 = 2
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 18446744073709551613 = 1
-3 .&. 18446744073709551614 = 2
-3 .&. 18446744073709551615 = 3
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-18446744073709551613 .|. 18446744073709551613 = 18446744073709551613
-18446744073709551613 .|. 18446744073709551614 = 18446744073709551615
-18446744073709551613 .|. 18446744073709551615 = 18446744073709551615
-18446744073709551613 .|. 1 = 18446744073709551613
-18446744073709551613 .|. 2 = 18446744073709551615
-18446744073709551613 .|. 3 = 18446744073709551615
-
-18446744073709551614 .|. 18446744073709551613 = 18446744073709551615
-18446744073709551614 .|. 18446744073709551614 = 18446744073709551614
-18446744073709551614 .|. 18446744073709551615 = 18446744073709551615
-18446744073709551614 .|. 1 = 18446744073709551615
-18446744073709551614 .|. 2 = 18446744073709551614
-18446744073709551614 .|. 3 = 18446744073709551615
-
-18446744073709551615 .|. 18446744073709551613 = 18446744073709551615
-18446744073709551615 .|. 18446744073709551614 = 18446744073709551615
-18446744073709551615 .|. 18446744073709551615 = 18446744073709551615
-18446744073709551615 .|. 1 = 18446744073709551615
-18446744073709551615 .|. 2 = 18446744073709551615
-18446744073709551615 .|. 3 = 18446744073709551615
-
-0 .|. 18446744073709551613 = 18446744073709551613
-0 .|. 18446744073709551614 = 18446744073709551614
-0 .|. 18446744073709551615 = 18446744073709551615
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 18446744073709551613 = 18446744073709551613
-1 .|. 18446744073709551614 = 18446744073709551615
-1 .|. 18446744073709551615 = 18446744073709551615
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 18446744073709551613 = 18446744073709551615
-2 .|. 18446744073709551614 = 18446744073709551614
-2 .|. 18446744073709551615 = 18446744073709551615
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 18446744073709551613 = 18446744073709551615
-3 .|. 18446744073709551614 = 18446744073709551615
-3 .|. 18446744073709551615 = 18446744073709551615
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-18446744073709551613 `xor` 18446744073709551613 = 0
-18446744073709551613 `xor` 18446744073709551614 = 3
-18446744073709551613 `xor` 18446744073709551615 = 2
-18446744073709551613 `xor` 1 = 18446744073709551612
-18446744073709551613 `xor` 2 = 18446744073709551615
-18446744073709551613 `xor` 3 = 18446744073709551614
-
-18446744073709551614 `xor` 18446744073709551613 = 3
-18446744073709551614 `xor` 18446744073709551614 = 0
-18446744073709551614 `xor` 18446744073709551615 = 1
-18446744073709551614 `xor` 1 = 18446744073709551615
-18446744073709551614 `xor` 2 = 18446744073709551612
-18446744073709551614 `xor` 3 = 18446744073709551613
-
-18446744073709551615 `xor` 18446744073709551613 = 2
-18446744073709551615 `xor` 18446744073709551614 = 1
-18446744073709551615 `xor` 18446744073709551615 = 0
-18446744073709551615 `xor` 1 = 18446744073709551614
-18446744073709551615 `xor` 2 = 18446744073709551613
-18446744073709551615 `xor` 3 = 18446744073709551612
-
-0 `xor` 18446744073709551613 = 18446744073709551613
-0 `xor` 18446744073709551614 = 18446744073709551614
-0 `xor` 18446744073709551615 = 18446744073709551615
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 18446744073709551613 = 18446744073709551612
-1 `xor` 18446744073709551614 = 18446744073709551615
-1 `xor` 18446744073709551615 = 18446744073709551614
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 18446744073709551613 = 18446744073709551615
-2 `xor` 18446744073709551614 = 18446744073709551612
-2 `xor` 18446744073709551615 = 18446744073709551613
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 18446744073709551613 = 18446744073709551614
-3 `xor` 18446744073709551614 = 18446744073709551613
-3 `xor` 18446744073709551615 = 18446744073709551612
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 18446744073709551613 = 2
-complement 18446744073709551614 = 1
-complement 18446744073709551615 = 0
-complement 0 = 18446744073709551615
-complement 1 = 18446744073709551614
-complement 2 = 18446744073709551613
-complement 3 = 18446744073709551612
-#
-18446744073709551613 `shiftL` 0 = 18446744073709551613
-18446744073709551613 `shiftL` 1 = 18446744073709551610
-18446744073709551613 `shiftL` 2 = 18446744073709551604
-18446744073709551613 `shiftL` 3 = 18446744073709551592
-18446744073709551613 `shiftL` 32 = 18446744060824649728
-18446744073709551613 `shiftL` 64 = 0
-
-18446744073709551614 `shiftL` 0 = 18446744073709551614
-18446744073709551614 `shiftL` 1 = 18446744073709551612
-18446744073709551614 `shiftL` 2 = 18446744073709551608
-18446744073709551614 `shiftL` 3 = 18446744073709551600
-18446744073709551614 `shiftL` 32 = 18446744065119617024
-18446744073709551614 `shiftL` 64 = 0
-
-18446744073709551615 `shiftL` 0 = 18446744073709551615
-18446744073709551615 `shiftL` 1 = 18446744073709551614
-18446744073709551615 `shiftL` 2 = 18446744073709551612
-18446744073709551615 `shiftL` 3 = 18446744073709551608
-18446744073709551615 `shiftL` 32 = 18446744069414584320
-18446744073709551615 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 0
-
-#
-18446744073709551613 `shiftR` 0 = 18446744073709551613
-18446744073709551613 `shiftR` 1 = 9223372036854775806
-18446744073709551613 `shiftR` 2 = 4611686018427387903
-18446744073709551613 `shiftR` 3 = 2305843009213693951
-18446744073709551613 `shiftR` 32 = 4294967295
-18446744073709551613 `shiftR` 64 = 0
-
-18446744073709551614 `shiftR` 0 = 18446744073709551614
-18446744073709551614 `shiftR` 1 = 9223372036854775807
-18446744073709551614 `shiftR` 2 = 4611686018427387903
-18446744073709551614 `shiftR` 3 = 2305843009213693951
-18446744073709551614 `shiftR` 32 = 4294967295
-18446744073709551614 `shiftR` 64 = 0
-
-18446744073709551615 `shiftR` 0 = 18446744073709551615
-18446744073709551615 `shiftR` 1 = 9223372036854775807
-18446744073709551615 `shiftR` 2 = 4611686018427387903
-18446744073709551615 `shiftR` 3 = 2305843009213693951
-18446744073709551615 `shiftR` 32 = 4294967295
-18446744073709551615 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-18446744073709551613 `rotate` -3 = 13835058055282163711
-18446744073709551613 `rotate` -2 = 9223372036854775807
-18446744073709551613 `rotate` -1 = 18446744073709551614
-18446744073709551613 `rotate` 0 = 18446744073709551613
-18446744073709551613 `rotate` 1 = 18446744073709551611
-18446744073709551613 `rotate` 2 = 18446744073709551607
-18446744073709551613 `rotate` 3 = 18446744073709551599
-
-18446744073709551614 `rotate` -3 = 16140901064495857663
-18446744073709551614 `rotate` -2 = 13835058055282163711
-18446744073709551614 `rotate` -1 = 9223372036854775807
-18446744073709551614 `rotate` 0 = 18446744073709551614
-18446744073709551614 `rotate` 1 = 18446744073709551613
-18446744073709551614 `rotate` 2 = 18446744073709551611
-18446744073709551614 `rotate` 3 = 18446744073709551607
-
-18446744073709551615 `rotate` -3 = 18446744073709551615
-18446744073709551615 `rotate` -2 = 18446744073709551615
-18446744073709551615 `rotate` -1 = 18446744073709551615
-18446744073709551615 `rotate` 0 = 18446744073709551615
-18446744073709551615 `rotate` 1 = 18446744073709551615
-18446744073709551615 `rotate` 2 = 18446744073709551615
-18446744073709551615 `rotate` 3 = 18446744073709551615
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 2305843009213693952
-1 `rotate` -2 = 4611686018427387904
-1 `rotate` -1 = 9223372036854775808
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 4611686018427387904
-2 `rotate` -2 = 9223372036854775808
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 6917529027641081856
-3 `rotate` -2 = 13835058055282163712
-3 `rotate` -1 = 9223372036854775809
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-18446744073709551613 `setBit` 0 = 18446744073709551613
-18446744073709551613 `setBit` 1 = 18446744073709551615
-18446744073709551613 `setBit` 2 = 18446744073709551613
-18446744073709551613 `setBit` 3 = 18446744073709551613
-18446744073709551613 `setBit` 32 = 18446744073709551613
-18446744073709551613 `setBit` 64 = 18446744073709551613
-
-18446744073709551614 `setBit` 0 = 18446744073709551615
-18446744073709551614 `setBit` 1 = 18446744073709551614
-18446744073709551614 `setBit` 2 = 18446744073709551614
-18446744073709551614 `setBit` 3 = 18446744073709551614
-18446744073709551614 `setBit` 32 = 18446744073709551614
-18446744073709551614 `setBit` 64 = 18446744073709551614
-
-18446744073709551615 `setBit` 0 = 18446744073709551615
-18446744073709551615 `setBit` 1 = 18446744073709551615
-18446744073709551615 `setBit` 2 = 18446744073709551615
-18446744073709551615 `setBit` 3 = 18446744073709551615
-18446744073709551615 `setBit` 32 = 18446744073709551615
-18446744073709551615 `setBit` 64 = 18446744073709551615
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 3
-
-#
-18446744073709551613 `clearBit` 0 = 18446744073709551612
-18446744073709551613 `clearBit` 1 = 18446744073709551613
-18446744073709551613 `clearBit` 2 = 18446744073709551609
-18446744073709551613 `clearBit` 3 = 18446744073709551605
-18446744073709551613 `clearBit` 32 = 18446744069414584317
-18446744073709551613 `clearBit` 64 = 18446744073709551613
-
-18446744073709551614 `clearBit` 0 = 18446744073709551614
-18446744073709551614 `clearBit` 1 = 18446744073709551612
-18446744073709551614 `clearBit` 2 = 18446744073709551610
-18446744073709551614 `clearBit` 3 = 18446744073709551606
-18446744073709551614 `clearBit` 32 = 18446744069414584318
-18446744073709551614 `clearBit` 64 = 18446744073709551614
-
-18446744073709551615 `clearBit` 0 = 18446744073709551614
-18446744073709551615 `clearBit` 1 = 18446744073709551613
-18446744073709551615 `clearBit` 2 = 18446744073709551611
-18446744073709551615 `clearBit` 3 = 18446744073709551607
-18446744073709551615 `clearBit` 32 = 18446744069414584319
-18446744073709551615 `clearBit` 64 = 18446744073709551615
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-18446744073709551613 `complementBit` 0 = 18446744073709551612
-18446744073709551613 `complementBit` 1 = 18446744073709551615
-18446744073709551613 `complementBit` 2 = 18446744073709551609
-18446744073709551613 `complementBit` 3 = 18446744073709551605
-18446744073709551613 `complementBit` 32 = 18446744069414584317
-18446744073709551613 `complementBit` 64 = 18446744073709551613
-
-18446744073709551614 `complementBit` 0 = 18446744073709551615
-18446744073709551614 `complementBit` 1 = 18446744073709551612
-18446744073709551614 `complementBit` 2 = 18446744073709551610
-18446744073709551614 `complementBit` 3 = 18446744073709551606
-18446744073709551614 `complementBit` 32 = 18446744069414584318
-18446744073709551614 `complementBit` 64 = 18446744073709551614
-
-18446744073709551615 `complementBit` 0 = 18446744073709551614
-18446744073709551615 `complementBit` 1 = 18446744073709551613
-18446744073709551615 `complementBit` 2 = 18446744073709551611
-18446744073709551615 `complementBit` 3 = 18446744073709551607
-18446744073709551615 `complementBit` 32 = 18446744069414584319
-18446744073709551615 `complementBit` 64 = 18446744073709551615
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 3
-
-#
-18446744073709551613 `testBit` 0 = True
-18446744073709551613 `testBit` 1 = False
-18446744073709551613 `testBit` 2 = True
-18446744073709551613 `testBit` 3 = True
-18446744073709551613 `testBit` 32 = True
-18446744073709551613 `testBit` 64 = False
-
-18446744073709551614 `testBit` 0 = False
-18446744073709551614 `testBit` 1 = True
-18446744073709551614 `testBit` 2 = True
-18446744073709551614 `testBit` 3 = True
-18446744073709551614 `testBit` 32 = True
-18446744073709551614 `testBit` 64 = False
-
-18446744073709551615 `testBit` 0 = True
-18446744073709551615 `testBit` 1 = True
-18446744073709551615 `testBit` 2 = True
-18446744073709551615 `testBit` 3 = True
-18446744073709551615 `testBit` 32 = True
-18446744073709551615 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 18446744073709551613 = 64
-bitSize 18446744073709551614 = 64
-bitSize 18446744073709551615 = 64
-bitSize 0 = 64
-bitSize 1 = 64
-bitSize 2 = 64
-bitSize 3 = 64
-#
-isSigned 18446744073709551613 = False
-isSigned 18446744073709551614 = False
-isSigned 18446744073709551615 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Integer
---------------------------------
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = -12884901888
--3 `shiftL` 64 = -55340232221128654848
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = -8589934592
--2 `shiftL` 64 = -36893488147419103232
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = -4294967296
--1 `shiftL` 64 = -18446744073709551616
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 18446744073709551616
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 36893488147419103232
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 55340232221128654848
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -1
--3 `rotate` -2 = -1
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -6
--3 `rotate` 2 = -12
--3 `rotate` 3 = -24
-
--2 `rotate` -3 = -1
--2 `rotate` -2 = -1
--2 `rotate` -1 = -1
--2 `rotate` 0 = -2
--2 `rotate` 1 = -4
--2 `rotate` 2 = -8
--2 `rotate` 3 = -16
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -2
--1 `rotate` 2 = -4
--1 `rotate` 3 = -8
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 0
-1 `rotate` -2 = 0
-1 `rotate` -1 = 0
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 0
-2 `rotate` -2 = 0
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 0
-3 `rotate` -2 = 0
-3 `rotate` -1 = 1
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 18446744073709551616
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 18446744073709551617
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 18446744073709551618
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 18446744073709551619
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -4294967299
--3 `clearBit` 64 = -18446744073709551619
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -4294967298
--2 `clearBit` 64 = -18446744073709551618
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -4294967297
--1 `clearBit` 64 = -18446744073709551617
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -4294967299
--3 `complementBit` 64 = -18446744073709551619
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -4294967298
--2 `complementBit` 64 = -18446744073709551618
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -4294967297
--1 `complementBit` 64 = -18446744073709551617
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 18446744073709551616
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 18446744073709551617
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 18446744073709551618
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 18446744073709551619
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = True
--3 `testBit` 64 = True
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = True
--2 `testBit` 64 = True
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = True
--1 `testBit` 64 = True
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout-mips-sgi-irix b/testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout-mips-sgi-irix
deleted file mode 100644
index 0e86320b3a..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout-mips-sgi-irix
+++ /dev/null
@@ -1,15138 +0,0 @@
---------------------------------
---Testing Int
---------------------------------
-testBounded
-(9223372036854775807,-9223372036854775808,-9223372036854775807)
-(9223372036854775806,9223372036854775807,-9223372036854775808)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-9223372036854775808,0,9223372036854775807]
-Int : [-9223372036854775808,0,9223372036854775807]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [-9223372036854775808,0,9223372036854775807]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [9223372036854775808,0,9223372036854775807]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = -12884901888
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = -8589934592
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = -4294967296
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -4611686018427387905
--3 `rotate` -2 = 9223372036854775807
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
-
--2 `rotate` -3 = -2305843009213693953
--2 `rotate` -2 = -4611686018427387905
--2 `rotate` -1 = 9223372036854775807
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 2305843009213693952
-1 `rotate` -2 = 4611686018427387904
-1 `rotate` -1 = -9223372036854775808
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 4611686018427387904
-2 `rotate` -2 = -9223372036854775808
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 6917529027641081856
-3 `rotate` -2 = -4611686018427387904
-3 `rotate` -1 = -9223372036854775807
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -4294967299
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -4294967298
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -4294967297
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -4294967299
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -4294967298
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -4294967297
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = True
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = True
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = True
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 64
-bitSize -2 = 64
-bitSize -1 = 64
-bitSize 0 = 64
-bitSize 1 = 64
-bitSize 2 = 64
-bitSize 3 = 64
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int8
---------------------------------
-testBounded
-(127,-128,-127)
-(126,127,-128)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-128,0,127]
-Int : [-128,0,127]
-Int8 : [-128,0,127]
-Int16 : [-128,0,127]
-Int32 : [-128,0,127]
-Int64 : [-128,0,127]
-Word8 : [128,0,127]
-Word16 : [65408,0,127]
-Word32 : [4294967168,0,127]
-Word64 : [18446744073709551488,0,127]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = 0
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = 0
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = 0
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -65
--3 `rotate` -2 = 127
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
-
--2 `rotate` -3 = -33
--2 `rotate` -2 = -65
--2 `rotate` -1 = 127
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 32
-1 `rotate` -2 = 64
-1 `rotate` -1 = -128
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 64
-2 `rotate` -2 = -128
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 96
-3 `rotate` -2 = -64
-3 `rotate` -1 = -127
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -3
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -2
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -1
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -3
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -2
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -1
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = False
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = False
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = False
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 8
-bitSize -2 = 8
-bitSize -1 = 8
-bitSize 0 = 8
-bitSize 1 = 8
-bitSize 2 = 8
-bitSize 3 = 8
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int16
---------------------------------
-testBounded
-(32767,-32768,-32767)
-(32766,32767,-32768)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-32768,0,32767]
-Int : [-32768,0,32767]
-Int8 : [0,0,-1]
-Int16 : [-32768,0,32767]
-Int32 : [-32768,0,32767]
-Int64 : [-32768,0,32767]
-Word8 : [0,0,255]
-Word16 : [32768,0,32767]
-Word32 : [4294934528,0,32767]
-Word64 : [18446744073709518848,0,32767]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = 0
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = 0
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = 0
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -16385
--3 `rotate` -2 = 32767
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
-
--2 `rotate` -3 = -8193
--2 `rotate` -2 = -16385
--2 `rotate` -1 = 32767
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 8192
-1 `rotate` -2 = 16384
-1 `rotate` -1 = -32768
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 16384
-2 `rotate` -2 = -32768
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 24576
-3 `rotate` -2 = -16384
-3 `rotate` -1 = -32767
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -3
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -2
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -1
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -3
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -2
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -1
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = False
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = False
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = False
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 16
-bitSize -2 = 16
-bitSize -1 = 16
-bitSize 0 = 16
-bitSize 1 = 16
-bitSize 2 = 16
-bitSize 3 = 16
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int32
---------------------------------
-testBounded
-(2147483647,-2147483648,-2147483647)
-(2147483646,2147483647,-2147483648)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-2147483648,0,2147483647]
-Int : [-2147483648,0,2147483647]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [-2147483648,0,2147483647]
-Int64 : [-2147483648,0,2147483647]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [2147483648,0,2147483647]
-Word64 : [18446744071562067968,0,2147483647]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = 0
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = 0
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = 0
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -1073741825
--3 `rotate` -2 = 2147483647
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
-
--2 `rotate` -3 = -536870913
--2 `rotate` -2 = -1073741825
--2 `rotate` -1 = 2147483647
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 536870912
-1 `rotate` -2 = 1073741824
-1 `rotate` -1 = -2147483648
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 1073741824
-2 `rotate` -2 = -2147483648
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 1610612736
-3 `rotate` -2 = -1073741824
-3 `rotate` -1 = -2147483647
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -3
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -2
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -1
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -3
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -2
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -1
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = False
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = False
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = False
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 32
-bitSize -2 = 32
-bitSize -1 = 32
-bitSize 0 = 32
-bitSize 1 = 32
-bitSize 2 = 32
-bitSize 3 = 32
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int64
---------------------------------
-testBounded
-(9223372036854775807,-9223372036854775808,-9223372036854775807)
-(9223372036854775806,9223372036854775807,-9223372036854775808)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-9223372036854775808,0,9223372036854775807]
-Int : [-9223372036854775808,0,9223372036854775807]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [-9223372036854775808,0,9223372036854775807]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [9223372036854775808,0,9223372036854775807]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = -12884901888
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = -8589934592
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = -4294967296
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -4611686018427387905
--3 `rotate` -2 = 9223372036854775807
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
-
--2 `rotate` -3 = -2305843009213693953
--2 `rotate` -2 = -4611686018427387905
--2 `rotate` -1 = 9223372036854775807
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 2305843009213693952
-1 `rotate` -2 = 4611686018427387904
-1 `rotate` -1 = -9223372036854775808
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 4611686018427387904
-2 `rotate` -2 = -9223372036854775808
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 6917529027641081856
-3 `rotate` -2 = -4611686018427387904
-3 `rotate` -1 = -9223372036854775807
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -4294967299
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -4294967298
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -4294967297
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -4294967299
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -4294967298
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -4294967297
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = True
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = True
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = True
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 64
-bitSize -2 = 64
-bitSize -1 = 64
-bitSize 0 = 64
-bitSize 1 = 64
-bitSize 2 = 64
-bitSize 3 = 64
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Word8
---------------------------------
-testBounded
-(255,0,1)
-(254,255,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[253,254,255,0,1,2,3]
-[253,254,255,0,1,2,3]
-testEq
-253 == 253 = True
-253 == 254 = False
-253 == 255 = False
-253 == 0 = False
-253 == 1 = False
-253 == 2 = False
-253 == 3 = False
-
-254 == 253 = False
-254 == 254 = True
-254 == 255 = False
-254 == 0 = False
-254 == 1 = False
-254 == 2 = False
-254 == 3 = False
-
-255 == 253 = False
-255 == 254 = False
-255 == 255 = True
-255 == 0 = False
-255 == 1 = False
-255 == 2 = False
-255 == 3 = False
-
-0 == 253 = False
-0 == 254 = False
-0 == 255 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 253 = False
-1 == 254 = False
-1 == 255 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 253 = False
-2 == 254 = False
-2 == 255 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 253 = False
-3 == 254 = False
-3 == 255 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-253 /= 253 = False
-253 /= 254 = True
-253 /= 255 = True
-253 /= 0 = True
-253 /= 1 = True
-253 /= 2 = True
-253 /= 3 = True
-
-254 /= 253 = True
-254 /= 254 = False
-254 /= 255 = True
-254 /= 0 = True
-254 /= 1 = True
-254 /= 2 = True
-254 /= 3 = True
-
-255 /= 253 = True
-255 /= 254 = True
-255 /= 255 = False
-255 /= 0 = True
-255 /= 1 = True
-255 /= 2 = True
-255 /= 3 = True
-
-0 /= 253 = True
-0 /= 254 = True
-0 /= 255 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 253 = True
-1 /= 254 = True
-1 /= 255 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 253 = True
-2 /= 254 = True
-2 /= 255 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 253 = True
-3 /= 254 = True
-3 /= 255 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-253 <= 253 = True
-253 <= 254 = True
-253 <= 255 = True
-253 <= 0 = False
-253 <= 1 = False
-253 <= 2 = False
-253 <= 3 = False
-
-254 <= 253 = False
-254 <= 254 = True
-254 <= 255 = True
-254 <= 0 = False
-254 <= 1 = False
-254 <= 2 = False
-254 <= 3 = False
-
-255 <= 253 = False
-255 <= 254 = False
-255 <= 255 = True
-255 <= 0 = False
-255 <= 1 = False
-255 <= 2 = False
-255 <= 3 = False
-
-0 <= 253 = True
-0 <= 254 = True
-0 <= 255 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 253 = True
-1 <= 254 = True
-1 <= 255 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 253 = True
-2 <= 254 = True
-2 <= 255 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 253 = True
-3 <= 254 = True
-3 <= 255 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-253 < 253 = False
-253 < 254 = True
-253 < 255 = True
-253 < 0 = False
-253 < 1 = False
-253 < 2 = False
-253 < 3 = False
-
-254 < 253 = False
-254 < 254 = False
-254 < 255 = True
-254 < 0 = False
-254 < 1 = False
-254 < 2 = False
-254 < 3 = False
-
-255 < 253 = False
-255 < 254 = False
-255 < 255 = False
-255 < 0 = False
-255 < 1 = False
-255 < 2 = False
-255 < 3 = False
-
-0 < 253 = True
-0 < 254 = True
-0 < 255 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 253 = True
-1 < 254 = True
-1 < 255 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 253 = True
-2 < 254 = True
-2 < 255 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 253 = True
-3 < 254 = True
-3 < 255 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-253 > 253 = False
-253 > 254 = False
-253 > 255 = False
-253 > 0 = True
-253 > 1 = True
-253 > 2 = True
-253 > 3 = True
-
-254 > 253 = True
-254 > 254 = False
-254 > 255 = False
-254 > 0 = True
-254 > 1 = True
-254 > 2 = True
-254 > 3 = True
-
-255 > 253 = True
-255 > 254 = True
-255 > 255 = False
-255 > 0 = True
-255 > 1 = True
-255 > 2 = True
-255 > 3 = True
-
-0 > 253 = False
-0 > 254 = False
-0 > 255 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 253 = False
-1 > 254 = False
-1 > 255 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 253 = False
-2 > 254 = False
-2 > 255 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 253 = False
-3 > 254 = False
-3 > 255 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-253 >= 253 = True
-253 >= 254 = False
-253 >= 255 = False
-253 >= 0 = True
-253 >= 1 = True
-253 >= 2 = True
-253 >= 3 = True
-
-254 >= 253 = True
-254 >= 254 = True
-254 >= 255 = False
-254 >= 0 = True
-254 >= 1 = True
-254 >= 2 = True
-254 >= 3 = True
-
-255 >= 253 = True
-255 >= 254 = True
-255 >= 255 = True
-255 >= 0 = True
-255 >= 1 = True
-255 >= 2 = True
-255 >= 3 = True
-
-0 >= 253 = False
-0 >= 254 = False
-0 >= 255 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 253 = False
-1 >= 254 = False
-1 >= 255 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 253 = False
-2 >= 254 = False
-2 >= 255 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 253 = False
-3 >= 254 = False
-3 >= 255 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-253 `compare` 253 = EQ
-253 `compare` 254 = LT
-253 `compare` 255 = LT
-253 `compare` 0 = GT
-253 `compare` 1 = GT
-253 `compare` 2 = GT
-253 `compare` 3 = GT
-
-254 `compare` 253 = GT
-254 `compare` 254 = EQ
-254 `compare` 255 = LT
-254 `compare` 0 = GT
-254 `compare` 1 = GT
-254 `compare` 2 = GT
-254 `compare` 3 = GT
-
-255 `compare` 253 = GT
-255 `compare` 254 = GT
-255 `compare` 255 = EQ
-255 `compare` 0 = GT
-255 `compare` 1 = GT
-255 `compare` 2 = GT
-255 `compare` 3 = GT
-
-0 `compare` 253 = LT
-0 `compare` 254 = LT
-0 `compare` 255 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 253 = LT
-1 `compare` 254 = LT
-1 `compare` 255 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 253 = LT
-2 `compare` 254 = LT
-2 `compare` 255 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 253 = LT
-3 `compare` 254 = LT
-3 `compare` 255 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-253 + 253 = 250
-253 + 254 = 251
-253 + 255 = 252
-253 + 0 = 253
-253 + 1 = 254
-253 + 2 = 255
-253 + 3 = 0
-
-254 + 253 = 251
-254 + 254 = 252
-254 + 255 = 253
-254 + 0 = 254
-254 + 1 = 255
-254 + 2 = 0
-254 + 3 = 1
-
-255 + 253 = 252
-255 + 254 = 253
-255 + 255 = 254
-255 + 0 = 255
-255 + 1 = 0
-255 + 2 = 1
-255 + 3 = 2
-
-0 + 253 = 253
-0 + 254 = 254
-0 + 255 = 255
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 253 = 254
-1 + 254 = 255
-1 + 255 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 253 = 255
-2 + 254 = 0
-2 + 255 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 253 = 0
-3 + 254 = 1
-3 + 255 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-253 - 253 = 0
-253 - 254 = 255
-253 - 255 = 254
-253 - 0 = 253
-253 - 1 = 252
-253 - 2 = 251
-253 - 3 = 250
-
-254 - 253 = 1
-254 - 254 = 0
-254 - 255 = 255
-254 - 0 = 254
-254 - 1 = 253
-254 - 2 = 252
-254 - 3 = 251
-
-255 - 253 = 2
-255 - 254 = 1
-255 - 255 = 0
-255 - 0 = 255
-255 - 1 = 254
-255 - 2 = 253
-255 - 3 = 252
-
-0 - 253 = 3
-0 - 254 = 2
-0 - 255 = 1
-0 - 0 = 0
-0 - 1 = 255
-0 - 2 = 254
-0 - 3 = 253
-
-1 - 253 = 4
-1 - 254 = 3
-1 - 255 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 255
-1 - 3 = 254
-
-2 - 253 = 5
-2 - 254 = 4
-2 - 255 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 255
-
-3 - 253 = 6
-3 - 254 = 5
-3 - 255 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-253 * 253 = 9
-253 * 254 = 6
-253 * 255 = 3
-253 * 0 = 0
-253 * 1 = 253
-253 * 2 = 250
-253 * 3 = 247
-
-254 * 253 = 6
-254 * 254 = 4
-254 * 255 = 2
-254 * 0 = 0
-254 * 1 = 254
-254 * 2 = 252
-254 * 3 = 250
-
-255 * 253 = 3
-255 * 254 = 2
-255 * 255 = 1
-255 * 0 = 0
-255 * 1 = 255
-255 * 2 = 254
-255 * 3 = 253
-
-0 * 253 = 0
-0 * 254 = 0
-0 * 255 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 253 = 253
-1 * 254 = 254
-1 * 255 = 255
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 253 = 250
-2 * 254 = 252
-2 * 255 = 254
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 253 = 247
-3 * 254 = 250
-3 * 255 = 253
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 253 = 3
-negate 254 = 2
-negate 255 = 1
-negate 0 = 0
-negate 1 = 255
-negate 2 = 254
-negate 3 = 253
-#
-testReal
-toRational 253 = 253 % 1
-toRational 254 = 254 % 1
-toRational 255 = 255 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-253 `divMod` 253 = (1,0)
-253 `divMod` 254 = (0,253)
-253 `divMod` 255 = (0,253)
-253 `divMod` 0 = divide by zero
-253 `divMod` 1 = (253,0)
-253 `divMod` 2 = (126,1)
-253 `divMod` 3 = (84,1)
-
-254 `divMod` 253 = (1,1)
-254 `divMod` 254 = (1,0)
-254 `divMod` 255 = (0,254)
-254 `divMod` 0 = divide by zero
-254 `divMod` 1 = (254,0)
-254 `divMod` 2 = (127,0)
-254 `divMod` 3 = (84,2)
-
-255 `divMod` 253 = (1,2)
-255 `divMod` 254 = (1,1)
-255 `divMod` 255 = (1,0)
-255 `divMod` 0 = divide by zero
-255 `divMod` 1 = (255,0)
-255 `divMod` 2 = (127,1)
-255 `divMod` 3 = (85,0)
-
-0 `divMod` 253 = (0,0)
-0 `divMod` 254 = (0,0)
-0 `divMod` 255 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 253 = (0,1)
-1 `divMod` 254 = (0,1)
-1 `divMod` 255 = (0,1)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 253 = (0,2)
-2 `divMod` 254 = (0,2)
-2 `divMod` 255 = (0,2)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 253 = (0,3)
-3 `divMod` 254 = (0,3)
-3 `divMod` 255 = (0,3)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-253 `div` 253 = 1
-253 `div` 254 = 0
-253 `div` 255 = 0
-253 `div` 0 = divide by zero
-253 `div` 1 = 253
-253 `div` 2 = 126
-253 `div` 3 = 84
-
-254 `div` 253 = 1
-254 `div` 254 = 1
-254 `div` 255 = 0
-254 `div` 0 = divide by zero
-254 `div` 1 = 254
-254 `div` 2 = 127
-254 `div` 3 = 84
-
-255 `div` 253 = 1
-255 `div` 254 = 1
-255 `div` 255 = 1
-255 `div` 0 = divide by zero
-255 `div` 1 = 255
-255 `div` 2 = 127
-255 `div` 3 = 85
-
-0 `div` 253 = 0
-0 `div` 254 = 0
-0 `div` 255 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 253 = 0
-1 `div` 254 = 0
-1 `div` 255 = 0
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 253 = 0
-2 `div` 254 = 0
-2 `div` 255 = 0
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 253 = 0
-3 `div` 254 = 0
-3 `div` 255 = 0
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-253 `mod` 253 = 0
-253 `mod` 254 = 253
-253 `mod` 255 = 253
-253 `mod` 0 = divide by zero
-253 `mod` 1 = 0
-253 `mod` 2 = 1
-253 `mod` 3 = 1
-
-254 `mod` 253 = 1
-254 `mod` 254 = 0
-254 `mod` 255 = 254
-254 `mod` 0 = divide by zero
-254 `mod` 1 = 0
-254 `mod` 2 = 0
-254 `mod` 3 = 2
-
-255 `mod` 253 = 2
-255 `mod` 254 = 1
-255 `mod` 255 = 0
-255 `mod` 0 = divide by zero
-255 `mod` 1 = 0
-255 `mod` 2 = 1
-255 `mod` 3 = 0
-
-0 `mod` 253 = 0
-0 `mod` 254 = 0
-0 `mod` 255 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 253 = 1
-1 `mod` 254 = 1
-1 `mod` 255 = 1
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 253 = 2
-2 `mod` 254 = 2
-2 `mod` 255 = 2
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 253 = 3
-3 `mod` 254 = 3
-3 `mod` 255 = 3
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-253 `quotRem` 253 = (1,0)
-253 `quotRem` 254 = (0,253)
-253 `quotRem` 255 = (0,253)
-253 `quotRem` 0 = divide by zero
-253 `quotRem` 1 = (253,0)
-253 `quotRem` 2 = (126,1)
-253 `quotRem` 3 = (84,1)
-
-254 `quotRem` 253 = (1,1)
-254 `quotRem` 254 = (1,0)
-254 `quotRem` 255 = (0,254)
-254 `quotRem` 0 = divide by zero
-254 `quotRem` 1 = (254,0)
-254 `quotRem` 2 = (127,0)
-254 `quotRem` 3 = (84,2)
-
-255 `quotRem` 253 = (1,2)
-255 `quotRem` 254 = (1,1)
-255 `quotRem` 255 = (1,0)
-255 `quotRem` 0 = divide by zero
-255 `quotRem` 1 = (255,0)
-255 `quotRem` 2 = (127,1)
-255 `quotRem` 3 = (85,0)
-
-0 `quotRem` 253 = (0,0)
-0 `quotRem` 254 = (0,0)
-0 `quotRem` 255 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 253 = (0,1)
-1 `quotRem` 254 = (0,1)
-1 `quotRem` 255 = (0,1)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 253 = (0,2)
-2 `quotRem` 254 = (0,2)
-2 `quotRem` 255 = (0,2)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 253 = (0,3)
-3 `quotRem` 254 = (0,3)
-3 `quotRem` 255 = (0,3)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-253 `quot` 253 = 1
-253 `quot` 254 = 0
-253 `quot` 255 = 0
-253 `quot` 0 = divide by zero
-253 `quot` 1 = 253
-253 `quot` 2 = 126
-253 `quot` 3 = 84
-
-254 `quot` 253 = 1
-254 `quot` 254 = 1
-254 `quot` 255 = 0
-254 `quot` 0 = divide by zero
-254 `quot` 1 = 254
-254 `quot` 2 = 127
-254 `quot` 3 = 84
-
-255 `quot` 253 = 1
-255 `quot` 254 = 1
-255 `quot` 255 = 1
-255 `quot` 0 = divide by zero
-255 `quot` 1 = 255
-255 `quot` 2 = 127
-255 `quot` 3 = 85
-
-0 `quot` 253 = 0
-0 `quot` 254 = 0
-0 `quot` 255 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 253 = 0
-1 `quot` 254 = 0
-1 `quot` 255 = 0
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 253 = 0
-2 `quot` 254 = 0
-2 `quot` 255 = 0
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 253 = 0
-3 `quot` 254 = 0
-3 `quot` 255 = 0
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-253 `rem` 253 = 0
-253 `rem` 254 = 253
-253 `rem` 255 = 253
-253 `rem` 0 = divide by zero
-253 `rem` 1 = 0
-253 `rem` 2 = 1
-253 `rem` 3 = 1
-
-254 `rem` 253 = 1
-254 `rem` 254 = 0
-254 `rem` 255 = 254
-254 `rem` 0 = divide by zero
-254 `rem` 1 = 0
-254 `rem` 2 = 0
-254 `rem` 3 = 2
-
-255 `rem` 253 = 2
-255 `rem` 254 = 1
-255 `rem` 255 = 0
-255 `rem` 0 = divide by zero
-255 `rem` 1 = 0
-255 `rem` 2 = 1
-255 `rem` 3 = 0
-
-0 `rem` 253 = 0
-0 `rem` 254 = 0
-0 `rem` 255 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 253 = 1
-1 `rem` 254 = 1
-1 `rem` 255 = 1
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 253 = 2
-2 `rem` 254 = 2
-2 `rem` 255 = 2
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 253 = 3
-3 `rem` 254 = 3
-3 `rem` 255 = 3
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,255]
-Int : [0,0,255]
-Int8 : [0,0,-1]
-Int16 : [0,0,255]
-Int32 : [0,0,255]
-Int64 : [0,0,255]
-Word8 : [0,0,255]
-Word16 : [0,0,255]
-Word32 : [0,0,255]
-Word64 : [0,0,255]
-testBits
-253 .&. 253 = 253
-253 .&. 254 = 252
-253 .&. 255 = 253
-253 .&. 0 = 0
-253 .&. 1 = 1
-253 .&. 2 = 0
-253 .&. 3 = 1
-
-254 .&. 253 = 252
-254 .&. 254 = 254
-254 .&. 255 = 254
-254 .&. 0 = 0
-254 .&. 1 = 0
-254 .&. 2 = 2
-254 .&. 3 = 2
-
-255 .&. 253 = 253
-255 .&. 254 = 254
-255 .&. 255 = 255
-255 .&. 0 = 0
-255 .&. 1 = 1
-255 .&. 2 = 2
-255 .&. 3 = 3
-
-0 .&. 253 = 0
-0 .&. 254 = 0
-0 .&. 255 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 253 = 1
-1 .&. 254 = 0
-1 .&. 255 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 253 = 0
-2 .&. 254 = 2
-2 .&. 255 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 253 = 1
-3 .&. 254 = 2
-3 .&. 255 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-253 .|. 253 = 253
-253 .|. 254 = 255
-253 .|. 255 = 255
-253 .|. 0 = 253
-253 .|. 1 = 253
-253 .|. 2 = 255
-253 .|. 3 = 255
-
-254 .|. 253 = 255
-254 .|. 254 = 254
-254 .|. 255 = 255
-254 .|. 0 = 254
-254 .|. 1 = 255
-254 .|. 2 = 254
-254 .|. 3 = 255
-
-255 .|. 253 = 255
-255 .|. 254 = 255
-255 .|. 255 = 255
-255 .|. 0 = 255
-255 .|. 1 = 255
-255 .|. 2 = 255
-255 .|. 3 = 255
-
-0 .|. 253 = 253
-0 .|. 254 = 254
-0 .|. 255 = 255
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 253 = 253
-1 .|. 254 = 255
-1 .|. 255 = 255
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 253 = 255
-2 .|. 254 = 254
-2 .|. 255 = 255
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 253 = 255
-3 .|. 254 = 255
-3 .|. 255 = 255
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-253 `xor` 253 = 0
-253 `xor` 254 = 3
-253 `xor` 255 = 2
-253 `xor` 0 = 253
-253 `xor` 1 = 252
-253 `xor` 2 = 255
-253 `xor` 3 = 254
-
-254 `xor` 253 = 3
-254 `xor` 254 = 0
-254 `xor` 255 = 1
-254 `xor` 0 = 254
-254 `xor` 1 = 255
-254 `xor` 2 = 252
-254 `xor` 3 = 253
-
-255 `xor` 253 = 2
-255 `xor` 254 = 1
-255 `xor` 255 = 0
-255 `xor` 0 = 255
-255 `xor` 1 = 254
-255 `xor` 2 = 253
-255 `xor` 3 = 252
-
-0 `xor` 253 = 253
-0 `xor` 254 = 254
-0 `xor` 255 = 255
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 253 = 252
-1 `xor` 254 = 255
-1 `xor` 255 = 254
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 253 = 255
-2 `xor` 254 = 252
-2 `xor` 255 = 253
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 253 = 254
-3 `xor` 254 = 253
-3 `xor` 255 = 252
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 253 = 2
-complement 254 = 1
-complement 255 = 0
-complement 0 = 255
-complement 1 = 254
-complement 2 = 253
-complement 3 = 252
-#
-253 `shiftL` 0 = 253
-253 `shiftL` 1 = 250
-253 `shiftL` 2 = 244
-253 `shiftL` 3 = 232
-253 `shiftL` 32 = 0
-253 `shiftL` 64 = 0
-
-254 `shiftL` 0 = 254
-254 `shiftL` 1 = 252
-254 `shiftL` 2 = 248
-254 `shiftL` 3 = 240
-254 `shiftL` 32 = 0
-254 `shiftL` 64 = 0
-
-255 `shiftL` 0 = 255
-255 `shiftL` 1 = 254
-255 `shiftL` 2 = 252
-255 `shiftL` 3 = 248
-255 `shiftL` 32 = 0
-255 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
-253 `shiftR` 0 = 253
-253 `shiftR` 1 = 126
-253 `shiftR` 2 = 63
-253 `shiftR` 3 = 31
-253 `shiftR` 32 = 0
-253 `shiftR` 64 = 0
-
-254 `shiftR` 0 = 254
-254 `shiftR` 1 = 127
-254 `shiftR` 2 = 63
-254 `shiftR` 3 = 31
-254 `shiftR` 32 = 0
-254 `shiftR` 64 = 0
-
-255 `shiftR` 0 = 255
-255 `shiftR` 1 = 127
-255 `shiftR` 2 = 63
-255 `shiftR` 3 = 31
-255 `shiftR` 32 = 0
-255 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-253 `rotate` -3 = 191
-253 `rotate` -2 = 127
-253 `rotate` -1 = 254
-253 `rotate` 0 = 253
-253 `rotate` 1 = 251
-253 `rotate` 2 = 247
-253 `rotate` 3 = 239
-
-254 `rotate` -3 = 223
-254 `rotate` -2 = 191
-254 `rotate` -1 = 127
-254 `rotate` 0 = 254
-254 `rotate` 1 = 253
-254 `rotate` 2 = 251
-254 `rotate` 3 = 247
-
-255 `rotate` -3 = 255
-255 `rotate` -2 = 255
-255 `rotate` -1 = 255
-255 `rotate` 0 = 255
-255 `rotate` 1 = 255
-255 `rotate` 2 = 255
-255 `rotate` 3 = 255
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 32
-1 `rotate` -2 = 64
-1 `rotate` -1 = 128
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 64
-2 `rotate` -2 = 128
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 96
-3 `rotate` -2 = 192
-3 `rotate` -1 = 129
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-253 `setBit` 0 = 253
-253 `setBit` 1 = 255
-253 `setBit` 2 = 253
-253 `setBit` 3 = 253
-253 `setBit` 32 = 253
-253 `setBit` 64 = 253
-
-254 `setBit` 0 = 255
-254 `setBit` 1 = 254
-254 `setBit` 2 = 254
-254 `setBit` 3 = 254
-254 `setBit` 32 = 254
-254 `setBit` 64 = 254
-
-255 `setBit` 0 = 255
-255 `setBit` 1 = 255
-255 `setBit` 2 = 255
-255 `setBit` 3 = 255
-255 `setBit` 32 = 255
-255 `setBit` 64 = 255
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
-253 `clearBit` 0 = 252
-253 `clearBit` 1 = 253
-253 `clearBit` 2 = 249
-253 `clearBit` 3 = 245
-253 `clearBit` 32 = 253
-253 `clearBit` 64 = 253
-
-254 `clearBit` 0 = 254
-254 `clearBit` 1 = 252
-254 `clearBit` 2 = 250
-254 `clearBit` 3 = 246
-254 `clearBit` 32 = 254
-254 `clearBit` 64 = 254
-
-255 `clearBit` 0 = 254
-255 `clearBit` 1 = 253
-255 `clearBit` 2 = 251
-255 `clearBit` 3 = 247
-255 `clearBit` 32 = 255
-255 `clearBit` 64 = 255
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-253 `complementBit` 0 = 252
-253 `complementBit` 1 = 255
-253 `complementBit` 2 = 249
-253 `complementBit` 3 = 245
-253 `complementBit` 32 = 253
-253 `complementBit` 64 = 253
-
-254 `complementBit` 0 = 255
-254 `complementBit` 1 = 252
-254 `complementBit` 2 = 250
-254 `complementBit` 3 = 246
-254 `complementBit` 32 = 254
-254 `complementBit` 64 = 254
-
-255 `complementBit` 0 = 254
-255 `complementBit` 1 = 253
-255 `complementBit` 2 = 251
-255 `complementBit` 3 = 247
-255 `complementBit` 32 = 255
-255 `complementBit` 64 = 255
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
-253 `testBit` 0 = True
-253 `testBit` 1 = False
-253 `testBit` 2 = True
-253 `testBit` 3 = True
-253 `testBit` 32 = False
-253 `testBit` 64 = False
-
-254 `testBit` 0 = False
-254 `testBit` 1 = True
-254 `testBit` 2 = True
-254 `testBit` 3 = True
-254 `testBit` 32 = False
-254 `testBit` 64 = False
-
-255 `testBit` 0 = True
-255 `testBit` 1 = True
-255 `testBit` 2 = True
-255 `testBit` 3 = True
-255 `testBit` 32 = False
-255 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 253 = 8
-bitSize 254 = 8
-bitSize 255 = 8
-bitSize 0 = 8
-bitSize 1 = 8
-bitSize 2 = 8
-bitSize 3 = 8
-#
-isSigned 253 = False
-isSigned 254 = False
-isSigned 255 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Word16
---------------------------------
-testBounded
-(65535,0,1)
-(65534,65535,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[65533,65534,65535,0,1,2,3]
-[65533,65534,65535,0,1,2,3]
-testEq
-65533 == 65533 = True
-65533 == 65534 = False
-65533 == 65535 = False
-65533 == 0 = False
-65533 == 1 = False
-65533 == 2 = False
-65533 == 3 = False
-
-65534 == 65533 = False
-65534 == 65534 = True
-65534 == 65535 = False
-65534 == 0 = False
-65534 == 1 = False
-65534 == 2 = False
-65534 == 3 = False
-
-65535 == 65533 = False
-65535 == 65534 = False
-65535 == 65535 = True
-65535 == 0 = False
-65535 == 1 = False
-65535 == 2 = False
-65535 == 3 = False
-
-0 == 65533 = False
-0 == 65534 = False
-0 == 65535 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 65533 = False
-1 == 65534 = False
-1 == 65535 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 65533 = False
-2 == 65534 = False
-2 == 65535 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 65533 = False
-3 == 65534 = False
-3 == 65535 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-65533 /= 65533 = False
-65533 /= 65534 = True
-65533 /= 65535 = True
-65533 /= 0 = True
-65533 /= 1 = True
-65533 /= 2 = True
-65533 /= 3 = True
-
-65534 /= 65533 = True
-65534 /= 65534 = False
-65534 /= 65535 = True
-65534 /= 0 = True
-65534 /= 1 = True
-65534 /= 2 = True
-65534 /= 3 = True
-
-65535 /= 65533 = True
-65535 /= 65534 = True
-65535 /= 65535 = False
-65535 /= 0 = True
-65535 /= 1 = True
-65535 /= 2 = True
-65535 /= 3 = True
-
-0 /= 65533 = True
-0 /= 65534 = True
-0 /= 65535 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 65533 = True
-1 /= 65534 = True
-1 /= 65535 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 65533 = True
-2 /= 65534 = True
-2 /= 65535 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 65533 = True
-3 /= 65534 = True
-3 /= 65535 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-65533 <= 65533 = True
-65533 <= 65534 = True
-65533 <= 65535 = True
-65533 <= 0 = False
-65533 <= 1 = False
-65533 <= 2 = False
-65533 <= 3 = False
-
-65534 <= 65533 = False
-65534 <= 65534 = True
-65534 <= 65535 = True
-65534 <= 0 = False
-65534 <= 1 = False
-65534 <= 2 = False
-65534 <= 3 = False
-
-65535 <= 65533 = False
-65535 <= 65534 = False
-65535 <= 65535 = True
-65535 <= 0 = False
-65535 <= 1 = False
-65535 <= 2 = False
-65535 <= 3 = False
-
-0 <= 65533 = True
-0 <= 65534 = True
-0 <= 65535 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 65533 = True
-1 <= 65534 = True
-1 <= 65535 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 65533 = True
-2 <= 65534 = True
-2 <= 65535 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 65533 = True
-3 <= 65534 = True
-3 <= 65535 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-65533 < 65533 = False
-65533 < 65534 = True
-65533 < 65535 = True
-65533 < 0 = False
-65533 < 1 = False
-65533 < 2 = False
-65533 < 3 = False
-
-65534 < 65533 = False
-65534 < 65534 = False
-65534 < 65535 = True
-65534 < 0 = False
-65534 < 1 = False
-65534 < 2 = False
-65534 < 3 = False
-
-65535 < 65533 = False
-65535 < 65534 = False
-65535 < 65535 = False
-65535 < 0 = False
-65535 < 1 = False
-65535 < 2 = False
-65535 < 3 = False
-
-0 < 65533 = True
-0 < 65534 = True
-0 < 65535 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 65533 = True
-1 < 65534 = True
-1 < 65535 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 65533 = True
-2 < 65534 = True
-2 < 65535 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 65533 = True
-3 < 65534 = True
-3 < 65535 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-65533 > 65533 = False
-65533 > 65534 = False
-65533 > 65535 = False
-65533 > 0 = True
-65533 > 1 = True
-65533 > 2 = True
-65533 > 3 = True
-
-65534 > 65533 = True
-65534 > 65534 = False
-65534 > 65535 = False
-65534 > 0 = True
-65534 > 1 = True
-65534 > 2 = True
-65534 > 3 = True
-
-65535 > 65533 = True
-65535 > 65534 = True
-65535 > 65535 = False
-65535 > 0 = True
-65535 > 1 = True
-65535 > 2 = True
-65535 > 3 = True
-
-0 > 65533 = False
-0 > 65534 = False
-0 > 65535 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 65533 = False
-1 > 65534 = False
-1 > 65535 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 65533 = False
-2 > 65534 = False
-2 > 65535 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 65533 = False
-3 > 65534 = False
-3 > 65535 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-65533 >= 65533 = True
-65533 >= 65534 = False
-65533 >= 65535 = False
-65533 >= 0 = True
-65533 >= 1 = True
-65533 >= 2 = True
-65533 >= 3 = True
-
-65534 >= 65533 = True
-65534 >= 65534 = True
-65534 >= 65535 = False
-65534 >= 0 = True
-65534 >= 1 = True
-65534 >= 2 = True
-65534 >= 3 = True
-
-65535 >= 65533 = True
-65535 >= 65534 = True
-65535 >= 65535 = True
-65535 >= 0 = True
-65535 >= 1 = True
-65535 >= 2 = True
-65535 >= 3 = True
-
-0 >= 65533 = False
-0 >= 65534 = False
-0 >= 65535 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 65533 = False
-1 >= 65534 = False
-1 >= 65535 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 65533 = False
-2 >= 65534 = False
-2 >= 65535 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 65533 = False
-3 >= 65534 = False
-3 >= 65535 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-65533 `compare` 65533 = EQ
-65533 `compare` 65534 = LT
-65533 `compare` 65535 = LT
-65533 `compare` 0 = GT
-65533 `compare` 1 = GT
-65533 `compare` 2 = GT
-65533 `compare` 3 = GT
-
-65534 `compare` 65533 = GT
-65534 `compare` 65534 = EQ
-65534 `compare` 65535 = LT
-65534 `compare` 0 = GT
-65534 `compare` 1 = GT
-65534 `compare` 2 = GT
-65534 `compare` 3 = GT
-
-65535 `compare` 65533 = GT
-65535 `compare` 65534 = GT
-65535 `compare` 65535 = EQ
-65535 `compare` 0 = GT
-65535 `compare` 1 = GT
-65535 `compare` 2 = GT
-65535 `compare` 3 = GT
-
-0 `compare` 65533 = LT
-0 `compare` 65534 = LT
-0 `compare` 65535 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 65533 = LT
-1 `compare` 65534 = LT
-1 `compare` 65535 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 65533 = LT
-2 `compare` 65534 = LT
-2 `compare` 65535 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 65533 = LT
-3 `compare` 65534 = LT
-3 `compare` 65535 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-65533 + 65533 = 65530
-65533 + 65534 = 65531
-65533 + 65535 = 65532
-65533 + 0 = 65533
-65533 + 1 = 65534
-65533 + 2 = 65535
-65533 + 3 = 0
-
-65534 + 65533 = 65531
-65534 + 65534 = 65532
-65534 + 65535 = 65533
-65534 + 0 = 65534
-65534 + 1 = 65535
-65534 + 2 = 0
-65534 + 3 = 1
-
-65535 + 65533 = 65532
-65535 + 65534 = 65533
-65535 + 65535 = 65534
-65535 + 0 = 65535
-65535 + 1 = 0
-65535 + 2 = 1
-65535 + 3 = 2
-
-0 + 65533 = 65533
-0 + 65534 = 65534
-0 + 65535 = 65535
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 65533 = 65534
-1 + 65534 = 65535
-1 + 65535 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 65533 = 65535
-2 + 65534 = 0
-2 + 65535 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 65533 = 0
-3 + 65534 = 1
-3 + 65535 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-65533 - 65533 = 0
-65533 - 65534 = 65535
-65533 - 65535 = 65534
-65533 - 0 = 65533
-65533 - 1 = 65532
-65533 - 2 = 65531
-65533 - 3 = 65530
-
-65534 - 65533 = 1
-65534 - 65534 = 0
-65534 - 65535 = 65535
-65534 - 0 = 65534
-65534 - 1 = 65533
-65534 - 2 = 65532
-65534 - 3 = 65531
-
-65535 - 65533 = 2
-65535 - 65534 = 1
-65535 - 65535 = 0
-65535 - 0 = 65535
-65535 - 1 = 65534
-65535 - 2 = 65533
-65535 - 3 = 65532
-
-0 - 65533 = 3
-0 - 65534 = 2
-0 - 65535 = 1
-0 - 0 = 0
-0 - 1 = 65535
-0 - 2 = 65534
-0 - 3 = 65533
-
-1 - 65533 = 4
-1 - 65534 = 3
-1 - 65535 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 65535
-1 - 3 = 65534
-
-2 - 65533 = 5
-2 - 65534 = 4
-2 - 65535 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 65535
-
-3 - 65533 = 6
-3 - 65534 = 5
-3 - 65535 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-65533 * 65533 = 9
-65533 * 65534 = 6
-65533 * 65535 = 3
-65533 * 0 = 0
-65533 * 1 = 65533
-65533 * 2 = 65530
-65533 * 3 = 65527
-
-65534 * 65533 = 6
-65534 * 65534 = 4
-65534 * 65535 = 2
-65534 * 0 = 0
-65534 * 1 = 65534
-65534 * 2 = 65532
-65534 * 3 = 65530
-
-65535 * 65533 = 3
-65535 * 65534 = 2
-65535 * 65535 = 1
-65535 * 0 = 0
-65535 * 1 = 65535
-65535 * 2 = 65534
-65535 * 3 = 65533
-
-0 * 65533 = 0
-0 * 65534 = 0
-0 * 65535 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 65533 = 65533
-1 * 65534 = 65534
-1 * 65535 = 65535
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 65533 = 65530
-2 * 65534 = 65532
-2 * 65535 = 65534
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 65533 = 65527
-3 * 65534 = 65530
-3 * 65535 = 65533
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 65533 = 3
-negate 65534 = 2
-negate 65535 = 1
-negate 0 = 0
-negate 1 = 65535
-negate 2 = 65534
-negate 3 = 65533
-#
-testReal
-toRational 65533 = 65533 % 1
-toRational 65534 = 65534 % 1
-toRational 65535 = 65535 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-65533 `divMod` 65533 = (1,0)
-65533 `divMod` 65534 = (0,65533)
-65533 `divMod` 65535 = (0,65533)
-65533 `divMod` 0 = divide by zero
-65533 `divMod` 1 = (65533,0)
-65533 `divMod` 2 = (32766,1)
-65533 `divMod` 3 = (21844,1)
-
-65534 `divMod` 65533 = (1,1)
-65534 `divMod` 65534 = (1,0)
-65534 `divMod` 65535 = (0,65534)
-65534 `divMod` 0 = divide by zero
-65534 `divMod` 1 = (65534,0)
-65534 `divMod` 2 = (32767,0)
-65534 `divMod` 3 = (21844,2)
-
-65535 `divMod` 65533 = (1,2)
-65535 `divMod` 65534 = (1,1)
-65535 `divMod` 65535 = (1,0)
-65535 `divMod` 0 = divide by zero
-65535 `divMod` 1 = (65535,0)
-65535 `divMod` 2 = (32767,1)
-65535 `divMod` 3 = (21845,0)
-
-0 `divMod` 65533 = (0,0)
-0 `divMod` 65534 = (0,0)
-0 `divMod` 65535 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 65533 = (0,1)
-1 `divMod` 65534 = (0,1)
-1 `divMod` 65535 = (0,1)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 65533 = (0,2)
-2 `divMod` 65534 = (0,2)
-2 `divMod` 65535 = (0,2)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 65533 = (0,3)
-3 `divMod` 65534 = (0,3)
-3 `divMod` 65535 = (0,3)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-65533 `div` 65533 = 1
-65533 `div` 65534 = 0
-65533 `div` 65535 = 0
-65533 `div` 0 = divide by zero
-65533 `div` 1 = 65533
-65533 `div` 2 = 32766
-65533 `div` 3 = 21844
-
-65534 `div` 65533 = 1
-65534 `div` 65534 = 1
-65534 `div` 65535 = 0
-65534 `div` 0 = divide by zero
-65534 `div` 1 = 65534
-65534 `div` 2 = 32767
-65534 `div` 3 = 21844
-
-65535 `div` 65533 = 1
-65535 `div` 65534 = 1
-65535 `div` 65535 = 1
-65535 `div` 0 = divide by zero
-65535 `div` 1 = 65535
-65535 `div` 2 = 32767
-65535 `div` 3 = 21845
-
-0 `div` 65533 = 0
-0 `div` 65534 = 0
-0 `div` 65535 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 65533 = 0
-1 `div` 65534 = 0
-1 `div` 65535 = 0
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 65533 = 0
-2 `div` 65534 = 0
-2 `div` 65535 = 0
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 65533 = 0
-3 `div` 65534 = 0
-3 `div` 65535 = 0
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-65533 `mod` 65533 = 0
-65533 `mod` 65534 = 65533
-65533 `mod` 65535 = 65533
-65533 `mod` 0 = divide by zero
-65533 `mod` 1 = 0
-65533 `mod` 2 = 1
-65533 `mod` 3 = 1
-
-65534 `mod` 65533 = 1
-65534 `mod` 65534 = 0
-65534 `mod` 65535 = 65534
-65534 `mod` 0 = divide by zero
-65534 `mod` 1 = 0
-65534 `mod` 2 = 0
-65534 `mod` 3 = 2
-
-65535 `mod` 65533 = 2
-65535 `mod` 65534 = 1
-65535 `mod` 65535 = 0
-65535 `mod` 0 = divide by zero
-65535 `mod` 1 = 0
-65535 `mod` 2 = 1
-65535 `mod` 3 = 0
-
-0 `mod` 65533 = 0
-0 `mod` 65534 = 0
-0 `mod` 65535 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 65533 = 1
-1 `mod` 65534 = 1
-1 `mod` 65535 = 1
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 65533 = 2
-2 `mod` 65534 = 2
-2 `mod` 65535 = 2
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 65533 = 3
-3 `mod` 65534 = 3
-3 `mod` 65535 = 3
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-65533 `quotRem` 65533 = (1,0)
-65533 `quotRem` 65534 = (0,65533)
-65533 `quotRem` 65535 = (0,65533)
-65533 `quotRem` 0 = divide by zero
-65533 `quotRem` 1 = (65533,0)
-65533 `quotRem` 2 = (32766,1)
-65533 `quotRem` 3 = (21844,1)
-
-65534 `quotRem` 65533 = (1,1)
-65534 `quotRem` 65534 = (1,0)
-65534 `quotRem` 65535 = (0,65534)
-65534 `quotRem` 0 = divide by zero
-65534 `quotRem` 1 = (65534,0)
-65534 `quotRem` 2 = (32767,0)
-65534 `quotRem` 3 = (21844,2)
-
-65535 `quotRem` 65533 = (1,2)
-65535 `quotRem` 65534 = (1,1)
-65535 `quotRem` 65535 = (1,0)
-65535 `quotRem` 0 = divide by zero
-65535 `quotRem` 1 = (65535,0)
-65535 `quotRem` 2 = (32767,1)
-65535 `quotRem` 3 = (21845,0)
-
-0 `quotRem` 65533 = (0,0)
-0 `quotRem` 65534 = (0,0)
-0 `quotRem` 65535 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 65533 = (0,1)
-1 `quotRem` 65534 = (0,1)
-1 `quotRem` 65535 = (0,1)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 65533 = (0,2)
-2 `quotRem` 65534 = (0,2)
-2 `quotRem` 65535 = (0,2)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 65533 = (0,3)
-3 `quotRem` 65534 = (0,3)
-3 `quotRem` 65535 = (0,3)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-65533 `quot` 65533 = 1
-65533 `quot` 65534 = 0
-65533 `quot` 65535 = 0
-65533 `quot` 0 = divide by zero
-65533 `quot` 1 = 65533
-65533 `quot` 2 = 32766
-65533 `quot` 3 = 21844
-
-65534 `quot` 65533 = 1
-65534 `quot` 65534 = 1
-65534 `quot` 65535 = 0
-65534 `quot` 0 = divide by zero
-65534 `quot` 1 = 65534
-65534 `quot` 2 = 32767
-65534 `quot` 3 = 21844
-
-65535 `quot` 65533 = 1
-65535 `quot` 65534 = 1
-65535 `quot` 65535 = 1
-65535 `quot` 0 = divide by zero
-65535 `quot` 1 = 65535
-65535 `quot` 2 = 32767
-65535 `quot` 3 = 21845
-
-0 `quot` 65533 = 0
-0 `quot` 65534 = 0
-0 `quot` 65535 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 65533 = 0
-1 `quot` 65534 = 0
-1 `quot` 65535 = 0
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 65533 = 0
-2 `quot` 65534 = 0
-2 `quot` 65535 = 0
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 65533 = 0
-3 `quot` 65534 = 0
-3 `quot` 65535 = 0
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-65533 `rem` 65533 = 0
-65533 `rem` 65534 = 65533
-65533 `rem` 65535 = 65533
-65533 `rem` 0 = divide by zero
-65533 `rem` 1 = 0
-65533 `rem` 2 = 1
-65533 `rem` 3 = 1
-
-65534 `rem` 65533 = 1
-65534 `rem` 65534 = 0
-65534 `rem` 65535 = 65534
-65534 `rem` 0 = divide by zero
-65534 `rem` 1 = 0
-65534 `rem` 2 = 0
-65534 `rem` 3 = 2
-
-65535 `rem` 65533 = 2
-65535 `rem` 65534 = 1
-65535 `rem` 65535 = 0
-65535 `rem` 0 = divide by zero
-65535 `rem` 1 = 0
-65535 `rem` 2 = 1
-65535 `rem` 3 = 0
-
-0 `rem` 65533 = 0
-0 `rem` 65534 = 0
-0 `rem` 65535 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 65533 = 1
-1 `rem` 65534 = 1
-1 `rem` 65535 = 1
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 65533 = 2
-2 `rem` 65534 = 2
-2 `rem` 65535 = 2
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 65533 = 3
-3 `rem` 65534 = 3
-3 `rem` 65535 = 3
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,65535]
-Int : [0,0,65535]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,65535]
-Int64 : [0,0,65535]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,65535]
-Word64 : [0,0,65535]
-testBits
-65533 .&. 65533 = 65533
-65533 .&. 65534 = 65532
-65533 .&. 65535 = 65533
-65533 .&. 0 = 0
-65533 .&. 1 = 1
-65533 .&. 2 = 0
-65533 .&. 3 = 1
-
-65534 .&. 65533 = 65532
-65534 .&. 65534 = 65534
-65534 .&. 65535 = 65534
-65534 .&. 0 = 0
-65534 .&. 1 = 0
-65534 .&. 2 = 2
-65534 .&. 3 = 2
-
-65535 .&. 65533 = 65533
-65535 .&. 65534 = 65534
-65535 .&. 65535 = 65535
-65535 .&. 0 = 0
-65535 .&. 1 = 1
-65535 .&. 2 = 2
-65535 .&. 3 = 3
-
-0 .&. 65533 = 0
-0 .&. 65534 = 0
-0 .&. 65535 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 65533 = 1
-1 .&. 65534 = 0
-1 .&. 65535 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 65533 = 0
-2 .&. 65534 = 2
-2 .&. 65535 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 65533 = 1
-3 .&. 65534 = 2
-3 .&. 65535 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-65533 .|. 65533 = 65533
-65533 .|. 65534 = 65535
-65533 .|. 65535 = 65535
-65533 .|. 0 = 65533
-65533 .|. 1 = 65533
-65533 .|. 2 = 65535
-65533 .|. 3 = 65535
-
-65534 .|. 65533 = 65535
-65534 .|. 65534 = 65534
-65534 .|. 65535 = 65535
-65534 .|. 0 = 65534
-65534 .|. 1 = 65535
-65534 .|. 2 = 65534
-65534 .|. 3 = 65535
-
-65535 .|. 65533 = 65535
-65535 .|. 65534 = 65535
-65535 .|. 65535 = 65535
-65535 .|. 0 = 65535
-65535 .|. 1 = 65535
-65535 .|. 2 = 65535
-65535 .|. 3 = 65535
-
-0 .|. 65533 = 65533
-0 .|. 65534 = 65534
-0 .|. 65535 = 65535
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 65533 = 65533
-1 .|. 65534 = 65535
-1 .|. 65535 = 65535
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 65533 = 65535
-2 .|. 65534 = 65534
-2 .|. 65535 = 65535
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 65533 = 65535
-3 .|. 65534 = 65535
-3 .|. 65535 = 65535
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-65533 `xor` 65533 = 0
-65533 `xor` 65534 = 3
-65533 `xor` 65535 = 2
-65533 `xor` 0 = 65533
-65533 `xor` 1 = 65532
-65533 `xor` 2 = 65535
-65533 `xor` 3 = 65534
-
-65534 `xor` 65533 = 3
-65534 `xor` 65534 = 0
-65534 `xor` 65535 = 1
-65534 `xor` 0 = 65534
-65534 `xor` 1 = 65535
-65534 `xor` 2 = 65532
-65534 `xor` 3 = 65533
-
-65535 `xor` 65533 = 2
-65535 `xor` 65534 = 1
-65535 `xor` 65535 = 0
-65535 `xor` 0 = 65535
-65535 `xor` 1 = 65534
-65535 `xor` 2 = 65533
-65535 `xor` 3 = 65532
-
-0 `xor` 65533 = 65533
-0 `xor` 65534 = 65534
-0 `xor` 65535 = 65535
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 65533 = 65532
-1 `xor` 65534 = 65535
-1 `xor` 65535 = 65534
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 65533 = 65535
-2 `xor` 65534 = 65532
-2 `xor` 65535 = 65533
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 65533 = 65534
-3 `xor` 65534 = 65533
-3 `xor` 65535 = 65532
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 65533 = 2
-complement 65534 = 1
-complement 65535 = 0
-complement 0 = 65535
-complement 1 = 65534
-complement 2 = 65533
-complement 3 = 65532
-#
-65533 `shiftL` 0 = 65533
-65533 `shiftL` 1 = 65530
-65533 `shiftL` 2 = 65524
-65533 `shiftL` 3 = 65512
-65533 `shiftL` 32 = 0
-65533 `shiftL` 64 = 0
-
-65534 `shiftL` 0 = 65534
-65534 `shiftL` 1 = 65532
-65534 `shiftL` 2 = 65528
-65534 `shiftL` 3 = 65520
-65534 `shiftL` 32 = 0
-65534 `shiftL` 64 = 0
-
-65535 `shiftL` 0 = 65535
-65535 `shiftL` 1 = 65534
-65535 `shiftL` 2 = 65532
-65535 `shiftL` 3 = 65528
-65535 `shiftL` 32 = 0
-65535 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
-65533 `shiftR` 0 = 65533
-65533 `shiftR` 1 = 32766
-65533 `shiftR` 2 = 16383
-65533 `shiftR` 3 = 8191
-65533 `shiftR` 32 = 0
-65533 `shiftR` 64 = 0
-
-65534 `shiftR` 0 = 65534
-65534 `shiftR` 1 = 32767
-65534 `shiftR` 2 = 16383
-65534 `shiftR` 3 = 8191
-65534 `shiftR` 32 = 0
-65534 `shiftR` 64 = 0
-
-65535 `shiftR` 0 = 65535
-65535 `shiftR` 1 = 32767
-65535 `shiftR` 2 = 16383
-65535 `shiftR` 3 = 8191
-65535 `shiftR` 32 = 0
-65535 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-65533 `rotate` -3 = 49151
-65533 `rotate` -2 = 32767
-65533 `rotate` -1 = 65534
-65533 `rotate` 0 = 65533
-65533 `rotate` 1 = 65531
-65533 `rotate` 2 = 65527
-65533 `rotate` 3 = 65519
-
-65534 `rotate` -3 = 57343
-65534 `rotate` -2 = 49151
-65534 `rotate` -1 = 32767
-65534 `rotate` 0 = 65534
-65534 `rotate` 1 = 65533
-65534 `rotate` 2 = 65531
-65534 `rotate` 3 = 65527
-
-65535 `rotate` -3 = 65535
-65535 `rotate` -2 = 65535
-65535 `rotate` -1 = 65535
-65535 `rotate` 0 = 65535
-65535 `rotate` 1 = 65535
-65535 `rotate` 2 = 65535
-65535 `rotate` 3 = 65535
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 8192
-1 `rotate` -2 = 16384
-1 `rotate` -1 = 32768
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 16384
-2 `rotate` -2 = 32768
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 24576
-3 `rotate` -2 = 49152
-3 `rotate` -1 = 32769
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-65533 `setBit` 0 = 65533
-65533 `setBit` 1 = 65535
-65533 `setBit` 2 = 65533
-65533 `setBit` 3 = 65533
-65533 `setBit` 32 = 65533
-65533 `setBit` 64 = 65533
-
-65534 `setBit` 0 = 65535
-65534 `setBit` 1 = 65534
-65534 `setBit` 2 = 65534
-65534 `setBit` 3 = 65534
-65534 `setBit` 32 = 65534
-65534 `setBit` 64 = 65534
-
-65535 `setBit` 0 = 65535
-65535 `setBit` 1 = 65535
-65535 `setBit` 2 = 65535
-65535 `setBit` 3 = 65535
-65535 `setBit` 32 = 65535
-65535 `setBit` 64 = 65535
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
-65533 `clearBit` 0 = 65532
-65533 `clearBit` 1 = 65533
-65533 `clearBit` 2 = 65529
-65533 `clearBit` 3 = 65525
-65533 `clearBit` 32 = 65533
-65533 `clearBit` 64 = 65533
-
-65534 `clearBit` 0 = 65534
-65534 `clearBit` 1 = 65532
-65534 `clearBit` 2 = 65530
-65534 `clearBit` 3 = 65526
-65534 `clearBit` 32 = 65534
-65534 `clearBit` 64 = 65534
-
-65535 `clearBit` 0 = 65534
-65535 `clearBit` 1 = 65533
-65535 `clearBit` 2 = 65531
-65535 `clearBit` 3 = 65527
-65535 `clearBit` 32 = 65535
-65535 `clearBit` 64 = 65535
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-65533 `complementBit` 0 = 65532
-65533 `complementBit` 1 = 65535
-65533 `complementBit` 2 = 65529
-65533 `complementBit` 3 = 65525
-65533 `complementBit` 32 = 65533
-65533 `complementBit` 64 = 65533
-
-65534 `complementBit` 0 = 65535
-65534 `complementBit` 1 = 65532
-65534 `complementBit` 2 = 65530
-65534 `complementBit` 3 = 65526
-65534 `complementBit` 32 = 65534
-65534 `complementBit` 64 = 65534
-
-65535 `complementBit` 0 = 65534
-65535 `complementBit` 1 = 65533
-65535 `complementBit` 2 = 65531
-65535 `complementBit` 3 = 65527
-65535 `complementBit` 32 = 65535
-65535 `complementBit` 64 = 65535
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
-65533 `testBit` 0 = True
-65533 `testBit` 1 = False
-65533 `testBit` 2 = True
-65533 `testBit` 3 = True
-65533 `testBit` 32 = False
-65533 `testBit` 64 = False
-
-65534 `testBit` 0 = False
-65534 `testBit` 1 = True
-65534 `testBit` 2 = True
-65534 `testBit` 3 = True
-65534 `testBit` 32 = False
-65534 `testBit` 64 = False
-
-65535 `testBit` 0 = True
-65535 `testBit` 1 = True
-65535 `testBit` 2 = True
-65535 `testBit` 3 = True
-65535 `testBit` 32 = False
-65535 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 65533 = 16
-bitSize 65534 = 16
-bitSize 65535 = 16
-bitSize 0 = 16
-bitSize 1 = 16
-bitSize 2 = 16
-bitSize 3 = 16
-#
-isSigned 65533 = False
-isSigned 65534 = False
-isSigned 65535 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Word32
---------------------------------
-testBounded
-(4294967295,0,1)
-(4294967294,4294967295,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[4294967293,4294967294,4294967295,0,1,2,3]
-[4294967293,4294967294,4294967295,0,1,2,3]
-testEq
-4294967293 == 4294967293 = True
-4294967293 == 4294967294 = False
-4294967293 == 4294967295 = False
-4294967293 == 0 = False
-4294967293 == 1 = False
-4294967293 == 2 = False
-4294967293 == 3 = False
-
-4294967294 == 4294967293 = False
-4294967294 == 4294967294 = True
-4294967294 == 4294967295 = False
-4294967294 == 0 = False
-4294967294 == 1 = False
-4294967294 == 2 = False
-4294967294 == 3 = False
-
-4294967295 == 4294967293 = False
-4294967295 == 4294967294 = False
-4294967295 == 4294967295 = True
-4294967295 == 0 = False
-4294967295 == 1 = False
-4294967295 == 2 = False
-4294967295 == 3 = False
-
-0 == 4294967293 = False
-0 == 4294967294 = False
-0 == 4294967295 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 4294967293 = False
-1 == 4294967294 = False
-1 == 4294967295 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 4294967293 = False
-2 == 4294967294 = False
-2 == 4294967295 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 4294967293 = False
-3 == 4294967294 = False
-3 == 4294967295 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-4294967293 /= 4294967293 = False
-4294967293 /= 4294967294 = True
-4294967293 /= 4294967295 = True
-4294967293 /= 0 = True
-4294967293 /= 1 = True
-4294967293 /= 2 = True
-4294967293 /= 3 = True
-
-4294967294 /= 4294967293 = True
-4294967294 /= 4294967294 = False
-4294967294 /= 4294967295 = True
-4294967294 /= 0 = True
-4294967294 /= 1 = True
-4294967294 /= 2 = True
-4294967294 /= 3 = True
-
-4294967295 /= 4294967293 = True
-4294967295 /= 4294967294 = True
-4294967295 /= 4294967295 = False
-4294967295 /= 0 = True
-4294967295 /= 1 = True
-4294967295 /= 2 = True
-4294967295 /= 3 = True
-
-0 /= 4294967293 = True
-0 /= 4294967294 = True
-0 /= 4294967295 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 4294967293 = True
-1 /= 4294967294 = True
-1 /= 4294967295 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 4294967293 = True
-2 /= 4294967294 = True
-2 /= 4294967295 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 4294967293 = True
-3 /= 4294967294 = True
-3 /= 4294967295 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-4294967293 <= 4294967293 = True
-4294967293 <= 4294967294 = True
-4294967293 <= 4294967295 = True
-4294967293 <= 0 = False
-4294967293 <= 1 = False
-4294967293 <= 2 = False
-4294967293 <= 3 = False
-
-4294967294 <= 4294967293 = False
-4294967294 <= 4294967294 = True
-4294967294 <= 4294967295 = True
-4294967294 <= 0 = False
-4294967294 <= 1 = False
-4294967294 <= 2 = False
-4294967294 <= 3 = False
-
-4294967295 <= 4294967293 = False
-4294967295 <= 4294967294 = False
-4294967295 <= 4294967295 = True
-4294967295 <= 0 = False
-4294967295 <= 1 = False
-4294967295 <= 2 = False
-4294967295 <= 3 = False
-
-0 <= 4294967293 = True
-0 <= 4294967294 = True
-0 <= 4294967295 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 4294967293 = True
-1 <= 4294967294 = True
-1 <= 4294967295 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 4294967293 = True
-2 <= 4294967294 = True
-2 <= 4294967295 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 4294967293 = True
-3 <= 4294967294 = True
-3 <= 4294967295 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-4294967293 < 4294967293 = False
-4294967293 < 4294967294 = True
-4294967293 < 4294967295 = True
-4294967293 < 0 = False
-4294967293 < 1 = False
-4294967293 < 2 = False
-4294967293 < 3 = False
-
-4294967294 < 4294967293 = False
-4294967294 < 4294967294 = False
-4294967294 < 4294967295 = True
-4294967294 < 0 = False
-4294967294 < 1 = False
-4294967294 < 2 = False
-4294967294 < 3 = False
-
-4294967295 < 4294967293 = False
-4294967295 < 4294967294 = False
-4294967295 < 4294967295 = False
-4294967295 < 0 = False
-4294967295 < 1 = False
-4294967295 < 2 = False
-4294967295 < 3 = False
-
-0 < 4294967293 = True
-0 < 4294967294 = True
-0 < 4294967295 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 4294967293 = True
-1 < 4294967294 = True
-1 < 4294967295 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 4294967293 = True
-2 < 4294967294 = True
-2 < 4294967295 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 4294967293 = True
-3 < 4294967294 = True
-3 < 4294967295 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-4294967293 > 4294967293 = False
-4294967293 > 4294967294 = False
-4294967293 > 4294967295 = False
-4294967293 > 0 = True
-4294967293 > 1 = True
-4294967293 > 2 = True
-4294967293 > 3 = True
-
-4294967294 > 4294967293 = True
-4294967294 > 4294967294 = False
-4294967294 > 4294967295 = False
-4294967294 > 0 = True
-4294967294 > 1 = True
-4294967294 > 2 = True
-4294967294 > 3 = True
-
-4294967295 > 4294967293 = True
-4294967295 > 4294967294 = True
-4294967295 > 4294967295 = False
-4294967295 > 0 = True
-4294967295 > 1 = True
-4294967295 > 2 = True
-4294967295 > 3 = True
-
-0 > 4294967293 = False
-0 > 4294967294 = False
-0 > 4294967295 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 4294967293 = False
-1 > 4294967294 = False
-1 > 4294967295 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 4294967293 = False
-2 > 4294967294 = False
-2 > 4294967295 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 4294967293 = False
-3 > 4294967294 = False
-3 > 4294967295 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-4294967293 >= 4294967293 = True
-4294967293 >= 4294967294 = False
-4294967293 >= 4294967295 = False
-4294967293 >= 0 = True
-4294967293 >= 1 = True
-4294967293 >= 2 = True
-4294967293 >= 3 = True
-
-4294967294 >= 4294967293 = True
-4294967294 >= 4294967294 = True
-4294967294 >= 4294967295 = False
-4294967294 >= 0 = True
-4294967294 >= 1 = True
-4294967294 >= 2 = True
-4294967294 >= 3 = True
-
-4294967295 >= 4294967293 = True
-4294967295 >= 4294967294 = True
-4294967295 >= 4294967295 = True
-4294967295 >= 0 = True
-4294967295 >= 1 = True
-4294967295 >= 2 = True
-4294967295 >= 3 = True
-
-0 >= 4294967293 = False
-0 >= 4294967294 = False
-0 >= 4294967295 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 4294967293 = False
-1 >= 4294967294 = False
-1 >= 4294967295 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 4294967293 = False
-2 >= 4294967294 = False
-2 >= 4294967295 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 4294967293 = False
-3 >= 4294967294 = False
-3 >= 4294967295 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-4294967293 `compare` 4294967293 = EQ
-4294967293 `compare` 4294967294 = LT
-4294967293 `compare` 4294967295 = LT
-4294967293 `compare` 0 = GT
-4294967293 `compare` 1 = GT
-4294967293 `compare` 2 = GT
-4294967293 `compare` 3 = GT
-
-4294967294 `compare` 4294967293 = GT
-4294967294 `compare` 4294967294 = EQ
-4294967294 `compare` 4294967295 = LT
-4294967294 `compare` 0 = GT
-4294967294 `compare` 1 = GT
-4294967294 `compare` 2 = GT
-4294967294 `compare` 3 = GT
-
-4294967295 `compare` 4294967293 = GT
-4294967295 `compare` 4294967294 = GT
-4294967295 `compare` 4294967295 = EQ
-4294967295 `compare` 0 = GT
-4294967295 `compare` 1 = GT
-4294967295 `compare` 2 = GT
-4294967295 `compare` 3 = GT
-
-0 `compare` 4294967293 = LT
-0 `compare` 4294967294 = LT
-0 `compare` 4294967295 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 4294967293 = LT
-1 `compare` 4294967294 = LT
-1 `compare` 4294967295 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 4294967293 = LT
-2 `compare` 4294967294 = LT
-2 `compare` 4294967295 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 4294967293 = LT
-3 `compare` 4294967294 = LT
-3 `compare` 4294967295 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-4294967293 + 4294967293 = 4294967290
-4294967293 + 4294967294 = 4294967291
-4294967293 + 4294967295 = 4294967292
-4294967293 + 0 = 4294967293
-4294967293 + 1 = 4294967294
-4294967293 + 2 = 4294967295
-4294967293 + 3 = 0
-
-4294967294 + 4294967293 = 4294967291
-4294967294 + 4294967294 = 4294967292
-4294967294 + 4294967295 = 4294967293
-4294967294 + 0 = 4294967294
-4294967294 + 1 = 4294967295
-4294967294 + 2 = 0
-4294967294 + 3 = 1
-
-4294967295 + 4294967293 = 4294967292
-4294967295 + 4294967294 = 4294967293
-4294967295 + 4294967295 = 4294967294
-4294967295 + 0 = 4294967295
-4294967295 + 1 = 0
-4294967295 + 2 = 1
-4294967295 + 3 = 2
-
-0 + 4294967293 = 4294967293
-0 + 4294967294 = 4294967294
-0 + 4294967295 = 4294967295
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 4294967293 = 4294967294
-1 + 4294967294 = 4294967295
-1 + 4294967295 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 4294967293 = 4294967295
-2 + 4294967294 = 0
-2 + 4294967295 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 4294967293 = 0
-3 + 4294967294 = 1
-3 + 4294967295 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-4294967293 - 4294967293 = 0
-4294967293 - 4294967294 = 4294967295
-4294967293 - 4294967295 = 4294967294
-4294967293 - 0 = 4294967293
-4294967293 - 1 = 4294967292
-4294967293 - 2 = 4294967291
-4294967293 - 3 = 4294967290
-
-4294967294 - 4294967293 = 1
-4294967294 - 4294967294 = 0
-4294967294 - 4294967295 = 4294967295
-4294967294 - 0 = 4294967294
-4294967294 - 1 = 4294967293
-4294967294 - 2 = 4294967292
-4294967294 - 3 = 4294967291
-
-4294967295 - 4294967293 = 2
-4294967295 - 4294967294 = 1
-4294967295 - 4294967295 = 0
-4294967295 - 0 = 4294967295
-4294967295 - 1 = 4294967294
-4294967295 - 2 = 4294967293
-4294967295 - 3 = 4294967292
-
-0 - 4294967293 = 3
-0 - 4294967294 = 2
-0 - 4294967295 = 1
-0 - 0 = 0
-0 - 1 = 4294967295
-0 - 2 = 4294967294
-0 - 3 = 4294967293
-
-1 - 4294967293 = 4
-1 - 4294967294 = 3
-1 - 4294967295 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 4294967295
-1 - 3 = 4294967294
-
-2 - 4294967293 = 5
-2 - 4294967294 = 4
-2 - 4294967295 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 4294967295
-
-3 - 4294967293 = 6
-3 - 4294967294 = 5
-3 - 4294967295 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-4294967293 * 4294967293 = 9
-4294967293 * 4294967294 = 6
-4294967293 * 4294967295 = 3
-4294967293 * 0 = 0
-4294967293 * 1 = 4294967293
-4294967293 * 2 = 4294967290
-4294967293 * 3 = 4294967287
-
-4294967294 * 4294967293 = 6
-4294967294 * 4294967294 = 4
-4294967294 * 4294967295 = 2
-4294967294 * 0 = 0
-4294967294 * 1 = 4294967294
-4294967294 * 2 = 4294967292
-4294967294 * 3 = 4294967290
-
-4294967295 * 4294967293 = 3
-4294967295 * 4294967294 = 2
-4294967295 * 4294967295 = 1
-4294967295 * 0 = 0
-4294967295 * 1 = 4294967295
-4294967295 * 2 = 4294967294
-4294967295 * 3 = 4294967293
-
-0 * 4294967293 = 0
-0 * 4294967294 = 0
-0 * 4294967295 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 4294967293 = 4294967293
-1 * 4294967294 = 4294967294
-1 * 4294967295 = 4294967295
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 4294967293 = 4294967290
-2 * 4294967294 = 4294967292
-2 * 4294967295 = 4294967294
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 4294967293 = 4294967287
-3 * 4294967294 = 4294967290
-3 * 4294967295 = 4294967293
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 4294967293 = 3
-negate 4294967294 = 2
-negate 4294967295 = 1
-negate 0 = 0
-negate 1 = 4294967295
-negate 2 = 4294967294
-negate 3 = 4294967293
-#
-testReal
-toRational 4294967293 = 4294967293 % 1
-toRational 4294967294 = 4294967294 % 1
-toRational 4294967295 = 4294967295 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-4294967293 `divMod` 4294967293 = (1,0)
-4294967293 `divMod` 4294967294 = (0,4294967293)
-4294967293 `divMod` 4294967295 = (0,4294967293)
-4294967293 `divMod` 0 = divide by zero
-4294967293 `divMod` 1 = (4294967293,0)
-4294967293 `divMod` 2 = (2147483646,1)
-4294967293 `divMod` 3 = (1431655764,1)
-
-4294967294 `divMod` 4294967293 = (1,1)
-4294967294 `divMod` 4294967294 = (1,0)
-4294967294 `divMod` 4294967295 = (0,4294967294)
-4294967294 `divMod` 0 = divide by zero
-4294967294 `divMod` 1 = (4294967294,0)
-4294967294 `divMod` 2 = (2147483647,0)
-4294967294 `divMod` 3 = (1431655764,2)
-
-4294967295 `divMod` 4294967293 = (1,2)
-4294967295 `divMod` 4294967294 = (1,1)
-4294967295 `divMod` 4294967295 = (1,0)
-4294967295 `divMod` 0 = divide by zero
-4294967295 `divMod` 1 = (4294967295,0)
-4294967295 `divMod` 2 = (2147483647,1)
-4294967295 `divMod` 3 = (1431655765,0)
-
-0 `divMod` 4294967293 = (0,0)
-0 `divMod` 4294967294 = (0,0)
-0 `divMod` 4294967295 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 4294967293 = (0,1)
-1 `divMod` 4294967294 = (0,1)
-1 `divMod` 4294967295 = (0,1)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 4294967293 = (0,2)
-2 `divMod` 4294967294 = (0,2)
-2 `divMod` 4294967295 = (0,2)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 4294967293 = (0,3)
-3 `divMod` 4294967294 = (0,3)
-3 `divMod` 4294967295 = (0,3)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-4294967293 `div` 4294967293 = 1
-4294967293 `div` 4294967294 = 0
-4294967293 `div` 4294967295 = 0
-4294967293 `div` 0 = divide by zero
-4294967293 `div` 1 = 4294967293
-4294967293 `div` 2 = 2147483646
-4294967293 `div` 3 = 1431655764
-
-4294967294 `div` 4294967293 = 1
-4294967294 `div` 4294967294 = 1
-4294967294 `div` 4294967295 = 0
-4294967294 `div` 0 = divide by zero
-4294967294 `div` 1 = 4294967294
-4294967294 `div` 2 = 2147483647
-4294967294 `div` 3 = 1431655764
-
-4294967295 `div` 4294967293 = 1
-4294967295 `div` 4294967294 = 1
-4294967295 `div` 4294967295 = 1
-4294967295 `div` 0 = divide by zero
-4294967295 `div` 1 = 4294967295
-4294967295 `div` 2 = 2147483647
-4294967295 `div` 3 = 1431655765
-
-0 `div` 4294967293 = 0
-0 `div` 4294967294 = 0
-0 `div` 4294967295 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 4294967293 = 0
-1 `div` 4294967294 = 0
-1 `div` 4294967295 = 0
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 4294967293 = 0
-2 `div` 4294967294 = 0
-2 `div` 4294967295 = 0
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 4294967293 = 0
-3 `div` 4294967294 = 0
-3 `div` 4294967295 = 0
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-4294967293 `mod` 4294967293 = 0
-4294967293 `mod` 4294967294 = 4294967293
-4294967293 `mod` 4294967295 = 4294967293
-4294967293 `mod` 0 = divide by zero
-4294967293 `mod` 1 = 0
-4294967293 `mod` 2 = 1
-4294967293 `mod` 3 = 1
-
-4294967294 `mod` 4294967293 = 1
-4294967294 `mod` 4294967294 = 0
-4294967294 `mod` 4294967295 = 4294967294
-4294967294 `mod` 0 = divide by zero
-4294967294 `mod` 1 = 0
-4294967294 `mod` 2 = 0
-4294967294 `mod` 3 = 2
-
-4294967295 `mod` 4294967293 = 2
-4294967295 `mod` 4294967294 = 1
-4294967295 `mod` 4294967295 = 0
-4294967295 `mod` 0 = divide by zero
-4294967295 `mod` 1 = 0
-4294967295 `mod` 2 = 1
-4294967295 `mod` 3 = 0
-
-0 `mod` 4294967293 = 0
-0 `mod` 4294967294 = 0
-0 `mod` 4294967295 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 4294967293 = 1
-1 `mod` 4294967294 = 1
-1 `mod` 4294967295 = 1
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 4294967293 = 2
-2 `mod` 4294967294 = 2
-2 `mod` 4294967295 = 2
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 4294967293 = 3
-3 `mod` 4294967294 = 3
-3 `mod` 4294967295 = 3
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-4294967293 `quotRem` 4294967293 = (1,0)
-4294967293 `quotRem` 4294967294 = (0,4294967293)
-4294967293 `quotRem` 4294967295 = (0,4294967293)
-4294967293 `quotRem` 0 = divide by zero
-4294967293 `quotRem` 1 = (4294967293,0)
-4294967293 `quotRem` 2 = (2147483646,1)
-4294967293 `quotRem` 3 = (1431655764,1)
-
-4294967294 `quotRem` 4294967293 = (1,1)
-4294967294 `quotRem` 4294967294 = (1,0)
-4294967294 `quotRem` 4294967295 = (0,4294967294)
-4294967294 `quotRem` 0 = divide by zero
-4294967294 `quotRem` 1 = (4294967294,0)
-4294967294 `quotRem` 2 = (2147483647,0)
-4294967294 `quotRem` 3 = (1431655764,2)
-
-4294967295 `quotRem` 4294967293 = (1,2)
-4294967295 `quotRem` 4294967294 = (1,1)
-4294967295 `quotRem` 4294967295 = (1,0)
-4294967295 `quotRem` 0 = divide by zero
-4294967295 `quotRem` 1 = (4294967295,0)
-4294967295 `quotRem` 2 = (2147483647,1)
-4294967295 `quotRem` 3 = (1431655765,0)
-
-0 `quotRem` 4294967293 = (0,0)
-0 `quotRem` 4294967294 = (0,0)
-0 `quotRem` 4294967295 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 4294967293 = (0,1)
-1 `quotRem` 4294967294 = (0,1)
-1 `quotRem` 4294967295 = (0,1)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 4294967293 = (0,2)
-2 `quotRem` 4294967294 = (0,2)
-2 `quotRem` 4294967295 = (0,2)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 4294967293 = (0,3)
-3 `quotRem` 4294967294 = (0,3)
-3 `quotRem` 4294967295 = (0,3)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-4294967293 `quot` 4294967293 = 1
-4294967293 `quot` 4294967294 = 0
-4294967293 `quot` 4294967295 = 0
-4294967293 `quot` 0 = divide by zero
-4294967293 `quot` 1 = 4294967293
-4294967293 `quot` 2 = 2147483646
-4294967293 `quot` 3 = 1431655764
-
-4294967294 `quot` 4294967293 = 1
-4294967294 `quot` 4294967294 = 1
-4294967294 `quot` 4294967295 = 0
-4294967294 `quot` 0 = divide by zero
-4294967294 `quot` 1 = 4294967294
-4294967294 `quot` 2 = 2147483647
-4294967294 `quot` 3 = 1431655764
-
-4294967295 `quot` 4294967293 = 1
-4294967295 `quot` 4294967294 = 1
-4294967295 `quot` 4294967295 = 1
-4294967295 `quot` 0 = divide by zero
-4294967295 `quot` 1 = 4294967295
-4294967295 `quot` 2 = 2147483647
-4294967295 `quot` 3 = 1431655765
-
-0 `quot` 4294967293 = 0
-0 `quot` 4294967294 = 0
-0 `quot` 4294967295 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 4294967293 = 0
-1 `quot` 4294967294 = 0
-1 `quot` 4294967295 = 0
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 4294967293 = 0
-2 `quot` 4294967294 = 0
-2 `quot` 4294967295 = 0
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 4294967293 = 0
-3 `quot` 4294967294 = 0
-3 `quot` 4294967295 = 0
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-4294967293 `rem` 4294967293 = 0
-4294967293 `rem` 4294967294 = 4294967293
-4294967293 `rem` 4294967295 = 4294967293
-4294967293 `rem` 0 = divide by zero
-4294967293 `rem` 1 = 0
-4294967293 `rem` 2 = 1
-4294967293 `rem` 3 = 1
-
-4294967294 `rem` 4294967293 = 1
-4294967294 `rem` 4294967294 = 0
-4294967294 `rem` 4294967295 = 4294967294
-4294967294 `rem` 0 = divide by zero
-4294967294 `rem` 1 = 0
-4294967294 `rem` 2 = 0
-4294967294 `rem` 3 = 2
-
-4294967295 `rem` 4294967293 = 2
-4294967295 `rem` 4294967294 = 1
-4294967295 `rem` 4294967295 = 0
-4294967295 `rem` 0 = divide by zero
-4294967295 `rem` 1 = 0
-4294967295 `rem` 2 = 1
-4294967295 `rem` 3 = 0
-
-0 `rem` 4294967293 = 0
-0 `rem` 4294967294 = 0
-0 `rem` 4294967295 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 4294967293 = 1
-1 `rem` 4294967294 = 1
-1 `rem` 4294967295 = 1
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 4294967293 = 2
-2 `rem` 4294967294 = 2
-2 `rem` 4294967295 = 2
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 4294967293 = 3
-3 `rem` 4294967294 = 3
-3 `rem` 4294967295 = 3
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,4294967295]
-Int : [0,0,4294967295]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [0,0,4294967295]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [0,0,4294967295]
-testBits
-4294967293 .&. 4294967293 = 4294967293
-4294967293 .&. 4294967294 = 4294967292
-4294967293 .&. 4294967295 = 4294967293
-4294967293 .&. 0 = 0
-4294967293 .&. 1 = 1
-4294967293 .&. 2 = 0
-4294967293 .&. 3 = 1
-
-4294967294 .&. 4294967293 = 4294967292
-4294967294 .&. 4294967294 = 4294967294
-4294967294 .&. 4294967295 = 4294967294
-4294967294 .&. 0 = 0
-4294967294 .&. 1 = 0
-4294967294 .&. 2 = 2
-4294967294 .&. 3 = 2
-
-4294967295 .&. 4294967293 = 4294967293
-4294967295 .&. 4294967294 = 4294967294
-4294967295 .&. 4294967295 = 4294967295
-4294967295 .&. 0 = 0
-4294967295 .&. 1 = 1
-4294967295 .&. 2 = 2
-4294967295 .&. 3 = 3
-
-0 .&. 4294967293 = 0
-0 .&. 4294967294 = 0
-0 .&. 4294967295 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 4294967293 = 1
-1 .&. 4294967294 = 0
-1 .&. 4294967295 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 4294967293 = 0
-2 .&. 4294967294 = 2
-2 .&. 4294967295 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 4294967293 = 1
-3 .&. 4294967294 = 2
-3 .&. 4294967295 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-4294967293 .|. 4294967293 = 4294967293
-4294967293 .|. 4294967294 = 4294967295
-4294967293 .|. 4294967295 = 4294967295
-4294967293 .|. 0 = 4294967293
-4294967293 .|. 1 = 4294967293
-4294967293 .|. 2 = 4294967295
-4294967293 .|. 3 = 4294967295
-
-4294967294 .|. 4294967293 = 4294967295
-4294967294 .|. 4294967294 = 4294967294
-4294967294 .|. 4294967295 = 4294967295
-4294967294 .|. 0 = 4294967294
-4294967294 .|. 1 = 4294967295
-4294967294 .|. 2 = 4294967294
-4294967294 .|. 3 = 4294967295
-
-4294967295 .|. 4294967293 = 4294967295
-4294967295 .|. 4294967294 = 4294967295
-4294967295 .|. 4294967295 = 4294967295
-4294967295 .|. 0 = 4294967295
-4294967295 .|. 1 = 4294967295
-4294967295 .|. 2 = 4294967295
-4294967295 .|. 3 = 4294967295
-
-0 .|. 4294967293 = 4294967293
-0 .|. 4294967294 = 4294967294
-0 .|. 4294967295 = 4294967295
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 4294967293 = 4294967293
-1 .|. 4294967294 = 4294967295
-1 .|. 4294967295 = 4294967295
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 4294967293 = 4294967295
-2 .|. 4294967294 = 4294967294
-2 .|. 4294967295 = 4294967295
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 4294967293 = 4294967295
-3 .|. 4294967294 = 4294967295
-3 .|. 4294967295 = 4294967295
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-4294967293 `xor` 4294967293 = 0
-4294967293 `xor` 4294967294 = 3
-4294967293 `xor` 4294967295 = 2
-4294967293 `xor` 0 = 4294967293
-4294967293 `xor` 1 = 4294967292
-4294967293 `xor` 2 = 4294967295
-4294967293 `xor` 3 = 4294967294
-
-4294967294 `xor` 4294967293 = 3
-4294967294 `xor` 4294967294 = 0
-4294967294 `xor` 4294967295 = 1
-4294967294 `xor` 0 = 4294967294
-4294967294 `xor` 1 = 4294967295
-4294967294 `xor` 2 = 4294967292
-4294967294 `xor` 3 = 4294967293
-
-4294967295 `xor` 4294967293 = 2
-4294967295 `xor` 4294967294 = 1
-4294967295 `xor` 4294967295 = 0
-4294967295 `xor` 0 = 4294967295
-4294967295 `xor` 1 = 4294967294
-4294967295 `xor` 2 = 4294967293
-4294967295 `xor` 3 = 4294967292
-
-0 `xor` 4294967293 = 4294967293
-0 `xor` 4294967294 = 4294967294
-0 `xor` 4294967295 = 4294967295
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 4294967293 = 4294967292
-1 `xor` 4294967294 = 4294967295
-1 `xor` 4294967295 = 4294967294
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 4294967293 = 4294967295
-2 `xor` 4294967294 = 4294967292
-2 `xor` 4294967295 = 4294967293
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 4294967293 = 4294967294
-3 `xor` 4294967294 = 4294967293
-3 `xor` 4294967295 = 4294967292
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 4294967293 = 2
-complement 4294967294 = 1
-complement 4294967295 = 0
-complement 0 = 4294967295
-complement 1 = 4294967294
-complement 2 = 4294967293
-complement 3 = 4294967292
-#
-4294967293 `shiftL` 0 = 4294967293
-4294967293 `shiftL` 1 = 4294967290
-4294967293 `shiftL` 2 = 4294967284
-4294967293 `shiftL` 3 = 4294967272
-4294967293 `shiftL` 32 = 0
-4294967293 `shiftL` 64 = 0
-
-4294967294 `shiftL` 0 = 4294967294
-4294967294 `shiftL` 1 = 4294967292
-4294967294 `shiftL` 2 = 4294967288
-4294967294 `shiftL` 3 = 4294967280
-4294967294 `shiftL` 32 = 0
-4294967294 `shiftL` 64 = 0
-
-4294967295 `shiftL` 0 = 4294967295
-4294967295 `shiftL` 1 = 4294967294
-4294967295 `shiftL` 2 = 4294967292
-4294967295 `shiftL` 3 = 4294967288
-4294967295 `shiftL` 32 = 0
-4294967295 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
-4294967293 `shiftR` 0 = 4294967293
-4294967293 `shiftR` 1 = 2147483646
-4294967293 `shiftR` 2 = 1073741823
-4294967293 `shiftR` 3 = 536870911
-4294967293 `shiftR` 32 = 0
-4294967293 `shiftR` 64 = 0
-
-4294967294 `shiftR` 0 = 4294967294
-4294967294 `shiftR` 1 = 2147483647
-4294967294 `shiftR` 2 = 1073741823
-4294967294 `shiftR` 3 = 536870911
-4294967294 `shiftR` 32 = 0
-4294967294 `shiftR` 64 = 0
-
-4294967295 `shiftR` 0 = 4294967295
-4294967295 `shiftR` 1 = 2147483647
-4294967295 `shiftR` 2 = 1073741823
-4294967295 `shiftR` 3 = 536870911
-4294967295 `shiftR` 32 = 0
-4294967295 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-4294967293 `rotate` -3 = 3221225471
-4294967293 `rotate` -2 = 2147483647
-4294967293 `rotate` -1 = 4294967294
-4294967293 `rotate` 0 = 4294967293
-4294967293 `rotate` 1 = 4294967291
-4294967293 `rotate` 2 = 4294967287
-4294967293 `rotate` 3 = 4294967279
-
-4294967294 `rotate` -3 = 3758096383
-4294967294 `rotate` -2 = 3221225471
-4294967294 `rotate` -1 = 2147483647
-4294967294 `rotate` 0 = 4294967294
-4294967294 `rotate` 1 = 4294967293
-4294967294 `rotate` 2 = 4294967291
-4294967294 `rotate` 3 = 4294967287
-
-4294967295 `rotate` -3 = 4294967295
-4294967295 `rotate` -2 = 4294967295
-4294967295 `rotate` -1 = 4294967295
-4294967295 `rotate` 0 = 4294967295
-4294967295 `rotate` 1 = 4294967295
-4294967295 `rotate` 2 = 4294967295
-4294967295 `rotate` 3 = 4294967295
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 536870912
-1 `rotate` -2 = 1073741824
-1 `rotate` -1 = 2147483648
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 1073741824
-2 `rotate` -2 = 2147483648
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 1610612736
-3 `rotate` -2 = 3221225472
-3 `rotate` -1 = 2147483649
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-4294967293 `setBit` 0 = 4294967293
-4294967293 `setBit` 1 = 4294967295
-4294967293 `setBit` 2 = 4294967293
-4294967293 `setBit` 3 = 4294967293
-4294967293 `setBit` 32 = 4294967293
-4294967293 `setBit` 64 = 4294967293
-
-4294967294 `setBit` 0 = 4294967295
-4294967294 `setBit` 1 = 4294967294
-4294967294 `setBit` 2 = 4294967294
-4294967294 `setBit` 3 = 4294967294
-4294967294 `setBit` 32 = 4294967294
-4294967294 `setBit` 64 = 4294967294
-
-4294967295 `setBit` 0 = 4294967295
-4294967295 `setBit` 1 = 4294967295
-4294967295 `setBit` 2 = 4294967295
-4294967295 `setBit` 3 = 4294967295
-4294967295 `setBit` 32 = 4294967295
-4294967295 `setBit` 64 = 4294967295
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
-4294967293 `clearBit` 0 = 4294967292
-4294967293 `clearBit` 1 = 4294967293
-4294967293 `clearBit` 2 = 4294967289
-4294967293 `clearBit` 3 = 4294967285
-4294967293 `clearBit` 32 = 4294967293
-4294967293 `clearBit` 64 = 4294967293
-
-4294967294 `clearBit` 0 = 4294967294
-4294967294 `clearBit` 1 = 4294967292
-4294967294 `clearBit` 2 = 4294967290
-4294967294 `clearBit` 3 = 4294967286
-4294967294 `clearBit` 32 = 4294967294
-4294967294 `clearBit` 64 = 4294967294
-
-4294967295 `clearBit` 0 = 4294967294
-4294967295 `clearBit` 1 = 4294967293
-4294967295 `clearBit` 2 = 4294967291
-4294967295 `clearBit` 3 = 4294967287
-4294967295 `clearBit` 32 = 4294967295
-4294967295 `clearBit` 64 = 4294967295
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-4294967293 `complementBit` 0 = 4294967292
-4294967293 `complementBit` 1 = 4294967295
-4294967293 `complementBit` 2 = 4294967289
-4294967293 `complementBit` 3 = 4294967285
-4294967293 `complementBit` 32 = 4294967293
-4294967293 `complementBit` 64 = 4294967293
-
-4294967294 `complementBit` 0 = 4294967295
-4294967294 `complementBit` 1 = 4294967292
-4294967294 `complementBit` 2 = 4294967290
-4294967294 `complementBit` 3 = 4294967286
-4294967294 `complementBit` 32 = 4294967294
-4294967294 `complementBit` 64 = 4294967294
-
-4294967295 `complementBit` 0 = 4294967294
-4294967295 `complementBit` 1 = 4294967293
-4294967295 `complementBit` 2 = 4294967291
-4294967295 `complementBit` 3 = 4294967287
-4294967295 `complementBit` 32 = 4294967295
-4294967295 `complementBit` 64 = 4294967295
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
-4294967293 `testBit` 0 = True
-4294967293 `testBit` 1 = False
-4294967293 `testBit` 2 = True
-4294967293 `testBit` 3 = True
-4294967293 `testBit` 32 = False
-4294967293 `testBit` 64 = False
-
-4294967294 `testBit` 0 = False
-4294967294 `testBit` 1 = True
-4294967294 `testBit` 2 = True
-4294967294 `testBit` 3 = True
-4294967294 `testBit` 32 = False
-4294967294 `testBit` 64 = False
-
-4294967295 `testBit` 0 = True
-4294967295 `testBit` 1 = True
-4294967295 `testBit` 2 = True
-4294967295 `testBit` 3 = True
-4294967295 `testBit` 32 = False
-4294967295 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 4294967293 = 32
-bitSize 4294967294 = 32
-bitSize 4294967295 = 32
-bitSize 0 = 32
-bitSize 1 = 32
-bitSize 2 = 32
-bitSize 3 = 32
-#
-isSigned 4294967293 = False
-isSigned 4294967294 = False
-isSigned 4294967295 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Word64
---------------------------------
-testBounded
-(18446744073709551615,0,1)
-(18446744073709551614,18446744073709551615,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[18446744073709551613,18446744073709551614,18446744073709551615,0,1,2,3]
-[18446744073709551613,18446744073709551614,18446744073709551615,0,1,2,3]
-testEq
-18446744073709551613 == 18446744073709551613 = True
-18446744073709551613 == 18446744073709551614 = False
-18446744073709551613 == 18446744073709551615 = False
-18446744073709551613 == 0 = False
-18446744073709551613 == 1 = False
-18446744073709551613 == 2 = False
-18446744073709551613 == 3 = False
-
-18446744073709551614 == 18446744073709551613 = False
-18446744073709551614 == 18446744073709551614 = True
-18446744073709551614 == 18446744073709551615 = False
-18446744073709551614 == 0 = False
-18446744073709551614 == 1 = False
-18446744073709551614 == 2 = False
-18446744073709551614 == 3 = False
-
-18446744073709551615 == 18446744073709551613 = False
-18446744073709551615 == 18446744073709551614 = False
-18446744073709551615 == 18446744073709551615 = True
-18446744073709551615 == 0 = False
-18446744073709551615 == 1 = False
-18446744073709551615 == 2 = False
-18446744073709551615 == 3 = False
-
-0 == 18446744073709551613 = False
-0 == 18446744073709551614 = False
-0 == 18446744073709551615 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 18446744073709551613 = False
-1 == 18446744073709551614 = False
-1 == 18446744073709551615 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 18446744073709551613 = False
-2 == 18446744073709551614 = False
-2 == 18446744073709551615 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 18446744073709551613 = False
-3 == 18446744073709551614 = False
-3 == 18446744073709551615 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-18446744073709551613 /= 18446744073709551613 = False
-18446744073709551613 /= 18446744073709551614 = True
-18446744073709551613 /= 18446744073709551615 = True
-18446744073709551613 /= 0 = True
-18446744073709551613 /= 1 = True
-18446744073709551613 /= 2 = True
-18446744073709551613 /= 3 = True
-
-18446744073709551614 /= 18446744073709551613 = True
-18446744073709551614 /= 18446744073709551614 = False
-18446744073709551614 /= 18446744073709551615 = True
-18446744073709551614 /= 0 = True
-18446744073709551614 /= 1 = True
-18446744073709551614 /= 2 = True
-18446744073709551614 /= 3 = True
-
-18446744073709551615 /= 18446744073709551613 = True
-18446744073709551615 /= 18446744073709551614 = True
-18446744073709551615 /= 18446744073709551615 = False
-18446744073709551615 /= 0 = True
-18446744073709551615 /= 1 = True
-18446744073709551615 /= 2 = True
-18446744073709551615 /= 3 = True
-
-0 /= 18446744073709551613 = True
-0 /= 18446744073709551614 = True
-0 /= 18446744073709551615 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 18446744073709551613 = True
-1 /= 18446744073709551614 = True
-1 /= 18446744073709551615 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 18446744073709551613 = True
-2 /= 18446744073709551614 = True
-2 /= 18446744073709551615 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 18446744073709551613 = True
-3 /= 18446744073709551614 = True
-3 /= 18446744073709551615 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-18446744073709551613 <= 18446744073709551613 = True
-18446744073709551613 <= 18446744073709551614 = True
-18446744073709551613 <= 18446744073709551615 = True
-18446744073709551613 <= 0 = False
-18446744073709551613 <= 1 = False
-18446744073709551613 <= 2 = False
-18446744073709551613 <= 3 = False
-
-18446744073709551614 <= 18446744073709551613 = False
-18446744073709551614 <= 18446744073709551614 = True
-18446744073709551614 <= 18446744073709551615 = True
-18446744073709551614 <= 0 = False
-18446744073709551614 <= 1 = False
-18446744073709551614 <= 2 = False
-18446744073709551614 <= 3 = False
-
-18446744073709551615 <= 18446744073709551613 = False
-18446744073709551615 <= 18446744073709551614 = False
-18446744073709551615 <= 18446744073709551615 = True
-18446744073709551615 <= 0 = False
-18446744073709551615 <= 1 = False
-18446744073709551615 <= 2 = False
-18446744073709551615 <= 3 = False
-
-0 <= 18446744073709551613 = True
-0 <= 18446744073709551614 = True
-0 <= 18446744073709551615 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 18446744073709551613 = True
-1 <= 18446744073709551614 = True
-1 <= 18446744073709551615 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 18446744073709551613 = True
-2 <= 18446744073709551614 = True
-2 <= 18446744073709551615 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 18446744073709551613 = True
-3 <= 18446744073709551614 = True
-3 <= 18446744073709551615 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-18446744073709551613 < 18446744073709551613 = False
-18446744073709551613 < 18446744073709551614 = True
-18446744073709551613 < 18446744073709551615 = True
-18446744073709551613 < 0 = False
-18446744073709551613 < 1 = False
-18446744073709551613 < 2 = False
-18446744073709551613 < 3 = False
-
-18446744073709551614 < 18446744073709551613 = False
-18446744073709551614 < 18446744073709551614 = False
-18446744073709551614 < 18446744073709551615 = True
-18446744073709551614 < 0 = False
-18446744073709551614 < 1 = False
-18446744073709551614 < 2 = False
-18446744073709551614 < 3 = False
-
-18446744073709551615 < 18446744073709551613 = False
-18446744073709551615 < 18446744073709551614 = False
-18446744073709551615 < 18446744073709551615 = False
-18446744073709551615 < 0 = False
-18446744073709551615 < 1 = False
-18446744073709551615 < 2 = False
-18446744073709551615 < 3 = False
-
-0 < 18446744073709551613 = True
-0 < 18446744073709551614 = True
-0 < 18446744073709551615 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 18446744073709551613 = True
-1 < 18446744073709551614 = True
-1 < 18446744073709551615 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 18446744073709551613 = True
-2 < 18446744073709551614 = True
-2 < 18446744073709551615 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 18446744073709551613 = True
-3 < 18446744073709551614 = True
-3 < 18446744073709551615 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-18446744073709551613 > 18446744073709551613 = False
-18446744073709551613 > 18446744073709551614 = False
-18446744073709551613 > 18446744073709551615 = False
-18446744073709551613 > 0 = True
-18446744073709551613 > 1 = True
-18446744073709551613 > 2 = True
-18446744073709551613 > 3 = True
-
-18446744073709551614 > 18446744073709551613 = True
-18446744073709551614 > 18446744073709551614 = False
-18446744073709551614 > 18446744073709551615 = False
-18446744073709551614 > 0 = True
-18446744073709551614 > 1 = True
-18446744073709551614 > 2 = True
-18446744073709551614 > 3 = True
-
-18446744073709551615 > 18446744073709551613 = True
-18446744073709551615 > 18446744073709551614 = True
-18446744073709551615 > 18446744073709551615 = False
-18446744073709551615 > 0 = True
-18446744073709551615 > 1 = True
-18446744073709551615 > 2 = True
-18446744073709551615 > 3 = True
-
-0 > 18446744073709551613 = False
-0 > 18446744073709551614 = False
-0 > 18446744073709551615 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 18446744073709551613 = False
-1 > 18446744073709551614 = False
-1 > 18446744073709551615 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 18446744073709551613 = False
-2 > 18446744073709551614 = False
-2 > 18446744073709551615 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 18446744073709551613 = False
-3 > 18446744073709551614 = False
-3 > 18446744073709551615 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-18446744073709551613 >= 18446744073709551613 = True
-18446744073709551613 >= 18446744073709551614 = False
-18446744073709551613 >= 18446744073709551615 = False
-18446744073709551613 >= 0 = True
-18446744073709551613 >= 1 = True
-18446744073709551613 >= 2 = True
-18446744073709551613 >= 3 = True
-
-18446744073709551614 >= 18446744073709551613 = True
-18446744073709551614 >= 18446744073709551614 = True
-18446744073709551614 >= 18446744073709551615 = False
-18446744073709551614 >= 0 = True
-18446744073709551614 >= 1 = True
-18446744073709551614 >= 2 = True
-18446744073709551614 >= 3 = True
-
-18446744073709551615 >= 18446744073709551613 = True
-18446744073709551615 >= 18446744073709551614 = True
-18446744073709551615 >= 18446744073709551615 = True
-18446744073709551615 >= 0 = True
-18446744073709551615 >= 1 = True
-18446744073709551615 >= 2 = True
-18446744073709551615 >= 3 = True
-
-0 >= 18446744073709551613 = False
-0 >= 18446744073709551614 = False
-0 >= 18446744073709551615 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 18446744073709551613 = False
-1 >= 18446744073709551614 = False
-1 >= 18446744073709551615 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 18446744073709551613 = False
-2 >= 18446744073709551614 = False
-2 >= 18446744073709551615 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 18446744073709551613 = False
-3 >= 18446744073709551614 = False
-3 >= 18446744073709551615 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-18446744073709551613 `compare` 18446744073709551613 = EQ
-18446744073709551613 `compare` 18446744073709551614 = LT
-18446744073709551613 `compare` 18446744073709551615 = LT
-18446744073709551613 `compare` 0 = GT
-18446744073709551613 `compare` 1 = GT
-18446744073709551613 `compare` 2 = GT
-18446744073709551613 `compare` 3 = GT
-
-18446744073709551614 `compare` 18446744073709551613 = GT
-18446744073709551614 `compare` 18446744073709551614 = EQ
-18446744073709551614 `compare` 18446744073709551615 = LT
-18446744073709551614 `compare` 0 = GT
-18446744073709551614 `compare` 1 = GT
-18446744073709551614 `compare` 2 = GT
-18446744073709551614 `compare` 3 = GT
-
-18446744073709551615 `compare` 18446744073709551613 = GT
-18446744073709551615 `compare` 18446744073709551614 = GT
-18446744073709551615 `compare` 18446744073709551615 = EQ
-18446744073709551615 `compare` 0 = GT
-18446744073709551615 `compare` 1 = GT
-18446744073709551615 `compare` 2 = GT
-18446744073709551615 `compare` 3 = GT
-
-0 `compare` 18446744073709551613 = LT
-0 `compare` 18446744073709551614 = LT
-0 `compare` 18446744073709551615 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 18446744073709551613 = LT
-1 `compare` 18446744073709551614 = LT
-1 `compare` 18446744073709551615 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 18446744073709551613 = LT
-2 `compare` 18446744073709551614 = LT
-2 `compare` 18446744073709551615 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 18446744073709551613 = LT
-3 `compare` 18446744073709551614 = LT
-3 `compare` 18446744073709551615 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-18446744073709551613 + 18446744073709551613 = 18446744073709551610
-18446744073709551613 + 18446744073709551614 = 18446744073709551611
-18446744073709551613 + 18446744073709551615 = 18446744073709551612
-18446744073709551613 + 0 = 18446744073709551613
-18446744073709551613 + 1 = 18446744073709551614
-18446744073709551613 + 2 = 18446744073709551615
-18446744073709551613 + 3 = 0
-
-18446744073709551614 + 18446744073709551613 = 18446744073709551611
-18446744073709551614 + 18446744073709551614 = 18446744073709551612
-18446744073709551614 + 18446744073709551615 = 18446744073709551613
-18446744073709551614 + 0 = 18446744073709551614
-18446744073709551614 + 1 = 18446744073709551615
-18446744073709551614 + 2 = 0
-18446744073709551614 + 3 = 1
-
-18446744073709551615 + 18446744073709551613 = 18446744073709551612
-18446744073709551615 + 18446744073709551614 = 18446744073709551613
-18446744073709551615 + 18446744073709551615 = 18446744073709551614
-18446744073709551615 + 0 = 18446744073709551615
-18446744073709551615 + 1 = 0
-18446744073709551615 + 2 = 1
-18446744073709551615 + 3 = 2
-
-0 + 18446744073709551613 = 18446744073709551613
-0 + 18446744073709551614 = 18446744073709551614
-0 + 18446744073709551615 = 18446744073709551615
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 18446744073709551613 = 18446744073709551614
-1 + 18446744073709551614 = 18446744073709551615
-1 + 18446744073709551615 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 18446744073709551613 = 18446744073709551615
-2 + 18446744073709551614 = 0
-2 + 18446744073709551615 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 18446744073709551613 = 0
-3 + 18446744073709551614 = 1
-3 + 18446744073709551615 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-18446744073709551613 - 18446744073709551613 = 0
-18446744073709551613 - 18446744073709551614 = 18446744073709551615
-18446744073709551613 - 18446744073709551615 = 18446744073709551614
-18446744073709551613 - 0 = 18446744073709551613
-18446744073709551613 - 1 = 18446744073709551612
-18446744073709551613 - 2 = 18446744073709551611
-18446744073709551613 - 3 = 18446744073709551610
-
-18446744073709551614 - 18446744073709551613 = 1
-18446744073709551614 - 18446744073709551614 = 0
-18446744073709551614 - 18446744073709551615 = 18446744073709551615
-18446744073709551614 - 0 = 18446744073709551614
-18446744073709551614 - 1 = 18446744073709551613
-18446744073709551614 - 2 = 18446744073709551612
-18446744073709551614 - 3 = 18446744073709551611
-
-18446744073709551615 - 18446744073709551613 = 2
-18446744073709551615 - 18446744073709551614 = 1
-18446744073709551615 - 18446744073709551615 = 0
-18446744073709551615 - 0 = 18446744073709551615
-18446744073709551615 - 1 = 18446744073709551614
-18446744073709551615 - 2 = 18446744073709551613
-18446744073709551615 - 3 = 18446744073709551612
-
-0 - 18446744073709551613 = 3
-0 - 18446744073709551614 = 2
-0 - 18446744073709551615 = 1
-0 - 0 = 0
-0 - 1 = 18446744073709551615
-0 - 2 = 18446744073709551614
-0 - 3 = 18446744073709551613
-
-1 - 18446744073709551613 = 4
-1 - 18446744073709551614 = 3
-1 - 18446744073709551615 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 18446744073709551615
-1 - 3 = 18446744073709551614
-
-2 - 18446744073709551613 = 5
-2 - 18446744073709551614 = 4
-2 - 18446744073709551615 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 18446744073709551615
-
-3 - 18446744073709551613 = 6
-3 - 18446744073709551614 = 5
-3 - 18446744073709551615 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-18446744073709551613 * 18446744073709551613 = 9
-18446744073709551613 * 18446744073709551614 = 6
-18446744073709551613 * 18446744073709551615 = 3
-18446744073709551613 * 0 = 0
-18446744073709551613 * 1 = 18446744073709551613
-18446744073709551613 * 2 = 18446744073709551610
-18446744073709551613 * 3 = 18446744073709551607
-
-18446744073709551614 * 18446744073709551613 = 6
-18446744073709551614 * 18446744073709551614 = 4
-18446744073709551614 * 18446744073709551615 = 2
-18446744073709551614 * 0 = 0
-18446744073709551614 * 1 = 18446744073709551614
-18446744073709551614 * 2 = 18446744073709551612
-18446744073709551614 * 3 = 18446744073709551610
-
-18446744073709551615 * 18446744073709551613 = 3
-18446744073709551615 * 18446744073709551614 = 2
-18446744073709551615 * 18446744073709551615 = 1
-18446744073709551615 * 0 = 0
-18446744073709551615 * 1 = 18446744073709551615
-18446744073709551615 * 2 = 18446744073709551614
-18446744073709551615 * 3 = 18446744073709551613
-
-0 * 18446744073709551613 = 0
-0 * 18446744073709551614 = 0
-0 * 18446744073709551615 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 18446744073709551613 = 18446744073709551613
-1 * 18446744073709551614 = 18446744073709551614
-1 * 18446744073709551615 = 18446744073709551615
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 18446744073709551613 = 18446744073709551610
-2 * 18446744073709551614 = 18446744073709551612
-2 * 18446744073709551615 = 18446744073709551614
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 18446744073709551613 = 18446744073709551607
-3 * 18446744073709551614 = 18446744073709551610
-3 * 18446744073709551615 = 18446744073709551613
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 18446744073709551613 = 3
-negate 18446744073709551614 = 2
-negate 18446744073709551615 = 1
-negate 0 = 0
-negate 1 = 18446744073709551615
-negate 2 = 18446744073709551614
-negate 3 = 18446744073709551613
-#
-testReal
-toRational 18446744073709551613 = 18446744073709551613 % 1
-toRational 18446744073709551614 = 18446744073709551614 % 1
-toRational 18446744073709551615 = 18446744073709551615 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-18446744073709551613 `divMod` 18446744073709551613 = (1,0)
-18446744073709551613 `divMod` 18446744073709551614 = (0,18446744073709551613)
-18446744073709551613 `divMod` 18446744073709551615 = (0,18446744073709551613)
-18446744073709551613 `divMod` 0 = divide by zero
-18446744073709551613 `divMod` 1 = (18446744073709551613,0)
-18446744073709551613 `divMod` 2 = (9223372036854775806,1)
-18446744073709551613 `divMod` 3 = (6148914691236517204,1)
-
-18446744073709551614 `divMod` 18446744073709551613 = (1,1)
-18446744073709551614 `divMod` 18446744073709551614 = (1,0)
-18446744073709551614 `divMod` 18446744073709551615 = (0,18446744073709551614)
-18446744073709551614 `divMod` 0 = divide by zero
-18446744073709551614 `divMod` 1 = (18446744073709551614,0)
-18446744073709551614 `divMod` 2 = (9223372036854775807,0)
-18446744073709551614 `divMod` 3 = (6148914691236517204,2)
-
-18446744073709551615 `divMod` 18446744073709551613 = (1,2)
-18446744073709551615 `divMod` 18446744073709551614 = (1,1)
-18446744073709551615 `divMod` 18446744073709551615 = (1,0)
-18446744073709551615 `divMod` 0 = divide by zero
-18446744073709551615 `divMod` 1 = (18446744073709551615,0)
-18446744073709551615 `divMod` 2 = (9223372036854775807,1)
-18446744073709551615 `divMod` 3 = (6148914691236517205,0)
-
-0 `divMod` 18446744073709551613 = (0,0)
-0 `divMod` 18446744073709551614 = (0,0)
-0 `divMod` 18446744073709551615 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 18446744073709551613 = (0,1)
-1 `divMod` 18446744073709551614 = (0,1)
-1 `divMod` 18446744073709551615 = (0,1)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 18446744073709551613 = (0,2)
-2 `divMod` 18446744073709551614 = (0,2)
-2 `divMod` 18446744073709551615 = (0,2)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 18446744073709551613 = (0,3)
-3 `divMod` 18446744073709551614 = (0,3)
-3 `divMod` 18446744073709551615 = (0,3)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-18446744073709551613 `div` 18446744073709551613 = 1
-18446744073709551613 `div` 18446744073709551614 = 0
-18446744073709551613 `div` 18446744073709551615 = 0
-18446744073709551613 `div` 0 = divide by zero
-18446744073709551613 `div` 1 = 18446744073709551613
-18446744073709551613 `div` 2 = 9223372036854775806
-18446744073709551613 `div` 3 = 6148914691236517204
-
-18446744073709551614 `div` 18446744073709551613 = 1
-18446744073709551614 `div` 18446744073709551614 = 1
-18446744073709551614 `div` 18446744073709551615 = 0
-18446744073709551614 `div` 0 = divide by zero
-18446744073709551614 `div` 1 = 18446744073709551614
-18446744073709551614 `div` 2 = 9223372036854775807
-18446744073709551614 `div` 3 = 6148914691236517204
-
-18446744073709551615 `div` 18446744073709551613 = 1
-18446744073709551615 `div` 18446744073709551614 = 1
-18446744073709551615 `div` 18446744073709551615 = 1
-18446744073709551615 `div` 0 = divide by zero
-18446744073709551615 `div` 1 = 18446744073709551615
-18446744073709551615 `div` 2 = 9223372036854775807
-18446744073709551615 `div` 3 = 6148914691236517205
-
-0 `div` 18446744073709551613 = 0
-0 `div` 18446744073709551614 = 0
-0 `div` 18446744073709551615 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 18446744073709551613 = 0
-1 `div` 18446744073709551614 = 0
-1 `div` 18446744073709551615 = 0
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 18446744073709551613 = 0
-2 `div` 18446744073709551614 = 0
-2 `div` 18446744073709551615 = 0
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 18446744073709551613 = 0
-3 `div` 18446744073709551614 = 0
-3 `div` 18446744073709551615 = 0
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-18446744073709551613 `mod` 18446744073709551613 = 0
-18446744073709551613 `mod` 18446744073709551614 = 18446744073709551613
-18446744073709551613 `mod` 18446744073709551615 = 18446744073709551613
-18446744073709551613 `mod` 0 = divide by zero
-18446744073709551613 `mod` 1 = 0
-18446744073709551613 `mod` 2 = 1
-18446744073709551613 `mod` 3 = 1
-
-18446744073709551614 `mod` 18446744073709551613 = 1
-18446744073709551614 `mod` 18446744073709551614 = 0
-18446744073709551614 `mod` 18446744073709551615 = 18446744073709551614
-18446744073709551614 `mod` 0 = divide by zero
-18446744073709551614 `mod` 1 = 0
-18446744073709551614 `mod` 2 = 0
-18446744073709551614 `mod` 3 = 2
-
-18446744073709551615 `mod` 18446744073709551613 = 2
-18446744073709551615 `mod` 18446744073709551614 = 1
-18446744073709551615 `mod` 18446744073709551615 = 0
-18446744073709551615 `mod` 0 = divide by zero
-18446744073709551615 `mod` 1 = 0
-18446744073709551615 `mod` 2 = 1
-18446744073709551615 `mod` 3 = 0
-
-0 `mod` 18446744073709551613 = 0
-0 `mod` 18446744073709551614 = 0
-0 `mod` 18446744073709551615 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 18446744073709551613 = 1
-1 `mod` 18446744073709551614 = 1
-1 `mod` 18446744073709551615 = 1
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 18446744073709551613 = 2
-2 `mod` 18446744073709551614 = 2
-2 `mod` 18446744073709551615 = 2
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 18446744073709551613 = 3
-3 `mod` 18446744073709551614 = 3
-3 `mod` 18446744073709551615 = 3
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-18446744073709551613 `quotRem` 18446744073709551613 = (1,0)
-18446744073709551613 `quotRem` 18446744073709551614 = (0,18446744073709551613)
-18446744073709551613 `quotRem` 18446744073709551615 = (0,18446744073709551613)
-18446744073709551613 `quotRem` 0 = divide by zero
-18446744073709551613 `quotRem` 1 = (18446744073709551613,0)
-18446744073709551613 `quotRem` 2 = (9223372036854775806,1)
-18446744073709551613 `quotRem` 3 = (6148914691236517204,1)
-
-18446744073709551614 `quotRem` 18446744073709551613 = (1,1)
-18446744073709551614 `quotRem` 18446744073709551614 = (1,0)
-18446744073709551614 `quotRem` 18446744073709551615 = (0,18446744073709551614)
-18446744073709551614 `quotRem` 0 = divide by zero
-18446744073709551614 `quotRem` 1 = (18446744073709551614,0)
-18446744073709551614 `quotRem` 2 = (9223372036854775807,0)
-18446744073709551614 `quotRem` 3 = (6148914691236517204,2)
-
-18446744073709551615 `quotRem` 18446744073709551613 = (1,2)
-18446744073709551615 `quotRem` 18446744073709551614 = (1,1)
-18446744073709551615 `quotRem` 18446744073709551615 = (1,0)
-18446744073709551615 `quotRem` 0 = divide by zero
-18446744073709551615 `quotRem` 1 = (18446744073709551615,0)
-18446744073709551615 `quotRem` 2 = (9223372036854775807,1)
-18446744073709551615 `quotRem` 3 = (6148914691236517205,0)
-
-0 `quotRem` 18446744073709551613 = (0,0)
-0 `quotRem` 18446744073709551614 = (0,0)
-0 `quotRem` 18446744073709551615 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 18446744073709551613 = (0,1)
-1 `quotRem` 18446744073709551614 = (0,1)
-1 `quotRem` 18446744073709551615 = (0,1)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 18446744073709551613 = (0,2)
-2 `quotRem` 18446744073709551614 = (0,2)
-2 `quotRem` 18446744073709551615 = (0,2)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 18446744073709551613 = (0,3)
-3 `quotRem` 18446744073709551614 = (0,3)
-3 `quotRem` 18446744073709551615 = (0,3)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-18446744073709551613 `quot` 18446744073709551613 = 1
-18446744073709551613 `quot` 18446744073709551614 = 0
-18446744073709551613 `quot` 18446744073709551615 = 0
-18446744073709551613 `quot` 0 = divide by zero
-18446744073709551613 `quot` 1 = 18446744073709551613
-18446744073709551613 `quot` 2 = 9223372036854775806
-18446744073709551613 `quot` 3 = 6148914691236517204
-
-18446744073709551614 `quot` 18446744073709551613 = 1
-18446744073709551614 `quot` 18446744073709551614 = 1
-18446744073709551614 `quot` 18446744073709551615 = 0
-18446744073709551614 `quot` 0 = divide by zero
-18446744073709551614 `quot` 1 = 18446744073709551614
-18446744073709551614 `quot` 2 = 9223372036854775807
-18446744073709551614 `quot` 3 = 6148914691236517204
-
-18446744073709551615 `quot` 18446744073709551613 = 1
-18446744073709551615 `quot` 18446744073709551614 = 1
-18446744073709551615 `quot` 18446744073709551615 = 1
-18446744073709551615 `quot` 0 = divide by zero
-18446744073709551615 `quot` 1 = 18446744073709551615
-18446744073709551615 `quot` 2 = 9223372036854775807
-18446744073709551615 `quot` 3 = 6148914691236517205
-
-0 `quot` 18446744073709551613 = 0
-0 `quot` 18446744073709551614 = 0
-0 `quot` 18446744073709551615 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 18446744073709551613 = 0
-1 `quot` 18446744073709551614 = 0
-1 `quot` 18446744073709551615 = 0
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 18446744073709551613 = 0
-2 `quot` 18446744073709551614 = 0
-2 `quot` 18446744073709551615 = 0
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 18446744073709551613 = 0
-3 `quot` 18446744073709551614 = 0
-3 `quot` 18446744073709551615 = 0
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-18446744073709551613 `rem` 18446744073709551613 = 0
-18446744073709551613 `rem` 18446744073709551614 = 18446744073709551613
-18446744073709551613 `rem` 18446744073709551615 = 18446744073709551613
-18446744073709551613 `rem` 0 = divide by zero
-18446744073709551613 `rem` 1 = 0
-18446744073709551613 `rem` 2 = 1
-18446744073709551613 `rem` 3 = 1
-
-18446744073709551614 `rem` 18446744073709551613 = 1
-18446744073709551614 `rem` 18446744073709551614 = 0
-18446744073709551614 `rem` 18446744073709551615 = 18446744073709551614
-18446744073709551614 `rem` 0 = divide by zero
-18446744073709551614 `rem` 1 = 0
-18446744073709551614 `rem` 2 = 0
-18446744073709551614 `rem` 3 = 2
-
-18446744073709551615 `rem` 18446744073709551613 = 2
-18446744073709551615 `rem` 18446744073709551614 = 1
-18446744073709551615 `rem` 18446744073709551615 = 0
-18446744073709551615 `rem` 0 = divide by zero
-18446744073709551615 `rem` 1 = 0
-18446744073709551615 `rem` 2 = 1
-18446744073709551615 `rem` 3 = 0
-
-0 `rem` 18446744073709551613 = 0
-0 `rem` 18446744073709551614 = 0
-0 `rem` 18446744073709551615 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 18446744073709551613 = 1
-1 `rem` 18446744073709551614 = 1
-1 `rem` 18446744073709551615 = 1
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 18446744073709551613 = 2
-2 `rem` 18446744073709551614 = 2
-2 `rem` 18446744073709551615 = 2
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 18446744073709551613 = 3
-3 `rem` 18446744073709551614 = 3
-3 `rem` 18446744073709551615 = 3
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,18446744073709551615]
-Int : [0,0,-1]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [0,0,-1]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [0,0,18446744073709551615]
-testBits
-18446744073709551613 .&. 18446744073709551613 = 18446744073709551613
-18446744073709551613 .&. 18446744073709551614 = 18446744073709551612
-18446744073709551613 .&. 18446744073709551615 = 18446744073709551613
-18446744073709551613 .&. 0 = 0
-18446744073709551613 .&. 1 = 1
-18446744073709551613 .&. 2 = 0
-18446744073709551613 .&. 3 = 1
-
-18446744073709551614 .&. 18446744073709551613 = 18446744073709551612
-18446744073709551614 .&. 18446744073709551614 = 18446744073709551614
-18446744073709551614 .&. 18446744073709551615 = 18446744073709551614
-18446744073709551614 .&. 0 = 0
-18446744073709551614 .&. 1 = 0
-18446744073709551614 .&. 2 = 2
-18446744073709551614 .&. 3 = 2
-
-18446744073709551615 .&. 18446744073709551613 = 18446744073709551613
-18446744073709551615 .&. 18446744073709551614 = 18446744073709551614
-18446744073709551615 .&. 18446744073709551615 = 18446744073709551615
-18446744073709551615 .&. 0 = 0
-18446744073709551615 .&. 1 = 1
-18446744073709551615 .&. 2 = 2
-18446744073709551615 .&. 3 = 3
-
-0 .&. 18446744073709551613 = 0
-0 .&. 18446744073709551614 = 0
-0 .&. 18446744073709551615 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 18446744073709551613 = 1
-1 .&. 18446744073709551614 = 0
-1 .&. 18446744073709551615 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 18446744073709551613 = 0
-2 .&. 18446744073709551614 = 2
-2 .&. 18446744073709551615 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 18446744073709551613 = 1
-3 .&. 18446744073709551614 = 2
-3 .&. 18446744073709551615 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-18446744073709551613 .|. 18446744073709551613 = 18446744073709551613
-18446744073709551613 .|. 18446744073709551614 = 18446744073709551615
-18446744073709551613 .|. 18446744073709551615 = 18446744073709551615
-18446744073709551613 .|. 0 = 18446744073709551613
-18446744073709551613 .|. 1 = 18446744073709551613
-18446744073709551613 .|. 2 = 18446744073709551615
-18446744073709551613 .|. 3 = 18446744073709551615
-
-18446744073709551614 .|. 18446744073709551613 = 18446744073709551615
-18446744073709551614 .|. 18446744073709551614 = 18446744073709551614
-18446744073709551614 .|. 18446744073709551615 = 18446744073709551615
-18446744073709551614 .|. 0 = 18446744073709551614
-18446744073709551614 .|. 1 = 18446744073709551615
-18446744073709551614 .|. 2 = 18446744073709551614
-18446744073709551614 .|. 3 = 18446744073709551615
-
-18446744073709551615 .|. 18446744073709551613 = 18446744073709551615
-18446744073709551615 .|. 18446744073709551614 = 18446744073709551615
-18446744073709551615 .|. 18446744073709551615 = 18446744073709551615
-18446744073709551615 .|. 0 = 18446744073709551615
-18446744073709551615 .|. 1 = 18446744073709551615
-18446744073709551615 .|. 2 = 18446744073709551615
-18446744073709551615 .|. 3 = 18446744073709551615
-
-0 .|. 18446744073709551613 = 18446744073709551613
-0 .|. 18446744073709551614 = 18446744073709551614
-0 .|. 18446744073709551615 = 18446744073709551615
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 18446744073709551613 = 18446744073709551613
-1 .|. 18446744073709551614 = 18446744073709551615
-1 .|. 18446744073709551615 = 18446744073709551615
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 18446744073709551613 = 18446744073709551615
-2 .|. 18446744073709551614 = 18446744073709551614
-2 .|. 18446744073709551615 = 18446744073709551615
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 18446744073709551613 = 18446744073709551615
-3 .|. 18446744073709551614 = 18446744073709551615
-3 .|. 18446744073709551615 = 18446744073709551615
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-18446744073709551613 `xor` 18446744073709551613 = 0
-18446744073709551613 `xor` 18446744073709551614 = 3
-18446744073709551613 `xor` 18446744073709551615 = 2
-18446744073709551613 `xor` 0 = 18446744073709551613
-18446744073709551613 `xor` 1 = 18446744073709551612
-18446744073709551613 `xor` 2 = 18446744073709551615
-18446744073709551613 `xor` 3 = 18446744073709551614
-
-18446744073709551614 `xor` 18446744073709551613 = 3
-18446744073709551614 `xor` 18446744073709551614 = 0
-18446744073709551614 `xor` 18446744073709551615 = 1
-18446744073709551614 `xor` 0 = 18446744073709551614
-18446744073709551614 `xor` 1 = 18446744073709551615
-18446744073709551614 `xor` 2 = 18446744073709551612
-18446744073709551614 `xor` 3 = 18446744073709551613
-
-18446744073709551615 `xor` 18446744073709551613 = 2
-18446744073709551615 `xor` 18446744073709551614 = 1
-18446744073709551615 `xor` 18446744073709551615 = 0
-18446744073709551615 `xor` 0 = 18446744073709551615
-18446744073709551615 `xor` 1 = 18446744073709551614
-18446744073709551615 `xor` 2 = 18446744073709551613
-18446744073709551615 `xor` 3 = 18446744073709551612
-
-0 `xor` 18446744073709551613 = 18446744073709551613
-0 `xor` 18446744073709551614 = 18446744073709551614
-0 `xor` 18446744073709551615 = 18446744073709551615
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 18446744073709551613 = 18446744073709551612
-1 `xor` 18446744073709551614 = 18446744073709551615
-1 `xor` 18446744073709551615 = 18446744073709551614
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 18446744073709551613 = 18446744073709551615
-2 `xor` 18446744073709551614 = 18446744073709551612
-2 `xor` 18446744073709551615 = 18446744073709551613
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 18446744073709551613 = 18446744073709551614
-3 `xor` 18446744073709551614 = 18446744073709551613
-3 `xor` 18446744073709551615 = 18446744073709551612
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 18446744073709551613 = 2
-complement 18446744073709551614 = 1
-complement 18446744073709551615 = 0
-complement 0 = 18446744073709551615
-complement 1 = 18446744073709551614
-complement 2 = 18446744073709551613
-complement 3 = 18446744073709551612
-#
-18446744073709551613 `shiftL` 0 = 18446744073709551613
-18446744073709551613 `shiftL` 1 = 18446744073709551610
-18446744073709551613 `shiftL` 2 = 18446744073709551604
-18446744073709551613 `shiftL` 3 = 18446744073709551592
-18446744073709551613 `shiftL` 32 = 18446744060824649728
-18446744073709551613 `shiftL` 64 = 0
-
-18446744073709551614 `shiftL` 0 = 18446744073709551614
-18446744073709551614 `shiftL` 1 = 18446744073709551612
-18446744073709551614 `shiftL` 2 = 18446744073709551608
-18446744073709551614 `shiftL` 3 = 18446744073709551600
-18446744073709551614 `shiftL` 32 = 18446744065119617024
-18446744073709551614 `shiftL` 64 = 0
-
-18446744073709551615 `shiftL` 0 = 18446744073709551615
-18446744073709551615 `shiftL` 1 = 18446744073709551614
-18446744073709551615 `shiftL` 2 = 18446744073709551612
-18446744073709551615 `shiftL` 3 = 18446744073709551608
-18446744073709551615 `shiftL` 32 = 18446744069414584320
-18446744073709551615 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 0
-
-#
-18446744073709551613 `shiftR` 0 = 18446744073709551613
-18446744073709551613 `shiftR` 1 = 9223372036854775806
-18446744073709551613 `shiftR` 2 = 4611686018427387903
-18446744073709551613 `shiftR` 3 = 2305843009213693951
-18446744073709551613 `shiftR` 32 = 4294967295
-18446744073709551613 `shiftR` 64 = 0
-
-18446744073709551614 `shiftR` 0 = 18446744073709551614
-18446744073709551614 `shiftR` 1 = 9223372036854775807
-18446744073709551614 `shiftR` 2 = 4611686018427387903
-18446744073709551614 `shiftR` 3 = 2305843009213693951
-18446744073709551614 `shiftR` 32 = 4294967295
-18446744073709551614 `shiftR` 64 = 0
-
-18446744073709551615 `shiftR` 0 = 18446744073709551615
-18446744073709551615 `shiftR` 1 = 9223372036854775807
-18446744073709551615 `shiftR` 2 = 4611686018427387903
-18446744073709551615 `shiftR` 3 = 2305843009213693951
-18446744073709551615 `shiftR` 32 = 4294967295
-18446744073709551615 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-18446744073709551613 `rotate` -3 = 13835058055282163711
-18446744073709551613 `rotate` -2 = 9223372036854775807
-18446744073709551613 `rotate` -1 = 18446744073709551614
-18446744073709551613 `rotate` 0 = 18446744073709551613
-18446744073709551613 `rotate` 1 = 18446744073709551611
-18446744073709551613 `rotate` 2 = 18446744073709551607
-18446744073709551613 `rotate` 3 = 18446744073709551599
-
-18446744073709551614 `rotate` -3 = 16140901064495857663
-18446744073709551614 `rotate` -2 = 13835058055282163711
-18446744073709551614 `rotate` -1 = 9223372036854775807
-18446744073709551614 `rotate` 0 = 18446744073709551614
-18446744073709551614 `rotate` 1 = 18446744073709551613
-18446744073709551614 `rotate` 2 = 18446744073709551611
-18446744073709551614 `rotate` 3 = 18446744073709551607
-
-18446744073709551615 `rotate` -3 = 18446744073709551615
-18446744073709551615 `rotate` -2 = 18446744073709551615
-18446744073709551615 `rotate` -1 = 18446744073709551615
-18446744073709551615 `rotate` 0 = 18446744073709551615
-18446744073709551615 `rotate` 1 = 18446744073709551615
-18446744073709551615 `rotate` 2 = 18446744073709551615
-18446744073709551615 `rotate` 3 = 18446744073709551615
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 2305843009213693952
-1 `rotate` -2 = 4611686018427387904
-1 `rotate` -1 = 9223372036854775808
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 4611686018427387904
-2 `rotate` -2 = 9223372036854775808
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 6917529027641081856
-3 `rotate` -2 = 13835058055282163712
-3 `rotate` -1 = 9223372036854775809
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-18446744073709551613 `setBit` 0 = 18446744073709551613
-18446744073709551613 `setBit` 1 = 18446744073709551615
-18446744073709551613 `setBit` 2 = 18446744073709551613
-18446744073709551613 `setBit` 3 = 18446744073709551613
-18446744073709551613 `setBit` 32 = 18446744073709551613
-18446744073709551613 `setBit` 64 = 18446744073709551613
-
-18446744073709551614 `setBit` 0 = 18446744073709551615
-18446744073709551614 `setBit` 1 = 18446744073709551614
-18446744073709551614 `setBit` 2 = 18446744073709551614
-18446744073709551614 `setBit` 3 = 18446744073709551614
-18446744073709551614 `setBit` 32 = 18446744073709551614
-18446744073709551614 `setBit` 64 = 18446744073709551614
-
-18446744073709551615 `setBit` 0 = 18446744073709551615
-18446744073709551615 `setBit` 1 = 18446744073709551615
-18446744073709551615 `setBit` 2 = 18446744073709551615
-18446744073709551615 `setBit` 3 = 18446744073709551615
-18446744073709551615 `setBit` 32 = 18446744073709551615
-18446744073709551615 `setBit` 64 = 18446744073709551615
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 3
-
-#
-18446744073709551613 `clearBit` 0 = 18446744073709551612
-18446744073709551613 `clearBit` 1 = 18446744073709551613
-18446744073709551613 `clearBit` 2 = 18446744073709551609
-18446744073709551613 `clearBit` 3 = 18446744073709551605
-18446744073709551613 `clearBit` 32 = 18446744069414584317
-18446744073709551613 `clearBit` 64 = 18446744073709551613
-
-18446744073709551614 `clearBit` 0 = 18446744073709551614
-18446744073709551614 `clearBit` 1 = 18446744073709551612
-18446744073709551614 `clearBit` 2 = 18446744073709551610
-18446744073709551614 `clearBit` 3 = 18446744073709551606
-18446744073709551614 `clearBit` 32 = 18446744069414584318
-18446744073709551614 `clearBit` 64 = 18446744073709551614
-
-18446744073709551615 `clearBit` 0 = 18446744073709551614
-18446744073709551615 `clearBit` 1 = 18446744073709551613
-18446744073709551615 `clearBit` 2 = 18446744073709551611
-18446744073709551615 `clearBit` 3 = 18446744073709551607
-18446744073709551615 `clearBit` 32 = 18446744069414584319
-18446744073709551615 `clearBit` 64 = 18446744073709551615
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-18446744073709551613 `complementBit` 0 = 18446744073709551612
-18446744073709551613 `complementBit` 1 = 18446744073709551615
-18446744073709551613 `complementBit` 2 = 18446744073709551609
-18446744073709551613 `complementBit` 3 = 18446744073709551605
-18446744073709551613 `complementBit` 32 = 18446744069414584317
-18446744073709551613 `complementBit` 64 = 18446744073709551613
-
-18446744073709551614 `complementBit` 0 = 18446744073709551615
-18446744073709551614 `complementBit` 1 = 18446744073709551612
-18446744073709551614 `complementBit` 2 = 18446744073709551610
-18446744073709551614 `complementBit` 3 = 18446744073709551606
-18446744073709551614 `complementBit` 32 = 18446744069414584318
-18446744073709551614 `complementBit` 64 = 18446744073709551614
-
-18446744073709551615 `complementBit` 0 = 18446744073709551614
-18446744073709551615 `complementBit` 1 = 18446744073709551613
-18446744073709551615 `complementBit` 2 = 18446744073709551611
-18446744073709551615 `complementBit` 3 = 18446744073709551607
-18446744073709551615 `complementBit` 32 = 18446744069414584319
-18446744073709551615 `complementBit` 64 = 18446744073709551615
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 3
-
-#
-18446744073709551613 `testBit` 0 = True
-18446744073709551613 `testBit` 1 = False
-18446744073709551613 `testBit` 2 = True
-18446744073709551613 `testBit` 3 = True
-18446744073709551613 `testBit` 32 = True
-18446744073709551613 `testBit` 64 = False
-
-18446744073709551614 `testBit` 0 = False
-18446744073709551614 `testBit` 1 = True
-18446744073709551614 `testBit` 2 = True
-18446744073709551614 `testBit` 3 = True
-18446744073709551614 `testBit` 32 = True
-18446744073709551614 `testBit` 64 = False
-
-18446744073709551615 `testBit` 0 = True
-18446744073709551615 `testBit` 1 = True
-18446744073709551615 `testBit` 2 = True
-18446744073709551615 `testBit` 3 = True
-18446744073709551615 `testBit` 32 = True
-18446744073709551615 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 18446744073709551613 = 64
-bitSize 18446744073709551614 = 64
-bitSize 18446744073709551615 = 64
-bitSize 0 = 64
-bitSize 1 = 64
-bitSize 2 = 64
-bitSize 3 = 64
-#
-isSigned 18446744073709551613 = False
-isSigned 18446744073709551614 = False
-isSigned 18446744073709551615 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Integer
---------------------------------
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = -12884901888
--3 `shiftL` 64 = -55340232221128654848
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = -8589934592
--2 `shiftL` 64 = -36893488147419103232
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = -4294967296
--1 `shiftL` 64 = -18446744073709551616
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 18446744073709551616
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 36893488147419103232
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 55340232221128654848
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -1
--3 `rotate` -2 = -1
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -6
--3 `rotate` 2 = -12
--3 `rotate` 3 = -24
-
--2 `rotate` -3 = -1
--2 `rotate` -2 = -1
--2 `rotate` -1 = -1
--2 `rotate` 0 = -2
--2 `rotate` 1 = -4
--2 `rotate` 2 = -8
--2 `rotate` 3 = -16
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -2
--1 `rotate` 2 = -4
--1 `rotate` 3 = -8
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-
-1 `rotate` -3 = 0
-1 `rotate` -2 = 0
-1 `rotate` -1 = 0
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-
-2 `rotate` -3 = 0
-2 `rotate` -2 = 0
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-
-3 `rotate` -3 = 0
-3 `rotate` -2 = 0
-3 `rotate` -1 = 1
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 18446744073709551616
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 18446744073709551617
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 18446744073709551618
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 18446744073709551619
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -4294967299
--3 `clearBit` 64 = -18446744073709551619
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -4294967298
--2 `clearBit` 64 = -18446744073709551618
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -4294967297
--1 `clearBit` 64 = -18446744073709551617
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -4294967299
--3 `complementBit` 64 = -18446744073709551619
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -4294967298
--2 `complementBit` 64 = -18446744073709551618
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -4294967297
--1 `complementBit` 64 = -18446744073709551617
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 18446744073709551616
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 18446744073709551617
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 18446744073709551618
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 18446744073709551619
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = True
--3 `testBit` 64 = True
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = True
--2 `testBit` 64 = True
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = True
--1 `testBit` 64 = True
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout-ws-64 b/testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout-ws-64
deleted file mode 100644
index ff064a071d..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith011.stdout-ws-64
+++ /dev/null
@@ -1,15418 +0,0 @@
---------------------------------
---Testing Int
---------------------------------
-testBounded
-(9223372036854775807,-9223372036854775808,-9223372036854775807)
-(9223372036854775806,9223372036854775807,-9223372036854775808)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-9223372036854775808,0,9223372036854775807]
-Int : [-9223372036854775808,0,9223372036854775807]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [-9223372036854775808,0,9223372036854775807]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [9223372036854775808,0,9223372036854775807]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = -12884901888
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = -8589934592
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = -4294967296
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -4611686018427387905
--3 `rotate` -2 = 9223372036854775807
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
--3 `rotate` -64 = -3
--3 `rotate` -32 = -8589934593
--3 `rotate` 32 = -8589934593
--3 `rotate` 64 = -3
-
--2 `rotate` -3 = -2305843009213693953
--2 `rotate` -2 = -4611686018427387905
--2 `rotate` -1 = 9223372036854775807
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
--2 `rotate` -64 = -2
--2 `rotate` -32 = -4294967297
--2 `rotate` 32 = -4294967297
--2 `rotate` 64 = -2
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
--1 `rotate` -64 = -1
--1 `rotate` -32 = -1
--1 `rotate` 32 = -1
--1 `rotate` 64 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 2305843009213693952
-1 `rotate` -2 = 4611686018427387904
-1 `rotate` -1 = -9223372036854775808
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 4294967296
-1 `rotate` 32 = 4294967296
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 4611686018427387904
-2 `rotate` -2 = -9223372036854775808
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 8589934592
-2 `rotate` 32 = 8589934592
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 6917529027641081856
-3 `rotate` -2 = -4611686018427387904
-3 `rotate` -1 = -9223372036854775807
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 12884901888
-3 `rotate` 32 = 12884901888
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -4294967299
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -4294967298
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -4294967297
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -4294967299
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -4294967298
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -4294967297
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = True
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = True
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = True
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 64
-bitSize -2 = 64
-bitSize -1 = 64
-bitSize 0 = 64
-bitSize 1 = 64
-bitSize 2 = 64
-bitSize 3 = 64
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int8
---------------------------------
-testBounded
-(127,-128,-127)
-(126,127,-128)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-128,0,127]
-Int : [-128,0,127]
-Int8 : [-128,0,127]
-Int16 : [-128,0,127]
-Int32 : [-128,0,127]
-Int64 : [-128,0,127]
-Word8 : [128,0,127]
-Word16 : [65408,0,127]
-Word32 : [4294967168,0,127]
-Word64 : [18446744073709551488,0,127]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = 0
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = 0
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = 0
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -65
--3 `rotate` -2 = 127
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
--3 `rotate` -64 = -3
--3 `rotate` -32 = -3
--3 `rotate` 32 = -3
--3 `rotate` 64 = -3
-
--2 `rotate` -3 = -33
--2 `rotate` -2 = -65
--2 `rotate` -1 = 127
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
--2 `rotate` -64 = -2
--2 `rotate` -32 = -2
--2 `rotate` 32 = -2
--2 `rotate` 64 = -2
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
--1 `rotate` -64 = -1
--1 `rotate` -32 = -1
--1 `rotate` 32 = -1
--1 `rotate` 64 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 32
-1 `rotate` -2 = 64
-1 `rotate` -1 = -128
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 1
-1 `rotate` 32 = 1
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 64
-2 `rotate` -2 = -128
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 2
-2 `rotate` 32 = 2
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 96
-3 `rotate` -2 = -64
-3 `rotate` -1 = -127
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 3
-3 `rotate` 32 = 3
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -3
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -2
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -1
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -3
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -2
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -1
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = False
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = False
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = False
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 8
-bitSize -2 = 8
-bitSize -1 = 8
-bitSize 0 = 8
-bitSize 1 = 8
-bitSize 2 = 8
-bitSize 3 = 8
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int16
---------------------------------
-testBounded
-(32767,-32768,-32767)
-(32766,32767,-32768)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-32768,0,32767]
-Int : [-32768,0,32767]
-Int8 : [0,0,-1]
-Int16 : [-32768,0,32767]
-Int32 : [-32768,0,32767]
-Int64 : [-32768,0,32767]
-Word8 : [0,0,255]
-Word16 : [32768,0,32767]
-Word32 : [4294934528,0,32767]
-Word64 : [18446744073709518848,0,32767]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = 0
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = 0
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = 0
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -16385
--3 `rotate` -2 = 32767
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
--3 `rotate` -64 = -3
--3 `rotate` -32 = -3
--3 `rotate` 32 = -3
--3 `rotate` 64 = -3
-
--2 `rotate` -3 = -8193
--2 `rotate` -2 = -16385
--2 `rotate` -1 = 32767
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
--2 `rotate` -64 = -2
--2 `rotate` -32 = -2
--2 `rotate` 32 = -2
--2 `rotate` 64 = -2
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
--1 `rotate` -64 = -1
--1 `rotate` -32 = -1
--1 `rotate` 32 = -1
--1 `rotate` 64 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 8192
-1 `rotate` -2 = 16384
-1 `rotate` -1 = -32768
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 1
-1 `rotate` 32 = 1
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 16384
-2 `rotate` -2 = -32768
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 2
-2 `rotate` 32 = 2
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 24576
-3 `rotate` -2 = -16384
-3 `rotate` -1 = -32767
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 3
-3 `rotate` 32 = 3
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -3
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -2
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -1
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -3
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -2
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -1
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = False
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = False
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = False
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 16
-bitSize -2 = 16
-bitSize -1 = 16
-bitSize 0 = 16
-bitSize 1 = 16
-bitSize 2 = 16
-bitSize 3 = 16
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int32
---------------------------------
-testBounded
-(2147483647,-2147483648,-2147483647)
-(2147483646,2147483647,-2147483648)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-2147483648,0,2147483647]
-Int : [-2147483648,0,2147483647]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [-2147483648,0,2147483647]
-Int64 : [-2147483648,0,2147483647]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [2147483648,0,2147483647]
-Word64 : [18446744071562067968,0,2147483647]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = 0
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = 0
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = 0
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -1073741825
--3 `rotate` -2 = 2147483647
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
--3 `rotate` -64 = -3
--3 `rotate` -32 = -3
--3 `rotate` 32 = -3
--3 `rotate` 64 = -3
-
--2 `rotate` -3 = -536870913
--2 `rotate` -2 = -1073741825
--2 `rotate` -1 = 2147483647
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
--2 `rotate` -64 = -2
--2 `rotate` -32 = -2
--2 `rotate` 32 = -2
--2 `rotate` 64 = -2
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
--1 `rotate` -64 = -1
--1 `rotate` -32 = -1
--1 `rotate` 32 = -1
--1 `rotate` 64 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 536870912
-1 `rotate` -2 = 1073741824
-1 `rotate` -1 = -2147483648
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 1
-1 `rotate` 32 = 1
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 1073741824
-2 `rotate` -2 = -2147483648
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 2
-2 `rotate` 32 = 2
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 1610612736
-3 `rotate` -2 = -1073741824
-3 `rotate` -1 = -2147483647
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 3
-3 `rotate` 32 = 3
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -3
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -2
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -1
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -3
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -2
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -1
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = False
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = False
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = False
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 32
-bitSize -2 = 32
-bitSize -1 = 32
-bitSize 0 = 32
-bitSize 1 = 32
-bitSize 2 = 32
-bitSize 3 = 32
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Int64
---------------------------------
-testBounded
-(9223372036854775807,-9223372036854775808,-9223372036854775807)
-(9223372036854775806,9223372036854775807,-9223372036854775808)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [-9223372036854775808,0,9223372036854775807]
-Int : [-9223372036854775808,0,9223372036854775807]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [-9223372036854775808,0,9223372036854775807]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [9223372036854775808,0,9223372036854775807]
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = -12884901888
--3 `shiftL` 64 = 0
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = -8589934592
--2 `shiftL` 64 = 0
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = -4294967296
--1 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 0
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -4611686018427387905
--3 `rotate` -2 = 9223372036854775807
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -5
--3 `rotate` 2 = -9
--3 `rotate` 3 = -17
--3 `rotate` -64 = -3
--3 `rotate` -32 = -8589934593
--3 `rotate` 32 = -8589934593
--3 `rotate` 64 = -3
-
--2 `rotate` -3 = -2305843009213693953
--2 `rotate` -2 = -4611686018427387905
--2 `rotate` -1 = 9223372036854775807
--2 `rotate` 0 = -2
--2 `rotate` 1 = -3
--2 `rotate` 2 = -5
--2 `rotate` 3 = -9
--2 `rotate` -64 = -2
--2 `rotate` -32 = -4294967297
--2 `rotate` 32 = -4294967297
--2 `rotate` 64 = -2
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -1
--1 `rotate` 2 = -1
--1 `rotate` 3 = -1
--1 `rotate` -64 = -1
--1 `rotate` -32 = -1
--1 `rotate` 32 = -1
--1 `rotate` 64 = -1
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 2305843009213693952
-1 `rotate` -2 = 4611686018427387904
-1 `rotate` -1 = -9223372036854775808
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 4294967296
-1 `rotate` 32 = 4294967296
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 4611686018427387904
-2 `rotate` -2 = -9223372036854775808
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 8589934592
-2 `rotate` 32 = 8589934592
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 6917529027641081856
-3 `rotate` -2 = -4611686018427387904
-3 `rotate` -1 = -9223372036854775807
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 12884901888
-3 `rotate` 32 = 12884901888
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 3
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -4294967299
--3 `clearBit` 64 = -3
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -4294967298
--2 `clearBit` 64 = -2
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -4294967297
--1 `clearBit` 64 = -1
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -4294967299
--3 `complementBit` 64 = -3
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -4294967298
--2 `complementBit` 64 = -2
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -4294967297
--1 `complementBit` 64 = -1
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 3
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = True
--3 `testBit` 64 = False
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = True
--2 `testBit` 64 = False
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = True
--1 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize -3 = 64
-bitSize -2 = 64
-bitSize -1 = 64
-bitSize 0 = 64
-bitSize 1 = 64
-bitSize 2 = 64
-bitSize 3 = 64
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
---------------------------------
---Testing Word8
---------------------------------
-testBounded
-(255,0,1)
-(254,255,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[253,254,255,0,1,2,3]
-[253,254,255,0,1,2,3]
-testEq
-253 == 253 = True
-253 == 254 = False
-253 == 255 = False
-253 == 0 = False
-253 == 1 = False
-253 == 2 = False
-253 == 3 = False
-
-254 == 253 = False
-254 == 254 = True
-254 == 255 = False
-254 == 0 = False
-254 == 1 = False
-254 == 2 = False
-254 == 3 = False
-
-255 == 253 = False
-255 == 254 = False
-255 == 255 = True
-255 == 0 = False
-255 == 1 = False
-255 == 2 = False
-255 == 3 = False
-
-0 == 253 = False
-0 == 254 = False
-0 == 255 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 253 = False
-1 == 254 = False
-1 == 255 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 253 = False
-2 == 254 = False
-2 == 255 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 253 = False
-3 == 254 = False
-3 == 255 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-253 /= 253 = False
-253 /= 254 = True
-253 /= 255 = True
-253 /= 0 = True
-253 /= 1 = True
-253 /= 2 = True
-253 /= 3 = True
-
-254 /= 253 = True
-254 /= 254 = False
-254 /= 255 = True
-254 /= 0 = True
-254 /= 1 = True
-254 /= 2 = True
-254 /= 3 = True
-
-255 /= 253 = True
-255 /= 254 = True
-255 /= 255 = False
-255 /= 0 = True
-255 /= 1 = True
-255 /= 2 = True
-255 /= 3 = True
-
-0 /= 253 = True
-0 /= 254 = True
-0 /= 255 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 253 = True
-1 /= 254 = True
-1 /= 255 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 253 = True
-2 /= 254 = True
-2 /= 255 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 253 = True
-3 /= 254 = True
-3 /= 255 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-253 <= 253 = True
-253 <= 254 = True
-253 <= 255 = True
-253 <= 0 = False
-253 <= 1 = False
-253 <= 2 = False
-253 <= 3 = False
-
-254 <= 253 = False
-254 <= 254 = True
-254 <= 255 = True
-254 <= 0 = False
-254 <= 1 = False
-254 <= 2 = False
-254 <= 3 = False
-
-255 <= 253 = False
-255 <= 254 = False
-255 <= 255 = True
-255 <= 0 = False
-255 <= 1 = False
-255 <= 2 = False
-255 <= 3 = False
-
-0 <= 253 = True
-0 <= 254 = True
-0 <= 255 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 253 = True
-1 <= 254 = True
-1 <= 255 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 253 = True
-2 <= 254 = True
-2 <= 255 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 253 = True
-3 <= 254 = True
-3 <= 255 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-253 < 253 = False
-253 < 254 = True
-253 < 255 = True
-253 < 0 = False
-253 < 1 = False
-253 < 2 = False
-253 < 3 = False
-
-254 < 253 = False
-254 < 254 = False
-254 < 255 = True
-254 < 0 = False
-254 < 1 = False
-254 < 2 = False
-254 < 3 = False
-
-255 < 253 = False
-255 < 254 = False
-255 < 255 = False
-255 < 0 = False
-255 < 1 = False
-255 < 2 = False
-255 < 3 = False
-
-0 < 253 = True
-0 < 254 = True
-0 < 255 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 253 = True
-1 < 254 = True
-1 < 255 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 253 = True
-2 < 254 = True
-2 < 255 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 253 = True
-3 < 254 = True
-3 < 255 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-253 > 253 = False
-253 > 254 = False
-253 > 255 = False
-253 > 0 = True
-253 > 1 = True
-253 > 2 = True
-253 > 3 = True
-
-254 > 253 = True
-254 > 254 = False
-254 > 255 = False
-254 > 0 = True
-254 > 1 = True
-254 > 2 = True
-254 > 3 = True
-
-255 > 253 = True
-255 > 254 = True
-255 > 255 = False
-255 > 0 = True
-255 > 1 = True
-255 > 2 = True
-255 > 3 = True
-
-0 > 253 = False
-0 > 254 = False
-0 > 255 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 253 = False
-1 > 254 = False
-1 > 255 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 253 = False
-2 > 254 = False
-2 > 255 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 253 = False
-3 > 254 = False
-3 > 255 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-253 >= 253 = True
-253 >= 254 = False
-253 >= 255 = False
-253 >= 0 = True
-253 >= 1 = True
-253 >= 2 = True
-253 >= 3 = True
-
-254 >= 253 = True
-254 >= 254 = True
-254 >= 255 = False
-254 >= 0 = True
-254 >= 1 = True
-254 >= 2 = True
-254 >= 3 = True
-
-255 >= 253 = True
-255 >= 254 = True
-255 >= 255 = True
-255 >= 0 = True
-255 >= 1 = True
-255 >= 2 = True
-255 >= 3 = True
-
-0 >= 253 = False
-0 >= 254 = False
-0 >= 255 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 253 = False
-1 >= 254 = False
-1 >= 255 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 253 = False
-2 >= 254 = False
-2 >= 255 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 253 = False
-3 >= 254 = False
-3 >= 255 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-253 `compare` 253 = EQ
-253 `compare` 254 = LT
-253 `compare` 255 = LT
-253 `compare` 0 = GT
-253 `compare` 1 = GT
-253 `compare` 2 = GT
-253 `compare` 3 = GT
-
-254 `compare` 253 = GT
-254 `compare` 254 = EQ
-254 `compare` 255 = LT
-254 `compare` 0 = GT
-254 `compare` 1 = GT
-254 `compare` 2 = GT
-254 `compare` 3 = GT
-
-255 `compare` 253 = GT
-255 `compare` 254 = GT
-255 `compare` 255 = EQ
-255 `compare` 0 = GT
-255 `compare` 1 = GT
-255 `compare` 2 = GT
-255 `compare` 3 = GT
-
-0 `compare` 253 = LT
-0 `compare` 254 = LT
-0 `compare` 255 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 253 = LT
-1 `compare` 254 = LT
-1 `compare` 255 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 253 = LT
-2 `compare` 254 = LT
-2 `compare` 255 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 253 = LT
-3 `compare` 254 = LT
-3 `compare` 255 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-253 + 253 = 250
-253 + 254 = 251
-253 + 255 = 252
-253 + 0 = 253
-253 + 1 = 254
-253 + 2 = 255
-253 + 3 = 0
-
-254 + 253 = 251
-254 + 254 = 252
-254 + 255 = 253
-254 + 0 = 254
-254 + 1 = 255
-254 + 2 = 0
-254 + 3 = 1
-
-255 + 253 = 252
-255 + 254 = 253
-255 + 255 = 254
-255 + 0 = 255
-255 + 1 = 0
-255 + 2 = 1
-255 + 3 = 2
-
-0 + 253 = 253
-0 + 254 = 254
-0 + 255 = 255
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 253 = 254
-1 + 254 = 255
-1 + 255 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 253 = 255
-2 + 254 = 0
-2 + 255 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 253 = 0
-3 + 254 = 1
-3 + 255 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-253 - 253 = 0
-253 - 254 = 255
-253 - 255 = 254
-253 - 0 = 253
-253 - 1 = 252
-253 - 2 = 251
-253 - 3 = 250
-
-254 - 253 = 1
-254 - 254 = 0
-254 - 255 = 255
-254 - 0 = 254
-254 - 1 = 253
-254 - 2 = 252
-254 - 3 = 251
-
-255 - 253 = 2
-255 - 254 = 1
-255 - 255 = 0
-255 - 0 = 255
-255 - 1 = 254
-255 - 2 = 253
-255 - 3 = 252
-
-0 - 253 = 3
-0 - 254 = 2
-0 - 255 = 1
-0 - 0 = 0
-0 - 1 = 255
-0 - 2 = 254
-0 - 3 = 253
-
-1 - 253 = 4
-1 - 254 = 3
-1 - 255 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 255
-1 - 3 = 254
-
-2 - 253 = 5
-2 - 254 = 4
-2 - 255 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 255
-
-3 - 253 = 6
-3 - 254 = 5
-3 - 255 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-253 * 253 = 9
-253 * 254 = 6
-253 * 255 = 3
-253 * 0 = 0
-253 * 1 = 253
-253 * 2 = 250
-253 * 3 = 247
-
-254 * 253 = 6
-254 * 254 = 4
-254 * 255 = 2
-254 * 0 = 0
-254 * 1 = 254
-254 * 2 = 252
-254 * 3 = 250
-
-255 * 253 = 3
-255 * 254 = 2
-255 * 255 = 1
-255 * 0 = 0
-255 * 1 = 255
-255 * 2 = 254
-255 * 3 = 253
-
-0 * 253 = 0
-0 * 254 = 0
-0 * 255 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 253 = 253
-1 * 254 = 254
-1 * 255 = 255
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 253 = 250
-2 * 254 = 252
-2 * 255 = 254
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 253 = 247
-3 * 254 = 250
-3 * 255 = 253
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 253 = 3
-negate 254 = 2
-negate 255 = 1
-negate 0 = 0
-negate 1 = 255
-negate 2 = 254
-negate 3 = 253
-#
-testReal
-toRational 253 = 253 % 1
-toRational 254 = 254 % 1
-toRational 255 = 255 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-253 `divMod` 253 = (1,0)
-253 `divMod` 254 = (0,253)
-253 `divMod` 255 = (0,253)
-253 `divMod` 0 = divide by zero
-253 `divMod` 1 = (253,0)
-253 `divMod` 2 = (126,1)
-253 `divMod` 3 = (84,1)
-
-254 `divMod` 253 = (1,1)
-254 `divMod` 254 = (1,0)
-254 `divMod` 255 = (0,254)
-254 `divMod` 0 = divide by zero
-254 `divMod` 1 = (254,0)
-254 `divMod` 2 = (127,0)
-254 `divMod` 3 = (84,2)
-
-255 `divMod` 253 = (1,2)
-255 `divMod` 254 = (1,1)
-255 `divMod` 255 = (1,0)
-255 `divMod` 0 = divide by zero
-255 `divMod` 1 = (255,0)
-255 `divMod` 2 = (127,1)
-255 `divMod` 3 = (85,0)
-
-0 `divMod` 253 = (0,0)
-0 `divMod` 254 = (0,0)
-0 `divMod` 255 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 253 = (0,1)
-1 `divMod` 254 = (0,1)
-1 `divMod` 255 = (0,1)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 253 = (0,2)
-2 `divMod` 254 = (0,2)
-2 `divMod` 255 = (0,2)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 253 = (0,3)
-3 `divMod` 254 = (0,3)
-3 `divMod` 255 = (0,3)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-253 `div` 253 = 1
-253 `div` 254 = 0
-253 `div` 255 = 0
-253 `div` 0 = divide by zero
-253 `div` 1 = 253
-253 `div` 2 = 126
-253 `div` 3 = 84
-
-254 `div` 253 = 1
-254 `div` 254 = 1
-254 `div` 255 = 0
-254 `div` 0 = divide by zero
-254 `div` 1 = 254
-254 `div` 2 = 127
-254 `div` 3 = 84
-
-255 `div` 253 = 1
-255 `div` 254 = 1
-255 `div` 255 = 1
-255 `div` 0 = divide by zero
-255 `div` 1 = 255
-255 `div` 2 = 127
-255 `div` 3 = 85
-
-0 `div` 253 = 0
-0 `div` 254 = 0
-0 `div` 255 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 253 = 0
-1 `div` 254 = 0
-1 `div` 255 = 0
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 253 = 0
-2 `div` 254 = 0
-2 `div` 255 = 0
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 253 = 0
-3 `div` 254 = 0
-3 `div` 255 = 0
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-253 `mod` 253 = 0
-253 `mod` 254 = 253
-253 `mod` 255 = 253
-253 `mod` 0 = divide by zero
-253 `mod` 1 = 0
-253 `mod` 2 = 1
-253 `mod` 3 = 1
-
-254 `mod` 253 = 1
-254 `mod` 254 = 0
-254 `mod` 255 = 254
-254 `mod` 0 = divide by zero
-254 `mod` 1 = 0
-254 `mod` 2 = 0
-254 `mod` 3 = 2
-
-255 `mod` 253 = 2
-255 `mod` 254 = 1
-255 `mod` 255 = 0
-255 `mod` 0 = divide by zero
-255 `mod` 1 = 0
-255 `mod` 2 = 1
-255 `mod` 3 = 0
-
-0 `mod` 253 = 0
-0 `mod` 254 = 0
-0 `mod` 255 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 253 = 1
-1 `mod` 254 = 1
-1 `mod` 255 = 1
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 253 = 2
-2 `mod` 254 = 2
-2 `mod` 255 = 2
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 253 = 3
-3 `mod` 254 = 3
-3 `mod` 255 = 3
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-253 `quotRem` 253 = (1,0)
-253 `quotRem` 254 = (0,253)
-253 `quotRem` 255 = (0,253)
-253 `quotRem` 0 = divide by zero
-253 `quotRem` 1 = (253,0)
-253 `quotRem` 2 = (126,1)
-253 `quotRem` 3 = (84,1)
-
-254 `quotRem` 253 = (1,1)
-254 `quotRem` 254 = (1,0)
-254 `quotRem` 255 = (0,254)
-254 `quotRem` 0 = divide by zero
-254 `quotRem` 1 = (254,0)
-254 `quotRem` 2 = (127,0)
-254 `quotRem` 3 = (84,2)
-
-255 `quotRem` 253 = (1,2)
-255 `quotRem` 254 = (1,1)
-255 `quotRem` 255 = (1,0)
-255 `quotRem` 0 = divide by zero
-255 `quotRem` 1 = (255,0)
-255 `quotRem` 2 = (127,1)
-255 `quotRem` 3 = (85,0)
-
-0 `quotRem` 253 = (0,0)
-0 `quotRem` 254 = (0,0)
-0 `quotRem` 255 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 253 = (0,1)
-1 `quotRem` 254 = (0,1)
-1 `quotRem` 255 = (0,1)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 253 = (0,2)
-2 `quotRem` 254 = (0,2)
-2 `quotRem` 255 = (0,2)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 253 = (0,3)
-3 `quotRem` 254 = (0,3)
-3 `quotRem` 255 = (0,3)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-253 `quot` 253 = 1
-253 `quot` 254 = 0
-253 `quot` 255 = 0
-253 `quot` 0 = divide by zero
-253 `quot` 1 = 253
-253 `quot` 2 = 126
-253 `quot` 3 = 84
-
-254 `quot` 253 = 1
-254 `quot` 254 = 1
-254 `quot` 255 = 0
-254 `quot` 0 = divide by zero
-254 `quot` 1 = 254
-254 `quot` 2 = 127
-254 `quot` 3 = 84
-
-255 `quot` 253 = 1
-255 `quot` 254 = 1
-255 `quot` 255 = 1
-255 `quot` 0 = divide by zero
-255 `quot` 1 = 255
-255 `quot` 2 = 127
-255 `quot` 3 = 85
-
-0 `quot` 253 = 0
-0 `quot` 254 = 0
-0 `quot` 255 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 253 = 0
-1 `quot` 254 = 0
-1 `quot` 255 = 0
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 253 = 0
-2 `quot` 254 = 0
-2 `quot` 255 = 0
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 253 = 0
-3 `quot` 254 = 0
-3 `quot` 255 = 0
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-253 `rem` 253 = 0
-253 `rem` 254 = 253
-253 `rem` 255 = 253
-253 `rem` 0 = divide by zero
-253 `rem` 1 = 0
-253 `rem` 2 = 1
-253 `rem` 3 = 1
-
-254 `rem` 253 = 1
-254 `rem` 254 = 0
-254 `rem` 255 = 254
-254 `rem` 0 = divide by zero
-254 `rem` 1 = 0
-254 `rem` 2 = 0
-254 `rem` 3 = 2
-
-255 `rem` 253 = 2
-255 `rem` 254 = 1
-255 `rem` 255 = 0
-255 `rem` 0 = divide by zero
-255 `rem` 1 = 0
-255 `rem` 2 = 1
-255 `rem` 3 = 0
-
-0 `rem` 253 = 0
-0 `rem` 254 = 0
-0 `rem` 255 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 253 = 1
-1 `rem` 254 = 1
-1 `rem` 255 = 1
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 253 = 2
-2 `rem` 254 = 2
-2 `rem` 255 = 2
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 253 = 3
-3 `rem` 254 = 3
-3 `rem` 255 = 3
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,255]
-Int : [0,0,255]
-Int8 : [0,0,-1]
-Int16 : [0,0,255]
-Int32 : [0,0,255]
-Int64 : [0,0,255]
-Word8 : [0,0,255]
-Word16 : [0,0,255]
-Word32 : [0,0,255]
-Word64 : [0,0,255]
-testBits
-253 .&. 253 = 253
-253 .&. 254 = 252
-253 .&. 255 = 253
-253 .&. 0 = 0
-253 .&. 1 = 1
-253 .&. 2 = 0
-253 .&. 3 = 1
-
-254 .&. 253 = 252
-254 .&. 254 = 254
-254 .&. 255 = 254
-254 .&. 0 = 0
-254 .&. 1 = 0
-254 .&. 2 = 2
-254 .&. 3 = 2
-
-255 .&. 253 = 253
-255 .&. 254 = 254
-255 .&. 255 = 255
-255 .&. 0 = 0
-255 .&. 1 = 1
-255 .&. 2 = 2
-255 .&. 3 = 3
-
-0 .&. 253 = 0
-0 .&. 254 = 0
-0 .&. 255 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 253 = 1
-1 .&. 254 = 0
-1 .&. 255 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 253 = 0
-2 .&. 254 = 2
-2 .&. 255 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 253 = 1
-3 .&. 254 = 2
-3 .&. 255 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-253 .|. 253 = 253
-253 .|. 254 = 255
-253 .|. 255 = 255
-253 .|. 0 = 253
-253 .|. 1 = 253
-253 .|. 2 = 255
-253 .|. 3 = 255
-
-254 .|. 253 = 255
-254 .|. 254 = 254
-254 .|. 255 = 255
-254 .|. 0 = 254
-254 .|. 1 = 255
-254 .|. 2 = 254
-254 .|. 3 = 255
-
-255 .|. 253 = 255
-255 .|. 254 = 255
-255 .|. 255 = 255
-255 .|. 0 = 255
-255 .|. 1 = 255
-255 .|. 2 = 255
-255 .|. 3 = 255
-
-0 .|. 253 = 253
-0 .|. 254 = 254
-0 .|. 255 = 255
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 253 = 253
-1 .|. 254 = 255
-1 .|. 255 = 255
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 253 = 255
-2 .|. 254 = 254
-2 .|. 255 = 255
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 253 = 255
-3 .|. 254 = 255
-3 .|. 255 = 255
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-253 `xor` 253 = 0
-253 `xor` 254 = 3
-253 `xor` 255 = 2
-253 `xor` 0 = 253
-253 `xor` 1 = 252
-253 `xor` 2 = 255
-253 `xor` 3 = 254
-
-254 `xor` 253 = 3
-254 `xor` 254 = 0
-254 `xor` 255 = 1
-254 `xor` 0 = 254
-254 `xor` 1 = 255
-254 `xor` 2 = 252
-254 `xor` 3 = 253
-
-255 `xor` 253 = 2
-255 `xor` 254 = 1
-255 `xor` 255 = 0
-255 `xor` 0 = 255
-255 `xor` 1 = 254
-255 `xor` 2 = 253
-255 `xor` 3 = 252
-
-0 `xor` 253 = 253
-0 `xor` 254 = 254
-0 `xor` 255 = 255
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 253 = 252
-1 `xor` 254 = 255
-1 `xor` 255 = 254
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 253 = 255
-2 `xor` 254 = 252
-2 `xor` 255 = 253
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 253 = 254
-3 `xor` 254 = 253
-3 `xor` 255 = 252
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 253 = 2
-complement 254 = 1
-complement 255 = 0
-complement 0 = 255
-complement 1 = 254
-complement 2 = 253
-complement 3 = 252
-#
-253 `shiftL` 0 = 253
-253 `shiftL` 1 = 250
-253 `shiftL` 2 = 244
-253 `shiftL` 3 = 232
-253 `shiftL` 32 = 0
-253 `shiftL` 64 = 0
-
-254 `shiftL` 0 = 254
-254 `shiftL` 1 = 252
-254 `shiftL` 2 = 248
-254 `shiftL` 3 = 240
-254 `shiftL` 32 = 0
-254 `shiftL` 64 = 0
-
-255 `shiftL` 0 = 255
-255 `shiftL` 1 = 254
-255 `shiftL` 2 = 252
-255 `shiftL` 3 = 248
-255 `shiftL` 32 = 0
-255 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
-253 `shiftR` 0 = 253
-253 `shiftR` 1 = 126
-253 `shiftR` 2 = 63
-253 `shiftR` 3 = 31
-253 `shiftR` 32 = 0
-253 `shiftR` 64 = 0
-
-254 `shiftR` 0 = 254
-254 `shiftR` 1 = 127
-254 `shiftR` 2 = 63
-254 `shiftR` 3 = 31
-254 `shiftR` 32 = 0
-254 `shiftR` 64 = 0
-
-255 `shiftR` 0 = 255
-255 `shiftR` 1 = 127
-255 `shiftR` 2 = 63
-255 `shiftR` 3 = 31
-255 `shiftR` 32 = 0
-255 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-253 `rotate` -3 = 191
-253 `rotate` -2 = 127
-253 `rotate` -1 = 254
-253 `rotate` 0 = 253
-253 `rotate` 1 = 251
-253 `rotate` 2 = 247
-253 `rotate` 3 = 239
-253 `rotate` -64 = 253
-253 `rotate` -32 = 253
-253 `rotate` 32 = 253
-253 `rotate` 64 = 253
-
-254 `rotate` -3 = 223
-254 `rotate` -2 = 191
-254 `rotate` -1 = 127
-254 `rotate` 0 = 254
-254 `rotate` 1 = 253
-254 `rotate` 2 = 251
-254 `rotate` 3 = 247
-254 `rotate` -64 = 254
-254 `rotate` -32 = 254
-254 `rotate` 32 = 254
-254 `rotate` 64 = 254
-
-255 `rotate` -3 = 255
-255 `rotate` -2 = 255
-255 `rotate` -1 = 255
-255 `rotate` 0 = 255
-255 `rotate` 1 = 255
-255 `rotate` 2 = 255
-255 `rotate` 3 = 255
-255 `rotate` -64 = 255
-255 `rotate` -32 = 255
-255 `rotate` 32 = 255
-255 `rotate` 64 = 255
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 32
-1 `rotate` -2 = 64
-1 `rotate` -1 = 128
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 1
-1 `rotate` 32 = 1
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 64
-2 `rotate` -2 = 128
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 2
-2 `rotate` 32 = 2
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 96
-3 `rotate` -2 = 192
-3 `rotate` -1 = 129
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 3
-3 `rotate` 32 = 3
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-253 `setBit` 0 = 253
-253 `setBit` 1 = 255
-253 `setBit` 2 = 253
-253 `setBit` 3 = 253
-253 `setBit` 32 = 253
-253 `setBit` 64 = 253
-
-254 `setBit` 0 = 255
-254 `setBit` 1 = 254
-254 `setBit` 2 = 254
-254 `setBit` 3 = 254
-254 `setBit` 32 = 254
-254 `setBit` 64 = 254
-
-255 `setBit` 0 = 255
-255 `setBit` 1 = 255
-255 `setBit` 2 = 255
-255 `setBit` 3 = 255
-255 `setBit` 32 = 255
-255 `setBit` 64 = 255
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
-253 `clearBit` 0 = 252
-253 `clearBit` 1 = 253
-253 `clearBit` 2 = 249
-253 `clearBit` 3 = 245
-253 `clearBit` 32 = 253
-253 `clearBit` 64 = 253
-
-254 `clearBit` 0 = 254
-254 `clearBit` 1 = 252
-254 `clearBit` 2 = 250
-254 `clearBit` 3 = 246
-254 `clearBit` 32 = 254
-254 `clearBit` 64 = 254
-
-255 `clearBit` 0 = 254
-255 `clearBit` 1 = 253
-255 `clearBit` 2 = 251
-255 `clearBit` 3 = 247
-255 `clearBit` 32 = 255
-255 `clearBit` 64 = 255
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-253 `complementBit` 0 = 252
-253 `complementBit` 1 = 255
-253 `complementBit` 2 = 249
-253 `complementBit` 3 = 245
-253 `complementBit` 32 = 253
-253 `complementBit` 64 = 253
-
-254 `complementBit` 0 = 255
-254 `complementBit` 1 = 252
-254 `complementBit` 2 = 250
-254 `complementBit` 3 = 246
-254 `complementBit` 32 = 254
-254 `complementBit` 64 = 254
-
-255 `complementBit` 0 = 254
-255 `complementBit` 1 = 253
-255 `complementBit` 2 = 251
-255 `complementBit` 3 = 247
-255 `complementBit` 32 = 255
-255 `complementBit` 64 = 255
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
-253 `testBit` 0 = True
-253 `testBit` 1 = False
-253 `testBit` 2 = True
-253 `testBit` 3 = True
-253 `testBit` 32 = False
-253 `testBit` 64 = False
-
-254 `testBit` 0 = False
-254 `testBit` 1 = True
-254 `testBit` 2 = True
-254 `testBit` 3 = True
-254 `testBit` 32 = False
-254 `testBit` 64 = False
-
-255 `testBit` 0 = True
-255 `testBit` 1 = True
-255 `testBit` 2 = True
-255 `testBit` 3 = True
-255 `testBit` 32 = False
-255 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 253 = 8
-bitSize 254 = 8
-bitSize 255 = 8
-bitSize 0 = 8
-bitSize 1 = 8
-bitSize 2 = 8
-bitSize 3 = 8
-#
-isSigned 253 = False
-isSigned 254 = False
-isSigned 255 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Word16
---------------------------------
-testBounded
-(65535,0,1)
-(65534,65535,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[65533,65534,65535,0,1,2,3]
-[65533,65534,65535,0,1,2,3]
-testEq
-65533 == 65533 = True
-65533 == 65534 = False
-65533 == 65535 = False
-65533 == 0 = False
-65533 == 1 = False
-65533 == 2 = False
-65533 == 3 = False
-
-65534 == 65533 = False
-65534 == 65534 = True
-65534 == 65535 = False
-65534 == 0 = False
-65534 == 1 = False
-65534 == 2 = False
-65534 == 3 = False
-
-65535 == 65533 = False
-65535 == 65534 = False
-65535 == 65535 = True
-65535 == 0 = False
-65535 == 1 = False
-65535 == 2 = False
-65535 == 3 = False
-
-0 == 65533 = False
-0 == 65534 = False
-0 == 65535 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 65533 = False
-1 == 65534 = False
-1 == 65535 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 65533 = False
-2 == 65534 = False
-2 == 65535 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 65533 = False
-3 == 65534 = False
-3 == 65535 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-65533 /= 65533 = False
-65533 /= 65534 = True
-65533 /= 65535 = True
-65533 /= 0 = True
-65533 /= 1 = True
-65533 /= 2 = True
-65533 /= 3 = True
-
-65534 /= 65533 = True
-65534 /= 65534 = False
-65534 /= 65535 = True
-65534 /= 0 = True
-65534 /= 1 = True
-65534 /= 2 = True
-65534 /= 3 = True
-
-65535 /= 65533 = True
-65535 /= 65534 = True
-65535 /= 65535 = False
-65535 /= 0 = True
-65535 /= 1 = True
-65535 /= 2 = True
-65535 /= 3 = True
-
-0 /= 65533 = True
-0 /= 65534 = True
-0 /= 65535 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 65533 = True
-1 /= 65534 = True
-1 /= 65535 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 65533 = True
-2 /= 65534 = True
-2 /= 65535 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 65533 = True
-3 /= 65534 = True
-3 /= 65535 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-65533 <= 65533 = True
-65533 <= 65534 = True
-65533 <= 65535 = True
-65533 <= 0 = False
-65533 <= 1 = False
-65533 <= 2 = False
-65533 <= 3 = False
-
-65534 <= 65533 = False
-65534 <= 65534 = True
-65534 <= 65535 = True
-65534 <= 0 = False
-65534 <= 1 = False
-65534 <= 2 = False
-65534 <= 3 = False
-
-65535 <= 65533 = False
-65535 <= 65534 = False
-65535 <= 65535 = True
-65535 <= 0 = False
-65535 <= 1 = False
-65535 <= 2 = False
-65535 <= 3 = False
-
-0 <= 65533 = True
-0 <= 65534 = True
-0 <= 65535 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 65533 = True
-1 <= 65534 = True
-1 <= 65535 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 65533 = True
-2 <= 65534 = True
-2 <= 65535 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 65533 = True
-3 <= 65534 = True
-3 <= 65535 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-65533 < 65533 = False
-65533 < 65534 = True
-65533 < 65535 = True
-65533 < 0 = False
-65533 < 1 = False
-65533 < 2 = False
-65533 < 3 = False
-
-65534 < 65533 = False
-65534 < 65534 = False
-65534 < 65535 = True
-65534 < 0 = False
-65534 < 1 = False
-65534 < 2 = False
-65534 < 3 = False
-
-65535 < 65533 = False
-65535 < 65534 = False
-65535 < 65535 = False
-65535 < 0 = False
-65535 < 1 = False
-65535 < 2 = False
-65535 < 3 = False
-
-0 < 65533 = True
-0 < 65534 = True
-0 < 65535 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 65533 = True
-1 < 65534 = True
-1 < 65535 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 65533 = True
-2 < 65534 = True
-2 < 65535 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 65533 = True
-3 < 65534 = True
-3 < 65535 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-65533 > 65533 = False
-65533 > 65534 = False
-65533 > 65535 = False
-65533 > 0 = True
-65533 > 1 = True
-65533 > 2 = True
-65533 > 3 = True
-
-65534 > 65533 = True
-65534 > 65534 = False
-65534 > 65535 = False
-65534 > 0 = True
-65534 > 1 = True
-65534 > 2 = True
-65534 > 3 = True
-
-65535 > 65533 = True
-65535 > 65534 = True
-65535 > 65535 = False
-65535 > 0 = True
-65535 > 1 = True
-65535 > 2 = True
-65535 > 3 = True
-
-0 > 65533 = False
-0 > 65534 = False
-0 > 65535 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 65533 = False
-1 > 65534 = False
-1 > 65535 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 65533 = False
-2 > 65534 = False
-2 > 65535 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 65533 = False
-3 > 65534 = False
-3 > 65535 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-65533 >= 65533 = True
-65533 >= 65534 = False
-65533 >= 65535 = False
-65533 >= 0 = True
-65533 >= 1 = True
-65533 >= 2 = True
-65533 >= 3 = True
-
-65534 >= 65533 = True
-65534 >= 65534 = True
-65534 >= 65535 = False
-65534 >= 0 = True
-65534 >= 1 = True
-65534 >= 2 = True
-65534 >= 3 = True
-
-65535 >= 65533 = True
-65535 >= 65534 = True
-65535 >= 65535 = True
-65535 >= 0 = True
-65535 >= 1 = True
-65535 >= 2 = True
-65535 >= 3 = True
-
-0 >= 65533 = False
-0 >= 65534 = False
-0 >= 65535 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 65533 = False
-1 >= 65534 = False
-1 >= 65535 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 65533 = False
-2 >= 65534 = False
-2 >= 65535 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 65533 = False
-3 >= 65534 = False
-3 >= 65535 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-65533 `compare` 65533 = EQ
-65533 `compare` 65534 = LT
-65533 `compare` 65535 = LT
-65533 `compare` 0 = GT
-65533 `compare` 1 = GT
-65533 `compare` 2 = GT
-65533 `compare` 3 = GT
-
-65534 `compare` 65533 = GT
-65534 `compare` 65534 = EQ
-65534 `compare` 65535 = LT
-65534 `compare` 0 = GT
-65534 `compare` 1 = GT
-65534 `compare` 2 = GT
-65534 `compare` 3 = GT
-
-65535 `compare` 65533 = GT
-65535 `compare` 65534 = GT
-65535 `compare` 65535 = EQ
-65535 `compare` 0 = GT
-65535 `compare` 1 = GT
-65535 `compare` 2 = GT
-65535 `compare` 3 = GT
-
-0 `compare` 65533 = LT
-0 `compare` 65534 = LT
-0 `compare` 65535 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 65533 = LT
-1 `compare` 65534 = LT
-1 `compare` 65535 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 65533 = LT
-2 `compare` 65534 = LT
-2 `compare` 65535 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 65533 = LT
-3 `compare` 65534 = LT
-3 `compare` 65535 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-65533 + 65533 = 65530
-65533 + 65534 = 65531
-65533 + 65535 = 65532
-65533 + 0 = 65533
-65533 + 1 = 65534
-65533 + 2 = 65535
-65533 + 3 = 0
-
-65534 + 65533 = 65531
-65534 + 65534 = 65532
-65534 + 65535 = 65533
-65534 + 0 = 65534
-65534 + 1 = 65535
-65534 + 2 = 0
-65534 + 3 = 1
-
-65535 + 65533 = 65532
-65535 + 65534 = 65533
-65535 + 65535 = 65534
-65535 + 0 = 65535
-65535 + 1 = 0
-65535 + 2 = 1
-65535 + 3 = 2
-
-0 + 65533 = 65533
-0 + 65534 = 65534
-0 + 65535 = 65535
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 65533 = 65534
-1 + 65534 = 65535
-1 + 65535 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 65533 = 65535
-2 + 65534 = 0
-2 + 65535 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 65533 = 0
-3 + 65534 = 1
-3 + 65535 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-65533 - 65533 = 0
-65533 - 65534 = 65535
-65533 - 65535 = 65534
-65533 - 0 = 65533
-65533 - 1 = 65532
-65533 - 2 = 65531
-65533 - 3 = 65530
-
-65534 - 65533 = 1
-65534 - 65534 = 0
-65534 - 65535 = 65535
-65534 - 0 = 65534
-65534 - 1 = 65533
-65534 - 2 = 65532
-65534 - 3 = 65531
-
-65535 - 65533 = 2
-65535 - 65534 = 1
-65535 - 65535 = 0
-65535 - 0 = 65535
-65535 - 1 = 65534
-65535 - 2 = 65533
-65535 - 3 = 65532
-
-0 - 65533 = 3
-0 - 65534 = 2
-0 - 65535 = 1
-0 - 0 = 0
-0 - 1 = 65535
-0 - 2 = 65534
-0 - 3 = 65533
-
-1 - 65533 = 4
-1 - 65534 = 3
-1 - 65535 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 65535
-1 - 3 = 65534
-
-2 - 65533 = 5
-2 - 65534 = 4
-2 - 65535 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 65535
-
-3 - 65533 = 6
-3 - 65534 = 5
-3 - 65535 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-65533 * 65533 = 9
-65533 * 65534 = 6
-65533 * 65535 = 3
-65533 * 0 = 0
-65533 * 1 = 65533
-65533 * 2 = 65530
-65533 * 3 = 65527
-
-65534 * 65533 = 6
-65534 * 65534 = 4
-65534 * 65535 = 2
-65534 * 0 = 0
-65534 * 1 = 65534
-65534 * 2 = 65532
-65534 * 3 = 65530
-
-65535 * 65533 = 3
-65535 * 65534 = 2
-65535 * 65535 = 1
-65535 * 0 = 0
-65535 * 1 = 65535
-65535 * 2 = 65534
-65535 * 3 = 65533
-
-0 * 65533 = 0
-0 * 65534 = 0
-0 * 65535 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 65533 = 65533
-1 * 65534 = 65534
-1 * 65535 = 65535
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 65533 = 65530
-2 * 65534 = 65532
-2 * 65535 = 65534
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 65533 = 65527
-3 * 65534 = 65530
-3 * 65535 = 65533
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 65533 = 3
-negate 65534 = 2
-negate 65535 = 1
-negate 0 = 0
-negate 1 = 65535
-negate 2 = 65534
-negate 3 = 65533
-#
-testReal
-toRational 65533 = 65533 % 1
-toRational 65534 = 65534 % 1
-toRational 65535 = 65535 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-65533 `divMod` 65533 = (1,0)
-65533 `divMod` 65534 = (0,65533)
-65533 `divMod` 65535 = (0,65533)
-65533 `divMod` 0 = divide by zero
-65533 `divMod` 1 = (65533,0)
-65533 `divMod` 2 = (32766,1)
-65533 `divMod` 3 = (21844,1)
-
-65534 `divMod` 65533 = (1,1)
-65534 `divMod` 65534 = (1,0)
-65534 `divMod` 65535 = (0,65534)
-65534 `divMod` 0 = divide by zero
-65534 `divMod` 1 = (65534,0)
-65534 `divMod` 2 = (32767,0)
-65534 `divMod` 3 = (21844,2)
-
-65535 `divMod` 65533 = (1,2)
-65535 `divMod` 65534 = (1,1)
-65535 `divMod` 65535 = (1,0)
-65535 `divMod` 0 = divide by zero
-65535 `divMod` 1 = (65535,0)
-65535 `divMod` 2 = (32767,1)
-65535 `divMod` 3 = (21845,0)
-
-0 `divMod` 65533 = (0,0)
-0 `divMod` 65534 = (0,0)
-0 `divMod` 65535 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 65533 = (0,1)
-1 `divMod` 65534 = (0,1)
-1 `divMod` 65535 = (0,1)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 65533 = (0,2)
-2 `divMod` 65534 = (0,2)
-2 `divMod` 65535 = (0,2)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 65533 = (0,3)
-3 `divMod` 65534 = (0,3)
-3 `divMod` 65535 = (0,3)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-65533 `div` 65533 = 1
-65533 `div` 65534 = 0
-65533 `div` 65535 = 0
-65533 `div` 0 = divide by zero
-65533 `div` 1 = 65533
-65533 `div` 2 = 32766
-65533 `div` 3 = 21844
-
-65534 `div` 65533 = 1
-65534 `div` 65534 = 1
-65534 `div` 65535 = 0
-65534 `div` 0 = divide by zero
-65534 `div` 1 = 65534
-65534 `div` 2 = 32767
-65534 `div` 3 = 21844
-
-65535 `div` 65533 = 1
-65535 `div` 65534 = 1
-65535 `div` 65535 = 1
-65535 `div` 0 = divide by zero
-65535 `div` 1 = 65535
-65535 `div` 2 = 32767
-65535 `div` 3 = 21845
-
-0 `div` 65533 = 0
-0 `div` 65534 = 0
-0 `div` 65535 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 65533 = 0
-1 `div` 65534 = 0
-1 `div` 65535 = 0
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 65533 = 0
-2 `div` 65534 = 0
-2 `div` 65535 = 0
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 65533 = 0
-3 `div` 65534 = 0
-3 `div` 65535 = 0
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-65533 `mod` 65533 = 0
-65533 `mod` 65534 = 65533
-65533 `mod` 65535 = 65533
-65533 `mod` 0 = divide by zero
-65533 `mod` 1 = 0
-65533 `mod` 2 = 1
-65533 `mod` 3 = 1
-
-65534 `mod` 65533 = 1
-65534 `mod` 65534 = 0
-65534 `mod` 65535 = 65534
-65534 `mod` 0 = divide by zero
-65534 `mod` 1 = 0
-65534 `mod` 2 = 0
-65534 `mod` 3 = 2
-
-65535 `mod` 65533 = 2
-65535 `mod` 65534 = 1
-65535 `mod` 65535 = 0
-65535 `mod` 0 = divide by zero
-65535 `mod` 1 = 0
-65535 `mod` 2 = 1
-65535 `mod` 3 = 0
-
-0 `mod` 65533 = 0
-0 `mod` 65534 = 0
-0 `mod` 65535 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 65533 = 1
-1 `mod` 65534 = 1
-1 `mod` 65535 = 1
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 65533 = 2
-2 `mod` 65534 = 2
-2 `mod` 65535 = 2
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 65533 = 3
-3 `mod` 65534 = 3
-3 `mod` 65535 = 3
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-65533 `quotRem` 65533 = (1,0)
-65533 `quotRem` 65534 = (0,65533)
-65533 `quotRem` 65535 = (0,65533)
-65533 `quotRem` 0 = divide by zero
-65533 `quotRem` 1 = (65533,0)
-65533 `quotRem` 2 = (32766,1)
-65533 `quotRem` 3 = (21844,1)
-
-65534 `quotRem` 65533 = (1,1)
-65534 `quotRem` 65534 = (1,0)
-65534 `quotRem` 65535 = (0,65534)
-65534 `quotRem` 0 = divide by zero
-65534 `quotRem` 1 = (65534,0)
-65534 `quotRem` 2 = (32767,0)
-65534 `quotRem` 3 = (21844,2)
-
-65535 `quotRem` 65533 = (1,2)
-65535 `quotRem` 65534 = (1,1)
-65535 `quotRem` 65535 = (1,0)
-65535 `quotRem` 0 = divide by zero
-65535 `quotRem` 1 = (65535,0)
-65535 `quotRem` 2 = (32767,1)
-65535 `quotRem` 3 = (21845,0)
-
-0 `quotRem` 65533 = (0,0)
-0 `quotRem` 65534 = (0,0)
-0 `quotRem` 65535 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 65533 = (0,1)
-1 `quotRem` 65534 = (0,1)
-1 `quotRem` 65535 = (0,1)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 65533 = (0,2)
-2 `quotRem` 65534 = (0,2)
-2 `quotRem` 65535 = (0,2)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 65533 = (0,3)
-3 `quotRem` 65534 = (0,3)
-3 `quotRem` 65535 = (0,3)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-65533 `quot` 65533 = 1
-65533 `quot` 65534 = 0
-65533 `quot` 65535 = 0
-65533 `quot` 0 = divide by zero
-65533 `quot` 1 = 65533
-65533 `quot` 2 = 32766
-65533 `quot` 3 = 21844
-
-65534 `quot` 65533 = 1
-65534 `quot` 65534 = 1
-65534 `quot` 65535 = 0
-65534 `quot` 0 = divide by zero
-65534 `quot` 1 = 65534
-65534 `quot` 2 = 32767
-65534 `quot` 3 = 21844
-
-65535 `quot` 65533 = 1
-65535 `quot` 65534 = 1
-65535 `quot` 65535 = 1
-65535 `quot` 0 = divide by zero
-65535 `quot` 1 = 65535
-65535 `quot` 2 = 32767
-65535 `quot` 3 = 21845
-
-0 `quot` 65533 = 0
-0 `quot` 65534 = 0
-0 `quot` 65535 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 65533 = 0
-1 `quot` 65534 = 0
-1 `quot` 65535 = 0
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 65533 = 0
-2 `quot` 65534 = 0
-2 `quot` 65535 = 0
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 65533 = 0
-3 `quot` 65534 = 0
-3 `quot` 65535 = 0
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-65533 `rem` 65533 = 0
-65533 `rem` 65534 = 65533
-65533 `rem` 65535 = 65533
-65533 `rem` 0 = divide by zero
-65533 `rem` 1 = 0
-65533 `rem` 2 = 1
-65533 `rem` 3 = 1
-
-65534 `rem` 65533 = 1
-65534 `rem` 65534 = 0
-65534 `rem` 65535 = 65534
-65534 `rem` 0 = divide by zero
-65534 `rem` 1 = 0
-65534 `rem` 2 = 0
-65534 `rem` 3 = 2
-
-65535 `rem` 65533 = 2
-65535 `rem` 65534 = 1
-65535 `rem` 65535 = 0
-65535 `rem` 0 = divide by zero
-65535 `rem` 1 = 0
-65535 `rem` 2 = 1
-65535 `rem` 3 = 0
-
-0 `rem` 65533 = 0
-0 `rem` 65534 = 0
-0 `rem` 65535 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 65533 = 1
-1 `rem` 65534 = 1
-1 `rem` 65535 = 1
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 65533 = 2
-2 `rem` 65534 = 2
-2 `rem` 65535 = 2
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 65533 = 3
-3 `rem` 65534 = 3
-3 `rem` 65535 = 3
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,65535]
-Int : [0,0,65535]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,65535]
-Int64 : [0,0,65535]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,65535]
-Word64 : [0,0,65535]
-testBits
-65533 .&. 65533 = 65533
-65533 .&. 65534 = 65532
-65533 .&. 65535 = 65533
-65533 .&. 0 = 0
-65533 .&. 1 = 1
-65533 .&. 2 = 0
-65533 .&. 3 = 1
-
-65534 .&. 65533 = 65532
-65534 .&. 65534 = 65534
-65534 .&. 65535 = 65534
-65534 .&. 0 = 0
-65534 .&. 1 = 0
-65534 .&. 2 = 2
-65534 .&. 3 = 2
-
-65535 .&. 65533 = 65533
-65535 .&. 65534 = 65534
-65535 .&. 65535 = 65535
-65535 .&. 0 = 0
-65535 .&. 1 = 1
-65535 .&. 2 = 2
-65535 .&. 3 = 3
-
-0 .&. 65533 = 0
-0 .&. 65534 = 0
-0 .&. 65535 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 65533 = 1
-1 .&. 65534 = 0
-1 .&. 65535 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 65533 = 0
-2 .&. 65534 = 2
-2 .&. 65535 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 65533 = 1
-3 .&. 65534 = 2
-3 .&. 65535 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-65533 .|. 65533 = 65533
-65533 .|. 65534 = 65535
-65533 .|. 65535 = 65535
-65533 .|. 0 = 65533
-65533 .|. 1 = 65533
-65533 .|. 2 = 65535
-65533 .|. 3 = 65535
-
-65534 .|. 65533 = 65535
-65534 .|. 65534 = 65534
-65534 .|. 65535 = 65535
-65534 .|. 0 = 65534
-65534 .|. 1 = 65535
-65534 .|. 2 = 65534
-65534 .|. 3 = 65535
-
-65535 .|. 65533 = 65535
-65535 .|. 65534 = 65535
-65535 .|. 65535 = 65535
-65535 .|. 0 = 65535
-65535 .|. 1 = 65535
-65535 .|. 2 = 65535
-65535 .|. 3 = 65535
-
-0 .|. 65533 = 65533
-0 .|. 65534 = 65534
-0 .|. 65535 = 65535
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 65533 = 65533
-1 .|. 65534 = 65535
-1 .|. 65535 = 65535
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 65533 = 65535
-2 .|. 65534 = 65534
-2 .|. 65535 = 65535
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 65533 = 65535
-3 .|. 65534 = 65535
-3 .|. 65535 = 65535
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-65533 `xor` 65533 = 0
-65533 `xor` 65534 = 3
-65533 `xor` 65535 = 2
-65533 `xor` 0 = 65533
-65533 `xor` 1 = 65532
-65533 `xor` 2 = 65535
-65533 `xor` 3 = 65534
-
-65534 `xor` 65533 = 3
-65534 `xor` 65534 = 0
-65534 `xor` 65535 = 1
-65534 `xor` 0 = 65534
-65534 `xor` 1 = 65535
-65534 `xor` 2 = 65532
-65534 `xor` 3 = 65533
-
-65535 `xor` 65533 = 2
-65535 `xor` 65534 = 1
-65535 `xor` 65535 = 0
-65535 `xor` 0 = 65535
-65535 `xor` 1 = 65534
-65535 `xor` 2 = 65533
-65535 `xor` 3 = 65532
-
-0 `xor` 65533 = 65533
-0 `xor` 65534 = 65534
-0 `xor` 65535 = 65535
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 65533 = 65532
-1 `xor` 65534 = 65535
-1 `xor` 65535 = 65534
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 65533 = 65535
-2 `xor` 65534 = 65532
-2 `xor` 65535 = 65533
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 65533 = 65534
-3 `xor` 65534 = 65533
-3 `xor` 65535 = 65532
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 65533 = 2
-complement 65534 = 1
-complement 65535 = 0
-complement 0 = 65535
-complement 1 = 65534
-complement 2 = 65533
-complement 3 = 65532
-#
-65533 `shiftL` 0 = 65533
-65533 `shiftL` 1 = 65530
-65533 `shiftL` 2 = 65524
-65533 `shiftL` 3 = 65512
-65533 `shiftL` 32 = 0
-65533 `shiftL` 64 = 0
-
-65534 `shiftL` 0 = 65534
-65534 `shiftL` 1 = 65532
-65534 `shiftL` 2 = 65528
-65534 `shiftL` 3 = 65520
-65534 `shiftL` 32 = 0
-65534 `shiftL` 64 = 0
-
-65535 `shiftL` 0 = 65535
-65535 `shiftL` 1 = 65534
-65535 `shiftL` 2 = 65532
-65535 `shiftL` 3 = 65528
-65535 `shiftL` 32 = 0
-65535 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
-65533 `shiftR` 0 = 65533
-65533 `shiftR` 1 = 32766
-65533 `shiftR` 2 = 16383
-65533 `shiftR` 3 = 8191
-65533 `shiftR` 32 = 0
-65533 `shiftR` 64 = 0
-
-65534 `shiftR` 0 = 65534
-65534 `shiftR` 1 = 32767
-65534 `shiftR` 2 = 16383
-65534 `shiftR` 3 = 8191
-65534 `shiftR` 32 = 0
-65534 `shiftR` 64 = 0
-
-65535 `shiftR` 0 = 65535
-65535 `shiftR` 1 = 32767
-65535 `shiftR` 2 = 16383
-65535 `shiftR` 3 = 8191
-65535 `shiftR` 32 = 0
-65535 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-65533 `rotate` -3 = 49151
-65533 `rotate` -2 = 32767
-65533 `rotate` -1 = 65534
-65533 `rotate` 0 = 65533
-65533 `rotate` 1 = 65531
-65533 `rotate` 2 = 65527
-65533 `rotate` 3 = 65519
-65533 `rotate` -64 = 65533
-65533 `rotate` -32 = 65533
-65533 `rotate` 32 = 65533
-65533 `rotate` 64 = 65533
-
-65534 `rotate` -3 = 57343
-65534 `rotate` -2 = 49151
-65534 `rotate` -1 = 32767
-65534 `rotate` 0 = 65534
-65534 `rotate` 1 = 65533
-65534 `rotate` 2 = 65531
-65534 `rotate` 3 = 65527
-65534 `rotate` -64 = 65534
-65534 `rotate` -32 = 65534
-65534 `rotate` 32 = 65534
-65534 `rotate` 64 = 65534
-
-65535 `rotate` -3 = 65535
-65535 `rotate` -2 = 65535
-65535 `rotate` -1 = 65535
-65535 `rotate` 0 = 65535
-65535 `rotate` 1 = 65535
-65535 `rotate` 2 = 65535
-65535 `rotate` 3 = 65535
-65535 `rotate` -64 = 65535
-65535 `rotate` -32 = 65535
-65535 `rotate` 32 = 65535
-65535 `rotate` 64 = 65535
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 8192
-1 `rotate` -2 = 16384
-1 `rotate` -1 = 32768
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 1
-1 `rotate` 32 = 1
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 16384
-2 `rotate` -2 = 32768
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 2
-2 `rotate` 32 = 2
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 24576
-3 `rotate` -2 = 49152
-3 `rotate` -1 = 32769
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 3
-3 `rotate` 32 = 3
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-65533 `setBit` 0 = 65533
-65533 `setBit` 1 = 65535
-65533 `setBit` 2 = 65533
-65533 `setBit` 3 = 65533
-65533 `setBit` 32 = 65533
-65533 `setBit` 64 = 65533
-
-65534 `setBit` 0 = 65535
-65534 `setBit` 1 = 65534
-65534 `setBit` 2 = 65534
-65534 `setBit` 3 = 65534
-65534 `setBit` 32 = 65534
-65534 `setBit` 64 = 65534
-
-65535 `setBit` 0 = 65535
-65535 `setBit` 1 = 65535
-65535 `setBit` 2 = 65535
-65535 `setBit` 3 = 65535
-65535 `setBit` 32 = 65535
-65535 `setBit` 64 = 65535
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
-65533 `clearBit` 0 = 65532
-65533 `clearBit` 1 = 65533
-65533 `clearBit` 2 = 65529
-65533 `clearBit` 3 = 65525
-65533 `clearBit` 32 = 65533
-65533 `clearBit` 64 = 65533
-
-65534 `clearBit` 0 = 65534
-65534 `clearBit` 1 = 65532
-65534 `clearBit` 2 = 65530
-65534 `clearBit` 3 = 65526
-65534 `clearBit` 32 = 65534
-65534 `clearBit` 64 = 65534
-
-65535 `clearBit` 0 = 65534
-65535 `clearBit` 1 = 65533
-65535 `clearBit` 2 = 65531
-65535 `clearBit` 3 = 65527
-65535 `clearBit` 32 = 65535
-65535 `clearBit` 64 = 65535
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-65533 `complementBit` 0 = 65532
-65533 `complementBit` 1 = 65535
-65533 `complementBit` 2 = 65529
-65533 `complementBit` 3 = 65525
-65533 `complementBit` 32 = 65533
-65533 `complementBit` 64 = 65533
-
-65534 `complementBit` 0 = 65535
-65534 `complementBit` 1 = 65532
-65534 `complementBit` 2 = 65530
-65534 `complementBit` 3 = 65526
-65534 `complementBit` 32 = 65534
-65534 `complementBit` 64 = 65534
-
-65535 `complementBit` 0 = 65534
-65535 `complementBit` 1 = 65533
-65535 `complementBit` 2 = 65531
-65535 `complementBit` 3 = 65527
-65535 `complementBit` 32 = 65535
-65535 `complementBit` 64 = 65535
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
-65533 `testBit` 0 = True
-65533 `testBit` 1 = False
-65533 `testBit` 2 = True
-65533 `testBit` 3 = True
-65533 `testBit` 32 = False
-65533 `testBit` 64 = False
-
-65534 `testBit` 0 = False
-65534 `testBit` 1 = True
-65534 `testBit` 2 = True
-65534 `testBit` 3 = True
-65534 `testBit` 32 = False
-65534 `testBit` 64 = False
-
-65535 `testBit` 0 = True
-65535 `testBit` 1 = True
-65535 `testBit` 2 = True
-65535 `testBit` 3 = True
-65535 `testBit` 32 = False
-65535 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 65533 = 16
-bitSize 65534 = 16
-bitSize 65535 = 16
-bitSize 0 = 16
-bitSize 1 = 16
-bitSize 2 = 16
-bitSize 3 = 16
-#
-isSigned 65533 = False
-isSigned 65534 = False
-isSigned 65535 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Word32
---------------------------------
-testBounded
-(4294967295,0,1)
-(4294967294,4294967295,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[4294967293,4294967294,4294967295,0,1,2,3]
-[4294967293,4294967294,4294967295,0,1,2,3]
-testEq
-4294967293 == 4294967293 = True
-4294967293 == 4294967294 = False
-4294967293 == 4294967295 = False
-4294967293 == 0 = False
-4294967293 == 1 = False
-4294967293 == 2 = False
-4294967293 == 3 = False
-
-4294967294 == 4294967293 = False
-4294967294 == 4294967294 = True
-4294967294 == 4294967295 = False
-4294967294 == 0 = False
-4294967294 == 1 = False
-4294967294 == 2 = False
-4294967294 == 3 = False
-
-4294967295 == 4294967293 = False
-4294967295 == 4294967294 = False
-4294967295 == 4294967295 = True
-4294967295 == 0 = False
-4294967295 == 1 = False
-4294967295 == 2 = False
-4294967295 == 3 = False
-
-0 == 4294967293 = False
-0 == 4294967294 = False
-0 == 4294967295 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 4294967293 = False
-1 == 4294967294 = False
-1 == 4294967295 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 4294967293 = False
-2 == 4294967294 = False
-2 == 4294967295 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 4294967293 = False
-3 == 4294967294 = False
-3 == 4294967295 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-4294967293 /= 4294967293 = False
-4294967293 /= 4294967294 = True
-4294967293 /= 4294967295 = True
-4294967293 /= 0 = True
-4294967293 /= 1 = True
-4294967293 /= 2 = True
-4294967293 /= 3 = True
-
-4294967294 /= 4294967293 = True
-4294967294 /= 4294967294 = False
-4294967294 /= 4294967295 = True
-4294967294 /= 0 = True
-4294967294 /= 1 = True
-4294967294 /= 2 = True
-4294967294 /= 3 = True
-
-4294967295 /= 4294967293 = True
-4294967295 /= 4294967294 = True
-4294967295 /= 4294967295 = False
-4294967295 /= 0 = True
-4294967295 /= 1 = True
-4294967295 /= 2 = True
-4294967295 /= 3 = True
-
-0 /= 4294967293 = True
-0 /= 4294967294 = True
-0 /= 4294967295 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 4294967293 = True
-1 /= 4294967294 = True
-1 /= 4294967295 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 4294967293 = True
-2 /= 4294967294 = True
-2 /= 4294967295 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 4294967293 = True
-3 /= 4294967294 = True
-3 /= 4294967295 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-4294967293 <= 4294967293 = True
-4294967293 <= 4294967294 = True
-4294967293 <= 4294967295 = True
-4294967293 <= 0 = False
-4294967293 <= 1 = False
-4294967293 <= 2 = False
-4294967293 <= 3 = False
-
-4294967294 <= 4294967293 = False
-4294967294 <= 4294967294 = True
-4294967294 <= 4294967295 = True
-4294967294 <= 0 = False
-4294967294 <= 1 = False
-4294967294 <= 2 = False
-4294967294 <= 3 = False
-
-4294967295 <= 4294967293 = False
-4294967295 <= 4294967294 = False
-4294967295 <= 4294967295 = True
-4294967295 <= 0 = False
-4294967295 <= 1 = False
-4294967295 <= 2 = False
-4294967295 <= 3 = False
-
-0 <= 4294967293 = True
-0 <= 4294967294 = True
-0 <= 4294967295 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 4294967293 = True
-1 <= 4294967294 = True
-1 <= 4294967295 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 4294967293 = True
-2 <= 4294967294 = True
-2 <= 4294967295 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 4294967293 = True
-3 <= 4294967294 = True
-3 <= 4294967295 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-4294967293 < 4294967293 = False
-4294967293 < 4294967294 = True
-4294967293 < 4294967295 = True
-4294967293 < 0 = False
-4294967293 < 1 = False
-4294967293 < 2 = False
-4294967293 < 3 = False
-
-4294967294 < 4294967293 = False
-4294967294 < 4294967294 = False
-4294967294 < 4294967295 = True
-4294967294 < 0 = False
-4294967294 < 1 = False
-4294967294 < 2 = False
-4294967294 < 3 = False
-
-4294967295 < 4294967293 = False
-4294967295 < 4294967294 = False
-4294967295 < 4294967295 = False
-4294967295 < 0 = False
-4294967295 < 1 = False
-4294967295 < 2 = False
-4294967295 < 3 = False
-
-0 < 4294967293 = True
-0 < 4294967294 = True
-0 < 4294967295 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 4294967293 = True
-1 < 4294967294 = True
-1 < 4294967295 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 4294967293 = True
-2 < 4294967294 = True
-2 < 4294967295 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 4294967293 = True
-3 < 4294967294 = True
-3 < 4294967295 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-4294967293 > 4294967293 = False
-4294967293 > 4294967294 = False
-4294967293 > 4294967295 = False
-4294967293 > 0 = True
-4294967293 > 1 = True
-4294967293 > 2 = True
-4294967293 > 3 = True
-
-4294967294 > 4294967293 = True
-4294967294 > 4294967294 = False
-4294967294 > 4294967295 = False
-4294967294 > 0 = True
-4294967294 > 1 = True
-4294967294 > 2 = True
-4294967294 > 3 = True
-
-4294967295 > 4294967293 = True
-4294967295 > 4294967294 = True
-4294967295 > 4294967295 = False
-4294967295 > 0 = True
-4294967295 > 1 = True
-4294967295 > 2 = True
-4294967295 > 3 = True
-
-0 > 4294967293 = False
-0 > 4294967294 = False
-0 > 4294967295 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 4294967293 = False
-1 > 4294967294 = False
-1 > 4294967295 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 4294967293 = False
-2 > 4294967294 = False
-2 > 4294967295 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 4294967293 = False
-3 > 4294967294 = False
-3 > 4294967295 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-4294967293 >= 4294967293 = True
-4294967293 >= 4294967294 = False
-4294967293 >= 4294967295 = False
-4294967293 >= 0 = True
-4294967293 >= 1 = True
-4294967293 >= 2 = True
-4294967293 >= 3 = True
-
-4294967294 >= 4294967293 = True
-4294967294 >= 4294967294 = True
-4294967294 >= 4294967295 = False
-4294967294 >= 0 = True
-4294967294 >= 1 = True
-4294967294 >= 2 = True
-4294967294 >= 3 = True
-
-4294967295 >= 4294967293 = True
-4294967295 >= 4294967294 = True
-4294967295 >= 4294967295 = True
-4294967295 >= 0 = True
-4294967295 >= 1 = True
-4294967295 >= 2 = True
-4294967295 >= 3 = True
-
-0 >= 4294967293 = False
-0 >= 4294967294 = False
-0 >= 4294967295 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 4294967293 = False
-1 >= 4294967294 = False
-1 >= 4294967295 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 4294967293 = False
-2 >= 4294967294 = False
-2 >= 4294967295 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 4294967293 = False
-3 >= 4294967294 = False
-3 >= 4294967295 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-4294967293 `compare` 4294967293 = EQ
-4294967293 `compare` 4294967294 = LT
-4294967293 `compare` 4294967295 = LT
-4294967293 `compare` 0 = GT
-4294967293 `compare` 1 = GT
-4294967293 `compare` 2 = GT
-4294967293 `compare` 3 = GT
-
-4294967294 `compare` 4294967293 = GT
-4294967294 `compare` 4294967294 = EQ
-4294967294 `compare` 4294967295 = LT
-4294967294 `compare` 0 = GT
-4294967294 `compare` 1 = GT
-4294967294 `compare` 2 = GT
-4294967294 `compare` 3 = GT
-
-4294967295 `compare` 4294967293 = GT
-4294967295 `compare` 4294967294 = GT
-4294967295 `compare` 4294967295 = EQ
-4294967295 `compare` 0 = GT
-4294967295 `compare` 1 = GT
-4294967295 `compare` 2 = GT
-4294967295 `compare` 3 = GT
-
-0 `compare` 4294967293 = LT
-0 `compare` 4294967294 = LT
-0 `compare` 4294967295 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 4294967293 = LT
-1 `compare` 4294967294 = LT
-1 `compare` 4294967295 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 4294967293 = LT
-2 `compare` 4294967294 = LT
-2 `compare` 4294967295 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 4294967293 = LT
-3 `compare` 4294967294 = LT
-3 `compare` 4294967295 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-4294967293 + 4294967293 = 4294967290
-4294967293 + 4294967294 = 4294967291
-4294967293 + 4294967295 = 4294967292
-4294967293 + 0 = 4294967293
-4294967293 + 1 = 4294967294
-4294967293 + 2 = 4294967295
-4294967293 + 3 = 0
-
-4294967294 + 4294967293 = 4294967291
-4294967294 + 4294967294 = 4294967292
-4294967294 + 4294967295 = 4294967293
-4294967294 + 0 = 4294967294
-4294967294 + 1 = 4294967295
-4294967294 + 2 = 0
-4294967294 + 3 = 1
-
-4294967295 + 4294967293 = 4294967292
-4294967295 + 4294967294 = 4294967293
-4294967295 + 4294967295 = 4294967294
-4294967295 + 0 = 4294967295
-4294967295 + 1 = 0
-4294967295 + 2 = 1
-4294967295 + 3 = 2
-
-0 + 4294967293 = 4294967293
-0 + 4294967294 = 4294967294
-0 + 4294967295 = 4294967295
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 4294967293 = 4294967294
-1 + 4294967294 = 4294967295
-1 + 4294967295 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 4294967293 = 4294967295
-2 + 4294967294 = 0
-2 + 4294967295 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 4294967293 = 0
-3 + 4294967294 = 1
-3 + 4294967295 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-4294967293 - 4294967293 = 0
-4294967293 - 4294967294 = 4294967295
-4294967293 - 4294967295 = 4294967294
-4294967293 - 0 = 4294967293
-4294967293 - 1 = 4294967292
-4294967293 - 2 = 4294967291
-4294967293 - 3 = 4294967290
-
-4294967294 - 4294967293 = 1
-4294967294 - 4294967294 = 0
-4294967294 - 4294967295 = 4294967295
-4294967294 - 0 = 4294967294
-4294967294 - 1 = 4294967293
-4294967294 - 2 = 4294967292
-4294967294 - 3 = 4294967291
-
-4294967295 - 4294967293 = 2
-4294967295 - 4294967294 = 1
-4294967295 - 4294967295 = 0
-4294967295 - 0 = 4294967295
-4294967295 - 1 = 4294967294
-4294967295 - 2 = 4294967293
-4294967295 - 3 = 4294967292
-
-0 - 4294967293 = 3
-0 - 4294967294 = 2
-0 - 4294967295 = 1
-0 - 0 = 0
-0 - 1 = 4294967295
-0 - 2 = 4294967294
-0 - 3 = 4294967293
-
-1 - 4294967293 = 4
-1 - 4294967294 = 3
-1 - 4294967295 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 4294967295
-1 - 3 = 4294967294
-
-2 - 4294967293 = 5
-2 - 4294967294 = 4
-2 - 4294967295 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 4294967295
-
-3 - 4294967293 = 6
-3 - 4294967294 = 5
-3 - 4294967295 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-4294967293 * 4294967293 = 9
-4294967293 * 4294967294 = 6
-4294967293 * 4294967295 = 3
-4294967293 * 0 = 0
-4294967293 * 1 = 4294967293
-4294967293 * 2 = 4294967290
-4294967293 * 3 = 4294967287
-
-4294967294 * 4294967293 = 6
-4294967294 * 4294967294 = 4
-4294967294 * 4294967295 = 2
-4294967294 * 0 = 0
-4294967294 * 1 = 4294967294
-4294967294 * 2 = 4294967292
-4294967294 * 3 = 4294967290
-
-4294967295 * 4294967293 = 3
-4294967295 * 4294967294 = 2
-4294967295 * 4294967295 = 1
-4294967295 * 0 = 0
-4294967295 * 1 = 4294967295
-4294967295 * 2 = 4294967294
-4294967295 * 3 = 4294967293
-
-0 * 4294967293 = 0
-0 * 4294967294 = 0
-0 * 4294967295 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 4294967293 = 4294967293
-1 * 4294967294 = 4294967294
-1 * 4294967295 = 4294967295
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 4294967293 = 4294967290
-2 * 4294967294 = 4294967292
-2 * 4294967295 = 4294967294
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 4294967293 = 4294967287
-3 * 4294967294 = 4294967290
-3 * 4294967295 = 4294967293
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 4294967293 = 3
-negate 4294967294 = 2
-negate 4294967295 = 1
-negate 0 = 0
-negate 1 = 4294967295
-negate 2 = 4294967294
-negate 3 = 4294967293
-#
-testReal
-toRational 4294967293 = 4294967293 % 1
-toRational 4294967294 = 4294967294 % 1
-toRational 4294967295 = 4294967295 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-4294967293 `divMod` 4294967293 = (1,0)
-4294967293 `divMod` 4294967294 = (0,4294967293)
-4294967293 `divMod` 4294967295 = (0,4294967293)
-4294967293 `divMod` 0 = divide by zero
-4294967293 `divMod` 1 = (4294967293,0)
-4294967293 `divMod` 2 = (2147483646,1)
-4294967293 `divMod` 3 = (1431655764,1)
-
-4294967294 `divMod` 4294967293 = (1,1)
-4294967294 `divMod` 4294967294 = (1,0)
-4294967294 `divMod` 4294967295 = (0,4294967294)
-4294967294 `divMod` 0 = divide by zero
-4294967294 `divMod` 1 = (4294967294,0)
-4294967294 `divMod` 2 = (2147483647,0)
-4294967294 `divMod` 3 = (1431655764,2)
-
-4294967295 `divMod` 4294967293 = (1,2)
-4294967295 `divMod` 4294967294 = (1,1)
-4294967295 `divMod` 4294967295 = (1,0)
-4294967295 `divMod` 0 = divide by zero
-4294967295 `divMod` 1 = (4294967295,0)
-4294967295 `divMod` 2 = (2147483647,1)
-4294967295 `divMod` 3 = (1431655765,0)
-
-0 `divMod` 4294967293 = (0,0)
-0 `divMod` 4294967294 = (0,0)
-0 `divMod` 4294967295 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 4294967293 = (0,1)
-1 `divMod` 4294967294 = (0,1)
-1 `divMod` 4294967295 = (0,1)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 4294967293 = (0,2)
-2 `divMod` 4294967294 = (0,2)
-2 `divMod` 4294967295 = (0,2)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 4294967293 = (0,3)
-3 `divMod` 4294967294 = (0,3)
-3 `divMod` 4294967295 = (0,3)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-4294967293 `div` 4294967293 = 1
-4294967293 `div` 4294967294 = 0
-4294967293 `div` 4294967295 = 0
-4294967293 `div` 0 = divide by zero
-4294967293 `div` 1 = 4294967293
-4294967293 `div` 2 = 2147483646
-4294967293 `div` 3 = 1431655764
-
-4294967294 `div` 4294967293 = 1
-4294967294 `div` 4294967294 = 1
-4294967294 `div` 4294967295 = 0
-4294967294 `div` 0 = divide by zero
-4294967294 `div` 1 = 4294967294
-4294967294 `div` 2 = 2147483647
-4294967294 `div` 3 = 1431655764
-
-4294967295 `div` 4294967293 = 1
-4294967295 `div` 4294967294 = 1
-4294967295 `div` 4294967295 = 1
-4294967295 `div` 0 = divide by zero
-4294967295 `div` 1 = 4294967295
-4294967295 `div` 2 = 2147483647
-4294967295 `div` 3 = 1431655765
-
-0 `div` 4294967293 = 0
-0 `div` 4294967294 = 0
-0 `div` 4294967295 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 4294967293 = 0
-1 `div` 4294967294 = 0
-1 `div` 4294967295 = 0
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 4294967293 = 0
-2 `div` 4294967294 = 0
-2 `div` 4294967295 = 0
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 4294967293 = 0
-3 `div` 4294967294 = 0
-3 `div` 4294967295 = 0
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-4294967293 `mod` 4294967293 = 0
-4294967293 `mod` 4294967294 = 4294967293
-4294967293 `mod` 4294967295 = 4294967293
-4294967293 `mod` 0 = divide by zero
-4294967293 `mod` 1 = 0
-4294967293 `mod` 2 = 1
-4294967293 `mod` 3 = 1
-
-4294967294 `mod` 4294967293 = 1
-4294967294 `mod` 4294967294 = 0
-4294967294 `mod` 4294967295 = 4294967294
-4294967294 `mod` 0 = divide by zero
-4294967294 `mod` 1 = 0
-4294967294 `mod` 2 = 0
-4294967294 `mod` 3 = 2
-
-4294967295 `mod` 4294967293 = 2
-4294967295 `mod` 4294967294 = 1
-4294967295 `mod` 4294967295 = 0
-4294967295 `mod` 0 = divide by zero
-4294967295 `mod` 1 = 0
-4294967295 `mod` 2 = 1
-4294967295 `mod` 3 = 0
-
-0 `mod` 4294967293 = 0
-0 `mod` 4294967294 = 0
-0 `mod` 4294967295 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 4294967293 = 1
-1 `mod` 4294967294 = 1
-1 `mod` 4294967295 = 1
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 4294967293 = 2
-2 `mod` 4294967294 = 2
-2 `mod` 4294967295 = 2
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 4294967293 = 3
-3 `mod` 4294967294 = 3
-3 `mod` 4294967295 = 3
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-4294967293 `quotRem` 4294967293 = (1,0)
-4294967293 `quotRem` 4294967294 = (0,4294967293)
-4294967293 `quotRem` 4294967295 = (0,4294967293)
-4294967293 `quotRem` 0 = divide by zero
-4294967293 `quotRem` 1 = (4294967293,0)
-4294967293 `quotRem` 2 = (2147483646,1)
-4294967293 `quotRem` 3 = (1431655764,1)
-
-4294967294 `quotRem` 4294967293 = (1,1)
-4294967294 `quotRem` 4294967294 = (1,0)
-4294967294 `quotRem` 4294967295 = (0,4294967294)
-4294967294 `quotRem` 0 = divide by zero
-4294967294 `quotRem` 1 = (4294967294,0)
-4294967294 `quotRem` 2 = (2147483647,0)
-4294967294 `quotRem` 3 = (1431655764,2)
-
-4294967295 `quotRem` 4294967293 = (1,2)
-4294967295 `quotRem` 4294967294 = (1,1)
-4294967295 `quotRem` 4294967295 = (1,0)
-4294967295 `quotRem` 0 = divide by zero
-4294967295 `quotRem` 1 = (4294967295,0)
-4294967295 `quotRem` 2 = (2147483647,1)
-4294967295 `quotRem` 3 = (1431655765,0)
-
-0 `quotRem` 4294967293 = (0,0)
-0 `quotRem` 4294967294 = (0,0)
-0 `quotRem` 4294967295 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 4294967293 = (0,1)
-1 `quotRem` 4294967294 = (0,1)
-1 `quotRem` 4294967295 = (0,1)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 4294967293 = (0,2)
-2 `quotRem` 4294967294 = (0,2)
-2 `quotRem` 4294967295 = (0,2)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 4294967293 = (0,3)
-3 `quotRem` 4294967294 = (0,3)
-3 `quotRem` 4294967295 = (0,3)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-4294967293 `quot` 4294967293 = 1
-4294967293 `quot` 4294967294 = 0
-4294967293 `quot` 4294967295 = 0
-4294967293 `quot` 0 = divide by zero
-4294967293 `quot` 1 = 4294967293
-4294967293 `quot` 2 = 2147483646
-4294967293 `quot` 3 = 1431655764
-
-4294967294 `quot` 4294967293 = 1
-4294967294 `quot` 4294967294 = 1
-4294967294 `quot` 4294967295 = 0
-4294967294 `quot` 0 = divide by zero
-4294967294 `quot` 1 = 4294967294
-4294967294 `quot` 2 = 2147483647
-4294967294 `quot` 3 = 1431655764
-
-4294967295 `quot` 4294967293 = 1
-4294967295 `quot` 4294967294 = 1
-4294967295 `quot` 4294967295 = 1
-4294967295 `quot` 0 = divide by zero
-4294967295 `quot` 1 = 4294967295
-4294967295 `quot` 2 = 2147483647
-4294967295 `quot` 3 = 1431655765
-
-0 `quot` 4294967293 = 0
-0 `quot` 4294967294 = 0
-0 `quot` 4294967295 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 4294967293 = 0
-1 `quot` 4294967294 = 0
-1 `quot` 4294967295 = 0
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 4294967293 = 0
-2 `quot` 4294967294 = 0
-2 `quot` 4294967295 = 0
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 4294967293 = 0
-3 `quot` 4294967294 = 0
-3 `quot` 4294967295 = 0
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-4294967293 `rem` 4294967293 = 0
-4294967293 `rem` 4294967294 = 4294967293
-4294967293 `rem` 4294967295 = 4294967293
-4294967293 `rem` 0 = divide by zero
-4294967293 `rem` 1 = 0
-4294967293 `rem` 2 = 1
-4294967293 `rem` 3 = 1
-
-4294967294 `rem` 4294967293 = 1
-4294967294 `rem` 4294967294 = 0
-4294967294 `rem` 4294967295 = 4294967294
-4294967294 `rem` 0 = divide by zero
-4294967294 `rem` 1 = 0
-4294967294 `rem` 2 = 0
-4294967294 `rem` 3 = 2
-
-4294967295 `rem` 4294967293 = 2
-4294967295 `rem` 4294967294 = 1
-4294967295 `rem` 4294967295 = 0
-4294967295 `rem` 0 = divide by zero
-4294967295 `rem` 1 = 0
-4294967295 `rem` 2 = 1
-4294967295 `rem` 3 = 0
-
-0 `rem` 4294967293 = 0
-0 `rem` 4294967294 = 0
-0 `rem` 4294967295 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 4294967293 = 1
-1 `rem` 4294967294 = 1
-1 `rem` 4294967295 = 1
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 4294967293 = 2
-2 `rem` 4294967294 = 2
-2 `rem` 4294967295 = 2
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 4294967293 = 3
-3 `rem` 4294967294 = 3
-3 `rem` 4294967295 = 3
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,4294967295]
-Int : [0,0,4294967295]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [0,0,4294967295]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [0,0,4294967295]
-testBits
-4294967293 .&. 4294967293 = 4294967293
-4294967293 .&. 4294967294 = 4294967292
-4294967293 .&. 4294967295 = 4294967293
-4294967293 .&. 0 = 0
-4294967293 .&. 1 = 1
-4294967293 .&. 2 = 0
-4294967293 .&. 3 = 1
-
-4294967294 .&. 4294967293 = 4294967292
-4294967294 .&. 4294967294 = 4294967294
-4294967294 .&. 4294967295 = 4294967294
-4294967294 .&. 0 = 0
-4294967294 .&. 1 = 0
-4294967294 .&. 2 = 2
-4294967294 .&. 3 = 2
-
-4294967295 .&. 4294967293 = 4294967293
-4294967295 .&. 4294967294 = 4294967294
-4294967295 .&. 4294967295 = 4294967295
-4294967295 .&. 0 = 0
-4294967295 .&. 1 = 1
-4294967295 .&. 2 = 2
-4294967295 .&. 3 = 3
-
-0 .&. 4294967293 = 0
-0 .&. 4294967294 = 0
-0 .&. 4294967295 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 4294967293 = 1
-1 .&. 4294967294 = 0
-1 .&. 4294967295 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 4294967293 = 0
-2 .&. 4294967294 = 2
-2 .&. 4294967295 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 4294967293 = 1
-3 .&. 4294967294 = 2
-3 .&. 4294967295 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-4294967293 .|. 4294967293 = 4294967293
-4294967293 .|. 4294967294 = 4294967295
-4294967293 .|. 4294967295 = 4294967295
-4294967293 .|. 0 = 4294967293
-4294967293 .|. 1 = 4294967293
-4294967293 .|. 2 = 4294967295
-4294967293 .|. 3 = 4294967295
-
-4294967294 .|. 4294967293 = 4294967295
-4294967294 .|. 4294967294 = 4294967294
-4294967294 .|. 4294967295 = 4294967295
-4294967294 .|. 0 = 4294967294
-4294967294 .|. 1 = 4294967295
-4294967294 .|. 2 = 4294967294
-4294967294 .|. 3 = 4294967295
-
-4294967295 .|. 4294967293 = 4294967295
-4294967295 .|. 4294967294 = 4294967295
-4294967295 .|. 4294967295 = 4294967295
-4294967295 .|. 0 = 4294967295
-4294967295 .|. 1 = 4294967295
-4294967295 .|. 2 = 4294967295
-4294967295 .|. 3 = 4294967295
-
-0 .|. 4294967293 = 4294967293
-0 .|. 4294967294 = 4294967294
-0 .|. 4294967295 = 4294967295
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 4294967293 = 4294967293
-1 .|. 4294967294 = 4294967295
-1 .|. 4294967295 = 4294967295
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 4294967293 = 4294967295
-2 .|. 4294967294 = 4294967294
-2 .|. 4294967295 = 4294967295
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 4294967293 = 4294967295
-3 .|. 4294967294 = 4294967295
-3 .|. 4294967295 = 4294967295
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-4294967293 `xor` 4294967293 = 0
-4294967293 `xor` 4294967294 = 3
-4294967293 `xor` 4294967295 = 2
-4294967293 `xor` 0 = 4294967293
-4294967293 `xor` 1 = 4294967292
-4294967293 `xor` 2 = 4294967295
-4294967293 `xor` 3 = 4294967294
-
-4294967294 `xor` 4294967293 = 3
-4294967294 `xor` 4294967294 = 0
-4294967294 `xor` 4294967295 = 1
-4294967294 `xor` 0 = 4294967294
-4294967294 `xor` 1 = 4294967295
-4294967294 `xor` 2 = 4294967292
-4294967294 `xor` 3 = 4294967293
-
-4294967295 `xor` 4294967293 = 2
-4294967295 `xor` 4294967294 = 1
-4294967295 `xor` 4294967295 = 0
-4294967295 `xor` 0 = 4294967295
-4294967295 `xor` 1 = 4294967294
-4294967295 `xor` 2 = 4294967293
-4294967295 `xor` 3 = 4294967292
-
-0 `xor` 4294967293 = 4294967293
-0 `xor` 4294967294 = 4294967294
-0 `xor` 4294967295 = 4294967295
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 4294967293 = 4294967292
-1 `xor` 4294967294 = 4294967295
-1 `xor` 4294967295 = 4294967294
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 4294967293 = 4294967295
-2 `xor` 4294967294 = 4294967292
-2 `xor` 4294967295 = 4294967293
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 4294967293 = 4294967294
-3 `xor` 4294967294 = 4294967293
-3 `xor` 4294967295 = 4294967292
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 4294967293 = 2
-complement 4294967294 = 1
-complement 4294967295 = 0
-complement 0 = 4294967295
-complement 1 = 4294967294
-complement 2 = 4294967293
-complement 3 = 4294967292
-#
-4294967293 `shiftL` 0 = 4294967293
-4294967293 `shiftL` 1 = 4294967290
-4294967293 `shiftL` 2 = 4294967284
-4294967293 `shiftL` 3 = 4294967272
-4294967293 `shiftL` 32 = 0
-4294967293 `shiftL` 64 = 0
-
-4294967294 `shiftL` 0 = 4294967294
-4294967294 `shiftL` 1 = 4294967292
-4294967294 `shiftL` 2 = 4294967288
-4294967294 `shiftL` 3 = 4294967280
-4294967294 `shiftL` 32 = 0
-4294967294 `shiftL` 64 = 0
-
-4294967295 `shiftL` 0 = 4294967295
-4294967295 `shiftL` 1 = 4294967294
-4294967295 `shiftL` 2 = 4294967292
-4294967295 `shiftL` 3 = 4294967288
-4294967295 `shiftL` 32 = 0
-4294967295 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 0
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 0
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 0
-3 `shiftL` 64 = 0
-
-#
-4294967293 `shiftR` 0 = 4294967293
-4294967293 `shiftR` 1 = 2147483646
-4294967293 `shiftR` 2 = 1073741823
-4294967293 `shiftR` 3 = 536870911
-4294967293 `shiftR` 32 = 0
-4294967293 `shiftR` 64 = 0
-
-4294967294 `shiftR` 0 = 4294967294
-4294967294 `shiftR` 1 = 2147483647
-4294967294 `shiftR` 2 = 1073741823
-4294967294 `shiftR` 3 = 536870911
-4294967294 `shiftR` 32 = 0
-4294967294 `shiftR` 64 = 0
-
-4294967295 `shiftR` 0 = 4294967295
-4294967295 `shiftR` 1 = 2147483647
-4294967295 `shiftR` 2 = 1073741823
-4294967295 `shiftR` 3 = 536870911
-4294967295 `shiftR` 32 = 0
-4294967295 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-4294967293 `rotate` -3 = 3221225471
-4294967293 `rotate` -2 = 2147483647
-4294967293 `rotate` -1 = 4294967294
-4294967293 `rotate` 0 = 4294967293
-4294967293 `rotate` 1 = 4294967291
-4294967293 `rotate` 2 = 4294967287
-4294967293 `rotate` 3 = 4294967279
-4294967293 `rotate` -64 = 4294967293
-4294967293 `rotate` -32 = 4294967293
-4294967293 `rotate` 32 = 4294967293
-4294967293 `rotate` 64 = 4294967293
-
-4294967294 `rotate` -3 = 3758096383
-4294967294 `rotate` -2 = 3221225471
-4294967294 `rotate` -1 = 2147483647
-4294967294 `rotate` 0 = 4294967294
-4294967294 `rotate` 1 = 4294967293
-4294967294 `rotate` 2 = 4294967291
-4294967294 `rotate` 3 = 4294967287
-4294967294 `rotate` -64 = 4294967294
-4294967294 `rotate` -32 = 4294967294
-4294967294 `rotate` 32 = 4294967294
-4294967294 `rotate` 64 = 4294967294
-
-4294967295 `rotate` -3 = 4294967295
-4294967295 `rotate` -2 = 4294967295
-4294967295 `rotate` -1 = 4294967295
-4294967295 `rotate` 0 = 4294967295
-4294967295 `rotate` 1 = 4294967295
-4294967295 `rotate` 2 = 4294967295
-4294967295 `rotate` 3 = 4294967295
-4294967295 `rotate` -64 = 4294967295
-4294967295 `rotate` -32 = 4294967295
-4294967295 `rotate` 32 = 4294967295
-4294967295 `rotate` 64 = 4294967295
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 536870912
-1 `rotate` -2 = 1073741824
-1 `rotate` -1 = 2147483648
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 1
-1 `rotate` 32 = 1
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 1073741824
-2 `rotate` -2 = 2147483648
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 2
-2 `rotate` 32 = 2
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 1610612736
-3 `rotate` -2 = 3221225472
-3 `rotate` -1 = 2147483649
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 3
-3 `rotate` 32 = 3
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-4294967293 `setBit` 0 = 4294967293
-4294967293 `setBit` 1 = 4294967295
-4294967293 `setBit` 2 = 4294967293
-4294967293 `setBit` 3 = 4294967293
-4294967293 `setBit` 32 = 4294967293
-4294967293 `setBit` 64 = 4294967293
-
-4294967294 `setBit` 0 = 4294967295
-4294967294 `setBit` 1 = 4294967294
-4294967294 `setBit` 2 = 4294967294
-4294967294 `setBit` 3 = 4294967294
-4294967294 `setBit` 32 = 4294967294
-4294967294 `setBit` 64 = 4294967294
-
-4294967295 `setBit` 0 = 4294967295
-4294967295 `setBit` 1 = 4294967295
-4294967295 `setBit` 2 = 4294967295
-4294967295 `setBit` 3 = 4294967295
-4294967295 `setBit` 32 = 4294967295
-4294967295 `setBit` 64 = 4294967295
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 0
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 1
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 2
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 3
-3 `setBit` 64 = 3
-
-#
-4294967293 `clearBit` 0 = 4294967292
-4294967293 `clearBit` 1 = 4294967293
-4294967293 `clearBit` 2 = 4294967289
-4294967293 `clearBit` 3 = 4294967285
-4294967293 `clearBit` 32 = 4294967293
-4294967293 `clearBit` 64 = 4294967293
-
-4294967294 `clearBit` 0 = 4294967294
-4294967294 `clearBit` 1 = 4294967292
-4294967294 `clearBit` 2 = 4294967290
-4294967294 `clearBit` 3 = 4294967286
-4294967294 `clearBit` 32 = 4294967294
-4294967294 `clearBit` 64 = 4294967294
-
-4294967295 `clearBit` 0 = 4294967294
-4294967295 `clearBit` 1 = 4294967293
-4294967295 `clearBit` 2 = 4294967291
-4294967295 `clearBit` 3 = 4294967287
-4294967295 `clearBit` 32 = 4294967295
-4294967295 `clearBit` 64 = 4294967295
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-4294967293 `complementBit` 0 = 4294967292
-4294967293 `complementBit` 1 = 4294967295
-4294967293 `complementBit` 2 = 4294967289
-4294967293 `complementBit` 3 = 4294967285
-4294967293 `complementBit` 32 = 4294967293
-4294967293 `complementBit` 64 = 4294967293
-
-4294967294 `complementBit` 0 = 4294967295
-4294967294 `complementBit` 1 = 4294967292
-4294967294 `complementBit` 2 = 4294967290
-4294967294 `complementBit` 3 = 4294967286
-4294967294 `complementBit` 32 = 4294967294
-4294967294 `complementBit` 64 = 4294967294
-
-4294967295 `complementBit` 0 = 4294967294
-4294967295 `complementBit` 1 = 4294967293
-4294967295 `complementBit` 2 = 4294967291
-4294967295 `complementBit` 3 = 4294967287
-4294967295 `complementBit` 32 = 4294967295
-4294967295 `complementBit` 64 = 4294967295
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 0
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 1
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 2
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 3
-3 `complementBit` 64 = 3
-
-#
-4294967293 `testBit` 0 = True
-4294967293 `testBit` 1 = False
-4294967293 `testBit` 2 = True
-4294967293 `testBit` 3 = True
-4294967293 `testBit` 32 = False
-4294967293 `testBit` 64 = False
-
-4294967294 `testBit` 0 = False
-4294967294 `testBit` 1 = True
-4294967294 `testBit` 2 = True
-4294967294 `testBit` 3 = True
-4294967294 `testBit` 32 = False
-4294967294 `testBit` 64 = False
-
-4294967295 `testBit` 0 = True
-4294967295 `testBit` 1 = True
-4294967295 `testBit` 2 = True
-4294967295 `testBit` 3 = True
-4294967295 `testBit` 32 = False
-4294967295 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 4294967293 = 32
-bitSize 4294967294 = 32
-bitSize 4294967295 = 32
-bitSize 0 = 32
-bitSize 1 = 32
-bitSize 2 = 32
-bitSize 3 = 32
-#
-isSigned 4294967293 = False
-isSigned 4294967294 = False
-isSigned 4294967295 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Word64
---------------------------------
-testBounded
-(18446744073709551615,0,1)
-(18446744073709551614,18446744073709551615,0)
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[18446744073709551613,18446744073709551614,18446744073709551615,0,1,2,3]
-[18446744073709551613,18446744073709551614,18446744073709551615,0,1,2,3]
-testEq
-18446744073709551613 == 18446744073709551613 = True
-18446744073709551613 == 18446744073709551614 = False
-18446744073709551613 == 18446744073709551615 = False
-18446744073709551613 == 0 = False
-18446744073709551613 == 1 = False
-18446744073709551613 == 2 = False
-18446744073709551613 == 3 = False
-
-18446744073709551614 == 18446744073709551613 = False
-18446744073709551614 == 18446744073709551614 = True
-18446744073709551614 == 18446744073709551615 = False
-18446744073709551614 == 0 = False
-18446744073709551614 == 1 = False
-18446744073709551614 == 2 = False
-18446744073709551614 == 3 = False
-
-18446744073709551615 == 18446744073709551613 = False
-18446744073709551615 == 18446744073709551614 = False
-18446744073709551615 == 18446744073709551615 = True
-18446744073709551615 == 0 = False
-18446744073709551615 == 1 = False
-18446744073709551615 == 2 = False
-18446744073709551615 == 3 = False
-
-0 == 18446744073709551613 = False
-0 == 18446744073709551614 = False
-0 == 18446744073709551615 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == 18446744073709551613 = False
-1 == 18446744073709551614 = False
-1 == 18446744073709551615 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == 18446744073709551613 = False
-2 == 18446744073709551614 = False
-2 == 18446744073709551615 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == 18446744073709551613 = False
-3 == 18446744073709551614 = False
-3 == 18446744073709551615 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
-18446744073709551613 /= 18446744073709551613 = False
-18446744073709551613 /= 18446744073709551614 = True
-18446744073709551613 /= 18446744073709551615 = True
-18446744073709551613 /= 0 = True
-18446744073709551613 /= 1 = True
-18446744073709551613 /= 2 = True
-18446744073709551613 /= 3 = True
-
-18446744073709551614 /= 18446744073709551613 = True
-18446744073709551614 /= 18446744073709551614 = False
-18446744073709551614 /= 18446744073709551615 = True
-18446744073709551614 /= 0 = True
-18446744073709551614 /= 1 = True
-18446744073709551614 /= 2 = True
-18446744073709551614 /= 3 = True
-
-18446744073709551615 /= 18446744073709551613 = True
-18446744073709551615 /= 18446744073709551614 = True
-18446744073709551615 /= 18446744073709551615 = False
-18446744073709551615 /= 0 = True
-18446744073709551615 /= 1 = True
-18446744073709551615 /= 2 = True
-18446744073709551615 /= 3 = True
-
-0 /= 18446744073709551613 = True
-0 /= 18446744073709551614 = True
-0 /= 18446744073709551615 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= 18446744073709551613 = True
-1 /= 18446744073709551614 = True
-1 /= 18446744073709551615 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= 18446744073709551613 = True
-2 /= 18446744073709551614 = True
-2 /= 18446744073709551615 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= 18446744073709551613 = True
-3 /= 18446744073709551614 = True
-3 /= 18446744073709551615 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
-18446744073709551613 <= 18446744073709551613 = True
-18446744073709551613 <= 18446744073709551614 = True
-18446744073709551613 <= 18446744073709551615 = True
-18446744073709551613 <= 0 = False
-18446744073709551613 <= 1 = False
-18446744073709551613 <= 2 = False
-18446744073709551613 <= 3 = False
-
-18446744073709551614 <= 18446744073709551613 = False
-18446744073709551614 <= 18446744073709551614 = True
-18446744073709551614 <= 18446744073709551615 = True
-18446744073709551614 <= 0 = False
-18446744073709551614 <= 1 = False
-18446744073709551614 <= 2 = False
-18446744073709551614 <= 3 = False
-
-18446744073709551615 <= 18446744073709551613 = False
-18446744073709551615 <= 18446744073709551614 = False
-18446744073709551615 <= 18446744073709551615 = True
-18446744073709551615 <= 0 = False
-18446744073709551615 <= 1 = False
-18446744073709551615 <= 2 = False
-18446744073709551615 <= 3 = False
-
-0 <= 18446744073709551613 = True
-0 <= 18446744073709551614 = True
-0 <= 18446744073709551615 = True
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= 18446744073709551613 = True
-1 <= 18446744073709551614 = True
-1 <= 18446744073709551615 = True
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= 18446744073709551613 = True
-2 <= 18446744073709551614 = True
-2 <= 18446744073709551615 = True
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= 18446744073709551613 = True
-3 <= 18446744073709551614 = True
-3 <= 18446744073709551615 = True
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
-18446744073709551613 < 18446744073709551613 = False
-18446744073709551613 < 18446744073709551614 = True
-18446744073709551613 < 18446744073709551615 = True
-18446744073709551613 < 0 = False
-18446744073709551613 < 1 = False
-18446744073709551613 < 2 = False
-18446744073709551613 < 3 = False
-
-18446744073709551614 < 18446744073709551613 = False
-18446744073709551614 < 18446744073709551614 = False
-18446744073709551614 < 18446744073709551615 = True
-18446744073709551614 < 0 = False
-18446744073709551614 < 1 = False
-18446744073709551614 < 2 = False
-18446744073709551614 < 3 = False
-
-18446744073709551615 < 18446744073709551613 = False
-18446744073709551615 < 18446744073709551614 = False
-18446744073709551615 < 18446744073709551615 = False
-18446744073709551615 < 0 = False
-18446744073709551615 < 1 = False
-18446744073709551615 < 2 = False
-18446744073709551615 < 3 = False
-
-0 < 18446744073709551613 = True
-0 < 18446744073709551614 = True
-0 < 18446744073709551615 = True
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < 18446744073709551613 = True
-1 < 18446744073709551614 = True
-1 < 18446744073709551615 = True
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < 18446744073709551613 = True
-2 < 18446744073709551614 = True
-2 < 18446744073709551615 = True
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < 18446744073709551613 = True
-3 < 18446744073709551614 = True
-3 < 18446744073709551615 = True
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
-18446744073709551613 > 18446744073709551613 = False
-18446744073709551613 > 18446744073709551614 = False
-18446744073709551613 > 18446744073709551615 = False
-18446744073709551613 > 0 = True
-18446744073709551613 > 1 = True
-18446744073709551613 > 2 = True
-18446744073709551613 > 3 = True
-
-18446744073709551614 > 18446744073709551613 = True
-18446744073709551614 > 18446744073709551614 = False
-18446744073709551614 > 18446744073709551615 = False
-18446744073709551614 > 0 = True
-18446744073709551614 > 1 = True
-18446744073709551614 > 2 = True
-18446744073709551614 > 3 = True
-
-18446744073709551615 > 18446744073709551613 = True
-18446744073709551615 > 18446744073709551614 = True
-18446744073709551615 > 18446744073709551615 = False
-18446744073709551615 > 0 = True
-18446744073709551615 > 1 = True
-18446744073709551615 > 2 = True
-18446744073709551615 > 3 = True
-
-0 > 18446744073709551613 = False
-0 > 18446744073709551614 = False
-0 > 18446744073709551615 = False
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > 18446744073709551613 = False
-1 > 18446744073709551614 = False
-1 > 18446744073709551615 = False
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > 18446744073709551613 = False
-2 > 18446744073709551614 = False
-2 > 18446744073709551615 = False
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > 18446744073709551613 = False
-3 > 18446744073709551614 = False
-3 > 18446744073709551615 = False
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
-18446744073709551613 >= 18446744073709551613 = True
-18446744073709551613 >= 18446744073709551614 = False
-18446744073709551613 >= 18446744073709551615 = False
-18446744073709551613 >= 0 = True
-18446744073709551613 >= 1 = True
-18446744073709551613 >= 2 = True
-18446744073709551613 >= 3 = True
-
-18446744073709551614 >= 18446744073709551613 = True
-18446744073709551614 >= 18446744073709551614 = True
-18446744073709551614 >= 18446744073709551615 = False
-18446744073709551614 >= 0 = True
-18446744073709551614 >= 1 = True
-18446744073709551614 >= 2 = True
-18446744073709551614 >= 3 = True
-
-18446744073709551615 >= 18446744073709551613 = True
-18446744073709551615 >= 18446744073709551614 = True
-18446744073709551615 >= 18446744073709551615 = True
-18446744073709551615 >= 0 = True
-18446744073709551615 >= 1 = True
-18446744073709551615 >= 2 = True
-18446744073709551615 >= 3 = True
-
-0 >= 18446744073709551613 = False
-0 >= 18446744073709551614 = False
-0 >= 18446744073709551615 = False
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= 18446744073709551613 = False
-1 >= 18446744073709551614 = False
-1 >= 18446744073709551615 = False
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= 18446744073709551613 = False
-2 >= 18446744073709551614 = False
-2 >= 18446744073709551615 = False
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= 18446744073709551613 = False
-3 >= 18446744073709551614 = False
-3 >= 18446744073709551615 = False
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
-18446744073709551613 `compare` 18446744073709551613 = EQ
-18446744073709551613 `compare` 18446744073709551614 = LT
-18446744073709551613 `compare` 18446744073709551615 = LT
-18446744073709551613 `compare` 0 = GT
-18446744073709551613 `compare` 1 = GT
-18446744073709551613 `compare` 2 = GT
-18446744073709551613 `compare` 3 = GT
-
-18446744073709551614 `compare` 18446744073709551613 = GT
-18446744073709551614 `compare` 18446744073709551614 = EQ
-18446744073709551614 `compare` 18446744073709551615 = LT
-18446744073709551614 `compare` 0 = GT
-18446744073709551614 `compare` 1 = GT
-18446744073709551614 `compare` 2 = GT
-18446744073709551614 `compare` 3 = GT
-
-18446744073709551615 `compare` 18446744073709551613 = GT
-18446744073709551615 `compare` 18446744073709551614 = GT
-18446744073709551615 `compare` 18446744073709551615 = EQ
-18446744073709551615 `compare` 0 = GT
-18446744073709551615 `compare` 1 = GT
-18446744073709551615 `compare` 2 = GT
-18446744073709551615 `compare` 3 = GT
-
-0 `compare` 18446744073709551613 = LT
-0 `compare` 18446744073709551614 = LT
-0 `compare` 18446744073709551615 = LT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` 18446744073709551613 = LT
-1 `compare` 18446744073709551614 = LT
-1 `compare` 18446744073709551615 = LT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` 18446744073709551613 = LT
-2 `compare` 18446744073709551614 = LT
-2 `compare` 18446744073709551615 = LT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` 18446744073709551613 = LT
-3 `compare` 18446744073709551614 = LT
-3 `compare` 18446744073709551615 = LT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
-18446744073709551613 + 18446744073709551613 = 18446744073709551610
-18446744073709551613 + 18446744073709551614 = 18446744073709551611
-18446744073709551613 + 18446744073709551615 = 18446744073709551612
-18446744073709551613 + 0 = 18446744073709551613
-18446744073709551613 + 1 = 18446744073709551614
-18446744073709551613 + 2 = 18446744073709551615
-18446744073709551613 + 3 = 0
-
-18446744073709551614 + 18446744073709551613 = 18446744073709551611
-18446744073709551614 + 18446744073709551614 = 18446744073709551612
-18446744073709551614 + 18446744073709551615 = 18446744073709551613
-18446744073709551614 + 0 = 18446744073709551614
-18446744073709551614 + 1 = 18446744073709551615
-18446744073709551614 + 2 = 0
-18446744073709551614 + 3 = 1
-
-18446744073709551615 + 18446744073709551613 = 18446744073709551612
-18446744073709551615 + 18446744073709551614 = 18446744073709551613
-18446744073709551615 + 18446744073709551615 = 18446744073709551614
-18446744073709551615 + 0 = 18446744073709551615
-18446744073709551615 + 1 = 0
-18446744073709551615 + 2 = 1
-18446744073709551615 + 3 = 2
-
-0 + 18446744073709551613 = 18446744073709551613
-0 + 18446744073709551614 = 18446744073709551614
-0 + 18446744073709551615 = 18446744073709551615
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + 18446744073709551613 = 18446744073709551614
-1 + 18446744073709551614 = 18446744073709551615
-1 + 18446744073709551615 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + 18446744073709551613 = 18446744073709551615
-2 + 18446744073709551614 = 0
-2 + 18446744073709551615 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + 18446744073709551613 = 0
-3 + 18446744073709551614 = 1
-3 + 18446744073709551615 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
-18446744073709551613 - 18446744073709551613 = 0
-18446744073709551613 - 18446744073709551614 = 18446744073709551615
-18446744073709551613 - 18446744073709551615 = 18446744073709551614
-18446744073709551613 - 0 = 18446744073709551613
-18446744073709551613 - 1 = 18446744073709551612
-18446744073709551613 - 2 = 18446744073709551611
-18446744073709551613 - 3 = 18446744073709551610
-
-18446744073709551614 - 18446744073709551613 = 1
-18446744073709551614 - 18446744073709551614 = 0
-18446744073709551614 - 18446744073709551615 = 18446744073709551615
-18446744073709551614 - 0 = 18446744073709551614
-18446744073709551614 - 1 = 18446744073709551613
-18446744073709551614 - 2 = 18446744073709551612
-18446744073709551614 - 3 = 18446744073709551611
-
-18446744073709551615 - 18446744073709551613 = 2
-18446744073709551615 - 18446744073709551614 = 1
-18446744073709551615 - 18446744073709551615 = 0
-18446744073709551615 - 0 = 18446744073709551615
-18446744073709551615 - 1 = 18446744073709551614
-18446744073709551615 - 2 = 18446744073709551613
-18446744073709551615 - 3 = 18446744073709551612
-
-0 - 18446744073709551613 = 3
-0 - 18446744073709551614 = 2
-0 - 18446744073709551615 = 1
-0 - 0 = 0
-0 - 1 = 18446744073709551615
-0 - 2 = 18446744073709551614
-0 - 3 = 18446744073709551613
-
-1 - 18446744073709551613 = 4
-1 - 18446744073709551614 = 3
-1 - 18446744073709551615 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = 18446744073709551615
-1 - 3 = 18446744073709551614
-
-2 - 18446744073709551613 = 5
-2 - 18446744073709551614 = 4
-2 - 18446744073709551615 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = 18446744073709551615
-
-3 - 18446744073709551613 = 6
-3 - 18446744073709551614 = 5
-3 - 18446744073709551615 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
-18446744073709551613 * 18446744073709551613 = 9
-18446744073709551613 * 18446744073709551614 = 6
-18446744073709551613 * 18446744073709551615 = 3
-18446744073709551613 * 0 = 0
-18446744073709551613 * 1 = 18446744073709551613
-18446744073709551613 * 2 = 18446744073709551610
-18446744073709551613 * 3 = 18446744073709551607
-
-18446744073709551614 * 18446744073709551613 = 6
-18446744073709551614 * 18446744073709551614 = 4
-18446744073709551614 * 18446744073709551615 = 2
-18446744073709551614 * 0 = 0
-18446744073709551614 * 1 = 18446744073709551614
-18446744073709551614 * 2 = 18446744073709551612
-18446744073709551614 * 3 = 18446744073709551610
-
-18446744073709551615 * 18446744073709551613 = 3
-18446744073709551615 * 18446744073709551614 = 2
-18446744073709551615 * 18446744073709551615 = 1
-18446744073709551615 * 0 = 0
-18446744073709551615 * 1 = 18446744073709551615
-18446744073709551615 * 2 = 18446744073709551614
-18446744073709551615 * 3 = 18446744073709551613
-
-0 * 18446744073709551613 = 0
-0 * 18446744073709551614 = 0
-0 * 18446744073709551615 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * 18446744073709551613 = 18446744073709551613
-1 * 18446744073709551614 = 18446744073709551614
-1 * 18446744073709551615 = 18446744073709551615
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * 18446744073709551613 = 18446744073709551610
-2 * 18446744073709551614 = 18446744073709551612
-2 * 18446744073709551615 = 18446744073709551614
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * 18446744073709551613 = 18446744073709551607
-3 * 18446744073709551614 = 18446744073709551610
-3 * 18446744073709551615 = 18446744073709551613
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate 18446744073709551613 = 3
-negate 18446744073709551614 = 2
-negate 18446744073709551615 = 1
-negate 0 = 0
-negate 1 = 18446744073709551615
-negate 2 = 18446744073709551614
-negate 3 = 18446744073709551613
-#
-testReal
-toRational 18446744073709551613 = 18446744073709551613 % 1
-toRational 18446744073709551614 = 18446744073709551614 % 1
-toRational 18446744073709551615 = 18446744073709551615 % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
-18446744073709551613 `divMod` 18446744073709551613 = (1,0)
-18446744073709551613 `divMod` 18446744073709551614 = (0,18446744073709551613)
-18446744073709551613 `divMod` 18446744073709551615 = (0,18446744073709551613)
-18446744073709551613 `divMod` 0 = divide by zero
-18446744073709551613 `divMod` 1 = (18446744073709551613,0)
-18446744073709551613 `divMod` 2 = (9223372036854775806,1)
-18446744073709551613 `divMod` 3 = (6148914691236517204,1)
-
-18446744073709551614 `divMod` 18446744073709551613 = (1,1)
-18446744073709551614 `divMod` 18446744073709551614 = (1,0)
-18446744073709551614 `divMod` 18446744073709551615 = (0,18446744073709551614)
-18446744073709551614 `divMod` 0 = divide by zero
-18446744073709551614 `divMod` 1 = (18446744073709551614,0)
-18446744073709551614 `divMod` 2 = (9223372036854775807,0)
-18446744073709551614 `divMod` 3 = (6148914691236517204,2)
-
-18446744073709551615 `divMod` 18446744073709551613 = (1,2)
-18446744073709551615 `divMod` 18446744073709551614 = (1,1)
-18446744073709551615 `divMod` 18446744073709551615 = (1,0)
-18446744073709551615 `divMod` 0 = divide by zero
-18446744073709551615 `divMod` 1 = (18446744073709551615,0)
-18446744073709551615 `divMod` 2 = (9223372036854775807,1)
-18446744073709551615 `divMod` 3 = (6148914691236517205,0)
-
-0 `divMod` 18446744073709551613 = (0,0)
-0 `divMod` 18446744073709551614 = (0,0)
-0 `divMod` 18446744073709551615 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` 18446744073709551613 = (0,1)
-1 `divMod` 18446744073709551614 = (0,1)
-1 `divMod` 18446744073709551615 = (0,1)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` 18446744073709551613 = (0,2)
-2 `divMod` 18446744073709551614 = (0,2)
-2 `divMod` 18446744073709551615 = (0,2)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` 18446744073709551613 = (0,3)
-3 `divMod` 18446744073709551614 = (0,3)
-3 `divMod` 18446744073709551615 = (0,3)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
-18446744073709551613 `div` 18446744073709551613 = 1
-18446744073709551613 `div` 18446744073709551614 = 0
-18446744073709551613 `div` 18446744073709551615 = 0
-18446744073709551613 `div` 0 = divide by zero
-18446744073709551613 `div` 1 = 18446744073709551613
-18446744073709551613 `div` 2 = 9223372036854775806
-18446744073709551613 `div` 3 = 6148914691236517204
-
-18446744073709551614 `div` 18446744073709551613 = 1
-18446744073709551614 `div` 18446744073709551614 = 1
-18446744073709551614 `div` 18446744073709551615 = 0
-18446744073709551614 `div` 0 = divide by zero
-18446744073709551614 `div` 1 = 18446744073709551614
-18446744073709551614 `div` 2 = 9223372036854775807
-18446744073709551614 `div` 3 = 6148914691236517204
-
-18446744073709551615 `div` 18446744073709551613 = 1
-18446744073709551615 `div` 18446744073709551614 = 1
-18446744073709551615 `div` 18446744073709551615 = 1
-18446744073709551615 `div` 0 = divide by zero
-18446744073709551615 `div` 1 = 18446744073709551615
-18446744073709551615 `div` 2 = 9223372036854775807
-18446744073709551615 `div` 3 = 6148914691236517205
-
-0 `div` 18446744073709551613 = 0
-0 `div` 18446744073709551614 = 0
-0 `div` 18446744073709551615 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` 18446744073709551613 = 0
-1 `div` 18446744073709551614 = 0
-1 `div` 18446744073709551615 = 0
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` 18446744073709551613 = 0
-2 `div` 18446744073709551614 = 0
-2 `div` 18446744073709551615 = 0
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` 18446744073709551613 = 0
-3 `div` 18446744073709551614 = 0
-3 `div` 18446744073709551615 = 0
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
-18446744073709551613 `mod` 18446744073709551613 = 0
-18446744073709551613 `mod` 18446744073709551614 = 18446744073709551613
-18446744073709551613 `mod` 18446744073709551615 = 18446744073709551613
-18446744073709551613 `mod` 0 = divide by zero
-18446744073709551613 `mod` 1 = 0
-18446744073709551613 `mod` 2 = 1
-18446744073709551613 `mod` 3 = 1
-
-18446744073709551614 `mod` 18446744073709551613 = 1
-18446744073709551614 `mod` 18446744073709551614 = 0
-18446744073709551614 `mod` 18446744073709551615 = 18446744073709551614
-18446744073709551614 `mod` 0 = divide by zero
-18446744073709551614 `mod` 1 = 0
-18446744073709551614 `mod` 2 = 0
-18446744073709551614 `mod` 3 = 2
-
-18446744073709551615 `mod` 18446744073709551613 = 2
-18446744073709551615 `mod` 18446744073709551614 = 1
-18446744073709551615 `mod` 18446744073709551615 = 0
-18446744073709551615 `mod` 0 = divide by zero
-18446744073709551615 `mod` 1 = 0
-18446744073709551615 `mod` 2 = 1
-18446744073709551615 `mod` 3 = 0
-
-0 `mod` 18446744073709551613 = 0
-0 `mod` 18446744073709551614 = 0
-0 `mod` 18446744073709551615 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` 18446744073709551613 = 1
-1 `mod` 18446744073709551614 = 1
-1 `mod` 18446744073709551615 = 1
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` 18446744073709551613 = 2
-2 `mod` 18446744073709551614 = 2
-2 `mod` 18446744073709551615 = 2
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` 18446744073709551613 = 3
-3 `mod` 18446744073709551614 = 3
-3 `mod` 18446744073709551615 = 3
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
-18446744073709551613 `quotRem` 18446744073709551613 = (1,0)
-18446744073709551613 `quotRem` 18446744073709551614 = (0,18446744073709551613)
-18446744073709551613 `quotRem` 18446744073709551615 = (0,18446744073709551613)
-18446744073709551613 `quotRem` 0 = divide by zero
-18446744073709551613 `quotRem` 1 = (18446744073709551613,0)
-18446744073709551613 `quotRem` 2 = (9223372036854775806,1)
-18446744073709551613 `quotRem` 3 = (6148914691236517204,1)
-
-18446744073709551614 `quotRem` 18446744073709551613 = (1,1)
-18446744073709551614 `quotRem` 18446744073709551614 = (1,0)
-18446744073709551614 `quotRem` 18446744073709551615 = (0,18446744073709551614)
-18446744073709551614 `quotRem` 0 = divide by zero
-18446744073709551614 `quotRem` 1 = (18446744073709551614,0)
-18446744073709551614 `quotRem` 2 = (9223372036854775807,0)
-18446744073709551614 `quotRem` 3 = (6148914691236517204,2)
-
-18446744073709551615 `quotRem` 18446744073709551613 = (1,2)
-18446744073709551615 `quotRem` 18446744073709551614 = (1,1)
-18446744073709551615 `quotRem` 18446744073709551615 = (1,0)
-18446744073709551615 `quotRem` 0 = divide by zero
-18446744073709551615 `quotRem` 1 = (18446744073709551615,0)
-18446744073709551615 `quotRem` 2 = (9223372036854775807,1)
-18446744073709551615 `quotRem` 3 = (6148914691236517205,0)
-
-0 `quotRem` 18446744073709551613 = (0,0)
-0 `quotRem` 18446744073709551614 = (0,0)
-0 `quotRem` 18446744073709551615 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` 18446744073709551613 = (0,1)
-1 `quotRem` 18446744073709551614 = (0,1)
-1 `quotRem` 18446744073709551615 = (0,1)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` 18446744073709551613 = (0,2)
-2 `quotRem` 18446744073709551614 = (0,2)
-2 `quotRem` 18446744073709551615 = (0,2)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` 18446744073709551613 = (0,3)
-3 `quotRem` 18446744073709551614 = (0,3)
-3 `quotRem` 18446744073709551615 = (0,3)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
-18446744073709551613 `quot` 18446744073709551613 = 1
-18446744073709551613 `quot` 18446744073709551614 = 0
-18446744073709551613 `quot` 18446744073709551615 = 0
-18446744073709551613 `quot` 0 = divide by zero
-18446744073709551613 `quot` 1 = 18446744073709551613
-18446744073709551613 `quot` 2 = 9223372036854775806
-18446744073709551613 `quot` 3 = 6148914691236517204
-
-18446744073709551614 `quot` 18446744073709551613 = 1
-18446744073709551614 `quot` 18446744073709551614 = 1
-18446744073709551614 `quot` 18446744073709551615 = 0
-18446744073709551614 `quot` 0 = divide by zero
-18446744073709551614 `quot` 1 = 18446744073709551614
-18446744073709551614 `quot` 2 = 9223372036854775807
-18446744073709551614 `quot` 3 = 6148914691236517204
-
-18446744073709551615 `quot` 18446744073709551613 = 1
-18446744073709551615 `quot` 18446744073709551614 = 1
-18446744073709551615 `quot` 18446744073709551615 = 1
-18446744073709551615 `quot` 0 = divide by zero
-18446744073709551615 `quot` 1 = 18446744073709551615
-18446744073709551615 `quot` 2 = 9223372036854775807
-18446744073709551615 `quot` 3 = 6148914691236517205
-
-0 `quot` 18446744073709551613 = 0
-0 `quot` 18446744073709551614 = 0
-0 `quot` 18446744073709551615 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` 18446744073709551613 = 0
-1 `quot` 18446744073709551614 = 0
-1 `quot` 18446744073709551615 = 0
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` 18446744073709551613 = 0
-2 `quot` 18446744073709551614 = 0
-2 `quot` 18446744073709551615 = 0
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` 18446744073709551613 = 0
-3 `quot` 18446744073709551614 = 0
-3 `quot` 18446744073709551615 = 0
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
-18446744073709551613 `rem` 18446744073709551613 = 0
-18446744073709551613 `rem` 18446744073709551614 = 18446744073709551613
-18446744073709551613 `rem` 18446744073709551615 = 18446744073709551613
-18446744073709551613 `rem` 0 = divide by zero
-18446744073709551613 `rem` 1 = 0
-18446744073709551613 `rem` 2 = 1
-18446744073709551613 `rem` 3 = 1
-
-18446744073709551614 `rem` 18446744073709551613 = 1
-18446744073709551614 `rem` 18446744073709551614 = 0
-18446744073709551614 `rem` 18446744073709551615 = 18446744073709551614
-18446744073709551614 `rem` 0 = divide by zero
-18446744073709551614 `rem` 1 = 0
-18446744073709551614 `rem` 2 = 0
-18446744073709551614 `rem` 3 = 2
-
-18446744073709551615 `rem` 18446744073709551613 = 2
-18446744073709551615 `rem` 18446744073709551614 = 1
-18446744073709551615 `rem` 18446744073709551615 = 0
-18446744073709551615 `rem` 0 = divide by zero
-18446744073709551615 `rem` 1 = 0
-18446744073709551615 `rem` 2 = 1
-18446744073709551615 `rem` 3 = 0
-
-0 `rem` 18446744073709551613 = 0
-0 `rem` 18446744073709551614 = 0
-0 `rem` 18446744073709551615 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` 18446744073709551613 = 1
-1 `rem` 18446744073709551614 = 1
-1 `rem` 18446744073709551615 = 1
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` 18446744073709551613 = 2
-2 `rem` 18446744073709551614 = 2
-2 `rem` 18446744073709551615 = 2
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` 18446744073709551613 = 3
-3 `rem` 18446744073709551614 = 3
-3 `rem` 18446744073709551615 = 3
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testConversions
-Integer : [0,0,18446744073709551615]
-Int : [0,0,-1]
-Int8 : [0,0,-1]
-Int16 : [0,0,-1]
-Int32 : [0,0,-1]
-Int64 : [0,0,-1]
-Word8 : [0,0,255]
-Word16 : [0,0,65535]
-Word32 : [0,0,4294967295]
-Word64 : [0,0,18446744073709551615]
-testBits
-18446744073709551613 .&. 18446744073709551613 = 18446744073709551613
-18446744073709551613 .&. 18446744073709551614 = 18446744073709551612
-18446744073709551613 .&. 18446744073709551615 = 18446744073709551613
-18446744073709551613 .&. 0 = 0
-18446744073709551613 .&. 1 = 1
-18446744073709551613 .&. 2 = 0
-18446744073709551613 .&. 3 = 1
-
-18446744073709551614 .&. 18446744073709551613 = 18446744073709551612
-18446744073709551614 .&. 18446744073709551614 = 18446744073709551614
-18446744073709551614 .&. 18446744073709551615 = 18446744073709551614
-18446744073709551614 .&. 0 = 0
-18446744073709551614 .&. 1 = 0
-18446744073709551614 .&. 2 = 2
-18446744073709551614 .&. 3 = 2
-
-18446744073709551615 .&. 18446744073709551613 = 18446744073709551613
-18446744073709551615 .&. 18446744073709551614 = 18446744073709551614
-18446744073709551615 .&. 18446744073709551615 = 18446744073709551615
-18446744073709551615 .&. 0 = 0
-18446744073709551615 .&. 1 = 1
-18446744073709551615 .&. 2 = 2
-18446744073709551615 .&. 3 = 3
-
-0 .&. 18446744073709551613 = 0
-0 .&. 18446744073709551614 = 0
-0 .&. 18446744073709551615 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. 18446744073709551613 = 1
-1 .&. 18446744073709551614 = 0
-1 .&. 18446744073709551615 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. 18446744073709551613 = 0
-2 .&. 18446744073709551614 = 2
-2 .&. 18446744073709551615 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. 18446744073709551613 = 1
-3 .&. 18446744073709551614 = 2
-3 .&. 18446744073709551615 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
-18446744073709551613 .|. 18446744073709551613 = 18446744073709551613
-18446744073709551613 .|. 18446744073709551614 = 18446744073709551615
-18446744073709551613 .|. 18446744073709551615 = 18446744073709551615
-18446744073709551613 .|. 0 = 18446744073709551613
-18446744073709551613 .|. 1 = 18446744073709551613
-18446744073709551613 .|. 2 = 18446744073709551615
-18446744073709551613 .|. 3 = 18446744073709551615
-
-18446744073709551614 .|. 18446744073709551613 = 18446744073709551615
-18446744073709551614 .|. 18446744073709551614 = 18446744073709551614
-18446744073709551614 .|. 18446744073709551615 = 18446744073709551615
-18446744073709551614 .|. 0 = 18446744073709551614
-18446744073709551614 .|. 1 = 18446744073709551615
-18446744073709551614 .|. 2 = 18446744073709551614
-18446744073709551614 .|. 3 = 18446744073709551615
-
-18446744073709551615 .|. 18446744073709551613 = 18446744073709551615
-18446744073709551615 .|. 18446744073709551614 = 18446744073709551615
-18446744073709551615 .|. 18446744073709551615 = 18446744073709551615
-18446744073709551615 .|. 0 = 18446744073709551615
-18446744073709551615 .|. 1 = 18446744073709551615
-18446744073709551615 .|. 2 = 18446744073709551615
-18446744073709551615 .|. 3 = 18446744073709551615
-
-0 .|. 18446744073709551613 = 18446744073709551613
-0 .|. 18446744073709551614 = 18446744073709551614
-0 .|. 18446744073709551615 = 18446744073709551615
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. 18446744073709551613 = 18446744073709551613
-1 .|. 18446744073709551614 = 18446744073709551615
-1 .|. 18446744073709551615 = 18446744073709551615
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. 18446744073709551613 = 18446744073709551615
-2 .|. 18446744073709551614 = 18446744073709551614
-2 .|. 18446744073709551615 = 18446744073709551615
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. 18446744073709551613 = 18446744073709551615
-3 .|. 18446744073709551614 = 18446744073709551615
-3 .|. 18446744073709551615 = 18446744073709551615
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
-18446744073709551613 `xor` 18446744073709551613 = 0
-18446744073709551613 `xor` 18446744073709551614 = 3
-18446744073709551613 `xor` 18446744073709551615 = 2
-18446744073709551613 `xor` 0 = 18446744073709551613
-18446744073709551613 `xor` 1 = 18446744073709551612
-18446744073709551613 `xor` 2 = 18446744073709551615
-18446744073709551613 `xor` 3 = 18446744073709551614
-
-18446744073709551614 `xor` 18446744073709551613 = 3
-18446744073709551614 `xor` 18446744073709551614 = 0
-18446744073709551614 `xor` 18446744073709551615 = 1
-18446744073709551614 `xor` 0 = 18446744073709551614
-18446744073709551614 `xor` 1 = 18446744073709551615
-18446744073709551614 `xor` 2 = 18446744073709551612
-18446744073709551614 `xor` 3 = 18446744073709551613
-
-18446744073709551615 `xor` 18446744073709551613 = 2
-18446744073709551615 `xor` 18446744073709551614 = 1
-18446744073709551615 `xor` 18446744073709551615 = 0
-18446744073709551615 `xor` 0 = 18446744073709551615
-18446744073709551615 `xor` 1 = 18446744073709551614
-18446744073709551615 `xor` 2 = 18446744073709551613
-18446744073709551615 `xor` 3 = 18446744073709551612
-
-0 `xor` 18446744073709551613 = 18446744073709551613
-0 `xor` 18446744073709551614 = 18446744073709551614
-0 `xor` 18446744073709551615 = 18446744073709551615
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` 18446744073709551613 = 18446744073709551612
-1 `xor` 18446744073709551614 = 18446744073709551615
-1 `xor` 18446744073709551615 = 18446744073709551614
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` 18446744073709551613 = 18446744073709551615
-2 `xor` 18446744073709551614 = 18446744073709551612
-2 `xor` 18446744073709551615 = 18446744073709551613
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` 18446744073709551613 = 18446744073709551614
-3 `xor` 18446744073709551614 = 18446744073709551613
-3 `xor` 18446744073709551615 = 18446744073709551612
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement 18446744073709551613 = 2
-complement 18446744073709551614 = 1
-complement 18446744073709551615 = 0
-complement 0 = 18446744073709551615
-complement 1 = 18446744073709551614
-complement 2 = 18446744073709551613
-complement 3 = 18446744073709551612
-#
-18446744073709551613 `shiftL` 0 = 18446744073709551613
-18446744073709551613 `shiftL` 1 = 18446744073709551610
-18446744073709551613 `shiftL` 2 = 18446744073709551604
-18446744073709551613 `shiftL` 3 = 18446744073709551592
-18446744073709551613 `shiftL` 32 = 18446744060824649728
-18446744073709551613 `shiftL` 64 = 0
-
-18446744073709551614 `shiftL` 0 = 18446744073709551614
-18446744073709551614 `shiftL` 1 = 18446744073709551612
-18446744073709551614 `shiftL` 2 = 18446744073709551608
-18446744073709551614 `shiftL` 3 = 18446744073709551600
-18446744073709551614 `shiftL` 32 = 18446744065119617024
-18446744073709551614 `shiftL` 64 = 0
-
-18446744073709551615 `shiftL` 0 = 18446744073709551615
-18446744073709551615 `shiftL` 1 = 18446744073709551614
-18446744073709551615 `shiftL` 2 = 18446744073709551612
-18446744073709551615 `shiftL` 3 = 18446744073709551608
-18446744073709551615 `shiftL` 32 = 18446744069414584320
-18446744073709551615 `shiftL` 64 = 0
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 0
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 0
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 0
-
-#
-18446744073709551613 `shiftR` 0 = 18446744073709551613
-18446744073709551613 `shiftR` 1 = 9223372036854775806
-18446744073709551613 `shiftR` 2 = 4611686018427387903
-18446744073709551613 `shiftR` 3 = 2305843009213693951
-18446744073709551613 `shiftR` 32 = 4294967295
-18446744073709551613 `shiftR` 64 = 0
-
-18446744073709551614 `shiftR` 0 = 18446744073709551614
-18446744073709551614 `shiftR` 1 = 9223372036854775807
-18446744073709551614 `shiftR` 2 = 4611686018427387903
-18446744073709551614 `shiftR` 3 = 2305843009213693951
-18446744073709551614 `shiftR` 32 = 4294967295
-18446744073709551614 `shiftR` 64 = 0
-
-18446744073709551615 `shiftR` 0 = 18446744073709551615
-18446744073709551615 `shiftR` 1 = 9223372036854775807
-18446744073709551615 `shiftR` 2 = 4611686018427387903
-18446744073709551615 `shiftR` 3 = 2305843009213693951
-18446744073709551615 `shiftR` 32 = 4294967295
-18446744073709551615 `shiftR` 64 = 0
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
-18446744073709551613 `rotate` -3 = 13835058055282163711
-18446744073709551613 `rotate` -2 = 9223372036854775807
-18446744073709551613 `rotate` -1 = 18446744073709551614
-18446744073709551613 `rotate` 0 = 18446744073709551613
-18446744073709551613 `rotate` 1 = 18446744073709551611
-18446744073709551613 `rotate` 2 = 18446744073709551607
-18446744073709551613 `rotate` 3 = 18446744073709551599
-18446744073709551613 `rotate` -64 = 18446744073709551613
-18446744073709551613 `rotate` -32 = 18446744065119617023
-18446744073709551613 `rotate` 32 = 18446744065119617023
-18446744073709551613 `rotate` 64 = 18446744073709551613
-
-18446744073709551614 `rotate` -3 = 16140901064495857663
-18446744073709551614 `rotate` -2 = 13835058055282163711
-18446744073709551614 `rotate` -1 = 9223372036854775807
-18446744073709551614 `rotate` 0 = 18446744073709551614
-18446744073709551614 `rotate` 1 = 18446744073709551613
-18446744073709551614 `rotate` 2 = 18446744073709551611
-18446744073709551614 `rotate` 3 = 18446744073709551607
-18446744073709551614 `rotate` -64 = 18446744073709551614
-18446744073709551614 `rotate` -32 = 18446744069414584319
-18446744073709551614 `rotate` 32 = 18446744069414584319
-18446744073709551614 `rotate` 64 = 18446744073709551614
-
-18446744073709551615 `rotate` -3 = 18446744073709551615
-18446744073709551615 `rotate` -2 = 18446744073709551615
-18446744073709551615 `rotate` -1 = 18446744073709551615
-18446744073709551615 `rotate` 0 = 18446744073709551615
-18446744073709551615 `rotate` 1 = 18446744073709551615
-18446744073709551615 `rotate` 2 = 18446744073709551615
-18446744073709551615 `rotate` 3 = 18446744073709551615
-18446744073709551615 `rotate` -64 = 18446744073709551615
-18446744073709551615 `rotate` -32 = 18446744073709551615
-18446744073709551615 `rotate` 32 = 18446744073709551615
-18446744073709551615 `rotate` 64 = 18446744073709551615
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 2305843009213693952
-1 `rotate` -2 = 4611686018427387904
-1 `rotate` -1 = 9223372036854775808
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 1
-1 `rotate` -32 = 4294967296
-1 `rotate` 32 = 4294967296
-1 `rotate` 64 = 1
-
-2 `rotate` -3 = 4611686018427387904
-2 `rotate` -2 = 9223372036854775808
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 2
-2 `rotate` -32 = 8589934592
-2 `rotate` 32 = 8589934592
-2 `rotate` 64 = 2
-
-3 `rotate` -3 = 6917529027641081856
-3 `rotate` -2 = 13835058055282163712
-3 `rotate` -1 = 9223372036854775809
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 3
-3 `rotate` -32 = 12884901888
-3 `rotate` 32 = 12884901888
-3 `rotate` 64 = 3
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
-18446744073709551613 `setBit` 0 = 18446744073709551613
-18446744073709551613 `setBit` 1 = 18446744073709551615
-18446744073709551613 `setBit` 2 = 18446744073709551613
-18446744073709551613 `setBit` 3 = 18446744073709551613
-18446744073709551613 `setBit` 32 = 18446744073709551613
-18446744073709551613 `setBit` 64 = 18446744073709551613
-
-18446744073709551614 `setBit` 0 = 18446744073709551615
-18446744073709551614 `setBit` 1 = 18446744073709551614
-18446744073709551614 `setBit` 2 = 18446744073709551614
-18446744073709551614 `setBit` 3 = 18446744073709551614
-18446744073709551614 `setBit` 32 = 18446744073709551614
-18446744073709551614 `setBit` 64 = 18446744073709551614
-
-18446744073709551615 `setBit` 0 = 18446744073709551615
-18446744073709551615 `setBit` 1 = 18446744073709551615
-18446744073709551615 `setBit` 2 = 18446744073709551615
-18446744073709551615 `setBit` 3 = 18446744073709551615
-18446744073709551615 `setBit` 32 = 18446744073709551615
-18446744073709551615 `setBit` 64 = 18446744073709551615
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 0
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 1
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 2
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 3
-
-#
-18446744073709551613 `clearBit` 0 = 18446744073709551612
-18446744073709551613 `clearBit` 1 = 18446744073709551613
-18446744073709551613 `clearBit` 2 = 18446744073709551609
-18446744073709551613 `clearBit` 3 = 18446744073709551605
-18446744073709551613 `clearBit` 32 = 18446744069414584317
-18446744073709551613 `clearBit` 64 = 18446744073709551613
-
-18446744073709551614 `clearBit` 0 = 18446744073709551614
-18446744073709551614 `clearBit` 1 = 18446744073709551612
-18446744073709551614 `clearBit` 2 = 18446744073709551610
-18446744073709551614 `clearBit` 3 = 18446744073709551606
-18446744073709551614 `clearBit` 32 = 18446744069414584318
-18446744073709551614 `clearBit` 64 = 18446744073709551614
-
-18446744073709551615 `clearBit` 0 = 18446744073709551614
-18446744073709551615 `clearBit` 1 = 18446744073709551613
-18446744073709551615 `clearBit` 2 = 18446744073709551611
-18446744073709551615 `clearBit` 3 = 18446744073709551607
-18446744073709551615 `clearBit` 32 = 18446744069414584319
-18446744073709551615 `clearBit` 64 = 18446744073709551615
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
-18446744073709551613 `complementBit` 0 = 18446744073709551612
-18446744073709551613 `complementBit` 1 = 18446744073709551615
-18446744073709551613 `complementBit` 2 = 18446744073709551609
-18446744073709551613 `complementBit` 3 = 18446744073709551605
-18446744073709551613 `complementBit` 32 = 18446744069414584317
-18446744073709551613 `complementBit` 64 = 18446744073709551613
-
-18446744073709551614 `complementBit` 0 = 18446744073709551615
-18446744073709551614 `complementBit` 1 = 18446744073709551612
-18446744073709551614 `complementBit` 2 = 18446744073709551610
-18446744073709551614 `complementBit` 3 = 18446744073709551606
-18446744073709551614 `complementBit` 32 = 18446744069414584318
-18446744073709551614 `complementBit` 64 = 18446744073709551614
-
-18446744073709551615 `complementBit` 0 = 18446744073709551614
-18446744073709551615 `complementBit` 1 = 18446744073709551613
-18446744073709551615 `complementBit` 2 = 18446744073709551611
-18446744073709551615 `complementBit` 3 = 18446744073709551607
-18446744073709551615 `complementBit` 32 = 18446744069414584319
-18446744073709551615 `complementBit` 64 = 18446744073709551615
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 0
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 1
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 2
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 3
-
-#
-18446744073709551613 `testBit` 0 = True
-18446744073709551613 `testBit` 1 = False
-18446744073709551613 `testBit` 2 = True
-18446744073709551613 `testBit` 3 = True
-18446744073709551613 `testBit` 32 = True
-18446744073709551613 `testBit` 64 = False
-
-18446744073709551614 `testBit` 0 = False
-18446744073709551614 `testBit` 1 = True
-18446744073709551614 `testBit` 2 = True
-18446744073709551614 `testBit` 3 = True
-18446744073709551614 `testBit` 32 = True
-18446744073709551614 `testBit` 64 = False
-
-18446744073709551615 `testBit` 0 = True
-18446744073709551615 `testBit` 1 = True
-18446744073709551615 `testBit` 2 = True
-18446744073709551615 `testBit` 3 = True
-18446744073709551615 `testBit` 32 = True
-18446744073709551615 `testBit` 64 = False
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-bitSize 18446744073709551613 = 64
-bitSize 18446744073709551614 = 64
-bitSize 18446744073709551615 = 64
-bitSize 0 = 64
-bitSize 1 = 64
-bitSize 2 = 64
-bitSize 3 = 64
-#
-isSigned 18446744073709551613 = False
-isSigned 18446744073709551614 = False
-isSigned 18446744073709551615 = False
-isSigned 0 = False
-isSigned 1 = False
-isSigned 2 = False
-isSigned 3 = False
-#
---------------------------------
---Testing Integer
---------------------------------
-testEnum
-[0,1,2,3,4,5,6,7,8,9]
-[0,2,4,6,8,10,12,14,16,18]
-[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
-[0,2,4,6,8,10,12,14,16,18,20]
-testReadShow
-[-3,-2,-1,0,1,2,3]
-[-3,-2,-1,0,1,2,3]
-testEq
--3 == -3 = True
--3 == -2 = False
--3 == -1 = False
--3 == 0 = False
--3 == 1 = False
--3 == 2 = False
--3 == 3 = False
-
--2 == -3 = False
--2 == -2 = True
--2 == -1 = False
--2 == 0 = False
--2 == 1 = False
--2 == 2 = False
--2 == 3 = False
-
--1 == -3 = False
--1 == -2 = False
--1 == -1 = True
--1 == 0 = False
--1 == 1 = False
--1 == 2 = False
--1 == 3 = False
-
-0 == -3 = False
-0 == -2 = False
-0 == -1 = False
-0 == 0 = True
-0 == 1 = False
-0 == 2 = False
-0 == 3 = False
-
-1 == -3 = False
-1 == -2 = False
-1 == -1 = False
-1 == 0 = False
-1 == 1 = True
-1 == 2 = False
-1 == 3 = False
-
-2 == -3 = False
-2 == -2 = False
-2 == -1 = False
-2 == 0 = False
-2 == 1 = False
-2 == 2 = True
-2 == 3 = False
-
-3 == -3 = False
-3 == -2 = False
-3 == -1 = False
-3 == 0 = False
-3 == 1 = False
-3 == 2 = False
-3 == 3 = True
-
-#
--3 /= -3 = False
--3 /= -2 = True
--3 /= -1 = True
--3 /= 0 = True
--3 /= 1 = True
--3 /= 2 = True
--3 /= 3 = True
-
--2 /= -3 = True
--2 /= -2 = False
--2 /= -1 = True
--2 /= 0 = True
--2 /= 1 = True
--2 /= 2 = True
--2 /= 3 = True
-
--1 /= -3 = True
--1 /= -2 = True
--1 /= -1 = False
--1 /= 0 = True
--1 /= 1 = True
--1 /= 2 = True
--1 /= 3 = True
-
-0 /= -3 = True
-0 /= -2 = True
-0 /= -1 = True
-0 /= 0 = False
-0 /= 1 = True
-0 /= 2 = True
-0 /= 3 = True
-
-1 /= -3 = True
-1 /= -2 = True
-1 /= -1 = True
-1 /= 0 = True
-1 /= 1 = False
-1 /= 2 = True
-1 /= 3 = True
-
-2 /= -3 = True
-2 /= -2 = True
-2 /= -1 = True
-2 /= 0 = True
-2 /= 1 = True
-2 /= 2 = False
-2 /= 3 = True
-
-3 /= -3 = True
-3 /= -2 = True
-3 /= -1 = True
-3 /= 0 = True
-3 /= 1 = True
-3 /= 2 = True
-3 /= 3 = False
-
-#
-testOrd
--3 <= -3 = True
--3 <= -2 = True
--3 <= -1 = True
--3 <= 0 = True
--3 <= 1 = True
--3 <= 2 = True
--3 <= 3 = True
-
--2 <= -3 = False
--2 <= -2 = True
--2 <= -1 = True
--2 <= 0 = True
--2 <= 1 = True
--2 <= 2 = True
--2 <= 3 = True
-
--1 <= -3 = False
--1 <= -2 = False
--1 <= -1 = True
--1 <= 0 = True
--1 <= 1 = True
--1 <= 2 = True
--1 <= 3 = True
-
-0 <= -3 = False
-0 <= -2 = False
-0 <= -1 = False
-0 <= 0 = True
-0 <= 1 = True
-0 <= 2 = True
-0 <= 3 = True
-
-1 <= -3 = False
-1 <= -2 = False
-1 <= -1 = False
-1 <= 0 = False
-1 <= 1 = True
-1 <= 2 = True
-1 <= 3 = True
-
-2 <= -3 = False
-2 <= -2 = False
-2 <= -1 = False
-2 <= 0 = False
-2 <= 1 = False
-2 <= 2 = True
-2 <= 3 = True
-
-3 <= -3 = False
-3 <= -2 = False
-3 <= -1 = False
-3 <= 0 = False
-3 <= 1 = False
-3 <= 2 = False
-3 <= 3 = True
-
-#
--3 < -3 = False
--3 < -2 = True
--3 < -1 = True
--3 < 0 = True
--3 < 1 = True
--3 < 2 = True
--3 < 3 = True
-
--2 < -3 = False
--2 < -2 = False
--2 < -1 = True
--2 < 0 = True
--2 < 1 = True
--2 < 2 = True
--2 < 3 = True
-
--1 < -3 = False
--1 < -2 = False
--1 < -1 = False
--1 < 0 = True
--1 < 1 = True
--1 < 2 = True
--1 < 3 = True
-
-0 < -3 = False
-0 < -2 = False
-0 < -1 = False
-0 < 0 = False
-0 < 1 = True
-0 < 2 = True
-0 < 3 = True
-
-1 < -3 = False
-1 < -2 = False
-1 < -1 = False
-1 < 0 = False
-1 < 1 = False
-1 < 2 = True
-1 < 3 = True
-
-2 < -3 = False
-2 < -2 = False
-2 < -1 = False
-2 < 0 = False
-2 < 1 = False
-2 < 2 = False
-2 < 3 = True
-
-3 < -3 = False
-3 < -2 = False
-3 < -1 = False
-3 < 0 = False
-3 < 1 = False
-3 < 2 = False
-3 < 3 = False
-
-#
--3 > -3 = False
--3 > -2 = False
--3 > -1 = False
--3 > 0 = False
--3 > 1 = False
--3 > 2 = False
--3 > 3 = False
-
--2 > -3 = True
--2 > -2 = False
--2 > -1 = False
--2 > 0 = False
--2 > 1 = False
--2 > 2 = False
--2 > 3 = False
-
--1 > -3 = True
--1 > -2 = True
--1 > -1 = False
--1 > 0 = False
--1 > 1 = False
--1 > 2 = False
--1 > 3 = False
-
-0 > -3 = True
-0 > -2 = True
-0 > -1 = True
-0 > 0 = False
-0 > 1 = False
-0 > 2 = False
-0 > 3 = False
-
-1 > -3 = True
-1 > -2 = True
-1 > -1 = True
-1 > 0 = True
-1 > 1 = False
-1 > 2 = False
-1 > 3 = False
-
-2 > -3 = True
-2 > -2 = True
-2 > -1 = True
-2 > 0 = True
-2 > 1 = True
-2 > 2 = False
-2 > 3 = False
-
-3 > -3 = True
-3 > -2 = True
-3 > -1 = True
-3 > 0 = True
-3 > 1 = True
-3 > 2 = True
-3 > 3 = False
-
-#
--3 >= -3 = True
--3 >= -2 = False
--3 >= -1 = False
--3 >= 0 = False
--3 >= 1 = False
--3 >= 2 = False
--3 >= 3 = False
-
--2 >= -3 = True
--2 >= -2 = True
--2 >= -1 = False
--2 >= 0 = False
--2 >= 1 = False
--2 >= 2 = False
--2 >= 3 = False
-
--1 >= -3 = True
--1 >= -2 = True
--1 >= -1 = True
--1 >= 0 = False
--1 >= 1 = False
--1 >= 2 = False
--1 >= 3 = False
-
-0 >= -3 = True
-0 >= -2 = True
-0 >= -1 = True
-0 >= 0 = True
-0 >= 1 = False
-0 >= 2 = False
-0 >= 3 = False
-
-1 >= -3 = True
-1 >= -2 = True
-1 >= -1 = True
-1 >= 0 = True
-1 >= 1 = True
-1 >= 2 = False
-1 >= 3 = False
-
-2 >= -3 = True
-2 >= -2 = True
-2 >= -1 = True
-2 >= 0 = True
-2 >= 1 = True
-2 >= 2 = True
-2 >= 3 = False
-
-3 >= -3 = True
-3 >= -2 = True
-3 >= -1 = True
-3 >= 0 = True
-3 >= 1 = True
-3 >= 2 = True
-3 >= 3 = True
-
-#
--3 `compare` -3 = EQ
--3 `compare` -2 = LT
--3 `compare` -1 = LT
--3 `compare` 0 = LT
--3 `compare` 1 = LT
--3 `compare` 2 = LT
--3 `compare` 3 = LT
-
--2 `compare` -3 = GT
--2 `compare` -2 = EQ
--2 `compare` -1 = LT
--2 `compare` 0 = LT
--2 `compare` 1 = LT
--2 `compare` 2 = LT
--2 `compare` 3 = LT
-
--1 `compare` -3 = GT
--1 `compare` -2 = GT
--1 `compare` -1 = EQ
--1 `compare` 0 = LT
--1 `compare` 1 = LT
--1 `compare` 2 = LT
--1 `compare` 3 = LT
-
-0 `compare` -3 = GT
-0 `compare` -2 = GT
-0 `compare` -1 = GT
-0 `compare` 0 = EQ
-0 `compare` 1 = LT
-0 `compare` 2 = LT
-0 `compare` 3 = LT
-
-1 `compare` -3 = GT
-1 `compare` -2 = GT
-1 `compare` -1 = GT
-1 `compare` 0 = GT
-1 `compare` 1 = EQ
-1 `compare` 2 = LT
-1 `compare` 3 = LT
-
-2 `compare` -3 = GT
-2 `compare` -2 = GT
-2 `compare` -1 = GT
-2 `compare` 0 = GT
-2 `compare` 1 = GT
-2 `compare` 2 = EQ
-2 `compare` 3 = LT
-
-3 `compare` -3 = GT
-3 `compare` -2 = GT
-3 `compare` -1 = GT
-3 `compare` 0 = GT
-3 `compare` 1 = GT
-3 `compare` 2 = GT
-3 `compare` 3 = EQ
-
-#
-testNum
--3 + -3 = -6
--3 + -2 = -5
--3 + -1 = -4
--3 + 0 = -3
--3 + 1 = -2
--3 + 2 = -1
--3 + 3 = 0
-
--2 + -3 = -5
--2 + -2 = -4
--2 + -1 = -3
--2 + 0 = -2
--2 + 1 = -1
--2 + 2 = 0
--2 + 3 = 1
-
--1 + -3 = -4
--1 + -2 = -3
--1 + -1 = -2
--1 + 0 = -1
--1 + 1 = 0
--1 + 2 = 1
--1 + 3 = 2
-
-0 + -3 = -3
-0 + -2 = -2
-0 + -1 = -1
-0 + 0 = 0
-0 + 1 = 1
-0 + 2 = 2
-0 + 3 = 3
-
-1 + -3 = -2
-1 + -2 = -1
-1 + -1 = 0
-1 + 0 = 1
-1 + 1 = 2
-1 + 2 = 3
-1 + 3 = 4
-
-2 + -3 = -1
-2 + -2 = 0
-2 + -1 = 1
-2 + 0 = 2
-2 + 1 = 3
-2 + 2 = 4
-2 + 3 = 5
-
-3 + -3 = 0
-3 + -2 = 1
-3 + -1 = 2
-3 + 0 = 3
-3 + 1 = 4
-3 + 2 = 5
-3 + 3 = 6
-
-#
--3 - -3 = 0
--3 - -2 = -1
--3 - -1 = -2
--3 - 0 = -3
--3 - 1 = -4
--3 - 2 = -5
--3 - 3 = -6
-
--2 - -3 = 1
--2 - -2 = 0
--2 - -1 = -1
--2 - 0 = -2
--2 - 1 = -3
--2 - 2 = -4
--2 - 3 = -5
-
--1 - -3 = 2
--1 - -2 = 1
--1 - -1 = 0
--1 - 0 = -1
--1 - 1 = -2
--1 - 2 = -3
--1 - 3 = -4
-
-0 - -3 = 3
-0 - -2 = 2
-0 - -1 = 1
-0 - 0 = 0
-0 - 1 = -1
-0 - 2 = -2
-0 - 3 = -3
-
-1 - -3 = 4
-1 - -2 = 3
-1 - -1 = 2
-1 - 0 = 1
-1 - 1 = 0
-1 - 2 = -1
-1 - 3 = -2
-
-2 - -3 = 5
-2 - -2 = 4
-2 - -1 = 3
-2 - 0 = 2
-2 - 1 = 1
-2 - 2 = 0
-2 - 3 = -1
-
-3 - -3 = 6
-3 - -2 = 5
-3 - -1 = 4
-3 - 0 = 3
-3 - 1 = 2
-3 - 2 = 1
-3 - 3 = 0
-
-#
--3 * -3 = 9
--3 * -2 = 6
--3 * -1 = 3
--3 * 0 = 0
--3 * 1 = -3
--3 * 2 = -6
--3 * 3 = -9
-
--2 * -3 = 6
--2 * -2 = 4
--2 * -1 = 2
--2 * 0 = 0
--2 * 1 = -2
--2 * 2 = -4
--2 * 3 = -6
-
--1 * -3 = 3
--1 * -2 = 2
--1 * -1 = 1
--1 * 0 = 0
--1 * 1 = -1
--1 * 2 = -2
--1 * 3 = -3
-
-0 * -3 = 0
-0 * -2 = 0
-0 * -1 = 0
-0 * 0 = 0
-0 * 1 = 0
-0 * 2 = 0
-0 * 3 = 0
-
-1 * -3 = -3
-1 * -2 = -2
-1 * -1 = -1
-1 * 0 = 0
-1 * 1 = 1
-1 * 2 = 2
-1 * 3 = 3
-
-2 * -3 = -6
-2 * -2 = -4
-2 * -1 = -2
-2 * 0 = 0
-2 * 1 = 2
-2 * 2 = 4
-2 * 3 = 6
-
-3 * -3 = -9
-3 * -2 = -6
-3 * -1 = -3
-3 * 0 = 0
-3 * 1 = 3
-3 * 2 = 6
-3 * 3 = 9
-
-#
-negate -3 = 3
-negate -2 = 2
-negate -1 = 1
-negate 0 = 0
-negate 1 = -1
-negate 2 = -2
-negate 3 = -3
-#
-testReal
-toRational -3 = (-3) % 1
-toRational -2 = (-2) % 1
-toRational -1 = (-1) % 1
-toRational 0 = 0 % 1
-toRational 1 = 1 % 1
-toRational 2 = 2 % 1
-toRational 3 = 3 % 1
-#
-testIntegral
--3 `divMod` -3 = (1,0)
--3 `divMod` -2 = (1,-1)
--3 `divMod` -1 = (3,0)
--3 `divMod` 0 = divide by zero
--3 `divMod` 1 = (-3,0)
--3 `divMod` 2 = (-2,1)
--3 `divMod` 3 = (-1,0)
-
--2 `divMod` -3 = (0,-2)
--2 `divMod` -2 = (1,0)
--2 `divMod` -1 = (2,0)
--2 `divMod` 0 = divide by zero
--2 `divMod` 1 = (-2,0)
--2 `divMod` 2 = (-1,0)
--2 `divMod` 3 = (-1,1)
-
--1 `divMod` -3 = (0,-1)
--1 `divMod` -2 = (0,-1)
--1 `divMod` -1 = (1,0)
--1 `divMod` 0 = divide by zero
--1 `divMod` 1 = (-1,0)
--1 `divMod` 2 = (-1,1)
--1 `divMod` 3 = (-1,2)
-
-0 `divMod` -3 = (0,0)
-0 `divMod` -2 = (0,0)
-0 `divMod` -1 = (0,0)
-0 `divMod` 0 = divide by zero
-0 `divMod` 1 = (0,0)
-0 `divMod` 2 = (0,0)
-0 `divMod` 3 = (0,0)
-
-1 `divMod` -3 = (-1,-2)
-1 `divMod` -2 = (-1,-1)
-1 `divMod` -1 = (-1,0)
-1 `divMod` 0 = divide by zero
-1 `divMod` 1 = (1,0)
-1 `divMod` 2 = (0,1)
-1 `divMod` 3 = (0,1)
-
-2 `divMod` -3 = (-1,-1)
-2 `divMod` -2 = (-1,0)
-2 `divMod` -1 = (-2,0)
-2 `divMod` 0 = divide by zero
-2 `divMod` 1 = (2,0)
-2 `divMod` 2 = (1,0)
-2 `divMod` 3 = (0,2)
-
-3 `divMod` -3 = (-1,0)
-3 `divMod` -2 = (-2,-1)
-3 `divMod` -1 = (-3,0)
-3 `divMod` 0 = divide by zero
-3 `divMod` 1 = (3,0)
-3 `divMod` 2 = (1,1)
-3 `divMod` 3 = (1,0)
-
-#
--3 `div` -3 = 1
--3 `div` -2 = 1
--3 `div` -1 = 3
--3 `div` 0 = divide by zero
--3 `div` 1 = -3
--3 `div` 2 = -2
--3 `div` 3 = -1
-
--2 `div` -3 = 0
--2 `div` -2 = 1
--2 `div` -1 = 2
--2 `div` 0 = divide by zero
--2 `div` 1 = -2
--2 `div` 2 = -1
--2 `div` 3 = -1
-
--1 `div` -3 = 0
--1 `div` -2 = 0
--1 `div` -1 = 1
--1 `div` 0 = divide by zero
--1 `div` 1 = -1
--1 `div` 2 = -1
--1 `div` 3 = -1
-
-0 `div` -3 = 0
-0 `div` -2 = 0
-0 `div` -1 = 0
-0 `div` 0 = divide by zero
-0 `div` 1 = 0
-0 `div` 2 = 0
-0 `div` 3 = 0
-
-1 `div` -3 = -1
-1 `div` -2 = -1
-1 `div` -1 = -1
-1 `div` 0 = divide by zero
-1 `div` 1 = 1
-1 `div` 2 = 0
-1 `div` 3 = 0
-
-2 `div` -3 = -1
-2 `div` -2 = -1
-2 `div` -1 = -2
-2 `div` 0 = divide by zero
-2 `div` 1 = 2
-2 `div` 2 = 1
-2 `div` 3 = 0
-
-3 `div` -3 = -1
-3 `div` -2 = -2
-3 `div` -1 = -3
-3 `div` 0 = divide by zero
-3 `div` 1 = 3
-3 `div` 2 = 1
-3 `div` 3 = 1
-
-#
--3 `mod` -3 = 0
--3 `mod` -2 = -1
--3 `mod` -1 = 0
--3 `mod` 0 = divide by zero
--3 `mod` 1 = 0
--3 `mod` 2 = 1
--3 `mod` 3 = 0
-
--2 `mod` -3 = -2
--2 `mod` -2 = 0
--2 `mod` -1 = 0
--2 `mod` 0 = divide by zero
--2 `mod` 1 = 0
--2 `mod` 2 = 0
--2 `mod` 3 = 1
-
--1 `mod` -3 = -1
--1 `mod` -2 = -1
--1 `mod` -1 = 0
--1 `mod` 0 = divide by zero
--1 `mod` 1 = 0
--1 `mod` 2 = 1
--1 `mod` 3 = 2
-
-0 `mod` -3 = 0
-0 `mod` -2 = 0
-0 `mod` -1 = 0
-0 `mod` 0 = divide by zero
-0 `mod` 1 = 0
-0 `mod` 2 = 0
-0 `mod` 3 = 0
-
-1 `mod` -3 = -2
-1 `mod` -2 = -1
-1 `mod` -1 = 0
-1 `mod` 0 = divide by zero
-1 `mod` 1 = 0
-1 `mod` 2 = 1
-1 `mod` 3 = 1
-
-2 `mod` -3 = -1
-2 `mod` -2 = 0
-2 `mod` -1 = 0
-2 `mod` 0 = divide by zero
-2 `mod` 1 = 0
-2 `mod` 2 = 0
-2 `mod` 3 = 2
-
-3 `mod` -3 = 0
-3 `mod` -2 = -1
-3 `mod` -1 = 0
-3 `mod` 0 = divide by zero
-3 `mod` 1 = 0
-3 `mod` 2 = 1
-3 `mod` 3 = 0
-
-#
--3 `quotRem` -3 = (1,0)
--3 `quotRem` -2 = (1,-1)
--3 `quotRem` -1 = (3,0)
--3 `quotRem` 0 = divide by zero
--3 `quotRem` 1 = (-3,0)
--3 `quotRem` 2 = (-1,-1)
--3 `quotRem` 3 = (-1,0)
-
--2 `quotRem` -3 = (0,-2)
--2 `quotRem` -2 = (1,0)
--2 `quotRem` -1 = (2,0)
--2 `quotRem` 0 = divide by zero
--2 `quotRem` 1 = (-2,0)
--2 `quotRem` 2 = (-1,0)
--2 `quotRem` 3 = (0,-2)
-
--1 `quotRem` -3 = (0,-1)
--1 `quotRem` -2 = (0,-1)
--1 `quotRem` -1 = (1,0)
--1 `quotRem` 0 = divide by zero
--1 `quotRem` 1 = (-1,0)
--1 `quotRem` 2 = (0,-1)
--1 `quotRem` 3 = (0,-1)
-
-0 `quotRem` -3 = (0,0)
-0 `quotRem` -2 = (0,0)
-0 `quotRem` -1 = (0,0)
-0 `quotRem` 0 = divide by zero
-0 `quotRem` 1 = (0,0)
-0 `quotRem` 2 = (0,0)
-0 `quotRem` 3 = (0,0)
-
-1 `quotRem` -3 = (0,1)
-1 `quotRem` -2 = (0,1)
-1 `quotRem` -1 = (-1,0)
-1 `quotRem` 0 = divide by zero
-1 `quotRem` 1 = (1,0)
-1 `quotRem` 2 = (0,1)
-1 `quotRem` 3 = (0,1)
-
-2 `quotRem` -3 = (0,2)
-2 `quotRem` -2 = (-1,0)
-2 `quotRem` -1 = (-2,0)
-2 `quotRem` 0 = divide by zero
-2 `quotRem` 1 = (2,0)
-2 `quotRem` 2 = (1,0)
-2 `quotRem` 3 = (0,2)
-
-3 `quotRem` -3 = (-1,0)
-3 `quotRem` -2 = (-1,1)
-3 `quotRem` -1 = (-3,0)
-3 `quotRem` 0 = divide by zero
-3 `quotRem` 1 = (3,0)
-3 `quotRem` 2 = (1,1)
-3 `quotRem` 3 = (1,0)
-
-#
--3 `quot` -3 = 1
--3 `quot` -2 = 1
--3 `quot` -1 = 3
--3 `quot` 0 = divide by zero
--3 `quot` 1 = -3
--3 `quot` 2 = -1
--3 `quot` 3 = -1
-
--2 `quot` -3 = 0
--2 `quot` -2 = 1
--2 `quot` -1 = 2
--2 `quot` 0 = divide by zero
--2 `quot` 1 = -2
--2 `quot` 2 = -1
--2 `quot` 3 = 0
-
--1 `quot` -3 = 0
--1 `quot` -2 = 0
--1 `quot` -1 = 1
--1 `quot` 0 = divide by zero
--1 `quot` 1 = -1
--1 `quot` 2 = 0
--1 `quot` 3 = 0
-
-0 `quot` -3 = 0
-0 `quot` -2 = 0
-0 `quot` -1 = 0
-0 `quot` 0 = divide by zero
-0 `quot` 1 = 0
-0 `quot` 2 = 0
-0 `quot` 3 = 0
-
-1 `quot` -3 = 0
-1 `quot` -2 = 0
-1 `quot` -1 = -1
-1 `quot` 0 = divide by zero
-1 `quot` 1 = 1
-1 `quot` 2 = 0
-1 `quot` 3 = 0
-
-2 `quot` -3 = 0
-2 `quot` -2 = -1
-2 `quot` -1 = -2
-2 `quot` 0 = divide by zero
-2 `quot` 1 = 2
-2 `quot` 2 = 1
-2 `quot` 3 = 0
-
-3 `quot` -3 = -1
-3 `quot` -2 = -1
-3 `quot` -1 = -3
-3 `quot` 0 = divide by zero
-3 `quot` 1 = 3
-3 `quot` 2 = 1
-3 `quot` 3 = 1
-
-#
--3 `rem` -3 = 0
--3 `rem` -2 = -1
--3 `rem` -1 = 0
--3 `rem` 0 = divide by zero
--3 `rem` 1 = 0
--3 `rem` 2 = -1
--3 `rem` 3 = 0
-
--2 `rem` -3 = -2
--2 `rem` -2 = 0
--2 `rem` -1 = 0
--2 `rem` 0 = divide by zero
--2 `rem` 1 = 0
--2 `rem` 2 = 0
--2 `rem` 3 = -2
-
--1 `rem` -3 = -1
--1 `rem` -2 = -1
--1 `rem` -1 = 0
--1 `rem` 0 = divide by zero
--1 `rem` 1 = 0
--1 `rem` 2 = -1
--1 `rem` 3 = -1
-
-0 `rem` -3 = 0
-0 `rem` -2 = 0
-0 `rem` -1 = 0
-0 `rem` 0 = divide by zero
-0 `rem` 1 = 0
-0 `rem` 2 = 0
-0 `rem` 3 = 0
-
-1 `rem` -3 = 1
-1 `rem` -2 = 1
-1 `rem` -1 = 0
-1 `rem` 0 = divide by zero
-1 `rem` 1 = 0
-1 `rem` 2 = 1
-1 `rem` 3 = 1
-
-2 `rem` -3 = 2
-2 `rem` -2 = 0
-2 `rem` -1 = 0
-2 `rem` 0 = divide by zero
-2 `rem` 1 = 0
-2 `rem` 2 = 0
-2 `rem` 3 = 2
-
-3 `rem` -3 = 0
-3 `rem` -2 = 1
-3 `rem` -1 = 0
-3 `rem` 0 = divide by zero
-3 `rem` 1 = 0
-3 `rem` 2 = 1
-3 `rem` 3 = 0
-
-#
-testBits
--3 .&. -3 = -3
--3 .&. -2 = -4
--3 .&. -1 = -3
--3 .&. 0 = 0
--3 .&. 1 = 1
--3 .&. 2 = 0
--3 .&. 3 = 1
-
--2 .&. -3 = -4
--2 .&. -2 = -2
--2 .&. -1 = -2
--2 .&. 0 = 0
--2 .&. 1 = 0
--2 .&. 2 = 2
--2 .&. 3 = 2
-
--1 .&. -3 = -3
--1 .&. -2 = -2
--1 .&. -1 = -1
--1 .&. 0 = 0
--1 .&. 1 = 1
--1 .&. 2 = 2
--1 .&. 3 = 3
-
-0 .&. -3 = 0
-0 .&. -2 = 0
-0 .&. -1 = 0
-0 .&. 0 = 0
-0 .&. 1 = 0
-0 .&. 2 = 0
-0 .&. 3 = 0
-
-1 .&. -3 = 1
-1 .&. -2 = 0
-1 .&. -1 = 1
-1 .&. 0 = 0
-1 .&. 1 = 1
-1 .&. 2 = 0
-1 .&. 3 = 1
-
-2 .&. -3 = 0
-2 .&. -2 = 2
-2 .&. -1 = 2
-2 .&. 0 = 0
-2 .&. 1 = 0
-2 .&. 2 = 2
-2 .&. 3 = 2
-
-3 .&. -3 = 1
-3 .&. -2 = 2
-3 .&. -1 = 3
-3 .&. 0 = 0
-3 .&. 1 = 1
-3 .&. 2 = 2
-3 .&. 3 = 3
-
-#
--3 .|. -3 = -3
--3 .|. -2 = -1
--3 .|. -1 = -1
--3 .|. 0 = -3
--3 .|. 1 = -3
--3 .|. 2 = -1
--3 .|. 3 = -1
-
--2 .|. -3 = -1
--2 .|. -2 = -2
--2 .|. -1 = -1
--2 .|. 0 = -2
--2 .|. 1 = -1
--2 .|. 2 = -2
--2 .|. 3 = -1
-
--1 .|. -3 = -1
--1 .|. -2 = -1
--1 .|. -1 = -1
--1 .|. 0 = -1
--1 .|. 1 = -1
--1 .|. 2 = -1
--1 .|. 3 = -1
-
-0 .|. -3 = -3
-0 .|. -2 = -2
-0 .|. -1 = -1
-0 .|. 0 = 0
-0 .|. 1 = 1
-0 .|. 2 = 2
-0 .|. 3 = 3
-
-1 .|. -3 = -3
-1 .|. -2 = -1
-1 .|. -1 = -1
-1 .|. 0 = 1
-1 .|. 1 = 1
-1 .|. 2 = 3
-1 .|. 3 = 3
-
-2 .|. -3 = -1
-2 .|. -2 = -2
-2 .|. -1 = -1
-2 .|. 0 = 2
-2 .|. 1 = 3
-2 .|. 2 = 2
-2 .|. 3 = 3
-
-3 .|. -3 = -1
-3 .|. -2 = -1
-3 .|. -1 = -1
-3 .|. 0 = 3
-3 .|. 1 = 3
-3 .|. 2 = 3
-3 .|. 3 = 3
-
-#
--3 `xor` -3 = 0
--3 `xor` -2 = 3
--3 `xor` -1 = 2
--3 `xor` 0 = -3
--3 `xor` 1 = -4
--3 `xor` 2 = -1
--3 `xor` 3 = -2
-
--2 `xor` -3 = 3
--2 `xor` -2 = 0
--2 `xor` -1 = 1
--2 `xor` 0 = -2
--2 `xor` 1 = -1
--2 `xor` 2 = -4
--2 `xor` 3 = -3
-
--1 `xor` -3 = 2
--1 `xor` -2 = 1
--1 `xor` -1 = 0
--1 `xor` 0 = -1
--1 `xor` 1 = -2
--1 `xor` 2 = -3
--1 `xor` 3 = -4
-
-0 `xor` -3 = -3
-0 `xor` -2 = -2
-0 `xor` -1 = -1
-0 `xor` 0 = 0
-0 `xor` 1 = 1
-0 `xor` 2 = 2
-0 `xor` 3 = 3
-
-1 `xor` -3 = -4
-1 `xor` -2 = -1
-1 `xor` -1 = -2
-1 `xor` 0 = 1
-1 `xor` 1 = 0
-1 `xor` 2 = 3
-1 `xor` 3 = 2
-
-2 `xor` -3 = -1
-2 `xor` -2 = -4
-2 `xor` -1 = -3
-2 `xor` 0 = 2
-2 `xor` 1 = 3
-2 `xor` 2 = 0
-2 `xor` 3 = 1
-
-3 `xor` -3 = -2
-3 `xor` -2 = -3
-3 `xor` -1 = -4
-3 `xor` 0 = 3
-3 `xor` 1 = 2
-3 `xor` 2 = 1
-3 `xor` 3 = 0
-
-#
-complement -3 = 2
-complement -2 = 1
-complement -1 = 0
-complement 0 = -1
-complement 1 = -2
-complement 2 = -3
-complement 3 = -4
-#
--3 `shiftL` 0 = -3
--3 `shiftL` 1 = -6
--3 `shiftL` 2 = -12
--3 `shiftL` 3 = -24
--3 `shiftL` 32 = -12884901888
--3 `shiftL` 64 = -55340232221128654848
-
--2 `shiftL` 0 = -2
--2 `shiftL` 1 = -4
--2 `shiftL` 2 = -8
--2 `shiftL` 3 = -16
--2 `shiftL` 32 = -8589934592
--2 `shiftL` 64 = -36893488147419103232
-
--1 `shiftL` 0 = -1
--1 `shiftL` 1 = -2
--1 `shiftL` 2 = -4
--1 `shiftL` 3 = -8
--1 `shiftL` 32 = -4294967296
--1 `shiftL` 64 = -18446744073709551616
-
-0 `shiftL` 0 = 0
-0 `shiftL` 1 = 0
-0 `shiftL` 2 = 0
-0 `shiftL` 3 = 0
-0 `shiftL` 32 = 0
-0 `shiftL` 64 = 0
-
-1 `shiftL` 0 = 1
-1 `shiftL` 1 = 2
-1 `shiftL` 2 = 4
-1 `shiftL` 3 = 8
-1 `shiftL` 32 = 4294967296
-1 `shiftL` 64 = 18446744073709551616
-
-2 `shiftL` 0 = 2
-2 `shiftL` 1 = 4
-2 `shiftL` 2 = 8
-2 `shiftL` 3 = 16
-2 `shiftL` 32 = 8589934592
-2 `shiftL` 64 = 36893488147419103232
-
-3 `shiftL` 0 = 3
-3 `shiftL` 1 = 6
-3 `shiftL` 2 = 12
-3 `shiftL` 3 = 24
-3 `shiftL` 32 = 12884901888
-3 `shiftL` 64 = 55340232221128654848
-
-#
--3 `shiftR` 0 = -3
--3 `shiftR` 1 = -2
--3 `shiftR` 2 = -1
--3 `shiftR` 3 = -1
--3 `shiftR` 32 = -1
--3 `shiftR` 64 = -1
-
--2 `shiftR` 0 = -2
--2 `shiftR` 1 = -1
--2 `shiftR` 2 = -1
--2 `shiftR` 3 = -1
--2 `shiftR` 32 = -1
--2 `shiftR` 64 = -1
-
--1 `shiftR` 0 = -1
--1 `shiftR` 1 = -1
--1 `shiftR` 2 = -1
--1 `shiftR` 3 = -1
--1 `shiftR` 32 = -1
--1 `shiftR` 64 = -1
-
-0 `shiftR` 0 = 0
-0 `shiftR` 1 = 0
-0 `shiftR` 2 = 0
-0 `shiftR` 3 = 0
-0 `shiftR` 32 = 0
-0 `shiftR` 64 = 0
-
-1 `shiftR` 0 = 1
-1 `shiftR` 1 = 0
-1 `shiftR` 2 = 0
-1 `shiftR` 3 = 0
-1 `shiftR` 32 = 0
-1 `shiftR` 64 = 0
-
-2 `shiftR` 0 = 2
-2 `shiftR` 1 = 1
-2 `shiftR` 2 = 0
-2 `shiftR` 3 = 0
-2 `shiftR` 32 = 0
-2 `shiftR` 64 = 0
-
-3 `shiftR` 0 = 3
-3 `shiftR` 1 = 1
-3 `shiftR` 2 = 0
-3 `shiftR` 3 = 0
-3 `shiftR` 32 = 0
-3 `shiftR` 64 = 0
-
-#
--3 `rotate` -3 = -1
--3 `rotate` -2 = -1
--3 `rotate` -1 = -2
--3 `rotate` 0 = -3
--3 `rotate` 1 = -6
--3 `rotate` 2 = -12
--3 `rotate` 3 = -24
--3 `rotate` -64 = -1
--3 `rotate` -32 = -1
--3 `rotate` 32 = -12884901888
--3 `rotate` 64 = -55340232221128654848
-
--2 `rotate` -3 = -1
--2 `rotate` -2 = -1
--2 `rotate` -1 = -1
--2 `rotate` 0 = -2
--2 `rotate` 1 = -4
--2 `rotate` 2 = -8
--2 `rotate` 3 = -16
--2 `rotate` -64 = -1
--2 `rotate` -32 = -1
--2 `rotate` 32 = -8589934592
--2 `rotate` 64 = -36893488147419103232
-
--1 `rotate` -3 = -1
--1 `rotate` -2 = -1
--1 `rotate` -1 = -1
--1 `rotate` 0 = -1
--1 `rotate` 1 = -2
--1 `rotate` 2 = -4
--1 `rotate` 3 = -8
--1 `rotate` -64 = -1
--1 `rotate` -32 = -1
--1 `rotate` 32 = -4294967296
--1 `rotate` 64 = -18446744073709551616
-
-0 `rotate` -3 = 0
-0 `rotate` -2 = 0
-0 `rotate` -1 = 0
-0 `rotate` 0 = 0
-0 `rotate` 1 = 0
-0 `rotate` 2 = 0
-0 `rotate` 3 = 0
-0 `rotate` -64 = 0
-0 `rotate` -32 = 0
-0 `rotate` 32 = 0
-0 `rotate` 64 = 0
-
-1 `rotate` -3 = 0
-1 `rotate` -2 = 0
-1 `rotate` -1 = 0
-1 `rotate` 0 = 1
-1 `rotate` 1 = 2
-1 `rotate` 2 = 4
-1 `rotate` 3 = 8
-1 `rotate` -64 = 0
-1 `rotate` -32 = 0
-1 `rotate` 32 = 4294967296
-1 `rotate` 64 = 18446744073709551616
-
-2 `rotate` -3 = 0
-2 `rotate` -2 = 0
-2 `rotate` -1 = 1
-2 `rotate` 0 = 2
-2 `rotate` 1 = 4
-2 `rotate` 2 = 8
-2 `rotate` 3 = 16
-2 `rotate` -64 = 0
-2 `rotate` -32 = 0
-2 `rotate` 32 = 8589934592
-2 `rotate` 64 = 36893488147419103232
-
-3 `rotate` -3 = 0
-3 `rotate` -2 = 0
-3 `rotate` -1 = 1
-3 `rotate` 0 = 3
-3 `rotate` 1 = 6
-3 `rotate` 2 = 12
-3 `rotate` 3 = 24
-3 `rotate` -64 = 0
-3 `rotate` -32 = 0
-3 `rotate` 32 = 12884901888
-3 `rotate` 64 = 55340232221128654848
-
-#
-bit 0 = 1
-bit 1 = 2
-bit 2 = 4
-bit 3 = 8
-#
--3 `setBit` 0 = -3
--3 `setBit` 1 = -1
--3 `setBit` 2 = -3
--3 `setBit` 3 = -3
--3 `setBit` 32 = -3
--3 `setBit` 64 = -3
-
--2 `setBit` 0 = -1
--2 `setBit` 1 = -2
--2 `setBit` 2 = -2
--2 `setBit` 3 = -2
--2 `setBit` 32 = -2
--2 `setBit` 64 = -2
-
--1 `setBit` 0 = -1
--1 `setBit` 1 = -1
--1 `setBit` 2 = -1
--1 `setBit` 3 = -1
--1 `setBit` 32 = -1
--1 `setBit` 64 = -1
-
-0 `setBit` 0 = 1
-0 `setBit` 1 = 2
-0 `setBit` 2 = 4
-0 `setBit` 3 = 8
-0 `setBit` 32 = 4294967296
-0 `setBit` 64 = 18446744073709551616
-
-1 `setBit` 0 = 1
-1 `setBit` 1 = 3
-1 `setBit` 2 = 5
-1 `setBit` 3 = 9
-1 `setBit` 32 = 4294967297
-1 `setBit` 64 = 18446744073709551617
-
-2 `setBit` 0 = 3
-2 `setBit` 1 = 2
-2 `setBit` 2 = 6
-2 `setBit` 3 = 10
-2 `setBit` 32 = 4294967298
-2 `setBit` 64 = 18446744073709551618
-
-3 `setBit` 0 = 3
-3 `setBit` 1 = 3
-3 `setBit` 2 = 7
-3 `setBit` 3 = 11
-3 `setBit` 32 = 4294967299
-3 `setBit` 64 = 18446744073709551619
-
-#
--3 `clearBit` 0 = -4
--3 `clearBit` 1 = -3
--3 `clearBit` 2 = -7
--3 `clearBit` 3 = -11
--3 `clearBit` 32 = -4294967299
--3 `clearBit` 64 = -18446744073709551619
-
--2 `clearBit` 0 = -2
--2 `clearBit` 1 = -4
--2 `clearBit` 2 = -6
--2 `clearBit` 3 = -10
--2 `clearBit` 32 = -4294967298
--2 `clearBit` 64 = -18446744073709551618
-
--1 `clearBit` 0 = -2
--1 `clearBit` 1 = -3
--1 `clearBit` 2 = -5
--1 `clearBit` 3 = -9
--1 `clearBit` 32 = -4294967297
--1 `clearBit` 64 = -18446744073709551617
-
-0 `clearBit` 0 = 0
-0 `clearBit` 1 = 0
-0 `clearBit` 2 = 0
-0 `clearBit` 3 = 0
-0 `clearBit` 32 = 0
-0 `clearBit` 64 = 0
-
-1 `clearBit` 0 = 0
-1 `clearBit` 1 = 1
-1 `clearBit` 2 = 1
-1 `clearBit` 3 = 1
-1 `clearBit` 32 = 1
-1 `clearBit` 64 = 1
-
-2 `clearBit` 0 = 2
-2 `clearBit` 1 = 0
-2 `clearBit` 2 = 2
-2 `clearBit` 3 = 2
-2 `clearBit` 32 = 2
-2 `clearBit` 64 = 2
-
-3 `clearBit` 0 = 2
-3 `clearBit` 1 = 1
-3 `clearBit` 2 = 3
-3 `clearBit` 3 = 3
-3 `clearBit` 32 = 3
-3 `clearBit` 64 = 3
-
-#
--3 `complementBit` 0 = -4
--3 `complementBit` 1 = -1
--3 `complementBit` 2 = -7
--3 `complementBit` 3 = -11
--3 `complementBit` 32 = -4294967299
--3 `complementBit` 64 = -18446744073709551619
-
--2 `complementBit` 0 = -1
--2 `complementBit` 1 = -4
--2 `complementBit` 2 = -6
--2 `complementBit` 3 = -10
--2 `complementBit` 32 = -4294967298
--2 `complementBit` 64 = -18446744073709551618
-
--1 `complementBit` 0 = -2
--1 `complementBit` 1 = -3
--1 `complementBit` 2 = -5
--1 `complementBit` 3 = -9
--1 `complementBit` 32 = -4294967297
--1 `complementBit` 64 = -18446744073709551617
-
-0 `complementBit` 0 = 1
-0 `complementBit` 1 = 2
-0 `complementBit` 2 = 4
-0 `complementBit` 3 = 8
-0 `complementBit` 32 = 4294967296
-0 `complementBit` 64 = 18446744073709551616
-
-1 `complementBit` 0 = 0
-1 `complementBit` 1 = 3
-1 `complementBit` 2 = 5
-1 `complementBit` 3 = 9
-1 `complementBit` 32 = 4294967297
-1 `complementBit` 64 = 18446744073709551617
-
-2 `complementBit` 0 = 3
-2 `complementBit` 1 = 0
-2 `complementBit` 2 = 6
-2 `complementBit` 3 = 10
-2 `complementBit` 32 = 4294967298
-2 `complementBit` 64 = 18446744073709551618
-
-3 `complementBit` 0 = 2
-3 `complementBit` 1 = 1
-3 `complementBit` 2 = 7
-3 `complementBit` 3 = 11
-3 `complementBit` 32 = 4294967299
-3 `complementBit` 64 = 18446744073709551619
-
-#
--3 `testBit` 0 = True
--3 `testBit` 1 = False
--3 `testBit` 2 = True
--3 `testBit` 3 = True
--3 `testBit` 32 = True
--3 `testBit` 64 = True
-
--2 `testBit` 0 = False
--2 `testBit` 1 = True
--2 `testBit` 2 = True
--2 `testBit` 3 = True
--2 `testBit` 32 = True
--2 `testBit` 64 = True
-
--1 `testBit` 0 = True
--1 `testBit` 1 = True
--1 `testBit` 2 = True
--1 `testBit` 3 = True
--1 `testBit` 32 = True
--1 `testBit` 64 = True
-
-0 `testBit` 0 = False
-0 `testBit` 1 = False
-0 `testBit` 2 = False
-0 `testBit` 3 = False
-0 `testBit` 32 = False
-0 `testBit` 64 = False
-
-1 `testBit` 0 = True
-1 `testBit` 1 = False
-1 `testBit` 2 = False
-1 `testBit` 3 = False
-1 `testBit` 32 = False
-1 `testBit` 64 = False
-
-2 `testBit` 0 = False
-2 `testBit` 1 = True
-2 `testBit` 2 = False
-2 `testBit` 3 = False
-2 `testBit` 32 = False
-2 `testBit` 64 = False
-
-3 `testBit` 0 = True
-3 `testBit` 1 = True
-3 `testBit` 2 = False
-3 `testBit` 3 = False
-3 `testBit` 32 = False
-3 `testBit` 64 = False
-
-#
-isSigned -3 = True
-isSigned -2 = True
-isSigned -1 = True
-isSigned 0 = True
-isSigned 1 = True
-isSigned 2 = True
-isSigned 3 = True
-#
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith012.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith012.hs
deleted file mode 100644
index f9f9ec778e..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith012.hs
+++ /dev/null
@@ -1,90 +0,0 @@
--- !!! Testing NumExts
-module Main(main) where
-
-import Numeric
-import Data.Char
-
-main :: IO ()
-main = tst
-
-tst :: IO ()
-tst = do
- test_doubleToFloat
- test_floatToDouble
- test_showHex
- test_showOct
- test_showBin
-
-----
--- Test data:
-doubles :: [Double]
-doubles = [ -1.2 , 0, 0.1, 0.5, 1.0, 1234.45454,
- 1.6053e4, 1.64022e12, 6.894e-4, 6.34543455634582173,
- 5342413403.40540423255]
-ints :: [Int]
-ints = [ 0, 1, 255, 65513, 6029, 1024, 256, 201357245]
-
-integers :: [Integer]
-integers = [ 0, 1, 255, 65513, 6029, 1024, 256,
- 2343243543500233, 656194962055457832]
----
-
-test_doubleToFloat :: IO ()
-test_doubleToFloat = do
- test_banner "doubleToFloat"
- putStrLn (show doubles)
- putStrLn (show $ map doubleToFloat doubles)
-
-doubleToFloat :: Double -> Float
-doubleToFloat = realToFrac
-
-floatToDouble :: Float -> Double
-floatToDouble = realToFrac
-
-test_floatToDouble :: IO ()
-test_floatToDouble = do
- test_banner "doubleToFloat"
- putStrLn (show doubles)
- putStrLn (show $ map doubleToFloat doubles)
- putStrLn (show $ map (floatToDouble.doubleToFloat) doubles)
-
-test_showHex :: IO ()
-test_showHex = do
- test_banner "showHex"
- putStrLn (show ints)
- putStrLn (showList' (map showHex ints))
- putStrLn (show integers)
- putStrLn (showList' (map showHex integers))
-
-test_showBin :: IO ()
-test_showBin = do
- test_banner "showBin"
- putStrLn (show ints)
- putStrLn (showList' (map showBin ints))
- putStrLn (show integers)
- putStrLn (showList' (map showBin integers))
-
-showBin i = showIntAtBase 2 intToDigit i
-
-showList' :: [ShowS] -> String
-showList' [] = "[]"
-showList' (x:xs) = showChar '[' . x $ showl xs ""
- where
- showl [] = showChar ']'
- showl (x:xs) = showChar ',' . x . showl xs
-
-
-test_showOct :: IO ()
-test_showOct = do
- test_banner "showOct"
- putStrLn (show ints)
- putStrLn (showList' (map showOct ints))
- putStrLn (show integers)
- putStrLn (showList' (map showOct integers))
-
-----
-test_banner :: String -> IO ()
-test_banner tst = do
- putStrLn $ "--------------------------------"
- putStrLn $ "--Testing " ++ tst
- putStrLn $ "--------------------------------"
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith012.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith012.stdout
deleted file mode 100644
index c1c38c7f5a..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith012.stdout
+++ /dev/null
@@ -1,32 +0,0 @@
---------------------------------
---Testing doubleToFloat
---------------------------------
-[-1.2,0.0,0.1,0.5,1.0,1234.45454,16053.0,1.64022e12,6.894e-4,6.345434556345822,5.342413403405404e9]
-[-1.2,0.0,0.1,0.5,1.0,1234.4546,16053.0,1.64022e12,6.894e-4,6.3454347,5.3424133e9]
---------------------------------
---Testing doubleToFloat
---------------------------------
-[-1.2,0.0,0.1,0.5,1.0,1234.45454,16053.0,1.64022e12,6.894e-4,6.345434556345822,5.342413403405404e9]
-[-1.2,0.0,0.1,0.5,1.0,1234.4546,16053.0,1.64022e12,6.894e-4,6.3454347,5.3424133e9]
-[-1.2000000476837158,0.0,0.10000000149011612,0.5,1.0,1234.45458984375,16053.0,1.64021993472e12,6.894000107422471e-4,6.345434665679932,5.342413312e9]
---------------------------------
---Testing showHex
---------------------------------
-[0,1,255,65513,6029,1024,256,201357245]
-[0,1,ff,ffe9,178d,400,100,c0077bd]
-[0,1,255,65513,6029,1024,256,2343243543500233,656194962055457832]
-[0,1,ff,ffe9,178d,400,100,8532ae70855c9,91b45d760b76c28]
---------------------------------
---Testing showOct
---------------------------------
-[0,1,255,65513,6029,1024,256,201357245]
-[0,1,377,177751,13615,2000,400,1400073675]
-[0,1,255,65513,6029,1024,256,2343243543500233,656194962055457832]
-[0,1,377,177751,13615,2000,400,102462534702052711,44332135354055666050]
---------------------------------
---Testing showBin
---------------------------------
-[0,1,255,65513,6029,1024,256,201357245]
-[0,1,11111111,1111111111101001,1011110001101,10000000000,100000000,1100000000000111011110111101]
-[0,1,255,65513,6029,1024,256,2343243543500233,656194962055457832]
-[0,1,11111111,1111111111101001,1011110001101,10000000000,100000000,1000010100110010101011100111000010000101010111001001,100100011011010001011101011101100000101101110110110000101000]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith013.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith013.hs
deleted file mode 100644
index a03cbb3795..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith013.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- Test gcdInt/gcdInteger
-
-import GHC.Real ( gcdInt )
-import GHC.Num ( gcdInteger )
-
-main :: IO ()
-main = do
- test gcdInt [ -42, 0, 105 ]
- test gcdInteger [-12193263111263526900, -42, 0, 105, 1234567890 ]
-
-
-test :: Integral a => (a -> a -> a) -> [a] -> IO ()
-test f xs = mapM_ print [ (a, b, f a b) | a <- xs, b <- reverse xs, a /= 0 || b /= 0 ]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith013.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith013.stdout
deleted file mode 100644
index ff440977df..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith013.stdout
+++ /dev/null
@@ -1,32 +0,0 @@
-(-42,105,21)
-(-42,0,42)
-(-42,-42,42)
-(0,105,105)
-(0,-42,42)
-(105,105,105)
-(105,0,105)
-(105,-42,21)
-(-12193263111263526900,1234567890,1234567890)
-(-12193263111263526900,105,15)
-(-12193263111263526900,0,12193263111263526900)
-(-12193263111263526900,-42,6)
-(-12193263111263526900,-12193263111263526900,12193263111263526900)
-(-42,1234567890,6)
-(-42,105,21)
-(-42,0,42)
-(-42,-42,42)
-(-42,-12193263111263526900,6)
-(0,1234567890,1234567890)
-(0,105,105)
-(0,-42,42)
-(0,-12193263111263526900,12193263111263526900)
-(105,1234567890,15)
-(105,105,105)
-(105,0,105)
-(105,-42,21)
-(105,-12193263111263526900,15)
-(1234567890,1234567890,1234567890)
-(1234567890,105,15)
-(1234567890,0,1234567890)
-(1234567890,-42,6)
-(1234567890,-12193263111263526900,1234567890)
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith014.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith014.hs
deleted file mode 100644
index 92fc362ee8..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith014.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Test behaviour of fromInteger when the target type is out of range.
-
-main :: IO ()
-main =
- print [
- fromInteger maxInt2 :: Int,
- fromInteger minInt2 :: Int
- ]
-
-maxInt2 = fromIntegral (maxBound :: Int) * 2 :: Integer
-minInt2 = fromIntegral (minBound + 1 :: Int) * 2 :: Integer
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith014.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith014.stdout
deleted file mode 100644
index 9716a9fa88..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith014.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[-2,2]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith015.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith015.hs
deleted file mode 100644
index c1e58c0540..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith015.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-main = do
- print (map read strange_nums :: [Float])
- print (map read strange_nums :: [Double])
- where
- strange_nums = ["Infinity","NaN", "-Infinity"]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith015.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith015.stdout
deleted file mode 100644
index f5f8416a6b..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith015.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-[Infinity,NaN,-Infinity]
-[Infinity,NaN,-Infinity]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith016.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith016.hs
deleted file mode 100644
index 1437b8799d..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith016.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
-module Main where
-
-import GHC.Exts ( Float(F#),
- eqFloat#, neFloat#, ltFloat#,
- leFloat#, gtFloat#, geFloat#
- )
-
-fcmp_eq, fcmp_ne, fcmp_lt, fcmp_le, fcmp_gt, fcmp_ge :: (String, Float -> Float -> Bool)
-fcmp_eq = ("==", \ (F# a) (F# b) -> a `eqFloat#` b)
-fcmp_ne = ("/=", \ (F# a) (F# b) -> a `neFloat#` b)
-fcmp_lt = ("< ", \ (F# a) (F# b) -> a `ltFloat#` b)
-fcmp_le = ("<=", \ (F# a) (F# b) -> a `leFloat#` b)
-fcmp_gt = ("> ", \ (F# a) (F# b) -> a `gtFloat#` b)
-fcmp_ge = (">=", \ (F# a) (F# b) -> a `geFloat#` b)
-
-float_fns = [fcmp_eq, fcmp_ne, fcmp_lt, fcmp_le, fcmp_gt, fcmp_ge]
-
-float_vals :: [Float]
-float_vals = [0.0, 1.0, read "NaN"]
-
-float_text
- = [show4 arg1 ++ " " ++ fn_name ++ " " ++ show4 arg2 ++ " = " ++ show (fn arg1 arg2)
- | (fn_name, fn) <- float_fns,
- arg1 <- float_vals,
- arg2 <- float_vals
- ]
- where
- show4 x = take 4 (show x ++ repeat ' ')
-
-main
- = putStrLn (unlines float_text)
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith016.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith016.stdout
deleted file mode 100644
index 5361a8e0bd..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith016.stdout
+++ /dev/null
@@ -1,55 +0,0 @@
-0.0 == 0.0 = True
-0.0 == 1.0 = False
-0.0 == NaN = False
-1.0 == 0.0 = False
-1.0 == 1.0 = True
-1.0 == NaN = False
-NaN == 0.0 = False
-NaN == 1.0 = False
-NaN == NaN = False
-0.0 /= 0.0 = False
-0.0 /= 1.0 = True
-0.0 /= NaN = True
-1.0 /= 0.0 = True
-1.0 /= 1.0 = False
-1.0 /= NaN = True
-NaN /= 0.0 = True
-NaN /= 1.0 = True
-NaN /= NaN = True
-0.0 < 0.0 = False
-0.0 < 1.0 = True
-0.0 < NaN = False
-1.0 < 0.0 = False
-1.0 < 1.0 = False
-1.0 < NaN = False
-NaN < 0.0 = False
-NaN < 1.0 = False
-NaN < NaN = False
-0.0 <= 0.0 = True
-0.0 <= 1.0 = True
-0.0 <= NaN = False
-1.0 <= 0.0 = False
-1.0 <= 1.0 = True
-1.0 <= NaN = False
-NaN <= 0.0 = False
-NaN <= 1.0 = False
-NaN <= NaN = False
-0.0 > 0.0 = False
-0.0 > 1.0 = False
-0.0 > NaN = False
-1.0 > 0.0 = True
-1.0 > 1.0 = False
-1.0 > NaN = False
-NaN > 0.0 = False
-NaN > 1.0 = False
-NaN > NaN = False
-0.0 >= 0.0 = True
-0.0 >= 1.0 = False
-0.0 >= NaN = False
-1.0 >= 0.0 = True
-1.0 >= 1.0 = True
-1.0 >= NaN = False
-NaN >= 0.0 = False
-NaN >= 1.0 = False
-NaN >= NaN = False
-
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith017.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith017.hs
deleted file mode 100644
index 86048dcbe3..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith017.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! test for a bug in integer->{Int,Word}64 conversion in GHC 5.04.x
-
-import Data.Int
-import Data.Word
-
-main = do
- print (fromIntegral ((2^30 -1 + 2^30) - (2^30 + 2^30 :: Integer))
- :: Data.Int.Int64)
- print (fromIntegral ((2^30 -1 + 2^30) - (2^30 + 2^30 :: Integer))
- :: Data.Word.Word64)
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith017.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith017.stdout
deleted file mode 100644
index b234817560..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith017.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
--1
-18446744073709551615
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith018.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith018.hs
deleted file mode 100644
index b73fd5a685..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith018.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- exposes a bug in the native code generator in GHC 6.4.1. Division by
--- a power of 2 was being mis-optimsed to a direct shift.
-
-main = do
- print (map f4 [(-20) .. (-1)])
- print (map f8 [(-20) .. (-1)])
-
-f4 :: Int -> Int
-f4 x = x `quot` 4
-
-f8 :: Int -> Int
-f8 x = x `quot` 8
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith018.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith018.stdout
deleted file mode 100644
index 21f7af65f9..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith018.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-[-5,-4,-4,-4,-4,-3,-3,-3,-3,-2,-2,-2,-2,-1,-1,-1,-1,0,0,0]
-[-2,-2,-2,-2,-2,-1,-1,-1,-1,-1,-1,-1,-1,0,0,0,0,0,0,0]
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith019.hs b/testsuite/tests/ghc-regress/numeric/should_run/arith019.hs
deleted file mode 100644
index 861e9bc883..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith019.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- demonstrates a bug in mulIntMayOflo in GHC 6.5 on 64-bit arches
--- (trac #867).
--- It thought it could represent 3049800625 * 3049800625 in an I#.
-
-i :: Integer
-i = 3049800625
-
-main :: IO ()
-main = print (i * i)
-
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/arith019.stdout b/testsuite/tests/ghc-regress/numeric/should_run/arith019.stdout
deleted file mode 100644
index 3830f20e11..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/arith019.stdout
+++ /dev/null
@@ -1 +0,0 @@
-9301283852250390625
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/expfloat.hs b/testsuite/tests/ghc-regress/numeric/should_run/expfloat.hs
deleted file mode 100644
index fffa83d8f1..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/expfloat.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE MagicHash #-}
--- tests that expFloat# works (had linking problems on Windows)
-
-import GHC.Exts
-
-main = do
- print (F# (expFloat# 3.45#))
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/expfloat.stdout b/testsuite/tests/ghc-regress/numeric/should_run/expfloat.stdout
deleted file mode 100644
index 50eee0c4d6..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/expfloat.stdout
+++ /dev/null
@@ -1 +0,0 @@
-31.500393
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun009.hs b/testsuite/tests/ghc-regress/numeric/should_run/numrun009.hs
deleted file mode 100644
index 37d0513a39..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun009.hs
+++ /dev/null
@@ -1,17 +0,0 @@
--- !!! tests that minBound::Int is correctly handled (for Int & Integer
-
--- (not necessarily Haskell 98: relies on Int being a 32-bit type.)
-
-main = do
- print (-2147483648 :: Int) -- -2147483648
- print ((-2147483647)-1 :: Int) -- -2147483648
- print (-2147483648 :: Integer) -- -2147483648
- print ((-2147483648 :: Int) >= 0) -- False
- print ((-2147483648 :: Integer) >= 0) -- False
- print (-(-2147483648) :: Int) -- <undefined>
- print (abs (-2147483648) :: Int) -- <undefined>
- print (abs ((-2147483647)-1) :: Int) -- <undefined>
- print (abs (-2147483648) :: Integer) -- 2147483648
- print (abs ((-2147483647)-1) :: Integer) -- 2147483648 (wrong in 4.04)
- print (fromInteger (-2147483648 :: Integer) :: Int) -- -2147483648
- print (fromInteger ((-2147483647)-1 :: Integer) :: Int) -- -2147483648
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout b/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout
deleted file mode 100644
index 902e36915d..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout
+++ /dev/null
@@ -1,12 +0,0 @@
--2147483648
--2147483648
--2147483648
-False
-False
--2147483648
--2147483648
--2147483648
-2147483648
-2147483648
--2147483648
--2147483648
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-alpha-dec-osf3 b/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-alpha-dec-osf3
deleted file mode 100644
index 8d37dbc11e..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-alpha-dec-osf3
+++ /dev/null
@@ -1,12 +0,0 @@
--2147483648
--2147483648
--2147483648
-False
-False
-2147483648
-2147483648
-2147483648
-2147483648
-2147483648
--2147483648
--2147483648
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-mips-sgi-irix b/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-mips-sgi-irix
deleted file mode 100644
index 8d37dbc11e..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-mips-sgi-irix
+++ /dev/null
@@ -1,12 +0,0 @@
--2147483648
--2147483648
--2147483648
-False
-False
-2147483648
-2147483648
-2147483648
-2147483648
-2147483648
--2147483648
--2147483648
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-ws-64 b/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-ws-64
deleted file mode 100644
index 8d37dbc11e..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-ws-64
+++ /dev/null
@@ -1,12 +0,0 @@
--2147483648
--2147483648
--2147483648
-False
-False
-2147483648
-2147483648
-2147483648
-2147483648
-2147483648
--2147483648
--2147483648
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-x86_64-unknown-openbsd b/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-x86_64-unknown-openbsd
deleted file mode 100644
index 8d37dbc11e..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun009.stdout-x86_64-unknown-openbsd
+++ /dev/null
@@ -1,12 +0,0 @@
--2147483648
--2147483648
--2147483648
-False
-False
-2147483648
-2147483648
-2147483648
-2147483648
-2147483648
--2147483648
--2147483648
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun010.hs b/testsuite/tests/ghc-regress/numeric/should_run/numrun010.hs
deleted file mode 100644
index 027b5e8d76..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun010.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- !!! tests that local fixity declarations work
-
--- If local fixity decls don't work you get "14"
--- The right answer is "11"
-
-val = 3 +! 4 *! 2
- where (+!) = (+)
- (*!) = (*)
- infixl 6 +!
- infixl 7 *!
-
-main = print val
-
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun010.stdout b/testsuite/tests/ghc-regress/numeric/should_run/numrun010.stdout
deleted file mode 100644
index b4de394767..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun010.stdout
+++ /dev/null
@@ -1 +0,0 @@
-11
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun011.hs b/testsuite/tests/ghc-regress/numeric/should_run/numrun011.hs
deleted file mode 100644
index d259613d2f..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun011.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-import Data.Ratio
-main = print (fromRational (1 % 85070591730234615865843651857942052864) :: Float)
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun011.stdout b/testsuite/tests/ghc-regress/numeric/should_run/numrun011.stdout
deleted file mode 100644
index 202e6ca9d7..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun011.stdout
+++ /dev/null
@@ -1 +0,0 @@
-1.1754944e-38
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun012.hs b/testsuite/tests/ghc-regress/numeric/should_run/numrun012.hs
deleted file mode 100644
index df8c69040c..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun012.hs
+++ /dev/null
@@ -1,35 +0,0 @@
-
--- Test for trac #921
-
-import GHC.Float
-import Foreign
-import Control.Monad
-
-main :: IO ()
-main = do -- The reported case
- putStrLn (show (map log2 vals))
- -- Smaller failing cases
- print (fromIntegral ((2^31) :: Int) :: Double)
- if_not_32 $ print (round ((2^33) :: Double) :: Int)
- print (fromIntegral ((2^31) :: Int) :: Float)
- if_not_32 $ print (round ((2^33) :: Float) :: Int)
- -- The underlying failing internal operations
- print (int2Double (2^31))
- if_not_32 $ print (double2Int (2^33))
- print (int2Float (2^31))
- if_not_32 $ print (float2Int (2^33))
- where
- -- the value of float2Int x where the result would be outside the
- -- range of the target is undefined. We also take the view in GHC
- -- that round and truncate are similarly undefined when the result
- -- would be outside the range of the target type (see #1254)
- if_not_32 = when (sizeOf (undefined::Int) > 4)
-
-log2 x = ceiling log_x
- where log_x :: Double
- log_x = logBase 2 (fromIntegral (max 1 x))
-
-vals = [1, 2, 17, 259, 1000, 10000,
- 2^30 + 9000, 2^31 - 1, 2^31, 2^31 + 1,
- 2^32 - 1, 2^32, 2^32 + 1]
-
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun012.stdout b/testsuite/tests/ghc-regress/numeric/should_run/numrun012.stdout
deleted file mode 100644
index f94829ccfd..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun012.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-[0,1,5,9,10,14,31,31,32,32,32,32,33]
--2.147483648e9
--2.1474836e9
--2.147483648e9
--2.1474836e9
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun012.stdout-ws-64 b/testsuite/tests/ghc-regress/numeric/should_run/numrun012.stdout-ws-64
deleted file mode 100644
index ffd0389201..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun012.stdout-ws-64
+++ /dev/null
@@ -1,9 +0,0 @@
-[0,1,5,9,10,14,31,31,32,32,32,32,33]
-2.147483648e9
-8589934592
-2.1474836e9
-8589934592
-2.147483648e9
-8589934592
-2.1474836e9
-8589934592
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun013.hs b/testsuite/tests/ghc-regress/numeric/should_run/numrun013.hs
deleted file mode 100644
index 93fe56f74c..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun013.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-
--- Test for trac #1042
-
-import Control.Exception
-import Data.Int
-import Prelude hiding (catch)
-
-main :: IO ()
-main = do print ((minBound :: Int) `div` (-1)) `myCatch` print
- print ((minBound :: Int8) `div` (-1)) `myCatch` print
- print ((minBound :: Int16) `div` (-1)) `myCatch` print
- print ((minBound :: Int32) `div` (-1)) `myCatch` print
- print ((minBound :: Int64) `div` (-1)) `myCatch` print
-
-myCatch :: IO a -> (ArithException -> IO a) -> IO a
-myCatch = catch
-
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun013.stdout b/testsuite/tests/ghc-regress/numeric/should_run/numrun013.stdout
deleted file mode 100644
index 605f8e7cc0..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun013.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-arithmetic overflow
-arithmetic overflow
-arithmetic overflow
-arithmetic overflow
-arithmetic overflow
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun014.hs b/testsuite/tests/ghc-regress/numeric/should_run/numrun014.hs
deleted file mode 100644
index 207e7663c0..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun014.hs
+++ /dev/null
@@ -1,211 +0,0 @@
-
--- Test that we don't have rules (or othre optimisations) doing the
--- wrong thing for constant folding with Doubles.
-
-module Main (main) where
-
-zero :: Double
-zero = 0
-
-one :: Double
-one = 1
-
-nan :: Double
-nan = 0 / 0
-
-inf :: Double
-inf = 1 / 0
-
-neginf :: Double
-neginf = -1 / 0
-
-fzero :: Float
-fzero = 0
-
-fone :: Float
-fone = 1
-
-fnan :: Float
-fnan = 0 / 0
-
-finf :: Float
-finf = 1 / 0
-
-fneginf :: Float
-fneginf = -1 / 0
-
-main :: IO ()
-main = do putStrLn "=== Subtraction ==="
- print (zero - zero)
- print (zero - nan)
- print (zero - inf)
- print (zero - neginf)
- print (nan - zero)
- print (nan - nan)
- print (nan - inf)
- print (nan - neginf)
- print (inf - zero)
- print (inf - nan)
- print (inf - inf)
- print (inf - neginf)
- print (neginf - zero)
- print (neginf - nan)
- print (neginf - inf)
- print (neginf - neginf)
- putStrLn "=== Addition ==="
- print (zero + zero)
- print (zero + nan)
- print (zero + inf)
- print (zero + neginf)
- print (nan + zero)
- print (nan + nan)
- print (nan + inf)
- print (nan + neginf)
- print (inf + zero)
- print (inf + nan)
- print (inf + inf)
- print (inf + neginf)
- print (neginf + zero)
- print (neginf + nan)
- print (neginf + inf)
- print (neginf + neginf)
- putStrLn "=== Mutiplication ==="
- print (zero * zero)
- print (zero * one)
- print (zero * nan)
- print (zero * inf)
- print (zero * neginf)
- print (one * zero)
- print (one * one)
- print (one * nan)
- print (one * inf)
- print (one * neginf)
- print (nan * zero)
- print (nan * one)
- print (nan * nan)
- print (nan * inf)
- print (nan * neginf)
- print (inf * zero)
- print (inf * one)
- print (inf * nan)
- print (inf * inf)
- print (inf * neginf)
- print (neginf * zero)
- print (neginf * one)
- print (neginf * nan)
- print (neginf * inf)
- print (neginf * neginf)
- putStrLn "=== Division ==="
- print (zero / zero)
- print (zero / one)
- print (zero / nan)
- print (zero / inf)
- print (zero / neginf)
- print (one / zero)
- print (one / one)
- print (one / nan)
- print (one / inf)
- print (one / neginf)
- print (nan / zero)
- print (nan / one)
- print (nan / nan)
- print (nan / inf)
- print (nan / neginf)
- print (inf / zero)
- print (inf / one)
- print (inf / nan)
- print (inf / inf)
- print (inf / neginf)
- print (neginf / zero)
- print (neginf / one)
- print (neginf / nan)
- print (neginf / inf)
- print (neginf / neginf)
-
- putStrLn "=== Subtraction ==="
- print (fzero - fzero)
- print (fzero - fnan)
- print (fzero - finf)
- print (fzero - fneginf)
- print (fnan - fzero)
- print (fnan - fnan)
- print (fnan - finf)
- print (fnan - fneginf)
- print (finf - fzero)
- print (finf - fnan)
- print (finf - finf)
- print (finf - fneginf)
- print (fneginf - fzero)
- print (fneginf - fnan)
- print (fneginf - finf)
- print (fneginf - fneginf)
- putStrLn "=== Addition ==="
- print (fzero + fzero)
- print (fzero + fnan)
- print (fzero + finf)
- print (fzero + fneginf)
- print (fnan + fzero)
- print (fnan + fnan)
- print (fnan + finf)
- print (fnan + fneginf)
- print (finf + fzero)
- print (finf + fnan)
- print (finf + finf)
- print (finf + fneginf)
- print (fneginf + fzero)
- print (fneginf + fnan)
- print (fneginf + finf)
- print (fneginf + fneginf)
- putStrLn "=== Mutiplication ==="
- print (fzero * fzero)
- print (fzero * fone)
- print (fzero * fnan)
- print (fzero * finf)
- print (fzero * fneginf)
- print (fone * fzero)
- print (fone * fone)
- print (fone * fnan)
- print (fone * finf)
- print (fone * fneginf)
- print (fnan * fzero)
- print (fnan * fone)
- print (fnan * fnan)
- print (fnan * finf)
- print (fnan * fneginf)
- print (finf * fzero)
- print (finf * fone)
- print (finf * fnan)
- print (finf * finf)
- print (finf * fneginf)
- print (fneginf * fzero)
- print (fneginf * fone)
- print (fneginf * fnan)
- print (fneginf * finf)
- print (fneginf * fneginf)
- putStrLn "=== Division ==="
- print (fzero / fzero)
- print (fzero / fone)
- print (fzero / fnan)
- print (fzero / finf)
- print (fzero / fneginf)
- print (fone / fzero)
- print (fone / fone)
- print (fone / fnan)
- print (fone / finf)
- print (fone / fneginf)
- print (fnan / fzero)
- print (fnan / fone)
- print (fnan / fnan)
- print (fnan / finf)
- print (fnan / fneginf)
- print (finf / fzero)
- print (finf / fone)
- print (finf / fnan)
- print (finf / finf)
- print (finf / fneginf)
- print (fneginf / fzero)
- print (fneginf / fone)
- print (fneginf / fnan)
- print (fneginf / finf)
- print (fneginf / fneginf)
-
diff --git a/testsuite/tests/ghc-regress/numeric/should_run/numrun014.stdout b/testsuite/tests/ghc-regress/numeric/should_run/numrun014.stdout
deleted file mode 100644
index 3bcfad620d..0000000000
--- a/testsuite/tests/ghc-regress/numeric/should_run/numrun014.stdout
+++ /dev/null
@@ -1,172 +0,0 @@
-=== Subtraction ===
-0.0
-NaN
--Infinity
-Infinity
-NaN
-NaN
-NaN
-NaN
-Infinity
-NaN
-NaN
-Infinity
--Infinity
-NaN
--Infinity
-NaN
-=== Addition ===
-0.0
-NaN
-Infinity
--Infinity
-NaN
-NaN
-NaN
-NaN
-Infinity
-NaN
-Infinity
-NaN
--Infinity
-NaN
-NaN
--Infinity
-=== Mutiplication ===
-0.0
-0.0
-NaN
-NaN
-NaN
-0.0
-1.0
-NaN
-Infinity
--Infinity
-NaN
-NaN
-NaN
-NaN
-NaN
-NaN
-Infinity
-NaN
-Infinity
--Infinity
-NaN
--Infinity
-NaN
--Infinity
-Infinity
-=== Division ===
-NaN
-0.0
-NaN
-0.0
--0.0
-Infinity
-1.0
-NaN
-0.0
--0.0
-NaN
-NaN
-NaN
-NaN
-NaN
-Infinity
-Infinity
-NaN
-NaN
-NaN
--Infinity
--Infinity
-NaN
-NaN
-NaN
-=== Subtraction ===
-0.0
-NaN
--Infinity
-Infinity
-NaN
-NaN
-NaN
-NaN
-Infinity
-NaN
-NaN
-Infinity
--Infinity
-NaN
--Infinity
-NaN
-=== Addition ===
-0.0
-NaN
-Infinity
--Infinity
-NaN
-NaN
-NaN
-NaN
-Infinity
-NaN
-Infinity
-NaN
--Infinity
-NaN
-NaN
--Infinity
-=== Mutiplication ===
-0.0
-0.0
-NaN
-NaN
-NaN
-0.0
-1.0
-NaN
-Infinity
--Infinity
-NaN
-NaN
-NaN
-NaN
-NaN
-NaN
-Infinity
-NaN
-Infinity
--Infinity
-NaN
--Infinity
-NaN
--Infinity
-Infinity
-=== Division ===
-NaN
-0.0
-NaN
-0.0
--0.0
-Infinity
-1.0
-NaN
-0.0
--0.0
-NaN
-NaN
-NaN
-NaN
-NaN
-Infinity
-Infinity
-NaN
-NaN
-NaN
--Infinity
--Infinity
-NaN
-NaN
-NaN
diff --git a/testsuite/tests/ghc-regress/parser/Makefile b/testsuite/tests/ghc-regress/parser/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/parser/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/parser/prog001/Makefile b/testsuite/tests/ghc-regress/parser/prog001/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/parser/prog001/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/parser/prog001/Read006.hs b/testsuite/tests/ghc-regress/parser/prog001/Read006.hs
deleted file mode 100644
index 87546cb550..0000000000
--- a/testsuite/tests/ghc-regress/parser/prog001/Read006.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Testing handling of troublesome constructor name (:::)
-module Read006 (MyList(Empty, (:::))) where
-
-data MyList a = Empty
- | (MyList a) ::: (MyList a)
diff --git a/testsuite/tests/ghc-regress/parser/prog001/Read007.hs b/testsuite/tests/ghc-regress/parser/prog001/Read007.hs
deleted file mode 100644
index a0c2ec0f44..0000000000
--- a/testsuite/tests/ghc-regress/parser/prog001/Read007.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module ShouldCompile where
-
-import Read006
-
-myLength :: MyList a -> Int
-myLength Empty = 0
-myLength (x ::: xs) = 1 + myLength xs
-
diff --git a/testsuite/tests/ghc-regress/parser/prog001/test.T b/testsuite/tests/ghc-regress/parser/prog001/test.T
deleted file mode 100644
index b667211196..0000000000
--- a/testsuite/tests/ghc-regress/parser/prog001/test.T
+++ /dev/null
@@ -1,4 +0,0 @@
-test('parser.prog001',
- extra_clean(['Read006.hi', 'Read006.o', 'Read007.hi', 'Read007.o']),
- multimod_compile,
- ['Read007.hs', '-v0'])
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/DoAndIfThenElse.hs b/testsuite/tests/ghc-regress/parser/should_compile/DoAndIfThenElse.hs
deleted file mode 100644
index 5bfb6edc86..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/DoAndIfThenElse.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-{-# LANGUAGE DoAndIfThenElse #-}
-
-module DoAndIfThenElse where
-
-foo :: IO ()
-foo = do if True
- then return ()
- else return ()
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/EmptyDecls.hs b/testsuite/tests/ghc-regress/parser/should_compile/EmptyDecls.hs
deleted file mode 100644
index 9583f23e32..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/EmptyDecls.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module Main where {
-
-f x = x;
-;
-;
-g y z = z;
-
-main = print (g (f False) (f True));
-}
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/Makefile b/testsuite/tests/ghc-regress/parser/should_compile/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/NondecreasingIndentation.hs b/testsuite/tests/ghc-regress/parser/should_compile/NondecreasingIndentation.hs
deleted file mode 100644
index 05273097ed..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/NondecreasingIndentation.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-{-# LANGUAGE NondecreasingIndentation #-}
-
-module ShouldCompile where
-
-f :: IO ()
-f = do if True then f else do
- f
- if True then f else do
- f
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/T2245.hs b/testsuite/tests/ghc-regress/parser/should_compile/T2245.hs
deleted file mode 100644
index bf8287ba33..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/T2245.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-default (T)
-
-data T = T deriving (Eq, Ord, Read, Show)
-instance Num T
-instance Fractional T
-
-main = interact $ show . (< 1e400) . read \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/T2245.stderr b/testsuite/tests/ghc-regress/parser/should_compile/T2245.stderr
deleted file mode 100644
index b1754ff0c5..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/T2245.stderr
+++ /dev/null
@@ -1,34 +0,0 @@
-
-T2245.hs:4:10:
- Warning: No explicit method nor default method for `+'
- In the instance declaration for `Num T'
-
-T2245.hs:4:10:
- Warning: No explicit method nor default method for `*'
- In the instance declaration for `Num T'
-
-T2245.hs:4:10:
- Warning: No explicit method nor default method for `abs'
- In the instance declaration for `Num T'
-
-T2245.hs:4:10:
- Warning: No explicit method nor default method for `signum'
- In the instance declaration for `Num T'
-
-T2245.hs:4:10:
- Warning: No explicit method nor default method for `fromInteger'
- In the instance declaration for `Num T'
-
-T2245.hs:5:10:
- Warning: No explicit method nor default method for `fromRational'
- In the instance declaration for `Fractional T'
-
-T2245.hs:7:29:
- Warning: Defaulting the following constraint(s) to type `T'
- (Fractional b0) arising from the literal `1e400'
- at T2245.hs:7:29-33
- (Ord b0) arising from a use of `<' at T2245.hs:7:27
- (Read b0) arising from a use of `read' at T2245.hs:7:38-41
- In the second argument of `(<)', namely `1e400'
- In the first argument of `(.)', namely `(< 1e400)'
- In the second argument of `(.)', namely `(< 1e400) . read'
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/T3303.hs b/testsuite/tests/ghc-regress/parser/should_compile/T3303.hs
deleted file mode 100644
index 08de52e6cd..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/T3303.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-module T3303 where
-
-import T3303A
-
-bar :: Int
-bar = foo
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/T3303.stderr b/testsuite/tests/ghc-regress/parser/should_compile/T3303.stderr
deleted file mode 100644
index 6e0b5629b3..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/T3303.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-T3303.hs:4:1:
- Warning: In the use of `foo'
- (imported from T3303A):
- Deprecated: "This is a multi-line
- deprecation message
- for foo"
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/T3303A.hs b/testsuite/tests/ghc-regress/parser/should_compile/T3303A.hs
deleted file mode 100644
index daa4bfb91d..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/T3303A.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-module T3303A where
-
-{-# DEPRECATED foo
- ["This is a multi-line",
- "deprecation message",
- "for foo"] #-}
-foo :: Int
-foo = 4
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/T3741.hs b/testsuite/tests/ghc-regress/parser/should_compile/T3741.hs
deleted file mode 100644
index 20d5c2d095..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/T3741.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-笑 :: Int
-笑 = 3
-
-main = print 笑
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/T5243.hs b/testsuite/tests/ghc-regress/parser/should_compile/T5243.hs
deleted file mode 100644
index e58ace299b..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/T5243.hs
+++ /dev/null
@@ -1 +0,0 @@
- { import T5243A; main = print bar }
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/T5243.stderr b/testsuite/tests/ghc-regress/parser/should_compile/T5243.stderr
deleted file mode 100644
index 450e001237..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/T5243.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-[1 of 2] Compiling T5243A ( T5243A.hs, T5243A.o )
-[2 of 2] Compiling Main ( T5243.hs, T5243.o )
-Linking T5243 ...
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/T5243A.hs b/testsuite/tests/ghc-regress/parser/should_compile/T5243A.hs
deleted file mode 100644
index 2332c84004..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/T5243A.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module T5243A where
-bar = True
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/all.T b/testsuite/tests/ghc-regress/parser/should_compile/all.T
deleted file mode 100644
index 328c0651c3..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/all.T
+++ /dev/null
@@ -1,94 +0,0 @@
-
-test('read001', normal, compile, [''])
-test('read002', normal, compile, [''])
-test('read003', normal, compile, [''])
-test('read004', normal, compile, [''])
-test('read005', normal, compile, [''])
-
-# Missing:
-# test('read006', normal, compile, [''])
-# test('read007', normal, compile, [''])
-
-test('read008', normal, compile, [''])
-test('read009', normal, compile, [''])
-test('read010', normal, compile, [''])
-test('read011', normal, compile, [''])
-
-# Missing:
-# test('read012', normal, compile, [''])
-# test('read013', normal, compile, [''])
-
-test('read014', normal, compile, ['-Wall -fno-warn-orphans'])
-test('read015', normal, compile, [''])
-test('read016', normal, compile, [''])
-test('read017', normal, compile, [''])
-test('read018', normal, compile, [''])
-test('read019', normal, compile, [''])
-
-# Missing:
-# test('read020', normal, compile, [''])
-
-test('read021', normal, compile, [''])
-test('read022', normal, compile, [''])
-
-# we don't support strict Haskell 98 with respect to qualified identifiers
-# any more (read023), see #1215. This test is in fact incorrect Haskell 98
-# anyway, so expect_fail would be wrong.
-test('read023', skip, compile, [''])
-
-test('read024', normal, compile, [''])
-test('read025', normal, compile, [''])
-test('read026', normal, compile, [''])
-test('read027', normal, compile, [''])
-test('read028', normal, compile, [''])
-test('read029', normal, compile, [''])
-test('read030', normal, compile, [''])
-test('read031', normal, compile, [''])
-test('read032', normal, compile, [''])
-test('read033', if_compiler_type('hugs', expect_fail), compile, [''])
-test('read034', if_compiler_type('hugs', expect_fail), compile, [''])
-test('read036', normal, compile, [''])
-test('read037', normal, compile, [''])
-test('read038', normal, compile, [''])
-test('read039', normal, compile, ['-fno-code'])
-test('read040', normal, compile, [''])
-test('read041', literate, compile, [''])
-test('read042', normal, compile, [''])
-test('read043', normal, compile, [''])
-test('read044', normal, compile, [''])
-test('read045', normal, compile, [''])
-test('read046', normal, compile, [''])
-test('read047', normal, compile, [''])
-test('read048', normal, compile, [''])
-test('read049', normal, compile, [''])
-test('read050', normal, compile, [''])
-test('read051', normal, compile, [''])
-test('read052', normal, compile, [''])
-test('read053', normal, compile, [''])
-test('read054', normal, compile, [''])
-test('read055', normal, compile, [''])
-test('read056', normal, compile, [''])
-test('read057', normal, compile, [''])
-test('read058', omit_ways(['profc']), compile, [''])
-test('read059', omit_ways(['profc']), compile, [''])
-test('read060', normal, compile, [''])
-test('read061', normal, compile, [''])
-test('read062', normal, compile, [''])
-test('read063', normal, compile, [''])
-test('read064', normal, compile, [''])
-test('read066', normal, compile, [''])
-test('read067', normal, compile, [''])
-test('read068', normal, compile, [''])
-test('read069', normal, compile, [''])
-test('read_1821', normal, compile, [''])
-test('T2245', normal, compile, ['-fwarn-type-defaults'])
-test('T3303', extra_clean(['T3303A.hi', 'T3303A.o']),
- multimod_compile, ['T3303', '-v0'])
-test('T3741', normal, compile, [''])
-test('DoAndIfThenElse', normal, compile, [''])
-test('NondecreasingIndentation', normal, compile, [''])
-test('mc15', normal, compile, [''])
-test('mc16', normal, compile, [''])
-test('EmptyDecls', normal, compile, [''])
-
-test('T5243', normal, multimod_compile, ['T5243',''])
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/mc15.hs b/testsuite/tests/ghc-regress/parser/should_compile/mc15.hs
deleted file mode 100644
index 2976694803..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/mc15.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
-{-# LANGUAGE MonadComprehensions, ParallelListComp #-}
-
-module Foo where
-
-import Control.Monad.Zip
-
-foo :: (MonadZip m, Monad m) => m ()
-foo = [ ()
- | () <- foo
- | () <- foo
- ]
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/mc16.hs b/testsuite/tests/ghc-regress/parser/should_compile/mc16.hs
deleted file mode 100644
index 3f80c04abb..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/mc16.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp #-}
-
-module Foo where
-
-import Data.List
-import GHC.Exts
-
-foo = [ ()
- | x <- [1..10]
- , then take 5
- , then sortWith by x
- , then group by x
- , then group using inits
- , then group by x using groupWith
- ]
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read001.hs b/testsuite/tests/ghc-regress/parser/should_compile/read001.hs
deleted file mode 100644
index d0a84ff7e5..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read001.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! import qualified Prelude should leave (), [] etc in scope
-
-module ShouldCompile where
-
-import qualified Prelude
-
-f :: Prelude.IO ()
-f = Prelude.return ()
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read002.hs b/testsuite/tests/ghc-regress/parser/should_compile/read002.hs
deleted file mode 100644
index 5b069fe2c6..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read002.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !!! tests fixity reading and printing
-module ShouldCompile where
-
-infixl 1 `f`
-infixr 2 \\\
-infix 3 :==>
-infix 4 `MkFoo`
-
-data Foo = MkFoo Int | Float :==> Double
-
-x `f` y = x
-
-(\\\) :: (Eq a) => [a] -> [a] -> [a]
-(\\\) xs ys = xs
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read002.stderr b/testsuite/tests/ghc-regress/parser/should_compile/read002.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read002.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read003.hs b/testsuite/tests/ghc-regress/parser/should_compile/read003.hs
deleted file mode 100644
index afc3a21007..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read003.hs
+++ /dev/null
@@ -1,20 +0,0 @@
--- !!! Testing layout rule
-module ShouldCompile where
-
-l1 :: IO ()
-l1 = do
- return a
- where
- a = ()
-
-l2 :: IO ()
-l2 = do
- return a
- where
- a = ()
-
-l3 :: IO ()
-l3 = do
- return a
- where
- a = ()
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read004.hs b/testsuite/tests/ghc-regress/parser/should_compile/read004.hs
deleted file mode 100644
index 0741d0cd92..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read004.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-module ShouldCompile where
-
-{-
-From: Kevin Hammond <kh>
-To: partain
-Subject: Re: parsing problem w/ queens
-Date: Wed, 9 Oct 91 17:31:46 BST
-
-OK, I've fixed that little problem by disallowing,
--}
-
-f x = x + if True then 1 else 2
-g x = x + 1::Int
-
--- (the conditional/sig need to be parenthesised). If this is
--- problematic, let me know!
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read005.hs b/testsuite/tests/ghc-regress/parser/should_compile/read005.hs
deleted file mode 100644
index 6e2c575902..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read005.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldCompile where
-
--- !!! Empty comments terminating a file..
-main = print "Hello" --
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read007.stderr b/testsuite/tests/ghc-regress/parser/should_compile/read007.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read007.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read008.hs b/testsuite/tests/ghc-regress/parser/should_compile/read008.hs
deleted file mode 100644
index 20060b0c4d..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read008.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldCompile where
-
-{-# SPECIALISE f :: Int -> Int #-}
-f n = n + 1
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read009.hs b/testsuite/tests/ghc-regress/parser/should_compile/read009.hs
deleted file mode 100644
index 5294012de1..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read009.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! combining undeclared infix operators
-module ShouldCompile where
-
--- should default to 'infixl 9'
-
-test = let f x y = x+y in 1 `f` 2 `f` 3
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read010.hs b/testsuite/tests/ghc-regress/parser/should_compile/read010.hs
deleted file mode 100644
index d20f5fcc86..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read010.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Infix record constructor.
-module ShouldCompile where
-
-data Rec = (:<-:) { a :: Int, b :: Float }
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read010.stderr b/testsuite/tests/ghc-regress/parser/should_compile/read010.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read010.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read011.hs b/testsuite/tests/ghc-regress/parser/should_compile/read011.hs
deleted file mode 100644
index 7e20d468f0..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read011.hs
+++ /dev/null
@@ -1,24 +0,0 @@
--- !!! do & where interaction
-module ShouldCompile where
-
-f1 :: IO a -> IO [a]
-f1 x = do
- v <- x
- return [v]
- where
- g x = [x,x]
-
-f2 :: IO a -> IO [a]
-f2 x = do
- v <- x
- return (g v)
- where
- g x = [x,x]
-
-f3 :: IO a -> IO [a]
-f3 x = do
- v <- x
- return (g v)
- where
- g x = [x,x]
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read014.hs b/testsuite/tests/ghc-regress/parser/should_compile/read014.hs
deleted file mode 100644
index 55fc053a8b..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read014.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! Empty export lists are legal (and useful.)
-module ShouldCompile () where
-
-ng1 x y = negate y
-
-instance (Num a, Num b) => Num (a,b)
- where
- negate (a,b) = (ng 'c' a, ng1 'c' b) where ng x y = negate y
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read014.stderr-ghc b/testsuite/tests/ghc-regress/parser/should_compile/read014.stderr-ghc
deleted file mode 100644
index 85f36b16da..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read014.stderr-ghc
+++ /dev/null
@@ -1,28 +0,0 @@
-
-read014.hs:4:1:
- Warning: Top-level binding with no type signature:
- ng1 :: forall t a. Num a => t -> a -> a
-
-read014.hs:4:5: Warning: Defined but not used: `x'
-
-read014.hs:6:10:
- Warning: No explicit method nor default method for `+'
- In the instance declaration for `Num (a, b)'
-
-read014.hs:6:10:
- Warning: No explicit method nor default method for `*'
- In the instance declaration for `Num (a, b)'
-
-read014.hs:6:10:
- Warning: No explicit method nor default method for `abs'
- In the instance declaration for `Num (a, b)'
-
-read014.hs:6:10:
- Warning: No explicit method nor default method for `signum'
- In the instance declaration for `Num (a, b)'
-
-read014.hs:6:10:
- Warning: No explicit method nor default method for `fromInteger'
- In the instance declaration for `Num (a, b)'
-
-read014.hs:8:53: Warning: Defined but not used: `x'
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read015.hs b/testsuite/tests/ghc-regress/parser/should_compile/read015.hs
deleted file mode 100644
index 7ba6140662..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read015.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- !!! Testing whether the parser likes empty declarations..
-module ShouldCompile where { ;;;;;x=let{;;;;;y=2;;;;}in y;;;;;}
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read016.hs b/testsuite/tests/ghc-regress/parser/should_compile/read016.hs
deleted file mode 100644
index 5c482f510d..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read016.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! Checking that both import lists and 'hiding' lists might
--- !!! be empty.
-module ShouldCompile where
-
-import Data.List ()
-import Data.List hiding ()
-
-x :: Int
-x = 1
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read017.hs b/testsuite/tests/ghc-regress/parser/should_compile/read017.hs
deleted file mode 100644
index 4349cb27ca..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read017.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- !!! Checking that empty declarations are permitted.
-module ShouldCompile where
-
-
-class Foo a where
-
-class Foz a
-
-x = 2 where
-y = 3
-
-instance Foo Int where
-
-f = f where g = g where
-type T = Int
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read018.hs b/testsuite/tests/ghc-regress/parser/should_compile/read018.hs
deleted file mode 100644
index 91eef518be..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read018.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE DatatypeContexts #-}
--- !!! Checking that empty contexts are permitted.
-module ShouldCompile where
-
-data () => Foo a = Foo a
-
-newtype () => Bar = Bar Int
-
-f :: () => Int -> Int
-f = (+1)
-
-
-class () => Fob a where
-
-instance () => Fob Int where
-instance () => Fob Float
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read018.stderr b/testsuite/tests/ghc-regress/parser/should_compile/read018.stderr
deleted file mode 100644
index 30d1315840..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read018.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-read018.hs:1:14:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read019.hs b/testsuite/tests/ghc-regress/parser/should_compile/read019.hs
deleted file mode 100644
index 3de6a9b71d..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read019.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! Checking what's legal in the body of a class declaration.
-module ShouldCompile where
-
-class Foo a where {
- (--<>--) :: a -> a -> Int ;
- infixl 5 --<>-- ;
- (--<>--) _ _ = 2 ; -- empty decl at the end.
-};
-
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read021.hs b/testsuite/tests/ghc-regress/parser/should_compile/read021.hs
deleted file mode 100644
index 8d5856e9b6..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read021.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! Empty export list
-
-module ShouldCompile() where
-
-instance Show (a->b) where
- show f = "<<function>>"
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read022.hs b/testsuite/tests/ghc-regress/parser/should_compile/read022.hs
deleted file mode 100644
index 4ab04cabb8..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read022.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
-module ShouldCompile where
-
-f (x :: Int) = x + 1
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read023.hs b/testsuite/tests/ghc-regress/parser/should_compile/read023.hs
deleted file mode 100644
index 3410afe946..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read023.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-module ShouldCompile where
-
--- M.<keyword> isn't a qualified identifier
-f = Just.let x=id in x
-
--- ---------------------------------------------------------------------------
--- we changed the behaviour of this one in GHC, but the following test
--- is strictly speaking legal Haskell:
-
--- f' = Just.\1 where (.\) = ($)
-
--- -----------------------------------------------------
--- M.{as,hiding,qualified} *are* qualified identifiers:
-
-g = ShouldCompile.as
-
--- ---------------------------------------------------------------------------
--- special symbols (!, -) can be qualified to make varids.
-
-g' = (ShouldCompile.!)
-
-as x = x
-(!) x = x
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read024.hs b/testsuite/tests/ghc-regress/parser/should_compile/read024.hs
deleted file mode 100644
index f00ddb002c..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read024.hs
+++ /dev/null
@@ -1,33 +0,0 @@
--- !!! checking that special ids are correctly handled.
-module ShouldCompile where
-
-as :: [as]
-as = [head as]
-
-qualified :: [qualified]
-qualified = [head qualified]
-
-hiding :: [hiding]
-hiding = [head hiding]
-
-export :: [export]
-export = [head export]
-
-label :: [label]
-label = [head label]
-
-dynamic :: [dynamic]
-dynamic = [head dynamic]
-
-unsafe :: [unsafe]
-unsafe = [head unsafe]
-
-interruptible :: [interruptible]
-interruptible = [head interruptible]
-
-stdcall :: [stdcall]
-stdcall = [head stdcall]
-
-ccall :: [ccall]
-ccall = [head ccall]
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read025.hs b/testsuite/tests/ghc-regress/parser/should_compile/read025.hs
deleted file mode 100644
index 7eca04e85c..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read025.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! Check the handling of 'qualified' and 'as' clauses
-module ShouldCompile where
-
-import Data.List as L ( intersperse )
-
-x = L.intersperse
-
-y = intersperse
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read026.hs b/testsuite/tests/ghc-regress/parser/should_compile/read026.hs
deleted file mode 100644
index 0ea695d373..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read026.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldCompile where
-
-(<>) :: (a -> Maybe b) -> (b -> Maybe c) -> (a -> Maybe c)
-(m1 <> m2) a1 = case m1 a1 of
- Nothing -> Nothing
- Just a2 -> m2 a2
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read027.hs b/testsuite/tests/ghc-regress/parser/should_compile/read027.hs
deleted file mode 100644
index a6893450f8..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read027.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-module ShouldCompile where
-
-infix 5 |-
-infix 9 :=
-
-data Equal = Char := Int
-
--- fails in GHC (all versions), due to not doing fixity resolution on
--- the lhs before deciding which is the function symbol.
-
-(|-) :: Int -> Equal -> Bool
-0 |- x:=y = 1 |- x:=y -- XXX fails here
-2 |- (x:=y) = 0 |- x:=y
-_ |- _ = False
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read028.hs b/testsuite/tests/ghc-regress/parser/should_compile/read028.hs
deleted file mode 100644
index 1f193a4584..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read028.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldCompile where
-
-data T a b = (:^:) a b
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read029.hs b/testsuite/tests/ghc-regress/parser/should_compile/read029.hs
deleted file mode 100644
index 1a9e5c1c9e..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read029.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !!! Special Ids and ops
-
--- The special ids 'as', 'qualified' and 'hiding' should be
--- OK in both qualified and unqualified form.
--- Ditto special ops
-
-module ShouldCompile where
-import Prelude hiding ( (-) )
-
-as = ShouldCompile.as
-hiding = ShouldCompile.hiding
-qualified = ShouldCompile.qualified
-x!y = x ShouldCompile.! y
-x-y = x ShouldCompile.- y
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read030.hs b/testsuite/tests/ghc-regress/parser/should_compile/read030.hs
deleted file mode 100644
index 26883024ee..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read030.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! Infix decls w/ infix data constructors
-
--- GHC used to barf on this...
-
-module ShouldCompile where
-
-infix 2 |-, |+
-
-ps |- q:qs = undefined
-ps |+ p:q:qs = undefined
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read031.hs b/testsuite/tests/ghc-regress/parser/should_compile/read031.hs
deleted file mode 100644
index d19f120ffd..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read031.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! "--" can start a legal lexeme
-
-module ShouldCompile where
-
-infix 2 --+, -->
-
-ps --> True = True
-
-(--+) a b = a && b
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read032.hs b/testsuite/tests/ghc-regress/parser/should_compile/read032.hs
deleted file mode 100644
index 634f6b5fa9..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read032.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldCompile where
-
--- !!! Record declarations with zero fields are allowed
-data Foo = Foo{}
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read033.hs b/testsuite/tests/ghc-regress/parser/should_compile/read033.hs
deleted file mode 100644
index 2c8faf0343..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read033.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldCompile where
-
-x = const 1.0e+x where e = 3
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read034.hs b/testsuite/tests/ghc-regress/parser/should_compile/read034.hs
deleted file mode 100644
index 4fa7152f40..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read034.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module ShouldCompile where
-
--- !!! Section precedences
-
--- infixl 6 +, -
--- infixr 5 ++, :
-
-f = (++ [] ++ [])
-g = (3 + 4 +)
-
--- prefix negation is like infixl 6.
-h x = (-x -)
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read036.hs b/testsuite/tests/ghc-regress/parser/should_compile/read036.hs
deleted file mode 100644
index 81485f5a0f..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read036.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldCompile where
-
-f :: Double
-f = 42e42 -- this should be a float
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read037.hs b/testsuite/tests/ghc-regress/parser/should_compile/read037.hs
deleted file mode 100644
index a9f822cc03..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read037.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldCompile where
-
--- This file contains several non-breaking space characters,
--- aka '\xa0'.  The compiler should recognise these as whitespace.
-                          
-f = ( + ) 
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read038.hs b/testsuite/tests/ghc-regress/parser/should_compile/read038.hs
deleted file mode 100644
index 30e20774fa..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read038.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldCompile where
-a ---> b = a + a
-foo = 3
- ---> 4
- ---> 5
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read039.hs b/testsuite/tests/ghc-regress/parser/should_compile/read039.hs
deleted file mode 100644
index 032c64f624..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read039.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface, CPP #-}
--- Test the LANGUAGE pragma
-module ShouldCompile where
-
-#if 1
-foreign import ccall "foo" foo :: Int -> IO Int
-#endif
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read040.hs b/testsuite/tests/ghc-regress/parser/should_compile/read040.hs
deleted file mode 100644
index e6d6629744..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read040.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
--- A type signature on the LHS of a do-stmt was a parse
--- error in 6.4.2, but ok thereafter
-
-module ShouldCompile where
-
-f () = do { x :: Bool <- return True
- ; return x }
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read041.lhs b/testsuite/tests/ghc-regress/parser/should_compile/read041.lhs
deleted file mode 100644
index 30274e85a1..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read041.lhs
+++ /dev/null
@@ -1,10 +0,0 @@
--- Tests trac #210.
-
-module ShouldCompile where
-
-\begin{code}
- main = foo
-\end{code}
-
-> foo = putStrLn "Foo"
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read042.hs b/testsuite/tests/ghc-regress/parser/should_compile/read042.hs
deleted file mode 100644
index 922b7b12bb..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read042.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-{-# OPTIONS -XBangPatterns #-}
-
--- Various bang-pattern and lazy-pattern tests
-
-module ShouldCompile where
-
-main1,main2,main3,main4,main5,main6,main7 :: IO ()
-
-main1 = do
- !c <- return ()
- return ()
-
-main2 = return () >>= \ !c -> return ()
-
-main3 = do
- (!c) <- return ()
- return ()
-
-main4 = return () >>= \ (!c) -> return ()
-
-main5 = let !x = 1 in return ()
-
-main6 = do
- ~c <- return ()
- return ()
-
-main7 = return () >>= \ ~c -> return ()
-
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read043.hs b/testsuite/tests/ghc-regress/parser/should_compile/read043.hs
deleted file mode 100644
index c663a7526e..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read043.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-{-# OPTIONS -fwarn-tabs #-}
-
--- Check we get a warning for tabs
-
-module ShouldCompile where
-
-tab1 = 'a'
-notab = 'b'
-tab2 = 'c'
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read043.stderr b/testsuite/tests/ghc-regress/parser/should_compile/read043.stderr
deleted file mode 100644
index dc1e84466a..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read043.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-read043.hs:8:5: Warning: Tab character
-
-read043.hs:10:5: Warning: Tab character
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read044.hs b/testsuite/tests/ghc-regress/parser/should_compile/read044.hs
deleted file mode 100644
index a92b48c298..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read044.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- test case from #1091
-main =
- case True of {- | -}
- True -> putStrLn "Hello World\n"
- False {- | -} -> putStrLn "Goodbye Cruel World\n"
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read045.hs b/testsuite/tests/ghc-regress/parser/should_compile/read045.hs
deleted file mode 100644
index 844acdfc82..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read045.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-{
-main =
-putStr "hello";
-}
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read046.hs b/testsuite/tests/ghc-regress/parser/should_compile/read046.hs
deleted file mode 100644
index 5cc602f5a4..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read046.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-{-# OPTIONS_GHC -XMagicHash #-}
-
-module Foo where
-
-foo# = 'a'
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read047.hs b/testsuite/tests/ghc-regress/parser/should_compile/read047.hs
deleted file mode 100644
index 0c7470156d..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read047.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-{-# LANGUAGE MagicHash #-}
-
-module Foo where
-
-foo# = 'a'
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read048.hs b/testsuite/tests/ghc-regress/parser/should_compile/read048.hs
deleted file mode 100644
index cd8c974af6..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read048.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-{-# OPTIONS_GHC -XEmptyDataDecls #-}
-
-module Foo where
-
-data Foo
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read049.hs b/testsuite/tests/ghc-regress/parser/should_compile/read049.hs
deleted file mode 100644
index 8337a79634..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read049.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-{-# LANGUAGE EmptyDataDecls #-}
-
-module Foo where
-
-data Foo
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read050.hs b/testsuite/tests/ghc-regress/parser/should_compile/read050.hs
deleted file mode 100644
index d991bb01c7..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read050.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-{-# OPTIONS_GHC -XKindSignatures #-}
-
-module Foo where
-
-data Foo (a :: *) = Foo a
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read051.hs b/testsuite/tests/ghc-regress/parser/should_compile/read051.hs
deleted file mode 100644
index 3e95241862..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read051.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-{-# LANGUAGE KindSignatures #-}
-
-module Foo where
-
-data Foo (a :: *) = Foo a
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read052.hs b/testsuite/tests/ghc-regress/parser/should_compile/read052.hs
deleted file mode 100644
index 8c65e62a1b..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read052.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-{-# OPTIONS_GHC -XMultiParamTypeClasses #-}
-
-module Foo where
-
-class Foo a b
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read053.hs b/testsuite/tests/ghc-regress/parser/should_compile/read053.hs
deleted file mode 100644
index a277f31257..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read053.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-{-# LANGUAGE MultiParamTypeClasses #-}
-
-module Foo where
-
-class Foo a b
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read054.hs b/testsuite/tests/ghc-regress/parser/should_compile/read054.hs
deleted file mode 100644
index 4e0c589bf3..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read054.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-{-# OPTIONS_GHC -XParallelListComp #-}
-
-module Foo where
-
-foo = [ ()
- | () <- foo
- | () <- foo
- ]
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read055.hs b/testsuite/tests/ghc-regress/parser/should_compile/read055.hs
deleted file mode 100644
index 25db332a4d..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read055.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-{-# LANGUAGE ParallelListComp #-}
-
-module Foo where
-
-foo = [ ()
- | () <- foo
- | () <- foo
- ]
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read056.hs b/testsuite/tests/ghc-regress/parser/should_compile/read056.hs
deleted file mode 100644
index bab900ad6a..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read056.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-{-# OPTIONS_GHC -XGeneralizedNewtypeDeriving #-}
-
-module Foo where
-
-class C a
-instance C Int
-
-newtype Foo = Foo Int
- deriving C
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read057.hs b/testsuite/tests/ghc-regress/parser/should_compile/read057.hs
deleted file mode 100644
index f2cf84b3b5..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read057.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-
-module Foo where
-
-class C a
-instance C Int
-
-newtype Foo = Foo Int
- deriving C
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read058.hs b/testsuite/tests/ghc-regress/parser/should_compile/read058.hs
deleted file mode 100644
index 9d4f766ada..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read058.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-{-# OPTIONS_GHC -XRecursiveDo #-}
-
-module Foo where
-
-import Control.Monad.Fix
-
-z :: Maybe [Int]
-z = mdo x <- return (1:x)
- return (take 4 x)
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read058.stderr b/testsuite/tests/ghc-regress/parser/should_compile/read058.stderr
deleted file mode 100644
index aa42286c89..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read058.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-read058.hs:2:16:
- Warning: -XRecursiveDo is deprecated: use -XDoRec or pragma {-# LANGUAGE DoRec #-} instead
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read059.hs b/testsuite/tests/ghc-regress/parser/should_compile/read059.hs
deleted file mode 100644
index 79989afd3f..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read059.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-{-# LANGUAGE RecursiveDo #-}
-
-module Foo where
-
-import Control.Monad.Fix
-
-z :: Maybe [Int]
-z = mdo x <- return (1:x)
- return (take 4 x)
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read059.stderr b/testsuite/tests/ghc-regress/parser/should_compile/read059.stderr
deleted file mode 100644
index 5d2ae6c397..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read059.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-read059.hs:2:14:
- Warning: -XRecursiveDo is deprecated: use -XDoRec or pragma {-# LANGUAGE DoRec #-} instead
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read060.hs b/testsuite/tests/ghc-regress/parser/should_compile/read060.hs
deleted file mode 100644
index 1b07dfa397..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read060.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-{-# OPTIONS_GHC -XFunctionalDependencies #-}
-{-# OPTIONS_GHC -XMultiParamTypeClasses #-}
-
-module Foo where
-
-class Foo a b | a -> b
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read061.hs b/testsuite/tests/ghc-regress/parser/should_compile/read061.hs
deleted file mode 100644
index 1820e460f3..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read061.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-{-# LANGUAGE FunctionalDependencies #-}
-{-# OPTIONS_GHC -XMultiParamTypeClasses #-}
-
-module Foo where
-
-class Foo a b | a -> b
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read062.hs b/testsuite/tests/ghc-regress/parser/should_compile/read062.hs
deleted file mode 100644
index 4d57585c10..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read062.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module Foo where
-
-import Data.List
-import GHC.Exts
-
-foo = [ ()
- | x <- [1..10]
- , then take 5
- , then sortWith by x
- , then group by x
- , then group using inits
- , then group by x using groupWith
- ]
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read063.hs b/testsuite/tests/ghc-regress/parser/should_compile/read063.hs
deleted file mode 100644
index faa7c4a4a5..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read063.hs
+++ /dev/null
@@ -1,51 +0,0 @@
-{-# LANGUAGE MagicHash, UnboxedTuples #-}
-
---module Foo where
-
-import GHC.Exts
-
---you can use this if you want to test running it...
-main = print (I# (
- f1pat 1# +# f1prepat 1#
- +# f2pat 1# +# f2prepat 1#
- +# f3pat 1# +# f3prepat 1#
- ))
-
---unboxed tuples are of sizes 1,2,3...
---(normal tuples are 0,2,3...)
-
---make sure it's really the _unboxed_ tuples
---being used by putting unboxed values in,
---which are forbidden in boxed tuples
-
-f1 :: Int# -> (# Int# #)
-f1 i = (# i #)
--- a space is needed in (# #) so that it's not
--- lexed/parsed as an operator named "##"
---(even though the error message about mismatched
---kinds for "instance Functor (# #)" names the type
---as "(##)"
--- Kind mis-match
--- Expected kind `* -> *', but `(##)' has kind `? -> (#)'
--- In the instance declaration for `Functor (##)'
-f1prefix :: Int# -> (# #) Int#
-f1prefix i = (# #) i
---test that prefix and non-prefix versions
---are the same type by switching the case-argument
-f1pat a = case f1prefix a of (# i #) -> i +# 1#
-f1prepat a = case f1 a of (# #) i -> i +# 1#
-
-f2 :: Int# -> (# Int#, Int# #)
-f2 i = (# i, i #)
-f2prefix :: Int# -> (#,#) Int# Int#
-f2prefix i = (#,#) i i
-f2pat a = case f2prefix a of (# i, j #) -> i +# j
-f2prepat a = case f2 a of (#,#) i j -> i +# j
-
-f3 :: Int# -> (# Int#, Int#, Int# #)
-f3 i = (# i, i, i #)
-f3prefix :: Int# -> (#,,#) Int# Int# Int#
-f3prefix i = (#,,#) i i i
-f3pat a = case f3prefix a of (# i, j, k #) -> i +# j +# k
-f3prepat a = case f3 a of (#,,#) i j k -> i +# j +# k
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read064.hs b/testsuite/tests/ghc-regress/parser/should_compile/read064.hs
deleted file mode 100644
index 386574244f..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read064.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-module Foo where
-
-{-# THISISATYPO foo #-}
-foo :: ()
-foo = ()
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read064.stderr b/testsuite/tests/ghc-regress/parser/should_compile/read064.stderr
deleted file mode 100644
index 8ed04fc629..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read064.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-read064.hs:4:1: Unrecognised pragma
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read066.hs b/testsuite/tests/ghc-regress/parser/should_compile/read066.hs
deleted file mode 100644
index 374f76126c..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read066.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-{-# OPTIONS_NO_SUCH_PRAGMA --no-such-flag #-}
-
--- We should parse the above as an unrecognised pragma, not as an OPTIONS
--- pragma containing "_NO_SUCH_PRAGMA -wibble". Trac #2847.
-
-module Test where
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read066.stderr b/testsuite/tests/ghc-regress/parser/should_compile/read066.stderr
deleted file mode 100644
index a094133754..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read066.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-read066.hs:2:1: Unrecognised pragma
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read067.hs b/testsuite/tests/ghc-regress/parser/should_compile/read067.hs
deleted file mode 100644
index f65f56b498..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read067.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-{-# OPTIONS_HUGS --some-hugs-flag #-}
-
--- We should ignore the above pragma, as we recognise that it is
--- hugs-specific. We shouldn't even warn about it.
-
-module Test where
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read068.hs b/testsuite/tests/ghc-regress/parser/should_compile/read068.hs
deleted file mode 100644
index b6cf24fd0c..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read068.hs
+++ /dev/null
@@ -1,27 +0,0 @@
--- Test for trac #3079 - parsing fails if a LANGUAGE pragma straddles
--- a 1024 byte boundary.
--- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
--- xxxxxxxxxxxxxxxxxxxxxxx
--- xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
---
---xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
---xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
---
---xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
---xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
---xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
---xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
---xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
---xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
---xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
---xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
---
---xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
-
-{-# LANGUAGE NoImplicitPrelude #-}
-
-import Prelude
-
-main :: IO ()
-main = return ()
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read069.hs b/testsuite/tests/ghc-regress/parser/should_compile/read069.hs
deleted file mode 100644
index cff74b474b..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read069.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE RelaxedLayout #-}
-
-module ShouldFail where
-
-f x = case x of
- False -> do
- { return x; }
-
diff --git a/testsuite/tests/ghc-regress/parser/should_compile/read_1821.hs b/testsuite/tests/ghc-regress/parser/should_compile/read_1821.hs
deleted file mode 100644
index f9669ab053..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_compile/read_1821.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
--- Trac #1821
-
-module Par where
-
-f x = x
- where
--- ######### x86_64 machine code:
- g y = y
- h y = y
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/Makefile b/testsuite/tests/ghc-regress/parser/should_fail/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/NoDoAndIfThenElse.hs b/testsuite/tests/ghc-regress/parser/should_fail/NoDoAndIfThenElse.hs
deleted file mode 100644
index 2439205e3e..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/NoDoAndIfThenElse.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-{-# LANGUAGE NoDoAndIfThenElse #-}
-
-module NoDoAndIfThenElse where
-
-foo :: IO ()
-foo = do if True
- then return ()
- else return ()
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/NoDoAndIfThenElse.stderr b/testsuite/tests/ghc-regress/parser/should_fail/NoDoAndIfThenElse.stderr
deleted file mode 100644
index b175c0ac5e..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/NoDoAndIfThenElse.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-NoDoAndIfThenElse.hs:7:13:
- Unexpected semi-colons in conditional:
- if True; then return (); else return ()
- Perhaps you meant to use -XDoAndIfThenElse?
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/NondecreasingIndentationFail.hs b/testsuite/tests/ghc-regress/parser/should_fail/NondecreasingIndentationFail.hs
deleted file mode 100644
index 5b67a60612..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/NondecreasingIndentationFail.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-{-# LANGUAGE NoNondecreasingIndentation #-}
-
-module ShouldCompile where
-
-f :: IO ()
-f = do if True then f else do
- f
- if True then f else do
- f
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/NondecreasingIndentationFail.stderr b/testsuite/tests/ghc-regress/parser/should_fail/NondecreasingIndentationFail.stderr
deleted file mode 100644
index c9ccd3ea53..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/NondecreasingIndentationFail.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-NondecreasingIndentationFail.hs:7:28: Empty 'do' block
-
-NondecreasingIndentationFail.hs:9:28: Empty 'do' block
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T1344a.hs b/testsuite/tests/ghc-regress/parser/should_fail/T1344a.hs
deleted file mode 100644
index 709d1636c0..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T1344a.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module T1344a where
-
-a = "Hel\x6c000000000000000 World"
-b = "Hel\x6c0000000000000000 World"
-c = '\1114112'
-
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T1344a.stderr b/testsuite/tests/ghc-regress/parser/should_fail/T1344a.stderr
deleted file mode 100644
index a7c203c1c5..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T1344a.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-T1344a.hs:3:16:
- numeric escape sequence out of range at character '0'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T1344b.hs b/testsuite/tests/ghc-regress/parser/should_fail/T1344b.hs
deleted file mode 100644
index b355dda5e6..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T1344b.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module T1344b where
-
-b = "Hel\x6c0000000000000000 World"
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T1344b.stderr b/testsuite/tests/ghc-regress/parser/should_fail/T1344b.stderr
deleted file mode 100644
index 7b05c0fb2b..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T1344b.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-T1344b.hs:3:16:
- numeric escape sequence out of range at character '0'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T1344c.hs b/testsuite/tests/ghc-regress/parser/should_fail/T1344c.hs
deleted file mode 100644
index 0e5d0c6190..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T1344c.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module T1344c where
-
-c = '\1114112'
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T1344c.stderr b/testsuite/tests/ghc-regress/parser/should_fail/T1344c.stderr
deleted file mode 100644
index 57ad0592bd..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T1344c.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-T1344c.hs:3:13:
- numeric escape sequence out of range at character '2'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3095.hs b/testsuite/tests/ghc-regress/parser/should_fail/T3095.hs
deleted file mode 100644
index ad6b62c562..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3095.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE KindSignatures #-}
--- Trac #3095
-module T3095 where
-
-class Bla (forall x . x :: *) where
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3095.stderr b/testsuite/tests/ghc-regress/parser/should_fail/T3095.stderr
deleted file mode 100644
index 3e47128e41..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3095.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T3095.hs:5:21:
- Illegal symbol '.' in type
- Perhaps you intended -XRankNTypes or similar flag
- to enable explicit-forall syntax: forall <tvs>. <type>
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3153.hs b/testsuite/tests/ghc-regress/parser/should_fail/T3153.hs
deleted file mode 100644
index af28ddc98c..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3153.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-{-# LANGUAGE
-#
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3153.stderr b/testsuite/tests/ghc-regress/parser/should_fail/T3153.stderr
deleted file mode 100644
index 5a21b339aa..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3153.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-T3153.hs:1:1:
- Cannot parse LANGUAGE pragma
- Expecting comma-separated list of language options,
- each starting with a capital letter
- E.g. {-# LANGUAGE RecordPuns, Generics #-}
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3751.hs b/testsuite/tests/ghc-regress/parser/should_fail/T3751.hs
deleted file mode 100644
index 9de569b01f..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3751.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-x = "\§"
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3751.stderr b/testsuite/tests/ghc-regress/parser/should_fail/T3751.stderr
deleted file mode 100644
index cf14e746e1..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3751.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-T3751.hs:3:7:
- lexical error in string/character literal at character '\167'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3811.hs b/testsuite/tests/ghc-regress/parser/should_fail/T3811.hs
deleted file mode 100644
index 30c1f5068f..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3811.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module T3811 where
-
-f x :: Char
-f x = 'c'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3811.stderr b/testsuite/tests/ghc-regress/parser/should_fail/T3811.stderr
deleted file mode 100644
index afdead696e..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3811.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-T3811.hs:4:1:
- Invalid type signature: f x :: Char
- Should be of form <variable> :: <type>
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3811b.hs b/testsuite/tests/ghc-regress/parser/should_fail/T3811b.hs
deleted file mode 100644
index 720cffa17f..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3811b.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-
-module T3811b where
-
-data Foo a = !B
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3811b.stderr b/testsuite/tests/ghc-regress/parser/should_fail/T3811b.stderr
deleted file mode 100644
index 342354dd84..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3811b.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-T3811b.hs:4:14:
- parse error in constructor in data/newtype declaration: !B
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3811c.hs b/testsuite/tests/ghc-regress/parser/should_fail/T3811c.hs
deleted file mode 100644
index d2b063c54f..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3811c.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-module T3811c where
-
-data D = D
-
-instance !Show D
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3811c.stderr b/testsuite/tests/ghc-regress/parser/should_fail/T3811c.stderr
deleted file mode 100644
index 9b61341152..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3811c.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-T3811c.hs:6:10: Malformed instance header: !Show D
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3811d.hs b/testsuite/tests/ghc-regress/parser/should_fail/T3811d.hs
deleted file mode 100644
index ee95cd862d..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3811d.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-module T3811d where
-
-data D a = D a
-
-class C b (D Char) b
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3811d.stderr b/testsuite/tests/ghc-regress/parser/should_fail/T3811d.stderr
deleted file mode 100644
index 6f6e6c4267..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3811d.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T3811d.hs:6:11:
- Type found: D Char
- where type variable expected, in: b (D Char) b
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3811e.hs b/testsuite/tests/ghc-regress/parser/should_fail/T3811e.hs
deleted file mode 100644
index 69a559c9c4..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3811e.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-{-# LANGUAGE NoDatatypeContexts #-}
-
-module T3811e where
-
-data (Show a, Read a) => D a = D a
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3811e.stderr b/testsuite/tests/ghc-regress/parser/should_fail/T3811e.stderr
deleted file mode 100644
index f2acc84706..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3811e.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T3811e.hs:6:6:
- Illegal datatype context (use -XDatatypeContexts): (Show a,
- Read a) =>
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3811f.hs b/testsuite/tests/ghc-regress/parser/should_fail/T3811f.hs
deleted file mode 100644
index a047feed72..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3811f.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-
-module T3811f where
-
-class !Foo a
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3811f.stderr b/testsuite/tests/ghc-regress/parser/should_fail/T3811f.stderr
deleted file mode 100644
index 882ae06706..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3811f.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-T3811f.hs:4:7: Malformed head of type or class declaration: !Foo a
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3811g.hs b/testsuite/tests/ghc-regress/parser/should_fail/T3811g.hs
deleted file mode 100644
index 8b901f49e3..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3811g.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-module T3811g where
-
-f :: IO ()
-f = do _ <- return ()
- _ <- return ()
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/T3811g.stderr b/testsuite/tests/ghc-regress/parser/should_fail/T3811g.stderr
deleted file mode 100644
index 94917e52ae..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/T3811g.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-T3811g.hs:6:8:
- The last statement in a 'do' block must be an expression
- _ <- return ()
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/all.T b/testsuite/tests/ghc-regress/parser/should_fail/all.T
deleted file mode 100644
index 31ec0d9a3e..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/all.T
+++ /dev/null
@@ -1,71 +0,0 @@
-
-test('readFail001', normal, compile_fail, [''])
-test('readFail002', normal, compile_fail, [''])
-test('readFail003', normal, compile_fail, [''])
-test('readFail004', normal, compile_fail, [''])
-test('readFail005', normal, compile_fail, [''])
-test('readFail006', normal, compile_fail, [''])
-test('readFail007', normal, compile_fail, [''])
-test('readFail008', normal, compile_fail, [''])
-test('readFail009', normal, compile_fail, [''])
-# test10: missing
-test('readFail011', normal, compile_fail, [''])
-test('readFail012', normal, compile_fail, [''])
-test('readFail013', normal, compile_fail, [''])
-test('readFail014', normal, compile_fail, [''])
-test('readFail015', normal, compile_fail, [''])
-test('readFail016', normal, compile_fail, [''])
-test('readFail017', normal, compile_fail, [''])
-test('readFail018', normal, compile_fail, [''])
-test('readFail019', normal, compile_fail, [''])
-test('readFail020', normal, compile_fail, [''])
-
-# empty file (length zero) is not a legal Haskell module. It fails to compile
-# because it doesn't contain a definition of Main.main. GHC 5.02 crashed
-# on this example.
-test('readFail021', if_compiler_type('hugs', expect_fail), compile_fail, [''])
-
-test('readFail022', normal, compile_fail, [''])
-test('readFail023', normal, compile_fail, [''])
-test('readFail024', normal, compile_fail, [''])
-test('readFail025', normal, compile_fail, [''])
-test('readFail026', normal, compile_fail, [''])
-test('readFail027', normal, compile_fail, [''])
-test('readFail028', normal, compile_fail, [''])
-test('readFail029', normal, compile_fail, [''])
-test('readFail030', normal, compile_fail, [''])
-test('readFail031', normal, compile_fail, [''])
-test('readFail032', expect_broken(314), compile_fail, ['-cpp'])
-test('readFail033', normal, compile_fail, [''])
-test('readFail034', normal, compile_fail, [''])
-test('readFail035', normal, compile_fail, [''])
-test('readFail036', normal, compile_fail, [''])
-test('readFail037', normal, compile_fail, [''])
-test('readFail038', normal, compile_fail, [''])
-test('readFail039', normal, compile_fail, [''])
-test('readFail040', normal, compile_fail, [''])
-test('readFail041', normal, compile_fail, [''])
-test('readFail042', normal, compile_fail, [''])
-test('readFail043', normal, compile_fail, [''])
-test('readFail044', normal, compile_fail, [''])
-test('readFail046', normal, compile_fail, [''])
-test('readFail047', normal, compile_fail, [''])
-test('T3095', normal, compile_fail, [''])
-test('T3153', normal, compile_fail, [''])
-test('T3751', normal, compile_fail, [''])
-
-test('position001', normal, compile_fail, [''])
-test('position002', normal, compile_fail, [''])
-
-test('T1344a', normal, compile_fail, [''])
-test('T1344b', normal, compile_fail, [''])
-test('T1344c', normal, compile_fail, [''])
-test('T3811', normal, compile_fail, [''])
-test('T3811b', normal, compile_fail, [''])
-test('T3811c', normal, compile_fail, [''])
-test('T3811d', normal, compile_fail, [''])
-test('T3811e', normal, compile_fail, [''])
-test('T3811f', normal, compile_fail, [''])
-test('T3811g', normal, compile_fail, [''])
-test('NoDoAndIfThenElse', normal, compile_fail, [''])
-test('NondecreasingIndentationFail', normal, compile_fail, [''])
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/position001.hs b/testsuite/tests/ghc-regress/parser/should_fail/position001.hs
deleted file mode 100644
index c47ed60a1b..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/position001.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-module T where
-
--- We should get a parse error on column 33
--- Indented with spaces:
-foo = 123456 module
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/position001.stderr b/testsuite/tests/ghc-regress/parser/should_fail/position001.stderr
deleted file mode 100644
index 0635c8d867..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/position001.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-position001.hs:6:33: parse error on input `module'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/position002.hs b/testsuite/tests/ghc-regress/parser/should_fail/position002.hs
deleted file mode 100644
index 861acf5344..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/position002.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-module T where
-
--- We should get a parse error on column 33
--- Indented with tabs:
-foo = 123456 module
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/position002.stderr b/testsuite/tests/ghc-regress/parser/should_fail/position002.stderr
deleted file mode 100644
index 9306d42fb8..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/position002.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-position002.hs:6:33: parse error on input `module'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail001.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail001.hs
deleted file mode 100644
index a996475efd..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail001.hs
+++ /dev/null
@@ -1,113 +0,0 @@
--- !!! this module supposedly includes one of each Haskell construct
-
--- HsImpExp stuff
-
-module OneOfEverything (
- fixn,
- FooData,
- FooDataB(..),
- FooDataC( .. ),
- Tree(Leaf, Branch),
- EqClass(..),
- OrdClass(orda, ordb),
- module OneC ,
- module OneOfEverything
- ) where
-
-import Prelude
-import System.IO ( putStr )
-import System.Environment hiding ( getArgs )
-import Control.Monad
-
--- HsDecls stuff
-
-infix 6 `fixn`
-infixl 7 +#
-infixr 8 `fixr`
-
-fixn x y = x
-fixl x y = x
-fixr x y = x
-
-type Pair a b = (a, b)
-
-data FooData = FooCon Int
-
-data FooDataB = FooConB Double
-
-data Tree a = Leaf a | Branch (Leaf a) (Leaf a)
-
-class (Eq a) => EqClass a where
- eqc :: a -> Char
- eqc x = '?'
-
-class (Ord a) => OrdClass a where
- orda :: a -> Char
- ordb :: a -> Char
- ordc :: a -> Char
-
-instance (Eq a) => EqClass (Tree a) where
- eqc x = 'a'
-
-default (Integer, Rational)
-
--- HsBinds stuff
-
-singlebind x = x
-
-bindwith :: (OrdClass a, OrdClass b) => a -> b -> b
-bindwith a b = b
-
-reca a = recb a
-recb a = reca a
-
-(~(a,b,c)) | nullity b = a
- | nullity c = a
- | otherwise = a
- where
- nullity = null
-
--- HsMatches stuff
-
-mat a b c d | foof a b = d
- | foof a c = d
- | foof b c = d
- where
- foof a b = a == b
-
--- HsExpr stuff
-expr a b c d
- = a
- + (:) a b
- + (a : b)
- + (1 - 'c' - "abc" - 1.293)
- + ( \ x y z -> x ) 42
- + (9 *)
- + (* 8)
- + (case x of
- [] | null x -> 99
- | otherwise -> 98
- | True -> 97
- where
- null x = False
- )
- + [ z | z <- c, isSpace z ]
- + let y = foo
- in y
- + [1,2,3,4]
- + (4,3,2,1)
- + (4 :: Num a => a)
- + (if 42 == 42.0 then 1 else 4)
- + [1..]
- + [2,4..]
- + [3..5]
- + [4,8..999]
-
--- HsPat stuff
-f _ x 1 1.93 'c' "dog" ~y z@(Foo a b) (c `Bar` d) [1,2] (3,4) = y
-
--- HsLit stuff -- done above
-
--- HsTypes stuff
-g :: (Num a, Eq b) => Foo a -> [b] -> (a,a,a) -> b
-g x y z = head y
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail001.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail001.stderr
deleted file mode 100644
index 719d4c12bd..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail001.stderr
+++ /dev/null
@@ -1,24 +0,0 @@
-
-readFail001.hs:25:11:
- The fixity signature for `+#' lacks an accompanying binding
-
-readFail001.hs:38:32:
- Not in scope: type constructor or class `Leaf'
-
-readFail001.hs:38:41:
- Not in scope: type constructor or class `Leaf'
-
-readFail001.hs:87:11: Not in scope: `x'
-
-readFail001.hs:88:19: Not in scope: `x'
-
-readFail001.hs:94:19: Not in scope: `isSpace'
-
-readFail001.hs:95:13: Not in scope: `foo'
-
-readFail001.hs:107:30: Not in scope: data constructor `Foo'
-
-readFail001.hs:107:42: Not in scope: data constructor `Bar'
-
-readFail001.hs:112:23:
- Not in scope: type constructor or class `Foo'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail001.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail001.stderr-hugs
deleted file mode 100644
index ab30ff6dc0..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail001.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read001.hs":38 - Undefined type constructor "EqLeaf"
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail001.stdout b/testsuite/tests/ghc-regress/parser/should_fail/readFail001.stdout
deleted file mode 100644
index a4d6758f8c..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail001.stdout
+++ /dev/null
@@ -1,87 +0,0 @@
-
-==================== Parser ====================
-module OneOfEverything (
- module OneOfEverything, module OneC, OrdClass(orda, ordb),
- EqClass(..), EqTree(EqLeaf, EqBranch), FooDataC(..), FooDataB(..),
- FooData, fixn
- ) where
-import Prelude
-import IO (putStr)
-import System hiding (getArgs)
-import Monad
-bindwith :: (OrdClass a, OrdClass b) => a -> b -> b
-g :: (Num a, Eq b) => Foo a -> [b] -> (a, a, a) -> b
-g x y z = head y
-f _
- x
- 1
- 1.93
- 'c'
- "dog"
- ~y
- (z@(Foo a b))
- (c Bar d)
- [1, 2]
- (3, 4)
- ((n+42))
- = y
-expr a b c d
- = ((((((((a + ((:) a b)) + (a : b))
- + (((1 - 'c') - "abc") - 1.293))
- + ((\ x y z -> x) 42))
- + ((9 *)))
- + ((* 8)))
- + (case x of
- PrelBase.[]
- | null x -> 99
- | otherwise -> 98
- | True -> 97
- where
- null x = False))
- + ([z | z <- c, isSpace z]))
- + (let y = foo
- in
- (((((((y + [1, 2, 3, 4]) + (4, 3, 2, 1)) + (4 :: (Num a) => a))
- + (if 42 == 42.0 then 1 else 4))
- + ([1 .. ]))
- + ([2, 4 .. ]))
- + ([3 .. 5]))
- + ([4, 8 .. 999]))
-mat a b c d
- | foof a b = d
- | foof a c = d
- | foof b c = d
- where
- foof a b = a == b
-(~(a, b, c))
- | nullity b = a
- | nullity c = a
- | otherwise = a
- where
- nullity = null
-recb a = reca a
-reca a = recb a
-bindwith a b = b
-singlebind x = x
-fixr x y = x
-fixl x y = x
-fixn x y = x
-infix 6 fixn
-infixl 7 +#
-infixr 8 fixr
-type Pair a b = (a, b)
-data FooData = FooCon Int
-data FooDataB = FooConB Double
-data (Eq a) => EqTree a = EqLeaf a | EqBranch (EqLeaf a) (EqLeaf a)
-class (Eq a) => EqClass a where {
- eqc = :: a -> Char; Just eqc x = '?' }
-class (Ord a) => OrdClass a where {
- orda = :: a -> Char; ordb = :: a -> Char; ordc = :: a -> Char;
- Just
- }
-instance (Eq a) => {EqClass (EqTree a)} where
- []
- eqc x = 'a'
-default (Integer, Rational)
-
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail002.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail002.hs
deleted file mode 100644
index 869cb86a33..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail002.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldFail where
-
--- !!! newlines in strings aren't allowed
-
-f = "
-"
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail002.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail002.stderr
deleted file mode 100644
index d368fe302d..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail002.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-readFail002.hs:5:6:
- lexical error in string/character literal at character '\n'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail002.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail002.stderr-hugs
deleted file mode 100644
index 12031904f7..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail002.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read002.hs":5 - Improperly terminated string
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail003.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail003.hs
deleted file mode 100644
index 8595312137..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail003.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! Irrefutable patterns + guards
-module Read003 where
-
-~(a,b,c) | nullity b = a
- | nullity c = a
- | otherwise = a
- where
- nullity = null
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail003.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail003.stderr
deleted file mode 100644
index fe8ce00577..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail003.stderr
+++ /dev/null
@@ -1,36 +0,0 @@
-
-readFail003.hs:4:27:
- Occurs check: cannot construct the infinite type:
- t0 = (t0, [a0], [a1])
- In the expression: a
- In a pattern binding:
- ~(a, b, c)
- | nullity b = a
- | nullity c = a
- | otherwise = a
- where
- nullity = null
-
-readFail003.hs:5:27:
- Occurs check: cannot construct the infinite type:
- t0 = (t0, [a0], [a1])
- In the expression: a
- In a pattern binding:
- ~(a, b, c)
- | nullity b = a
- | nullity c = a
- | otherwise = a
- where
- nullity = null
-
-readFail003.hs:6:27:
- Occurs check: cannot construct the infinite type:
- t0 = (t0, [a0], [a1])
- In the expression: a
- In a pattern binding:
- ~(a, b, c)
- | nullity b = a
- | nullity c = a
- | otherwise = a
- where
- nullity = null
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail003.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail003.stderr-hugs
deleted file mode 100644
index d89db6e928..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail003.stderr-hugs
+++ /dev/null
@@ -1,5 +0,0 @@
-ERROR "read003.hs":4 - Type error in right hand side
-*** Term : a
-*** Type : a
-*** Does not match : (a,[b],[c])
-*** Because : unification would give infinite type
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail003.stdout b/testsuite/tests/ghc-regress/parser/should_fail/readFail003.stdout
deleted file mode 100644
index e1291a62a7..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail003.stdout
+++ /dev/null
@@ -1,11 +0,0 @@
-
-==================== Parser ====================
-module Read003 where
-~(a, b, c)
- | nullity b = a
- | nullity c = a
- | otherwise = a
- where
- nullity = null
-
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail004.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail004.hs
deleted file mode 100644
index f5e1fb4304..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail004.hs
+++ /dev/null
@@ -1,41 +0,0 @@
--- !!! string gaps
--- !!!
-module Main(main) where
-
------------
-
-main = putStr "\
-
-\Some girls give me money\n\
-
-\Some girls buy me clothes\n\
-
-\..."
-
------------
-
-main2 = putStr "\
-\ \
-..."
-
------------
-
-main3 = putStr "\
-
-\Some girls give me money\n\
--- and here is a comment
-\Some girls buy me clothes\n\
-
-\..."
-
------------
-
-main3 = putStr "\
-{-
- and here is a nested {- comment -}
--}
-\Some girls give me money\n\
-
-\Some girls buy me clothes\n\
-
-\..."
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail004.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail004.stderr
deleted file mode 100644
index 45ad7d7215..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail004.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-readFail004.hs:19:1:
- lexical error in string/character literal at character '.'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail004.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail004.stderr-hugs
deleted file mode 100644
index a737a0100e..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail004.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read004.hs":19 - Missing `\' terminating string literal gap
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail005.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail005.hs
deleted file mode 100644
index 8ed88c0ea0..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail005.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Tests where
-
--- this char is forbidden
-c = '\&'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail005.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail005.stderr
deleted file mode 100644
index 6b5b2ce9e2..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail005.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-readFail005.hs:4:7:
- lexical error in string/character literal at character '&'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail005.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail005.stderr-hugs
deleted file mode 100644
index bda4ebcd9d..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail005.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read005.hs":4 - Illegal use of `\&' in character constant
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail006.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail006.hs
deleted file mode 100644
index fa3d867c67..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail006.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! Using pattern syntax on RHS
-module ShouldFail where
-
-f :: Int -> Int
-f x = _
-
-g :: Int -> Int
-g x = 2 + 2@_
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail006.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail006.stderr
deleted file mode 100644
index 92ea7a484d..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail006.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail006.hs:8:12: parse error on input `@'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail006.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail006.stderr-hugs
deleted file mode 100644
index f39482998c..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail006.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read006.hs":8 - Syntax error in input (unexpected `@')
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail007.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail007.hs
deleted file mode 100644
index 4466f17d18..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail007.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! Expressions as patterns inside do stmt blocks
-module ShouldFail where
-
-f :: Int -> IO Int
-f x = do
- (2+2) <- 2
- return x
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail007.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail007.stderr
deleted file mode 100644
index 3236824a78..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail007.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail007.hs:6:4: Parse error in pattern: 2 + 2
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail007.stdout b/testsuite/tests/ghc-regress/parser/should_fail/readFail007.stdout
deleted file mode 100644
index c91365d679..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail007.stdout
+++ /dev/null
@@ -1,9 +0,0 @@
-
-==================== Parser ====================
-module ShouldFail where
-f :: Int -> IO Int
-f x = do
- (2 + 2) <- 2
- return x
-
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail008.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail008.hs
deleted file mode 100644
index 606af912f0..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail008.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldFail where
-
--- strictness annotations on the argument to a newtype constructor
--- are not allowed.
-newtype N a = T ![a]
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail008.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail008.stderr
deleted file mode 100644
index a40ce01da0..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail008.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-readFail008.hs:5:15:
- A newtype constructor cannot have a strictness annotation,
- but `T' does
- In the definition of data constructor `T'
- In the newtype declaration for `N'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail008.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail008.stderr-hugs
deleted file mode 100644
index 73edc248e9..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail008.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read008.hs":5 - Illegal strictness annotation for newtype constructor
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail009.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail009.hs
deleted file mode 100644
index 93a7b84d5b..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail009.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-module ShouldFail where
-
--- !!! Test for parse error in do/let expression
-
-foo = do let foo = True
- return ()
-
-
--- Note the let binding at the end!
--- This gave a pattern-match failure in tcStmts in ghc-4.04proto
-
-h x = x
-
-
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail009.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail009.stderr
deleted file mode 100644
index 7f5684e2c5..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail009.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail009.hs:12:1: parse error (possibly incorrect indentation)
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail009.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail009.stderr-hugs
deleted file mode 100644
index 698df240cc..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail009.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read009.hs":12 - Syntax error in declaration (unexpected `}', possibly due to bad layout)
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail009.stdout b/testsuite/tests/ghc-regress/parser/should_fail/readFail009.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail009.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail011.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail011.hs
deleted file mode 100644
index 4642061fcc..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail011.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! Test line numbers in presence of string gaps.
-
-main = print "a\
- \b\
- \c"
-
-wibble = = -- this is a parse error on line 7
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail011.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail011.stderr
deleted file mode 100644
index 2570aa357e..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail011.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail011.hs:7:10: parse error on input `='
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail011.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail011.stderr-hugs
deleted file mode 100644
index 03d0dda838..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail011.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read011.hs":7 - Syntax error in expression (unexpected `=')
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail012.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail012.hs
deleted file mode 100644
index 4a780885f7..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail012.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! test parse errors due to tokens inserted by layout
-
--- used to report "Parse error on input `'" in 4.04pl0.
-
-main = let
- f = (a,
- g = 1
- in f
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail012.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail012.stderr
deleted file mode 100644
index 849e918204..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail012.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail012.hs:7:9: parse error (possibly incorrect indentation)
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail012.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail012.stderr-hugs
deleted file mode 100644
index 242a34ef34..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail012.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read012.hs":7 - Syntax error in expression (unexpected `;', possibly due to bad layout)
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail013.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail013.hs
deleted file mode 100644
index 97e926d49c..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail013.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Main where
-
--- !!! unterminated ``
-a = ``s``
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail013.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail013.stderr
deleted file mode 100644
index 9be590d0b0..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail013.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail013.hs:4:5: parse error on input ``'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail013.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail013.stderr-hugs
deleted file mode 100644
index 11bb7156f5..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail013.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read013.hs":4 - Syntax error in expression (unexpected backquote)
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail014.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail014.hs
deleted file mode 100644
index 23ef7954a6..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail014.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-main = f
- where
- f = f }
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail014.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail014.stderr
deleted file mode 100644
index 4bb5fff2da..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail014.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail014.hs:3:12: parse error on input `}'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail014.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail014.stderr-hugs
deleted file mode 100644
index 73e29ecbb0..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail014.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read014.hs":3 - Misplaced `}'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail015.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail015.hs
deleted file mode 100644
index 6920083483..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail015.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Test where
-
--- should fail; doesn't with happy 1.8.
-f = f where b = f
- c = (b
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail015.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail015.stderr
deleted file mode 100644
index 696167edca..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail015.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail015.hs:6:1: parse error (possibly incorrect indentation)
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail015.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail015.stderr-hugs
deleted file mode 100644
index c66b668cf5..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail015.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read015.hs":6 - Syntax error in expression (unexpected `}', possibly due to bad layout)
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail016.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail016.hs
deleted file mode 100644
index 493606a481..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail016.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! Infix decls w/ infix data constructors
-
-module ShouldFail where
-
-infix 6 |-
-
-ps |- q:qs = undefined
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail016.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail016.stderr
deleted file mode 100644
index 620d8505a2..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail016.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-readFail016.hs:7:1:
- Precedence parsing error
- cannot mix `|-' [infix 6] and `:' [infixr 5] in the same infix expression
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail016.stdout b/testsuite/tests/ghc-regress/parser/should_fail/readFail016.stdout
deleted file mode 100644
index 7c7f529466..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail016.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-
-==================== Parser ====================
-module ShouldFail where
-|- ps q : qs = undefined
-infix 6 |-
-
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail017.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail017.hs
deleted file mode 100644
index 1d710f5012..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail017.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldFail where
-
--- GHC < 5.01 used to get the line number wrong.
-f (f f) = f
-
-g = g
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail017.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail017.stderr
deleted file mode 100644
index 05f7c9931f..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail017.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail017.hs:4:4: Parse error in pattern: f
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail017.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail017.stderr-hugs
deleted file mode 100644
index a83103a57b..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail017.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read017.hs":4 - Syntax error in declaration (unexpected symbol "f")
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail018.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail018.hs
deleted file mode 100644
index 0086f50466..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail018.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! test the error message for an unterminated nested comment
-
-{- <-- this one is unterminated (line 3)
-
-{-
--}
-
--- EOF
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail018.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail018.stderr
deleted file mode 100644
index d07aa622c0..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail018.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail018.hs:3:1: unterminated `{-'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail018.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail018.stderr-hugs
deleted file mode 100644
index 57c04a5826..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail018.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read018.hs":3 - Unterminated nested comment {- ...
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail019.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail019.hs
deleted file mode 100644
index c9fdd15f75..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail019.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! cannot close an explicit layout context with a parse error
-module ShouldFail where
-f = let { x = 42 in x
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail019.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail019.stderr
deleted file mode 100644
index 65f7580599..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail019.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail019.hs:3:18: parse error on input `in'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail019.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail019.stderr-hugs
deleted file mode 100644
index fc021de327..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail019.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read019.hs":3 - Syntax error in declaration (unexpected keyword "in")
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail020.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail020.hs
deleted file mode 100644
index d7cf818e23..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail020.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! cannot close a layout context with an explicit close brace
-module ShouldFail where
-f = let x = 42 } in x
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail020.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail020.stderr
deleted file mode 100644
index fb81cef861..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail020.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail020.hs:3:16: parse error on input `}'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail020.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail020.stderr-hugs
deleted file mode 100644
index 2fe580ec23..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail020.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read020.hs":3 - Syntax error in expression (unexpected `}', possibly due to bad layout)
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail021.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail021.hs
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail021.hs
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail021.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail021.stderr
deleted file mode 100644
index a3f5e7b3f0..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail021.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail021.hs:1:1: The function `main' is not defined in module `Main'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail022.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail022.hs
deleted file mode 100644
index 8d63b44b40..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail022.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldFail where
-
--- !!! a parenthesised lhs must have at least one parameter
-(a # b) = a
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail022.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail022.stderr
deleted file mode 100644
index 2c1b254229..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail022.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail022.hs:4:2: Parse error in pattern: a # b
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail022.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail022.stderr-hugs
deleted file mode 100644
index d0315f1914..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail022.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read022.hs":4 - Syntax error in declaration (unexpected `=')
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail023.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail023.hs
deleted file mode 100644
index 9c230f8a6a..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail023.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module ShouldFail where
-
--- !!! Section precedences
-
--- check that we're not translating out negative literals too early:
--- the following should be an illegal section because prefix '-' has
--- precedence 6:
-
-k = (-3 **)
- where
- (**) = const
- infixl 7 **
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail023.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail023.stderr
deleted file mode 100644
index e1b6ceb83c..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail023.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-readFail023.hs:9:5:
- The operator `**' [infixl 7] of a section
- must have lower precedence than that of the operand,
- namely prefix `-' [infixl 6]
- in the section: `- 3 **'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail024.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail024.hs
deleted file mode 100644
index 70f38329ae..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail024.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldFail where
-
--- !!! this is not legal Haskell 98, but GHC parses it
-f = f where g = g where
- h = h
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail024.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail024.stderr
deleted file mode 100644
index 01d32ec450..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail024.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail024.hs:5:2: parse error on input `h'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail024.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail024.stderr-hugs
deleted file mode 100644
index 542507b0a6..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail024.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read024.hs":5 - Syntax error in input (unexpected symbol "h")
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail025.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail025.hs
deleted file mode 100644
index 25e170d1ff..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail025.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module M where
-
--- This one actually compiled right the way up to GHC 5.04.3
-
-data T String = T String
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail025.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail025.stderr
deleted file mode 100644
index 313019147a..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail025.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-readFail025.hs:5:8:
- Type found: String
- where type variable expected, in: String
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail025.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail025.stderr-hugs
deleted file mode 100644
index 176b7fd94e..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail025.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read025.hs":6 - Illegal left hand side in data type declaration
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail026.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail026.hs
deleted file mode 100644
index 6d3f820151..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail026.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-data T = T{a::Int}
-x = T{,a=42}
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail026.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail026.stderr
deleted file mode 100644
index 2249fa0b41..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail026.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail026.hs:3:7: parse error on input `,'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail026.stderr-hugs b/testsuite/tests/ghc-regress/parser/should_fail/readFail026.stderr-hugs
deleted file mode 100644
index da743251d0..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail026.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "read026.hs":3 - Syntax error in expression (unexpected comma)
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail027.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail027.hs
deleted file mode 100644
index 9a4754678a..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail027.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE NoRelaxedLayout #-}
-
-module ShouldFail where
-
--- Erroneously allowed by GHC 6.2.x
-f x = case x of
- False -> do
- { return x; }
--- this line should close the 'case' context and cause the 'do' to be empty.
-
--- Update: arguably this should be allowed. The fix to the Haskell
--- layout rule to allow it is simple: in Section 9.3 in the rules that
--- govern the introduction of the <n> and {n} psuedo-tokens, we need
--- to prevent <n> being inserted before {. This could be a simple
--- side-condition on the rule that introduces <n>.
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail027.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail027.stderr
deleted file mode 100644
index 68f3d25755..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail027.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail027.hs:8:5: Missing block
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail028.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail028.hs
deleted file mode 100644
index ca0d27e10e..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail028.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldFail where
-
--- !!! do must end in an expression
-main = do x <- return ()
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail028.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail028.stderr
deleted file mode 100644
index 651f778bb4..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail028.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-readFail028.hs:4:11:
- The last statement in a 'do' block must be an expression
- x <- return ()
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail029.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail029.hs
deleted file mode 100644
index d107cacc17..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail029.hs
+++ /dev/null
@@ -1 +0,0 @@
-{-# LANGUAGE wibble wibble wibble #-}
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail029.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail029.stderr
deleted file mode 100644
index 7f73291fe4..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail029.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-readFail029.hs:1:14:
- Cannot parse LANGUAGE pragma
- Expecting comma-separated list of language options,
- each starting with a capital letter
- E.g. {-# LANGUAGE RecordPuns, Generics #-}
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail030.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail030.hs
deleted file mode 100644
index 0829dc51ed..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail030.hs
+++ /dev/null
@@ -1 +0,0 @@
-{-# LANGUAGE ExtensibleRecords, RestrictedTypeSynonyms, HereDocuments, NamedFieldPuns #-}
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail030.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail030.stderr
deleted file mode 100644
index e557a6b055..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail030.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail030.hs:1:14: Unsupported extension: ExtensibleRecords
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail031.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail031.hs
deleted file mode 100644
index d07f8979a6..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail031.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldFail where
-
-class Foo o where
- (:+) :: o -> o -> o
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail031.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail031.stderr
deleted file mode 100644
index 628c8352f6..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail031.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-readFail031.hs:4:3:
- Invalid type signature: (:+) :: o -> o -> o
- Should be of form <variable> :: <type>
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail032.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail032.hs
deleted file mode 100644
index dec758a16f..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail032.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-
--- Test for trac #314
-
-{-
-/*
- This
- uses
- up
- some
- lines
- This
- uses
- up
- some
- lines
- */
--}
-
-module ShouldFail where
-
-type_error = "Type error on line 21":"Type error on line 21"
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail032.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail032.stderr
deleted file mode 100644
index 95852c5bbd..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail032.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-readFail032.hs:21:38:
- Couldn't match expected type `[Char]' with actual type `Char'
- Expected type: [[Char]]
- Actual type: [Char]
- In the second argument of `(:)', namely `"Type error on line 21"'
- In the expression:
- "Type error on line 21" : "Type error on line 21"
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail033.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail033.hs
deleted file mode 100644
index 6662563ff4..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail033.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- TAB character in a string literal is disallowed:
-x = " "
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail033.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail033.stderr
deleted file mode 100644
index 595323f3fd..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail033.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-readFail033.hs:2:6:
- lexical error in string/character literal at character '\t'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail034.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail034.hs
deleted file mode 100644
index f92c33fcce..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail034.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module Foo where
-
-foo# = 'a'
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail034.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail034.stderr
deleted file mode 100644
index 19f428131f..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail034.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail034.hs:4:6: parse error on input `='
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail035.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail035.hs
deleted file mode 100644
index 6682e9ad8b..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail035.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-{-# LANGUAGE Haskell98 #-}
-
-module Foo where
-
-data Foo
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail035.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail035.stderr
deleted file mode 100644
index 05f2d864ac..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail035.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-readFail035.hs:6:1:
- `Foo' has no constructors (-XEmptyDataDecls permits this)
- In the data type declaration for `Foo'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail036.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail036.hs
deleted file mode 100644
index 2bb23149dd..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail036.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module Foo where
-
-data Foo (a :: *) = Foo a
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail036.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail036.stderr
deleted file mode 100644
index 8c89f29e34..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail036.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-readFail036.hs:4:1:
- Illegal kind signature for `a'
- Perhaps you intended to use -XKindSignatures
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail037.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail037.hs
deleted file mode 100644
index 499f5cc0f3..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail037.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module Foo where
-
-class Foo a b
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail037.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail037.stderr
deleted file mode 100644
index 4c900d66b1..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail037.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-readFail037.hs:4:1:
- Too many parameters for class `Foo'
- (Use -XMultiParamTypeClasses to allow multi-parameter classes)
- In the class declaration for `Foo'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail038.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail038.hs
deleted file mode 100644
index cc60436f2f..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail038.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-module Foo where
-
-foo = [ ()
- | () <- foo
- | () <- foo
- ]
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail038.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail038.stderr
deleted file mode 100644
index 6933463b8f..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail038.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-readFail038.hs:6:7:
- Unexpected parallel statement in a list comprehension
- Use -XParallelListComp
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail039.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail039.hs
deleted file mode 100644
index c6cbdb9968..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail039.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-module Foo where
-
-class C a
-instance C Int
-
-newtype Foo = Foo Int
- deriving C
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail039.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail039.stderr
deleted file mode 100644
index 1c7cb6b975..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail039.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-readFail039.hs:8:14:
- Can't make a derived instance of `C Foo':
- `C' is not a derivable class
- Try -XGeneralizedNewtypeDeriving for GHC's newtype-deriving extension
- In the newtype declaration for `Foo'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail040.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail040.hs
deleted file mode 100644
index 5279f166ea..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail040.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-module Foo where
-
-import Control.Monad.Fix
-
-z :: Maybe [Int]
-z = mdo x <- return (1:x)
- return (take 4 x)
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail040.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail040.stderr
deleted file mode 100644
index 794899898d..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail040.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail040.hs:7:11: parse error on input `<-'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail041.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail041.hs
deleted file mode 100644
index 032e05e816..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail041.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-{-# OPTIONS_GHC -XMultiParamTypeClasses #-}
-
-module Foo where
-
-class Foo a b | a -> b
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail041.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail041.stderr
deleted file mode 100644
index fbe49b1153..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail041.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-readFail041.hs:6:1:
- Fundeps in class `Foo'
- (Use -XFunctionalDependencies to allow fundeps)
- In the class declaration for `Foo'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail042.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail042.hs
deleted file mode 100644
index bdd9f97094..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail042.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- Check error message for transforms if we don't have the right extension turned on
-
-module Foo where
-
-import Data.List
-import GHC.Exts
-
-foo = [ ()
- | x <- [1..10]
- , then take 5
- , then sortWith by x
- ] \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail042.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail042.stderr
deleted file mode 100644
index 8fbb9bf1f7..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail042.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-readFail042.hs:10:9:
- Unexpected transform statement in a list comprehension
- Use -XTransformListComp
-
-readFail042.hs:11:9:
- Unexpected transform statement in a list comprehension
- Use -XTransformListComp
-
-readFail042.hs:11:23: Not in scope: `by'
-
-readFail042.hs:11:26: Not in scope: `x'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail043.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail043.hs
deleted file mode 100644
index e6304bea9a..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail043.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- Check error message for groups if we don't have the right extension turned on
-
-module Foo where
-
-import Data.List
-import GHC.Exts
-
-foo = [ ()
- | x <- [1..10]
- , then group by x
- , then group by x using groupWith
- , then group using inits
- ]
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail043.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail043.stderr
deleted file mode 100644
index 1b2b1abc15..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail043.stderr
+++ /dev/null
@@ -1,24 +0,0 @@
-
-readFail043.hs:10:9:
- Unexpected transform statement in a list comprehension
- Use -XTransformListComp
-
-readFail043.hs:10:20: Not in scope: `by'
-
-readFail043.hs:10:23: Not in scope: `x'
-
-readFail043.hs:11:9:
- Unexpected transform statement in a list comprehension
- Use -XTransformListComp
-
-readFail043.hs:11:20: Not in scope: `by'
-
-readFail043.hs:11:23: Not in scope: `x'
-
-readFail043.hs:11:25: Not in scope: `using'
-
-readFail043.hs:12:9:
- Unexpected transform statement in a list comprehension
- Use -XTransformListComp
-
-readFail043.hs:12:20: Not in scope: `using'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail044.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail044.hs
deleted file mode 100644
index 2735d3363b..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail044.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
--- We should get an error message, including a location, for these flags:
-{-# OPTIONS_GHC -this-flag-does-not-exist -nor-does-this-one #-}
-
-module Foo where
-
-foo :: ()
-foo = ()
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail044.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail044.stderr
deleted file mode 100644
index 27becac67c..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail044.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-readFail044.hs:3:16:
- unknown flag in {-# OPTIONS_GHC #-} pragma: -this-flag-does-not-exist
-
-readFail044.hs:3:16:
- unknown flag in {-# OPTIONS_GHC #-} pragma: -nor-does-this-one
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail045.stderr-ghc-7.0 b/testsuite/tests/ghc-regress/parser/should_fail/readFail045.stderr-ghc-7.0
deleted file mode 100644
index 3c25e2347c..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail045.stderr-ghc-7.0
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail045.hs:6:21: parse error on input `.+'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail046.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail046.hs
deleted file mode 100644
index 9441694dd0..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail046.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-{-# LANGUAGE ExistientialQuantification #-}
--- tests for mis-spelled LANGUAGE pragma error message
-
-module ShouldFail where
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail046.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail046.stderr
deleted file mode 100644
index a303d7798e..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail046.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-readFail046.hs:1:14:
- Unsupported extension: ExistientialQuantification
- Perhaps you meant `ExistentialQuantification' or `NoExistentialQuantification'
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail047.hs b/testsuite/tests/ghc-regress/parser/should_fail/readFail047.hs
deleted file mode 100644
index 5692e780fd..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail047.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-module ShouldFail where
-
-foo = let
- x = (1, 2
- y = 3
- in
- fst x + y
-
diff --git a/testsuite/tests/ghc-regress/parser/should_fail/readFail047.stderr b/testsuite/tests/ghc-regress/parser/should_fail/readFail047.stderr
deleted file mode 100644
index 53af11cf0c..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_fail/readFail047.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-readFail047.hs:6:5: parse error (possibly incorrect indentation)
diff --git a/testsuite/tests/ghc-regress/parser/should_run/Makefile b/testsuite/tests/ghc-regress/parser/should_run/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/parser/should_run/T1344.hs b/testsuite/tests/ghc-regress/parser/should_run/T1344.hs
deleted file mode 100644
index cba7f3fdf6..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/T1344.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- Just new test. This would work without the bug being fixed.
-
-a = '\x10ffff'
-b = "Hello\x000000002c\32World\o00000000000000000000000000000000041"
-c = "♯\00\&00\0"
-
-main = do print a
- putStrLn b
- print c
-
diff --git a/testsuite/tests/ghc-regress/parser/should_run/T1344.stdout b/testsuite/tests/ghc-regress/parser/should_run/T1344.stdout
deleted file mode 100644
index a83f165d74..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/T1344.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-'\1114111'
-Hello, World!
-"\9839\NUL00\NUL"
diff --git a/testsuite/tests/ghc-regress/parser/should_run/all.T b/testsuite/tests/ghc-regress/parser/should_run/all.T
deleted file mode 100644
index 17d6bc0199..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/all.T
+++ /dev/null
@@ -1,7 +0,0 @@
-test('readRun001', normal, compile_and_run, [''])
-test('readRun002', normal, compile_and_run, [''])
-test('readRun003', normal, compile_and_run, [''])
-test('readRun004', expect_broken_for(1257, ['ghci']), compile_and_run, [''])
-test('T1344', normal, compile_and_run, [''])
-test('operator', normal, compile_and_run, [''])
-test('operator2', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/parser/should_run/operator.hs b/testsuite/tests/ghc-regress/parser/should_run/operator.hs
deleted file mode 100644
index 5a7bcf9e97..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/operator.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-module Main where
-
-data Hash = Hash { (#) :: Int }
- deriving (Show,Read)
-
-main = do
- let h = Hash 3
- s = show h
- x = read s :: Hash
- y = show x
- print h
- putStrLn s
- print x
- putStrLn y
- let h' = Hash { (#) = 3 }
- s' = show h'
- x' = read s' :: Hash
- y' = show x'
- print h'
- putStrLn s'
- print x'
- putStrLn y'
-
diff --git a/testsuite/tests/ghc-regress/parser/should_run/operator.stdout b/testsuite/tests/ghc-regress/parser/should_run/operator.stdout
deleted file mode 100644
index b56f190ce6..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/operator.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-Hash {(#) = 3}
-Hash {(#) = 3}
-Hash {(#) = 3}
-Hash {(#) = 3}
-Hash {(#) = 3}
-Hash {(#) = 3}
-Hash {(#) = 3}
-Hash {(#) = 3}
diff --git a/testsuite/tests/ghc-regress/parser/should_run/operator2.hs b/testsuite/tests/ghc-regress/parser/should_run/operator2.hs
deleted file mode 100644
index f38ebc3bc8..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/operator2.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-(|..) :: a -> a -> a
-x |.. y = y
-
-f = [2|..3]
-
-main = putStrLn (show f)
diff --git a/testsuite/tests/ghc-regress/parser/should_run/operator2.stdout b/testsuite/tests/ghc-regress/parser/should_run/operator2.stdout
deleted file mode 100644
index 048026337a..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/operator2.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[3]
diff --git a/testsuite/tests/ghc-regress/parser/should_run/readRun001.hs b/testsuite/tests/ghc-regress/parser/should_run/readRun001.hs
deleted file mode 100644
index d80f2adb7c..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/readRun001.hs
+++ /dev/null
@@ -1,57 +0,0 @@
--- !!! Haskell-98 prefix negate operator
-
--- Make sure the parsing is actually the correct
--- one by running this after it's compiled.
-
-negatedExpression = - (3 + 4)
-
-negatedTightlyBinding = -3^4
-
-negatedNonSection = (- 3)
-
-negatedNonSectionWithHighPrecedenceOp =
- let { f = (+); infix 9 `f` } in ( -3 `f` 4 )
-
-negatedNonSectionWithLowPrecedenceOp =
- let { f = (+); infix 1 `f` } in ( -3 `f` 4 )
-
-negatedRightHandSide =
--- This is actually not legal syntax: 3 * - 4
--- However, lower-precedence binary ops work.
--- (see H98 syntax for exp, or imagine it's because it
--- would parse differently as 3 * 0 - 4)
- let { f = (+); infix 1 `f` } in ( 3 `f` - 4 )
-
-
-subtractionNotNegation = 3 -4
-
-negativePattern =
- case -3 of { (- 3) ->
- case -4 of { - 4 ->
- True } }
--- not legal H98 syntax: case -4 of { _x @ -4 ->
--- (parentheses needed) case -5 of { ~ -5 ->
-
-subtractionNotNegationPattern =
- -- defines infix '-' (shadowing Prelude definition)
- let { 3 -4 = True } in (3 - 4)
-
-precedenceOfNegationCantBeChanged =
- let { (-) = undefined; infix 9 - } in (- 3 * 4)
-
-negationCantBeQualified =
- (Prelude.-3) 4
-
-main = do
- print negatedExpression
- print negatedTightlyBinding
- print negatedNonSection
- print negatedNonSectionWithHighPrecedenceOp
- print negatedNonSectionWithLowPrecedenceOp
- print negatedRightHandSide
- print subtractionNotNegation
- print negativePattern
- print subtractionNotNegationPattern
- print precedenceOfNegationCantBeChanged
- print negationCantBeQualified
-
diff --git a/testsuite/tests/ghc-regress/parser/should_run/readRun001.stdout b/testsuite/tests/ghc-regress/parser/should_run/readRun001.stdout
deleted file mode 100644
index 08d7d27203..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/readRun001.stdout
+++ /dev/null
@@ -1,11 +0,0 @@
--7
--81
--3
--7
-1
--1
--1
-True
-True
--12
-1
diff --git a/testsuite/tests/ghc-regress/parser/should_run/readRun002.hs b/testsuite/tests/ghc-regress/parser/should_run/readRun002.hs
deleted file mode 100644
index 58ba8861ab..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/readRun002.hs
+++ /dev/null
@@ -1,35 +0,0 @@
-{-# LANGUAGE MagicHash #-}
--- !!! Negative unboxed literals, part 1
--- They don't have to be as standards-compliant
--- or follow so many weird cases as the normal
--- boxed version. In particular, normal unboxed
--- subtraction is -#, `minusFloat#`, -##, `minusInteger#`
--- and unboxed negation is negate{Int,Float,Double}#
--- . (-) and negate are kind errors. So we will
--- assume that we don't need to parse infix (-) nicely
--- when unboxed numbers are involved (even though someone
--- "could" hide the Prelude's version and define (-) themself).
--- Also we won't care here whether having a space (- 3#) works.
-
--- Make sure the parsing is actually the correct
--- one by running this after it's compiled.
-
-import GHC.Exts
-
---is floating-point consistently safe to test like this,
---if we stick to integral values?
-main = do
- --These work with any ghc
- print (I# (negateInt# (-3# -# -4#)))
- print (F# (negateFloat# (-3.0# `minusFloat#` -4.0#)))
- print (D# (negateDouble# (-3.0## -## -4.0##)))
- print (I# (-3# ^# 4#)) --different from (boxed) Haskell98 (-3 ^ 4)
- print ( case -1# of { -1# -> True } )
- print ( case 1# of { -1# -> True; _ -> False } )
- print ( case -0# of { 0# -> True } )
-
-infixr 8 ^# --just like ^, binds tighter than - (which is infixl 6)
-( ^# ) :: Int# -> Int# -> Int#
-base ^# 0# = 1#
-base ^# exponent = base *# (base ^# ( exponent -# 1# ))
-
diff --git a/testsuite/tests/ghc-regress/parser/should_run/readRun002.stdout b/testsuite/tests/ghc-regress/parser/should_run/readRun002.stdout
deleted file mode 100644
index fc761860c4..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/readRun002.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
--1
--1.0
--1.0
-81
-True
-False
-True
diff --git a/testsuite/tests/ghc-regress/parser/should_run/readRun003.hs b/testsuite/tests/ghc-regress/parser/should_run/readRun003.hs
deleted file mode 100644
index 578e2d18db..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/readRun003.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE MagicHash #-}
--- !!! Negative unboxed literals, part 2
-
-import GHC.Exts
-
-main = do
- --Newly implemented: don't parse this as subtraction (Prelude.-):
- print (I# (negateInt# -3#))
- print (F# (negateFloat# -3.0#))
- print (D# (negateDouble# -3.0##))
- --nor this as let (-) f 1# = ...
- print (let { f -1# = True } in f (-1#))
-
diff --git a/testsuite/tests/ghc-regress/parser/should_run/readRun003.stdout b/testsuite/tests/ghc-regress/parser/should_run/readRun003.stdout
deleted file mode 100644
index 5953eb3a28..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/readRun003.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-3
-3.0
-3.0
-True
diff --git a/testsuite/tests/ghc-regress/parser/should_run/readRun004.hs b/testsuite/tests/ghc-regress/parser/should_run/readRun004.hs
deleted file mode 100644
index 5e6545adb1..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/readRun004.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-{-# LANGUAGE UnboxedTuples, MagicHash #-}
-
--- should_run to make sure linking succeeds
--- (curried unboxed tuples with both boxed
--- and unboxed components).
--- See Trac #1509; also Note [Primop wrappers] in Id.lhs
-
-import GHC.Exts
-
-main = do
- case curried 9.0## 't'# of
- (# i#, u@(), d1#, c1#, f#, w#, d2#, c2# #)
- -> print ( I# i#, u, D# d1#, C# c1#, F# f#, W# w#, D# d2#, C# c2# )
- print $ map_ ((#,#) True) ['a','b','c']
-
--- try NOINLINE to make sure the currying isn't eliminated
--- too soon, but also test the other one without NOINLINE
--- for variety of testing
-{-# NOINLINE curried #-}
-curried :: Double# -> Char# ->
- (# Int#, (), Double#, Char#, Float#, Word#, Double#, Char# #)
-curried = (#,,,,,,,#) 3# () 4.0## 'f'# 5.0# 32##
-
-map_ :: (a -> (# b, c #)) -> [a] -> [(b,c)]
-map_ f [] = []
-map_ f (a:as) = case f a of
- (# b, c #) -> (b, c) : map_ f as
-
diff --git a/testsuite/tests/ghc-regress/parser/should_run/readRun004.stdout b/testsuite/tests/ghc-regress/parser/should_run/readRun004.stdout
deleted file mode 100644
index 9c27fdf9d5..0000000000
--- a/testsuite/tests/ghc-regress/parser/should_run/readRun004.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-(3,(),4.0,'f',5.0,32,9.0,'t')
-[(True,'a'),(True,'b'),(True,'c')]
diff --git a/testsuite/tests/ghc-regress/parser/unicode/1103.hs b/testsuite/tests/ghc-regress/parser/unicode/1103.hs
deleted file mode 100644
index 6d10064056..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/1103.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE UnicodeSyntax #-}
-{-
- Three kinds of Unicode tests for our purposes.
--}
-
-module UniTest where
-
--- Non working Japanese Unicode test.
-
-ã¦ã™ã¨3 ∷ IO ()
-ã¦ã™ã¨3 = do
- putStrLn $ show 人間虫 where
- 人間虫 = "humasect"
diff --git a/testsuite/tests/ghc-regress/parser/unicode/1744.hs b/testsuite/tests/ghc-regress/parser/unicode/1744.hs
deleted file mode 100644
index 90273741da..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/1744.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-main = print hello
--- test that layout has not been screwed up
-hello = "ã“ã‚“ã«ã¡ã¯ 世界"
diff --git a/testsuite/tests/ghc-regress/parser/unicode/1744.stdout b/testsuite/tests/ghc-regress/parser/unicode/1744.stdout
deleted file mode 100644
index f127f8d21d..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/1744.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"\12371\12435\12395\12385\12399 \19990\30028"
diff --git a/testsuite/tests/ghc-regress/parser/unicode/2302.hs b/testsuite/tests/ghc-regress/parser/unicode/2302.hs
deleted file mode 100644
index c40c704cc3..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/2302.hs
+++ /dev/null
@@ -1 +0,0 @@
-f = À
diff --git a/testsuite/tests/ghc-regress/parser/unicode/2302.stderr b/testsuite/tests/ghc-regress/parser/unicode/2302.stderr
deleted file mode 100644
index 608c9ef0bd..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/2302.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-2302.hs:1:5: Not in scope: data constructor `À'
diff --git a/testsuite/tests/ghc-regress/parser/unicode/4373.hs b/testsuite/tests/ghc-regress/parser/unicode/4373.hs
deleted file mode 100644
index a753432a41..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/4373.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldCompile where
-
-test = let vâ‚‚ = (+) in vâ‚‚ 1 3
diff --git a/testsuite/tests/ghc-regress/parser/unicode/Makefile b/testsuite/tests/ghc-regress/parser/unicode/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/parser/unicode/all.T b/testsuite/tests/ghc-regress/parser/unicode/all.T
deleted file mode 100644
index e5375a361e..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/all.T
+++ /dev/null
@@ -1,22 +0,0 @@
-# test that we catch UTF-8 decoding errors
-
-test('utf8_002', normal, compile_fail, [''])
-test('utf8_003', normal, compile_fail, [''])
-test('utf8_004', normal, compile_fail, [''])
-test('utf8_005', normal, compile_fail, [''])
-
-test('utf8_010', normal, compile_fail, [''])
-test('utf8_011', normal, compile_fail, [''])
-
-test('utf8_020', normal, compile_fail, [''])
-test('utf8_021', normal, compile_fail, [''])
-test('utf8_022', normal, compile_fail, [''])
-
-# test that we can understand unicode characters in lexemes
-
-test('utf8_024', normal, compile_and_run, [''])
-
-test('1744', normal, compile_and_run, [''])
-test('1103', normal, compile, [''])
-test('2302', only_ways(['normal']), compile_fail, [''])
-test('4373', normal, compile, [''])
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_001.hs b/testsuite/tests/ghc-regress/parser/unicode/utf8_001.hs
deleted file mode 100644
index 371e89e1fa..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_001.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- 0x80 is an invalid character
-bad = '€'
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_001.stderr b/testsuite/tests/ghc-regress/parser/unicode/utf8_001.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_001.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_002.hs b/testsuite/tests/ghc-regress/parser/unicode/utf8_002.hs
deleted file mode 100644
index 589da832f2..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_002.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- buffer ends in 0xC0
-À \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_002.stderr b/testsuite/tests/ghc-regress/parser/unicode/utf8_002.stderr
deleted file mode 100644
index d8083f0c89..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_002.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-utf8_002.hs:2:1: lexical error (UTF-8 decoding error)
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_003.hs b/testsuite/tests/ghc-regress/parser/unicode/utf8_003.hs
deleted file mode 100644
index bd8e2f552c..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_003.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- buffer ends in 0xD0
-Ð \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_003.stderr b/testsuite/tests/ghc-regress/parser/unicode/utf8_003.stderr
deleted file mode 100644
index be433d9141..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_003.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-utf8_003.hs:2:1: lexical error (UTF-8 decoding error)
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_004.hs b/testsuite/tests/ghc-regress/parser/unicode/utf8_004.hs
deleted file mode 100644
index 6a1a839246..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_004.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- buffer ends in 0xE0
-à \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_004.stderr b/testsuite/tests/ghc-regress/parser/unicode/utf8_004.stderr
deleted file mode 100644
index aff8256549..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_004.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-utf8_004.hs:2:1: lexical error (UTF-8 decoding error)
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_005.hs b/testsuite/tests/ghc-regress/parser/unicode/utf8_005.hs
deleted file mode 100644
index e88fec5a4f..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_005.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- buffer ends in 0xF0
-ð \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_005.stderr b/testsuite/tests/ghc-regress/parser/unicode/utf8_005.stderr
deleted file mode 100644
index 3d551bae44..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_005.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-utf8_005.hs:2:1: lexical error (UTF-8 decoding error)
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_010.hs b/testsuite/tests/ghc-regress/parser/unicode/utf8_010.hs
deleted file mode 100644
index 371e89e1fa..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_010.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- 0x80 is an invalid character
-bad = '€'
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_010.stderr b/testsuite/tests/ghc-regress/parser/unicode/utf8_010.stderr
deleted file mode 100644
index a2bb9b52e2..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_010.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-utf8_010.hs:2:8:
- lexical error in string/character literal (UTF-8 decoding error)
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_011.hs b/testsuite/tests/ghc-regress/parser/unicode/utf8_011.hs
deleted file mode 100644
index 5700e1db45..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_011.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- 0xbf is an invalid character
-bad = '¿'
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_011.stderr b/testsuite/tests/ghc-regress/parser/unicode/utf8_011.stderr
deleted file mode 100644
index 0b34980303..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_011.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-utf8_011.hs:2:8:
- lexical error in string/character literal (UTF-8 decoding error)
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_020.hs b/testsuite/tests/ghc-regress/parser/unicode/utf8_020.hs
deleted file mode 100644
index eaefe622fa..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_020.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- A start sequence byte (0xC0) followed by an invalid continuation:
-bad = "À."
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_020.stderr b/testsuite/tests/ghc-regress/parser/unicode/utf8_020.stderr
deleted file mode 100644
index 7254106142..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_020.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-utf8_020.hs:2:8:
- lexical error in string/character literal (UTF-8 decoding error)
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_021.hs b/testsuite/tests/ghc-regress/parser/unicode/utf8_021.hs
deleted file mode 100644
index 639e0bfc63..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_021.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- A start sequence byte (0xE0) followed by an invalid continuation:
-bad = "à."
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_021.stderr b/testsuite/tests/ghc-regress/parser/unicode/utf8_021.stderr
deleted file mode 100644
index 2867239846..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_021.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-utf8_021.hs:2:8:
- lexical error in string/character literal (UTF-8 decoding error)
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_022.hs b/testsuite/tests/ghc-regress/parser/unicode/utf8_022.hs
deleted file mode 100644
index 6484a03c40..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_022.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- A start sequence byte (0xE0) followed by an invalid continuation:
-bad = "ð."
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_022.stderr b/testsuite/tests/ghc-regress/parser/unicode/utf8_022.stderr
deleted file mode 100644
index 3f84d06de2..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_022.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-utf8_022.hs:2:8:
- lexical error in string/character literal (UTF-8 decoding error)
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_023.hs b/testsuite/tests/ghc-regress/parser/unicode/utf8_023.hs
deleted file mode 100644
index 255d48b741..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_023.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- some incomplete sequences concatenated
-bad = "Àà€ð€€ø€€€"
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_023.stderr b/testsuite/tests/ghc-regress/parser/unicode/utf8_023.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_023.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_024.hs b/testsuite/tests/ghc-regress/parser/unicode/utf8_024.hs
deleted file mode 100644
index 1e491f75ec..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_024.hs
+++ /dev/null
@@ -1,194 +0,0 @@
-{-# LANGUAGE ExplicitForAll, UnicodeSyntax #-}
-{-
-Test for valid unicode identifiers
-
-*** This file is UTF-8 encoded.
-
-*** BE CAREFUL WHEN EDITING THIS FILE WITH EMACS. Emacs' UTF-8 engine
- has several times got the encoding wrong for me and inserted bogus
- bytes, especially in the 4-byte characters. Edit the file literally
- (M-x find-file-literally). By all means view it in Emacs' UTF-8
- mode (C-x RET c utf-8, C-x f unicode001.hs), but don't edit and save.
-
-Here's a selection of characters I pulled from UnicodeData.txt that we
-can use to test with:
-
--- upper/lower case letters
-À LATIN CAPITAL LETTER A WITH GRAVE;Lu;0;L;0041 0300;;;;N;LATIN CAPITAL LETTER A GRAVE;;;00E0;
-à LATIN SMALL LETTER A WITH GRAVE;Ll;0;L;0061 0300;;;;N;LATIN SMALL LETTER A GRAVE;;00C0;;00C0
-
-Α GREEK CAPITAL LETTER ALPHA;Lu;0;L;;;;;N;;;;03B1;
-α GREEK SMALL LETTER ALPHA;Ll;0;L;;;;;N;;;0391;;0391
-α GREEK SMALL LETTER ALPHA;Ll;0;L;;;;;N;;;0391;;0391
-β GREEK SMALL LETTER BETA;Ll;0;L;;;;;N;;;0392;;0392
-γ GREEK SMALL LETTER GAMMA;Ll;0;L;;;;;N;;;0393;;0393
-δ GREEK SMALL LETTER DELTA;Ll;0;L;;;;;N;;;0394;;0394
-
-á‚  GEORGIAN CAPITAL LETTER AN;Lu;0;L;;;;;N;;Khutsuri;;;
-რGEORGIAN LETTER AN;Lo;0;L;;;;;N;GEORGIAN SMALL LETTER AN;;;;
-
-Ï¢ COPTIC CAPITAL LETTER SHEI;Lu;0;L;;;;;N;GREEK CAPITAL LETTER SHEI;;;03E3;
-Ï£ COPTIC SMALL LETTER SHEI;Ll;0;L;;;;;N;GREEK SMALL LETTER SHEI;;03E2;;03E2
-
-Ð CYRILLIC CAPITAL LETTER A;Lu;0;L;;;;;N;;;;0430;
-а CYRILLIC SMALL LETTER A;Ll;0;L;;;;;N;;;0410;;0410
-
-Ô± ARMENIAN CAPITAL LETTER AYB;Lu;0;L;;;;;N;;;;0561;
-Õ¡ ARMENIAN SMALL LETTER AYB;Ll;0;L;;;;;N;;;0531;;0531
-
-ð´ MATHEMATICAL ITALIC CAPITAL A;Lu;0;L;<font> 0041;;;;N;;;;;
-ð‘Ž MATHEMATICAL ITALIC SMALL A;Ll;0;L;<font> 0061;;;;N;;;;;
-
-𔸠MATHEMATICAL DOUBLE-STRUCK CAPITAL A;Lu;0;L;<font> 0041;;;;N;;;;;
-ð•’ MATHEMATICAL DOUBLE-STRUCK SMALL A;Ll;0;L;<font> 0061;;;;N;;;;;
-
--- title case letters
-Ç… LATIN CAPITAL LETTER D WITH SMALL LETTER Z WITH CARON;Lt;0;L;<compat> 0044 017E;;;;N;LATIN LETTER CAPITAL D SMALL Z HACEK;;01C4;01C6;01C5
-Lj LATIN CAPITAL LETTER L WITH SMALL LETTER J;Lt;0;L;<compat> 004C 006A;;;;N;LATIN LETTER CAPITAL L SMALL J;;01C7;01C9;01C8
-
--- small caps
-á´€ LATIN LETTER SMALL CAPITAL A;Ll;0;L;;;;;N;;;;;
-á´¦ GREEK LETTER SMALL CAPITAL GAMMA;Ll;0;L;;;;;N;;;;;
-
--- caseless letters
-ଅ ;ORIYA LETTER A;Lo;0;L;;;;;N;;;;;
-à®… TAMIL LETTER A;Lo;0;L;;;;;N;;;;;
-à°… TELUGU LETTER A;Lo;0;L;;;;;N;;;;;
-ಅ KANNADA LETTER A;Lo;0;L;;;;;N;;;;;
-à´… MALAYALAM LETTER A;Lo;0;L;;;;;N;;;;;
-අ SINHALA LETTER AYANNA;Lo;0;L;;;;;N;;;;;
-ภTHAI CHARACTER KO KAI;Lo;0;L;;;;;N;THAI LETTER KO KAI;;;;
-ຠLAO LETTER KO;Lo;0;L;;;;;N;;;;;
-ཀ TIBETAN LETTER KA;Lo;0;L;;;;;N;;;;;
-က MYANMAR LETTER KA;Lo;0;L;;;;;N;;;;;
-á„€ HANGUL CHOSEONG KIYEOK;Lo;0;L;;;;;N;;g *;;;
-ሀ ETHIOPIC SYLLABLE HA;Lo;0;L;;;;;N;;;;;
-Ꭰ CHEROKEE LETTER A;Lo;0;L;;;;;N;;;;;
-á CANADIAN SYLLABICS E;Lo;0;L;;;;;N;;;;;
-áš OGHAM LETTER BEITH;Lo;0;L;;;;;N;;;;;
-áš  RUNIC LETTER FEHU FEOH FE F;Lo;0;L;;;;;N;;;;;
-ᜀ TAGALOG LETTER A;Lo;0;L;;;;;N;;;;;
-ᜠ HANUNOO LETTER A;Lo;0;L;;;;;N;;;;;
-ဠBUHID LETTER A;Lo;0;L;;;;;N;;;;;
-á  TAGBANWA LETTER A;Lo;0;L;;;;;N;;;;;
-ក KHMER LETTER KA;Lo;0;L;;;;;N;;;;;
-á   MONGOLIAN LETTER A;Lo;0;L;;;;;N;;;;;
-ᤠLIMBU LETTER KA;Lo;0;L;;;;;N;;;;;
-ᥠTAI LE LETTER KA;Lo;0;L;;;;;N;;;;;
-ã HIRAGANA LETTER SMALL A;Lo;0;L;;;;;N;;;;;
-ã‚¢ KATAKANA LETTER A;Lo;0;L;;;;;N;;;;;
-ã„… BOPOMOFO LETTER B;Lo;0;L;;;;;N;;;;;
-ㄱ HANGUL LETTER KIYEOK;Lo;0;L;<compat> 1100;;;;N;HANGUL LETTER GIYEOG;;;;
-ㆠ BOPOMOFO LETTER BU;Lo;0;L;;;;;N;;;;;
-ꀀ YI SYLLABLE IT;Lo;0;L;;;;;N;;;;;
-
--- spaces
-  NO-BREAK SPACE;Zs;0;CS;<noBreak> 0020;;;;N;NON-BREAKING SPACE;;;;
-  EN QUAD;Zs;0;WS;2002;;;;N;;;;;
-  EN SPACE;Zs;0;WS;<compat> 0020;;;;N;;;;;
-  THIN SPACE;Zs;0;WS;<compat> 0020;;;;N;;;;;
-​ ZERO WIDTH SPACE;Zs;0;BN;;;;;N;;;;;
-
--- some symbols we might find useful in Haskell
-↠LEFTWARDS ARROW;Sm;0;ON;;;;;N;LEFT ARROW;;;;
-→ RIGHTWARDS ARROW;Sm;0;ON;;;;;N;RIGHT ARROW;;;;
-‖ DOUBLE VERTICAL LINE;Po;0;ON;;;;;N;DOUBLE VERTICAL BAR;;;;
-∀ FOR ALL;Sm;0;ON;;;;;N;;;;;
-∠COMPLEMENT;Sm;0;ON;;;;;Y;;;;;
-∃ THERE EXISTS;Sm;0;ON;;;;;Y;;;;;
-∄ THERE DOES NOT EXIST;Sm;0;ON;2203 0338;;;;Y;;;;;
-∅ EMPTY SET;Sm;0;ON;;;;;N;;;;;
-∆ INCREMENT;Sm;0;ON;;;;;N;;;;;
-∇ NABLA;Sm;0;ON;;;;;N;;;;;
-∈ ELEMENT OF;Sm;0;ON;;;;;Y;;;;;
-∉ NOT AN ELEMENT OF;Sm;0;ON;2208 0338;;;;Y;;;;;
-∠N-ARY PRODUCT;Sm;0;ON;;;;;N;;;;;
-∑ N-ARY SUMMATION;Sm;0;ON;;;;;Y;;;;;
-− MINUS SIGN;Sm;0;ET;;;;;N;;;;;
-∓ MINUS-OR-PLUS SIGN;Sm;0;ET;;;;;N;;;;;
-∕ DIVISION SLASH;Sm;0;ON;;;;;Y;;;;;
-∘ RING OPERATOR;Sm;0;ON;;;;;N;;;;;
-∙ BULLET OPERATOR;Sm;0;ON;;;;;N;;;;;
-√ SQUARE ROOT;Sm;0;ON;;;;;Y;;;;;
-∧ LOGICAL AND;Sm;0;ON;;;;;N;;;;;
-∨ LOGICAL OR;Sm;0;ON;;;;;N;;;;;
-∩ INTERSECTION;Sm;0;ON;;;;;N;;;;;
-∪ UNION;Sm;0;ON;;;;;N;;;;;
-≃ ASYMPTOTICALLY EQUAL TO;Sm;0;ON;;;;;Y;;;;;
-≈ ALMOST EQUAL TO;Sm;0;ON;;;;;Y;;;;;
-≠ NOT EQUAL TO;Sm;0;ON;003D 0338;;;;Y;;;;;
-≙ ESTIMATES;Sm;0;ON;;;;;N;;;;;
-≤ LESS-THAN OR EQUAL TO;Sm;0;ON;;;;;Y;LESS THAN OR EQUAL TO;;;;
-≥ GREATER-THAN OR EQUAL TO;Sm;0;ON;;;;;Y;GREATER THAN OR EQUAL TO;;;;
-≪ MUCH LESS-THAN;Sm;0;ON;;;;;Y;MUCH LESS THAN;;;;
-≫ MUCH GREATER-THAN;Sm;0;ON;;;;;Y;MUCH GREATER THAN;;;;
-⊂ SUBSET OF;Sm;0;ON;;;;;Y;;;;;
-⊃ SUPERSET OF;Sm;0;ON;;;;;Y;;;;;
-⊄ NOT A SUBSET OF;Sm;0;ON;2282 0338;;;;Y;;;;;
-⊅ NOT A SUPERSET OF;Sm;0;ON;2283 0338;;;;Y;;;;;
-⊆ SUBSET OF OR EQUAL TO;Sm;0;ON;;;;;Y;;;;;
-⊇ SUPERSET OF OR EQUAL TO;Sm;0;ON;;;;;Y;;;;;
-⊕ CIRCLED PLUS;Sm;0;ON;;;;;N;;;;;
-⊖ CIRCLED MINUS;Sm;0;ON;;;;;N;;;;;
-⊗ CIRCLED TIMES;Sm;0;ON;;;;;N;;;;;
-⊘ CIRCLED DIVISION SLASH;Sm;0;ON;;;;;Y;;;;;
-⊙ CIRCLED DOT OPERATOR;Sm;0;ON;;;;;N;;;;;
-⊢ RIGHT TACK;Sm;0;ON;;;;;Y;;;;;
-⊣ LEFT TACK;Sm;0;ON;;;;;Y;;;;;
-⊤ DOWN TACK;Sm;0;ON;;;;;N;;;;;
-⊥ UP TACK;Sm;0;ON;;;;;N;;;;;
-⊦ ASSERTION;Sm;0;ON;;;;;Y;;;;;
-⊧ MODELS;Sm;0;ON;;;;;Y;;;;;
-⊨ TRUE;Sm;0;ON;;;;;Y;;;;;
-â‹‚ N-ARY INTERSECTION;Sm;0;ON;;;;;N;;;;;
-⋃ N-ARY UNION;Sm;0;ON;;;;;N;;;;;
-â‹… DOT OPERATOR;Sm;0;ON;;;;;N;;;;;
-⋯ MIDLINE HORIZONTAL ELLIPSIS;Sm;0;ON;;;;;N;;;;;
-〈 LEFT-POINTING ANGLE BRACKET;Ps;0;ON;3008;;;;Y;BRA;;;;
-〉 RIGHT-POINTING ANGLE BRACKET;Pe;0;ON;3009;;;;Y;KET;;;;
-☹ WHITE FROWNING FACE;So;0;ON;;;;;N;;;;;
-☺ WHITE SMILING FACE;So;0;ON;;;;;N;;;;;
-⧺ DOUBLE PLUS;Sm;0;ON;;;;;N;;;;;
-
--- other random symbols
-☣ BIOHAZARD SIGN;So;0;ON;;;;;N;;;;;
-ð„¬ MUSICAL SYMBOL FLAT UP;So;0;L;;;;;N;;;;;
-ðŒ‹ TETRAGRAM FOR CONTRARIETY;So;0;ON;;;;;N;;;;;
-
--- braille
-â¡ ;BRAILLE PATTERN DOTS-1347;So;0;ON;;;;;N;;;;;
-⣿ ;BRAILLE PATTERN DOTS-12345678;So;0;ON;;;;;N;;;;;
-
--- numbers
-â…  ;ROMAN NUMERAL ONE;Nl;0;L;<compat> 0049;;;1;N;;;;2170;
-â…¬ ;ROMAN NUMERAL FIFTY;Nl;0;L;<compat> 004C;;;50;N;;;;217C;
-â‘  ;CIRCLED DIGIT ONE;No;0;EN;<circle> 0031;;1;1;N;;;;;
-â‘´ ;PARENTHESIZED DIGIT ONE;No;0;EN;<compat> 0028 0031 0029;;1;1;N;;;;;
-â’ˆ ;DIGIT ONE FULL STOP;No;0;EN;<compat> 0031 002E;;1;1;N;DIGIT ONE PERIOD;;;;
--}
-
-module Main where
-
--- Test upper-case recognition:
-data T
- = À -- latin
- | Α -- greek
- | á‚  -- georgian
- | Ϣ -- coptic
- | Ð -- cyrillic
- | Ô± -- armenian
- | ð´ -- maths italic
- | 𔸠-- maths double-struck
- | Ç… -- title case latin
-
--- Test lower-case recognition:
-à α ϣ а ա 𑎠𕒠ᴀ ᴦ = undefined
-
--- Caseless characters in a string:
-string = "ଅஅఅಅഅඅà¸àºà½€á€€á„€áˆ€áŽ áášáš áœ€áœ á€á áž€á  á¤á¥ãアㄅㄱㆠ" -- 29 chars
-
--- composition using a ring, greek type variables, and right arrows
-(∘) :: ∀ α β γ . (β → γ) → (α → β) → (α → γ)
-(f ∘ g) x = f (g x)
-
-main = print ∘ length $ string
diff --git a/testsuite/tests/ghc-regress/parser/unicode/utf8_024.stdout b/testsuite/tests/ghc-regress/parser/unicode/utf8_024.stdout
deleted file mode 100644
index f04c001f3f..0000000000
--- a/testsuite/tests/ghc-regress/parser/unicode/utf8_024.stdout
+++ /dev/null
@@ -1 +0,0 @@
-29
diff --git a/testsuite/tests/ghc-regress/perf/Makefile b/testsuite/tests/ghc-regress/perf/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/perf/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/perf/compiler/Makefile b/testsuite/tests/ghc-regress/perf/compiler/Makefile
deleted file mode 100644
index b0c937b230..0000000000
--- a/testsuite/tests/ghc-regress/perf/compiler/Makefile
+++ /dev/null
@@ -1,9 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-.PHONY: T4007
-T4007:
- $(RM) -f T4007.hi T4007.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O -ddump-rule-firings T4007.hs
-
diff --git a/testsuite/tests/ghc-regress/perf/compiler/T1969.hs b/testsuite/tests/ghc-regress/perf/compiler/T1969.hs
deleted file mode 100644
index 05045cccba..0000000000
--- a/testsuite/tests/ghc-regress/perf/compiler/T1969.hs
+++ /dev/null
@@ -1,1210 +0,0 @@
-
-module T1969 where
-
-class C a where
- c :: a -> String
- d :: a -> String
- d x = c x
- e :: a -> String
- e x = c x
-
-data A1 = A1
-instance C A1 where
- c A1 = "A1"
-
-data A2 = A2
-instance C A2 where
- c A2 = "A2"
-
-data A3 = A3
-instance C A3 where
- c A3 = "A3"
-
-data A4 = A4
-instance C A4 where
- c A4 = "A4"
-
-data A5 = A5
-instance C A5 where
- c A5 = "A5"
-
-data A6 = A6
-instance C A6 where
- c A6 = "A6"
-
-data A7 = A7
-instance C A7 where
- c A7 = "A7"
-
-data A8 = A8
-instance C A8 where
- c A8 = "A8"
-
-data A9 = A9
-instance C A9 where
- c A9 = "A9"
-
-data A10 = A10
-instance C A10 where
- c A10 = "A10"
-
-data A11 = A11
-instance C A11 where
- c A11 = "A11"
-
-data A12 = A12
-instance C A12 where
- c A12 = "A12"
-
-data A13 = A13
-instance C A13 where
- c A13 = "A13"
-
-data A14 = A14
-instance C A14 where
- c A14 = "A14"
-
-data A15 = A15
-instance C A15 where
- c A15 = "A15"
-
-data A16 = A16
-instance C A16 where
- c A16 = "A16"
-
-data A17 = A17
-instance C A17 where
- c A17 = "A17"
-
-data A18 = A18
-instance C A18 where
- c A18 = "A18"
-
-data A19 = A19
-instance C A19 where
- c A19 = "A19"
-
-data A20 = A20
-instance C A20 where
- c A20 = "A20"
-
-data A21 = A21
-instance C A21 where
- c A21 = "A21"
-
-data A22 = A22
-instance C A22 where
- c A22 = "A22"
-
-data A23 = A23
-instance C A23 where
- c A23 = "A23"
-
-data A24 = A24
-instance C A24 where
- c A24 = "A24"
-
-data A25 = A25
-instance C A25 where
- c A25 = "A25"
-
-data A26 = A26
-instance C A26 where
- c A26 = "A26"
-
-data A27 = A27
-instance C A27 where
- c A27 = "A27"
-
-data A28 = A28
-instance C A28 where
- c A28 = "A28"
-
-data A29 = A29
-instance C A29 where
- c A29 = "A29"
-
-data A30 = A30
-instance C A30 where
- c A30 = "A30"
-
-data A31 = A31
-instance C A31 where
- c A31 = "A31"
-
-data A32 = A32
-instance C A32 where
- c A32 = "A32"
-
-data A33 = A33
-instance C A33 where
- c A33 = "A33"
-
-data A34 = A34
-instance C A34 where
- c A34 = "A34"
-
-data A35 = A35
-instance C A35 where
- c A35 = "A35"
-
-data A36 = A36
-instance C A36 where
- c A36 = "A36"
-
-data A37 = A37
-instance C A37 where
- c A37 = "A37"
-
-data A38 = A38
-instance C A38 where
- c A38 = "A38"
-
-data A39 = A39
-instance C A39 where
- c A39 = "A39"
-
-data A40 = A40
-instance C A40 where
- c A40 = "A40"
-
-data A41 = A41
-instance C A41 where
- c A41 = "A41"
-
-data A42 = A42
-instance C A42 where
- c A42 = "A42"
-
-data A43 = A43
-instance C A43 where
- c A43 = "A43"
-
-data A44 = A44
-instance C A44 where
- c A44 = "A44"
-
-data A45 = A45
-instance C A45 where
- c A45 = "A45"
-
-data A46 = A46
-instance C A46 where
- c A46 = "A46"
-
-data A47 = A47
-instance C A47 where
- c A47 = "A47"
-
-data A48 = A48
-instance C A48 where
- c A48 = "A48"
-
-data A49 = A49
-instance C A49 where
- c A49 = "A49"
-
-data A50 = A50
-instance C A50 where
- c A50 = "A50"
-
-data A51 = A51
-instance C A51 where
- c A51 = "A51"
-
-data A52 = A52
-instance C A52 where
- c A52 = "A52"
-
-data A53 = A53
-instance C A53 where
- c A53 = "A53"
-
-data A54 = A54
-instance C A54 where
- c A54 = "A54"
-
-data A55 = A55
-instance C A55 where
- c A55 = "A55"
-
-data A56 = A56
-instance C A56 where
- c A56 = "A56"
-
-data A57 = A57
-instance C A57 where
- c A57 = "A57"
-
-data A58 = A58
-instance C A58 where
- c A58 = "A58"
-
-data A59 = A59
-instance C A59 where
- c A59 = "A59"
-
-data A60 = A60
-instance C A60 where
- c A60 = "A60"
-
-data A61 = A61
-instance C A61 where
- c A61 = "A61"
-
-data A62 = A62
-instance C A62 where
- c A62 = "A62"
-
-data A63 = A63
-instance C A63 where
- c A63 = "A63"
-
-data A64 = A64
-instance C A64 where
- c A64 = "A64"
-
-data A65 = A65
-instance C A65 where
- c A65 = "A65"
-
-data A66 = A66
-instance C A66 where
- c A66 = "A66"
-
-data A67 = A67
-instance C A67 where
- c A67 = "A67"
-
-data A68 = A68
-instance C A68 where
- c A68 = "A68"
-
-data A69 = A69
-instance C A69 where
- c A69 = "A69"
-
-data A70 = A70
-instance C A70 where
- c A70 = "A70"
-
-data A71 = A71
-instance C A71 where
- c A71 = "A71"
-
-data A72 = A72
-instance C A72 where
- c A72 = "A72"
-
-data A73 = A73
-instance C A73 where
- c A73 = "A73"
-
-data A74 = A74
-instance C A74 where
- c A74 = "A74"
-
-data A75 = A75
-instance C A75 where
- c A75 = "A75"
-
-data A76 = A76
-instance C A76 where
- c A76 = "A76"
-
-data A77 = A77
-instance C A77 where
- c A77 = "A77"
-
-data A78 = A78
-instance C A78 where
- c A78 = "A78"
-
-data A79 = A79
-instance C A79 where
- c A79 = "A79"
-
-data A80 = A80
-instance C A80 where
- c A80 = "A80"
-
-data A81 = A81
-instance C A81 where
- c A81 = "A81"
-
-data A82 = A82
-instance C A82 where
- c A82 = "A82"
-
-data A83 = A83
-instance C A83 where
- c A83 = "A83"
-
-data A84 = A84
-instance C A84 where
- c A84 = "A84"
-
-data A85 = A85
-instance C A85 where
- c A85 = "A85"
-
-data A86 = A86
-instance C A86 where
- c A86 = "A86"
-
-data A87 = A87
-instance C A87 where
- c A87 = "A87"
-
-data A88 = A88
-instance C A88 where
- c A88 = "A88"
-
-data A89 = A89
-instance C A89 where
- c A89 = "A89"
-
-data A90 = A90
-instance C A90 where
- c A90 = "A90"
-
-data A91 = A91
-instance C A91 where
- c A91 = "A91"
-
-data A92 = A92
-instance C A92 where
- c A92 = "A92"
-
-data A93 = A93
-instance C A93 where
- c A93 = "A93"
-
-data A94 = A94
-instance C A94 where
- c A94 = "A94"
-
-data A95 = A95
-instance C A95 where
- c A95 = "A95"
-
-data A96 = A96
-instance C A96 where
- c A96 = "A96"
-
-data A97 = A97
-instance C A97 where
- c A97 = "A97"
-
-data A98 = A98
-instance C A98 where
- c A98 = "A98"
-
-data A99 = A99
-instance C A99 where
- c A99 = "A99"
-
-data A100 = A100
-instance C A100 where
- c A100 = "A100"
-
-data A101 = A101
-instance C A101 where
- c A101 = "A101"
-
-data A102 = A102
-instance C A102 where
- c A102 = "A102"
-
-data A103 = A103
-instance C A103 where
- c A103 = "A103"
-
-data A104 = A104
-instance C A104 where
- c A104 = "A104"
-
-data A105 = A105
-instance C A105 where
- c A105 = "A105"
-
-data A106 = A106
-instance C A106 where
- c A106 = "A106"
-
-data A107 = A107
-instance C A107 where
- c A107 = "A107"
-
-data A108 = A108
-instance C A108 where
- c A108 = "A108"
-
-data A109 = A109
-instance C A109 where
- c A109 = "A109"
-
-data A110 = A110
-instance C A110 where
- c A110 = "A110"
-
-data A111 = A111
-instance C A111 where
- c A111 = "A111"
-
-data A112 = A112
-instance C A112 where
- c A112 = "A112"
-
-data A113 = A113
-instance C A113 where
- c A113 = "A113"
-
-data A114 = A114
-instance C A114 where
- c A114 = "A114"
-
-data A115 = A115
-instance C A115 where
- c A115 = "A115"
-
-data A116 = A116
-instance C A116 where
- c A116 = "A116"
-
-data A117 = A117
-instance C A117 where
- c A117 = "A117"
-
-data A118 = A118
-instance C A118 where
- c A118 = "A118"
-
-data A119 = A119
-instance C A119 where
- c A119 = "A119"
-
-data A120 = A120
-instance C A120 where
- c A120 = "A120"
-
-data A121 = A121
-instance C A121 where
- c A121 = "A121"
-
-data A122 = A122
-instance C A122 where
- c A122 = "A122"
-
-data A123 = A123
-instance C A123 where
- c A123 = "A123"
-
-data A124 = A124
-instance C A124 where
- c A124 = "A124"
-
-data A125 = A125
-instance C A125 where
- c A125 = "A125"
-
-data A126 = A126
-instance C A126 where
- c A126 = "A126"
-
-data A127 = A127
-instance C A127 where
- c A127 = "A127"
-
-data A128 = A128
-instance C A128 where
- c A128 = "A128"
-
-data A129 = A129
-instance C A129 where
- c A129 = "A129"
-
-data A130 = A130
-instance C A130 where
- c A130 = "A130"
-
-data A131 = A131
-instance C A131 where
- c A131 = "A131"
-
-data A132 = A132
-instance C A132 where
- c A132 = "A132"
-
-data A133 = A133
-instance C A133 where
- c A133 = "A133"
-
-data A134 = A134
-instance C A134 where
- c A134 = "A134"
-
-data A135 = A135
-instance C A135 where
- c A135 = "A135"
-
-data A136 = A136
-instance C A136 where
- c A136 = "A136"
-
-data A137 = A137
-instance C A137 where
- c A137 = "A137"
-
-data A138 = A138
-instance C A138 where
- c A138 = "A138"
-
-data A139 = A139
-instance C A139 where
- c A139 = "A139"
-
-data A140 = A140
-instance C A140 where
- c A140 = "A140"
-
-data A141 = A141
-instance C A141 where
- c A141 = "A141"
-
-data A142 = A142
-instance C A142 where
- c A142 = "A142"
-
-data A143 = A143
-instance C A143 where
- c A143 = "A143"
-
-data A144 = A144
-instance C A144 where
- c A144 = "A144"
-
-data A145 = A145
-instance C A145 where
- c A145 = "A145"
-
-data A146 = A146
-instance C A146 where
- c A146 = "A146"
-
-data A147 = A147
-instance C A147 where
- c A147 = "A147"
-
-data A148 = A148
-instance C A148 where
- c A148 = "A148"
-
-data A149 = A149
-instance C A149 where
- c A149 = "A149"
-
-data A150 = A150
-instance C A150 where
- c A150 = "A150"
-
-data A151 = A151
-instance C A151 where
- c A151 = "A151"
-
-data A152 = A152
-instance C A152 where
- c A152 = "A152"
-
-data A153 = A153
-instance C A153 where
- c A153 = "A153"
-
-data A154 = A154
-instance C A154 where
- c A154 = "A154"
-
-data A155 = A155
-instance C A155 where
- c A155 = "A155"
-
-data A156 = A156
-instance C A156 where
- c A156 = "A156"
-
-data A157 = A157
-instance C A157 where
- c A157 = "A157"
-
-data A158 = A158
-instance C A158 where
- c A158 = "A158"
-
-data A159 = A159
-instance C A159 where
- c A159 = "A159"
-
-data A160 = A160
-instance C A160 where
- c A160 = "A160"
-
-data A161 = A161
-instance C A161 where
- c A161 = "A161"
-
-data A162 = A162
-instance C A162 where
- c A162 = "A162"
-
-data A163 = A163
-instance C A163 where
- c A163 = "A163"
-
-data A164 = A164
-instance C A164 where
- c A164 = "A164"
-
-data A165 = A165
-instance C A165 where
- c A165 = "A165"
-
-data A166 = A166
-instance C A166 where
- c A166 = "A166"
-
-data A167 = A167
-instance C A167 where
- c A167 = "A167"
-
-data A168 = A168
-instance C A168 where
- c A168 = "A168"
-
-data A169 = A169
-instance C A169 where
- c A169 = "A169"
-
-data A170 = A170
-instance C A170 where
- c A170 = "A170"
-
-data A171 = A171
-instance C A171 where
- c A171 = "A171"
-
-data A172 = A172
-instance C A172 where
- c A172 = "A172"
-
-data A173 = A173
-instance C A173 where
- c A173 = "A173"
-
-data A174 = A174
-instance C A174 where
- c A174 = "A174"
-
-data A175 = A175
-instance C A175 where
- c A175 = "A175"
-
-data A176 = A176
-instance C A176 where
- c A176 = "A176"
-
-data A177 = A177
-instance C A177 where
- c A177 = "A177"
-
-data A178 = A178
-instance C A178 where
- c A178 = "A178"
-
-data A179 = A179
-instance C A179 where
- c A179 = "A179"
-
-data A180 = A180
-instance C A180 where
- c A180 = "A180"
-
-data A181 = A181
-instance C A181 where
- c A181 = "A181"
-
-data A182 = A182
-instance C A182 where
- c A182 = "A182"
-
-data A183 = A183
-instance C A183 where
- c A183 = "A183"
-
-data A184 = A184
-instance C A184 where
- c A184 = "A184"
-
-data A185 = A185
-instance C A185 where
- c A185 = "A185"
-
-data A186 = A186
-instance C A186 where
- c A186 = "A186"
-
-data A187 = A187
-instance C A187 where
- c A187 = "A187"
-
-data A188 = A188
-instance C A188 where
- c A188 = "A188"
-
-data A189 = A189
-instance C A189 where
- c A189 = "A189"
-
-data A190 = A190
-instance C A190 where
- c A190 = "A190"
-
-data A191 = A191
-instance C A191 where
- c A191 = "A191"
-
-data A192 = A192
-instance C A192 where
- c A192 = "A192"
-
-data A193 = A193
-instance C A193 where
- c A193 = "A193"
-
-data A194 = A194
-instance C A194 where
- c A194 = "A194"
-
-data A195 = A195
-instance C A195 where
- c A195 = "A195"
-
-data A196 = A196
-instance C A196 where
- c A196 = "A196"
-
-data A197 = A197
-instance C A197 where
- c A197 = "A197"
-
-data A198 = A198
-instance C A198 where
- c A198 = "A198"
-
-data A199 = A199
-instance C A199 where
- c A199 = "A199"
-
-data A200 = A200
-instance C A200 where
- c A200 = "A200"
-
-data A201 = A201
-instance C A201 where
- c A201 = "A201"
-
-data A202 = A202
-instance C A202 where
- c A202 = "A202"
-
-data A203 = A203
-instance C A203 where
- c A203 = "A203"
-
-data A204 = A204
-instance C A204 where
- c A204 = "A204"
-
-data A205 = A205
-instance C A205 where
- c A205 = "A205"
-
-data A206 = A206
-instance C A206 where
- c A206 = "A206"
-
-data A207 = A207
-instance C A207 where
- c A207 = "A207"
-
-data A208 = A208
-instance C A208 where
- c A208 = "A208"
-
-data A209 = A209
-instance C A209 where
- c A209 = "A209"
-
-data A210 = A210
-instance C A210 where
- c A210 = "A210"
-
-data A211 = A211
-instance C A211 where
- c A211 = "A211"
-
-data A212 = A212
-instance C A212 where
- c A212 = "A212"
-
-data A213 = A213
-instance C A213 where
- c A213 = "A213"
-
-data A214 = A214
-instance C A214 where
- c A214 = "A214"
-
-data A215 = A215
-instance C A215 where
- c A215 = "A215"
-
-data A216 = A216
-instance C A216 where
- c A216 = "A216"
-
-data A217 = A217
-instance C A217 where
- c A217 = "A217"
-
-data A218 = A218
-instance C A218 where
- c A218 = "A218"
-
-data A219 = A219
-instance C A219 where
- c A219 = "A219"
-
-data A220 = A220
-instance C A220 where
- c A220 = "A220"
-
-data A221 = A221
-instance C A221 where
- c A221 = "A221"
-
-data A222 = A222
-instance C A222 where
- c A222 = "A222"
-
-data A223 = A223
-instance C A223 where
- c A223 = "A223"
-
-data A224 = A224
-instance C A224 where
- c A224 = "A224"
-
-data A225 = A225
-instance C A225 where
- c A225 = "A225"
-
-data A226 = A226
-instance C A226 where
- c A226 = "A226"
-
-data A227 = A227
-instance C A227 where
- c A227 = "A227"
-
-data A228 = A228
-instance C A228 where
- c A228 = "A228"
-
-data A229 = A229
-instance C A229 where
- c A229 = "A229"
-
-data A230 = A230
-instance C A230 where
- c A230 = "A230"
-
-data A231 = A231
-instance C A231 where
- c A231 = "A231"
-
-data A232 = A232
-instance C A232 where
- c A232 = "A232"
-
-data A233 = A233
-instance C A233 where
- c A233 = "A233"
-
-data A234 = A234
-instance C A234 where
- c A234 = "A234"
-
-data A235 = A235
-instance C A235 where
- c A235 = "A235"
-
-data A236 = A236
-instance C A236 where
- c A236 = "A236"
-
-data A237 = A237
-instance C A237 where
- c A237 = "A237"
-
-data A238 = A238
-instance C A238 where
- c A238 = "A238"
-
-data A239 = A239
-instance C A239 where
- c A239 = "A239"
-
-data A240 = A240
-instance C A240 where
- c A240 = "A240"
-
-data A241 = A241
-instance C A241 where
- c A241 = "A241"
-
-data A242 = A242
-instance C A242 where
- c A242 = "A242"
-
-data A243 = A243
-instance C A243 where
- c A243 = "A243"
-
-data A244 = A244
-instance C A244 where
- c A244 = "A244"
-
-data A245 = A245
-instance C A245 where
- c A245 = "A245"
-
-data A246 = A246
-instance C A246 where
- c A246 = "A246"
-
-data A247 = A247
-instance C A247 where
- c A247 = "A247"
-
-data A248 = A248
-instance C A248 where
- c A248 = "A248"
-
-data A249 = A249
-instance C A249 where
- c A249 = "A249"
-
-data A250 = A250
-instance C A250 where
- c A250 = "A250"
-
-data A251 = A251
-instance C A251 where
- c A251 = "A251"
-
-data A252 = A252
-instance C A252 where
- c A252 = "A252"
-
-data A253 = A253
-instance C A253 where
- c A253 = "A253"
-
-data A254 = A254
-instance C A254 where
- c A254 = "A254"
-
-data A255 = A255
-instance C A255 where
- c A255 = "A255"
-
-data A256 = A256
-instance C A256 where
- c A256 = "A256"
-
-data A257 = A257
-instance C A257 where
- c A257 = "A257"
-
-data A258 = A258
-instance C A258 where
- c A258 = "A258"
-
-data A259 = A259
-instance C A259 where
- c A259 = "A259"
-
-data A260 = A260
-instance C A260 where
- c A260 = "A260"
-
-data A261 = A261
-instance C A261 where
- c A261 = "A261"
-
-data A262 = A262
-instance C A262 where
- c A262 = "A262"
-
-data A263 = A263
-instance C A263 where
- c A263 = "A263"
-
-data A264 = A264
-instance C A264 where
- c A264 = "A264"
-
-data A265 = A265
-instance C A265 where
- c A265 = "A265"
-
-data A266 = A266
-instance C A266 where
- c A266 = "A266"
-
-data A267 = A267
-instance C A267 where
- c A267 = "A267"
-
-data A268 = A268
-instance C A268 where
- c A268 = "A268"
-
-data A269 = A269
-instance C A269 where
- c A269 = "A269"
-
-data A270 = A270
-instance C A270 where
- c A270 = "A270"
-
-data A271 = A271
-instance C A271 where
- c A271 = "A271"
-
-data A272 = A272
-instance C A272 where
- c A272 = "A272"
-
-data A273 = A273
-instance C A273 where
- c A273 = "A273"
-
-data A274 = A274
-instance C A274 where
- c A274 = "A274"
-
-data A275 = A275
-instance C A275 where
- c A275 = "A275"
-
-data A276 = A276
-instance C A276 where
- c A276 = "A276"
-
-data A277 = A277
-instance C A277 where
- c A277 = "A277"
-
-data A278 = A278
-instance C A278 where
- c A278 = "A278"
-
-data A279 = A279
-instance C A279 where
- c A279 = "A279"
-
-data A280 = A280
-instance C A280 where
- c A280 = "A280"
-
-data A281 = A281
-instance C A281 where
- c A281 = "A281"
-
-data A282 = A282
-instance C A282 where
- c A282 = "A282"
-
-data A283 = A283
-instance C A283 where
- c A283 = "A283"
-
-data A284 = A284
-instance C A284 where
- c A284 = "A284"
-
-data A285 = A285
-instance C A285 where
- c A285 = "A285"
-
-data A286 = A286
-instance C A286 where
- c A286 = "A286"
-
-data A287 = A287
-instance C A287 where
- c A287 = "A287"
-
-data A288 = A288
-instance C A288 where
- c A288 = "A288"
-
-data A289 = A289
-instance C A289 where
- c A289 = "A289"
-
-data A290 = A290
-instance C A290 where
- c A290 = "A290"
-
-data A291 = A291
-instance C A291 where
- c A291 = "A291"
-
-data A292 = A292
-instance C A292 where
- c A292 = "A292"
-
-data A293 = A293
-instance C A293 where
- c A293 = "A293"
-
-data A294 = A294
-instance C A294 where
- c A294 = "A294"
-
-data A295 = A295
-instance C A295 where
- c A295 = "A295"
-
-data A296 = A296
-instance C A296 where
- c A296 = "A296"
-
-data A297 = A297
-instance C A297 where
- c A297 = "A297"
-
-data A298 = A298
-instance C A298 where
- c A298 = "A298"
-
-data A299 = A299
-instance C A299 where
- c A299 = "A299"
-
-data A300 = A300
-instance C A300 where
- c A300 = "A300"
-
diff --git a/testsuite/tests/ghc-regress/perf/compiler/T3064.hs b/testsuite/tests/ghc-regress/perf/compiler/T3064.hs
deleted file mode 100644
index 328da45976..0000000000
--- a/testsuite/tests/ghc-regress/perf/compiler/T3064.hs
+++ /dev/null
@@ -1,63 +0,0 @@
-{-# LANGUAGE Rank2Types, TypeSynonymInstances, FlexibleInstances #-}
-{-# LANGUAGE TypeFamilies, GeneralizedNewtypeDeriving #-}
-module Bug2 where
-
-newtype ReaderT r m a = ReaderT { runReaderT :: r -> m a }
-
-instance (Monad m) => Monad (ReaderT r m) where
- return a = ReaderT $ \_ -> return a
- m >>= k = ReaderT $ \r -> do
- a <- runReaderT m r
- runReaderT (k a) r
- fail msg = ReaderT $ \_ -> fail msg
-
-newtype ResourceT r s m v = ResourceT { unResourceT :: ReaderT r m v }
- deriving (Monad)
-
-data Ctx = Ctx
-
-data Ch = Ch
-
-type CAT s c = ResourceT [Ch] (s,c)
-
-type CtxM c = ResourceT Ctx c IO
-
-newtype CA s c v = CA { unCA :: CAT s c (CtxM c) v }
- deriving (Monad)
-
-class (Monad m) => MonadCA m where
- type CtxLabel m
-
-instance MonadCA (CA s c) where
- type CtxLabel (CA s c) = c
-
-instance (Monad m, MonadCA m, c ~ CtxLabel m) => MonadCA (CAT s c m) where
- type CtxLabel (CAT s c m) = c
-
-runCAT :: (forall s. CAT s c m v) -> m v
-runCAT action = runReaderT (unResourceT action) []
-
-newRgn :: MonadCA m => (forall s. CAT s (CtxLabel m) m v) -> m v
-newRgn = runCAT
-
-runCA :: (forall s c. CA s c v) -> IO v
-runCA action = runCtxM (runCAT (unCA action))
-
-runCtxM :: (forall c. CtxM c v) -> IO v
-runCtxM action = runReaderT (unResourceT action) Ctx
-
--- test11 :: IO ()
--- test11 = runCA(newRgn(newRgn(newRgn(newRgn(newRgn(
--- newRgn(newRgn(newRgn(newRgn(return()))))))))))
-
--- test12 :: IO ()
--- test12 = runCA(newRgn(newRgn(newRgn(newRgn(newRgn(newRgn(
--- newRgn(newRgn(newRgn(newRgn(return())))))))))))
-
--- test13 :: IO ()
--- test13 = runCA(newRgn(newRgn(newRgn(newRgn(newRgn(newRgn(newRgn(
--- newRgn(newRgn(newRgn(newRgn(return()))))))))))))
-
-test14 :: IO ()
-test14 = runCA(newRgn(newRgn(newRgn(newRgn(newRgn(newRgn(newRgn(newRgn(
- newRgn(newRgn(newRgn(newRgn(return())))))))))))))
diff --git a/testsuite/tests/ghc-regress/perf/compiler/T3294.hs b/testsuite/tests/ghc-regress/perf/compiler/T3294.hs
deleted file mode 100644
index 25e4a2beba..0000000000
--- a/testsuite/tests/ghc-regress/perf/compiler/T3294.hs
+++ /dev/null
@@ -1,206 +0,0 @@
-module Main where
-
-data X = X
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- {-# UNPACK #-} !Double
- deriving (Show)
-
-main = print $ X 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
diff --git a/testsuite/tests/ghc-regress/perf/compiler/T4007.hs b/testsuite/tests/ghc-regress/perf/compiler/T4007.hs
deleted file mode 100644
index 71a37841ed..0000000000
--- a/testsuite/tests/ghc-regress/perf/compiler/T4007.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module T4007 where
-
-f :: IO ()
-f = sequence_ (replicate 10 (putStrLn "yes"))
diff --git a/testsuite/tests/ghc-regress/perf/compiler/T4007.stderr b/testsuite/tests/ghc-regress/perf/compiler/T4007.stderr
deleted file mode 100644
index 9b825fd518..0000000000
--- a/testsuite/tests/ghc-regress/perf/compiler/T4007.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-Rule fired: unpack
-Rule fired: Class op >>
-Rule fired: Class op return
-Rule fired: <=#
-Rule fired: fold/build
-Rule fired: unpack-list
diff --git a/testsuite/tests/ghc-regress/perf/compiler/T4801.hs b/testsuite/tests/ghc-regress/perf/compiler/T4801.hs
deleted file mode 100644
index 8bc02b2c77..0000000000
--- a/testsuite/tests/ghc-regress/perf/compiler/T4801.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- main = print $ length [([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0)]
-
--- 1.6G alloc
--- main = print $ length [([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0)]
-
--- 6G alloc
--- main = print $ length [([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0)]
-
--- 23G alloc
-main = print $ length [([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0),([0,0,0],0)]
-
-
-
diff --git a/testsuite/tests/ghc-regress/perf/compiler/T5030.hs b/testsuite/tests/ghc-regress/perf/compiler/T5030.hs
deleted file mode 100644
index b65e9cdd3c..0000000000
--- a/testsuite/tests/ghc-regress/perf/compiler/T5030.hs
+++ /dev/null
@@ -1,194 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs, EmptyDataDecls, FlexibleContexts #-}
-{-# LANGUAGE UndecidableInstances #-}
-
-module SlowComp where
-
-import Control.Monad
-
--------------------------------------------------------------------------------
--- Usual Peano integers.
-
-
-class NatInt a where
- natInt :: a -> Int
-
-data D0 n = D0 {d0Arg :: n}
-data D1 n = D1 {d1Arg :: n}
-
-data C0
-data C1
-
-class DPosInt n where posInt :: n -> (Int,Int)
-instance DPosInt () where posInt _ = (0,1)
-instance DPosInt n => DPosInt (D0 n) where
- posInt a = (dsum,w*2)
- where
- (dsum,w) = posInt $ d0Arg a
-instance DPosInt n => DPosInt (D1 n) where
- posInt a = (dsum+w,w*2)
- where
- (dsum,w) = posInt $ d1Arg a
-
-instance NatInt () where natInt _ = 0
-instance DPosInt n => NatInt (D0 n) where natInt a = fst $ posInt a
-instance DPosInt n => NatInt (D1 n) where natInt a = fst $ posInt a
-
-type family DRev a
-type instance DRev a = DRev' a ()
-
-type family DRev' x acc
-type instance DRev' () acc = acc
-type instance DRev' (D0 a) acc = DRev' a (D0 acc)
-type instance DRev' (D1 a) acc = DRev' a (D1 acc)
-
-type family DAddC c a b
-type instance DAddC C0 (D0 a) (D0 b) = D0 (DAddC C0 a b)
-type instance DAddC C0 (D1 a) (D0 b) = D1 (DAddC C0 a b)
-type instance DAddC C0 (D0 a) (D1 b) = D1 (DAddC C0 a b)
-type instance DAddC C0 (D1 a) (D1 b) = D0 (DAddC C1 a b)
-type instance DAddC C1 (D0 a) (D0 b) = D1 (DAddC C0 a b)
-type instance DAddC C1 (D1 a) (D0 b) = D0 (DAddC C1 a b)
-type instance DAddC C1 (D0 a) (D1 b) = D0 (DAddC C1 a b)
-type instance DAddC C1 (D1 a) (D1 b) = D1 (DAddC C1 a b)
-type instance DAddC C0 () () = ()
-type instance DAddC C1 () () = D1 ()
-type instance DAddC c (D0 a) () = DAddC c (D0 a) (D0 ())
-type instance DAddC c (D1 a) () = DAddC c (D1 a) (D0 ())
-type instance DAddC c () (D0 b) = DAddC c (D0 b) (D0 ())
-type instance DAddC c () (D1 b) = DAddC c (D1 b) (D0 ())
-
-type family DNorm a
-type instance DNorm () = D0 ()
-type instance DNorm (D0 ()) = D0 ()
-type instance DNorm (D0 (D1 a)) = D1 a
-type instance DNorm (D0 (D0 a)) = DNorm a
-type instance DNorm (D1 a) = D1 a
-
-type family DPlus a b
-type instance DPlus a b = DNorm (DRev (DAddC C0 (DRev a) (DRev b)))
-
-type family DDepth a
-type instance DDepth () = D0 ()
-type instance DDepth (D0 ()) = D0 ()
-type instance DDepth (D1 ()) = D1 ()
-type instance DDepth (D1 (D0 n)) = DPlus ONE (DDepth (D1 n))
-type instance DDepth (D1 (D1 n)) = DPlus ONE (DDepth (D1 n))
-
-type family DLog2 a
-type instance DLog2 a = DDepth a
-
-type ZERO = D0 ()
-
-type ONE = D1 ()
-type TWO = DPlus ONE ONE
-type THREE = DPlus ONE TWO
-type FOUR = DPlus TWO TWO
-type FIVE = DPlus ONE FOUR
-type SIX = DPlus TWO FOUR
-type SEVEN = DPlus ONE SIX
-type EIGHT = DPlus FOUR FOUR
-type NINE = DPlus FOUR FIVE
-type TEN = DPlus EIGHT TWO
-type SIZE8 = EIGHT
-type SIZE9 = NINE
-type SIZE10 = TEN
-type SIZE12 = DPlus SIX SIX
-type SIZE15 = DPlus EIGHT SEVEN
-type SIZE16 = DPlus EIGHT EIGHT
-type SIZE17 = DPlus ONE SIZE16
-type SIZE24 = DPlus SIZE8 SIZE16
-type SIZE32 = DPlus SIZE8 SIZE24
-type SIZE30 = DPlus SIZE24 SIX
-
--------------------------------------------------------------------------------
--- Description of CPU.
-
-class CPU cpu where
- -- register address.
- type RegAddrSize cpu
- -- register width
- type RegDataSize cpu
- -- immediate width.
- type ImmSize cpu
- -- variables in CPU - register indices, command format variables, etc.
- type CPUVars cpu :: * -> *
-
-data Const size = Const Integer
-
-data Var cpu size where
- Temp :: Int -> Var cpu size
- Var :: CPUVars cpu size -> Var cpu size
-
--------------------------------------------------------------------------------
--- Command description monad.
-
-data Command cpu where
- Command :: (Var cpu size) -> (Operation cpu size) -> Command cpu
-
-type RegVar cpu = Var cpu (RegDataSize cpu)
-type Immediate cpu = Const (ImmSize cpu)
-
-data Operation cpu resultSize where
- Add :: RegVar cpu -> Either (Immediate cpu) (RegVar cpu) -> Operation cpu (RegDataSize cpu)
- Sub :: RegVar cpu -> Either (Immediate cpu) (RegVar cpu) -> Operation cpu (RegDataSize cpu)
-
-type CDM cpu a = IO a
-
-($=) :: CPU cpu => Var cpu size -> Operation cpu size -> CDM cpu ()
-var $= op = undefined
-
-tempVar :: CPU cpu => CDM cpu (Var cpu size)
-tempVar = do
- cnt <- liftM fst undefined
- return $ Temp cnt
-
-op :: CPU cpu => Operation cpu size -> CDM cpu (Var cpu size)
-op operation = do
- v <- tempVar
- v $= operation
- return v
-
--------------------------------------------------------------------------------
--- Dummy CPU.
-
-data DummyCPU = DummyCPU
-
-data DummyVar size where
- DummyFlag :: Flag -> DummyVar ONE
- DummyReg :: Int -> DummyVar SIZE16
- DummyZero :: DummyVar SIZE16
-
-data Flag = C | Z | N | V
-
-instance CPU DummyCPU where
- type RegAddrSize DummyCPU = FIVE
- type RegDataSize DummyCPU = SIZE16
- type ImmSize DummyCPU = SIZE12
- type CPUVars DummyCPU = DummyVar
-
--------------------------------------------------------------------------------
--- Long compiling program.
-
-cnst :: Integer -> Either (Immediate DummyCPU) (RegVar DummyCPU)
-cnst x = Left (Const x)
-
-longCompilingProgram :: CDM DummyCPU ()
-longCompilingProgram = do
--- the number of lines below greatly affects compilation time.
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- x10 <- op $ Add (Var DummyZero) (cnst 10)
- return ()
diff --git a/testsuite/tests/ghc-regress/perf/compiler/all.T b/testsuite/tests/ghc-regress/perf/compiler/all.T
deleted file mode 100644
index b009d276c8..0000000000
--- a/testsuite/tests/ghc-regress/perf/compiler/all.T
+++ /dev/null
@@ -1,153 +0,0 @@
-test('T1969',
- [if_wordsize(32,
- compiler_stats_num_field('peak_megabytes_allocated', 13,
- 19)),
- # expected value: 14 (x86/Windows 17/05/10)
- # 15 (x86/OS X)
- # 19 (x86/OS X)
- if_wordsize(64,
- compiler_stats_num_field('peak_megabytes_allocated', 24,
- 32)),
- # expected value: 28 (amd64/Linux)
- # expected value: 32 (amd64/Linux)
- if_wordsize(32,
- compiler_stats_num_field('max_bytes_used', 5000000,
- 7000000)),
- # expected value: 6707308 (x86/OS X)
- # 5717704 (x86/Windows 17/05/10)
- # 6149572 (x86/Linux, 31/12/09)
- if_wordsize(64,
- compiler_stats_num_field('max_bytes_used', 9000000,
- 13000000)),
- # expected value: 11404664 (amd64/Linux)
- if_wordsize(32,
- compiler_stats_num_field('bytes allocated', 210000000,
- 270000000)),
- # expected value: 215582916 (x86/Windows)
- # 221667908 (x86/OS X)
- if_wordsize(64,
- compiler_stats_num_field('bytes allocated', 420000000,
- 550000000)),
- # 17/11/2009: 434,845,560 (amd64/Linux)
- # 08/12/2009: 459,776,680 (amd64/Linux)
- # 17/05/2010: 519,377,728 (amd64/Linux)
- only_ways(['normal'])
- ],
- compile,
- [''])
-
-# This one tests for the space leak in the native code generator,
-# where it holds onto the entire asm output until the end. The space
-# leak reappears from time to time, so it's a good idea to have a test
-# for it. The residency of this test will jump by 10MB to 40MB or so
-# on x86-64 if the space leak appears.
-
-# Only run this one if we have an NCG:
-if 'optasm' in config.compile_ways:
- conf_3294 = only_ways(['normal'])
-else:
- conf_3294 = skip
-
-test('T3294',
- [if_wordsize(32,
- compiler_stats_num_field('max_bytes_used', 12000000,
- 17000000)),
- # expected value: 13049060 (x86/Linux)
- if_wordsize(64,
- compiler_stats_num_field('max_bytes_used', 27000000,
- 34000000)),
- # expected value: 32 478 408 (amd64/Linux)
- # (but varies a lot, depending on when
- # we GC relative to the peak).
- if_wordsize(32,
- compiler_stats_num_field('bytes allocated', 650000000,
- 750000000)),
- # expected value: 815479800 (x86/Linux)
- if_wordsize(64,
- compiler_stats_num_field('bytes allocated', 1200000000,
- 1500000000)),
- # expected value: 1357587088 (amd64/Linux)
- conf_3294
- ],
- compile,
- [''])
-
-test('T4801',
- [ # expect_broken(5224),
- # temporarily unbroken (#5227)
- # expected value: 11 (x86/OSX):
- if_wordsize(32,
- compiler_stats_num_field('peak_megabytes_allocated', 30, 40)),
- # expected value: 66 (amd64/Linux):
- if_wordsize(64,
- compiler_stats_num_field('peak_megabytes_allocated', 55, 70)),
- # expected value: 353463196 (x86/Windows)
- if_wordsize(32,
- compiler_stats_num_field('bytes allocated', 330000000,
- 370000000)),
- # expected value: 145038576 (amd64/Linux):
- if_wordsize(64,
- compiler_stats_num_field('bytes allocated', 600000000,
- 750000000)),
- # expected value: 14181360 (x86/Linux)
- if_wordsize(32,
- compiler_stats_num_field('max_bytes_used', 11000000,
- 14000000)),
- # expected value: 7001696 (amd64/Linux, bindist)
- # expected value: 7189848 (amd64/Linux, intree):
- if_wordsize(64,
- compiler_stats_num_field('max_bytes_used', 20000000,
- 30000000)),
- only_ways(['normal'])
- ],
- compile,
- [''])
-
-test('T3064',
- [
- # expected value: 9 (x86/Linux 30-03-2011):
- if_wordsize(32,
- compiler_stats_num_field('peak_megabytes_allocated', 8, 11)),
- # expected value: 18 (amd64/Linux):
- if_wordsize(64,
- compiler_stats_num_field('peak_megabytes_allocated', 11, 16)),
- # expected value: 56380288 (x86/Linux) (28/6/2011)
- if_wordsize(32,
- compiler_stats_num_field('bytes allocated', 50000000,
- 60000000)),
- # expected value: 108937496 (amd64/Linux) (28/6/2011):
- if_wordsize(64,
- compiler_stats_num_field('bytes allocated', 100000000,
- 120000000)),
- # expected value: 2247016 (x86/Linux) (28/6/2011):
- if_wordsize(32,
- compiler_stats_num_field('max_bytes_used', 2000000,
- 3000000)),
- # expected value: 4032024 (amd64/Linux, intree) (28/6/2011):
- if_wordsize(64,
- compiler_stats_num_field('max_bytes_used', 3000000,
- 5000000)),
- only_ways(['normal'])
- ],
- compile,
- [''])
-
-test('T4007',
- normal,
- run_command,
- ['$MAKE -s --no-print-directory T4007'])
-
-test('T5030',
- [# expected value: 629864032 (x86/Darwin)
- if_wordsize(32,
- compiler_stats_num_field('bytes allocated', 600000000,
- 650000000)),
- # expected value: 1255998208 (amd64/Linux):
- if_wordsize(64,
- compiler_stats_num_field('bytes allocated', 1200000000,
- 1300000000)),
- only_ways(['normal'])
- ],
- compile,
- ['-fcontext-stack=300'])
-
diff --git a/testsuite/tests/ghc-regress/perf/should_run/3586.hs b/testsuite/tests/ghc-regress/perf/should_run/3586.hs
deleted file mode 100644
index 968f2eba27..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/3586.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE BangPatterns #-}
-{-# OPTIONS -fvia-C -optc-O3 -fexcess-precision -optc-msse3 #-}
-
-import Control.Monad.ST
-import Data.Array.ST
-import Data.Array.Base
-
-main = print $ runST
- (do arr <- newArray (1,2000000) 137.0 :: ST s (STUArray s Int Double)
- go arr 2000000 0.0 )
-
-
-go :: STUArray s Int Double -> Int -> Double -> ST s Double
-go !a i !acc
- | i < 1 = return acc
- | otherwise = do
- b <- unsafeRead a i
- unsafeWrite a i (b+3.0)
- c <- unsafeRead a i
- go a (i-1) (c+acc)
diff --git a/testsuite/tests/ghc-regress/perf/should_run/3586.stdout b/testsuite/tests/ghc-regress/perf/should_run/3586.stdout
deleted file mode 100644
index 626282f10c..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/3586.stdout
+++ /dev/null
@@ -1 +0,0 @@
-2.79999863e8
diff --git a/testsuite/tests/ghc-regress/perf/should_run/Makefile b/testsuite/tests/ghc-regress/perf/should_run/Makefile
deleted file mode 100644
index 67a9432a52..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/Makefile
+++ /dev/null
@@ -1,36 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-define runT3736
-./T3736 $1 +RTS -t --machine-readable 2>&1 | grep '"bytes allocated"' | sed -e 's/.*, "//' -e 's/".*//'
-endef
-.PHONY: T3736
-T3736:
- $(RM) -f T3736.hi T3736.o T3736
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 -O --make T3736 -rtsopts
-# Check ALLOC1 is > 100 just to check with have sane results, and if so,
-# the test passes if the two numbers are equal. We could check that the
-# actual numbers are in the range we expect too (on the various
-# platforms), but we don't currently.
- ALLOC1=`$(call runT3736,1)`; ALLOC2=`$(call runT3736,2)`; if [ "$$ALLOC1" -gt 100 ] && [ "$$ALLOC1" -eq "$$ALLOC2" ]; then echo Match; else echo "Mismatch: $$ALLOC1 $$ALLOC2"; fi
-
-.PHONY: T2902
-T2902:
- $(RM) -f T2902_A T2902_B
- $(RM) -f T2902_A.hi T2902_B.hi
- $(RM) -f T2902_A.o T2902_B.o
- $(RM) -f T2902_A_PairingSum.hi T2902_B_PairingSum.hi T2902_Sum.hi
- $(RM) -f T2902_A_PairingSum.o T2902_B_PairingSum.o T2902_Sum.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 -O --make T2902_A -rtsopts
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 -O --make T2902_B -rtsopts
- BAA=`./T2902_A +RTS -t --machine-readable 2>&1 | grep '"bytes allocated"' | sed -e 's/.*, "//' -e 's/")//'`; BAB=`./T2902_B +RTS -t --machine-readable 2>&1 | grep '"bytes allocated"' | sed -e 's/.*, "//' -e 's/")//'`; [ "$$BAA" = "" ] && echo 'T2902_A: No "bytes allocated"'; [ "$$BAA" = "$$BAB" ] || echo "T2902: Mismatch in \"bytes allocated\": $$BAA $$BAB"
-
-.PHONY: T149
-T149:
- $(RM) -f T149_A T149_A.hi T149_A.o
- $(RM) -f T149_B T149_B.hi T149_B.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 -O --make T149_A -rtsopts
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 -O --make T149_B -rtsopts
- BAA=`./T149_A +RTS -t --machine-readable 2>&1 | grep '"bytes allocated"' | sed -e 's/.*, "//' -e 's/")//'`; BAB=`./T149_B +RTS -t --machine-readable 2>&1 | grep '"bytes allocated"' | sed -e 's/.*, "//' -e 's/")//'`; [ "$$BAA" = "" ] && echo 'T149_A: No "bytes allocated"'; [ "$$BAA" = "$$BAB" ] || echo "T149: Mismatch in \"bytes allocated\": $$BAA $$BAB"
-
diff --git a/testsuite/tests/ghc-regress/perf/should_run/MethSharing.hs b/testsuite/tests/ghc-regress/perf/should_run/MethSharing.hs
deleted file mode 100644
index fb69bd4509..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/MethSharing.hs
+++ /dev/null
@@ -1,97 +0,0 @@
-module Main where
-
--- This test works efficiently because the full laziness
--- pass now floats out applications
--- \x -> f y (x+1)
--- It'll float out the (f y) if that's a redex
-
-loop :: Double -> [Int] -> Double
-{-# NOINLINE loop #-}
-loop x [] = x
-loop x (n:ns) = x `seq` loop (x ^ n) ns
-
-main = print $ loop 1 (replicate 10000000 5)
-
-----------------------------------------------------
-{- Roman's message of May 2010
-
-I tried running nofib with -fno-method-sharing (we discussed this at some point). These are the results:
-
---------------------------------------------------------------------------------
- Program Size Allocs Runtime Elapsed
---------------------------------------------------------------------------------
-
- Min -0.3% -25.0% -12.5% -9.9%
- Max +0.2% +159.1% +90.0% +84.7%
- Geometric Mean -0.0% +2.2% +6.8% +5.1%
-
-This is the worst program:
-
- simple +0.2% +159.1% +65.3% +63.9%
-
-I looked at it a bit and came up with this small example:
-
-----
-loop :: Double -> [Int] -> Double
-{-# NOINLINE loop #-}
-loop x [] = x
-loop x (n:ns) = x `seq` loop (x ^ n) ns
-
-main = print $ loop 1 (replicate 10000000 5)
-----
-
-This is over 2x slower with -fno-method-sharing. The culprit is, of
-course, (^). Here is the difference:
-
-Without -fno-method-sharing:
-
-----
-^_rVB :: GHC.Types.Double -> GHC.Types.Int -> GHC.Types.Double ^_rVB =
- GHC.Real.^
- @ GHC.Types.Double
- @ GHC.Types.Int
- GHC.Float.$fNumDouble
- GHC.Real.$fIntegralInt
-
-Main.loop [InlPrag=NOINLINE (sat-args=2), Occ=LoopBreaker]
- :: GHC.Types.Double -> [GHC.Types.Int] -> GHC.Types.Double Main.loop =
- \ (x1_aat :: GHC.Types.Double) (ds_drG :: [GHC.Types.Int]) ->
- case ds_drG of _ {
- [] -> x1_aat;
- : n_aav ns_aaw ->
- case x1_aat of x2_aau { GHC.Types.D# ipv_srQ ->
- Main.loop (^_rVB x2_aau n_aav) ns_aaw
- }
- }
-----
-
-With:
-
-----
-Main.loop [InlPrag=NOINLINE (sat-args=2), Occ=LoopBreaker]
- :: GHC.Types.Double -> [GHC.Types.Int] -> GHC.Types.Double Main.loop =
- \ (x1_aat :: GHC.Types.Double) (ds_drD :: [GHC.Types.Int]) ->
- case ds_drD of _ {
- [] -> x1_aat;
- : n_aav ns_aaw ->
- case x1_aat of x2_aau { GHC.Types.D# ipv_srN ->
- Main.loop
- (GHC.Real.^
- @ GHC.Types.Double
- @ GHC.Types.Int
- GHC.Float.$fNumDouble
- GHC.Real.$fIntegralInt
- x2_aau
- n_aav)
- ns_aaw
- }
- }
-----
-
-This is a bit disappointing. I would have expected GHC to float out
-the application of (^) to the two dictionaries during full laziness
-(note that (^) has arity 2 so the application is oversaturated). Why
-doesn't that happen? SetLevels (if this is the right place to look)
-has this:
-
--} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/perf/should_run/MethSharing.stdout b/testsuite/tests/ghc-regress/perf/should_run/MethSharing.stdout
deleted file mode 100644
index d3827e75a5..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/MethSharing.stdout
+++ /dev/null
@@ -1 +0,0 @@
-1.0
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T149_A.hs b/testsuite/tests/ghc-regress/perf/should_run/T149_A.hs
deleted file mode 100644
index dd745460c0..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T149_A.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-module Main (main) where
-
--- See Trac #149
-
--- Curently (with GHC 7.0) the CSE works, just,
--- but it's delicate.
-
-
-import System.CPUTime
-
-main :: IO ()
-main = print $ playerMostOccur1 [1..m]
-
-m :: Int
-m = 22
-
-playerMostOccur1 :: [Int] -> Int
-playerMostOccur1 [a] = a
-playerMostOccur1 (x:xs)
- | numOccur x (x:xs) > numOccur (playerMostOccur1 xs) xs = x
- | otherwise = playerMostOccur1 xs
-
-numOccur :: Int -> [Int] -> Int
-numOccur i is = length $ filter (i ==) is
-
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T149_B.hs b/testsuite/tests/ghc-regress/perf/should_run/T149_B.hs
deleted file mode 100644
index fcc87cdf55..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T149_B.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-module Main (main) where
-
--- See Trac #149
-
--- Curently (with GHC 7.0) the CSE works, just,
--- but it's delicate.
-
-
-import System.CPUTime
-
-main :: IO ()
-main = print $ playerMostOccur2 [1..m]
-
-m :: Int
-m = 22
-
-playerMostOccur2 :: [Int] -> Int
-playerMostOccur2 [a] = a
-playerMostOccur2 (x:xs)
- | numOccur x (x:xs) > numOccur pmo xs = x
- | otherwise = pmo
- where pmo = playerMostOccur2 xs
-
-numOccur :: Int -> [Int] -> Int
-numOccur i is = length $ filter (i ==) is
-
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T2902_A.hs b/testsuite/tests/ghc-regress/perf/should_run/T2902_A.hs
deleted file mode 100644
index c0939104f3..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T2902_A.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-
-{-# LANGUAGE UnicodeSyntax #-}
-
-module Main (main) where
-
-import T2902_A_PairingSum
-
-f :: Int -> PSum Int Int
-f n = unions $ fmap g [1..n]
- where
- g m = unions $ fmap fromList
- [ zip [m..n] $ repeat 1
- , zip [m,2+m..n] $ repeat 2
- , zip [m,3+m..n] $ repeat 3
- ]
-
-main ∷ IO ()
-main = print $ take 20 $ toList $ f 20
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T2902_A_PairingSum.hs b/testsuite/tests/ghc-regress/perf/should_run/T2902_A_PairingSum.hs
deleted file mode 100644
index a5dd0e7803..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T2902_A_PairingSum.hs
+++ /dev/null
@@ -1,49 +0,0 @@
-
-{-# LANGUAGE UnicodeSyntax, MultiParamTypeClasses, FlexibleInstances #-}
-
-module T2902_A_PairingSum (Sum(..), PSum) where
-
-import T2902_Sum
-
-data PSum a b = Empty | Tree a b [(PSum a b)]
-
-instance (Ord a, Num b) ⇒ Sum PSum a b where
- insert = insertX
- union = unionX
- unions = unionsX
- extractMin = extractMinX
- fromList = fromListX
- toList = toListX
-
-insertX ∷ (Ord a, Num b) ⇒ a → b → PSum a b → PSum a b
-insertX v r = unionX $ Tree v r []
-
-unionX ∷ (Ord a, Num b) ⇒ PSum a b → PSum a b → PSum a b
-unionX x Empty = x
-unionX Empty x = x
-unionX x@(Tree v r xs) y@(Tree w s ys) =
- case compare v w of
- LT → Tree v r (y:xs)
- GT → Tree w s (x:ys)
- EQ → case r + s of
- 0 → z
- t → insertX v t z
- where z = unionX (unionsX xs) (unionsX ys)
-
-unionsX ∷ (Ord a, Num b) ⇒ [PSum a b] → PSum a b
-unionsX [] = Empty
-unionsX [x] = x
-unionsX (x : y : zs) = unionX (unionX x y) (unionsX zs)
-
-extractMinX ∷ (Ord a, Num b) ⇒ PSum a b → ((a,b), PSum a b)
-extractMinX Empty = undefined
-extractMinX (Tree v r xs) = ((v,r), unionsX xs)
-
-fromListX ∷ (Ord a, Num b) ⇒ [(a,b)] → PSum a b
-fromListX [] = Empty
-fromListX ((v,r):xs) = insertX v r $ fromListX xs
-
-toListX ∷ (Ord a, Num b) ⇒ PSum a b → [(a,b)]
-toListX Empty = []
-toListX x = let (y, z) = extractMinX x in y : toListX z
-
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T2902_B.hs b/testsuite/tests/ghc-regress/perf/should_run/T2902_B.hs
deleted file mode 100644
index c6558c625b..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T2902_B.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-
-{-# LANGUAGE UnicodeSyntax #-}
-
-module Main (main) where
-
-import T2902_B_PairingSum
-
-f :: Int -> PSum Int Int
-f n = unions $ fmap g [1..n]
- where
- g m = unions $ fmap fromList
- [ zip [m..n] $ repeat 1
- , zip [m,2+m..n] $ repeat 2
- , zip [m,3+m..n] $ repeat 3
- ]
-
-main ∷ IO ()
-main = print $ take 20 $ toList $ f 20
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T2902_B_PairingSum.hs b/testsuite/tests/ghc-regress/perf/should_run/T2902_B_PairingSum.hs
deleted file mode 100644
index 5276da818b..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T2902_B_PairingSum.hs
+++ /dev/null
@@ -1,37 +0,0 @@
-
-{-# LANGUAGE UnicodeSyntax, MultiParamTypeClasses, FlexibleInstances #-}
-
-module T2902_B_PairingSum (Sum(..), PSum) where
-
-import T2902_Sum
-
-data PSum a b = Empty | Tree a b [PSum a b]
-
-instance (Ord a, Num b) ⇒ Sum PSum a b where
-
- insert v r = union $ Tree v r []
-
- union x Empty = x
- union Empty x = x
- union x@(Tree v r xs) y@(Tree w s ys) =
- case compare v w of
- LT → Tree v r (y:xs)
- GT → Tree w s (x:ys)
- EQ → case r + s of
- 0 → z
- t → insert v t z
- where z = union (unions xs) (unions ys)
-
- unions [] = Empty
- unions [x] = x
- unions (x : y : zs) = union (union x y) (unions zs)
-
- extractMin Empty = undefined
- extractMin (Tree v r xs) = ((v,r), unions xs)
-
- fromList [] = Empty
- fromList ((v,r):xs) = insert v r $ fromList xs
-
- toList Empty = []
- toList x = let (y, z) = extractMin x in y : toList z
-
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T2902_Sum.hs b/testsuite/tests/ghc-regress/perf/should_run/T2902_Sum.hs
deleted file mode 100644
index 9be6b10568..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T2902_Sum.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-
-{-# LANGUAGE UnicodeSyntax, MultiParamTypeClasses #-}
-
-module T2902_Sum (Sum(..)) where
-
-class Sum c a b where
- insert ∷ a → b → c a b → c a b
- union ∷ c a b → c a b → c a b
- unions ∷ [c a b] → c a b
- extractMin ∷ c a b → ((a,b), c a b)
-
- fromList ∷ [(a,b)] → c a b
- toList ∷ c a b → [(a,b)]
-
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T3245.hs b/testsuite/tests/ghc-regress/perf/should_run/T3245.hs
deleted file mode 100644
index f52fc27303..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T3245.hs
+++ /dev/null
@@ -1,50 +0,0 @@
-{-# LANGUAGE ExistentialQuantification #-}
-
--- The second version (count2) took ages with GHC 6.12
--- because the typeOf function was not properly memoised
-
-import Data.Typeable
-import System.CPUTime
-
-size :: Int
-size = 40000 -- This was big enough to take 5 seconds in
- -- the bad case on my machine.
-
-data Any = forall a. (Typeable a) => Any a
-
-int_type, int_list_type :: TypeRep
-int_type = typeOf (undefined :: Int)
-int_list_type = typeOf (undefined :: [Int])
-
-count1 :: [Any] -> Int
-count1 [] = 0
-count1 (Any x:xs) = count1 xs + (if typeOf x == int_type then 1 else 0)
-
-doTime x = do
- start <- getCPUTime
- putStr "Result: "
- print x
- stop <- getCPUTime
- putStr "Time(sec): "
- print (round $ fromIntegral (stop - start) / 1e12)
- -- The 'round' rounds to an integral number of seconds
- -- Should be zero if things are working right!
-
-main = do
- let list = [MkT | i <- [1..size :: Int]]
- putStrLn "count1"
- let x = map Any list
- doTime $ count1 x
- doTime $ count1 x
- doTime $ count1 x
- putStrLn ""
- putStrLn "count2"
- let x = map (Any . (:[])) list
- doTime $ count1 x
- doTime $ count1 x
- doTime $ count1 x
-
-data T = MkT
-tcname :: TyCon
-tcname = mkTyCon "T"
-instance Typeable T where { typeOf _ = mkTyConApp tcname [] }
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T3245.stdout b/testsuite/tests/ghc-regress/perf/should_run/T3245.stdout
deleted file mode 100644
index bcff7f8fd1..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T3245.stdout
+++ /dev/null
@@ -1,15 +0,0 @@
-count1
-Result: 0
-Time(sec): 0
-Result: 0
-Time(sec): 0
-Result: 0
-Time(sec): 0
-
-count2
-Result: 0
-Time(sec): 0
-Result: 0
-Time(sec): 0
-Result: 0
-Time(sec): 0
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T3736.hs b/testsuite/tests/ghc-regress/perf/should_run/T3736.hs
deleted file mode 100644
index e812109611..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T3736.hs
+++ /dev/null
@@ -1,212 +0,0 @@
-{-# OPTIONS_GHC -funbox-strict-fields -O #-}
-{-# LANGUAGE ExistentialQuantification #-}
-
-{- OPTIONS_GHC -ddump-simpl -ddump-asm -}
-
-module Main (main) where
-
-import GHC.Float (float2Int, int2Float)
-
-import System.Environment
-
-import Prelude hiding (null
- ,lines,unlines
- ,writeFile
- )
-
-import Control.Exception (assert, bracket, )
-
-import Foreign.Marshal.Array (advancePtr)
-import Foreign.Ptr (minusPtr)
-import Foreign.Storable (Storable(..))
-
-import Control.Monad (when)
-
-import System.IO (openBinaryFile, hClose,
- hPutBuf,
- Handle, IOMode(..))
-
-import System.IO.Unsafe (unsafePerformIO)
-
-import Foreign.Ptr (Ptr)
-import Foreign.ForeignPtr (ForeignPtr, withForeignPtr, )
-import Foreign.Marshal.Array (copyArray)
-
-import qualified Foreign.ForeignPtr as F
-
-main :: IO ()
-main = do args <- getArgs
- case args of
- ["1"] -> mainMonolithic1Generator
- ["2"] -> mainMonolithic1Composed
- _ -> error "Huh?"
-
-type Phase = (Float, Float, Float)
-
-{-# INLINE saw #-}
-saw :: Num a => a -> a
-saw t = 1-2*t
-
-{-# INLINE fraction #-}
-fraction :: Float -> Float
-fraction x = x - int2Float (float2Int x)
-
-{-# INLINE generator0Freq #-}
-generator0Freq :: Float -> Float -> Maybe (Float, Float)
-generator0Freq freq =
- \p -> Just (saw p, fraction (p+freq))
-
-infixl 6 `mix`, `mixGen`
-
-{-# INLINE mix #-}
-mix ::
- (Num y) =>
- (s -> Maybe (y, s)) ->
- (t -> Maybe (y, t)) ->
- ((s,t) -> Maybe (y, (s,t)))
-mix f g (s0,t0) =
- do (a,s1) <- f s0
- (b,t1) <- g t0
- return ((a+b), (s1,t1))
-
-data Generator a =
- forall s.
- Generator (s -> Maybe (a, s)) s
-
-{-# INLINE runGeneratorMonolithic #-}
-runGeneratorMonolithic :: Int -> Generator Float -> Vector Float
-runGeneratorMonolithic size' (Generator f s) =
- fst $ unfoldrN size' f s
-
-{- SPECIALISE INLINE generator0Gen :: Float -> Float -> Generator Float -}
-{-# INLINE generator0Gen #-}
-generator0Gen :: Float -> Float -> Generator Float
-generator0Gen freq phase =
- Generator (\p -> Just (saw p, fraction (p+freq))) phase
-
-{- SPECIALISE INLINE mixGen :: Generator Float -> Generator Float -> Generator Float -}
-{-# INLINE mixGen #-}
-mixGen ::
- (Num y) =>
- Generator y ->
- Generator y ->
- Generator y
-mixGen (Generator f s) (Generator g t) =
- Generator (\(s0,t0) ->
- do (a,s1) <- f s0
- (b,t1) <- g t0
- return ((a+b), (s1,t1))) (s,t)
-
-{-# INLINE dl #-}
-dl :: Phase
-dl = (0.01008, 0.01003, 0.00990)
-
-{-# INLINE initPhase2 #-}
-initPhase2 :: (Phase, Phase)
-initPhase2 =
- ((0,0.7,0.1), (0.3,0.4,0.6))
-
-
-size :: Int
-size = 10000000
-
-
-mainMonolithic1Composed :: IO ()
-mainMonolithic1Composed =
- writeFile "speed.f32"
- (fst $ unfoldrN size
- (let (f0,f1,f2) = dl
- in generator0Freq f0 `mix`
- generator0Freq f1 `mix`
- generator0Freq f2)
- (let (p0,p1,p2) = fst initPhase2
- in ((p0,p1),p2)))
-
-mainMonolithic1Generator :: IO ()
-mainMonolithic1Generator =
- writeFile "speed.f32"
- (runGeneratorMonolithic size
- (let (f0,f1,f2) = dl
- (p0,p1,p2) = fst initPhase2
- in generator0Gen f0 p0 `mixGen`
- generator0Gen f1 p1 `mixGen`
- generator0Gen f2 p2))
-
-empty :: (Storable a) => Vector a
-empty = unsafeCreate 0 $ const $ return ()
-{-# NOINLINE empty #-}
-
-null :: Vector a -> Bool
-null (SV _ _ l) = assert (l >= 0) $ l <= 0
-{-# INLINE null #-}
-
-unfoldrN :: (Storable b) => Int -> (a -> Maybe (b, a)) -> a -> (Vector b, Maybe a)
-unfoldrN n f x0 =
- if n <= 0
- then (empty, Just x0)
- else unsafePerformIO $ createAndTrim' n $ \p -> go p n x0
- where
- go = arguments2 $ \p i -> \x ->
- if i == 0
- then return (0, n-i, Just x)
- else
- case f x of
- Nothing -> return (0, n-i, Nothing)
- Just (w,x') -> do poke p w
- go (incPtr p) (i-1) x'
-{-# INLINE unfoldrN #-}
-
-hPut :: (Storable a) => Handle -> Vector a -> IO ()
-hPut h v =
- when (not (null v)) $
- withStartPtr v $ \ ptrS l ->
- let ptrE = advancePtr ptrS l
- in hPutBuf h ptrS (minusPtr ptrE ptrS)
-
-writeFile :: (Storable a) => FilePath -> Vector a -> IO ()
-writeFile f txt =
- bracket (openBinaryFile f WriteMode) hClose
- (\h -> hPut h txt)
-
-data Vector a = SV {-# UNPACK #-} !(ForeignPtr a)
- {-# UNPACK #-} !Int -- offset
- {-# UNPACK #-} !Int -- length
-
-withStartPtr :: Storable a => Vector a -> (Ptr a -> Int -> IO b) -> IO b
-withStartPtr (SV x s l) f =
- withForeignPtr x $ \p -> f (p `advancePtr` s) l
-{-# INLINE withStartPtr #-}
-
-incPtr :: (Storable a) => Ptr a -> Ptr a
-incPtr v = advancePtr v 1
-{-# INLINE incPtr #-}
-
-unsafeCreate :: (Storable a) => Int -> (Ptr a -> IO ()) -> Vector a
-unsafeCreate l f = unsafePerformIO (create l f)
-{-# INLINE unsafeCreate #-}
-
-create :: (Storable a) => Int -> (Ptr a -> IO ()) -> IO (Vector a)
-create l f = do
- fp <- mallocForeignPtrArray l
- withForeignPtr fp $ \p -> f p
- return $! SV fp 0 l
-
-createAndTrim' :: (Storable a) => Int
- -> (Ptr a -> IO (Int, Int, b))
- -> IO (Vector a, b)
-createAndTrim' l f = do
- fp <- mallocForeignPtrArray l
- withForeignPtr fp $ \p -> do
- (off, l', res) <- f p
- if assert (l' <= l) $ l' >= l
- then return $! (SV fp 0 l, res)
- else do ps <- create l' $ \p' -> copyArray p' (p `advancePtr` off) l'
- return $! (ps, res)
-
-{-# INLINE arguments2 #-}
-arguments2 :: (a -> b -> x) -> a -> b -> x
-arguments2 f = \a b -> (f $! a) $! b
-
-{-# INLINE mallocForeignPtrArray #-}
-mallocForeignPtrArray :: Storable a => Int -> IO (F.ForeignPtr a)
-mallocForeignPtrArray = F.mallocForeignPtrArray
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T3736.stdout b/testsuite/tests/ghc-regress/perf/should_run/T3736.stdout
deleted file mode 100644
index 1796dc2720..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T3736.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Match
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T3738.hs b/testsuite/tests/ghc-regress/perf/should_run/T3738.hs
deleted file mode 100644
index 1b3141c0f5..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T3738.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-module Main where
-
-import T3738a
-
-{-# INLINE bar #-}
-bar :: Int -> [Int]
-bar x = map (+ 2) (foo x)
-
-main = print (bar 2 !! 10000)
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T3738.stdout b/testsuite/tests/ghc-regress/perf/should_run/T3738.stdout
deleted file mode 100644
index 7ed6ff82de..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T3738.stdout
+++ /dev/null
@@ -1 +0,0 @@
-5
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T3738a.hs b/testsuite/tests/ghc-regress/perf/should_run/T3738a.hs
deleted file mode 100644
index b27451d12d..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T3738a.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module T3738a where
-
-{-# INLINE foo #-}
-foo :: Num a => a -> [a]
-foo x = map (+ 1) (repeat x)
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T4321.hs b/testsuite/tests/ghc-regress/perf/should_run/T4321.hs
deleted file mode 100644
index b8a0dbc4a1..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T4321.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-
--- In 6.13 this stack overflowed
-
-module Main (main) where
-
-main :: IO ()
-main = let n = 1000000
- in print $ integrate n (1 / fromIntegral n)
-
-integrate :: Int -> Double -> Double
-integrate n h = h * (sum (map area [1..n]))
- where area :: Int -> Double
- area i = let x = h * (fromIntegral i - 0.5)
- in 4 / (1 + x*x)
-
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T4321.stdout b/testsuite/tests/ghc-regress/perf/should_run/T4321.stdout
deleted file mode 100644
index ce98a198a7..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T4321.stdout
+++ /dev/null
@@ -1 +0,0 @@
-3.1415926535897643
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T4830.hs b/testsuite/tests/ghc-regress/perf/should_run/T4830.hs
deleted file mode 100644
index e345ffc9cd..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T4830.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- Compile with O2; SpecConstr should fire nicely
--- and eliminate all allocation in inner loop
-
-module Main where
-
-foo :: Int -> Maybe (Double,Double) -> Double
-foo _ Nothing = 0
-foo 0 (Just (x,y)) = x+y
-foo n (Just (x,y)) = let r = f x y in r `seq` foo (n-1) (Just r)
- where
- f x y | x <= y = (x,y)
- | otherwise = (y,x)
-
-main = print (foo 1000000 (Just (1,2)))
-
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T4830.stdout b/testsuite/tests/ghc-regress/perf/should_run/T4830.stdout
deleted file mode 100644
index 9f55b2ccb5..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T4830.stdout
+++ /dev/null
@@ -1 +0,0 @@
-3.0
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T4978.hs b/testsuite/tests/ghc-regress/perf/should_run/T4978.hs
deleted file mode 100644
index 6413b01fdc..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T4978.hs
+++ /dev/null
@@ -1,125 +0,0 @@
-module Main (main) where
-
-import qualified Data.ByteString as S
-import qualified Data.ByteString.Lazy as L
-import Data.ByteString.Internal (inlinePerformIO)
-import qualified Data.ByteString.Internal as S
-import Data.Monoid
-import Foreign
-
-newtype Builder = Builder {
- runBuilder :: (Buffer -> [S.ByteString]) -> Buffer -> [S.ByteString]
- }
-
-instance Monoid Builder where
- mempty = empty
- {-# INLINE mempty #-}
- mappend = append
- {-# INLINE mappend #-}
- mconcat = foldr mappend mempty
- {-# INLINE mconcat #-}
-
-empty :: Builder
-empty = Builder (\ k b -> b `seq` k b)
-{-# INLINE empty #-}
-
-singleton :: Word8 -> Builder
-singleton = writeN 1 . flip poke
-{-# INLINE singleton #-}
-
-append :: Builder -> Builder -> Builder
-append (Builder f) (Builder g) = Builder (f . g)
-{-# INLINE [0] append #-}
-
--- Our internal buffer type
-data Buffer = Buffer {-# UNPACK #-} !(ForeignPtr Word8)
- {-# UNPACK #-} !Int -- offset
- {-# UNPACK #-} !Int -- used bytes
- {-# UNPACK #-} !Int -- length left
-
--- | /O(1)./ Pop the 'S.ByteString' we have constructed so far, if any,
--- yielding a new chunk in the result lazy 'L.ByteString'.
-flush :: Builder
-flush = Builder $ \ k buf@(Buffer p o u l) ->
- if u == 0
- then k buf
- else S.PS p o u : k (Buffer p (o+u) 0 l)
-
--- | /O(n)./ Extract a lazy 'L.ByteString' from a 'Builder'.
--- The construction work takes place if and when the relevant part of
--- the lazy 'L.ByteString' is demanded.
---
-toLazyByteString :: Builder -> L.ByteString
-toLazyByteString m = L.fromChunks $ unsafePerformIO $ do
- buf <- newBuffer defaultSize
- return (runBuilder (m `append` flush) (const []) buf)
-{-# INLINE toLazyByteString #-}
-
-defaultSize :: Int
-defaultSize = 32 * k - overhead
- where k = 1024
- overhead = 2 * sizeOf (undefined :: Int)
-
--- | Sequence an IO operation on the buffer
-unsafeLiftIO :: (Buffer -> IO Buffer) -> Builder
-unsafeLiftIO f = Builder $ \ k buf -> inlinePerformIO $ do
- buf' <- f buf
- return (k buf')
-{-# INLINE unsafeLiftIO #-}
-
--- | Get the size of the buffer
-withSize :: (Int -> Builder) -> Builder
-withSize f = Builder $ \ k buf@(Buffer _ _ _ l) -> runBuilder (f l) k buf
-
--- | Ensure that there are at least @n@ many bytes available.
-ensureFree :: Int -> Builder
-ensureFree n = n `seq` withSize $ \ l ->
- if n <= l then empty else
- flush `append` unsafeLiftIO (const (newBuffer (max n defaultSize)))
-{-# INLINE [0] ensureFree #-}
-
--- | Ensure that @n@ many bytes are available, and then use @f@ to write some
--- bytes into the memory.
-writeN :: Int -> (Ptr Word8 -> IO ()) -> Builder
-writeN n f = ensureFree n `append` unsafeLiftIO (writeNBuffer n f)
-{-# INLINE [0] writeN #-}
-
-writeNBuffer :: Int -> (Ptr Word8 -> IO ()) -> Buffer -> IO Buffer
-writeNBuffer n f (Buffer fp o u l) = do
- withForeignPtr fp (\p -> f (p `plusPtr` (o+u)))
- return (Buffer fp o (u+n) (l-n))
-{-# INLINE writeNBuffer #-}
-
-newBuffer :: Int -> IO Buffer
-newBuffer size = do
- fp <- S.mallocByteString size
- return $! Buffer fp 0 0 size
-{-# INLINE newBuffer #-}
-
--- Merge buffer bounds checks.
-{-# RULES
-"append/writeN" forall a b (f::Ptr Word8 -> IO ())
- (g::Ptr Word8 -> IO ()) ws.
- append (writeN a f) (append (writeN b g) ws) =
- append (writeN (a+b) (\p -> f p >> g (p `plusPtr` a))) ws
-
-"writeN/writeN" forall a b (f::Ptr Word8 -> IO ())
- (g::Ptr Word8 -> IO ()).
- append (writeN a f) (writeN b g) =
- writeN (a+b) (\p -> f p >> g (p `plusPtr` a))
-
-"ensureFree/ensureFree" forall a b .
- append (ensureFree a) (ensureFree b) = ensureFree (max a b)
- #-}
-
--- Test case
-
--- Argument must be a multiple of 4.
-test :: Int -> Builder
-test 0 = mempty
-test n = singleton 1 `mappend`
- (singleton 2 `mappend`
- (singleton 3 `mappend`
- (singleton 4 `mappend` test (n-4))))
-
-main = print $ L.length $ toLazyByteString $ test 10000000
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T4978.stdout b/testsuite/tests/ghc-regress/perf/should_run/T4978.stdout
deleted file mode 100644
index 825319e1c5..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T4978.stdout
+++ /dev/null
@@ -1 +0,0 @@
-10000000
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T5113.hs b/testsuite/tests/ghc-regress/perf/should_run/T5113.hs
deleted file mode 100644
index e87bcb6cad..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T5113.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE BangPatterns #-}
-module Main where
-
-import Data.Array.Base (unsafeRead, unsafeWrite)
-import Data.Array.ST
-import Data.Array.Unboxed
-import Control.Monad.ST
-
-main = print (divisorCounts 1000000 ! 342)
-
-isqrt :: Int -> Int
-isqrt n = floor (sqrt $ fromIntegral n)
-
-divisorCounts :: Int -> UArray Int Int
-divisorCounts n = runSTUArray $ do
- let !rt = isqrt n
- darr <- newArray (0,n) 1 :: ST s (STUArray s Int Int)
- let inc i = unsafeRead darr i >>= \k -> unsafeWrite darr i (k+1)
- note step i
- | i > n = return ()
- | otherwise = do
- inc i
- note step (i+step)
- count j
- | j > rt = return ()
- | otherwise = do
- note (2*j) (j*j)
- count (j+2)
- note 2 4
- count 3
- return darr
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T5113.stdout b/testsuite/tests/ghc-regress/perf/should_run/T5113.stdout
deleted file mode 100644
index 0cfbf08886..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T5113.stdout
+++ /dev/null
@@ -1 +0,0 @@
-2
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T5205.hs b/testsuite/tests/ghc-regress/perf/should_run/T5205.hs
deleted file mode 100644
index 215dd42647..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T5205.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
-import Control.Concurrent
-import Control.Monad
-
-main :: IO ()
-main = do t <- forkIO (x >> x)
- threadDelay 1000000
- killThread t
- putStrLn "Done"
-
-x :: IO ()
-x = forever yield
-
diff --git a/testsuite/tests/ghc-regress/perf/should_run/T5205.stdout b/testsuite/tests/ghc-regress/perf/should_run/T5205.stdout
deleted file mode 100644
index a965a70ed4..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/T5205.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Done
diff --git a/testsuite/tests/ghc-regress/perf/should_run/all.T b/testsuite/tests/ghc-regress/perf/should_run/all.T
deleted file mode 100644
index 04133979df..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/all.T
+++ /dev/null
@@ -1,148 +0,0 @@
-# Tests that newArray/newArray_ is being optimised correctly
-
-# fortunately the values here are mostly independent of the wordsize,
-# because the test allocates an unboxed array of doubles.
-
-test('3586',
- [stats_num_field('peak_megabytes_allocated', 17,
- 18),
- # expected value: 17 (amd64/Linux)
- stats_num_field('bytes allocated', 16000000,
- 17000000),
- # expected value: 16835544 (amd64/Linux)
- only_ways(['normal'])
- ],
- compile_and_run,
- ['-O'])
-
-test('T4830',
- [stats_num_field('bytes allocated', 60000,
- 200000),
- # expected value: 127,000 (amd64/Linux)
- only_ways(['normal'])
- ],
- compile_and_run,
- ['-O2'])
-
-test('T3245', normal, compile_and_run, ['-O'])
-
-# Test that bytestring reading/writing isn't over-allocating. We had
-# a bug in hGetBufNonBlocking in 6.13 that triggered this.
-#
-test('lazy-bs-alloc',
- [stats_num_field('peak_megabytes_allocated', 1,
- 3),
- # expected value: 2 (amd64/Linux)
- stats_num_field('bytes allocated', 400000,
- 600000),
- # expected value: 489776 (amd64/Linux)
- only_ways(['normal']),
- extra_run_opts('../../numeric/should_run/arith011.stdout'),
- ignore_output
- ],
- # use a suitably big file, without bloating the repo with a new one:
- compile_and_run,
- ['-O'])
-
-# Get reproducible floating-point results on x86
-if config.arch == 'i386':
- sse2_opts = '-msse2'
-else:
- sse2_opts = ''
-
-test('T4321', omit_ways(['ghci']), compile_and_run, ['-O ' + sse2_opts])
-
-test('T3736', normal, run_command, ['$MAKE -s --no-print-directory T3736'])
-test('T3738',
- [stats_num_field('peak_megabytes_allocated', 1,
- 1),
- # expected value: 1 (amd64/Linux)
- # expected value: 45648 (x86/Linux):
- if_wordsize(32,
- stats_num_field('bytes allocated', 40000,
- 50000)),
- if_wordsize(64,
- stats_num_field('bytes allocated', 40000,
- 60000)),
- # expected value: 49400 (amd64/Linux)
- only_ways(['normal'])
- ],
- compile_and_run,
- ['-O'])
-
-test('MethSharing',
- [stats_num_field('peak_megabytes_allocated', 1,
- 1),
- # expected value: 1 (amd64/Linux)
- # expected value: 2685858140 (x86/OS X):
- if_wordsize(32,
- stats_num_field('bytes allocated', 300000000,
- 400000000)),
- # expected: 360940756 (x86/Linux)
- if_wordsize(64,
- stats_num_field('bytes allocated', 600000000,
- 700000000)),
- # expected: 640067672 (amd64/Linux)
- only_ways(['normal'])
- ],
- compile_and_run,
- ['-O'])
-test('T2902',
- extra_clean(['T2902_A', 'T2902_B',
- 'T2902_A.hi', 'T2902_B.hi',
- 'T2902_A.o', 'T2902_B.o',
- 'T2902_A_PairingSum.hi', 'T2902_B_PairingSum.hi',
- 'T2902_A_PairingSum.o', 'T2902_B_PairingSum.o',
- 'T2902_Sum.hi',
- 'T2902_Sum.o']),
- run_command,
- ['$MAKE -s --no-print-directory T2902'])
-test('T149',
- [expect_broken(149),
- extra_clean(['T149_A', 'T149_B',
- 'T149_A.hi', 'T149_B.hi',
- 'T149_A.o', 'T149_B.o'])],
- run_command,
- ['$MAKE -s --no-print-directory T149'])
-
-test('T5113',
- [
- if_wordsize(32,
- stats_num_field('bytes allocated', 3000000,
- 5000000)),
- if_wordsize(64,
- stats_num_field('bytes allocated', 8000000,
- 9000000)),
- only_ways(['normal'])
- ],
- compile_and_run,
- ['-O'])
-
-
-test('T4978',
- [if_wordsize(32,
- stats_num_field('bytes allocated', 9000000,
- 11000000)),
- if_wordsize(64,
- stats_num_field('bytes allocated', 9000000,
- 11000000)),
- # expected value: 10137680 (amd64/Linux)
- only_ways(['normal'])
- ],
- compile_and_run,
- ['-O2'])
-
-test('T5205',
- [if_wordsize(32,
- stats_num_field('bytes allocated', 40000,
- 50000)),
- # expected value: 47088 (x86/Darwin)
- if_wordsize(64,
- stats_num_field('bytes allocated', 40000,
- 60000)),
- # expected value: 51320 (amd64/Linux)
- only_ways(['normal'])
- ],
- compile_and_run,
- ['-O'])
-
diff --git a/testsuite/tests/ghc-regress/perf/should_run/lazy-bs-alloc.hs b/testsuite/tests/ghc-regress/perf/should_run/lazy-bs-alloc.hs
deleted file mode 100644
index 76850c67d0..0000000000
--- a/testsuite/tests/ghc-regress/perf/should_run/lazy-bs-alloc.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module Main (main) where
-
-import System.Environment (getArgs)
-import qualified Data.ByteString.Lazy as L
-
-main :: IO ()
-main = do
- (file : _) <- getArgs
- L.readFile file >>= L.putStr
diff --git a/testsuite/tests/ghc-regress/perf/space_leaks/Makefile b/testsuite/tests/ghc-regress/perf/space_leaks/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/perf/space_leaks/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/perf/space_leaks/T2762.hs b/testsuite/tests/ghc-regress/perf/space_leaks/T2762.hs
deleted file mode 100644
index 76ab04501c..0000000000
--- a/testsuite/tests/ghc-regress/perf/space_leaks/T2762.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-
-module Main (main) where
-
-import T2762A
-
-main :: IO ()
-main = do
- let content1 = concat (replicate 1000000 "1x") ++ "0"
- let i1 = fst $ input content1
- view i1
-
- let content2 = concat (replicate 1000001 "1y") ++ "0"
- let i2 = fst $ input content2
- view i2
-
-view :: [Char] -> IO ()
-view [] = return ()
-view (i : is) = i `seq` view is
diff --git a/testsuite/tests/ghc-regress/perf/space_leaks/T2762A.hs b/testsuite/tests/ghc-regress/perf/space_leaks/T2762A.hs
deleted file mode 100644
index 665fa6ef72..0000000000
--- a/testsuite/tests/ghc-regress/perf/space_leaks/T2762A.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-
-module T2762A (input) where
-
-class InputOutput a where
- input :: String -> (a, String)
-
-instance InputOutput Char where
- input (x : bs) = (x, bs)
-
-instance InputOutput a => InputOutput [a] where
- input ('0':bs) = ([], bs)
- input ('1':bs) = case input bs of
- (x, bs') ->
- case input bs' of
- ~(xs, bs'') -> (x : xs, bs'')
diff --git a/testsuite/tests/ghc-regress/perf/space_leaks/T4334.hs b/testsuite/tests/ghc-regress/perf/space_leaks/T4334.hs
deleted file mode 100644
index ab522f006e..0000000000
--- a/testsuite/tests/ghc-regress/perf/space_leaks/T4334.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-module Main (main) where
-
-import System.Environment (getArgs)
-
-mkText :: Int -> Int -> Char -> String
-mkText ll ln c =
- unlines $ [replicate k c | k <- [ll .. ll+ln]]
-
-main :: IO ()
-main = do
- args <- getArgs
- let (ll, ln, c) =
- case args of
- (a1:a2:a3:_) -> (read a1, read a2, head a3)
- (a1:a2:_) -> (read a1, read a2, 'a')
- (a1:_) -> (read a1, 3, 'b')
- _ -> (100000, 5, 'c')
- mapM_ (print . length) (lines $ mkText ll ln c)
diff --git a/testsuite/tests/ghc-regress/perf/space_leaks/T4334.stdout b/testsuite/tests/ghc-regress/perf/space_leaks/T4334.stdout
deleted file mode 100644
index 2974b9f373..0000000000
--- a/testsuite/tests/ghc-regress/perf/space_leaks/T4334.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-1000000
-1000001
-1000002
diff --git a/testsuite/tests/ghc-regress/perf/space_leaks/all.T b/testsuite/tests/ghc-regress/perf/space_leaks/all.T
deleted file mode 100644
index 809ec01b44..0000000000
--- a/testsuite/tests/ghc-regress/perf/space_leaks/all.T
+++ /dev/null
@@ -1,39 +0,0 @@
-
-test('space_leak_001',
- # Before trac #2747 was fixed this was 565.
- # Now it's: 3 (amd64/Linux)
- # 4 (x86/OS X)
- # 5 (x86/Linux)
- [stats_num_field('peak_megabytes_allocated', 3, 5),
- stats_num_field('max_bytes_used', 410000,
- 450000),
- # expected value: 440224 (amd64/Linux)
- # 417016 (x86/OS X)
- # 415672 (x86/Windows)
- stats_num_field('bytes allocated', 9050000000,
- 9100000000),
- # expected value: 9079316016 (amd64/Linux)
- # 9331570416 (x86/Linux)
- # 9329073952 (x86/OS X)
- # 9327959840 (x86/Windows)
- omit_ways(['profasm','profthreaded','threaded1','threaded2'])
- ],
- compile_and_run,
- [''])
-
-test('T4334',
- # Test for a space leak in Data.List.lines (fixed with #4334)
- [extra_run_opts('1000000 2 t'),
- stats_num_field('peak_megabytes_allocated', 1, 3),
- # prof ways don't work well with +RTS -V0
- omit_ways(['profasm','profthreaded'])
- ],
- compile_and_run, [''])
-
-test('T2762',
- [# peak_megabytes_allocated is 2 with 7.0.2.
- # Was 57 with 6.12.3.
- stats_num_field('peak_megabytes_allocated', 1, 3),
- only_ways(['normal']),
- extra_clean(['T2762A.hi', 'T2762A.o'])],
- compile_and_run, ['-O'])
diff --git a/testsuite/tests/ghc-regress/perf/space_leaks/space_leak_001.hs b/testsuite/tests/ghc-regress/perf/space_leaks/space_leak_001.hs
deleted file mode 100644
index cabde0ae9b..0000000000
--- a/testsuite/tests/ghc-regress/perf/space_leaks/space_leak_001.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-import Data.List
-
-main :: IO ()
-main = print $ length $ show (foldl' (*) 1 [1..100000] :: Integer)
diff --git a/testsuite/tests/ghc-regress/perf/space_leaks/space_leak_001.stdout b/testsuite/tests/ghc-regress/perf/space_leaks/space_leak_001.stdout
deleted file mode 100644
index 85dc4185fa..0000000000
--- a/testsuite/tests/ghc-regress/perf/space_leaks/space_leak_001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-456574
diff --git a/testsuite/tests/ghc-regress/plugins/HomePackagePlugin.hs b/testsuite/tests/ghc-regress/plugins/HomePackagePlugin.hs
deleted file mode 100644
index 3a5318a2b7..0000000000
--- a/testsuite/tests/ghc-regress/plugins/HomePackagePlugin.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-module HomePackagePlugin where
-
-import GhcPlugins
-
-plugin :: Plugin
-plugin = defaultPlugin {
- installCoreToDos = install
- }
-
-install :: [CommandLineOption] -> [CoreToDo] -> CoreM [CoreToDo]
-install _options todos = do
- return $ (CoreDoPluginPass "String replacement" $ bindsOnlyPass stringReplacementPass) : todos
-
-stringReplacementPass :: [CoreBind] -> CoreM [CoreBind]
-stringReplacementPass binds = return $ map replaceInBind binds
-
-replaceInBind :: CoreBind -> CoreBind
-replaceInBind (NonRec b e) = NonRec b (replaceInExpr e)
-replaceInBind (Rec bes) = Rec [(b, replaceInExpr e) | (b, e) <- bes]
-
-replaceInExpr :: CoreExpr -> CoreExpr
-replaceInExpr (Var x) = Var x
-replaceInExpr (Lit (MachStr _)) = mkStringLit "Hello From The Plugin" -- The payload
-replaceInExpr (Lit l) = Lit l
-replaceInExpr (Lam b e) = Lam b (replaceInExpr e)
-replaceInExpr (App e1 e2) = App (replaceInExpr e1) (replaceInExpr e2)
-replaceInExpr (Let bi e) = Let (replaceInBind bi) (replaceInExpr e)
-replaceInExpr (Note no e) = Note no (replaceInExpr e)
-replaceInExpr (Cast e co) = Cast (replaceInExpr e) co
-replaceInExpr (Case e b ty alts) = Case (replaceInExpr e) b ty (map replaceInAlt alts)
-replaceInExpr (Type ty) = Type ty
-
-replaceInAlt :: CoreAlt -> CoreAlt
-replaceInAlt (ac, bs, e) = (ac, bs, replaceInExpr e) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/plugins/LinkerTicklingPlugin.hs b/testsuite/tests/ghc-regress/plugins/LinkerTicklingPlugin.hs
deleted file mode 100644
index 52d5e177bb..0000000000
--- a/testsuite/tests/ghc-regress/plugins/LinkerTicklingPlugin.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-module LinkerTicklingPlugin where
-
-import GhcPlugins
-import StaticFlags
-
-plugin :: Plugin
-plugin = defaultPlugin {
- installCoreToDos = install
- }
-
--- This tests whether plugins are linking against the *running* GHC
--- or a new instance of it. If it is a new instance the staticFlags
--- won't have been initialised, so we'll get a GHC panic here:
-install :: [CommandLineOption] -> [CoreToDo] -> CoreM [CoreToDo]
-install _options todos = length staticFlags `seq` return todos
diff --git a/testsuite/tests/ghc-regress/plugins/Makefile b/testsuite/tests/ghc-regress/plugins/Makefile
deleted file mode 100644
index 48cfb25727..0000000000
--- a/testsuite/tests/ghc-regress/plugins/Makefile
+++ /dev/null
@@ -1,20 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-.PHONY: plugins01 clean
-
-plugins01:
- # This test is extremely fragile because any change in the output of the following
- # commands invalidates the output of the run. In fact, we really want to ignore the
- # output resulting from building the simple-plugin, and only look at a few lines of
- # the output of the call to the TEST_HC (probably just the last 2).
- #
- # Suggestions to make this better gratefully recieved.
- (cd simple-plugin; make package)
- @$(RM) plugins01.hi plugins01.o
- "$(TEST_HC)" $(HC_OPTS) --make -v0 plugins01.hs -package-conf simple-plugin/local.package.conf -fplugin Simple.Plugin -fplugin-opt Simple.Plugin:Irrelevant_Option -package simple-plugin
- ./plugins01
-
-clean:
- cd simple-plugin && make clean
diff --git a/testsuite/tests/ghc-regress/plugins/all.T b/testsuite/tests/ghc-regress/plugins/all.T
deleted file mode 100644
index b9d4e4497d..0000000000
--- a/testsuite/tests/ghc-regress/plugins/all.T
+++ /dev/null
@@ -1,18 +0,0 @@
-def f(opts):
- if (ghc_with_interpreter == 0):
- opts.skip = 1
-
-setTestOpts(f)
-setTestOpts(compose(alone, if_compiler_lt('ghc', '7.1', skip)))
-
-test('plugins01', normal, run_command, ['$MAKE -s --no-print-directory plugins01'])
-test('plugins02', normal, compile_fail, ['-package-conf simple-plugin/local.package.conf -fplugin Simple.BadlyTypedPlugin -package simple-plugin'])
-test('plugins03', normal, compile_fail, ['-package-conf simple-plugin/local.package.conf -fplugin Simple.NonExistantPlugin -package simple-plugin'])
-
-test('plugins04', extra_clean(['HomePackagePlugin.hi', 'HomePackagePlugin.o']), multimod_compile_fail, ['plugins04', '-package ghc -fplugin HomePackagePlugin'])
-test('plugins05', extra_clean(['HomePackagePlugin.hi', 'HomePackagePlugin.o']), multimod_compile_and_run, ['plugins05', '-package ghc'])
-
-test('plugins06', compose(expect_broken(3843), extra_clean(['LinkerTicklingPlugin.hi', 'LinkerTicklingPlugin.o'])), multimod_compile_and_run, ['plugins06', '-package ghc'])
-
-if default_testopts.cleanup != '':
- runCmd('$MAKE -C ' + in_testdir('') + ' clean')
diff --git a/testsuite/tests/ghc-regress/plugins/plugins01.hs b/testsuite/tests/ghc-regress/plugins/plugins01.hs
deleted file mode 100644
index 7bb2ec7e2e..0000000000
--- a/testsuite/tests/ghc-regress/plugins/plugins01.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- Intended to test that the plugins have basic functionality --
--- * Can modify the program
--- * Get to see command line options
-module Main where
-
-import Simple.DataStructures
-
-{-# ANN theMessage (ReplaceWith "Right") #-}
-{-# NOINLINE theMessage #-}
-theMessage = "Wrong"
-
-main = do
- putStrLn "Program Started"
- putStrLn theMessage
- putStrLn "Program Ended" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/plugins/plugins01.stderr b/testsuite/tests/ghc-regress/plugins/plugins01.stderr
deleted file mode 100644
index d3e2a886d9..0000000000
--- a/testsuite/tests/ghc-regress/plugins/plugins01.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-Simple Plugin Passes Queried
-Got options: Irrelevant_Option
-Simple Plugin Pass Run
-Performing Replacement
diff --git a/testsuite/tests/ghc-regress/plugins/plugins01.stdout b/testsuite/tests/ghc-regress/plugins/plugins01.stdout
deleted file mode 100644
index 5633757f84..0000000000
--- a/testsuite/tests/ghc-regress/plugins/plugins01.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-Program Started
-Right
-Program Ended
diff --git a/testsuite/tests/ghc-regress/plugins/plugins02.hs b/testsuite/tests/ghc-regress/plugins/plugins02.hs
deleted file mode 100644
index 4fdf45c5cb..0000000000
--- a/testsuite/tests/ghc-regress/plugins/plugins02.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- Just used to test that badly typed plugins raise an error
-module Main where
--- The contents of this file are actually irrelevant
-
-main = return () \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/plugins/plugins02.stderr b/testsuite/tests/ghc-regress/plugins/plugins02.stderr
deleted file mode 100644
index 2fee69361e..0000000000
--- a/testsuite/tests/ghc-regress/plugins/plugins02.stderr
+++ /dev/null
@@ -1 +0,0 @@
-<command line>: The value Simple.BadlyTypedPlugin.plugin did not have the type CoreMonad.Plugin as required
diff --git a/testsuite/tests/ghc-regress/plugins/plugins03.hs b/testsuite/tests/ghc-regress/plugins/plugins03.hs
deleted file mode 100644
index 7cc679b38f..0000000000
--- a/testsuite/tests/ghc-regress/plugins/plugins03.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- Just used to test that we correctly handle non-existant plugins
-module Main where
--- The contents of this file are actually irrelevant
-
-main = return () \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/plugins/plugins03.stderr b/testsuite/tests/ghc-regress/plugins/plugins03.stderr
deleted file mode 100644
index f3fbc8e9f2..0000000000
--- a/testsuite/tests/ghc-regress/plugins/plugins03.stderr
+++ /dev/null
@@ -1 +0,0 @@
-<command line>: Could not find module `Simple.NonExistantPlugin' Use -v to see a list of the files searched for.
diff --git a/testsuite/tests/ghc-regress/plugins/plugins04.hs b/testsuite/tests/ghc-regress/plugins/plugins04.hs
deleted file mode 100644
index ad40b2c800..0000000000
--- a/testsuite/tests/ghc-regress/plugins/plugins04.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- Tests home-package plugins from command line
-module Main where
-
-main :: IO ()
-main = putStrLn "Hello From The Program" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/plugins/plugins04.stderr b/testsuite/tests/ghc-regress/plugins/plugins04.stderr
deleted file mode 100644
index 95034a449a..0000000000
--- a/testsuite/tests/ghc-regress/plugins/plugins04.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-Module imports form a cycle:
- module `HomePackagePlugin' imports itself
diff --git a/testsuite/tests/ghc-regress/plugins/plugins05.hs b/testsuite/tests/ghc-regress/plugins/plugins05.hs
deleted file mode 100644
index 718939b904..0000000000
--- a/testsuite/tests/ghc-regress/plugins/plugins05.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# OPTIONS_GHC -fplugin HomePackagePlugin #-}
-
--- Tests home-package plugins from OPTIONS pragma
-module Main where
-
-main :: IO ()
-main = putStrLn "Hello From The Program" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/plugins/plugins05.stdout b/testsuite/tests/ghc-regress/plugins/plugins05.stdout
deleted file mode 100644
index ec5d984277..0000000000
--- a/testsuite/tests/ghc-regress/plugins/plugins05.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Hello From The Plugin
diff --git a/testsuite/tests/ghc-regress/plugins/plugins06.hs b/testsuite/tests/ghc-regress/plugins/plugins06.hs
deleted file mode 100644
index ad80d2c636..0000000000
--- a/testsuite/tests/ghc-regress/plugins/plugins06.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# OPTIONS_GHC -fplugin LinkerTicklingPlugin #-}
-
-module Main where
-
-main :: IO ()
-main = return ()
diff --git a/testsuite/tests/ghc-regress/plugins/plugins06.stdout b/testsuite/tests/ghc-regress/plugins/plugins06.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/plugins/plugins06.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/plugins/simple-plugin/LICENSE b/testsuite/tests/ghc-regress/plugins/simple-plugin/LICENSE
deleted file mode 100644
index 6297f71b3f..0000000000
--- a/testsuite/tests/ghc-regress/plugins/simple-plugin/LICENSE
+++ /dev/null
@@ -1,10 +0,0 @@
-Copyright (c) 2008, Max Bolingbroke
-All rights reserved.
-
-Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
-
- * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
- * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
- * Neither the name of Max Bolingbroke nor the names of other contributors may be used to endorse or promote products derived from this software without specific prior written permission.
-
-THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/testsuite/tests/ghc-regress/plugins/simple-plugin/Makefile b/testsuite/tests/ghc-regress/plugins/simple-plugin/Makefile
deleted file mode 100644
index 3142902bf0..0000000000
--- a/testsuite/tests/ghc-regress/plugins/simple-plugin/Makefile
+++ /dev/null
@@ -1,23 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-LOCAL_PKGCONF=local.package.conf
-PKG_NAME=simple-plugin
-
-clean:
- rm -f $(LOCAL_PKGCONF)
- rm -rf dist
- rm -rf install
-
-PREFIX := $(abspath install)
-$(eval $(call canonicalise,PREFIX))
-
-package:
- "$(TEST_HC)" --make -v0 -o setup Setup.hs
-
- echo "[]" >$(LOCAL_PKGCONF)
-
- ./setup configure -v0 --prefix="$(PREFIX)" --with-compiler="$(TEST_HC)" --with-hc-pkg="$(GHC_PKG)" --package-db=$(LOCAL_PKGCONF)
- ./setup build -v0
- ./setup install -v0
diff --git a/testsuite/tests/ghc-regress/plugins/simple-plugin/Setup.hs b/testsuite/tests/ghc-regress/plugins/simple-plugin/Setup.hs
deleted file mode 100644
index e8ef27dbba..0000000000
--- a/testsuite/tests/ghc-regress/plugins/simple-plugin/Setup.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-import Distribution.Simple
-
-main = defaultMain
diff --git a/testsuite/tests/ghc-regress/plugins/simple-plugin/Simple/BadlyTypedPlugin.hs b/testsuite/tests/ghc-regress/plugins/simple-plugin/Simple/BadlyTypedPlugin.hs
deleted file mode 100644
index 7db041232b..0000000000
--- a/testsuite/tests/ghc-regress/plugins/simple-plugin/Simple/BadlyTypedPlugin.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Simple.BadlyTypedPlugin where
-
-plugin :: Int
-plugin = 1 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/plugins/simple-plugin/Simple/DataStructures.hs b/testsuite/tests/ghc-regress/plugins/simple-plugin/Simple/DataStructures.hs
deleted file mode 100644
index ffad889c60..0000000000
--- a/testsuite/tests/ghc-regress/plugins/simple-plugin/Simple/DataStructures.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-
-module Simple.DataStructures where
-
-import Data.Data
-import Data.Typeable
-
-data ReplaceWith = ReplaceWith String
- deriving (Data, Typeable) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/plugins/simple-plugin/Simple/Plugin.hs b/testsuite/tests/ghc-regress/plugins/simple-plugin/Simple/Plugin.hs
deleted file mode 100644
index d362518e4f..0000000000
--- a/testsuite/tests/ghc-regress/plugins/simple-plugin/Simple/Plugin.hs
+++ /dev/null
@@ -1,82 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
-module Simple.Plugin(plugin) where
-
-import UniqFM
-import GhcPlugins
-import qualified ErrUtils
-
--- For annotation tests
-import Simple.DataStructures
-
-import Control.Monad
-import Data.Monoid
-import Data.Dynamic
-import qualified Language.Haskell.TH as TH
-
-plugin :: Plugin
-plugin = defaultPlugin {
- installCoreToDos = install
- }
-
-install :: [CommandLineOption] -> [CoreToDo] -> CoreM [CoreToDo]
-install options todos = do
- putMsgS $ "Simple Plugin Passes Queried"
- putMsgS $ "Got options: " ++ unwords options
-
- -- Create some actual passes to continue the test.
- return $ CoreDoPluginPass "Main pass" mainPass
- : todos
-
-findNameBinds :: String -> [CoreBind] -> First Name
-findNameBinds target = mconcat . map (findNameBind target)
-
-findNameBind :: String -> CoreBind -> First Name
-findNameBind target (NonRec b e) = findNameBndr target b
-findNameBind target (Rec bes) = mconcat (map (findNameBndr target . fst) bes)
-
-findNameBndr :: String -> CoreBndr -> First Name
-findNameBndr target b
- = if getOccString (varName b) == target
- then First (Just (varName b))
- else First Nothing
-
-
-mainPass :: ModGuts -> CoreM ModGuts
-mainPass guts = do
- putMsgS "Simple Plugin Pass Run"
- anns <- getAnnotations deserializeWithData guts
- bindsOnlyPass (mapM (changeBind anns Nothing)) guts
-
-changeBind :: UniqFM [ReplaceWith] -> Maybe String -> CoreBind -> CoreM CoreBind
-changeBind anns mb_replacement (NonRec b e) = changeBindPr anns mb_replacement b e >>= (return . uncurry NonRec)
-changeBind anns mb_replacement (Rec bes) = liftM Rec $ mapM (uncurry (changeBindPr anns mb_replacement)) bes
-
-changeBindPr :: UniqFM [ReplaceWith] -> Maybe String -> CoreBndr -> CoreExpr -> CoreM (CoreBndr, CoreExpr)
-changeBindPr anns mb_replacement b e = do
- case lookupWithDefaultUFM anns [] b of
- [] -> do
- e' <- changeExpr anns mb_replacement e
- return (b, e')
- [ReplaceWith replace_string] -> do
- e' <- changeExpr anns (Just replace_string) e
- return (b, e')
- _ -> error $ "Too many change_anns on one binder:" ++ showSDoc (ppr b)
-
-changeExpr :: UniqFM [ReplaceWith] -> Maybe String -> CoreExpr -> CoreM CoreExpr
-changeExpr anns mb_replacement e = let go = changeExpr anns mb_replacement in case e of
- Lit (MachStr _) -> case mb_replacement of
- Nothing -> return e
- Just replacement -> do
- putMsgS "Performing Replacement"
- return $ Lit (MachStr (mkFastString replacement))
- App e1 e2 -> liftM2 App (go e1) (go e2)
- Lam b e -> liftM (Lam b) (go e)
- Let bind e -> liftM2 Let (changeBind anns mb_replacement bind) (go e)
- Case e b ty alts -> liftM4 Case (go e) (return b) (return ty) (mapM (changeAlt anns mb_replacement) alts)
- Cast e coerce -> liftM2 Cast (go e) (return coerce)
- Note note e -> liftM (Note note) (go e)
- _ -> return e
-
-changeAlt :: UniqFM [ReplaceWith] -> Maybe String -> CoreAlt -> CoreM CoreAlt
-changeAlt anns mb_replacement (con, bs, e) = liftM (\e' -> (con, bs, e')) (changeExpr anns mb_replacement e)
diff --git a/testsuite/tests/ghc-regress/plugins/simple-plugin/simple-plugin.cabal b/testsuite/tests/ghc-regress/plugins/simple-plugin/simple-plugin.cabal
deleted file mode 100644
index 011ed67e23..0000000000
--- a/testsuite/tests/ghc-regress/plugins/simple-plugin/simple-plugin.cabal
+++ /dev/null
@@ -1,20 +0,0 @@
-Name: simple-plugin
-Version: 0.1
-Synopsis: A demonstration of the GHC plugin system.
-Cabal-Version: >= 1.2
-Build-Type: Simple
-License: BSD3
-License-File: LICENSE
-Author: Max Bolingbroke
-Homepage: http://blog.omega-prime.co.uk
-
-Library
- Extensions: CPP
- Build-Depends:
- base,
- template-haskell,
- ghc >= 6.11
- Exposed-Modules:
- Simple.Plugin
- Simple.BadlyTypedPlugin
- Simple.DataStructures \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/profiling/Makefile b/testsuite/tests/ghc-regress/profiling/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/profiling/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/profiling/should_compile/2410.hs b/testsuite/tests/ghc-regress/profiling/should_compile/2410.hs
deleted file mode 100644
index 5c56e82992..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_compile/2410.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# OPTIONS_GHC -fno-warn-missing-methods -fno-warn-deprecations #-}
-module C where
-
- data Complex a = !a :+ !a
- deriving (Eq, Show)
-
- instance (RealFloat a) => Num (Complex a) where
- {-# SPECIALISE instance Num (Complex Float) #-}
- {-# SPECIALISE instance Num (Complex Double) #-}
- (x :+ y) + (x' :+ y') = (x + x') :+ (y + y')
diff --git a/testsuite/tests/ghc-regress/profiling/should_compile/Makefile b/testsuite/tests/ghc-regress/profiling/should_compile/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_compile/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/profiling/should_compile/all.T b/testsuite/tests/ghc-regress/profiling/should_compile/all.T
deleted file mode 100644
index b9539038b1..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_compile/all.T
+++ /dev/null
@@ -1,8 +0,0 @@
-
-# We need to run prof001 and prof002 the normal way, as the extra flags
-# added for the profiling ways makes it pass
-test('prof001', compose(only_ways(['normal']), req_profiling), compile_and_run, ['-prof -caf-all'])
-test('prof002', compose(only_ways(['normal']), req_profiling), compile_and_run, ['-prof -caf-all'])
-
-test('2410', compose(only_ways(['normal']), req_profiling), compile, ['-O2 -prof -caf-all'])
-
diff --git a/testsuite/tests/ghc-regress/profiling/should_compile/prof001.hs b/testsuite/tests/ghc-regress/profiling/should_compile/prof001.hs
deleted file mode 100644
index 8873a8487e..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_compile/prof001.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
--- This tests trac #249
-
-main = return ()
-
diff --git a/testsuite/tests/ghc-regress/profiling/should_compile/prof002.hs b/testsuite/tests/ghc-regress/profiling/should_compile/prof002.hs
deleted file mode 100644
index 0b631bbcd2..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_compile/prof002.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-
--- This tests trac #931
-
-module Main where
-
-x = f [1..5] (f [2..] [3..])
-
-f xs ys = l
- where
- l = [ if s then x else y | (x, y) <- zip xs ys ]
- s = g xs ys
- g [] _ = True
- g _ [] = False
- g (x:xs) (y:ys) = g xs ys
-
-main = print (show x)
-
diff --git a/testsuite/tests/ghc-regress/profiling/should_compile/prof002.stdout b/testsuite/tests/ghc-regress/profiling/should_compile/prof002.stdout
deleted file mode 100644
index e74b083d69..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_compile/prof002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"[1,2,3,4,5]"
diff --git a/testsuite/tests/ghc-regress/profiling/should_fail/Makefile b/testsuite/tests/ghc-regress/profiling/should_fail/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_fail/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/profiling/should_fail/all.T b/testsuite/tests/ghc-regress/profiling/should_fail/all.T
deleted file mode 100644
index d3907515a3..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_fail/all.T
+++ /dev/null
@@ -1,3 +0,0 @@
-
-test('proffail001', normal, compile_fail, ['-prof -caf-all'])
-
diff --git a/testsuite/tests/ghc-regress/profiling/should_fail/proffail001.hs b/testsuite/tests/ghc-regress/profiling/should_fail/proffail001.hs
deleted file mode 100644
index dfdf2fc730..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_fail/proffail001.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module Foo where
-
-wibble :: a
-wibble = {-# SCC "foo bar" #-} wibble
-
diff --git a/testsuite/tests/ghc-regress/profiling/should_fail/proffail001.stderr b/testsuite/tests/ghc-regress/profiling/should_fail/proffail001.stderr
deleted file mode 100644
index 5dec3b9e54..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_fail/proffail001.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-proffail001.hs:5:18: Spaces are not allowed in SCCs
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/2592.hs b/testsuite/tests/ghc-regress/profiling/should_run/2592.hs
deleted file mode 100644
index 3674a4001b..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/2592.hs
+++ /dev/null
@@ -1 +0,0 @@
-main = let xs = [1..] in print (length (xs ++ xs))
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/2592.stderr b/testsuite/tests/ghc-regress/profiling/should_run/2592.stderr
deleted file mode 100644
index b51bee2097..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/2592.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-Heap exhausted;
-Current maximum heap size is 1048576 bytes (1 MB);
-use `+RTS -M<size>' to increase it.
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/5314.hs b/testsuite/tests/ghc-regress/profiling/should_run/5314.hs
deleted file mode 100644
index 681eb9586e..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/5314.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-import Control.Concurrent
-import Control.Monad (forever)
-
-main = do
- empty <- newEmptyMVar
- exit <- newEmptyMVar
- _ <- forkIO $ threadDelay 200000 >> putMVar exit ()
- _ <- forkIO $ takeMVar empty >> return ()
- _ <- forkIO $ print (sum [1..10000])
- takeMVar exit
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/5314.stdout b/testsuite/tests/ghc-regress/profiling/should_run/5314.stdout
deleted file mode 100644
index b9d569380c..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/5314.stdout
+++ /dev/null
@@ -1 +0,0 @@
-50005000
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/Makefile b/testsuite/tests/ghc-regress/profiling/should_run/Makefile
deleted file mode 100644
index 8e1f611bda..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/Makefile
+++ /dev/null
@@ -1,25 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-DECIMAL_REGEXP = [0-9]\+.[0-9]\+
-
-define scc001Test
- grep -q '^ *$1 \+Main \+[0-9]\+ \+1 \+$(DECIMAL_REGEXP) \+$(DECIMAL_REGEXP) \+$(DECIMAL_REGEXP) \+$(DECIMAL_REGEXP)$$' scc001.prof || { echo 'No single-entry for $1 found in profile'; grep '^ *$1 ' scc001.prof; true; }
-endef
-
-define scc001Rule
- rm -f scc001.hi scc001.o scc001
- @echo Compiling with $1
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make scc001 -prof -auto-all -rtsopts $1
- ./scc001 +RTS -p
- $(call scc001Test,f)
- $(call scc001Test,g)
- $(call scc001Test,h)
-endef
-
-.PHONY: scc001
-scc001:
- $(call scc001Rule,-O0)
- $(call scc001Rule,-O)
-
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/T3001-2.hs b/testsuite/tests/ghc-regress/profiling/should_run/T3001-2.hs
deleted file mode 100644
index 961d9c3760..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/T3001-2.hs
+++ /dev/null
@@ -1,279 +0,0 @@
-
--- A second test for trac #3001, which segfaults when compiled by
--- GHC 6.10.1 and run with +RTS -hb. Most of the code is from the
--- binary 0.4.4 package.
-
-{-# LANGUAGE CPP, FlexibleInstances, FlexibleContexts, MagicHash #-}
-
-module Main (main) where
-
-import Data.Monoid
-
-import Data.ByteString.Internal (inlinePerformIO)
-
-import qualified Data.ByteString as S
-import qualified Data.ByteString.Internal as S
-import qualified Data.ByteString.Lazy as L
-import qualified Data.ByteString.Lazy.Internal as L
-
-import GHC.Exts
-import GHC.Word
-
-import Control.Monad
-import Foreign
-import System.IO
-
-import Data.Char (chr,ord)
-
-main :: IO ()
-main = do
- encodeFile "test.bin" $ replicate 10000 'x'
- print =<< (decodeFile "test.bin" :: IO String)
-
-class Binary t where
- put :: t -> Put
- get :: Get t
-
-encodeFile :: Binary a => FilePath -> a -> IO ()
-encodeFile f v = L.writeFile f $ runPut $ put v
-
-decodeFile :: Binary a => FilePath -> IO a
-decodeFile f = do
- s <- L.readFile f
- return $ runGet (do v <- get
- m <- isEmpty
- m `seq` return v) s
-
-instance Binary Word8 where
- put = putWord8
- get = getWord8
-
-instance Binary Word32 where
- put = putWord32be
- get = getWord32be
-
-instance Binary Int32 where
- put i = put (fromIntegral i :: Word32)
- get = liftM fromIntegral (get :: Get Word32)
-
-instance Binary Int where
- put i = put (fromIntegral i :: Int32)
- get = liftM fromIntegral (get :: Get Int32)
-
-instance Binary Char where
- put a = put (ord a)
- get = do w <- get
- return $! chr w
-
-instance Binary a => Binary [a] where
- put l = put (length l) >> mapM_ put l
- get = do n <- get
- replicateM n get
-
-data PairS a = PairS a !Builder
-
-sndS :: PairS a -> Builder
-sndS (PairS _ b) = b
-
-newtype PutM a = Put { unPut :: PairS a }
-
-type Put = PutM ()
-
-instance Functor PutM where
- fmap f m = Put $ let PairS a w = unPut m in PairS (f a) w
-
-instance Monad PutM where
- return a = Put $ PairS a mempty
-
- m >>= k = Put $
- let PairS a w = unPut m
- PairS b w' = unPut (k a)
- in PairS b (w `mappend` w')
-
- m >> k = Put $
- let PairS _ w = unPut m
- PairS b w' = unPut k
- in PairS b (w `mappend` w')
-
-tell :: Builder -> Put
-tell b = Put $ PairS () b
-
-runPut :: Put -> L.ByteString
-runPut = toLazyByteString . sndS . unPut
-
-putWord8 :: Word8 -> Put
-putWord8 = tell . singletonB
-
-putWord32be :: Word32 -> Put
-putWord32be = tell . putWord32beB
-
------
-
-newtype Get a = Get { unGet :: S -> (a, S) }
-
-data S = S {-# UNPACK #-} !S.ByteString -- current chunk
- L.ByteString -- the rest of the input
- {-# UNPACK #-} !Int64 -- bytes read
-
-runGet :: Get a -> L.ByteString -> a
-runGet m str = case unGet m (initState str) of (a, _) -> a
-
-isEmpty :: Get Bool
-isEmpty = do
- S s ss _ <- getZ
- return (S.null s && L.null ss)
-
-initState :: L.ByteString -> S
-initState xs = mkState xs 0
-
-getWord32be :: Get Word32
-getWord32be = do
- s <- readN 4 id
- return $! (fromIntegral (s `S.index` 0) `shiftl_w32` 24) .|.
- (fromIntegral (s `S.index` 1) `shiftl_w32` 16) .|.
- (fromIntegral (s `S.index` 2) `shiftl_w32` 8) .|.
- (fromIntegral (s `S.index` 3) )
-
-getWord8 :: Get Word8
-getWord8 = getPtr (sizeOf (undefined :: Word8))
-
-mkState :: L.ByteString -> Int64 -> S
-mkState l = case l of
- L.Empty -> S S.empty L.empty
- L.Chunk x xs -> S x xs
-
-readN :: Int -> (S.ByteString -> a) -> Get a
-readN n f = fmap f $ getBytes n
-
-shiftl_w32 :: Word32 -> Int -> Word32
-shiftl_w32 (W32# w) (I# i) = W32# (w `uncheckedShiftL#` i)
-
-getPtr :: Storable a => Int -> Get a
-getPtr n = do
- (fp,o,_) <- readN n S.toForeignPtr
- return . S.inlinePerformIO $ withForeignPtr fp $ \p -> peek (castPtr $ p `plusPtr` o)
-
-getBytes :: Int -> Get S.ByteString
-getBytes n = do
- S s ss bytes <- getZ
- if n <= S.length s
- then do let (consume,rest) = S.splitAt n s
- putZ $! S rest ss (bytes + fromIntegral n)
- return $! consume
- else
- case L.splitAt (fromIntegral n) (s `joinZ` ss) of
- (consuming, rest) ->
- do let now = S.concat . L.toChunks $ consuming
- putZ $! mkState rest (bytes + fromIntegral n)
- -- forces the next chunk before this one is returned
- if (S.length now < n)
- then
- fail "too few bytes"
- else
- return now
-
-joinZ :: S.ByteString -> L.ByteString -> L.ByteString
-joinZ bb lb
- | S.null bb = lb
- | otherwise = L.Chunk bb lb
-
-instance Monad Get where
- return a = Get (\s -> (a, s))
- {-# INLINE return #-}
-
- m >>= k = Get (\s -> let (a, s') = unGet m s
- in unGet (k a) s')
- {-# INLINE (>>=) #-}
-
- fail = error "failDesc"
-
-getZ :: Get S
-getZ = Get (\s -> (s, s))
-
-putZ :: S -> Get ()
-putZ s = Get (\_ -> ((), s))
-
-
-instance Functor Get where
- fmap f m = Get (\s -> case unGet m s of
- (a, s') -> (f a, s'))
-
------
-
-singletonB :: Word8 -> Builder
-singletonB = writeN 1 . flip poke
-
-writeN :: Int -> (Ptr Word8 -> IO ()) -> Builder
-writeN n f = ensureFree n `append` unsafeLiftIO (writeNBuffer n f)
-
-unsafeLiftIO :: (Buffer -> IO Buffer) -> Builder
-unsafeLiftIO f = Builder $ \ k buf -> inlinePerformIO $ do
- buf' <- f buf
- return (k buf')
-
-append :: Builder -> Builder -> Builder
-append (Builder f) (Builder g) = Builder (f . g)
-
-writeNBuffer :: Int -> (Ptr Word8 -> IO ()) -> Buffer -> IO Buffer
-writeNBuffer n f (Buffer fp o u l) = do
- withForeignPtr fp (\p -> f (p `plusPtr` (o+u)))
- return (Buffer fp o (u+n) (l-n))
-
-newtype Builder = Builder {
- -- Invariant (from Data.ByteString.Lazy):
- -- The lists include no null ByteStrings.
- runBuilder :: (Buffer -> [S.ByteString]) -> Buffer -> [S.ByteString]
- }
-
-data Buffer = Buffer {-# UNPACK #-} !(ForeignPtr Word8)
- {-# UNPACK #-} !Int -- offset
- {-# UNPACK #-} !Int -- used bytes
- {-# UNPACK #-} !Int -- length left
-
-toLazyByteString :: Builder -> L.ByteString
-toLazyByteString m = L.fromChunks $ unsafePerformIO $ do
- buf <- newBuffer defaultSize
- return (runBuilder (m `append` flush) (const []) buf)
-
-ensureFree :: Int -> Builder
-ensureFree n = n `seq` withSize $ \ l ->
- if n <= l then empty else
- flush `append` unsafeLiftIO (const (newBuffer (max n defaultSize)))
-
-withSize :: (Int -> Builder) -> Builder
-withSize f = Builder $ \ k buf@(Buffer _ _ _ l) ->
- runBuilder (f l) k buf
-
-defaultSize :: Int
-defaultSize = 32 * k - overhead
- where k = 1024
- overhead = 2 * sizeOf (undefined :: Int)
-
-newBuffer :: Int -> IO Buffer
-newBuffer size = do
- fp <- S.mallocByteString size
- return $! Buffer fp 0 0 size
-
-putWord32beB :: Word32 -> Builder
-putWord32beB w = writeN 4 $ \p -> do
- poke p (fromIntegral (shiftr_w32 w 24) :: Word8)
- poke (p `plusPtr` 1) (fromIntegral (shiftr_w32 w 16) :: Word8)
- poke (p `plusPtr` 2) (fromIntegral (shiftr_w32 w 8) :: Word8)
- poke (p `plusPtr` 3) (fromIntegral (w) :: Word8)
-
-shiftr_w32 :: Word32 -> Int -> Word32
-shiftr_w32 (W32# w) (I# i) = W32# (w `uncheckedShiftRL#` i)
-
-flush :: Builder
-flush = Builder $ \ k buf@(Buffer p o u l) ->
- if u == 0
- then k buf
- else S.PS p o u : k (Buffer p (o+u) 0 l)
-
-empty :: Builder
-empty = Builder id
-
-instance Monoid Builder where
- mempty = empty
- mappend = append
-
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/T3001-2.stdout b/testsuite/tests/ghc-regress/profiling/should_run/T3001-2.stdout
deleted file mode 100644
index f594a78082..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/T3001-2.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/T3001.hs b/testsuite/tests/ghc-regress/profiling/should_run/T3001.hs
deleted file mode 100644
index f7828c0283..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/T3001.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
--- This caused 6.10.1 to segfault when run with +RTS -hb
--- trac #3001
-
-module Main (main) where
-
-main :: IO ()
-main = print $ replicate 40000 'x'
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/T3001.stdout b/testsuite/tests/ghc-regress/profiling/should_run/T3001.stdout
deleted file mode 100644
index c2dbb5eb63..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/T3001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/all.T b/testsuite/tests/ghc-regress/profiling/should_run/all.T
deleted file mode 100644
index 5fe2c22eb2..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/all.T
+++ /dev/null
@@ -1,34 +0,0 @@
-# Test for #1227, #1418
-
-extra_prof_ways = ['prof_hc_hb', 'prof_hb', 'prof_hd', 'prof_hy', 'prof_hr']
-
-test('heapprof001',
- composes([only_ways(prof_ways + extra_prof_ways),
- extra_ways(extra_prof_ways),
- req_profiling,
- extra_run_opts('7')]),
- compile_and_run, [''])
-
-test('2592',
- [only_ways(['profasm']), req_profiling,
- extra_run_opts('+RTS -M1m -RTS'), exit_code(251)],
- compile_and_run, [''])
-
-test('T3001',
- [only_ways(['prof_hb']), extra_ways(['prof_hb']), req_profiling],
- compile_and_run, [''])
-
-test('T3001-2',
- [only_ways(['prof_hb']), extra_ways(['prof_hb']), req_profiling],
- compile_and_run, ['-package bytestring'])
-
-test('scc001', [expect_broken(4414), req_profiling],
- run_command, ['$MAKE -s --no-print-directory scc001'])
-
-
-test('5314',
- composes([only_ways(prof_ways + extra_prof_ways),
- extra_ways(extra_prof_ways),
- req_profiling]),
- compile_and_run,
- [''])
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/bio001.stdout b/testsuite/tests/ghc-regress/profiling/should_run/bio001.stdout
deleted file mode 100644
index 90ee71a089..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/bio001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-5000050000
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/heapprof001.hs b/testsuite/tests/ghc-regress/profiling/should_run/heapprof001.hs
deleted file mode 100644
index 67c6a17867..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/heapprof001.hs
+++ /dev/null
@@ -1,182 +0,0 @@
-{-
-From: dw@minster.york.ac.uk
-To: partain
-Subject: a compiler test
-Date: 3 Mar 1992 12:31:00 GMT
-
-Will,
- One of the decisions taken at the FLARE meeting yesterday was that we
-(FLARE people) should send you (GRASP people) interesting Haskell programs
-to test your new compiler. So allow me to present the following program,
-written by Colin Runciman in various functional languages over the years,
-which puts propositions into clausal form. The original program was
-interactive, but I've made it batch so that you can run it over night.
-Here is an example run with the prototype compiler. Note the result is
-"a <=".
-
- hc clausify.hs
- Haskell-0.41 (EXPERIMENTAL)
- Glasgow University Haskell Compiler, version 0.41
- G-Code version
- -71$ a.out
- a <=
- -71$
-
-Cheers,
-
-David
--}
-
-------------------------------------------------------------------------------
--- reducing propositions to clausal form
--- Colin Runciman, University of York, 18/10/90
-
--- an excellent benchmark is: (a = a = a) = (a = a = a) = (a = a = a)
--- batch mode version David Wakeling, February 1992
-
-module Main(main) where
-
-import Data.Ix
-import System.Environment
-
-main = do
- (n:_) <- getArgs
- putStr (res (read n))
-
-res n = concat (map clauses xs)
- where xs = take n (repeat "(a = a = a) = (a = a = a) = (a = a = a)")
- {-# NOINLINE xs #-}
-
-data StackFrame = Ast Formula | Lex Char
-
-data Formula =
- Sym Char |
- Not Formula |
- Dis Formula Formula |
- Con Formula Formula |
- Imp Formula Formula |
- Eqv Formula Formula
-
--- separate positive and negative literals, eliminating duplicates
-clause p = clause' p ([] , [])
- where
- clause' (Dis p q) x = clause' p (clause' q x)
- clause' (Sym s) (c,a) = (insert s c , a)
- clause' (Not (Sym s)) (c,a) = (c , insert s a)
-
--- the main pipeline from propositional formulae to printed clauses
-clauses = concat . map disp . unicl . split . disin . negin . elim . parse
-
-conjunct (Con p q) = True
-conjunct p = False
-
--- shift disjunction within conjunction
-disin (Dis p (Con q r)) = Con (disin (Dis p q)) (disin (Dis p r))
-disin (Dis (Con p q) r) = Con (disin (Dis p r)) (disin (Dis q r))
-disin (Dis p q) =
- if conjunct dp || conjunct dq then disin (Dis dp dq)
- else (Dis dp dq)
- where
- dp = disin p
- dq = disin q
-disin (Con p q) = Con (disin p) (disin q)
-disin p = p
-
--- format pair of lists of propositional symbols as clausal axiom
-disp (l,r) = interleave l spaces ++ "<=" ++ interleave spaces r ++ "\n"
-
--- eliminate connectives other than not, disjunction and conjunction
-elim (Sym s) = Sym s
-elim (Not p) = Not (elim p)
-elim (Dis p q) = Dis (elim p) (elim q)
-elim (Con p q) = Con (elim p) (elim q)
-elim (Imp p q) = Dis (Not (elim p)) (elim q)
-elim (Eqv f f') = Con (elim (Imp f f')) (elim (Imp f' f))
-
--- the priorities of propositional expressions
-{- UNUSED:
-fpri (Sym c) = 6
-fpri (Not p) = 5
-fpri (Con p q) = 4
-fpri (Dis p q) = 3
-fpri (Imp p q) = 2
-fpri (Eqv p q) = 1
--}
-
--- insertion of an item into an ordered list
--- Note: this is a corrected version from Colin (94/05/03 WDP)
-insert x [] = [x]
-insert x p@(y:ys) =
- if x < y then x : p
- else if x > y then y : insert x ys
- else p
-
-
-interleave (x:xs) ys = x : interleave ys xs
-interleave [] _ = []
-
--- shift negation to innermost positions
-negin (Not (Not p)) = negin p
-negin (Not (Con p q)) = Dis (negin (Not p)) (negin (Not q))
-negin (Not (Dis p q)) = Con (negin (Not p)) (negin (Not q))
-negin (Dis p q) = Dis (negin p) (negin q)
-negin (Con p q) = Con (negin p) (negin q)
-negin p = p
-
--- the priorities of symbols during parsing
-opri '(' = 0
-opri '=' = 1
-opri '>' = 2
-opri '|' = 3
-opri '&' = 4
-opri '~' = 5
-
--- parsing a propositional formula
-parse t = f where [Ast f] = parse' t []
-
-parse' [] s = redstar s
-parse' (' ':t) s = parse' t s
-parse' ('(':t) s = parse' t (Lex '(' : s)
-parse' (')':t) s = parse' t (x:s')
- where
- (x : Lex '(' : s') = redstar s
-parse' (c:t) s = if inRange ('a','z') c then parse' t (Ast (Sym c) : s)
- else if spri s > opri c then parse' (c:t) (red s)
- else parse' t (Lex c : s)
-
--- reduction of the parse stack
-red (Ast p : Lex '=' : Ast q : s) = Ast (Eqv q p) : s
-red (Ast p : Lex '>' : Ast q : s) = Ast (Imp q p) : s
-red (Ast p : Lex '|' : Ast q : s) = Ast (Dis q p) : s
-red (Ast p : Lex '&' : Ast q : s) = Ast (Con q p) : s
-red (Ast p : Lex '~' : s) = Ast (Not p) : s
-
--- iterative reduction of the parse stack
-redstar = while ((/=) 0 . spri) red
-
--- old: partain:
---redstar = while ((/=) (0::Int) . spri) red
-
-spaces = repeat ' '
-
--- split conjunctive proposition into a list of conjuncts
-split p = split' p []
- where
- split' (Con p q) a = split' p (split' q a)
- split' p a = p : a
-
--- priority of the parse stack
-spri (Ast x : Lex c : s) = opri c
-spri s = 0
-
--- does any symbol appear in both consequent and antecedant of clause
-tautclause (c,a) = [x | x <- c, x `elem` a] /= []
-
--- form unique clausal axioms excluding tautologies
-unicl a = foldr unicl' [] a
- where
- unicl' p x = if tautclause cp then x else insert cp x
- where
- cp = clause p
-
-while p f x = if p x then while p f (f x) else x
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/heapprof001.stdout b/testsuite/tests/ghc-regress/profiling/should_run/heapprof001.stdout
deleted file mode 100644
index e62352412e..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/heapprof001.stdout
+++ /dev/null
@@ -1,7 +0,0 @@
-a <=
-a <=
-a <=
-a <=
-a <=
-a <=
-a <=
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/scc001.hs b/testsuite/tests/ghc-regress/profiling/should_run/scc001.hs
deleted file mode 100644
index d153f958ef..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/scc001.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-
-module Main (main) where
-
-main :: IO ()
-main = do print $ f True
- print $ g 3
- print $ h 'a'
-
-f :: a -> a
-f x = x
-
-g :: Int -> Int
-g x = x
-
-h :: Char -> Char
-Just h = Just id
-
diff --git a/testsuite/tests/ghc-regress/profiling/should_run/scc001.stdout b/testsuite/tests/ghc-regress/profiling/should_run/scc001.stdout
deleted file mode 100644
index c3344ab64e..0000000000
--- a/testsuite/tests/ghc-regress/profiling/should_run/scc001.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-Compiling with -O0
-True
-3
-'a'
-Compiling with -O
-True
-3
-'a'
diff --git a/testsuite/tests/ghc-regress/programs/10queens/10queens.stdout b/testsuite/tests/ghc-regress/programs/10queens/10queens.stdout
deleted file mode 100644
index 67adbdb354..0000000000
--- a/testsuite/tests/ghc-regress/programs/10queens/10queens.stdout
+++ /dev/null
@@ -1 +0,0 @@
-724
diff --git a/testsuite/tests/ghc-regress/programs/10queens/Main.hs b/testsuite/tests/ghc-regress/programs/10queens/Main.hs
deleted file mode 100644
index 6e2fdc0469..0000000000
--- a/testsuite/tests/ghc-regress/programs/10queens/Main.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-module Main (main) -- q
-where {
---import Fast2haskell;
-
- f_queens a_n=f_queens' (enumFromTo (1 :: Int) a_n) a_n;
- f_queens' a_positions 0=(:) [] [];
- f_queens' a_positions a_n=c_concat (f_map (f_place (f_queens' a_positions (((-) :: (Int -> Int -> Int)) a_n (1 :: Int)))) a_positions);
- f_place a_boards a_q=[(:) a_q a_bs|a_bs<-a_boards,f_safe (1 :: Int) a_q a_bs];
- f_safe a_d a_q []=True;
- f_safe a_d a_q (a_h:a_t)=
- if (((==) :: (Int -> Int -> Bool)) a_q a_h)
- then False
- else
- if (((==) :: (Int -> Int -> Bool)) (f_absi (((-) :: (Int -> Int -> Int)) a_q a_h)) a_d)
- then False
- else
- (f_safe (((+) :: (Int -> Int -> Int)) a_d (1 :: Int)) a_q a_t);
- f_absi a_n=
- if (((<) :: (Int -> Int -> Bool)) a_n (0 :: Int))
- then (((negate) :: (Int -> Int)) a_n)
- else
- a_n;
- f_main a_n=(++) (show (length (f_queens a_n))) "\n";
- c_input=(10 :: Int);
- c_concat=f_foldr (++) [];
- f_foldr a_op a_r []=a_r;
- f_foldr a_op a_r (a_a:a_x)=a_op a_a (f_foldr a_op a_r a_x);
- f_map a_f a_x=[a_f a_a|a_a<-a_x];
- main = putStr (f_main c_input)
-}
diff --git a/testsuite/tests/ghc-regress/programs/10queens/Makefile b/testsuite/tests/ghc-regress/programs/10queens/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/10queens/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/10queens/test.T b/testsuite/tests/ghc-regress/programs/10queens/test.T
deleted file mode 100644
index 4d2b7579ba..0000000000
--- a/testsuite/tests/ghc-regress/programs/10queens/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('10queens',
- [skip_if_fast,
- extra_clean(['Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
diff --git a/testsuite/tests/ghc-regress/programs/Makefile b/testsuite/tests/ghc-regress/programs/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/programs/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/Makefile-OLD b/testsuite/tests/ghc-regress/programs/Makefile-OLD
deleted file mode 100644
index 0fab32f683..0000000000
--- a/testsuite/tests/ghc-regress/programs/Makefile-OLD
+++ /dev/null
@@ -1,43 +0,0 @@
-#-----------------------------------------------------------------------------
-# $Id: Makefile-OLD,v 1.1 2001/07/11 16:06:23 sewardj Exp $
-#
-# (c) The GHC Team, 1999-2000
-#
-
-TOP = .
-include $(TOP)/mk/boilerplate.mk
-
-NOT_THESE = CVS mk
-
-NOT_THESE += hill_stk_oflow
-# Correctly fails to terminate
-
-NOT_THESE += ipoole_spec_class
-# Dialogue style IO
-
-NOT_THESE += areid_pass
-# Old-style I/O
-
-NOT_THESE += north_lias
-# Deliberately causes divide by zero, and
-# we can't catch that yet
-
-NOT_THESE += andy_cherry barton-mangler-bug cvh_unboxing dmgob_native1 dmgob_native2 fast2haskell fexport jtod_circint okeefe_neural
-# doesn't compile
-
-NOT_THESE += jeff-bug lennart_array
-# compiles but doesn't run
-
-NOT_THESE += dmgob_native1 dmgob_native2
-# Native library doens't exist
-
-ifneq "$(HWL_NOFIB_HACK)" ""
-NOT_THESE += callback zhang_ccall
-# HWL: tmp disabled for testing GUM-merged version (20/3/01)
-# don't compile: failed to load interface for `IOExts'
-endif
-
-SUBDIRS = $(filter-out $(patsubst %, %/, $(NOT_THESE)), $(wildcard */))
-
-include $(TOP)/mk/test.mk
-
diff --git a/testsuite/tests/ghc-regress/programs/Queens/Makefile b/testsuite/tests/ghc-regress/programs/Queens/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/Queens/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/Queens/queens.hs b/testsuite/tests/ghc-regress/programs/Queens/queens.hs
deleted file mode 100644
index 548e20cb8d..0000000000
--- a/testsuite/tests/ghc-regress/programs/Queens/queens.hs
+++ /dev/null
@@ -1,50 +0,0 @@
--- The classic 8-queens problem made famous by Wirth.
--- This version Colin Runciman, March 2000.
-
-main =
- if null solutions then putStrLn "no solution!"
- else putStr (board (head solutions))
- where
- solutions = queens 8
-
-queens :: Int -> [[Int]]
-queens n = valid n n
-
-valid :: Int -> Int -> [[Int]]
-valid 0 n = [[]]
-valid m n = filter safe (extend n (valid (m-1) n))
-
-extend n b = cp (fromTo 1 n) b
-
-cp :: [a] -> [[a]] -> [[a]]
-cp [] y = []
-cp (a:x) y = map (a:) y ++ cp x y
-
-safe (a:b) = no_threat a b 1
-
-no_threat a [] m = True
-no_threat a (b:y) m =
- a /= b && a+m /= b && a-m /= b && no_threat a y (m+1)
-
-board :: [Int] -> String
-board b =
- unlines (concat (zipWith rank (from 1) b))
- where
- rank r qcol =
- map line ["o o o", " \\|/ ", " === "]
- where
- line crown_slice =
- concat (zipWith square (from 1) b)
- where
- square scol _ =
- if scol == qcol then crown_slice
- else if (scol `rem` (2::Int)) == (r `rem` (2::Int)) then "....."
- else " "
-
--- in place of ..
-
-from :: Int -> [Int]
-from n = n : from (n+1)
-
-fromTo :: Int -> Int -> [Int]
-fromTo m n = if m > n then [] else m : fromTo (m+1) n
diff --git a/testsuite/tests/ghc-regress/programs/Queens/queens.stdout b/testsuite/tests/ghc-regress/programs/Queens/queens.stdout
deleted file mode 100644
index 95eafd8a49..0000000000
--- a/testsuite/tests/ghc-regress/programs/Queens/queens.stdout
+++ /dev/null
@@ -1,24 +0,0 @@
-o o o ..... ..... .....
- \|/ ..... ..... .....
- === ..... ..... .....
- ..... .....o o o..... .....
- ..... ..... \|/ ..... .....
- ..... ..... === ..... .....
-..... ..... ..... .....o o o
-..... ..... ..... ..... \|/
-..... ..... ..... ..... ===
- ..... ..... o o o .....
- ..... ..... \|/ .....
- ..... ..... === .....
-..... o o o ..... .....
-..... \|/ ..... .....
-..... === ..... .....
- ..... ..... .....o o o.....
- ..... ..... ..... \|/ .....
- ..... ..... ..... === .....
-.....o o o..... ..... .....
-..... \|/ ..... ..... .....
-..... === ..... ..... .....
- ..... o o o ..... .....
- ..... \|/ ..... .....
- ..... === ..... .....
diff --git a/testsuite/tests/ghc-regress/programs/Queens/test.T b/testsuite/tests/ghc-regress/programs/Queens/test.T
deleted file mode 100644
index 044ebf6a2c..0000000000
--- a/testsuite/tests/ghc-regress/programs/Queens/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('queens',
- [skip_if_fast,
- extra_clean(['Main.hi', 'Main.o'])],
- compile_and_run,
- [''])
diff --git a/testsuite/tests/ghc-regress/programs/andre_monad/Main.hs b/testsuite/tests/ghc-regress/programs/andre_monad/Main.hs
deleted file mode 100644
index 7e3dda6362..0000000000
--- a/testsuite/tests/ghc-regress/programs/andre_monad/Main.hs
+++ /dev/null
@@ -1,89 +0,0 @@
--- Evaluator in a monad: with execution counts
--- Phil Wadler, 11 October 1991
-
--- Types are optional. Some must be commented out to
--- work around a bug in Gofer.
-
--- The count monad
-
-type M a = (a, Int)
-
-unit :: a -> M a
-unit a = (a, 0)
-
-bind :: M a -> (a -> M b) -> M b
-m `bind` k = case m of
- (a,i) -> case k a of
- (b,j) -> (b,i+j)
-
--- disp :: Text a => M a -> String
-disp (a,i) = show a ++ "\nCount: " ++ show i
-
-tick :: M ()
-tick = ((), 1)
-
--- The evaluator
--- Lines with * are only change from evalIdent
-
-data Op = Add | Sub | Mul | Quo
-data Term = Con Int | Bin Op Term Term
-
-eval :: Term -> M Int
-eval (Con i) = unit i
-eval (Bin op u v) = eval u `bind` (\a ->
- eval v `bind` (\b ->
- go op a b `bind` (\c -> -- *
- tick `bind` (\ () -> -- *
- unit c)))) -- *
-
-go :: Op -> Int -> Int -> M Int
-go Add a b = unit (a+b)
-go Sub a b = unit (a-b)
-go Mul a b = unit (a*b)
-go Quo a b = unit (a `quot` b) -- WDP: was "div"
-
-test :: Term -> String
-test t = disp (eval t)
-
--- Test data
-
-add, sub, mul, quo :: Term -> Term -> Term
-u `add` v = Bin Add u v
-u `sub` v = Bin Sub u v
-u `mul` v = Bin Mul u v
-u `quo` v = Bin Quo u v
-
-term0,term1,term2 :: Term
-term0 = Con 6 `mul` Con 9
-term1 = (Con 4 `mul` Con 13) `add` Con 2
-term2 = (Con 1 `quo` Con 2) `add` Con 2
-term3 = ((((((((((((((((((((((((((((((((
- ((((((((((((((((((((((((((((((
- Con 7777 `mul` Con 13) `quo` Con 13)
- `mul` Con 755) `quo` Con 755) `mul` Con 333)
- `quo` Con 755) `mul` Con 755) `mul` Con 333)
- `mul` Con 755) `quo` Con 755) `mul` Con 333)
- `quo` Con 755) `mul` Con 755) `mul` Con 333)
- `mul` Con 755) `quo` Con 755) `mul` Con 333)
- `quo` Con 755) `mul` Con 755) `mul` Con 333)
- `mul` Con 755) `quo` Con 755) `mul` Con 333)
- `quo` Con 755) `mul` Con 755) `mul` Con 333)
- `mul` Con 755) `quo` Con 755) `mul` Con 333)
- `quo` Con 755) `mul` Con 755) `mul` Con 333)
- `mul` Con 755) `quo` Con 755) `mul` Con 333)
- `quo` Con 755) `mul` Con 755) `mul` Con 333)
- `mul` Con 755) `quo` Con 755) `mul` Con 333)
- `quo` Con 755) `mul` Con 755) `mul` Con 333)
- `mul` Con 755) `quo` Con 755) `mul` Con 333)
- `quo` Con 755) `mul` Con 755) `mul` Con 333)
- `mul` Con 755) `quo` Con 755) `mul` Con 333)
- `quo` Con 755) `mul` Con 755) `mul` Con 333)
- `mul` Con 755) `quo` Con 755) `mul` Con 333)
- `quo` Con 755) `mul` Con 755) `mul` Con 333)
-
-sb 0 = term2
-sb n = if (n `mod` 2) == 0
- then term2 `add` (sb (n-1))
- else term2 `sub` (sb (n-1))
-
-main = print (show (eval (sb 5000)))
diff --git a/testsuite/tests/ghc-regress/programs/andre_monad/Makefile b/testsuite/tests/ghc-regress/programs/andre_monad/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/andre_monad/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/andre_monad/andre_monad.stdout b/testsuite/tests/ghc-regress/programs/andre_monad/andre_monad.stdout
deleted file mode 100644
index 7ea358a0c9..0000000000
--- a/testsuite/tests/ghc-regress/programs/andre_monad/andre_monad.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"(2,15002)"
diff --git a/testsuite/tests/ghc-regress/programs/andre_monad/test.T b/testsuite/tests/ghc-regress/programs/andre_monad/test.T
deleted file mode 100644
index e5ad78feda..0000000000
--- a/testsuite/tests/ghc-regress/programs/andre_monad/test.T
+++ /dev/null
@@ -1,8 +0,0 @@
-# exhausts Hugs's heap (CAF leak)
-test('andre_monad',
- [skip_if_fast,
- extra_clean(['Main.hi', 'Main.o']),
- omit_compiler_types(['hugs'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/andy_cherry/DataTypes.hs b/testsuite/tests/ghc-regress/programs/andy_cherry/DataTypes.hs
deleted file mode 100644
index 9f7c5571ba..0000000000
--- a/testsuite/tests/ghc-regress/programs/andy_cherry/DataTypes.hs
+++ /dev/null
@@ -1,622 +0,0 @@
-
- module DataTypes where
-
- import GenUtils
- import Data.Array -- 1.3
- import Data.Ix
- import Data.Char
- infix 1 =: -- 1.3
- (=:) a b = (a,b)
-
-
-
-
-
- class Presentable a where
- userFormat :: a -> String -- in prefered display format
-
-
-
-
-
- instance (Presentable a) => Presentable [a] where
- userFormat xs = unlines (map userFormat xs)
-
-
-
-
- data Piece
- = King
- | Queen
- | Rook
- | Knight
- | Bishop
- | Pawn deriving(Eq)
-
- instance Presentable Piece where
- userFormat King = "K"
- userFormat Queen = "Q"
- userFormat Rook = "R"
- userFormat Knight = "N"
- userFormat Bishop = "B"
- userFormat Pawn = "P"
-
-
-
-
- castleK = "O-O"
- castleQ = "O-O-O"
-
-
-
-
-
- data Colour = Black | White deriving (Eq)
-
- instance Presentable Colour where
- userFormat White = "White"
- userFormat Black = "Black"
-
- changeColour :: Colour -> Colour
- changeColour White = Black
- changeColour Black = White
-
-
-
-
-
- type ChessRank = Int -- 1-8
- type ChessFile = Int -- 1-8
-
- type BoardPos = (ChessFile,ChessRank) -- ChessFile (0-7) and ChessRank (0-7)
- type ExBoardPos = (Maybe ChessFile,Maybe ChessRank)
-
- extendBP :: BoardPos -> ExBoardPos
- extendBP (a,b) = (Just a,Just b)
-
- compExBPandBP :: ExBoardPos -> BoardPos -> Bool
- compExBPandBP (a,b) (c,d) = a `cmp` c && b `cmp` d
- where
- cmp Nothing _ = True
- cmp (Just x) y = x == y
-
- userFormatBoardPos :: BoardPos -> String
- userFormatBoardPos (f,r) = userFormatFile f ++ userFormatRank r
- userFormatExBoardPos :: ExBoardPos -> String
- userFormatExBoardPos (Just f,Just r) = userFormatFile f ++ userFormatRank r
- userFormatExBoardPos (Just f,Nothing) = userFormatFile f
- userFormatExBoardPos (Nothing,Just r) = userFormatRank r
- userFormatExBoardPos _ = ""
- userFormatRank r = [toEnum (r + 48)]
- userFormatFile f = [toEnum (f + 96)]
-
-
-
-
-
- data MoveTok
- = PieceTok Piece -- Q,K,R,B,N
- | RankTok ChessRank -- 1 .. 8
- | FileTok ChessFile -- a .. h
- | PartCastleTok -- 0 | O | o
- | CaptureTok -- x
- | MoveToTok -- -
- | QueensWith -- =
- | CheckTok -- +
- | MateTok -- #
-
- charToMoveTok 'Q' = Just (PieceTok Queen)
- charToMoveTok 'K' = Just (PieceTok King)
- charToMoveTok 'R' = Just (PieceTok Rook)
- charToMoveTok 'B' = Just (PieceTok Bishop)
- charToMoveTok 'N' = Just (PieceTok Knight)
- charToMoveTok '1' = Just (RankTok 1)
- charToMoveTok '2' = Just (RankTok 2)
- charToMoveTok '3' = Just (RankTok 3)
- charToMoveTok '4' = Just (RankTok 4)
- charToMoveTok '5' = Just (RankTok 5)
- charToMoveTok '6' = Just (RankTok 6)
- charToMoveTok '7' = Just (RankTok 7)
- charToMoveTok '8' = Just (RankTok 8)
- charToMoveTok 'a' = Just (FileTok 1)
- charToMoveTok 'b' = Just (FileTok 2)
- charToMoveTok 'c' = Just (FileTok 3)
- charToMoveTok 'd' = Just (FileTok 4)
- charToMoveTok 'e' = Just (FileTok 5)
- charToMoveTok 'f' = Just (FileTok 6)
- charToMoveTok 'g' = Just (FileTok 7)
- charToMoveTok 'h' = Just (FileTok 8)
- charToMoveTok '0' = Just (PartCastleTok)
- charToMoveTok 'O' = Just (PartCastleTok)
- charToMoveTok 'o' = Just (PartCastleTok)
- charToMoveTok 'x' = Just (CaptureTok)
- charToMoveTok '-' = Just (MoveToTok)
- charToMoveTok '=' = Just (QueensWith)
- charToMoveTok '+' = Just (CheckTok)
- charToMoveTok '#' = Just (MateTok)
- charToMoveTok _ = Nothing
-
-
-
- data Quantum
- = QuantumMove String -- Short Description of move
- String -- Check or Mate (+ or #)
- String -- !,??,?!, etc
- Board -- Snap Shot of Board
- | QuantumNAG Int -- !,??,?! stuff
- | QuantumComment [String] -- { comment }
- | QuantumResult String -- 1-0, etc (marks end of game)
- | QuantumAnalysis [Quantum] -- ( analysis )
- | QuantumPrintBoard -- {^D}
-
- instance Presentable Quantum where
- userFormat (QuantumMove mv ch ann _)
- = mv ++ ch ++ ann
- userFormat (QuantumNAG nag) = "$" ++ show nag
- userFormat (QuantumComment comment)
- = "[" ++ unwords comment ++ "]"
- --userFormat (QuantumNumber num) = userFormat num
- userFormat (QuantumResult str) = str
- userFormat (QuantumAnalysis anal) =
- "( " ++ unwords (map userFormat anal) ++ " )"
-
-
-
- data Result = Win | Draw | Loss | Unknown
-
- instance Presentable Result where
- userFormat Win = "1-0"
- userFormat Draw = "1/2-1/2"
- userFormat Loss = "0-1"
- userFormat Unknown = "*"
-
- mkResult :: String -> Result
- mkResult "1-0" = Win
- mkResult "1/2-1/2" = Draw
- mkResult "0-1" = Loss
- mkResult _ = Unknown
-
-
-
- data TagStr = TagStr String String
-
- instance Presentable TagStr where
- userFormat (TagStr tag str) = "[" ++ tag ++ " \"" ++ str ++ "\"]"
-
- getTagStr :: String -> String -> [TagStr] -> String
- getTagStr str def [] = def
- getTagStr str def (TagStr st ans:rest)
- | str == st = ans
- | otherwise = getTagStr str def rest
-
- getHeaderInfo
- :: [TagStr]
- -> (
- String, -- Date
- String, -- Site
- Maybe Int, -- Game Number
- Result, -- W/D/L
- String, -- White
- String, -- Black
- String -- Opening
- )
- getHeaderInfo tags = (
- date,
- site,
- gameno,
- result,
- white `par` whiteElo,
- black `par` blackElo,
- opening)
- where
- date = case getTagStr "Date" "?" tags of
- [a,b,c,d,'.','?','?','.','?','?'] -> [a,b,c,d]
- [a,b,c,d,'.',x,y,'.','?','?'] -> getMonth [x,y] ++ " " ++ [a,b,c,d]
- def -> "?"
- site = getTagStr "Site" "?" tags
- gameno = case getTagStr "GameNumber" "" tags of
- xs | all isDigit xs && not (null xs) -> Just (read xs)
- _ -> Nothing
- result = mkResult (getTagStr "Result" "*" tags)
- white = cannon (getTagStr "White" "?" tags)
- whiteElo = getTagStr "WhiteElo" "" tags
- black = cannon (getTagStr "Black" "?" tags)
- blackElo = getTagStr "BlackElo" "" tags
- opening = getOpening (getTagStr "ECO" "" tags)
-
- par xs "" = xs
- par xs ys = xs ++ " (" ++ ys ++ ")"
-
- getMonth "01" = "Jan"
- getMonth "02" = "Feb"
- getMonth "03" = "Mar"
- getMonth "04" = "Apr"
- getMonth "05" = "May"
- getMonth "06" = "Jun"
- getMonth "07" = "Jul"
- getMonth "08" = "Aug"
- getMonth "09" = "Sep"
- getMonth "10" = "Oct"
- getMonth "11" = "Nov"
- getMonth "12" = "Dec"
-
- cannon name = case span (/= ',') name of
- (a,[',',' ',b]) -> b : ". " ++ a
- (a,[',',b]) -> b : ". " ++ a
- (a,',':' ':b) -> b ++ " " ++ a
- (a,',':b) -> b ++ " " ++ a
- _ -> name
-
-
- getOpening eco@[a,b,c] | a >= 'A' && a <= 'E' && isDigit b && isDigit c
- = getOpenName ((fromEnum a - fromEnum 'A') * 100
- + (fromEnum b - fromEnum '0') * 10
- + (fromEnum c - fromEnum '0')) ++ " " ++ eco
- getOpening other = other
-
- getOpenName :: Int -> String
- getOpenName eco
- | otherwise = "Foo"
- {-
- | eco == 000 = "Irregular Openings"
- | eco == 001 = "Larsen Opening"
- | eco == 002 = "From's Gambit and Bird's Open"
- | eco == 003 = "Bird's Opening"
- | eco == 004 = "Dutch System"
- | eco == 005 = "Transposition to various Open"
- | eco == 006 = "Zukertort Opening"
- | eco >= 007 && eco <= 008
- = "Barcza System"
- | eco == 009 = "Reti Opening"
- | eco == 010 = "Variations of Dutch, QI, KI"
- | eco >= 011 && eco <= 014
- = "Reti Opening"
- | eco == 015 = "English counter King's Fianch"
- | eco >= 016 && eco <= 039
- = "English Opening"
- | eco == 040 = "Unusual replies to 1.d4"
- | eco == 041 = "Modern Defence counter 1.d4"
- | eco == 042 = "Modern Defence with c2-c4"
- | eco >= 043 && eco <= 044
- = "Old Benoni"
- | eco == 045 = "Queen's Pawn-Trompowski Var"
- | eco == 046 = "Queen's Pawn Opening"
- | eco == 047 = "Queen's Indian"
- | eco >= 048 && eco <= 049
- = "King's Indian"
- | eco == 050 = "Queen's Indian"
- | eco >= 051 && eco <= 052
- = "Budapest Defence"
- | eco >= 053 && eco <= 056
- = "Old Indian Defence"
- | eco >= 057 && eco <= 059
- = "Volga-Benko Gambit"
- | eco >= 060 && eco <= 079
- = "Benoni"
- | eco >= 080 && eco <= 099
- = "Dutch Defence"
- | eco == 100 = "Owen Def, Nimzowitsch Def"
- | eco == 101 = "Center Counter"
- | eco >= 102 && eco <= 105
- = "Alekhine's Defence"
- | eco == 106 = "Modern Defence"
- | eco >= 107 && eco <= 109
- = "Pirc Defence"
- | eco >= 110 && eco <= 119
- = "Caro-Kann Defence"
- | eco >= 120 && eco <= 199
- = "Sicilian Defence"
- | eco >= 200 && eco <= 219
- = "French Defence"
- | eco == 220 = "Rare moves"
- | eco == 221 = "Nordic Gambit"
- | eco == 222 = "Central Gambit"
- | eco >= 223 && eco <= 224
- = "Bishop's Opening"
- | eco >= 225 && eco <= 229
- = "Vienna Game"
- | eco == 230 = "King's Gambit Declined"
- | eco >= 231 && eco <= 232
- = "Falkbeer Counter Gambit"
- | eco >= 233 && eco <= 239
- = "King's Gambit"
- | eco == 240 = "Latvian Gambit"
- | eco == 241 = "Philidor Defence"
- | eco >= 242 && eco <= 243
- = "Russian Defence-Petrov"
- | eco >= 244 && eco <= 245
- = "Scotch Opening"
- | eco >= 246 && eco <= 249
- = "Four Knight's"
- | eco == 250 = "Italian Opening"
- | eco >= 251 && eco <= 252
- = "Evans Gambit"
- | eco >= 253 && eco <= 254
- = "Italian Opening"
- | eco >= 255 && eco <= 259
- = "Two Knight's Play"
- | eco >= 260 && eco <= 299
- = "Ruy Lopez"
- | eco >= 300 && eco <= 305
- = "Queen Pawn's Opening"
- | eco >= 306 && eco <= 307
- = "Queen's Gambit"
- | eco >= 308 && eco <= 309
- = "Albins Counter Gambit"
- | eco >= 310 && eco <= 319
- = "Slav Defence"
- | eco >= 320 && eco <= 329
- = "Queen's Gambit Accepted"
- | eco >= 330 && eco <= 369
- = "Queen's Gambit"
- | eco >= 370 && eco <= 399
- = "Gruenfeld Defence"
- | eco >= 400 && eco <= 409
- = "Catalan"
- | eco == 410 = "Blumenfeld Gambit"
- | eco >= 411 && eco <= 419
- = "Queen's Indian"
- | eco >= 420 && eco <= 459
- = "Nimzo Indian"
- | eco >= 460 && eco <= 499
- = "King's Indian"
- -}
-
-
-
- data MoveNumber = MoveNumber Int Colour
- instance Presentable MoveNumber where
- userFormat (MoveNumber n White) = show n ++ "."
- userFormat (MoveNumber n Black) = show n ++ "..."
-
- initMoveNumber = MoveNumber 1 White
- incMove (MoveNumber i White) = MoveNumber i Black
- incMove (MoveNumber i Black) = MoveNumber (i+1) White
- decMove (MoveNumber i White) = MoveNumber (i-1) Black
- decMove (MoveNumber i Black) = MoveNumber i White
- getMoveColour :: MoveNumber -> Colour
- getMoveColour (MoveNumber _ c) = c
-
-
-
- data Token
-
-
-
- = StringToken String
- | AsterixToken
- | LeftABToken -- ??
- | RightABToken -- ??
- | NAGToken Int -- `normal' NAGS
- | NAGAnnToken Int String
- -- `special' move annotating NAGS (1-6)
- | SymbolToken String
- | CommentToken [String] -- list of words
- | LeftSBToken
- | RightSBToken
- | LeftRBToken
- | RightRBToken
- | IntToken Int
- | PeriodToken
-
-
-
- | AnalToken [Token]
-
- instance Presentable Token where
- userFormat (StringToken str) = show str
- userFormat (IntToken n) = show n
- userFormat (PeriodToken) = "."
- userFormat (AsterixToken) = "*"
- userFormat (LeftSBToken) = "["
- userFormat (RightSBToken) = "]"
- userFormat (LeftRBToken) = "("
- userFormat (RightRBToken) = ")"
- userFormat (LeftABToken) = "<"
- userFormat (RightABToken) = ">"
- userFormat (NAGToken i) = "$" ++ show i
- userFormat (NAGAnnToken i s) = "$" ++ show i
- userFormat (SymbolToken str) = str
- userFormat (CommentToken str) = "{" ++ unwords str ++ "}"
- userFormat (AnalToken toks) = "( " ++ unwords (map userFormat toks)
- ++ " )"
-
-
-
-
-
- data Game a = Game [TagStr] [a]
-
- type AbsGame = Game Token
- type RealGame = Game Quantum
-
- instance (Presentable a) => Presentable (Game a) where
- userFormat (Game tags toks) =
- unlines (map userFormat tags
- ++ formatText 78 (map userFormat toks))
-
-
-
-
-
-
- data PlayMove
- = PlayMove
- Piece -- with this
- BoardPos -- from here
- BoardPos -- to here (possibly capturing)
- SpecialMove
-
- mkPlayMove p f t = PlayMove p f t NothingSpecial
-
- data SpecialMove
- = NothingSpecial
- | BigPawnMove -- allows e.p. next move
- | Queening Piece -- queen with this
- | EnPassant -- capture e.p.
- deriving (Eq)
-
- instance Presentable PlayMove where
- userFormat (PlayMove piece pos pos' sp) =
- userFormat piece ++
- userFormatBoardPos pos ++ "-" ++
- userFormatBoardPos pos' ++
- userFormat sp
-
- instance Presentable SpecialMove where
- userFormat (NothingSpecial) = ""
- userFormat (BigPawnMove) = "{b.p.m.}"
- userFormat (Queening p) = "=" ++ userFormat p
- userFormat (EnPassant) = "e.p."
-
- extractSrcFromPlayMove :: PlayMove -> BoardPos
- extractSrcFromPlayMove (PlayMove _ src _ _) = src
-
- extractDestFromPlayMove :: PlayMove -> BoardPos
- extractDestFromPlayMove (PlayMove _ _ dest _) = dest
-
- extractSpecialFromPlayMove :: PlayMove -> SpecialMove
- extractSpecialFromPlayMove (PlayMove _ _ _ sp) = sp
-
-
-
-
-
-
- data BoardSquare
- = VacantSq
- | WhitesSq Piece
- | BlacksSq Piece
-
- data SquareContent
- = Vacant
- | Friendly
- | Baddy
- | OffBoard deriving (Eq)
-
- instance Presentable SquareContent where
- userFormat Vacant = "."
- userFormat Friendly = "*"
- userFormat Baddy = "#"
- userFormat OffBoard = "?"
-
-
-
-
-
-
- data Board
- = Board (Array BoardPos BoardSquare)
- MoveNumber -- current player & and move
- (Maybe ChessFile) -- e.p. possibilties.
-
-
-
- displayBoard :: Colour -> Board -> [String]
- displayBoard col (Board arr _ ep) =
- ([cjustify 33 (userFormat (changeColour col)),""] ++
- [
- concat [ (case (even x,even y) of
- (True,True) -> showSq (x `div` 2) (y `div` 2)
- (False,False) -> "+"
- (True,False) -> "---"
- (False,True) -> (if x == 17 then "| " ++ show (y `div` 2) else "|"))
- | x <- [1..17::Int]]
- | y <- reverse [1..17::Int]] ++
- [concat [ " " ++ [x] ++ " " | x <- "abcdefgh" ]] ++
- ["",cjustify 33 (userFormat col),"",
- case ep of
- Nothing -> ""
- Just p -> "EnPassant:" ++ userFormatFile p ])
- where
- make n str = take n (str ++ repeat ' ')
- lookupPlace :: Int -> Int -> BoardSquare
- lookupPlace x' y' = arr ! (x',y')
-
- bold :: String -> String
- bold str = map toLower str
-
- showSq x y = case lookupPlace x y of
- VacantSq -> [if_dot,if_dot,if_dot]
- (WhitesSq p) -> (if_dot : userFormat p) ++ [if_dot]
- (BlacksSq p) -> (if_dot : bold (userFormat p)) ++ [if_dot]
- where
- if_dot = if (x - y) `rem` 2 == 0 then '.' else ' '
-
- instance Presentable Board where
- userFormat = unlines . displayBoard White
-
- boardSize :: (BoardPos,BoardPos)
- boardSize = ((1,1),(8,8))
-
-
-
-
- buildBoard :: String -> Board
- buildBoard str = Board brd initMoveNumber Nothing
- where
- brd = array boardSize (zipWith (=:) allSq (mkPieces str))
- allSq = [ (x,y) | y <- reverse [1..8::Int],x <- [1..8::Int]]
- mkPieces :: String -> [BoardSquare]
- mkPieces (hd:rest) | hd `elem` "KQRNBPkqrnbp" = pc : mkPieces rest
- where
- pc = case hd of
- 'K' -> WhitesSq King
- 'Q' -> WhitesSq Queen
- 'R' -> WhitesSq Rook
- 'N' -> WhitesSq Knight
- 'B' -> WhitesSq Bishop
- 'P' -> WhitesSq Pawn
- 'k' -> BlacksSq King
- 'q' -> BlacksSq Queen
- 'r' -> BlacksSq Rook
- 'n' -> BlacksSq Knight
- 'b' -> BlacksSq Bishop
- 'p' -> BlacksSq Pawn
- mkPieces ('/':rest) = mkPieces rest
- mkPieces (c:rest) | isDigit c =
- case span isDigit rest of
- (cs,rest') -> take (read (c:cs)) (repeat VacantSq)
- ++ mkPieces rest'
- mkPieces [] = []
-
- startBoard :: Board -- the uni before the big bang.
- startBoard = buildBoard "rnbqkbnr/pppppppp/32/PPPPPPPP/RNBQKBNR"
-
- lookupSquare :: Colour -> BoardSquare -> SquareContent
- lookupSquare _ VacantSq = Vacant
- lookupSquare White (WhitesSq p) = Friendly
- lookupSquare Black (WhitesSq p) = Baddy
- lookupSquare White (BlacksSq p) = Baddy
- lookupSquare Black (BlacksSq p) = Friendly
-
- lookupBoard :: Board -> BoardPos -> SquareContent
- lookupBoard (Board arr col _) pos =
- if inRange boardSize pos
- then lookupSquare (getMoveColour col) (arr ! pos)
- else OffBoard
-
- lookupBoardSquare :: Board -> BoardPos -> BoardSquare
- lookupBoardSquare (Board arr _ _) pos = arr ! pos
-
- getSquarePiece :: BoardSquare -> Maybe Piece
- getSquarePiece VacantSq = Nothing
- getSquarePiece (WhitesSq p) = Just p
- getSquarePiece (BlacksSq p) = Just p
-
- lookupBoardPiece :: Board -> BoardPos -> Maybe Piece
- lookupBoardPiece (Board arr _ _) pos =
- case arr ! pos of
- VacantSq -> Nothing
- WhitesSq piece -> Just piece
- BlacksSq piece -> Just piece
-
-
-
- {-# INLINE mkColBoardSq #-}
- mkColBoardSq :: Colour -> Piece -> BoardSquare
- mkColBoardSq White p = WhitesSq p
- mkColBoardSq Black p = BlacksSq p
-
- getBoardColour (Board _ mv _) = getMoveColour mv
-
diff --git a/testsuite/tests/ghc-regress/programs/andy_cherry/GenUtils.hs b/testsuite/tests/ghc-regress/programs/andy_cherry/GenUtils.hs
deleted file mode 100644
index 3e1de07fb8..0000000000
--- a/testsuite/tests/ghc-regress/programs/andy_cherry/GenUtils.hs
+++ /dev/null
@@ -1,244 +0,0 @@
-
-
-
-
-
-
-
-
-
-module GenUtils (
-
- trace,
-
- assocMaybe, assocMaybeErr,
- arrElem,
- arrCond,
- memoise,
- Maybe(..),
- MaybeErr(..),
- mapMaybe,
- mapMaybeFail,
- maybeToBool,
- maybeToObj,
- maybeMap,
- joinMaybe,
- mkClosure,
- foldb,
-
- mapAccumL,
-
- sortWith,
- sort,
- cjustify,
- ljustify,
- rjustify,
- space,
- copy,
- combinePairs,
- formatText ) where
-
-import Data.Array -- 1.3
-import Data.Ix -- 1.3
-
-import Debug.Trace ( trace )
-
-
--- -------------------------------------------------------------------------
-
--- Here are two defs that everyone seems to define ...
--- HBC has it in one of its builtin modules
-
-#if defined(__GLASGOW_HASKELL__) || defined(__GOFER__)
-
---in 1.3: data Maybe a = Nothing | Just a deriving (Eq,Ord,Text)
-
-#endif
-
-infix 1 =: -- 1.3
-type Assoc a b = (a,b) -- 1.3
-(=:) a b = (a,b)
-
-mapMaybe :: (a -> Maybe b) -> [a] -> [b]
-mapMaybe f [] = []
-mapMaybe f (a:r) = case f a of
- Nothing -> mapMaybe f r
- Just b -> b : mapMaybe f r
-
--- This version returns nothing, if *any* one fails.
-
-mapMaybeFail f (x:xs) = case f x of
- Just x' -> case mapMaybeFail f xs of
- Just xs' -> Just (x':xs')
- Nothing -> Nothing
- Nothing -> Nothing
-mapMaybeFail f [] = Just []
-
-maybeToBool :: Maybe a -> Bool
-maybeToBool (Just _) = True
-maybeToBool _ = False
-
-maybeToObj :: Maybe a -> a
-maybeToObj (Just a) = a
-maybeToObj _ = error "Trying to extract object from a Nothing"
-
-maybeMap :: (a -> b) -> Maybe a -> Maybe b
-maybeMap f (Just a) = Just (f a)
-maybeMap f Nothing = Nothing
-
-
-joinMaybe :: (a -> a -> a) -> Maybe a -> Maybe a -> Maybe a
-joinMaybe _ Nothing Nothing = Nothing
-joinMaybe _ (Just g) Nothing = Just g
-joinMaybe _ Nothing (Just g) = Just g
-joinMaybe f (Just g) (Just h) = Just (f g h)
-
-data MaybeErr a err = Succeeded a | Failed err deriving (Eq,Show{-was:Text-})
-
--- @mkClosure@ makes a closure, when given a comparison and iteration loop.
--- Be careful, because if the functional always makes the object different,
--- This will never terminate.
-
-mkClosure :: (a -> a -> Bool) -> (a -> a) -> a -> a
-mkClosure eq f = match . iterate f
- where
- match (a:b:c) | a `eq` b = a
- match (_:c) = match c
-
--- fold-binary.
--- It combines the element of the list argument in balanced mannerism.
-
-foldb :: (a -> a -> a) -> [a] -> a
-foldb f [] = error "can't reduce an empty list using foldb"
-foldb f [x] = x
-foldb f l = foldb f (foldb' l)
- where
- foldb' (x:y:x':y':xs) = f (f x y) (f x' y') : foldb' xs
- foldb' (x:y:xs) = f x y : foldb' xs
- foldb' xs = xs
-
--- Merge two ordered lists into one ordered list.
-
-mergeWith :: (a -> a -> Bool) -> [a] -> [a] -> [a]
-mergeWith _ [] ys = ys
-mergeWith _ xs [] = xs
-mergeWith le (x:xs) (y:ys)
- | x `le` y = x : mergeWith le xs (y:ys)
- | otherwise = y : mergeWith le (x:xs) ys
-
-insertWith :: (a -> a -> Bool) -> a -> [a] -> [a]
-insertWith _ x [] = [x]
-insertWith le x (y:ys)
- | x `le` y = x:y:ys
- | otherwise = y:insertWith le x ys
-
--- Sorting is something almost every program needs, and this is the
--- quickest sorting function I know of.
-
-sortWith :: (a -> a -> Bool) -> [a] -> [a]
-sortWith le [] = []
-sortWith le lst = foldb (mergeWith le) (splitList lst)
- where
- splitList (a1:a2:a3:a4:a5:xs) =
- insertWith le a1
- (insertWith le a2
- (insertWith le a3
- (insertWith le a4 [a5]))) : splitList xs
- splitList [] = []
- splitList (r:rs) = [foldr (insertWith le) [r] rs]
-
-sort :: (Ord a) => [a] -> [a]
-sort = sortWith (<=)
-
--- Gofer-like stuff:
-
-cjustify, ljustify, rjustify :: Int -> String -> String
-cjustify n s = space halfm ++ s ++ space (m - halfm)
- where m = n - length s
- halfm = m `div` 2
-ljustify n s = s ++ space (max 0 (n - length s))
-rjustify n s = space (max 0 (n - length s)) ++ s
-
-space :: Int -> String
-space n = copy n ' '
-
-copy :: Int -> a -> [a] -- make list of n copies of x
-copy n x = take n xs where xs = x:xs
-
-combinePairs :: (Ord a) => [(a,b)] -> [(a,[b])]
-combinePairs xs =
- combine [ (a,[b]) | (a,b) <- sortWith (\ (a,_) (b,_) -> a <= b) xs]
- where
- combine [] = []
- combine ((a,b):(c,d):r) | a == c = combine ((a,b++d) : r)
- combine (a:r) = a : combine r
-
-assocMaybe :: (Eq a) => [(a,b)] -> a -> Maybe b
-assocMaybe env k = case [ val | (key,val) <- env, k == key] of
- [] -> Nothing
- (val:vs) -> Just val
-
-assocMaybeErr :: (Eq a) => [(a,b)] -> a -> MaybeErr b String
-assocMaybeErr env k = case [ val | (key,val) <- env, k == key] of
- [] -> Failed "assoc: "
- (val:vs) -> Succeeded val
-
-
-deSucc (Succeeded e) = e
-
-mapAccumL :: (a -> b -> (c,a)) -> a -> [b] -> ([c],a)
-mapAccumL f s [] = ([],s)
-mapAccumL f s (b:bs) = (c:cs,s'')
- where
- (c,s') = f s b
- (cs,s'') = mapAccumL f s' bs
-
-
-
--- Now some utilties involving arrays.
--- Here is a version of @elem@ that uses partual application
--- to optimise lookup.
-
-arrElem :: (Ix a) => [a] -> a -> Bool
-arrElem obj = \x -> inRange size x && arr ! x
- where
- size = (maximum obj,minimum obj)
- arr = listArray size [ i `elem` obj | i <- range size ]
-
--- Here is the functional version of a multi-way conditional,
--- again using arrays, of course. Remember @b@ can be a function !
--- Note again the use of partiual application.
-
-arrCond :: (Ix a)
- => (a,a) -- the bounds
- -> [(Assoc [a] b)] -- the simple lookups
- -> [(Assoc (a -> Bool) b)] -- the functional lookups
- -> b -- the default
- -> a -> b -- the (functional) result
-
-arrCond bds pairs fnPairs def = (!) arr'
- where
- arr' = array bds [ t =: head
- ([ r | (p, r) <- pairs, elem t p ] ++
- [ r | (f, r) <- fnPairs, f t ] ++
- [ def ])
- | t <- range bds ]
-
-memoise :: (Ix a) => (a,a) -> (a -> b) -> a -> b
-memoise bds f = (!) arr
- where arr = array bds [ t =: f t | t <- range bds ]
-
--- Quite neat this. Formats text to fit in a column.
-
-formatText :: Int -> [String] -> [String]
-formatText n = map unwords . cutAt n []
- where
- cutAt :: Int -> [String] -> [String] -> [[String]]
- cutAt m wds [] = [reverse wds]
- cutAt m wds (wd:rest) = if len <= m || null wds
- then cutAt (m-(len+1)) (wd:wds) rest
- else reverse wds : cutAt n [] (wd:rest)
- where len = length wd
-
-
-
diff --git a/testsuite/tests/ghc-regress/programs/andy_cherry/Interp.hs b/testsuite/tests/ghc-regress/programs/andy_cherry/Interp.hs
deleted file mode 100644
index 7d33e896cf..0000000000
--- a/testsuite/tests/ghc-regress/programs/andy_cherry/Interp.hs
+++ /dev/null
@@ -1,262 +0,0 @@
-
-
- module Interp (runInterp) where
-
- import GenUtils
- import DataTypes
- import InterpUtils
- import Parser (pgnLexer)
-
-
-
- runInterp :: AbsGame -> RealGame
- runInterp (Game tags toks) = Game tags (pgnInterp toks initParState)
-
-
-
- initParState = (FirstBoard startBoard)
-
- type Par a = StoreBoard -> a
- thenP :: Par a -> (a -> Par b) -> Par b
- returnP :: a -> Par a
-
- returnP a = \s -> a
- thenP m k s = case m s of
- r -> k r s
-
- failP a = \s -> error a
- consP q rest = \s -> q : pgnInterp rest s
- thenP' :: Par StoreBoard -> Par a -> Par a
- thenP' m k s = case m s of
- r -> k r
- newGameP :: Par a -> Par a
- newGameP m = \ _ -> m initParState
-
- getCurrColour :: Par Colour
- getCurrColour =
- getBoard `thenP` \ (Board _ (MoveNumber _ col) _) ->
- returnP col
-
- checkColour :: MoveNumber -> Par ()
- checkColour (MoveNumber i col) =
- getBoard `thenP` \ (Board _ (MoveNumber i' col') _) ->
- if i == i' && col == col'
- then returnP ()
- else failP ("number mis-match: "
- ++ userFormat (MoveNumber i col)
- ++ " (looking for "
- ++ userFormat (MoveNumber i' col')
- ++ ")\n")
-
-
-
- data StoreBoard
- = FirstBoard Board
- | UndoableBoard Board {- new -} Board {- back one -}
-
- updateBoard :: Board -> Par StoreBoard
- updateBoard brd (FirstBoard old_brd)
- = UndoableBoard brd old_brd
- updateBoard brd (UndoableBoard old_brd _)
- = UndoableBoard brd old_brd
-
- getBoard :: Par Board
- getBoard s@(FirstBoard brd)
- = brd
- getBoard s@(UndoableBoard brd _)
- = brd
-
- undoBoard :: Par StoreBoard
- undoBoard (FirstBoard _)
- = error "Incorrect start to some analysis"
- undoBoard (UndoableBoard _ old_brd)
- = FirstBoard old_brd
-
-
-
- pgnInterp :: [Token] -> Par [Quantum]
- pgnInterp (IntToken n:PeriodToken:PeriodToken:PeriodToken:rest) =
- checkColour (MoveNumber n Black) `thenP` \ () ->
- pgnInterp rest
- pgnInterp (IntToken n:PeriodToken:rest) =
- checkColour (MoveNumber n White) `thenP` \ () ->
- pgnInterp rest
-
- pgnInterp (SymbolToken str:CommentToken (ann:rs):r)
- | all (flip elem "!?") ann =
- pgnInterp (SymbolToken str:pgnLexer ann ++ (CommentToken rs:r))
-
-
-
-
- pgnInterp (CommentToken (n:tag:rest):r)
- | head tag == '(' && take 2 (reverse tag) == ":)" && length rest > 1 =
- getCurrColour `thenP` \ col ->
- let
- invert Black r = r -- because the move has *already* happend
- invert _ "0.00" = "0.00" -- dont negate 0
- invert _ ('-':r) = r
- invert _ r = '-':r
- in
- pgnInterp (LeftRBToken:map SymbolToken (take (length rest-1) rest)
- ++ [CommentToken ["Score:",invert col n],RightRBToken] ++ r)
-
-
- pgnInterp (CommentToken []:rest) = pgnInterp rest
- pgnInterp (CommentToken comm:rest) =
- consP (QuantumComment comm) rest
- pgnInterp (NAGToken nag:rest) =
- consP (QuantumNAG nag) rest
- pgnInterp (NAGAnnToken nag _:rest) =
- consP (QuantumNAG nag) rest
- pgnInterp (SymbolToken "0-1":rest) =
- consP (QuantumResult "0-1") rest
- pgnInterp (SymbolToken "1-0":rest) =
- consP (QuantumResult "1-0") rest
- pgnInterp (SymbolToken "1/2-1/2":rest) =
- consP (QuantumResult "1/2-1/2") rest
- pgnInterp (AsterixToken:rest) =
- consP (QuantumResult "*") rest
- pgnInterp (SymbolToken move:rest@(NAGAnnToken _ str:_)) =
- getBoard `thenP` \ brd ->
- parseMove move brd `thenP` \ (mv,ch,corrMv,new_brd) ->
- updateBoard new_brd `thenP'`
- consP (QuantumMove mv ch str new_brd) rest
- pgnInterp (SymbolToken move:rest) =
- getBoard `thenP` \ brd ->
- parseMove move brd `thenP` \ (mv,ch,corrMv,new_brd) ->
- updateBoard new_brd `thenP'`
- consP (QuantumMove mv ch "" new_brd) rest
- pgnInterp (LeftRBToken:rest) =
- getAnalysis rest 0 [] `thenP` \ (anal,rest) ->
- (undoBoard `thenP'`
- pgnInterp anal) `thenP` \ anal' ->
- consP (QuantumAnalysis anal') rest
- pgnInterp [] = returnP []
- pgnInterp toks = failP ("when reading: "
- ++ unwords (map userFormat (take 10 toks)))
-
-
-
- getAnalysis (t@LeftRBToken:r) n anal = getAnalysis r (n+1) (t:anal)
- getAnalysis (t@RightRBToken:r) n anal
- | n == (0 :: Int) = returnP (reverse anal,r)
- | otherwise = getAnalysis r (n-1) (t:anal)
- getAnalysis (t:r) n anal = getAnalysis r n (t:anal)
- getAnalysis [] n anal = failP "no closing ')'"
-
-
-
-
- parseMove :: String -> Board -> Par (String,String,String,Board)
- parseMove move brd@(Board _ (MoveNumber _ col) _) =
- case mapMaybeFail charToMoveTok move of
- Nothing -> failP ("strange move:" ++ move)
- Just mv_toks ->
- let
- (chs,mv_toks') = getChecks (reverse mv_toks)
- (queen,mv_toks'') = getQueen mv_toks'
- in
- case parseAlgMove mv_toks'' queen brd of
- (the_mv,new_brd) -> returnP (the_mv,chs,"$$",new_brd)
-
-
-
- parseAlgMove
- :: [MoveTok]
- -> Maybe Piece
- -> Board
- -> (String,Board)
- parseAlgMove [PartCastleTok,MoveToTok,PartCastleTok] Nothing
- = findCastleKMove
- parseAlgMove [PartCastleTok,MoveToTok,PartCastleTok,
- MoveToTok,PartCastleTok] Nothing
- = findCastleQMove
-
- parseAlgMove (PieceTok King:r) Nothing = parsePieceMove r King
- parseAlgMove (PieceTok Queen:r) Nothing = parsePieceMove r Queen
- parseAlgMove (PieceTok Rook:r) Nothing = parsePieceMove r Rook
- parseAlgMove (PieceTok Knight:r) Nothing = parsePieceMove r Knight
- parseAlgMove (PieceTok Bishop:r) Nothing = parsePieceMove r Bishop
-
-
-
- parseAlgMove [FileTok sf,RankTok sr,MoveToTok,FileTok df,RankTok dr] q =
- findAPawnMove (extendBP (sf,sr)) (extendBP (df,dr)) q
- parseAlgMove [FileTok sf,RankTok sr,CaptureTok,FileTok df,RankTok dr] q =
- findAPawnMove (extendBP (sf,sr)) (extendBP (df,dr)) q
-
-
-
- parseAlgMove [FileTok sf,RankTok sr,FileTok df,RankTok dr] q = \ brd ->
- case lookupBoardPiece brd (sf,sr) of
- Nothing -> error ("cant find piece at: " ++ userFormatBoardPos (sf,sr))
- Just Pawn -> findAPawnMove (extendBP (sf,sr)) (extendBP (df,dr)) q brd
- Just King | sf == 5 && df == 7 -> findCastleKMove brd
- Just King | sf == 5 && df == 3 -> findCastleQMove brd
- Just p -> findAMove p (extendBP (sf,sr)) (extendBP (df,dr)) brd
-
- -- later !
-
-
-
- parseAlgMove [FileTok df,RankTok dr] q =
- findAPawnMove (Nothing,Nothing) (extendBP (df,dr)) q
-
-
-
- parseAlgMove [FileTok sf,CaptureTok,FileTok df,RankTok dr] q =
- findAPawnMove (Just sf,Nothing) (extendBP (df,dr)) q
-
-
-
- parseAlgMove [FileTok sf,FileTok df] q =
- findAPawnMove (Just sf,Nothing) (Just df,Nothing) q
-
-
-
- parseAlgMove [FileTok sf,CaptureTok,FileTok df] q =
- findAPawnMove (Just sf,Nothing) (Just df,Nothing) q
- parseAlgMove _ _ = error "!>!"
-
-
-
- parsePieceMove [FileTok df,RankTok dr] p
- = findAMove p (Nothing,Nothing) (extendBP (df,dr))
-
-
-
- parsePieceMove [CaptureTok,FileTok df,RankTok dr] p
- = findAMove p (Nothing,Nothing) (extendBP (df,dr))
-
-
-
- parsePieceMove [RankTok sr,FileTok df,RankTok dr] p
- = findAMove p (Nothing,Just sr) (extendBP (df,dr))
- parsePieceMove [RankTok sr,CaptureTok,FileTok df,RankTok dr] p
- = findAMove p (Nothing,Just sr) (extendBP (df,dr))
-
-
-
- parsePieceMove [FileTok sf,FileTok df,RankTok dr] p
- = findAMove p (Just sf,Nothing) (extendBP (df,dr))
- parsePieceMove [FileTok sf,CaptureTok,FileTok df,RankTok dr] p
- = findAMove p (Just sf,Nothing) (extendBP (df,dr))
-
-
-
- parsePieceMove [FileTok sf,RankTok sr,MoveToTok,FileTok df,RankTok dr] p
- = findAMove p (extendBP (sf,sr)) (extendBP (df,dr))
- parsePieceMove [FileTok sf,RankTok sr,CaptureTok,FileTok df,RankTok dr] p
- = findAMove p (extendBP (sf,sr)) (extendBP (df,dr))
- parsePieceMove _ p = failP ("syntax error in move:")
-
- getChecks (CheckTok:CheckTok:r) = ("#",r)
- getChecks (CheckTok:r) = ("+",r)
- getChecks (MateTok:r) = ("#",r)
- getChecks r = ("",r)
-
- getQueen (PieceTok p:QueensWith:r) = (Just p,reverse r)
- getQueen r = (Nothing,reverse r)
-
-
diff --git a/testsuite/tests/ghc-regress/programs/andy_cherry/InterpUtils.hs b/testsuite/tests/ghc-regress/programs/andy_cherry/InterpUtils.hs
deleted file mode 100644
index 820163e8fd..0000000000
--- a/testsuite/tests/ghc-regress/programs/andy_cherry/InterpUtils.hs
+++ /dev/null
@@ -1,371 +0,0 @@
-
- module InterpUtils where
-
- import GenUtils
- import DataTypes
- import Data.Array -- 1.3
-
-
-
-
-
- findCastleKMove brd = (castleK,makeACastleK brd)
- findCastleQMove brd = (castleQ,makeACastleQ brd)
-
- findAPawnMove
- :: ExBoardPos
- -> ExBoardPos
- -> Maybe Piece
- -> Board
- -> (String,Board)
-
-
-
-
-
- findAPawnMove move_src move_dest queen brd@(Board arr mv _)
- = debug (move_txt,new_brd)
- where
-
- move_colour = getMoveColour mv
-
- debug = {- trace (
- {- userFormat brd ++ -}
- userFormat (getMoveColour mv) ++
- -- " (" ++ userFormat absmove ++ ")" ++
- "\nALL :" ++ unwords (map userFormat all_moves) ++
- "\n") -} id
-
-
-
-
- correct_src = concat (map (getAllMovesFor brd) currPieces)
-
- currPieces =
- [ (Pawn,x,y) |
- (x,y) <- start_range,
- r <- [arr ! (x,y)],
- lookupSquare move_colour r == Friendly,
- (Just Pawn) <- [getSquarePiece r]]
-
-
-
- start_range
- = case (move_src,move_dest) of
- ((Just f,Just r),_) -> [(f,r)]
- ((Just f,_),_) -> [(f,r) | r <- [2..7]]
- -- no capture !
- (_,(Just f,_)) -> [(f,r) | r <- [2..7]]
- _ -> error "strange pawn move:"
-
- the_correct_move = if (length correct_move /= 1)
- then error ("\nAmbiguous move:"
- ++ show (unwords (map userFormat correct_move))
- ++ ":" ++ {- userFormat absmove ++ -} "\n"
- ++ userFormat brd)
- else head correct_move
-
- correct_move =
- filter (sameQueening queen.extractSpecialFromPlayMove)
- (filter (compExBPandBP move_dest.extractDestFromPlayMove)
- correct_src)
- sameQueening (Just p) (Queening p') = p == p'
- sameQueening Nothing (Queening p') = Queen == p'
- sameQueening _ _ = True
-
- move_txt = createShortMove the_correct_move "" brd
- corr_txt =
- userFormatBoardPos
- (extractSrcFromPlayMove the_correct_move) ++
- userFormatBoardPos
- (extractDestFromPlayMove the_correct_move)
- {- queening ?? -}
- new_brd = makeAMove brd the_correct_move
-
-
-
-
-
- findAMove
- :: Piece
- -> ExBoardPos
- -> ExBoardPos
- -> Board
- -> (String,Board)
-
- findAMove move_piece move_src move_dest brd@(Board arr mv _)
- = debug (move_txt,new_brd)
- where
-
-
-
- move_colour = getMoveColour mv
-
- debug = {- trace (
- {- userFormat brd ++ -}
- userFormat (getMoveColour mv) ++
- " (" ++ {- userFormat absmove ++ -} ")" ++
- "\nALL :" ++ unwords (map userFormat all_moves) ++
- "\nDEST :" ++ unwords (map userFormat correct_dest) ++
- "\nSRC :" ++ unwords (map userFormat correct_move) ++
- "\n") -} id
-
-
-
-
-
- all_moves = allValidMoves brd move_piece (const True)
-
-
-
- correct_dest = filter
- (compExBPandBP move_dest.extractDestFromPlayMove)
- all_moves
- correct_move = filter
- (compExBPandBP move_src.extractSrcFromPlayMove)
- correct_dest
- the_correct_move = if (length correct_move /= 1)
- then error ("\nAmbiguous move:"
- ++ show (unwords (map userFormat correct_move))
- ++ ":" {- ++ userFormat absmove -} ++ "\n"
- ++ userFormat brd)
- else head correct_move
- disamb = case move_dest of
- (Just _,Nothing) -> "" -- fg => fxg4, no disambig.
- _ -> disAmb
- (extractSrcFromPlayMove the_correct_move)
- (map (extractSrcFromPlayMove) correct_dest)
-
- move_txt = createShortMove the_correct_move disamb brd
- corr_txt =
- userFormatBoardPos
- (extractSrcFromPlayMove the_correct_move) ++
- userFormatBoardPos
- (extractDestFromPlayMove the_correct_move)
- {- queening -}
- new_brd = makeAMove brd the_correct_move
- --partain: findAMove _ _ _ brd = error ("strange move: ")
-
- allValidMoves :: Board -> Piece -> (ChessFile -> Bool) -> [PlayMove]
- allValidMoves brd piece corr_file
- = concat (map (getAllMovesFor brd) (getCurrPieces brd piece corr_file))
-
- getCurrPieces
- :: Board
- -> Piece
- -> (ChessFile -> Bool)
- -> [(Piece,ChessFile,ChessRank)]
- getCurrPieces (Board arr (MoveNumber _ col) _) pc corr_file =
- [ (p,x,y) |
- ((x,y), r) <- assocs arr,
- lookupSquare col r == Friendly,
- (Just p) <- [getSquarePiece r],
- p == pc,
- corr_file x
- ]
-
-
-
-
-
-
- getAllMovesFor :: Board -> (Piece,Int,Int) -> [PlayMove]
-
-
-
- getAllMovesFor brd (Rook,x,y) =
- [ mkPlayMove Rook (x,y) (x',y')
- | (x',y') <- (
- movePiece 0 1 brd x y ++
- movePiece 0 (-1) brd x y ++
- movePiece 1 0 brd x y ++
- movePiece (-1) 0 brd x y) ]
- getAllMovesFor brd (Bishop,x,y) =
- [ mkPlayMove Bishop (x,y) (x',y')
- | (x',y') <- (
- movePiece 1 1 brd x y ++
- movePiece 1 (-1) brd x y ++
- movePiece (-1) 1 brd x y ++
- movePiece (-1) (-1) brd x y) ]
- getAllMovesFor brd (Queen,x,y) =
- [ mkPlayMove Queen (x,y) (x',y')
- | (x',y') <- (
- movePiece 0 1 brd x y ++
- movePiece 0 (-1) brd x y ++
- movePiece 1 0 brd x y ++
- movePiece (-1) 0 brd x y ++
- movePiece 1 1 brd x y ++
- movePiece 1 (-1) brd x y ++
- movePiece (-1) 1 brd x y ++
- movePiece (-1) (-1) brd x y) ]
-
-
-
- getAllMovesFor brd (Knight,x,y) =
- [ mkPlayMove Knight (x,y) (x',y')
- | (xd,yd) <- concat
- [ [(d1,d2 * 2),(d1 * 2,d2)]
- | d1 <- [1,-1], d2 <- [1,-1]],
- x' <- [xd + x],
- y' <- [yd + y],
- case lookupBoard brd (x',y') of
- Vacant -> True
- Friendly -> False
- Baddy -> True
- OffBoard -> False]
-
- getAllMovesFor brd (King,x,y) =
- [ mkPlayMove King (x,y) (x',y')
- | (xd,yd) <- [(1,1),(1,0),(1,-1),(0,1),
- (0,-1),(-1,1),(-1,0),(-1,-1)],
- x' <- [xd + x],
- y' <- [yd + y],
- case lookupBoard brd (x',y') of
- Vacant -> True
- Friendly -> False
- Baddy -> True
- OffBoard -> False]
-
-
-
-
- getAllMovesFor brd@(Board _ (MoveNumber _ col) may_ep) (Pawn,x,y)
- = real_pawn_moves
- where
- pawn_moves =
- case lookupBoard brd (x,y+del) of
- Friendly -> []
- Baddy -> []
- Vacant -> (mkPlayMove Pawn (x,y) (x,y+del) :
- if y /= sta then [] else
- case lookupBoard brd (x,y+del*2) of
- Friendly -> []
- Baddy -> []
- Vacant ->
- [ PlayMove Pawn (x,y) (x,y+del*2) BigPawnMove])
- left_pc = case lookupBoard brd (x-1,y+del) of
- Baddy -> [mkPlayMove Pawn (x,y) (x-1,y+del) ]
- _ -> []
- right_pc = case lookupBoard brd (x+1,y+del) of
- Baddy -> [mkPlayMove Pawn (x,y) (x+1,y+del) ]
- _ -> []
- all_pawn_moves = pawn_moves ++ left_pc ++ right_pc
- real_pawn_moves = en_passant ++
- (if y + del == qn -- if can queens
- then concat [ let fn = PlayMove Pawn f t . Queening
- in
- [ fn Queen,
- fn Rook,
- fn Bishop,
- fn Knight ]
- | PlayMove _ f t _ <- all_pawn_moves ]
- else all_pawn_moves)
- en_passant =
- case (y == ep,may_ep) of
- (True,Just f) | f == x+1 || f == x-1
- -> [PlayMove Pawn (x,y) (f,y+del) EnPassant]
- _ -> []
- del,sta,qn,ep :: Int
- (del,sta,qn,ep) -- delta (direction), start, Queening and E.P. Rank
- = case col of
- White -> (1,2,8,5)
- Black -> (-1,7,1,4)
-
- movePiece xd yd brd x y =
- case lookupBoard brd (x',y') of
- OffBoard -> []
- Friendly -> []
- Baddy -> [(x',y')]
- Vacant -> (x',y') : movePiece xd yd brd x' y'
- where
- x' = x + xd
- y' = y + yd
-
-
-
-
- makeAMove :: Board -> PlayMove -> Board
- makeAMove board@(Board brd mv@(MoveNumber _ col) _)
- move@(PlayMove piece pos pos' NothingSpecial) =
- Board (brd // [ pos =: VacantSq,
- pos' =: mkColBoardSq col piece ])
- (incMove mv) Nothing
- makeAMove board@(Board brd mv@(MoveNumber _ col) _)
- move@(PlayMove piece pos@(f,_) pos' BigPawnMove) =
- Board (brd // [ pos =: VacantSq,
- pos' =: mkColBoardSq col piece ])
- (incMove mv) (Just f)
- makeAMove board@(Board brd mv@(MoveNumber _ col) _)
- move@(PlayMove piece pos@(f,_) pos' (Queening q)) =
- Board (brd // [ pos =: VacantSq,
- pos' =: mkColBoardSq col q])
- (incMove mv) (Just f)
- makeAMove board@(Board brd mv@(MoveNumber _ col) _) -- ASSERT ?
- move@(PlayMove piece (f,_) (f',_) EnPassant) =
- Board (brd // [ (f,st) =: VacantSq,
- (f',fn) =: mkColBoardSq col Pawn,
- (f',st) =: VacantSq ])
- (incMove mv) Nothing
- where (st,fn) = case col of
- White -> (5,6)
- Black -> (4,3)
-
- makeACastleK (Board brd mv@(MoveNumber _ White) _) =
- Board (brd //
- [ (5,1) =: VacantSq,
- (6,1) =: mkColBoardSq White Rook,
- (7,1) =: mkColBoardSq White King,
- (8,1) =: VacantSq ]) (incMove mv) Nothing
- makeACastleK (Board brd mv@(MoveNumber _ Black) _) =
-
- Board (brd //
- [ (5,8) =: VacantSq,
- (6,8) =: mkColBoardSq Black Rook,
- (7,8) =: mkColBoardSq Black King,
- (8,8) =: VacantSq ]) (incMove mv) Nothing
- makeACastleQ (Board brd mv@(MoveNumber _ White) _) =
- Board (brd //
- [ (5,1) =: VacantSq,
- (4,1) =: mkColBoardSq White Rook,
- (3,1) =: mkColBoardSq White King,
- (1,1) =: VacantSq ]) (incMove mv) Nothing
- makeACastleQ (Board brd mv@(MoveNumber _ Black) _) =
- Board (brd //
- [ (5,8) =: VacantSq,
- (4,8) =: mkColBoardSq Black Rook,
- (3,8) =: mkColBoardSq Black King,
- (1,8) =: VacantSq ]) (incMove mv) Nothing
-
- disAmb _ [_] = ""
- disAmb (a,b) t@[(n,m),(x,y)]
- | n == x = userFormatRank b
- | otherwise = userFormatFile a
- disAmb src lst = error ("PANIC: cant disambiguate: " ++ show src ++ show lst)
-
- createShortMove :: PlayMove -> String -> Board -> String
- createShortMove (PlayMove Pawn (f,r) dest q) "" brd =
- (if lookupBoard brd dest == Baddy || EnPassant == q
- then userFormatFile f ++ "x" ++ userFormatBoardPos dest
- else userFormatBoardPos dest) ++
- case q of
- Queening p -> "=" ++ userFormat p
- _ -> ""
- createShortMove (PlayMove p _ dest _) extra brd =
- userFormat p ++ extra ++ capt ++ userFormatBoardPos dest
- where
- capt = if lookupBoard brd dest == Baddy
- then "x"
- else ""
-
- getEPStart :: Colour -> ChessFile
- getEPStart White = 5
- getEPStart Black = 4
-
- getEPEnd :: Colour -> ChessFile
- getEPEnd White = 6
- getEPEnd Black = 3
-
- getHomeRank :: Colour -> ChessRank
- getHomeRank White = 1
- getHomeRank Black = 8
-
diff --git a/testsuite/tests/ghc-regress/programs/andy_cherry/Main.hs b/testsuite/tests/ghc-regress/programs/andy_cherry/Main.hs
deleted file mode 100644
index aa4274ec59..0000000000
--- a/testsuite/tests/ghc-regress/programs/andy_cherry/Main.hs
+++ /dev/null
@@ -1,204 +0,0 @@
-
- module Main (main) where
-
- import GenUtils
- import DataTypes
- import Parser
- import Interp
- import PrintTEX
-
- import System.Environment -- 1.3 (partain)
- import Data.Char -- 1.3
-
- --fakeArgs = "game001.txt"
- --fakeArgs = "pca2.pgn"
- --fakeArgs = "silly.pgn"
- --fakeArgs = "small.pgn"
- --fakeArgs = "sicil.pgn"
- --fakeArgs = "badgame.pgn"
- --fakeArgs = "mycgames.pgn"
- fakeArgs = "rab.pgn"
-
- version = "0.3"
-
-
- main = do
- [test_dir] <- getArgs
- let (style,fn,filename) = interpArgs (words "-d tex mygames.pgn")
- file <- readFile (test_dir ++ "/" ++filename)
- std_in <- getContents
- let games = pgnParser fn file -- parse relavent pgn games
- putStr (prog style std_in games)
-
-{- OLD 1.2:
- main =
- getArgs abort $ \ args ->
- --let args = (words "-d tex analgames.pgn") in
- let (style,fn,filename) = interpArgs args in
- readFile filename abort $ \ file ->
- readChan stdin abort $ \ std_in ->
- let games = pgnParser fn file -- parse relavent pgn games
- in
- appendChan stdout (prog style std_in games) abort done
--}
-
- interpArgs :: [String] -> (OutputStyle,Int -> Bool,String)
- --interpArgs [] = (ViewGame,const True,fakeArgs)
- interpArgs [] = interpArgs (words "-d pgn analgames.pgn")
- interpArgs files = interpArgs' OutputPGN (const True) files
-
- interpArgs' style fn ("-d":"pgn":xs) = interpArgs' OutputPGN fn xs
- interpArgs' style fn ("-d":"rawpgn":xs) = interpArgs' OutputRawPGN fn xs
- interpArgs' style fn ("-d":"play":xs) = interpArgs' ViewGame fn xs
- interpArgs' style fn ("-d":"parser":xs) = interpArgs' OutputParser fn xs
- interpArgs' style fn ("-d":"tex":xs) = interpArgs' OutputTEX fn xs
- interpArgs' style fn ("-d":"head":xs) = interpArgs' OutputHeader fn xs
- interpArgs' style fn ("-g":range:xs)
- = interpArgs' style (changeFn (parse range)) xs
- where
- changeFn (Digit n:Line:Digit m:r) x = moreChangeFn r x || x >= n && x <= m
- changeFn (Line:Digit m:r) x = moreChangeFn r x || x <= m
- changeFn (Digit n:Line:r) x = moreChangeFn r x || x >= n
- changeFn (Digit n:r) x = moreChangeFn r x || x == n
- changeFn _ _ = rangeError
- moreChangeFn [] = const False
- moreChangeFn (Comma:r) = changeFn r
- moreChangeFn _ = rangeError
- parse xs@(n:_)
- | isDigit n = case span isDigit xs of
- (dig,rest) -> Digit (read dig) : parse rest
- parse ('-':r) = Line : parse r
- parse (',':r) = Comma : parse r
- parse [] = []
- parse _ = rangeError
- rangeError = error ("incorrect -g option (" ++ range ++ ")\n")
-
- interpArgs' style fn [file] = (style,fn,file)
- interpArgs' style fn args = error ("bad args: " ++ unwords args)
-
- data Tok
- = Digit Int -- n
- | Line -- -
- | Comma -- ,
-
- data OutputStyle
-
- = OutputPGN -- pgn
- | OutputRawPGN -- rawpgn
- | OutputHeader -- header
- | ViewGame -- play
- | ViewGameEmacs -- emacs
- | TwoColumn -- 2col
- | TestGames -- test
- | OutputTEX
-
-
-
- | OutputParser -- simply dump out the string read in.
- | CmpGen -- cmp 2nd and 3rd generations of output
-
-
-
- prog :: OutputStyle -- style of action
- -> String -- stdin (for interactive bits)
- -> [AbsGame] -- input games
- -> String -- result
- prog OutputPGN _
- = pgnPrinter True -- print out game(s)
- . map runInterp -- interprete all games
- prog OutputRawPGN _
- = pgnPrinter False -- print out game(s)
- . map runInterp -- interprete all games
- prog OutputHeader _
- = pgnHeadPrinter -- print out game(s) headers
- . map runInterp -- interprete all games
- prog OutputTEX _
- = texPrinter -- print out game(s)
- . map runInterp -- interprete all games
- prog ViewGame std_in
- = interactViewer std_in -- print out game(s)
- . runInterp -- interprete the game
- . head -- should check for only *one* object
- prog OutputParser _
- = userFormat
-
-
-
-
-
-
-
-
-
- type PrintState = (Bool,MoveNumber)
-
- pgnPrinter :: Bool -> [RealGame] -> String
- pgnPrinter detail = unlines . concat . map printGame
- where
- printMoveNumber :: Bool -> MoveNumber -> String
- printMoveNumber False (MoveNumber _ Black) = ""
- printMoveNumber _ mvnum = userFormat mvnum ++ " "
-
- printQuantums :: PrintState -> [Quantum] -> [String]
- printQuantums ps = concat . fst . mapAccumL printQuantum ps
-
- printQuantum :: PrintState -> Quantum -> ([String],PrintState)
- printQuantum (pnt,mv) (QuantumMove move ch an brd) =
- ([printMoveNumber pnt mv ++ move ++ ch],(False,incMove mv))
- printQuantum (pnt,mv) (QuantumNAG i) =
- if detail
- then (["$" ++ show i],(False,mv))
- else ([],(False,mv))
- printQuantum (pnt,mv) (QuantumComment comms) =
- if detail
- then ("{" : comms ++ ["}"],(True,mv))
- else ([],(False,mv))
- printQuantum (pnt,mv) (QuantumAnalysis anal) =
- if detail
- then ("(" : printQuantums (True,decMove mv) anal ++ [")"],
- (True,mv))
- else ([],(False,mv))
- printQuantum (pnt,mv) (QuantumResult str) = ([str],(True,mv))
- printQuantum _ _ = error "PANIC: strange Quantum"
-
- printGame :: RealGame -> [String]
- printGame (Game tags qu) =
- [ userFormat tag | tag <- tags] ++
- formatText 75 (printQuantums (False,initMoveNumber) qu)
-
-
-
- printHeadGame :: RealGame -> [String]
- printHeadGame (Game tags qu) = [
- rjustify 4 gameno ++ " " ++
- take 20 (rjustify 20 white) ++ " - " ++
- take 20 (ljustify 20 black) ++ " " ++
- take 26 (ljustify 28 site) ++ " " ++ result ]
- where
- (date,site,game_no,res,white,black,opening) = getHeaderInfo tags
- gameno = case game_no of
- Nothing -> ""
- Just n -> show n
- result = userFormat res
-
- pgnHeadPrinter :: [RealGame] -> String
- pgnHeadPrinter = unlines . concat . map printHeadGame
-
-
-
-
-
- interactViewer :: String -> RealGame -> String
- interactViewer stdin (Game tags qu) = replayQ qu (lines stdin)
-
- replayQ (QuantumMove _ _ _ brd:rest) std_in
- = "\027[H" ++ userFormat brd ++ waitQ rest std_in
- replayQ (_:rest) std_in = replayQ rest std_in
- replayQ [] _ = []
-
- waitQ game std_in = ">>" ++
- (case std_in of
- [] -> ""
- (q:qs) -> replayQ game qs)
-
-
diff --git a/testsuite/tests/ghc-regress/programs/andy_cherry/Makefile b/testsuite/tests/ghc-regress/programs/andy_cherry/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/andy_cherry/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/andy_cherry/Parser.hs b/testsuite/tests/ghc-regress/programs/andy_cherry/Parser.hs
deleted file mode 100644
index 6dddb64a0e..0000000000
--- a/testsuite/tests/ghc-regress/programs/andy_cherry/Parser.hs
+++ /dev/null
@@ -1,98 +0,0 @@
-
- module Parser (pgnLexer,pgnParser) where
-
- import GenUtils
- import DataTypes
- import Data.Char -- 1.3
-
-
-
- pgnLexer :: String -> [Token]
- pgnLexer ('.':r) = PeriodToken : pgnLexer r
- pgnLexer ('*':r) = AsterixToken : pgnLexer r
- pgnLexer ('[':r) = LeftSBToken : pgnLexer r
- pgnLexer (']':r) = RightSBToken : pgnLexer r
- pgnLexer ('(':r) = LeftRBToken : pgnLexer r
- pgnLexer (')':r) = RightRBToken : pgnLexer r
- pgnLexer ('<':r) = LeftABToken : pgnLexer r
- pgnLexer ('>':r) = RightABToken : pgnLexer r
- pgnLexer ('"':r) = readString r ""
- pgnLexer ('{':r) = readComment r ""
- pgnLexer ('$':r) = readNAG r ""
- pgnLexer ('!':'?':r) = mkNAGToken 5 : pgnLexer r
- pgnLexer ('!':'!':r) = mkNAGToken 3 : pgnLexer r
- pgnLexer ('!':r) = mkNAGToken 1 : pgnLexer r
- pgnLexer ('?':'?':r) = mkNAGToken 4 : pgnLexer r
- pgnLexer ('?':'!':r) = mkNAGToken 6 : pgnLexer r
- pgnLexer ('?':r) = mkNAGToken 2 : pgnLexer r
- pgnLexer ('%':r) = pgnLexer (dropWhile (/= '\n') r)
- pgnLexer (c:r)
- | isSpace c = pgnLexer r
- | isAlpha c || isDigit c = pgnSymbolLexer r [c]
- | otherwise = error ("Error lexing: " ++ takeWhile (/= '\n') (c:r))
- pgnLexer [] = []
-
- pgnSymbolLexer (c:r) sym
- | isAlpha c
- || isDigit c
- || elem c "_+#=:-/" = pgnSymbolLexer r (c:sym)
- pgnSymbolLexer r sym
- | all isDigit sym = IntToken (read (reverse sym)) : pgnLexer r
- pgnSymbolLexer r sym = SymbolToken (reverse sym) : pgnLexer r
-
- readString ('\\':'\\':r) str = readString r ('\\':str)
- readString ('\\':'"':r) str = readString r ('"':str)
- readString ('"':r) str = StringToken (reverse str) : pgnLexer r
- readString (c:r) str = readString r (c:str)
-
- readComment ('}':r) str = CommentToken (revwords str []) : pgnLexer r
- readComment (c:r) str = readComment r (c:str)
-
- revwords (c:r) wds
- | isSpace c = revwords r wds
- | otherwise = revwords' r [c] wds
- revwords [] wds = wds
- revwords' (c:r) wd wds
- | isSpace c = revwords r (wd:wds)
- | otherwise = revwords' r (c:wd) wds
- revwords' [] wd wds = wd : wds
-
- readNAG (c:r) str
- | isDigit c = readNAG r (c:str)
- readNAG r str = mkNAGToken (read (reverse str)) : pgnLexer r
-
- mkNAGToken 1 = NAGAnnToken 1 "!"
- mkNAGToken 2 = NAGAnnToken 2 "?"
- mkNAGToken 3 = NAGAnnToken 3 "!!"
- mkNAGToken 4 = NAGAnnToken 4 "??"
- mkNAGToken 5 = NAGAnnToken 5 "!?"
- mkNAGToken 6 = NAGAnnToken 6 "?!"
- mkNAGToken n = NAGToken n
-
-
-
-
- pgnParser :: (Int -> Bool) -> String -> [AbsGame]
- pgnParser fn str =
- [ game | (no,game) <- zip [1..] (parseTags (pgnLexer str) id),
- fn no]
-
- type FL a = [a] -> [a]
-
- parseTags :: [Token] -> FL TagStr -> [AbsGame]
- parseTags (LeftSBToken:SymbolToken sym:StringToken str:RightSBToken:rest)
- other_tags = parseTags rest (other_tags . ((:) (TagStr sym str)))
- parseTags toks@(LeftSBToken:_) _
- = error ("BAD Token:" ++ unwords (map userFormat (take 10 toks)))
- parseTags toks tags = parseToks toks id tags
-
- parseToks :: [Token]
- -> FL Token
- -> FL TagStr
- -> [AbsGame]
- parseToks next@(LeftSBToken:_) = \ toks tags ->
- Game (tags []) (toks []) : parseTags next id
- parseToks (tk:r) = pushToken tk r
- parseToks [] = \ toks tags -> [Game (tags []) (toks [])]
-
- pushToken tok r toks = parseToks r (toks . ((:) tok))
diff --git a/testsuite/tests/ghc-regress/programs/andy_cherry/PrintTEX.hs b/testsuite/tests/ghc-regress/programs/andy_cherry/PrintTEX.hs
deleted file mode 100644
index d8f253f6d4..0000000000
--- a/testsuite/tests/ghc-regress/programs/andy_cherry/PrintTEX.hs
+++ /dev/null
@@ -1,182 +0,0 @@
-
- module PrintTEX (texPrinter) where
-
- import GenUtils
- import DataTypes
- import Data.Array -- 1.3
- import Data.Char -- 1.3
-
-
-
-
-
-
-
- splitUpQuantum :: [Quantum] -> [[Quantum]]
- splitUpQuantum q = splitUpQuantums q []
- where
- splitUpQuantums [] [] = []
- splitUpQuantums [] mvs = [reverse mvs]
- splitUpQuantums (mv@(QuantumMove _ _ _ _):rest) mvs
- = splitUpQuantums rest (mv:mvs)
- splitUpQuantums (mv@(QuantumNAG _):rest) mvs
- = splitUpQuantums rest mvs
- splitUpQuantums (x:xs) [] = [x] : splitUpQuantums xs []
- splitUpQuantums (x:xs) mvs
- = [reverse mvs,[x]] ++ splitUpQuantums xs []
-
- type TeXState =
- (Bool, -- if Top level !
- Board, -- current board
- MoveNumber) -- the Current Move Number
-
- printTeXQuantums :: TeXState -> [Quantum] -> [String]
- printTeXQuantums ps
- = concat . fst . mapAccumL printTeXQuantum ps . splitUpQuantum
-
- printTeXQuantum :: TeXState -> [Quantum] -> ([String],TeXState)
- printTeXQuantum state@(_,board,_) [QuantumComment ["\004"]] =
- (mkTeXBoard board,state)
- printTeXQuantum state@(_,board,_) [QuantumComment (('\004':comm):comms)] =
- (mkTeXBoard board ++ formatText 70 (parseSquiggles (comm:comms)),state)
- printTeXQuantum state [QuantumComment comms] =
- (formatText 70 (parseSquiggles comms),state)
- printTeXQuantum (pnt,brd,mv) [QuantumAnalysis anal] =
- (printTeXQuantums (False,err,decMove mv) anal,(pnt,brd,mv))
- where err = error "Syntax error using ^D"
- printTeXQuantum state@(_,board,_) [QuantumResult str] =
- (mkTeXBoard board ++ [printTeXResult (mkResult str)],state)
- printTeXQuantum state mvs@(QuantumMove _ _ _ _:_) =
- printTeXMoves state mvs
- printTeXQuantum _ _ = error "PANIC: strange Quantum"
-
-
- parseSquiggles = map parseSquiggle
- parseSquiggle ('<':'s':'a':'w':'>':r) = "\\wbetter{}" ++ r
- parseSquiggle ('<':'a':'w':'>':r) = "\\wupperhand{}" ++ r
- parseSquiggle ('<':'w':'a':'w':'>':r) = "\\wdecisive{}" ++ r
- parseSquiggle ('<':'s':'a':'b':'>':r) = "\\bbetter{}" ++ r
- parseSquiggle ('<':'a':'b':'>':r) = "\\bupperhand{}" ++ r
- parseSquiggle ('<':'w':'a':'b':'>':r) = "\\bdecisive{}" ++ r
- parseSquiggle wd = wd
-
-
- printTeXResult :: Result -> String
- printTeXResult Win = "$1\\!-\\!0$"
- printTeXResult Loss = "$0\\!-\\!1$"
- printTeXResult Draw = "${1 \\over 2}\\!-\\!{1 \\over 2}$"
- printTeXResult Unknown = "$*$"
-
- printTeXMoves (tl,_,mv) mvs
- = ([text],(True,brd,incMove last_mv_num))
- where
- aux_mvs = zip3 mvs (iterate incMove mv) (False:repeat True)
-
- (QuantumMove _ _ _ brd,last_mv_num,_) = last aux_mvs
- text = initText tl
- ++ concat (fst (mapAccumL (pntMove tl) (mv,False) mvs))
- ++ endText tl
-
- initText False =
- case mv of
- MoveNumber i Black -> "|" ++ show i ++ "\\ldots~"
- _ -> "|"
- initText True =
- "\\begin{center}|\n" ++
- "{\\bf" ++
- "\\begin{tabular}{rp{50pt}p{50pt}}\n" ++
- case mv of
- MoveNumber i Black -> show i ++ " & \\ldots"
- _ -> ""
-
- endText True = case getMoveColour last_mv_num of
- White -> "&\\\\\n\\end{tabular}}|\n\\end{center}"
- Black -> "\\end{tabular}}|\n\\end{center}"
- endText False = "|"
-
-
-
- pntMove True (mv@(MoveNumber i White),bl) move
- = (show i ++ " & "
- ++ printableMove move,
- (incMove mv,True))
- pntMove True (mv@(MoveNumber i Black),bl) move
- = (" & " ++ printableMove move ++ "\\\\\n",
- (incMove mv,True))
- pntMove False (mv@(MoveNumber i White),bl) move
- = ((if bl then "; " else "") ++ show i ++ ".~"
- ++ printableMove move,
- (incMove mv,True))
- pntMove False (mv@(MoveNumber i Black),bl) move
- = ((if bl then ", " else "") ++ printableMove move,
- (incMove mv,True))
-
- printableMove :: Quantum -> String
- printableMove (QuantumMove move ch an _) = map fn move ++ rest
- where
- fn 'x' = '*'
- fn 'O' = '0'
- fn c = c
- rest = case ch of
- "#" -> an ++ " mate"
- _ -> ch ++ an
-
- mkTeXBoard :: Board -> [String]
- mkTeXBoard (Board arr _ _) =
- ["\n\\board"] ++
- ["{" ++ [ fn ((x-y) `rem` 2 == 0) (arr ! (x,y)) | x <- [1..8]] ++ "}"
- | y <- reverse [1..8]] ++
- ["$$\\showboard$$"]
- where
- fn _ (WhitesSq p) = head (userFormat p)
- fn _ (BlacksSq p) = toLower (head (userFormat p))
- fn True VacantSq = '*'
- fn False VacantSq = ' '
-
- printTeXGame :: RealGame -> [String]
- printTeXGame (Game tags qu) = [
- "\\clearpage",
- "\\begin{center}",
- "\\fbox{\\fbox{\\large\\begin{tabular}{l}",
- ("Game " ++ gameno ++ " \\hspace{.3 in} "
- ++ date
- ++ " \\hspace{.3 in} "
- ++ result
- ++ "\\\\"),
- "\\hline" ++ (if null opening then "" else "\n" ++ opening ++ "\\\\"),
- "\\raisebox{2.5pt}[11pt]{\\framebox[11pt]{\\rule{0pt}{4.25pt}}} "
- ++ white ++ "\\\\",
- "\\rule[-1pt]{11pt}{11pt} "++ black ++ "\\\\",
- site,
- "\\end{tabular}}}",
- "\\end{center}"] ++
- (printTeXQuantums (True,startBoard,initMoveNumber) qu)
- where
- (date,site,game_no,res,white,black,opening) = getHeaderInfo tags
- gameno = case game_no of
- Nothing -> ""
- Just n -> show n
- result = printTeXResult res
-
- texPrinter :: [RealGame] -> String
- texPrinter games =
- texHeader
- ++ (unlines(concat(map printTeXGame games)))
- ++ texFooter
-
- texHeader =
- "\\documentstyle[twocolumn,a4wide,chess]{article}\n" ++
- "\\textwidth 7.0 in\n" ++
- "\\textheight 63\\baselineskip\n" ++
- "\\columnsep .4 in\n" ++
- "\\columnseprule .5 pt\n" ++
- "\\topmargin -0.5 in\n" ++
- "\\headheight 0 pt\n" ++
- "\\headsep 0 pt\n" ++
- "\\oddsidemargin -0.3 in\n" ++
- "\\font\\sc=cmcsc10\n\\pagestyle{empty}\n" ++
- "\\begin{document}\n\\thispagestyle{empty}\n\n"
-
- texFooter = "\n\\end{document}\n"
-
-
diff --git a/testsuite/tests/ghc-regress/programs/andy_cherry/andy_cherry.stdout b/testsuite/tests/ghc-regress/programs/andy_cherry/andy_cherry.stdout
deleted file mode 100644
index ef160b0325..0000000000
--- a/testsuite/tests/ghc-regress/programs/andy_cherry/andy_cherry.stdout
+++ /dev/null
@@ -1,7258 +0,0 @@
-\documentstyle[twocolumn,a4wide,chess]{article}
-\textwidth 7.0 in
-\textheight 63\baselineskip
-\columnsep .4 in
-\columnseprule .5 pt
-\topmargin -0.5 in
-\headheight 0 pt
-\headsep 0 pt
-\oddsidemargin -0.3 in
-\font\sc=cmcsc10
-\pagestyle{empty}
-\begin{document}
-\thispagestyle{empty}
-
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Oct 1993 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo C10\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} George Webb\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & Nf3 & d5\\
-2 & d4 & Nc6\\
-3 & Nc3 & Nf6\\
-\end{tabular}}|
-\end{center}
-|3\ldots~Bf5|
-is more natural.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-4 & e4?&\\
-\end{tabular}}|
-\end{center}
-|4.~Bf4|
-is better.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-4 & \ldots & e6?\\
-\end{tabular}}|
-\end{center}
-|4\ldots~d*e4; 5.~d5, e*f3; 6.~d*c6, Q*d1+; 7.~N*d1|
-and black is a clear pawn up.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & e5 & Ne4\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r*bqkb r}
-{ppp *ppp}
-{ *n*p* *}
-{* *pP * }
-{ * Pn* *}
-{* N *N* }
-{PPP* PPP}
-{R BQKB*R}
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & N*e4?&\\
-\end{tabular}}|
-\end{center}
-Taking this knight looses a pawn
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & \ldots & d*e4\\
-7 & Nd2 & Q*d4\\
-8 & Nc4 & Q*d1+\\
-9 & K*d1 & Bd7\\
-\end{tabular}}|
-\end{center}
-|9\ldots~Bc5; 10.~f3, e*f3; 11.~g*f3, 0-0; 12.~Bd3|
-White can get presure down the `g' file, but first needs to solve the
-problem of the Bishop on c5 guarding g8.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & Bd2&\\
-\end{tabular}}|
-\end{center}
-|10.~Be3|
-is better.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & \ldots & Bb4\\
-11 & c3 & Bc5\\
-12 & Ke1 & 0-0-0\\
-\end{tabular}}|
-\end{center}
-|12\ldots~b5; 13.~Ne3, B*e3; 14.~B*e3, N*e5|
-wins a pawn, but black might have problems because of queenside
-weaknesses.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & g3&\\
-\end{tabular}}|
-\end{center}
-|13.~Bg5, Be7; 14.~B*e7, N*e7; 15.~Rd1|
-and white is starting to contest the `d' file.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & \ldots & Rhf8\\
-14 & Bg2 & f5?\\
-\end{tabular}}|
-\end{center}
-black is throwing away a pawn.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & e*f6 & g*f6\\
-\end{tabular}}|
-\end{center}
-|15\ldots~R*f6|
-gives black more piece activity.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & B*e4&\\
-\end{tabular}}|
-\end{center}
-taking the weak pawn, and attacking h7.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & \ldots & e5?\\
-\end{tabular}}|
-\end{center}
-|16\ldots~Rh8|
-is required to protect the weak h pawn.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & B*h7&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ *kr r *}
-{pppb* *B}
-{ *n* p *}
-{* b p * }
-{ *N* * *}
-{* P * P }
-{PP B P P}
-{R * K *R}
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & \ldots & f5\\
-\end{tabular}}|
-\end{center}
-|17\ldots~B*f2+; 18.~K*f2, Be6; 19.~N*e5, R*d2+; 20.~Ke1, R*b2|
-winning material, and striping whites king of protection.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & b4 & Be6\\
-19 & b5&\\
-\end{tabular}}|
-\end{center}
-|19.~b*c5, B*c4|
-and white has the two bishops.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & \ldots & B*c4\\
-20 & b*c6 & b*c6\\
-\end{tabular}}|
-\end{center}
-|20\ldots~B*f2+; 21.~K*f2, R*d2+; 22.~Ke1, Re2+; 23.~Kd1, b*c6; 24.~h4, Rd8+|
-with a winning attack on whites exposed king.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & Rb1?&\\
-\end{tabular}}|
-\end{center}
-Throws away a pawn needlessly.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & \ldots & B*a2\\
-\end{tabular}}|
-\end{center}
-|21\ldots~B*f2+; 22.~K*f2, R*d2+; 23.~Ke1, R*a2|
-winning two pawns rather than one.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & Rb2 & Bd5\\
-23 & Rg1 & e4\\
-\end{tabular}}|
-\end{center}
-|23\ldots~a5; 24.~h4, a4; 25.~Bh6, Bf3; 26.~Rd2, R*d2; 27.~B*d2|
-is a better plan, with a dangerous passed `a' pawn.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & Bh6? & Ba3\\
-\end{tabular}}|
-\end{center}
-|24\ldots~Rf7; 25.~Bg5, R*h7; 26.~B*d8, Ba3; 27.~Rd2, K*d8|
-two bishops vs a rook, a difficult win for black.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & Rb1 & Rfe8?\\
-\end{tabular}}|
-\end{center}
-another missed opertunity.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & B*f5+ & Be6\\
-27 & Bg6 & Rh8\\
-28 & Be3&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ *kr * r}
-{p p * * }
-{ *p*b*B*}
-{* * * * }
-{ * *p* *}
-{b P B P }
-{ * * P P}
-{*R* K R }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-28 & \ldots & Rd3?\\
-\end{tabular}}|
-\end{center}
-|28\ldots~R*h2; 29.~B*e4, c5; 30.~Rb7, a5|
-and black has a fighting chance
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-29 & Bd4&\\
-\end{tabular}}|
-\end{center}
-|29.~B*e4, R*c3; 30.~Bd4, Rc4; 31.~B*h8, R*e4+|
-and black is lost.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-29 & \ldots & Bd5??\\
-30 & B*h8 & e3??\\
-31 & f3?&\\
-\end{tabular}}|
-\end{center}
-|31.~B*d3, e*f2+; 32.~K*f2, Bc5+; 33.~Bd4|
-and white is two rooks up.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-31 & \ldots & Rd2\\
-32 & Bf6 & Bb2\\
-33 & h4&\\
-\end{tabular}}|
-\end{center}
-|33.~Bf5+, Kb7; 34.~c4, B*c4; 35.~R*b2+, R*b2; 36.~B*b2|
-winning.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-33 & \ldots & Kb7\\
-34 & Bg5 & B*f3\\
-\end{tabular}}|
-\end{center}
-|34\ldots~Ba2; 35.~Bc2, B*b1; 36.~B*b1, Rh2; 37.~B*e3, B*c3+|
-and black is just a bishop down in a pawn race.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-35 & B*e3 & Re2+\\
-36 & Kf1 & R*e3\\
-37 & Re1??&\\
-\end{tabular}}|
-\end{center}
-giving black a chance to equalize.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-37 & \ldots & Re2??\\
-\end{tabular}}|
-\end{center}
-Returning the complement.
-|37\ldots~R*e1+; 38.~K*e1, B*c3+; 39.~Kf2, Bd4+; 40.~K*f3, B*g1|
-and White still has the edge with 2 connected passed pawns, but black
-has real chances.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-38 & R*e2&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{pkp * * }
-{ *p* *B*}
-{* * * * }
-{ * * * P}
-{* P *bP }
-{ b *R* *}
-{* * *KR }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Nov 1993 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo C65\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Barry Dunne\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & Nc6\\
-3 & Bb5 & Nf6\\
-4 & d3&\\
-\end{tabular}}|
-\end{center}
-|4.~0-0|
-Ruy Lopez, Berlin Defence
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-4 & \ldots & Be7\\
-\end{tabular}}|
-\end{center}
-|4\ldots~Bc5|
-is better.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & 0-0&\\
-\end{tabular}}|
-\end{center}
-|5.~B*c6, d*c6; 6.~N*e5, Bd6; 7.~Nf3, 0-0; 8.~0-0, Be6|
-and white is a pawn up, but black has a lead in development.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & \ldots & 0-0?\\
-\end{tabular}}|
-\end{center}
-|5\ldots~d6|
-is needed to protect e5.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & Nc3&\\
-\end{tabular}}|
-\end{center}
-|6.~B*c6, d*c6; 7.~N*e5, Bd6; 8.~Nf3, Bg4; 9.~Be3|
-and white is a clean pawn up.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & \ldots & b6?\\
-7 & a3 & Bb7\\
-8 & b4 & Nd4\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* q rk*}
-{pbppbppp}
-{ p * n *}
-{*B* p * }
-{ P nP* *}
-{P NP*N* }
-{ *P* PPP}
-{R BQ*RK }
-$$\showboard$$
-A bit ambitious.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & N*e5&\\
-\end{tabular}}|
-\end{center}
-|9.~N*d4, e*d4; 10.~Ne2, d5; 11.~e5, Nd7|
-is whites best line.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & \ldots & N*b5\\
-\end{tabular}}|
-\end{center}
-|9\ldots~d5; 10.~Bb2, d*e4; 11.~d*e4, N*e4|
-with equal chances.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & N*b5 & d5\\
-11 & Bb2 & d*e4\\
-12 & d*e4&\\
-\end{tabular}}|
-\end{center}
-|12.~f3|
-is a better approach.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-12 & \ldots & Q*d1\\
-13 & Ra*d1 & Bd6\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* * rk*}
-{pbp *ppp}
-{ p b n *}
-{*N* N * }
-{ P *P* *}
-{P * * * }
-{ BP* PPP}
-{* *R*RK }
-$$\showboard$$
-|13\ldots~B*e4; 14.~Nd7, B*c2; 15.~B*f6, g*f6; 16.~Rd2|
-with a slight advantage for white.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & Nf3&\\
-\end{tabular}}|
-\end{center}
-|14.~N*d6, c*d6; 15.~R*d6, B*e4; 16.~c4, Rfd8; 17.~c5, b*c5; 18.~b*c5|
-winning for white.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & \ldots & B*e4\\
-\end{tabular}}|
-\end{center}
-|14\ldots~N*e4|
-is better.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & N*d6 & c*d6\\
-16 & B*f6 & g*f6\\
-17 & R*d6 & B*c2\\
-\end{tabular}}|
-\end{center}
-|17\ldots~B*f3; 18.~g*f3, Rac8; 19.~Rc1, Rc3; 20.~Rd3, R*d3; 21.~c*d3|
-and whites passed pawn is a long way from queening.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & R*f6&\\
-\end{tabular}}|
-\end{center}
-|18.~Nd4, Ba4; 19.~R*f6, Rfd8; 20.~Rf4, Rd7; 21.~Re4|
-a pawn up, but with chances for black, because of the powerful Bishop.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & \ldots & Rfd8\\
-19 & Ne5 & Kg7\\
-\end{tabular}}|
-\end{center}
-|19\ldots~Bg6|
-is better, defending the weak pawn.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & R*f7+ & Kg8\\
-21 & Rc7&\\
-\end{tabular}}|
-\end{center}
-|21.~f4, a6; 22.~g3, Rd2; 23.~Rb7, b5|
-and white should win.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & \ldots & Re8\\
-\end{tabular}}|
-\end{center}
-|21\ldots~Rdc8; 22.~Rb7, Be4; 23.~Rd7, Rc2; 24.~Rfd1|
-with connected rooks for white.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & Re1&\\
-\end{tabular}}|
-\end{center}
-|22.~f4|
-is better for protecting the knight.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & \ldots & Rac8\\
-\end{tabular}}|
-\end{center}
-should have moved the `e' Rook.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-23 & R*a7 & Bf5\\
-\end{tabular}}|
-\end{center}
-|23\ldots~Ra8!?|
-planning to attack the weak `a' pawn.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & f4 & Bg4\\
-\end{tabular}}|
-\end{center}
-|24\ldots~Rc2|
-penatraiting the 7th.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & Kf2 & Rc2+\\
-26 & Kg3 & Re2\\
-27 & R*e2 & B*e2\\
-28 & Nc6?&\\
-\end{tabular}}|
-\end{center}
-where is that knight going ?
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-28 & \ldots & Re3+\\
-29 & Kf2 & Re4\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * *k*}
-{R * * *p}
-{ pN* * *}
-{* * * * }
-{ P *rP *}
-{P * * * }
-{ * *bKPP}
-{* * * * }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-30 & f5&\\
-\end{tabular}}|
-\end{center}
-|30.~Ne7+, Kf8; 31.~Nd5, Bd3; 32.~N*b6, Re7|
-totally winning for white
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-30 & \ldots & Bg4\\
-31 & Ne7+&\\
-\end{tabular}}|
-\end{center}
-|31.~Kg3, h6; 32.~f6, Be6; 33.~Re7|
-looking very good for white.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-31 & \ldots & Kf8\\
-32 & f6 & Rf4+\\
-33 & Kg3 & Re4\\
-34 & h3&\\
-\end{tabular}}|
-\end{center}
-|34.~Nd5, Be6; 35.~N*b6, Rg4+; 36.~Kf3, Rg6; 37.~R*h7, R*f6+; 38.~Ke4|
-and with 4 connected passed white will win.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-34 & \ldots & Bh5\\
-35 & Nd5 & b5\\
-36 & R*h7 & Bg6\\
-37 & Rh4&\\
-\end{tabular}}|
-\end{center}
-|37.~Rh8+, Kf7; 38.~Rb8, Bf5; 39.~R*b5, Be6; 40.~Rb7+, Kg6; 41.~Rg7+|
-just look at whites advantage.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-37 & \ldots & R*h4\\
-38 & K*h4 & Be4\\
-39 & Nc3&\\
-\end{tabular}}|
-\end{center}
-|39.~Ne3, Kf7; 40.~Kg5, Bc6; 41.~g4, Be4; 42.~h4, Bd3; 43.~h5|
-winning.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-39 & \ldots & Bc6\\
-\end{tabular}}|
-\end{center}
-|39\ldots~B*g2; 40.~N*b5, Kf7; 41.~Kg5, B*h3; 42.~Nd6+, Kg8; 43.~a4, Kh7|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-40 & g4 & Kf7\\
-41 & g5&\\
-\end{tabular}}|
-\end{center}
-|41.~Kg5, Kg8; 42.~h4, Bd7; 43.~h5, Kf7; 44.~Ne4, Kg8; 45.~Nd6|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-41 & \ldots & Kg6\\
-42 & Kg4? & Bd7+\\
-43 & Kf4 & B*h3\\
-44 & N*b5 & Bd7\\
-\end{tabular}}|
-\end{center}
-|44\ldots~Kf7; 45.~Nd6+, Ke6; 46.~f7, Ke7; 47.~g6, Kf8; 48.~a4, Kg7|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-45 & a4 & Bc6\\
-46 & Nc3 & Bd7\\
-47 & b5&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* *b* * }
-{ * * Pk*}
-{*P* * P }
-{P* * K *}
-{* N * * }
-{ * * * *}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Nov 1993 \hspace{.3 in} $0\!-\!1$\\
-\hline
-Foo C65\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Rab Brown\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & Nc6\\
-3 & Bb5 & Bc5\\
-4 & 0-0 & Nf6\\
-5 & Nc3 & d6\\
-6 & a3 & Ng4?\\
-7 & Qe1&\\
-\end{tabular}}|
-\end{center}
-|7.~h3|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & \ldots & 0-0\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r*bq rk*}
-{ppp *ppp}
-{ *np * *}
-{*Bb p * }
-{ * *P*n*}
-{P N *N* }
-{ PPP PPP}
-{R B QRK }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & B*c6 & b*c6\\
-9 & b4 & Ba6\\
-10 & b*c5 & B*f1\\
-11 & K*f1&\\
-\end{tabular}}|
-\end{center}
-|11.~Q*f1, Qd7; 12.~Bb2, d*c5; 13.~d3, Rfb8; 14.~Rb1|
-clearly winning for white.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & \ldots & Qf6\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* * rk*}
-{p p *ppp}
-{ *pp q *}
-{* P p * }
-{ * *P*n*}
-{P N *N* }
-{ *PP PPP}
-{R B QK* }
-$$\showboard$$
-|11\ldots~Rb8; 12.~Qe2, Qd7; 13.~Qa6, Ra8; 14.~h3, Nf6; 15.~d4, e*d4|
-is a better plan.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-12 & d3 & Qg6\\
-13 & Rb1&\\
-\end{tabular}}|
-\end{center}
-|13.~h3, Nh6|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & \ldots & Qh5\\
-14 & Rb7&\\
-\end{tabular}}|
-\end{center}
-|14.~h3, Nf6; 15.~Rb7, Rfc8; 16.~Bg5, Qg6; 17.~Qe3, Ne8|
-and white has a commanding lead.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & \ldots & N*h2+\\
-15 & N*h2 & Q*h2\\
-16 & R*c7 & Qh1+\\
-17 & Ke2 & Q*g2\\
-18 & R*c6&\\
-\end{tabular}}|
-\end{center}
-|18.~c*d6, Rfc8; 19.~R*c8+, R*c8; 20.~Be3, Rd8; 21.~Bc5, h5|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & \ldots & d*c5\\
-\end{tabular}}|
-\end{center}
-|18\ldots~Qg4+; 19.~f3, Qg2+; 20.~Qf2, Q*f2+; 21.~K*f2, Rfc8; 22.~Nd5, R*c6; 23.~Ne7+|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & R*c5 & f5\\
-20 & Be3 & Qg4+\\
-21 & f3 & Qg2+\\
-22 & Qf2 & Qh1\\
-23 & R*e5 & Qa1\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* * rk*}
-{p * * pp}
-{ * * * *}
-{* * Rp* }
-{ * *P* *}
-{P NPBP* }
-{ *P*KQ *}
-{q * * * }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & Bc5?&\\
-\end{tabular}}|
-\end{center}
-|24.~Qe1, Qb2; 25.~Qd2, Q*a3; 26.~Bc5, Qa5; 27.~e*f5|
-white has the advantage.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & \ldots & Q*c3\\
-25 & R*f5&\\
-\end{tabular}}|
-\end{center}
-|25.~B*f8, Q*c2+; 26.~Kf1, Q*d3+; 27.~Qe2, Qb1+; 28.~Qe1, Q*e1+; 29.~K*e1|
-now black has only a slight advantage.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & \ldots & Q*c2+\\
-\end{tabular}}|
-\end{center}
-|25\ldots~R*f5; 26.~e*f5, Q*c2+; 27.~Kf1, Q*d3+; 28.~Kg2, Rd8; 29.~f4|
-and black has a clear lead.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & Ke3 & Q*f2+\\
-27 & K*f2 & R*f5\\
-28 & e*f5 & Rc8\\
-29 & d4 & a6\\
-30 & a4 & Kf7\\
-31 & Ke3&\\
-\end{tabular}}|
-\end{center}
-|31.~Kg3, Kf6; 32.~Kf4, g5+; 33.~f*g6, h*g6; 34.~a5, g5+; 35.~Kg4|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-31 & \ldots & h5\\
-\end{tabular}}|
-\end{center}
-|31\ldots~Kf6; 32.~Kf4, Rd8; 33.~a5, Rd5; 34.~Ke4, R*f5|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-32 & Kf4 & h4\\
-33 & Kg4 & Rh8\\
-34 & d5 & h3\\
-35 & Bd6 & g6\\
-\end{tabular}}|
-\end{center}
-|35\ldots~h2; 36.~B*h2, R*h2; 37.~Kf4, Rh4+; 38.~Ke5, R*a4; 39.~d6, Rc4|
-totaly won for black.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-36 & f*g6+ & K*g6\\
-37 & Bh2 & Kf6\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * r}
-{* * * * }
-{p* * k *}
-{* *P* * }
-{P* * *K*}
-{* * *P*p}
-{ * * * B}
-{* * * * }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-38 & f4&\\
-\end{tabular}}|
-\end{center}
-|38.~a5, Ke7; 39.~Kf5, Rh5+; 40.~Ke4, Rh4+; 41.~f4, Kd6; 42.~Kd4|
-holding the position.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-38 & \ldots & Ke7\\
-39 & f5 & a5\\
-\end{tabular}}|
-\end{center}
-|39\ldots~Kf6|
-is needed.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-40 & d6+ & Kd7\\
-\end{tabular}}|
-\end{center}
-|40\ldots~Kf6|
-is still needed.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-41 & Kg5 & Rb8\\
-\end{tabular}}|
-\end{center}
-|41\ldots~Ke8|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-42 & f6 & Rb2\\
-\end{tabular}}|
-\end{center}
-|42\ldots~Ke6; 43.~Kg4, Rb4+; 44.~K*h3, R*a4; 45.~d7, K*d7; 46.~Be5|
-but black should still win.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-43 & Kg6&\\
-\end{tabular}}|
-\end{center}
-|43.~f7, Rg2+; 44.~Kh6, Rf2; 45.~Kg7, Rg2+; 46.~Kh7, Rf2; 47.~Kg7|
-white has equalised!
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-43 & \ldots & Rf2\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* *k* * }
-{ * P PK*}
-{p * * * }
-{P* * * *}
-{* * * *p}
-{ * * r B}
-{* * * * }
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Nov 1993 \hspace{.3 in} $0\!-\!1$\\
-\hline
-Foo C60\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Ian Kennedy\\
-Dunfermline C vs Stirling B
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & Nc6\\
-3 & Bb5 & Bd6\\
-4 & 0-0 & a6\\
-5 & Ba4 & b5\\
-6 & Bb3 & Bb7\\
-7 & d3 & Nf6\\
-\end{tabular}}|
-\end{center}
-|7\ldots~Na5; 8.~Nbd2, f6; 9.~a4, N*b3; 10.~N*b3, Bb4; 11.~a*b5, a*b5|
-with equality.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & Nc3&\\
-\end{tabular}}|
-\end{center}
-|8.~a4, b4; 9.~Nbd2, Bc5; 10.~Nc4, d6|
-\wbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & \ldots & 0-0\\
-\end{tabular}}|
-\end{center}
-|8\ldots~Na5; 9.~Bd2, N*b3; 10.~a*b3, 0-0; 11.~Bg5, Rb8|
-=
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & Be3 & Na5\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* q rk*}
-{*bpp*ppp}
-{p* b n *}
-{np* p * }
-{ * *P* *}
-{*BNPBN* }
-{PPP* PPP}
-{R *Q*RK }
-$$\showboard$$
-|9\ldots~Be7; 10.~a3, Ng4; 11.~Bd2|
-\wbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & Bd5?!&\\
-\end{tabular}}|
-\end{center}
-where is that bishop going.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & \ldots & b4\\
-\end{tabular}}|
-\end{center}
-|10\ldots~c6; 11.~Bb3, Bc7; 12.~Bg5, N*b3; 13.~B*f6, Q*f6; 14.~a*b3|
-\bbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & B*b7 & N*b7\\
-12 & Nd5&\\
-\end{tabular}}|
-\end{center}
-|12.~Ne2, Ng4; 13.~Bd2, f5; 14.~e*f5, R*f5; 15.~Ng3, Rf6|
-\wbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-12 & \ldots & c6\\
-\end{tabular}}|
-\end{center}
-|12\ldots~N*d5; 13.~e*d5, f6; 14.~c3, b*c3; 15.~b*c3, Be7; 16.~d4, d6|
-\bbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & N*f6+&\\
-\end{tabular}}|
-\end{center}
-|13.~Bb6, Qc8; 14.~N*f6+, g*f6; 15.~d4, Bc7; 16.~B*c7, Q*c7|
-\wbetter{} and the black king is exposed.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & \ldots & Q*f6\\
-14 & Bb6?!&\\
-\end{tabular}}|
-\end{center}
-strange move.
-|14.~Qd2, Be7; 15.~c3, a5; 16.~a3, b*a3; 17.~b*a3|
-\wbetter{} with the plan ofs owning the `b' file.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & \ldots & Bc5\\
-\end{tabular}}|
-\end{center}
-|14\ldots~Be7|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & Bc7&\\
-\end{tabular}}|
-\end{center}
-|15.~N*e5|
-but black can easly win back the pawn.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & \ldots & Rac8?\\
-\end{tabular}}|
-\end{center}
-|15\ldots~d6; 16.~d4, e*d4; 17.~e5, Qe7; 18.~e*d6, N*d6; 19.~B*d6, Q*d6|
-\bupperhand{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & B*e5 & Qg6\\
-17 & d4&\\
-\end{tabular}}|
-\end{center}
-|17.~Bg3, Rfe8; 18.~Ne5, Qf6; 19.~N*d7, Q*b2; 20.~Re1|
-\wupperhand{} white should now try use his center pawns to push home
-his advantage.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & \ldots & Bd6\\
-18 & B*d6&\\
-\end{tabular}}|
-\end{center}
-this is to early, leaving myself underdeveloped.
-|18.~Re1, f6; 19.~B*d6, N*d6; 20.~Qd3|
-\wupperhand{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & \ldots & N*d6\\
-19 & Ne5&\\
-\end{tabular}}|
-\end{center}
-|19.~e5, Nc4; 20.~b3, Na3; 21.~Rc1, d6; 22.~Re1|
-\wupperhand{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & \ldots & Q*e4\\
-20 & N*d7 & Rfe8\\
-21 & Nc5 & Qg6?\\
-\end{tabular}}|
-\end{center}
-|21\ldots~Qe2; 22.~Re1, Qc4; 23.~Qd2, Rcd8; 24.~Rad1, a5|
-\wupperhand{} white is a clear pawn up.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & N*a6 & Nf5\\
-23 & N*b4&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ *r*r*k*}
-{* * *ppp}
-{ *p* *q*}
-{* * *n* }
-{ N P * *}
-{* * * * }
-{PPP* PPP}
-{R *Q*RK }
-$$\showboard$$
- white should now win the endgame quite comfortably.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-23 & \ldots & Nh4\\
-\end{tabular}}|
-\end{center}
-|23\ldots~Rcd8; 24.~c3, c5; 25.~Nc2, c*d4; 26.~N*d4, Qf6; 27.~Qf3, N*d4|
-\wupperhand{} though still two clear pawns up.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & g3&\\
-\end{tabular}}|
-\end{center}
-forced.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & \ldots & c5\\
-25 & d*c5 & R*c5\\
-\end{tabular}}|
-\end{center}
-|25\ldots~Qe4; 26.~g*h4, Q*b4; 27.~a4, Q*h4; 28.~Qd5, Re2|
-\wupperhand{}, but whites king is dangerously exposed, and the `a'
-rook is not (yet) part of the game.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & a4&\\
-\end{tabular}}|
-\end{center}
-crap plan! Its just too slow.
-|26.~Nd3, Rf5; 27.~f4, Rd5; 28.~a4, Qb6+; 29.~Rf2, Nf5|
-\wdecisive{} black will never stop 3 connected passed pawns!
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & \ldots & f5\\
-27 & Nd5 & Rd8??\\
-\end{tabular}}|
-\end{center}
-|27\ldots~Qd6; 28.~Nf4, Q*d1; 29.~Rf*d1, Nf3+; 30.~Kg2, Ne5|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-28 & Ne7+! & Kf7\\
-29 & Q*d8 & Qg5\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * Q * *}
-{* * Nkpp}
-{ * * * *}
-{* r *pq }
-{P* * * n}
-{* * * P }
-{ PP* P P}
-{R * *RK }
-$$\showboard$$
-|29\ldots~Nf3+; 30.~Kg2|
-is an idea.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-30 & a5&\\
-\end{tabular}}|
-\end{center}
-this plan is still to slow.
-|30.~Qg8+, K*e7; 31.~Rfe1+, Kd6; 32.~Qf8+, Kc6; 33.~Qc8+, Kb6; 34.~Re6+, Rc6; 35.~Q*c6+, Ka7; 36.~Qb6+, Ka8; 37.~Re8+, Qd8; 38.~R*d8 mate|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-30 & \ldots & f4\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * Q * *}
-{* * Nkpp}
-{ * * * *}
-{P r * q }
-{ * * p n}
-{* * * P }
-{ PP* P P}
-{R * *RK }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-31 & f3??&\\
-\end{tabular}}|
-\end{center}
-|31.~Nc6, Nf3+; 32.~Kg2, f*g3; 33.~Qd7+, Kf8; 34.~Qc8+, Kf7; 35.~f*g3|
-\wdecisive{} but there are still some hairy tactics.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-31 & \ldots & f*g3\\
-32 & h*g3??&\\
-\end{tabular}}|
-\end{center}
-|32.~Qg8+, K*e7; 33.~Rfe1+, Re5; 34.~R*e5+, Q*e5; 35.~h3, N*f3+; 36.~Kg2|
-and white can still win!
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-32 & \ldots & Q*g3+\\
-33 & Kh1 & Qg2 mate\\
-\end{tabular}}|
-\end{center}
-painfull!
-
-\board
-{ * Q * *}
-{* * Nkpp}
-{ * * * *}
-{P r * * }
-{ * * * n}
-{* * *P* }
-{ PP* *q*}
-{R * *R*K}
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Nov 1993 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo C41\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Neil Langham\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & d6\\
-3 & Nc3 & Nf6\\
-4 & Bc4 & h6\\
-\end{tabular}}|
-\end{center}
-|4\ldots~Bg4; 5.~d3, Nc6; 6.~h3, Bh5; 7.~0-0, B*f3; 8.~Q*f3|
-=
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & 0-0 & Bd7\\
-6 & d3 & Nc6\\
-7 & Bd2&\\
-\end{tabular}}|
-\end{center}
-|7.~Be3, Be7; 8.~Nd5, 0-0; 9.~h3, N*d5; 10.~B*d5, Bf6|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & \ldots & Na5\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* qkb r}
-{pppb*pp }
-{ * p n p}
-{n * p * }
-{ *B*P* *}
-{* NP*N* }
-{PPPB PPP}
-{R *Q*RK }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & b4&\\
-\end{tabular}}|
-\end{center}
-|8.~Bd5, Bg4; 9.~a3, c6; 10.~Ba2, d5; 11.~Be3, d*e4; 12.~N*e4|
-but black is having the freer game
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & \ldots & N*c4\\
-9 & d*c4 & Be6\\
-\end{tabular}}|
-\end{center}
-|9\ldots~Be7; 10.~Qe2, 0-0; 11.~Rfd1, Be6; 12.~c5, c6; 13.~c*d6, Q*d6|
-\bbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & Nd5? & N*e4\\
-11 & Qe2&\\
-\end{tabular}}|
-\end{center}
-|11.~Re1, N*d2; 12.~Q*d2, c6; 13.~Ne3, Be7; 14.~Rad1, 0-0|
-\bupperhand{}, with white a pawn and position down.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & \ldots & N*d2\\
-12 & N*d2&\\
-\end{tabular}}|
-\end{center}
-|12.~Q*d2|
-is better.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-12 & \ldots & Qg5??\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* *kb r}
-{ppp *pp }
-{ * pb* p}
-{* *Np q }
-{ PP* * *}
-{* * * * }
-{P*PNQPPP}
-{R * *RK }
-$$\showboard$$
-|12\ldots~g6; 13.~Ne3, f5; 14.~c5, d*c5; 15.~b*c5, c6|
-\bupperhand{}, ready for a pawn charge on white's king.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & N*c7+ & Ke7\\
-\end{tabular}}|
-\end{center}
-|13\ldots~Kd7|
-is better, stoping the future escape of the white knight.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & N*a8 & Bh3\\
-\end{tabular}}|
-\end{center}
-going for the cheapo.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & f4! & Qg6\\
-16 & Nc7&\\
-\end{tabular}}|
-\end{center}
-|16.~f*e5, Kd8; 17.~Qe4, Be6; 18.~Q*g6, f*g6|
-is the best line Fritz2 found.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & \ldots & Kd7\\
-17 & Nd5 & Bg4\\
-18 & Qf2 & f6\\
-\end{tabular}}|
-\end{center}
-|18\ldots~Q*c2; 19.~Ne3, Qg6; 20.~f*e5, Be6; 21.~Nf3|
-rather cheeky, but still a rook down.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & Ne3 & Ke6?\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * b r}
-{pp* * p }
-{ * pkpqp}
-{* * p * }
-{ PP* Pb*}
-{* * N * }
-{P*PN QPP}
-{R * *RK }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & f5+ & B*f5\\
-21 & Q*f5+&\\
-\end{tabular}}|
-\end{center}
-|21.~N*f5, Qg5; 22.~h4, Qg4|
-actually wins more material, but with this level of inequality, you
-want to swap of queens.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & \ldots & Q*f5\\
-22 & N*f5 & g6\\
-23 & Ng3&\\
-\end{tabular}}|
-\end{center}
-At this point the score sheet goes wrong, but the game was won by now
-anyway!
-
-\board
-{ * * b r}
-{pp* * * }
-{ * pkppp}
-{* * p * }
-{ PP* * *}
-{* * * N }
-{P*PN *PP}
-{R * *RK }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Nov 1993 \hspace{.3 in} $1\!-\!0$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Dennis Duncan\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & d6\\
-3 & Bc4 & Bg4\\
-4 & 0-0 & Nf6\\
-5 & Nc3&\\
-\end{tabular}}|
-\end{center}
-|5.~d3, Nc6; 6.~Be3, d5; 7.~e*d5, N*d5; 8.~Nbd2, N*e3; 9.~f*e3|
-=
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & \ldots & c6\\
-\end{tabular}}|
-\end{center}
-|5\ldots~Nc6; 6.~Bb5, Qd7; 7.~h3, B*f3; 8.~Q*f3, 0-0-0|
-=
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & Bb3 & d5\\
-7 & d3&\\
-\end{tabular}}|
-\end{center}
-|7.~e*d5, c*d5; 8.~Re1, e4; 9.~d3, B*f3|
-=
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & \ldots & b5\\
-\end{tabular}}|
-\end{center}
-|7\ldots~d*e4; 8.~d*e4, Q*d1; 9.~R*d1, B*f3|
-\bbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & h3&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{rn qkb r}
-{p * *ppp}
-{ *p* n *}
-{*p*pp * }
-{ * *P*b*}
-{*BNP*N*P}
-{PPP* PP*}
-{R BQ*RK }
-$$\showboard$$
-|8.~e*d5, b4; 9.~Ne4, c*d5; 10.~N*f6+, g*f6; 11.~d4, e*d4; 12.~Q*d4|
-\wupperhand{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & \ldots & Bc8\\
-\end{tabular}}|
-\end{center}
-|8\ldots~B*f3; 9.~Q*f3, d4; 10.~Ne2, Nbd7; 11.~Bg5, Be7|
-\wbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & N*e5&\\
-\end{tabular}}|
-\end{center}
-|9.~e*d5, N*d5; 10.~N*e5, Be6; 11.~N*d5|
-\wupperhand{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & \ldots & Qc7\\
-\end{tabular}}|
-\end{center}
-|9\ldots~Bd6; 10.~Nf3, d*e4; 11.~N*e4, N*e4; 12.~Re1, B*h3; 13.~R*e4+, Be6|
-\wupperhand{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & Nf3 & Nh5\\
-\end{tabular}}|
-\end{center}
-|10\ldots~Be6; 11.~Nd4, d*e4; 12.~B*e6|
-\wupperhand{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & e*d5 & c5\\
-12 & N*b5&\\
-\end{tabular}}|
-\end{center}
-|12.~Re1+!, Be7; 13.~N*b5, Qb6; 14.~d6, Q*b5; 15.~R*e7+, Kd8; 16.~B*f7|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-12 & \ldots & Qb6\\
-\end{tabular}}|
-\end{center}
-|12\ldots~Qb7; 13.~Re1+, Kd8; 14.~Ne5, Nf6; 15.~Bg5, Bf5; 16.~B*f6+, g*f6|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & Ba4&\\
-\end{tabular}}|
-\end{center}
-|13.~Re1+, Kd8; 14.~Ne5, Q*b5; 15.~N*f7+, Kc7; 16.~N*h8, Nf6; 17.~Bf4+|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & \ldots & Bd7\\
-14 & Qe2+ & Be7\\
-\end{tabular}}|
-\end{center}
-
-\board
-{rn *k* r}
-{p *bbppp}
-{ q * * *}
-{*NpP* *n}
-{B* * * *}
-{* *P*N*P}
-{PPP*QPP*}
-{R B *RK }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & d4&\\
-\end{tabular}}|
-\end{center}
-|15.~d6, 0-0; 16.~d*e7, Re8; 17.~d4, c*d4; 18.~Nf*d4|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & \ldots & B*b5\\
-16 & B*b5+ & Nd7\\
-\end{tabular}}|
-\end{center}
-|16\ldots~Kf8; 17.~Re1, Qd6; 18.~Nh4, Qf6; 19.~Q*h5|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & B*d7+ & K*d7\\
-18 & Ne5+ & Ke8\\
-19 & d*c5&\\
-\end{tabular}}|
-\end{center}
-|19.~Nc6, Qc7; 20.~Re1, c*d4; 21.~c4, Nf6|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & \ldots & Q*c5\\
-20 & Rd1&\\
-\end{tabular}}|
-\end{center}
-|20.~d6, Q*d6; 21.~Qf3, Rc8; 22.~N*f7, Qf6; 23.~Q*f6, N*f6; 24.~N*h8|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & \ldots & Ng3\\
-21 & Qe3&\\
-\end{tabular}}|
-\end{center}
-|21.~Qg4, Q*c2; 22.~Rd2, Qf5; 23.~Q*g3, Bf6|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & \ldots & Nf5\\
-22 & Q*c5&\\
-\end{tabular}}|
-\end{center}
-|22.~Qf3, Nd6; 23.~c4, Bf6; 24.~Re1, B*e5; 25.~R*e5+, Kf8|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & \ldots & B*c5\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* *k* r}
-{p * *ppp}
-{ * * * *}
-{* bPNn* }
-{ * * * *}
-{* * * *P}
-{PPP* PP*}
-{R BR* K }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-23 & Be3?&\\
-\end{tabular}}|
-\end{center}
-|23.~Re1, Ne7; 24.~c4, f6; 25.~Nd3, Bd4|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-23 & \ldots & N*e3\\
-\end{tabular}}|
-\end{center}
-|23\ldots~B*e3; 24.~f*e3, N*e3; 25.~Rd2, Rc8; 26.~Re2, N*d5; 27.~Ng6+, Kd7|
-Blacks best line
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & f*e3 & B*e3+\\
-25 & Kf1 & Bf4\\
-26 & Re1&\\
-\end{tabular}}|
-\end{center}
-|26.~Nd3, Bd6; 27.~c4, Rc8; 28.~b3|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & \ldots & f6\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* *k* r}
-{p * * pp}
-{ * * p *}
-{* *PN * }
-{ * * b *}
-{* * * *P}
-{PPP* *P*}
-{R * RK* }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-27 & Ng6+ & Kf7\\
-28 & N*f4 & Rhe8\\
-29 & R*e8&\\
-\end{tabular}}|
-\end{center}
-|29.~c4, Rac8; 30.~b3, h6; 31.~Kf2, R*e1; 32.~R*e1, Rc5|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-29 & \ldots & R*e8\\
-30 & d6&\\
-\end{tabular}}|
-\end{center}
-|30.~Kf2, Re5; 31.~Rd1, g5; 32.~Ne2|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-30 & \ldots & Rd8\\
-31 & Rd1 & g6\\
-32 & Nd5&\\
-\end{tabular}}|
-\end{center}
-|32.~c4, g5; 33.~Ne2, Ke6; 34.~Nd4+, Kd7; 35.~c5, h6|
-\wdecisive{},5.25
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-32 & \ldots & R*d6\\
-33 & c4&\\
-\end{tabular}}|
-\end{center}
-|33.~Ke2, Ke6; 34.~c4, Rc6; 35.~Kd3, f5; 36.~b3|
-\wdecisive{},4.53
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-33 & \ldots & f5\\
-34 & Ke1&\\
-\end{tabular}}|
-\end{center}
-|34.~b3|
-\wdecisive{},4.22
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-34 & \ldots & Ra6\\
-35 & a3 & f4??\\
-\end{tabular}}|
-\end{center}
-Simply throws away a pawn.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-36 & c5&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{p * *k*p}
-{r* * *p*}
-{* PN* * }
-{ * * p *}
-{P * * *P}
-{ P * *P*}
-{* *RK * }
-$$\showboard$$
- why not take the pawn?
-|36.~N*f4, h6; 37.~g3, g5; 38.~Nd5, Re6+; 39.~Kd2, Re4|
-\wdecisive{},5.06 looks good to me.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-36 & \ldots & Ke6?\\
-37 & Nc7+&\\
-\end{tabular}}|
-\end{center}
-Black resigns
-
-\board
-{ * * * *}
-{p N * *p}
-{r* *k*p*}
-{* P * * }
-{ * * p *}
-{P * * *P}
-{ P * *P*}
-{* *RK * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Nov 1993 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo C70\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Adam Rintoul\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & Nc6\\
-3 & Bb5 & a6\\
-4 & Ba4 & b5\\
-5 & Bb3 & Nf6\\
-6 & d3 & Bc5\\
-\end{tabular}}|
-\end{center}
-|6\ldots~Bb7; 7.~0-0, d5; 8.~e*d5, N*d5; 9.~Bg5, Be7; 10.~B*e7, Nd*e7|
-=
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & Be3?&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r*bqk* r}
-{* pp*ppp}
-{p*n* n *}
-{*pb p * }
-{ * *P* *}
-{*B*PBN* }
-{PPP* PPP}
-{RN*QK *R}
-$$\showboard$$
-|7.~Nc3|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & \ldots & B*e3\\
-8 & f*e3 & 0-0\\
-9 & 0-0 & d6\\
-10 & Nbd2&\\
-\end{tabular}}|
-\end{center}
-|10.~a3, Bb7; 11.~Nc3, Rb8; 12.~Nd5, a5|
-\bbetter{},0.13
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & \ldots & Bg4\\
-11 & d4?&\\
-\end{tabular}}|
-\end{center}
-|11.~a4, Rb8; 12.~a*b5, a*b5; 13.~h3, Bh5; 14.~Qe2, Nd7|
-\bbetter{},-0.22
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & \ldots & B*f3\\
-\end{tabular}}|
-\end{center}
-|11\ldots~e*d4; 12.~Qe1, d*e3; 13.~Q*e3, Na5; 14.~Nd4, c6; 15.~c3, N*b3|
-\bupperhand{} a pawn up.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-12 & N*f3 & N*e4??\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* q rk*}
-{* p *ppp}
-{p*np * *}
-{*p* p * }
-{ * Pn* *}
-{*B* PN* }
-{PPP* *PP}
-{R *Q*RK }
-$$\showboard$$
-|12\ldots~Qe8; 13.~d5, Na5; 14.~Qd3, N*b3; 15.~a*b3, c6; 16.~Rad1|
-\bupperhand{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & Bd5 & Qd7\\
-\end{tabular}}|
-\end{center}
-|13\ldots~Ng5; 14.~B*c6, N*f3+; 15.~B*f3, Rb8; 16.~d*e5, d*e5; 17.~a3|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & B*e4 & f5\\
-15 & Bd5+ & Kh8\\
-16 & Ng5 & e*d4\\
-17 & Qh5&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* * r k}
-{* pq* pp}
-{p*np * *}
-{*p*B*pNQ}
-{ * p * *}
-{* * P * }
-{PPP* *PP}
-{R * *RK }
-$$\showboard$$
-|17.~N*h7, Rfb8; 18.~Ng5, g6; 19.~Qf3, Ne5; 20.~Qh3+, Kg7; 21.~B*a8|
-\wdecisive{},4.44
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & \ldots & h6?\\
-\end{tabular}}|
-\end{center}
-|17\ldots~g6; 18.~B*c6, g*h5; 19.~B*d7, d*e3; 20.~R*f5, R*f5; 21.~B*f5|
-\wdecisive{},4.90
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & e*d4&\\
-\end{tabular}}|
-\end{center}
-|18.~Qg6, Qe8; 19.~Qh7 mate|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & \ldots & Rae8\\
-\end{tabular}}|
-\end{center}
-|18\ldots~Rf6; 19.~Rae1, Raf8; 20.~Ne6, Re8; 21.~Qf3|
-\wdecisive{},2.66
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & Rae1 & R*e1\\
-20 & R*e1 & Nd8\\
-21 & Qg6&\\
-\end{tabular}}|
-\end{center}
-I finally find the two move mate!
-
-\board
-{ * n r k}
-{* pq* p }
-{p* p *Qp}
-{*p*B*pN }
-{ * P * *}
-{* * * * }
-{PPP* *PP}
-{* * R K }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Nov 1993 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo C30\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Ian Robertson (2150)\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & f4 & d6\\
-3 & Nf3 & Nc6\\
-\end{tabular}}|
-\end{center}
-|3\ldots~e*f4|
-Just take the pawn, and then follow the main line KG.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-4 & Bb5 & Bd7\\
-5 & 0-0 & Nf6\\
-6 & Nc3 & Be7\\
-\end{tabular}}|
-\end{center}
-|6\ldots~a6; 7.~Ba4, e*f4; 8.~d3, b5; 9.~Bb3, b4|
-Who knows?
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & d3&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* qk* r}
-{pppbbppp}
-{ *np n *}
-{*B* p * }
-{ * *PP *}
-{* NP*N* }
-{PPP* *PP}
-{R BQ*RK }
-$$\showboard$$
- At this point white is winning.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & \ldots & 0-0\\
-8 & Kh1!&\\
-\end{tabular}}|
-\end{center}
-A clever waiting move, to avoid temp gaining checks.
-|8.~Ne2|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & \ldots & Nd4?\\
-\end{tabular}}|
-\end{center}
-losses a pawn
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & B*d7 & Q*d7\\
-\end{tabular}}|
-\end{center}
-|9\ldots~N*f3; 10.~Bh3, Nd4; 11.~Be3, c5; 12.~f*e5, d*e5|
-\wbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & f*e5 & N*f3??\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* * rk*}
-{pppqbppp}
-{ * p n *}
-{* * P * }
-{ * *P* *}
-{* NP*n* }
-{PPP* *PP}
-{R BQ*R*K}
-$$\showboard$$
- Losses the piece.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & e*f6 & B*f6\\
-12 & Q*f3 & b5?\\
-\end{tabular}}|
-\end{center}
-what is this for?
-|12\ldots~Rae8|
-Planning taking control over the very white center.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & Nd5&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* * rk*}
-{p pq*ppp}
-{ * p b *}
-{*p*N* * }
-{ * *P* *}
-{* *P*Q* }
-{PPP* *PP}
-{R B *R*K}
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & \ldots & Qd8??\\
-\end{tabular}}|
-\end{center}
-Losses another pawn, as well as weakening the kingside, and allowing
-exchange of queens.
-|13\ldots~Bd8|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & N*f6+ & Q*f6\\
-15 & Q*f6 & g*f6\\
-16 & R*f6 & Kg7\\
-17 & Bg5&\\
-\end{tabular}}|
-\end{center}
-Black is just out of good moves.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & \ldots & Rae8?\\
-\end{tabular}}|
-\end{center}
-Blocking in the f rook, allowing the skew.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & Raf1 & d5?\\
-\end{tabular}}|
-\end{center}
-again lack of vision
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & Bh6+ & Kg8\\
-20 & e*d5 & Rd8\\
-21 & B*f8 & R*f8\\
-22 & Rc6&\\
-\end{tabular}}|
-\end{center}
-Planning an invasion of the 7th. Textbook play.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & \ldots & Rd8\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * r *k*}
-{p p *p*p}
-{ *R* * *}
-{*p*P* * }
-{ * * * *}
-{* *P* * }
-{PPP* *PP}
-{* * *R*K}
-$$\showboard$$
- Planing to remove the dangerous white pawn, but missing the connected
-rooks that arrive on the 7th.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-23 & R*c7 & R*d5\\
-24 & Rf*f7 & Rd8\\
-\end{tabular}}|
-\end{center}
-Silly, blocking the kings escape, athough its over anyway. I should
-have tried for at least one cheapo.
-|24\ldots~Re5|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & R*h7 & Rf8??\\
-\end{tabular}}|
-\end{center}
-Again just missing the action.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & Rcg7 mate&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * rk*}
-{p * * RR}
-{ * * * *}
-{*p* * * }
-{ * * * *}
-{* *P* * }
-{PPP* *PP}
-{* * * *K}
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Dec 1993 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo B10\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Bob Colquhoun\\
-Dunfermline Club Knockout
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c6\\
-2 & Nf3 & d5\\
-3 & e*d5 & c*d5\\
-4 & c4&\\
-\end{tabular}}|
-\end{center}
-|4.~d4|
-Score: 0.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-4 & \ldots & Nf6\\
-\end{tabular}}|
-\end{center}
-|4\ldots~d4; 5.~b3, Nc6; 6.~Bb2, Nf6; 7.~Na3, e5|
-Score: -0.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & c*d5&\\
-\end{tabular}}|
-\end{center}
-|5.~d4, e6; 6.~c*d5, N*d5; 7.~Nbd2, Bd6; 8.~Bc4|
-Score: 0.13
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & \ldots & N*d5\\
-6 & Bc4 & e6\\
-\end{tabular}}|
-\end{center}
-|6\ldots~Nb6; 7.~Bb3, Nc6; 8.~d4, Bf5; 9.~Bg5, Be4|
-Score: 0.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & 0-0 & Nc6\\
-8 & d4 & a6\\
-\end{tabular}}|
-\end{center}
-|8\ldots~Bb4; 9.~Bd2, B*d2; 10.~Nb*d2, Nf4; 11.~Nb3, 0-0|
-Score: -0.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & Re1&\\
-\end{tabular}}|
-\end{center}
-|9.~Nc3|
-Score: -0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & \ldots & b5\\
-\end{tabular}}|
-\end{center}
-|9\ldots~Be7; 10.~Nc3, 0-0; 11.~Qd3, Qd7; 12.~N*d5|
-Score: -0.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & B*d5 & Q*d5\\
-11 & Nc3 & Qf5\\
-\end{tabular}}|
-\end{center}
-|11\ldots~Qd8; 12.~d5, Ne7; 13.~d6, Nf5; 14.~Qd5, Bd7|
-Score: 0.41
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-12 & d5 & Nd8\\
-\end{tabular}}|
-\end{center}
-|12\ldots~Nb4; 13.~d6, Nd3; 14.~Re4, N*c1; 15.~R*c1, Rb8|
-Score: 0.34
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & d*e6&\\
-\end{tabular}}|
-\end{center}
-|13.~d6, Nb7; 14.~Ne4, Nc5; 15.~Nd4|
-Score: 0.34
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & \ldots & B*e6\\
-14 & Qd5&\\
-\end{tabular}}|
-\end{center}
-|14.~Nd5, Rc8; 15.~Nd4, Qg6; 16.~Bf4, Bc5; 17.~Nc7, Kf8; 18.~N*a6|
-Score: 0.75
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & \ldots & Q*d5\\
-15 & N*d5 & Bd6\\
-16 & Bg5&\\
-\end{tabular}}|
-\end{center}
-|16.~Nd4, Rb8; 17.~Bf4, B*f4; 18.~N*f4, Rb6; 19.~Nd*e6, N*e6; 20.~N*e6|
-Score: 0.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & \ldots & 0-0\\
-\end{tabular}}|
-\end{center}
-|16\ldots~h6; 17.~Bd2, 0-0; 18.~Bf4|
-Score: -0.25
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & Rad1 & Nc6\\
-\end{tabular}}|
-\end{center}
-|17\ldots~Nb7; 18.~Be7, B*e7|
-Score: 0.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & Nd4&\\
-\end{tabular}}|
-\end{center}
-|18.~Nb6, Bb4; 19.~R*e6, f*e6; 20.~N*a8, R*a8|
-Score: 0.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & \ldots & B*d5\\
-\end{tabular}}|
-\end{center}
-|18\ldots~N*d4; 19.~R*d4, h6; 20.~Ne7, Kh7; 21.~R*d6, h*g5; 22.~Nd5|
-Score: -0.25
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & N*c6 & B*h2+\\
-\end{tabular}}|
-\end{center}
-|19\ldots~Rfe8; 20.~R*e8, R*e8; 21.~h3, Re6; 22.~Nd4, Re4|
-Score: -0.13
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & K*h2 & B*c6\\
-21 & Rd6 & Rfe8\\
-\end{tabular}}|
-\end{center}
-|21\ldots~Rac8|
-Score: -0.44
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & R*e8+&\\
-\end{tabular}}|
-\end{center}
-|22.~Rc1, Be4; 23.~Rc7, h6; 24.~Be3, Kf8|
-Score: -0.41
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & \ldots & B*e8\\
-23 & a3&\\
-\end{tabular}}|
-\end{center}
-|23.~Be3, h6; 24.~b3, Kh7; 25.~a3, g6; 26.~Bd4|
-Score: -0.78
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-23 & \ldots & a5\\
-\end{tabular}}|
-\end{center}
-|23\ldots~h6; 24.~Be3, Kh7; 25.~b3, f6; 26.~Bd4, Bf7; 27.~b4|
-Score: -0.88
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & Kg3&\\
-\end{tabular}}|
-\end{center}
-|24.~b3, h6; 25.~Rd8, R*d8; 26.~B*d8, a4; 27.~b*a4, b*a4|
-Score: -0.81
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & \ldots & a4\\
-\end{tabular}}|
-\end{center}
-|24\ldots~h6|
-Score: -0.91
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & Bc1&\\
-\end{tabular}}|
-\end{center}
-|25.~Kh4, h6; 26.~Be3, Kh7; 27.~Bd4, Rc8; 28.~g3, Bc6|
-Score: -1.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & \ldots & Rc8\\
-\end{tabular}}|
-\end{center}
-|25\ldots~h6; 26.~Be3, Kh7; 27.~Kh4, Rc8; 28.~Bd4, Bc6; 29.~f3|
-Score: -1.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & Bd2&\\
-\end{tabular}}|
-\end{center}
-|26.~Be3, h6; 27.~Kh4, Kh7; 28.~Bd4, Bc6; 29.~f3|
-Score: -1.13
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & \ldots & Rc4\\
-\end{tabular}}|
-\end{center}
-|26\ldots~Bc6; 27.~Be3, h6; 28.~f3, Kh7|
-Score: -1.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-27 & Rd8 & Re4\\
-28 & Bb4&\\
-\end{tabular}}|
-\end{center}
-|28.~f4|
-Score: -0.88
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-28 & \ldots & f6\\
-\end{tabular}}|
-\end{center}
-|28\ldots~h6; 29.~Kf3, Re6; 30.~Kg4, Kh7; 31.~f4, Re4; 32.~g3|
-Score: -1.13
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-29 & f4&\\
-\end{tabular}}|
-\end{center}
-|29.~Kf3, Re6; 30.~Kg4, Kf7; 31.~Kh4, Re2; 32.~Rd2|
-Score: -0.91
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-29 & \ldots & Kf7\\
-30 & Kf3&\\
-\end{tabular}}|
-\end{center}
-|30.~Rc8, Kg6; 31.~Kf3|
-Score: -1.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-30 & \ldots & Bc6\\
-31 & Rc8&\\
-\end{tabular}}|
-\end{center}
-|31.~Kg3, Re2; 32.~Rd2, R*d2; 33.~B*d2, Ke6; 34.~Be3|
-Score: -1.25
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-31 & \ldots & R*b4+\\
-32 & R*c6 & R*b2\\
-33 & g4&\\
-\end{tabular}}|
-\end{center}
-|33.~Rb6|
-Score: -2.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-33 & \ldots & Rb3+\\
-34 & Ke4 & R*a3\\
-35 & Rc7+&\\
-\end{tabular}}|
-\end{center}
-|35.~f5, h6; 36.~Rc7, Kg8; 37.~Rb7, Rb3; 38.~Rd7, Rb4; 39.~Kf3|
-Score: -3.28
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-35 & \ldots & Kg6\\
-36 & Rb7&\\
-\end{tabular}}|
-\end{center}
-|36.~f5, Kh6; 37.~Rc2, Rb3; 38.~g5, Kh5; 39.~g*f6, g*f6; 40.~Rh2|
-Score: -3.34
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-36 & \ldots & Rb3\\
-37 & f5+&\\
-\end{tabular}}|
-\end{center}
-|37.~Kd4|
-Score: -3.44
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-37 & \ldots & Kh6\\
-38 & g5+&\\
-\end{tabular}}|
-\end{center}
-|38.~Kd4, a3; 39.~Ra7, b4; 40.~Kc4, Rb2; 41.~Rb7, Rc2|
-Score: -3.59
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-38 & \ldots & f*g5\\
-39 & Rb6+ & Kh5\\
-40 & Rb7 & Rb4+\\
-\end{tabular}}|
-\end{center}
-|40\ldots~Kg4; 41.~R*g7, Rb4; 42.~Ke5, Rf4; 43.~f6, h5; 44.~Ra7, h4|
-Score: -4.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-41 & Ke5 & Rf4\\
-\end{tabular}}|
-\end{center}
-|41\ldots~Kg4; 42.~R*g7, Rf4; 43.~f6, h5; 44.~Ra7, Rf5; 45.~Ke6, h4|
-Score: -4.22
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-42 & R*b5 & Kg4\\
-43 & Ke6 & R*f5\\
-\end{tabular}}|
-\end{center}
-|43\ldots~h5; 44.~Re5, h4; 45.~Re1, a3; 46.~Ra1, Rf3; 47.~Rg1, Kh5|
-Score: -3.94
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-44 & R*f5&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* * * pp}
-{ * *K* *}
-{* * *Rp }
-{p* * *k*}
-{* * * * }
-{ * * * *}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Dec 1993 \hspace{.3 in} $0\!-\!1$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} George Petrie\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & Nc6\\
-3 & Bc4 & d6\\
-\end{tabular}}|
-\end{center}
-|3\ldots~e6; 4.~Nc3, Nge7; 5.~d3, d5; 6.~Bb3, d4; 7.~Ne2, e5|
-Score: 0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-4 & 0-0&\\
-\end{tabular}}|
-\end{center}
-|4.~c3|
-Score: 0.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-4 & \ldots & e6\\
-\end{tabular}}|
-\end{center}
-|4\ldots~g6; 5.~d4, c*d4; 6.~N*d4, Bg7; 7.~Be3, N*d4; 8.~B*d4, Nf6|
-Score: -0.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & d3&\\
-\end{tabular}}|
-\end{center}
-|5.~Bb5, Nf6; 6.~d3, Bd7; 7.~Nc3, Be7; 8.~Bg5, 0-0|
-Score: 0.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & \ldots & Be7\\
-\end{tabular}}|
-\end{center}
-|5\ldots~d5; 6.~Bb5, Nf6; 7.~Ne5, Bd7; 8.~N*d7, Q*d7; 9.~Bg5|
-Score: 0.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & Nc3 & Bd7\\
-\end{tabular}}|
-\end{center}
-|6\ldots~Bf6|
-Score: 0.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & Bf4&\\
-\end{tabular}}|
-\end{center}
-|7.~Re1, Nf6; 8.~Be3, 0-0; 9.~a3, Rc8; 10.~Bf4, Nd4; 11.~N*d4|
-Score: 0.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & \ldots & a6\\
-\end{tabular}}|
-\end{center}
-|7\ldots~Na5; 8.~Nd2, N*c4; 9.~N*c4, e5; 10.~Bg3, Be6; 11.~Ne3|
-Score: -0.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & d4&\\
-\end{tabular}}|
-\end{center}
-|8.~a3, Nf6; 9.~Re1, 0-0; 10.~Be3, e5; 11.~Nd5, Be6; 12.~N*e7|
-Score: 0.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & \ldots & c*d4\\
-9 & Ne2 & e5\\
-\end{tabular}}|
-\end{center}
-|9\ldots~Na5|
-Score: -0.94
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & Bg3 & Nf6\\
-11 & Bd5&\\
-\end{tabular}}|
-\end{center}
-|11.~c3, N*e4; 12.~c*d4, 0-0; 13.~Bd5, N*g3|
-Score: -0.97
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & \ldots & 0-0\\
-\end{tabular}}|
-\end{center}
-|11\ldots~Nb4; 12.~c3, Nb*d5; 13.~e*d5, d3; 14.~Nc1, e4; 15.~Nd2|
-Score: -1.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-12 & c4&\\
-\end{tabular}}|
-\end{center}
-|12.~c3, d*c3; 13.~N*c3, b6; 14.~a3, Qc7; 15.~b3, Be6; 16.~B*e6|
-Score: -0.63
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-12 & \ldots & Qb6\\
-\end{tabular}}|
-\end{center}
-|12\ldots~Bg4; 13.~Qb3, Qc7; 14.~Rac1, Rac8; 15.~Qd3, b6|
-Score: -1.13
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & Qd2&\\
-\end{tabular}}|
-\end{center}
-|13.~b3, Bg4; 14.~Nc1, Rac8; 15.~Nd3, Nh5; 16.~a3, N*g3; 17.~f*g3|
-Score: -1.22
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & \ldots & Rac8\\
-\end{tabular}}|
-\end{center}
-|13\ldots~Nb4; 14.~b3, Bg4; 15.~Rfd1, Nb*d5|
-Score: -1.22
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & Bh4&\\
-\end{tabular}}|
-\end{center}
-|14.~Rac1|
-Score: -1.25
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & \ldots & Nb4\\
-\end{tabular}}|
-\end{center}
-|14\ldots~Bg4; 15.~Bg3, Nb4; 16.~b3, Nb*d5; 17.~e*d5, B*f3; 18.~g*f3|
-Score: -1.53
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & Ne*d4&\\
-\end{tabular}}|
-\end{center}
-|15.~B*f6, B*f6; 16.~h3, N*d5; 17.~c*d5|
-Score: -1.44
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & \ldots & Nb*d5\\
-\end{tabular}}|
-\end{center}
-|15\ldots~e*d4; 16.~b3, Bg4; 17.~Qf4, Nd3|
-Score: -3.34
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & B*f6&\\
-\end{tabular}}|
-\end{center}
-|16.~e*d5, e*d4; 17.~Rfe1, Bd8; 18.~b3, Ng4; 19.~B*d8, Rf*d8; 20.~N*d4|
-Score: -1.94
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & \ldots & N*f6\\
-17 & Ne2&\\
-\end{tabular}}|
-\end{center}
-|17.~Nf5, B*f5; 18.~e*f5, R*c4; 19.~b3, Ne4; 20.~Qd5, Rb4|
-Score: -4.75
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & \ldots & R*c4\\
-18 & b3&\\
-\end{tabular}}|
-\end{center}
-|18.~Nc3, Rb4; 19.~b3, N*e4; 20.~N*e4, R*e4; 21.~Rfd1|
-Score: -5.13
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & \ldots & R*e4\\
-19 & Nc3&\\
-\end{tabular}}|
-\end{center}
-|19.~Ng3, Rb4; 20.~Rfe1, Bg4; 21.~Qd3, Rf4; 22.~Qe3, Q*e3; 23.~f*e3|
-Score: -5.38
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & \ldots & Rg4\\
-\end{tabular}}|
-\end{center}
-|19\ldots~Rf4; 20.~Qe3, Qc7|
-Score: -5.34
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & Qd1&\\
-\end{tabular}}|
-\end{center}
-|20.~Rae1|
-Score: -5.41
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & \ldots & Bc6\\
-21 & Na4&\\
-\end{tabular}}|
-\end{center}
-|21.~Rc1, Rf4; 22.~Re1, B*f3; 23.~g*f3, Re8; 24.~a3|
-Score: -5.66
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & \ldots & Qb4\\
-\end{tabular}}|
-\end{center}
-|21\ldots~B*a4; 22.~b*a4, Qa5; 23.~Qb3, Rb4; 24.~Qc2, R*a4; 25.~Rfc1|
-Score: -5.94
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & Rc1&\\
-\end{tabular}}|
-\end{center}
-|22.~h3, Rf4; 23.~Nb2, B*f3; 24.~g*f3, Rd4; 25.~Nd3, Qc3|
-Score: -5.81
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & \ldots & R*g2+\\
-23 & K*g2 & Qg4+\\
-24 & Kh1 & B*f3+\\
-25 & Q*f3 & Q*f3+\\
-26 & Kg1 & Nh5\\
-\end{tabular}}|
-\end{center}
-|26\ldots~Nd5; 27.~Rc4, b5; 28.~Rfc1, b*c4; 29.~R*c4, Bf6|
-Score: -14.53
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-27 & Rc3 & Qd5\\
-\end{tabular}}|
-\end{center}
-|27\ldots~Qg4; 28.~Kh1, b5; 29.~Rg1, Qd4; 30.~Rh3, Nf4; 31.~Rhg3, b*a4|
-Score: -12.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-28 & Nb6&\\
-\end{tabular}}|
-\end{center}
-|28.~h3, Nf4; 29.~Rg3, Ne2; 30.~Kh2, N*g3; 31.~K*g3, Qd3; 32.~Kg2|
-Score: -11.94
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-28 & \ldots & Qd4\\
-29 & Rfc1&\\
-\end{tabular}}|
-\end{center}
-|29.~Na4, b5; 30.~h3, Nf4; 31.~Kh2, b*a4; 32.~Rc7, Re8|
-Score: -12.97
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-29 & \ldots & Q*b6\\
-30 & Rc8&\\
-\end{tabular}}|
-\end{center}
-|30.~R1c2, d5; 31.~h3, Qg6; 32.~Kh2, Nf4; 33.~f3, b6|
-Score: -13.97
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-30 & \ldots & Nf4\\
-31 & R1c7&\\
-\end{tabular}}|
-\end{center}
-|31.~R8c3, Ne2; 32.~Kf1, N*c1; 33.~R*c1, d5; 34.~h3, Bc5; 35.~f3|
-Score: -15.63
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-31 & \ldots & Bh4\\
-\end{tabular}}|
-\end{center}
-|31\ldots~Nh3; 32.~Kh1, Q*f2; 33.~Rc4, d5; 34.~Rc3, Qg1|
-Score: -#4
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-32 & Rc2&\\
-\end{tabular}}|
-\end{center}
-|32.~R*f8, K*f8; 33.~Rc8, Ke7; 34.~Rc2, Qd4; 35.~h3, B*f2; 36.~Kh2|
-Score: -18.41
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-32 & \ldots & Nd3\\
-\end{tabular}}|
-\end{center}
-|32\ldots~B*f2; 33.~Kf1, Qe3; 34.~R*f8, K*f8; 35.~Rc8, Ke7; 36.~Rc7, Kd8|
-Score: -19.53
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-33 & R*f8+&\\
-\end{tabular}}|
-\end{center}
-|33.~Kf1, B*f2; 34.~R*f8, K*f8; 35.~Rc8, Ke7; 36.~Rg8, Bg3; 37.~Ke2|
-Score: -14.78
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-33 & \ldots & K*f8\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * k *}
-{*p* *ppp}
-{pq p * *}
-{* * p * }
-{ * * * b}
-{*P*n* * }
-{P*R* P P}
-{* * * K }
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Dec 1993 \hspace{.3 in} $0\!-\!1$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Peter Horne\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e6\\
-2 & Nf3 & Nc6\\
-3 & Bb5 & a6\\
-\end{tabular}}|
-\end{center}
-|3\ldots~d5; 4.~d3, d*e4; 5.~B*c6, b*c6; 6.~d*e4, Q*d1; 7.~K*d1|
-Score: 0.19
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-4 & Ba4&\\
-\end{tabular}}|
-\end{center}
-|4.~B*c6, d*c6; 5.~0-0, Nf6; 6.~Re1, Be7; 7.~d4, c5; 8.~e5|
-Score: 0.22
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-4 & \ldots & b5\\
-5 & Bb3 & Bb7\\
-\end{tabular}}|
-\end{center}
-|5\ldots~Na5; 6.~d3, N*b3; 7.~a*b3, Bb7; 8.~0-0, Bc5; 9.~Nc3|
-Score: -0.13
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & d4&\\
-\end{tabular}}|
-\end{center}
-|6.~c3, Nf6; 7.~d3, Be7; 8.~Be3, 0-0; 9.~Nbd2, d5|
-Score: -0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & \ldots & Na5\\
-7 & Nbd2&\\
-\end{tabular}}|
-\end{center}
-|7.~e5, N*b3; 8.~a*b3, c5; 9.~Bg5, f6; 10.~Be3, c*d4; 11.~B*d4|
-Score: -0.38
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & \ldots & Nf6\\
-\end{tabular}}|
-\end{center}
-|7\ldots~N*b3; 8.~a*b3, c5; 9.~0-0, d5; 10.~e*d5, B*d5|
-Score: -0.41
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & e5 & Nd5\\
-\end{tabular}}|
-\end{center}
-|8\ldots~N*b3; 9.~N*b3, Ne4; 10.~0-0, Be7; 11.~c3, 0-0; 12.~Be3, d5|
-Score: -0.19
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & 0-0 & d6\\
-\end{tabular}}|
-\end{center}
-|9\ldots~Nf4|
-Score: -0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & a4&\\
-\end{tabular}}|
-\end{center}
-|10.~B*d5, B*d5; 11.~a4, d*e5; 12.~a*b5, c5; 13.~b*a6, e*d4|
-Score: 0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & \ldots & b4\\
-\end{tabular}}|
-\end{center}
-|10\ldots~d*e5; 11.~B*d5, Q*d5; 12.~d*e5, c5; 13.~a*b5, a*b5; 14.~b3|
-Score: 0.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & Nc4&\\
-\end{tabular}}|
-\end{center}
-|11.~B*d5, B*d5; 12.~c3, d*e5; 13.~N*e5, Bd6; 14.~c*b4, B*b4; 15.~Ndf3|
-Score: 0.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & \ldots & N*b3\\
-12 & c*b3 & a5\\
-\end{tabular}}|
-\end{center}
-|12\ldots~Rb8; 13.~Qc2, Be7; 14.~Na5, c5; 15.~e*d6, Q*d6; 16.~N*b7, R*b7|
-Score: -0.34
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & Qe2&\\
-\end{tabular}}|
-\end{center}
-|13.~Bg5, Be7; 14.~B*e7, Q*e7; 15.~Re1, d*e5|
-Score: -0.56
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & \ldots & f6\\
-\end{tabular}}|
-\end{center}
-|13\ldots~Be7; 14.~Rd1, 0-0; 15.~Be3, d*e5; 16.~d*e5|
-Score: -0.63
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & e*d6&\\
-\end{tabular}}|
-\end{center}
-|14.~e*f6, Bc8; 15.~f7, K*f7; 16.~Ng5, Ke7; 17.~Ne4, Qd7; 18.~Bg5|
-Score: 0.47
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & \ldots & c*d6\\
-\end{tabular}}|
-\end{center}
-|14\ldots~B*d6; 15.~Q*e6, Be7; 16.~Bd2, Ra6; 17.~Qf5, c5; 18.~d*c5, B*c5|
-Score: 0.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & Q*e6+ & Qe7\\
-\end{tabular}}|
-\end{center}
-|15\ldots~Be7; 16.~Re1, Ra6; 17.~Nh4, Nc7; 18.~Q*e7, Q*e7; 19.~R*e7, K*e7|
-Score: 0.72
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & Qh3&\\
-\end{tabular}}|
-\end{center}
-|16.~N*d6, Kd8; 17.~Q*e7, B*e7; 18.~N*b7, Kc8; 19.~Nc5, Re8; 20.~Re1|
-Score: 4.66
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & \ldots & Qf7\\
-\end{tabular}}|
-\end{center}
-|16\ldots~Qc7; 17.~Re1, Be7; 18.~Qe6, Ra6; 19.~Bd2, Qc8; 20.~Q*c8, B*c8|
-Score: 0.97
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & Re1+ & Kd8\\
-18 & Bd2 & Qg6\\
-\end{tabular}}|
-\end{center}
-|18\ldots~g6|
-Score: 0.97
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & Re2&\\
-\end{tabular}}|
-\end{center}
-|19.~Rac1, Ra6; 20.~Ne3, N*e3; 21.~B*e3, d5; 22.~Bf4, Bd6|
-Score: 0.88
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & \ldots & Be7\\
-\end{tabular}}|
-\end{center}
-|19\ldots~Ra6; 20.~Rae1, Be7; 21.~Qe6, Re8; 22.~Ne3, N*e3; 23.~B*e3, B*f3|
-Score: 0.88
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & Rae1&\\
-\end{tabular}}|
-\end{center}
-|20.~Nh4, Qh5; 21.~Rae1, Bc8; 22.~Qg3, Qg4; 23.~Bf4, N*f4; 24.~Q*g4|
-Score: 1.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & \ldots & Re8\\
-\end{tabular}}|
-\end{center}
-|20\ldots~Bc8; 21.~Qh4, Bb7; 22.~Bf4, Ba6; 23.~Qg3|
-Score: 0.91
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & Nh4&\\
-\end{tabular}}|
-\end{center}
-|21.~N*d6, Bc8; 22.~Nh4, Qh5; 23.~Qg3, Rg8; 24.~Nf3, Bg4|
-Score: 2.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & \ldots & Qh5\\
-22 & Nf5&\\
-\end{tabular}}|
-\end{center}
-|22.~N*d6, Ba6; 23.~Re6, Bc8; 24.~g4, B*e6; 25.~R*e6, Nf4; 26.~B*f4|
-Score: 3.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & \ldots & Q*h3\\
-23 & g*h3 & g6\\
-\end{tabular}}|
-\end{center}
-|23\ldots~Bc6; 24.~N*g7, Rg8; 25.~Bh6, Bd7; 26.~Nb6|
-Score: 1.53
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & Nc*d6&\\
-\end{tabular}}|
-\end{center}
-|24.~Nf*d6, Bc6; 25.~N*e8, K*e8; 26.~Re6, Bd7; 27.~Nd6, Kd8; 28.~Nf7|
-Score: 3.41
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & \ldots & g*f5\\
-25 & N*e8&\\
-\end{tabular}}|
-\end{center}
-|25.~N*b7, Kd7; 26.~Nc5, B*c5; 27.~d*c5, R*e2|
-Score: 1.66
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & \ldots & K*e8\\
-26 & Bh6&\\
-\end{tabular}}|
-\end{center}
-|26.~f3, Kd7; 27.~Kf2, Rg8; 28.~Rd1, Bd6; 29.~Kf1, Bc6|
-Score: -0.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & \ldots & Kf7\\
-\end{tabular}}|
-\end{center}
-|26\ldots~Kd7; 27.~f3, Rg8; 28.~Kf2, Bd6; 29.~Rg1, Rg6; 30.~R*g6, h*g6|
-Score: -0.47
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-27 & Bf4&\\
-\end{tabular}}|
-\end{center}
-|27.~f3, Rg8; 28.~Kf2, Bd6; 29.~Rg1, Rg6; 30.~R*g6, h*g6; 31.~Ke1|
-Score: -0.41
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-27 & \ldots & Rg8+\\
-28 & Kf1 & Ba6\\
-29 & Bd2 & Bd6\\
-30 & f3&\\
-\end{tabular}}|
-\end{center}
-|30.~Rc1, B*h2; 31.~f3, Bg1; 32.~Rc4, B*c4; 33.~b*c4, B*d4; 34.~Rg2|
-Score: -3.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-30 & \ldots & B*h2\\
-31 & Kf2&\\
-\end{tabular}}|
-\end{center}
-|31.~Rc1, Bg1; 32.~Rc4, B*c4; 33.~b*c4, B*d4; 34.~Re1, Ne7|
-Score: -3.13
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-31 & \ldots & Bg3+\\
-32 & Kf1 & B*e1\\
-33 & B*e1&\\
-\end{tabular}}|
-\end{center}
-|33.~K*e1, Rg1; 34.~Kf2, Rb1; 35.~Re1, R*b2; 36.~Rd1, Nc3; 37.~Ke1|
-Score: -4.84
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-33 & \ldots & Ne3+\\
-\end{tabular}}|
-\end{center}
-|33\ldots~Re8; 34.~Bg3, R*e2; 35.~Kg1, R*b2; 36.~Bd6, R*b3|
-Score: -8.31
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-34 & Kf2 & f4\\
-\end{tabular}}|
-\end{center}
-|34\ldots~Nd1; 35.~Kf1, Re8; 36.~Kg1, B*e2; 37.~f4, Rd8; 38.~Kg2, R*d4|
-Score: -7.81
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-35 & R*e3 & f*e3+\\
-36 & K*e3 & Re8+\\
-37 & Kd2 & Re2+\\
-38 & Kd1 & R*b2\\
-39 & d5&\\
-\end{tabular}}|
-\end{center}
-|39.~f4, R*b3; 40.~h4, Rd3; 41.~Kc1, R*d4; 42.~Bg3, Rd3; 43.~Bf2|
-Score: -6.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-39 & \ldots & R*b3\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* * *k*p}
-{b* * p *}
-{p *P* * }
-{Pp * * *}
-{*r* *P*P}
-{ * * * *}
-{* *KB * }
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Jan 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Brian Easton\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & Nf6\\
-2 & Nc3 & e6\\
-3 & d4 & d5\\
-4 & e5 & Ne4\\
-5 & N*e4 & d*e4\\
-6 & Bc4 & Nc6\\
-7 & Be3 & Bb4+\\
-8 & c3 & Be7\\
-9 & Ne2 & Bg5\\
-10 & Qd2 & Na5\\
-11 & B*g5 & N*c4\\
-12 & Qf4 & Qd5\\
-13 & b3 & Nb2\\
-14 & 0-0 & b6\\
-15 & Ng3 & Ba6\\
-16 & c4 & Nd3\\
-17 & Q*e4 & Q*e4\\
-18 & N*e4 & Bb7\\
-19 & f3 & 0-0\\
-20 & Nf2 & f6\\
-21 & e*f6 & g*f6\\
-22 & Bh6 & Rf7\\
-23 & N*d3 & Rd8\\
-24 & Nf4 & Re7\\
-25 & Rfe1 & Kf7\\
-26 & Rad1 & e5\\
-27 & d*e5 & R*d1\\
-28 & R*d1 & f*e5\\
-29 & Nd5 & Rd7\\
-30 & f4 & e4\\
-31 & f5 & c6\\
-32 & Nc3 & c5\\
-33 & R*d7+ & Kf6\\
-34 & R*b7 & K*f5\\
-35 & R*h7 & Kg6\\
-36 & Rh8&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * R}
-{p * * * }
-{ p * *kB}
-{* p * * }
-{ *P*p* *}
-{*PN * * }
-{P* * *PP}
-{* * * K }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Jan 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} George Plant\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Wester-Hailes Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & Nc6\\
-3 & Bb5 & a6\\
-4 & Ba4 & Nf6\\
-5 & d4 & b5\\
-6 & Bb3 & d6\\
-7 & Ng5 & Qd7\\
-8 & B*f7+ & Kd8\\
-9 & d5 & Nb4\\
-10 & c3 & N*e4\\
-11 & Be6 & Qe8\\
-12 & c*b4 & N*g5\\
-13 & B*g5+ & Be7\\
-14 & B*e7+ & Q*e7\\
-15 & B*c8 & R*c8\\
-16 & 0-0 & c6\\
-17 & d*c6 & R*c6\\
-18 & Re1 & h5\\
-19 & Nc3 & Rc4\\
-20 & a3 & g5\\
-21 & Nd5 & Qg7\\
-22 & Ne3 & Rc7\\
-23 & Nf5 & Qf6\\
-24 & Q*d6+ & Q*d6\\
-25 & N*d6 & Re7\\
-26 & R*e5 & R*e5\\
-27 & Nf7+ & Ke7\\
-28 & N*e5 & Rc8\\
-29 & Nd3 & Kd6\\
-30 & Kf1 & h4\\
-31 & h3 & Kd5\\
-32 & Ne1 & Ke4\\
-33 & Nf3 & Kf4\\
-34 & Nd4 & Re8\\
-35 & Re1 & R*e1+\\
-36 & K*e1 & Ke5\\
-37 & Nc2 & Ke4\\
-38 & Ke2 & Kf4\\
-39 & Kd3 & Ke5\\
-40 & Ne3 & Kf4\\
-41 & Nd5+ & Kf5\\
-42 & Nc7&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* N * * }
-{p* * * *}
-{*p* *kp }
-{ P * * p}
-{P *K* *P}
-{ P * PP*}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Jan 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} C. McIntee\\
-Wester-Hailes Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & Nc6\\
-3 & Be2 & Nf6\\
-4 & Nc3 & e6\\
-5 & 0-0 & d5\\
-6 & e*d5 & N*d5\\
-7 & N*d5 & Q*d5\\
-8 & c4 & Qd8\\
-9 & Re1 & h5\\
-10 & b3 & f6\\
-11 & Bb2 & h4\\
-12 & h3 & Qc7\\
-13 & d4 & Qf4\\
-14 & d5 & e*d5\\
-15 & c*d5 & Nd8\\
-16 & Bb5+ & Kf7\\
-17 & Qc1 & Qd6\\
-18 & Qe3 & Be7\\
-19 & Qe4 & g5\\
-20 & Bd3 & Ke8\\
-21 & Qg6+ & Kd7\\
-22 & Bb5+ & Kc7\\
-23 & Ne5 & Q*d5\\
-24 & Rad1 & Qg8\\
-25 & Bc4 & Ne6\\
-26 & Q*g8 & R*g8\\
-27 & B*e6 & B*e6\\
-28 & Nf3 & Rad8\\
-29 & R*d8 & R*d8\\
-30 & R*e6 & Rd1+\\
-31 & Kh2 & Bd6+\\
-32 & g3 & f5\\
-33 & Be5 & h*g3+\\
-34 & f*g3 & B*e5\\
-35 & R*e5 & Ra1\\
-36 & R*c5+ & Kb6\\
-37 & Rc2 & g4\\
-38 & h*g4 & f*g4\\
-39 & Ne5 & Kb5\\
-40 & N*g4 & a5\\
-41 & Ne3 & Re1\\
-42 & Nc4 & Re6\\
-43 & g4 & Rh6+\\
-44 & Kg3 & Rg6\\
-45 & Rg2 & a4\\
-46 & Ne5 & Rg5\\
-47 & b*a4+ & K*a4\\
-48 & Kf4 & Rg7\\
-49 & g5 & b5\\
-50 & g6 & b4\\
-51 & Kf5 & Ka3\\
-52 & Kf6 & Rg8\\
-53 & g7&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * *r*}
-{* * * P }
-{ * * K *}
-{* * N * }
-{ p * * *}
-{k * * * }
-{P* * *R*}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Jan 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} F. Robertson\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Wester-Hailes Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & d4 & d5\\
-2 & Nf3 & e6\\
-3 & Bf4 & Be7\\
-4 & e3 & Nf6\\
-5 & Bd3 & b6\\
-6 & 0-0 & 0-0\\
-7 & Re1 & Bb7\\
-8 & Nbd2 & c5\\
-9 & c3 & Nc6\\
-10 & Ne5 & Rc8\\
-11 & Ndf3 & c4\\
-12 & Bc2 & b5\\
-13 & b3 & Qa5\\
-14 & b4 & Qd8\\
-15 & a4 & a6\\
-16 & a*b5 & a*b5\\
-17 & N*c6 & B*c6\\
-18 & Ne5 & Bb7\\
-19 & Ra5 & Qe8\\
-20 & Ra7 & Ba8\\
-21 & Ng4 & Bc6\\
-22 & Be5 & Qd8\\
-23 & Qf3 & Ra8\\
-24 & R*a8 & B*a8\\
-25 & N*f6+ & B*f6\\
-26 & e4 & B*e5\\
-27 & d*e5 & d*e4\\
-28 & B*e4 & B*e4\\
-29 & Q*e4 & Qd3\\
-30 & Q*d3 & c*d3\\
-31 & Rd1 & Rd8\\
-32 & f4 & f5\\
-33 & Kf2 & Kf8\\
-34 & Ke3 & Ke7\\
-35 & R*d3 & R*d3+\\
-36 & K*d3 & Kd7\\
-37 & h3 & g6\\
-38 & Kd4 & Kc6\\
-39 & g3 & Kb6\\
-40 & g4 & Kc6\\
-41 & c4 & Kb6\\
-42 & c5+ & Kc6\\
-43 & Ke3 & Kc7\\
-44 & Ke2 & Kc6\\
-45 & Kf3 & Kd5\\
-46 & g*f5 & g*f5\\
-47 & h4 & Kc4\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* * * *p}
-{ * *p* *}
-{*pP Pp* }
-{ Pk* P P}
-{* * *K* }
-{ * * * *}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Jan 1994 \hspace{.3 in} $0\!-\!1$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} A. McKerrow\\
-Wester-Hailes Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & Nc6\\
-3 & Bb5 & a6\\
-4 & Ba4 & Nf6\\
-5 & 0-0 & Be7\\
-6 & Nc3 & b5\\
-7 & Bb3 & 0-0\\
-8 & a3 & d6\\
-9 & Re1 & Rb8\\
-10 & d3 & Bg4\\
-11 & h3 & Bh5\\
-12 & Nd5 & N*d5\\
-13 & e*d5 & Nd4\\
-14 & g4 & N*f3+\\
-15 & Q*f3 & Bg6\\
-16 & a4 & b4\\
-17 & a5 & Qc8\\
-18 & Ba4 & f5\\
-19 & g*f5 & R*f5\\
-20 & Qg4 & Bh5\\
-21 & Qc4 & Rf6\\
-22 & Bg5 & Rg6\\
-23 & f4 & h6\\
-24 & R*e5 & d*e5\\
-25 & d6+ & Qe6\\
-26 & Q*e6+ & R*e6\\
-27 & Bb3 & h*g5\\
-28 & d*e7 & Bf7\\
-29 & f*g5 & Rg6\\
-30 & Rf1 & B*b3\\
-31 & c*b3 & R*g5+\\
-32 & Kh2 & Re8\\
-33 & h4 & Rg4\\
-34 & Kh3 & Rf4\\
-35 & R*f4 & e*f4\\
-36 & Kg4 & R*e7\\
-37 & K*f4 & Rd7\\
-38 & Ke4 & Rd6\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * *k*}
-{* p * p }
-{p* r * *}
-{P * * * }
-{ p *K* P}
-{*P*P* * }
-{ P * * *}
-{* * * * }
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Jan 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} S. McCluskey\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Wester-Hailes Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & Nc6\\
-3 & Bb5 & a6\\
-4 & B*c6 & d*c6\\
-5 & d3 & Bd6\\
-6 & 0-0 & Bg4\\
-7 & h3 & Bh5\\
-8 & Be3 & Qe7\\
-9 & Nc3 & Nf6\\
-10 & Re1 & 0-0-0\\
-11 & Nb1 & Bb4\\
-12 & c3 & Ba5\\
-13 & b4 & Bb6\\
-14 & a3 & N*e4\\
-15 & B*b6 & B*f3\\
-16 & Q*f3 & Ng5\\
-17 & Qe3 & c*b6\\
-18 & d4 & Rhe8\\
-19 & h4 & Ne6\\
-20 & g3 & e*d4\\
-21 & c*d4 & R*d4\\
-22 & Nc3 & c5\\
-23 & Rac1 & Red8\\
-24 & b*c5 & b*c5\\
-25 & Ne4 & R8d7\\
-26 & N*c5 & Rc7\\
-27 & N*e6 & Q*e6\\
-28 & Q*d4 & R*c1\\
-29 & R*c1+ & Kb8\\
-30 & Q*g7&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ k * * *}
-{*p* *pQp}
-{p* *q* *}
-{* * * * }
-{ * * * P}
-{P * * P }
-{ * * P *}
-{* R * K }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Jan 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Rab Brown\\
-Dunferline Club Knockout
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & d6\\
-3 & d4 & Nc6\\
-4 & d*e5 & N*e5\\
-5 & N*e5 & d*e5\\
-6 & Q*d8+ & K*d8\\
-7 & Bc4 & Bb4+\\
-8 & Nc3 & B*c3+\\
-9 & b*c3 & Be6\\
-10 & B*e6 & f*e6\\
-11 & 0-0 & Nf6\\
-12 & Bb2 & N*e4\\
-13 & c4 & Nd2\\
-14 & Rfd1 & Ke7\\
-15 & R*d2 & c5\\
-16 & B*e5 & Rhg8\\
-17 & Rad1 & g5\\
-18 & Rd7+ & Ke8\\
-19 & R*b7 & g4\\
-20 & R*h7 & Rd8\\
-21 & R*d8+ & K*d8\\
-22 & Rh8 & R*h8\\
-23 & B*h8 & Kd7\\
-24 & f3 & g*f3\\
-25 & g*f3 & Ke7\\
-26 & Be5 & Kd7\\
-27 & Kg2 & Ke7\\
-28 & Kg3 & Kf7\\
-29 & Bd6 & Kf6\\
-30 & B*c5 & a5\\
-31 & Kf4 & e5+\\
-32 & Ke4 & Ke6\\
-33 & f4 & a4\\
-34 & f*e5 & a3\\
-35 & B*a3 & Kd7\\
-36 & Kd5 & Ke8\\
-37 & Ke6 & Kd8\\
-38 & Kf7 & Kd7\\
-39 & e6+ & Kc6\\
-40 & e7 & Kc7\\
-41 & e8=Q & Kb7\\
-42 & Qe6 & Kc7\\
-43 & Qd6+ & Kb7\\
-44 & Ke7 & Ka7\\
-45 & Qb4 & Ka8\\
-46 & Kd7 & Ka7\\
-47 & Kc7 & Ka6\\
-48 & Qb6 mate&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* K * * }
-{kQ * * *}
-{* * * * }
-{ *P* * *}
-{B * * * }
-{P*P* * P}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Jan 1994 \hspace{.3 in} $0\!-\!1$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Dick Patterson\\
-Dunfermline C vs Grangemouth B
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & Nc6\\
-3 & Be2 & e6\\
-4 & b3 & a6\\
-5 & 0-0 & b5\\
-6 & Bb2 & Nf6\\
-7 & e5 & Nd5\\
-8 & d4 & Bb7\\
-9 & c4 & Nf4\\
-10 & c*b5 & N*e2+\\
-11 & Q*e2 & a*b5\\
-12 & Re1 & c*d4\\
-13 & N*d4 & N*d4\\
-14 & B*d4 & Qg5\\
-15 & g3 & Rc8\\
-16 & f4 & Qg6\\
-17 & Q*b5 & Bc6\\
-18 & Qe2 & Be7\\
-19 & a4 & 0-0\\
-20 & a5 & f6\\
-21 & e*f6 & B*f6\\
-22 & B*f6 & R*f6\\
-23 & b4 & R*f4\\
-24 & Qd2 & Rf3\\
-25 & Rf1 & R*f1+\\
-26 & K*f1 & Qf5+\\
-27 & Qf4 & Qd3+\\
-28 & Ke1 & Rf8\\
-29 & Q*f8+ & K*f8\\
-30 & a6 & Qd4\\
-31 & Ke2 & Q*a1\\
-32 & Nd2 & Q*a6+\\
-33 & Ke3 & Qa3+\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * k *}
-{* *p* pp}
-{ *b*p* *}
-{* * * * }
-{ P * * *}
-{q * K P }
-{ * N * P}
-{* * * * }
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Jan 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Ian Mitchell (1660)\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & f4 & e*f4\\
-3 & Nf3 & Nc6\\
-4 & d4 & Nf6\\
-5 & Bd3 & d5\\
-6 & e5 & Ne4\\
-7 & 0-0 & g5\\
-8 & c3 & Qe7\\
-9 & Nfd2 & Bf5\\
-10 & Qe2 & N*d2\\
-11 & N*d2 & B*d3\\
-12 & Q*d3 & 0-0-0\\
-13 & a4 & Rg8\\
-14 & a5 & a6\\
-15 & b4 & h6\\
-16 & b5 & Nb8\\
-17 & Nb3 & a*b5\\
-18 & Q*b5 & Qd7\\
-19 & Qd3 & f6\\
-20 & e*f6 & Bd6\\
-21 & Bd2 & Qg4\\
-22 & a6 & N*a6\\
-23 & R*a6 & b*a6\\
-24 & Q*a6+ & Kd7\\
-25 & Qb5+ & Ke6\\
-26 & c4 & f3\\
-27 & R*f3 & Rb8\\
-28 & Q*d5+ & Kd7\\
-29 & Nc5+ & Kd8\\
-30 & Q*g8+&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ r k *Q*}
-{* p * * }
-{ * b P p}
-{* N * p }
-{ *PP *q*}
-{* * *R* }
-{ * B *PP}
-{* * * K }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Feb 1994 \hspace{.3 in} $0\!-\!1$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Paul Burtwistle\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & e6\\
-3 & Be2 & Nc6\\
-4 & 0-0 & Nf6\\
-5 & Nc3 & d5\\
-6 & e5 & Nd7\\
-7 & Re1 & Nd*e5\\
-8 & N*e5 & N*e5\\
-9 & Bb5+ & Nc6\\
-10 & d4 & a6\\
-11 & B*c6+ & b*c6\\
-12 & Be3 & c*d4\\
-13 & B*d4 & c5\\
-14 & Be5 & Bb7\\
-15 & Qd2 & f6\\
-16 & Bc7 & Q*c7\\
-17 & R*e6+ & Kf7\\
-18 & Rae1 & d4\\
-19 & Nd1 & Bd6\\
-20 & f4 & Rhe8\\
-21 & f5 & Bd5\\
-22 & R*e8 & R*e8\\
-23 & c3 & R*e1+\\
-24 & Q*e1 & B*h2+\\
-25 & Kh1 & Be5\\
-26 & c*d4 & c*d4\\
-27 & Qe2 & Qc4\\
-28 & Qh5+ & Kf8\\
-29 & Kg1 & Qc2\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * k *}
-{* * * pp}
-{p* * p *}
-{* *bbP*Q}
-{ * p * *}
-{* * * * }
-{PPq* *P*}
-{* *N* K }
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Feb 1994 \hspace{.3 in} $0\!-\!1$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Jim O'Neill (1875)\\
-Dunfermline Club Knockout
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & d6\\
-3 & d4 & c*d4\\
-4 & N*d4 & Nf6\\
-5 & Bd3 & a6\\
-6 & 0-0 & e5\\
-7 & Nf3 & Bg4\\
-8 & Nc3 & Nbd7\\
-9 & Re1 & Rc8\\
-10 & Be3 & b5\\
-11 & Nd5 & N*d5\\
-12 & e*d5 & Nf6\\
-13 & Bg5 & Be7\\
-14 & B*f6 & B*f6\\
-15 & Be4 & 0-0\\
-16 & c3 & Bh4\\
-17 & Qc2 & f5\\
-18 & N*h4 & Q*h4\\
-19 & g3 & Qh5\\
-20 & Bg2 & Rf6\\
-21 & f3 & B*f3\\
-22 & B*f3 & Q*f3\\
-23 & Rad1 & f4\\
-24 & g*f4 & Rg6+\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ *r* *k*}
-{* * * pp}
-{p* p *r*}
-{*p*Pp * }
-{ * * P *}
-{* P *q* }
-{PPQ* * P}
-{* *RR K }
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Feb 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Bill Bell\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e6\\
-2 & d4 & d5\\
-3 & Nf3 & d*e4\\
-4 & Nfd2 & Q*d4\\
-5 & c3 & Qd5\\
-6 & Be2 & e3\\
-7 & Nf3 & Q*d1+\\
-8 & B*d1 & e*f2+\\
-9 & K*f2 & Nc6\\
-10 & Be3 & Bd7\\
-11 & Re1 & h6\\
-12 & Nbd2 & 0-0-0\\
-13 & Ba4 & Kb8\\
-14 & Rad1 & Bd6\\
-15 & b4 & a6\\
-16 & Nc4 & Be7\\
-17 & Nfe5 & Be8\\
-18 & R*d8+ & B*d8\\
-19 & B*c6 & B*c6\\
-20 & N*f7 & Rh7\\
-21 & N*d8 & Bd5\\
-22 & Nd2 & g5\\
-23 & Rd1 & Kc8\\
-24 & Nb3 & Rd7\\
-25 & N*b7 & B*b7\\
-26 & R*d7 & K*d7\\
-27 & Nc5+ & Kc6\\
-28 & N*e6 & Nf6\\
-29 & Nd8+ & Kd7\\
-30 & N*b7 & Ne4+\\
-31 & Kf3 & N*c3\\
-32 & Nc5+ & Kc6\\
-33 & N*a6 & N*a2\\
-34 & Bd2 & Kb6\\
-35 & Nc5 & Kc6\\
-36 & Nd3 & Kb5\\
-37 & Ke4 & Kc4\\
-38 & g3 & Kb3\\
-39 & h4 & g*h4\\
-40 & g*h4 & Nc3+\\
-41 & B*c3 & K*c3\\
-42 & h5 & Kc4\\
-43 & Ne5+ & K*b4\\
-44 & Kd5 & c5\\
-45 & Nd3+ & Kb5\\
-46 & N*c5 & Kb6\\
-47 & Ne6 & Kb7\\
-48 & Nf8 & Kc7\\
-49 & Ke6 & Kd8\\
-50 & Kf7 & Kc8\\
-51 & Kg6 & Kd8\\
-52 & K*h6 & Ke8\\
-53 & Kg7&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * *kN *}
-{* * * K }
-{ * * * *}
-{* * * *P}
-{ * * * *}
-{* * * * }
-{ * * * *}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Feb 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} John MacArthur (1725)\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & d4 & e6\\
-2 & Nf3 & Nf6\\
-3 & c4 & d5\\
-4 & Nc3 & Nc6\\
-5 & e3 & Be7\\
-6 & Be2 & 0-0\\
-7 & 0-0 & Qd6\\
-8 & c5 & Qd7\\
-9 & Ne5 & N*e5\\
-10 & d*e5 & Ne4\\
-11 & N*e4 & d*e4\\
-12 & Qc2 & Qc6\\
-13 & b4 & Rd8\\
-14 & Bb2 & a5\\
-15 & a3 & a*b4\\
-16 & a*b4 & R*a1\\
-17 & R*a1 & b6\\
-18 & Bd4 & b*c5\\
-19 & b*c5 & Bb7\\
-20 & Ra5 & Ra8\\
-21 & Bb5 & Qd5\\
-22 & Qa4 & R*a5\\
-23 & Q*a5 & B*c5\\
-24 & Q*c7 & Bf8\\
-25 & Be8 & h6\\
-26 & Q*f7+ & Kh7\\
-27 & Q*f8 & Bc6\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * *BQ *}
-{* * * pk}
-{ *b*p* p}
-{* *qP * }
-{ * Bp* *}
-{* * P * }
-{ * * PPP}
-{* * * K }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Feb 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Ian Sneddon (1685)\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & c4 & e5\\
-2 & Nc3 & Nf6\\
-3 & Nf3 & Nc6\\
-4 & g3 & d5\\
-5 & c*d5 & N*d5\\
-6 & Bg2 & Be6\\
-7 & 0-0 & Bb4\\
-8 & Ne4 & Qd7\\
-9 & d4 & e*d4\\
-10 & N*d4 & 0-0-0\\
-11 & N*e6 & Q*e6\\
-12 & Qc2 & h6\\
-13 & Rd1 & f5\\
-14 & Nc5 & B*c5\\
-15 & Q*c5 & Nde7\\
-16 & Be3 & R*d1+\\
-17 & R*d1 & Rd8\\
-18 & R*d8+ & K*d8\\
-19 & b3 & a6\\
-20 & Qc3 & Qe5\\
-21 & Q*e5 & N*e5\\
-22 & B*b7 & N7c6\\
-23 & Bf4 & Na5\\
-24 & B*e5 & N*b7\\
-25 & B*g7 & h5\\
-26 & Kg2 & Nd6\\
-27 & f3 & Ne8\\
-28 & Be5 & c6\\
-29 & Kh3 & Ke7\\
-30 & Kh4 & Nf6\\
-31 & B*f6+ & K*f6\\
-32 & K*h5 & c5\\
-33 & g4 & f4\\
-34 & g5+ & Kg7\\
-35 & Kg4&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* * * k }
-{p* * * *}
-{* p * P }
-{ * * pK*}
-{*P* *P* }
-{P* *P* P}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Mar 1994 \hspace{.3 in} $0\!-\!1$\\
-\hline
-Foo B70\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Paul Connally\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & d6\\
-3 & d4 & c*d4\\
-4 & N*d4 & g6\\
-5 & Nc3 & Nf6\\
-6 & Bd3 & Bg7\\
-7 & 0-0 & 0-0\\
-8 & f4 & Nc6\\
-9 & N*c6 & b*c6\\
-10 & Kh1 & Rb8\\
-11 & Qe1 & Ng4\\
-12 & h3 & Nf6\\
-13 & b3 & e5\\
-14 & f*e5 & Nh5\\
-15 & Bb2 & d*e5\\
-16 & Rf3 & a5\\
-17 & g4 & Nf4\\
-18 & Rd1 & Qg5\\
-19 & Bc1 & B*g4\\
-20 & B*f4 & B*f3+\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ r * rk*}
-{* * *pbp}
-{ *p* *p*}
-{p * p q }
-{ * *PB *}
-{*PNB*b*P}
-{P*P* * *}
-{* *RQ *K}
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Mar 1994 \hspace{.3 in} ${1 \over 2}\!-\!{1 \over 2}$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Tom Hunt\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Glenrothes Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & Nf3 & Nc6\\
-2 & g3 & e5\\
-3 & Nc3 & d5\\
-4 & d3 & Be6\\
-5 & Bg2 & Qd7\\
-6 & Ng5 & d4\\
-7 & Nce4 & Bf5\\
-8 & a3 & Be7\\
-9 & 0-0 & B*g5\\
-10 & N*g5 & f6\\
-11 & Ne4 & Bh3\\
-12 & Nc5 & Qc8\\
-13 & B*h3 & Q*h3\\
-14 & N*b7 & Rb8\\
-15 & Nc5 & h5\\
-16 & e4 & g5\\
-17 & Qf3 & g4\\
-18 & Qf5 & Kf7\\
-19 & Bg5 & Nce7\\
-20 & Qe6+ & Kg6\\
-21 & f4 & e*f4\\
-22 & R*f4 & K*g5\\
-23 & Raf1 & h4\\
-24 & Qf7 & h*g3\\
-25 & Ne6+ & Kh4\\
-26 & h*g3+ & Q*g3+\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ r * *nr}
-{p p nQ* }
-{ * *Np *}
-{* * * * }
-{ * pPRpk}
-{P *P* q }
-{ PP* * *}
-{* * *RK }
-$$\showboard$$
-${1 \over 2}\!-\!{1 \over 2}$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Mar 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Dan Husband\\
-Glenrothes Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & Nc6\\
-3 & d4 & N*d4\\
-4 & N*d4 & c*d4\\
-5 & Q*d4 & e6\\
-6 & Nc3 & Qb6\\
-7 & Q*b6 & a*b6\\
-8 & Bb5 & Bc5\\
-9 & 0-0 & Nf6\\
-10 & Be3 & 0-0\\
-11 & Rfe1 & d6\\
-12 & a4 & Bd7\\
-13 & Bg5 & Bc6\\
-14 & B*f6 & g*f6\\
-15 & Rad1 & Kh8\\
-16 & Rd3 & Rad8\\
-17 & Rh3 & Rg8\\
-18 & Bd3 & Rg7\\
-19 & Nb5 & B*b5\\
-20 & a*b5 & Rdg8\\
-21 & Rg3 & R*g3\\
-22 & h*g3 & h6\\
-23 & Kf1 & Kg7\\
-24 & c3 & d5\\
-25 & e*d5 & e*d5\\
-26 & Ra1 & d4\\
-27 & Ra7 & d*c3\\
-28 & b*c3 & Rd8\\
-29 & Be4 & Rd1+\\
-30 & Ke2 & Rc1\\
-31 & R*b7 & R*c3\\
-32 & Kf1 & Rb3\\
-33 & R*f7+ & Kh8\\
-34 & R*f6 & R*b5\\
-35 & R*h6+ & Kg7\\
-36 & Rg6+ & Kh7\\
-37 & R*b6+&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* * * *k}
-{ R * * *}
-{*rb * * }
-{ * *B* *}
-{* * * P }
-{ * * PP*}
-{* * *K* }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Mar 1994 \hspace{.3 in} ${1 \over 2}\!-\!{1 \over 2}$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Keith Chance\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Glenrothes Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & Nf3 & Nc6\\
-2 & e4 & e5\\
-3 & d4 & e*d4\\
-4 & N*d4 & d6\\
-5 & N*c6 & b*c6\\
-6 & Bd3 & Bb7\\
-7 & 0-0 & Nf6\\
-8 & Re1 & Be7\\
-9 & e5 & d*e5\\
-10 & R*e5 & 0-0\\
-11 & h3 & Re8\\
-12 & Re1 & Qd7\\
-13 & Bg5 & Rad8\\
-14 & B*f6 & B*f6\\
-15 & R*e8+ & Q*e8\\
-16 & Nc3 & Ba6\\
-17 & Qe1 & Q*e1+\\
-18 & R*e1 & B*d3\\
-19 & c*d3 & g6\\
-20 & Rd1 & Rb8\\
-21 & Ne4 & B*b2\\
-22 & Rb1 & a5\\
-23 & Nc3 & Rb4\\
-24 & Nd1 & Ba3\\
-25 & R*b4 & B*b4\\
-26 & Kf1 & f5\\
-27 & Nb2 & Kf7\\
-28 & Nc4 & Ke6\\
-29 & Ke2 & Kd5\\
-30 & a3 & Bc5\\
-31 & N*a5 & B*a3\\
-32 & Nc4 & Bc5\\
-33 & f3 & h5\\
-34 & g4 & h*g4\\
-35 & h*g4 & f*g4\\
-36 & f*g4 & Ke6\\
-37 & Kf3 & Bd6\\
-38 & Ke4 & g5\\
-39 & Na5 & c5\\
-40 & Nc4 & Bf4\\
-41 & Na5 & Bd2\\
-42 & Nc4 & Bb4\\
-43 & Ne5 & Bd2\\
-44 & Nf3 & Bc1\\
-45 & Ne5 & Bf4\\
-46 & Ng6 & Bg3\\
-47 & Nf8+ & Kd6\\
-48 & Nh7 & Bf4\\
-49 & Kf5 & Kd5\\
-50 & N*g5 & B*g5\\
-51 & K*g5 & Kd4\\
-52 & Kf5 & K*d3\\
-53 & g5 & c4\\
-54 & g6 & c3\\
-55 & g7 & c2\\
-56 & g8=Q & c1=Q\\
-57 & Qd5+ & Ke2\\
-58 & Qg2+ & Kd1\\
-59 & Qg1+&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* p * * }
-{ * * * *}
-{* * *K* }
-{ * * * *}
-{* * * * }
-{ * * * *}
-{* qk* Q }
-$$\showboard$$
-${1 \over 2}\!-\!{1 \over 2}$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Mar 1994 \hspace{.3 in} ${1 \over 2}\!-\!{1 \over 2}$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Jim King\\
-Glenrothes Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & Nc6\\
-3 & d4 & c*d4\\
-4 & N*d4 & d6\\
-5 & Bb5 & Qc7\\
-6 & 0-0 & a6\\
-7 & Ba4 & b5\\
-8 & Bb3 & Nf6\\
-9 & Re1 & e6\\
-10 & Bg5 & Be7\\
-11 & c3 & 0-0\\
-12 & Nd2 & Bb7\\
-13 & Qe2 & Rfe8\\
-14 & Rac1 & d5\\
-15 & Bc2 & Rac8\\
-16 & e5 & Nd7\\
-17 & B*e7 & R*e7\\
-18 & N2f3 & h6\\
-19 & Qd3 & g6\\
-20 & Qe3 & Kg7\\
-21 & Nh4 & Nc*e5\\
-22 & b3 & Q*c3\\
-23 & Q*c3 & R*c3\\
-24 & Bb1 & b4\\
-25 & R*c3 & b*c3\\
-26 & Rc1 & g5\\
-27 & Nhf3 & N*f3+\\
-28 & N*f3 & g4\\
-29 & Nd4 & e5\\
-30 & Nf5+ & Kf6\\
-31 & N*e7 & K*e7\\
-32 & R*c3 & Kd6\\
-33 & h3 & Nf6\\
-34 & h*g4 & N*g4\\
-35 & Bf5 & Nf6\\
-36 & Bc8 & d4\\
-37 & Rc4 & Bd5\\
-38 & Rc2 & a5\\
-39 & f3 & Nh5\\
-40 & Ba6 & Nf4\\
-41 & Rd2 & f6\\
-42 & Bd3 & Bc6\\
-43 & Kf2 & h5\\
-44 & g3 & Ne6\\
-45 & a4 & Be8\\
-46 & Bb5 & Bg6\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* * * * }
-{ * knpb*}
-{pB* p *p}
-{P* p * *}
-{*P* *PP }
-{ * R K *}
-{* * * * }
-$$\showboard$$
-${1 \over 2}\!-\!{1 \over 2}$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Mar 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} R. Gourley\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Glenrothes Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & Nf3 & Nc6\\
-2 & d4 & e6\\
-3 & c4 & d5\\
-4 & Nc3 & Bb4\\
-5 & e3 & Nf6\\
-6 & Bd2 & 0-0\\
-7 & Ne5 & N*e5\\
-8 & d*e5 & Ne4\\
-9 & N*e4 & d*e4\\
-10 & B*b4 & c5\\
-11 & B*c5 & Qa5+\\
-12 & b4 & Rd8\\
-13 & b*a5 & R*d1+\\
-14 & R*d1 & h6\\
-15 & Rd8+ & Kh7\\
-16 & Be7 & b6\\
-17 & a*b6 & a*b6\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r*bR * *}
-{* * Bppk}
-{ p *p* p}
-{* * P * }
-{ *P*p* *}
-{* * P * }
-{P* * PPP}
-{* * KB*R}
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Mar 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Grant Glynis\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & d6\\
-3 & d4 & c*d4\\
-4 & N*d4 & Nf6\\
-5 & Nc3 & a6\\
-6 & Bc4 & Nc6\\
-7 & N*c6 & b*c6\\
-8 & Be3 & e6\\
-9 & 0-0 & Be7\\
-10 & Bb3 & 0-0\\
-11 & Qe2 & Bb7\\
-12 & Rad1 & Qc7\\
-13 & f4 & e5\\
-14 & Kh1 & Rfd8\\
-15 & Qf3 & Qc8\\
-16 & f*e5 & d*e5\\
-17 & Qg3 & R*d1\\
-18 & N*d1 & Qg4\\
-19 & Q*e5 & Q*e4\\
-20 & Q*e4 & N*e4\\
-21 & R*f7 & Nd6\\
-22 & R*e7+ & Kh8\\
-23 & Re5 & Rf8\\
-24 & Kg1 & h6\\
-25 & Bc5 & Rf6\\
-26 & c3 & a5\\
-27 & g3 & Ba6\\
-28 & Bc2 & g5\\
-29 & Bd4 & Kg8\\
-30 & R*a5 & Rf1+\\
-31 & Kg2 & Rf8\\
-32 & R*a6 & Nc4\\
-33 & R*c6 & Na5\\
-34 & R*h6 & Rf7\\
-35 & Rh8 mate&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * *kR}
-{* * *r* }
-{ * * * *}
-{n * * p }
-{ * B * *}
-{* P * P }
-{PPB* *KP}
-{* *N* * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Mar 1994 \hspace{.3 in} $0\!-\!1$\\
-\hline
-Foo B20\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Alistair Welshman\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Bc4 & d6\\
-3 & Nc3 & Nf6\\
-4 & Nf3 & e6\\
-5 & 0-0 & Be7\\
-6 & d3 & 0-0\\
-7 & Bg5 & Nc6\\
-8 & B*f6 & B*f6\\
-9 & Bb5 & Bd7\\
-10 & B*c6 & B*c6\\
-11 & Qe2 & Re8\\
-12 & Rae1 & B*c3\\
-13 & b*c3 & Qa5\\
-14 & e5 & d5\\
-15 & d4 & Bb5\\
-16 & Qe3 & B*f1\\
-17 & R*f1 & c*d4\\
-18 & Q*d4 & Rac8\\
-19 & Qb4 & Q*b4\\
-20 & c*b4 & R*c2\\
-21 & Ra1 & Rec8\\
-22 & Kf1 & Rc1+\\
-23 & R*c1 & R*c1+\\
-24 & Ke2 & Rc2+\\
-25 & Nd2 & R*a2\\
-26 & g4 & Rb2\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * *k*}
-{pp* *ppp}
-{ * *p* *}
-{* *pP * }
-{ P * *P*}
-{* * * * }
-{ r NKP P}
-{* * * * }
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Mar 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo C02\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Robin Taylor (1610)\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & d4 & e6\\
-2 & e4 & d5\\
-3 & e5 & c5\\
-4 & c3 & Nc6\\
-5 & Nf3 & Bd7\\
-6 & Bf4 & c*d4\\
-7 & c*d4 & Bb4+\\
-8 & Bd2 & B*d2+\\
-9 & Q*d2 & Nge7\\
-10 & Nc3 & a6\\
-11 & a3 & Qc7\\
-12 & Bd3 & 0-0-0\\
-13 & 0-0 & Rdf8\\
-14 & b4 & f6\\
-15 & b5 & N*d4\\
-16 & N*d4 & Q*e5\\
-17 & b*a6 & Q*d4\\
-18 & a*b7+ & Kb8\\
-19 & Ne2 & Qa7\\
-20 & Qb4 & Nf5\\
-21 & B*f5 & e*f5\\
-22 & Qd6+ & K*b7\\
-23 & Rab1+ & Kc8\\
-24 & Rfc1+ & Kd8\\
-25 & Rb8+ & Q*b8\\
-26 & Q*b8+ & Ke7\\
-27 & Qb4+ & Kf7\\
-28 & f4 & Rc8\\
-29 & R*c8 & R*c8\\
-30 & Qd6 & Be6\\
-31 & Nd4 & Rc1+\\
-32 & Kf2 & Rd1\\
-33 & Q*e6+ & Kf8\\
-34 & N*f5 & Rd2+\\
-35 & Ke3&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * k *}
-{* * * pp}
-{ * *Qp *}
-{* *p*N* }
-{ * * P *}
-{P * K * }
-{ * r *PP}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Mar 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo B92\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Steve Smith (1745)\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Dunfermline C vs Stirling A
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & d6\\
-3 & d4 & c*d4\\
-4 & N*d4 & Nf6\\
-5 & Nc3 & a6\\
-6 & Be2 & e5\\
-7 & Nb3 & Be7\\
-8 & 0-0 & 0-0\\
-9 & a4 & Be6\\
-10 & f4 & B*b3\\
-11 & c*b3 & Nc6\\
-12 & Be3 & Qd7\\
-13 & Bc4 & Rad8\\
-14 & f5 & Kh8\\
-15 & Qf3 & Nb4\\
-16 & Rfd1 & Nc2\\
-17 & Rac1 & N*e3\\
-18 & Q*e3 & Qc6\\
-19 & Nd5 & N*d5\\
-20 & B*d5 & Qd7\\
-21 & Qb6 & Rb8\\
-22 & Rc7 & Bd8\\
-23 & R*d7 & B*b6+\\
-24 & Kf1 & f6\\
-25 & B*b7 & Bd4\\
-26 & Rc1 & B*b2\\
-27 & Rcc7 & Rg8\\
-28 & B*a6 & h5\\
-29 & Bc4 & Rgc8\\
-30 & R*g7 & R*c7\\
-31 & R*c7 & Bd4\\
-32 & Rf7 & Rg8\\
-33 & R*f6 & Rg4\\
-34 & Bd5 & Rf4+\\
-35 & Ke1 & Bc3+\\
-36 & Ke2 & Bd4\\
-37 & Rh6+ & Kg7\\
-38 & R*h5 & Rf2+\\
-39 & Kd3 & R*g2\\
-40 & Kc4 & Bg1\\
-41 & h4 & Rc2+\\
-42 & Kd3 & Rg2\\
-43 & Rg5+ & R*g5\\
-44 & h*g5 & Bb6\\
-45 & Kc4 & Bd8\\
-46 & f6+ & Kg6\\
-47 & f7 & Be7\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* * bP* }
-{ * p *k*}
-{* *Bp P }
-{P*K*P* *}
-{*P* * * }
-{ * * * *}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Apr 1994 \hspace{.3 in} $0\!-\!1$\\
-\hline
-Foo C10\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Phillips Bill\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e6\\
-2 & d4 & d5\\
-3 & Nc3 & c5\\
-4 & e5 & Nc6\\
-5 & Nf3 & Qb6\\
-6 & Bb5 & Bd7\\
-7 & B*c6 & B*c6\\
-8 & 0-0 & Ne7\\
-9 & d*c5 & Q*c5\\
-10 & Be3 & Qa5\\
-11 & Qd3 & Nf5\\
-12 & Nd4 & N*e3\\
-13 & N*c6 & b*c6\\
-14 & Q*e3 & Bc5\\
-15 & Qd3 & 0-0\\
-16 & a3 & Qc7\\
-17 & b4 & Bb6\\
-18 & Rfe1 & a6\\
-19 & Na4 & Rfb8\\
-20 & N*b6 & R*b6\\
-21 & c4 & d*c4\\
-22 & Q*c4 & Rb5\\
-23 & Qe4 & Rd5\\
-24 & Rad1 & Rad8\\
-25 & R*d5 & c*d5\\
-26 & Qd4 & Rc8\\
-27 & f4 & g6\\
-28 & Re3 & h5\\
-29 & Kf2 & Qc2+\\
-30 & Kf3 & Rc4\\
-31 & Qd3 & Qc1\\
-32 & Qe2 & d4\\
-33 & Rd3 & Rc3\\
-34 & Ke4 & R*a3\\
-35 & R*a3 & Q*a3\\
-36 & Qc4 & Qe3 mate\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * *k*}
-{* * *p* }
-{p* *p*p*}
-{* * P *p}
-{ PQpKP *}
-{* * q * }
-{ * * *PP}
-{* * * * }
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Apr 1994 \hspace{.3 in} $0\!-\!1$\\
-\hline
-Foo C97\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Andrew Watt\\
-Edinburgh Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & Nc6\\
-3 & Bb5 & a6\\
-4 & Ba4 & Nf6\\
-5 & 0-0 & Be7\\
-6 & Re1 & b5\\
-7 & Bb3 & d6\\
-8 & c3 & 0-0\\
-9 & h3 & Na5\\
-10 & Bc2 & c5\\
-11 & d4 & Qc7\\
-12 & b4 & c*b4\\
-13 & c*b4 & Nc4\\
-14 & Nbd2 & Bb7\\
-15 & N*c4 & Q*c4\\
-16 & d*e5 & d*e5\\
-17 & a3 & Rac8\\
-18 & Bd3 & Qc3\\
-19 & Bg5 & Rfd8\\
-20 & Re3 & B*e4\\
-21 & Rc1 & Q*c1\\
-22 & Q*c1 & R*c1+\\
-23 & Re1 & R*e1+\\
-24 & N*e1 & B*d3\\
-25 & Nf3 & Be4\\
-26 & N*e5 & Rd1+\\
-27 & Kh2 & Bd6\\
-28 & f4 & h6\\
-29 & Bh4 & g5\\
-30 & Bg3 & B*e5\\
-31 & f*e5 & Nh5\\
-32 & e6 & N*g3\\
-33 & e7 & Nf1+\\
-34 & Kg1 & Bc6\\
-35 & Kf2 & f6\\
-36 & Ke2 & Ra1\\
-37 & Kd3 & Kf7\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* * Pk* }
-{p*b* p p}
-{*p* * p }
-{ P * * *}
-{P *K* *P}
-{ * * *P*}
-{r * *n* }
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Apr 1994 \hspace{.3 in} $0\!-\!1$\\
-\hline
-Foo B50\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Jake Milne\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Edinburgh Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & d6\\
-3 & Bc4 & e6\\
-4 & d3 & Nf6\\
-5 & a3 & Nc6\\
-6 & Nc3 & Be7\\
-7 & 0-0 & 0-0\\
-8 & Be3 & b6\\
-9 & h3 & Bb7\\
-10 & Ne2 & d5\\
-11 & e*d5 & e*d5\\
-12 & Ba2 & Re8\\
-13 & c3 & Qc7\\
-14 & Bf4 & Bd6\\
-15 & B*d6 & Q*d6\\
-16 & d4 & c*d4\\
-17 & Ne*d4 & N*d4\\
-18 & N*d4 & Rad8\\
-19 & Qd2 & Ba6\\
-20 & Qg5 & Re5\\
-21 & Nf5 & R*f5\\
-22 & Q*f5 & B*f1\\
-23 & R*f1 & g6\\
-24 & Qf3 & Kg7\\
-25 & Rd1 & Qe5\\
-26 & g3 & a5\\
-27 & Kg2 & h5\\
-28 & h4 & Rd6\\
-29 & Bb1 & d4\\
-30 & Qd3 & Qd5+\\
-31 & Qf3 & Qb3\\
-32 & Qe2 & Qd5+\\
-33 & f3 & Qe6\\
-34 & Q*e6 & R*e6\\
-35 & Be4 & d*c3\\
-36 & b*c3 & N*e4\\
-37 & f*e4 & R*e4\\
-38 & Rd6 & Re2+\\
-39 & Kf3 & Rb2\\
-40 & Rd3 & a4\\
-41 & Ke4 & f5+\\
-42 & Kd5 & Re2\\
-43 & c4 & Re8\\
-44 & Kc6 & Rc8+\\
-45 & K*b6 & R*c4\\
-46 & Kb5 & Rg4\\
-47 & Rd7+ & Kf6\\
-48 & Ra7 & f4\\
-49 & g*f4 & R*f4\\
-50 & R*a4 & R*a4\\
-51 & K*a4 & g5\\
-52 & h*g5+ & K*g5\\
-53 & Kb5 & h4\\
-54 & a4 & h3\\
-55 & a5 & h2\\
-56 & a6 & h1=Q\\
-57 & Kb6 & Qb1+\\
-58 & Ka7 & Kf5\\
-59 & Ka8 & Qe4+\\
-60 & Kb8 & Qe8+\\
-61 & Kb7 & Qd7+\\
-62 & Kb6 & Qd8+\\
-63 & Kb7 & Qd5+\\
-64 & Kb6 & Qa8\\
-65 & Ka5 & Ke5\\
-66 & Kb6 & Kd5\\
-67 & Ka5 & Kc5\\
-68 & Ka4 & Q*a6+\\
-69 & Kb3 & Qc4+\\
-70 & Ka3 & Qb5\\
-71 & Ka2 & Kc4\\
-72 & Ka1 & Kc3\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* * * * }
-{ * * * *}
-{*q* * * }
-{ * * * *}
-{* k * * }
-{ * * * *}
-{K * * * }
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Apr 1994 \hspace{.3 in} $0\!-\!1$\\
-\hline
-Foo C54\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} John Bourke\\
-Edinburgh Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & Nc6\\
-3 & Bc4 & Bc5\\
-4 & c3 & Nf6\\
-5 & d4 & e*d4\\
-6 & c*d4 & Bb4+\\
-7 & Bd2 & N*e4\\
-8 & B*b4 & N*b4\\
-9 & B*f7+ & K*f7\\
-10 & Qb3+ & d5\\
-11 & Q*b4 & Re8\\
-12 & 0-0 & Kg8\\
-13 & Nc3 & b6\\
-14 & Rfe1 & Bf5\\
-15 & Qb3 & c6\\
-16 & Rac1 & Qd6\\
-17 & Re3 & N*c3\\
-18 & Q*c3 & R*e3\\
-19 & Q*e3 & Rc8\\
-20 & Re1 & h6\\
-21 & Qe7 & Q*e7\\
-22 & R*e7 & a5\\
-23 & Rb7 & b5\\
-24 & Ne5 & c5\\
-25 & R*b5 & c*d4\\
-26 & f4 & Be4\\
-27 & R*a5 & Rc1+\\
-28 & Kf2 & Rc2+\\
-29 & Kg3 & R*g2+\\
-30 & Kh3 & R*b2\\
-31 & Ra3 & Rd2\\
-32 & Kg3 & Rg2+\\
-33 & Kh3 & Rd2\\
-34 & Kg3 & d3\\
-35 & Nf3 & Rb2\\
-36 & h4 & d2\\
-37 & N*d2 & R*d2\\
-38 & Kg4 & Rd3\\
-39 & R*d3 & B*d3\\
-40 & Kf3 & Bc4\\
-41 & a4 & Kf7\\
-42 & Ke3 & Ke6\\
-43 & Kd4 & Kf5\\
-44 & a5 & K*f4\\
-45 & a6 & B*a6\\
-46 & K*d5 & Kg4\\
-47 & Ke6 & K*h4\\
-48 & Kf7 & g5\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* * *K* }
-{b* * * p}
-{* * * p }
-{ * * * k}
-{* * * * }
-{ * * * *}
-{* * * * }
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Apr 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo C70\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} David King\\
-Edinburgh Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & Nc6\\
-3 & Bb5 & a6\\
-4 & Ba4 & b5\\
-5 & Bb3 & Bc5\\
-6 & 0-0 & Nge7\\
-7 & c3 & d6\\
-8 & d4 & e*d4\\
-9 & c*d4 & Ba7\\
-10 & Be3 & Na5\\
-11 & Bc2 & 0-0\\
-12 & Nbd2 & f5\\
-13 & Bg5 & Qe8\\
-14 & Re1 & h6\\
-15 & B*e7 & Q*e7\\
-16 & e*f5 & Qf6\\
-17 & Be4 & Bb7\\
-18 & B*b7 & N*b7\\
-19 & Qb3+ & Kh8\\
-20 & Qd5 & Rab8\\
-21 & Rac1 & Bb6\\
-22 & g4 & Nd8\\
-23 & Ne4 & Qf7\\
-24 & Q*f7 & R*f7\\
-25 & h3&\\
-\end{tabular}}|
-\end{center}
-At this point the score sheet goes wrong. Black eventually looses on
-time!
-
-\board
-{ r n * k}
-{* p *rp }
-{pb p * p}
-{*p* *P* }
-{ * PN*P*}
-{* * *N*P}
-{PP * P *}
-{* R R K }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Apr 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo D20\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} C. Tait\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Edinburgh Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & d4 & d5\\
-2 & c4 & d*c4\\
-3 & e4 & c6\\
-4 & B*c4 & e6\\
-\end{tabular}}|
-\end{center}
-|4\ldots~Nf6; 5.~Nc3, e5; 6.~Be3, e*d4; 7.~B*d4, Bd6; 8.~f3|
-Score: 0.22
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & Nf3 & Bb4+\\
-\end{tabular}}|
-\end{center}
-|5\ldots~Nf6; 6.~Qe2, Bb4; 7.~Bd2, Qb6; 8.~Nc3, 0-0; 9.~0-0, Nbd7|
-Score: 0.25
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & Bd2 & B*d2+\\
-7 & Q*d2&\\
-\end{tabular}}|
-\end{center}
-|7.~Nb*d2, Nf6; 8.~0-0, 0-0; 9.~Rc1, Nbd7; 10.~Qe2, c5; 11.~Bd3|
-Score: 0.41
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & \ldots & Nf6\\
-8 & Nc3 & 0-0\\
-\end{tabular}}|
-\end{center}
-|8\ldots~Nbd7; 9.~0-0, 0-0; 10.~Rad1, Qe7; 11.~Rfe1, e5|
-Score: 0.38
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & 0-0 & b6\\
-10 & e5&\\
-\end{tabular}}|
-\end{center}
-|10.~Rac1, Bb7; 11.~Rfd1, c5; 12.~d*c5, Q*d2; 13.~R*d2, b*c5|
-Score: 0.28
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & \ldots & Nfd7\\
-\end{tabular}}|
-\end{center}
-|10\ldots~Nd5; 11.~Rfd1, Ba6; 12.~B*a6, N*a6; 13.~Rac1, Nac7; 14.~N*d5, c*d5|
-Score: 0.28
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & Rfd1 & Ba6\\
-\end{tabular}}|
-\end{center}
-|11\ldots~Bb7; 12.~Ne4, c5; 13.~d5, b5; 14.~B*b5, B*d5; 15.~Qe3, Qe7|
-Score: 0.34
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-12 & Bb3&\\
-\end{tabular}}|
-\end{center}
-|12.~B*a6, N*a6; 13.~Rac1, Qe7; 14.~Ne4, c5; 15.~Qe2, Nb4; 16.~d*c5|
-Score: 0.34
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-12 & \ldots & Re8\\
-\end{tabular}}|
-\end{center}
-|12\ldots~h6; 13.~Rac1, Qe7; 14.~Ne4, Rd8; 15.~Nd6, Nf6; 16.~Qe3|
-Score: 0.31
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & Ne4 & c5\\
-\end{tabular}}|
-\end{center}
-|13\ldots~h6; 14.~Nd6, Re7; 15.~Rac1, c5; 16.~Bc2, Nc6; 17.~Be4, Qc7|
-Score: 0.44
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & Nd6&\\
-\end{tabular}}|
-\end{center}
-|14.~d*c5, Bb7; 15.~Qe3, Re7; 16.~Nd6, Bc6; 17.~Ne4, b*c5; 18.~N*c5|
-Score: 1.25
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & \ldots & Rf8\\
-\end{tabular}}|
-\end{center}
-|14\ldots~Re7; 15.~N*f7, R*f7; 16.~B*e6, c*d4; 17.~Bd5, Nc6; 18.~B*c6|
-Score: 0.44
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & d5 & b5\\
-\end{tabular}}|
-\end{center}
-|15\ldots~Qe7; 16.~N*f7, c4; 17.~d*e6, N*e5; 18.~N3*e5, c*b3; 19.~Qd5|
-Score: 1.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & d*e6 & f*e6\\
-\end{tabular}}|
-\end{center}
-|16\ldots~c4; 17.~N*f7, Qb6; 18.~e*d7, N*d7; 19.~Q*d7, R*f7; 20.~Qd5|
-Score: 3.75
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & B*e6+ & Kh8\\
-18 & Nf7+&\\
-\end{tabular}}|
-\end{center}
-|18.~Qd5, Qe7; 19.~Nf7, R*f7; 20.~B*f7, h6|
-Score: 4.56
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & \ldots & R*f7\\
-19 & B*f7 & Nc6\\
-\end{tabular}}|
-\end{center}
-|19\ldots~Bb7; 20.~Ng5, h6; 21.~Bd5|
-Score: 3.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & e6&\\
-\end{tabular}}|
-\end{center}
-|20.~Q*d7, Nd4; 21.~Qg4, Qe7; 22.~N*d4, Q*f7; 23.~e6, Qf6|
-Score: 5.84
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & \ldots & Qe7\\
-\end{tabular}}|
-\end{center}
-|20\ldots~Nf6; 21.~Rac1, c4; 22.~b3, Q*d2; 23.~R*d2, Rd8; 24.~R*d8, N*d8|
-Score: 3.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & Q*d7 & Bc8\\
-\end{tabular}}|
-\end{center}
-|21\ldots~Bb7; 22.~Q*e7, N*e7; 23.~Rd7, B*f3; 24.~g*f3, Nc6; 25.~e7, N*e7|
-Score: 7.41
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & Q*c6&\\
-\end{tabular}}|
-\end{center}
-|22.~Q*e7, B*e6; 23.~Q*e6, Nd4; 24.~N*d4, c*d4; 25.~R*d4, a6|
-Score: 17.72
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & \ldots & Rb8\\
-\end{tabular}}|
-\end{center}
-|22\ldots~Bb7; 23.~Qd7, Q*d7; 24.~e*d7, Rd8; 25.~Re1, g6; 26.~Re8, Kg7|
-Score: 10.66
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-23 & Qe8+&\\
-\end{tabular}}|
-\end{center}
-|23.~Q*c5, B*e6; 24.~Q*e7, B*f7; 25.~Q*a7, Rf8; 26.~Q*f7, Rc8|
-Score: 18.22
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-23 & \ldots & Q*e8\\
-24 & B*e8 & Bb7\\
-\end{tabular}}|
-\end{center}
-|24\ldots~B*e6; 25.~Bd7, Bg8; 26.~Ne5, g6; 27.~Rac1, c4; 28.~a4, b*a4|
-Score: 7.88
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & Bf7&\\
-\end{tabular}}|
-\end{center}
-|25.~B*b5, B*f3; 26.~g*f3, Kg8; 27.~e7, Kf7; 28.~Rd8, K*e7; 29.~R*b8|
-Score: 12.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & \ldots & Bc6\\
-\end{tabular}}|
-\end{center}
-|25\ldots~g5; 26.~e7, Kg7; 27.~Rd8, Bc6; 28.~R*b8, K*f7; 29.~Ne5, K*e7|
-Score: 12.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & Rd2&\\
-\end{tabular}}|
-\end{center}
-|26.~Ne5, B*g2; 27.~e7, g6; 28.~K*g2|
-Score: 15.75
-
-\board
-{ r * * k}
-{p * *Bpp}
-{ *b*P* *}
-{*pp * * }
-{ * * * *}
-{* * *N* }
-{PP R PPP}
-{R * * K }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Apr 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo B50\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} J. Comrie\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Dunfermline C vs Alloa
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & d6\\
-3 & Bc4 & e6\\
-4 & Nc3 & Be7\\
-5 & d4 & c*d4\\
-6 & Q*d4 & Nf6\\
-7 & e5 & d*e5\\
-8 & Q*d8+ & B*d8\\
-9 & N*e5 & 0-0\\
-10 & 0-0 & Nbd7\\
-11 & N*d7 & B*d7\\
-12 & Be3 & a6\\
-13 & a4 & Ba5\\
-14 & Ne2 & Bc6\\
-15 & Nd4 & Nd5\\
-16 & N*c6 & b*c6\\
-17 & B*d5 & c*d5\\
-18 & c3 & Rab8\\
-19 & b4 & Bc7\\
-20 & Rfd1 & Rfd8\\
-21 & Rac1 & Bb6\\
-22 & Kf1 & B*e3\\
-23 & f*e3 & f5\\
-24 & Rc2 & g5\\
-25 & Kf2 & Kf7\\
-26 & Kf3 & Rdc8\\
-27 & g4 & R*b4\\
-28 & g*f5 & Kf6\\
-29 & f*e6 & K*e6\\
-30 & Rd4 & R*d4\\
-31 & e*d4 & Rf8+\\
-32 & Kg4 & h6\\
-33 & Re2+ & Kd6\\
-34 & Rb2 & Rc8\\
-35 & Kh5 & R*c3\\
-36 & Rb6+ & Rc6\\
-37 & R*c6+ & K*c6\\
-38 & K*h6 & g4\\
-39 & Kg5 & Kd6\\
-40 & K*g4 & Ke6\\
-41 & Kg5 & Ke7\\
-42 & h4 & Kf7\\
-43 & h5 & Kg7\\
-44 & Kf5&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* * * k }
-{p* * * *}
-{* *p*K*P}
-{P* P * *}
-{* * * * }
-{ * * * *}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Apr 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo C65\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Scott Hunter\\
-Dunfermline Club Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & Nc6\\
-3 & Bb5 & Nf6\\
-4 & d3 & Bc5\\
-5 & 0-0 & 0-0\\
-6 & Re1 & d5\\
-7 & Be3 & B*e3\\
-8 & e*d5 & Q*d5\\
-9 & B*c6 & Q*c6\\
-10 & R*e3 & e4\\
-11 & d*e4 & N*e4\\
-12 & Nc3 & N*c3\\
-13 & R*c3 & Qd6\\
-14 & Q*d6 & c*d6\\
-15 & Rd1 & Re8\\
-16 & R*d6 & g5\\
-17 & g4 & B*g4\\
-18 & N*g5 & Re1+\\
-19 & Kg2 & Rae8\\
-20 & Rg3 & f5\\
-21 & h3 & Be2\\
-22 & Nf3+ & Kf7\\
-23 & N*e1 & f4\\
-24 & Rf3 & B*f3+\\
-25 & N*f3 & Re2\\
-26 & Rd7+ & Kf8\\
-27 & R*b7 & R*c2\\
-28 & R*a7 & R*b2\\
-29 & Ra4 & Kf7\\
-30 & R*f4+ & Kg6\\
-31 & a4 & h5\\
-32 & h4 & Ra2\\
-33 & Kg3 & Ra3\\
-34 & Rc4 & Rd3\\
-35 & Kf4 & Rd5\\
-36 & Ne5+ & Kf6\\
-37 & Re4 & Ra5\\
-38 & Nd7+ & Kg6\\
-39 & f3 & Rf5+\\
-40 & Ke3&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* *N* * }
-{ * * *k*}
-{* * *r*p}
-{P* *R* P}
-{* * KP* }
-{ * * * *}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} May 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo B20\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} James Hepburn\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Under 1500 Final
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Bc4 & d6\\
-3 & d3 & e6\\
-4 & Nc3 & Nf6\\
-5 & Nf3 & a6\\
-6 & Bd2 & Nc6\\
-7 & 0-0 & Be7\\
-8 & Re1 & 0-0\\
-9 & a3 & e5\\
-10 & h3 & b5\\
-11 & Bb3 & Bb7\\
-12 & Nd5 & N*d5\\
-13 & B*d5 & Qd7\\
-14 & c3 & Na5\\
-15 & b4 & B*d5\\
-16 & e*d5 & Nb7\\
-17 & Re4 & f5\\
-18 & Re2 & c*b4\\
-19 & a*b4 & Bf6\\
-20 & Qb3 & a5\\
-21 & Rae1 & a*b4\\
-22 & c*b4 & Rfe8\\
-23 & Bg5 & B*g5\\
-24 & N*g5 & Nd8\\
-25 & f4 & Nf7\\
-26 & N*f7 & Q*f7\\
-27 & f*e5 & d*e5\\
-28 & R*e5 & R*e5\\
-29 & R*e5 & Ra1+\\
-30 & Kh2 & g5\\
-31 & d4 & Kg7\\
-32 & Qd3 & Qd7\\
-33 & R*f5 & Qd6+\\
-34 & Re5 & Q*b4\\
-35 & R*g5+ & Kf7\\
-36 & Q*h7+ & Kf6\\
-37 & Qh6+ & Ke7\\
-38 & Rg7+ & Kd8\\
-39 & Qh8+&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * k * Q}
-{* * * R }
-{ * * * *}
-{*p*P* * }
-{ q P * *}
-{* * * *P}
-{ * * *PK}
-{r * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} May 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo D02\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} D. Heron (1790)\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-East of Scotland Championship
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & Nf3 & Nc6\\
-2 & d4 & d5\\
-3 & Bf4 & Bf5\\
-4 & e3 & a6\\
-5 & c4 & e6\\
-6 & Nc3 & Nf6\\
-7 & a3 & Qd7\\
-8 & b4 & Bd6\\
-9 & B*d6 & Q*d6\\
-10 & Be2 & 0-0\\
-11 & 0-0 & Ne4\\
-12 & N*e4 & B*e4\\
-13 & Nd2 & Bg6\\
-14 & Qb3 & Ne7\\
-15 & c5 & Qd7\\
-16 & a4 & c6\\
-17 & b5 & Nf5\\
-18 & Ra3 & Rfe8\\
-19 & Qb2 & Kh8\\
-20 & Rb3 & Nh6\\
-21 & b*c6 & b*c6\\
-22 & Rb7 & Qc8\\
-23 & Nf3 & Rb8\\
-24 & B*a6 & R*b7\\
-25 & Q*b7 & Q*b7\\
-26 & B*b7 & f6\\
-27 & B*c6 & Rb8\\
-28 & Bb5 & Bc2\\
-29 & Rc1 & Be4\\
-30 & Nd2 & Bg6\\
-31 & Nb1 & Ng8\\
-32 & Nc3 & Ne7\\
-33 & a5 & Nc8\\
-34 & Bd7 & Bf5\\
-35 & N*d5 & e*d5\\
-36 & B*f5 & Ne7\\
-37 & Bd3 & Nc6\\
-38 & Rb1 & R*b1+\\
-39 & B*b1 & N*a5\\
-40 & Ba2&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * k}
-{* * * pp}
-{ * * p *}
-{n Pp* * }
-{ * P * *}
-{* * P * }
-{B* * PPP}
-{* * * K }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} May 1994 \hspace{.3 in} ${1 \over 2}\!-\!{1 \over 2}$\\
-\hline
-Foo A15\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} W. Falconer\\
-East of Scotland Chalengers
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & c4 & Nf6\\
-2 & d3 & e6\\
-3 & Nf3 & d5\\
-4 & c*d5 & N*d5\\
-5 & a3 & Bd6\\
-6 & e3 & Nc6\\
-7 & Nbd2 & 0-0\\
-8 & Nc4 & Bd7\\
-9 & Be2 & b5\\
-10 & N*d6 & c*d6\\
-11 & 0-0 & Rc8\\
-12 & Bd2 & Qb6\\
-13 & Qb3 & Ne5\\
-14 & Rac1 & a6\\
-15 & Rc2 & R*c2\\
-16 & Q*c2 & Rc8\\
-17 & Qb1 & N*f3+\\
-18 & B*f3 & Bc6\\
-19 & Rc1 & Qd8\\
-20 & B*d5 & B*d5\\
-21 & Ba5 & Qd7\\
-22 & R*c8+ & Q*c8\\
-23 & Bb4 & Qc6\\
-24 & f3 & Bb3\\
-25 & Qe1 & Qc2\\
-26 & Qc3 & Q*c3\\
-27 & B*c3 & d5\\
-28 & Kf2 & f6\\
-29 & d4&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * *k*}
-{* * * pp}
-{p* *pp *}
-{*p*p* * }
-{ * P * *}
-{PbB PP* }
-{ P * KPP}
-{* * * * }
-$$\showboard$$
-${1 \over 2}\!-\!{1 \over 2}$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} May 1994 \hspace{.3 in} $0\!-\!1$\\
-\hline
-Foo A20\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Walter Pearson (1650)\\
-East of Scotland Chalengers
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & c4 & e5\\
-2 & d3 & Ne7\\
-3 & Nf3 & d6\\
-4 & e3 & g6\\
-5 & Be2 & Bg7\\
-6 & 0-0 & 0-0\\
-7 & Nbd2 & Nd7\\
-8 & Nb3 & b6\\
-9 & d4 & e*d4\\
-10 & Nf*d4 & Bb7\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* q rk*}
-{pbpnnpbp}
-{ p p *p*}
-{* * * * }
-{ *PN * *}
-{*N* P * }
-{PP *BPPP}
-{R BQ*RK }
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} May 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo D61\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Douglas Heatlie (1650)\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-East of Scotland Chalengers
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & d4 & e6\\
-2 & c4 & d5\\
-3 & Nc3 & Nf6\\
-4 & Bg5 & Be7\\
-5 & e3 & Nbd7\\
-6 & Qc2 & 0-0\\
-7 & Nf3 & Re8\\
-8 & h4 & Nb6\\
-9 & b3 & d*c4\\
-10 & b*c4 & Bd7\\
-11 & Bd3 & g6\\
-12 & B*f6 & B*f6\\
-13 & h5 & B*d4\\
-14 & e*d4 & Qf6\\
-15 & h*g6 & f*g6\\
-16 & Ne4 & Qg7\\
-17 & Nc5 & Bc6\\
-18 & Ne5 & Nd5\\
-19 & c*d5 & e*d5\\
-20 & 0-0-0 & R*e5\\
-21 & d*e5 & Q*e5\\
-22 & g3 & Qg5+\\
-23 & Qd2 & Qe5\\
-24 & Nb3 & Ba4\\
-25 & Qh6 & Qc3+\\
-26 & Bc2 & B*b3\\
-27 & Q*h7+ & Kf8\\
-28 & Qh8+&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* * k Q}
-{ppp * * }
-{ * * *p*}
-{* *p* * }
-{ * * * *}
-{*bq * P }
-{P*B* P *}
-{* KR* *R}
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Jul 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo B50\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Graham Mill\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Scottish Chess Minor
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & d6\\
-3 & Bc4&\\
-\end{tabular}}|
-\end{center}
-This is an unusual way of opening, but is common at the Minor level.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-3 & \ldots & e6\\
-4 & Nc3 & Nf6\\
-5 & d3&\\
-\end{tabular}}|
-\end{center}
-|5.~0-0|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & \ldots & Nc6\\
-\end{tabular}}|
-\end{center}
-|5\ldots~d5; 6.~Bb3, d*e4; 7.~N*e4, N*e4; 8.~d*e4, Q*d1+; 9.~K*d1|
-=
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & Bf4&\\
-\end{tabular}}|
-\end{center}
-|6.~0-0, Be7|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & \ldots & a6\\
-7 & 0-0 & Be7\\
-\end{tabular}}|
-\end{center}
-|7\ldots~Na5; 8.~Bb3, N*b3; 9.~a*b3, Be7; 10.~Re1, 0-0; 11.~Qd2|
-\bbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & Re1 & 0-0\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r*bq rk*}
-{*p* bppp}
-{p*nppn *}
-{* p * * }
-{ *B*PB *}
-{* NP*N* }
-{PPP* PPP}
-{R *QR K }
-$$\showboard$$
- I often find this sort of position when playing the sicilian, where
-white has the e file, pushes his pawn, and gains a winning advantage.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & e5 & d*e5\\
-10 & N*e5 & Bd7\\
-\end{tabular}}|
-\end{center}
-|10\ldots~N*e5|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & Ne4&\\
-\end{tabular}}|
-\end{center}
-|11.~Bb3|
-\wbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & \ldots & N*e5\\
-12 & B*e5 & Bc6\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* q rk*}
-{*p* bppp}
-{p*b*pn *}
-{* p B * }
-{ *B*N* *}
-{* *P* * }
-{PPP* PPP}
-{R *QR K }
-$$\showboard$$
-|12\ldots~N*e4; 13.~d*e4, b5; 14.~Bb3, Bc6; 15.~Qh5, Re8|
-=
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & B*f6&\\
-\end{tabular}}|
-\end{center}
-|13.~Qf3, N*e4; 14.~d*e4, b6; 15.~Rad1, Qe8|
-\wbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & \ldots & B*e4??\\
-\end{tabular}}|
-\end{center}
-|13\ldots~B*f6; 14.~N*f6+, Q*f6; 15.~c3, b6; 16.~Qe2|
-\bbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & B*e7 & Q*e7\\
-15 & R*e4 & Rac8\\
-16 & f4&\\
-\end{tabular}}|
-\end{center}
-|16.~a4, Qf6; 17.~c3, Rfd8; 18.~Qe2, h6; 19.~Re1|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & \ldots & b5\\
-17 & Bb3 & Rc6\\
-\end{tabular}}|
-\end{center}
-|17\ldots~a5|
-and I might be able to stir up a queenside pawn charge.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & c4&\\
-\end{tabular}}|
-\end{center}
-|18.~a4|
-striking at the ambushing pawns.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & \ldots & Rd8\\
-\end{tabular}}|
-\end{center}
-|18\ldots~Rd6; 19.~c*b5, a*b5; 20.~a4, c4|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & Qe2&\\
-\end{tabular}}|
-\end{center}
-|19.~c*b5, a*b5; 20.~a4, b*a4; 21.~Ra*a4, Rcd6; 22.~d4, c*d4; 23.~Re*d4|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & \ldots & Rd4\\
-\end{tabular}}|
-\end{center}
-|19\ldots~b4|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & R*d4&\\
-\end{tabular}}|
-\end{center}
-|20.~c*b5, a*b5; 21.~a4, b*a4; 22.~R*a4, Rd8; 23.~d4, c*d4; 24.~Re*d4|
-All variations just win for white.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & \ldots & c*d4\\
-21 & Re1&\\
-\end{tabular}}|
-\end{center}
-|21.~c*b5|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & \ldots & Rc5\\
-22 & Qe4&\\
-\end{tabular}}|
-\end{center}
-|22.~Qf2, b*c4; 23.~B*c4, Qd6|
-Blacks score is rapidly going down.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & \ldots & Rh5\\
-\end{tabular}}|
-\end{center}
-|22\ldots~Qd7; 23.~Qa8+, Qc8; 24.~Q*c8+, R*c8; 25.~g3, b*c4; 26.~d*c4|
-a passed pawn for white! Blacks passed pawn will not live long.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-23 & g4&\\
-\end{tabular}}|
-\end{center}
-|23.~f5, Rh6; 24.~c*b5, a*b5|
-Totally won for white.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-23 & \ldots & Rh4\\
-24 & Qa8+ & Qf8\\
-25 & Q*f8+ & K*f8\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * k *}
-{* * *ppp}
-{p* *p* *}
-{*p* * * }
-{ *Pp PPr}
-{*B*P* * }
-{PP * * P}
-{* * R K }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & h3?&\\
-\end{tabular}}|
-\end{center}
-|26.~Bd1, Rh3; 27.~Be2, Ke7; 28.~Kg2, Re3; 29.~h3, Kd6|
-Just a piece up.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & \ldots & R*h3\\
-27 & Bc2 & Rg3+\\
-28 & Kf2 & R*g4\\
-29 & Kf3 & h5\\
-\end{tabular}}|
-\end{center}
-|29\ldots~Rh4; 30.~Kg3, Rh6; 31.~Re4, Rg6+; 32.~Kh3, Rh6+; 33.~Kg2|
-And black has drawing chances.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-30 & Re4&\\
-\end{tabular}}|
-\end{center}
-|30.~Re5, g6; 31.~Re4, Rh4; 32.~R*d4, g5|
-Black is only a pawn or so down.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-30 & \ldots & Ke7\\
-31 & R*d4&\\
-\end{tabular}}|
-\end{center}
-|31.~c*b5, a*b5; 32.~Re5, g6; 33.~R*b5, Kd6; 34.~Ke4|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-31 & \ldots & e5\\
-\end{tabular}}|
-\end{center}
-|31\ldots~g5; 32.~c*b5, a*b5; 33.~a4, e5; 34.~Re4, R*f4+; 35.~R*f4, e*f4|
-Blacks is a `pawn` down, with 3 connected passed pawns. Not so bad,
-but still winning for white.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-32 & Re4 & R*f4+\\
-33 & R*f4 & e*f4\\
-34 & K*f4 & Kf6\\
-35 & c5 & Ke7\\
-36 & b4 & f6\\
-37 & d4 & g5+\\
-38 & Kg3 & h4+\\
-39 & Kg4 & Ke6\\
-40 & c6 & Kd6\\
-41 & d5 & Kc7\\
-42 & Be4 & Kd6\\
-43 & Bg2 & Kc7\\
-44 & Bh3 & Kd6\\
-45 & Kf5 & Kc7\\
-46 & K*f6 & Kb6\\
-47 & K*g5&\\
-\end{tabular}}|
-\end{center}
-I finally resigned here.
-
-\board
-{ * * * *}
-{* * * * }
-{pkP* * *}
-{*p*P* K }
-{ P * * p}
-{* * * *B}
-{P* * * *}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Jul 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo C67\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} A. McMonigle\\
-Scottish Chess Minor
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & Nc6\\
-3 & Bb5 & Nf6\\
-4 & 0-0 & N*e4\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r*bqkb r}
-{pppp*ppp}
-{ *n* * *}
-{*B* p * }
-{ * *n* *}
-{* * *N* }
-{PPPP PPP}
-{RNBQ*RK }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & Re1&\\
-\end{tabular}}|
-\end{center}
-|5.~d4, Be7; 6.~d*e5, 0-0; 7.~Be3, a6|
-and white has the edge.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & \ldots & d5\\
-\end{tabular}}|
-\end{center}
-|5\ldots~Nd6; 6.~B*c6, d*c6; 7.~N*e5, Be6; 8.~Nc3, Be7; 9.~Kh1|
-\wbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & N*e5&\\
-\end{tabular}}|
-\end{center}
-|6.~d3|
-is a killer move.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & \ldots & Qf6\\
-7 & Nf3&\\
-\end{tabular}}|
-\end{center}
-|7.~N*c6, b*c6; 8.~Qf3, Qg6; 9.~Bd3, Bf5; 10.~B*e4|
-\wbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & \ldots & Be7\\
-8 & d3! & Nd6\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r*b*k* r}
-{ppp bppp}
-{ *nn q *}
-{*B*p* * }
-{ * * * *}
-{* *P*N* }
-{PPP* PPP}
-{RNBQR K }
-$$\showboard$$
-|8\ldots~N*f2; 9.~K*f2, Bg4; 10.~Nbd2, 0-0; 11.~B*c6, b*c6|
-\wupperhand{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & B*c6+&\\
-\end{tabular}}|
-\end{center}
-|9.~Bg5, Q*b2; 10.~B*c6+, b*c6; 11.~R*e7+, Kf8; 12.~Nbd2, h6|
-White is a couple of pawns up, but the tactices are hairy!
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & \ldots & b*c6\\
-10 & c3 & 0-0\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r*b* rk*}
-{p p bppp}
-{ *pn q *}
-{* *p* * }
-{ * * * *}
-{* PP*N* }
-{PP * PPP}
-{RNBQR K }
-$$\showboard$$
-|10\ldots~h6; 11.~Be3, Nf5; 12.~Bf4, Rb8; 13.~Be5, Qg6|
-\wbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & Bg5 & Qg6\\
-\end{tabular}}|
-\end{center}
-|11\ldots~Q*f3; 12.~Q*f3, B*g5; 13.~b3, Bb7; 14.~Qg3, Bf6|
-Is blacks best line.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-12 & B*e7 & Re8\\
-13 & B*d6 & R*e1+\\
-14 & Q*e1 & Q*d6\\
-15 & Qe8+ & Qf8\\
-16 & Q*f8+&\\
-\end{tabular}}|
-\end{center}
-|16.~Q*c6, Rb8; 17.~Q*c7, R*b2; 18.~Q*a7, Bf5; 19.~Qd4, Qb8; 20.~Nfd2|
-\wdecisive{} The proper continuation, and well winning for white.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & \ldots & K*f8\\
-17 & Ne5&\\
-\end{tabular}}|
-\end{center}
-|17.~h3|
-Still a \wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & \ldots & Bf5\\
-\end{tabular}}|
-\end{center}
-|17\ldots~c5; 18.~h3, f6; 19.~Nf3|
-and white moving the knight was a waste of two tempi.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & \ldots & Rb8\\
-20 & b3 & Bf5\\
-\end{tabular}}|
-\end{center}
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & d4&\\
-\end{tabular}}|
-\end{center}
-|18.~Nd2, Re8; 19.~Ndf3, c5; 20.~g4, f6; 21.~Kg2, f*e5; 22.~g*f5|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & \ldots & Re8\\
-19 & Nd2 & Re6\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * k *}
-{p p *ppp}
-{ *p*r* *}
-{* *pNb* }
-{ * P * *}
-{* P * * }
-{PP N PPP}
-{R * * K }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & Re1&\\
-\end{tabular}}|
-\end{center}
-|20.~g4, B*g4; 21.~N*g4, Rg6; 22.~h3, h5; 23.~f3, h*g4; 24.~h*g4|
-\wdecisive{} what a cou.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & \ldots & f6\\
-21 & Nd7+ & Ke7\\
-22 & R*e6+ & B*e6\\
-23 & Nc5 & Bf5\\
-24 & f3&\\
-\end{tabular}}|
-\end{center}
-|24.~h3, h6; 25.~Kh2, Kd6; 26.~Nb7+, Ke7; 27.~g4, Bd3|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & \ldots & Bc8\\
-25 & g4&\\
-\end{tabular}}|
-\end{center}
-|25.~Kf2, Kd6; 26.~f4, g6; 27.~Kf3, h6; 28.~g3, f5|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & \ldots & Kf7\\
-26 & Kg2&\\
-\end{tabular}}|
-\end{center}
-|26.~Kf2, Ke7; 27.~Ke3, Kd6; 28.~Kd3, h6; 29.~c4, d*c4+; 30.~N*c4+|
-\wdecisive{} with a plan
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & \ldots & f5\\
-27 & Kg3 & Kg6\\
-28 & Nd3&\\
-\end{tabular}}|
-\end{center}
-|28.~g*f5+, B*f5; 29.~Na6, Kf6; 30.~h3, h6; 31.~N*c7|
-Attacking the weak backwards pawn.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-28 & \ldots & f*g4\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ *b* * *}
-{p p * pp}
-{ *p* *k*}
-{* *p* * }
-{ * P *p*}
-{* PN*PK }
-{PP N * P}
-{* * * * }
-$$\showboard$$
-|28\ldots~Kf6; 29.~g*f5, K*f5; 30.~Ne5, Bb7|
-Score: 3.19
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-29 & Ne5+ & Kf6\\
-30 & N*c6 & a6\\
-31 & f*g4 & g5\\
-32 & h4&\\
-\end{tabular}}|
-\end{center}
-|32.~Nb3, Bb7; 33.~Nb8, h6; 34.~Nc5, Bc8; 35.~b4, Kg6; 36.~Nb*a6|
-Successfully ganing up on the `a` pawn.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-32 & \ldots & g*h4+\\
-33 & K*h4 & Bd7\\
-34 & g5+&\\
-\end{tabular}}|
-\end{center}
-|34.~Nb4, c6; 35.~N*a6, h6; 36.~Kh5, Kg7|
-Totally won.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-34 & \ldots & Kg7\\
-35 & Ne5&\\
-\end{tabular}}|
-\end{center}
-|35.~Nb4, c6; 36.~N*a6, h6; 37.~Nc5, Bf5; 38.~a4, Kg6; 39.~g*h6|
-And either the 'a' or 'b' pawn will queen.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-35 & \ldots & Be8\\
-36 & Nb3 & Bg6\\
-\end{tabular}}|
-\end{center}
-At this point black resigned.
-
-\board
-{ * * * *}
-{* p * kp}
-{p* * *b*}
-{* *pN P }
-{ * P * K}
-{*NP * * }
-{PP * * *}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Jul 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo B86\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Brian Swanson\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Scottish Chess Minor
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & d6\\
-3 & d4 & c*d4\\
-4 & N*d4 & Nf6\\
-5 & Nc3 & a6\\
-6 & Bc4 & e6\\
-\end{tabular}}|
-\end{center}
-|6\ldots~e5; 7.~Nf3, Qc7; 8.~Bd5, Bg4; 9.~0-0, N*d5; 10.~N*d5|
-Is another line of the Sicilian.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & Bg5&\\
-\end{tabular}}|
-\end{center}
-|7.~0-0, Qc7; 8.~Qd3, e5; 9.~Nf3, Bg4; 10.~Bg5|
-\wbetter{},0.25
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & \ldots & Be7\\
-8 & f4 & b5\\
-\end{tabular}}|
-\end{center}
-
-\board
-{rnbqk* r}
-{* * bppp}
-{p* ppn *}
-{*p* * B }
-{ *BNPP *}
-{* N * * }
-{PPP* *PP}
-{R *QK *R}
-$$\showboard$$
-|8\ldots~d5; 9.~B*f6, B*f6; 10.~e*d5, Qc7; 11.~Be2, Q*f4|
-\bupperhand{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & Bd3?&\\
-\end{tabular}}|
-\end{center}
-|9.~Bb3, h6; 10.~B*f6, B*f6; 11.~0-0, B*d4+; 12.~Q*d4|
-\bbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & \ldots & Bb7\\
-10 & b4&\\
-\end{tabular}}|
-\end{center}
-|10.~Qf3, Qb6; 11.~Nde2, d5|
-=
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & \ldots & Nc6\\
-11 & Nf3?&\\
-\end{tabular}}|
-\end{center}
-|11.~N*c6, B*c6; 12.~0-0, d5; 13.~e*d5, N*d5; 14.~B*e7, Q*e7|
-\bbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & \ldots & N*b4\\
-12 & Qe2 & 0-0\\
-13 & 0-0&\\
-\end{tabular}}|
-\end{center}
-|13.~a3, Qc7; 14.~Qd2|
-\bupperhand{},by a pawn or so.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & \ldots & Rc8\\
-\end{tabular}}|
-\end{center}
-|13\ldots~Qc7; 14.~Qd2, d5; 15.~B*f6, B*f6|
-\bupperhand{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & Nd1 & d5\\
-15 & e*d5&\\
-\end{tabular}}|
-\end{center}
-|15.~e5, Ne4; 16.~B*e7, Q*e7; 17.~B*e4, d*e4; 18.~Nd4|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & \ldots & B*d5\\
-16 & Ne3&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ *rq rk*}
-{* * bppp}
-{p* *pn *}
-{*p*b* B }
-{ n * P *}
-{* *BNN* }
-{P*P*Q*PP}
-{R * *RK }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & \ldots & Bc5\\
-\end{tabular}}|
-\end{center}
-|16\ldots~B*a2; 17.~Rad1, N*d3; 18.~c*d3, Nd5|
-\bdecisive{},2+ pawns up, but getting a bit tactical.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & Kh1 & B*e3\\
-18 & Q*e3 & N*c2\\
-19 & B*c2 & R*c2\\
-20 & a4 & Ra2\\
-\end{tabular}}|
-\end{center}
-|20\ldots~h6|
-\bdecisive{}, just winning.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & R*a2 & B*a2\\
-22 & a*b5&\\
-\end{tabular}}|
-\end{center}
-|22.~Ra1, Bd5; 23.~a*b5, a*b5; 24.~Rb1, Ng4|
-\bdecisive{}, to or so pawns up.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & \ldots & Bc4\\
-\end{tabular}}|
-\end{center}
-|22\ldots~a*b5; 23.~Ra1, Bd5; 24.~Ra7, h6|
-\bupperhand{}, even with the rook on blacks 2nd. This rook should be
-able to get to 'b' pawn, though.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-23 & Rc1 & B*b5\\
-24 & Ne5&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * q rk*}
-{* * *ppp}
-{p* *pn *}
-{*b* N B }
-{ * * P *}
-{* * Q * }
-{ * * *PP}
-{* R * *K}
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & \ldots & Nd5?\\
-\end{tabular}}|
-\end{center}
-A bit wild.
-|24\ldots~h6; 25.~B*f6, Q*f6; 26.~Rc7, a5; 27.~Qc5, Be2; 28.~Q*a5, Q*f4|
-\bdecisive{}, almost three pawns up, and threating the forced queen
-exchage on f1.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & Qg3&\\
-\end{tabular}}|
-\end{center}
-Alarms bells !!!, the bishop is going to h6. Remember.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & \ldots & f6\\
-\end{tabular}}|
-\end{center}
-I though I was going to win a piece for a pawn.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & Bh6 & g6??\\
-\end{tabular}}|
-\end{center}
-|26\ldots~Qe7; 27.~Nc6, Qc7; 28.~Rc2, Ba4; 29.~Rc4, Nb6|
-Black still leads (two pawns up), but the tactics are hairy.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-27 & B*f8?&\\
-\end{tabular}}|
-\end{center}
-|27.~N*g6, Kf7; 28.~N*f8, Ke8; 29.~N*e6, Qd7; 30.~Re1|
-\wdecisive{},5.47
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-27 & \ldots & f*e5\\
-\end{tabular}}|
-\end{center}
-|27\ldots~K*f8; 28.~Qh4, a5; 29.~g3, a4|
-\bbetter{}, but critically depending on the weak a pawn.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-28 & Bh6 & e*f4\\
-29 & Qe1&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * q *k*}
-{* * * *p}
-{p* *p*pB}
-{*b*n* * }
-{ * * p *}
-{* * * * }
-{ * * *PP}
-{* R Q *K}
-$$\showboard$$
-|29.~B*f4, N*f4; 30.~Q*f4, a5; 31.~h3, g5; 32.~Qe5|
-\wupperhand{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-29 & \ldots & g5??\\
-\end{tabular}}|
-\end{center}
-My major blunder.
-|29\ldots~Kf7; 30.~g3, f3; 31.~Qf2, Qf6|
-\bupperhand{}, but tricky.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-30 & Q*e6+ & Kh8\\
-31 & Rc8&\\
-\end{tabular}}|
-\end{center}
-Mate is in a couple of moves.
-
-\board
-{ *Rq * k}
-{* * * *p}
-{p* *Q* B}
-{*b*n* p }
-{ * * p *}
-{* * * * }
-{ * * *PP}
-{* * * *K}
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Jul 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo B54\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Brian Thomson\\
-Scottish Chess Minor
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & d6\\
-3 & d4 & c*d4\\
-4 & N*d4 & Nc6\\
-5 & Bb5 & Bd7\\
-6 & Nc3&\\
-\end{tabular}}|
-\end{center}
-|6.~N*c6|
-Score: 0.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & \ldots & Nf6\\
-\end{tabular}}|
-\end{center}
-|6\ldots~N*d4; 7.~Q*d4, B*b5; 8.~N*b5, Qa5; 9.~Nc3, e5; 10.~Qd5, Qc7|
-Score: -0.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & Bg5 & h6\\
-\end{tabular}}|
-\end{center}
-|7\ldots~N*d4; 8.~B*d7, N*d7; 9.~Q*d4, e5; 10.~Qd2, Be7; 11.~Be3|
-Score: -0.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & Bh4&\\
-\end{tabular}}|
-\end{center}
-|8.~B*f6, e*f6; 9.~f4, N*d4; 10.~B*d7, Q*d7; 11.~Q*d4, Be7|
-Score: 0.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & \ldots & Qb6\\
-\end{tabular}}|
-\end{center}
-|8\ldots~g5; 9.~Bg3, N*d4; 10.~Q*d4, Bg7; 11.~0-0, 0-0|
-Score: -0.22
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & N*c6&\\
-\end{tabular}}|
-\end{center}
-|9.~B*f6, g*f6; 10.~B*c6, b*c6; 11.~Na4, Qa5; 12.~c3, Bg7|
-Score: 0.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & \ldots & b*c6\\
-10 & B*f6&\\
-\end{tabular}}|
-\end{center}
-|10.~Bd3, Q*b2; 11.~B*f6, e*f6; 12.~Na4, Qd4; 13.~c3|
-Score: -1.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & \ldots & e*f6\\
-11 & Ba4&\\
-\end{tabular}}|
-\end{center}
-|11.~Bd3, Q*b2; 12.~Na4, Qa3; 13.~c3, Be6; 14.~Qc2, 0-0-0|
-Score: -1.31
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & \ldots & Qc7\\
-\end{tabular}}|
-\end{center}
-|11\ldots~Q*b2; 12.~Kd2, Qb6; 13.~Qf3, Be6; 14.~e5, Qd4|
-Score: -1.44
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-12 & 0-0 & Be7\\
-13 & Re1&\\
-\end{tabular}}|
-\end{center}
-|13.~Rb1, 0-0; 14.~Qd3, Be6; 15.~f4, f5|
-Score: -0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & \ldots & 0-0\\
-14 & Qd4&\\
-\end{tabular}}|
-\end{center}
-|14.~Bb3|
-Score: -0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & \ldots & Be6\\
-\end{tabular}}|
-\end{center}
-|14\ldots~Rab8; 15.~b3, Be6; 16.~Rad1, Rb6; 17.~f4, Re8|
-Score: -0.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & Nd1&\\
-\end{tabular}}|
-\end{center}
-|15.~f4, Rab8; 16.~Bb3, f5; 17.~e5, B*b3; 18.~a*b3|
-Score: -0.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & \ldots & Qa5\\
-\end{tabular}}|
-\end{center}
-|15\ldots~Rab8; 16.~Qc3, Rb6; 17.~Ne3, Qb7; 18.~f4|
-Score: -0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & Nc3 & Qc7\\
-\end{tabular}}|
-\end{center}
-|16\ldots~Rab8; 17.~b3, Qc7; 18.~Rad1, Rfe8; 19.~f4, Rb6|
-Score: -0.13
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & Ne2&\\
-\end{tabular}}|
-\end{center}
-|17.~Nd1|
-Score: 0.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & \ldots & Rab8\\
-\end{tabular}}|
-\end{center}
-|17\ldots~Rfb8; 18.~Nf4, Rb6; 19.~N*e6, f*e6; 20.~Bb3, d5; 21.~e*d5, c*d5|
-Score: -0.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & b3&\\
-\end{tabular}}|
-\end{center}
-|18.~Nf4|
-Score: -0.13
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & \ldots & a5\\
-\end{tabular}}|
-\end{center}
-|18\ldots~f5; 19.~Rad1, f*e4; 20.~Q*e4, Bd5; 21.~Qd4|
-Score: -0.41
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & Nf4&\\
-\end{tabular}}|
-\end{center}
-|19.~Qc3, c5; 20.~Nd4, Rb7; 21.~Nc6, Ra8; 22.~Rad1|
-Score: 0.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & \ldots & Bd7\\
-\end{tabular}}|
-\end{center}
-|19\ldots~Rfc8; 20.~c4, Rd8; 21.~f3, Rd7|
-Score: 0.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & Qd2&\\
-\end{tabular}}|
-\end{center}
-|20.~Qc3, Rb7; 21.~a3, Re8; 22.~Nd3, Reb8; 23.~f4|
-Score: -0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-20 & \ldots & g5\\
-\end{tabular}}|
-\end{center}
-|20\ldots~Rfe8|
-Score: -0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & Nh5&\\
-\end{tabular}}|
-\end{center}
-|21.~Ne2, Rb7; 22.~Nd4, Re8; 23.~Qc3, c5; 24.~B*d7, Q*d7|
-Score: 0.13
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & \ldots & Qb6\\
-\end{tabular}}|
-\end{center}
-|21\ldots~Bg4; 22.~Ng3, Rfe8; 23.~c4, Bf8; 24.~f3, Be6|
-Score: 0.13
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & Qc3 & Qd8\\
-23 & Rad1&\\
-\end{tabular}}|
-\end{center}
-|23.~a3, Rc8; 24.~Ng3, Re8; 25.~Rad1, Bg4; 26.~B*c6, B*d1; 27.~R*d1|
-Score: 0.31
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-23 & \ldots & Bg4\\
-24 & Ng3 & B*d1\\
-25 & R*d1 & c5\\
-26 & Nh5&\\
-\end{tabular}}|
-\end{center}
-|26.~Nf5, h5; 27.~a3, Rb7; 28.~Qd3, Rb6; 29.~Qd2|
-Score: -0.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & \ldots & Kh8\\
-\end{tabular}}|
-\end{center}
-|26\ldots~Rb4; 27.~Ng3, Qa8; 28.~a3, Rb6|
-Score: -0.75
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-27 & Rd3&\\
-\end{tabular}}|
-\end{center}
-|27.~Ng3, Rg8; 28.~Nf5, Bf8; 29.~Qd2, Qc7|
-Score: -0.34
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-27 & \ldots & Rg8\\
-\end{tabular}}|
-\end{center}
-|27\ldots~Rb4; 28.~Ng3, c4; 29.~Rd5, c*b3; 30.~c*b3, Qb6; 31.~Bc6|
-Score: -0.88
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-28 & Rf3&\\
-\end{tabular}}|
-\end{center}
-|28.~Ng3, Rg6; 29.~Nf5, Rb4; 30.~Bc6, Qc7; 31.~a3, Rb6|
-Score: -0.81
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-28 & \ldots & Rg6\\
-\end{tabular}}|
-\end{center}
-|28\ldots~d5; 29.~e*d5, Q*d5; 30.~Re3, Qd1; 31.~Re1, Qd8; 32.~Ng3|
-Score: -1.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-29 & Bc6&\\
-\end{tabular}}|
-\end{center}
-|29.~Rd3, Rb4; 30.~f3, c4; 31.~Re3, c*b3; 32.~c*b3|
-Score: -0.97
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-29 & \ldots & Kg8\\
-30 & Bd5&\\
-\end{tabular}}|
-\end{center}
-|30.~Ng3, Qc7; 31.~Nf5, Bf8; 32.~Bd5, Bg7; 33.~Rd3, Bh8|
-Score: -1.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-30 & \ldots & a4\\
-31 & Qc4 & Qe8\\
-32 & Qd3&\\
-\end{tabular}}|
-\end{center}
-|32.~Qc3, a*b3; 33.~c*b3, Qd8; 34.~a4, Rb6; 35.~Rd3|
-Score: -0.78
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-32 & \ldots & Rb4\\
-\end{tabular}}|
-\end{center}
-|32\ldots~Qb5; 33.~Ng3, a*b3; 34.~Nf5, Bf8|
-Score: -0.97
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-33 & e5&\\
-\end{tabular}}|
-\end{center}
-|33.~c3, Rb6; 34.~e5, Kf8; 35.~N*f6|
-Score: -0.25
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-33 & \ldots & d*e5\\
-\end{tabular}}|
-\end{center}
-|33\ldots~Kh8; 34.~c3, Rh4; 35.~e*f6, Bd8; 36.~Re3, Qd7|
-Score: -0.22
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-34 & Q*g6+&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * *q*k*}
-{* * bp* }
-{ * * pQp}
-{* pBp pN}
-{pr * * *}
-{*P* *R* }
-{P*P* PPP}
-{* * * K }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Jul 1994 \hspace{.3 in} ${1 \over 2}\!-\!{1 \over 2}$\\
-\hline
-Foo B50\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} M. Navmann\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Scottish Chess Minor
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & c5\\
-2 & Nf3 & d6\\
-3 & Bc4 & e6\\
-\end{tabular}}|
-\end{center}
-|3\ldots~Nc6|
-Score: 0.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-4 & Nc3 & a6\\
-\end{tabular}}|
-\end{center}
-|4\ldots~Nf6; 5.~d3, d5; 6.~Bb3, d*e4; 7.~N*e4, N*e4; 8.~d*e4, Q*d1|
-Score: 0.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & a4&\\
-\end{tabular}}|
-\end{center}
-|5.~d3, Nc6; 6.~Bf4, Na5; 7.~e5, d5; 8.~Bg5, Ne7|
-Score: 0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-5 & \ldots & Nf6\\
-6 & d3&\\
-\end{tabular}}|
-\end{center}
-|6.~d4|
-Score: 0.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & \ldots & Be7\\
-\end{tabular}}|
-\end{center}
-|6\ldots~d5; 7.~Ba2, d*e4; 8.~N*e4, N*e4; 9.~d*e4, Q*d1; 10.~K*d1|
-Score: 0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & b3&\\
-\end{tabular}}|
-\end{center}
-|7.~Bg5, h6; 8.~Bh4, d5; 9.~e*d5, N*d5; 10.~N*d5, e*d5|
-Score: 0.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-7 & \ldots & 0-0\\
-\end{tabular}}|
-\end{center}
-|7\ldots~d5; 8.~e*d5, e*d5; 9.~N*d5, N*d5; 10.~0-0, 0-0|
-Score: -1.59
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & d4&\\
-\end{tabular}}|
-\end{center}
-|8.~Qe2, Nc6; 9.~0-0, d5; 10.~e*d5, e*d5|
-Score: 0.06
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & \ldots & c*d4\\
-\end{tabular}}|
-\end{center}
-|8\ldots~d5; 9.~e*d5, e*d5; 10.~Bd3, b6; 11.~0-0, Nc6|
-Score: -0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & N*d4&\\
-\end{tabular}}|
-\end{center}
-|9.~Q*d4|
-Score: -0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-9 & \ldots & d5\\
-\end{tabular}}|
-\end{center}
-|9\ldots~Qa5; 10.~Qd2, b5; 11.~Bd3, e5; 12.~Nf3, Bg4|
-Score: -0.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-10 & e*d5 & e*d5\\
-11 & Bd3 & Re8\\
-\end{tabular}}|
-\end{center}
-|11\ldots~Nc6; 12.~Nce2, N*d4; 13.~N*d4, Bb4; 14.~Bd2, Qa5; 15.~Ne2, B*d2|
-Score: -0.22
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-12 & 0-0 & Bb4\\
-\end{tabular}}|
-\end{center}
-|12\ldots~Nc6; 13.~Nce2, Bg4; 14.~f3, Bc5; 15.~c3|
-Score: -0.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & Bd2&\\
-\end{tabular}}|
-\end{center}
-|13.~Nce2, Nc6; 14.~Bb2, Bg4; 15.~f3, N*d4; 16.~N*d4|
-Score: 0.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & \ldots & Qa5\\
-\end{tabular}}|
-\end{center}
-|13\ldots~b6|
-Score: -0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & Nb1 & Kh8\\
-\end{tabular}}|
-\end{center}
-|14\ldots~Nc6; 15.~B*b4, N*b4; 16.~Re1, Bg4; 17.~Be2, Rad8|
-Score: -0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & B*b4 & Q*b4\\
-16 & c3 & Qe7\\
-\end{tabular}}|
-\end{center}
-|16\ldots~Qc5; 17.~Re1, R*e1; 18.~Q*e1, Nc6; 19.~Nf5, b6|
-Score: 0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & Nd2&\\
-\end{tabular}}|
-\end{center}
-|17.~Ra2, Qc7; 18.~Re2, R*e2; 19.~Q*e2, Nc6; 20.~Rd1, N*d4; 21.~c*d4|
-Score: 0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-17 & \ldots & Bg4\\
-\end{tabular}}|
-\end{center}
-|17\ldots~Qc5; 18.~Qc2, Nc6; 19.~N2f3, N*d4; 20.~N*d4, Ne4|
-Score: 0.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & Qc1&\\
-\end{tabular}}|
-\end{center}
-|18.~N2f3, Qc7; 19.~Qd2, Nc6; 20.~Rfe1, Rad8; 21.~R*e8, R*e8|
-Score: 0.00
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & \ldots & Nc6\\
-19 & N*c6&\\
-\end{tabular}}|
-\end{center}
-|19.~Re1, Ne5; 20.~Qc2, Qc7; 21.~c4, N*d3; 22.~Q*d3|
-Score: 0.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & \ldots & b*c6\\
-20 & Re1 & Qd7\\
-\end{tabular}}|
-\end{center}
-|20\ldots~Qb7; 21.~Qc2, Rad8; 22.~h3, Bh5; 23.~c4, R*e1; 24.~R*e1|
-Score: 0.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & R*e8+ & Q*e8\\
-22 & Qe1&\\
-\end{tabular}}|
-\end{center}
-|22.~Qc2, c5; 23.~h3, Bh5; 24.~b4, c4; 25.~Bf5|
-Score: 0.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-22 & \ldots & a5\\
-\end{tabular}}|
-\end{center}
-|22\ldots~Qd7|
-Score: 0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-23 & h3 & Bd7\\
-\end{tabular}}|
-\end{center}
-|23\ldots~Bh5; 24.~g4, Bg6; 25.~B*g6, h*g6; 26.~Rd1, Rd8; 27.~Q*e8, N*e8|
-Score: 0.19
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & Nf3&\\
-\end{tabular}}|
-\end{center}
-|24.~Rd1, Rb8; 25.~c4, h6; 26.~Q*e8, R*e8; 27.~c*d5, c*d5|
-Score: 0.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & \ldots & Q*e1+\\
-\end{tabular}}|
-\end{center}
-|24\ldots~Rb8; 25.~Bc2, c5; 26.~c4, Q*e1; 27.~R*e1, d4|
-Score: 0.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & R*e1 & Re8\\
-\end{tabular}}|
-\end{center}
-|25\ldots~Rb8; 26.~Bc2, g6; 27.~Re7, Kg7; 28.~Ne5, Be8|
-Score: 0.44
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & R*e8+&\\
-\end{tabular}}|
-\end{center}
-|26.~Ne5|
-Score: 0.53
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-26 & \ldots & B*e8\\
-27 & c4&\\
-\end{tabular}}|
-\end{center}
-|27.~g3|
-Score: 0.28
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-27 & \ldots & h6\\
-\end{tabular}}|
-\end{center}
-|27\ldots~g6; 28.~g3, Kg7; 29.~Kg2, h6; 30.~Ne5, d4; 31.~f4, c5|
-Score: 0.13
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-28 & Kf1&\\
-\end{tabular}}|
-\end{center}
-|28.~g3, g6; 29.~Ne5, Kg7; 30.~Kg2, d4; 31.~Kf3, c5|
-Score: 0.25
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-28 & \ldots & g6\\
-29 & Ke2&\\
-\end{tabular}}|
-\end{center}
-|29.~c*d5|
-Score: 0.31
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-29 & \ldots & Kg7\\
-30 & Ke3&\\
-\end{tabular}}|
-\end{center}
-|30.~Ne5|
-Score: 0.31
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-30 & \ldots & Nd7\\
-\end{tabular}}|
-\end{center}
-|30\ldots~c5; 31.~Ne5, d4; 32.~Kd2, Bd7; 33.~N*d7, N*d7; 34.~Be4, Ne5|
-Score: 0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-31 & Kd4&\\
-\end{tabular}}|
-\end{center}
-|31.~c*d5, c*d5; 32.~Kd4, Nf6; 33.~Ne5, Kf8; 34.~g3, Kg7; 35.~f4|
-Score: 0.59
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-31 & \ldots & d*c4\\
-32 & B*c4&\\
-\end{tabular}}|
-\end{center}
-|32.~K*c4, f5; 33.~Kc3, Bf7; 34.~g3, Nc5; 35.~Bc2, Bd5|
-Score: 0.16
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-32 & \ldots & Kf6\\
-\end{tabular}}|
-\end{center}
-|32\ldots~f5; 33.~Ke3, Bf7; 34.~B*f7, K*f7; 35.~Kf4, Ke6; 36.~Nd4, Kd5|
-Score: -0.03
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-33 & Bd3&\\
-\end{tabular}}|
-\end{center}
-|33.~Nd2, Nb6; 34.~Ne4, Ke7; 35.~Bd3, f5; 36.~Nc5, Bf7|
-Score: 0.22
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-33 & \ldots & Ke6\\
-34 & Kc4&\\
-\end{tabular}}|
-\end{center}
-|34.~Ke3, Nb6; 35.~Nd4, Kd6; 36.~Kf3, Ke5; 37.~Ne2, f5|
-Score: 0.09
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-34 & \ldots & f6\\
-\end{tabular}}|
-\end{center}
-|34\ldots~f5; 35.~g4, f*g4; 36.~h*g4, Ne5; 37.~N*e5, K*e5; 38.~Kc3|
-Score: -0.13
-
-\board
-{ * *b* *}
-{* *n* * }
-{ *p*kppp}
-{p * * * }
-{P*K* * *}
-{*P*B*N*P}
-{ * * PP*}
-{* * * * }
-$$\showboard$$
-${1 \over 2}\!-\!{1 \over 2}$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Sep 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo B01\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Stewart McKay\\
-Grangemouth Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & d5\\
-2 & e*d5 & Nf6\\
-3 & Bb5+ & Bd7\\
-4 & B*d7+ & Q*d7\\
-5 & Nf3 & N*d5\\
-6 & 0-0 & Nc6\\
-7 & Re1 & e6\\
-8 & d3 & g6\\
-9 & Bg5 & Bg7\\
-10 & c3 & Nf6\\
-11 & d4 & h6\\
-12 & B*f6 & B*f6\\
-13 & d5 & Rd8\\
-14 & Qd2 & Q*d5\\
-15 & Qf4 & Bg7\\
-16 & Q*c7 & 0-0\\
-17 & Qf4 & g5\\
-18 & Qd2 & Qf5\\
-19 & Qe3 & Rd3\\
-20 & Qe4 & Q*e4\\
-21 & R*e4 & Rd1+\\
-22 & Re1 & Rfd8\\
-23 & h3 & Ne5\\
-24 & Na3 & N*f3+\\
-25 & g*f3 & R1d3\\
-26 & Kg2 & a6\\
-27 & Rac1 & b5\\
-28 & Re2 & Bf8\\
-29 & Nc2 & Bc5\\
-30 & Ne1 & Rd2\\
-31 & R*d2 & R*d2\\
-32 & Rc2 & Rd1\\
-33 & Kf1 & Be7\\
-34 & a3 & Bf6\\
-35 & Ke2 & Rd5\\
-36 & Nd3 & Rd8\\
-37 & Kd2 & Rc8\\
-38 & Ke3 & Bg7\\
-39 & f4 & Bf6\\
-40 & Ne5 & Rc5\\
-41 & Nd7 & g*f4+\\
-42 & K*f4 & Bg5+\\
-43 & Ke4 & f5+\\
-44 & Kf3 & Rd5\\
-45 & Nb8 & Rd6\\
-46 & c4 & b*c4\\
-47 & R*c4 & Rb6\\
-48 & Rb4 & Rd6\\
-49 & Ra4 & Rb6\\
-50 & N*a6 & R*b2\\
-51 & Nc7 & Rb3+\\
-52 & Kg2 & Be7\\
-53 & N*e6 & R*a3\\
-54 & R*a3 & B*a3\\
-55 & Kg3 & Kf7\\
-56 & Nd4 & Kg6\\
-57 & Kf4 & Kh5\\
-58 & N*f5&\\
-\end{tabular}}|
-\end{center}
-And White won by queening the f pawn.
-
-\board
-{ * * * *}
-{* * * * }
-{ * * * p}
-{* * *N*k}
-{ * * K *}
-{b * * *P}
-{ * * P *}
-{* * * * }
-$$\showboard$$
-$1\!-\!0$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Sep 1994 \hspace{.3 in} $0\!-\!1$\\
-\hline
-Foo D02\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Harward Shaughan\\
-\rule[-1pt]{11pt}{11pt} Andy Gill\\
-Grangemouth Minor Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & d4 & e6\\
-2 & Bf4 & d5\\
-3 & Nf3 & Nf6\\
-4 & Nbd2 & c5\\
-5 & e3 & a6\\
-6 & c4 & Nc6\\
-7 & Ne5 & c*d4\\
-8 & N*c6 & b*c6\\
-9 & e*d4 & Qb6\\
-10 & c*d5 & c*d5\\
-11 & Qc2 & Bd7\\
-12 & Be3 & Bb4\\
-13 & a3 & B*d2+\\
-14 & Q*d2 & 0-0\\
-15 & Bd3 & Rfc8\\
-16 & 0-0 & Bb5\\
-17 & b3 & Rc6\\
-18 & f3 & Rac8\\
-19 & Rfc1 & B*d3\\
-20 & R*c6 & R*c6\\
-21 & Q*d3 & Qc7\\
-22 & Bd2 & h6\\
-23 & Rb1 & Nh5\\
-24 & b4 & Nf4\\
-25 & B*f4 & Q*f4\\
-26 & b5 & Rc1+\\
-27 & R*c1 & Q*c1+\\
-28 & Kf2 & Qb2+\\
-29 & Kg3 & Q*b5\\
-30 & Q*b5 & a*b5\\
-31 & Kf2 & Kf8\\
-32 & Ke3 & Ke7\\
-33 & Kd3 & Kd6\\
-34 & f4 & f6\\
-35 & h4 & e5\\
-36 & d*e5+ & f*e5\\
-37 & f5 & e4+\\
-38 & Kd4 & Ke7\\
-39 & g4 & Kf6\\
-40 & Ke3 & g6\\
-41 & g5+ & h*g5\\
-42 & h*g5+ & K*f5\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * * * *}
-{* * * * }
-{ * * *p*}
-{*p*p*kP }
-{ * *p* *}
-{P * K * }
-{ * * * *}
-{* * * * }
-$$\showboard$$
-$0\!-\!1$
-\clearpage
-\begin{center}
-\fbox{\fbox{\large\begin{tabular}{l}
-Game \hspace{.3 in} Sep 1994 \hspace{.3 in} $1\!-\!0$\\
-\hline
-Foo C65\\
-\raisebox{2.5pt}[11pt]{\framebox[11pt]{\rule{0pt}{4.25pt}}} Andy Gill\\
-\rule[-1pt]{11pt}{11pt} Lindsay Ridland\\
-Grangemouth Minor Congress
-\end{tabular}}}
-\end{center}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-1 & e4 & e5\\
-2 & Nf3 & Nc6\\
-3 & Bb5 & Nf6\\
-4 & 0-0 & Bc5\\
-5 & Re1 & a6\\
-\end{tabular}}|
-\end{center}
-|5\ldots~Ng4; 6.~Re2, 0-0; 7.~d3, Nd4; 8.~N*d4, B*d4; 9.~Nd2|
-\wbetter{},0.13 but a bit messy for white.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & Ba4&\\
-\end{tabular}}|
-\end{center}
-|6.~B*c6, d*c6; 7.~h3, Qe7; 8.~d3, 0-0; 9.~Bg5, h6; 10.~Bh4|
-=, taking the exchange way out.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-6 & \ldots & b5\\
-7 & Bb3 & d6\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r*bqk* r}
-{* p *ppp}
-{p*np n *}
-{*pb p * }
-{ * *P* *}
-{*B* *N* }
-{PPPP PPP}
-{RNBQR K }
-$$\showboard$$
- We have now reached a main line of the Ruy Lopez.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & c3&\\
-\end{tabular}}|
-\end{center}
-|8.~a4, Ng4; 9.~Re2, Bb7; 10.~a*b5, a*b5|
-=, and very like Game 7 of the Short-Kasparov WC, where Kasparov as
-white scored a decisive victory.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-8 & \ldots & Bg4\\
-9 & d3 & h6\\
-10 & Be3 & 0-0\\
-\end{tabular}}|
-\end{center}
-|10\ldots~B*e3; 11.~R*e3, 0-0; 12.~a4, b4; 13.~h3, Bh5; 14.~Nbd2, Rb8|
-=
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-11 & B*c5 & d*c5\\
-12 & Bc2 & Qd7\\
-13 & Nbd2&\\
-\end{tabular}}|
-\end{center}
-|13.~h3, Bh5; 14.~Nbd2, Rfd8; 15.~Nb3, Qd6; 16.~Qe2, Rab8; 17.~Red1|
-Fritz is deperate to put h3, but I dont see why.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-13 & \ldots & Nh5\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* * rk*}
-{* pq*pp }
-{p*n* * p}
-{*pp p *n}
-{ * *P*b*}
-{* PP*N* }
-{PPBN PPP}
-{R *QR K }
-$$\showboard$$
-|13\ldots~Rad8|
-is an idea.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & Nb3&\\
-\end{tabular}}|
-\end{center}
-|14.~h3|
-\wbetter{},0.33 I now agree with this, because the knight block the h5
-retreat square.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-14 & \ldots & Nf4?\\
-\end{tabular}}|
-\end{center}
-|14\ldots~Qd6; 15.~h3, Be6; 16.~Ng5, B*b3; 17.~a*b3, Nf4; 18.~Nf3|
-\bbetter{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-15 & N*c5 & Qc8\\
-\end{tabular}}|
-\end{center}
-|15\ldots~Qe7; 16.~Nb3, Rfd8; 17.~h3, Be6; 18.~d4, Qf6; 19.~Rc1, e*d4|
-=
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & Re3&\\
-\end{tabular}}|
-\end{center}
-|16.~b4|
-White is just a pawn up.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-16 & \ldots & Rd8\\
-17 & Qd2 & Rd6\\
-\end{tabular}}|
-\end{center}
-|17\ldots~B*f3!; 18.~R*f3, Qg4; 19.~R*f4, e*f4; 20.~h3, Qh4; 21.~d4|
-and black has equalised!
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & Bd1&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r*q* *k*}
-{* p *pp }
-{p*nr * p}
-{*pN p * }
-{ * *Pnb*}
-{* PPRN* }
-{PP Q PPP}
-{R *B* K }
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-18 & \ldots & N*g2??\\
-\end{tabular}}|
-\end{center}
-Throws away a piece for a very temp. inititive.
-|18\ldots~Rb8; 19.~d4, e*d4; 20.~c*d4, Ne6; 21.~N*e6, Q*e6|
-and white is starting to push home his advantage.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-19 & K*g2 & Bh3+\\
-20 & Kh1 & Qg4\\
-\end{tabular}}|
-\end{center}
-|20\ldots~Rg6|
-is another idea, but the whole plan is conceptually flawed.
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-21 & Ne1 & Qg5\\
-22 & Qe2 & Be6\\
-23 & Rg3 & Qf6\\
-24 & N*e6&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{r* * *k*}
-{* p *pp }
-{p*nrNq p}
-{*p* p * }
-{ * *P* *}
-{* PP* R }
-{PP *QP P}
-{R *BN *K}
-$$\showboard$$
-|24.~Nf3, Ne7; 25.~N*e6, Q*e6; 26.~Bb3, Qf6; 27.~Rag1|
-\wdecisive{}
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-24 & \ldots & R*e6\\
-\end{tabular}}|
-\end{center}
-|24\ldots~Q*e6; 25.~Bb3, Qe7; 26.~Bd5, Rad8; 27.~Nf3, R8d7; 28.~Rd1|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & Qf3&\\
-\end{tabular}}|
-\end{center}
-Crude plan of exchanging queens to avoid `acidents`.
-|25.~Bb3|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-25 & \ldots & Qe7\\
-26 & Bb3 & Rf6\\
-27 & Qe3&\\
-\end{tabular}}|
-\end{center}
-|27.~Qg2|
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-27 & \ldots & Rd8\\
-28 & Nc2 & Kh7\\
-29 & Rag1 & g6\\
-30 & Rf3&\\
-\end{tabular}}|
-\end{center}
-
-\board
-{ * r * *}
-{* p qp*k}
-{p*n* rpp}
-{*p* p * }
-{ * *P* *}
-{*BPPQR* }
-{PPN* P P}
-{* * * RK}
-$$\showboard$$
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-30 & \ldots & R*f3\\
-\end{tabular}}|
-\end{center}
-|30\ldots~Rfd6??; 31.~R*f7+|
-Trying to avoid the exchance, but black loses his Queen! Black
-actually moved his rook to d6, but before letting it go, spotted the
-danger, and then took the exchange. Shame...
-\begin{center}|
-{\bf\begin{tabular}{rp{50pt}p{50pt}}
-31 & Q*f3 & Rd7\\
-32 & Ne3 & h5?\\
-33 & Nd5!&\\
-\end{tabular}}|
-\end{center}
-At least winning the exchange. Black resigned here.
-
-\board
-{ * * * *}
-{* prqp*k}
-{p*n* *p*}
-{*p*Np *p}
-{ * *P* *}
-{*BPP*Q* }
-{PP * P P}
-{* * * RK}
-$$\showboard$$
-$1\!-\!0$
-
-\end{document}
diff --git a/testsuite/tests/ghc-regress/programs/andy_cherry/mygames.pgn b/testsuite/tests/ghc-regress/programs/andy_cherry/mygames.pgn
deleted file mode 100644
index 3d2e46fa1b..0000000000
--- a/testsuite/tests/ghc-regress/programs/andy_cherry/mygames.pgn
+++ /dev/null
@@ -1,1323 +0,0 @@
-% --------------
-% Season 93/94
-% --------------
-
-[Site "Dunfermline Club Championship"]
-[Date "1993.10.??"]
-[Round "1"]
-[White "Webb, George"]
-[Black "Gill, Andy"]
-[Result "1-0"]
-[ECO "C10"]
-
-1. Nf3 d5 2. d4 Nc6 3. Nc3 Nf6 (3... Bf5 {is more natural.}) 4. e4? (
-4. Bf4 {is better.}) 4... e6? (4... dxe4 5. d5 exf3 6. dxc6 Qxd1+ 7.
-Nxd1 {and black is a clear pawn up.}) 5. e5 Ne4 {} 6. Nxe4? { Taking
-this knight looses a pawn} 6... dxe4 7. Nd2 Qxd4 8. Nc4 Qxd1+ 9. Kxd1
-Bd7 (9... Bc5 10. f3 exf3 11. gxf3 O-O 12. Bd3 {White can get presure
-down the `g' file, but first needs to solve the problem of the Bishop on
-c5 guarding g8.}) 10. Bd2 (10. Be3 {is better.}) 10... Bb4 11. c3 Bc5 12.
-Ke1 O-O-O (12... b5 13. Ne3 Bxe3 14. Bxe3 Nxe5 {wins a pawn, but black
-might have problems because of queenside weaknesses.}) 13. g3 (13. Bg5
-Be7 14. Bxe7 Nxe7 15. Rd1 {and white is starting to contest the `d'
-file.}) 13... Rhf8 14. Bg2 f5? {black is throwing away a pawn.} 15.
-exf6 gxf6 (15... Rxf6 {gives black more piece activity.}) 16. Bxe4 {
-taking the weak pawn, and attacking h7.} 16... e5? (16... Rh8 {is
-required to protect the weak h pawn.}) 17. Bxh7 {} 17... f5 (17... Bxf2+
-18. Kxf2 Be6 19. Nxe5 Rxd2+ 20. Ke1 Rxb2 {winning material, and striping
-whites king of protection.}) 18. b4 Be6 19. b5 (19. bxc5 Bxc4 {and white
-has the two bishops.}) 19... Bxc4 20. bxc6 bxc6 (20... Bxf2+ 21. Kxf2
-Rxd2+ 22. Ke1 Re2+ 23. Kd1 bxc6 24. h4 Rd8+ {with a winning attack on
-whites exposed king.}) 21. Rb1? {Throws away a pawn needlessly.} 21...
-Bxa2 (21... Bxf2+ 22. Kxf2 Rxd2+ 23. Ke1 Rxa2 {winning two pawns rather
-than one.}) 22. Rb2 Bd5 23. Rg1 e4 (23... a5 24. h4 a4 25. Bh6 Bf3 26.
-Rd2 Rxd2 27. Bxd2 {is a better plan, with a dangerous passed `a' pawn.})
-24. Bh6? 24... Ba3 (24... Rf7 25. Bg5 Rxh7 26. Bxd8 Ba3 27. Rd2 Kxd8 {
-two bishops vs a rook, a difficult win for black.}) 25. Rb1 Rfe8? {
-another missed opertunity.} 26. Bxf5+ Be6 27. Bg6 Rh8 28. Be3 {}
-28... Rd3? (28... Rxh2 29. Bxe4 c5 30. Rb7 a5 {and black has a
-fighting chance}) 29. Bd4 (29. Bxe4 Rxc3 30. Bd4 Rc4 31. Bxh8 Rxe4+ {and
-black is lost.}) 29... Bd5?? 30. Bxh8 e3?? 31. f3? (31. Bxd3
-exf2+ 32. Kxf2 Bc5+ 33. Bd4 {and white is two rooks up.}) 31... Rd2 32.
-Bf6 Bb2 33. h4 (33. Bf5+ Kb7 34. c4 Bxc4 35. Rxb2+ Rxb2 36. Bxb2 {
-winning.}) 33... Kb7 34. Bg5 Bxf3 (34... Ba2 35. Bc2 Bxb1 36. Bxb1 Rh2
-37. Bxe3 Bxc3+ {and black is just a bishop down in a pawn race.}) 35.
-Bxe3 Re2+ 36. Kf1 Rxe3 37. Re1?? {giving black a chance to equalize.}
-37... Re2?? {Returning the complement.} (37... Rxe1+ 38. Kxe1 Bxc3+
-39. Kf2 Bd4+ 40. Kxf3 Bxg1 {and White still has the edge with 2
-connected passed pawns, but black has real chances.}) 38. Rxe2 1-0
-
-
-[Site "Dunfermline Club Championship"]
-[Date "1993.11.??"]
-[Round "2"]
-[White "Gill, Andy"]
-[Black "Dunne, Barry"]
-[Result "1-0"]
-[ECO "C65"]
-
-1. e4 e5 2. Nf3 Nc6 3. Bb5 Nf6 4. d3 (4. O-O {Ruy Lopez, Berlin Defence})
-4... Be7 (4... Bc5 {is better.}) 5. O-O (5. Bxc6 dxc6 6. Nxe5 Bd6 7. Nf3
-O-O 8. O-O Be6 {and white is a pawn up, but black has a lead in
-development.}) 5... O-O $2 (5... d6 {is needed to protect e5.}) 6. Nc3 (6.
-Bxc6 dxc6 7. Nxe5 Bd6 8. Nf3 Bg4 9. Be3 {and white is a clean pawn up.})
-6... b6 $2 7. a3 Bb7 8. b4 Nd4 {A bit ambitious.} 9. Nxe5 (9. Nxd4 exd4
-10. Ne2 d5 11. e5 Nd7 {is whites best line.}) 9... Nxb5 (9... d5 10. Bb2
-dxe4 11. dxe4 Nxe4 {with equal chances.}) 10. Nxb5 d5 11. Bb2 dxe4 12.
-dxe4 (12. f3 {is a better approach.}) 12... Qxd1 13. Raxd1 Bd6 {} (13...
-Bxe4 14. Nd7 Bxc2 15. Bxf6 gxf6 16. Rd2 {with a slight advantage for
-white.}) 14. Nf3 (14. Nxd6 cxd6 15. Rxd6 Bxe4 16. c4 Rfd8 17. c5 bxc5
-18. bxc5 {winning for white.}) 14... Bxe4 (14... Nxe4 {is better.}) 15.
-Nxd6 cxd6 16. Bxf6 gxf6 17. Rxd6 Bxc2 (17... Bxf3 18. gxf3 Rac8 19. Rc1
-Rc3 20. Rd3 Rxd3 21. cxd3 {and whites passed pawn is a long way from
-queening.}) 18. Rxf6 (18. Nd4 Ba4 19. Rxf6 Rfd8 20. Rf4 Rd7 21. Re4 {a
-pawn up, but with chances for black, because of the powerful Bishop.})
-18... Rfd8 19. Ne5 Kg7 (19... Bg6 {is better, defending the weak pawn.})
-20. Rxf7+ Kg8 21. Rc7 (21. f4 a6 22. g3 Rd2 23. Rb7 b5 {and white should
-win.}) 21... Re8 (21... Rdc8 22. Rb7 Be4 23. Rd7 Rc2 24. Rfd1 {with
-connected rooks for white.}) 22. Re1 (22. f4 {is better for protecting the
-knight.}) 22... Rac8 {should have moved the `e' Rook.} 23. Rxa7 Bf5 (
-23... Ra8 $5 {planning to attack the weak `a' pawn.}) 24. f4 Bg4 (24...
-Rc2 {penatraiting the 7th.}) 25. Kf2 Rc2+ 26. Kg3 Re2 27. Rxe2 Bxe2 28.
-Nc6 $2 {where is that knight going ?} 28... Re3+ 29. Kf2 Re4 {} 30. f5 (
-30. Ne7+ Kf8 31. Nd5 Bd3 32. Nxb6 Re7 {totally winning for white})
-30... Bg4 31. Ne7+ (31. Kg3 h6 32. f6 Be6 33. Re7 {looking very good for
-white.}) 31... Kf8 32. f6 Rf4+ 33. Kg3 Re4 34. h3 (34. Nd5 Be6 35. Nxb6
-Rg4+ 36. Kf3 Rg6 37. Rxh7 Rxf6+ 38. Ke4 {and with 4 connected passed
-white will win.}) 34... Bh5 35. Nd5 b5 36. Rxh7 Bg6 37. Rh4 (37. Rh8+ Kf7
-38. Rb8 Bf5 39. Rxb5 Be6 40. Rb7+ Kg6 41. Rg7+ {just look at whites
-advantage.}) 37... Rxh4 38. Kxh4 Be4 39. Nc3 (39. Ne3 Kf7 40. Kg5 Bc6
-41. g4 Be4 42. h4 Bd3 43. h5 {winning.}) 39... Bc6 (39... Bxg2 40. Nxb5
-Kf7 41. Kg5 Bxh3 42. Nd6+ Kg8 43. a4 Kh7) 40. g4 Kf7 41. g5 (41. Kg5 Kg8
-42. h4 Bd7 43. h5 Kf7 44. Ne4 Kg8 45. Nd6) 41... Kg6 42. Kg4? 42...
-Bd7+ 43. Kf4 Bxh3 44. Nxb5 Bd7 (44... Kf7 45. Nd6+ Ke6 46. f7 Ke7 47. g6
-Kf8 48. a4 Kg7) 45. a4 Bc6 46. Nc3 Bd7 47. b5 1-0
-
-[Site "Dunfermline Club Championship"]
-[Date "1993.11.??"]
-[Round "3"]
-[White "Gill, Andy"]
-[Black "Brown, Rab"]
-[Result "0-1"]
-[ECO "C65"]
-
-1. e4 e5 2. Nf3 Nc6 3. Bb5 Bc5 4. O-O Nf6 5. Nc3 d6 6. a3 Ng4? 7.
-Qe1 (7. h3) 7... O-O {} 8. Bxc6 bxc6 9. b4 Ba6 10. bxc5 Bxf1 11. Kxf1 (
-11. Qxf1 Qd7 12. Bb2 dxc5 13. d3 Rfb8 14. Rb1 {clearly winning for
-white.}) 11... Qf6 {} (11... Rb8 12. Qe2 Qd7 13. Qa6 Ra8 14. h3 Nf6 15.
-d4 exd4 {is a better plan.}) 12. d3 Qg6 13. Rb1 (13. h3 Nh6) 13... Qh5
-14. Rb7 (14. h3 Nf6 15. Rb7 Rfc8 16. Bg5 Qg6 17. Qe3 Ne8 {and white has a
-commanding lead.}) 14... Nxh2+ 15. Nxh2 Qxh2 16. Rxc7 Qh1+ 17. Ke2 Qxg2
-18. Rxc6 (18. cxd6 Rfc8 19. Rxc8+ Rxc8 20. Be3 Rd8 21. Bc5 h5) 18... dxc5 (
-18... Qg4+ 19. f3 Qg2+ 20. Qf2 Qxf2+ 21. Kxf2 Rfc8 22. Nd5 Rxc6 23.
-Ne7+) 19. Rxc5 f5 20. Be3 Qg4+ 21. f3 Qg2+ 22. Qf2 Qh1 23. Rxe5 Qa1 {}
-24. Bc5? (24. Qe1 Qb2 25. Qd2 Qxa3 26. Bc5 Qa5 27. exf5 {white has the
-advantage.}) 24... Qxc3 25. Rxf5 (25. Bxf8 Qxc2+ 26. Kf1 Qxd3+ 27. Qe2
-Qb1+ 28. Qe1 Qxe1+ 29. Kxe1 {now black has only a slight advantage.})
-25... Qxc2+ (25... Rxf5 26. exf5 Qxc2+ 27. Kf1 Qxd3+ 28. Kg2 Rd8 29. f4 {
-and black has a clear lead.}) 26. Ke3 Qxf2+ 27. Kxf2 Rxf5 28. exf5 Rc8
-29. d4 a6 30. a4 Kf7 31. Ke3 (31. Kg3 Kf6 32. Kf4 g5+ 33. fxg6 hxg6 34.
-a5 g5+ 35. Kg4) 31... h5 (31... Kf6 32. Kf4 Rd8 33. a5 Rd5 34. Ke4 Rxf5)
-32. Kf4 h4 33. Kg4 Rh8 34. d5 h3 35. Bd6 g6 (35... h2 36. Bxh2 Rxh2 37.
-Kf4 Rh4+ 38. Ke5 Rxa4 39. d6 Rc4 {totaly won for black.}) 36. fxg6+ Kxg6
-37. Bh2 Kf6 {} 38. f4 (38. a5 Ke7 39. Kf5 Rh5+ 40. Ke4 Rh4+ 41. f4 Kd6
-42. Kd4 {holding the position.}) 38... Ke7 39. f5 a5 (39... Kf6 {is
-needed.}) 40. d6+ Kd7 (40... Kf6 {is still needed.}) 41. Kg5 Rb8 (41... Ke8)
-42. f6 Rb2 (42... Ke6 43. Kg4 Rb4+ 44. Kxh3 Rxa4 45. d7 Kxd7 46. Be5 {
-but black should still win.}) 43. Kg6 (43. f7 Rg2+ 44. Kh6 Rf2 45. Kg7
-Rg2+ 46. Kh7 Rf2 47. Kg7 {white has equalised!}) 43... Rf2 0-1
-
-[Site "Dunfermline C vs Stirling B"]
-[Date "1993.11.??"]
-[Round "4"]
-[White "Gill, Andy"]
-[Black "Kennedy, Ian"]
-[Result "0-1"]
-[ECO "C60"]
-
-1. e4 e5 2. Nf3 Nc6 3. Bb5 Bd6 4. O-O a6 5. Ba4 b5 6. Bb3 Bb7 7. d3 Nf6 (
-7... Na5 8. Nbd2 f6 9. a4 Nxb3 10. Nxb3 Bb4 11. axb5 axb5 {with
-equality.}) 8. Nc3 (8. a4 b4 9. Nbd2 Bc5 10. Nc4 d6 {<saw>}) 8... O-O (
-8... Na5 9. Bd2 Nxb3 10. axb3 O-O 11. Bg5 Rb8 {=}) 9. Be3 Na5 {} (9...
-Be7 10. a3 Ng4 11. Bd2 {<saw>}) 10. Bd5?! {where is that bishop going.}
-10... b4 (10... c6 11. Bb3 Bc7 12. Bg5 Nxb3 13. Bxf6 Qxf6 14. axb3 {
-<sab>}) 11. Bxb7 Nxb7 12. Nd5 (12. Ne2 Ng4 13. Bd2 f5 14. exf5 Rxf5 15.
-Ng3 Rf6 {<saw>}) 12... c6 (12... Nxd5 13. exd5 f6 14. c3 bxc3 15. bxc3
-Be7 16. d4 d6 {<sab>}) 13. Nxf6+ (13. Bb6 Qc8 14. Nxf6+ gxf6 15. d4 Bc7
-16. Bxc7 Qxc7 {<saw> and the black king is exposed.}) 13... Qxf6 14. Bb6 {
-?! strange move.} (14. Qd2 Be7 15. c3 a5 16. a3 bxa3 17. bxa3 {<saw> with
-the plan ofs owning the `b' file.}) 14... Bc5 (14... Be7) 15. Bc7 (15. Nxe5 {
-but black can easly win back the pawn.}) 15... Rac8? (15... d6 16. d4
-exd4 17. e5 Qe7 18. exd6 Nxd6 19. Bxd6 Qxd6 {<ab>}) 16. Bxe5 Qg6 17. d4 (
-17. Bg3 Rfe8 18. Ne5 Qf6 19. Nxd7 Qxb2 20. Re1 {<aw> white should now
-try use his center pawns to push home his advantage.}) 17... Bd6 18.
-Bxd6 {this is to early, leaving myself underdeveloped.} (18. Re1 f6 19.
-Bxd6 Nxd6 20. Qd3 {<aw>}) 18... Nxd6 19. Ne5 (19. e5 Nc4 20. b3 Na3 21.
-Rc1 d6 22. Re1 {<aw>}) 19... Qxe4 20. Nxd7 Rfe8 21. Nc5 Qg6? (21...
-Qe2 22. Re1 Qc4 23. Qd2 Rcd8 24. Rad1 a5 {<aw> white is a clear pawn up.})
-22. Nxa6 Nf5 23. Nxb4 { white should now win the endgame quite
-comfortably.} 23... Nh4 (23... Rcd8 24. c3 c5 25. Nc2 cxd4 26. Nxd4 Qf6
-27. Qf3 Nxd4 {<aw> though still two clear pawns up.}) 24. g3 {forced.}
-24... c5 25. dxc5 Rxc5 (25... Qe4 26. gxh4 Qxb4 27. a4 Qxh4 28. Qd5 Re2 {
-<aw>, but whites king is dangerously exposed, and the `a' rook is not
-(yet) part of the game.}) 26. a4 {crap plan! Its just too slow.} (26. Nd3
-Rf5 27. f4 Rd5 28. a4 Qb6+ 29. Rf2 Nf5 {<waw> black will never stop 3
-connected passed pawns!}) 26... f5 27. Nd5 Rd8?? (27... Qd6 28. Nf4
-Qxd1 29. Rfxd1 Nf3+ 30. Kg2 Ne5 {<waw>}) 28. Ne7+! 28... Kf7 29. Qxd8
-Qg5 {} (29... Nf3+ 30. Kg2 {is an idea.}) 30. a5 {this plan is still to
-slow.} (30. Qg8+ Kxe7 31. Rfe1+ Kd6 32. Qf8+ Kc6 33. Qc8+ Kb6 34. Re6+
-Rc6 35. Qxc6+ Ka7 36. Qb6+ Ka8 37. Re8+ Qd8 38. Rxd8#) 30... f4 {} 31.
-f3?? (31. Nc6 Nf3+ 32. Kg2 fxg3 33. Qd7+ Kf8 34. Qc8+ Kf7 35. fxg3 {
-<waw> but there are still some hairy tactics.}) 31... fxg3 32. hxg3?? (
-32. Qg8+ Kxe7 33. Rfe1+ Re5 34. Rxe5+ Qxe5 35. h3 Nxf3+ 36. Kg2 {and
-white can still win!}) 32... Qxg3+ 33. Kh1 Qg2# {painfull!} 0-1
-
-[Site "Dunfermline Club Championship"]
-[Date "1993.11.??"]
-[Round "5"]
-[White "Gill, Andy"]
-[Black "Langham, Neil"]
-[Result "1-0"]
-[ECO "C41"]
-
-1. e4 e5 2. Nf3 d6 3. Nc3 Nf6 4. Bc4 h6 ( 4... Bg4 5. d3 Nc6 6. h3 Bh5 7. O-O
-Bxf3 8. Qxf3 { = } ) 5. O-O Bd7 6. d3 Nc6 7. Bd2 ( 7. Be3 Be7 8. Nd5 O-O 9. h3
-Nxd5 10. Bxd5 Bf6 ) 7... Na5 {  } 8. b4 ( 8. Bd5 Bg4 9. a3 c6 10. Ba2 d5
-11. Be3 dxe4 12. Nxe4 { but black is having the freer game } ) 8... Nxc4
-9. dxc4 Be6 ( 9... Be7 10. Qe2 O-O 11. Rfd1 Be6 12. c5 c6 13. cxd6 Qxd6 { <sab>
-} ) 10. Nd5 $2 Nxe4 11. Qe2 ( 11. Re1 Nxd2 12. Qxd2 c6 13. Ne3 Be7 14. Rad1 O-O
-{ <ab>, with white a pawn and position down. } ) 11... Nxd2 12. Nxd2 ( 12. Qxd2
-{ is better. } ) 12... Qg5 $4 {  } ( 12... g6 13. Ne3 f5 14. c5 dxc5 15. bxc5
-c6 { <ab>, ready for a pawn charge on white's king. } ) 13. Nxc7+ Ke7 (
-13... Kd7 { is better, stoping the future escape of the white knight. } )
-14. Nxa8 Bh3 { going for the cheapo. } 15. f4 $1 Qg6 16. Nc7 ( 16. fxe5 Kd8
-17. Qe4 Be6 18. Qxg6 fxg6 { is the best line Fritz2 found. } ) 16... Kd7
-17. Nd5 Bg4 18. Qf2 f6 ( 18... Qxc2 19. Ne3 Qg6 20. fxe5 Be6 21. Nf3 { rather
-cheeky, but still a rook down. } ) 19. Ne3 Ke6 $2 {  } 20. f5+ Bxf5 21. Qxf5+
-( 21. Nxf5 Qg5 22. h4 Qg4 { actually wins more material, but with this level of
-inequality, you want to swap of queens. } ) 21... Qxf5 22. Nxf5 g6 23. Ng3 { At
-this point the score sheet goes wrong, but the game was won by now anyway! }
-1-0
-
-[Site "Dunfermline Club Championship"]
-[Date "1993.11.??"]
-[Round "6"]
-[White "Gill, Andy"]
-[Black "Duncan, Dennis"]
-[Result "1-0"]
-
-1. e4 e5 2. Nf3 d6 3. Bc4 Bg4 4. O-O Nf6 5. Nc3 ( 5. d3 Nc6 6. Be3 d5 7. exd5
-Nxd5 8. Nbd2 Nxe3 9. fxe3 { = } ) 5... c6 ( 5... Nc6 6. Bb5 Qd7 7. h3 Bxf3
-8. Qxf3 O-O-O { = } ) 6. Bb3 d5 7. d3 ( 7. exd5 cxd5 8. Re1 e4 9. d3 Bxf3 { = }
-) 7... b5 ( 7... dxe4 8. dxe4 Qxd1 9. Rxd1 Bxf3 { <sab> } ) 8. h3 {  } (
-8. exd5 b4 9. Ne4 cxd5 10. Nxf6+ gxf6 11. d4 exd4 12. Qxd4 { <aw> } ) 8... Bc8
-( 8... Bxf3 9. Qxf3 d4 10. Ne2 Nbd7 11. Bg5 Be7 { <saw> } ) 9. Nxe5 ( 9. exd5
-Nxd5 10. Nxe5 Be6 11. Nxd5 { <aw> } ) 9... Qc7 ( 9... Bd6 10. Nf3 dxe4 11. Nxe4
-Nxe4 12. Re1 Bxh3 13. Rxe4+ Be6 { <aw> } ) 10. Nf3 Nh5 ( 10... Be6 11. Nd4 dxe4
-12. Bxe6 { <aw> } ) 11. exd5 c5 12. Nxb5 ( 12. Re1+ $1 Be7 13. Nxb5 Qb6 14. d6
-Qxb5 15. Rxe7+ Kd8 16. Bxf7 { <waw> } ) 12... Qb6 ( 12... Qb7 13. Re1+ Kd8
-14. Ne5 Nf6 15. Bg5 Bf5 16. Bxf6+ gxf6 { <waw> } ) 13. Ba4 ( 13. Re1+ Kd8
-14. Ne5 Qxb5 15. Nxf7+ Kc7 16. Nxh8 Nf6 17. Bf4+ { <waw> } ) 13... Bd7 14. Qe2+
-Be7 {  } 15. d4 ( 15. d6 O-O 16. dxe7 Re8 17. d4 cxd4 18. Nfxd4 { <waw> } )
-15... Bxb5 16. Bxb5+ Nd7 ( 16... Kf8 17. Re1 Qd6 18. Nh4 Qf6 19. Qxh5 { <waw> }
-) 17. Bxd7+ Kxd7 18. Ne5+ Ke8 19. dxc5 ( 19. Nc6 Qc7 20. Re1 cxd4 21. c4 Nf6 {
-<waw> } ) 19... Qxc5 20. Rd1 ( 20. d6 Qxd6 21. Qf3 Rc8 22. Nxf7 Qf6 23. Qxf6
-Nxf6 24. Nxh8 { <waw> } ) 20... Ng3 21. Qe3 ( 21. Qg4 Qxc2 22. Rd2 Qf5 23. Qxg3
-Bf6 { <waw> } ) 21... Nf5 22. Qxc5 ( 22. Qf3 Nd6 23. c4 Bf6 24. Re1 Bxe5
-25. Rxe5+ Kf8 { <waw> } ) 22... Bxc5 {  } 23. Be3 $2 ( 23. Re1 Ne7 24. c4 f6
-25. Nd3 Bd4 { <waw> } ) 23... Nxe3 ( 23... Bxe3 24. fxe3 Nxe3 25. Rd2 Rc8
-26. Re2 Nxd5 27. Ng6+ Kd7 { Blacks best line } ) 24. fxe3 Bxe3+ 25. Kf1 Bf4
-26. Re1 ( 26. Nd3 Bd6 27. c4 Rc8 28. b3 { <waw> } ) 26... f6 {  } 27. Ng6+ Kf7
-28. Nxf4 Rhe8 29. Rxe8 ( 29. c4 Rac8 30. b3 h6 31. Kf2 Rxe1 32. Rxe1 Rc5 {
-<waw> } ) 29... Rxe8 30. d6 ( 30. Kf2 Re5 31. Rd1 g5 32. Ne2 { <waw> } )
-30... Rd8 31. Rd1 g6 32. Nd5 ( 32. c4 g5 33. Ne2 Ke6 34. Nd4+ Kd7 35. c5 h6 {
-<waw>,5.25 } ) 32... Rxd6 33. c4 ( 33. Ke2 Ke6 34. c4 Rc6 35. Kd3 f5 36. b3 {
-<waw>,4.53 } ) 33... f5 34. Ke1 ( 34. b3 { <waw>,4.22 } ) 34... Ra6 35. a3 f4
-$4 { Simply throws away a pawn. } 36. c5 {  why not take the pawn? } (
-36. Nxf4 h6 37. g3 g5 38. Nd5 Re6+ 39. Kd2 Re4 { <waw>,5.06 looks good to me. }
-) 36... Ke6 $2 37. Nc7+ { Black resigns } 1-0
-
-[Site "Dunfermline Club Championship"]
-[Date "1993.11.??"]
-[Round "7"]
-[White "Gill, Andy"]
-[Black "Rintoul, Adam"]
-[Result "1-0"]
-[ECO "C70"]
-1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 b5 5. Bb3 Nf6 6. d3 Bc5 ( 6... Bb7 7. O-O
-d5 8. exd5 Nxd5 9. Bg5 Be7 10. Bxe7 Ndxe7 { = } ) 7. Be3 $2 {  } ( 7. Nc3 )
-7... Bxe3 8. fxe3 O-O 9. O-O d6 10. Nbd2 ( 10. a3 Bb7 11. Nc3 Rb8 12. Nd5 a5 {
-<sab>,0.13 } ) 10... Bg4 11. d4 $2 ( 11. a4 Rb8 12. axb5 axb5 13. h3 Bh5
-14. Qe2 Nd7 { <sab>,-0.22 } ) 11... Bxf3 ( 11... exd4 12. Qe1 dxe3 13. Qxe3 Na5
-14. Nd4 c6 15. c3 Nxb3 { <ab> a pawn up. } ) 12. Nxf3 Nxe4 $4 {  } ( 12... Qe8
-13. d5 Na5 14. Qd3 Nxb3 15. axb3 c6 16. Rad1 { <ab> } ) 13. Bd5 Qd7 ( 13... Ng5
-14. Bxc6 Nxf3+ 15. Bxf3 Rb8 16. dxe5 dxe5 17. a3 { <waw> } ) 14. Bxe4 f5
-15. Bd5+ Kh8 16. Ng5 exd4 17. Qh5 {  } ( 17. Nxh7 Rfb8 18. Ng5 g6 19. Qf3 Ne5
-20. Qh3+ Kg7 21. Bxa8 { <waw>,4.44 } ) 17... h6 $2 ( 17... g6 18. Bxc6 gxh5
-19. Bxd7 dxe3 20. Rxf5 Rxf5 21. Bxf5 { <waw>,4.90 } ) 18. exd4 ( 18. Qg6 Qe8
-19. Qh7# ) 18... Rae8 ( 18... Rf6 19. Rae1 Raf8 20. Ne6 Re8 21. Qf3 {
-<waw>,2.66 } ) 19. Rae1 Rxe1 20. Rxe1 Nd8 21. Qg6 { I finally find the two move
-mate! } 1-0
-
-[Site "Dunfermline Club Championship"]
-[Date "1993.11.??"]
-[Round "8"]
-[White "Robertson, Ian"]
-[Black "Gill, Andy"]
-[Result "1-0"]
-[ECO "C30"]
-[WhiteElo "2150"]
-
-1. e4 e5 2. f4 d6 3. Nf3 Nc6 (3... exf4 {Just take the pawn, and then
-follow the main line KG.}) 4. Bb5 Bd7 5. O-O Nf6 6. Nc3 Be7 (6... a6 7.
-Ba4 exf4 8. d3 b5 9. Bb3 b4 {Who knows?}) 7. d3 { At this point white is
-winning.} 7... O-O 8. Kh1 {! A clever waiting move, to avoid temp
-gaining checks.} (8. Ne2) 8... Nd4 {? losses a pawn} 9. Bxd7 Qxd7 (9...
-Nxf3 10. Bh3 Nd4 11. Be3 c5 12. fxe5 dxe5 {<saw>}) 10. fxe5 Nxf3 {?? 
-Losses the piece.} 11. exf6 Bxf6 12. Qxf3 b5 {? what is this for?} (
-12... Rae8 {Planning taking control over the very white center.}) 13.
-Nd5 {} 13... Qd8 {?? Losses another pawn, as well as weakening the
-kingside, and allowing exchange of queens.} (13... Bd8) 14. Nxf6+ Qxf6
-15. Qxf6 gxf6 16. Rxf6 Kg7 17. Bg5 {Black is just out of good moves.}
-17... Rae8 {? Blocking in the f rook, allowing the skew.} 18. Raf1 d5 {
-? again lack of vision} 19. Bh6+ Kg8 20. exd5 Rd8 21. Bxf8 Rxf8 22. Rc6 {
-Planning an invasion of the 7th. Textbook play.} 22... Rd8 { Planing to
-remove the dangerous white pawn, but missing the connected rooks that
-arrive on the 7th.} 23. Rxc7 Rxd5 24. Rfxf7 Rd8 {Silly, blocking the
-kings escape, athough its over anyway. I should have tried for at least
-one cheapo.} (24... Re5) 25. Rxh7 Rf8 {?? Again just missing the action.}
-26. Rcg7# 1-0
-
-[Site "Dunfermline Club Knockout"]
-[Date "1993.12.??"]
-[Round "9"]
-[White "Gill, Andy"]
-[Black "Colquhoun, Bob"]
-[Result "1-0"]
-[ECO "B10"]
-
-1. e4 c6 2. Nf3 d5 3. exd5 cxd5 4. c4 ( 4. d4 { Score: 0.06 } ) 4... Nf6 (
-4... d4 5. b3 Nc6 6. Bb2 Nf6 7. Na3 e5 { Score: -0.03 } ) 5. cxd5 ( 5. d4 e6
-6. cxd5 Nxd5 7. Nbd2 Bd6 8. Bc4 { Score: 0.13 } ) 5... Nxd5 6. Bc4 e6 (
-6... Nb6 7. Bb3 Nc6 8. d4 Bf5 9. Bg5 Be4 { Score: 0.00 } ) 7. O-O Nc6 8. d4 a6
-( 8... Bb4 9. Bd2 Bxd2 10. Nbxd2 Nf4 11. Nb3 O-O { Score: -0.16 } ) 9. Re1 (
-9. Nc3 { Score: -0.09 } ) 9... b5 ( 9... Be7 10. Nc3 O-O 11. Qd3 Qd7 12. Nxd5 {
-Score: -0.03 } ) 10. Bxd5 Qxd5 11. Nc3 Qf5 ( 11... Qd8 12. d5 Ne7 13. d6 Nf5
-14. Qd5 Bd7 { Score: 0.41 } ) 12. d5 Nd8 ( 12... Nb4 13. d6 Nd3 14. Re4 Nxc1
-15. Rxc1 Rb8 { Score: 0.34 } ) 13. dxe6 ( 13. d6 Nb7 14. Ne4 Nc5 15. Nd4 {
-Score: 0.34 } ) 13... Bxe6 14. Qd5 ( 14. Nd5 Rc8 15. Nd4 Qg6 16. Bf4 Bc5
-17. Nc7 Kf8 18. Nxa6 { Score: 0.75 } ) 14... Qxd5 15. Nxd5 Bd6 16. Bg5 (
-16. Nd4 Rb8 17. Bf4 Bxf4 18. Nxf4 Rb6 19. Ndxe6 Nxe6 20. Nxe6 { Score: 0.00 } )
-16... O-O ( 16... h6 17. Bd2 O-O 18. Bf4 { Score: -0.25 } ) 17. Rad1 Nc6 (
-17... Nb7 18. Be7 Bxe7 { Score: 0.00 } ) 18. Nd4 ( 18. Nb6 Bb4 19. Rxe6 fxe6
-20. Nxa8 Rxa8 { Score: 0.16 } ) 18... Bxd5 ( 18... Nxd4 19. Rxd4 h6 20. Ne7 Kh7
-21. Rxd6 hxg5 22. Nd5 { Score: -0.25 } ) 19. Nxc6 Bxh2+ ( 19... Rfe8 20. Rxe8
-Rxe8 21. h3 Re6 22. Nd4 Re4 { Score: -0.13 } ) 20. Kxh2 Bxc6 21. Rd6 Rfe8 (
-21... Rac8 { Score: -0.44 } ) 22. Rxe8+ ( 22. Rc1 Be4 23. Rc7 h6 24. Be3 Kf8 {
-Score: -0.41 } ) 22... Bxe8 23. a3 ( 23. Be3 h6 24. b3 Kh7 25. a3 g6 26. Bd4 {
-Score: -0.78 } ) 23... a5 ( 23... h6 24. Be3 Kh7 25. b3 f6 26. Bd4 Bf7 27. b4 {
-Score: -0.88 } ) 24. Kg3 ( 24. b3 h6 25. Rd8 Rxd8 26. Bxd8 a4 27. bxa4 bxa4 {
-Score: -0.81 } ) 24... a4 ( 24... h6 { Score: -0.91 } ) 25. Bc1 ( 25. Kh4 h6
-26. Be3 Kh7 27. Bd4 Rc8 28. g3 Bc6 { Score: -1.03 } ) 25... Rc8 ( 25... h6
-26. Be3 Kh7 27. Kh4 Rc8 28. Bd4 Bc6 29. f3 { Score: -1.09 } ) 26. Bd2 ( 26. Be3
-h6 27. Kh4 Kh7 28. Bd4 Bc6 29. f3 { Score: -1.13 } ) 26... Rc4 ( 26... Bc6
-27. Be3 h6 28. f3 Kh7 { Score: -1.16 } ) 27. Rd8 Re4 28. Bb4 ( 28. f4 { Score:
--0.88 } ) 28... f6 ( 28... h6 29. Kf3 Re6 30. Kg4 Kh7 31. f4 Re4 32. g3 {
-Score: -1.13 } ) 29. f4 ( 29. Kf3 Re6 30. Kg4 Kf7 31. Kh4 Re2 32. Rd2 { Score:
--0.91 } ) 29... Kf7 30. Kf3 ( 30. Rc8 Kg6 31. Kf3 { Score: -1.16 } ) 30... Bc6
-31. Rc8 ( 31. Kg3 Re2 32. Rd2 Rxd2 33. Bxd2 Ke6 34. Be3 { Score: -1.25 } )
-31... Rxb4+ 32. Rxc6 Rxb2 33. g4 ( 33. Rb6 { Score: -2.06 } ) 33... Rb3+
-34. Ke4 Rxa3 35. Rc7+ ( 35. f5 h6 36. Rc7 Kg8 37. Rb7 Rb3 38. Rd7 Rb4 39. Kf3 {
-Score: -3.28 } ) 35... Kg6 36. Rb7 ( 36. f5 Kh6 37. Rc2 Rb3 38. g5 Kh5 39. gxf6
-gxf6 40. Rh2 { Score: -3.34 } ) 36... Rb3 37. f5+ ( 37. Kd4 { Score: -3.44 } )
-37... Kh6 38. g5+ ( 38. Kd4 a3 39. Ra7 b4 40. Kc4 Rb2 41. Rb7 Rc2 { Score:
--3.59 } ) 38... fxg5 39. Rb6+ Kh5 40. Rb7 Rb4+ ( 40... Kg4 41. Rxg7 Rb4 42. Ke5
-Rf4 43. f6 h5 44. Ra7 h4 { Score: -4.09 } ) 41. Ke5 Rf4 ( 41... Kg4 42. Rxg7
-Rf4 43. f6 h5 44. Ra7 Rf5 45. Ke6 h4 { Score: -4.22 } ) 42. Rxb5 Kg4 43. Ke6
-Rxf5 ( 43... h5 44. Re5 h4 45. Re1 a3 46. Ra1 Rf3 47. Rg1 Kh5 { Score: -3.94 }
-) 44. Rxf5 1-0
-
-
-[Site "Dunfermline Club Championship"]
-[Date "1993.12.??"]
-[Round "10"]
-[White "Gill, Andy"]
-[Black "Petrie, George"]
-[Result "0-1"]
-
-1. e4 c5 2. Nf3 Nc6 3. Bc4 d6 ( 3... e6 4. Nc3 Nge7 5. d3 d5 6. Bb3 d4 7. Ne2
-e5 { Score: 0.09 } ) 4. O-O ( 4. c3 { Score: 0.03 } ) 4... e6 ( 4... g6 5. d4
-cxd4 6. Nxd4 Bg7 7. Be3 Nxd4 8. Bxd4 Nf6 { Score: -0.16 } ) 5. d3 ( 5. Bb5 Nf6
-6. d3 Bd7 7. Nc3 Be7 8. Bg5 O-O { Score: 0.00 } ) 5... Be7 ( 5... d5 6. Bb5 Nf6
-7. Ne5 Bd7 8. Nxd7 Qxd7 9. Bg5 { Score: 0.03 } ) 6. Nc3 Bd7 ( 6... Bf6 { Score:
-0.00 } ) 7. Bf4 ( 7. Re1 Nf6 8. Be3 O-O 9. a3 Rc8 10. Bf4 Nd4 11. Nxd4 { Score:
-0.06 } ) 7... a6 ( 7... Na5 8. Nd2 Nxc4 9. Nxc4 e5 10. Bg3 Be6 11. Ne3 { Score:
--0.06 } ) 8. d4 ( 8. a3 Nf6 9. Re1 O-O 10. Be3 e5 11. Nd5 Be6 12. Nxe7 { Score:
-0.06 } ) 8... cxd4 9. Ne2 e5 ( 9... Na5 { Score: -0.94 } ) 10. Bg3 Nf6 11. Bd5
-( 11. c3 Nxe4 12. cxd4 O-O 13. Bd5 Nxg3 { Score: -0.97 } ) 11... O-O (
-11... Nb4 12. c3 Nbxd5 13. exd5 d3 14. Nc1 e4 15. Nd2 { Score: -1.16 } ) 12. c4
-( 12. c3 dxc3 13. Nxc3 b6 14. a3 Qc7 15. b3 Be6 16. Bxe6 { Score: -0.63 } )
-12... Qb6 ( 12... Bg4 13. Qb3 Qc7 14. Rac1 Rac8 15. Qd3 b6 { Score: -1.13 } )
-13. Qd2 ( 13. b3 Bg4 14. Nc1 Rac8 15. Nd3 Nh5 16. a3 Nxg3 17. fxg3 { Score:
--1.22 } ) 13... Rac8 ( 13... Nb4 14. b3 Bg4 15. Rfd1 Nbxd5 { Score: -1.22 } )
-14. Bh4 ( 14. Rac1 { Score: -1.25 } ) 14... Nb4 ( 14... Bg4 15. Bg3 Nb4 16. b3
-Nbxd5 17. exd5 Bxf3 18. gxf3 { Score: -1.53 } ) 15. Nexd4 ( 15. Bxf6 Bxf6
-16. h3 Nxd5 17. cxd5 { Score: -1.44 } ) 15... Nbxd5 ( 15... exd4 16. b3 Bg4
-17. Qf4 Nd3 { Score: -3.34 } ) 16. Bxf6 ( 16. exd5 exd4 17. Rfe1 Bd8 18. b3 Ng4
-19. Bxd8 Rfxd8 20. Nxd4 { Score: -1.94 } ) 16... Nxf6 17. Ne2 ( 17. Nf5 Bxf5
-18. exf5 Rxc4 19. b3 Ne4 20. Qd5 Rb4 { Score: -4.75 } ) 17... Rxc4 18. b3 (
-18. Nc3 Rb4 19. b3 Nxe4 20. Nxe4 Rxe4 21. Rfd1 { Score: -5.13 } ) 18... Rxe4
-19. Nc3 ( 19. Ng3 Rb4 20. Rfe1 Bg4 21. Qd3 Rf4 22. Qe3 Qxe3 23. fxe3 { Score:
--5.38 } ) 19... Rg4 ( 19... Rf4 20. Qe3 Qc7 { Score: -5.34 } ) 20. Qd1 (
-20. Rae1 { Score: -5.41 } ) 20... Bc6 21. Na4 ( 21. Rc1 Rf4 22. Re1 Bxf3
-23. gxf3 Re8 24. a3 { Score: -5.66 } ) 21... Qb4 ( 21... Bxa4 22. bxa4 Qa5
-23. Qb3 Rb4 24. Qc2 Rxa4 25. Rfc1 { Score: -5.94 } ) 22. Rc1 ( 22. h3 Rf4
-23. Nb2 Bxf3 24. gxf3 Rd4 25. Nd3 Qc3 { Score: -5.81 } ) 22... Rxg2+ 23. Kxg2
-Qg4+ 24. Kh1 Bxf3+ 25. Qxf3 Qxf3+ 26. Kg1 Nh5 ( 26... Nd5 27. Rc4 b5 28. Rfc1
-bxc4 29. Rxc4 Bf6 { Score: -14.53 } ) 27. Rc3 Qd5 ( 27... Qg4 28. Kh1 b5
-29. Rg1 Qd4 30. Rh3 Nf4 31. Rhg3 bxa4 { Score: -12.00 } ) 28. Nb6 ( 28. h3 Nf4
-29. Rg3 Ne2 30. Kh2 Nxg3 31. Kxg3 Qd3 32. Kg2 { Score: -11.94 } ) 28... Qd4
-29. Rfc1 ( 29. Na4 b5 30. h3 Nf4 31. Kh2 bxa4 32. Rc7 Re8 { Score: -12.97 } )
-29... Qxb6 30. Rc8 ( 30. R1c2 d5 31. h3 Qg6 32. Kh2 Nf4 33. f3 b6 { Score:
--13.97 } ) 30... Nf4 31. R1c7 ( 31. R8c3 Ne2 32. Kf1 Nxc1 33. Rxc1 d5 34. h3
-Bc5 35. f3 { Score: -15.63 } ) 31... Bh4 ( 31... Nh3 32. Kh1 Qxf2 33. Rc4 d5
-34. Rc3 Qg1 { Score: -#4 } ) 32. Rc2 ( 32. Rxf8 Kxf8 33. Rc8 Ke7 34. Rc2 Qd4
-35. h3 Bxf2 36. Kh2 { Score: -18.41 } ) 32... Nd3 ( 32... Bxf2 33. Kf1 Qe3
-34. Rxf8 Kxf8 35. Rc8 Ke7 36. Rc7 Kd8 { Score: -19.53 } ) 33. Rxf8+ ( 33. Kf1
-Bxf2 34. Rxf8 Kxf8 35. Rc8 Ke7 36. Rg8 Bg3 37. Ke2 { Score: -14.78 } )
-33... Kxf8 0-1
-
-[Site "Dunfermline Club Championship"]
-[Date "1993.12.??"]
-[Round "11"]
-[White "Gill, Andy"]
-[Black "Horne, Peter"]
-[Result "0-1"]
-
-1. e4 e6 2. Nf3 Nc6 3. Bb5 a6 ( 3... d5 4. d3 dxe4 5. Bxc6 bxc6 6. dxe4 Qxd1
-7. Kxd1 { Score: 0.19 } ) 4. Ba4 ( 4. Bxc6 dxc6 5. O-O Nf6 6. Re1 Be7 7. d4 c5
-8. e5 { Score: 0.22 } ) 4... b5 5. Bb3 Bb7 ( 5... Na5 6. d3 Nxb3 7. axb3 Bb7
-8. O-O Bc5 9. Nc3 { Score: -0.13 } ) 6. d4 ( 6. c3 Nf6 7. d3 Be7 8. Be3 O-O
-9. Nbd2 d5 { Score: -0.09 } ) 6... Na5 7. Nbd2 ( 7. e5 Nxb3 8. axb3 c5 9. Bg5
-f6 10. Be3 cxd4 11. Bxd4 { Score: -0.38 } ) 7... Nf6 ( 7... Nxb3 8. axb3 c5
-9. O-O d5 10. exd5 Bxd5 { Score: -0.41 } ) 8. e5 Nd5 ( 8... Nxb3 9. Nxb3 Ne4
-10. O-O Be7 11. c3 O-O 12. Be3 d5 { Score: -0.19 } ) 9. O-O d6 ( 9... Nf4 {
-Score: -0.09 } ) 10. a4 ( 10. Bxd5 Bxd5 11. a4 dxe5 12. axb5 c5 13. bxa6 exd4 {
-Score: 0.09 } ) 10... b4 ( 10... dxe5 11. Bxd5 Qxd5 12. dxe5 c5 13. axb5 axb5
-14. b3 { Score: 0.06 } ) 11. Nc4 ( 11. Bxd5 Bxd5 12. c3 dxe5 13. Nxe5 Bd6
-14. cxb4 Bxb4 15. Ndf3 { Score: 0.03 } ) 11... Nxb3 12. cxb3 a5 ( 12... Rb8
-13. Qc2 Be7 14. Na5 c5 15. exd6 Qxd6 16. Nxb7 Rxb7 { Score: -0.34 } ) 13. Qe2 (
-13. Bg5 Be7 14. Bxe7 Qxe7 15. Re1 dxe5 { Score: -0.56 } ) 13... f6 ( 13... Be7
-14. Rd1 O-O 15. Be3 dxe5 16. dxe5 { Score: -0.63 } ) 14. exd6 ( 14. exf6 Bc8
-15. f7 Kxf7 16. Ng5 Ke7 17. Ne4 Qd7 18. Bg5 { Score: 0.47 } ) 14... cxd6 (
-14... Bxd6 15. Qxe6 Be7 16. Bd2 Ra6 17. Qf5 c5 18. dxc5 Bxc5 { Score: 0.03 } )
-15. Qxe6+ Qe7 ( 15... Be7 16. Re1 Ra6 17. Nh4 Nc7 18. Qxe7 Qxe7 19. Rxe7 Kxe7 {
-Score: 0.72 } ) 16. Qh3 ( 16. Nxd6 Kd8 17. Qxe7 Bxe7 18. Nxb7 Kc8 19. Nc5 Re8
-20. Re1 { Score: 4.66 } ) 16... Qf7 ( 16... Qc7 17. Re1 Be7 18. Qe6 Ra6 19. Bd2
-Qc8 20. Qxc8 Bxc8 { Score: 0.97 } ) 17. Re1+ Kd8 18. Bd2 Qg6 ( 18... g6 {
-Score: 0.97 } ) 19. Re2 ( 19. Rac1 Ra6 20. Ne3 Nxe3 21. Bxe3 d5 22. Bf4 Bd6 {
-Score: 0.88 } ) 19... Be7 ( 19... Ra6 20. Rae1 Be7 21. Qe6 Re8 22. Ne3 Nxe3
-23. Bxe3 Bxf3 { Score: 0.88 } ) 20. Rae1 ( 20. Nh4 Qh5 21. Rae1 Bc8 22. Qg3 Qg4
-23. Bf4 Nxf4 24. Qxg4 { Score: 1.06 } ) 20... Re8 ( 20... Bc8 21. Qh4 Bb7
-22. Bf4 Ba6 23. Qg3 { Score: 0.91 } ) 21. Nh4 ( 21. Nxd6 Bc8 22. Nh4 Qh5
-23. Qg3 Rg8 24. Nf3 Bg4 { Score: 2.06 } ) 21... Qh5 22. Nf5 ( 22. Nxd6 Ba6
-23. Re6 Bc8 24. g4 Bxe6 25. Rxe6 Nf4 26. Bxf4 { Score: 3.06 } ) 22... Qxh3
-23. gxh3 g6 ( 23... Bc6 24. Nxg7 Rg8 25. Bh6 Bd7 26. Nb6 { Score: 1.53 } )
-24. Ncxd6 ( 24. Nfxd6 Bc6 25. Nxe8 Kxe8 26. Re6 Bd7 27. Nd6 Kd8 28. Nf7 {
-Score: 3.41 } ) 24... gxf5 25. Nxe8 ( 25. Nxb7 Kd7 26. Nc5 Bxc5 27. dxc5 Rxe2 {
-Score: 1.66 } ) 25... Kxe8 26. Bh6 ( 26. f3 Kd7 27. Kf2 Rg8 28. Rd1 Bd6 29. Kf1
-Bc6 { Score: -0.16 } ) 26... Kf7 ( 26... Kd7 27. f3 Rg8 28. Kf2 Bd6 29. Rg1 Rg6
-30. Rxg6 hxg6 { Score: -0.47 } ) 27. Bf4 ( 27. f3 Rg8 28. Kf2 Bd6 29. Rg1 Rg6
-30. Rxg6 hxg6 31. Ke1 { Score: -0.41 } ) 27... Rg8+ 28. Kf1 Ba6 29. Bd2 Bd6
-30. f3 ( 30. Rc1 Bxh2 31. f3 Bg1 32. Rc4 Bxc4 33. bxc4 Bxd4 34. Rg2 { Score:
--3.00 } ) 30... Bxh2 31. Kf2 ( 31. Rc1 Bg1 32. Rc4 Bxc4 33. bxc4 Bxd4 34. Re1
-Ne7 { Score: -3.13 } ) 31... Bg3+ 32. Kf1 Bxe1 33. Bxe1 ( 33. Kxe1 Rg1 34. Kf2
-Rb1 35. Re1 Rxb2 36. Rd1 Nc3 37. Ke1 { Score: -4.84 } ) 33... Ne3+ ( 33... Re8
-34. Bg3 Rxe2 35. Kg1 Rxb2 36. Bd6 Rxb3 { Score: -8.31 } ) 34. Kf2 f4 (
-34... Nd1 35. Kf1 Re8 36. Kg1 Bxe2 37. f4 Rd8 38. Kg2 Rxd4 { Score: -7.81 } )
-35. Rxe3 fxe3+ 36. Kxe3 Re8+ 37. Kd2 Re2+ 38. Kd1 Rxb2 39. d5 ( 39. f4 Rxb3
-40. h4 Rd3 41. Kc1 Rxd4 42. Bg3 Rd3 43. Bf2 { Score: -6.09 } ) 39... Rxb3 0-1
-
-[Site "Dunfermline Club Championship"]
-[Date "1994.01.??"]
-[Round "12"]
-[White "Gill, Andy"]
-[Black "Easton, Brian"]
-[Result "1-0"]
-
-1. e4 Nf6 2. Nc3 e6 3. d4 d5 4. e5 Ne4 5. Nxe4 dxe4 6. Bc4 Nc6 7. Be3
-Bb4+ 8. c3 Be7 9. Ne2 Bg5 10. Qd2 Na5 11. Bxg5 Nxc4 12. Qf4 Qd5 13. b3
-Nb2 14. O-O b6 15. Ng3 Ba6 16. c4 Nd3 17. Qxe4 Qxe4 18. Nxe4 Bb7 19. f3
-O-O 20. Nf2 f6 21. exf6 gxf6 22. Bh6 Rf7 23. Nxd3 Rd8 24. Nf4 Re7 25.
-Rfe1 Kf7 26. Rad1 e5 27. dxe5 Rxd1 28. Rxd1 fxe5 29. Nd5 Rd7 30. f4 e4
-31. f5 c6 32. Nc3 c5 33. Rxd7+ Kf6 34. Rxb7 Kxf5 35. Rxh7 Kg6 36. Rh8
-1-0
-
-[Site "Wester-Hailes Congress"]
-[Date "1994.01.??"]
-[Round "13"]
-[White "Plant, George"]
-[Black "Gill, Andy"]
-[Result "1-0"]
-
-1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. d4 b5 6. Bb3 d6 7. Ng5 Qd7
-8. Bxf7+ Kd8 9. d5 Nb4 10. c3 Nxe4 11. Be6 Qe8 12. cxb4 Nxg5 13. Bxg5+
-Be7 14. Bxe7+ Qxe7 15. Bxc8 Rxc8 16. O-O c6 17. dxc6 Rxc6 18. Re1 h5
-19. Nc3 Rc4 20. a3 g5 21. Nd5 Qg7 22. Ne3 Rc7 23. Nf5 Qf6 24. Qxd6+
-Qxd6 25. Nxd6 Re7 26. Rxe5 Rxe5 27. Nf7+ Ke7 28. Nxe5 Rc8 29. Nd3 Kd6
-30. Kf1 h4 31. h3 Kd5 32. Ne1 Ke4 33. Nf3 Kf4 34. Nd4 Re8 35. Re1 Rxe1+
-36. Kxe1 Ke5 37. Nc2 Ke4 38. Ke2 Kf4 39. Kd3 Ke5 40. Ne3 Kf4 41. Nd5+
-Kf5 42. Nc7 1-0
-
-[Site "Wester-Hailes Congress"]
-[Date "1994.01.??"]
-[Round "14"]
-[White "Gill, Andy"]
-[Black "McIntee, C."]
-[Result "1-0"]
-
-1. e4 c5 2. Nf3 Nc6 3. Be2 Nf6 4. Nc3 e6 5. O-O d5 6. exd5 Nxd5 7. Nxd5
-Qxd5 8. c4 Qd8 9. Re1 h5 10. b3 f6 11. Bb2 h4 12. h3 Qc7 13. d4 Qf4
-14. d5 exd5 15. cxd5 Nd8 16. Bb5+ Kf7 17. Qc1 Qd6 18. Qe3 Be7 19. Qe4
-g5 20. Bd3 Ke8 21. Qg6+ Kd7 22. Bb5+ Kc7 23. Ne5 Qxd5 24. Rad1 Qg8 25.
-Bc4 Ne6 26. Qxg8 Rxg8 27. Bxe6 Bxe6 28. Nf3 Rad8 29. Rxd8 Rxd8 30. Rxe6
-Rd1+ 31. Kh2 Bd6+ 32. g3 f5 33. Be5 hxg3+ 34. fxg3 Bxe5 35. Rxe5 Ra1
-36. Rxc5+ Kb6 37. Rc2 g4 38. hxg4 fxg4 39. Ne5 Kb5 40. Nxg4 a5 41. Ne3
-Re1 42. Nc4 Re6 43. g4 Rh6+ 44. Kg3 Rg6 45. Rg2 a4 46. Ne5 Rg5 47.
-bxa4+ Kxa4 48. Kf4 Rg7 49. g5 b5 50. g6 b4 51. Kf5 Ka3 52. Kf6 Rg8 53.
-g7 1-0
-
-[Site "Wester-Hailes Congress"]
-[Date "1994.01.??"]
-[Round "15"]
-[White "Robertson, F."]
-[Black "Gill, Andy"]
-[Result "1-0"]
-
-1. d4 d5 2. Nf3 e6 3. Bf4 Be7 4. e3 Nf6 5. Bd3 b6 6. O-O O-O 7. Re1 Bb7
-8. Nbd2 c5 9. c3 Nc6 10. Ne5 Rc8 11. Ndf3 c4 12. Bc2 b5 13. b3 Qa5 14.
-b4 Qd8 15. a4 a6 16. axb5 axb5 17. Nxc6 Bxc6 18. Ne5 Bb7 19. Ra5 Qe8
-20. Ra7 Ba8 21. Ng4 Bc6 22. Be5 Qd8 23. Qf3 Ra8 24. Rxa8 Bxa8 25. Nxf6+
-Bxf6 26. e4 Bxe5 27. dxe5 dxe4 28. Bxe4 Bxe4 29. Qxe4 Qd3 30. Qxd3 cxd3
-31. Rd1 Rd8 32. f4 f5 33. Kf2 Kf8 34. Ke3 Ke7 35. Rxd3 Rxd3+ 36. Kxd3
-Kd7 37. h3 g6 38. Kd4 Kc6 39. g3 Kb6 40. g4 Kc6 41. c4 Kb6 42. c5+ Kc6
-43. Ke3 Kc7 44. Ke2 Kc6 45. Kf3 Kd5 46. gxf5 gxf5 47. h4 Kc4 1-0
-
-[Site "Wester-Hailes Congress"]
-[Date "1994.01.??"]
-[Round "16"]
-[White "Gill, Andy"]
-[Black "McKerrow, A."]
-[Result "0-1"]
-
-1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Nc3 b5 7. Bb3
-O-O 8. a3 d6 9. Re1 Rb8 10. d3 Bg4 11. h3 Bh5 12. Nd5 Nxd5 13. exd5 Nd4
-14. g4 Nxf3+ 15. Qxf3 Bg6 16. a4 b4 17. a5 Qc8 18. Ba4 f5 19. gxf5 Rxf5
-20. Qg4 Bh5 21. Qc4 Rf6 22. Bg5 Rg6 23. f4 h6 24. Rxe5 dxe5 25. d6+ Qe6
-26. Qxe6+ Rxe6 27. Bb3 hxg5 28. dxe7 Bf7 29. fxg5 Rg6 30. Rf1 Bxb3 31.
-cxb3 Rxg5+ 32. Kh2 Re8 33. h4 Rg4 34. Kh3 Rf4 35. Rxf4 exf4 36. Kg4
-Rxe7 37. Kxf4 Rd7 38. Ke4 Rd6 0-1
-
-[Site "Wester-Hailes Congress"]
-[Date "1994.01.??"]
-[Round "17"]
-[White "McCluskey, S."]
-[Black "Gill, Andy"]
-[Result "1-0"]
-
-1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Bxc6 dxc6 5. d3 Bd6 6. O-O Bg4 7. h3
-Bh5 8. Be3 Qe7 9. Nc3 Nf6 10. Re1 O-O-O 11. Nb1 Bb4 12. c3 Ba5 13. b4
-Bb6 14. a3 Nxe4 15. Bxb6 Bxf3 16. Qxf3 Ng5 17. Qe3 cxb6 18. d4 Rhe8
-19. h4 Ne6 20. g3 exd4 21. cxd4 Rxd4 22. Nc3 c5 23. Rac1 Red8 24. bxc5
-bxc5 25. Ne4 R8d7 26. Nxc5 Rc7 27. Nxe6 Qxe6 28. Qxd4 Rxc1 29. Rxc1+
-Kb8 30. Qxg7 1-0
-
-[Site "Dunferline Club Knockout"]
-[Date "1994.01.??"]
-[Round "18"]
-[White "Gill, Andy"]
-[Black "Brown, Rab"]
-[Result "1-0"]
-
-1. e4 e5 2. Nf3 d6 3. d4 Nc6 4. dxe5 Nxe5 5. Nxe5 dxe5 6. Qxd8+ Kxd8
-7. Bc4 Bb4+ 8. Nc3 Bxc3+ 9. bxc3 Be6 10. Bxe6 fxe6 11. O-O Nf6 12. Bb2
-Nxe4 13. c4 Nd2 14. Rfd1 Ke7 15. Rxd2 c5 16. Bxe5 Rhg8 17. Rad1 g5 18.
-Rd7+ Ke8 19. Rxb7 g4 20. Rxh7 Rd8 21. Rxd8+ Kxd8 22. Rh8 Rxh8 23. Bxh8
-Kd7 24. f3 gxf3 25. gxf3 Ke7 26. Be5 Kd7 27. Kg2 Ke7 28. Kg3 Kf7 29.
-Bd6 Kf6 30. Bxc5 a5 31. Kf4 e5+ 32. Ke4 Ke6 33. f4 a4 34. fxe5 a3 35.
-Bxa3 Kd7 36. Kd5 Ke8 37. Ke6 Kd8 38. Kf7 Kd7 39. e6+ Kc6 40. e7 Kc7
-41. e8=Q Kb7 42. Qe6 Kc7 43. Qd6+ Kb7 44. Ke7 Ka7 45. Qb4 Ka8 46. Kd7
-Ka7 47. Kc7 Ka6 48. Qb6# 1-0
-
-[Site "Dunfermline C vs Grangemouth B"]
-[Date "1994.01.??"]
-[Round "19"]
-[White "Gill, Andy"]
-[Black "Patterson, Dick"]
-[Result "0-1"]
-
-1. e4 c5 2. Nf3 Nc6 3. Be2 e6 4. b3 a6 5. O-O b5 6. Bb2 Nf6 7. e5 Nd5
-8. d4 Bb7 9. c4 Nf4 10. cxb5 Nxe2+ 11. Qxe2 axb5 12. Re1 cxd4 13. Nxd4
-Nxd4 14. Bxd4 Qg5 15. g3 Rc8 16. f4 Qg6 17. Qxb5 Bc6 18. Qe2 Be7 19. a4
-O-O 20. a5 f6 21. exf6 Bxf6 22. Bxf6 Rxf6 23. b4 Rxf4 24. Qd2 Rf3 25.
-Rf1 Rxf1+ 26. Kxf1 Qf5+ 27. Qf4 Qd3+ 28. Ke1 Rf8 29. Qxf8+ Kxf8 30. a6
-Qd4 31. Ke2 Qxa1 32. Nd2 Qxa6+ 33. Ke3 Qa3+ 0-1
-
-[Site "Dunfermline Club Championship"]
-[Date "1994.01.??"]
-[Round "20"]
-[White "Mitchell, Ian"]
-[Black "Gill, Andy"]
-[Result "1-0"]
-[WhiteElo "1660"]
-
-1. e4 e5 2. f4 exf4 3. Nf3 Nc6 4. d4 Nf6 5. Bd3 d5 6. e5 Ne4 7. O-O g5
-8. c3 Qe7 9. Nfd2 Bf5 10. Qe2 Nxd2 11. Nxd2 Bxd3 12. Qxd3 O-O-O 13. a4
-Rg8 14. a5 a6 15. b4 h6 16. b5 Nb8 17. Nb3 axb5 18. Qxb5 Qd7 19. Qd3 f6
-20. exf6 Bd6 21. Bd2 Qg4 22. a6 Nxa6 23. Rxa6 bxa6 24. Qxa6+ Kd7 25.
-Qb5+ Ke6 26. c4 f3 27. Rxf3 Rb8 28. Qxd5+ Kd7 29. Nc5+ Kd8 30. Qxg8+
-1-0
-
-[Site "Dunfermline Club Championship"]
-[Date "1994.02.??"]
-[Round "21"]
-[White "Gill, Andy"]
-[Black "Burtwistle, Paul"]
-[Result "0-1"]
-
-1. e4 c5 2. Nf3 e6 3. Be2 Nc6 4. O-O Nf6 5. Nc3 d5 6. e5 Nd7 7. Re1
-Ndxe5 8. Nxe5 Nxe5 9. Bb5+ Nc6 10. d4 a6 11. Bxc6+ bxc6 12. Be3 cxd4
-13. Bxd4 c5 14. Be5 Bb7 15. Qd2 f6 16. Bc7 Qxc7 17. Rxe6+ Kf7 18. Rae1
-d4 19. Nd1 Bd6 20. f4 Rhe8 21. f5 Bd5 22. Rxe8 Rxe8 23. c3 Rxe1+ 24.
-Qxe1 Bxh2+ 25. Kh1 Be5 26. cxd4 cxd4 27. Qe2 Qc4 28. Qh5+ Kf8 29. Kg1
-Qc2 0-1
-
-[Site "Dunfermline Club Knockout"]
-[Date "1994.02.??"]
-[Round "22"]
-[White "Gill, Andy"]
-[Black "O'Neill, Jim"]
-[Result "0-1"]
-[BlackElo "1875"]
-
-1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Bd3 a6 6. O-O e5 7. Nf3
-Bg4 8. Nc3 Nbd7 9. Re1 Rc8 10. Be3 b5 11. Nd5 Nxd5 12. exd5 Nf6 13. Bg5
-Be7 14. Bxf6 Bxf6 15. Be4 O-O 16. c3 Bh4 17. Qc2 f5 18. Nxh4 Qxh4 19.
-g3 Qh5 20. Bg2 Rf6 21. f3 Bxf3 22. Bxf3 Qxf3 23. Rad1 f4 24. gxf4 Rg6+
-0-1
-
-[Site "Dunfermline Club Championship"]
-[Date "1994.02.??"]
-[Round "23"]
-[White "Gill, Andy"]
-[Black "Bell, Bill"]
-[Result "1-0"]
-
-1. e4 e6 2. d4 d5 3. Nf3 dxe4 4. Nfd2 Qxd4 5. c3 Qd5 6. Be2 e3 7. Nf3
-Qxd1+ 8. Bxd1 exf2+ 9. Kxf2 Nc6 10. Be3 Bd7 11. Re1 h6 12. Nbd2 O-O-O
-13. Ba4 Kb8 14. Rad1 Bd6 15. b4 a6 16. Nc4 Be7 17. Nfe5 Be8 18. Rxd8+
-Bxd8 19. Bxc6 Bxc6 20. Nxf7 Rh7 21. Nxd8 Bd5 22. Nd2 g5 23. Rd1 Kc8
-24. Nb3 Rd7 25. Nxb7 Bxb7 26. Rxd7 Kxd7 27. Nc5+ Kc6 28. Nxe6 Nf6 29.
-Nd8+ Kd7 30. Nxb7 Ne4+ 31. Kf3 Nxc3 32. Nc5+ Kc6 33. Nxa6 Nxa2 34. Bd2
-Kb6 35. Nc5 Kc6 36. Nd3 Kb5 37. Ke4 Kc4 38. g3 Kb3 39. h4 gxh4 40. gxh4
-Nc3+ 41. Bxc3 Kxc3 42. h5 Kc4 43. Ne5+ Kxb4 44. Kd5 c5 45. Nd3+ Kb5
-46. Nxc5 Kb6 47. Ne6 Kb7 48. Nf8 Kc7 49. Ke6 Kd8 50. Kf7 Kc8 51. Kg6
-Kd8 52. Kxh6 Ke8 53. Kg7 1-0
-
-[Site "Dunfermline Club Championship"]
-[Date "1994.02.??"]
-[Round "24"]
-[White "MacArthur, John"]
-[Black "Gill, Andy"]
-[Result "1-0"]
-[WhiteElo "1725"]
-
-1. d4 e6 2. Nf3 Nf6 3. c4 d5 4. Nc3 Nc6 5. e3 Be7 6. Be2 O-O 7. O-O Qd6
-8. c5 Qd7 9. Ne5 Nxe5 10. dxe5 Ne4 11. Nxe4 dxe4 12. Qc2 Qc6 13. b4 Rd8
-14. Bb2 a5 15. a3 axb4 16. axb4 Rxa1 17. Rxa1 b6 18. Bd4 bxc5 19. bxc5
-Bb7 20. Ra5 Ra8 21. Bb5 Qd5 22. Qa4 Rxa5 23. Qxa5 Bxc5 24. Qxc7 Bf8
-25. Be8 h6 26. Qxf7+ Kh7 27. Qxf8 Bc6 1-0
-
-[Site "Dunfermline Club Championship"]
-[Date "1994.02.??"]
-[Round "25"]
-[White "Sneddon, Ian"]
-[Black "Gill, Andy"]
-[Result "1-0"]
-[WhiteElo "1685"]
-
-1. c4 e5 2. Nc3 Nf6 3. Nf3 Nc6 4. g3 d5 5. cxd5 Nxd5 6. Bg2 Be6 7. O-O
-Bb4 8. Ne4 Qd7 9. d4 exd4 10. Nxd4 O-O-O 11. Nxe6 Qxe6 12. Qc2 h6 13.
-Rd1 f5 14. Nc5 Bxc5 15. Qxc5 Nde7 16. Be3 Rxd1+ 17. Rxd1 Rd8 18. Rxd8+
-Kxd8 19. b3 a6 20. Qc3 Qe5 21. Qxe5 Nxe5 22. Bxb7 N7c6 23. Bf4 Na5 24.
-Bxe5 Nxb7 25. Bxg7 h5 26. Kg2 Nd6 27. f3 Ne8 28. Be5 c6 29. Kh3 Ke7
-30. Kh4 Nf6 31. Bxf6+ Kxf6 32. Kxh5 c5 33. g4 f4 34. g5+ Kg7 35. Kg4
-1-0
-
-[Site "Dunfermline Club Championship"]
-[Date "1994.03.??"]
-[Round "26"]
-[White "Gill, Andy"]
-[Black "Connally, Paul"]
-[Result "0-1"]
-[ECO "B70"]
-
-1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 g6 5. Nc3 Nf6 6. Bd3 Bg7 7. O-O
-O-O 8. f4 Nc6 9. Nxc6 bxc6 10. Kh1 Rb8 11. Qe1 Ng4 12. h3 Nf6 13. b3 e5
-14. fxe5 Nh5 15. Bb2 dxe5 16. Rf3 a5 17. g4 Nf4 18. Rd1 Qg5 19. Bc1
-Bxg4 20. Bxf4 Bxf3+ 0-1
-
-[Site "Glenrothes Congress"]
-[Date "1994.03.??"]
-[Round "27"]
-[White "Hunt, Tom"]
-[Black "Gill, Andy"]
-[Result "1/2-1/2"]
-
-1. Nf3 Nc6 2. g3 e5 3. Nc3 d5 4. d3 Be6 5. Bg2 Qd7 6. Ng5 d4 7. Nce4
-Bf5 8. a3 Be7 9. O-O Bxg5 10. Nxg5 f6 11. Ne4 Bh3 12. Nc5 Qc8 13. Bxh3
-Qxh3 14. Nxb7 Rb8 15. Nc5 h5 16. e4 g5 17. Qf3 g4 18. Qf5 Kf7 19. Bg5
-Nce7 20. Qe6+ Kg6 21. f4 exf4 22. Rxf4 Kxg5 23. Raf1 h4 24. Qf7 hxg3
-25. Ne6+ Kh4 26. hxg3+ Qxg3+ 1/2-1/2
-
-[Site "Glenrothes Congress"]
-[Date "1994.03.??"]
-[Round "28"]
-[White "Gill, Andy"]
-[Black "Husband, Dan"]
-[Result "1-0"]
-
-1. e4 c5 2. Nf3 Nc6 3. d4 Nxd4 4. Nxd4 cxd4 5. Qxd4 e6 6. Nc3 Qb6 7.
-Qxb6 axb6 8. Bb5 Bc5 9. O-O Nf6 10. Be3 O-O 11. Rfe1 d6 12. a4 Bd7 13.
-Bg5 Bc6 14. Bxf6 gxf6 15. Rad1 Kh8 16. Rd3 Rad8 17. Rh3 Rg8 18. Bd3 Rg7
-19. Nb5 Bxb5 20. axb5 Rdg8 21. Rg3 Rxg3 22. hxg3 h6 23. Kf1 Kg7 24. c3
-d5 25. exd5 exd5 26. Ra1 d4 27. Ra7 dxc3 28. bxc3 Rd8 29. Be4 Rd1+ 30.
-Ke2 Rc1 31. Rxb7 Rxc3 32. Kf1 Rb3 33. Rxf7+ Kh8 34. Rxf6 Rxb5 35. Rxh6+
-Kg7 36. Rg6+ Kh7 37. Rxb6+ 1-0
-
-[Site "Glenrothes Congress"]
-[Date "1994.03.??"]
-[Round "29"]
-[White "Chance, Keith"]
-[Black "Gill, Andy"]
-[Result "1/2-1/2"]
-
-1. Nf3 Nc6 2. e4 e5 3. d4 exd4 4. Nxd4 d6 5. Nxc6 bxc6 6. Bd3 Bb7 7.
-O-O Nf6 8. Re1 Be7 9. e5 dxe5 10. Rxe5 O-O 11. h3 Re8 12. Re1 Qd7 13.
-Bg5 Rad8 14. Bxf6 Bxf6 15. Rxe8+ Qxe8 16. Nc3 Ba6 17. Qe1 Qxe1+ 18.
-Rxe1 Bxd3 19. cxd3 g6 20. Rd1 Rb8 21. Ne4 Bxb2 22. Rb1 a5 23. Nc3 Rb4
-24. Nd1 Ba3 25. Rxb4 Bxb4 26. Kf1 f5 27. Nb2 Kf7 28. Nc4 Ke6 29. Ke2
-Kd5 30. a3 Bc5 31. Nxa5 Bxa3 32. Nc4 Bc5 33. f3 h5 34. g4 hxg4 35. hxg4
-fxg4 36. fxg4 Ke6 37. Kf3 Bd6 38. Ke4 g5 39. Na5 c5 40. Nc4 Bf4 41. Na5
-Bd2 42. Nc4 Bb4 43. Ne5 Bd2 44. Nf3 Bc1 45. Ne5 Bf4 46. Ng6 Bg3 47.
-Nf8+ Kd6 48. Nh7 Bf4 49. Kf5 Kd5 50. Nxg5 Bxg5 51. Kxg5 Kd4 52. Kf5
-Kxd3 53. g5 c4 54. g6 c3 55. g7 c2 56. g8=Q c1=Q 57. Qd5+ Ke2 58. Qg2+
-Kd1 59. Qg1+ 1/2-1/2
-
-[Site "Glenrothes Congress"]
-[Date "1994.03.??"]
-[Round "30"]
-[White "Gill, Andy"]
-[Black "King, Jim"]
-[Result "1/2-1/2"]
-
-1. e4 c5 2. Nf3 Nc6 3. d4 cxd4 4. Nxd4 d6 5. Bb5 Qc7 6. O-O a6 7. Ba4
-b5 8. Bb3 Nf6 9. Re1 e6 10. Bg5 Be7 11. c3 O-O 12. Nd2 Bb7 13. Qe2 Rfe8
-14. Rac1 d5 15. Bc2 Rac8 16. e5 Nd7 17. Bxe7 Rxe7 18. N2f3 h6 19. Qd3
-g6 20. Qe3 Kg7 21. Nh4 Ncxe5 22. b3 Qxc3 23. Qxc3 Rxc3 24. Bb1 b4 25.
-Rxc3 bxc3 26. Rc1 g5 27. Nhf3 Nxf3+ 28. Nxf3 g4 29. Nd4 e5 30. Nf5+ Kf6
-31. Nxe7 Kxe7 32. Rxc3 Kd6 33. h3 Nf6 34. hxg4 Nxg4 35. Bf5 Nf6 36. Bc8
-d4 37. Rc4 Bd5 38. Rc2 a5 39. f3 Nh5 40. Ba6 Nf4 41. Rd2 f6 42. Bd3 Bc6
-43. Kf2 h5 44. g3 Ne6 45. a4 Be8 46. Bb5 Bg6 1/2-1/2
-
-[Site "Glenrothes Congress"]
-[Date "1994.03.??"]
-[Round "31"]
-[White "Gourley, R."]
-[Black "Gill, Andy"]
-[Result "1-0"]
-
-1. Nf3 Nc6 2. d4 e6 3. c4 d5 4. Nc3 Bb4 5. e3 Nf6 6. Bd2 O-O 7. Ne5
-Nxe5 8. dxe5 Ne4 9. Nxe4 dxe4 10. Bxb4 c5 11. Bxc5 Qa5+ 12. b4 Rd8 13.
-bxa5 Rxd1+ 14. Rxd1 h6 15. Rd8+ Kh7 16. Be7 b6 17. axb6 axb6 1-0
-
-[Site "Dunfermline Club Championship"]
-[Date "1994.03.??"]
-[Round "32"]
-[White "Gill, Andy"]
-[Black "Glynis, Grant"]
-[Result "1-0"]
-
-1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Bc4 Nc6 7. Nxc6
-bxc6 8. Be3 e6 9. O-O Be7 10. Bb3 O-O 11. Qe2 Bb7 12. Rad1 Qc7 13. f4
-e5 14. Kh1 Rfd8 15. Qf3 Qc8 16. fxe5 dxe5 17. Qg3 Rxd1 18. Nxd1 Qg4
-19. Qxe5 Qxe4 20. Qxe4 Nxe4 21. Rxf7 Nd6 22. Rxe7+ Kh8 23. Re5 Rf8 24.
-Kg1 h6 25. Bc5 Rf6 26. c3 a5 27. g3 Ba6 28. Bc2 g5 29. Bd4 Kg8 30. Rxa5
-Rf1+ 31. Kg2 Rf8 32. Rxa6 Nc4 33. Rxc6 Na5 34. Rxh6 Rf7 35. Rh8# 1-0
-
-[Site "Dunfermline Club Championship"]
-[Date "1994.03.??"]
-[Round "33"]
-[White "Welshman, Alistair"]
-[Black "Gill, Andy"]
-[Result "0-1"]
-[ECO "B20"]
-
-1. e4 c5 2. Bc4 d6 3. Nc3 Nf6 4. Nf3 e6 5. O-O Be7 6. d3 O-O 7. Bg5 Nc6
-8. Bxf6 Bxf6 9. Bb5 Bd7 10. Bxc6 Bxc6 11. Qe2 Re8 12. Rae1 Bxc3 13.
-bxc3 Qa5 14. e5 d5 15. d4 Bb5 16. Qe3 Bxf1 17. Rxf1 cxd4 18. Qxd4 Rac8
-19. Qb4 Qxb4 20. cxb4 Rxc2 21. Ra1 Rec8 22. Kf1 Rc1+ 23. Rxc1 Rxc1+
-24. Ke2 Rc2+ 25. Nd2 Rxa2 26. g4 Rb2 0-1
-
-[Site "Dunfermline Club Championship"]
-[Date "1994.03.??"]
-[Round "34"]
-[White "Taylor, Robin"]
-[Black "Gill, Andy"]
-[Result "1-0"]
-[ECO "C02"]
-[WhiteElo "1610"]
-
-1. d4 e6 2. e4 d5 3. e5 c5 4. c3 Nc6 5. Nf3 Bd7 6. Bf4 cxd4 7. cxd4
-Bb4+ 8. Bd2 Bxd2+ 9. Qxd2 Nge7 10. Nc3 a6 11. a3 Qc7 12. Bd3 O-O-O 13.
-O-O Rdf8 14. b4 f6 15. b5 Nxd4 16. Nxd4 Qxe5 17. bxa6 Qxd4 18. axb7+
-Kb8 19. Ne2 Qa7 20. Qb4 Nf5 21. Bxf5 exf5 22. Qd6+ Kxb7 23. Rab1+ Kc8
-24. Rfc1+ Kd8 25. Rb8+ Qxb8 26. Qxb8+ Ke7 27. Qb4+ Kf7 28. f4 Rc8 29.
-Rxc8 Rxc8 30. Qd6 Be6 31. Nd4 Rc1+ 32. Kf2 Rd1 33. Qxe6+ Kf8 34. Nxf5
-Rd2+ 35. Ke3 1-0
-
-[Site "Dunfermline C vs Stirling A"]
-[Date "1994.03.??"]
-[Round "35"]
-[White "Smith, Steve"]
-[Black "Gill, Andy"]
-[Result "1-0"]
-[ECO "B92"]
-[WhiteElo "1745"]
-
-1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Be2 e5 7. Nb3
-Be7 8. O-O O-O 9. a4 Be6 10. f4 Bxb3 11. cxb3 Nc6 12. Be3 Qd7 13. Bc4
-Rad8 14. f5 Kh8 15. Qf3 Nb4 16. Rfd1 Nc2 17. Rac1 Nxe3 18. Qxe3 Qc6
-19. Nd5 Nxd5 20. Bxd5 Qd7 21. Qb6 Rb8 22. Rc7 Bd8 23. Rxd7 Bxb6+ 24.
-Kf1 f6 25. Bxb7 Bd4 26. Rc1 Bxb2 27. Rcc7 Rg8 28. Bxa6 h5 29. Bc4 Rgc8
-30. Rxg7 Rxc7 31. Rxc7 Bd4 32. Rf7 Rg8 33. Rxf6 Rg4 34. Bd5 Rf4+ 35.
-Ke1 Bc3+ 36. Ke2 Bd4 37. Rh6+ Kg7 38. Rxh5 Rf2+ 39. Kd3 Rxg2 40. Kc4
-Bg1 41. h4 Rc2+ 42. Kd3 Rg2 43. Rg5+ Rxg5 44. hxg5 Bb6 45. Kc4 Bd8 46.
-f6+ Kg6 47. f7 Be7 1-0
-
-[Site "Dunfermline Club Championship"]
-[Date "1994.04.??"]
-[Round "36"]
-[White "Gill, Andy"]
-[Black "Bill, Phillips"]
-[Result "0-1"]
-[ECO "C10"]
-
-1. e4 e6 2. d4 d5 3. Nc3 c5 4. e5 Nc6 5. Nf3 Qb6 6. Bb5 Bd7 7. Bxc6
-Bxc6 8. O-O Ne7 9. dxc5 Qxc5 10. Be3 Qa5 11. Qd3 Nf5 12. Nd4 Nxe3 13.
-Nxc6 bxc6 14. Qxe3 Bc5 15. Qd3 O-O 16. a3 Qc7 17. b4 Bb6 18. Rfe1 a6
-19. Na4 Rfb8 20. Nxb6 Rxb6 21. c4 dxc4 22. Qxc4 Rb5 23. Qe4 Rd5 24.
-Rad1 Rad8 25. Rxd5 cxd5 26. Qd4 Rc8 27. f4 g6 28. Re3 h5 29. Kf2 Qc2+
-30. Kf3 Rc4 31. Qd3 Qc1 32. Qe2 d4 33. Rd3 Rc3 34. Ke4 Rxa3 35. Rxa3
-Qxa3 36. Qc4 Qe3# 0-1
-
-[Site "Edinburgh Congress"]
-[Date "1994.04.??"]
-[Round "37"]
-[White "Gill, Andy"]
-[Black "Watt, Andrew"]
-[Result "0-1"]
-[ECO "C97"]
-
-1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 Nf6 5. O-O Be7 6. Re1 b5 7. Bb3 d6
-8. c3 O-O 9. h3 Na5 10. Bc2 c5 11. d4 Qc7 12. b4 cxb4 13. cxb4 Nc4 14.
-Nbd2 Bb7 15. Nxc4 Qxc4 16. dxe5 dxe5 17. a3 Rac8 18. Bd3 Qc3 19. Bg5
-Rfd8 20. Re3 Bxe4 21. Rc1 Qxc1 22. Qxc1 Rxc1+ 23. Re1 Rxe1+ 24. Nxe1
-Bxd3 25. Nf3 Be4 26. Nxe5 Rd1+ 27. Kh2 Bd6 28. f4 h6 29. Bh4 g5 30. Bg3
-Bxe5 31. fxe5 Nh5 32. e6 Nxg3 33. e7 Nf1+ 34. Kg1 Bc6 35. Kf2 f6 36.
-Ke2 Ra1 37. Kd3 Kf7 0-1
-
-[Site "Edinburgh Congress"]
-[Date "1994.04.??"]
-[Round "38"]
-[White "Milne, Jake"]
-[Black "Gill, Andy"]
-[Result "0-1"]
-[ECO "B50"]
-
-1. e4 c5 2. Nf3 d6 3. Bc4 e6 4. d3 Nf6 5. a3 Nc6 6. Nc3 Be7 7. O-O O-O
-8. Be3 b6 9. h3 Bb7 10. Ne2 d5 11. exd5 exd5 12. Ba2 Re8 13. c3 Qc7
-14. Bf4 Bd6 15. Bxd6 Qxd6 16. d4 cxd4 17. Nexd4 Nxd4 18. Nxd4 Rad8 19.
-Qd2 Ba6 20. Qg5 Re5 21. Nf5 Rxf5 22. Qxf5 Bxf1 23. Rxf1 g6 24. Qf3 Kg7
-25. Rd1 Qe5 26. g3 a5 27. Kg2 h5 28. h4 Rd6 29. Bb1 d4 30. Qd3 Qd5+
-31. Qf3 Qb3 32. Qe2 Qd5+ 33. f3 Qe6 34. Qxe6 Rxe6 35. Be4 dxc3 36. bxc3
-Nxe4 37. fxe4 Rxe4 38. Rd6 Re2+ 39. Kf3 Rb2 40. Rd3 a4 41. Ke4 f5+ 42.
-Kd5 Re2 43. c4 Re8 44. Kc6 Rc8+ 45. Kxb6 Rxc4 46. Kb5 Rg4 47. Rd7+ Kf6
-48. Ra7 f4 49. gxf4 Rxf4 50. Rxa4 Rxa4 51. Kxa4 g5 52. hxg5+ Kxg5 53.
-Kb5 h4 54. a4 h3 55. a5 h2 56. a6 h1=Q 57. Kb6 Qb1+ 58. Ka7 Kf5 59. Ka8
-Qe4+ 60. Kb8 Qe8+ 61. Kb7 Qd7+ 62. Kb6 Qd8+ 63. Kb7 Qd5+ 64. Kb6 Qa8
-65. Ka5 Ke5 66. Kb6 Kd5 67. Ka5 Kc5 68. Ka4 Qxa6+ 69. Kb3 Qc4+ 70. Ka3
-Qb5 71. Ka2 Kc4 72. Ka1 Kc3 0-1
-
-[Site "Edinburgh Congress"]
-[Date "1994.04.??"]
-[Round "39"]
-[White "Gill, Andy"]
-[Black "Bourke, John"]
-[Result "0-1"]
-[ECO "C54"]
-
-1. e4 e5 2. Nf3 Nc6 3. Bc4 Bc5 4. c3 Nf6 5. d4 exd4 6. cxd4 Bb4+ 7. Bd2
-Nxe4 8. Bxb4 Nxb4 9. Bxf7+ Kxf7 10. Qb3+ d5 11. Qxb4 Re8 12. O-O Kg8
-13. Nc3 b6 14. Rfe1 Bf5 15. Qb3 c6 16. Rac1 Qd6 17. Re3 Nxc3 18. Qxc3
-Rxe3 19. Qxe3 Rc8 20. Re1 h6 21. Qe7 Qxe7 22. Rxe7 a5 23. Rb7 b5 24.
-Ne5 c5 25. Rxb5 cxd4 26. f4 Be4 27. Rxa5 Rc1+ 28. Kf2 Rc2+ 29. Kg3
-Rxg2+ 30. Kh3 Rxb2 31. Ra3 Rd2 32. Kg3 Rg2+ 33. Kh3 Rd2 34. Kg3 d3 35.
-Nf3 Rb2 36. h4 d2 37. Nxd2 Rxd2 38. Kg4 Rd3 39. Rxd3 Bxd3 40. Kf3 Bc4
-41. a4 Kf7 42. Ke3 Ke6 43. Kd4 Kf5 44. a5 Kxf4 45. a6 Bxa6 46. Kxd5 Kg4
-47. Ke6 Kxh4 48. Kf7 g5 0-1
-
-[Site "Edinburgh Congress"]
-[Date "1994.04.??"]
-[Round "40"]
-[White "Gill, Andy"]
-[Black "King, David"]
-[Result "1-0"]
-[ECO "C70"]
-
-1. e4 e5 2. Nf3 Nc6 3. Bb5 a6 4. Ba4 b5 5. Bb3 Bc5 6. O-O Nge7 7. c3 d6
-8. d4 exd4 9. cxd4 Ba7 10. Be3 Na5 11. Bc2 O-O 12. Nbd2 f5 13. Bg5 Qe8
-14. Re1 h6 15. Bxe7 Qxe7 16. exf5 Qf6 17. Be4 Bb7 18. Bxb7 Nxb7 19.
-Qb3+ Kh8 20. Qd5 Rab8 21. Rac1 Bb6 22. g4 Nd8 23. Ne4 Qf7 24. Qxf7 Rxf7
-25. h3 {At this point the score sheet goes wrong. Black eventually
-looses on time!} 1-0
-
-[Site "Edinburgh Congress"]
-[Date "1994.04.??"]
-[Round "41"]
-[White "Tait, C."]
-[Black "Gill, Andy"]
-[Result "1-0"]
-[ECO "D20"]
-
-1. d4 d5 2. c4 dxc4 3. e4 c6 4. Bxc4 e6 ( 4... Nf6 5. Nc3 e5 6. Be3 exd4
-7. Bxd4 Bd6 8. f3 { Score: 0.22 } ) 5. Nf3 Bb4+ ( 5... Nf6 6. Qe2 Bb4 7. Bd2
-Qb6 8. Nc3 O-O 9. O-O Nbd7 { Score: 0.25 } ) 6. Bd2 Bxd2+ 7. Qxd2 ( 7. Nbxd2
-Nf6 8. O-O O-O 9. Rc1 Nbd7 10. Qe2 c5 11. Bd3 { Score: 0.41 } ) 7... Nf6 8. Nc3
-O-O ( 8... Nbd7 9. O-O O-O 10. Rad1 Qe7 11. Rfe1 e5 { Score: 0.38 } ) 9. O-O b6
-10. e5 ( 10. Rac1 Bb7 11. Rfd1 c5 12. dxc5 Qxd2 13. Rxd2 bxc5 { Score: 0.28 } )
-10... Nfd7 ( 10... Nd5 11. Rfd1 Ba6 12. Bxa6 Nxa6 13. Rac1 Nac7 14. Nxd5 cxd5 {
-Score: 0.28 } ) 11. Rfd1 Ba6 ( 11... Bb7 12. Ne4 c5 13. d5 b5 14. Bxb5 Bxd5
-15. Qe3 Qe7 { Score: 0.34 } ) 12. Bb3 ( 12. Bxa6 Nxa6 13. Rac1 Qe7 14. Ne4 c5
-15. Qe2 Nb4 16. dxc5 { Score: 0.34 } ) 12... Re8 ( 12... h6 13. Rac1 Qe7
-14. Ne4 Rd8 15. Nd6 Nf6 16. Qe3 { Score: 0.31 } ) 13. Ne4 c5 ( 13... h6 14. Nd6
-Re7 15. Rac1 c5 16. Bc2 Nc6 17. Be4 Qc7 { Score: 0.44 } ) 14. Nd6 ( 14. dxc5
-Bb7 15. Qe3 Re7 16. Nd6 Bc6 17. Ne4 bxc5 18. Nxc5 { Score: 1.25 } ) 14... Rf8 (
-14... Re7 15. Nxf7 Rxf7 16. Bxe6 cxd4 17. Bd5 Nc6 18. Bxc6 { Score: 0.44 } )
-15. d5 b5 ( 15... Qe7 16. Nxf7 c4 17. dxe6 Nxe5 18. N3xe5 cxb3 19. Qd5 { Score:
-1.06 } ) 16. dxe6 fxe6 ( 16... c4 17. Nxf7 Qb6 18. exd7 Nxd7 19. Qxd7 Rxf7
-20. Qd5 { Score: 3.75 } ) 17. Bxe6+ Kh8 18. Nf7+ ( 18. Qd5 Qe7 19. Nf7 Rxf7
-20. Bxf7 h6 { Score: 4.56 } ) 18... Rxf7 19. Bxf7 Nc6 ( 19... Bb7 20. Ng5 h6
-21. Bd5 { Score: 3.03 } ) 20. e6 ( 20. Qxd7 Nd4 21. Qg4 Qe7 22. Nxd4 Qxf7
-23. e6 Qf6 { Score: 5.84 } ) 20... Qe7 ( 20... Nf6 21. Rac1 c4 22. b3 Qxd2
-23. Rxd2 Rd8 24. Rxd8 Nxd8 { Score: 3.06 } ) 21. Qxd7 Bc8 ( 21... Bb7 22. Qxe7
-Nxe7 23. Rd7 Bxf3 24. gxf3 Nc6 25. e7 Nxe7 { Score: 7.41 } ) 22. Qxc6 (
-22. Qxe7 Bxe6 23. Qxe6 Nd4 24. Nxd4 cxd4 25. Rxd4 a6 { Score: 17.72 } )
-22... Rb8 ( 22... Bb7 23. Qd7 Qxd7 24. exd7 Rd8 25. Re1 g6 26. Re8 Kg7 { Score:
-10.66 } ) 23. Qe8+ ( 23. Qxc5 Bxe6 24. Qxe7 Bxf7 25. Qxa7 Rf8 26. Qxf7 Rc8 {
-Score: 18.22 } ) 23... Qxe8 24. Bxe8 Bb7 ( 24... Bxe6 25. Bd7 Bg8 26. Ne5 g6
-27. Rac1 c4 28. a4 bxa4 { Score: 7.88 } ) 25. Bf7 ( 25. Bxb5 Bxf3 26. gxf3 Kg8
-27. e7 Kf7 28. Rd8 Kxe7 29. Rxb8 { Score: 12.03 } ) 25... Bc6 ( 25... g5 26. e7
-Kg7 27. Rd8 Bc6 28. Rxb8 Kxf7 29. Ne5 Kxe7 { Score: 12.03 } ) 26. Rd2 ( 26. Ne5
-Bxg2 27. e7 g6 28. Kxg2 { Score: 15.75 } ) 1-0
-
-[Site "Dunfermline C vs Alloa"]
-[Date "1994.04.??"]
-[Round "42"]
-[White "Comrie, J."]
-[Black "Gill, Andy"]
-[Result "1-0"]
-[ECO "B50"]
-
-1. e4 c5 2. Nf3 d6 3. Bc4 e6 4. Nc3 Be7 5. d4 cxd4 6. Qxd4 Nf6 7. e5
-dxe5 8. Qxd8+ Bxd8 9. Nxe5 O-O 10. O-O Nbd7 11. Nxd7 Bxd7 12. Be3 a6
-13. a4 Ba5 14. Ne2 Bc6 15. Nd4 Nd5 16. Nxc6 bxc6 17. Bxd5 cxd5 18. c3
-Rab8 19. b4 Bc7 20. Rfd1 Rfd8 21. Rac1 Bb6 22. Kf1 Bxe3 23. fxe3 f5
-24. Rc2 g5 25. Kf2 Kf7 26. Kf3 Rdc8 27. g4 Rxb4 28. gxf5 Kf6 29. fxe6
-Kxe6 30. Rd4 Rxd4 31. exd4 Rf8+ 32. Kg4 h6 33. Re2+ Kd6 34. Rb2 Rc8
-35. Kh5 Rxc3 36. Rb6+ Rc6 37. Rxc6+ Kxc6 38. Kxh6 g4 39. Kg5 Kd6 40.
-Kxg4 Ke6 41. Kg5 Ke7 42. h4 Kf7 43. h5 Kg7 44. Kf5 1-0
-
-[Site "Dunfermline Club Championship"]
-[Date "1994.04.??"]
-[Round "43"]
-[White "Gill, Andy"]
-[Black "Hunter, Scott"]
-[Result "1-0"]
-[ECO "C65"]
-
-1. e4 e5 2. Nf3 Nc6 3. Bb5 Nf6 4. d3 Bc5 5. O-O O-O 6. Re1 d5 7. Be3
-Bxe3 8. exd5 Qxd5 9. Bxc6 Qxc6 10. Rxe3 e4 11. dxe4 Nxe4 12. Nc3 Nxc3
-13. Rxc3 Qd6 14. Qxd6 cxd6 15. Rd1 Re8 16. Rxd6 g5 17. g4 Bxg4 18. Nxg5
-Re1+ 19. Kg2 Rae8 20. Rg3 f5 21. h3 Be2 22. Nf3+ Kf7 23. Nxe1 f4 24.
-Rf3 Bxf3+ 25. Nxf3 Re2 26. Rd7+ Kf8 27. Rxb7 Rxc2 28. Rxa7 Rxb2 29. Ra4
-Kf7 30. Rxf4+ Kg6 31. a4 h5 32. h4 Ra2 33. Kg3 Ra3 34. Rc4 Rd3 35. Kf4
-Rd5 36. Ne5+ Kf6 37. Re4 Ra5 38. Nd7+ Kg6 39. f3 Rf5+ 40. Ke3 1-0
-
-[Site "Under 1500 Final"]
-[Date "1994.05.??"]
-[Round "44"]
-[White "Hepburn, James"]
-[Black "Gill, Andy"]
-[Result "1-0"]
-[ECO "B20"]
-
-1. e4 c5 2. Bc4 d6 3. d3 e6 4. Nc3 Nf6 5. Nf3 a6 6. Bd2 Nc6 7. O-O Be7
-8. Re1 O-O 9. a3 e5 10. h3 b5 11. Bb3 Bb7 12. Nd5 Nxd5 13. Bxd5 Qd7
-14. c3 Na5 15. b4 Bxd5 16. exd5 Nb7 17. Re4 f5 18. Re2 cxb4 19. axb4
-Bf6 20. Qb3 a5 21. Rae1 axb4 22. cxb4 Rfe8 23. Bg5 Bxg5 24. Nxg5 Nd8
-25. f4 Nf7 26. Nxf7 Qxf7 27. fxe5 dxe5 28. Rxe5 Rxe5 29. Rxe5 Ra1+ 30.
-Kh2 g5 31. d4 Kg7 32. Qd3 Qd7 33. Rxf5 Qd6+ 34. Re5 Qxb4 35. Rxg5+ Kf7
-36. Qxh7+ Kf6 37. Qh6+ Ke7 38. Rg7+ Kd8 39. Qh8+ 1-0
-
-
-[Site "East of Scotland Championship"]
-[Date "1994.05.??"]
-[Round "45"]
-[White "Heron, D."]
-[Black "Gill, Andy"]
-[Result "1-0"]
-[ECO "D02"]
-[WhiteElo "1790"]
-
-1. Nf3 Nc6 2. d4 d5 3. Bf4 Bf5 4. e3 a6 5. c4 e6 6. Nc3 Nf6 7. a3 Qd7
-8. b4 Bd6 9. Bxd6 Qxd6 10. Be2 O-O 11. O-O Ne4 12. Nxe4 Bxe4 13. Nd2
-Bg6 14. Qb3 Ne7 15. c5 Qd7 16. a4 c6 17. b5 Nf5 18. Ra3 Rfe8 19. Qb2
-Kh8 20. Rb3 Nh6 21. bxc6 bxc6 22. Rb7 Qc8 23. Nf3 Rb8 24. Bxa6 Rxb7
-25. Qxb7 Qxb7 26. Bxb7 f6 27. Bxc6 Rb8 28. Bb5 Bc2 29. Rc1 Be4 30. Nd2
-Bg6 31. Nb1 Ng8 32. Nc3 Ne7 33. a5 Nc8 34. Bd7 Bf5 35. Nxd5 exd5 36.
-Bxf5 Ne7 37. Bd3 Nc6 38. Rb1 Rxb1+ 39. Bxb1 Nxa5 40. Ba2 1-0
-
-[Site "East of Scotland Chalengers"]
-[Date "1994.05.??"]
-[Round "46"]
-[White "Gill, Andy"]
-[Black "Falconer, W."]
-[Result "1/2-1/2"]
-[ECO "A15"]
-
-1. c4 Nf6 2. d3 e6 3. Nf3 d5 4. cxd5 Nxd5 5. a3 Bd6 6. e3 Nc6 7. Nbd2
-O-O 8. Nc4 Bd7 9. Be2 b5 10. Nxd6 cxd6 11. O-O Rc8 12. Bd2 Qb6 13. Qb3
-Ne5 14. Rac1 a6 15. Rc2 Rxc2 16. Qxc2 Rc8 17. Qb1 Nxf3+ 18. Bxf3 Bc6
-19. Rc1 Qd8 20. Bxd5 Bxd5 21. Ba5 Qd7 22. Rxc8+ Qxc8 23. Bb4 Qc6 24. f3
-Bb3 25. Qe1 Qc2 26. Qc3 Qxc3 27. Bxc3 d5 28. Kf2 f6 29. d4 1/2-1/2
-
-
-
-[Site "East of Scotland Chalengers"]
-[Date "1994.05.??"]
-[Round "47"]
-[White "Gill, Andy"]
-[Black "Pearson, Walter"]
-[Result "0-1"]
-[ECO "A20"]
-[BlackElo "1650"]
-
-1. c4 e5 2. d3 Ne7 3. Nf3 d6 4. e3 g6 5. Be2 Bg7 6. O-O O-O 7. Nbd2 Nd7
-8. Nb3 b6 9. d4 exd4 10. Nfxd4 Bb7 0-1
-
-[Site "East of Scotland Chalengers"]
-[Date "1994.05.??"]
-[Round "48"]
-[White "Heatlie, Douglas"]
-[Black "Gill, Andy"]
-[Result "1-0"]
-[ECO "D61"]
-[WhiteElo "1650"]
-
-1. d4 e6 2. c4 d5 3. Nc3 Nf6 4. Bg5 Be7 5. e3 Nbd7 6. Qc2 O-O 7. Nf3
-Re8 8. h4 Nb6 9. b3 dxc4 10. bxc4 Bd7 11. Bd3 g6 12. Bxf6 Bxf6 13. h5
-Bxd4 14. exd4 Qf6 15. hxg6 fxg6 16. Ne4 Qg7 17. Nc5 Bc6 18. Ne5 Nd5
-19. cxd5 exd5 20. O-O-O Rxe5 21. dxe5 Qxe5 22. g3 Qg5+ 23. Qd2 Qe5 24.
-Nb3 Ba4 25. Qh6 Qc3+ 26. Bc2 Bxb3 27. Qxh7+ Kf8 28. Qh8+ 1-0
-
-[Site "Scottish Chess Minor"]
-[Date "1994.07.??"]
-[Round "49"]
-[White "Mill, Graham"]
-[Black "Gill, Andy"]
-[Result "1-0"]
-[ECO "B50"]
-
-1. e4 c5 2. Nf3 d6 3. Bc4 { This is an unusual way of opening, but is common at
-the Minor level. } 3... e6 4. Nc3 Nf6 5. d3 ( 5. O-O ) 5... Nc6 ( 5... d5
-6. Bb3 dxe4 7. Nxe4 Nxe4 8. dxe4 Qxd1+ 9. Kxd1 { = } ) 6. Bf4 ( 6. O-O Be7 )
-6... a6 7. O-O Be7 ( 7... Na5 8. Bb3 Nxb3 9. axb3 Be7 10. Re1 O-O 11. Qd2 {
-<sab> } ) 8. Re1 O-O {  I often find this sort of position when playing the
-sicilian, where white has the e file, pushes his pawn, and gains a winning
-advantage. } 9. e5 dxe5 10. Nxe5 Bd7 ( 10... Nxe5 ) 11. Ne4 ( 11. Bb3 { <saw> }
-) 11... Nxe5 12. Bxe5 Bc6 {  } ( 12... Nxe4 13. dxe4 b5 14. Bb3 Bc6 15. Qh5
-Re8 { = } ) 13. Bxf6 ( 13. Qf3 Nxe4 14. dxe4 b6 15. Rad1 Qe8 { <saw> } )
-13... Bxe4 $4 ( 13... Bxf6 14. Nxf6+ Qxf6 15. c3 b6 16. Qe2 { <sab> } )
-14. Bxe7 Qxe7 15. Rxe4 Rac8 16. f4 ( 16. a4 Qf6 17. c3 Rfd8 18. Qe2 h6 19. Re1
-{ <waw> } ) 16... b5 17. Bb3 Rc6 ( 17... a5 { and I might be able to stir up a
-queenside pawn charge. } ) 18. c4 ( 18. a4 { striking at the ambushing pawns. }
-) 18... Rd8 ( 18... Rd6 19. cxb5 axb5 20. a4 c4 ) 19. Qe2 ( 19. cxb5 axb5
-20. a4 bxa4 21. Raxa4 Rcd6 22. d4 cxd4 23. Rexd4 ) 19... Rd4 ( 19... b4 )
-20. Rxd4 ( 20. cxb5 axb5 21. a4 bxa4 22. Rxa4 Rd8 23. d4 cxd4 24. Rexd4 { All
-variations just win for white. } ) 20... cxd4 21. Re1 ( 21. cxb5 ) 21... Rc5
-22. Qe4 ( 22. Qf2 bxc4 23. Bxc4 Qd6 { Blacks score is rapidly going down. } )
-22... Rh5 ( 22... Qd7 23. Qa8+ Qc8 24. Qxc8+ Rxc8 25. g3 bxc4 26. dxc4 { a
-passed pawn for white! Blacks passed pawn will not live long. } ) 23. g4 (
-23. f5 Rh6 24. cxb5 axb5 { Totally won for white. } ) 23... Rh4 24. Qa8+ Qf8
-25. Qxf8+ Kxf8 {  } 26. h3 $2 ( 26. Bd1 Rh3 27. Be2 Ke7 28. Kg2 Re3 29. h3 Kd6
-{ Just a piece up. } ) 26... Rxh3 27. Bc2 Rg3+ 28. Kf2 Rxg4 29. Kf3 h5 (
-29... Rh4 30. Kg3 Rh6 31. Re4 Rg6+ 32. Kh3 Rh6+ 33. Kg2 { And black has drawing
-chances. } ) 30. Re4 ( 30. Re5 g6 31. Re4 Rh4 32. Rxd4 g5 { Black is only a
-pawn or so down. } ) 30... Ke7 31. Rxd4 ( 31. cxb5 axb5 32. Re5 g6 33. Rxb5 Kd6
-34. Ke4 ) 31... e5 ( 31... g5 32. cxb5 axb5 33. a4 e5 34. Re4 Rxf4+ 35. Rxf4
-exf4 { Blacks is a `pawn` down, with 3 connected passed pawns. Not so bad, but
-still winning for white. } ) 32. Re4 Rxf4+ 33. Rxf4 exf4 34. Kxf4 Kf6 35. c5
-Ke7 36. b4 f6 37. d4 g5+ 38. Kg3 h4+ 39. Kg4 Ke6 40. c6 Kd6 41. d5 Kc7 42. Be4
-Kd6 43. Bg2 Kc7 44. Bh3 Kd6 45. Kf5 Kc7 46. Kxf6 Kb6 47. Kxg5 { I finally
-resigned here. } 1-0
-
-[Site "Scottish Chess Minor"]
-[Date "1994.07.??"]
-[Round "50"]
-[White "Gill, Andy"]
-[Black "McMonigle, A."]
-[Result "1-0"]
-[ECO "C67"]
-
-1. e4 e5 2. Nf3 Nc6 3. Bb5 Nf6 4. O-O Nxe4 {  } 5. Re1 ( 5. d4 Be7 6. dxe5 O-O
-7. Be3 a6 { and white has the edge. } ) 5... d5 ( 5... Nd6 6. Bxc6 dxc6 7. Nxe5
-Be6 8. Nc3 Be7 9. Kh1 { <saw> } ) 6. Nxe5 ( 6. d3 { is a killer move. } )
-6... Qf6 7. Nf3 ( 7. Nxc6 bxc6 8. Qf3 Qg6 9. Bd3 Bf5 10. Bxe4 { <saw> } )
-7... Be7 8. d3 $1 Nd6 {  } ( 8... Nxf2 9. Kxf2 Bg4 10. Nbd2 O-O 11. Bxc6 bxc6
-{ <aw> } ) 9. Bxc6+ ( 9. Bg5 Qxb2 10. Bxc6+ bxc6 11. Rxe7+ Kf8 12. Nbd2 h6 {
-White is a couple of pawns up, but the tactices are hairy! } ) 9... bxc6 10. c3
-O-O {  } ( 10... h6 11. Be3 Nf5 12. Bf4 Rb8 13. Be5 Qg6 { <saw> } ) 11. Bg5
-Qg6 ( 11... Qxf3 12. Qxf3 Bxg5 13. b3 Bb7 14. Qg3 Bf6 { Is blacks best line. }
-) 12. Bxe7 Re8 13. Bxd6 Rxe1+ 14. Qxe1 Qxd6 15. Qe8+ Qf8 16. Qxf8+ ( 16. Qxc6
-Rb8 17. Qxc7 Rxb2 18. Qxa7 Bf5 19. Qd4 Qb8 20. Nfd2 { <waw> The proper
-continuation, and well winning for white. } ) 16... Kxf8 17. Ne5 ( 17. h3 {
-Still a <waw> } ) 17... Bf5 ( 17... c5 18. h3 f6 19. Nf3 { and white moving the
-knight was a waste of two tempi. } 19... Rb8 20. b3 Bf5 { <waw> } ) 18. d4 (
-18. Nd2 Re8 19. Ndf3 c5 20. g4 f6 21. Kg2 fxe5 22. gxf5 { <waw> } ) 18... Re8
-19. Nd2 Re6 {  } 20. Re1 ( 20. g4 Bxg4 21. Nxg4 Rg6 22. h3 h5 23. f3 hxg4
-24. hxg4 { <waw> what a cou. } ) 20... f6 21. Nd7+ Ke7 22. Rxe6+ Bxe6 23. Nc5
-Bf5 24. f3 ( 24. h3 h6 25. Kh2 Kd6 26. Nb7+ Ke7 27. g4 Bd3 { <waw> } )
-24... Bc8 25. g4 ( 25. Kf2 Kd6 26. f4 g6 27. Kf3 h6 28. g3 f5 ) 25... Kf7
-26. Kg2 ( 26. Kf2 Ke7 27. Ke3 Kd6 28. Kd3 h6 29. c4 dxc4+ 30. Nxc4+ { <waw>
-with a plan } ) 26... f5 27. Kg3 Kg6 28. Nd3 ( 28. gxf5+ Bxf5 29. Na6 Kf6
-30. h3 h6 31. Nxc7 { Attacking the weak backwards pawn. } ) 28... fxg4 {  } (
-28... Kf6 29. gxf5 Kxf5 30. Ne5 Bb7 { Score: 3.19 } ) 29. Ne5+ Kf6 30. Nxc6 a6
-31. fxg4 g5 32. h4 ( 32. Nb3 Bb7 33. Nb8 h6 34. Nc5 Bc8 35. b4 Kg6 36. Nbxa6 {
-Successfully ganing up on the `a` pawn. } ) 32... gxh4+ 33. Kxh4 Bd7 34. g5+ (
-34. Nb4 c6 35. Nxa6 h6 36. Kh5 Kg7 { Totally won. } ) 34... Kg7 35. Ne5 (
-35. Nb4 c6 36. Nxa6 h6 37. Nc5 Bf5 38. a4 Kg6 39. gxh6 { And either the 'a' or
-'b' pawn will queen. } ) 35... Be8 36. Nb3 Bg6 { At this point black resigned.
-} 1-0
-
-[Site "Scottish Chess Minor"]
-[Date "1994.07.??"]
-[Round "51"]
-[White "Swanson, Brian"]
-[Black "Gill, Andy"]
-[Result "1-0"]
-[ECO "B86"]
-1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nf6 5. Nc3 a6 6. Bc4 e6 ( 6... e5 7. Nf3
-Qc7 8. Bd5 Bg4 9. O-O Nxd5 10. Nxd5 { Is another line of the Sicilian. } )
-7. Bg5 ( 7. O-O Qc7 8. Qd3 e5 9. Nf3 Bg4 10. Bg5 { <saw>,0.25 } ) 7... Be7
-8. f4 b5 {  } ( 8... d5 9. Bxf6 Bxf6 10. exd5 Qc7 11. Be2 Qxf4 { <ab> } )
-9. Bd3 $2 ( 9. Bb3 h6 10. Bxf6 Bxf6 11. O-O Bxd4+ 12. Qxd4 { <sab> } ) 9... Bb7
-10. b4 ( 10. Qf3 Qb6 11. Nde2 d5 { = } ) 10... Nc6 11. Nf3 $2 ( 11. Nxc6 Bxc6
-12. O-O d5 13. exd5 Nxd5 14. Bxe7 Qxe7 { <sab> } ) 11... Nxb4 12. Qe2 O-O
-13. O-O ( 13. a3 Qc7 14. Qd2 { <ab>,by a pawn or so. } ) 13... Rc8 ( 13... Qc7
-14. Qd2 d5 15. Bxf6 Bxf6 { <ab> } ) 14. Nd1 d5 15. exd5 ( 15. e5 Ne4 16. Bxe7
-Qxe7 17. Bxe4 dxe4 18. Nd4 ) 15... Bxd5 16. Ne3 {  } 16... Bc5 ( 16... Bxa2
-17. Rad1 Nxd3 18. cxd3 Nd5 { <wab>,2+ pawns up, but getting a bit tactical. } )
-17. Kh1 Bxe3 18. Qxe3 Nxc2 19. Bxc2 Rxc2 20. a4 Ra2 ( 20... h6 { <wab>, just
-winning. } ) 21. Rxa2 Bxa2 22. axb5 ( 22. Ra1 Bd5 23. axb5 axb5 24. Rb1 Ng4 {
-<wab>, to or so pawns up. } ) 22... Bc4 ( 22... axb5 23. Ra1 Bd5 24. Ra7 h6 {
-<ab>, even with the rook on blacks 2nd. This rook should be able to get to 'b'
-pawn, though. } ) 23. Rc1 Bxb5 24. Ne5 {  } 24... Nd5 $2 { A bit wild. } (
-24... h6 25. Bxf6 Qxf6 26. Rc7 a5 27. Qc5 Be2 28. Qxa5 Qxf4 { <wab>, almost
-three pawns up, and threating the forced queen exchage on f1. } ) 25. Qg3 {
-Alarms bells !!!, the bishop is going to h6. Remember. } 25... f6 { I though I
-was going to win a piece for a pawn. } 26. Bh6 g6 $4 ( 26... Qe7 27. Nc6 Qc7
-28. Rc2 Ba4 29. Rc4 Nb6 { Black still leads (two pawns up), but the tactics are
-hairy. } ) 27. Bxf8 $2 ( 27. Nxg6 Kf7 28. Nxf8 Ke8 29. Nxe6 Qd7 30. Re1 {
-<waw>,5.47 } ) 27... fxe5 ( 27... Kxf8 28. Qh4 a5 29. g3 a4 { <sab>, but
-critically depending on the weak a pawn. } ) 28. Bh6 exf4 29. Qe1 {  } (
-29. Bxf4 Nxf4 30. Qxf4 a5 31. h3 g5 32. Qe5 { <aw> } ) 29... g5 $4 { My major
-blunder. } ( 29... Kf7 30. g3 f3 31. Qf2 Qf6 { <ab>, but tricky. } ) 30. Qxe6+
-Kh8 31. Rc8 { Mate is in a couple of moves. } 1-0
-
-[Site "Scottish Chess Minor"]
-[Date "1994.07.??"]
-[Round "52"]
-[White "Gill, Andy"]
-[Black "Thomson, Brian"]
-[Result "1-0"]
-[ECO "B54"]
-
-1. e4 c5 2. Nf3 d6 3. d4 cxd4 4. Nxd4 Nc6 5. Bb5 Bd7 6. Nc3 ( 6. Nxc6 { Score:
-0.06 } ) 6... Nf6 ( 6... Nxd4 7. Qxd4 Bxb5 8. Nxb5 Qa5 9. Nc3 e5 10. Qd5 Qc7 {
-Score: -0.03 } ) 7. Bg5 h6 ( 7... Nxd4 8. Bxd7 Nxd7 9. Qxd4 e5 10. Qd2 Be7
-11. Be3 { Score: -0.03 } ) 8. Bh4 ( 8. Bxf6 exf6 9. f4 Nxd4 10. Bxd7 Qxd7
-11. Qxd4 Be7 { Score: 0.16 } ) 8... Qb6 ( 8... g5 9. Bg3 Nxd4 10. Qxd4 Bg7
-11. O-O O-O { Score: -0.22 } ) 9. Nxc6 ( 9. Bxf6 gxf6 10. Bxc6 bxc6 11. Na4 Qa5
-12. c3 Bg7 { Score: 0.06 } ) 9... bxc6 10. Bxf6 ( 10. Bd3 Qxb2 11. Bxf6 exf6
-12. Na4 Qd4 13. c3 { Score: -1.03 } ) 10... exf6 11. Ba4 ( 11. Bd3 Qxb2 12. Na4
-Qa3 13. c3 Be6 14. Qc2 O-O-O { Score: -1.31 } ) 11... Qc7 ( 11... Qxb2 12. Kd2
-Qb6 13. Qf3 Be6 14. e5 Qd4 { Score: -1.44 } ) 12. O-O Be7 13. Re1 ( 13. Rb1 O-O
-14. Qd3 Be6 15. f4 f5 { Score: -0.09 } ) 13... O-O 14. Qd4 ( 14. Bb3 { Score:
--0.09 } ) 14... Be6 ( 14... Rab8 15. b3 Be6 16. Rad1 Rb6 17. f4 Re8 { Score:
--0.16 } ) 15. Nd1 ( 15. f4 Rab8 16. Bb3 f5 17. e5 Bxb3 18. axb3 { Score: -0.16
-} ) 15... Qa5 ( 15... Rab8 16. Qc3 Rb6 17. Ne3 Qb7 18. f4 { Score: -0.09 } )
-16. Nc3 Qc7 ( 16... Rab8 17. b3 Qc7 18. Rad1 Rfe8 19. f4 Rb6 { Score: -0.13 } )
-17. Ne2 ( 17. Nd1 { Score: 0.00 } ) 17... Rab8 ( 17... Rfb8 18. Nf4 Rb6
-19. Nxe6 fxe6 20. Bb3 d5 21. exd5 cxd5 { Score: -0.06 } ) 18. b3 ( 18. Nf4 {
-Score: -0.13 } ) 18... a5 ( 18... f5 19. Rad1 fxe4 20. Qxe4 Bd5 21. Qd4 {
-Score: -0.41 } ) 19. Nf4 ( 19. Qc3 c5 20. Nd4 Rb7 21. Nc6 Ra8 22. Rad1 { Score:
-0.06 } ) 19... Bd7 ( 19... Rfc8 20. c4 Rd8 21. f3 Rd7 { Score: 0.00 } ) 20. Qd2
-( 20. Qc3 Rb7 21. a3 Re8 22. Nd3 Reb8 23. f4 { Score: -0.09 } ) 20... g5 (
-20... Rfe8 { Score: -0.09 } ) 21. Nh5 ( 21. Ne2 Rb7 22. Nd4 Re8 23. Qc3 c5
-24. Bxd7 Qxd7 { Score: 0.13 } ) 21... Qb6 ( 21... Bg4 22. Ng3 Rfe8 23. c4 Bf8
-24. f3 Be6 { Score: 0.13 } ) 22. Qc3 Qd8 23. Rad1 ( 23. a3 Rc8 24. Ng3 Re8
-25. Rad1 Bg4 26. Bxc6 Bxd1 27. Rxd1 { Score: 0.31 } ) 23... Bg4 24. Ng3 Bxd1
-25. Rxd1 c5 26. Nh5 ( 26. Nf5 h5 27. a3 Rb7 28. Qd3 Rb6 29. Qd2 { Score: -0.06
-} ) 26... Kh8 ( 26... Rb4 27. Ng3 Qa8 28. a3 Rb6 { Score: -0.75 } ) 27. Rd3 (
-27. Ng3 Rg8 28. Nf5 Bf8 29. Qd2 Qc7 { Score: -0.34 } ) 27... Rg8 ( 27... Rb4
-28. Ng3 c4 29. Rd5 cxb3 30. cxb3 Qb6 31. Bc6 { Score: -0.88 } ) 28. Rf3 (
-28. Ng3 Rg6 29. Nf5 Rb4 30. Bc6 Qc7 31. a3 Rb6 { Score: -0.81 } ) 28... Rg6 (
-28... d5 29. exd5 Qxd5 30. Re3 Qd1 31. Re1 Qd8 32. Ng3 { Score: -1.00 } )
-29. Bc6 ( 29. Rd3 Rb4 30. f3 c4 31. Re3 cxb3 32. cxb3 { Score: -0.97 } )
-29... Kg8 30. Bd5 ( 30. Ng3 Qc7 31. Nf5 Bf8 32. Bd5 Bg7 33. Rd3 Bh8 { Score:
--1.00 } ) 30... a4 31. Qc4 Qe8 32. Qd3 ( 32. Qc3 axb3 33. cxb3 Qd8 34. a4 Rb6
-35. Rd3 { Score: -0.78 } ) 32... Rb4 ( 32... Qb5 33. Ng3 axb3 34. Nf5 Bf8 {
-Score: -0.97 } ) 33. e5 ( 33. c3 Rb6 34. e5 Kf8 35. Nxf6 { Score: -0.25 } )
-33... dxe5 ( 33... Kh8 34. c3 Rh4 35. exf6 Bd8 36. Re3 Qd7 { Score: -0.22 } )
-34. Qxg6+ 1-0
-
-[Site "Scottish Chess Minor"]
-[Date "1994.07.??"]
-[Round "53"]
-[White "Navmann, M."]
-[Black "Gill, Andy"]
-[Result "1/2-1/2"]
-[ECO "B50"]
-
-1. e4 c5 2. Nf3 d6 3. Bc4 e6 ( 3... Nc6 { Score: 0.00 } ) 4. Nc3 a6 ( 4... Nf6
-5. d3 d5 6. Bb3 dxe4 7. Nxe4 Nxe4 8. dxe4 Qxd1 { Score: 0.00 } ) 5. a4 ( 5. d3
-Nc6 6. Bf4 Na5 7. e5 d5 8. Bg5 Ne7 { Score: 0.09 } ) 5... Nf6 6. d3 ( 6. d4 {
-Score: 0.06 } ) 6... Be7 ( 6... d5 7. Ba2 dxe4 8. Nxe4 Nxe4 9. dxe4 Qxd1
-10. Kxd1 { Score: 0.09 } ) 7. b3 ( 7. Bg5 h6 8. Bh4 d5 9. exd5 Nxd5 10. Nxd5
-exd5 { Score: 0.16 } ) 7... O-O ( 7... d5 8. exd5 exd5 9. Nxd5 Nxd5 10. O-O O-O
-{ Score: -1.59 } ) 8. d4 ( 8. Qe2 Nc6 9. O-O d5 10. exd5 exd5 { Score: 0.06 } )
-8... cxd4 ( 8... d5 9. exd5 exd5 10. Bd3 b6 11. O-O Nc6 { Score: -0.09 } )
-9. Nxd4 ( 9. Qxd4 { Score: -0.09 } ) 9... d5 ( 9... Qa5 10. Qd2 b5 11. Bd3 e5
-12. Nf3 Bg4 { Score: -0.16 } ) 10. exd5 exd5 11. Bd3 Re8 ( 11... Nc6 12. Nce2
-Nxd4 13. Nxd4 Bb4 14. Bd2 Qa5 15. Ne2 Bxd2 { Score: -0.22 } ) 12. O-O Bb4 (
-12... Nc6 13. Nce2 Bg4 14. f3 Bc5 15. c3 { Score: -0.03 } ) 13. Bd2 ( 13. Nce2
-Nc6 14. Bb2 Bg4 15. f3 Nxd4 16. Nxd4 { Score: 0.00 } ) 13... Qa5 ( 13... b6 {
-Score: -0.09 } ) 14. Nb1 Kh8 ( 14... Nc6 15. Bxb4 Nxb4 16. Re1 Bg4 17. Be2 Rad8
-{ Score: -0.09 } ) 15. Bxb4 Qxb4 16. c3 Qe7 ( 16... Qc5 17. Re1 Rxe1 18. Qxe1
-Nc6 19. Nf5 b6 { Score: 0.09 } ) 17. Nd2 ( 17. Ra2 Qc7 18. Re2 Rxe2 19. Qxe2
-Nc6 20. Rd1 Nxd4 21. cxd4 { Score: 0.09 } ) 17... Bg4 ( 17... Qc5 18. Qc2 Nc6
-19. N2f3 Nxd4 20. Nxd4 Ne4 { Score: 0.00 } ) 18. Qc1 ( 18. N2f3 Qc7 19. Qd2 Nc6
-20. Rfe1 Rad8 21. Rxe8 Rxe8 { Score: 0.00 } ) 18... Nc6 19. Nxc6 ( 19. Re1 Ne5
-20. Qc2 Qc7 21. c4 Nxd3 22. Qxd3 { Score: 0.03 } ) 19... bxc6 20. Re1 Qd7 (
-20... Qb7 21. Qc2 Rad8 22. h3 Bh5 23. c4 Rxe1 24. Rxe1 { Score: 0.03 } )
-21. Rxe8+ Qxe8 22. Qe1 ( 22. Qc2 c5 23. h3 Bh5 24. b4 c4 25. Bf5 { Score: 0.03
-} ) 22... a5 ( 22... Qd7 { Score: 0.09 } ) 23. h3 Bd7 ( 23... Bh5 24. g4 Bg6
-25. Bxg6 hxg6 26. Rd1 Rd8 27. Qxe8 Nxe8 { Score: 0.19 } ) 24. Nf3 ( 24. Rd1 Rb8
-25. c4 h6 26. Qxe8 Rxe8 27. cxd5 cxd5 { Score: 0.16 } ) 24... Qxe1+ ( 24... Rb8
-25. Bc2 c5 26. c4 Qxe1 27. Rxe1 d4 { Score: 0.16 } ) 25. Rxe1 Re8 ( 25... Rb8
-26. Bc2 g6 27. Re7 Kg7 28. Ne5 Be8 { Score: 0.44 } ) 26. Rxe8+ ( 26. Ne5 {
-Score: 0.53 } ) 26... Bxe8 27. c4 ( 27. g3 { Score: 0.28 } ) 27... h6 (
-27... g6 28. g3 Kg7 29. Kg2 h6 30. Ne5 d4 31. f4 c5 { Score: 0.13 } ) 28. Kf1 (
-28. g3 g6 29. Ne5 Kg7 30. Kg2 d4 31. Kf3 c5 { Score: 0.25 } ) 28... g6 29. Ke2
-( 29. cxd5 { Score: 0.31 } ) 29... Kg7 30. Ke3 ( 30. Ne5 { Score: 0.31 } )
-30... Nd7 ( 30... c5 31. Ne5 d4 32. Kd2 Bd7 33. Nxd7 Nxd7 34. Be4 Ne5 { Score:
-0.09 } ) 31. Kd4 ( 31. cxd5 cxd5 32. Kd4 Nf6 33. Ne5 Kf8 34. g3 Kg7 35. f4 {
-Score: 0.59 } ) 31... dxc4 32. Bxc4 ( 32. Kxc4 f5 33. Kc3 Bf7 34. g3 Nc5
-35. Bc2 Bd5 { Score: 0.16 } ) 32... Kf6 ( 32... f5 33. Ke3 Bf7 34. Bxf7 Kxf7
-35. Kf4 Ke6 36. Nd4 Kd5 { Score: -0.03 } ) 33. Bd3 ( 33. Nd2 Nb6 34. Ne4 Ke7
-35. Bd3 f5 36. Nc5 Bf7 { Score: 0.22 } ) 33... Ke6 34. Kc4 ( 34. Ke3 Nb6
-35. Nd4 Kd6 36. Kf3 Ke5 37. Ne2 f5 { Score: 0.09 } ) 34... f6 ( 34... f5 35. g4
-fxg4 36. hxg4 Ne5 37. Nxe5 Kxe5 38. Kc3 { Score: -0.13 } ) 1/2-1/2
-
-[Site "Grangemouth Congress"]
-[Date "1994.09.??"]
-[Round "54"]
-[White "Gill, Andy"]
-[Black "McKay, Stewart"]
-[Result "1-0"]
-[ECO "B01"]
-1. e4 d5 2. exd5 Nf6 3. Bb5+ Bd7 4. Bxd7+ Qxd7 5. Nf3 Nxd5
-6. O-O Nc6 7. Re1 e6 8. d3 g6 9. Bg5 Bg7 10. c3 Nf6 11. d4 h6 12. Bxf6 Bxf6
-13. d5 Rd8 14. Qd2 Qxd5 15. Qf4 Bg7 16. Qxc7 O-O 17. Qf4 g5 18. Qd2 Qf5 19. Qe3
-Rd3 20. Qe4 Qxe4 21. Rxe4 Rd1+ 22. Re1 Rfd8 23. h3 Ne5 24. Na3 Nxf3+ 25. gxf3
-R1d3 26. Kg2 a6 27. Rac1 b5 28. Re2 Bf8 29. Nc2 Bc5 30. Ne1 Rd2 31. Rxd2 Rxd2
-32. Rc2 Rd1 33. Kf1 Be7 34. a3 Bf6 35. Ke2 Rd5 36. Nd3 Rd8 37. Kd2 Rc8 38. Ke3
-Bg7 39. f4 Bf6 40. Ne5 Rc5 41. Nd7 gxf4+ 42. Kxf4 Bg5+ 43. Ke4 f5+ 44. Kf3 Rd5
-45. Nb8 Rd6 46. c4 bxc4 47. Rxc4 Rb6 48. Rb4 Rd6 49. Ra4 Rb6 50. Nxa6 Rxb2
-51. Nc7 Rb3+ 52. Kg2 Be7 53. Nxe6 Rxa3 54. Rxa3 Bxa3 55. Kg3 Kf7 56. Nd4 Kg6
-57. Kf4 Kh5 58. Nxf5 { And White won by queening the f pawn. } 1-0
-
-[Site "Grangemouth Minor Congress"]
-[Date "1994.09.??"]
-[Round "55"]
-[White "Shaughan, Harward"]
-[Black "Gill, Andy"]
-[Result "0-1"]
-[ECO "D02"]
-1. d4 e6 2. Bf4 d5 3. Nf3 Nf6 4. Nbd2 c5 5. e3 a6 6. c4 Nc6 7. Ne5 cxd4 8. Nxc6
-bxc6 9. exd4 Qb6 10. cxd5 cxd5 11. Qc2 Bd7 12. Be3 Bb4 13. a3 Bxd2+ 14. Qxd2
-O-O 15. Bd3 Rfc8 16. O-O Bb5 17. b3 Rc6 18. f3 Rac8 19. Rfc1 Bxd3 20. Rxc6 Rxc6
-21. Qxd3 Qc7 22. Bd2 h6 23. Rb1 Nh5 24. b4 Nf4 25. Bxf4 Qxf4 26. b5 Rc1+
-27. Rxc1 Qxc1+ 28. Kf2 Qb2+ 29. Kg3 Qxb5 30. Qxb5 axb5 31. Kf2 Kf8 32. Ke3 Ke7
-33. Kd3 Kd6 34. f4 f6 35. h4 e5 36. dxe5+ fxe5 37. f5 e4+ 38. Kd4 Ke7 39. g4
-Kf6 40. Ke3 g6 41. g5+ hxg5 42. hxg5+ Kxf5 0-1
-
-[Site "Grangemouth Minor Congress"]
-[Date "1994.09.??"]
-[Round "56"]
-[White "Gill, Andy"]
-[Black "Ridland, Lindsay"]
-[Result "1-0"]
-[ECO "C65"]
-1. e4 e5 2. Nf3 Nc6 3. Bb5 Nf6 4. O-O Bc5 5. Re1 a6 (5... Ng4 6. Re2 O-O
-7. d3 Nd4 8. Nxd4 Bxd4 9. Nd2 {<saw>,0.13 but a bit messy for white.})
-6. Ba4 (6. Bxc6 dxc6 7. h3 Qe7 8. d3 O-O 9. Bg5 h6 10. Bh4 {=, taking the
-exchange way out.}) 6... b5 7. Bb3 d6 { We have now reached a main line
-of the Ruy Lopez.} 8. c3 (8. a4 Ng4 9. Re2 Bb7 10. axb5 axb5 {=, and very
-like Game 7 of the Short-Kasparov WC, where Kasparov as white scored a
-decisive victory.}) 8... Bg4 9. d3 h6 10. Be3 O-O (10... Bxe3 11. Rxe3
-O-O 12. a4 b4 13. h3 Bh5 14. Nbd2 Rb8 {=}) 11. Bxc5 dxc5 12. Bc2 Qd7
-13. Nbd2 (13. h3 Bh5 14. Nbd2 Rfd8 15. Nb3 Qd6 16. Qe2 Rab8 17. Red1 {
-Fritz is deperate to put h3, but I dont see why.}) 13... Nh5 {} (13...
-Rad8 {is an idea.}) 14. Nb3 (14. h3 {<saw>,0.33 I now agree with this,
-because the knight block the h5 retreat square.}) 14... Nf4 {?} (14...
-Qd6 15. h3 Be6 16. Ng5 Bxb3 17. axb3 Nf4 18. Nf3 {<sab>}) 15. Nxc5 Qc8 (
-15... Qe7 16. Nb3 Rfd8 17. h3 Be6 18. d4 Qf6 19. Rc1 exd4 {=}) 16. Re3 (
-16. b4 {White is just a pawn up.}) 16... Rd8 17. Qd2 Rd6 (17... Bxf3 {!}
-18. Rxf3 Qg4 19. Rxf4 exf4 20. h3 Qh4 21. d4 {and black has equalised!})
-18. Bd1 {} 18... Nxg2 {?? Throws away a piece for a very temp.
-inititive.} (18... Rb8 19. d4 exd4 20. cxd4 Ne6 21. Nxe6 Qxe6 {and white
-is starting to push home his advantage.}) 19. Kxg2 Bh3+ 20. Kh1 Qg4 (
-20... Rg6 {is another idea, but the whole plan is conceptually flawed.})
-21. Ne1 Qg5 22. Qe2 Be6 23. Rg3 Qf6 24. Nxe6 {} (24. Nf3 Ne7 25. Nxe6
-Qxe6 26. Bb3 Qf6 27. Rag1 {<waw>}) 24... Rxe6 (24... Qxe6 25. Bb3 Qe7
-26. Bd5 Rad8 27. Nf3 R8d7 28. Rd1) 25. Qf3 {Crude plan of exchanging
-queens to avoid `acidents`.} (25. Bb3) 25... Qe7 26. Bb3 Rf6 27. Qe3 (27.
-Qg2) 27... Rd8 28. Nc2 Kh7 29. Rag1 g6 30. Rf3 {} 30... Rxf3 (30... Rfd6 {
-??} 31. Rxf7+ {Trying to avoid the exchance, but black loses his Queen!
-Black actually moved his rook to d6, but before letting it go, spotted
-the danger, and then took the exchange. Shame...}) 31. Qxf3 Rd7 32. Ne3
-h5 {?} 33. Nd5 {! At least winning the exchange. Black resigned here.}
-1-0
-
diff --git a/testsuite/tests/ghc-regress/programs/andy_cherry/test.T b/testsuite/tests/ghc-regress/programs/andy_cherry/test.T
deleted file mode 100644
index 4d14ee306e..0000000000
--- a/testsuite/tests/ghc-regress/programs/andy_cherry/test.T
+++ /dev/null
@@ -1,14 +0,0 @@
-
-test('andy_cherry',
- [skip_if_fast,
- extra_clean(['DataTypes.hi', 'DataTypes.o',
- 'GenUtils.hi', 'GenUtils.o',
- 'Interp.hi', 'Interp.o',
- 'InterpUtils.hi', 'InterpUtils.o',
- 'Main.hi', 'Main.o',
- 'Parser.hi', 'Parser.o',
- 'PrintTEX.hi', 'PrintTEX.o']),
- extra_run_opts('.')],
- multimod_compile_and_run,
- ['Main', '-cpp'])
-
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Basic.hs b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Basic.hs
deleted file mode 100644
index 1597a86d2f..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Basic.hs
+++ /dev/null
@@ -1,287 +0,0 @@
-
-module Basic where
-import TypesettingTricks
---import Int( Num(fromInt) )
-import Physical
---import GHC( (->) )
-infixr 7 |>
-class Signal s where
- mapSignal:: (Physical a, Physical b) => (s a b) -> a -> b
- mapSigList:: (Physical a, Physical b) => (s a b) -> [a] -> [b]
- toSig:: (Physical a, Physical b) => (s a b) -> SignalRep a b
- mapSignal = mapSignal . toSig
- mapSigList = map . mapSignal
- toSig = FunctionRep . mapSignal
-instance Signal (->) where
- mapSignal f = f
- toSig = FunctionRep
-data {- (Physical a, Physical b) => -} SignalRep a b =
- FunctionRep (a -> b) |
- PieceContRep (PieceCont a b)
-
-instance Eq (SignalRep a b) where
- (==) a b = error "No equality for SignalRep"
-
-instance Show (SignalRep a b) where
- show sr = error "No show for SignalRep"
-
-instance Signal SignalRep where
- mapSignal (FunctionRep f) = mapSignal f
- mapSignal (PieceContRep f) = mapSignal f
- mapSigList (FunctionRep f) = mapSigList f
- mapSigList (PieceContRep f) = mapSigList f
- toSig = id
-instance (Physical a, Physical b) => Eq (a -> b) where
- a == b = error "Attempt to apply equality to functions"
-binop:: (Physical a, Physical b) => (Float -> Float -> Float) ->
- (a -> b) -> (a -> b) -> a -> b
-binop op f g t = toPhysical ((fromPhysical (f t)) `op` (fromPhysical (g t)))
-unop:: (Physical a, Physical b ) => (Float -> Float) ->
- (a -> b) -> a -> b
-unop op f t = toPhysical (op (fromPhysical (f t)))
-instance (Physical a, Physical b) => Num (SignalRep a b) where
- f + g = FunctionRep (binop (+) (mapSignal f) (mapSignal g))
- f * g = FunctionRep (binop (*) (mapSignal f) (mapSignal g))
- negate f = FunctionRep (unop negate (mapSignal f))
- abs f = FunctionRep (unop abs (mapSignal f))
- signum f = FunctionRep (unop abs (mapSignal f))
- fromInteger i = FunctionRep (\t -> toPhysical (fromInteger i))
- --fromInt i = FunctionRep (\t -> toPhysical (fromInt i))
-instance (Physical a, Physical b) =>
- Fractional (SignalRep a b) where
- f / g = FunctionRep (binop (/) (mapSignal f) (mapSignal g))
- fromRational r = FunctionRep (\t -> (toPhysical (fromRational r)))
-instance (Physical a, Physical b) =>
- Floating (SignalRep a b) where
- pi = FunctionRep (\t -> (toPhysical pi))
- exp f = FunctionRep (unop exp (mapSignal f))
- log f = FunctionRep (unop log (mapSignal f))
- sin f = FunctionRep (unop sin (mapSignal f))
- cos f = FunctionRep (unop cos (mapSignal f))
- asin f = FunctionRep (unop asin (mapSignal f))
- acos f = FunctionRep (unop acos (mapSignal f))
- atan f = FunctionRep (unop atan (mapSignal f))
- sinh f = FunctionRep (unop sinh (mapSignal f))
- cosh f = FunctionRep (unop cosh (mapSignal f))
- asinh f = FunctionRep (unop asinh (mapSignal f))
- acosh f = FunctionRep (unop acosh (mapSignal f))
- atanh f = FunctionRep (unop atanh (mapSignal f))
-data Event =
- TimeEvent Float |
- FunctionEvent (Float -> Bool) |
- BurstEvent Int Event
-
-instance Show Event where
- show (TimeEvent f) = "TimeEvent " ++ show f
- show (FunctionEvent _) = "FunctionEvent"
- show (BurstEvent i e) = "BurstEvent " ++ show i ++ " " ++ show e
-
-instance Eq Event where
- (TimeEvent x) == (TimeEvent y) = x == y
- (BurstEvent i e) == (BurstEvent i' e') = (i' == i) && (e' == e)
-eventOccurs:: Event -> Float -> Float
-eventOccurs (TimeEvent t) x = if x < t then x else t
-eventOccurs (FunctionEvent f) x = stepEval f x
-eventOccurs (BurstEvent i e) x =
- if i == 1 then
- eventOccurs e x
- else
- eventOccurs (BurstEvent (i-1) e) ((eventOccurs e x) + eventEps x)
-stepEval:: (Float -> Bool) -> Float -> Float
-stepEval f x = if f x then x else stepEval f (x + eventEps x)
-data ZeroIndicator = LocalZero | GlobalZero deriving (Eq, Show)
-data {- (Physical a, Physical b) => -} FunctionWindow a b =
- Window ZeroIndicator Event (SignalRep a b)
- deriving (Eq, Show)
-data PieceCont a b = Windows [FunctionWindow a b]
- deriving (Eq, Show)
-instance Signal PieceCont where
- mapSignal (Windows []) t = toPhysical 0.0
- mapSignal (Windows wl) t = (mapSignal s) (toPhysical t')
- where (t', (Window z e s), wl') = getWindow 0.0 (fromPhysical t) wl
- toSig = PieceContRep
-getWindow:: (Physical a, Physical b) =>
- Float -> Float -> [ FunctionWindow a b ] ->
- (Float, FunctionWindow a b, [ FunctionWindow a b ])
-getWindow st t [] = (t, Window LocalZero e f, [])
- where e = TimeEvent (realmul 2 t)
- f = FunctionRep (\t -> toPhysical 0.0)
-getWindow st t (w:wl) = if t' <= wt then (t',w,w:wl)
- else getWindow (st+wt) t wl
- where wt = eventOccurs e t'
- (Window z e s) = w
- t' = if z == LocalZero then t-st else t
-(|>) :: (Physical a, Physical b) => FunctionWindow a b ->
- PieceCont a b -> PieceCont a b
-w |> (Windows wl) = Windows (w:wl)
-nullWindow = Windows []
-cycleWindows:: (Physical a, Physical b) =>
- PieceCont a b -> PieceCont a b
-cycleWindows (Windows wl) = Windows (cycle wl)
-constant:: (Physical a, Physical b) => b -> SignalRep a b
-constant x = FunctionRep (\t -> x)
-linear:: (Physical a, Physical b) => Float -> b -> SignalRep a b
-linear m b = FunctionRep (\x -> toPhysical (realmul m (fromPhysical x) + (fromPhysical b)))
-sine:: (Physical a, Physical b) =>
- b -> Frequency -> Float -> SignalRep a b
-sine mag omeg phase = FunctionRep (\x -> toPhysical (realmul (fromPhysical mag) (sin (realmul (realmul (realmul 2 pi) (fromPhysical omeg)) (fromPhysical x) + phase))))
-waveform:: (Physical a, Physical b) => a -> [b] -> SignalRep a b
-waveform samp ampls =
- let stepSlope y y' = realdiv ((fromPhysical y') - (fromPhysical y)) (fromPhysical samp)
- makeWin (v,v') = Window LocalZero (TimeEvent (fromPhysical samp))
- (linear (stepSlope v v') v)
- points = cycle ampls
- in PieceContRep (Windows (map makeWin (zip points (tail points))))
-random:: (Physical a, Physical b) =>
- Integer -> a -> SignalRep a b
-random i s = waveform s (map toPhysical (rand i))
-ramp:: (Physical a, Physical b) => a -> b -> SignalRep a b
-ramp per v =
- let sig = linear (realdiv (fromPhysical v) (fromPhysical per)) (toPhysical 0.0)
- in PieceContRep (Windows (cycle ([Window LocalZero (TimeEvent (fromPhysical per)) sig ])))
-triangle:: (Physical a, Physical b) => a -> b -> SignalRep a b
-triangle per v =
- let sl = realmul 2.0 (realdiv (fromPhysical v) (fromPhysical per))
- qper = realdiv (fromPhysical v) 4.0
- wins = (Window LocalZero (TimeEvent qper) (linear sl (toPhysical 0.0))) |>
- (Window LocalZero (TimeEvent (realmul 2.0 qper)) (linear (- sl) v)) |>
- (Window LocalZero (TimeEvent qper) (linear sl (toPhysical (- (fromPhysical v))))) |>
- nullWindow
- in PieceContRep (cycleWindows wins)
-step:: (Physical a, Physical b) => a -> b -> SignalRep a b
-step tr lvl = FunctionRep (\t -> if (fromPhysical t) < (fromPhysical tr) then (toPhysical 0.0) else lvl)
-square:: (Physical a, Physical b) => a -> b -> SignalRep a b
-square per lvl =
- let trans = realdiv (fromPhysical per) 2.0
- nlvl = asTypeOf (toPhysical (- (fromPhysical lvl))) lvl
- f t = if (fromPhysical t) < trans then lvl else nlvl
- wins = Windows [Window LocalZero (TimeEvent (fromPhysical per)) (FunctionRep f)]
- in PieceContRep (cycleWindows wins)
-pulse:: (Physical a, Physical b) => a -> a -> b -> SignalRep a b
-pulse st wid lvl =
- let tr = (fromPhysical st) + (fromPhysical wid)
- f t = if (fromPhysical t) < (fromPhysical st) then (toPhysical 0.0)
- else if (fromPhysical t) < tr then lvl else (toPhysical 0.0)
- in FunctionRep f
-trap:: (Physical a, Physical b) => a -> a -> a -> a -> b ->
- SignalRep a b
-trap st r wid f lvl =
- let stepSlope y y' t = realdiv (y' - y) (fromPhysical t)
- bigwin = realmul 10000000 ((fromPhysical st) + (fromPhysical wid))
- wins = Window LocalZero (TimeEvent (fromPhysical st)) (constant (toPhysical 0.0)) |>
- Window LocalZero (TimeEvent (fromPhysical r)) (linear (stepSlope 0.0 (fromPhysical lvl) r) (toPhysical 0.0)) |>
- Window LocalZero (TimeEvent (fromPhysical wid)) (constant lvl) |>
- Window LocalZero (TimeEvent (fromPhysical f)) (linear (stepSlope (fromPhysical lvl) 0.0 f) lvl) |>
- Window LocalZero (TimeEvent bigwin) (constant (toPhysical 0.0)) |>
- nullWindow
- in PieceContRep wins
-expc:: (Physical a, Physical b) => Float -> SignalRep a b
-expc damp = FunctionRep (\t -> toPhysical (exp (- (realmul (fromPhysical t) damp))))
-data {- (Physical indep, Physical dep) => -} BasicSignal indep dep =
- Overshoot {start_delay::indep,
- pulse_width::indep,
- ringing::dep,
- oscillation::Frequency,
- damp_fac::Float}
- | Pulse_dc {start_delay::indep,
- pulse_width::indep,
- rise_time::indep,
- fall_time::indep,
- period::indep,
- dc_offset::dep,
- amplitude::dep,
- over::BasicSignal indep dep,
- under::BasicSignal indep dep}
- | Pulse_ac {start_delay::indep,
- pulse_width::indep,
- period::indep,
- dc_offset::dep,
- amplitude::dep,
- frequency::Frequency,
- phase::Float}
- deriving (Eq, Show)
-
-data {- (Eq a, Eq b) => -} Foo a b = Foo { x :: a, y :: b}
-
-foo :: (Eq a, Eq b) => Foo a b
-foo = Foo{}
-
-{-
-overshoot:: (Physical a, Physical b) => BasicSignal a b
-overshoot = Overshoot{}
-pulse_dc:: (Physical a, Physical b) => BasicSignal a b
-pulse_dc = Pulse_dc {over = Overshoot{start_delay=toPhysical 0.0,
- ringing=(toPhysical 0.0),
- oscillation=toPhysical 1.0,
- damp_fac=1.0},
- under = Overshoot{start_delay=toPhysical 0.0,
- ringing=(toPhysical 0.0),
- oscillation=toPhysical 1.0,
- damp_fac=1.0},
- start_delay = toPhysical 0.0,
- dc_offset = toPhysical 0.0}
-
-pulse_ac:: (Physical a, Physical b) => BasicSignal a b
-pulse_ac = Pulse_ac {dc_offset = toPhysical 0.0,
- amplitude = toPhysical 0.0}
--}
-
-makeWin:: (Physical a, Physical b) => a -> a ->
- SignalRep a b -> SignalRep a b
-makeWin st wid sig =
- let wins = Window LocalZero (TimeEvent (fromPhysical st)) (constant (toPhysical 0.0)) |>
- Window LocalZero (TimeEvent (fromPhysical wid)) sig |>
- nullWindow
- in PieceContRep wins
-instance Signal BasicSignal where
- toSig (Overshoot start_delay pulse_width ringing oscillation damp_fac) =
- let ring = sine ringing oscillation 0.0
- cond = asTypeOf (expc damp_fac) ring
- sig = temp ring cond
- temp:: (Physical a, Physical b) => SignalRep a b ->
- SignalRep a b -> SignalRep a b
- temp f g = FunctionRep (binop (*) (mapSignal f) (mapSignal g))
--- temp f g = f * g
--- temp f g = asTypeOf (f * g) ring
- wins = Window LocalZero (TimeEvent (fromPhysical start_delay)) (constant (toPhysical 0.0)) |>
- Window LocalZero (TimeEvent (fromPhysical pulse_width)) sig |>
- nullWindow
- in PieceContRep wins
- toSig Pulse_dc{ start_delay = start_delay
- , rise_time = rise_time
- , pulse_width = pulse_width
- , fall_time = fall_time
- , dc_offset = dc_offset
- , period = period
- , amplitude = amplitude
- , over = over
- , under = under
- } =
- let pul = trap start_delay rise_time pulse_width fall_time amplitude
- so = toPhysical ((fromPhysical start_delay) + (fromPhysical rise_time))
- su = toPhysical ((fromPhysical so) + (fromPhysical pulse_width) + (fromPhysical fall_time))
- oversh = toSig over{start_delay=so}
- undersh = toSig under{start_delay=su}
- off = constant dc_offset
- temp:: (Physical a, Physical b) => SignalRep a b ->
- SignalRep a b -> SignalRep a b
- temp f g = FunctionRep (binop (+) (mapSignal f) (mapSignal g))
- sig = temp (temp (temp pul oversh) undersh) off
- wins = (Window LocalZero (TimeEvent (fromPhysical period)) sig) |>
- nullWindow
- in PieceContRep (cycleWindows wins)
-sumSig:: (Physical a, Physical b, Signal s, Signal s') =>
- (s a b) -> (s' a b) -> SignalRep a b
-sumSig f f' =
- let s1 t = fromPhysical (mapSignal f t)
- s2 t = fromPhysical (mapSignal f' t)
- in FunctionRep (\t -> toPhysical ((s1 t) + (s2 t)))
-mulSig:: (Physical a, Physical b, Signal s, Signal s') =>
- (s a b) -> (s' a b) -> SignalRep a b
-mulSig f f' =
- let f1 t = fromPhysical (mapSignal f t)
- f2 t = fromPhysical (mapSignal f' t)
- in FunctionRep (\t -> toPhysical ((f1 t) * (f2 t)))
-
-eventEps:: Float -> Float
-eventEps x = let eps = realdiv x 1000 in if 0.01 < eps then 0.01 else eps
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Bug.hs b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Bug.hs
deleted file mode 100644
index 0f75dffc94..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Bug.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Bug where
-
-data Eq a => Foo a = Foo { x :: a }
-
-foo :: Foo Int
-foo = Foo{}
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Expected.hs b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Expected.hs
deleted file mode 100644
index a047c2ed29..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Expected.hs
+++ /dev/null
@@ -1,5009 +0,0 @@
-
-module Expected (sinExpected, pieceExpected) where
-
-sinExpected :: [(Float, Float)]
-sinExpected = [
- (0.0, 0.0),
- (4.0e-4, 5.0260194e-2),
- (8.0e-4, 0.10048864),
- (1.1999999e-3, 0.1506536),
- (1.6e-3, 0.20072344),
- (1.9999999e-3, 0.25066644),
- (2.3999999e-3, 0.30045116),
- (2.8e-3, 0.35004613),
- (3.2e-3, 0.39941996),
- (3.6e-3, 0.44854155),
- (3.9999997e-3, 0.49737975),
- (4.3999995e-3, 0.54590386),
- (4.7999993e-3, 0.5940831),
- (5.199999e-3, 0.6418871),
- (5.599999e-3, 0.68928576),
- (5.9999987e-3, 0.736249),
- (6.3999984e-3, 0.7827472),
- (6.799998e-3, 0.82875097),
- (7.199998e-3, 0.87423134),
- (7.599998e-3, 0.9191595),
- (7.999998e-3, 0.96350706),
- (8.399998e-3, 1.0072463),
- (8.799998e-3, 1.0503491),
- (9.199998e-3, 1.0927886),
- (9.599999e-3, 1.1345378),
- (9.999999e-3, 1.1755705),
- (1.0399999e-2, 1.2158606),
- (1.0799999e-2, 1.2553827),
- (1.12e-2, 1.294112),
- (1.16e-2, 1.3320237),
- (1.2e-2, 1.3690943),
- (1.24e-2, 1.4053),
- (1.2800001e-2, 1.4406182),
- (1.3200001e-2, 1.4750264),
- (1.3600001e-2, 1.5085028),
- (1.4000001e-2, 1.5410266),
- (1.4400002e-2, 1.572577),
- (1.4800002e-2, 1.6031342),
- (1.5200002e-2, 1.6326787),
- (1.5600002e-2, 1.661192),
- (1.6000003e-2, 1.6886561),
- (1.6400002e-2, 1.7150536),
- (1.6800001e-2, 1.7403677),
- (1.72e-2, 1.7645825),
- (1.76e-2, 1.7876829),
- (1.8e-2, 1.8096541),
- (1.8399999e-2, 1.8304824),
- (1.8799998e-2, 1.8501544),
- (1.9199997e-2, 1.8686578),
- (1.9599997e-2, 1.885981),
- (1.9999996e-2, 1.902113),
- (2.0399995e-2, 1.9170434),
- (2.0799994e-2, 1.9307631),
- (2.1199994e-2, 1.9432633),
- (2.1599993e-2, 1.9545361),
- (2.1999992e-2, 1.9645743),
- (2.2399992e-2, 1.9733717),
- (2.2799991e-2, 1.9809227),
- (2.319999e-2, 1.9872226),
- (2.359999e-2, 1.9922671),
- (2.3999989e-2, 1.9960533),
- (2.4399988e-2, 1.9985789),
- (2.4799988e-2, 1.999842),
- (2.5199987e-2, 1.999842),
- (2.5599986e-2, 1.998579),
- (2.5999986e-2, 1.9960536),
- (2.6399985e-2, 1.9922674),
- (2.6799984e-2, 1.9872228),
- (2.7199984e-2, 1.980923),
- (2.7599983e-2, 1.9733722),
- (2.7999982e-2, 1.9645749),
- (2.8399982e-2, 1.9545367),
- (2.879998e-2, 1.943264),
- (2.919998e-2, 1.930764),
- (2.959998e-2, 1.9170443),
- (2.9999979e-2, 1.9021138),
- (3.0399978e-2, 1.8859819),
- (3.0799977e-2, 1.8686588),
- (3.1199977e-2, 1.8501555),
- (3.1599976e-2, 1.8304834),
- (3.1999975e-2, 1.8096554),
- (3.2399975e-2, 1.7876841),
- (3.2799974e-2, 1.7645838),
- (3.3199973e-2, 1.7403691),
- (3.3599973e-2, 1.715055),
- (3.3999972e-2, 1.6886578),
- (3.439997e-2, 1.6611936),
- (3.479997e-2, 1.6326804),
- (3.519997e-2, 1.6031361),
- (3.559997e-2, 1.5725791),
- (3.599997e-2, 1.541029),
- (3.6399968e-2, 1.5085055),
- (3.6799967e-2, 1.4750288),
- (3.7199967e-2, 1.4406208),
- (3.7599966e-2, 1.4053029),
- (3.7999965e-2, 1.3690974),
- (3.8399965e-2, 1.3320271),
- (3.8799964e-2, 1.2941151),
- (3.9199963e-2, 1.2553861),
- (3.9599963e-2, 1.2158642),
- (3.999996e-2, 1.1755743),
- (4.039996e-2, 1.1345419),
- (4.079996e-2, 1.0927929),
- (4.119996e-2, 1.0503532),
- (4.159996e-2, 1.0072505),
- (4.199996e-2, 0.9635117),
- (4.2399958e-2, 0.9191643),
- (4.2799957e-2, 0.87423635),
- (4.3199956e-2, 0.82875574),
- (4.3599956e-2, 0.7827521),
- (4.3999955e-2, 0.7362541),
- (4.4399954e-2, 0.68929106),
- (4.4799954e-2, 0.6418926),
- (4.5199953e-2, 0.5940888),
- (4.5599952e-2, 0.5459092),
- (4.599995e-2, 0.49738535),
- (4.639995e-2, 0.4485473),
- (4.679995e-2, 0.39942592),
- (4.719995e-2, 0.3500523),
- (4.759995e-2, 0.30045706),
- (4.799995e-2, 0.25067255),
- (4.8399948e-2, 0.2007297),
- (4.8799947e-2, 0.15066005),
- (4.9199946e-2, 0.100495264),
- (4.9599946e-2, 5.0266996e-2),
- (4.9999945e-2, 6.500875e-6),
- (5.0399944e-2, -5.025352e-2),
- (5.0799944e-2, -0.1004818),
- (5.1199943e-2, -0.15064661),
- (5.1599942e-2, -0.20071629),
- (5.199994e-2, -0.25065964),
- (5.239994e-2, -0.30044422),
- (5.279994e-2, -0.350039),
- (5.319994e-2, -0.39941272),
- (5.359994e-2, -0.44853416),
- (5.3999938e-2, -0.4973723),
- (5.4399937e-2, -0.5458967),
- (5.4799937e-2, -0.5940759),
- (5.5199936e-2, -0.64187986),
- (5.5599935e-2, -0.6892784),
- (5.5999935e-2, -0.7362416),
- (5.6399934e-2, -0.7827402),
- (5.6799933e-2, -0.82874393),
- (5.7199933e-2, -0.87422425),
- (5.7599932e-2, -0.9191523),
- (5.799993e-2, -0.9634999),
- (5.839993e-2, -1.0072393),
- (5.879993e-2, -1.0503422),
- (5.919993e-2, -1.0927815),
- (5.959993e-2, -1.1345308),
- (5.9999928e-2, -1.1755633),
- (6.0399927e-2, -1.2158535),
- (6.0799927e-2, -1.255376),
- (6.1199926e-2, -1.2941052),
- (6.1599925e-2, -1.332017),
- (6.1999924e-2, -1.3690875),
- (6.2399924e-2, -1.4052932),
- (6.279992e-2, -1.4406117),
- (6.319992e-2, -1.4750199),
- (6.359992e-2, -1.5084965),
- (6.399992e-2, -1.5410206),
- (6.439992e-2, -1.5725712),
- (6.479992e-2, -1.6031283),
- (6.519992e-2, -1.6326729),
- (6.559992e-2, -1.6611863),
- (6.599992e-2, -1.6886505),
- (6.639992e-2, -1.7150481),
- (6.679992e-2, -1.7403624),
- (6.7199916e-2, -1.7645775),
- (6.7599915e-2, -1.7876781),
- (6.7999914e-2, -1.8096495),
- (6.839991e-2, -1.8304783),
- (6.879991e-2, -1.8501506),
- (6.919991e-2, -1.8686541),
- (6.959991e-2, -1.8859775),
- (6.999991e-2, -1.9021097),
- (7.039991e-2, -1.9170405),
- (7.079991e-2, -1.9307604),
- (7.119991e-2, -1.9432608),
- (7.159991e-2, -1.9545338),
- (7.199991e-2, -1.9645723),
- (7.239991e-2, -1.97337),
- (7.2799906e-2, -1.9809214),
- (7.3199905e-2, -1.9872214),
- (7.3599905e-2, -1.9922662),
- (7.3999904e-2, -1.9960527),
- (7.43999e-2, -1.9985785),
- (7.47999e-2, -1.9998419),
- (7.51999e-2, -1.9998423),
- (7.55999e-2, -1.9985794),
- (7.59999e-2, -1.9960542),
- (7.63999e-2, -1.9922683),
- (7.67999e-2, -1.9872241),
- (7.71999e-2, -1.9809245),
- (7.75999e-2, -1.9733739),
- (7.79999e-2, -1.9645768),
- (7.83999e-2, -1.9545388),
- (7.8799896e-2, -1.9432664),
- (7.9199895e-2, -1.9307666),
- (7.9599895e-2, -1.9170473),
- (7.9999894e-2, -1.902117),
- (8.039989e-2, -1.8859855),
- (8.079989e-2, -1.8686627),
- (8.119989e-2, -1.8501595),
- (8.159989e-2, -1.8304875),
- (8.199989e-2, -1.8096596),
- (8.239989e-2, -1.7876887),
- (8.279989e-2, -1.7645887),
- (8.319989e-2, -1.7403742),
- (8.359989e-2, -1.7150604),
- (8.399989e-2, -1.6886632),
- (8.439989e-2, -1.6611996),
- (8.4799886e-2, -1.6326867),
- (8.5199885e-2, -1.6031425),
- (8.5599884e-2, -1.5725858),
- (8.599988e-2, -1.5410352),
- (8.639988e-2, -1.5085119),
- (8.679988e-2, -1.4750358),
- (8.719988e-2, -1.4406279),
- (8.759988e-2, -1.4053102),
- (8.799988e-2, -1.3691049),
- (8.839988e-2, -1.3320347),
- (8.879988e-2, -1.2941233),
- (8.919988e-2, -1.2553945),
- (8.959988e-2, -1.2158726),
- (8.999988e-2, -1.175583),
- (9.0399876e-2, -1.13455),
- (9.0799876e-2, -1.0928011),
- (9.1199875e-2, -1.050362),
- (9.1599874e-2, -1.0072595),
- (9.199987e-2, -0.96352077),
- (9.239987e-2, -0.9191735),
- (9.279987e-2, -0.87424564),
- (9.319987e-2, -0.8287656),
- (9.359987e-2, -0.78276205),
- (9.399987e-2, -0.73626417),
- (9.439987e-2, -0.6893012),
- (9.479987e-2, -0.64190197),
- (9.519987e-2, -0.59409815),
- (9.559987e-2, -0.5459192),
- (9.599987e-2, -0.49739534),
- (9.6399866e-2, -0.44855735),
- (9.6799865e-2, -0.39943603),
- (9.7199865e-2, -0.35006243),
- (9.7599864e-2, -0.30046773),
- (9.799986e-2, -0.25068325),
- (9.839986e-2, -0.20074043),
- (9.879986e-2, -0.15067083),
- (9.919986e-2, -0.10050509),
- (9.959986e-2, -5.027683e-2),
- (9.999986e-2, -1.6816446e-5),
- (0.10039986, 5.024321e-2),
- (0.10079986, 0.100471504),
- (0.10119986, 0.15063633),
- (0.10159986, 0.20070602),
- (0.10199986, 0.25064895),
- (0.102399856, 0.30043355),
- (0.102799855, 0.3500284),
- (0.103199854, 0.39940214),
- (0.103599854, 0.44852456),
- (0.10399985, 0.49736276),
- (0.10439985, 0.5458868),
- (0.10479985, 0.5940661),
- (0.10519985, 0.6418701),
- (0.10559985, 0.6892687),
- (0.10599985, 0.736232),
- (0.10639985, 0.7827302),
- (0.10679985, 0.8287341),
- (0.10719985, 0.87421453),
- (0.10759985, 0.9191428),
- (0.10799985, 0.9634913),
- (0.108399846, 1.0072304),
- (0.108799845, 1.0503334),
- (0.109199844, 1.092773),
- (0.10959984, 1.1345222),
- (0.10999984, 1.175555),
- (0.11039984, 1.2158452),
- (0.11079984, 1.2553675),
- (0.11119984, 1.294097),
- (0.11159984, 1.332009),
- (0.11199984, 1.3690796),
- (0.11239984, 1.4052863),
- (0.11279984, 1.4406046),
- (0.11319984, 1.475013),
- (0.11359984, 1.5084898),
- (0.113999836, 1.5410138),
- (0.114399835, 1.5725645),
- (0.114799835, 1.6031219),
- (0.115199834, 1.6326667),
- (0.11559983, 1.6611804),
- (0.11599983, 1.6886448),
- (0.11639983, 1.7150426),
- (0.11679983, 1.7403576),
- (0.11719983, 1.7645729),
- (0.11759983, 1.7876737),
- (0.11799983, 1.8096453),
- (0.11839983, 1.8304739),
- (0.11879983, 1.8501464),
- (0.11919983, 1.8686503),
- (0.11959983, 1.8859739),
- (0.119999826, 1.9021064),
- (0.120399825, 1.9170374),
- (0.120799825, 1.9307575),
- (0.121199824, 1.9432585),
- (0.12159982, 1.9545318),
- (0.12199982, 1.9645705),
- (0.12239982, 1.9733684),
- (0.12279982, 1.9809198),
- (0.12319982, 1.9872202),
- (0.12359982, 1.9922652),
- (0.12399982, 1.996052),
- (0.12439982, 1.9985781),
- (0.12479982, 1.9998418),
- (0.12519982, 1.9998424),
- (0.12559983, 1.9985797),
- (0.12599984, 1.9960546),
- (0.12639984, 1.9922688),
- (0.12679985, 1.9872246),
- (0.12719986, 1.9809252),
- (0.12759987, 1.9733747),
- (0.12799987, 1.9645776),
- (0.12839988, 1.9545392),
- (0.12879989, 1.9432665),
- (0.12919989, 1.9307665),
- (0.1295999, 1.9170468),
- (0.1299999, 1.9021163),
- (0.13039991, 1.8859843),
- (0.13079992, 1.868661),
- (0.13119993, 1.8501575),
- (0.13159993, 1.8304853),
- (0.13199994, 1.8096569),
- (0.13239995, 1.7876855),
- (0.13279995, 1.7645848),
- (0.13319996, 1.7403696),
- (0.13359997, 1.7150551),
- (0.13399997, 1.6886573),
- (0.13439998, 1.6611929),
- (0.13479999, 1.6326791),
- (0.1352, 1.6031342),
- (0.1356, 1.5725766),
- (0.136, 1.5410256),
- (0.13640001, 1.5085014),
- (0.13680002, 1.4750243),
- (0.13720003, 1.4406155),
- (0.13760003, 1.4052968),
- (0.13800004, 1.3690904),
- (0.13840005, 1.3320193),
- (0.13880005, 1.2941068),
- (0.13920006, 1.2553754),
- (0.13960007, 1.2158525),
- (0.14000008, 1.1755617),
- (0.14040008, 1.1345282),
- (0.14080009, 1.0927782),
- (0.1412001, 1.0503379),
- (0.1416001, 1.0072342),
- (0.14200011, 0.9634943),
- (0.14240012, 0.9191458),
- (0.14280012, 0.87421674),
- (0.14320013, 0.8287355),
- (0.14360014, 0.78273076),
- (0.14400014, 0.7362316),
- (0.14440015, 0.68926746),
- (0.14480016, 0.64186794),
- (0.14520016, 0.5940629),
- (0.14560017, 0.54588276),
- (0.14600018, 0.49735776),
- (0.14640018, 0.4485186),
- (0.14680019, 0.39939615),
- (0.1472002, 0.35002142),
- (0.1476002, 0.30042562),
- (0.14800021, 0.25064003),
- (0.14840022, 0.20069614),
- (0.14880022, 0.15062548),
- (0.14920023, 0.10045967),
- (0.14960024, 5.0230417e-2),
- (0.15000024, -3.2472628e-5),
- (0.15040025, -5.0293438e-2),
- (0.15080026, -0.10052263),
- (0.15120026, -0.15068834),
- (0.15160027, -0.20075886),
- (0.15200028, -0.25070256),
- (0.15240029, -0.30048794),
- (0.15280029, -0.3500835),
- (0.1532003, -0.39945793),
- (0.1536003, -0.44858003),
- (0.15400031, -0.49741882),
- (0.15440032, -0.5459434),
- (0.15480033, -0.5941231),
- (0.15520033, -0.6419276),
- (0.15560034, -0.68932664),
- (0.15600035, -0.7362902),
- (0.15640035, -0.78278875),
- (0.15680036, -0.8287928),
- (0.15720037, -0.8742734),
- (0.15760037, -0.9192018),
- (0.15800038, -0.96354955),
- (0.15840039, -1.0072887),
- (0.1588004, -1.0503916),
- (0.1592004, -1.092831),
- (0.1596004, -1.1345801),
- (0.16000041, -1.1756126),
- (0.16040042, -1.2159026),
- (0.16080043, -1.2554245),
- (0.16120043, -1.2941549),
- (0.16160044, -1.3320663),
- (0.16200045, -1.3691365),
- (0.16240045, -1.4053416),
- (0.16280046, -1.4406593),
- (0.16320047, -1.4750669),
- (0.16360047, -1.5085428),
- (0.16400048, -1.5410659),
- (0.16440049, -1.5726155),
- (0.1648005, -1.6031718),
- (0.1652005, -1.6327156),
- (0.16560051, -1.661228),
- (0.16600052, -1.688691),
- (0.16640052, -1.7150875),
- (0.16680053, -1.7404007),
- (0.16720054, -1.7646145),
- (0.16760054, -1.7877138),
- (0.16800055, -1.8096838),
- (0.16840056, -1.8305107),
- (0.16880056, -1.8501815),
- (0.16920057, -1.8686836),
- (0.16960058, -1.8860053),
- (0.17000058, -1.9021357),
- (0.17040059, -1.9170648),
- (0.1708006, -1.9307829),
- (0.1712006, -1.9432814),
- (0.17160061, -1.9545525),
- (0.17200062, -1.9645894),
- (0.17240062, -1.973385),
- (0.17280063, -1.980934),
- (0.17320064, -1.9872319),
- (0.17360064, -1.9922745),
- (0.17400065, -1.9960587),
- (0.17440066, -1.9985821),
- (0.17480066, -1.9998431),
- (0.17520067, -1.999841),
- (0.17560068, -1.9985757),
- (0.17600068, -1.996048),
- (0.17640069, -1.9922595),
- (0.1768007, -1.9872127),
- (0.1772007, -1.9809105),
- (0.17760071, -1.9733572),
- (0.17800072, -1.9645574),
- (0.17840073, -1.9545168),
- (0.17880073, -1.9432416),
- (0.17920074, -1.9307389),
- (0.17960075, -1.9170167),
- (0.18000075, -1.9020836),
- (0.18040076, -1.8859491),
- (0.18080077, -1.8686235),
- (0.18120077, -1.8501174),
- (0.18160078, -1.8304428),
- (0.18200079, -1.8096119),
- (0.1824008, -1.7876381),
- (0.1828008, -1.7645352),
- (0.1832008, -1.7403166),
- (0.18360081, -1.7149998),
- (0.18400082, -1.6885997),
- (0.18440083, -1.661133),
- (0.18480083, -1.6326171),
- (0.18520084, -1.6030699),
- (0.18560085, -1.5725102),
- (0.18600085, -1.5409572),
- (0.18640086, -1.5084308),
- (0.18680087, -1.4749517),
- (0.18720087, -1.440541),
- (0.18760088, -1.4052204),
- (0.18800089, -1.3690121),
- (0.1884009, -1.3319391),
- (0.1888009, -1.2940248),
- (0.18920091, -1.2552933),
- (0.18960091, -1.2157687),
- (0.19000092, -1.1754762),
- (0.19040093, -1.1344413),
- (0.19080094, -1.0926898),
- (0.19120094, -1.0502481),
- (0.19160095, -1.007143),
- (0.19200096, -0.9634018),
- (0.19240096, -0.91905206),
- (0.19280097, -0.8741218),
- (0.19320098, -0.8286394),
- (0.19360098, -0.7826336),
- (0.19400099, -0.73613167),
- (0.194401, -0.68916655),
- (0.194801, -0.64176613),
- (0.19520101, -0.59396034),
- (0.19560102, -0.54577935),
- (0.19600102, -0.49725366),
- (0.19640103, -0.44841388),
- (0.19680104, -0.39929086),
- (0.19720104, -0.34991562),
- (0.19760105, -0.30031937),
- (0.19800106, -0.2505334),
- (0.19840106, -0.20058921),
- (0.19880107, -0.15051831),
- (0.19920108, -0.10035235),
- (0.19960108, -5.0122987e-2),
- (0.20000109, 1.3802848e-4),
- (0.2004011, 5.0398957e-2),
- (0.2008011, 0.100628056),
- (0.20120111, 0.1507936),
- (0.20160112, 0.20086388),
- (0.20200112, 0.2508073),
- (0.20240113, 0.30059227),
- (0.20280114, 0.35018742),
- (0.20320114, 0.39956135),
- (0.20360115, 0.4486829),
- (0.20400116, 0.49752104),
- (0.20440117, 0.54604495),
- (0.20480117, 0.59422576),
- (0.20520118, 0.6420294),
- (0.20560119, 0.6894275),
- (0.20600119, 0.7363901),
- (0.2064012, 0.78288764),
- (0.2068012, 0.8288906),
- (0.20720121, 0.8743701),
- (0.20760122, 0.9192972),
- (0.20800123, 0.9636437),
- (0.20840123, 1.0073816),
- (0.20880124, 1.050483),
- (0.20920125, 1.092921),
- (0.20960125, 1.1346686),
- (0.21000126, 1.1756996),
- (0.21040127, 1.2159879),
- (0.21080127, 1.2555081),
- (0.21120128, 1.2942353),
- (0.21160129, 1.3321451),
- (0.2120013, 1.3692133),
- (0.2124013, 1.4054167),
- (0.2128013, 1.4407325),
- (0.21320131, 1.4751382),
- (0.21360132, 1.5086122),
- (0.21400133, 1.5411332),
- (0.21440133, 1.5726807),
- (0.21480134, 1.603235),
- (0.21520135, 1.6327765),
- (0.21560135, 1.6612867),
- (0.21600136, 1.6887486),
- (0.21640137, 1.7151428),
- (0.21680138, 1.7404536),
- (0.21720138, 1.7646651),
- (0.21760139, 1.7877619),
- (0.2180014, 1.8097295),
- (0.2184014, 1.830554),
- (0.21880141, 1.8502222),
- (0.21920142, 1.8687218),
- (0.21960142, 1.886041),
- (0.22000143, 1.902169),
- (0.22040144, 1.9170954),
- (0.22080144, 1.9308109),
- (0.22120145, 1.9433068),
- (0.22160146, 1.9545753),
- (0.22200146, 1.9646091),
- (0.22240147, 1.9734021),
- (0.22280148, 1.9809486),
- (0.22320148, 1.9872438),
- (0.22360149, 1.9922837),
- (0.2240015, 1.9960653),
- (0.2244015, 1.998586),
- (0.22480151, 1.9998444),
- (0.22520152, 1.9998397),
- (0.22560152, 1.9985718),
- (0.22600153, 1.9960413),
- (0.22640154, 1.9922502),
- (0.22680154, 1.9872005),
- (0.22720155, 1.9808956),
- (0.22760156, 1.9733397),
- (0.22800156, 1.9645373),
- (0.22840157, 1.954494),
- (0.22880158, 1.9432161),
- (0.22920159, 1.9307109),
- (0.22960159, 1.9169861),
- (0.2300016, 1.9020505),
- (0.2304016, 1.8859134),
- (0.23080161, 1.8685851),
- (0.23120162, 1.8500766),
- (0.23160163, 1.8303995),
- (0.23200163, 1.8095663),
- (0.23240164, 1.7875899),
- (0.23280165, 1.7644845),
- (0.23320165, 1.7402647),
- (0.23360166, 1.7149456),
- (0.23400167, 1.6885431),
- (0.23440167, 1.6610742),
- (0.23480168, 1.6325561),
- (0.23520169, 1.6030068),
- (0.2356017, 1.5724449),
- (0.2360017, 1.5408899),
- (0.2364017, 1.5083616),
- (0.23680171, 1.4748805),
- (0.23720172, 1.4404678),
- (0.23760173, 1.4051453),
- (0.23800173, 1.3689338),
- (0.23840174, 1.331859),
- (0.23880175, 1.2939429),
- (0.23920175, 1.2552096),
- (0.23960176, 1.2156833),
- (0.24000177, 1.1753893),
- (0.24040177, 1.1343528),
- (0.24080178, 1.0925997),
- (0.24120179, 1.0501566),
- (0.2416018, 1.0070502),
- (0.2420018, 0.9633076),
- (0.24240181, 0.9189566),
- (0.24280182, 0.8740251),
- (0.24320182, 0.8285416),
- (0.24360183, 0.7825347),
- (0.24400184, 0.73603356),
- (0.24440184, 0.6890675),
- (0.24480185, 0.6416662),
- (0.24520186, 0.59385955),
- (0.24560186, 0.54567784),
- (0.24600187, 0.49715143),
- (0.24640188, 0.448311),
- (0.24680188, 0.39918742),
- (0.24720189, 0.3498117),
- (0.2476019, 0.300215),
- (0.2480019, 0.25042868),
- (0.24840191, 0.20048419),
- (0.24880192, 0.15041116),
- (0.24920192, 0.10024502),
- (0.24960193, 5.001556e-2),
- (0.25000194, -2.4549168e-4),
- (0.25040194, -5.0506387e-2),
- (0.25080195, -0.10073538),
- (0.25120196, -0.15090075),
- (0.25160196, -0.2009708),
- (0.25200197, -0.25091392),
- (0.25240198, -0.30069852),
- (0.25280198, -0.35029322),
- (0.253202, -0.39966664),
- (0.253602, -0.44878763),
- (0.254002, -0.49762514),
- (0.254402, -0.5461483),
- (0.25480202, -0.59432656),
- (0.25520203, -0.64212936),
- (0.25560203, -0.6895266),
- (0.25600204, -0.7364883),
- (0.25640205, -0.7829848),
- (0.25680205, -0.8289867),
- (0.25720206, -0.874465),
- (0.25760207, -0.919391),
- (0.25800207, -0.9637362),
- (0.25840208, -1.0074726),
- (0.2588021, -1.0505729),
- (0.2592021, -1.0930094),
- (0.2596021, -1.1347555),
- (0.2600021, -1.175785),
- (0.2604021, -1.2160717),
- (0.26080212, -1.2555903),
- (0.26120213, -1.2943158),
- (0.26160213, -1.3322238),
- (0.26200214, -1.3692902),
- (0.26240215, -1.4054918),
- (0.26280215, -1.4408057),
- (0.26320216, -1.4752095),
- (0.26360217, -1.5086814),
- (0.26400217, -1.5412004),
- (0.26440218, -1.5727459),
- (0.2648022, -1.6032981),
- (0.2652022, -1.6328397),
- (0.2656022, -1.6613476),
- (0.2660022, -1.6888062),
- (0.2664022, -1.715198),
- (0.26680222, -1.7405065),
- (0.26720223, -1.7647157),
- (0.26760224, -1.7878101),
- (0.26800224, -1.8097752),
- (0.26840225, -1.8305973),
- (0.26880226, -1.8502631),
- (0.26920226, -1.8687601),
- (0.26960227, -1.8860768),
- (0.27000228, -1.9022021),
- (0.27040228, -1.917126),
- (0.2708023, -1.930839),
- (0.2712023, -1.9433322),
- (0.2716023, -1.9545981),
- (0.2720023, -1.9646293),
- (0.27240232, -1.9734195),
- (0.27280232, -1.9809633),
- (0.27320233, -1.9872558),
- (0.27360234, -1.9922931),
- (0.27400234, -1.996072),
- (0.27440235, -1.9985901),
- (0.27480236, -1.9998459),
- (0.27520236, -1.9998384),
- (0.27560237, -1.9985676),
- (0.27600238, -1.9960346),
- (0.27640238, -1.9922408),
- (0.2768024, -1.9871886),
- (0.2772024, -1.9808811),
- (0.2776024, -1.9733225),
- (0.2780024, -1.9645175),
- (0.27840242, -1.9544716),
- (0.27880242, -1.9431912),
- (0.27920243, -1.9306833),
- (0.27960244, -1.916956),
- (0.28000244, -1.9020178),
- (0.28040245, -1.8858782),
- (0.28080246, -1.8685476),
- (0.28120247, -1.8500365),
- (0.28160247, -1.830357),
- (0.28200248, -1.8095212),
- (0.2824025, -1.7875426),
- (0.2828025, -1.7644348),
- (0.2832025, -1.7402126),
- (0.2836025, -1.7148912),
- (0.2840025, -1.6884866),
- (0.28440252, -1.6610154),
- (0.28480253, -1.6324952),
- (0.28520253, -1.6029437),
- (0.28560254, -1.5723797),
- (0.28600255, -1.5408226),
- (0.28640255, -1.5082922),
- (0.28680256, -1.4748092),
- (0.28720257, -1.4403919),
- (0.28760257, -1.4050674),
- (0.28800258, -1.3688555),
- (0.2884026, -1.3317788),
- (0.2888026, -1.293861),
- (0.2892026, -1.2551259),
- (0.2896026, -1.215598),
- (0.2900026, -1.1753024),
- (0.29040262, -1.1342642),
- (0.29080263, -1.0925097),
- (0.29120263, -1.0500652),
- (0.29160264, -1.0069573),
- (0.29200265, -0.96321344),
- (0.29240265, -0.91886115),
- (0.29280266, -0.8739285),
- (0.29320267, -0.82844377),
- (0.29360268, -0.78243583),
- (0.29400268, -0.7359336),
- (0.2944027, -0.6889666),
- (0.2948027, -0.64156437),
- (0.2952027, -0.5937569),
- (0.2956027, -0.5455744),
- (0.29600272, -0.49704733),
- (0.29640272, -0.44820628),
- (0.29680273, -0.39908212),
- (0.29720274, -0.34970587),
- (0.29760274, -0.30010876),
- (0.29800275, -0.25032207),
- (0.29840276, -0.20037727),
- (0.29880276, -0.1503059),
- (0.29920277, -0.100139596),
- (0.29960278, -4.9910035e-2),
- (0.30000278, 3.5104755e-4),
- (0.3004028, 5.061191e-2),
- (0.3008028, 0.10084081),
- (0.3012028, 0.151006),
- (0.3016028, 0.20107582),
- (0.30200282, 0.25101864),
- (0.30240282, 0.3008029),
- (0.30280283, 0.35039714),
- (0.30320284, 0.39977008),
- (0.30360284, 0.44889048),
- (0.30400285, 0.49772736),
- (0.30440286, 0.54624987),
- (0.30480286, 0.59442735),
- (0.30520287, 0.6422293),
- (0.30560288, 0.6896257),
- (0.3060029, 0.7365864),
- (0.3064029, 0.7830819),
- (0.3068029, 0.8290828),
- (0.3072029, 0.87455994),
- (0.3076029, 0.9194847),
- (0.30800292, 0.9638287),
- (0.30840293, 1.0075638),
- (0.30880293, 1.0506626),
- (0.30920294, 1.093101),
- (0.30960295, 1.1348456),
- (0.31000295, 1.1758734),
- (0.31040296, 1.2161585),
- (0.31080297, 1.2556754),
- (0.31120297, 1.2943991),
- (0.31160298, 1.3323053),
- (0.312003, 1.36937),
- (0.312403, 1.4055697),
- (0.312803, 1.4408816),
- (0.313203, 1.4752833),
- (0.313603, 1.5087532),
- (0.31400302, 1.5412701),
- (0.31440303, 1.5728135),
- (0.31480303, 1.6033634),
- (0.31520304, 1.6329006),
- (0.31560305, 1.6614064),
- (0.31600305, 1.6888628),
- (0.31640306, 1.7152524),
- (0.31680307, 1.7405585),
- (0.31720307, 1.7647653),
- (0.31760308, 1.7878574),
- (0.3180031, 1.8098202),
- (0.3184031, 1.8306398),
- (0.3188031, 1.8503032),
- (0.3192031, 1.8687978),
- (0.31960312, 1.886112),
- (0.32000312, 1.9022348),
- (0.32040313, 1.9171561),
- (0.32080314, 1.9308665),
- (0.32120314, 1.9433572),
- (0.32160315, 1.9546204),
- (0.32200316, 1.9646491),
- (0.32240316, 1.9734367),
- (0.32280317, 1.9809779),
- (0.32320318, 1.9872677),
- (0.32360318, 1.9923024),
- (0.3240032, 1.9960786),
- (0.3244032, 1.998594),
- (0.3248032, 1.9998472),
- (0.3252032, 1.9998369),
- (0.32560322, 1.9985636),
- (0.32600322, 1.996028),
- (0.32640323, 1.9922315),
- (0.32680324, 1.9871767),
- (0.32720324, 1.9808666),
- (0.32760325, 1.9733053),
- (0.32800326, 1.9644977),
- (0.32840326, 1.9544492),
- (0.32880327, 1.9431661),
- (0.32920328, 1.9306557),
- (0.32960328, 1.9169259),
- (0.3300033, 1.9019852),
- (0.3304033, 1.8858432),
- (0.3308033, 1.8685085),
- (0.3312033, 1.8499949),
- (0.33160332, 1.8303128),
- (0.33200333, 1.8094747),
- (0.33240333, 1.7874936),
- (0.33280334, 1.7643833),
- (0.33320335, 1.7401587),
- (0.33360335, 1.7148349),
- (0.33400336, 1.6884279),
- (0.33440337, 1.6609545),
- (0.33480337, 1.632432),
- (0.33520338, 1.6028782),
- (0.3356034, 1.5723121),
- (0.3360034, 1.5407529),
- (0.3364034, 1.5082204),
- (0.3368034, 1.4747353),
- (0.3372034, 1.4403187),
- (0.33760342, 1.4049923),
- (0.33800343, 1.3687785),
- (0.33840343, 1.3317001),
- (0.33880344, 1.2937804),
- (0.33920345, 1.2550437),
- (0.33960345, 1.2155142),
- (0.34000346, 1.1752169),
- (0.34040347, 1.1341773),
- (0.34080347, 1.0924213),
- (0.34120348, 1.0499753),
- (0.3416035, 1.0068661),
- (0.3420035, 0.96312094),
- (0.3424035, 0.9187674),
- (0.3428035, 0.87383354),
- (0.3432035, 0.8283477),
- (0.34360352, 0.7823387),
- (0.34400353, 0.7358355),
- (0.34440354, 0.6888675),
- (0.34480354, 0.6414644),
- (0.34520355, 0.5936561),
- (0.34560356, 0.54547286),
- (0.34600356, 0.49694508),
- (0.34640357, 0.4481034),
- (0.34680358, 0.39897868),
- (0.34720358, 0.34960195),
- (0.3476036, 0.3000044),
- (0.3480036, 0.25021735),
- (0.3484036, 0.20027225),
- (0.3488036, 0.15020065),
- (0.34920362, 0.10003417),
- (0.34960362, 4.9804512e-2),
- (0.35000363, -4.566034e-4),
- (0.35040364, -5.0717432e-2),
- (0.35080364, -0.100946225),
- (0.35120365, -0.15111126),
- (0.35160366, -0.20118085),
- (0.35200366, -0.25112334),
- (0.35240367, -0.30090722),
- (0.35280368, -0.35050482),
- (0.35320368, -0.39987722),
- (0.3536037, -0.44899708),
- (0.3540037, -0.4978333),
- (0.3544037, -0.54635507),
- (0.3548037, -0.5945318),
- (0.35520372, -0.6423329),
- (0.35560372, -0.6897283),
- (0.35600373, -0.7366881),
- (0.35640374, -0.78318256),
- (0.35680375, -0.82918227),
- (0.35720375, -0.8746583),
- (0.35760376, -0.91958183),
- (0.35800377, -0.9639245),
- (0.35840377, -1.0076584),
- (0.35880378, -1.0507557),
- (0.3592038, -1.0931894),
- (0.3596038, -1.1349325),
- (0.3600038, -1.1759588),
- (0.3604038, -1.2162423),
- (0.3608038, -1.2557576),
- (0.36120382, -1.2944796),
- (0.36160383, -1.3323841),
- (0.36200383, -1.369447),
- (0.36240384, -1.4056448),
- (0.36280385, -1.4409548),
- (0.36320385, -1.4753546),
- (0.36360386, -1.5088226),
- (0.36400387, -1.5413374),
- (0.36440387, -1.5728787),
- (0.36480388, -1.6034266),
- (0.3652039, -1.6329616),
- (0.3656039, -1.6614652),
- (0.3660039, -1.6889193),
- (0.3664039, -1.7153066),
- (0.3668039, -1.7406105),
- (0.36720392, -1.764815),
- (0.36760393, -1.7879047),
- (0.36800393, -1.8098651),
- (0.36840394, -1.8306823),
- (0.36880395, -1.8503432),
- (0.36920395, -1.8688353),
- (0.36960396, -1.886147),
- (0.37000397, -1.9022673),
- (0.37040398, -1.9171861),
- (0.37080398, -1.9308939),
- (0.371204, -1.9433821),
- (0.371604, -1.9546428),
- (0.372004, -1.9646688),
- (0.372404, -1.9734539),
- (0.37280402, -1.9809924),
- (0.37320402, -1.9872797),
- (0.37360403, -1.9923117),
- (0.37400404, -1.9960853),
- (0.37440404, -1.998598),
- (0.37480405, -1.9998485),
- (0.37520406, -1.9998356),
- (0.37560406, -1.9985595),
- (0.37600407, -1.996021),
- (0.37640408, -1.9922218),
- (0.37680408, -1.9871643),
- (0.3772041, -1.9808515),
- (0.3776041, -1.9732876),
- (0.3780041, -1.9644772),
- (0.3784041, -1.9544259),
- (0.37880412, -1.9431403),
- (0.37920412, -1.9306272),
- (0.37960413, -1.9168947),
- (0.38000414, -1.9019513),
- (0.38040414, -1.8858067),
- (0.38080415, -1.8684709),
- (0.38120416, -1.8499548),
- (0.38160416, -1.8302703),
- (0.38200417, -1.8094296),
- (0.38240418, -1.7874461),
- (0.3828042, -1.7643336),
- (0.3832042, -1.7401067),
- (0.3836042, -1.7147806),
- (0.3840042, -1.6883714),
- (0.3844042, -1.6608957),
- (0.38480422, -1.632371),
- (0.38520423, -1.6028152),
- (0.38560423, -1.5722469),
- (0.38600424, -1.5406855),
- (0.38640425, -1.508151),
- (0.38680425, -1.474664),
- (0.38720426, -1.4402454),
- (0.38760427, -1.4049171),
- (0.38800427, -1.3687015),
- (0.38840428, -1.3316213),
- (0.3888043, -1.2937),
- (0.3892043, -1.2549615),
- (0.3896043, -1.2154304),
- (0.3900043, -1.1751316),
- (0.3904043, -1.1340904),
- (0.39080432, -1.092333),
- (0.39120433, -1.0498855),
- (0.39160433, -1.0067749),
- (0.39200434, -0.96302843),
- (0.39240435, -0.91867363),
- (0.39280435, -0.8737386),
- (0.39320436, -0.8282516),
- (0.39360437, -0.7822415),
- (0.39400437, -0.7357373),
- (0.39440438, -0.6887684),
- (0.3948044, -0.6413644),
- (0.3952044, -0.59355533),
- (0.3956044, -0.54537135),
- (0.3960044, -0.49684283),
- (0.39640442, -0.44800055),
- (0.39680442, -0.3988715),
- (0.39720443, -0.34949428),
- (0.39760444, -0.29989627),
- (0.39800444, -0.25010884),
- (0.39840445, -0.20016342),
- (0.39880446, -0.15009159),
- (0.39920446, -9.992494e-2),
- (0.39960447, -4.9695175e-2),
- (0.40000448, 5.659739e-4),
- (0.40040448, 5.0826766e-2),
- (0.4008045, 0.10105546),
- (0.4012045, 0.15122032),
- (0.4016045, 0.20128965),
- (0.4020045, 0.25123185),
- (0.40240452, 0.30101538),
- (0.40280452, 0.35060874),
- (0.40320453, 0.39998066),
- (0.40360454, 0.44909993),
- (0.40400454, 0.49793553),
- (0.40440455, 0.54645663),
- (0.40480456, 0.59463257),
- (0.40520456, 0.64243287),
- (0.40560457, 0.68982744),
- (0.40600458, 0.73678625),
- (0.40640458, 0.78327966),
- (0.4068046, 0.82927835),
- (0.4072046, 0.87475324),
- (0.4076046, 0.9196756),
- (0.4080046, 0.96401703),
- (0.40840462, 1.0077496),
- (0.40880463, 1.0508455),
- (0.40920463, 1.0932778),
- (0.40960464, 1.1350194),
- (0.41000465, 1.1760442),
- (0.41040465, 1.2163261),
- (0.41080466, 1.2558397),
- (0.41120467, 1.2945601),
- (0.41160467, 1.3324628),
- (0.41200468, 1.3695239),
- (0.4124047, 1.4057199),
- (0.4128047, 1.441028),
- (0.4132047, 1.4754258),
- (0.4136047, 1.5088918),
- (0.4140047, 1.5414046),
- (0.41440472, 1.5729439),
- (0.41480473, 1.6034896),
- (0.41520473, 1.6330225),
- (0.41560474, 1.6615239),
- (0.41600475, 1.6889758),
- (0.41640475, 1.7153609),
- (0.41680476, 1.7406625),
- (0.41720477, 1.7648647),
- (0.41760477, 1.787952),
- (0.41800478, 1.80991),
- (0.4184048, 1.8307248),
- (0.4188048, 1.8503847),
- (0.4192048, 1.8688743),
- (0.4196048, 1.8861834),
- (0.4200048, 1.9023011),
- (0.42040482, 1.9172173),
- (0.42080483, 1.9309224),
- (0.42120484, 1.9434079),
- (0.42160484, 1.9546659),
- (0.42200485, 1.9646893),
- (0.42240486, 1.9734716),
- (0.42280486, 1.9810075),
- (0.42320487, 1.9872919),
- (0.42360488, 1.9923213),
- (0.42400488, 1.9960921),
- (0.4244049, 1.9986022),
- (0.4248049, 1.9998498),
- (0.4252049, 1.9998342),
- (0.4256049, 1.9985555),
- (0.42600492, 1.9960144),
- (0.42640492, 1.9922125),
- (0.42680493, 1.9871523),
- (0.42720494, 1.9808369),
- (0.42760494, 1.9732703),
- (0.42800495, 1.9644574),
- (0.42840496, 1.9544035),
- (0.42880496, 1.9431152),
- (0.42920497, 1.9305997),
- (0.42960498, 1.9168645),
- (0.43000498, 1.9019186),
- (0.430405, 1.8857715),
- (0.430805, 1.8684332),
- (0.431205, 1.8499147),
- (0.431605, 1.8302277),
- (0.43200502, 1.8093847),
- (0.43240502, 1.7873988),
- (0.43280503, 1.7642839),
- (0.43320504, 1.7400546),
- (0.43360505, 1.7147262),
- (0.43400505, 1.6883148),
- (0.43440506, 1.6608369),
- (0.43480507, 1.6323099),
- (0.43520507, 1.602752),
- (0.43560508, 1.5721817),
- (0.4360051, 1.5406183),
- (0.4364051, 1.5080818),
- (0.4368051, 1.4745927),
- (0.4372051, 1.4401722),
- (0.4376051, 1.404842),
- (0.43800512, 1.3686246),
- (0.43840513, 1.3315425),
- (0.43880513, 1.2936195),
- (0.43920514, 1.2548794),
- (0.43960515, 1.2153466),
- (0.44000515, 1.1750461),
- (0.44040516, 1.1340003),
- (0.44080517, 1.0922413),
- (0.44120517, 1.0497924),
- (0.44160518, 1.0066804),
- (0.4420052, 0.9629326),
- (0.4424052, 0.9185765),
- (0.4428052, 0.8736402),
- (0.4432052, 0.82815206),
- (0.4436052, 0.78214085),
- (0.44400522, 0.73563564),
- (0.44440523, 0.6886657),
- (0.44480523, 0.6412608),
- (0.44520524, 0.5934509),
- (0.44560525, 0.5452661),
- (0.44600525, 0.4967369),
- (0.44640526, 0.44789395),
- (0.44680527, 0.39876807),
- (0.44720528, 0.34939033),
- (0.44760528, 0.2997919),
- (0.4480053, 0.2500041),
- (0.4484053, 0.2000584),
- (0.4488053, 0.14998633),
- (0.4492053, 9.981951e-2),
- (0.44960532, 4.9589653e-2),
- (0.45000532, -6.715298e-4),
- (0.45040533, -5.093229e-2),
- (0.45080534, -0.10116088),
- (0.45120534, -0.15132557),
- (0.45160535, -0.20139468),
- (0.45200536, -0.25133657),
- (0.45240536, -0.30111971),
- (0.45280537, -0.35071266),
- (0.45320538, -0.40008408),
- (0.45360538, -0.4492028),
- (0.4540054, -0.49803776),
- (0.4544054, -0.54655814),
- (0.4548054, -0.5947333),
- (0.4552054, -0.6425328),
- (0.45560542, -0.6899265),
- (0.45600542, -0.73688436),
- (0.45640543, -0.7833768),
- (0.45680544, -0.8293744),
- (0.45720544, -0.8748481),
- (0.45760545, -0.9197693),
- (0.45800546, -0.9641095),
- (0.45840546, -1.0078408),
- (0.45880547, -1.0509354),
- (0.45920548, -1.0933661),
- (0.4596055, -1.1351063),
- (0.4600055, -1.1761296),
- (0.4604055, -1.2164099),
- (0.4608055, -1.2559218),
- (0.4612055, -1.2946405),
- (0.46160552, -1.3325415),
- (0.46200553, -1.3696008),
- (0.46240553, -1.4057977),
- (0.46280554, -1.4411038),
- (0.46320555, -1.4754996),
- (0.46360555, -1.5089636),
- (0.46400556, -1.5414743),
- (0.46440557, -1.5730115),
- (0.46480557, -1.603555),
- (0.46520558, -1.6330856),
- (0.4656056, -1.6615847),
- (0.4660056, -1.6890345),
- (0.4664056, -1.7154171),
- (0.4668056, -1.7407163),
- (0.4672056, -1.7649161),
- (0.46760562, -1.7880011),
- (0.46800563, -1.8099566),
- (0.46840563, -1.8307688),
- (0.46880564, -1.8504248),
- (0.46920565, -1.8689119),
- (0.46960565, -1.8862185),
- (0.47000566, -1.9023337),
- (0.47040567, -1.9172473),
- (0.47080567, -1.9309499),
- (0.47120568, -1.9434329),
- (0.4716057, -1.9546883),
- (0.4720057, -1.964709),
- (0.4724057, -1.9734887),
- (0.4728057, -1.9810219),
- (0.47320572, -1.9873039),
- (0.47360572, -1.9923304),
- (0.47400573, -1.9960986),
- (0.47440574, -1.9986061),
- (0.47480574, -1.9998511),
- (0.47520575, -1.9998329),
- (0.47560576, -1.9985515),
- (0.47600576, -1.9960077),
- (0.47640577, -1.9922032),
- (0.47680578, -1.9871403),
- (0.47720578, -1.9808223),
- (0.4776058, -1.9732531),
- (0.4780058, -1.9644376),
- (0.4784058, -1.9543811),
- (0.4788058, -1.9430903),
- (0.47920582, -1.930572),
- (0.47960582, -1.9168345),
- (0.48000583, -1.9018861),
- (0.48040584, -1.8857363),
- (0.48080584, -1.8683956),
- (0.48120585, -1.8498746),
- (0.48160586, -1.8301852),
- (0.48200586, -1.8093398),
- (0.48240587, -1.7873515),
- (0.48280588, -1.7642342),
- (0.48320588, -1.7400026),
- (0.4836059, -1.714672),
- (0.4840059, -1.6882582),
- (0.4844059, -1.6607759),
- (0.4848059, -1.6322467),
- (0.48520592, -1.6026865),
- (0.48560593, -1.572114),
- (0.48600593, -1.5405486),
- (0.48640594, -1.5080099),
- (0.48680595, -1.4745188),
- (0.48720595, -1.4400963),
- (0.48760596, -1.4047642),
- (0.48800597, -1.3685448),
- (0.48840597, -1.331461),
- (0.48880598, -1.2935361),
- (0.489206, -1.2547941),
- (0.489606, -1.2152597),
- (0.490006, -1.1749576),
- (0.490406, -1.1339134),
- (0.490806, -1.0921528),
- (0.49120602, -1.0497025),
- (0.49160603, -1.0065892),
- (0.49200603, -0.96284),
- (0.49240604, -0.9184827),
- (0.49280605, -0.8735452),
- (0.49320605, -0.828056),
- (0.49360606, -0.7820437),
- (0.49400607, -0.73553747),
- (0.49440607, -0.6885666),
- (0.49480608, -0.64116085),
- (0.4952061, -0.5933501),
- (0.4956061, -0.5451645),
- (0.4960061, -0.49663466),
- (0.4964061, -0.44779107),
- (0.49680611, -0.39866465),
- (0.49720612, -0.3492864),
- (0.49760613, -0.29968753),
- (0.49800614, -0.24989937),
- (0.49840614, -0.19995338),
- (0.49880615, -0.14988106),
- (0.49920616, -9.971409e-2),
- (0.49960616, -4.948413e-2),
- (0.50000614, 7.7327096e-4),
- (0.50040615, 5.1033996e-2),
- (0.50080615, 0.10126249),
- (0.50120616, 0.15142702),
- (0.50160617, 0.2014959),
- (0.5020062, 0.25143752),
- (0.5024062, 0.3012203),
- (0.5028062, 0.35081282),
- (0.5032062, 0.40018377),
- (0.5036062, 0.44930193),
- (0.5040062, 0.4981363),
- (0.5044062, 0.546656),
- (0.5048062, 0.59483045),
- (0.5052062, 0.6426292),
- (0.50560623, 0.690022),
- (0.50600624, 0.73698246),
- (0.50640625, 0.7834739),
- (0.50680625, 0.82947046),
- (0.50720626, 0.8749431),
- (0.50760627, 0.91986305),
- (0.5080063, 0.964202),
- (0.5084063, 1.0079318),
- (0.5088063, 1.0510252),
- (0.5092063, 1.0934545),
- (0.5096063, 1.1351901),
- (0.5100063, 1.1762149),
- (0.5104063, 1.2164906),
- (0.5108063, 1.256004),
- (0.5112063, 1.2947181),
- (0.51160634, 1.3326203),
- (0.51200634, 1.3696749),
- (0.51240635, 1.4058701),
- (0.51280636, 1.4411718),
- (0.51320636, 1.4755684),
- (0.51360637, 1.5090278),
- (0.5140064, 1.5415392),
- (0.5144064, 1.573072),
- (0.5148064, 1.6036158),
- (0.5152064, 1.6331422),
- (0.5156064, 1.6616414),
- (0.5160064, 1.6890868),
- (0.5164064, 1.7154695),
- (0.5168064, 1.7407683),
- (0.51720643, 1.764964),
- (0.51760644, 1.7880483),
- (0.51800644, 1.8099998),
- (0.51840645, 1.8308114),
- (0.51880646, 1.8504634),
- (0.51920646, 1.8689494),
- (0.5196065, 1.8862523),
- (0.5200065, 1.9023663),
- (0.5204065, 1.9172763),
- (0.5208065, 1.9309775),
- (0.5212065, 1.9434569),
- (0.5216065, 1.9547106),
- (0.5220065, 1.964728),
- (0.5224065, 1.9735059),
- (0.5228065, 1.981036),
- (0.52320653, 1.9873157),
- (0.52360654, 1.9923394),
- (0.52400655, 1.9961053),
- (0.52440655, 1.9986099),
- (0.52480656, 1.9998523),
- (0.52520657, 1.9998316),
- (0.5256066, 1.9985474),
- (0.5260066, 1.9960012),
- (0.5264066, 1.9921939),
- (0.5268066, 1.9871289),
- (0.5272066, 1.9808078),
- (0.5276066, 1.9732366),
- (0.5280066, 1.9644177),
- (0.5284066, 1.9543595),
- (0.5288066, 1.9430653),
- (0.52920663, 1.9305454),
- (0.52960664, 1.9168043),
- (0.53000665, 1.9018546),
- (0.53040665, 1.8857012),
- (0.53080666, 1.8683592),
- (0.53120667, 1.8498344),
- (0.5316067, 1.8301442),
- (0.5320067, 1.8092948),
- (0.5324067, 1.7873058),
- (0.5328067, 1.7641845),
- (0.5332067, 1.7399524),
- (0.5336067, 1.7146176),
- (0.5340067, 1.6882037),
- (0.5344067, 1.6607193),
- (0.5348067, 1.6321901),
- (0.53520674, 1.6026257),
- (0.53560674, 1.5720536),
- (0.53600675, 1.5404836),
- (0.53640676, 1.5079455),
- (0.53680676, 1.4744501),
- (0.53720677, 1.4400283),
- (0.5376068, 1.4046918),
- (0.5380068, 1.3684734),
- (0.5384068, 1.331385),
- (0.5388068, 1.2934556),
- (0.5392068, 1.254715),
- (0.5396068, 1.2151759),
- (0.5400068, 1.1748753),
- (0.5404068, 1.1338264),
- (0.54080683, 1.0920676),
- (0.54120684, 1.0496128),
- (0.54160684, 1.0065013),
- (0.54200685, 0.9627475),
- (0.54240686, 0.91839236),
- (0.54280686, 0.8734503),
- (0.5432069, 0.82796335),
- (0.5436069, 0.78194654),
- (0.5440069, 0.7354429),
- (0.5444069, 0.6884675),
- (0.5448069, 0.64106447),
- (0.5452069, 0.59324926),
- (0.5456069, 0.54506665),
- (0.5460069, 0.4965324),
- (0.5464069, 0.44769192),
- (0.54680693, 0.3985612),
- (0.54720694, 0.3491862),
- (0.54760695, 0.29958317),
- (0.54800695, 0.24979843),
- (0.54840696, 0.19984834),
- (0.54880697, 0.1497796),
- (0.549207, 9.960867e-2),
- (0.549607, 4.938242e-2),
- (0.550007, -8.826415e-4),
- (0.550407, -5.113952e-2),
- (0.550807, -0.10137172),
- (0.551207, -0.15153226),
- (0.551607, -0.20160471),
- (0.552007, -0.25154224),
- (0.552407, -0.30132842),
- (0.55280703, -0.35091674),
- (0.55320704, -0.40029094),
- (0.55360705, -0.44940478),
- (0.55400705, -0.49824223),
- (0.55440706, -0.5467576),
- (0.55480707, -0.5949349),
- (0.5552071, -0.64272916),
- (0.5556071, -0.69012463),
- (0.5560071, -0.73707706),
- (0.5564071, -0.783571),
- (0.5568071, -0.829563),
- (0.5572071, -0.87503797),
- (0.5576071, -0.91995335),
- (0.5580071, -0.96429443),
- (0.5584071, -1.0080198),
- (0.55880713, -1.0511149),
- (0.55920714, -1.0935397),
- (0.55960715, -1.1352801),
- (0.56000715, -1.1762972),
- (0.56040716, -1.2165774),
- (0.56080717, -1.2560891),
- (0.5612072, -1.2948015),
- (0.5616072, -1.3327018),
- (0.5620072, -1.3697547),
- (0.5624072, -1.4059478),
- (0.5628072, -1.4412476),
- (0.5632072, -1.4756422),
- (0.5636072, -1.5090996),
- (0.5640072, -1.5416088),
- (0.5644072, -1.5731394),
- (0.56480724, -1.6036812),
- (0.56520724, -1.6332053),
- (0.56560725, -1.6617023),
- (0.56600726, -1.6891454),
- (0.56640726, -1.7155256),
- (0.56680727, -1.7408185),
- (0.5672073, -1.7650154),
- (0.5676073, -1.7880939),
- (0.5680073, -1.8100463),
- (0.5684073, -1.8308523),
- (0.5688073, -1.8505049),
- (0.5692073, -1.8689857),
- (0.5696073, -1.8862886),
- (0.5700073, -1.9023976),
- (0.57040733, -1.9173074),
- (0.57080734, -1.9310039),
- (0.57120734, -1.9434828),
- (0.57160735, -1.9547322),
- (0.57200736, -1.9647485),
- (0.57240736, -1.9735223),
- (0.5728074, -1.981051),
- (0.5732074, -1.9873271),
- (0.5736074, -1.9923489),
- (0.5740074, -1.9961116),
- (0.5744074, -1.998614),
- (0.5748074, -1.9998536),
- (0.5752074, -1.9998301),
- (0.5756074, -1.9985436),
- (0.5760074, -1.9959943),
- (0.57640743, -1.9921849),
- (0.57680744, -1.9871165),
- (0.57720745, -1.9807937),
- (0.57760745, -1.9732187),
- (0.57800746, -1.9643986),
- (0.57840747, -1.9543363),
- (0.5788075, -1.9430412),
- (0.5792075, -1.930517),
- (0.5796075, -1.9167752),
- (0.5800075, -1.9018208),
- (0.5804075, -1.8856673),
- (0.5808075, -1.8683202),
- (0.5812075, -1.8497958),
- (0.5816075, -1.8301),
- (0.5820075, -1.8092514),
- (0.58240753, -1.7872567),
- (0.58280754, -1.764133),
- (0.58320755, -1.7398984),
- (0.58360755, -1.7145612),
- (0.58400756, -1.688145),
- (0.58440757, -1.6606584),
- (0.5848076, -1.6321269),
- (0.5852076, -1.6025603),
- (0.5856076, -1.5719858),
- (0.5860076, -1.5404139),
- (0.5864076, -1.5078738),
- (0.5868076, -1.4743762),
- (0.5872076, -1.4399525),
- (0.5876076, -1.404614),
- (0.5880076, -1.3683937),
- (0.58840764, -1.3313034),
- (0.58880764, -1.293378),
- (0.58920765, -1.2546297),
- (0.58960766, -1.215095),
- (0.59000766, -1.1747867),
- (0.59040767, -1.1337426),
- (0.5908077, -1.091976),
- (0.5912077, -1.0495261),
- (0.5916077, -1.0064068),
- (0.5920077, -0.96265835),
- (0.5924077, -0.9182952),
- (0.5928077, -0.8733587),
- (0.5932077, -0.8278638),
- (0.5936077, -0.7818529),
- (0.59400773, -0.73534113),
- (0.59440774, -0.688372),
- (0.59480774, -0.6409609),
- (0.59520775, -0.5931521),
- (0.59560776, -0.5449614),
- (0.59600776, -0.49643385),
- (0.5964078, -0.4475853),
- (0.5968078, -0.3984615),
- (0.5972078, -0.34907854),
- (0.5976078, -0.29948258),
- (0.5980078, -0.24968992),
- (0.5984078, -0.19974712),
- (0.5988078, -0.14967054),
- (0.5992078, -9.950705e-2),
- (0.5996078, -4.927308e-2),
- (0.60000783, 9.843827e-4),
- (0.60040784, 5.1248852e-2),
- (0.60080785, 0.10147333),
- (0.60120785, 0.15164132),
- (0.60160786, 0.20170593),
- (0.60200787, 0.25165072),
- (0.6024079, 0.301429),
- (0.6028079, 0.35102442),
- (0.6032079, 0.4003906),
- (0.6036079, 0.44951135),
- (0.6040079, 0.49834076),
- (0.6044079, 0.5468628),
- (0.6048079, 0.5950393),
- (0.6052079, 0.6428327),
- (0.6056079, 0.69022727),
- (0.60600793, 0.73717874),
- (0.60640794, 0.7836717),
- (0.60680795, 0.82966256),
- (0.60720795, 0.8751363),
- (0.60760796, 0.9200505),
- (0.60800797, 0.9643903),
- (0.608408, 1.0081142),
- (0.608808, 1.051208),
- (0.609208, 1.0936313),
- (0.609608, 1.1353701),
- (0.610008, 1.1763856),
- (0.610408, 1.2166643),
- (0.610808, 1.2561682),
- (0.611208, 1.2948848),
- (0.611608, 1.3327776),
- (0.61200804, 1.3698343),
- (0.61240804, 1.4060202),
- (0.61280805, 1.4413234),
- (0.61320806, 1.4757109),
- (0.61360806, 1.5091714),
- (0.61400807, 1.5416737),
- (0.6144081, 1.573207),
- (0.6148081, 1.6037419),
- (0.6152081, 1.6332685),
- (0.6156081, 1.6617589),
- (0.6160081, 1.689204),
- (0.6164081, 1.715578),
- (0.6168081, 1.7408723),
- (0.6172081, 1.7650633),
- (0.61760813, 1.7881429),
- (0.61800814, 1.8100896),
- (0.61840814, 1.8308963),
- (0.61880815, 1.8505435),
- (0.61920816, 1.8690246),
- (0.61960816, 1.8863225),
- (0.6200082, 1.9024315),
- (0.6204082, 1.9173363),
- (0.6208082, 1.9310324),
- (0.6212082, 1.9435067),
- (0.6216082, 1.9547553),
- (0.6220082, 1.9647675),
- (0.6224082, 1.9735401),
- (0.6228082, 1.9810649),
- (0.6232082, 1.9873394),
- (0.62360823, 1.9923579),
- (0.62400824, 1.9961184),
- (0.62440825, 1.9986178),
- (0.62480825, 1.9998549),
- (0.62520826, 1.9998288),
- (0.62560827, 1.9985394),
- (0.6260083, 1.9959879),
- (0.6264083, 1.9921752),
- (0.6268083, 1.987104),
- (0.6272083, 1.9807786),
- (0.6276083, 1.9732009),
- (0.6280083, 1.9643781),
- (0.6284083, 1.954313),
- (0.6288083, 1.9430152),
- (0.6292083, 1.9304883),
- (0.62960833, 1.916744),
- (0.63000834, 1.9017869),
- (0.63040835, 1.8856308),
- (0.63080835, 1.8682812),
- (0.63120836, 1.8497542),
- (0.63160837, 1.830056),
- (0.6320084, 1.8092048),
- (0.6324084, 1.7872076),
- (0.6328084, 1.764085),
- (0.6332084, 1.7398446),
- (0.6336084, 1.7145089),
- (0.6340084, 1.6880864),
- (0.6344084, 1.6606016),
- (0.6348084, 1.6320637),
- (0.6352084, 1.6024994),
- (0.63560843, 1.5719182),
- (0.63600844, 1.540349),
- (0.63640845, 1.5078019),
- (0.63680845, 1.4743074),
- (0.63720846, 1.4398766),
- (0.63760847, 1.4045415),
- (0.6380085, 1.3683138),
- (0.6384085, 1.3312274),
- (0.6388085, 1.2932945),
- (0.6392085, 1.2545506),
- (0.6396085, 1.2150081),
- (0.6400085, 1.1747044),
- (0.6404085, 1.1336524),
- (0.6408085, 1.0918908),
- (0.6412085, 1.049433),
- (0.64160854, 1.0063188),
- (0.64200854, 0.9625625),
- (0.64240855, 0.9182048),
- (0.64280856, 0.8732604),
- (0.64320856, 0.8277712),
- (0.64360857, 0.7817522),
- (0.6440086, 0.73524654),
- (0.6444086, 0.6882693),
- (0.6448086, 0.6408645),
- (0.6452086, 0.5930477),
- (0.6456086, 0.5448635),
- (0.6460086, 0.4963279),
- (0.6464086, 0.44748616),
- (0.6468086, 0.39835432),
- (0.64720863, 0.34897834),
- (0.64760864, 0.29937443),
- (0.64800864, 0.24958897),
- (0.64840865, 0.19963829),
- (0.64880866, 0.14956148),
- (0.64920866, 9.9397816e-2),
- (0.6496087, 4.9163744e-2),
- (0.6500087, -1.0937531e-3),
- (0.6504087, -5.135819e-2),
- (0.6508087, -0.10158256),
- (0.6512087, -0.15175039),
- (0.6516087, -0.20181474),
- (0.6520087, -0.25175923),
- (0.6524087, -0.30153713),
- (0.6528087, -0.3511321),
- (0.65320873, -0.40049776),
- (0.65360874, -0.44961792),
- (0.65400875, -0.49844667),
- (0.65440875, -0.546968),
- (0.65480876, -0.59513646),
- (0.65520877, -0.6429363),
- (0.6556088, -0.69032276),
- (0.6560088, -0.7372804),
- (0.6564088, -0.78376526),
- (0.6568088, -0.82976204),
- (0.6572088, -0.8752278),
- (0.6576088, -0.9201476),
- (0.6580088, -0.9644794),
- (0.6584088, -1.0082086),
- (0.6588088, -1.0512946),
- (0.65920883, -1.0937228),
- (0.65960884, -1.1354539),
- (0.66000885, -1.1764741),
- (0.66040885, -1.216745),
- (0.66080886, -1.2562534),
- (0.66120887, -1.2949624),
- (0.6616089, -1.3328592),
- (0.6620089, -1.3699085),
- (0.6624089, -1.406098),
- (0.6628089, -1.4413939),
- (0.6632089, -1.4757847),
- (0.6636089, -1.5092381),
- (0.6640089, -1.5417433),
- (0.6644089, -1.5732698),
- (0.6648089, -1.6038073),
- (0.66520894, -1.6333271),
- (0.66560894, -1.6618198),
- (0.66600895, -1.6892585),
- (0.66640896, -1.7156342),
- (0.66680896, -1.7409223),
- (0.66720897, -1.7651147),
- (0.667609, -1.7881885),
- (0.668009, -1.8101362),
- (0.668409, -1.8309373),
- (0.668809, -1.850585),
- (0.669209, -1.8690609),
- (0.669609, -1.8863589),
- (0.670009, -1.9024628),
- (0.670409, -1.9173675),
- (0.67080903, -1.9310609),
- (0.67120904, -1.9435326),
- (0.67160904, -1.9547784),
- (0.67200905, -1.964788),
- (0.67240906, -1.9735578),
- (0.67280906, -1.9810799),
- (0.6732091, -1.9873518),
- (0.6736091, -1.9923674),
- (0.6740091, -1.9961252),
- (0.6744091, -1.9986218),
- (0.6748091, -1.9998562),
- (0.6752091, -1.9998274),
- (0.6756091, -1.9985352),
- (0.6760091, -1.995981),
- (0.6764091, -1.9921656),
- (0.67680913, -1.9870925),
- (0.67720914, -1.9807634),
- (0.67760915, -1.9731842),
- (0.67800915, -1.9643575),
- (0.67840916, -1.9542915),
- (0.67880917, -1.9429893),
- (0.6792092, -1.9304618),
- (0.6796092, -1.9167128),
- (0.6800092, -1.9017553),
- (0.6804092, -1.8855944),
- (0.6808092, -1.8682449),
- (0.6812092, -1.8497126),
- (0.6816092, -1.830015),
- (0.6820092, -1.8091582),
- (0.6824092, -1.787162),
- (0.68280923, -1.7640334),
- (0.68320924, -1.7397944),
- (0.68360925, -1.7144526),
- (0.68400925, -1.6880318),
- (0.68440926, -1.6605407),
- (0.68480927, -1.632005),
- (0.6852093, -1.6024339),
- (0.6856093, -1.5718554),
- (0.6860093, -1.5402793),
- (0.6864093, -1.507735),
- (0.6868093, -1.4742335),
- (0.6872093, -1.439806),
- (0.6876093, -1.4044636),
- (0.6880093, -1.3682396),
- (0.6884093, -1.3311459),
- (0.68880934, -1.293217),
- (0.68920934, -1.2544653),
- (0.68960935, -1.2149273),
- (0.69000936, -1.1746159),
- (0.69040936, -1.1335686),
- (0.69080937, -1.0917991),
- (0.6912094, -1.0493463),
- (0.6916094, -1.0062243),
- (0.6920094, -0.9624666),
- (0.6924094, -0.9181076),
- (0.6928094, -0.873162),
- (0.6932094, -0.82767165),
- (0.6936094, -0.78165156),
- (0.6940094, -0.7351448),
- (0.69440943, -0.6881666),
- (0.69480944, -0.6407609),
- (0.69520944, -0.5929432),
- (0.69560945, -0.5447583),
- (0.69600946, -0.49622196),
- (0.69640946, -0.44737956),
- (0.6968095, -0.39824715),
- (0.6972095, -0.34887066),
- (0.6976095, -0.2992663),
- (0.6980095, -0.24948046),
- (0.6984095, -0.19952947),
- (0.6988095, -0.14946003),
- (0.6992095, -9.9288575e-2),
- (0.6996095, -4.9062036e-2),
- (0.7000095, 1.2031237e-3),
- (0.70040953, 5.1459894e-2),
- (0.70080954, 0.10169179),
- (0.70120955, 0.15185183),
- (0.70160955, 0.20192356),
- (0.70200956, 0.25186017),
- (0.70240957, 0.30164525),
- (0.7028096, 0.35123226),
- (0.7032096, 0.4006049),
- (0.7036096, 0.44971707),
- (0.7040096, 0.4985526),
- (0.7044096, 0.54706585),
- (0.7048096, 0.59524083),
- (0.7052096, 0.6430326),
- (0.7056096, 0.69042546),
- (0.7060096, 0.73737496),
- (0.70640963, 0.78386587),
- (0.70680964, 0.8298546),
- (0.70720965, 0.87532616),
- (0.70760965, 0.9202379),
- (0.70800966, 0.96457523),
- (0.70840967, 1.0082965),
- (0.7088097, 1.0513875),
- (0.7092097, 1.093808),
- (0.7096097, 1.135544),
- (0.7100097, 1.1765563),
- (0.7104097, 1.2168318),
- (0.7108097, 1.2563325),
- (0.7112097, 1.2950457),
- (0.7116097, 1.3329351),
- (0.7120097, 1.3699881),
- (0.71240973, 1.4061702),
- (0.71280974, 1.4414697),
- (0.71320975, 1.4758533),
- (0.71360976, 1.5093099),
- (0.71400976, 1.541813),
- (0.71440977, 1.5733373),
- (0.7148098, 1.6038727),
- (0.7152098, 1.6333903),
- (0.7156098, 1.6618806),
- (0.7160098, 1.689317),
- (0.7164098, 1.7156904),
- (0.7168098, 1.7409762),
- (0.7172098, 1.765166),
- (0.7176098, 1.7882375),
- (0.7180098, 1.8101827),
- (0.71840984, 1.8309813),
- (0.71880984, 1.8506265),
- (0.71920985, 1.8690997),
- (0.71960986, 1.8863952),
- (0.72000986, 1.9024966),
- (0.72040987, 1.9173986),
- (0.7208099, 1.9310874),
- (0.7212099, 1.9435583),
- (0.7216099, 1.9547999),
- (0.7220099, 1.9648083),
- (0.7224099, 1.9735743),
- (0.7228099, 1.981095),
- (0.7232099, 1.9873631),
- (0.7236099, 1.9923769),
- (0.72400993, 1.9961315),
- (0.72440994, 1.9986259),
- (0.72480994, 1.9998574),
- (0.72520995, 1.999826),
- (0.72560996, 1.9985313),
- (0.72600996, 1.9959741),
- (0.72641, 1.9921566),
- (0.72681, 1.9870801),
- (0.72721, 1.9807494),
- (0.72761, 1.9731665),
- (0.72801, 1.9643384),
- (0.72841, 1.9542682),
- (0.72881, 1.9429651),
- (0.72921, 1.9304332),
- (0.72961, 1.9166838),
- (0.73001003, 1.9017215),
- (0.73041004, 1.8855605),
- (0.73081005, 1.8682058),
- (0.73121005, 1.8496739),
- (0.73161006, 1.8299707),
- (0.73201007, 1.8091148),
- (0.7324101, 1.7871128),
- (0.7328101, 1.7639855),
- (0.7332101, 1.7397404),
- (0.7336101, 1.7144002),
- (0.7340101, 1.6879731),
- (0.7344101, 1.660484),
- (0.7348101, 1.6319417),
- (0.7352101, 1.6023731),
- (0.7356101, 1.5717877),
- (0.73601013, 1.5402094),
- (0.73641014, 1.5076631),
- (0.73681015, 1.4741596),
- (0.73721015, 1.43973),
- (0.73761016, 1.4043858),
- (0.73801017, 1.3681599),
- (0.7384102, 1.3310642),
- (0.7388102, 1.2931335),
- (0.7392102, 1.2543802),
- (0.7396102, 1.2148404),
- (0.7400102, 1.1745274),
- (0.7404102, 1.1334785),
- (0.7408102, 1.0917075),
- (0.7412102, 1.0492532),
- (0.7416102, 1.0061299),
- (0.74201024, 0.9623774),
- (0.74241024, 0.9180105),
- (0.74281025, 0.8730704),
- (0.74321026, 0.82757205),
- (0.74361026, 0.7815579),
- (0.74401027, 0.7350431),
- (0.7444103, 0.6880711),
- (0.7448103, 0.6406573),
- (0.7452103, 0.59284604),
- (0.7456103, 0.54465306),
- (0.7460103, 0.49612337),
- (0.7464103, 0.44727296),
- (0.7468103, 0.39814743),
- (0.7472103, 0.34876296),
- (0.74761033, 0.2991657),
- (0.74801034, 0.24937195),
- (0.74841034, 0.19942823),
- (0.74881035, 0.14935096),
- (0.74921036, 9.9186964e-2),
- (0.74961036, 4.89527e-2),
- (0.7500104, -1.3048649e-3),
- (0.7504104, -5.156923e-2),
- (0.7508104, -0.10179339),
- (0.7512104, -0.15196088),
- (0.7516104, -0.20202479),
- (0.7520104, -0.25196865),
- (0.7524104, -0.30174583),
- (0.7528104, -0.3513399),
- (0.7532104, -0.4007046),
- (0.75361043, -0.44982365),
- (0.75401044, -0.49865112),
- (0.75441045, -0.54717106),
- (0.75481045, -0.595338),
- (0.75521046, -0.6431362),
- (0.75561047, -0.69052094),
- (0.7560105, -0.73747665),
- (0.7564105, -0.78395945),
- (0.7568105, -0.82995415),
- (0.7572105, -0.87541765),
- (0.7576105, -0.92033505),
- (0.7580105, -0.964671),
- (0.7584105, -1.008391),
- (0.7588105, -1.0514807),
- (0.7592105, -1.0938996),
- (0.75961053, -1.1356341),
- (0.76001054, -1.1766448),
- (0.76041055, -1.2169186),
- (0.76081055, -1.2564176),
- (0.76121056, -1.2951291),
- (0.76161057, -1.3330166),
- (0.7620106, -1.3700678),
- (0.7624106, -1.4062481),
- (0.7628106, -1.4415455),
- (0.7632106, -1.4759271),
- (0.7636106, -1.5093817),
- (0.7640106, -1.5418777),
- (0.7644106, -1.5734049),
- (0.7648106, -1.6039335),
- (0.7652106, -1.6334534),
- (0.76561064, -1.6619372),
- (0.76601064, -1.6893755),
- (0.76641065, -1.7157427),
- (0.76681066, -1.74103),
- (0.76721066, -1.765214),
- (0.76761067, -1.7882864),
- (0.7680107, -1.810226),
- (0.7684107, -1.8310252),
- (0.7688107, -1.850665),
- (0.7692107, -1.8691386),
- (0.7696107, -1.886429),
- (0.7700107, -1.9025303),
- (0.7704107, -1.9174275),
- (0.7708107, -1.9311159),
- (0.77121073, -1.9435823),
- (0.77161074, -1.954823),
- (0.77201074, -1.9648273),
- (0.77241075, -1.973592),
- (0.77281076, -1.9811089),
- (0.77321076, -1.9873754),
- (0.7736108, -1.9923857),
- (0.7740108, -1.9961383),
- (0.7744108, -1.9986296),
- (0.7748108, -1.9998587),
- (0.7752108, -1.9998245),
- (0.7756108, -1.9985272),
- (0.7760108, -1.9959676),
- (0.7764108, -1.9921468),
- (0.7768108, -1.9870685),
- (0.77721083, -1.9807342),
- (0.77761084, -1.9731498),
- (0.77801085, -1.9643178),
- (0.77841085, -1.9542465),
- (0.77881086, -1.9429393),
- (0.77921087, -1.9304066),
- (0.7796109, -1.9166526),
- (0.7800109, -1.9016876),
- (0.7804109, -1.885524),
- (0.7808109, -1.8681668),
- (0.7812109, -1.8496323),
- (0.7816109, -1.8299266),
- (0.7820109, -1.8090682),
- (0.7824109, -1.7870637),
- (0.7828109, -1.763934),
- (0.78321093, -1.7396865),
- (0.78361094, -1.7143439),
- (0.78401095, -1.6879145),
- (0.78441095, -1.660423),
- (0.78481096, -1.6318785),
- (0.78521097, -1.6023077),
- (0.785611, -1.5717201),
- (0.786011, -1.5401446),
- (0.786411, -1.5075914),
- (0.786811, -1.4740908),
- (0.787211, -1.4396541),
- (0.787611, -1.4043133),
- (0.788011, -1.3680801),
- (0.788411, -1.3309883),
- (0.788811, -1.29305),
- (0.78921103, -1.254301),
- (0.78961104, -1.2147536),
- (0.79001105, -1.174445),
- (0.79041106, -1.1333884),
- (0.79081106, -1.0916222),
- (0.79121107, -1.0491601),
- (0.7916111, -1.0060419),
- (0.7920111, -0.9622815),
- (0.7924111, -0.91792005),
- (0.7928111, -0.872972),
- (0.7932111, -0.8274794),
- (0.7936111, -0.78145725),
- (0.7940111, -0.73494846),
- (0.7944111, -0.6879684),
- (0.7948111, -0.6405609),
- (0.79521114, -0.5927416),
- (0.79561114, -0.5445552),
- (0.79601115, -0.49601743),
- (0.79641116, -0.4471738),
- (0.79681116, -0.39804026),
- (0.79721117, -0.3486628),
- (0.7976112, -0.29905757),
- (0.7980112, -0.24927099),
- (0.7984112, -0.1993194),
- (0.7988112, -0.14924951),
- (0.7992112, -9.9077724e-2),
- (0.7996112, -4.8850987e-2),
- (0.8000112, 1.4142354e-3),
- (0.8004112, 5.1670935e-2),
- (0.80081123, 0.10190263),
- (0.80121124, 0.15206233),
- (0.80161124, 0.2021336),
- (0.80201125, 0.25207716),
- (0.80241126, 0.30185392),
- (0.80281126, 0.35144758),
- (0.8032113, 0.40081176),
- (0.8036113, 0.44993022),
- (0.8040113, 0.49875703),
- (0.8044113, 0.5472762),
- (0.8048113, 0.5954424),
- (0.8052113, 0.64323974),
- (0.8056113, 0.6906236),
- (0.8060113, 0.73757833),
- (0.8064113, 0.7840601),
- (0.80681133, 0.8300536),
- (0.80721134, 0.87551594),
- (0.80761135, 0.92043215),
- (0.80801135, 0.9647601),
- (0.80841136, 1.0084854),
- (0.80881137, 1.0515672),
- (0.8092114, 1.0939912),
- (0.8096114, 1.1357177),
- (0.8100114, 1.1767333),
- (0.8104114, 1.2169993),
- (0.8108114, 1.2565027),
- (0.8112114, 1.2952065),
- (0.8116114, 1.3330982),
- (0.8120114, 1.370142),
- (0.8124114, 1.4063258),
- (0.81281143, 1.441616),
- (0.81321144, 1.476001),
- (0.81361145, 1.5094484),
- (0.81401145, 1.5419475),
- (0.81441146, 1.5734677),
- (0.81481147, 1.6039988),
- (0.8152115, 1.6335121),
- (0.8156115, 1.661998),
- (0.8160115, 1.68943),
- (0.8164115, 1.7157989),
- (0.8168115, 1.74108),
- (0.8172115, 1.7652653),
- (0.8176115, 1.788332),
- (0.8180115, 1.8102725),
- (0.8184115, 1.8310661),
- (0.81881154, 1.8507065),
- (0.81921154, 1.8691748),
- (0.81961155, 1.8864653),
- (0.82001156, 1.9025617),
- (0.82041156, 1.9174587),
- (0.82081157, 1.9311423),
- (0.8212116, 1.9436082),
- (0.8216116, 1.9548445),
- (0.8220116, 1.9648478),
- (0.8224116, 1.9736085),
- (0.8228116, 1.9811239),
- (0.8232116, 1.9873868),
- (0.8236116, 1.9923953),
- (0.8240116, 1.9961451),
- (0.82441163, 1.9986336),
- (0.82481164, 1.99986),
- (0.82521164, 1.9998231),
- (0.82561165, 1.9985229),
- (0.82601166, 1.9959607),
- (0.82641166, 1.9921372),
- (0.8268117, 1.9870561),
- (0.8272117, 1.9807191),
- (0.8276117, 1.9731319),
- (0.8280117, 1.9642973),
- (0.8284117, 1.9542233),
- (0.8288117, 1.9429133),
- (0.8292117, 1.930378),
- (0.8296117, 1.9166213),
- (0.8300117, 1.9016562),
- (0.83041173, 1.8854876),
- (0.83081174, 1.8681304),
- (0.83121175, 1.8495907),
- (0.83161175, 1.8298856),
- (0.83201176, 1.8090215),
- (0.83241177, 1.7870181),
- (0.8328118, 1.7638824),
- (0.8332118, 1.7396363),
- (0.8336118, 1.7142875),
- (0.8340118, 1.6878599),
- (0.8344118, 1.660362),
- (0.8348118, 1.6318196),
- (0.8352118, 1.6022421),
- (0.8356118, 1.5716572),
- (0.8360118, 1.5400748),
- (0.83641183, 1.5075245),
- (0.83681184, 1.4740169),
- (0.83721185, 1.4395834),
- (0.83761185, 1.4042355),
- (0.83801186, 1.3680059),
- (0.83841187, 1.3309066),
- (0.8388119, 1.2929724),
- (0.8392119, 1.2542157),
- (0.8396119, 1.2146728),
- (0.8400119, 1.1743565),
- (0.8404119, 1.1333046),
- (0.8408119, 1.0915306),
- (0.8412119, 1.0490736),
- (0.8416119, 1.0059474),
- (0.8420119, 0.96219236),
- (0.84241194, 0.9178229),
- (0.84281194, 0.8728805),
- (0.84321195, 0.8273799),
- (0.84361196, 0.7813636),
- (0.84401196, 0.7348468),
- (0.84441197, 0.6878728),
- (0.844812, 0.6404573),
- (0.845212, 0.5926444),
- (0.845612, 0.5444499),
- (0.846012, 0.49591148),
- (0.846412, 0.4470672),
- (0.846812, 0.39793307),
- (0.847212, 0.3485551),
- (0.847612, 0.29894942),
- (0.84801203, 0.24916248),
- (0.84841204, 0.19921057),
- (0.84881204, 0.14914043),
- (0.84921205, 9.896849e-2),
- (0.84961206, 4.874165e-2),
- (0.85001206, -1.5236059e-3),
- (0.8504121, -5.1780272e-2),
- (0.8508121, -0.10201185),
- (0.8512121, -0.15217139),
- (0.8516121, -0.2022424),
- (0.8520121, -0.25217807),
- (0.8524121, -0.30196205),
- (0.8528121, -0.35154775),
- (0.8532121, -0.4009189),
- (0.8536121, -0.45002934),
- (0.85401213, -0.49886295),
- (0.85441214, -0.54737407),
- (0.85481215, -0.5955468),
- (0.85521215, -0.64333606),
- (0.85561216, -0.6907262),
- (0.85601217, -0.73767287),
- (0.8564122, -0.78416073),
- (0.8568122, -0.8301462),
- (0.8572122, -0.8756143),
- (0.8576122, -0.92052245),
- (0.8580122, -0.9648559),
- (0.8584122, -1.0085733),
- (0.8588122, -1.0516602),
- (0.8592122, -1.0940763),
- (0.8596122, -1.1358078),
- (0.86001223, -1.1768155),
- (0.86041224, -1.2170861),
- (0.86081225, -1.2565819),
- (0.86121225, -1.2952899),
- (0.86161226, -1.333174),
- (0.86201227, -1.3702216),
- (0.8624123, -1.4063982),
- (0.8628123, -1.4416919),
- (0.8632123, -1.4760696),
- (0.8636123, -1.5095202),
- (0.8640123, -1.5420122),
- (0.8644123, -1.5735352),
- (0.8648123, -1.6040595),
- (0.8652123, -1.6335752),
- (0.8656123, -1.6620547),
- (0.86601233, -1.6894885),
- (0.86641234, -1.7158512),
- (0.86681235, -1.7411339),
- (0.86721236, -1.7653131),
- (0.86761236, -1.788381),
- (0.86801237, -1.810319),
- (0.8684124, -1.8311101),
- (0.8688124, -1.850748),
- (0.8692124, -1.8692137),
- (0.8696124, -1.8865017),
- (0.8700124, -1.9025954),
- (0.8704124, -1.9174898),
- (0.8708124, -1.9311707),
- (0.8712124, -1.9436339),
- (0.8716124, -1.9548676),
- (0.87201244, -1.9648682),
- (0.87241244, -1.9736263),
- (0.87281245, -1.9811388),
- (0.87321246, -1.9873991),
- (0.87361246, -1.9924048),
- (0.8740125, -1.9961514),
- (0.8744125, -1.9986377),
- (0.8748125, -1.9998612),
- (0.8752125, -1.9998217),
- (0.8756125, -1.9985191),
- (0.8760125, -1.9959537),
- (0.8764125, -1.9921283),
- (0.8768125, -1.9870437),
- (0.8772125, -1.9807049),
- (0.87761253, -1.973114),
- (0.87801254, -1.9642781),
- (0.87841254, -1.9542),
- (0.87881255, -1.9428892),
- (0.87921256, -1.9303493),
- (0.87961257, -1.9165922),
- (0.8800126, -1.9016223),
- (0.8804126, -1.8854536),
- (0.8808126, -1.8680915),
- (0.8812126, -1.849552),
- (0.8816126, -1.8298414),
- (0.8820126, -1.8089781),
- (0.8824126, -1.786969),
- (0.8828126, -1.7638345),
- (0.8832126, -1.7395823),
- (0.88361263, -1.7142351),
- (0.88401264, -1.6878012),
- (0.88441265, -1.6603053),
- (0.88481265, -1.6317564),
- (0.88521266, -1.6021813),
- (0.88561267, -1.5715896),
- (0.8860127, -1.5400099),
- (0.8864127, -1.5074526),
- (0.8868127, -1.4739481),
- (0.8872127, -1.4395076),
- (0.8876127, -1.404163),
- (0.8880127, -1.3679261),
- (0.8884127, -1.3308307),
- (0.8888127, -1.292889),
- (0.8892127, -1.2541305),
- (0.88961273, -1.2145859),
- (0.89001274, -1.174268),
- (0.89041275, -1.1332145),
- (0.89081275, -1.091439),
- (0.89121276, -1.0489805),
- (0.89161277, -1.0058528),
- (0.8920128, -0.96209645),
- (0.8924128, -0.91772574),
- (0.8928128, -0.8727821),
- (0.8932128, -0.8272803),
- (0.8936128, -0.78126293),
- (0.8940128, -0.734745),
- (0.8944128, -0.6877701),
- (0.8948128, -0.6403537),
- (0.8952128, -0.59253997),
- (0.89561284, -0.54434466),
- (0.89601284, -0.49581292),
- (0.89641285, -0.4469606),
- (0.89681286, -0.39783338),
- (0.89721286, -0.34844738),
- (0.89761287, -0.29884884),
- (0.8980129, -0.24905396),
- (0.8984129, -0.19910935),
- (0.8988129, -0.14903137),
- (0.8992129, -9.886687e-2),
- (0.8996129, -4.863231e-2),
- (0.9000129, 1.6253471e-3),
- (0.9004129, 5.1889606e-2),
- (0.9008129, 0.10211346),
- (0.90121293, 0.15228043),
- (0.90161294, 0.20234363),
- (0.90201294, 0.25228658),
- (0.90241295, 0.30206263),
- (0.90281296, 0.35165542),
- (0.90321296, 0.40101856),
- (0.903613, 0.45013592),
- (0.904013, 0.49896148),
- (0.904413, 0.5474793),
- (0.904813, 0.59564394),
- (0.905213, 0.64343965),
- (0.905613, 0.6908217),
- (0.906013, 0.73777455),
- (0.906413, 0.7842543),
- (0.906813, 0.83024573),
- (0.90721303, 0.8757058),
- (0.90761304, 0.92061955),
- (0.90801305, 0.9649451),
- (0.90841305, 1.0086677),
- (0.90881306, 1.0517467),
- (0.90921307, 1.0941678),
- (0.9096131, 1.1358916),
- (0.9100131, 1.176904),
- (0.9104131, 1.2171669),
- (0.9108131, 1.256667),
- (0.9112131, 1.2953732),
- (0.9116131, 1.3332555),
- (0.9120131, 1.3703012),
- (0.9124131, 1.4064759),
- (0.9128131, 1.4417677),
- (0.91321313, 1.4761434),
- (0.91361314, 1.5095919),
- (0.91401315, 1.542082),
- (0.91441315, 1.5736027),
- (0.91481316, 1.6041248),
- (0.91521317, 1.6336383),
- (0.9156132, 1.6621155),
- (0.9160132, 1.6895471),
- (0.9164132, 1.7159073),
- (0.9168132, 1.7411877),
- (0.9172132, 1.7653645),
- (0.9176132, 1.7884299),
- (0.9180132, 1.8103621),
- (0.9184132, 1.8311541),
- (0.9188132, 1.8507864),
- (0.91921324, 1.8692527),
- (0.91961324, 1.8865354),
- (0.92001325, 1.9026291),
- (0.92041326, 1.9175186),
- (0.92081326, 1.9311992),
- (0.92121327, 1.9436579),
- (0.9216133, 1.9548907),
- (0.9220133, 1.9648871),
- (0.9224133, 1.9736439),
- (0.9228133, 1.9811528),
- (0.9232133, 1.9874114),
- (0.9236133, 1.9924138),
- (0.9240133, 1.9961582),
- (0.9244133, 1.9986415),
- (0.92481333, 1.9998626),
- (0.92521334, 1.9998202),
- (0.92561334, 1.9985148),
- (0.92601335, 1.9959472),
- (0.92641336, 1.9921185),
- (0.92681336, 1.9870322),
- (0.9272134, 1.9806898),
- (0.9276134, 1.9730974),
- (0.9280134, 1.9642575),
- (0.9284134, 1.9541783),
- (0.9288134, 1.9428632),
- (0.9292134, 1.9303228),
- (0.9296134, 1.9165609),
- (0.9300134, 1.9015907),
- (0.9304134, 1.8854171),
- (0.93081343, 1.8680551),
- (0.93121344, 1.8495104),
- (0.93161345, 1.8298004),
- (0.93201345, 1.8089315),
- (0.93241346, 1.7869233),
- (0.93281347, 1.763783),
- (0.9332135, 1.7395283),
- (0.9336135, 1.7141788),
- (0.9340135, 1.6877425),
- (0.9344135, 1.6602443),
- (0.9348135, 1.6316931),
- (0.9352135, 1.6021158),
- (0.9356135, 1.5715219),
- (0.9360135, 1.5399401),
- (0.9364135, 1.5073807),
- (0.93681353, 1.4738742),
- (0.93721354, 1.4394317),
- (0.93761355, 1.4040852),
- (0.93801355, 1.3678463),
- (0.93841356, 1.330749),
- (0.93881357, 1.2928056),
- (0.9392136, 1.2540513),
- (0.9396136, 1.214499),
- (0.9400136, 1.1741856),
- (0.9404136, 1.1331244),
- (0.9408136, 1.0913537),
- (0.9412136, 1.0488873),
- (0.9416136, 1.0057648),
- (0.9420136, 0.96200055),
- (0.9424136, 0.9176353),
- (0.94281363, 0.8726837),
- (0.94321364, 0.82718766),
- (0.94361365, 0.78116226),
- (0.94401366, 0.73465043),
- (0.94441366, 0.6876674),
- (0.94481367, 0.6402573),
- (0.9452137, 0.5924355),
- (0.9456137, 0.5442468),
- (0.9460137, 0.49570695),
- (0.9464137, 0.44686142),
- (0.9468137, 0.39772618),
- (0.9472137, 0.3483472),
- (0.9476137, 0.29874068),
- (0.9480137, 0.248953),
- (0.9484137, 0.19900051),
- (0.94881374, 0.14892991),
- (0.94921374, 9.875764e-2),
- (0.94961375, 4.8530597e-2),
- (0.95001376, -1.7347175e-3),
- (0.95041376, -5.199131e-2),
- (0.9508138, -0.10222269),
- (0.9512138, -0.15238188),
- (0.9516138, -0.20245244),
- (0.9520138, -0.25238752),
- (0.9524138, -0.30217075),
- (0.9528138, -0.35175556),
- (0.9532138, -0.40112573),
- (0.9536138, -0.45023504),
- (0.9540138, -0.4990674),
- (0.95441383, -0.54757714),
- (0.95481384, -0.5957483),
- (0.95521384, -0.6435432),
- (0.95561385, -0.69092435),
- (0.95601386, -0.7378762),
- (0.95641387, -0.7843549),
- (0.9568139, -0.8303452),
- (0.9572139, -0.87580407),
- (0.9576139, -0.92071664),
- (0.9580139, -0.96504086),
- (0.9584139, -1.0087622),
- (0.9588139, -1.0518397),
- (0.9592139, -1.0942594),
- (0.9596139, -1.1359816),
- (0.9600139, -1.1769924),
- (0.96041393, -1.2172537),
- (0.96081394, -1.2567521),
- (0.96121395, -1.2954508),
- (0.96161395, -1.333337),
- (0.96201396, -1.3703754),
- (0.96241397, -1.4065537),
- (0.962814, -1.4418381),
- (0.963214, -1.4762172),
- (0.963614, -1.5096587),
- (0.964014, -1.5421516),
- (0.964414, -1.5736655),
- (0.964814, -1.6041901),
- (0.965214, -1.633697),
- (0.965614, -1.6621763),
- (0.966014, -1.6896015),
- (0.96641403, -1.7159635),
- (0.96681404, -1.7412378),
- (0.96721405, -1.7654159),
- (0.96761405, -1.7884754),
- (0.96801406, -1.8104086),
- (0.96841407, -1.8311951),
- (0.9688141, -1.8508279),
- (0.9692141, -1.8692888),
- (0.9696141, -1.8865718),
- (0.9700141, -1.9026605),
- (0.9704141, -1.9175497),
- (0.9708141, -1.9312257),
- (0.9712141, -1.9436836),
- (0.9716141, -1.9549122),
- (0.9720141, -1.9649075),
- (0.97241414, -1.9736603),
- (0.97281414, -1.9811678),
- (0.97321415, -1.9874227),
- (0.97361416, -1.9924232),
- (0.97401416, -1.9961646),
- (0.97441417, -1.9986454),
- (0.9748142, -1.9998637),
- (0.9752142, -1.9998188),
- (0.9756142, -1.9985108),
- (0.9760142, -1.9959403),
- (0.9764142, -1.9921095),
- (0.9768142, -1.9870197),
- (0.9772142, -1.9806746),
- (0.9776142, -1.9730796),
- (0.97801423, -1.964237),
- (0.97841424, -1.9541551),
- (0.97881424, -1.9428372),
- (0.97921425, -1.9302942),
- (0.97961426, -1.9165297),
- (0.98001426, -1.9015568),
- (0.9804143, -1.8853806),
- (0.9808143, -1.868016),
- (0.9812143, -1.8494687),
- (0.9816143, -1.8297563),
- (0.9820143, -1.8088849),
- (0.9824143, -1.7868742),
- (0.9828143, -1.7637314),
- (0.9832143, -1.7394781),
- (0.9836143, -1.7141224),
- (0.98401433, -1.6876879),
- (0.98441434, -1.6601833),
- (0.98481435, -1.6316344),
- (0.98521435, -1.6020503),
- (0.98561436, -1.5714589),
- (0.98601437, -1.5398703),
- (0.9864144, -1.5073138),
- (0.9868144, -1.4738003),
- (0.9872144, -1.439361),
- (0.9876144, -1.4040072),
- (0.9880144, -1.3677721),
- (0.9884144, -1.3306674),
- (0.9888144, -1.292728),
- (0.9892144, -1.2539661),
- (0.9896144, -1.2144182),
- (0.99001443, -1.1740971),
- (0.99041444, -1.1330405),
- (0.99081445, -1.0912621),
- (0.99121445, -1.0488007),
- (0.99161446, -1.0056703),
- (0.99201447, -0.9619114),
- (0.9924145, -0.91753817),
- (0.9928145, -0.87259215),
- (0.9932145, -0.8270881),
- (0.9936145, -0.78106856),
- (0.9940145, -0.7345487),
- (0.9944145, -0.6875719),
- (0.9948145, -0.6401537),
- (0.9952145, -0.5923383),
- (0.9956145, -0.54414153),
- (0.99601454, -0.4956084),
- (0.99641454, -0.4467548),
- (0.99681455, -0.39762646),
- (0.99721456, -0.3482395),
- (0.99761456, -0.29864007),
- (0.99801457, -0.24884449),
- (0.9984146, -0.19889928),
- (0.9988146, -0.14882085),
- (0.9992146, -9.86484e-2),
- (0.9996146, -4.842126e-2)]
-
-pieceExpected :: [(Float, Float)]
-pieceExpected = [
- (0.0, -1.0),
- (8.0e-3, -1.0),
- (1.6e-2, -1.0),
- (2.4e-2, -1.0),
- (3.2e-2, -1.0),
- (4.0000003e-2, -1.0),
- (4.8000004e-2, -1.0),
- (5.6000005e-2, -1.0),
- (6.4e-2, -1.0),
- (7.2000004e-2, -1.0),
- (8.0000006e-2, -1.0),
- (8.800001e-2, -1.0),
- (9.600001e-2, -1.0),
- (0.10400001, -1.0),
- (0.11200001, -1.0),
- (0.12000001, -1.0),
- (0.128, -1.0),
- (0.136, -1.0),
- (0.14400001, -1.0),
- (0.15200001, -1.0),
- (0.16000001, -1.0),
- (0.16800001, -1.0),
- (0.17600001, -1.0),
- (0.18400002, -1.0),
- (0.19200002, -1.0),
- (0.20000002, -1.0),
- (0.20800002, -1.0),
- (0.21600002, -1.0),
- (0.22400002, -1.0),
- (0.23200002, -1.0),
- (0.24000002, -1.0),
- (0.24800003, -1.0),
- (0.256, -1.0),
- (0.264, -1.0),
- (0.27199998, -1.0),
- (0.27999997, -1.0),
- (0.28799996, -1.0),
- (0.29599994, -1.0),
- (0.30399993, -1.0),
- (0.31199992, -1.0),
- (0.3199999, -1.0),
- (0.3279999, -1.0),
- (0.33599988, -1.0),
- (0.34399986, -1.0),
- (0.35199985, -1.0),
- (0.35999984, -1.0),
- (0.36799982, -1.0),
- (0.3759998, -1.0),
- (0.3839998, -1.0),
- (0.39199978, -1.0),
- (0.39999977, -1.0),
- (0.40799975, -1.0),
- (0.41599974, -1.0),
- (0.42399973, -1.0),
- (0.4319997, -1.0),
- (0.4399997, -1.0),
- (0.4479997, -1.0),
- (0.45599967, -1.0),
- (0.46399966, -1.0),
- (0.47199965, -1.0),
- (0.47999963, -1.0),
- (0.48799962, -1.0),
- (0.4959996, -1.0),
- (0.5039996, -1.0),
- (0.5119996, -1.0),
- (0.5199996, -1.0),
- (0.52799964, -1.0),
- (0.53599966, -1.0),
- (0.5439997, -1.0),
- (0.5519997, -1.0),
- (0.5599997, -1.0),
- (0.5679997, -1.0),
- (0.57599974, -1.0),
- (0.58399975, -1.0),
- (0.59199977, -1.0),
- (0.5999998, -1.0),
- (0.6079998, -1.0),
- (0.6159998, -1.0),
- (0.62399983, -1.0),
- (0.63199985, -1.0),
- (0.63999987, -1.0),
- (0.6479999, -1.0),
- (0.6559999, -1.0),
- (0.6639999, -1.0),
- (0.67199993, -1.0),
- (0.67999995, -1.0),
- (0.68799996, -1.0),
- (0.696, -1.0),
- (0.704, -1.0),
- (0.712, -1.0),
- (0.72, -1.0),
- (0.72800004, -1.0),
- (0.73600006, -1.0),
- (0.7440001, -1.0),
- (0.7520001, -1.0),
- (0.7600001, -1.0),
- (0.7680001, -1.0),
- (0.77600014, -1.0),
- (0.78400016, -1.0),
- (0.7920002, -1.0),
- (0.8000002, -1.0),
- (0.8080002, -1.0),
- (0.8160002, -1.0),
- (0.82400024, -1.0),
- (0.83200026, -1.0),
- (0.8400003, -1.0),
- (0.8480003, -1.0),
- (0.8560003, -1.0),
- (0.8640003, -1.0),
- (0.87200034, -1.0),
- (0.88000035, -1.0),
- (0.88800037, -1.0),
- (0.8960004, -1.0),
- (0.9040004, -1.0),
- (0.9120004, -1.0),
- (0.92000043, -1.0),
- (0.92800045, -1.0),
- (0.93600047, -1.0),
- (0.9440005, -1.0),
- (0.9520005, -1.0),
- (0.9600005, -1.0),
- (0.96800053, -1.0),
- (0.97600055, -1.0),
- (0.98400056, -1.0),
- (0.9920006, -1.0),
- (1.0000006, -0.9999851),
- (1.0080006, -0.7999847),
- (1.0160006, -0.5999843),
- (1.0240006, -0.39998388),
- (1.0320007, -0.19998348),
- (1.0400007, 1.692772e-5),
- (1.0480007, 0.20001733),
- (1.0560007, 0.40001774),
- (1.0640007, 0.60001814),
- (1.0720007, 0.80001855),
- (1.0800008, 1.0000191),
- (1.0880008, 1.2000194),
- (1.0960008, 1.4000196),
- (1.1040008, 1.6000202),
- (1.1120008, 1.8000207),
- (1.1200008, 2.000021),
- (1.1280009, 2.2000213),
- (1.1360009, 2.4000218),
- (1.1440009, 2.6000223),
- (1.1520009, 2.8000226),
- (1.1600009, 3.000023),
- (1.1680009, 3.2000237),
- (1.176001, 3.400024),
- (1.184001, 3.6000242),
- (1.192001, 3.8000245),
- (1.200001, 4.0000024),
- (1.208001, 4.0199146),
- (1.216001, 4.0393105),
- (1.224001, 4.058002),
- (1.2320011, 4.075812),
- (1.2400011, 4.092575),
- (1.2480011, 4.1081386),
- (1.2560011, 4.122365),
- (1.2640011, 4.1351323),
- (1.2720011, 4.1463346),
- (1.2800012, 4.155884),
- (1.2880012, 4.16371),
- (1.2960012, 4.1697617),
- (1.3040012, 4.174006),
- (1.3120012, 4.1764283),
- (1.3200012, 4.177034),
- (1.3280013, 4.175845),
- (1.3360013, 4.1729026),
- (1.3440013, 4.168264),
- (1.3520013, 4.1620026),
- (1.3600013, 4.154207),
- (1.3680013, 4.144981),
- (1.3760014, 4.13444),
- (1.3840014, 4.1227107),
- (1.3920014, 4.1099305),
- (1.4000014, 4.0962453),
- (1.4080014, 4.0818067),
- (1.4160014, 4.066773),
- (1.4240015, 4.0513043),
- (1.4320015, 4.035564),
- (1.4400015, 4.0197153),
- (1.4480015, 4.003919),
- (1.4560015, 3.9883342),
- (1.4640015, 3.9731145),
- (1.4720016, 3.9584074),
- (1.4800016, 3.9443526),
- (1.4880016, 3.9310822),
- (1.4960016, 3.9187174),
- (1.5040016, 3.9073682),
- (1.5120016, 3.8971329),
- (1.5200016, 3.8880968),
- (1.5280017, 3.8803325),
- (1.5360017, 3.8738976),
- (1.5440017, 3.8688364),
- (1.5520017, 3.8651776),
- (1.5600017, 3.862936),
- (1.5680017, 3.8621116),
- (1.5760018, 3.8626904),
- (1.5840018, 3.8646445),
- (1.5920018, 3.8679318),
- (1.6000018, 3.8724985),
- (1.6080018, 3.8782783),
- (1.6160018, 3.8851929),
- (1.6240019, 3.8931556),
- (1.6320019, 3.9020686),
- (1.6400019, 3.9118276),
- (1.6480019, 3.9223208),
- (1.6560019, 3.9334302),
- (1.664002, 3.9450345),
- (1.672002, 3.9570084),
- (1.680002, 3.969226),
- (1.688002, 3.9815598),
- (1.696002, 3.9938836),
- (1.704002, 4.0060735),
- (1.712002, 4.0180087),
- (1.720002, 4.029573),
- (1.7280021, 4.0406556),
- (1.7360021, 4.0511527),
- (1.7440021, 4.060967),
- (1.7520021, 4.070011),
- (1.7600021, 4.078206),
- (1.7680022, 4.085482),
- (1.7760022, 4.091781),
- (1.7840022, 4.097055),
- (1.7920022, 4.101267),
- (1.8000022, 4.104391),
- (1.8080022, 4.106413),
- (1.8160022, 4.1073303),
- (1.8240023, 4.1071506),
- (1.8320023, 4.105894),
- (1.8400023, 4.1035895),
- (1.8480023, 4.100278),
- (1.8560023, 4.0960073),
- (1.8640023, 4.090837),
- (1.8720024, 4.0848327),
- (1.8800024, 4.0780687),
- (1.8880024, 4.0706253),
- (1.8960024, 4.0625877),
- (1.9040024, 4.054047),
- (1.9120024, 4.045097),
- (1.9200025, 4.0358343),
- (1.9280025, 4.026357),
- (1.9360025, 4.016765),
- (1.9440025, 4.0071564),
- (1.9520025, 3.9976277),
- (1.9600025, 3.988274),
- (1.9680026, 3.9791875),
- (1.9760026, 3.9704547),
- (1.9840026, 3.9621587),
- (1.9920026, 3.9543757),
- (2.0000026, 3.947176),
- (2.0080025, 3.9406233),
- (2.0160024, 3.934773),
- (2.0240023, 3.9296732),
- (2.0320022, 3.9253635),
- (2.040002, 3.9218745),
- (2.048002, 3.9192286),
- (2.056002, 3.9174385),
- (2.0640018, 3.9165092),
- (2.0720017, 3.9164367),
- (2.0800016, 3.9172072),
- (2.0880015, 3.9188004),
- (2.0960014, 3.921187),
- (2.1040013, 3.9243298),
- (2.1120012, 3.928186),
- (2.120001, 3.9327044),
- (2.128001, 3.93783),
- (2.1360009, 3.9435005),
- (2.1440008, 3.9496508),
- (2.1520007, 3.956211),
- (2.1600006, 3.9631085),
- (2.1680005, 3.9702682),
- (2.1760004, 3.9776144),
- (2.1840003, 3.9850693),
- (2.1920002, 3.9925566),
- (2.2, 4.0),
- (2.208, 4.007325),
- (2.2159998, 4.0144606),
- (2.2239997, 4.0213366),
- (2.2319996, 4.0278883),
- (2.2399995, 4.034055),
- (2.2479994, 4.0397806),
- (2.2559993, 4.0450144),
- (2.2639992, 4.049711),
- (2.2719991, 4.0538325),
- (2.279999, 4.0573454),
- (2.287999, 4.060225),
- (2.2959988, 4.0624514),
- (2.3039987, 4.0640125),
- (2.3119986, 4.064904),
- (2.3199985, 4.0651274),
- (2.3279984, 4.06469),
- (2.3359983, 4.0636077),
- (2.3439982, 4.0619016),
- (2.351998, 4.0595984),
- (2.359998, 4.0567307),
- (2.367998, 4.053337),
- (2.3759978, 4.0494595),
- (2.3839977, 4.045145),
- (2.3919976, 4.0404434),
- (2.3999975, 4.035409),
- (2.4079974, 4.030098),
- (2.4159973, 4.024567),
- (2.4239972, 4.018877),
- (2.431997, 4.0130863),
- (2.439997, 4.007256),
- (2.4479969, 4.0014453),
- (2.4559968, 3.9957118),
- (2.4639966, 3.9901128),
- (2.4719965, 3.984702),
- (2.4799964, 3.9795318),
- (2.4879963, 3.97465),
- (2.4959962, 3.9701009),
- (2.5039961, 3.9659252),
- (2.511996, 3.9621596),
- (2.519996, 3.9588351),
- (2.5279958, 3.9559789),
- (2.5359957, 3.953611),
- (2.5439956, 3.9517488),
- (2.5519955, 3.9504023),
- (2.5599954, 3.9495773),
- (2.5679953, 3.9492736),
- (2.5759952, 3.9494863),
- (2.583995, 3.9502048),
- (2.591995, 3.9514136),
- (2.599995, 3.953093),
- (2.6079948, 3.9552188),
- (2.6159947, 3.9577622),
- (2.6239946, 3.9606915),
- (2.6319945, 3.9639702),
- (2.6399944, 3.9675598),
- (2.6479943, 3.9714198),
- (2.6559942, 3.9755063),
- (2.663994, 3.979775),
- (2.671994, 3.98418),
- (2.6799939, 3.9886742),
- (2.6879938, 3.9932117),
- (2.6959937, 3.997745),
- (2.7039936, 4.0022297),
- (2.7119935, 4.0066204),
- (2.7199934, 4.0108747),
- (2.7279932, 4.014952),
- (2.7359931, 4.0188136),
- (2.743993, 4.0224247),
- (2.751993, 4.025752),
- (2.7599928, 4.028767),
- (2.7679927, 4.031444),
- (2.7759926, 4.033762),
- (2.7839925, 4.0357027),
- (2.7919924, 4.0372524),
- (2.7999923, 4.038402),
- (2.8079922, 4.0391464),
- (2.815992, 4.0394845),
- (2.823992, 4.0394187),
- (2.831992, 4.038957),
- (2.8399918, 4.03811),
- (2.8479917, 4.036892),
- (2.8559916, 4.035321),
- (2.8639915, 4.0334196),
- (2.8719914, 4.0312114),
- (2.8799913, 4.0287237),
- (2.8879912, 4.0259857),
- (2.895991, 4.0230293),
- (2.903991, 4.0198874),
- (2.911991, 4.016595),
- (2.9199908, 4.013188),
- (2.9279907, 4.0097017),
- (2.9359906, 4.0061727),
- (2.9439905, 4.002638),
- (2.9519904, 3.9991326),
- (2.9599903, 3.9956918),
- (2.9679902, 3.9923487),
- (2.97599, 3.9891357),
- (2.98399, 3.9860835),
- (2.9919899, 3.98322),
- (2.9999897, 3.9805713),
- (3.0079896, 3.9781604),
- (3.0159895, 3.9760075),
- (3.0239894, 3.974131),
- (3.0319893, 3.9725451),
- (3.0399892, 3.971261),
- (3.0479891, 3.9702873),
- (3.055989, 3.9696283),
- (3.063989, 3.969286),
- (3.0719888, 3.9692583),
- (3.0799887, 3.9695415),
- (3.0879886, 3.970127),
- (3.0959885, 3.9710045),
- (3.1039884, 3.9721603),
- (3.1119883, 3.9735785),
- (3.1199882, 3.9752407),
- (3.127988, 3.9771256),
- (3.135988, 3.9792113),
- (3.143988, 3.981474),
- (3.1519878, 3.9838867),
- (3.1599877, 3.9864244),
- (3.1679876, 3.989058),
- (3.1759875, 3.9917603),
- (3.1839874, 3.994503),
- (3.1919873, 3.9972572),
- (3.1999872, 3.9999957),
- (3.207987, 4.002691),
- (3.215987, 4.005316),
- (3.2239869, 4.0078454),
- (3.2319868, 4.010256),
- (3.2399867, 4.0125246),
- (3.2479866, 4.0146313),
- (3.2559865, 4.016557),
- (3.2639863, 4.0182853),
- (3.2719862, 4.0198016),
- (3.2799861, 4.0210943),
- (3.287986, 4.022154),
- (3.295986, 4.0229735),
- (3.3039858, 4.023548),
- (3.3119857, 4.0238767),
- (3.3199856, 4.023959),
- (3.3279855, 4.0237985),
- (3.3359854, 4.023401),
- (3.3439853, 4.0227737),
- (3.3519852, 4.0219264),
- (3.359985, 4.020872),
- (3.367985, 4.0196238),
- (3.375985, 4.0181975),
- (3.3839848, 4.0166106),
- (3.3919847, 4.014881),
- (3.3999846, 4.0130296),
- (3.4079845, 4.0110755),
- (3.4159844, 4.0090413),
- (3.4239843, 4.006948),
- (3.4319842, 4.0048175),
- (3.439984, 4.0026727),
- (3.447984, 4.000535),
- (3.4559839, 3.998426),
- (3.4639838, 3.996366),
- (3.4719837, 3.9943752),
- (3.4799836, 3.9924731),
- (3.4879835, 3.9906769),
- (3.4959834, 3.9890032),
- (3.5039833, 3.9874668),
- (3.5119832, 3.9860816),
- (3.519983, 3.984858),
- (3.527983, 3.983807),
- (3.5359828, 3.982936),
- (3.5439827, 3.9822502),
- (3.5519826, 3.9817548),
- (3.5599825, 3.981451),
- (3.5679824, 3.981339),
- (3.5759823, 3.9814167),
- (3.5839822, 3.9816809),
- (3.5919821, 3.9821253),
- (3.599982, 3.9827428),
- (3.607982, 3.9835248),
- (3.6159818, 3.9844599),
- (3.6239817, 3.9855375),
- (3.6319816, 3.9867435),
- (3.6399815, 3.9880638),
- (3.6479814, 3.9894834),
- (3.6559813, 3.9909868),
- (3.6639812, 3.992557),
- (3.671981, 3.9941773),
- (3.679981, 3.995831),
- (3.687981, 3.9975),
- (3.6959808, 3.999168),
- (3.7039807, 4.000818),
- (3.7119806, 4.002433),
- (3.7199805, 4.0039983),
- (3.7279804, 4.0054984),
- (3.7359803, 4.006919),
- (3.7439802, 4.0082474),
- (3.75198, 4.009472),
- (3.75998, 4.010581),
- (3.7679799, 4.011566),
- (3.7759798, 4.012419),
- (3.7839797, 4.013133),
- (3.7919796, 4.013704),
- (3.7999794, 4.014127),
- (3.8079793, 4.014401),
- (3.8159792, 4.0145254),
- (3.8239791, 4.0145016),
- (3.831979, 4.014332),
- (3.839979, 4.0140204),
- (3.8479788, 4.0135727),
- (3.8559787, 4.0129952),
- (3.8639786, 4.0122957),
- (3.8719785, 4.0114837),
- (3.8799784, 4.010568),
- (3.8879783, 4.009561),
- (3.8959782, 4.008474),
- (3.903978, 4.007318),
- (3.911978, 4.006107),
- (3.919978, 4.0048537),
- (3.9279778, 4.003571),
- (3.9359777, 4.002273),
- (3.9439776, 4.0009727),
- (3.9519775, 3.999683),
- (3.9599774, 3.998417),
- (3.9679773, 3.9971871),
- (3.9759772, 3.996005),
- (3.983977, 3.994882),
- (3.991977, 3.9938288),
- (3.9999769, 3.992854),
- (4.007977, 3.9919667),
- (4.015977, 3.9911747),
- (4.023977, 3.9904842),
- (4.0319767, 3.9899006),
- (4.0399766, 3.989428),
- (4.0479765, 3.98907),
- (4.0559764, 3.9888272),
- (4.0639763, 3.9887009),
- (4.071976, 3.9886909),
- (4.079976, 3.9887948),
- (4.087976, 3.9890099),
- (4.095976, 3.9893327),
- (4.103976, 3.9897575),
- (4.1119757, 3.9902792),
- (4.1199756, 3.9908905),
- (4.1279755, 3.9915838),
- (4.1359754, 3.992351),
- (4.1439753, 3.9931831),
- (4.151975, 3.994071),
- (4.159975, 3.9950042),
- (4.167975, 3.995973),
- (4.175975, 3.9969673),
- (4.1839747, 3.9979763),
- (4.1919746, 3.9989896),
- (4.1999745, 3.9999967),
- (4.2079744, 3.8670897),
- (4.2159743, 3.733758),
- (4.223974, 3.6004262),
- (4.231974, 3.467095),
- (4.239974, 3.3337631),
- (4.247974, 3.2004313),
- (4.255974, 3.0671),
- (4.2639737, 2.9337683),
- (4.2719736, 2.8004367),
- (4.2799735, 2.6671052),
- (4.2879734, 2.5337734),
- (4.2959733, 2.400442),
- (4.303973, 2.2671103),
- (4.311973, 2.1337786),
- (4.319973, 2.000447),
- (4.327973, 1.8671155),
- (4.335973, 1.7337837),
- (4.3439727, 1.6004522),
- (4.3519726, 1.4671206),
- (4.3599725, 1.3337889),
- (4.3679724, 1.2004573),
- (4.3759723, 1.0671258),
- (4.383972, 0.933794),
- (4.391972, 0.8004625),
- (4.399972, 0.66713095),
- (4.407972, 0.5337994),
- (4.4159718, 0.40046763),
- (4.4239717, 0.2671361),
- (4.4319715, 0.13380456),
- (4.4399714, 4.7278404e-4),
- (4.4479713, -0.13285875),
- (4.4559712, -0.26619053),
- (4.463971, -0.39952183),
- (4.471971, -0.5328536),
- (4.479971, -0.6661854),
- (4.487971, -0.7995167),
- (4.4959707, -0.93284845),
- (4.5039706, -1.0130347),
- (4.5119705, -1.0388085),
- (4.5199704, -1.0637013),
- (4.5279703, -1.0874522),
- (4.53597, -1.1098169),
- (4.54397, -1.1305714),
- (4.55197, -1.1495129),
- (4.55997, -1.1664628),
- (4.56797, -1.1812674),
- (4.5759697, -1.1937997),
- (4.5839696, -1.2039601),
- (4.5919695, -1.211677),
- (4.5999694, -1.2169073),
- (4.6079693, -1.2196363),
- (4.615969, -1.2198772),
- (4.623969, -1.217671),
- (4.631969, -1.2130848),
- (4.639969, -1.206211),
- (4.647969, -1.1971657),
- (4.6559687, -1.1860877),
- (4.6639686, -1.1731353),
- (4.6719685, -1.1584852),
- (4.6799684, -1.1423297),
- (4.6879683, -1.1248746),
- (4.695968, -1.1063366),
- (4.703968, -1.0869405),
- (4.711968, -1.0669167),
- (4.719968, -1.0464988),
- (4.7279677, -1.0259204),
- (4.7359676, -1.0054132),
- (4.7439675, -0.9852034),
- (4.7519674, -0.9655106),
- (4.7599673, -0.94654465),
- (4.767967, -0.92850345),
- (4.775967, -0.91157144),
- (4.783967, -0.89591736),
- (4.791967, -0.88169277),
- (4.799967, -0.86903095),
- (4.8079667, -0.8580451),
- (4.8159666, -0.84882826),
- (4.8239665, -0.8414518),
- (4.8319664, -0.83596575),
- (4.8399663, -0.83239794),
- (4.847966, -0.83075464),
- (4.855966, -0.8310205),
- (4.863966, -0.83315915),
- (4.871966, -0.83711433),
- (4.879966, -0.84281033),
- (4.8879657, -0.85015345),
- (4.8959656, -0.85903347),
- (4.9039655, -0.8693248),
- (4.9119654, -0.8808886),
- (4.9199653, -0.893574),
- (4.927965, -0.90722066),
- (4.935965, -0.92166007),
- (4.943965, -0.936718),
- (4.951965, -0.95221645),
- (4.9599648, -0.9679753),
- (4.9679646, -0.98381513),
- (4.9759645, -0.9995585),
- (4.9839644, -1.015032),
- (4.9919643, -1.0300686),
- (4.999964, -1.0445088),
- (5.007964, -1.0582025),
- (5.015964, -1.0710107),
- (5.023964, -1.0828063),
- (5.031964, -1.0934762),
- (5.0399637, -1.1029212),
- (5.0479636, -1.111058),
- (5.0559635, -1.1178188),
- (5.0639634, -1.1231527),
- (5.0719633, -1.1270251),
- (5.079963, -1.1294185),
- (5.087963, -1.1303322),
- (5.095963, -1.129782),
- (5.103963, -1.1277993),
- (5.111963, -1.1244311),
- (5.1199627, -1.1197392),
- (5.1279626, -1.1137987),
- (5.1359625, -1.1066976),
- (5.1439624, -1.0985346),
- (5.1519623, -1.0894194),
- (5.159962, -1.0794696),
- (5.167962, -1.0688103),
- (5.175962, -1.0575726),
- (5.183962, -1.0458912),
- (5.191962, -1.0339036),
- (5.1999617, -1.0217485),
- (5.2079616, -1.0095638),
- (5.2159615, -0.99748534),
- (5.2239614, -0.98564565),
- (5.2319613, -0.97417194),
- (5.239961, -0.96318537),
- (5.247961, -0.9527996),
- (5.255961, -0.94311935),
- (5.263961, -0.93424004),
- (5.2719607, -0.92624635),
- (5.2799606, -0.9192115),
- (5.2879605, -0.91319704),
- (5.2959604, -0.908252),
- (5.3039603, -0.9044126),
- (5.31196, -0.9017023),
- (5.31996, -0.90013146),
- (5.32796, -0.8996976),
- (5.33596, -0.90038586),
- (5.34396, -0.90216887),
- (5.3519597, -0.9050078),
- (5.3599596, -0.90885264),
- (5.3679595, -0.9136431),
- (5.3759594, -0.9193096),
- (5.3839593, -0.9257737),
- (5.391959, -0.93294984),
- (5.399959, -0.9407457),
- (5.407959, -0.94906396),
- (5.415959, -0.9578031),
- (5.423959, -0.9668585),
- (5.4319587, -0.9761243),
- (5.4399586, -0.98549366),
- (5.4479585, -0.9948607),
- (5.4559584, -1.0041215),
- (5.4639583, -1.013175),
- (5.471958, -1.021924),
- (5.479958, -1.0302769),
- (5.487958, -1.0381477),
- (5.495958, -1.0454572),
- (5.5039577, -1.0521342),
- (5.5119576, -1.0581155),
- (5.5199575, -1.0633465),
- (5.5279574, -1.0677826),
- (5.5359573, -1.0713881),
- (5.543957, -1.0741376),
- (5.551957, -1.0760152),
- (5.559957, -1.0770156),
- (5.567957, -1.0771428),
- (5.575957, -1.0764107),
- (5.5839567, -1.0748423),
- (5.5919566, -1.0724697),
- (5.5999565, -1.0693333),
- (5.6079564, -1.0654812),
- (5.6159563, -1.0609688),
- (5.623956, -1.0558577),
- (5.631956, -1.0502151),
- (5.639956, -1.0441129),
- (5.647956, -1.0376272),
- (5.655956, -1.0308366),
- (5.6639557, -1.0238217),
- (5.6719556, -1.0166645),
- (5.6799555, -1.0094471),
- (5.6879554, -1.0022506),
- (5.6959553, -0.9951546),
- (5.703955, -0.98823625),
- (5.711955, -0.98156935),
- (5.719955, -0.97522354),
- (5.727955, -0.9692637),
- (5.7359548, -0.9637493),
- (5.7439547, -0.9587339),
- (5.7519546, -0.9542646),
- (5.7599545, -0.9503814),
- (5.7679543, -0.9471172),
- (5.7759542, -0.9444976),
- (5.783954, -0.9425403),
- (5.791954, -0.9412556),
- (5.799954, -0.9406461),
- (5.807954, -0.9407067),
- (5.8159537, -0.94142497),
- (5.8239536, -0.94278157),
- (5.8319535, -0.9447503),
- (5.8399534, -0.9472985),
- (5.8479533, -0.95038784),
- (5.855953, -0.9539745),
- (5.863953, -0.95801),
- (5.871953, -0.9624417),
- (5.879953, -0.96721333),
- (5.887953, -0.9722661),
- (5.8959527, -0.97753865),
- (5.9039526, -0.982969),
- (5.9119525, -0.98849374),
- (5.9199524, -0.99405),
- (5.9279523, -0.99957544),
- (5.935952, -1.005009),
- (5.943952, -1.0102924),
- (5.951952, -1.0153692),
- (5.959952, -1.0201865),
- (5.967952, -1.0246956),
- (5.9759517, -1.0288517),
- (5.9839516, -1.0326146),
- (5.9919515, -1.0359496),
- (5.9999514, -1.0388268),
- (6.0079513, -1.0412226),
- (6.015951, -1.0431185),
- (6.023951, -1.0445021),
- (6.031951, -1.0453672),
- (6.039951, -1.0457132),
- (6.0479507, -1.0455452),
- (6.0559506, -1.0448741),
- (6.0639505, -1.0437161),
- (6.0719504, -1.0420926),
- (6.0799503, -1.0400296),
- (6.08795, -1.037558),
- (6.09595, -1.0347121),
- (6.10395, -1.0315301),
- (6.11195, -1.0280534),
- (6.11995, -1.0243256),
- (6.1279497, -1.0203927),
- (6.1359496, -1.0163016),
- (6.1439495, -1.0121008),
- (6.1519494, -1.007839),
- (6.1599493, -1.0035642),
- (6.167949, -0.9993246),
- (6.175949, -0.9951664),
- (6.183949, -0.9911344),
- (6.191949, -0.9872713),
- (6.199949, -0.98361695),
- (6.2079487, -0.9802085),
- (6.2159486, -0.97707933),
- (6.2239485, -0.97425944),
- (6.2319484, -0.97177476),
- (6.2399483, -0.969647),
- (6.247948, -0.96789366),
- (6.255948, -0.96652764),
- (6.263948, -0.96555734),
- (6.271948, -0.9649867),
- (6.2799478, -0.96481496),
- (6.2879477, -0.9650372),
- (6.2959476, -0.96564406),
- (6.3039474, -0.96662205),
- (6.3119473, -0.9679538),
- (6.3199472, -0.96961844),
- (6.327947, -0.9715916),
- (6.335947, -0.97384596),
- (6.343947, -0.97635156),
- (6.351947, -0.97907627),
- (6.3599467, -0.98198587),
- (6.3679466, -0.98504496),
- (6.3759465, -0.98821676),
- (6.3839464, -0.9914642),
- (6.3919463, -0.9947497),
- (6.399946, -0.9980363),
- (6.407946, -1.0012875),
- (6.415946, -1.0044675),
- (6.423946, -1.0075425),
- (6.431946, -1.01048),
- (6.4399457, -1.0132498),
- (6.4479456, -1.0158241),
- (6.4559455, -1.0181776),
- (6.4639454, -1.0202881),
- (6.4719453, -1.0221364),
- (6.479945, -1.0237064),
- (6.487945, -1.0249858),
- (6.495945, -1.0259651),
- (6.503945, -1.0266389),
- (6.511945, -1.0270048),
- (6.5199447, -1.0270644),
- (6.5279446, -1.0268223),
- (6.5359445, -1.0262864),
- (6.5439444, -1.0254676),
- (6.5519443, -1.0243802),
- (6.559944, -1.023041),
- (6.567944, -1.021469),
- (6.575944, -1.019686),
- (6.583944, -1.0177153),
- (6.5919437, -1.0155822),
- (6.5999436, -1.0133132),
- (6.6079435, -1.0109358),
- (6.6159434, -1.0084784),
- (6.6239433, -1.0059696),
- (6.631943, -1.0034382),
- (6.639943, -1.0009129),
- (6.647943, -0.9984215),
- (6.655943, -0.99599105),
- (6.663943, -0.9936476),
- (6.6719427, -0.99141556),
- (6.6799426, -0.98931783),
- (6.6879425, -0.98737544),
- (6.6959424, -0.98560715),
- (6.7039423, -0.98402965),
- (6.711942, -0.98265713),
- (6.719942, -0.9815013),
- (6.727942, -0.9805711),
- (6.735942, -0.979873),
- (6.743942, -0.97941077),
- (6.7519417, -0.9791853),
- (6.7599416, -0.97919506),
- (6.7679415, -0.97943586),
- (6.7759414, -0.9799009),
- (6.7839413, -0.98058116),
- (6.791941, -0.98146534),
- (6.799941, -0.98253995),
- (6.807941, -0.98378986),
- (6.815941, -0.98519814),
- (6.8239408, -0.98674625),
- (6.8319407, -0.9884146),
- (6.8399405, -0.99018264),
- (6.8479404, -0.99202883),
- (6.8559403, -0.9939314),
- (6.8639402, -0.9958682),
- (6.87194, -0.99781716),
- (6.87994, -0.9997564),
- (6.88794, -1.0016644),
- (6.89594, -1.0035207),
- (6.9039397, -1.0053055),
- (6.9119396, -1.0070002),
- (6.9199395, -1.0085876),
- (6.9279394, -1.0100518),
- (6.9359393, -1.0113788),
- (6.943939, -1.0125563),
- (6.951939, -1.0135736),
- (6.959939, -1.0144224),
- (6.967939, -1.0150962),
- (6.975939, -1.0155905),
- (6.9839387, -1.0159029),
- (6.9919386, -1.0160332),
- (6.9999385, -1.015983),
- (7.0079384, -1.0157561),
- (7.0159383, -1.0153582),
- (7.023938, -1.0147965),
- (7.031938, -1.0140803),
- (7.039938, -1.0132201),
- (7.047938, -1.0122279),
- (7.055938, -1.0111173),
- (7.0639377, -1.0099025),
- (7.0719376, -1.0085988),
- (7.0799375, -1.0072224),
- (7.0879374, -1.0057898),
- (7.0959373, -1.0043178),
- (7.103937, -1.0028235),
- (7.111937, -1.0013238),
- (7.119937, -0.99983567),
- (7.127937, -0.9983753),
- (7.1359367, -0.99695843),
- (7.1439366, -0.9956001),
- (7.1519365, -0.9943144),
- (7.1599364, -0.99311423),
- (7.1679363, -0.99201155),
- (7.175936, -0.99101686),
- (7.183936, -0.99013937),
- (7.191936, -0.9893867),
- (7.199936, -0.9887651),
- (7.207936, -0.98827916),
- (7.2159357, -0.98793197),
- (7.2239356, -0.98772484),
- (7.2319355, -0.9876578),
- (7.2399354, -0.987729),
- (7.2479353, -0.98793536),
- (7.255935, -0.98827213),
- (7.263935, -0.98873335),
- (7.271935, -0.9893117),
- (7.279935, -0.9899987),
- (7.287935, -0.9907849),
- (7.2959347, -0.9916597),
- (7.3039346, -0.99261194),
- (7.3119345, -0.99362963),
- (7.3199344, -0.99470043),
- (7.3279343, -0.99581134),
- (7.335934, -0.99694943),
- (7.343934, -0.9981016),
- (7.351934, -0.99925476),
- (7.359934, -1.000396),
- (7.3679338, -1.001513),
- (7.3759336, -1.0025938),
- (7.3839335, -1.0036267),
- (7.3919334, -1.0046015),
- (7.3999333, -1.005508),
- (7.407933, -1.0063375),
- (7.415933, -1.0070822),
- (7.423933, -1.0077353),
- (7.431933, -1.0082909),
- (7.439933, -1.0087447),
- (7.4479327, -1.0090934),
- (7.4559326, -1.009335),
- (7.4639325, -1.0094688),
- (7.4719324, -1.0094949),
- (7.4799323, -1.0094151),
- (7.487932, -1.009232),
- (7.495932, -1.0089496),
- (7.503932, -1.0),
- (7.511932, -1.0),
- (7.519932, -1.0),
- (7.5279317, -1.0),
- (7.5359316, -1.0),
- (7.5439315, -1.0),
- (7.5519314, -1.0),
- (7.5599313, -1.0),
- (7.567931, -1.0),
- (7.575931, -1.0),
- (7.583931, -1.0),
- (7.591931, -1.0),
- (7.599931, -1.0),
- (7.6079307, -1.0),
- (7.6159306, -1.0),
- (7.6239305, -1.0),
- (7.6319304, -1.0),
- (7.6399302, -1.0),
- (7.64793, -1.0),
- (7.65593, -1.0),
- (7.66393, -1.0),
- (7.67193, -1.0),
- (7.6799297, -1.0),
- (7.6879296, -1.0),
- (7.6959295, -1.0),
- (7.7039294, -1.0),
- (7.7119293, -1.0),
- (7.719929, -1.0),
- (7.727929, -1.0),
- (7.735929, -1.0),
- (7.743929, -1.0),
- (7.751929, -1.0),
- (7.7599287, -1.0),
- (7.7679286, -1.0),
- (7.7759285, -1.0),
- (7.7839284, -1.0),
- (7.7919283, -1.0),
- (7.799928, -1.0),
- (7.807928, -1.0),
- (7.815928, -1.0),
- (7.823928, -1.0),
- (7.831928, -1.0),
- (7.8399277, -1.0),
- (7.8479276, -1.0),
- (7.8559275, -1.0),
- (7.8639274, -1.0),
- (7.8719273, -1.0),
- (7.879927, -1.0),
- (7.887927, -1.0),
- (7.895927, -1.0),
- (7.903927, -1.0),
- (7.9119267, -1.0),
- (7.9199266, -1.0),
- (7.9279265, -1.0),
- (7.9359264, -1.0),
- (7.9439263, -1.0),
- (7.951926, -1.0),
- (7.959926, -1.0),
- (7.967926, -1.0),
- (7.975926, -1.0),
- (7.983926, -1.0),
- (7.9919257, -1.0),
- (7.9999256, -1.0),
- (8.007926, -1.0),
- (8.015926, -1.0),
- (8.023927, -1.0),
- (8.031927, -1.0),
- (8.0399275, -1.0),
- (8.047928, -1.0),
- (8.055928, -1.0),
- (8.063929, -1.0),
- (8.071929, -1.0),
- (8.079929, -1.0),
- (8.08793, -1.0),
- (8.09593, -1.0),
- (8.10393, -1.0),
- (8.111931, -1.0),
- (8.119931, -1.0),
- (8.127932, -1.0),
- (8.135932, -1.0),
- (8.143932, -1.0),
- (8.151933, -1.0),
- (8.159933, -1.0),
- (8.167933, -1.0),
- (8.175934, -1.0),
- (8.183934, -1.0),
- (8.191935, -1.0),
- (8.199935, -1.0),
- (8.207935, -1.0),
- (8.215936, -1.0),
- (8.223936, -1.0),
- (8.231936, -1.0),
- (8.239937, -1.0),
- (8.247937, -1.0),
- (8.255938, -1.0),
- (8.263938, -1.0),
- (8.271938, -1.0),
- (8.279939, -1.0),
- (8.287939, -1.0),
- (8.295939, -1.0),
- (8.30394, -1.0),
- (8.31194, -1.0),
- (8.319941, -1.0),
- (8.327941, -1.0),
- (8.335941, -1.0),
- (8.343942, -1.0),
- (8.351942, -1.0),
- (8.359942, -1.0),
- (8.367943, -1.0),
- (8.375943, -1.0),
- (8.383944, -1.0),
- (8.391944, -1.0),
- (8.399944, -1.0),
- (8.407945, -1.0),
- (8.415945, -1.0),
- (8.423945, -1.0),
- (8.431946, -1.0),
- (8.439946, -1.0),
- (8.447947, -1.0),
- (8.455947, -1.0),
- (8.463947, -1.0),
- (8.471948, -1.0),
- (8.479948, -1.0),
- (8.487948, -1.0),
- (8.495949, -1.0),
- (8.503949, -1.0),
- (8.51195, -1.0),
- (8.51995, -1.0),
- (8.52795, -1.0),
- (8.535951, -1.0),
- (8.543951, -1.0),
- (8.551951, -1.0),
- (8.559952, -1.0),
- (8.567952, -1.0),
- (8.575953, -1.0),
- (8.583953, -1.0),
- (8.591953, -1.0),
- (8.599954, -1.0),
- (8.607954, -1.0),
- (8.615954, -1.0),
- (8.623955, -1.0),
- (8.631955, -1.0),
- (8.6399555, -1.0),
- (8.647956, -1.0),
- (8.655956, -1.0),
- (8.663957, -1.0),
- (8.671957, -1.0),
- (8.679957, -1.0),
- (8.687958, -1.0),
- (8.695958, -1.0),
- (8.7039585, -1.0),
- (8.711959, -1.0),
- (8.719959, -1.0),
- (8.72796, -1.0),
- (8.73596, -1.0),
- (8.74396, -1.0),
- (8.751961, -1.0),
- (8.759961, -1.0),
- (8.7679615, -1.0),
- (8.775962, -1.0),
- (8.783962, -1.0),
- (8.791963, -1.0),
- (8.799963, -1.0),
- (8.807963, -1.0),
- (8.815964, -1.0),
- (8.823964, -1.0),
- (8.8319645, -1.0),
- (8.839965, -1.0),
- (8.847965, -1.0),
- (8.855966, -1.0),
- (8.863966, -1.0),
- (8.871966, -1.0),
- (8.879967, -1.0),
- (8.887967, -1.0),
- (8.8959675, -1.0),
- (8.903968, -1.0),
- (8.911968, -1.0),
- (8.919969, -1.0),
- (8.927969, -1.0),
- (8.935969, -1.0),
- (8.94397, -1.0),
- (8.95197, -1.0),
- (8.95997, -1.0),
- (8.967971, -1.0),
- (8.975971, -1.0),
- (8.983972, -1.0),
- (8.991972, -1.0),
- (8.999972, -1.0),
- (9.007973, -1.0),
- (9.015973, -1.0),
- (9.023973, -1.0),
- (9.031974, -1.0),
- (9.039974, -1.0),
- (9.047975, -1.0),
- (9.055975, -1.0),
- (9.063975, -1.0),
- (9.071976, -1.0),
- (9.079976, -1.0),
- (9.087976, -1.0),
- (9.095977, -1.0),
- (9.103977, -1.0),
- (9.111978, -1.0),
- (9.119978, -1.0),
- (9.127978, -1.0),
- (9.135979, -1.0),
- (9.143979, -1.0),
- (9.151979, -1.0),
- (9.15998, -1.0),
- (9.16798, -1.0),
- (9.175981, -1.0),
- (9.183981, -1.0),
- (9.191981, -1.0),
- (9.199982, -1.0),
- (9.207982, -1.0),
- (9.215982, -1.0),
- (9.223983, -1.0),
- (9.231983, -1.0),
- (9.239984, -1.0),
- (9.247984, -1.0),
- (9.255984, -1.0),
- (9.263985, -1.0),
- (9.271985, -1.0),
- (9.279985, -1.0),
- (9.287986, -1.0),
- (9.295986, -1.0),
- (9.303987, -1.0),
- (9.311987, -1.0),
- (9.319987, -1.0),
- (9.327988, -1.0),
- (9.335988, -1.0),
- (9.343988, -1.0),
- (9.351989, -1.0),
- (9.359989, -1.0),
- (9.36799, -1.0),
- (9.37599, -1.0),
- (9.38399, -1.0),
- (9.391991, -1.0),
- (9.399991, -1.0),
- (9.407991, -1.0),
- (9.415992, -1.0),
- (9.423992, -1.0),
- (9.431993, -1.0),
- (9.439993, -1.0),
- (9.447993, -1.0),
- (9.455994, -1.0),
- (9.463994, -1.0),
- (9.471994, -1.0),
- (9.479995, -1.0),
- (9.487995, -1.0),
- (9.4959955, -1.0),
- (9.503996, -1.0),
- (9.511996, -1.0),
- (9.519997, -1.0),
- (9.527997, -1.0),
- (9.535997, -1.0),
- (9.543998, -1.0),
- (9.551998, -1.0),
- (9.5599985, -1.0),
- (9.567999, -1.0),
- (9.575999, -1.0),
- (9.584, -1.0),
- (9.592, -1.0),
- (9.6, -1.0),
- (9.608001, -1.0),
- (9.616001, -1.0),
- (9.6240015, -1.0),
- (9.632002, -1.0),
- (9.640002, -1.0),
- (9.648003, -1.0),
- (9.656003, -1.0),
- (9.664003, -1.0),
- (9.672004, -1.0),
- (9.680004, -1.0),
- (9.6880045, -1.0),
- (9.696005, -1.0),
- (9.704005, -1.0),
- (9.712006, -1.0),
- (9.720006, -1.0),
- (9.728006, -1.0),
- (9.736007, -1.0),
- (9.744007, -1.0),
- (9.7520075, -1.0),
- (9.760008, -1.0),
- (9.768008, -1.0),
- (9.776009, -1.0),
- (9.784009, -1.0),
- (9.792009, -1.0),
- (9.80001, -1.0),
- (9.80801, -1.0),
- (9.81601, -1.0),
- (9.824011, -1.0),
- (9.832011, -1.0),
- (9.840012, -1.0),
- (9.848012, -1.0),
- (9.856012, -1.0),
- (9.864013, -1.0),
- (9.872013, -1.0),
- (9.880013, -1.0),
- (9.888014, -1.0),
- (9.896014, -1.0),
- (9.904015, -1.0),
- (9.912015, -1.0),
- (9.920015, -1.0),
- (9.928016, -1.0),
- (9.936016, -1.0),
- (9.944016, -1.0),
- (9.952017, -1.0),
- (9.960017, -1.0),
- (9.968018, -1.0),
- (9.976018, -1.0),
- (9.984018, -1.0),
- (9.992019, -1.0),
- (10.000019, -1.0),
- (10.008019, -1.0),
- (10.01602, -1.0),
- (10.02402, -1.0),
- (10.032021, -1.0),
- (10.040021, -1.0),
- (10.048021, -1.0),
- (10.056022, -1.0),
- (10.064022, -1.0),
- (10.072022, -1.0),
- (10.080023, -1.0),
- (10.088023, -1.0),
- (10.096024, -1.0),
- (10.104024, -1.0),
- (10.112024, -1.0),
- (10.120025, -1.0),
- (10.128025, -1.0),
- (10.136025, -1.0),
- (10.144026, -1.0),
- (10.152026, -1.0),
- (10.160027, -1.0),
- (10.168027, -1.0),
- (10.176027, -1.0),
- (10.184028, -1.0),
- (10.192028, -1.0),
- (10.200028, -1.0),
- (10.208029, -1.0),
- (10.216029, -1.0),
- (10.22403, -1.0),
- (10.23203, -1.0),
- (10.24003, -1.0),
- (10.248031, -1.0),
- (10.256031, -1.0),
- (10.264031, -1.0),
- (10.272032, -1.0),
- (10.280032, -1.0),
- (10.288033, -1.0),
- (10.296033, -1.0),
- (10.304033, -1.0),
- (10.312034, -1.0),
- (10.320034, -1.0),
- (10.328034, -1.0),
- (10.336035, -1.0),
- (10.344035, -1.0),
- (10.3520355, -1.0),
- (10.360036, -1.0),
- (10.368036, -1.0),
- (10.376037, -1.0),
- (10.384037, -1.0),
- (10.392037, -1.0),
- (10.400038, -1.0),
- (10.408038, -1.0),
- (10.4160385, -1.0),
- (10.424039, -1.0),
- (10.432039, -1.0),
- (10.44004, -1.0),
- (10.44804, -1.0),
- (10.45604, -1.0),
- (10.464041, -1.0),
- (10.472041, -1.0),
- (10.4800415, -1.0),
- (10.488042, -1.0),
- (10.496042, -1.0),
- (10.504043, -1.0),
- (10.512043, -1.0),
- (10.520043, -1.0),
- (10.528044, -1.0),
- (10.536044, -1.0),
- (10.5440445, -1.0),
- (10.552045, -1.0),
- (10.560045, -1.0),
- (10.568046, -1.0),
- (10.576046, -1.0),
- (10.584046, -1.0),
- (10.592047, -1.0),
- (10.600047, -1.0),
- (10.6080475, -1.0),
- (10.616048, -1.0),
- (10.624048, -1.0),
- (10.632049, -1.0),
- (10.640049, -1.0),
- (10.648049, -1.0),
- (10.65605, -1.0),
- (10.66405, -1.0),
- (10.67205, -1.0),
- (10.680051, -1.0),
- (10.688051, -1.0),
- (10.696052, -1.0),
- (10.704052, -1.0),
- (10.712052, -1.0),
- (10.720053, -1.0),
- (10.728053, -1.0),
- (10.736053, -1.0),
- (10.744054, -1.0),
- (10.752054, -1.0),
- (10.760055, -1.0),
- (10.768055, -1.0),
- (10.776055, -1.0),
- (10.784056, -1.0),
- (10.792056, -1.0),
- (10.800056, -1.0),
- (10.808057, -1.0),
- (10.816057, -1.0),
- (10.824058, -1.0),
- (10.832058, -1.0),
- (10.840058, -1.0),
- (10.848059, -1.0),
- (10.856059, -1.0),
- (10.864059, -1.0),
- (10.87206, -1.0),
- (10.88006, -1.0),
- (10.888061, -1.0),
- (10.896061, -1.0),
- (10.904061, -1.0),
- (10.912062, -1.0),
- (10.920062, -1.0),
- (10.928062, -1.0),
- (10.936063, -1.0),
- (10.944063, -1.0),
- (10.952064, -1.0),
- (10.960064, -1.0),
- (10.968064, -1.0),
- (10.976065, -1.0),
- (10.984065, -1.0),
- (10.992065, -1.0),
- (11.000066, -0.9983549),
- (11.008066, -0.79834557),
- (11.016067, -0.5983362),
- (11.024067, -0.39832687),
- (11.032067, -0.19831753),
- (11.040068, 1.6918182e-3),
- (11.048068, 0.20170116),
- (11.056068, 0.4017105),
- (11.064069, 0.60171986),
- (11.072069, 0.8017292),
- (11.08007, 1.0017385),
- (11.08807, 1.2017479),
- (11.09607, 1.4017572),
- (11.104071, 1.6017666),
- (11.112071, 1.8017759),
- (11.120071, 2.0017853),
- (11.128072, 2.2017946),
- (11.136072, 2.401804),
- (11.144073, 2.6018133),
- (11.152073, 2.8018227),
- (11.160073, 3.001832),
- (11.168074, 3.2018414),
- (11.176074, 3.4018507),
- (11.184074, 3.60186),
- (11.192075, 3.8018694),
- (11.200075, 4.000189),
- (11.208076, 4.020098),
- (11.216076, 4.039489),
- (11.224076, 4.0581737),
- (11.232077, 4.0759754),
- (11.240077, 4.0927286),
- (11.248077, 4.1082807),
- (11.256078, 4.1224947),
- (11.264078, 4.1352477),
- (11.2720785, 4.146435),
- (11.280079, 4.155968),
- (11.288079, 4.163778),
- (11.29608, 4.169812),
- (11.30408, 4.1740384),
- (11.31208, 4.176443),
- (11.320081, 4.177031),
- (11.328081, 4.1758246),
- (11.3360815, 4.1728644),
- (11.344082, 4.1682086),
- (11.352082, 4.161931),
- (11.360083, 4.1541204),
- (11.368083, 4.14488),
- (11.376083, 4.1343255),
- (11.384084, 4.1225843),
- (11.392084, 4.1097937),
- (11.4000845, 4.096099),
- (11.408085, 4.0816526),
- (11.416085, 4.0666127),
- (11.424086, 4.05114),
- (11.432086, 4.035397),
- (11.440086, 4.019547),
- (11.448087, 4.0037518),
- (11.456087, 3.9881692),
- (11.4640875, 3.9729538),
- (11.472088, 3.958252),
- (11.480088, 3.9442048),
- (11.488089, 3.930943),
- (11.496089, 3.9185877),
- (11.504089, 3.9072495),
- (11.51209, 3.8970265),
- (11.52009, 3.8880038),
- (11.5280905, 3.8802538),
- (11.536091, 3.8738337),
- (11.544091, 3.8687878),
- (11.552092, 3.8651443),
- (11.560092, 3.8629189),
- (11.568092, 3.8621106),
- (11.576093, 3.8627052),
- (11.584093, 3.8646746),
- (11.592093, 3.8679771),
- (11.600094, 3.8725586),
- (11.608094, 3.8783517),
- (11.616095, 3.8852797),
- (11.624095, 3.8932538),
- (11.632095, 3.9021783),
- (11.640096, 3.9119468),
- (11.648096, 3.9224482),
- (11.656096, 3.9335647),
- (11.664097, 3.9451742),
- (11.672097, 3.9571528),
- (11.680098, 3.9693727),
- (11.688098, 3.981708),
- (11.696098, 3.9940314),
- (11.704099, 4.0062194),
- (11.712099, 4.0181518),
- (11.720099, 4.0297112),
- (11.7281, 4.0407877),
- (11.7361, 4.051277),
- (11.744101, 4.0610833),
- (11.752101, 4.070118),
- (11.760101, 4.078302),
- (11.768102, 4.085567),
- (11.776102, 4.0918536),
- (11.784102, 4.0971146),
- (11.792103, 4.101313),
- (11.800103, 4.1044235),
- (11.808104, 4.1064315),
- (11.816104, 4.1073346),
- (11.824104, 4.1071415),
- (11.832105, 4.105871),
- (11.840105, 4.1035533),
- (11.848105, 4.100229),
- (11.856106, 4.0959463),
- (11.864106, 4.090764),
- (11.872107, 4.0847497),
- (11.880107, 4.0779757),
- (11.888107, 4.0705237),
- (11.896108, 4.0624785),
- (11.904108, 4.053931),
- (11.912108, 4.044976),
- (11.920109, 4.0357094),
- (11.928109, 4.02623),
- (11.93611, 4.0166364),
- (11.94411, 4.0070276),
- (11.95211, 3.9975004),
- (11.960111, 3.9881496),
- (11.968111, 3.9790664),
- (11.976111, 3.9703388),
- (11.984112, 3.9620485),
- (11.992112, 3.9542727),
- (12.000113, 3.9470816),
- (12.008113, 3.9405375),
- (12.016113, 3.9346972),
- (12.024114, 3.9296079),
- (12.032114, 3.9253092),
- (12.040114, 3.9218316),
- (12.048115, 3.919197),
- (12.056115, 3.9174194),
- (12.064116, 3.9165025),
- (12.072116, 3.916442),
- (12.080116, 3.9172244),
- (12.088117, 3.9188294),
- (12.096117, 3.921227),
- (12.104117, 3.9243808),
- (12.112118, 3.928247),
- (12.120118, 3.932775),
- (12.1281185, 3.9379091),
- (12.136119, 3.9435878),
- (12.144119, 3.9497452),
- (12.15212, 3.9563112),
- (12.16012, 3.9632134),
- (12.16812, 3.9703774),
- (12.176121, 3.977726),
- (12.184121, 3.9851823),
- (12.1921215, 3.99267),
- (12.200122, 4.0001125),
- (12.208122, 4.007436),
- (12.216123, 4.0145683),
- (12.224123, 4.02144),
- (12.232123, 4.027987),
- (12.240124, 4.0341477),
- (12.248124, 4.0398664),
- (12.2561245, 4.045092),
- (12.264125, 4.049781),
- (12.272125, 4.0538926),
- (12.280126, 4.057396),
- (12.288126, 4.0602655),
- (12.296126, 4.0624814),
- (12.304127, 4.064032),
- (12.312127, 4.0649133),
- (12.3201275, 4.0651255),
- (12.328128, 4.0646777),
- (12.336128, 4.0635853),
- (12.344129, 4.0618687),
- (12.352129, 4.059556),
- (12.360129, 4.0566792),
- (12.36813, 4.053277),
- (12.37613, 4.0493917),
- (12.3841305, 4.0450697),
- (12.392131, 4.0403624),
- (12.400131, 4.0353227),
- (12.408132, 4.0300064),
- (12.416132, 4.0244727),
- (12.424132, 4.0187798),
- (12.432133, 4.0129876),
- (12.440133, 4.007157),
- (12.448133, 4.0013466),
- (12.456134, 3.9956145),
- (12.464134, 3.990018),
- (12.472135, 3.984611),
- (12.480135, 3.9794445),
- (12.488135, 3.974568),
- (12.496136, 3.9700246),
- (12.504136, 3.9658556),
- (12.512136, 3.9620976),
- (12.520137, 3.9587808),
- (12.528137, 3.9559326),
- (12.536138, 3.9535737),
- (12.544138, 3.9517202),
- (12.552138, 3.9503832),
- (12.560139, 3.9495673),
- (12.568139, 3.949273),
- (12.576139, 3.9494948),
- (12.58414, 3.9502225),
- (12.59214, 3.9514399),
- (12.600141, 3.9531279),
- (12.608141, 3.9552617),
- (12.616141, 3.9578128),
- (12.624142, 3.9607487),
- (12.632142, 3.9640336),
- (12.640142, 3.967629),
- (12.648143, 3.9714937),
- (12.656143, 3.975584),
- (12.664144, 3.979856),
- (12.672144, 3.9842634),
- (12.680144, 3.9887595),
- (12.688145, 3.993297),
- (12.696145, 3.9978309),
- (12.704145, 4.002314),
- (12.712146, 4.006703),
- (12.720146, 4.0109544),
- (12.728147, 4.015028),
- (12.736147, 4.0188856),
- (12.744147, 4.0224915),
- (12.752148, 4.0258136),
- (12.760148, 4.0288224),
- (12.768148, 4.0314927),
- (12.776149, 4.0338035),
- (12.784149, 4.0357366),
- (12.79215, 4.0372787),
- (12.80015, 4.0384207),
- (12.80815, 4.039157),
- (12.816151, 4.039487),
- (12.824151, 4.0394135),
- (12.832151, 4.038944),
- (12.840152, 4.0380893),
- (12.848152, 4.036864),
- (12.856153, 4.0352864),
- (12.864153, 4.033378),
- (12.872153, 4.0311637),
- (12.880154, 4.0286703),
- (12.888154, 4.0259275),
- (12.896154, 4.022967),
- (12.904155, 4.019821),
- (12.912155, 4.016526),
- (12.920156, 4.0131164),
- (12.928156, 4.009629),
- (12.936156, 4.0060997),
- (12.944157, 4.002565),
- (12.952157, 3.9990602),
- (12.960157, 3.9956207),
- (12.968158, 3.99228),
- (12.976158, 3.98907),
- (12.9841585, 3.986021),
- (12.992159, 3.983162),
- (13.000159, 3.9805174),
- (13.00816, 3.9781117),
- (13.01616, 3.9759645),
- (13.02416, 3.974094),
- (13.032161, 3.9725142),
- (13.040161, 3.9712367),
- (13.0481615, 3.9702697),
- (13.056162, 3.9696174),
- (13.064162, 3.9692817),
- (13.072163, 3.9692612),
- (13.080163, 3.969551),
- (13.088163, 3.9701433),
- (13.096164, 3.971027),
- (13.104164, 3.972189),
- (13.1121645, 3.9736128),
- (13.120165, 3.9752798),
- (13.128165, 3.97717),
- (13.136166, 3.97926),
- (13.144166, 3.981526),
- (13.152166, 3.9839425),
- (13.160167, 3.9864821),
- (13.168167, 3.989118),
- (13.1761675, 3.9918218),
- (13.184168, 3.994565),
- (13.192168, 3.9973197),
- (13.200169, 4.000057),
- (13.208169, 4.002751),
- (13.216169, 4.0053744),
- (13.22417, 4.0079017),
- (13.23217, 4.0103097),
- (13.2401705, 4.012575),
- (13.248171, 4.0146775),
- (13.256171, 4.016599),
- (13.264172, 4.018323),
- (13.272172, 4.019834),
- (13.280172, 4.0211215),
- (13.288173, 4.022176),
- (13.296173, 4.0229897),
- (13.304173, 4.0235586),
- (13.312174, 4.0238814),
- (13.320174, 4.023958),
- (13.328175, 4.023792),
- (13.336175, 4.023389),
- (13.344175, 4.022756),
- (13.352176, 4.021904),
- (13.360176, 4.0208445),
- (13.368176, 4.019592),
- (13.376177, 4.0181613),
- (13.384177, 4.0165706),
- (13.392178, 4.0148377),
- (13.400178, 4.0129833),
- (13.408178, 4.0110273),
- (13.416179, 4.008991),
- (13.424179, 4.0068965),
- (13.432179, 4.0047655),
- (13.44018, 4.00262),
- (13.44818, 4.000483),
- (13.456181, 3.9983745),
- (13.464181, 3.996316),
- (13.472181, 3.994327),
- (13.480182, 3.9924273),
- (13.488182, 3.990634),
- (13.496182, 3.9889631),
- (13.504183, 3.9874306),
- (13.512183, 3.9860487),
- (13.520184, 3.98483),
- (13.528184, 3.9837828),
- (13.536184, 3.9829164),
- (13.544185, 3.9822354),
- (13.552185, 3.9817448),
- (13.560185, 3.9814458),
- (13.568186, 3.9813385),
- (13.576186, 3.981421),
- (13.584187, 3.98169),
- (13.592187, 3.982139),
- (13.600187, 3.982761),
- (13.608188, 3.9835467),
- (13.616188, 3.984486),
- (13.624188, 3.985567),
- (13.632189, 3.9867759),
- (13.640189, 3.9880996),
- (13.64819, 3.9895215),
- (13.65619, 3.9910269),
- (13.66419, 3.992599),
- (13.672191, 3.9942203),
- (13.680191, 3.9958744),
- (13.688191, 3.9975438),
- (13.696192, 3.9992118),
- (13.704192, 4.0008607),
- (13.712193, 4.0024753),
- (13.720193, 4.004039),
- (13.728193, 4.005537),
- (13.736194, 4.0069556),
- (13.744194, 4.0082817),
- (13.752194, 4.009503),
- (13.760195, 4.010609),
- (13.768195, 4.011591),
- (13.776196, 4.01244),
- (13.784196, 4.0131507),
- (13.792196, 4.013717),
- (13.800197, 4.0141363),
- (13.808197, 4.014406),
- (13.816197, 4.014527),
- (13.824198, 4.0144987),
- (13.832198, 4.014325),
- (13.8401985, 4.01401),
- (13.848199, 4.0135584),
- (13.856199, 4.0129776),
- (13.8642, 4.0122747),
- (13.8722, 4.0114594),
- (13.8802, 4.0105414),
- (13.888201, 4.009532),
- (13.896201, 4.0084424),
- (13.9042015, 4.007285),
- (13.912202, 4.0060725),
- (13.920202, 4.004818),
- (13.928203, 4.003535),
- (13.936203, 4.0022364),
- (13.944203, 4.000936),
- (13.952204, 3.9996467),
- (13.960204, 3.9983816),
- (13.9682045, 3.9971528),
- (13.976205, 3.9959722),
- (13.984205, 3.994851),
- (13.992206, 3.9937997),
- (14.000206, 3.9928274),
- (14.008206, 3.991943),
- (14.016207, 3.9911537),
- (14.024207, 3.990466),
- (14.0322075, 3.9898853),
- (14.040208, 3.9894161),
- (14.048208, 3.9890609),
- (14.056209, 3.988822),
- (14.064209, 3.988699),
- (14.072209, 3.9886923),
- (14.08021, 3.9887996),
- (14.08821, 3.989018),
- (14.0962105, 3.9893436),
- (14.104211, 3.9897718),
- (14.112211, 3.990296),
- (14.120212, 3.9909096),
- (14.128212, 3.9916053),
- (14.136212, 3.992375),
- (14.144213, 3.993209),
- (14.152213, 3.9940982),
- (14.160213, 3.9950328),
- (14.168214, 3.9960027),
- (14.176214, 3.9969974),
- (14.184215, 3.9980063),
- (14.192215, 3.9990196),
- (14.200215, 3.996408),
- (14.208216, 3.863068),
- (14.216216, 3.7297287),
- (14.224216, 3.5963893),
- (14.232217, 3.4630494),
- (14.240217, 3.32971),
- (14.248218, 3.1963706),
- (14.256218, 3.0630307),
- (14.264218, 2.9296913),
- (14.272219, 2.796352),
- (14.280219, 2.6630123),
- (14.288219, 2.5296726),
- (14.29622, 2.3963332),
- (14.30422, 2.2629936),
- (14.312221, 2.129654),
- (14.320221, 1.9963145),
- (14.328221, 1.8629749),
- (14.336222, 1.7296352),
- (14.344222, 1.5962958),
- (14.352222, 1.4629562),
- (14.360223, 1.3296165),
- (14.368223, 1.1962771),
- (14.376224, 1.0629375),
- (14.384224, 0.92959785),
- (14.392224, 0.79625845),
- (14.400225, 0.6629188),
- (14.408225, 0.5295794),
- (14.416225, 0.39623976),
- (14.424226, 0.2629001),
- (14.432226, 0.12956071),
- (14.440227, -3.7789345e-3),
- (14.448227, -0.13711834),
- (14.456227, -0.27045822),
- (14.464228, -0.40379763),
- (14.472228, -0.53713703),
- (14.480228, -0.6704769),
- (14.488229, -0.8038163),
- (14.496229, -0.9371557),
- (14.50423, -1.0138799),
- (14.51223, -1.0396309),
- (14.52023, -1.0644922),
- (14.528231, -1.0882031),
- (14.536231, -1.1105201),
- (14.544231, -1.1312197),
- (14.552232, -1.1501),
- (14.560232, -1.1669829),
- (14.568233, -1.1817157),
- (14.576233, -1.1941723),
- (14.584233, -1.2042537),
- (14.592234, -1.2118895),
- (14.600234, -1.2170376),
- (14.608234, -1.219684),
- (14.616235, -1.219843),
- (14.624235, -1.2175564),
- (14.632236, -1.212892),
- (14.640236, -1.2059433),
- (14.648236, -1.1968274),
- (14.656237, -1.1856833),
- (14.664237, -1.1726702),
- (14.672237, -1.1579654),
- (14.680238, -1.1417618),
- (14.688238, -1.1242657),
- (14.6962385, -1.1056938),
- (14.704239, -1.0862715),
- (14.712239, -1.0662293),
- (14.72024, -1.045801),
- (14.72824, -1.02522),
- (14.73624, -1.004718),
- (14.744241, -0.98452103),
- (14.752241, -0.9648486),
- (14.7602415, -0.9459099),
- (14.768242, -0.92790276),
- (14.776242, -0.9110109),
- (14.784243, -0.89540267),
- (14.792243, -0.88122904),
- (14.800243, -0.86862254),
- (14.808244, -0.85769594),
- (14.816244, -0.8485412),
- (14.8242445, -0.8412293),
- (14.832245, -0.83580923),
- (14.840245, -0.8323083),
- (14.848246, -0.83073187),
- (14.856246, -0.8310639),
- (14.864246, -0.83326745),
- (14.872247, -0.83728534),
- (14.880247, -0.84304124),
- (14.8882475, -0.85044086),
- (14.896248, -0.8593734),
- (14.904248, -0.8697127),
- (14.912249, -0.88131946),
- (14.920249, -0.8940425),
- (14.928249, -0.90772104),
- (14.93625, -0.9221863),
- (14.94425, -0.93726397),
- (14.9522505, -0.9527756),
- (14.960251, -0.9685415),
- (14.968251, -0.98438185),
- (14.976252, -1.0001194),
- (14.984252, -1.015581),
- (14.992252, -1.0305998),
- (15.000253, -1.0450164),
- (15.008253, -1.0586814),
- (15.016253, -1.0714558),
- (15.024254, -1.0832133),
- (15.032254, -1.0938411),
- (15.040255, -1.1032405),
- (15.048255, -1.1113287),
- (15.056255, -1.1180388),
- (15.064256, -1.12332),
- (15.072256, -1.1271389),
- (15.080256, -1.1294781),
- (15.088257, -1.1303378),
- (15.096257, -1.1297342),
- (15.104258, -1.1276994),
- (15.112258, -1.1242812),
- (15.120258, -1.1195414),
- (15.128259, -1.113556),
- (15.136259, -1.1064131),
- (15.144259, -1.0982125),
- (15.15226, -1.0890635),
- (15.16026, -1.0790844),
- (15.168261, -1.0684005),
- (15.176261, -1.0571431),
- (15.184261, -1.0454471),
- (15.192262, -1.03345),
- (15.200262, -1.0212905),
- (15.208262, -1.0091068),
- (15.216263, -0.99703425),
- (15.224263, -0.98520535),
- (15.232264, -0.97374713),
- (15.240264, -0.96278065),
- (15.248264, -0.9524191),
- (15.256265, -0.9427671),
- (15.264265, -0.93391937),
- (15.272265, -0.92596036),
- (15.280266, -0.918963),
- (15.288266, -0.9129882),
- (15.296267, -0.9080845),
- (15.304267, -0.9042878),
- (15.312267, -0.9016209),
- (15.320268, -0.9000938),
- (15.328268, -0.8997035),
- (15.336268, -0.9004345),
- (15.344269, -0.9022592),
- (15.352269, -0.90513813),
- (15.36027, -0.909021),
- (15.36827, -0.91384715),
- (15.37627, -0.9195464),
- (15.384271, -0.9260403),
- (15.392271, -0.93324274),
- (15.400271, -0.9410613),
- (15.408272, -0.94939846),
- (15.416272, -0.9581524),
- (15.424273, -0.96721876),
- (15.432273, -0.9764911),
- (15.440273, -0.9858629),
- (15.448274, -0.9952283),
- (15.456274, -1.0044833),
- (15.464274, -1.0135272),
- (15.472275, -1.0222628),
- (15.480275, -1.0305986),
- (15.488276, -1.0384489),
- (15.496276, -1.0457352),
- (15.504276, -1.052386),
- (15.512277, -1.0583386),
- (15.520277, -1.0635391),
- (15.528277, -1.067943),
- (15.536278, -1.0715148),
- (15.544278, -1.0742297),
- (15.5522785, -1.0760725),
- (15.560279, -1.0770376),
- (15.568279, -1.0771298),
- (15.57628, -1.0763634),
- (15.58428, -1.0747617),
- (15.59228, -1.0723573),
- (15.600281, -1.0691907),
- (15.608281, -1.0653105),
- (15.6162815, -1.0607723),
- (15.624282, -1.0556378),
- (15.632282, -1.0499748),
- (15.640283, -1.0438552),
- (15.648283, -1.037355),
- (15.656283, -1.0305531),
- (15.664284, -1.0235304),
- (15.672284, -1.0163687),
- (15.6802845, -1.0091501),
- (15.688285, -1.0019557),
- (15.696285, -0.9948652),
- (15.704286, -0.9879554),
- (15.712286, -0.98130006),
- (15.720286, -0.9749685),
- (15.728287, -0.9690257),
- (15.736287, -0.96353066),
- (15.7442875, -0.95853686),
- (15.752288, -0.9540909),
- (15.760288, -0.9502326),
- (15.768289, -0.94699466),
- (15.776289, -0.9444023),
- (15.784289, -0.94247293),
- (15.79229, -0.94121647),
- (15.80029, -0.9406352),
- (15.8082905, -0.9407237),
- (15.816291, -0.94146943),
- (15.824291, -0.9428525),
- (15.832292, -0.9448465),
- (15.840292, -0.9474186),
- (15.848292, -0.9505301),
- (15.856293, -0.954137),
- (15.864293, -0.9581907),
- (15.872293, -0.9626382),
- (15.880294, -0.9674233),
- (15.888294, -0.972487),
- (15.896295, -0.97776794),
- (15.904295, -0.98320395),
- (15.912295, -0.9887317),
- (15.920296, -0.9942882),
- (15.928296, -0.99981123),
- (15.936296, -1.00524),
- (15.944297, -1.0105158),
- (15.952297, -1.0155828),
- (15.960298, -1.0203881),
- (15.968298, -1.0248832),
- (15.976298, -1.0290232),
- (15.984299, -1.0327685),
- (15.992299, -1.0360843),
- (16.0003, -1.0389413),
- (16.008299, -1.0413154),
- (16.016298, -1.0431892),
- (16.024298, -1.0445504),
- (16.032297, -1.045393),
- (16.040297, -1.0457165),
- (16.048296, -1.0455265),
- (16.056295, -1.0448341),
- (16.064295, -1.0436556),
- (16.072294, -1.0420127),
- (16.080294, -1.0399318),
- (16.088293, -1.0374434),
- (16.096292, -1.0345825),
- (16.104292, -1.0313873),
- (16.112291, -1.0278991),
- (16.12029, -1.0241619),
- (16.12829, -1.0202215),
- (16.13629, -1.016125),
- (16.144289, -1.0119209),
- (16.152288, -1.0076578),
- (16.160288, -1.0033838),
- (16.168287, -0.99914694),
- (16.176287, -0.9949933),
- (16.184286, -0.9909679),
- (16.192286, -0.987113),
- (16.200285, -0.9834686),
- (16.208284, -0.9800713),
- (16.216284, -0.97695476),
- (16.224283, -0.9741486),
- (16.232283, -0.97167856),
- (16.240282, -0.9695663),
- (16.248281, -0.9678289),
- (16.25628, -0.9664793),
- (16.26428, -0.9655256),
- (16.27228, -0.9649716),
- (16.28028, -0.9648164),
- (16.288279, -0.96505475),
- (16.296278, -0.9656772),
- (16.304277, -0.9666701),
- (16.312277, -0.96801597),
- (16.320276, -0.96969366),
- (16.328276, -0.97167885),
- (16.336275, -0.97394395),
- (16.344275, -0.9764591),
- (16.352274, -0.97919184),
- (16.360273, -0.9821081),
- (16.368273, -0.9851723),
- (16.376272, -0.98834777),
- (16.384272, -0.99159724),
- (16.392271, -0.9948834),
- (16.40027, -0.99816906),
- (16.40827, -1.0014178),
- (16.41627, -1.0045941),
- (16.424269, -1.0076638),
- (16.432268, -1.010595),
- (16.440268, -1.0133573),
- (16.448267, -1.015923),
- (16.456266, -1.0182672),
- (16.464266, -1.0203674),
- (16.472265, -1.0222046),
- (16.480265, -1.0237632),
- (16.488264, -1.0250306),
- (16.496264, -1.0259978),
- (16.504263, -1.0266593),
- (16.512262, -1.0270131),
- (16.520262, -1.0270605),
- (16.528261, -1.0268066),
- (16.53626, -1.0262592),
- (16.54426, -1.0254297),
- (16.55226, -1.0243322),
- (16.560259, -1.0229834),
- (16.568258, -1.0214028),
- (16.576258, -1.0196121),
- (16.584257, -1.0176346),
- (16.592257, -1.0154958),
- (16.600256, -1.0132222),
- (16.608255, -1.0108413),
- (16.616255, -1.0083815),
- (16.624254, -1.0058714),
- (16.632254, -1.00334),
- (16.640253, -1.0008156),
- (16.648252, -0.9983261),
- (16.656252, -0.9958988),
- (16.664251, -0.99355924),
- (16.67225, -0.9913321),
- (16.68025, -0.98924017),
- (16.68825, -0.9873042),
- (16.696249, -0.9855431),
- (16.704248, -0.9839733),
- (16.712248, -0.9826089),
- (16.720247, -0.9814616),
- (16.728247, -0.9805402),
- (16.736246, -0.9798511),
- (16.744246, -0.97939783),
- (16.752245, -0.9791814),
- (16.760244, -0.9792),
- (16.768244, -0.9794494),
- (16.776243, -0.9799227),
- (16.784243, -0.98061085),
- (16.792242, -0.98150235),
- (16.800241, -0.9825838),
- (16.80824, -0.9838399),
- (16.81624, -0.9852537),
- (16.82424, -0.9868066),
- (16.83224, -0.9884789),
- (16.840239, -0.9902501),
- (16.848238, -0.99209875),
- (16.856237, -0.9940029),
- (16.864237, -0.99594045),
- (16.872236, -0.9978893),
- (16.880236, -0.99982756),
- (16.888235, -1.001734),
- (16.896235, -1.0035878),
- (16.904234, -1.0053695),
- (16.912233, -1.0070605),
- (16.920233, -1.0086435),
- (16.928232, -1.0101029),
- (16.936232, -1.0114245),
- (16.944231, -1.0125962),
- (16.95223, -1.0136076),
- (16.96023, -1.0144501),
- (16.96823, -1.0151173),
- (16.976229, -1.015605),
- (16.984228, -1.0159107),
- (16.992228, -1.0160345),
- (17.000227, -1.0159779),
- (17.008226, -1.0157448),
- (17.016226, -1.0153408),
- (17.024225, -1.0147735),
- (17.032225, -1.0140519),
- (17.040224, -1.0131868),
- (17.048223, -1.0121902),
- (17.056223, -1.0110757),
- (17.064222, -1.0098575),
- (17.072222, -1.0085511),
- (17.080221, -1.0071725),
- (17.08822, -1.0057381),
- (17.09622, -1.0042652),
- (17.10422, -1.0027704),
- (17.112219, -1.0012711),
- (17.120218, -0.99978375),
- (17.128218, -0.9983247),
- (17.136217, -0.99690974),
- (17.144217, -0.99555385),
- (17.152216, -0.994271),
- (17.160215, -0.99307406),
- (17.168215, -0.99197507),
- (17.176214, -0.9909844),
- (17.184214, -0.9901111),
- (17.192213, -0.98936296),
- (17.200212, -0.988746),
- (17.208212, -0.98826486),
- (17.216211, -0.9879225),
- (17.22421, -0.98772025),
- (17.23221, -0.98765796),
- (17.24021, -0.9877339),
- (17.248209, -0.9879447),
- (17.256208, -0.9882859),
- (17.264208, -0.9887512),
- (17.272207, -0.98933333),
- (17.280207, -0.99002385),
- (17.288206, -0.99081314),
- (17.296206, -0.99169075),
- (17.304205, -0.9926453),
- (17.312204, -0.993665),
- (17.320204, -0.99473727),
- (17.328203, -0.99584925),
- (17.336203, -0.99698794),
- (17.344202, -0.9981403),
- (17.352201, -0.99929315),
- (17.3602, -1.0004338),
- (17.3682, -1.0015496),
- (17.3762, -1.0026289),
- (17.3842, -1.0036601),
- (17.392199, -1.0046326),
- (17.400198, -1.0055367),
- (17.408197, -1.0063635),
- (17.416197, -1.0071052),
- (17.424196, -1.007755),
- (17.432196, -1.0083075),
- (17.440195, -1.0087578),
- (17.448195, -1.0091031),
- (17.456194, -1.0093411),
- (17.464193, -1.0094713),
- (17.472193, -1.009494),
- (17.480192, -1.0094107),
- (17.488192, -1.0092244),
- (17.496191, -1.0089389),
- (17.50419, -1.0),
- (17.51219, -1.0),
- (17.52019, -1.0),
- (17.528189, -1.0),
- (17.536188, -1.0),
- (17.544188, -1.0),
- (17.552187, -1.0),
- (17.560186, -1.0),
- (17.568186, -1.0),
- (17.576185, -1.0),
- (17.584185, -1.0),
- (17.592184, -1.0),
- (17.600183, -1.0),
- (17.608183, -1.0),
- (17.616182, -1.0),
- (17.624182, -1.0),
- (17.632181, -1.0),
- (17.64018, -1.0),
- (17.64818, -1.0),
- (17.65618, -1.0),
- (17.664179, -1.0),
- (17.672178, -1.0),
- (17.680178, -1.0),
- (17.688177, -1.0),
- (17.696177, -1.0),
- (17.704176, -1.0),
- (17.712175, -1.0),
- (17.720175, -1.0),
- (17.728174, -1.0),
- (17.736174, -1.0),
- (17.744173, -1.0),
- (17.752172, -1.0),
- (17.760172, -1.0),
- (17.768171, -1.0),
- (17.77617, -1.0),
- (17.78417, -1.0),
- (17.79217, -1.0),
- (17.800169, -1.0),
- (17.808168, -1.0),
- (17.816168, -1.0),
- (17.824167, -1.0),
- (17.832167, -1.0),
- (17.840166, -1.0),
- (17.848166, -1.0),
- (17.856165, -1.0),
- (17.864164, -1.0),
- (17.872164, -1.0),
- (17.880163, -1.0),
- (17.888163, -1.0),
- (17.896162, -1.0),
- (17.904161, -1.0),
- (17.91216, -1.0),
- (17.92016, -1.0),
- (17.92816, -1.0),
- (17.93616, -1.0),
- (17.944159, -1.0),
- (17.952158, -1.0),
- (17.960157, -1.0),
- (17.968157, -1.0),
- (17.976156, -1.0),
- (17.984156, -1.0),
- (17.992155, -1.0),
- (18.000154, -1.0),
- (18.008154, -1.0),
- (18.016153, -1.0),
- (18.024153, -1.0),
- (18.032152, -1.0),
- (18.040152, -1.0),
- (18.048151, -1.0),
- (18.05615, -1.0),
- (18.06415, -1.0),
- (18.07215, -1.0),
- (18.080149, -1.0),
- (18.088148, -1.0),
- (18.096148, -1.0),
- (18.104147, -1.0),
- (18.112146, -1.0),
- (18.120146, -1.0),
- (18.128145, -1.0),
- (18.136145, -1.0),
- (18.144144, -1.0),
- (18.152143, -1.0),
- (18.160143, -1.0),
- (18.168142, -1.0),
- (18.176142, -1.0),
- (18.184141, -1.0),
- (18.19214, -1.0),
- (18.20014, -1.0),
- (18.20814, -1.0),
- (18.216139, -1.0),
- (18.224138, -1.0),
- (18.232138, -1.0),
- (18.240137, -1.0),
- (18.248137, -1.0),
- (18.256136, -1.0),
- (18.264135, -1.0),
- (18.272135, -1.0),
- (18.280134, -1.0),
- (18.288134, -1.0),
- (18.296133, -1.0),
- (18.304132, -1.0),
- (18.312132, -1.0),
- (18.320131, -1.0),
- (18.32813, -1.0),
- (18.33613, -1.0),
- (18.34413, -1.0),
- (18.352129, -1.0),
- (18.360128, -1.0),
- (18.368128, -1.0),
- (18.376127, -1.0),
- (18.384127, -1.0),
- (18.392126, -1.0),
- (18.400126, -1.0),
- (18.408125, -1.0),
- (18.416124, -1.0),
- (18.424124, -1.0),
- (18.432123, -1.0),
- (18.440123, -1.0),
- (18.448122, -1.0),
- (18.456121, -1.0),
- (18.46412, -1.0),
- (18.47212, -1.0),
- (18.48012, -1.0),
- (18.48812, -1.0),
- (18.496119, -1.0),
- (18.504118, -1.0),
- (18.512117, -1.0),
- (18.520117, -1.0),
- (18.528116, -1.0),
- (18.536116, -1.0),
- (18.544115, -1.0),
- (18.552114, -1.0),
- (18.560114, -1.0),
- (18.568113, -1.0),
- (18.576113, -1.0),
- (18.584112, -1.0),
- (18.592112, -1.0),
- (18.600111, -1.0),
- (18.60811, -1.0),
- (18.61611, -1.0),
- (18.62411, -1.0),
- (18.632109, -1.0),
- (18.640108, -1.0),
- (18.648108, -1.0),
- (18.656107, -1.0),
- (18.664106, -1.0),
- (18.672106, -1.0),
- (18.680105, -1.0),
- (18.688105, -1.0),
- (18.696104, -1.0),
- (18.704103, -1.0),
- (18.712103, -1.0),
- (18.720102, -1.0),
- (18.728102, -1.0),
- (18.736101, -1.0),
- (18.7441, -1.0),
- (18.7521, -1.0),
- (18.7601, -1.0),
- (18.768099, -1.0),
- (18.776098, -1.0),
- (18.784098, -1.0),
- (18.792097, -1.0),
- (18.800097, -1.0),
- (18.808096, -1.0),
- (18.816095, -1.0),
- (18.824095, -1.0),
- (18.832094, -1.0),
- (18.840094, -1.0),
- (18.848093, -1.0),
- (18.856092, -1.0),
- (18.864092, -1.0),
- (18.872091, -1.0),
- (18.88009, -1.0),
- (18.88809, -1.0),
- (18.89609, -1.0),
- (18.904089, -1.0),
- (18.912088, -1.0),
- (18.920088, -1.0),
- (18.928087, -1.0),
- (18.936087, -1.0),
- (18.944086, -1.0),
- (18.952085, -1.0),
- (18.960085, -1.0),
- (18.968084, -1.0),
- (18.976084, -1.0),
- (18.984083, -1.0),
- (18.992083, -1.0),
- (19.000082, -1.0),
- (19.008081, -1.0),
- (19.01608, -1.0),
- (19.02408, -1.0),
- (19.03208, -1.0),
- (19.04008, -1.0),
- (19.048079, -1.0),
- (19.056078, -1.0),
- (19.064077, -1.0),
- (19.072077, -1.0),
- (19.080076, -1.0),
- (19.088076, -1.0),
- (19.096075, -1.0),
- (19.104074, -1.0),
- (19.112074, -1.0),
- (19.120073, -1.0),
- (19.128073, -1.0),
- (19.136072, -1.0),
- (19.144072, -1.0),
- (19.152071, -1.0),
- (19.16007, -1.0),
- (19.16807, -1.0),
- (19.17607, -1.0),
- (19.184069, -1.0),
- (19.192068, -1.0),
- (19.200068, -1.0),
- (19.208067, -1.0),
- (19.216066, -1.0),
- (19.224066, -1.0),
- (19.232065, -1.0),
- (19.240065, -1.0),
- (19.248064, -1.0),
- (19.256063, -1.0),
- (19.264063, -1.0),
- (19.272062, -1.0),
- (19.280062, -1.0),
- (19.288061, -1.0),
- (19.29606, -1.0),
- (19.30406, -1.0),
- (19.31206, -1.0),
- (19.320059, -1.0),
- (19.328058, -1.0),
- (19.336058, -1.0),
- (19.344057, -1.0),
- (19.352057, -1.0),
- (19.360056, -1.0),
- (19.368055, -1.0),
- (19.376055, -1.0),
- (19.384054, -1.0),
- (19.392054, -1.0),
- (19.400053, -1.0),
- (19.408052, -1.0),
- (19.416052, -1.0),
- (19.424051, -1.0),
- (19.43205, -1.0),
- (19.44005, -1.0),
- (19.44805, -1.0),
- (19.456049, -1.0),
- (19.464048, -1.0),
- (19.472048, -1.0),
- (19.480047, -1.0),
- (19.488047, -1.0),
- (19.496046, -1.0),
- (19.504045, -1.0),
- (19.512045, -1.0),
- (19.520044, -1.0),
- (19.528044, -1.0),
- (19.536043, -1.0),
- (19.544043, -1.0),
- (19.552042, -1.0),
- (19.560041, -1.0),
- (19.56804, -1.0),
- (19.57604, -1.0),
- (19.58404, -1.0),
- (19.59204, -1.0),
- (19.600039, -1.0),
- (19.608038, -1.0),
- (19.616037, -1.0),
- (19.624037, -1.0),
- (19.632036, -1.0),
- (19.640036, -1.0),
- (19.648035, -1.0),
- (19.656034, -1.0),
- (19.664034, -1.0),
- (19.672033, -1.0),
- (19.680033, -1.0),
- (19.688032, -1.0),
- (19.696032, -1.0),
- (19.704031, -1.0),
- (19.71203, -1.0),
- (19.72003, -1.0),
- (19.72803, -1.0),
- (19.736029, -1.0),
- (19.744028, -1.0),
- (19.752028, -1.0),
- (19.760027, -1.0),
- (19.768026, -1.0),
- (19.776026, -1.0),
- (19.784025, -1.0),
- (19.792025, -1.0),
- (19.800024, -1.0),
- (19.808023, -1.0),
- (19.816023, -1.0),
- (19.824022, -1.0),
- (19.832022, -1.0),
- (19.840021, -1.0),
- (19.84802, -1.0),
- (19.85602, -1.0),
- (19.86402, -1.0),
- (19.872019, -1.0),
- (19.880018, -1.0),
- (19.888018, -1.0),
- (19.896017, -1.0),
- (19.904016, -1.0),
- (19.912016, -1.0),
- (19.920015, -1.0),
- (19.928015, -1.0),
- (19.936014, -1.0),
- (19.944014, -1.0),
- (19.952013, -1.0),
- (19.960012, -1.0),
- (19.968012, -1.0),
- (19.976011, -1.0),
- (19.98401, -1.0),
- (19.99201, -1.0)]
-
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Main.hs b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Main.hs
deleted file mode 100644
index 34b8dd8cd5..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Main.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-module Main where
-import Physical
-import Basic
-import TypesettingTricks
-import PlotExample
-import Expected
-sinExample:: SignalRep Time Voltage
-sinExample = sine (V 2.0) (Hz 10) 0.0
-sinPlot = plotExample "sine" sinExpected sinExample 0.0 1.0
-pieceExample = toSig Pulse_dc
- { start_delay=(Sec 1.0),
- rise_time=(Sec 0.2),
- pulse_width=(Sec 3.0),
- fall_time=(Sec 0.3),
- dc_offset=(V (- 1.0)),
- period=(Sec 10.0),
- amplitude=(V 5.0),
- over=Overshoot{ringing=(V 0.2),
- pulse_width=(Sec 3.0),
- oscillation=(Hz 2.0),
- damp_fac=1.0},
- under=Overshoot{ringing=(V (- 0.25)),
- pulse_width=(Sec 3.0),
- oscillation=(Hz 2.10),
- damp_fac=1.10} }
-piecePlot = plotExample "piece" pieceExpected pieceExample 0.0 20.0
-main = putStrLn (sinPlot ++ piecePlot)
-
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Makefile b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Physical.hs b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Physical.hs
deleted file mode 100644
index 91981e0ac5..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Physical.hs
+++ /dev/null
@@ -1,302 +0,0 @@
-module Physical where
-import TypesettingTricks
-class (Eq a, Show a) => Physical a where
- fromPhysical:: a -> Float
- toPhysical:: Float -> a
-instance Physical Float where
- fromPhysical x = x
- toPhysical x = x
-data PlaneAngle =
- Rad Float |
- Mrad Float |
- Urad Float |
- Deg Float |
- Rev Float
- deriving (Eq, Show)
-instance Physical PlaneAngle where
- fromPhysical (Rad x) = x
- fromPhysical (Mrad x) = realdiv x 1000
- fromPhysical (Urad x) = realdiv x 1000000
- fromPhysical (Deg x) = realdiv (realmul x pi) 180
- fromPhysical (Rev x) = realdiv x (realmul 2.0 pi)
- toPhysical x = Rad x
-data SolidAngle =
- Sr Float |
- Msr Float
- deriving (Eq, Show)
-instance Physical SolidAngle where
- fromPhysical (Sr x) = x
- fromPhysical (Msr x) = realdiv x 1000
- toPhysical x = Sr x
-data BurstLength =
- Cycle Float |
- Pulse Float
- deriving (Eq, Show)
-instance Physical BurstLength where
- fromPhysical (Cycle x) = x
- fromPhysical (Pulse x) = x
- toPhysical x = Cycle x
-data Capacitance =
- Fd Float |
- Ufd Float |
- Nfd Float |
- Pfd Float
- deriving (Eq, Show)
-instance Physical Capacitance where
- fromPhysical (Fd x) = x
- fromPhysical (Ufd x) = realdiv x 1000000
- fromPhysical (Nfd x) = realdiv x 1000000000
- fromPhysical (Pfd x) = realdiv x 1000000000000
- toPhysical x = Fd x
-data Charge =
- C Float |
- Kc Float |
- Uc Float |
- Nc Float
- deriving (Eq, Show)
-instance Physical Charge where
- fromPhysical (C x) = x
- fromPhysical (Kc x) = realmul 1000 x
- fromPhysical (Uc x) = realdiv x 1000000
- fromPhysical (Nc x) = realdiv x 1000000000
- toPhysical x = C x
-data Current =
- A Float |
- Ka Float |
- Ma Float |
- Ua Float |
- Na Float
- deriving (Eq, Show)
-instance Physical Current where
- fromPhysical (A x) = x
- fromPhysical (Ka x) = realmul 1000 x
- fromPhysical (Ma x) = realdiv x 1000
- fromPhysical (Ua x) = realdiv x 1000000
- fromPhysical (Na x) = realdiv x 1000000000
- toPhysical x = A x
-data Distance =
- M Float |
- Km Float |
- Mm Float |
- Um Float |
- Nm Float |
- In Float |
- Ft Float |
- SMi Float |
- NMi Float
- deriving (Eq, Show)
-instance Physical Distance where
- fromPhysical (M x) = x
- fromPhysical (Km x) = realmul 1000 x
- fromPhysical (Mm x) = realdiv x 1000
- fromPhysical (Um x) = realdiv x 1000000
- fromPhysical (Nm x) = realdiv x 1000000000
- fromPhysical (In x) = realmul 25.4 x
- fromPhysical (Ft x) = realmul 2.12 x
- fromPhysical (SMi x) = realdiv x 2490.57
- fromPhysical (NMi x) = realdiv x 1825
- toPhysical x = M x
-data Energy =
- J Float |
- Kj Float |
- Mj Float |
- Ev Float |
- Kev Float |
- Mev Float
- deriving (Eq, Show)
-instance Physical Energy where
- fromPhysical (J x) = x
- fromPhysical (Kj x) = realmul 1000 x
- fromPhysical (Mj x) = realdiv x 1000
- fromPhysical (Ev x) = realmul 1.6E-19 x
- fromPhysical (Kev x) = realmul 1.6E-16 x
- fromPhysical (Mev x) = realmul 1.6E-13 x
- toPhysical x = J x
-data MagFlux =
- Wb Float |
- Mwb Float
- deriving (Eq, Show)
-instance Physical MagFlux where
- fromPhysical (Wb x) = x
- fromPhysical (Mwb x) = realdiv x 1000
- toPhysical x = Wb x
-data FluxDensity =
- T Float |
- Mt Float |
- Ut Float |
- Gam Float
- deriving (Eq, Show)
-instance Physical FluxDensity where
- fromPhysical (T x) = x
- fromPhysical (Mt x) = realdiv x 1000
- fromPhysical (Ut x) = realdiv x 1000000
- fromPhysical (Gam x) = realdiv x 1000000000
- toPhysical x = T x
-data Force =
- N Float |
- Kn Float |
- Mn Float |
- Un Float
- deriving (Eq, Show)
-instance Physical Force where
- fromPhysical (N x) = x
- fromPhysical (Kn x) = realmul 1000 x
- fromPhysical (Mn x) = realdiv x 1000
- fromPhysical (Un x) = realdiv x 1000000
- toPhysical x = N x
-data Frequency =
- Hz Float |
- Khz Float |
- Mhz Float |
- Ghz Float
- deriving (Eq, Show)
-instance Physical Frequency where
- fromPhysical (Hz x) = x
- fromPhysical (Khz x) = realmul 1000 x
- fromPhysical (Mhz x) = realmul 1000000 x
- fromPhysical (Ghz x) = realmul 1000000000 x
- toPhysical x = Hz x
-data Illuminance =
- Lx Float
- deriving (Eq, Show)
-instance Physical Illuminance where
- fromPhysical (Lx x) = x
- toPhysical x = Lx x
-data Inductance =
- H Float |
- Mh Float |
- Uh Float |
- Nh Float |
- Ph Float
- deriving (Eq, Show)
-instance Physical Inductance where
- fromPhysical (H x) = x
- fromPhysical (Mh x) = realdiv x 1000
- fromPhysical (Uh x) = realdiv x 1000000
- fromPhysical (Nh x) = realdiv x 1000000000
- fromPhysical (Ph x) = realdiv x 1000000000000
- toPhysical x = H x
-data Luminance =
- Nt Float
- deriving (Eq, Show)
-instance Physical Luminance where
- fromPhysical (Nt x) = x
- toPhysical x = Nt x
-data LuminFlux =
- Lm Float
- deriving (Eq, Read, Show)
-instance Physical LuminFlux where
- fromPhysical (Lm x) = x
- toPhysical x = Lm x
-data LuminInten =
- Cd Float
- deriving (Eq, Read, Show)
-instance Physical LuminInten where
- fromPhysical (Cd x) = x
- toPhysical x = Cd x
-data Mass =
- Kg Float |
- G Float |
- Mg Float |
- Ug Float
- deriving (Eq, Show)
-instance Physical Mass where
- fromPhysical (Kg x) = x
- fromPhysical (G x) = realdiv x 1000
- fromPhysical (Mg x) = realdiv x 1000000
- fromPhysical (Ug x) = realdiv x 1000000000
- toPhysical x = Kg x
-data Power =
- W Float |
- Kw Float |
- Mw Float |
- Uw Float
- deriving (Eq, Show)
-instance Physical Power where
- fromPhysical (W x) = x
- fromPhysical (Kw x) = realmul 1000 x
- fromPhysical (Mw x) = realdiv x 1000
- fromPhysical (Uw x) = realdiv x 1000000
- toPhysical x = W x
-data Pressure =
- Pa Float |
- Kpa Float |
- Mpa Float |
- Upa Float |
- Mb Float
- deriving (Eq, Show)
-instance Physical Pressure where
- fromPhysical (Pa x) = x
- fromPhysical (Kpa x) = realmul 1000 x
- fromPhysical (Mpa x) = realdiv x 1000
- fromPhysical (Upa x) = realdiv x 1000000
- fromPhysical (Mb x) = realmul 100 x
- toPhysical x = Pa x
-data Pulse =
- Pulses Float
- deriving (Eq, Show)
-instance Physical Pulse where
- fromPhysical (Pulses x) = x
- toPhysical x = Pulses x
-data RatioInOut =
- Db Float
- deriving (Eq, Show)
-instance Physical RatioInOut where
- fromPhysical (Db x) = x
- toPhysical x = Db x
-data Resistance =
- Ohm Float |
- Kohm Float |
- Mohm Float
- deriving (Eq, Show)
-instance Physical Resistance where
- fromPhysical (Ohm x) = x
- fromPhysical (Kohm x) = realmul 1000 x
- fromPhysical (Mohm x) = realmul 1000000 x
- toPhysical x = Ohm x
-data Temperature =
- Degk Float |
- Degc Float |
- Degf Float
- deriving (Eq, Show)
-instance Physical Temperature where
- fromPhysical (Degk x) = x
- fromPhysical (Degc x) = x + 273
- fromPhysical (Degf x) = (realdiv (realmul 5 (x-32)) 9) + 273
- toPhysical x = Degk x
-data Time =
- Sec Float |
- Msec Float |
- Usec Float |
- Nsec Float |
- Min Float |
- Hr Float
- deriving (Eq, Show)
-instance Physical Time where
- fromPhysical (Sec x) = x
- fromPhysical (Msec x) = realdiv x 1000
- fromPhysical (Usec x) = realdiv x 1000000
- fromPhysical (Nsec x) = realdiv x 1000000000
- fromPhysical (Min x) = realmul 60 x
- fromPhysical (Hr x) = realmul 3600 x
- toPhysical x = Sec x
-data Voltage =
- V Float |
- Kv Float |
- Mv Float |
- Uv Float
- deriving (Eq, Show)
-instance Physical Voltage where
- fromPhysical (V x) = x
- fromPhysical (Kv x) = realmul 1000 x
- fromPhysical (Mv x) = realdiv x 1000
- fromPhysical (Uv x) = realdiv x 1000000
- toPhysical x = V x
-data Volume =
- L Float |
- Ml Float
- deriving (Eq, Show)
-instance Physical Volume where
- fromPhysical (L x) = x
- fromPhysical (Ml x) = realdiv x 1000
- toPhysical x = L x
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Plot.lhs b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Plot.lhs
deleted file mode 100644
index 8db1066aef..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/Plot.lhs
+++ /dev/null
@@ -1,79 +0,0 @@
-The functions in this file (well, the single function) will allow the
-user to plot different functions using the Gnuplot program. In fact,
-all it really does is output a number of points on the list and allow
-the user to activate Gnuplot and use the plotting program to get the
-appropriate output.
-
-The first line just gives the module name. For the moment, I don't
-anticipate using any modules (although this may change).
-
-> module Plot where
-
-Now we give the type of the function. This consists of a file name, a
-list of values, and a function that goes from the appropriate types.
-
-> plot2d:: (Fractional a, Fractional b, Ord a, Ord b, Show a, Show b)
-> => String -> [(a, b)] -> [a] -> (a -> b) -> String
-> plot2d fl expected inp f = plot2d' expected inp f
-
-> plot2d':: (Fractional a, Fractional b, Ord a, Ord b, Show a, Show b)
-> => [(a, b)] -> [a] -> (a -> b) -> String
-> plot2d' [] [] f = []
-> plot2d' ((e1, e2):es) (x:xs) f
-> | (e1 `isSame` x) && (e2 `isSame` x')
-> = (show e1) ++
-> " " ++
-> (show e2) ++
-> "\n" ++
-> plot2d' es xs f
-> | otherwise
-> = "Mismatch: " ++
-> (show e1) ++
-> " " ++
-> (show e2) ++
-> " " ++
-> (show x) ++
-> " " ++
-> (show x') ++
-> "\n" ++
-> plot2d' es xs f
-> where x' = f x
-> plot2d' es [] _ = "Extra expected: " ++ show es
-> plot2d' [] xs _ = "Extra results: " ++ show xs
-
-> isSame :: (Fractional a, Ord a) => a -> a -> Bool
-> x `isSame` y = abs (x - y) < 0.00001
-
-And now, let's create a function to make a range out of a triple of a
-start point, an end point, and an increment.
-
-> createRange:: (Num a, Ord a) => a -> a -> a -> [a]
-> createRange s e i = if s > e then []
-> else s : createRange (s+i) e i
-
-We now settle down to a couple of more specific functions that do
-things that are more unique to gnuplot. First, we have something that
-creates the appropriate gnuplot command file.
-
-> createGnuPlot:: Show a => String -> a -> a -> String
-> createGnuPlot fl s e =
-> "set terminal latex\n" ++
-> "set output \"" ++
-> (fl ++ ".tex\"\n") ++
-> "set nokey\n" ++
-> "plot [" ++
-> (show s) ++
-> ":" ++
-> (show e) ++
-> "] \"" ++
-> (fl ++ ".plt\"") ++
-> " with lines\n"
-
-And now we create a fairly specific plotExam function that takes a
-string, a function, and two floats and produces the correct files
-
-> plotExam:: String -> [(Float, Float)] -> Float -> Float -> (Float -> Float)
-> -> String
-> plotExam fl expected s e f = plot2d (fl++".plt") expected r f ++
-> createGnuPlot fl s e
-> where r = createRange s e ((e - s) / 2500)
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/PlotExample.lhs b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/PlotExample.lhs
deleted file mode 100644
index 66a13fbca7..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/PlotExample.lhs
+++ /dev/null
@@ -1,21 +0,0 @@
-This file contains code that is explicitly designed to plot examples
-from the signal modeling language.
-
-> module PlotExample where
-
-> import Plot
-> import Physical
-> import Basic
-
-Our main task is to take a signal and a begin and start point (both
-reals) and convert it into something that plotExam can take in the
-Plot module.
-
-> plotExample:: (Signal s, Physical a, Physical b) =>
-> String -> [(Float, Float)] -> s a b -> Float -> Float -> String
-> plotExample fl expected sig s e = plotExam fl expected s e f
-> where f = toFloatFunc f'
-> f' = mapSignal sig
-
-> toFloatFunc:: (Physical a, Physical b) => (a -> b) -> Float -> Float
-> toFloatFunc f x = fromPhysical (f (toPhysical x))
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/TypesettingTricks.hs b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/TypesettingTricks.hs
deleted file mode 100644
index 446e4e868c..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/TypesettingTricks.hs
+++ /dev/null
@@ -1,21 +0,0 @@
--- The functions in this file are expressly for the purpose of aiding
--- the typesetting of some functions with Smugweb. To this end, in
--- some cases I will use named, prefix functions rather than operators
--- (since under Smugweb operators cannot accept arguments). This file
--- will define those infix functions.
-
-module TypesettingTricks where
-
-realdiv:: Floating a => a -> a -> a
-realdiv = (/)
-
-realmul:: Num a => a -> a -> a
-realmul = (*)
-
-dotmul:: Num a => a -> a -> a
-dotmul = (*)
-
-rand:: Integer -> [ Float ]
-rand i = r : rand i'
- where i' = ( (3146757 * i) + 1731) `mod` 4194304
- r = (fromInteger i') / 4194304.0
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/barton-mangler-bug.stdout b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/barton-mangler-bug.stdout
deleted file mode 100644
index 7b801af7f3..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/barton-mangler-bug.stdout
+++ /dev/null
@@ -1,5009 +0,0 @@
-0.0 0.0
-4.0e-4 5.0260194e-2
-8.0e-4 0.10048864
-1.1999999e-3 0.1506536
-1.6e-3 0.20072344
-1.9999999e-3 0.25066644
-2.3999999e-3 0.30045116
-2.8e-3 0.35004613
-3.2e-3 0.39941996
-3.6e-3 0.44854155
-3.9999997e-3 0.49737975
-4.3999995e-3 0.54590386
-4.7999993e-3 0.5940831
-5.199999e-3 0.6418871
-5.599999e-3 0.68928576
-5.9999987e-3 0.736249
-6.3999984e-3 0.7827472
-6.799998e-3 0.82875097
-7.199998e-3 0.87423134
-7.599998e-3 0.9191595
-7.999998e-3 0.96350706
-8.399998e-3 1.0072463
-8.799998e-3 1.0503491
-9.199998e-3 1.0927886
-9.599999e-3 1.1345378
-9.999999e-3 1.1755705
-1.0399999e-2 1.2158606
-1.0799999e-2 1.2553827
-1.12e-2 1.294112
-1.16e-2 1.3320237
-1.2e-2 1.3690943
-1.24e-2 1.4053
-1.2800001e-2 1.4406182
-1.3200001e-2 1.4750264
-1.3600001e-2 1.5085028
-1.4000001e-2 1.5410266
-1.4400002e-2 1.572577
-1.4800002e-2 1.6031342
-1.5200002e-2 1.6326787
-1.5600002e-2 1.661192
-1.6000003e-2 1.6886561
-1.6400002e-2 1.7150536
-1.6800001e-2 1.7403677
-1.72e-2 1.7645825
-1.76e-2 1.7876829
-1.8e-2 1.8096541
-1.8399999e-2 1.8304824
-1.8799998e-2 1.8501544
-1.9199997e-2 1.8686578
-1.9599997e-2 1.885981
-1.9999996e-2 1.902113
-2.0399995e-2 1.9170434
-2.0799994e-2 1.9307631
-2.1199994e-2 1.9432633
-2.1599993e-2 1.9545361
-2.1999992e-2 1.9645743
-2.2399992e-2 1.9733717
-2.2799991e-2 1.9809227
-2.319999e-2 1.9872226
-2.359999e-2 1.9922671
-2.3999989e-2 1.9960533
-2.4399988e-2 1.9985789
-2.4799988e-2 1.999842
-2.5199987e-2 1.999842
-2.5599986e-2 1.998579
-2.5999986e-2 1.9960536
-2.6399985e-2 1.9922674
-2.6799984e-2 1.9872228
-2.7199984e-2 1.980923
-2.7599983e-2 1.9733722
-2.7999982e-2 1.9645749
-2.8399982e-2 1.9545367
-2.879998e-2 1.943264
-2.919998e-2 1.930764
-2.959998e-2 1.9170443
-2.9999979e-2 1.9021138
-3.0399978e-2 1.8859819
-3.0799977e-2 1.8686588
-3.1199977e-2 1.8501555
-3.1599976e-2 1.8304834
-3.1999975e-2 1.8096554
-3.2399975e-2 1.7876841
-3.2799974e-2 1.7645838
-3.3199973e-2 1.7403691
-3.3599973e-2 1.715055
-3.3999972e-2 1.6886578
-3.439997e-2 1.6611936
-3.479997e-2 1.6326804
-3.519997e-2 1.6031361
-3.559997e-2 1.5725791
-3.599997e-2 1.541029
-3.6399968e-2 1.5085055
-3.6799967e-2 1.4750288
-3.7199967e-2 1.4406208
-3.7599966e-2 1.4053029
-3.7999965e-2 1.3690974
-3.8399965e-2 1.3320271
-3.8799964e-2 1.2941151
-3.9199963e-2 1.2553861
-3.9599963e-2 1.2158642
-3.999996e-2 1.1755743
-4.039996e-2 1.1345419
-4.079996e-2 1.0927929
-4.119996e-2 1.0503532
-4.159996e-2 1.0072505
-4.199996e-2 0.9635117
-4.2399958e-2 0.9191643
-4.2799957e-2 0.87423635
-4.3199956e-2 0.82875574
-4.3599956e-2 0.7827521
-4.3999955e-2 0.7362541
-4.4399954e-2 0.68929106
-4.4799954e-2 0.6418926
-4.5199953e-2 0.5940888
-4.5599952e-2 0.5459092
-4.599995e-2 0.49738535
-4.639995e-2 0.4485473
-4.679995e-2 0.39942592
-4.719995e-2 0.3500523
-4.759995e-2 0.30045706
-4.799995e-2 0.25067255
-4.8399948e-2 0.2007297
-4.8799947e-2 0.15066005
-4.9199946e-2 0.100495264
-4.9599946e-2 5.0266996e-2
-4.9999945e-2 6.500875e-6
-5.0399944e-2 -5.025352e-2
-5.0799944e-2 -0.1004818
-5.1199943e-2 -0.15064661
-5.1599942e-2 -0.20071629
-5.199994e-2 -0.25065964
-5.239994e-2 -0.30044422
-5.279994e-2 -0.350039
-5.319994e-2 -0.39941272
-5.359994e-2 -0.44853416
-5.3999938e-2 -0.4973723
-5.4399937e-2 -0.5458967
-5.4799937e-2 -0.5940759
-5.5199936e-2 -0.64187986
-5.5599935e-2 -0.6892784
-5.5999935e-2 -0.7362416
-5.6399934e-2 -0.7827402
-5.6799933e-2 -0.82874393
-5.7199933e-2 -0.87422425
-5.7599932e-2 -0.9191523
-5.799993e-2 -0.9634999
-5.839993e-2 -1.0072393
-5.879993e-2 -1.0503422
-5.919993e-2 -1.0927815
-5.959993e-2 -1.1345308
-5.9999928e-2 -1.1755633
-6.0399927e-2 -1.2158535
-6.0799927e-2 -1.255376
-6.1199926e-2 -1.2941052
-6.1599925e-2 -1.332017
-6.1999924e-2 -1.3690875
-6.2399924e-2 -1.4052932
-6.279992e-2 -1.4406117
-6.319992e-2 -1.4750199
-6.359992e-2 -1.5084965
-6.399992e-2 -1.5410206
-6.439992e-2 -1.5725712
-6.479992e-2 -1.6031283
-6.519992e-2 -1.6326729
-6.559992e-2 -1.6611863
-6.599992e-2 -1.6886505
-6.639992e-2 -1.7150481
-6.679992e-2 -1.7403624
-6.7199916e-2 -1.7645775
-6.7599915e-2 -1.7876781
-6.7999914e-2 -1.8096495
-6.839991e-2 -1.8304783
-6.879991e-2 -1.8501506
-6.919991e-2 -1.8686541
-6.959991e-2 -1.8859775
-6.999991e-2 -1.9021097
-7.039991e-2 -1.9170405
-7.079991e-2 -1.9307604
-7.119991e-2 -1.9432608
-7.159991e-2 -1.9545338
-7.199991e-2 -1.9645723
-7.239991e-2 -1.97337
-7.2799906e-2 -1.9809214
-7.3199905e-2 -1.9872214
-7.3599905e-2 -1.9922662
-7.3999904e-2 -1.9960527
-7.43999e-2 -1.9985785
-7.47999e-2 -1.9998419
-7.51999e-2 -1.9998423
-7.55999e-2 -1.9985794
-7.59999e-2 -1.9960542
-7.63999e-2 -1.9922683
-7.67999e-2 -1.9872241
-7.71999e-2 -1.9809245
-7.75999e-2 -1.9733739
-7.79999e-2 -1.9645768
-7.83999e-2 -1.9545388
-7.8799896e-2 -1.9432664
-7.9199895e-2 -1.9307666
-7.9599895e-2 -1.9170473
-7.9999894e-2 -1.902117
-8.039989e-2 -1.8859855
-8.079989e-2 -1.8686627
-8.119989e-2 -1.8501595
-8.159989e-2 -1.8304875
-8.199989e-2 -1.8096596
-8.239989e-2 -1.7876887
-8.279989e-2 -1.7645887
-8.319989e-2 -1.7403742
-8.359989e-2 -1.7150604
-8.399989e-2 -1.6886632
-8.439989e-2 -1.6611996
-8.4799886e-2 -1.6326867
-8.5199885e-2 -1.6031425
-8.5599884e-2 -1.5725858
-8.599988e-2 -1.5410352
-8.639988e-2 -1.5085119
-8.679988e-2 -1.4750358
-8.719988e-2 -1.4406279
-8.759988e-2 -1.4053102
-8.799988e-2 -1.3691049
-8.839988e-2 -1.3320347
-8.879988e-2 -1.2941233
-8.919988e-2 -1.2553945
-8.959988e-2 -1.2158726
-8.999988e-2 -1.175583
-9.0399876e-2 -1.13455
-9.0799876e-2 -1.0928011
-9.1199875e-2 -1.050362
-9.1599874e-2 -1.0072595
-9.199987e-2 -0.96352077
-9.239987e-2 -0.9191735
-9.279987e-2 -0.87424564
-9.319987e-2 -0.8287656
-9.359987e-2 -0.78276205
-9.399987e-2 -0.73626417
-9.439987e-2 -0.6893012
-9.479987e-2 -0.64190197
-9.519987e-2 -0.59409815
-9.559987e-2 -0.5459192
-9.599987e-2 -0.49739534
-9.6399866e-2 -0.44855735
-9.6799865e-2 -0.39943603
-9.7199865e-2 -0.35006243
-9.7599864e-2 -0.30046773
-9.799986e-2 -0.25068325
-9.839986e-2 -0.20074043
-9.879986e-2 -0.15067083
-9.919986e-2 -0.10050509
-9.959986e-2 -5.027683e-2
-9.999986e-2 -1.6816446e-5
-0.10039986 5.024321e-2
-0.10079986 0.100471504
-0.10119986 0.15063633
-0.10159986 0.20070602
-0.10199986 0.25064895
-0.102399856 0.30043355
-0.102799855 0.3500284
-0.103199854 0.39940214
-0.103599854 0.44852456
-0.10399985 0.49736276
-0.10439985 0.5458868
-0.10479985 0.5940661
-0.10519985 0.6418701
-0.10559985 0.6892687
-0.10599985 0.736232
-0.10639985 0.7827302
-0.10679985 0.8287341
-0.10719985 0.87421453
-0.10759985 0.9191428
-0.10799985 0.9634913
-0.108399846 1.0072304
-0.108799845 1.0503334
-0.109199844 1.092773
-0.10959984 1.1345222
-0.10999984 1.175555
-0.11039984 1.2158452
-0.11079984 1.2553675
-0.11119984 1.294097
-0.11159984 1.332009
-0.11199984 1.3690796
-0.11239984 1.4052863
-0.11279984 1.4406046
-0.11319984 1.475013
-0.11359984 1.5084898
-0.113999836 1.5410138
-0.114399835 1.5725645
-0.114799835 1.6031219
-0.115199834 1.6326667
-0.11559983 1.6611804
-0.11599983 1.6886448
-0.11639983 1.7150426
-0.11679983 1.7403576
-0.11719983 1.7645729
-0.11759983 1.7876737
-0.11799983 1.8096453
-0.11839983 1.8304739
-0.11879983 1.8501464
-0.11919983 1.8686503
-0.11959983 1.8859739
-0.119999826 1.9021064
-0.120399825 1.9170374
-0.120799825 1.9307575
-0.121199824 1.9432585
-0.12159982 1.9545318
-0.12199982 1.9645705
-0.12239982 1.9733684
-0.12279982 1.9809198
-0.12319982 1.9872202
-0.12359982 1.9922652
-0.12399982 1.996052
-0.12439982 1.9985781
-0.12479982 1.9998418
-0.12519982 1.9998424
-0.12559983 1.9985797
-0.12599984 1.9960546
-0.12639984 1.9922688
-0.12679985 1.9872246
-0.12719986 1.9809252
-0.12759987 1.9733747
-0.12799987 1.9645776
-0.12839988 1.9545392
-0.12879989 1.9432665
-0.12919989 1.9307665
-0.1295999 1.9170468
-0.1299999 1.9021163
-0.13039991 1.8859843
-0.13079992 1.868661
-0.13119993 1.8501575
-0.13159993 1.8304853
-0.13199994 1.8096569
-0.13239995 1.7876855
-0.13279995 1.7645848
-0.13319996 1.7403696
-0.13359997 1.7150551
-0.13399997 1.6886573
-0.13439998 1.6611929
-0.13479999 1.6326791
-0.1352 1.6031342
-0.1356 1.5725766
-0.136 1.5410256
-0.13640001 1.5085014
-0.13680002 1.4750243
-0.13720003 1.4406155
-0.13760003 1.4052968
-0.13800004 1.3690904
-0.13840005 1.3320193
-0.13880005 1.2941068
-0.13920006 1.2553754
-0.13960007 1.2158525
-0.14000008 1.1755617
-0.14040008 1.1345282
-0.14080009 1.0927782
-0.1412001 1.0503379
-0.1416001 1.0072342
-0.14200011 0.9634943
-0.14240012 0.9191458
-0.14280012 0.87421674
-0.14320013 0.8287355
-0.14360014 0.78273076
-0.14400014 0.7362316
-0.14440015 0.68926746
-0.14480016 0.64186794
-0.14520016 0.5940629
-0.14560017 0.54588276
-0.14600018 0.49735776
-0.14640018 0.4485186
-0.14680019 0.39939615
-0.1472002 0.35002142
-0.1476002 0.30042562
-0.14800021 0.25064003
-0.14840022 0.20069614
-0.14880022 0.15062548
-0.14920023 0.10045967
-0.14960024 5.0230417e-2
-0.15000024 -3.2472628e-5
-0.15040025 -5.0293438e-2
-0.15080026 -0.10052263
-0.15120026 -0.15068834
-0.15160027 -0.20075886
-0.15200028 -0.25070256
-0.15240029 -0.30048794
-0.15280029 -0.3500835
-0.1532003 -0.39945793
-0.1536003 -0.44858003
-0.15400031 -0.49741882
-0.15440032 -0.5459434
-0.15480033 -0.5941231
-0.15520033 -0.6419276
-0.15560034 -0.68932664
-0.15600035 -0.7362902
-0.15640035 -0.78278875
-0.15680036 -0.8287928
-0.15720037 -0.8742734
-0.15760037 -0.9192018
-0.15800038 -0.96354955
-0.15840039 -1.0072887
-0.1588004 -1.0503916
-0.1592004 -1.092831
-0.1596004 -1.1345801
-0.16000041 -1.1756126
-0.16040042 -1.2159026
-0.16080043 -1.2554245
-0.16120043 -1.2941549
-0.16160044 -1.3320663
-0.16200045 -1.3691365
-0.16240045 -1.4053416
-0.16280046 -1.4406593
-0.16320047 -1.4750669
-0.16360047 -1.5085428
-0.16400048 -1.5410659
-0.16440049 -1.5726155
-0.1648005 -1.6031718
-0.1652005 -1.6327156
-0.16560051 -1.661228
-0.16600052 -1.688691
-0.16640052 -1.7150875
-0.16680053 -1.7404007
-0.16720054 -1.7646145
-0.16760054 -1.7877138
-0.16800055 -1.8096838
-0.16840056 -1.8305107
-0.16880056 -1.8501815
-0.16920057 -1.8686836
-0.16960058 -1.8860053
-0.17000058 -1.9021357
-0.17040059 -1.9170648
-0.1708006 -1.9307829
-0.1712006 -1.9432814
-0.17160061 -1.9545525
-0.17200062 -1.9645894
-0.17240062 -1.973385
-0.17280063 -1.980934
-0.17320064 -1.9872319
-0.17360064 -1.9922745
-0.17400065 -1.9960587
-0.17440066 -1.9985821
-0.17480066 -1.9998431
-0.17520067 -1.999841
-0.17560068 -1.9985757
-0.17600068 -1.996048
-0.17640069 -1.9922595
-0.1768007 -1.9872127
-0.1772007 -1.9809105
-0.17760071 -1.9733572
-0.17800072 -1.9645574
-0.17840073 -1.9545168
-0.17880073 -1.9432416
-0.17920074 -1.9307389
-0.17960075 -1.9170167
-0.18000075 -1.9020836
-0.18040076 -1.8859491
-0.18080077 -1.8686235
-0.18120077 -1.8501174
-0.18160078 -1.8304428
-0.18200079 -1.8096119
-0.1824008 -1.7876381
-0.1828008 -1.7645352
-0.1832008 -1.7403166
-0.18360081 -1.7149998
-0.18400082 -1.6885997
-0.18440083 -1.661133
-0.18480083 -1.6326171
-0.18520084 -1.6030699
-0.18560085 -1.5725102
-0.18600085 -1.5409572
-0.18640086 -1.5084308
-0.18680087 -1.4749517
-0.18720087 -1.440541
-0.18760088 -1.4052204
-0.18800089 -1.3690121
-0.1884009 -1.3319391
-0.1888009 -1.2940248
-0.18920091 -1.2552933
-0.18960091 -1.2157687
-0.19000092 -1.1754762
-0.19040093 -1.1344413
-0.19080094 -1.0926898
-0.19120094 -1.0502481
-0.19160095 -1.007143
-0.19200096 -0.9634018
-0.19240096 -0.91905206
-0.19280097 -0.8741218
-0.19320098 -0.8286394
-0.19360098 -0.7826336
-0.19400099 -0.73613167
-0.194401 -0.68916655
-0.194801 -0.64176613
-0.19520101 -0.59396034
-0.19560102 -0.54577935
-0.19600102 -0.49725366
-0.19640103 -0.44841388
-0.19680104 -0.39929086
-0.19720104 -0.34991562
-0.19760105 -0.30031937
-0.19800106 -0.2505334
-0.19840106 -0.20058921
-0.19880107 -0.15051831
-0.19920108 -0.10035235
-0.19960108 -5.0122987e-2
-0.20000109 1.3802848e-4
-0.2004011 5.0398957e-2
-0.2008011 0.100628056
-0.20120111 0.1507936
-0.20160112 0.20086388
-0.20200112 0.2508073
-0.20240113 0.30059227
-0.20280114 0.35018742
-0.20320114 0.39956135
-0.20360115 0.4486829
-0.20400116 0.49752104
-0.20440117 0.54604495
-0.20480117 0.59422576
-0.20520118 0.6420294
-0.20560119 0.6894275
-0.20600119 0.7363901
-0.2064012 0.78288764
-0.2068012 0.8288906
-0.20720121 0.8743701
-0.20760122 0.9192972
-0.20800123 0.9636437
-0.20840123 1.0073816
-0.20880124 1.050483
-0.20920125 1.092921
-0.20960125 1.1346686
-0.21000126 1.1756996
-0.21040127 1.2159879
-0.21080127 1.2555081
-0.21120128 1.2942353
-0.21160129 1.3321451
-0.2120013 1.3692133
-0.2124013 1.4054167
-0.2128013 1.4407325
-0.21320131 1.4751382
-0.21360132 1.5086122
-0.21400133 1.5411332
-0.21440133 1.5726807
-0.21480134 1.603235
-0.21520135 1.6327765
-0.21560135 1.6612867
-0.21600136 1.6887486
-0.21640137 1.7151428
-0.21680138 1.7404536
-0.21720138 1.7646651
-0.21760139 1.7877619
-0.2180014 1.8097295
-0.2184014 1.830554
-0.21880141 1.8502222
-0.21920142 1.8687218
-0.21960142 1.886041
-0.22000143 1.902169
-0.22040144 1.9170954
-0.22080144 1.9308109
-0.22120145 1.9433068
-0.22160146 1.9545753
-0.22200146 1.9646091
-0.22240147 1.9734021
-0.22280148 1.9809486
-0.22320148 1.9872438
-0.22360149 1.9922837
-0.2240015 1.9960653
-0.2244015 1.998586
-0.22480151 1.9998444
-0.22520152 1.9998397
-0.22560152 1.9985718
-0.22600153 1.9960413
-0.22640154 1.9922502
-0.22680154 1.9872005
-0.22720155 1.9808956
-0.22760156 1.9733397
-0.22800156 1.9645373
-0.22840157 1.954494
-0.22880158 1.9432161
-0.22920159 1.9307109
-0.22960159 1.9169861
-0.2300016 1.9020505
-0.2304016 1.8859134
-0.23080161 1.8685851
-0.23120162 1.8500766
-0.23160163 1.8303995
-0.23200163 1.8095663
-0.23240164 1.7875899
-0.23280165 1.7644845
-0.23320165 1.7402647
-0.23360166 1.7149456
-0.23400167 1.6885431
-0.23440167 1.6610742
-0.23480168 1.6325561
-0.23520169 1.6030068
-0.2356017 1.5724449
-0.2360017 1.5408899
-0.2364017 1.5083616
-0.23680171 1.4748805
-0.23720172 1.4404678
-0.23760173 1.4051453
-0.23800173 1.3689338
-0.23840174 1.331859
-0.23880175 1.2939429
-0.23920175 1.2552096
-0.23960176 1.2156833
-0.24000177 1.1753893
-0.24040177 1.1343528
-0.24080178 1.0925997
-0.24120179 1.0501566
-0.2416018 1.0070502
-0.2420018 0.9633076
-0.24240181 0.9189566
-0.24280182 0.8740251
-0.24320182 0.8285416
-0.24360183 0.7825347
-0.24400184 0.73603356
-0.24440184 0.6890675
-0.24480185 0.6416662
-0.24520186 0.59385955
-0.24560186 0.54567784
-0.24600187 0.49715143
-0.24640188 0.448311
-0.24680188 0.39918742
-0.24720189 0.3498117
-0.2476019 0.300215
-0.2480019 0.25042868
-0.24840191 0.20048419
-0.24880192 0.15041116
-0.24920192 0.10024502
-0.24960193 5.001556e-2
-0.25000194 -2.4549168e-4
-0.25040194 -5.0506387e-2
-0.25080195 -0.10073538
-0.25120196 -0.15090075
-0.25160196 -0.2009708
-0.25200197 -0.25091392
-0.25240198 -0.30069852
-0.25280198 -0.35029322
-0.253202 -0.39966664
-0.253602 -0.44878763
-0.254002 -0.49762514
-0.254402 -0.5461483
-0.25480202 -0.59432656
-0.25520203 -0.64212936
-0.25560203 -0.6895266
-0.25600204 -0.7364883
-0.25640205 -0.7829848
-0.25680205 -0.8289867
-0.25720206 -0.874465
-0.25760207 -0.919391
-0.25800207 -0.9637362
-0.25840208 -1.0074726
-0.2588021 -1.0505729
-0.2592021 -1.0930094
-0.2596021 -1.1347555
-0.2600021 -1.175785
-0.2604021 -1.2160717
-0.26080212 -1.2555903
-0.26120213 -1.2943158
-0.26160213 -1.3322238
-0.26200214 -1.3692902
-0.26240215 -1.4054918
-0.26280215 -1.4408057
-0.26320216 -1.4752095
-0.26360217 -1.5086814
-0.26400217 -1.5412004
-0.26440218 -1.5727459
-0.2648022 -1.6032981
-0.2652022 -1.6328397
-0.2656022 -1.6613476
-0.2660022 -1.6888062
-0.2664022 -1.715198
-0.26680222 -1.7405065
-0.26720223 -1.7647157
-0.26760224 -1.7878101
-0.26800224 -1.8097752
-0.26840225 -1.8305973
-0.26880226 -1.8502631
-0.26920226 -1.8687601
-0.26960227 -1.8860768
-0.27000228 -1.9022021
-0.27040228 -1.917126
-0.2708023 -1.930839
-0.2712023 -1.9433322
-0.2716023 -1.9545981
-0.2720023 -1.9646293
-0.27240232 -1.9734195
-0.27280232 -1.9809633
-0.27320233 -1.9872558
-0.27360234 -1.9922931
-0.27400234 -1.996072
-0.27440235 -1.9985901
-0.27480236 -1.9998459
-0.27520236 -1.9998384
-0.27560237 -1.9985676
-0.27600238 -1.9960346
-0.27640238 -1.9922408
-0.2768024 -1.9871886
-0.2772024 -1.9808811
-0.2776024 -1.9733225
-0.2780024 -1.9645175
-0.27840242 -1.9544716
-0.27880242 -1.9431912
-0.27920243 -1.9306833
-0.27960244 -1.916956
-0.28000244 -1.9020178
-0.28040245 -1.8858782
-0.28080246 -1.8685476
-0.28120247 -1.8500365
-0.28160247 -1.830357
-0.28200248 -1.8095212
-0.2824025 -1.7875426
-0.2828025 -1.7644348
-0.2832025 -1.7402126
-0.2836025 -1.7148912
-0.2840025 -1.6884866
-0.28440252 -1.6610154
-0.28480253 -1.6324952
-0.28520253 -1.6029437
-0.28560254 -1.5723797
-0.28600255 -1.5408226
-0.28640255 -1.5082922
-0.28680256 -1.4748092
-0.28720257 -1.4403919
-0.28760257 -1.4050674
-0.28800258 -1.3688555
-0.2884026 -1.3317788
-0.2888026 -1.293861
-0.2892026 -1.2551259
-0.2896026 -1.215598
-0.2900026 -1.1753024
-0.29040262 -1.1342642
-0.29080263 -1.0925097
-0.29120263 -1.0500652
-0.29160264 -1.0069573
-0.29200265 -0.96321344
-0.29240265 -0.91886115
-0.29280266 -0.8739285
-0.29320267 -0.82844377
-0.29360268 -0.78243583
-0.29400268 -0.7359336
-0.2944027 -0.6889666
-0.2948027 -0.64156437
-0.2952027 -0.5937569
-0.2956027 -0.5455744
-0.29600272 -0.49704733
-0.29640272 -0.44820628
-0.29680273 -0.39908212
-0.29720274 -0.34970587
-0.29760274 -0.30010876
-0.29800275 -0.25032207
-0.29840276 -0.20037727
-0.29880276 -0.1503059
-0.29920277 -0.100139596
-0.29960278 -4.9910035e-2
-0.30000278 3.5104755e-4
-0.3004028 5.061191e-2
-0.3008028 0.10084081
-0.3012028 0.151006
-0.3016028 0.20107582
-0.30200282 0.25101864
-0.30240282 0.3008029
-0.30280283 0.35039714
-0.30320284 0.39977008
-0.30360284 0.44889048
-0.30400285 0.49772736
-0.30440286 0.54624987
-0.30480286 0.59442735
-0.30520287 0.6422293
-0.30560288 0.6896257
-0.3060029 0.7365864
-0.3064029 0.7830819
-0.3068029 0.8290828
-0.3072029 0.87455994
-0.3076029 0.9194847
-0.30800292 0.9638287
-0.30840293 1.0075638
-0.30880293 1.0506626
-0.30920294 1.093101
-0.30960295 1.1348456
-0.31000295 1.1758734
-0.31040296 1.2161585
-0.31080297 1.2556754
-0.31120297 1.2943991
-0.31160298 1.3323053
-0.312003 1.36937
-0.312403 1.4055697
-0.312803 1.4408816
-0.313203 1.4752833
-0.313603 1.5087532
-0.31400302 1.5412701
-0.31440303 1.5728135
-0.31480303 1.6033634
-0.31520304 1.6329006
-0.31560305 1.6614064
-0.31600305 1.6888628
-0.31640306 1.7152524
-0.31680307 1.7405585
-0.31720307 1.7647653
-0.31760308 1.7878574
-0.3180031 1.8098202
-0.3184031 1.8306398
-0.3188031 1.8503032
-0.3192031 1.8687978
-0.31960312 1.886112
-0.32000312 1.9022348
-0.32040313 1.9171561
-0.32080314 1.9308665
-0.32120314 1.9433572
-0.32160315 1.9546204
-0.32200316 1.9646491
-0.32240316 1.9734367
-0.32280317 1.9809779
-0.32320318 1.9872677
-0.32360318 1.9923024
-0.3240032 1.9960786
-0.3244032 1.998594
-0.3248032 1.9998472
-0.3252032 1.9998369
-0.32560322 1.9985636
-0.32600322 1.996028
-0.32640323 1.9922315
-0.32680324 1.9871767
-0.32720324 1.9808666
-0.32760325 1.9733053
-0.32800326 1.9644977
-0.32840326 1.9544492
-0.32880327 1.9431661
-0.32920328 1.9306557
-0.32960328 1.9169259
-0.3300033 1.9019852
-0.3304033 1.8858432
-0.3308033 1.8685085
-0.3312033 1.8499949
-0.33160332 1.8303128
-0.33200333 1.8094747
-0.33240333 1.7874936
-0.33280334 1.7643833
-0.33320335 1.7401587
-0.33360335 1.7148349
-0.33400336 1.6884279
-0.33440337 1.6609545
-0.33480337 1.632432
-0.33520338 1.6028782
-0.3356034 1.5723121
-0.3360034 1.5407529
-0.3364034 1.5082204
-0.3368034 1.4747353
-0.3372034 1.4403187
-0.33760342 1.4049923
-0.33800343 1.3687785
-0.33840343 1.3317001
-0.33880344 1.2937804
-0.33920345 1.2550437
-0.33960345 1.2155142
-0.34000346 1.1752169
-0.34040347 1.1341773
-0.34080347 1.0924213
-0.34120348 1.0499753
-0.3416035 1.0068661
-0.3420035 0.96312094
-0.3424035 0.9187674
-0.3428035 0.87383354
-0.3432035 0.8283477
-0.34360352 0.7823387
-0.34400353 0.7358355
-0.34440354 0.6888675
-0.34480354 0.6414644
-0.34520355 0.5936561
-0.34560356 0.54547286
-0.34600356 0.49694508
-0.34640357 0.4481034
-0.34680358 0.39897868
-0.34720358 0.34960195
-0.3476036 0.3000044
-0.3480036 0.25021735
-0.3484036 0.20027225
-0.3488036 0.15020065
-0.34920362 0.10003417
-0.34960362 4.9804512e-2
-0.35000363 -4.566034e-4
-0.35040364 -5.0717432e-2
-0.35080364 -0.100946225
-0.35120365 -0.15111126
-0.35160366 -0.20118085
-0.35200366 -0.25112334
-0.35240367 -0.30090722
-0.35280368 -0.35050482
-0.35320368 -0.39987722
-0.3536037 -0.44899708
-0.3540037 -0.4978333
-0.3544037 -0.54635507
-0.3548037 -0.5945318
-0.35520372 -0.6423329
-0.35560372 -0.6897283
-0.35600373 -0.7366881
-0.35640374 -0.78318256
-0.35680375 -0.82918227
-0.35720375 -0.8746583
-0.35760376 -0.91958183
-0.35800377 -0.9639245
-0.35840377 -1.0076584
-0.35880378 -1.0507557
-0.3592038 -1.0931894
-0.3596038 -1.1349325
-0.3600038 -1.1759588
-0.3604038 -1.2162423
-0.3608038 -1.2557576
-0.36120382 -1.2944796
-0.36160383 -1.3323841
-0.36200383 -1.369447
-0.36240384 -1.4056448
-0.36280385 -1.4409548
-0.36320385 -1.4753546
-0.36360386 -1.5088226
-0.36400387 -1.5413374
-0.36440387 -1.5728787
-0.36480388 -1.6034266
-0.3652039 -1.6329616
-0.3656039 -1.6614652
-0.3660039 -1.6889193
-0.3664039 -1.7153066
-0.3668039 -1.7406105
-0.36720392 -1.764815
-0.36760393 -1.7879047
-0.36800393 -1.8098651
-0.36840394 -1.8306823
-0.36880395 -1.8503432
-0.36920395 -1.8688353
-0.36960396 -1.886147
-0.37000397 -1.9022673
-0.37040398 -1.9171861
-0.37080398 -1.9308939
-0.371204 -1.9433821
-0.371604 -1.9546428
-0.372004 -1.9646688
-0.372404 -1.9734539
-0.37280402 -1.9809924
-0.37320402 -1.9872797
-0.37360403 -1.9923117
-0.37400404 -1.9960853
-0.37440404 -1.998598
-0.37480405 -1.9998485
-0.37520406 -1.9998356
-0.37560406 -1.9985595
-0.37600407 -1.996021
-0.37640408 -1.9922218
-0.37680408 -1.9871643
-0.3772041 -1.9808515
-0.3776041 -1.9732876
-0.3780041 -1.9644772
-0.3784041 -1.9544259
-0.37880412 -1.9431403
-0.37920412 -1.9306272
-0.37960413 -1.9168947
-0.38000414 -1.9019513
-0.38040414 -1.8858067
-0.38080415 -1.8684709
-0.38120416 -1.8499548
-0.38160416 -1.8302703
-0.38200417 -1.8094296
-0.38240418 -1.7874461
-0.3828042 -1.7643336
-0.3832042 -1.7401067
-0.3836042 -1.7147806
-0.3840042 -1.6883714
-0.3844042 -1.6608957
-0.38480422 -1.632371
-0.38520423 -1.6028152
-0.38560423 -1.5722469
-0.38600424 -1.5406855
-0.38640425 -1.508151
-0.38680425 -1.474664
-0.38720426 -1.4402454
-0.38760427 -1.4049171
-0.38800427 -1.3687015
-0.38840428 -1.3316213
-0.3888043 -1.2937
-0.3892043 -1.2549615
-0.3896043 -1.2154304
-0.3900043 -1.1751316
-0.3904043 -1.1340904
-0.39080432 -1.092333
-0.39120433 -1.0498855
-0.39160433 -1.0067749
-0.39200434 -0.96302843
-0.39240435 -0.91867363
-0.39280435 -0.8737386
-0.39320436 -0.8282516
-0.39360437 -0.7822415
-0.39400437 -0.7357373
-0.39440438 -0.6887684
-0.3948044 -0.6413644
-0.3952044 -0.59355533
-0.3956044 -0.54537135
-0.3960044 -0.49684283
-0.39640442 -0.44800055
-0.39680442 -0.3988715
-0.39720443 -0.34949428
-0.39760444 -0.29989627
-0.39800444 -0.25010884
-0.39840445 -0.20016342
-0.39880446 -0.15009159
-0.39920446 -9.992494e-2
-0.39960447 -4.9695175e-2
-0.40000448 5.659739e-4
-0.40040448 5.0826766e-2
-0.4008045 0.10105546
-0.4012045 0.15122032
-0.4016045 0.20128965
-0.4020045 0.25123185
-0.40240452 0.30101538
-0.40280452 0.35060874
-0.40320453 0.39998066
-0.40360454 0.44909993
-0.40400454 0.49793553
-0.40440455 0.54645663
-0.40480456 0.59463257
-0.40520456 0.64243287
-0.40560457 0.68982744
-0.40600458 0.73678625
-0.40640458 0.78327966
-0.4068046 0.82927835
-0.4072046 0.87475324
-0.4076046 0.9196756
-0.4080046 0.96401703
-0.40840462 1.0077496
-0.40880463 1.0508455
-0.40920463 1.0932778
-0.40960464 1.1350194
-0.41000465 1.1760442
-0.41040465 1.2163261
-0.41080466 1.2558397
-0.41120467 1.2945601
-0.41160467 1.3324628
-0.41200468 1.3695239
-0.4124047 1.4057199
-0.4128047 1.441028
-0.4132047 1.4754258
-0.4136047 1.5088918
-0.4140047 1.5414046
-0.41440472 1.5729439
-0.41480473 1.6034896
-0.41520473 1.6330225
-0.41560474 1.6615239
-0.41600475 1.6889758
-0.41640475 1.7153609
-0.41680476 1.7406625
-0.41720477 1.7648647
-0.41760477 1.787952
-0.41800478 1.80991
-0.4184048 1.8307248
-0.4188048 1.8503847
-0.4192048 1.8688743
-0.4196048 1.8861834
-0.4200048 1.9023011
-0.42040482 1.9172173
-0.42080483 1.9309224
-0.42120484 1.9434079
-0.42160484 1.9546659
-0.42200485 1.9646893
-0.42240486 1.9734716
-0.42280486 1.9810075
-0.42320487 1.9872919
-0.42360488 1.9923213
-0.42400488 1.9960921
-0.4244049 1.9986022
-0.4248049 1.9998498
-0.4252049 1.9998342
-0.4256049 1.9985555
-0.42600492 1.9960144
-0.42640492 1.9922125
-0.42680493 1.9871523
-0.42720494 1.9808369
-0.42760494 1.9732703
-0.42800495 1.9644574
-0.42840496 1.9544035
-0.42880496 1.9431152
-0.42920497 1.9305997
-0.42960498 1.9168645
-0.43000498 1.9019186
-0.430405 1.8857715
-0.430805 1.8684332
-0.431205 1.8499147
-0.431605 1.8302277
-0.43200502 1.8093847
-0.43240502 1.7873988
-0.43280503 1.7642839
-0.43320504 1.7400546
-0.43360505 1.7147262
-0.43400505 1.6883148
-0.43440506 1.6608369
-0.43480507 1.6323099
-0.43520507 1.602752
-0.43560508 1.5721817
-0.4360051 1.5406183
-0.4364051 1.5080818
-0.4368051 1.4745927
-0.4372051 1.4401722
-0.4376051 1.404842
-0.43800512 1.3686246
-0.43840513 1.3315425
-0.43880513 1.2936195
-0.43920514 1.2548794
-0.43960515 1.2153466
-0.44000515 1.1750461
-0.44040516 1.1340003
-0.44080517 1.0922413
-0.44120517 1.0497924
-0.44160518 1.0066804
-0.4420052 0.9629326
-0.4424052 0.9185765
-0.4428052 0.8736402
-0.4432052 0.82815206
-0.4436052 0.78214085
-0.44400522 0.73563564
-0.44440523 0.6886657
-0.44480523 0.6412608
-0.44520524 0.5934509
-0.44560525 0.5452661
-0.44600525 0.4967369
-0.44640526 0.44789395
-0.44680527 0.39876807
-0.44720528 0.34939033
-0.44760528 0.2997919
-0.4480053 0.2500041
-0.4484053 0.2000584
-0.4488053 0.14998633
-0.4492053 9.981951e-2
-0.44960532 4.9589653e-2
-0.45000532 -6.715298e-4
-0.45040533 -5.093229e-2
-0.45080534 -0.10116088
-0.45120534 -0.15132557
-0.45160535 -0.20139468
-0.45200536 -0.25133657
-0.45240536 -0.30111971
-0.45280537 -0.35071266
-0.45320538 -0.40008408
-0.45360538 -0.4492028
-0.4540054 -0.49803776
-0.4544054 -0.54655814
-0.4548054 -0.5947333
-0.4552054 -0.6425328
-0.45560542 -0.6899265
-0.45600542 -0.73688436
-0.45640543 -0.7833768
-0.45680544 -0.8293744
-0.45720544 -0.8748481
-0.45760545 -0.9197693
-0.45800546 -0.9641095
-0.45840546 -1.0078408
-0.45880547 -1.0509354
-0.45920548 -1.0933661
-0.4596055 -1.1351063
-0.4600055 -1.1761296
-0.4604055 -1.2164099
-0.4608055 -1.2559218
-0.4612055 -1.2946405
-0.46160552 -1.3325415
-0.46200553 -1.3696008
-0.46240553 -1.4057977
-0.46280554 -1.4411038
-0.46320555 -1.4754996
-0.46360555 -1.5089636
-0.46400556 -1.5414743
-0.46440557 -1.5730115
-0.46480557 -1.603555
-0.46520558 -1.6330856
-0.4656056 -1.6615847
-0.4660056 -1.6890345
-0.4664056 -1.7154171
-0.4668056 -1.7407163
-0.4672056 -1.7649161
-0.46760562 -1.7880011
-0.46800563 -1.8099566
-0.46840563 -1.8307688
-0.46880564 -1.8504248
-0.46920565 -1.8689119
-0.46960565 -1.8862185
-0.47000566 -1.9023337
-0.47040567 -1.9172473
-0.47080567 -1.9309499
-0.47120568 -1.9434329
-0.4716057 -1.9546883
-0.4720057 -1.964709
-0.4724057 -1.9734887
-0.4728057 -1.9810219
-0.47320572 -1.9873039
-0.47360572 -1.9923304
-0.47400573 -1.9960986
-0.47440574 -1.9986061
-0.47480574 -1.9998511
-0.47520575 -1.9998329
-0.47560576 -1.9985515
-0.47600576 -1.9960077
-0.47640577 -1.9922032
-0.47680578 -1.9871403
-0.47720578 -1.9808223
-0.4776058 -1.9732531
-0.4780058 -1.9644376
-0.4784058 -1.9543811
-0.4788058 -1.9430903
-0.47920582 -1.930572
-0.47960582 -1.9168345
-0.48000583 -1.9018861
-0.48040584 -1.8857363
-0.48080584 -1.8683956
-0.48120585 -1.8498746
-0.48160586 -1.8301852
-0.48200586 -1.8093398
-0.48240587 -1.7873515
-0.48280588 -1.7642342
-0.48320588 -1.7400026
-0.4836059 -1.714672
-0.4840059 -1.6882582
-0.4844059 -1.6607759
-0.4848059 -1.6322467
-0.48520592 -1.6026865
-0.48560593 -1.572114
-0.48600593 -1.5405486
-0.48640594 -1.5080099
-0.48680595 -1.4745188
-0.48720595 -1.4400963
-0.48760596 -1.4047642
-0.48800597 -1.3685448
-0.48840597 -1.331461
-0.48880598 -1.2935361
-0.489206 -1.2547941
-0.489606 -1.2152597
-0.490006 -1.1749576
-0.490406 -1.1339134
-0.490806 -1.0921528
-0.49120602 -1.0497025
-0.49160603 -1.0065892
-0.49200603 -0.96284
-0.49240604 -0.9184827
-0.49280605 -0.8735452
-0.49320605 -0.828056
-0.49360606 -0.7820437
-0.49400607 -0.73553747
-0.49440607 -0.6885666
-0.49480608 -0.64116085
-0.4952061 -0.5933501
-0.4956061 -0.5451645
-0.4960061 -0.49663466
-0.4964061 -0.44779107
-0.49680611 -0.39866465
-0.49720612 -0.3492864
-0.49760613 -0.29968753
-0.49800614 -0.24989937
-0.49840614 -0.19995338
-0.49880615 -0.14988106
-0.49920616 -9.971409e-2
-0.49960616 -4.948413e-2
-0.50000614 7.7327096e-4
-0.50040615 5.1033996e-2
-0.50080615 0.10126249
-0.50120616 0.15142702
-0.50160617 0.2014959
-0.5020062 0.25143752
-0.5024062 0.3012203
-0.5028062 0.35081282
-0.5032062 0.40018377
-0.5036062 0.44930193
-0.5040062 0.4981363
-0.5044062 0.546656
-0.5048062 0.59483045
-0.5052062 0.6426292
-0.50560623 0.690022
-0.50600624 0.73698246
-0.50640625 0.7834739
-0.50680625 0.82947046
-0.50720626 0.8749431
-0.50760627 0.91986305
-0.5080063 0.964202
-0.5084063 1.0079318
-0.5088063 1.0510252
-0.5092063 1.0934545
-0.5096063 1.1351901
-0.5100063 1.1762149
-0.5104063 1.2164906
-0.5108063 1.256004
-0.5112063 1.2947181
-0.51160634 1.3326203
-0.51200634 1.3696749
-0.51240635 1.4058701
-0.51280636 1.4411718
-0.51320636 1.4755684
-0.51360637 1.5090278
-0.5140064 1.5415392
-0.5144064 1.573072
-0.5148064 1.6036158
-0.5152064 1.6331422
-0.5156064 1.6616414
-0.5160064 1.6890868
-0.5164064 1.7154695
-0.5168064 1.7407683
-0.51720643 1.764964
-0.51760644 1.7880483
-0.51800644 1.8099998
-0.51840645 1.8308114
-0.51880646 1.8504634
-0.51920646 1.8689494
-0.5196065 1.8862523
-0.5200065 1.9023663
-0.5204065 1.9172763
-0.5208065 1.9309775
-0.5212065 1.9434569
-0.5216065 1.9547106
-0.5220065 1.964728
-0.5224065 1.9735059
-0.5228065 1.981036
-0.52320653 1.9873157
-0.52360654 1.9923394
-0.52400655 1.9961053
-0.52440655 1.9986099
-0.52480656 1.9998523
-0.52520657 1.9998316
-0.5256066 1.9985474
-0.5260066 1.9960012
-0.5264066 1.9921939
-0.5268066 1.9871289
-0.5272066 1.9808078
-0.5276066 1.9732366
-0.5280066 1.9644177
-0.5284066 1.9543595
-0.5288066 1.9430653
-0.52920663 1.9305454
-0.52960664 1.9168043
-0.53000665 1.9018546
-0.53040665 1.8857012
-0.53080666 1.8683592
-0.53120667 1.8498344
-0.5316067 1.8301442
-0.5320067 1.8092948
-0.5324067 1.7873058
-0.5328067 1.7641845
-0.5332067 1.7399524
-0.5336067 1.7146176
-0.5340067 1.6882037
-0.5344067 1.6607193
-0.5348067 1.6321901
-0.53520674 1.6026257
-0.53560674 1.5720536
-0.53600675 1.5404836
-0.53640676 1.5079455
-0.53680676 1.4744501
-0.53720677 1.4400283
-0.5376068 1.4046918
-0.5380068 1.3684734
-0.5384068 1.331385
-0.5388068 1.2934556
-0.5392068 1.254715
-0.5396068 1.2151759
-0.5400068 1.1748753
-0.5404068 1.1338264
-0.54080683 1.0920676
-0.54120684 1.0496128
-0.54160684 1.0065013
-0.54200685 0.9627475
-0.54240686 0.91839236
-0.54280686 0.8734503
-0.5432069 0.82796335
-0.5436069 0.78194654
-0.5440069 0.7354429
-0.5444069 0.6884675
-0.5448069 0.64106447
-0.5452069 0.59324926
-0.5456069 0.54506665
-0.5460069 0.4965324
-0.5464069 0.44769192
-0.54680693 0.3985612
-0.54720694 0.3491862
-0.54760695 0.29958317
-0.54800695 0.24979843
-0.54840696 0.19984834
-0.54880697 0.1497796
-0.549207 9.960867e-2
-0.549607 4.938242e-2
-0.550007 -8.826415e-4
-0.550407 -5.113952e-2
-0.550807 -0.10137172
-0.551207 -0.15153226
-0.551607 -0.20160471
-0.552007 -0.25154224
-0.552407 -0.30132842
-0.55280703 -0.35091674
-0.55320704 -0.40029094
-0.55360705 -0.44940478
-0.55400705 -0.49824223
-0.55440706 -0.5467576
-0.55480707 -0.5949349
-0.5552071 -0.64272916
-0.5556071 -0.69012463
-0.5560071 -0.73707706
-0.5564071 -0.783571
-0.5568071 -0.829563
-0.5572071 -0.87503797
-0.5576071 -0.91995335
-0.5580071 -0.96429443
-0.5584071 -1.0080198
-0.55880713 -1.0511149
-0.55920714 -1.0935397
-0.55960715 -1.1352801
-0.56000715 -1.1762972
-0.56040716 -1.2165774
-0.56080717 -1.2560891
-0.5612072 -1.2948015
-0.5616072 -1.3327018
-0.5620072 -1.3697547
-0.5624072 -1.4059478
-0.5628072 -1.4412476
-0.5632072 -1.4756422
-0.5636072 -1.5090996
-0.5640072 -1.5416088
-0.5644072 -1.5731394
-0.56480724 -1.6036812
-0.56520724 -1.6332053
-0.56560725 -1.6617023
-0.56600726 -1.6891454
-0.56640726 -1.7155256
-0.56680727 -1.7408185
-0.5672073 -1.7650154
-0.5676073 -1.7880939
-0.5680073 -1.8100463
-0.5684073 -1.8308523
-0.5688073 -1.8505049
-0.5692073 -1.8689857
-0.5696073 -1.8862886
-0.5700073 -1.9023976
-0.57040733 -1.9173074
-0.57080734 -1.9310039
-0.57120734 -1.9434828
-0.57160735 -1.9547322
-0.57200736 -1.9647485
-0.57240736 -1.9735223
-0.5728074 -1.981051
-0.5732074 -1.9873271
-0.5736074 -1.9923489
-0.5740074 -1.9961116
-0.5744074 -1.998614
-0.5748074 -1.9998536
-0.5752074 -1.9998301
-0.5756074 -1.9985436
-0.5760074 -1.9959943
-0.57640743 -1.9921849
-0.57680744 -1.9871165
-0.57720745 -1.9807937
-0.57760745 -1.9732187
-0.57800746 -1.9643986
-0.57840747 -1.9543363
-0.5788075 -1.9430412
-0.5792075 -1.930517
-0.5796075 -1.9167752
-0.5800075 -1.9018208
-0.5804075 -1.8856673
-0.5808075 -1.8683202
-0.5812075 -1.8497958
-0.5816075 -1.8301
-0.5820075 -1.8092514
-0.58240753 -1.7872567
-0.58280754 -1.764133
-0.58320755 -1.7398984
-0.58360755 -1.7145612
-0.58400756 -1.688145
-0.58440757 -1.6606584
-0.5848076 -1.6321269
-0.5852076 -1.6025603
-0.5856076 -1.5719858
-0.5860076 -1.5404139
-0.5864076 -1.5078738
-0.5868076 -1.4743762
-0.5872076 -1.4399525
-0.5876076 -1.404614
-0.5880076 -1.3683937
-0.58840764 -1.3313034
-0.58880764 -1.293378
-0.58920765 -1.2546297
-0.58960766 -1.215095
-0.59000766 -1.1747867
-0.59040767 -1.1337426
-0.5908077 -1.091976
-0.5912077 -1.0495261
-0.5916077 -1.0064068
-0.5920077 -0.96265835
-0.5924077 -0.9182952
-0.5928077 -0.8733587
-0.5932077 -0.8278638
-0.5936077 -0.7818529
-0.59400773 -0.73534113
-0.59440774 -0.688372
-0.59480774 -0.6409609
-0.59520775 -0.5931521
-0.59560776 -0.5449614
-0.59600776 -0.49643385
-0.5964078 -0.4475853
-0.5968078 -0.3984615
-0.5972078 -0.34907854
-0.5976078 -0.29948258
-0.5980078 -0.24968992
-0.5984078 -0.19974712
-0.5988078 -0.14967054
-0.5992078 -9.950705e-2
-0.5996078 -4.927308e-2
-0.60000783 9.843827e-4
-0.60040784 5.1248852e-2
-0.60080785 0.10147333
-0.60120785 0.15164132
-0.60160786 0.20170593
-0.60200787 0.25165072
-0.6024079 0.301429
-0.6028079 0.35102442
-0.6032079 0.4003906
-0.6036079 0.44951135
-0.6040079 0.49834076
-0.6044079 0.5468628
-0.6048079 0.5950393
-0.6052079 0.6428327
-0.6056079 0.69022727
-0.60600793 0.73717874
-0.60640794 0.7836717
-0.60680795 0.82966256
-0.60720795 0.8751363
-0.60760796 0.9200505
-0.60800797 0.9643903
-0.608408 1.0081142
-0.608808 1.051208
-0.609208 1.0936313
-0.609608 1.1353701
-0.610008 1.1763856
-0.610408 1.2166643
-0.610808 1.2561682
-0.611208 1.2948848
-0.611608 1.3327776
-0.61200804 1.3698343
-0.61240804 1.4060202
-0.61280805 1.4413234
-0.61320806 1.4757109
-0.61360806 1.5091714
-0.61400807 1.5416737
-0.6144081 1.573207
-0.6148081 1.6037419
-0.6152081 1.6332685
-0.6156081 1.6617589
-0.6160081 1.689204
-0.6164081 1.715578
-0.6168081 1.7408723
-0.6172081 1.7650633
-0.61760813 1.7881429
-0.61800814 1.8100896
-0.61840814 1.8308963
-0.61880815 1.8505435
-0.61920816 1.8690246
-0.61960816 1.8863225
-0.6200082 1.9024315
-0.6204082 1.9173363
-0.6208082 1.9310324
-0.6212082 1.9435067
-0.6216082 1.9547553
-0.6220082 1.9647675
-0.6224082 1.9735401
-0.6228082 1.9810649
-0.6232082 1.9873394
-0.62360823 1.9923579
-0.62400824 1.9961184
-0.62440825 1.9986178
-0.62480825 1.9998549
-0.62520826 1.9998288
-0.62560827 1.9985394
-0.6260083 1.9959879
-0.6264083 1.9921752
-0.6268083 1.987104
-0.6272083 1.9807786
-0.6276083 1.9732009
-0.6280083 1.9643781
-0.6284083 1.954313
-0.6288083 1.9430152
-0.6292083 1.9304883
-0.62960833 1.916744
-0.63000834 1.9017869
-0.63040835 1.8856308
-0.63080835 1.8682812
-0.63120836 1.8497542
-0.63160837 1.830056
-0.6320084 1.8092048
-0.6324084 1.7872076
-0.6328084 1.764085
-0.6332084 1.7398446
-0.6336084 1.7145089
-0.6340084 1.6880864
-0.6344084 1.6606016
-0.6348084 1.6320637
-0.6352084 1.6024994
-0.63560843 1.5719182
-0.63600844 1.540349
-0.63640845 1.5078019
-0.63680845 1.4743074
-0.63720846 1.4398766
-0.63760847 1.4045415
-0.6380085 1.3683138
-0.6384085 1.3312274
-0.6388085 1.2932945
-0.6392085 1.2545506
-0.6396085 1.2150081
-0.6400085 1.1747044
-0.6404085 1.1336524
-0.6408085 1.0918908
-0.6412085 1.049433
-0.64160854 1.0063188
-0.64200854 0.9625625
-0.64240855 0.9182048
-0.64280856 0.8732604
-0.64320856 0.8277712
-0.64360857 0.7817522
-0.6440086 0.73524654
-0.6444086 0.6882693
-0.6448086 0.6408645
-0.6452086 0.5930477
-0.6456086 0.5448635
-0.6460086 0.4963279
-0.6464086 0.44748616
-0.6468086 0.39835432
-0.64720863 0.34897834
-0.64760864 0.29937443
-0.64800864 0.24958897
-0.64840865 0.19963829
-0.64880866 0.14956148
-0.64920866 9.9397816e-2
-0.6496087 4.9163744e-2
-0.6500087 -1.0937531e-3
-0.6504087 -5.135819e-2
-0.6508087 -0.10158256
-0.6512087 -0.15175039
-0.6516087 -0.20181474
-0.6520087 -0.25175923
-0.6524087 -0.30153713
-0.6528087 -0.3511321
-0.65320873 -0.40049776
-0.65360874 -0.44961792
-0.65400875 -0.49844667
-0.65440875 -0.546968
-0.65480876 -0.59513646
-0.65520877 -0.6429363
-0.6556088 -0.69032276
-0.6560088 -0.7372804
-0.6564088 -0.78376526
-0.6568088 -0.82976204
-0.6572088 -0.8752278
-0.6576088 -0.9201476
-0.6580088 -0.9644794
-0.6584088 -1.0082086
-0.6588088 -1.0512946
-0.65920883 -1.0937228
-0.65960884 -1.1354539
-0.66000885 -1.1764741
-0.66040885 -1.216745
-0.66080886 -1.2562534
-0.66120887 -1.2949624
-0.6616089 -1.3328592
-0.6620089 -1.3699085
-0.6624089 -1.406098
-0.6628089 -1.4413939
-0.6632089 -1.4757847
-0.6636089 -1.5092381
-0.6640089 -1.5417433
-0.6644089 -1.5732698
-0.6648089 -1.6038073
-0.66520894 -1.6333271
-0.66560894 -1.6618198
-0.66600895 -1.6892585
-0.66640896 -1.7156342
-0.66680896 -1.7409223
-0.66720897 -1.7651147
-0.667609 -1.7881885
-0.668009 -1.8101362
-0.668409 -1.8309373
-0.668809 -1.850585
-0.669209 -1.8690609
-0.669609 -1.8863589
-0.670009 -1.9024628
-0.670409 -1.9173675
-0.67080903 -1.9310609
-0.67120904 -1.9435326
-0.67160904 -1.9547784
-0.67200905 -1.964788
-0.67240906 -1.9735578
-0.67280906 -1.9810799
-0.6732091 -1.9873518
-0.6736091 -1.9923674
-0.6740091 -1.9961252
-0.6744091 -1.9986218
-0.6748091 -1.9998562
-0.6752091 -1.9998274
-0.6756091 -1.9985352
-0.6760091 -1.995981
-0.6764091 -1.9921656
-0.67680913 -1.9870925
-0.67720914 -1.9807634
-0.67760915 -1.9731842
-0.67800915 -1.9643575
-0.67840916 -1.9542915
-0.67880917 -1.9429893
-0.6792092 -1.9304618
-0.6796092 -1.9167128
-0.6800092 -1.9017553
-0.6804092 -1.8855944
-0.6808092 -1.8682449
-0.6812092 -1.8497126
-0.6816092 -1.830015
-0.6820092 -1.8091582
-0.6824092 -1.787162
-0.68280923 -1.7640334
-0.68320924 -1.7397944
-0.68360925 -1.7144526
-0.68400925 -1.6880318
-0.68440926 -1.6605407
-0.68480927 -1.632005
-0.6852093 -1.6024339
-0.6856093 -1.5718554
-0.6860093 -1.5402793
-0.6864093 -1.507735
-0.6868093 -1.4742335
-0.6872093 -1.439806
-0.6876093 -1.4044636
-0.6880093 -1.3682396
-0.6884093 -1.3311459
-0.68880934 -1.293217
-0.68920934 -1.2544653
-0.68960935 -1.2149273
-0.69000936 -1.1746159
-0.69040936 -1.1335686
-0.69080937 -1.0917991
-0.6912094 -1.0493463
-0.6916094 -1.0062243
-0.6920094 -0.9624666
-0.6924094 -0.9181076
-0.6928094 -0.873162
-0.6932094 -0.82767165
-0.6936094 -0.78165156
-0.6940094 -0.7351448
-0.69440943 -0.6881666
-0.69480944 -0.6407609
-0.69520944 -0.5929432
-0.69560945 -0.5447583
-0.69600946 -0.49622196
-0.69640946 -0.44737956
-0.6968095 -0.39824715
-0.6972095 -0.34887066
-0.6976095 -0.2992663
-0.6980095 -0.24948046
-0.6984095 -0.19952947
-0.6988095 -0.14946003
-0.6992095 -9.9288575e-2
-0.6996095 -4.9062036e-2
-0.7000095 1.2031237e-3
-0.70040953 5.1459894e-2
-0.70080954 0.10169179
-0.70120955 0.15185183
-0.70160955 0.20192356
-0.70200956 0.25186017
-0.70240957 0.30164525
-0.7028096 0.35123226
-0.7032096 0.4006049
-0.7036096 0.44971707
-0.7040096 0.4985526
-0.7044096 0.54706585
-0.7048096 0.59524083
-0.7052096 0.6430326
-0.7056096 0.69042546
-0.7060096 0.73737496
-0.70640963 0.78386587
-0.70680964 0.8298546
-0.70720965 0.87532616
-0.70760965 0.9202379
-0.70800966 0.96457523
-0.70840967 1.0082965
-0.7088097 1.0513875
-0.7092097 1.093808
-0.7096097 1.135544
-0.7100097 1.1765563
-0.7104097 1.2168318
-0.7108097 1.2563325
-0.7112097 1.2950457
-0.7116097 1.3329351
-0.7120097 1.3699881
-0.71240973 1.4061702
-0.71280974 1.4414697
-0.71320975 1.4758533
-0.71360976 1.5093099
-0.71400976 1.541813
-0.71440977 1.5733373
-0.7148098 1.6038727
-0.7152098 1.6333903
-0.7156098 1.6618806
-0.7160098 1.689317
-0.7164098 1.7156904
-0.7168098 1.7409762
-0.7172098 1.765166
-0.7176098 1.7882375
-0.7180098 1.8101827
-0.71840984 1.8309813
-0.71880984 1.8506265
-0.71920985 1.8690997
-0.71960986 1.8863952
-0.72000986 1.9024966
-0.72040987 1.9173986
-0.7208099 1.9310874
-0.7212099 1.9435583
-0.7216099 1.9547999
-0.7220099 1.9648083
-0.7224099 1.9735743
-0.7228099 1.981095
-0.7232099 1.9873631
-0.7236099 1.9923769
-0.72400993 1.9961315
-0.72440994 1.9986259
-0.72480994 1.9998574
-0.72520995 1.999826
-0.72560996 1.9985313
-0.72600996 1.9959741
-0.72641 1.9921566
-0.72681 1.9870801
-0.72721 1.9807494
-0.72761 1.9731665
-0.72801 1.9643384
-0.72841 1.9542682
-0.72881 1.9429651
-0.72921 1.9304332
-0.72961 1.9166838
-0.73001003 1.9017215
-0.73041004 1.8855605
-0.73081005 1.8682058
-0.73121005 1.8496739
-0.73161006 1.8299707
-0.73201007 1.8091148
-0.7324101 1.7871128
-0.7328101 1.7639855
-0.7332101 1.7397404
-0.7336101 1.7144002
-0.7340101 1.6879731
-0.7344101 1.660484
-0.7348101 1.6319417
-0.7352101 1.6023731
-0.7356101 1.5717877
-0.73601013 1.5402094
-0.73641014 1.5076631
-0.73681015 1.4741596
-0.73721015 1.43973
-0.73761016 1.4043858
-0.73801017 1.3681599
-0.7384102 1.3310642
-0.7388102 1.2931335
-0.7392102 1.2543802
-0.7396102 1.2148404
-0.7400102 1.1745274
-0.7404102 1.1334785
-0.7408102 1.0917075
-0.7412102 1.0492532
-0.7416102 1.0061299
-0.74201024 0.9623774
-0.74241024 0.9180105
-0.74281025 0.8730704
-0.74321026 0.82757205
-0.74361026 0.7815579
-0.74401027 0.7350431
-0.7444103 0.6880711
-0.7448103 0.6406573
-0.7452103 0.59284604
-0.7456103 0.54465306
-0.7460103 0.49612337
-0.7464103 0.44727296
-0.7468103 0.39814743
-0.7472103 0.34876296
-0.74761033 0.2991657
-0.74801034 0.24937195
-0.74841034 0.19942823
-0.74881035 0.14935096
-0.74921036 9.9186964e-2
-0.74961036 4.89527e-2
-0.7500104 -1.3048649e-3
-0.7504104 -5.156923e-2
-0.7508104 -0.10179339
-0.7512104 -0.15196088
-0.7516104 -0.20202479
-0.7520104 -0.25196865
-0.7524104 -0.30174583
-0.7528104 -0.3513399
-0.7532104 -0.4007046
-0.75361043 -0.44982365
-0.75401044 -0.49865112
-0.75441045 -0.54717106
-0.75481045 -0.595338
-0.75521046 -0.6431362
-0.75561047 -0.69052094
-0.7560105 -0.73747665
-0.7564105 -0.78395945
-0.7568105 -0.82995415
-0.7572105 -0.87541765
-0.7576105 -0.92033505
-0.7580105 -0.964671
-0.7584105 -1.008391
-0.7588105 -1.0514807
-0.7592105 -1.0938996
-0.75961053 -1.1356341
-0.76001054 -1.1766448
-0.76041055 -1.2169186
-0.76081055 -1.2564176
-0.76121056 -1.2951291
-0.76161057 -1.3330166
-0.7620106 -1.3700678
-0.7624106 -1.4062481
-0.7628106 -1.4415455
-0.7632106 -1.4759271
-0.7636106 -1.5093817
-0.7640106 -1.5418777
-0.7644106 -1.5734049
-0.7648106 -1.6039335
-0.7652106 -1.6334534
-0.76561064 -1.6619372
-0.76601064 -1.6893755
-0.76641065 -1.7157427
-0.76681066 -1.74103
-0.76721066 -1.765214
-0.76761067 -1.7882864
-0.7680107 -1.810226
-0.7684107 -1.8310252
-0.7688107 -1.850665
-0.7692107 -1.8691386
-0.7696107 -1.886429
-0.7700107 -1.9025303
-0.7704107 -1.9174275
-0.7708107 -1.9311159
-0.77121073 -1.9435823
-0.77161074 -1.954823
-0.77201074 -1.9648273
-0.77241075 -1.973592
-0.77281076 -1.9811089
-0.77321076 -1.9873754
-0.7736108 -1.9923857
-0.7740108 -1.9961383
-0.7744108 -1.9986296
-0.7748108 -1.9998587
-0.7752108 -1.9998245
-0.7756108 -1.9985272
-0.7760108 -1.9959676
-0.7764108 -1.9921468
-0.7768108 -1.9870685
-0.77721083 -1.9807342
-0.77761084 -1.9731498
-0.77801085 -1.9643178
-0.77841085 -1.9542465
-0.77881086 -1.9429393
-0.77921087 -1.9304066
-0.7796109 -1.9166526
-0.7800109 -1.9016876
-0.7804109 -1.885524
-0.7808109 -1.8681668
-0.7812109 -1.8496323
-0.7816109 -1.8299266
-0.7820109 -1.8090682
-0.7824109 -1.7870637
-0.7828109 -1.763934
-0.78321093 -1.7396865
-0.78361094 -1.7143439
-0.78401095 -1.6879145
-0.78441095 -1.660423
-0.78481096 -1.6318785
-0.78521097 -1.6023077
-0.785611 -1.5717201
-0.786011 -1.5401446
-0.786411 -1.5075914
-0.786811 -1.4740908
-0.787211 -1.4396541
-0.787611 -1.4043133
-0.788011 -1.3680801
-0.788411 -1.3309883
-0.788811 -1.29305
-0.78921103 -1.254301
-0.78961104 -1.2147536
-0.79001105 -1.174445
-0.79041106 -1.1333884
-0.79081106 -1.0916222
-0.79121107 -1.0491601
-0.7916111 -1.0060419
-0.7920111 -0.9622815
-0.7924111 -0.91792005
-0.7928111 -0.872972
-0.7932111 -0.8274794
-0.7936111 -0.78145725
-0.7940111 -0.73494846
-0.7944111 -0.6879684
-0.7948111 -0.6405609
-0.79521114 -0.5927416
-0.79561114 -0.5445552
-0.79601115 -0.49601743
-0.79641116 -0.4471738
-0.79681116 -0.39804026
-0.79721117 -0.3486628
-0.7976112 -0.29905757
-0.7980112 -0.24927099
-0.7984112 -0.1993194
-0.7988112 -0.14924951
-0.7992112 -9.9077724e-2
-0.7996112 -4.8850987e-2
-0.8000112 1.4142354e-3
-0.8004112 5.1670935e-2
-0.80081123 0.10190263
-0.80121124 0.15206233
-0.80161124 0.2021336
-0.80201125 0.25207716
-0.80241126 0.30185392
-0.80281126 0.35144758
-0.8032113 0.40081176
-0.8036113 0.44993022
-0.8040113 0.49875703
-0.8044113 0.5472762
-0.8048113 0.5954424
-0.8052113 0.64323974
-0.8056113 0.6906236
-0.8060113 0.73757833
-0.8064113 0.7840601
-0.80681133 0.8300536
-0.80721134 0.87551594
-0.80761135 0.92043215
-0.80801135 0.9647601
-0.80841136 1.0084854
-0.80881137 1.0515672
-0.8092114 1.0939912
-0.8096114 1.1357177
-0.8100114 1.1767333
-0.8104114 1.2169993
-0.8108114 1.2565027
-0.8112114 1.2952065
-0.8116114 1.3330982
-0.8120114 1.370142
-0.8124114 1.4063258
-0.81281143 1.441616
-0.81321144 1.476001
-0.81361145 1.5094484
-0.81401145 1.5419475
-0.81441146 1.5734677
-0.81481147 1.6039988
-0.8152115 1.6335121
-0.8156115 1.661998
-0.8160115 1.68943
-0.8164115 1.7157989
-0.8168115 1.74108
-0.8172115 1.7652653
-0.8176115 1.788332
-0.8180115 1.8102725
-0.8184115 1.8310661
-0.81881154 1.8507065
-0.81921154 1.8691748
-0.81961155 1.8864653
-0.82001156 1.9025617
-0.82041156 1.9174587
-0.82081157 1.9311423
-0.8212116 1.9436082
-0.8216116 1.9548445
-0.8220116 1.9648478
-0.8224116 1.9736085
-0.8228116 1.9811239
-0.8232116 1.9873868
-0.8236116 1.9923953
-0.8240116 1.9961451
-0.82441163 1.9986336
-0.82481164 1.99986
-0.82521164 1.9998231
-0.82561165 1.9985229
-0.82601166 1.9959607
-0.82641166 1.9921372
-0.8268117 1.9870561
-0.8272117 1.9807191
-0.8276117 1.9731319
-0.8280117 1.9642973
-0.8284117 1.9542233
-0.8288117 1.9429133
-0.8292117 1.930378
-0.8296117 1.9166213
-0.8300117 1.9016562
-0.83041173 1.8854876
-0.83081174 1.8681304
-0.83121175 1.8495907
-0.83161175 1.8298856
-0.83201176 1.8090215
-0.83241177 1.7870181
-0.8328118 1.7638824
-0.8332118 1.7396363
-0.8336118 1.7142875
-0.8340118 1.6878599
-0.8344118 1.660362
-0.8348118 1.6318196
-0.8352118 1.6022421
-0.8356118 1.5716572
-0.8360118 1.5400748
-0.83641183 1.5075245
-0.83681184 1.4740169
-0.83721185 1.4395834
-0.83761185 1.4042355
-0.83801186 1.3680059
-0.83841187 1.3309066
-0.8388119 1.2929724
-0.8392119 1.2542157
-0.8396119 1.2146728
-0.8400119 1.1743565
-0.8404119 1.1333046
-0.8408119 1.0915306
-0.8412119 1.0490736
-0.8416119 1.0059474
-0.8420119 0.96219236
-0.84241194 0.9178229
-0.84281194 0.8728805
-0.84321195 0.8273799
-0.84361196 0.7813636
-0.84401196 0.7348468
-0.84441197 0.6878728
-0.844812 0.6404573
-0.845212 0.5926444
-0.845612 0.5444499
-0.846012 0.49591148
-0.846412 0.4470672
-0.846812 0.39793307
-0.847212 0.3485551
-0.847612 0.29894942
-0.84801203 0.24916248
-0.84841204 0.19921057
-0.84881204 0.14914043
-0.84921205 9.896849e-2
-0.84961206 4.874165e-2
-0.85001206 -1.5236059e-3
-0.8504121 -5.1780272e-2
-0.8508121 -0.10201185
-0.8512121 -0.15217139
-0.8516121 -0.2022424
-0.8520121 -0.25217807
-0.8524121 -0.30196205
-0.8528121 -0.35154775
-0.8532121 -0.4009189
-0.8536121 -0.45002934
-0.85401213 -0.49886295
-0.85441214 -0.54737407
-0.85481215 -0.5955468
-0.85521215 -0.64333606
-0.85561216 -0.6907262
-0.85601217 -0.73767287
-0.8564122 -0.78416073
-0.8568122 -0.8301462
-0.8572122 -0.8756143
-0.8576122 -0.92052245
-0.8580122 -0.9648559
-0.8584122 -1.0085733
-0.8588122 -1.0516602
-0.8592122 -1.0940763
-0.8596122 -1.1358078
-0.86001223 -1.1768155
-0.86041224 -1.2170861
-0.86081225 -1.2565819
-0.86121225 -1.2952899
-0.86161226 -1.333174
-0.86201227 -1.3702216
-0.8624123 -1.4063982
-0.8628123 -1.4416919
-0.8632123 -1.4760696
-0.8636123 -1.5095202
-0.8640123 -1.5420122
-0.8644123 -1.5735352
-0.8648123 -1.6040595
-0.8652123 -1.6335752
-0.8656123 -1.6620547
-0.86601233 -1.6894885
-0.86641234 -1.7158512
-0.86681235 -1.7411339
-0.86721236 -1.7653131
-0.86761236 -1.788381
-0.86801237 -1.810319
-0.8684124 -1.8311101
-0.8688124 -1.850748
-0.8692124 -1.8692137
-0.8696124 -1.8865017
-0.8700124 -1.9025954
-0.8704124 -1.9174898
-0.8708124 -1.9311707
-0.8712124 -1.9436339
-0.8716124 -1.9548676
-0.87201244 -1.9648682
-0.87241244 -1.9736263
-0.87281245 -1.9811388
-0.87321246 -1.9873991
-0.87361246 -1.9924048
-0.8740125 -1.9961514
-0.8744125 -1.9986377
-0.8748125 -1.9998612
-0.8752125 -1.9998217
-0.8756125 -1.9985191
-0.8760125 -1.9959537
-0.8764125 -1.9921283
-0.8768125 -1.9870437
-0.8772125 -1.9807049
-0.87761253 -1.973114
-0.87801254 -1.9642781
-0.87841254 -1.9542
-0.87881255 -1.9428892
-0.87921256 -1.9303493
-0.87961257 -1.9165922
-0.8800126 -1.9016223
-0.8804126 -1.8854536
-0.8808126 -1.8680915
-0.8812126 -1.849552
-0.8816126 -1.8298414
-0.8820126 -1.8089781
-0.8824126 -1.786969
-0.8828126 -1.7638345
-0.8832126 -1.7395823
-0.88361263 -1.7142351
-0.88401264 -1.6878012
-0.88441265 -1.6603053
-0.88481265 -1.6317564
-0.88521266 -1.6021813
-0.88561267 -1.5715896
-0.8860127 -1.5400099
-0.8864127 -1.5074526
-0.8868127 -1.4739481
-0.8872127 -1.4395076
-0.8876127 -1.404163
-0.8880127 -1.3679261
-0.8884127 -1.3308307
-0.8888127 -1.292889
-0.8892127 -1.2541305
-0.88961273 -1.2145859
-0.89001274 -1.174268
-0.89041275 -1.1332145
-0.89081275 -1.091439
-0.89121276 -1.0489805
-0.89161277 -1.0058528
-0.8920128 -0.96209645
-0.8924128 -0.91772574
-0.8928128 -0.8727821
-0.8932128 -0.8272803
-0.8936128 -0.78126293
-0.8940128 -0.734745
-0.8944128 -0.6877701
-0.8948128 -0.6403537
-0.8952128 -0.59253997
-0.89561284 -0.54434466
-0.89601284 -0.49581292
-0.89641285 -0.4469606
-0.89681286 -0.39783338
-0.89721286 -0.34844738
-0.89761287 -0.29884884
-0.8980129 -0.24905396
-0.8984129 -0.19910935
-0.8988129 -0.14903137
-0.8992129 -9.886687e-2
-0.8996129 -4.863231e-2
-0.9000129 1.6253471e-3
-0.9004129 5.1889606e-2
-0.9008129 0.10211346
-0.90121293 0.15228043
-0.90161294 0.20234363
-0.90201294 0.25228658
-0.90241295 0.30206263
-0.90281296 0.35165542
-0.90321296 0.40101856
-0.903613 0.45013592
-0.904013 0.49896148
-0.904413 0.5474793
-0.904813 0.59564394
-0.905213 0.64343965
-0.905613 0.6908217
-0.906013 0.73777455
-0.906413 0.7842543
-0.906813 0.83024573
-0.90721303 0.8757058
-0.90761304 0.92061955
-0.90801305 0.9649451
-0.90841305 1.0086677
-0.90881306 1.0517467
-0.90921307 1.0941678
-0.9096131 1.1358916
-0.9100131 1.176904
-0.9104131 1.2171669
-0.9108131 1.256667
-0.9112131 1.2953732
-0.9116131 1.3332555
-0.9120131 1.3703012
-0.9124131 1.4064759
-0.9128131 1.4417677
-0.91321313 1.4761434
-0.91361314 1.5095919
-0.91401315 1.542082
-0.91441315 1.5736027
-0.91481316 1.6041248
-0.91521317 1.6336383
-0.9156132 1.6621155
-0.9160132 1.6895471
-0.9164132 1.7159073
-0.9168132 1.7411877
-0.9172132 1.7653645
-0.9176132 1.7884299
-0.9180132 1.8103621
-0.9184132 1.8311541
-0.9188132 1.8507864
-0.91921324 1.8692527
-0.91961324 1.8865354
-0.92001325 1.9026291
-0.92041326 1.9175186
-0.92081326 1.9311992
-0.92121327 1.9436579
-0.9216133 1.9548907
-0.9220133 1.9648871
-0.9224133 1.9736439
-0.9228133 1.9811528
-0.9232133 1.9874114
-0.9236133 1.9924138
-0.9240133 1.9961582
-0.9244133 1.9986415
-0.92481333 1.9998626
-0.92521334 1.9998202
-0.92561334 1.9985148
-0.92601335 1.9959472
-0.92641336 1.9921185
-0.92681336 1.9870322
-0.9272134 1.9806898
-0.9276134 1.9730974
-0.9280134 1.9642575
-0.9284134 1.9541783
-0.9288134 1.9428632
-0.9292134 1.9303228
-0.9296134 1.9165609
-0.9300134 1.9015907
-0.9304134 1.8854171
-0.93081343 1.8680551
-0.93121344 1.8495104
-0.93161345 1.8298004
-0.93201345 1.8089315
-0.93241346 1.7869233
-0.93281347 1.763783
-0.9332135 1.7395283
-0.9336135 1.7141788
-0.9340135 1.6877425
-0.9344135 1.6602443
-0.9348135 1.6316931
-0.9352135 1.6021158
-0.9356135 1.5715219
-0.9360135 1.5399401
-0.9364135 1.5073807
-0.93681353 1.4738742
-0.93721354 1.4394317
-0.93761355 1.4040852
-0.93801355 1.3678463
-0.93841356 1.330749
-0.93881357 1.2928056
-0.9392136 1.2540513
-0.9396136 1.214499
-0.9400136 1.1741856
-0.9404136 1.1331244
-0.9408136 1.0913537
-0.9412136 1.0488873
-0.9416136 1.0057648
-0.9420136 0.96200055
-0.9424136 0.9176353
-0.94281363 0.8726837
-0.94321364 0.82718766
-0.94361365 0.78116226
-0.94401366 0.73465043
-0.94441366 0.6876674
-0.94481367 0.6402573
-0.9452137 0.5924355
-0.9456137 0.5442468
-0.9460137 0.49570695
-0.9464137 0.44686142
-0.9468137 0.39772618
-0.9472137 0.3483472
-0.9476137 0.29874068
-0.9480137 0.248953
-0.9484137 0.19900051
-0.94881374 0.14892991
-0.94921374 9.875764e-2
-0.94961375 4.8530597e-2
-0.95001376 -1.7347175e-3
-0.95041376 -5.199131e-2
-0.9508138 -0.10222269
-0.9512138 -0.15238188
-0.9516138 -0.20245244
-0.9520138 -0.25238752
-0.9524138 -0.30217075
-0.9528138 -0.35175556
-0.9532138 -0.40112573
-0.9536138 -0.45023504
-0.9540138 -0.4990674
-0.95441383 -0.54757714
-0.95481384 -0.5957483
-0.95521384 -0.6435432
-0.95561385 -0.69092435
-0.95601386 -0.7378762
-0.95641387 -0.7843549
-0.9568139 -0.8303452
-0.9572139 -0.87580407
-0.9576139 -0.92071664
-0.9580139 -0.96504086
-0.9584139 -1.0087622
-0.9588139 -1.0518397
-0.9592139 -1.0942594
-0.9596139 -1.1359816
-0.9600139 -1.1769924
-0.96041393 -1.2172537
-0.96081394 -1.2567521
-0.96121395 -1.2954508
-0.96161395 -1.333337
-0.96201396 -1.3703754
-0.96241397 -1.4065537
-0.962814 -1.4418381
-0.963214 -1.4762172
-0.963614 -1.5096587
-0.964014 -1.5421516
-0.964414 -1.5736655
-0.964814 -1.6041901
-0.965214 -1.633697
-0.965614 -1.6621763
-0.966014 -1.6896015
-0.96641403 -1.7159635
-0.96681404 -1.7412378
-0.96721405 -1.7654159
-0.96761405 -1.7884754
-0.96801406 -1.8104086
-0.96841407 -1.8311951
-0.9688141 -1.8508279
-0.9692141 -1.8692888
-0.9696141 -1.8865718
-0.9700141 -1.9026605
-0.9704141 -1.9175497
-0.9708141 -1.9312257
-0.9712141 -1.9436836
-0.9716141 -1.9549122
-0.9720141 -1.9649075
-0.97241414 -1.9736603
-0.97281414 -1.9811678
-0.97321415 -1.9874227
-0.97361416 -1.9924232
-0.97401416 -1.9961646
-0.97441417 -1.9986454
-0.9748142 -1.9998637
-0.9752142 -1.9998188
-0.9756142 -1.9985108
-0.9760142 -1.9959403
-0.9764142 -1.9921095
-0.9768142 -1.9870197
-0.9772142 -1.9806746
-0.9776142 -1.9730796
-0.97801423 -1.964237
-0.97841424 -1.9541551
-0.97881424 -1.9428372
-0.97921425 -1.9302942
-0.97961426 -1.9165297
-0.98001426 -1.9015568
-0.9804143 -1.8853806
-0.9808143 -1.868016
-0.9812143 -1.8494687
-0.9816143 -1.8297563
-0.9820143 -1.8088849
-0.9824143 -1.7868742
-0.9828143 -1.7637314
-0.9832143 -1.7394781
-0.9836143 -1.7141224
-0.98401433 -1.6876879
-0.98441434 -1.6601833
-0.98481435 -1.6316344
-0.98521435 -1.6020503
-0.98561436 -1.5714589
-0.98601437 -1.5398703
-0.9864144 -1.5073138
-0.9868144 -1.4738003
-0.9872144 -1.439361
-0.9876144 -1.4040072
-0.9880144 -1.3677721
-0.9884144 -1.3306674
-0.9888144 -1.292728
-0.9892144 -1.2539661
-0.9896144 -1.2144182
-0.99001443 -1.1740971
-0.99041444 -1.1330405
-0.99081445 -1.0912621
-0.99121445 -1.0488007
-0.99161446 -1.0056703
-0.99201447 -0.9619114
-0.9924145 -0.91753817
-0.9928145 -0.87259215
-0.9932145 -0.8270881
-0.9936145 -0.78106856
-0.9940145 -0.7345487
-0.9944145 -0.6875719
-0.9948145 -0.6401537
-0.9952145 -0.5923383
-0.9956145 -0.54414153
-0.99601454 -0.4956084
-0.99641454 -0.4467548
-0.99681455 -0.39762646
-0.99721456 -0.3482395
-0.99761456 -0.29864007
-0.99801457 -0.24884449
-0.9984146 -0.19889928
-0.9988146 -0.14882085
-0.9992146 -9.86484e-2
-0.9996146 -4.842126e-2
-set terminal latex
-set output "sine.tex"
-set nokey
-plot [0.0:1.0] "sine.plt" with lines
-0.0 -1.0
-8.0e-3 -1.0
-1.6e-2 -1.0
-2.4e-2 -1.0
-3.2e-2 -1.0
-4.0000003e-2 -1.0
-4.8000004e-2 -1.0
-5.6000005e-2 -1.0
-6.4e-2 -1.0
-7.2000004e-2 -1.0
-8.0000006e-2 -1.0
-8.800001e-2 -1.0
-9.600001e-2 -1.0
-0.10400001 -1.0
-0.11200001 -1.0
-0.12000001 -1.0
-0.128 -1.0
-0.136 -1.0
-0.14400001 -1.0
-0.15200001 -1.0
-0.16000001 -1.0
-0.16800001 -1.0
-0.17600001 -1.0
-0.18400002 -1.0
-0.19200002 -1.0
-0.20000002 -1.0
-0.20800002 -1.0
-0.21600002 -1.0
-0.22400002 -1.0
-0.23200002 -1.0
-0.24000002 -1.0
-0.24800003 -1.0
-0.256 -1.0
-0.264 -1.0
-0.27199998 -1.0
-0.27999997 -1.0
-0.28799996 -1.0
-0.29599994 -1.0
-0.30399993 -1.0
-0.31199992 -1.0
-0.3199999 -1.0
-0.3279999 -1.0
-0.33599988 -1.0
-0.34399986 -1.0
-0.35199985 -1.0
-0.35999984 -1.0
-0.36799982 -1.0
-0.3759998 -1.0
-0.3839998 -1.0
-0.39199978 -1.0
-0.39999977 -1.0
-0.40799975 -1.0
-0.41599974 -1.0
-0.42399973 -1.0
-0.4319997 -1.0
-0.4399997 -1.0
-0.4479997 -1.0
-0.45599967 -1.0
-0.46399966 -1.0
-0.47199965 -1.0
-0.47999963 -1.0
-0.48799962 -1.0
-0.4959996 -1.0
-0.5039996 -1.0
-0.5119996 -1.0
-0.5199996 -1.0
-0.52799964 -1.0
-0.53599966 -1.0
-0.5439997 -1.0
-0.5519997 -1.0
-0.5599997 -1.0
-0.5679997 -1.0
-0.57599974 -1.0
-0.58399975 -1.0
-0.59199977 -1.0
-0.5999998 -1.0
-0.6079998 -1.0
-0.6159998 -1.0
-0.62399983 -1.0
-0.63199985 -1.0
-0.63999987 -1.0
-0.6479999 -1.0
-0.6559999 -1.0
-0.6639999 -1.0
-0.67199993 -1.0
-0.67999995 -1.0
-0.68799996 -1.0
-0.696 -1.0
-0.704 -1.0
-0.712 -1.0
-0.72 -1.0
-0.72800004 -1.0
-0.73600006 -1.0
-0.7440001 -1.0
-0.7520001 -1.0
-0.7600001 -1.0
-0.7680001 -1.0
-0.77600014 -1.0
-0.78400016 -1.0
-0.7920002 -1.0
-0.8000002 -1.0
-0.8080002 -1.0
-0.8160002 -1.0
-0.82400024 -1.0
-0.83200026 -1.0
-0.8400003 -1.0
-0.8480003 -1.0
-0.8560003 -1.0
-0.8640003 -1.0
-0.87200034 -1.0
-0.88000035 -1.0
-0.88800037 -1.0
-0.8960004 -1.0
-0.9040004 -1.0
-0.9120004 -1.0
-0.92000043 -1.0
-0.92800045 -1.0
-0.93600047 -1.0
-0.9440005 -1.0
-0.9520005 -1.0
-0.9600005 -1.0
-0.96800053 -1.0
-0.97600055 -1.0
-0.98400056 -1.0
-0.9920006 -1.0
-1.0000006 -0.9999851
-1.0080006 -0.7999847
-1.0160006 -0.5999843
-1.0240006 -0.39998388
-1.0320007 -0.19998348
-1.0400007 1.692772e-5
-1.0480007 0.20001733
-1.0560007 0.40001774
-1.0640007 0.60001814
-1.0720007 0.80001855
-1.0800008 1.0000191
-1.0880008 1.2000194
-1.0960008 1.4000196
-1.1040008 1.6000202
-1.1120008 1.8000207
-1.1200008 2.000021
-1.1280009 2.2000213
-1.1360009 2.4000218
-1.1440009 2.6000223
-1.1520009 2.8000226
-1.1600009 3.000023
-1.1680009 3.2000237
-1.176001 3.400024
-1.184001 3.6000242
-1.192001 3.8000245
-1.200001 4.0000024
-1.208001 4.0199146
-1.216001 4.0393105
-1.224001 4.058002
-1.2320011 4.075812
-1.2400011 4.092575
-1.2480011 4.1081386
-1.2560011 4.122365
-1.2640011 4.1351323
-1.2720011 4.1463346
-1.2800012 4.155884
-1.2880012 4.16371
-1.2960012 4.1697617
-1.3040012 4.174006
-1.3120012 4.1764283
-1.3200012 4.177034
-1.3280013 4.175845
-1.3360013 4.1729026
-1.3440013 4.168264
-1.3520013 4.1620026
-1.3600013 4.154207
-1.3680013 4.144981
-1.3760014 4.13444
-1.3840014 4.1227107
-1.3920014 4.1099305
-1.4000014 4.0962453
-1.4080014 4.0818067
-1.4160014 4.066773
-1.4240015 4.0513043
-1.4320015 4.035564
-1.4400015 4.0197153
-1.4480015 4.003919
-1.4560015 3.9883342
-1.4640015 3.9731145
-1.4720016 3.9584074
-1.4800016 3.9443526
-1.4880016 3.9310822
-1.4960016 3.9187174
-1.5040016 3.9073682
-1.5120016 3.8971329
-1.5200016 3.8880968
-1.5280017 3.8803325
-1.5360017 3.8738976
-1.5440017 3.8688364
-1.5520017 3.8651776
-1.5600017 3.862936
-1.5680017 3.8621116
-1.5760018 3.8626904
-1.5840018 3.8646445
-1.5920018 3.8679318
-1.6000018 3.8724985
-1.6080018 3.8782783
-1.6160018 3.8851929
-1.6240019 3.8931556
-1.6320019 3.9020686
-1.6400019 3.9118276
-1.6480019 3.9223208
-1.6560019 3.9334302
-1.664002 3.9450345
-1.672002 3.9570084
-1.680002 3.969226
-1.688002 3.9815598
-1.696002 3.9938836
-1.704002 4.0060735
-1.712002 4.0180087
-1.720002 4.029573
-1.7280021 4.0406556
-1.7360021 4.0511527
-1.7440021 4.060967
-1.7520021 4.070011
-1.7600021 4.078206
-1.7680022 4.085482
-1.7760022 4.091781
-1.7840022 4.097055
-1.7920022 4.101267
-1.8000022 4.104391
-1.8080022 4.106413
-1.8160022 4.1073303
-1.8240023 4.1071506
-1.8320023 4.105894
-1.8400023 4.1035895
-1.8480023 4.100278
-1.8560023 4.0960073
-1.8640023 4.090837
-1.8720024 4.0848327
-1.8800024 4.0780687
-1.8880024 4.0706253
-1.8960024 4.0625877
-1.9040024 4.054047
-1.9120024 4.045097
-1.9200025 4.0358343
-1.9280025 4.026357
-1.9360025 4.016765
-1.9440025 4.0071564
-1.9520025 3.9976277
-1.9600025 3.988274
-1.9680026 3.9791875
-1.9760026 3.9704547
-1.9840026 3.9621587
-1.9920026 3.9543757
-2.0000026 3.947176
-2.0080025 3.9406233
-2.0160024 3.934773
-2.0240023 3.9296732
-2.0320022 3.9253635
-2.040002 3.9218745
-2.048002 3.9192286
-2.056002 3.9174385
-2.0640018 3.9165092
-2.0720017 3.9164367
-2.0800016 3.9172072
-2.0880015 3.9188004
-2.0960014 3.921187
-2.1040013 3.9243298
-2.1120012 3.928186
-2.120001 3.9327044
-2.128001 3.93783
-2.1360009 3.9435005
-2.1440008 3.9496508
-2.1520007 3.956211
-2.1600006 3.9631085
-2.1680005 3.9702682
-2.1760004 3.9776144
-2.1840003 3.9850693
-2.1920002 3.9925566
-2.2 4.0
-2.208 4.007325
-2.2159998 4.0144606
-2.2239997 4.0213366
-2.2319996 4.0278883
-2.2399995 4.034055
-2.2479994 4.0397806
-2.2559993 4.0450144
-2.2639992 4.049711
-2.2719991 4.0538325
-2.279999 4.0573454
-2.287999 4.060225
-2.2959988 4.0624514
-2.3039987 4.0640125
-2.3119986 4.064904
-2.3199985 4.0651274
-2.3279984 4.06469
-2.3359983 4.0636077
-2.3439982 4.0619016
-2.351998 4.0595984
-2.359998 4.0567307
-2.367998 4.053337
-2.3759978 4.0494595
-2.3839977 4.045145
-2.3919976 4.0404434
-2.3999975 4.035409
-2.4079974 4.030098
-2.4159973 4.024567
-2.4239972 4.018877
-2.431997 4.0130863
-2.439997 4.007256
-2.4479969 4.0014453
-2.4559968 3.9957118
-2.4639966 3.9901128
-2.4719965 3.984702
-2.4799964 3.9795318
-2.4879963 3.97465
-2.4959962 3.9701009
-2.5039961 3.9659252
-2.511996 3.9621596
-2.519996 3.9588351
-2.5279958 3.9559789
-2.5359957 3.953611
-2.5439956 3.9517488
-2.5519955 3.9504023
-2.5599954 3.9495773
-2.5679953 3.9492736
-2.5759952 3.9494863
-2.583995 3.9502048
-2.591995 3.9514136
-2.599995 3.953093
-2.6079948 3.9552188
-2.6159947 3.9577622
-2.6239946 3.9606915
-2.6319945 3.9639702
-2.6399944 3.9675598
-2.6479943 3.9714198
-2.6559942 3.9755063
-2.663994 3.979775
-2.671994 3.98418
-2.6799939 3.9886742
-2.6879938 3.9932117
-2.6959937 3.997745
-2.7039936 4.0022297
-2.7119935 4.0066204
-2.7199934 4.0108747
-2.7279932 4.014952
-2.7359931 4.0188136
-2.743993 4.0224247
-2.751993 4.025752
-2.7599928 4.028767
-2.7679927 4.031444
-2.7759926 4.033762
-2.7839925 4.0357027
-2.7919924 4.0372524
-2.7999923 4.038402
-2.8079922 4.0391464
-2.815992 4.0394845
-2.823992 4.0394187
-2.831992 4.038957
-2.8399918 4.03811
-2.8479917 4.036892
-2.8559916 4.035321
-2.8639915 4.0334196
-2.8719914 4.0312114
-2.8799913 4.0287237
-2.8879912 4.0259857
-2.895991 4.0230293
-2.903991 4.0198874
-2.911991 4.016595
-2.9199908 4.013188
-2.9279907 4.0097017
-2.9359906 4.0061727
-2.9439905 4.002638
-2.9519904 3.9991326
-2.9599903 3.9956918
-2.9679902 3.9923487
-2.97599 3.9891357
-2.98399 3.9860835
-2.9919899 3.98322
-2.9999897 3.9805713
-3.0079896 3.9781604
-3.0159895 3.9760075
-3.0239894 3.974131
-3.0319893 3.9725451
-3.0399892 3.971261
-3.0479891 3.9702873
-3.055989 3.9696283
-3.063989 3.969286
-3.0719888 3.9692583
-3.0799887 3.9695415
-3.0879886 3.970127
-3.0959885 3.9710045
-3.1039884 3.9721603
-3.1119883 3.9735785
-3.1199882 3.9752407
-3.127988 3.9771256
-3.135988 3.9792113
-3.143988 3.981474
-3.1519878 3.9838867
-3.1599877 3.9864244
-3.1679876 3.989058
-3.1759875 3.9917603
-3.1839874 3.994503
-3.1919873 3.9972572
-3.1999872 3.9999957
-3.207987 4.002691
-3.215987 4.005316
-3.2239869 4.0078454
-3.2319868 4.010256
-3.2399867 4.0125246
-3.2479866 4.0146313
-3.2559865 4.016557
-3.2639863 4.0182853
-3.2719862 4.0198016
-3.2799861 4.0210943
-3.287986 4.022154
-3.295986 4.0229735
-3.3039858 4.023548
-3.3119857 4.0238767
-3.3199856 4.023959
-3.3279855 4.0237985
-3.3359854 4.023401
-3.3439853 4.0227737
-3.3519852 4.0219264
-3.359985 4.020872
-3.367985 4.0196238
-3.375985 4.0181975
-3.3839848 4.0166106
-3.3919847 4.014881
-3.3999846 4.0130296
-3.4079845 4.0110755
-3.4159844 4.0090413
-3.4239843 4.006948
-3.4319842 4.0048175
-3.439984 4.0026727
-3.447984 4.000535
-3.4559839 3.998426
-3.4639838 3.996366
-3.4719837 3.9943752
-3.4799836 3.9924731
-3.4879835 3.9906769
-3.4959834 3.9890032
-3.5039833 3.9874668
-3.5119832 3.9860816
-3.519983 3.984858
-3.527983 3.983807
-3.5359828 3.982936
-3.5439827 3.9822502
-3.5519826 3.9817548
-3.5599825 3.981451
-3.5679824 3.981339
-3.5759823 3.9814167
-3.5839822 3.9816809
-3.5919821 3.9821253
-3.599982 3.9827428
-3.607982 3.9835248
-3.6159818 3.9844599
-3.6239817 3.9855375
-3.6319816 3.9867435
-3.6399815 3.9880638
-3.6479814 3.9894834
-3.6559813 3.9909868
-3.6639812 3.992557
-3.671981 3.9941773
-3.679981 3.995831
-3.687981 3.9975
-3.6959808 3.999168
-3.7039807 4.000818
-3.7119806 4.002433
-3.7199805 4.0039983
-3.7279804 4.0054984
-3.7359803 4.006919
-3.7439802 4.0082474
-3.75198 4.009472
-3.75998 4.010581
-3.7679799 4.011566
-3.7759798 4.012419
-3.7839797 4.013133
-3.7919796 4.013704
-3.7999794 4.014127
-3.8079793 4.014401
-3.8159792 4.0145254
-3.8239791 4.0145016
-3.831979 4.014332
-3.839979 4.0140204
-3.8479788 4.0135727
-3.8559787 4.0129952
-3.8639786 4.0122957
-3.8719785 4.0114837
-3.8799784 4.010568
-3.8879783 4.009561
-3.8959782 4.008474
-3.903978 4.007318
-3.911978 4.006107
-3.919978 4.0048537
-3.9279778 4.003571
-3.9359777 4.002273
-3.9439776 4.0009727
-3.9519775 3.999683
-3.9599774 3.998417
-3.9679773 3.9971871
-3.9759772 3.996005
-3.983977 3.994882
-3.991977 3.9938288
-3.9999769 3.992854
-4.007977 3.9919667
-4.015977 3.9911747
-4.023977 3.9904842
-4.0319767 3.9899006
-4.0399766 3.989428
-4.0479765 3.98907
-4.0559764 3.9888272
-4.0639763 3.9887009
-4.071976 3.9886909
-4.079976 3.9887948
-4.087976 3.9890099
-4.095976 3.9893327
-4.103976 3.9897575
-4.1119757 3.9902792
-4.1199756 3.9908905
-4.1279755 3.9915838
-4.1359754 3.992351
-4.1439753 3.9931831
-4.151975 3.994071
-4.159975 3.9950042
-4.167975 3.995973
-4.175975 3.9969673
-4.1839747 3.9979763
-4.1919746 3.9989896
-4.1999745 3.9999967
-4.2079744 3.8670897
-4.2159743 3.733758
-4.223974 3.6004262
-4.231974 3.467095
-4.239974 3.3337631
-4.247974 3.2004313
-4.255974 3.0671
-4.2639737 2.9337683
-4.2719736 2.8004367
-4.2799735 2.6671052
-4.2879734 2.5337734
-4.2959733 2.400442
-4.303973 2.2671103
-4.311973 2.1337786
-4.319973 2.000447
-4.327973 1.8671155
-4.335973 1.7337837
-4.3439727 1.6004522
-4.3519726 1.4671206
-4.3599725 1.3337889
-4.3679724 1.2004573
-4.3759723 1.0671258
-4.383972 0.933794
-4.391972 0.8004625
-4.399972 0.66713095
-4.407972 0.5337994
-4.4159718 0.40046763
-4.4239717 0.2671361
-4.4319715 0.13380456
-4.4399714 4.7278404e-4
-4.4479713 -0.13285875
-4.4559712 -0.26619053
-4.463971 -0.39952183
-4.471971 -0.5328536
-4.479971 -0.6661854
-4.487971 -0.7995167
-4.4959707 -0.93284845
-4.5039706 -1.0130347
-4.5119705 -1.0388085
-4.5199704 -1.0637013
-4.5279703 -1.0874522
-4.53597 -1.1098169
-4.54397 -1.1305714
-4.55197 -1.1495129
-4.55997 -1.1664628
-4.56797 -1.1812674
-4.5759697 -1.1937997
-4.5839696 -1.2039601
-4.5919695 -1.211677
-4.5999694 -1.2169073
-4.6079693 -1.2196363
-4.615969 -1.2198772
-4.623969 -1.217671
-4.631969 -1.2130848
-4.639969 -1.206211
-4.647969 -1.1971657
-4.6559687 -1.1860877
-4.6639686 -1.1731353
-4.6719685 -1.1584852
-4.6799684 -1.1423297
-4.6879683 -1.1248746
-4.695968 -1.1063366
-4.703968 -1.0869405
-4.711968 -1.0669167
-4.719968 -1.0464988
-4.7279677 -1.0259204
-4.7359676 -1.0054132
-4.7439675 -0.9852034
-4.7519674 -0.9655106
-4.7599673 -0.94654465
-4.767967 -0.92850345
-4.775967 -0.91157144
-4.783967 -0.89591736
-4.791967 -0.88169277
-4.799967 -0.86903095
-4.8079667 -0.8580451
-4.8159666 -0.84882826
-4.8239665 -0.8414518
-4.8319664 -0.83596575
-4.8399663 -0.83239794
-4.847966 -0.83075464
-4.855966 -0.8310205
-4.863966 -0.83315915
-4.871966 -0.83711433
-4.879966 -0.84281033
-4.8879657 -0.85015345
-4.8959656 -0.85903347
-4.9039655 -0.8693248
-4.9119654 -0.8808886
-4.9199653 -0.893574
-4.927965 -0.90722066
-4.935965 -0.92166007
-4.943965 -0.936718
-4.951965 -0.95221645
-4.9599648 -0.9679753
-4.9679646 -0.98381513
-4.9759645 -0.9995585
-4.9839644 -1.015032
-4.9919643 -1.0300686
-4.999964 -1.0445088
-5.007964 -1.0582025
-5.015964 -1.0710107
-5.023964 -1.0828063
-5.031964 -1.0934762
-5.0399637 -1.1029212
-5.0479636 -1.111058
-5.0559635 -1.1178188
-5.0639634 -1.1231527
-5.0719633 -1.1270251
-5.079963 -1.1294185
-5.087963 -1.1303322
-5.095963 -1.129782
-5.103963 -1.1277993
-5.111963 -1.1244311
-5.1199627 -1.1197392
-5.1279626 -1.1137987
-5.1359625 -1.1066976
-5.1439624 -1.0985346
-5.1519623 -1.0894194
-5.159962 -1.0794696
-5.167962 -1.0688103
-5.175962 -1.0575726
-5.183962 -1.0458912
-5.191962 -1.0339036
-5.1999617 -1.0217485
-5.2079616 -1.0095638
-5.2159615 -0.99748534
-5.2239614 -0.98564565
-5.2319613 -0.97417194
-5.239961 -0.96318537
-5.247961 -0.9527996
-5.255961 -0.94311935
-5.263961 -0.93424004
-5.2719607 -0.92624635
-5.2799606 -0.9192115
-5.2879605 -0.91319704
-5.2959604 -0.908252
-5.3039603 -0.9044126
-5.31196 -0.9017023
-5.31996 -0.90013146
-5.32796 -0.8996976
-5.33596 -0.90038586
-5.34396 -0.90216887
-5.3519597 -0.9050078
-5.3599596 -0.90885264
-5.3679595 -0.9136431
-5.3759594 -0.9193096
-5.3839593 -0.9257737
-5.391959 -0.93294984
-5.399959 -0.9407457
-5.407959 -0.94906396
-5.415959 -0.9578031
-5.423959 -0.9668585
-5.4319587 -0.9761243
-5.4399586 -0.98549366
-5.4479585 -0.9948607
-5.4559584 -1.0041215
-5.4639583 -1.013175
-5.471958 -1.021924
-5.479958 -1.0302769
-5.487958 -1.0381477
-5.495958 -1.0454572
-5.5039577 -1.0521342
-5.5119576 -1.0581155
-5.5199575 -1.0633465
-5.5279574 -1.0677826
-5.5359573 -1.0713881
-5.543957 -1.0741376
-5.551957 -1.0760152
-5.559957 -1.0770156
-5.567957 -1.0771428
-5.575957 -1.0764107
-5.5839567 -1.0748423
-5.5919566 -1.0724697
-5.5999565 -1.0693333
-5.6079564 -1.0654812
-5.6159563 -1.0609688
-5.623956 -1.0558577
-5.631956 -1.0502151
-5.639956 -1.0441129
-5.647956 -1.0376272
-5.655956 -1.0308366
-5.6639557 -1.0238217
-5.6719556 -1.0166645
-5.6799555 -1.0094471
-5.6879554 -1.0022506
-5.6959553 -0.9951546
-5.703955 -0.98823625
-5.711955 -0.98156935
-5.719955 -0.97522354
-5.727955 -0.9692637
-5.7359548 -0.9637493
-5.7439547 -0.9587339
-5.7519546 -0.9542646
-5.7599545 -0.9503814
-5.7679543 -0.9471172
-5.7759542 -0.9444976
-5.783954 -0.9425403
-5.791954 -0.9412556
-5.799954 -0.9406461
-5.807954 -0.9407067
-5.8159537 -0.94142497
-5.8239536 -0.94278157
-5.8319535 -0.9447503
-5.8399534 -0.9472985
-5.8479533 -0.95038784
-5.855953 -0.9539745
-5.863953 -0.95801
-5.871953 -0.9624417
-5.879953 -0.96721333
-5.887953 -0.9722661
-5.8959527 -0.97753865
-5.9039526 -0.982969
-5.9119525 -0.98849374
-5.9199524 -0.99405
-5.9279523 -0.99957544
-5.935952 -1.005009
-5.943952 -1.0102924
-5.951952 -1.0153692
-5.959952 -1.0201865
-5.967952 -1.0246956
-5.9759517 -1.0288517
-5.9839516 -1.0326146
-5.9919515 -1.0359496
-5.9999514 -1.0388268
-6.0079513 -1.0412226
-6.015951 -1.0431185
-6.023951 -1.0445021
-6.031951 -1.0453672
-6.039951 -1.0457132
-6.0479507 -1.0455452
-6.0559506 -1.0448741
-6.0639505 -1.0437161
-6.0719504 -1.0420926
-6.0799503 -1.0400296
-6.08795 -1.037558
-6.09595 -1.0347121
-6.10395 -1.0315301
-6.11195 -1.0280534
-6.11995 -1.0243256
-6.1279497 -1.0203927
-6.1359496 -1.0163016
-6.1439495 -1.0121008
-6.1519494 -1.007839
-6.1599493 -1.0035642
-6.167949 -0.9993246
-6.175949 -0.9951664
-6.183949 -0.9911344
-6.191949 -0.9872713
-6.199949 -0.98361695
-6.2079487 -0.9802085
-6.2159486 -0.97707933
-6.2239485 -0.97425944
-6.2319484 -0.97177476
-6.2399483 -0.969647
-6.247948 -0.96789366
-6.255948 -0.96652764
-6.263948 -0.96555734
-6.271948 -0.9649867
-6.2799478 -0.96481496
-6.2879477 -0.9650372
-6.2959476 -0.96564406
-6.3039474 -0.96662205
-6.3119473 -0.9679538
-6.3199472 -0.96961844
-6.327947 -0.9715916
-6.335947 -0.97384596
-6.343947 -0.97635156
-6.351947 -0.97907627
-6.3599467 -0.98198587
-6.3679466 -0.98504496
-6.3759465 -0.98821676
-6.3839464 -0.9914642
-6.3919463 -0.9947497
-6.399946 -0.9980363
-6.407946 -1.0012875
-6.415946 -1.0044675
-6.423946 -1.0075425
-6.431946 -1.01048
-6.4399457 -1.0132498
-6.4479456 -1.0158241
-6.4559455 -1.0181776
-6.4639454 -1.0202881
-6.4719453 -1.0221364
-6.479945 -1.0237064
-6.487945 -1.0249858
-6.495945 -1.0259651
-6.503945 -1.0266389
-6.511945 -1.0270048
-6.5199447 -1.0270644
-6.5279446 -1.0268223
-6.5359445 -1.0262864
-6.5439444 -1.0254676
-6.5519443 -1.0243802
-6.559944 -1.023041
-6.567944 -1.021469
-6.575944 -1.019686
-6.583944 -1.0177153
-6.5919437 -1.0155822
-6.5999436 -1.0133132
-6.6079435 -1.0109358
-6.6159434 -1.0084784
-6.6239433 -1.0059696
-6.631943 -1.0034382
-6.639943 -1.0009129
-6.647943 -0.9984215
-6.655943 -0.99599105
-6.663943 -0.9936476
-6.6719427 -0.99141556
-6.6799426 -0.98931783
-6.6879425 -0.98737544
-6.6959424 -0.98560715
-6.7039423 -0.98402965
-6.711942 -0.98265713
-6.719942 -0.9815013
-6.727942 -0.9805711
-6.735942 -0.979873
-6.743942 -0.97941077
-6.7519417 -0.9791853
-6.7599416 -0.97919506
-6.7679415 -0.97943586
-6.7759414 -0.9799009
-6.7839413 -0.98058116
-6.791941 -0.98146534
-6.799941 -0.98253995
-6.807941 -0.98378986
-6.815941 -0.98519814
-6.8239408 -0.98674625
-6.8319407 -0.9884146
-6.8399405 -0.99018264
-6.8479404 -0.99202883
-6.8559403 -0.9939314
-6.8639402 -0.9958682
-6.87194 -0.99781716
-6.87994 -0.9997564
-6.88794 -1.0016644
-6.89594 -1.0035207
-6.9039397 -1.0053055
-6.9119396 -1.0070002
-6.9199395 -1.0085876
-6.9279394 -1.0100518
-6.9359393 -1.0113788
-6.943939 -1.0125563
-6.951939 -1.0135736
-6.959939 -1.0144224
-6.967939 -1.0150962
-6.975939 -1.0155905
-6.9839387 -1.0159029
-6.9919386 -1.0160332
-6.9999385 -1.015983
-7.0079384 -1.0157561
-7.0159383 -1.0153582
-7.023938 -1.0147965
-7.031938 -1.0140803
-7.039938 -1.0132201
-7.047938 -1.0122279
-7.055938 -1.0111173
-7.0639377 -1.0099025
-7.0719376 -1.0085988
-7.0799375 -1.0072224
-7.0879374 -1.0057898
-7.0959373 -1.0043178
-7.103937 -1.0028235
-7.111937 -1.0013238
-7.119937 -0.99983567
-7.127937 -0.9983753
-7.1359367 -0.99695843
-7.1439366 -0.9956001
-7.1519365 -0.9943144
-7.1599364 -0.99311423
-7.1679363 -0.99201155
-7.175936 -0.99101686
-7.183936 -0.99013937
-7.191936 -0.9893867
-7.199936 -0.9887651
-7.207936 -0.98827916
-7.2159357 -0.98793197
-7.2239356 -0.98772484
-7.2319355 -0.9876578
-7.2399354 -0.987729
-7.2479353 -0.98793536
-7.255935 -0.98827213
-7.263935 -0.98873335
-7.271935 -0.9893117
-7.279935 -0.9899987
-7.287935 -0.9907849
-7.2959347 -0.9916597
-7.3039346 -0.99261194
-7.3119345 -0.99362963
-7.3199344 -0.99470043
-7.3279343 -0.99581134
-7.335934 -0.99694943
-7.343934 -0.9981016
-7.351934 -0.99925476
-7.359934 -1.000396
-7.3679338 -1.001513
-7.3759336 -1.0025938
-7.3839335 -1.0036267
-7.3919334 -1.0046015
-7.3999333 -1.005508
-7.407933 -1.0063375
-7.415933 -1.0070822
-7.423933 -1.0077353
-7.431933 -1.0082909
-7.439933 -1.0087447
-7.4479327 -1.0090934
-7.4559326 -1.009335
-7.4639325 -1.0094688
-7.4719324 -1.0094949
-7.4799323 -1.0094151
-7.487932 -1.009232
-7.495932 -1.0089496
-7.503932 -1.0
-7.511932 -1.0
-7.519932 -1.0
-7.5279317 -1.0
-7.5359316 -1.0
-7.5439315 -1.0
-7.5519314 -1.0
-7.5599313 -1.0
-7.567931 -1.0
-7.575931 -1.0
-7.583931 -1.0
-7.591931 -1.0
-7.599931 -1.0
-7.6079307 -1.0
-7.6159306 -1.0
-7.6239305 -1.0
-7.6319304 -1.0
-7.6399302 -1.0
-7.64793 -1.0
-7.65593 -1.0
-7.66393 -1.0
-7.67193 -1.0
-7.6799297 -1.0
-7.6879296 -1.0
-7.6959295 -1.0
-7.7039294 -1.0
-7.7119293 -1.0
-7.719929 -1.0
-7.727929 -1.0
-7.735929 -1.0
-7.743929 -1.0
-7.751929 -1.0
-7.7599287 -1.0
-7.7679286 -1.0
-7.7759285 -1.0
-7.7839284 -1.0
-7.7919283 -1.0
-7.799928 -1.0
-7.807928 -1.0
-7.815928 -1.0
-7.823928 -1.0
-7.831928 -1.0
-7.8399277 -1.0
-7.8479276 -1.0
-7.8559275 -1.0
-7.8639274 -1.0
-7.8719273 -1.0
-7.879927 -1.0
-7.887927 -1.0
-7.895927 -1.0
-7.903927 -1.0
-7.9119267 -1.0
-7.9199266 -1.0
-7.9279265 -1.0
-7.9359264 -1.0
-7.9439263 -1.0
-7.951926 -1.0
-7.959926 -1.0
-7.967926 -1.0
-7.975926 -1.0
-7.983926 -1.0
-7.9919257 -1.0
-7.9999256 -1.0
-8.007926 -1.0
-8.015926 -1.0
-8.023927 -1.0
-8.031927 -1.0
-8.0399275 -1.0
-8.047928 -1.0
-8.055928 -1.0
-8.063929 -1.0
-8.071929 -1.0
-8.079929 -1.0
-8.08793 -1.0
-8.09593 -1.0
-8.10393 -1.0
-8.111931 -1.0
-8.119931 -1.0
-8.127932 -1.0
-8.135932 -1.0
-8.143932 -1.0
-8.151933 -1.0
-8.159933 -1.0
-8.167933 -1.0
-8.175934 -1.0
-8.183934 -1.0
-8.191935 -1.0
-8.199935 -1.0
-8.207935 -1.0
-8.215936 -1.0
-8.223936 -1.0
-8.231936 -1.0
-8.239937 -1.0
-8.247937 -1.0
-8.255938 -1.0
-8.263938 -1.0
-8.271938 -1.0
-8.279939 -1.0
-8.287939 -1.0
-8.295939 -1.0
-8.30394 -1.0
-8.31194 -1.0
-8.319941 -1.0
-8.327941 -1.0
-8.335941 -1.0
-8.343942 -1.0
-8.351942 -1.0
-8.359942 -1.0
-8.367943 -1.0
-8.375943 -1.0
-8.383944 -1.0
-8.391944 -1.0
-8.399944 -1.0
-8.407945 -1.0
-8.415945 -1.0
-8.423945 -1.0
-8.431946 -1.0
-8.439946 -1.0
-8.447947 -1.0
-8.455947 -1.0
-8.463947 -1.0
-8.471948 -1.0
-8.479948 -1.0
-8.487948 -1.0
-8.495949 -1.0
-8.503949 -1.0
-8.51195 -1.0
-8.51995 -1.0
-8.52795 -1.0
-8.535951 -1.0
-8.543951 -1.0
-8.551951 -1.0
-8.559952 -1.0
-8.567952 -1.0
-8.575953 -1.0
-8.583953 -1.0
-8.591953 -1.0
-8.599954 -1.0
-8.607954 -1.0
-8.615954 -1.0
-8.623955 -1.0
-8.631955 -1.0
-8.6399555 -1.0
-8.647956 -1.0
-8.655956 -1.0
-8.663957 -1.0
-8.671957 -1.0
-8.679957 -1.0
-8.687958 -1.0
-8.695958 -1.0
-8.7039585 -1.0
-8.711959 -1.0
-8.719959 -1.0
-8.72796 -1.0
-8.73596 -1.0
-8.74396 -1.0
-8.751961 -1.0
-8.759961 -1.0
-8.7679615 -1.0
-8.775962 -1.0
-8.783962 -1.0
-8.791963 -1.0
-8.799963 -1.0
-8.807963 -1.0
-8.815964 -1.0
-8.823964 -1.0
-8.8319645 -1.0
-8.839965 -1.0
-8.847965 -1.0
-8.855966 -1.0
-8.863966 -1.0
-8.871966 -1.0
-8.879967 -1.0
-8.887967 -1.0
-8.8959675 -1.0
-8.903968 -1.0
-8.911968 -1.0
-8.919969 -1.0
-8.927969 -1.0
-8.935969 -1.0
-8.94397 -1.0
-8.95197 -1.0
-8.95997 -1.0
-8.967971 -1.0
-8.975971 -1.0
-8.983972 -1.0
-8.991972 -1.0
-8.999972 -1.0
-9.007973 -1.0
-9.015973 -1.0
-9.023973 -1.0
-9.031974 -1.0
-9.039974 -1.0
-9.047975 -1.0
-9.055975 -1.0
-9.063975 -1.0
-9.071976 -1.0
-9.079976 -1.0
-9.087976 -1.0
-9.095977 -1.0
-9.103977 -1.0
-9.111978 -1.0
-9.119978 -1.0
-9.127978 -1.0
-9.135979 -1.0
-9.143979 -1.0
-9.151979 -1.0
-9.15998 -1.0
-9.16798 -1.0
-9.175981 -1.0
-9.183981 -1.0
-9.191981 -1.0
-9.199982 -1.0
-9.207982 -1.0
-9.215982 -1.0
-9.223983 -1.0
-9.231983 -1.0
-9.239984 -1.0
-9.247984 -1.0
-9.255984 -1.0
-9.263985 -1.0
-9.271985 -1.0
-9.279985 -1.0
-9.287986 -1.0
-9.295986 -1.0
-9.303987 -1.0
-9.311987 -1.0
-9.319987 -1.0
-9.327988 -1.0
-9.335988 -1.0
-9.343988 -1.0
-9.351989 -1.0
-9.359989 -1.0
-9.36799 -1.0
-9.37599 -1.0
-9.38399 -1.0
-9.391991 -1.0
-9.399991 -1.0
-9.407991 -1.0
-9.415992 -1.0
-9.423992 -1.0
-9.431993 -1.0
-9.439993 -1.0
-9.447993 -1.0
-9.455994 -1.0
-9.463994 -1.0
-9.471994 -1.0
-9.479995 -1.0
-9.487995 -1.0
-9.4959955 -1.0
-9.503996 -1.0
-9.511996 -1.0
-9.519997 -1.0
-9.527997 -1.0
-9.535997 -1.0
-9.543998 -1.0
-9.551998 -1.0
-9.5599985 -1.0
-9.567999 -1.0
-9.575999 -1.0
-9.584 -1.0
-9.592 -1.0
-9.6 -1.0
-9.608001 -1.0
-9.616001 -1.0
-9.6240015 -1.0
-9.632002 -1.0
-9.640002 -1.0
-9.648003 -1.0
-9.656003 -1.0
-9.664003 -1.0
-9.672004 -1.0
-9.680004 -1.0
-9.6880045 -1.0
-9.696005 -1.0
-9.704005 -1.0
-9.712006 -1.0
-9.720006 -1.0
-9.728006 -1.0
-9.736007 -1.0
-9.744007 -1.0
-9.7520075 -1.0
-9.760008 -1.0
-9.768008 -1.0
-9.776009 -1.0
-9.784009 -1.0
-9.792009 -1.0
-9.80001 -1.0
-9.80801 -1.0
-9.81601 -1.0
-9.824011 -1.0
-9.832011 -1.0
-9.840012 -1.0
-9.848012 -1.0
-9.856012 -1.0
-9.864013 -1.0
-9.872013 -1.0
-9.880013 -1.0
-9.888014 -1.0
-9.896014 -1.0
-9.904015 -1.0
-9.912015 -1.0
-9.920015 -1.0
-9.928016 -1.0
-9.936016 -1.0
-9.944016 -1.0
-9.952017 -1.0
-9.960017 -1.0
-9.968018 -1.0
-9.976018 -1.0
-9.984018 -1.0
-9.992019 -1.0
-10.000019 -1.0
-10.008019 -1.0
-10.01602 -1.0
-10.02402 -1.0
-10.032021 -1.0
-10.040021 -1.0
-10.048021 -1.0
-10.056022 -1.0
-10.064022 -1.0
-10.072022 -1.0
-10.080023 -1.0
-10.088023 -1.0
-10.096024 -1.0
-10.104024 -1.0
-10.112024 -1.0
-10.120025 -1.0
-10.128025 -1.0
-10.136025 -1.0
-10.144026 -1.0
-10.152026 -1.0
-10.160027 -1.0
-10.168027 -1.0
-10.176027 -1.0
-10.184028 -1.0
-10.192028 -1.0
-10.200028 -1.0
-10.208029 -1.0
-10.216029 -1.0
-10.22403 -1.0
-10.23203 -1.0
-10.24003 -1.0
-10.248031 -1.0
-10.256031 -1.0
-10.264031 -1.0
-10.272032 -1.0
-10.280032 -1.0
-10.288033 -1.0
-10.296033 -1.0
-10.304033 -1.0
-10.312034 -1.0
-10.320034 -1.0
-10.328034 -1.0
-10.336035 -1.0
-10.344035 -1.0
-10.3520355 -1.0
-10.360036 -1.0
-10.368036 -1.0
-10.376037 -1.0
-10.384037 -1.0
-10.392037 -1.0
-10.400038 -1.0
-10.408038 -1.0
-10.4160385 -1.0
-10.424039 -1.0
-10.432039 -1.0
-10.44004 -1.0
-10.44804 -1.0
-10.45604 -1.0
-10.464041 -1.0
-10.472041 -1.0
-10.4800415 -1.0
-10.488042 -1.0
-10.496042 -1.0
-10.504043 -1.0
-10.512043 -1.0
-10.520043 -1.0
-10.528044 -1.0
-10.536044 -1.0
-10.5440445 -1.0
-10.552045 -1.0
-10.560045 -1.0
-10.568046 -1.0
-10.576046 -1.0
-10.584046 -1.0
-10.592047 -1.0
-10.600047 -1.0
-10.6080475 -1.0
-10.616048 -1.0
-10.624048 -1.0
-10.632049 -1.0
-10.640049 -1.0
-10.648049 -1.0
-10.65605 -1.0
-10.66405 -1.0
-10.67205 -1.0
-10.680051 -1.0
-10.688051 -1.0
-10.696052 -1.0
-10.704052 -1.0
-10.712052 -1.0
-10.720053 -1.0
-10.728053 -1.0
-10.736053 -1.0
-10.744054 -1.0
-10.752054 -1.0
-10.760055 -1.0
-10.768055 -1.0
-10.776055 -1.0
-10.784056 -1.0
-10.792056 -1.0
-10.800056 -1.0
-10.808057 -1.0
-10.816057 -1.0
-10.824058 -1.0
-10.832058 -1.0
-10.840058 -1.0
-10.848059 -1.0
-10.856059 -1.0
-10.864059 -1.0
-10.87206 -1.0
-10.88006 -1.0
-10.888061 -1.0
-10.896061 -1.0
-10.904061 -1.0
-10.912062 -1.0
-10.920062 -1.0
-10.928062 -1.0
-10.936063 -1.0
-10.944063 -1.0
-10.952064 -1.0
-10.960064 -1.0
-10.968064 -1.0
-10.976065 -1.0
-10.984065 -1.0
-10.992065 -1.0
-11.000066 -0.9983549
-11.008066 -0.79834557
-11.016067 -0.5983362
-11.024067 -0.39832687
-11.032067 -0.19831753
-11.040068 1.6918182e-3
-11.048068 0.20170116
-11.056068 0.4017105
-11.064069 0.60171986
-11.072069 0.8017292
-11.08007 1.0017385
-11.08807 1.2017479
-11.09607 1.4017572
-11.104071 1.6017666
-11.112071 1.8017759
-11.120071 2.0017853
-11.128072 2.2017946
-11.136072 2.401804
-11.144073 2.6018133
-11.152073 2.8018227
-11.160073 3.001832
-11.168074 3.2018414
-11.176074 3.4018507
-11.184074 3.60186
-11.192075 3.8018694
-11.200075 4.000189
-11.208076 4.020098
-11.216076 4.039489
-11.224076 4.0581737
-11.232077 4.0759754
-11.240077 4.0927286
-11.248077 4.1082807
-11.256078 4.1224947
-11.264078 4.1352477
-11.2720785 4.146435
-11.280079 4.155968
-11.288079 4.163778
-11.29608 4.169812
-11.30408 4.1740384
-11.31208 4.176443
-11.320081 4.177031
-11.328081 4.1758246
-11.3360815 4.1728644
-11.344082 4.1682086
-11.352082 4.161931
-11.360083 4.1541204
-11.368083 4.14488
-11.376083 4.1343255
-11.384084 4.1225843
-11.392084 4.1097937
-11.4000845 4.096099
-11.408085 4.0816526
-11.416085 4.0666127
-11.424086 4.05114
-11.432086 4.035397
-11.440086 4.019547
-11.448087 4.0037518
-11.456087 3.9881692
-11.4640875 3.9729538
-11.472088 3.958252
-11.480088 3.9442048
-11.488089 3.930943
-11.496089 3.9185877
-11.504089 3.9072495
-11.51209 3.8970265
-11.52009 3.8880038
-11.5280905 3.8802538
-11.536091 3.8738337
-11.544091 3.8687878
-11.552092 3.8651443
-11.560092 3.8629189
-11.568092 3.8621106
-11.576093 3.8627052
-11.584093 3.8646746
-11.592093 3.8679771
-11.600094 3.8725586
-11.608094 3.8783517
-11.616095 3.8852797
-11.624095 3.8932538
-11.632095 3.9021783
-11.640096 3.9119468
-11.648096 3.9224482
-11.656096 3.9335647
-11.664097 3.9451742
-11.672097 3.9571528
-11.680098 3.9693727
-11.688098 3.981708
-11.696098 3.9940314
-11.704099 4.0062194
-11.712099 4.0181518
-11.720099 4.0297112
-11.7281 4.0407877
-11.7361 4.051277
-11.744101 4.0610833
-11.752101 4.070118
-11.760101 4.078302
-11.768102 4.085567
-11.776102 4.0918536
-11.784102 4.0971146
-11.792103 4.101313
-11.800103 4.1044235
-11.808104 4.1064315
-11.816104 4.1073346
-11.824104 4.1071415
-11.832105 4.105871
-11.840105 4.1035533
-11.848105 4.100229
-11.856106 4.0959463
-11.864106 4.090764
-11.872107 4.0847497
-11.880107 4.0779757
-11.888107 4.0705237
-11.896108 4.0624785
-11.904108 4.053931
-11.912108 4.044976
-11.920109 4.0357094
-11.928109 4.02623
-11.93611 4.0166364
-11.94411 4.0070276
-11.95211 3.9975004
-11.960111 3.9881496
-11.968111 3.9790664
-11.976111 3.9703388
-11.984112 3.9620485
-11.992112 3.9542727
-12.000113 3.9470816
-12.008113 3.9405375
-12.016113 3.9346972
-12.024114 3.9296079
-12.032114 3.9253092
-12.040114 3.9218316
-12.048115 3.919197
-12.056115 3.9174194
-12.064116 3.9165025
-12.072116 3.916442
-12.080116 3.9172244
-12.088117 3.9188294
-12.096117 3.921227
-12.104117 3.9243808
-12.112118 3.928247
-12.120118 3.932775
-12.1281185 3.9379091
-12.136119 3.9435878
-12.144119 3.9497452
-12.15212 3.9563112
-12.16012 3.9632134
-12.16812 3.9703774
-12.176121 3.977726
-12.184121 3.9851823
-12.1921215 3.99267
-12.200122 4.0001125
-12.208122 4.007436
-12.216123 4.0145683
-12.224123 4.02144
-12.232123 4.027987
-12.240124 4.0341477
-12.248124 4.0398664
-12.2561245 4.045092
-12.264125 4.049781
-12.272125 4.0538926
-12.280126 4.057396
-12.288126 4.0602655
-12.296126 4.0624814
-12.304127 4.064032
-12.312127 4.0649133
-12.3201275 4.0651255
-12.328128 4.0646777
-12.336128 4.0635853
-12.344129 4.0618687
-12.352129 4.059556
-12.360129 4.0566792
-12.36813 4.053277
-12.37613 4.0493917
-12.3841305 4.0450697
-12.392131 4.0403624
-12.400131 4.0353227
-12.408132 4.0300064
-12.416132 4.0244727
-12.424132 4.0187798
-12.432133 4.0129876
-12.440133 4.007157
-12.448133 4.0013466
-12.456134 3.9956145
-12.464134 3.990018
-12.472135 3.984611
-12.480135 3.9794445
-12.488135 3.974568
-12.496136 3.9700246
-12.504136 3.9658556
-12.512136 3.9620976
-12.520137 3.9587808
-12.528137 3.9559326
-12.536138 3.9535737
-12.544138 3.9517202
-12.552138 3.9503832
-12.560139 3.9495673
-12.568139 3.949273
-12.576139 3.9494948
-12.58414 3.9502225
-12.59214 3.9514399
-12.600141 3.9531279
-12.608141 3.9552617
-12.616141 3.9578128
-12.624142 3.9607487
-12.632142 3.9640336
-12.640142 3.967629
-12.648143 3.9714937
-12.656143 3.975584
-12.664144 3.979856
-12.672144 3.9842634
-12.680144 3.9887595
-12.688145 3.993297
-12.696145 3.9978309
-12.704145 4.002314
-12.712146 4.006703
-12.720146 4.0109544
-12.728147 4.015028
-12.736147 4.0188856
-12.744147 4.0224915
-12.752148 4.0258136
-12.760148 4.0288224
-12.768148 4.0314927
-12.776149 4.0338035
-12.784149 4.0357366
-12.79215 4.0372787
-12.80015 4.0384207
-12.80815 4.039157
-12.816151 4.039487
-12.824151 4.0394135
-12.832151 4.038944
-12.840152 4.0380893
-12.848152 4.036864
-12.856153 4.0352864
-12.864153 4.033378
-12.872153 4.0311637
-12.880154 4.0286703
-12.888154 4.0259275
-12.896154 4.022967
-12.904155 4.019821
-12.912155 4.016526
-12.920156 4.0131164
-12.928156 4.009629
-12.936156 4.0060997
-12.944157 4.002565
-12.952157 3.9990602
-12.960157 3.9956207
-12.968158 3.99228
-12.976158 3.98907
-12.9841585 3.986021
-12.992159 3.983162
-13.000159 3.9805174
-13.00816 3.9781117
-13.01616 3.9759645
-13.02416 3.974094
-13.032161 3.9725142
-13.040161 3.9712367
-13.0481615 3.9702697
-13.056162 3.9696174
-13.064162 3.9692817
-13.072163 3.9692612
-13.080163 3.969551
-13.088163 3.9701433
-13.096164 3.971027
-13.104164 3.972189
-13.1121645 3.9736128
-13.120165 3.9752798
-13.128165 3.97717
-13.136166 3.97926
-13.144166 3.981526
-13.152166 3.9839425
-13.160167 3.9864821
-13.168167 3.989118
-13.1761675 3.9918218
-13.184168 3.994565
-13.192168 3.9973197
-13.200169 4.000057
-13.208169 4.002751
-13.216169 4.0053744
-13.22417 4.0079017
-13.23217 4.0103097
-13.2401705 4.012575
-13.248171 4.0146775
-13.256171 4.016599
-13.264172 4.018323
-13.272172 4.019834
-13.280172 4.0211215
-13.288173 4.022176
-13.296173 4.0229897
-13.304173 4.0235586
-13.312174 4.0238814
-13.320174 4.023958
-13.328175 4.023792
-13.336175 4.023389
-13.344175 4.022756
-13.352176 4.021904
-13.360176 4.0208445
-13.368176 4.019592
-13.376177 4.0181613
-13.384177 4.0165706
-13.392178 4.0148377
-13.400178 4.0129833
-13.408178 4.0110273
-13.416179 4.008991
-13.424179 4.0068965
-13.432179 4.0047655
-13.44018 4.00262
-13.44818 4.000483
-13.456181 3.9983745
-13.464181 3.996316
-13.472181 3.994327
-13.480182 3.9924273
-13.488182 3.990634
-13.496182 3.9889631
-13.504183 3.9874306
-13.512183 3.9860487
-13.520184 3.98483
-13.528184 3.9837828
-13.536184 3.9829164
-13.544185 3.9822354
-13.552185 3.9817448
-13.560185 3.9814458
-13.568186 3.9813385
-13.576186 3.981421
-13.584187 3.98169
-13.592187 3.982139
-13.600187 3.982761
-13.608188 3.9835467
-13.616188 3.984486
-13.624188 3.985567
-13.632189 3.9867759
-13.640189 3.9880996
-13.64819 3.9895215
-13.65619 3.9910269
-13.66419 3.992599
-13.672191 3.9942203
-13.680191 3.9958744
-13.688191 3.9975438
-13.696192 3.9992118
-13.704192 4.0008607
-13.712193 4.0024753
-13.720193 4.004039
-13.728193 4.005537
-13.736194 4.0069556
-13.744194 4.0082817
-13.752194 4.009503
-13.760195 4.010609
-13.768195 4.011591
-13.776196 4.01244
-13.784196 4.0131507
-13.792196 4.013717
-13.800197 4.0141363
-13.808197 4.014406
-13.816197 4.014527
-13.824198 4.0144987
-13.832198 4.014325
-13.8401985 4.01401
-13.848199 4.0135584
-13.856199 4.0129776
-13.8642 4.0122747
-13.8722 4.0114594
-13.8802 4.0105414
-13.888201 4.009532
-13.896201 4.0084424
-13.9042015 4.007285
-13.912202 4.0060725
-13.920202 4.004818
-13.928203 4.003535
-13.936203 4.0022364
-13.944203 4.000936
-13.952204 3.9996467
-13.960204 3.9983816
-13.9682045 3.9971528
-13.976205 3.9959722
-13.984205 3.994851
-13.992206 3.9937997
-14.000206 3.9928274
-14.008206 3.991943
-14.016207 3.9911537
-14.024207 3.990466
-14.0322075 3.9898853
-14.040208 3.9894161
-14.048208 3.9890609
-14.056209 3.988822
-14.064209 3.988699
-14.072209 3.9886923
-14.08021 3.9887996
-14.08821 3.989018
-14.0962105 3.9893436
-14.104211 3.9897718
-14.112211 3.990296
-14.120212 3.9909096
-14.128212 3.9916053
-14.136212 3.992375
-14.144213 3.993209
-14.152213 3.9940982
-14.160213 3.9950328
-14.168214 3.9960027
-14.176214 3.9969974
-14.184215 3.9980063
-14.192215 3.9990196
-14.200215 3.996408
-14.208216 3.863068
-14.216216 3.7297287
-14.224216 3.5963893
-14.232217 3.4630494
-14.240217 3.32971
-14.248218 3.1963706
-14.256218 3.0630307
-14.264218 2.9296913
-14.272219 2.796352
-14.280219 2.6630123
-14.288219 2.5296726
-14.29622 2.3963332
-14.30422 2.2629936
-14.312221 2.129654
-14.320221 1.9963145
-14.328221 1.8629749
-14.336222 1.7296352
-14.344222 1.5962958
-14.352222 1.4629562
-14.360223 1.3296165
-14.368223 1.1962771
-14.376224 1.0629375
-14.384224 0.92959785
-14.392224 0.79625845
-14.400225 0.6629188
-14.408225 0.5295794
-14.416225 0.39623976
-14.424226 0.2629001
-14.432226 0.12956071
-14.440227 -3.7789345e-3
-14.448227 -0.13711834
-14.456227 -0.27045822
-14.464228 -0.40379763
-14.472228 -0.53713703
-14.480228 -0.6704769
-14.488229 -0.8038163
-14.496229 -0.9371557
-14.50423 -1.0138799
-14.51223 -1.0396309
-14.52023 -1.0644922
-14.528231 -1.0882031
-14.536231 -1.1105201
-14.544231 -1.1312197
-14.552232 -1.1501
-14.560232 -1.1669829
-14.568233 -1.1817157
-14.576233 -1.1941723
-14.584233 -1.2042537
-14.592234 -1.2118895
-14.600234 -1.2170376
-14.608234 -1.219684
-14.616235 -1.219843
-14.624235 -1.2175564
-14.632236 -1.212892
-14.640236 -1.2059433
-14.648236 -1.1968274
-14.656237 -1.1856833
-14.664237 -1.1726702
-14.672237 -1.1579654
-14.680238 -1.1417618
-14.688238 -1.1242657
-14.6962385 -1.1056938
-14.704239 -1.0862715
-14.712239 -1.0662293
-14.72024 -1.045801
-14.72824 -1.02522
-14.73624 -1.004718
-14.744241 -0.98452103
-14.752241 -0.9648486
-14.7602415 -0.9459099
-14.768242 -0.92790276
-14.776242 -0.9110109
-14.784243 -0.89540267
-14.792243 -0.88122904
-14.800243 -0.86862254
-14.808244 -0.85769594
-14.816244 -0.8485412
-14.8242445 -0.8412293
-14.832245 -0.83580923
-14.840245 -0.8323083
-14.848246 -0.83073187
-14.856246 -0.8310639
-14.864246 -0.83326745
-14.872247 -0.83728534
-14.880247 -0.84304124
-14.8882475 -0.85044086
-14.896248 -0.8593734
-14.904248 -0.8697127
-14.912249 -0.88131946
-14.920249 -0.8940425
-14.928249 -0.90772104
-14.93625 -0.9221863
-14.94425 -0.93726397
-14.9522505 -0.9527756
-14.960251 -0.9685415
-14.968251 -0.98438185
-14.976252 -1.0001194
-14.984252 -1.015581
-14.992252 -1.0305998
-15.000253 -1.0450164
-15.008253 -1.0586814
-15.016253 -1.0714558
-15.024254 -1.0832133
-15.032254 -1.0938411
-15.040255 -1.1032405
-15.048255 -1.1113287
-15.056255 -1.1180388
-15.064256 -1.12332
-15.072256 -1.1271389
-15.080256 -1.1294781
-15.088257 -1.1303378
-15.096257 -1.1297342
-15.104258 -1.1276994
-15.112258 -1.1242812
-15.120258 -1.1195414
-15.128259 -1.113556
-15.136259 -1.1064131
-15.144259 -1.0982125
-15.15226 -1.0890635
-15.16026 -1.0790844
-15.168261 -1.0684005
-15.176261 -1.0571431
-15.184261 -1.0454471
-15.192262 -1.03345
-15.200262 -1.0212905
-15.208262 -1.0091068
-15.216263 -0.99703425
-15.224263 -0.98520535
-15.232264 -0.97374713
-15.240264 -0.96278065
-15.248264 -0.9524191
-15.256265 -0.9427671
-15.264265 -0.93391937
-15.272265 -0.92596036
-15.280266 -0.918963
-15.288266 -0.9129882
-15.296267 -0.9080845
-15.304267 -0.9042878
-15.312267 -0.9016209
-15.320268 -0.9000938
-15.328268 -0.8997035
-15.336268 -0.9004345
-15.344269 -0.9022592
-15.352269 -0.90513813
-15.36027 -0.909021
-15.36827 -0.91384715
-15.37627 -0.9195464
-15.384271 -0.9260403
-15.392271 -0.93324274
-15.400271 -0.9410613
-15.408272 -0.94939846
-15.416272 -0.9581524
-15.424273 -0.96721876
-15.432273 -0.9764911
-15.440273 -0.9858629
-15.448274 -0.9952283
-15.456274 -1.0044833
-15.464274 -1.0135272
-15.472275 -1.0222628
-15.480275 -1.0305986
-15.488276 -1.0384489
-15.496276 -1.0457352
-15.504276 -1.052386
-15.512277 -1.0583386
-15.520277 -1.0635391
-15.528277 -1.067943
-15.536278 -1.0715148
-15.544278 -1.0742297
-15.5522785 -1.0760725
-15.560279 -1.0770376
-15.568279 -1.0771298
-15.57628 -1.0763634
-15.58428 -1.0747617
-15.59228 -1.0723573
-15.600281 -1.0691907
-15.608281 -1.0653105
-15.6162815 -1.0607723
-15.624282 -1.0556378
-15.632282 -1.0499748
-15.640283 -1.0438552
-15.648283 -1.037355
-15.656283 -1.0305531
-15.664284 -1.0235304
-15.672284 -1.0163687
-15.6802845 -1.0091501
-15.688285 -1.0019557
-15.696285 -0.9948652
-15.704286 -0.9879554
-15.712286 -0.98130006
-15.720286 -0.9749685
-15.728287 -0.9690257
-15.736287 -0.96353066
-15.7442875 -0.95853686
-15.752288 -0.9540909
-15.760288 -0.9502326
-15.768289 -0.94699466
-15.776289 -0.9444023
-15.784289 -0.94247293
-15.79229 -0.94121647
-15.80029 -0.9406352
-15.8082905 -0.9407237
-15.816291 -0.94146943
-15.824291 -0.9428525
-15.832292 -0.9448465
-15.840292 -0.9474186
-15.848292 -0.9505301
-15.856293 -0.954137
-15.864293 -0.9581907
-15.872293 -0.9626382
-15.880294 -0.9674233
-15.888294 -0.972487
-15.896295 -0.97776794
-15.904295 -0.98320395
-15.912295 -0.9887317
-15.920296 -0.9942882
-15.928296 -0.99981123
-15.936296 -1.00524
-15.944297 -1.0105158
-15.952297 -1.0155828
-15.960298 -1.0203881
-15.968298 -1.0248832
-15.976298 -1.0290232
-15.984299 -1.0327685
-15.992299 -1.0360843
-16.0003 -1.0389413
-16.008299 -1.0413154
-16.016298 -1.0431892
-16.024298 -1.0445504
-16.032297 -1.045393
-16.040297 -1.0457165
-16.048296 -1.0455265
-16.056295 -1.0448341
-16.064295 -1.0436556
-16.072294 -1.0420127
-16.080294 -1.0399318
-16.088293 -1.0374434
-16.096292 -1.0345825
-16.104292 -1.0313873
-16.112291 -1.0278991
-16.12029 -1.0241619
-16.12829 -1.0202215
-16.13629 -1.016125
-16.144289 -1.0119209
-16.152288 -1.0076578
-16.160288 -1.0033838
-16.168287 -0.99914694
-16.176287 -0.9949933
-16.184286 -0.9909679
-16.192286 -0.987113
-16.200285 -0.9834686
-16.208284 -0.9800713
-16.216284 -0.97695476
-16.224283 -0.9741486
-16.232283 -0.97167856
-16.240282 -0.9695663
-16.248281 -0.9678289
-16.25628 -0.9664793
-16.26428 -0.9655256
-16.27228 -0.9649716
-16.28028 -0.9648164
-16.288279 -0.96505475
-16.296278 -0.9656772
-16.304277 -0.9666701
-16.312277 -0.96801597
-16.320276 -0.96969366
-16.328276 -0.97167885
-16.336275 -0.97394395
-16.344275 -0.9764591
-16.352274 -0.97919184
-16.360273 -0.9821081
-16.368273 -0.9851723
-16.376272 -0.98834777
-16.384272 -0.99159724
-16.392271 -0.9948834
-16.40027 -0.99816906
-16.40827 -1.0014178
-16.41627 -1.0045941
-16.424269 -1.0076638
-16.432268 -1.010595
-16.440268 -1.0133573
-16.448267 -1.015923
-16.456266 -1.0182672
-16.464266 -1.0203674
-16.472265 -1.0222046
-16.480265 -1.0237632
-16.488264 -1.0250306
-16.496264 -1.0259978
-16.504263 -1.0266593
-16.512262 -1.0270131
-16.520262 -1.0270605
-16.528261 -1.0268066
-16.53626 -1.0262592
-16.54426 -1.0254297
-16.55226 -1.0243322
-16.560259 -1.0229834
-16.568258 -1.0214028
-16.576258 -1.0196121
-16.584257 -1.0176346
-16.592257 -1.0154958
-16.600256 -1.0132222
-16.608255 -1.0108413
-16.616255 -1.0083815
-16.624254 -1.0058714
-16.632254 -1.00334
-16.640253 -1.0008156
-16.648252 -0.9983261
-16.656252 -0.9958988
-16.664251 -0.99355924
-16.67225 -0.9913321
-16.68025 -0.98924017
-16.68825 -0.9873042
-16.696249 -0.9855431
-16.704248 -0.9839733
-16.712248 -0.9826089
-16.720247 -0.9814616
-16.728247 -0.9805402
-16.736246 -0.9798511
-16.744246 -0.97939783
-16.752245 -0.9791814
-16.760244 -0.9792
-16.768244 -0.9794494
-16.776243 -0.9799227
-16.784243 -0.98061085
-16.792242 -0.98150235
-16.800241 -0.9825838
-16.80824 -0.9838399
-16.81624 -0.9852537
-16.82424 -0.9868066
-16.83224 -0.9884789
-16.840239 -0.9902501
-16.848238 -0.99209875
-16.856237 -0.9940029
-16.864237 -0.99594045
-16.872236 -0.9978893
-16.880236 -0.99982756
-16.888235 -1.001734
-16.896235 -1.0035878
-16.904234 -1.0053695
-16.912233 -1.0070605
-16.920233 -1.0086435
-16.928232 -1.0101029
-16.936232 -1.0114245
-16.944231 -1.0125962
-16.95223 -1.0136076
-16.96023 -1.0144501
-16.96823 -1.0151173
-16.976229 -1.015605
-16.984228 -1.0159107
-16.992228 -1.0160345
-17.000227 -1.0159779
-17.008226 -1.0157448
-17.016226 -1.0153408
-17.024225 -1.0147735
-17.032225 -1.0140519
-17.040224 -1.0131868
-17.048223 -1.0121902
-17.056223 -1.0110757
-17.064222 -1.0098575
-17.072222 -1.0085511
-17.080221 -1.0071725
-17.08822 -1.0057381
-17.09622 -1.0042652
-17.10422 -1.0027704
-17.112219 -1.0012711
-17.120218 -0.99978375
-17.128218 -0.9983247
-17.136217 -0.99690974
-17.144217 -0.99555385
-17.152216 -0.994271
-17.160215 -0.99307406
-17.168215 -0.99197507
-17.176214 -0.9909844
-17.184214 -0.9901111
-17.192213 -0.98936296
-17.200212 -0.988746
-17.208212 -0.98826486
-17.216211 -0.9879225
-17.22421 -0.98772025
-17.23221 -0.98765796
-17.24021 -0.9877339
-17.248209 -0.9879447
-17.256208 -0.9882859
-17.264208 -0.9887512
-17.272207 -0.98933333
-17.280207 -0.99002385
-17.288206 -0.99081314
-17.296206 -0.99169075
-17.304205 -0.9926453
-17.312204 -0.993665
-17.320204 -0.99473727
-17.328203 -0.99584925
-17.336203 -0.99698794
-17.344202 -0.9981403
-17.352201 -0.99929315
-17.3602 -1.0004338
-17.3682 -1.0015496
-17.3762 -1.0026289
-17.3842 -1.0036601
-17.392199 -1.0046326
-17.400198 -1.0055367
-17.408197 -1.0063635
-17.416197 -1.0071052
-17.424196 -1.007755
-17.432196 -1.0083075
-17.440195 -1.0087578
-17.448195 -1.0091031
-17.456194 -1.0093411
-17.464193 -1.0094713
-17.472193 -1.009494
-17.480192 -1.0094107
-17.488192 -1.0092244
-17.496191 -1.0089389
-17.50419 -1.0
-17.51219 -1.0
-17.52019 -1.0
-17.528189 -1.0
-17.536188 -1.0
-17.544188 -1.0
-17.552187 -1.0
-17.560186 -1.0
-17.568186 -1.0
-17.576185 -1.0
-17.584185 -1.0
-17.592184 -1.0
-17.600183 -1.0
-17.608183 -1.0
-17.616182 -1.0
-17.624182 -1.0
-17.632181 -1.0
-17.64018 -1.0
-17.64818 -1.0
-17.65618 -1.0
-17.664179 -1.0
-17.672178 -1.0
-17.680178 -1.0
-17.688177 -1.0
-17.696177 -1.0
-17.704176 -1.0
-17.712175 -1.0
-17.720175 -1.0
-17.728174 -1.0
-17.736174 -1.0
-17.744173 -1.0
-17.752172 -1.0
-17.760172 -1.0
-17.768171 -1.0
-17.77617 -1.0
-17.78417 -1.0
-17.79217 -1.0
-17.800169 -1.0
-17.808168 -1.0
-17.816168 -1.0
-17.824167 -1.0
-17.832167 -1.0
-17.840166 -1.0
-17.848166 -1.0
-17.856165 -1.0
-17.864164 -1.0
-17.872164 -1.0
-17.880163 -1.0
-17.888163 -1.0
-17.896162 -1.0
-17.904161 -1.0
-17.91216 -1.0
-17.92016 -1.0
-17.92816 -1.0
-17.93616 -1.0
-17.944159 -1.0
-17.952158 -1.0
-17.960157 -1.0
-17.968157 -1.0
-17.976156 -1.0
-17.984156 -1.0
-17.992155 -1.0
-18.000154 -1.0
-18.008154 -1.0
-18.016153 -1.0
-18.024153 -1.0
-18.032152 -1.0
-18.040152 -1.0
-18.048151 -1.0
-18.05615 -1.0
-18.06415 -1.0
-18.07215 -1.0
-18.080149 -1.0
-18.088148 -1.0
-18.096148 -1.0
-18.104147 -1.0
-18.112146 -1.0
-18.120146 -1.0
-18.128145 -1.0
-18.136145 -1.0
-18.144144 -1.0
-18.152143 -1.0
-18.160143 -1.0
-18.168142 -1.0
-18.176142 -1.0
-18.184141 -1.0
-18.19214 -1.0
-18.20014 -1.0
-18.20814 -1.0
-18.216139 -1.0
-18.224138 -1.0
-18.232138 -1.0
-18.240137 -1.0
-18.248137 -1.0
-18.256136 -1.0
-18.264135 -1.0
-18.272135 -1.0
-18.280134 -1.0
-18.288134 -1.0
-18.296133 -1.0
-18.304132 -1.0
-18.312132 -1.0
-18.320131 -1.0
-18.32813 -1.0
-18.33613 -1.0
-18.34413 -1.0
-18.352129 -1.0
-18.360128 -1.0
-18.368128 -1.0
-18.376127 -1.0
-18.384127 -1.0
-18.392126 -1.0
-18.400126 -1.0
-18.408125 -1.0
-18.416124 -1.0
-18.424124 -1.0
-18.432123 -1.0
-18.440123 -1.0
-18.448122 -1.0
-18.456121 -1.0
-18.46412 -1.0
-18.47212 -1.0
-18.48012 -1.0
-18.48812 -1.0
-18.496119 -1.0
-18.504118 -1.0
-18.512117 -1.0
-18.520117 -1.0
-18.528116 -1.0
-18.536116 -1.0
-18.544115 -1.0
-18.552114 -1.0
-18.560114 -1.0
-18.568113 -1.0
-18.576113 -1.0
-18.584112 -1.0
-18.592112 -1.0
-18.600111 -1.0
-18.60811 -1.0
-18.61611 -1.0
-18.62411 -1.0
-18.632109 -1.0
-18.640108 -1.0
-18.648108 -1.0
-18.656107 -1.0
-18.664106 -1.0
-18.672106 -1.0
-18.680105 -1.0
-18.688105 -1.0
-18.696104 -1.0
-18.704103 -1.0
-18.712103 -1.0
-18.720102 -1.0
-18.728102 -1.0
-18.736101 -1.0
-18.7441 -1.0
-18.7521 -1.0
-18.7601 -1.0
-18.768099 -1.0
-18.776098 -1.0
-18.784098 -1.0
-18.792097 -1.0
-18.800097 -1.0
-18.808096 -1.0
-18.816095 -1.0
-18.824095 -1.0
-18.832094 -1.0
-18.840094 -1.0
-18.848093 -1.0
-18.856092 -1.0
-18.864092 -1.0
-18.872091 -1.0
-18.88009 -1.0
-18.88809 -1.0
-18.89609 -1.0
-18.904089 -1.0
-18.912088 -1.0
-18.920088 -1.0
-18.928087 -1.0
-18.936087 -1.0
-18.944086 -1.0
-18.952085 -1.0
-18.960085 -1.0
-18.968084 -1.0
-18.976084 -1.0
-18.984083 -1.0
-18.992083 -1.0
-19.000082 -1.0
-19.008081 -1.0
-19.01608 -1.0
-19.02408 -1.0
-19.03208 -1.0
-19.04008 -1.0
-19.048079 -1.0
-19.056078 -1.0
-19.064077 -1.0
-19.072077 -1.0
-19.080076 -1.0
-19.088076 -1.0
-19.096075 -1.0
-19.104074 -1.0
-19.112074 -1.0
-19.120073 -1.0
-19.128073 -1.0
-19.136072 -1.0
-19.144072 -1.0
-19.152071 -1.0
-19.16007 -1.0
-19.16807 -1.0
-19.17607 -1.0
-19.184069 -1.0
-19.192068 -1.0
-19.200068 -1.0
-19.208067 -1.0
-19.216066 -1.0
-19.224066 -1.0
-19.232065 -1.0
-19.240065 -1.0
-19.248064 -1.0
-19.256063 -1.0
-19.264063 -1.0
-19.272062 -1.0
-19.280062 -1.0
-19.288061 -1.0
-19.29606 -1.0
-19.30406 -1.0
-19.31206 -1.0
-19.320059 -1.0
-19.328058 -1.0
-19.336058 -1.0
-19.344057 -1.0
-19.352057 -1.0
-19.360056 -1.0
-19.368055 -1.0
-19.376055 -1.0
-19.384054 -1.0
-19.392054 -1.0
-19.400053 -1.0
-19.408052 -1.0
-19.416052 -1.0
-19.424051 -1.0
-19.43205 -1.0
-19.44005 -1.0
-19.44805 -1.0
-19.456049 -1.0
-19.464048 -1.0
-19.472048 -1.0
-19.480047 -1.0
-19.488047 -1.0
-19.496046 -1.0
-19.504045 -1.0
-19.512045 -1.0
-19.520044 -1.0
-19.528044 -1.0
-19.536043 -1.0
-19.544043 -1.0
-19.552042 -1.0
-19.560041 -1.0
-19.56804 -1.0
-19.57604 -1.0
-19.58404 -1.0
-19.59204 -1.0
-19.600039 -1.0
-19.608038 -1.0
-19.616037 -1.0
-19.624037 -1.0
-19.632036 -1.0
-19.640036 -1.0
-19.648035 -1.0
-19.656034 -1.0
-19.664034 -1.0
-19.672033 -1.0
-19.680033 -1.0
-19.688032 -1.0
-19.696032 -1.0
-19.704031 -1.0
-19.71203 -1.0
-19.72003 -1.0
-19.72803 -1.0
-19.736029 -1.0
-19.744028 -1.0
-19.752028 -1.0
-19.760027 -1.0
-19.768026 -1.0
-19.776026 -1.0
-19.784025 -1.0
-19.792025 -1.0
-19.800024 -1.0
-19.808023 -1.0
-19.816023 -1.0
-19.824022 -1.0
-19.832022 -1.0
-19.840021 -1.0
-19.84802 -1.0
-19.85602 -1.0
-19.86402 -1.0
-19.872019 -1.0
-19.880018 -1.0
-19.888018 -1.0
-19.896017 -1.0
-19.904016 -1.0
-19.912016 -1.0
-19.920015 -1.0
-19.928015 -1.0
-19.936014 -1.0
-19.944014 -1.0
-19.952013 -1.0
-19.960012 -1.0
-19.968012 -1.0
-19.976011 -1.0
-19.98401 -1.0
-19.99201 -1.0
-set terminal latex
-set output "piece.tex"
-set nokey
-plot [0.0:20.0] "piece.plt" with lines
-
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/piece.gnp b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/piece.gnp
deleted file mode 100644
index 2256bd670e..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/piece.gnp
+++ /dev/null
@@ -1,4 +0,0 @@
-set terminal latex
-set output "piece.tex"
-set nokey
-plot [0.0:20.0] "piece.plt" with lines
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/piece.plt b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/piece.plt
deleted file mode 100644
index e93d58c398..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/piece.plt
+++ /dev/null
@@ -1,2500 +0,0 @@
-0.0 -1.0
-8.0e-3 -1.0
-1.6e-2 -1.0
-2.4e-2 -1.0
-3.2e-2 -1.0
-4.0000003e-2 -1.0
-4.8000004e-2 -1.0
-5.6000005e-2 -1.0
-6.4e-2 -1.0
-7.2000004e-2 -1.0
-8.0000006e-2 -1.0
-8.800001e-2 -1.0
-9.600001e-2 -1.0
-0.10400001 -1.0
-0.11200001 -1.0
-0.12000001 -1.0
-0.128 -1.0
-0.136 -1.0
-0.14400001 -1.0
-0.15200001 -1.0
-0.16000001 -1.0
-0.16800001 -1.0
-0.17600001 -1.0
-0.18400002 -1.0
-0.19200002 -1.0
-0.20000002 -1.0
-0.20800002 -1.0
-0.21600002 -1.0
-0.22400002 -1.0
-0.23200002 -1.0
-0.24000002 -1.0
-0.24800003 -1.0
-0.256 -1.0
-0.264 -1.0
-0.27199998 -1.0
-0.27999997 -1.0
-0.28799996 -1.0
-0.29599994 -1.0
-0.30399993 -1.0
-0.31199992 -1.0
-0.3199999 -1.0
-0.3279999 -1.0
-0.33599988 -1.0
-0.34399986 -1.0
-0.35199985 -1.0
-0.35999984 -1.0
-0.36799982 -1.0
-0.3759998 -1.0
-0.3839998 -1.0
-0.39199978 -1.0
-0.39999977 -1.0
-0.40799975 -1.0
-0.41599974 -1.0
-0.42399973 -1.0
-0.4319997 -1.0
-0.4399997 -1.0
-0.4479997 -1.0
-0.45599967 -1.0
-0.46399966 -1.0
-0.47199965 -1.0
-0.47999963 -1.0
-0.48799962 -1.0
-0.4959996 -1.0
-0.5039996 -1.0
-0.5119996 -1.0
-0.5199996 -1.0
-0.52799964 -1.0
-0.53599966 -1.0
-0.5439997 -1.0
-0.5519997 -1.0
-0.5599997 -1.0
-0.5679997 -1.0
-0.57599974 -1.0
-0.58399975 -1.0
-0.59199977 -1.0
-0.5999998 -1.0
-0.6079998 -1.0
-0.6159998 -1.0
-0.62399983 -1.0
-0.63199985 -1.0
-0.63999987 -1.0
-0.6479999 -1.0
-0.6559999 -1.0
-0.6639999 -1.0
-0.67199993 -1.0
-0.67999995 -1.0
-0.68799996 -1.0
-0.696 -1.0
-0.704 -1.0
-0.712 -1.0
-0.72 -1.0
-0.72800004 -1.0
-0.73600006 -1.0
-0.7440001 -1.0
-0.7520001 -1.0
-0.7600001 -1.0
-0.7680001 -1.0
-0.77600014 -1.0
-0.78400016 -1.0
-0.7920002 -1.0
-0.8000002 -1.0
-0.8080002 -1.0
-0.8160002 -1.0
-0.82400024 -1.0
-0.83200026 -1.0
-0.8400003 -1.0
-0.8480003 -1.0
-0.8560003 -1.0
-0.8640003 -1.0
-0.87200034 -1.0
-0.88000035 -1.0
-0.88800037 -1.0
-0.8960004 -1.0
-0.9040004 -1.0
-0.9120004 -1.0
-0.92000043 -1.0
-0.92800045 -1.0
-0.93600047 -1.0
-0.9440005 -1.0
-0.9520005 -1.0
-0.9600005 -1.0
-0.96800053 -1.0
-0.97600055 -1.0
-0.98400056 -1.0
-0.9920006 -1.0
-1.0000006 -0.9999851
-1.0080006 -0.7999847
-1.0160006 -0.5999843
-1.0240006 -0.39998388
-1.0320007 -0.19998348
-1.0400007 1.692772e-5
-1.0480007 0.20001733
-1.0560007 0.40001774
-1.0640007 0.60001814
-1.0720007 0.80001855
-1.0800008 1.0000191
-1.0880008 1.2000194
-1.0960008 1.4000196
-1.1040008 1.6000202
-1.1120008 1.8000207
-1.1200008 2.000021
-1.1280009 2.2000213
-1.1360009 2.4000218
-1.1440009 2.6000223
-1.1520009 2.8000226
-1.1600009 3.000023
-1.1680009 3.2000237
-1.176001 3.400024
-1.184001 3.6000242
-1.192001 3.8000245
-1.200001 4.0000024
-1.208001 4.0199146
-1.216001 4.0393105
-1.224001 4.058002
-1.2320011 4.075812
-1.2400011 4.092575
-1.2480011 4.1081386
-1.2560011 4.122365
-1.2640011 4.1351323
-1.2720011 4.1463346
-1.2800012 4.155884
-1.2880012 4.16371
-1.2960012 4.1697617
-1.3040012 4.174006
-1.3120012 4.1764283
-1.3200012 4.177034
-1.3280013 4.175845
-1.3360013 4.1729026
-1.3440013 4.168264
-1.3520013 4.1620026
-1.3600013 4.154207
-1.3680013 4.144981
-1.3760014 4.13444
-1.3840014 4.1227107
-1.3920014 4.1099305
-1.4000014 4.0962453
-1.4080014 4.0818067
-1.4160014 4.066773
-1.4240015 4.0513043
-1.4320015 4.035564
-1.4400015 4.0197153
-1.4480015 4.003919
-1.4560015 3.9883342
-1.4640015 3.9731145
-1.4720016 3.9584074
-1.4800016 3.9443526
-1.4880016 3.9310822
-1.4960016 3.9187174
-1.5040016 3.9073682
-1.5120016 3.8971329
-1.5200016 3.8880968
-1.5280017 3.8803325
-1.5360017 3.8738976
-1.5440017 3.8688364
-1.5520017 3.8651776
-1.5600017 3.862936
-1.5680017 3.8621116
-1.5760018 3.8626904
-1.5840018 3.8646445
-1.5920018 3.8679318
-1.6000018 3.8724985
-1.6080018 3.8782783
-1.6160018 3.8851929
-1.6240019 3.8931556
-1.6320019 3.9020686
-1.6400019 3.9118276
-1.6480019 3.9223208
-1.6560019 3.9334302
-1.664002 3.9450345
-1.672002 3.9570084
-1.680002 3.969226
-1.688002 3.9815598
-1.696002 3.9938836
-1.704002 4.0060735
-1.712002 4.0180087
-1.720002 4.029573
-1.7280021 4.0406556
-1.7360021 4.0511527
-1.7440021 4.060967
-1.7520021 4.070011
-1.7600021 4.078206
-1.7680022 4.085482
-1.7760022 4.091781
-1.7840022 4.097055
-1.7920022 4.101267
-1.8000022 4.104391
-1.8080022 4.106413
-1.8160022 4.1073303
-1.8240023 4.1071506
-1.8320023 4.105894
-1.8400023 4.1035895
-1.8480023 4.100278
-1.8560023 4.0960073
-1.8640023 4.090837
-1.8720024 4.0848327
-1.8800024 4.0780687
-1.8880024 4.0706253
-1.8960024 4.0625877
-1.9040024 4.054047
-1.9120024 4.045097
-1.9200025 4.0358343
-1.9280025 4.026357
-1.9360025 4.016765
-1.9440025 4.0071564
-1.9520025 3.9976277
-1.9600025 3.988274
-1.9680026 3.9791875
-1.9760026 3.9704547
-1.9840026 3.9621587
-1.9920026 3.9543757
-2.0000026 3.947176
-2.0080025 3.9406233
-2.0160024 3.934773
-2.0240023 3.9296732
-2.0320022 3.9253635
-2.040002 3.9218745
-2.048002 3.9192286
-2.056002 3.9174385
-2.0640018 3.9165092
-2.0720017 3.9164367
-2.0800016 3.9172072
-2.0880015 3.9188004
-2.0960014 3.921187
-2.1040013 3.9243298
-2.1120012 3.928186
-2.120001 3.9327044
-2.128001 3.93783
-2.1360009 3.9435005
-2.1440008 3.9496508
-2.1520007 3.956211
-2.1600006 3.9631085
-2.1680005 3.9702682
-2.1760004 3.9776144
-2.1840003 3.9850693
-2.1920002 3.9925566
-2.2 4.0
-2.208 4.007325
-2.2159998 4.0144606
-2.2239997 4.0213366
-2.2319996 4.0278883
-2.2399995 4.034055
-2.2479994 4.0397806
-2.2559993 4.0450144
-2.2639992 4.049711
-2.2719991 4.0538325
-2.279999 4.0573454
-2.287999 4.060225
-2.2959988 4.0624514
-2.3039987 4.0640125
-2.3119986 4.064904
-2.3199985 4.0651274
-2.3279984 4.06469
-2.3359983 4.0636077
-2.3439982 4.0619016
-2.351998 4.0595984
-2.359998 4.0567307
-2.367998 4.053337
-2.3759978 4.0494595
-2.3839977 4.045145
-2.3919976 4.0404434
-2.3999975 4.035409
-2.4079974 4.030098
-2.4159973 4.024567
-2.4239972 4.018877
-2.431997 4.0130863
-2.439997 4.007256
-2.4479969 4.0014453
-2.4559968 3.9957118
-2.4639966 3.9901128
-2.4719965 3.984702
-2.4799964 3.9795318
-2.4879963 3.97465
-2.4959962 3.9701009
-2.5039961 3.9659252
-2.511996 3.9621596
-2.519996 3.9588351
-2.5279958 3.9559789
-2.5359957 3.953611
-2.5439956 3.9517488
-2.5519955 3.9504023
-2.5599954 3.9495773
-2.5679953 3.9492736
-2.5759952 3.9494863
-2.583995 3.9502048
-2.591995 3.9514136
-2.599995 3.953093
-2.6079948 3.9552188
-2.6159947 3.9577622
-2.6239946 3.9606915
-2.6319945 3.9639702
-2.6399944 3.9675598
-2.6479943 3.9714198
-2.6559942 3.9755063
-2.663994 3.979775
-2.671994 3.98418
-2.6799939 3.9886742
-2.6879938 3.9932117
-2.6959937 3.997745
-2.7039936 4.0022297
-2.7119935 4.0066204
-2.7199934 4.0108747
-2.7279932 4.014952
-2.7359931 4.0188136
-2.743993 4.0224247
-2.751993 4.025752
-2.7599928 4.028767
-2.7679927 4.031444
-2.7759926 4.033762
-2.7839925 4.0357027
-2.7919924 4.0372524
-2.7999923 4.038402
-2.8079922 4.0391464
-2.815992 4.0394845
-2.823992 4.0394187
-2.831992 4.038957
-2.8399918 4.03811
-2.8479917 4.036892
-2.8559916 4.035321
-2.8639915 4.0334196
-2.8719914 4.0312114
-2.8799913 4.0287237
-2.8879912 4.0259857
-2.895991 4.0230293
-2.903991 4.0198874
-2.911991 4.016595
-2.9199908 4.013188
-2.9279907 4.0097017
-2.9359906 4.0061727
-2.9439905 4.002638
-2.9519904 3.9991326
-2.9599903 3.9956918
-2.9679902 3.9923487
-2.97599 3.9891357
-2.98399 3.9860835
-2.9919899 3.98322
-2.9999897 3.9805713
-3.0079896 3.9781604
-3.0159895 3.9760075
-3.0239894 3.974131
-3.0319893 3.9725451
-3.0399892 3.971261
-3.0479891 3.9702873
-3.055989 3.9696283
-3.063989 3.969286
-3.0719888 3.9692583
-3.0799887 3.9695415
-3.0879886 3.970127
-3.0959885 3.9710045
-3.1039884 3.9721603
-3.1119883 3.9735785
-3.1199882 3.9752407
-3.127988 3.9771256
-3.135988 3.9792113
-3.143988 3.981474
-3.1519878 3.9838867
-3.1599877 3.9864244
-3.1679876 3.989058
-3.1759875 3.9917603
-3.1839874 3.994503
-3.1919873 3.9972572
-3.1999872 3.9999957
-3.207987 4.002691
-3.215987 4.005316
-3.2239869 4.0078454
-3.2319868 4.010256
-3.2399867 4.0125246
-3.2479866 4.0146313
-3.2559865 4.016557
-3.2639863 4.0182853
-3.2719862 4.0198016
-3.2799861 4.0210943
-3.287986 4.022154
-3.295986 4.0229735
-3.3039858 4.023548
-3.3119857 4.0238767
-3.3199856 4.023959
-3.3279855 4.0237985
-3.3359854 4.023401
-3.3439853 4.0227737
-3.3519852 4.0219264
-3.359985 4.020872
-3.367985 4.0196238
-3.375985 4.0181975
-3.3839848 4.0166106
-3.3919847 4.014881
-3.3999846 4.0130296
-3.4079845 4.0110755
-3.4159844 4.0090413
-3.4239843 4.006948
-3.4319842 4.0048175
-3.439984 4.0026727
-3.447984 4.000535
-3.4559839 3.998426
-3.4639838 3.996366
-3.4719837 3.9943752
-3.4799836 3.9924731
-3.4879835 3.9906769
-3.4959834 3.9890032
-3.5039833 3.9874668
-3.5119832 3.9860816
-3.519983 3.984858
-3.527983 3.983807
-3.5359828 3.982936
-3.5439827 3.9822502
-3.5519826 3.9817548
-3.5599825 3.981451
-3.5679824 3.981339
-3.5759823 3.9814167
-3.5839822 3.9816809
-3.5919821 3.9821253
-3.599982 3.9827428
-3.607982 3.9835248
-3.6159818 3.9844599
-3.6239817 3.9855375
-3.6319816 3.9867435
-3.6399815 3.9880638
-3.6479814 3.9894834
-3.6559813 3.9909868
-3.6639812 3.992557
-3.671981 3.9941773
-3.679981 3.995831
-3.687981 3.9975
-3.6959808 3.999168
-3.7039807 4.000818
-3.7119806 4.002433
-3.7199805 4.0039983
-3.7279804 4.0054984
-3.7359803 4.006919
-3.7439802 4.0082474
-3.75198 4.009472
-3.75998 4.010581
-3.7679799 4.011566
-3.7759798 4.012419
-3.7839797 4.013133
-3.7919796 4.013704
-3.7999794 4.014127
-3.8079793 4.014401
-3.8159792 4.0145254
-3.8239791 4.0145016
-3.831979 4.014332
-3.839979 4.0140204
-3.8479788 4.0135727
-3.8559787 4.0129952
-3.8639786 4.0122957
-3.8719785 4.0114837
-3.8799784 4.010568
-3.8879783 4.009561
-3.8959782 4.008474
-3.903978 4.007318
-3.911978 4.006107
-3.919978 4.0048537
-3.9279778 4.003571
-3.9359777 4.002273
-3.9439776 4.0009727
-3.9519775 3.999683
-3.9599774 3.998417
-3.9679773 3.9971871
-3.9759772 3.996005
-3.983977 3.994882
-3.991977 3.9938288
-3.9999769 3.992854
-4.007977 3.9919667
-4.015977 3.9911747
-4.023977 3.9904842
-4.0319767 3.9899006
-4.0399766 3.989428
-4.0479765 3.98907
-4.0559764 3.9888272
-4.0639763 3.9887009
-4.071976 3.9886909
-4.079976 3.9887948
-4.087976 3.9890099
-4.095976 3.9893327
-4.103976 3.9897575
-4.1119757 3.9902792
-4.1199756 3.9908905
-4.1279755 3.9915838
-4.1359754 3.992351
-4.1439753 3.9931831
-4.151975 3.994071
-4.159975 3.9950042
-4.167975 3.995973
-4.175975 3.9969673
-4.1839747 3.9979763
-4.1919746 3.9989896
-4.1999745 3.9999967
-4.2079744 3.8670897
-4.2159743 3.733758
-4.223974 3.6004262
-4.231974 3.467095
-4.239974 3.3337631
-4.247974 3.2004313
-4.255974 3.0671
-4.2639737 2.9337683
-4.2719736 2.8004367
-4.2799735 2.6671052
-4.2879734 2.5337734
-4.2959733 2.400442
-4.303973 2.2671103
-4.311973 2.1337786
-4.319973 2.000447
-4.327973 1.8671155
-4.335973 1.7337837
-4.3439727 1.6004522
-4.3519726 1.4671206
-4.3599725 1.3337889
-4.3679724 1.2004573
-4.3759723 1.0671258
-4.383972 0.933794
-4.391972 0.8004625
-4.399972 0.66713095
-4.407972 0.5337994
-4.4159718 0.40046763
-4.4239717 0.2671361
-4.4319715 0.13380456
-4.4399714 4.7278404e-4
-4.4479713 -0.13285875
-4.4559712 -0.26619053
-4.463971 -0.39952183
-4.471971 -0.5328536
-4.479971 -0.6661854
-4.487971 -0.7995167
-4.4959707 -0.93284845
-4.5039706 -1.0130347
-4.5119705 -1.0388085
-4.5199704 -1.0637013
-4.5279703 -1.0874522
-4.53597 -1.1098169
-4.54397 -1.1305714
-4.55197 -1.1495129
-4.55997 -1.1664628
-4.56797 -1.1812674
-4.5759697 -1.1937997
-4.5839696 -1.2039601
-4.5919695 -1.211677
-4.5999694 -1.2169073
-4.6079693 -1.2196363
-4.615969 -1.2198772
-4.623969 -1.217671
-4.631969 -1.2130848
-4.639969 -1.206211
-4.647969 -1.1971657
-4.6559687 -1.1860877
-4.6639686 -1.1731353
-4.6719685 -1.1584852
-4.6799684 -1.1423297
-4.6879683 -1.1248746
-4.695968 -1.1063366
-4.703968 -1.0869405
-4.711968 -1.0669167
-4.719968 -1.0464988
-4.7279677 -1.0259204
-4.7359676 -1.0054132
-4.7439675 -0.9852034
-4.7519674 -0.9655106
-4.7599673 -0.94654465
-4.767967 -0.92850345
-4.775967 -0.91157144
-4.783967 -0.89591736
-4.791967 -0.88169277
-4.799967 -0.86903095
-4.8079667 -0.8580451
-4.8159666 -0.84882826
-4.8239665 -0.8414518
-4.8319664 -0.83596575
-4.8399663 -0.83239794
-4.847966 -0.83075464
-4.855966 -0.8310205
-4.863966 -0.83315915
-4.871966 -0.83711433
-4.879966 -0.84281033
-4.8879657 -0.85015345
-4.8959656 -0.85903347
-4.9039655 -0.8693248
-4.9119654 -0.8808886
-4.9199653 -0.893574
-4.927965 -0.90722066
-4.935965 -0.92166007
-4.943965 -0.936718
-4.951965 -0.95221645
-4.9599648 -0.9679753
-4.9679646 -0.98381513
-4.9759645 -0.9995585
-4.9839644 -1.015032
-4.9919643 -1.0300686
-4.999964 -1.0445088
-5.007964 -1.0582025
-5.015964 -1.0710107
-5.023964 -1.0828063
-5.031964 -1.0934762
-5.0399637 -1.1029212
-5.0479636 -1.111058
-5.0559635 -1.1178188
-5.0639634 -1.1231527
-5.0719633 -1.1270251
-5.079963 -1.1294185
-5.087963 -1.1303322
-5.095963 -1.129782
-5.103963 -1.1277993
-5.111963 -1.1244311
-5.1199627 -1.1197392
-5.1279626 -1.1137987
-5.1359625 -1.1066976
-5.1439624 -1.0985346
-5.1519623 -1.0894194
-5.159962 -1.0794696
-5.167962 -1.0688103
-5.175962 -1.0575726
-5.183962 -1.0458912
-5.191962 -1.0339036
-5.1999617 -1.0217485
-5.2079616 -1.0095638
-5.2159615 -0.99748534
-5.2239614 -0.98564565
-5.2319613 -0.97417194
-5.239961 -0.96318537
-5.247961 -0.9527996
-5.255961 -0.94311935
-5.263961 -0.93424004
-5.2719607 -0.92624635
-5.2799606 -0.9192115
-5.2879605 -0.91319704
-5.2959604 -0.908252
-5.3039603 -0.9044126
-5.31196 -0.9017023
-5.31996 -0.90013146
-5.32796 -0.8996976
-5.33596 -0.90038586
-5.34396 -0.90216887
-5.3519597 -0.9050078
-5.3599596 -0.90885264
-5.3679595 -0.9136431
-5.3759594 -0.9193096
-5.3839593 -0.9257737
-5.391959 -0.93294984
-5.399959 -0.9407457
-5.407959 -0.94906396
-5.415959 -0.9578031
-5.423959 -0.9668585
-5.4319587 -0.9761243
-5.4399586 -0.98549366
-5.4479585 -0.9948607
-5.4559584 -1.0041215
-5.4639583 -1.013175
-5.471958 -1.021924
-5.479958 -1.0302769
-5.487958 -1.0381477
-5.495958 -1.0454572
-5.5039577 -1.0521342
-5.5119576 -1.0581155
-5.5199575 -1.0633465
-5.5279574 -1.0677826
-5.5359573 -1.0713881
-5.543957 -1.0741376
-5.551957 -1.0760152
-5.559957 -1.0770156
-5.567957 -1.0771428
-5.575957 -1.0764107
-5.5839567 -1.0748423
-5.5919566 -1.0724697
-5.5999565 -1.0693333
-5.6079564 -1.0654812
-5.6159563 -1.0609688
-5.623956 -1.0558577
-5.631956 -1.0502151
-5.639956 -1.0441129
-5.647956 -1.0376272
-5.655956 -1.0308366
-5.6639557 -1.0238217
-5.6719556 -1.0166645
-5.6799555 -1.0094471
-5.6879554 -1.0022506
-5.6959553 -0.9951546
-5.703955 -0.98823625
-5.711955 -0.98156935
-5.719955 -0.97522354
-5.727955 -0.9692637
-5.7359548 -0.9637493
-5.7439547 -0.9587339
-5.7519546 -0.9542646
-5.7599545 -0.9503814
-5.7679543 -0.9471172
-5.7759542 -0.9444976
-5.783954 -0.9425403
-5.791954 -0.9412556
-5.799954 -0.9406461
-5.807954 -0.9407067
-5.8159537 -0.94142497
-5.8239536 -0.94278157
-5.8319535 -0.9447503
-5.8399534 -0.9472985
-5.8479533 -0.95038784
-5.855953 -0.9539745
-5.863953 -0.95801
-5.871953 -0.9624417
-5.879953 -0.96721333
-5.887953 -0.9722661
-5.8959527 -0.97753865
-5.9039526 -0.982969
-5.9119525 -0.98849374
-5.9199524 -0.99405
-5.9279523 -0.99957544
-5.935952 -1.005009
-5.943952 -1.0102924
-5.951952 -1.0153692
-5.959952 -1.0201865
-5.967952 -1.0246956
-5.9759517 -1.0288517
-5.9839516 -1.0326146
-5.9919515 -1.0359496
-5.9999514 -1.0388268
-6.0079513 -1.0412226
-6.015951 -1.0431185
-6.023951 -1.0445021
-6.031951 -1.0453672
-6.039951 -1.0457132
-6.0479507 -1.0455452
-6.0559506 -1.0448741
-6.0639505 -1.0437161
-6.0719504 -1.0420926
-6.0799503 -1.0400296
-6.08795 -1.037558
-6.09595 -1.0347121
-6.10395 -1.0315301
-6.11195 -1.0280534
-6.11995 -1.0243256
-6.1279497 -1.0203927
-6.1359496 -1.0163016
-6.1439495 -1.0121008
-6.1519494 -1.007839
-6.1599493 -1.0035642
-6.167949 -0.9993246
-6.175949 -0.9951664
-6.183949 -0.9911344
-6.191949 -0.9872713
-6.199949 -0.98361695
-6.2079487 -0.9802085
-6.2159486 -0.97707933
-6.2239485 -0.97425944
-6.2319484 -0.97177476
-6.2399483 -0.969647
-6.247948 -0.96789366
-6.255948 -0.96652764
-6.263948 -0.96555734
-6.271948 -0.9649867
-6.2799478 -0.96481496
-6.2879477 -0.9650372
-6.2959476 -0.96564406
-6.3039474 -0.96662205
-6.3119473 -0.9679538
-6.3199472 -0.96961844
-6.327947 -0.9715916
-6.335947 -0.97384596
-6.343947 -0.97635156
-6.351947 -0.97907627
-6.3599467 -0.98198587
-6.3679466 -0.98504496
-6.3759465 -0.98821676
-6.3839464 -0.9914642
-6.3919463 -0.9947497
-6.399946 -0.9980363
-6.407946 -1.0012875
-6.415946 -1.0044675
-6.423946 -1.0075425
-6.431946 -1.01048
-6.4399457 -1.0132498
-6.4479456 -1.0158241
-6.4559455 -1.0181776
-6.4639454 -1.0202881
-6.4719453 -1.0221364
-6.479945 -1.0237064
-6.487945 -1.0249858
-6.495945 -1.0259651
-6.503945 -1.0266389
-6.511945 -1.0270048
-6.5199447 -1.0270644
-6.5279446 -1.0268223
-6.5359445 -1.0262864
-6.5439444 -1.0254676
-6.5519443 -1.0243802
-6.559944 -1.023041
-6.567944 -1.021469
-6.575944 -1.019686
-6.583944 -1.0177153
-6.5919437 -1.0155822
-6.5999436 -1.0133132
-6.6079435 -1.0109358
-6.6159434 -1.0084784
-6.6239433 -1.0059696
-6.631943 -1.0034382
-6.639943 -1.0009129
-6.647943 -0.9984215
-6.655943 -0.99599105
-6.663943 -0.9936476
-6.6719427 -0.99141556
-6.6799426 -0.98931783
-6.6879425 -0.98737544
-6.6959424 -0.98560715
-6.7039423 -0.98402965
-6.711942 -0.98265713
-6.719942 -0.9815013
-6.727942 -0.9805711
-6.735942 -0.979873
-6.743942 -0.97941077
-6.7519417 -0.9791853
-6.7599416 -0.97919506
-6.7679415 -0.97943586
-6.7759414 -0.9799009
-6.7839413 -0.98058116
-6.791941 -0.98146534
-6.799941 -0.98253995
-6.807941 -0.98378986
-6.815941 -0.98519814
-6.8239408 -0.98674625
-6.8319407 -0.9884146
-6.8399405 -0.99018264
-6.8479404 -0.99202883
-6.8559403 -0.9939314
-6.8639402 -0.9958682
-6.87194 -0.99781716
-6.87994 -0.9997564
-6.88794 -1.0016644
-6.89594 -1.0035207
-6.9039397 -1.0053055
-6.9119396 -1.0070002
-6.9199395 -1.0085876
-6.9279394 -1.0100518
-6.9359393 -1.0113788
-6.943939 -1.0125563
-6.951939 -1.0135736
-6.959939 -1.0144224
-6.967939 -1.0150962
-6.975939 -1.0155905
-6.9839387 -1.0159029
-6.9919386 -1.0160332
-6.9999385 -1.015983
-7.0079384 -1.0157561
-7.0159383 -1.0153582
-7.023938 -1.0147965
-7.031938 -1.0140803
-7.039938 -1.0132201
-7.047938 -1.0122279
-7.055938 -1.0111173
-7.0639377 -1.0099025
-7.0719376 -1.0085988
-7.0799375 -1.0072224
-7.0879374 -1.0057898
-7.0959373 -1.0043178
-7.103937 -1.0028235
-7.111937 -1.0013238
-7.119937 -0.99983567
-7.127937 -0.9983753
-7.1359367 -0.99695843
-7.1439366 -0.9956001
-7.1519365 -0.9943144
-7.1599364 -0.99311423
-7.1679363 -0.99201155
-7.175936 -0.99101686
-7.183936 -0.99013937
-7.191936 -0.9893867
-7.199936 -0.9887651
-7.207936 -0.98827916
-7.2159357 -0.98793197
-7.2239356 -0.98772484
-7.2319355 -0.9876578
-7.2399354 -0.987729
-7.2479353 -0.98793536
-7.255935 -0.98827213
-7.263935 -0.98873335
-7.271935 -0.9893117
-7.279935 -0.9899987
-7.287935 -0.9907849
-7.2959347 -0.9916597
-7.3039346 -0.99261194
-7.3119345 -0.99362963
-7.3199344 -0.99470043
-7.3279343 -0.99581134
-7.335934 -0.99694943
-7.343934 -0.9981016
-7.351934 -0.99925476
-7.359934 -1.000396
-7.3679338 -1.001513
-7.3759336 -1.0025938
-7.3839335 -1.0036267
-7.3919334 -1.0046015
-7.3999333 -1.005508
-7.407933 -1.0063375
-7.415933 -1.0070822
-7.423933 -1.0077353
-7.431933 -1.0082909
-7.439933 -1.0087447
-7.4479327 -1.0090934
-7.4559326 -1.009335
-7.4639325 -1.0094688
-7.4719324 -1.0094949
-7.4799323 -1.0094151
-7.487932 -1.009232
-7.495932 -1.0089496
-7.503932 -1.0
-7.511932 -1.0
-7.519932 -1.0
-7.5279317 -1.0
-7.5359316 -1.0
-7.5439315 -1.0
-7.5519314 -1.0
-7.5599313 -1.0
-7.567931 -1.0
-7.575931 -1.0
-7.583931 -1.0
-7.591931 -1.0
-7.599931 -1.0
-7.6079307 -1.0
-7.6159306 -1.0
-7.6239305 -1.0
-7.6319304 -1.0
-7.6399302 -1.0
-7.64793 -1.0
-7.65593 -1.0
-7.66393 -1.0
-7.67193 -1.0
-7.6799297 -1.0
-7.6879296 -1.0
-7.6959295 -1.0
-7.7039294 -1.0
-7.7119293 -1.0
-7.719929 -1.0
-7.727929 -1.0
-7.735929 -1.0
-7.743929 -1.0
-7.751929 -1.0
-7.7599287 -1.0
-7.7679286 -1.0
-7.7759285 -1.0
-7.7839284 -1.0
-7.7919283 -1.0
-7.799928 -1.0
-7.807928 -1.0
-7.815928 -1.0
-7.823928 -1.0
-7.831928 -1.0
-7.8399277 -1.0
-7.8479276 -1.0
-7.8559275 -1.0
-7.8639274 -1.0
-7.8719273 -1.0
-7.879927 -1.0
-7.887927 -1.0
-7.895927 -1.0
-7.903927 -1.0
-7.9119267 -1.0
-7.9199266 -1.0
-7.9279265 -1.0
-7.9359264 -1.0
-7.9439263 -1.0
-7.951926 -1.0
-7.959926 -1.0
-7.967926 -1.0
-7.975926 -1.0
-7.983926 -1.0
-7.9919257 -1.0
-7.9999256 -1.0
-8.007926 -1.0
-8.015926 -1.0
-8.023927 -1.0
-8.031927 -1.0
-8.0399275 -1.0
-8.047928 -1.0
-8.055928 -1.0
-8.063929 -1.0
-8.071929 -1.0
-8.079929 -1.0
-8.08793 -1.0
-8.09593 -1.0
-8.10393 -1.0
-8.111931 -1.0
-8.119931 -1.0
-8.127932 -1.0
-8.135932 -1.0
-8.143932 -1.0
-8.151933 -1.0
-8.159933 -1.0
-8.167933 -1.0
-8.175934 -1.0
-8.183934 -1.0
-8.191935 -1.0
-8.199935 -1.0
-8.207935 -1.0
-8.215936 -1.0
-8.223936 -1.0
-8.231936 -1.0
-8.239937 -1.0
-8.247937 -1.0
-8.255938 -1.0
-8.263938 -1.0
-8.271938 -1.0
-8.279939 -1.0
-8.287939 -1.0
-8.295939 -1.0
-8.30394 -1.0
-8.31194 -1.0
-8.319941 -1.0
-8.327941 -1.0
-8.335941 -1.0
-8.343942 -1.0
-8.351942 -1.0
-8.359942 -1.0
-8.367943 -1.0
-8.375943 -1.0
-8.383944 -1.0
-8.391944 -1.0
-8.399944 -1.0
-8.407945 -1.0
-8.415945 -1.0
-8.423945 -1.0
-8.431946 -1.0
-8.439946 -1.0
-8.447947 -1.0
-8.455947 -1.0
-8.463947 -1.0
-8.471948 -1.0
-8.479948 -1.0
-8.487948 -1.0
-8.495949 -1.0
-8.503949 -1.0
-8.51195 -1.0
-8.51995 -1.0
-8.52795 -1.0
-8.535951 -1.0
-8.543951 -1.0
-8.551951 -1.0
-8.559952 -1.0
-8.567952 -1.0
-8.575953 -1.0
-8.583953 -1.0
-8.591953 -1.0
-8.599954 -1.0
-8.607954 -1.0
-8.615954 -1.0
-8.623955 -1.0
-8.631955 -1.0
-8.6399555 -1.0
-8.647956 -1.0
-8.655956 -1.0
-8.663957 -1.0
-8.671957 -1.0
-8.679957 -1.0
-8.687958 -1.0
-8.695958 -1.0
-8.7039585 -1.0
-8.711959 -1.0
-8.719959 -1.0
-8.72796 -1.0
-8.73596 -1.0
-8.74396 -1.0
-8.751961 -1.0
-8.759961 -1.0
-8.7679615 -1.0
-8.775962 -1.0
-8.783962 -1.0
-8.791963 -1.0
-8.799963 -1.0
-8.807963 -1.0
-8.815964 -1.0
-8.823964 -1.0
-8.8319645 -1.0
-8.839965 -1.0
-8.847965 -1.0
-8.855966 -1.0
-8.863966 -1.0
-8.871966 -1.0
-8.879967 -1.0
-8.887967 -1.0
-8.8959675 -1.0
-8.903968 -1.0
-8.911968 -1.0
-8.919969 -1.0
-8.927969 -1.0
-8.935969 -1.0
-8.94397 -1.0
-8.95197 -1.0
-8.95997 -1.0
-8.967971 -1.0
-8.975971 -1.0
-8.983972 -1.0
-8.991972 -1.0
-8.999972 -1.0
-9.007973 -1.0
-9.015973 -1.0
-9.023973 -1.0
-9.031974 -1.0
-9.039974 -1.0
-9.047975 -1.0
-9.055975 -1.0
-9.063975 -1.0
-9.071976 -1.0
-9.079976 -1.0
-9.087976 -1.0
-9.095977 -1.0
-9.103977 -1.0
-9.111978 -1.0
-9.119978 -1.0
-9.127978 -1.0
-9.135979 -1.0
-9.143979 -1.0
-9.151979 -1.0
-9.15998 -1.0
-9.16798 -1.0
-9.175981 -1.0
-9.183981 -1.0
-9.191981 -1.0
-9.199982 -1.0
-9.207982 -1.0
-9.215982 -1.0
-9.223983 -1.0
-9.231983 -1.0
-9.239984 -1.0
-9.247984 -1.0
-9.255984 -1.0
-9.263985 -1.0
-9.271985 -1.0
-9.279985 -1.0
-9.287986 -1.0
-9.295986 -1.0
-9.303987 -1.0
-9.311987 -1.0
-9.319987 -1.0
-9.327988 -1.0
-9.335988 -1.0
-9.343988 -1.0
-9.351989 -1.0
-9.359989 -1.0
-9.36799 -1.0
-9.37599 -1.0
-9.38399 -1.0
-9.391991 -1.0
-9.399991 -1.0
-9.407991 -1.0
-9.415992 -1.0
-9.423992 -1.0
-9.431993 -1.0
-9.439993 -1.0
-9.447993 -1.0
-9.455994 -1.0
-9.463994 -1.0
-9.471994 -1.0
-9.479995 -1.0
-9.487995 -1.0
-9.4959955 -1.0
-9.503996 -1.0
-9.511996 -1.0
-9.519997 -1.0
-9.527997 -1.0
-9.535997 -1.0
-9.543998 -1.0
-9.551998 -1.0
-9.5599985 -1.0
-9.567999 -1.0
-9.575999 -1.0
-9.584 -1.0
-9.592 -1.0
-9.6 -1.0
-9.608001 -1.0
-9.616001 -1.0
-9.6240015 -1.0
-9.632002 -1.0
-9.640002 -1.0
-9.648003 -1.0
-9.656003 -1.0
-9.664003 -1.0
-9.672004 -1.0
-9.680004 -1.0
-9.6880045 -1.0
-9.696005 -1.0
-9.704005 -1.0
-9.712006 -1.0
-9.720006 -1.0
-9.728006 -1.0
-9.736007 -1.0
-9.744007 -1.0
-9.7520075 -1.0
-9.760008 -1.0
-9.768008 -1.0
-9.776009 -1.0
-9.784009 -1.0
-9.792009 -1.0
-9.80001 -1.0
-9.80801 -1.0
-9.81601 -1.0
-9.824011 -1.0
-9.832011 -1.0
-9.840012 -1.0
-9.848012 -1.0
-9.856012 -1.0
-9.864013 -1.0
-9.872013 -1.0
-9.880013 -1.0
-9.888014 -1.0
-9.896014 -1.0
-9.904015 -1.0
-9.912015 -1.0
-9.920015 -1.0
-9.928016 -1.0
-9.936016 -1.0
-9.944016 -1.0
-9.952017 -1.0
-9.960017 -1.0
-9.968018 -1.0
-9.976018 -1.0
-9.984018 -1.0
-9.992019 -1.0
-10.000019 -1.0
-10.008019 -1.0
-10.01602 -1.0
-10.02402 -1.0
-10.032021 -1.0
-10.040021 -1.0
-10.048021 -1.0
-10.056022 -1.0
-10.064022 -1.0
-10.072022 -1.0
-10.080023 -1.0
-10.088023 -1.0
-10.096024 -1.0
-10.104024 -1.0
-10.112024 -1.0
-10.120025 -1.0
-10.128025 -1.0
-10.136025 -1.0
-10.144026 -1.0
-10.152026 -1.0
-10.160027 -1.0
-10.168027 -1.0
-10.176027 -1.0
-10.184028 -1.0
-10.192028 -1.0
-10.200028 -1.0
-10.208029 -1.0
-10.216029 -1.0
-10.22403 -1.0
-10.23203 -1.0
-10.24003 -1.0
-10.248031 -1.0
-10.256031 -1.0
-10.264031 -1.0
-10.272032 -1.0
-10.280032 -1.0
-10.288033 -1.0
-10.296033 -1.0
-10.304033 -1.0
-10.312034 -1.0
-10.320034 -1.0
-10.328034 -1.0
-10.336035 -1.0
-10.344035 -1.0
-10.3520355 -1.0
-10.360036 -1.0
-10.368036 -1.0
-10.376037 -1.0
-10.384037 -1.0
-10.392037 -1.0
-10.400038 -1.0
-10.408038 -1.0
-10.4160385 -1.0
-10.424039 -1.0
-10.432039 -1.0
-10.44004 -1.0
-10.44804 -1.0
-10.45604 -1.0
-10.464041 -1.0
-10.472041 -1.0
-10.4800415 -1.0
-10.488042 -1.0
-10.496042 -1.0
-10.504043 -1.0
-10.512043 -1.0
-10.520043 -1.0
-10.528044 -1.0
-10.536044 -1.0
-10.5440445 -1.0
-10.552045 -1.0
-10.560045 -1.0
-10.568046 -1.0
-10.576046 -1.0
-10.584046 -1.0
-10.592047 -1.0
-10.600047 -1.0
-10.6080475 -1.0
-10.616048 -1.0
-10.624048 -1.0
-10.632049 -1.0
-10.640049 -1.0
-10.648049 -1.0
-10.65605 -1.0
-10.66405 -1.0
-10.67205 -1.0
-10.680051 -1.0
-10.688051 -1.0
-10.696052 -1.0
-10.704052 -1.0
-10.712052 -1.0
-10.720053 -1.0
-10.728053 -1.0
-10.736053 -1.0
-10.744054 -1.0
-10.752054 -1.0
-10.760055 -1.0
-10.768055 -1.0
-10.776055 -1.0
-10.784056 -1.0
-10.792056 -1.0
-10.800056 -1.0
-10.808057 -1.0
-10.816057 -1.0
-10.824058 -1.0
-10.832058 -1.0
-10.840058 -1.0
-10.848059 -1.0
-10.856059 -1.0
-10.864059 -1.0
-10.87206 -1.0
-10.88006 -1.0
-10.888061 -1.0
-10.896061 -1.0
-10.904061 -1.0
-10.912062 -1.0
-10.920062 -1.0
-10.928062 -1.0
-10.936063 -1.0
-10.944063 -1.0
-10.952064 -1.0
-10.960064 -1.0
-10.968064 -1.0
-10.976065 -1.0
-10.984065 -1.0
-10.992065 -1.0
-11.000066 -0.9983549
-11.008066 -0.79834557
-11.016067 -0.5983362
-11.024067 -0.39832687
-11.032067 -0.19831753
-11.040068 1.6918182e-3
-11.048068 0.20170116
-11.056068 0.4017105
-11.064069 0.60171986
-11.072069 0.8017292
-11.08007 1.0017385
-11.08807 1.2017479
-11.09607 1.4017572
-11.104071 1.6017666
-11.112071 1.8017759
-11.120071 2.0017853
-11.128072 2.2017946
-11.136072 2.401804
-11.144073 2.6018133
-11.152073 2.8018227
-11.160073 3.001832
-11.168074 3.2018414
-11.176074 3.4018507
-11.184074 3.60186
-11.192075 3.8018694
-11.200075 4.000189
-11.208076 4.020098
-11.216076 4.039489
-11.224076 4.0581737
-11.232077 4.0759754
-11.240077 4.0927286
-11.248077 4.1082807
-11.256078 4.1224947
-11.264078 4.1352477
-11.2720785 4.146435
-11.280079 4.155968
-11.288079 4.163778
-11.29608 4.169812
-11.30408 4.1740384
-11.31208 4.176443
-11.320081 4.177031
-11.328081 4.1758246
-11.3360815 4.1728644
-11.344082 4.1682086
-11.352082 4.161931
-11.360083 4.1541204
-11.368083 4.14488
-11.376083 4.1343255
-11.384084 4.1225843
-11.392084 4.1097937
-11.4000845 4.096099
-11.408085 4.0816526
-11.416085 4.0666127
-11.424086 4.05114
-11.432086 4.035397
-11.440086 4.019547
-11.448087 4.0037518
-11.456087 3.9881692
-11.4640875 3.9729538
-11.472088 3.958252
-11.480088 3.9442048
-11.488089 3.930943
-11.496089 3.9185877
-11.504089 3.9072495
-11.51209 3.8970265
-11.52009 3.8880038
-11.5280905 3.8802538
-11.536091 3.8738337
-11.544091 3.8687878
-11.552092 3.8651443
-11.560092 3.8629189
-11.568092 3.8621106
-11.576093 3.8627052
-11.584093 3.8646746
-11.592093 3.8679771
-11.600094 3.8725586
-11.608094 3.8783517
-11.616095 3.8852797
-11.624095 3.8932538
-11.632095 3.9021783
-11.640096 3.9119468
-11.648096 3.9224482
-11.656096 3.9335647
-11.664097 3.9451742
-11.672097 3.9571528
-11.680098 3.9693727
-11.688098 3.981708
-11.696098 3.9940314
-11.704099 4.0062194
-11.712099 4.0181518
-11.720099 4.0297112
-11.7281 4.0407877
-11.7361 4.051277
-11.744101 4.0610833
-11.752101 4.070118
-11.760101 4.078302
-11.768102 4.085567
-11.776102 4.0918536
-11.784102 4.0971146
-11.792103 4.101313
-11.800103 4.1044235
-11.808104 4.1064315
-11.816104 4.1073346
-11.824104 4.1071415
-11.832105 4.105871
-11.840105 4.1035533
-11.848105 4.100229
-11.856106 4.0959463
-11.864106 4.090764
-11.872107 4.0847497
-11.880107 4.0779757
-11.888107 4.0705237
-11.896108 4.0624785
-11.904108 4.053931
-11.912108 4.044976
-11.920109 4.0357094
-11.928109 4.02623
-11.93611 4.0166364
-11.94411 4.0070276
-11.95211 3.9975004
-11.960111 3.9881496
-11.968111 3.9790664
-11.976111 3.9703388
-11.984112 3.9620485
-11.992112 3.9542727
-12.000113 3.9470816
-12.008113 3.9405375
-12.016113 3.9346972
-12.024114 3.9296079
-12.032114 3.9253092
-12.040114 3.9218316
-12.048115 3.919197
-12.056115 3.9174194
-12.064116 3.9165025
-12.072116 3.916442
-12.080116 3.9172244
-12.088117 3.9188294
-12.096117 3.921227
-12.104117 3.9243808
-12.112118 3.928247
-12.120118 3.932775
-12.1281185 3.9379091
-12.136119 3.9435878
-12.144119 3.9497452
-12.15212 3.9563112
-12.16012 3.9632134
-12.16812 3.9703774
-12.176121 3.977726
-12.184121 3.9851823
-12.1921215 3.99267
-12.200122 4.0001125
-12.208122 4.007436
-12.216123 4.0145683
-12.224123 4.02144
-12.232123 4.027987
-12.240124 4.0341477
-12.248124 4.0398664
-12.2561245 4.045092
-12.264125 4.049781
-12.272125 4.0538926
-12.280126 4.057396
-12.288126 4.0602655
-12.296126 4.0624814
-12.304127 4.064032
-12.312127 4.0649133
-12.3201275 4.0651255
-12.328128 4.0646777
-12.336128 4.0635853
-12.344129 4.0618687
-12.352129 4.059556
-12.360129 4.0566792
-12.36813 4.053277
-12.37613 4.0493917
-12.3841305 4.0450697
-12.392131 4.0403624
-12.400131 4.0353227
-12.408132 4.0300064
-12.416132 4.0244727
-12.424132 4.0187798
-12.432133 4.0129876
-12.440133 4.007157
-12.448133 4.0013466
-12.456134 3.9956145
-12.464134 3.990018
-12.472135 3.984611
-12.480135 3.9794445
-12.488135 3.974568
-12.496136 3.9700246
-12.504136 3.9658556
-12.512136 3.9620976
-12.520137 3.9587808
-12.528137 3.9559326
-12.536138 3.9535737
-12.544138 3.9517202
-12.552138 3.9503832
-12.560139 3.9495673
-12.568139 3.949273
-12.576139 3.9494948
-12.58414 3.9502225
-12.59214 3.9514399
-12.600141 3.9531279
-12.608141 3.9552617
-12.616141 3.9578128
-12.624142 3.9607487
-12.632142 3.9640336
-12.640142 3.967629
-12.648143 3.9714937
-12.656143 3.975584
-12.664144 3.979856
-12.672144 3.9842634
-12.680144 3.9887595
-12.688145 3.993297
-12.696145 3.9978309
-12.704145 4.002314
-12.712146 4.006703
-12.720146 4.0109544
-12.728147 4.015028
-12.736147 4.0188856
-12.744147 4.0224915
-12.752148 4.0258136
-12.760148 4.0288224
-12.768148 4.0314927
-12.776149 4.0338035
-12.784149 4.0357366
-12.79215 4.0372787
-12.80015 4.0384207
-12.80815 4.039157
-12.816151 4.039487
-12.824151 4.0394135
-12.832151 4.038944
-12.840152 4.0380893
-12.848152 4.036864
-12.856153 4.0352864
-12.864153 4.033378
-12.872153 4.0311637
-12.880154 4.0286703
-12.888154 4.0259275
-12.896154 4.022967
-12.904155 4.019821
-12.912155 4.016526
-12.920156 4.0131164
-12.928156 4.009629
-12.936156 4.0060997
-12.944157 4.002565
-12.952157 3.9990602
-12.960157 3.9956207
-12.968158 3.99228
-12.976158 3.98907
-12.9841585 3.986021
-12.992159 3.983162
-13.000159 3.9805174
-13.00816 3.9781117
-13.01616 3.9759645
-13.02416 3.974094
-13.032161 3.9725142
-13.040161 3.9712367
-13.0481615 3.9702697
-13.056162 3.9696174
-13.064162 3.9692817
-13.072163 3.9692612
-13.080163 3.969551
-13.088163 3.9701433
-13.096164 3.971027
-13.104164 3.972189
-13.1121645 3.9736128
-13.120165 3.9752798
-13.128165 3.97717
-13.136166 3.97926
-13.144166 3.981526
-13.152166 3.9839425
-13.160167 3.9864821
-13.168167 3.989118
-13.1761675 3.9918218
-13.184168 3.994565
-13.192168 3.9973197
-13.200169 4.000057
-13.208169 4.002751
-13.216169 4.0053744
-13.22417 4.0079017
-13.23217 4.0103097
-13.2401705 4.012575
-13.248171 4.0146775
-13.256171 4.016599
-13.264172 4.018323
-13.272172 4.019834
-13.280172 4.0211215
-13.288173 4.022176
-13.296173 4.0229897
-13.304173 4.0235586
-13.312174 4.0238814
-13.320174 4.023958
-13.328175 4.023792
-13.336175 4.023389
-13.344175 4.022756
-13.352176 4.021904
-13.360176 4.0208445
-13.368176 4.019592
-13.376177 4.0181613
-13.384177 4.0165706
-13.392178 4.0148377
-13.400178 4.0129833
-13.408178 4.0110273
-13.416179 4.008991
-13.424179 4.0068965
-13.432179 4.0047655
-13.44018 4.00262
-13.44818 4.000483
-13.456181 3.9983745
-13.464181 3.996316
-13.472181 3.994327
-13.480182 3.9924273
-13.488182 3.990634
-13.496182 3.9889631
-13.504183 3.9874306
-13.512183 3.9860487
-13.520184 3.98483
-13.528184 3.9837828
-13.536184 3.9829164
-13.544185 3.9822354
-13.552185 3.9817448
-13.560185 3.9814458
-13.568186 3.9813385
-13.576186 3.981421
-13.584187 3.98169
-13.592187 3.982139
-13.600187 3.982761
-13.608188 3.9835467
-13.616188 3.984486
-13.624188 3.985567
-13.632189 3.9867759
-13.640189 3.9880996
-13.64819 3.9895215
-13.65619 3.9910269
-13.66419 3.992599
-13.672191 3.9942203
-13.680191 3.9958744
-13.688191 3.9975438
-13.696192 3.9992118
-13.704192 4.0008607
-13.712193 4.0024753
-13.720193 4.004039
-13.728193 4.005537
-13.736194 4.0069556
-13.744194 4.0082817
-13.752194 4.009503
-13.760195 4.010609
-13.768195 4.011591
-13.776196 4.01244
-13.784196 4.0131507
-13.792196 4.013717
-13.800197 4.0141363
-13.808197 4.014406
-13.816197 4.014527
-13.824198 4.0144987
-13.832198 4.014325
-13.8401985 4.01401
-13.848199 4.0135584
-13.856199 4.0129776
-13.8642 4.0122747
-13.8722 4.0114594
-13.8802 4.0105414
-13.888201 4.009532
-13.896201 4.0084424
-13.9042015 4.007285
-13.912202 4.0060725
-13.920202 4.004818
-13.928203 4.003535
-13.936203 4.0022364
-13.944203 4.000936
-13.952204 3.9996467
-13.960204 3.9983816
-13.9682045 3.9971528
-13.976205 3.9959722
-13.984205 3.994851
-13.992206 3.9937997
-14.000206 3.9928274
-14.008206 3.991943
-14.016207 3.9911537
-14.024207 3.990466
-14.0322075 3.9898853
-14.040208 3.9894161
-14.048208 3.9890609
-14.056209 3.988822
-14.064209 3.988699
-14.072209 3.9886923
-14.08021 3.9887996
-14.08821 3.989018
-14.0962105 3.9893436
-14.104211 3.9897718
-14.112211 3.990296
-14.120212 3.9909096
-14.128212 3.9916053
-14.136212 3.992375
-14.144213 3.993209
-14.152213 3.9940982
-14.160213 3.9950328
-14.168214 3.9960027
-14.176214 3.9969974
-14.184215 3.9980063
-14.192215 3.9990196
-14.200215 3.996408
-14.208216 3.863068
-14.216216 3.7297287
-14.224216 3.5963893
-14.232217 3.4630494
-14.240217 3.32971
-14.248218 3.1963706
-14.256218 3.0630307
-14.264218 2.9296913
-14.272219 2.796352
-14.280219 2.6630123
-14.288219 2.5296726
-14.29622 2.3963332
-14.30422 2.2629936
-14.312221 2.129654
-14.320221 1.9963145
-14.328221 1.8629749
-14.336222 1.7296352
-14.344222 1.5962958
-14.352222 1.4629562
-14.360223 1.3296165
-14.368223 1.1962771
-14.376224 1.0629375
-14.384224 0.92959785
-14.392224 0.79625845
-14.400225 0.6629188
-14.408225 0.5295794
-14.416225 0.39623976
-14.424226 0.2629001
-14.432226 0.12956071
-14.440227 -3.7789345e-3
-14.448227 -0.13711834
-14.456227 -0.27045822
-14.464228 -0.40379763
-14.472228 -0.53713703
-14.480228 -0.6704769
-14.488229 -0.8038163
-14.496229 -0.9371557
-14.50423 -1.0138799
-14.51223 -1.0396309
-14.52023 -1.0644922
-14.528231 -1.0882031
-14.536231 -1.1105201
-14.544231 -1.1312197
-14.552232 -1.1501
-14.560232 -1.1669829
-14.568233 -1.1817157
-14.576233 -1.1941723
-14.584233 -1.2042537
-14.592234 -1.2118895
-14.600234 -1.2170376
-14.608234 -1.219684
-14.616235 -1.219843
-14.624235 -1.2175564
-14.632236 -1.212892
-14.640236 -1.2059433
-14.648236 -1.1968274
-14.656237 -1.1856833
-14.664237 -1.1726702
-14.672237 -1.1579654
-14.680238 -1.1417618
-14.688238 -1.1242657
-14.6962385 -1.1056938
-14.704239 -1.0862715
-14.712239 -1.0662293
-14.72024 -1.045801
-14.72824 -1.02522
-14.73624 -1.004718
-14.744241 -0.98452103
-14.752241 -0.9648486
-14.7602415 -0.9459099
-14.768242 -0.92790276
-14.776242 -0.9110109
-14.784243 -0.89540267
-14.792243 -0.88122904
-14.800243 -0.86862254
-14.808244 -0.85769594
-14.816244 -0.8485412
-14.8242445 -0.8412293
-14.832245 -0.83580923
-14.840245 -0.8323083
-14.848246 -0.83073187
-14.856246 -0.8310639
-14.864246 -0.83326745
-14.872247 -0.83728534
-14.880247 -0.84304124
-14.8882475 -0.85044086
-14.896248 -0.8593734
-14.904248 -0.8697127
-14.912249 -0.88131946
-14.920249 -0.8940425
-14.928249 -0.90772104
-14.93625 -0.9221863
-14.94425 -0.93726397
-14.9522505 -0.9527756
-14.960251 -0.9685415
-14.968251 -0.98438185
-14.976252 -1.0001194
-14.984252 -1.015581
-14.992252 -1.0305998
-15.000253 -1.0450164
-15.008253 -1.0586814
-15.016253 -1.0714558
-15.024254 -1.0832133
-15.032254 -1.0938411
-15.040255 -1.1032405
-15.048255 -1.1113287
-15.056255 -1.1180388
-15.064256 -1.12332
-15.072256 -1.1271389
-15.080256 -1.1294781
-15.088257 -1.1303378
-15.096257 -1.1297342
-15.104258 -1.1276994
-15.112258 -1.1242812
-15.120258 -1.1195414
-15.128259 -1.113556
-15.136259 -1.1064131
-15.144259 -1.0982125
-15.15226 -1.0890635
-15.16026 -1.0790844
-15.168261 -1.0684005
-15.176261 -1.0571431
-15.184261 -1.0454471
-15.192262 -1.03345
-15.200262 -1.0212905
-15.208262 -1.0091068
-15.216263 -0.99703425
-15.224263 -0.98520535
-15.232264 -0.97374713
-15.240264 -0.96278065
-15.248264 -0.9524191
-15.256265 -0.9427671
-15.264265 -0.93391937
-15.272265 -0.92596036
-15.280266 -0.918963
-15.288266 -0.9129882
-15.296267 -0.9080845
-15.304267 -0.9042878
-15.312267 -0.9016209
-15.320268 -0.9000938
-15.328268 -0.8997035
-15.336268 -0.9004345
-15.344269 -0.9022592
-15.352269 -0.90513813
-15.36027 -0.909021
-15.36827 -0.91384715
-15.37627 -0.9195464
-15.384271 -0.9260403
-15.392271 -0.93324274
-15.400271 -0.9410613
-15.408272 -0.94939846
-15.416272 -0.9581524
-15.424273 -0.96721876
-15.432273 -0.9764911
-15.440273 -0.9858629
-15.448274 -0.9952283
-15.456274 -1.0044833
-15.464274 -1.0135272
-15.472275 -1.0222628
-15.480275 -1.0305986
-15.488276 -1.0384489
-15.496276 -1.0457352
-15.504276 -1.052386
-15.512277 -1.0583386
-15.520277 -1.0635391
-15.528277 -1.067943
-15.536278 -1.0715148
-15.544278 -1.0742297
-15.5522785 -1.0760725
-15.560279 -1.0770376
-15.568279 -1.0771298
-15.57628 -1.0763634
-15.58428 -1.0747617
-15.59228 -1.0723573
-15.600281 -1.0691907
-15.608281 -1.0653105
-15.6162815 -1.0607723
-15.624282 -1.0556378
-15.632282 -1.0499748
-15.640283 -1.0438552
-15.648283 -1.037355
-15.656283 -1.0305531
-15.664284 -1.0235304
-15.672284 -1.0163687
-15.6802845 -1.0091501
-15.688285 -1.0019557
-15.696285 -0.9948652
-15.704286 -0.9879554
-15.712286 -0.98130006
-15.720286 -0.9749685
-15.728287 -0.9690257
-15.736287 -0.96353066
-15.7442875 -0.95853686
-15.752288 -0.9540909
-15.760288 -0.9502326
-15.768289 -0.94699466
-15.776289 -0.9444023
-15.784289 -0.94247293
-15.79229 -0.94121647
-15.80029 -0.9406352
-15.8082905 -0.9407237
-15.816291 -0.94146943
-15.824291 -0.9428525
-15.832292 -0.9448465
-15.840292 -0.9474186
-15.848292 -0.9505301
-15.856293 -0.954137
-15.864293 -0.9581907
-15.872293 -0.9626382
-15.880294 -0.9674233
-15.888294 -0.972487
-15.896295 -0.97776794
-15.904295 -0.98320395
-15.912295 -0.9887317
-15.920296 -0.9942882
-15.928296 -0.99981123
-15.936296 -1.00524
-15.944297 -1.0105158
-15.952297 -1.0155828
-15.960298 -1.0203881
-15.968298 -1.0248832
-15.976298 -1.0290232
-15.984299 -1.0327685
-15.992299 -1.0360843
-16.0003 -1.0389413
-16.008299 -1.0413154
-16.016298 -1.0431892
-16.024298 -1.0445504
-16.032297 -1.045393
-16.040297 -1.0457165
-16.048296 -1.0455265
-16.056295 -1.0448341
-16.064295 -1.0436556
-16.072294 -1.0420127
-16.080294 -1.0399318
-16.088293 -1.0374434
-16.096292 -1.0345825
-16.104292 -1.0313873
-16.112291 -1.0278991
-16.12029 -1.0241619
-16.12829 -1.0202215
-16.13629 -1.016125
-16.144289 -1.0119209
-16.152288 -1.0076578
-16.160288 -1.0033838
-16.168287 -0.99914694
-16.176287 -0.9949933
-16.184286 -0.9909679
-16.192286 -0.987113
-16.200285 -0.9834686
-16.208284 -0.9800713
-16.216284 -0.97695476
-16.224283 -0.9741486
-16.232283 -0.97167856
-16.240282 -0.9695663
-16.248281 -0.9678289
-16.25628 -0.9664793
-16.26428 -0.9655256
-16.27228 -0.9649716
-16.28028 -0.9648164
-16.288279 -0.96505475
-16.296278 -0.9656772
-16.304277 -0.9666701
-16.312277 -0.96801597
-16.320276 -0.96969366
-16.328276 -0.97167885
-16.336275 -0.97394395
-16.344275 -0.9764591
-16.352274 -0.97919184
-16.360273 -0.9821081
-16.368273 -0.9851723
-16.376272 -0.98834777
-16.384272 -0.99159724
-16.392271 -0.9948834
-16.40027 -0.99816906
-16.40827 -1.0014178
-16.41627 -1.0045941
-16.424269 -1.0076638
-16.432268 -1.010595
-16.440268 -1.0133573
-16.448267 -1.015923
-16.456266 -1.0182672
-16.464266 -1.0203674
-16.472265 -1.0222046
-16.480265 -1.0237632
-16.488264 -1.0250306
-16.496264 -1.0259978
-16.504263 -1.0266593
-16.512262 -1.0270131
-16.520262 -1.0270605
-16.528261 -1.0268066
-16.53626 -1.0262592
-16.54426 -1.0254297
-16.55226 -1.0243322
-16.560259 -1.0229834
-16.568258 -1.0214028
-16.576258 -1.0196121
-16.584257 -1.0176346
-16.592257 -1.0154958
-16.600256 -1.0132222
-16.608255 -1.0108413
-16.616255 -1.0083815
-16.624254 -1.0058714
-16.632254 -1.00334
-16.640253 -1.0008156
-16.648252 -0.9983261
-16.656252 -0.9958988
-16.664251 -0.99355924
-16.67225 -0.9913321
-16.68025 -0.98924017
-16.68825 -0.9873042
-16.696249 -0.9855431
-16.704248 -0.9839733
-16.712248 -0.9826089
-16.720247 -0.9814616
-16.728247 -0.9805402
-16.736246 -0.9798511
-16.744246 -0.97939783
-16.752245 -0.9791814
-16.760244 -0.9792
-16.768244 -0.9794494
-16.776243 -0.9799227
-16.784243 -0.98061085
-16.792242 -0.98150235
-16.800241 -0.9825838
-16.80824 -0.9838399
-16.81624 -0.9852537
-16.82424 -0.9868066
-16.83224 -0.9884789
-16.840239 -0.9902501
-16.848238 -0.99209875
-16.856237 -0.9940029
-16.864237 -0.99594045
-16.872236 -0.9978893
-16.880236 -0.99982756
-16.888235 -1.001734
-16.896235 -1.0035878
-16.904234 -1.0053695
-16.912233 -1.0070605
-16.920233 -1.0086435
-16.928232 -1.0101029
-16.936232 -1.0114245
-16.944231 -1.0125962
-16.95223 -1.0136076
-16.96023 -1.0144501
-16.96823 -1.0151173
-16.976229 -1.015605
-16.984228 -1.0159107
-16.992228 -1.0160345
-17.000227 -1.0159779
-17.008226 -1.0157448
-17.016226 -1.0153408
-17.024225 -1.0147735
-17.032225 -1.0140519
-17.040224 -1.0131868
-17.048223 -1.0121902
-17.056223 -1.0110757
-17.064222 -1.0098575
-17.072222 -1.0085511
-17.080221 -1.0071725
-17.08822 -1.0057381
-17.09622 -1.0042652
-17.10422 -1.0027704
-17.112219 -1.0012711
-17.120218 -0.99978375
-17.128218 -0.9983247
-17.136217 -0.99690974
-17.144217 -0.99555385
-17.152216 -0.994271
-17.160215 -0.99307406
-17.168215 -0.99197507
-17.176214 -0.9909844
-17.184214 -0.9901111
-17.192213 -0.98936296
-17.200212 -0.988746
-17.208212 -0.98826486
-17.216211 -0.9879225
-17.22421 -0.98772025
-17.23221 -0.98765796
-17.24021 -0.9877339
-17.248209 -0.9879447
-17.256208 -0.9882859
-17.264208 -0.9887512
-17.272207 -0.98933333
-17.280207 -0.99002385
-17.288206 -0.99081314
-17.296206 -0.99169075
-17.304205 -0.9926453
-17.312204 -0.993665
-17.320204 -0.99473727
-17.328203 -0.99584925
-17.336203 -0.99698794
-17.344202 -0.9981403
-17.352201 -0.99929315
-17.3602 -1.0004338
-17.3682 -1.0015496
-17.3762 -1.0026289
-17.3842 -1.0036601
-17.392199 -1.0046326
-17.400198 -1.0055367
-17.408197 -1.0063635
-17.416197 -1.0071052
-17.424196 -1.007755
-17.432196 -1.0083075
-17.440195 -1.0087578
-17.448195 -1.0091031
-17.456194 -1.0093411
-17.464193 -1.0094713
-17.472193 -1.009494
-17.480192 -1.0094107
-17.488192 -1.0092244
-17.496191 -1.0089389
-17.50419 -1.0
-17.51219 -1.0
-17.52019 -1.0
-17.528189 -1.0
-17.536188 -1.0
-17.544188 -1.0
-17.552187 -1.0
-17.560186 -1.0
-17.568186 -1.0
-17.576185 -1.0
-17.584185 -1.0
-17.592184 -1.0
-17.600183 -1.0
-17.608183 -1.0
-17.616182 -1.0
-17.624182 -1.0
-17.632181 -1.0
-17.64018 -1.0
-17.64818 -1.0
-17.65618 -1.0
-17.664179 -1.0
-17.672178 -1.0
-17.680178 -1.0
-17.688177 -1.0
-17.696177 -1.0
-17.704176 -1.0
-17.712175 -1.0
-17.720175 -1.0
-17.728174 -1.0
-17.736174 -1.0
-17.744173 -1.0
-17.752172 -1.0
-17.760172 -1.0
-17.768171 -1.0
-17.77617 -1.0
-17.78417 -1.0
-17.79217 -1.0
-17.800169 -1.0
-17.808168 -1.0
-17.816168 -1.0
-17.824167 -1.0
-17.832167 -1.0
-17.840166 -1.0
-17.848166 -1.0
-17.856165 -1.0
-17.864164 -1.0
-17.872164 -1.0
-17.880163 -1.0
-17.888163 -1.0
-17.896162 -1.0
-17.904161 -1.0
-17.91216 -1.0
-17.92016 -1.0
-17.92816 -1.0
-17.93616 -1.0
-17.944159 -1.0
-17.952158 -1.0
-17.960157 -1.0
-17.968157 -1.0
-17.976156 -1.0
-17.984156 -1.0
-17.992155 -1.0
-18.000154 -1.0
-18.008154 -1.0
-18.016153 -1.0
-18.024153 -1.0
-18.032152 -1.0
-18.040152 -1.0
-18.048151 -1.0
-18.05615 -1.0
-18.06415 -1.0
-18.07215 -1.0
-18.080149 -1.0
-18.088148 -1.0
-18.096148 -1.0
-18.104147 -1.0
-18.112146 -1.0
-18.120146 -1.0
-18.128145 -1.0
-18.136145 -1.0
-18.144144 -1.0
-18.152143 -1.0
-18.160143 -1.0
-18.168142 -1.0
-18.176142 -1.0
-18.184141 -1.0
-18.19214 -1.0
-18.20014 -1.0
-18.20814 -1.0
-18.216139 -1.0
-18.224138 -1.0
-18.232138 -1.0
-18.240137 -1.0
-18.248137 -1.0
-18.256136 -1.0
-18.264135 -1.0
-18.272135 -1.0
-18.280134 -1.0
-18.288134 -1.0
-18.296133 -1.0
-18.304132 -1.0
-18.312132 -1.0
-18.320131 -1.0
-18.32813 -1.0
-18.33613 -1.0
-18.34413 -1.0
-18.352129 -1.0
-18.360128 -1.0
-18.368128 -1.0
-18.376127 -1.0
-18.384127 -1.0
-18.392126 -1.0
-18.400126 -1.0
-18.408125 -1.0
-18.416124 -1.0
-18.424124 -1.0
-18.432123 -1.0
-18.440123 -1.0
-18.448122 -1.0
-18.456121 -1.0
-18.46412 -1.0
-18.47212 -1.0
-18.48012 -1.0
-18.48812 -1.0
-18.496119 -1.0
-18.504118 -1.0
-18.512117 -1.0
-18.520117 -1.0
-18.528116 -1.0
-18.536116 -1.0
-18.544115 -1.0
-18.552114 -1.0
-18.560114 -1.0
-18.568113 -1.0
-18.576113 -1.0
-18.584112 -1.0
-18.592112 -1.0
-18.600111 -1.0
-18.60811 -1.0
-18.61611 -1.0
-18.62411 -1.0
-18.632109 -1.0
-18.640108 -1.0
-18.648108 -1.0
-18.656107 -1.0
-18.664106 -1.0
-18.672106 -1.0
-18.680105 -1.0
-18.688105 -1.0
-18.696104 -1.0
-18.704103 -1.0
-18.712103 -1.0
-18.720102 -1.0
-18.728102 -1.0
-18.736101 -1.0
-18.7441 -1.0
-18.7521 -1.0
-18.7601 -1.0
-18.768099 -1.0
-18.776098 -1.0
-18.784098 -1.0
-18.792097 -1.0
-18.800097 -1.0
-18.808096 -1.0
-18.816095 -1.0
-18.824095 -1.0
-18.832094 -1.0
-18.840094 -1.0
-18.848093 -1.0
-18.856092 -1.0
-18.864092 -1.0
-18.872091 -1.0
-18.88009 -1.0
-18.88809 -1.0
-18.89609 -1.0
-18.904089 -1.0
-18.912088 -1.0
-18.920088 -1.0
-18.928087 -1.0
-18.936087 -1.0
-18.944086 -1.0
-18.952085 -1.0
-18.960085 -1.0
-18.968084 -1.0
-18.976084 -1.0
-18.984083 -1.0
-18.992083 -1.0
-19.000082 -1.0
-19.008081 -1.0
-19.01608 -1.0
-19.02408 -1.0
-19.03208 -1.0
-19.04008 -1.0
-19.048079 -1.0
-19.056078 -1.0
-19.064077 -1.0
-19.072077 -1.0
-19.080076 -1.0
-19.088076 -1.0
-19.096075 -1.0
-19.104074 -1.0
-19.112074 -1.0
-19.120073 -1.0
-19.128073 -1.0
-19.136072 -1.0
-19.144072 -1.0
-19.152071 -1.0
-19.16007 -1.0
-19.16807 -1.0
-19.17607 -1.0
-19.184069 -1.0
-19.192068 -1.0
-19.200068 -1.0
-19.208067 -1.0
-19.216066 -1.0
-19.224066 -1.0
-19.232065 -1.0
-19.240065 -1.0
-19.248064 -1.0
-19.256063 -1.0
-19.264063 -1.0
-19.272062 -1.0
-19.280062 -1.0
-19.288061 -1.0
-19.29606 -1.0
-19.30406 -1.0
-19.31206 -1.0
-19.320059 -1.0
-19.328058 -1.0
-19.336058 -1.0
-19.344057 -1.0
-19.352057 -1.0
-19.360056 -1.0
-19.368055 -1.0
-19.376055 -1.0
-19.384054 -1.0
-19.392054 -1.0
-19.400053 -1.0
-19.408052 -1.0
-19.416052 -1.0
-19.424051 -1.0
-19.43205 -1.0
-19.44005 -1.0
-19.44805 -1.0
-19.456049 -1.0
-19.464048 -1.0
-19.472048 -1.0
-19.480047 -1.0
-19.488047 -1.0
-19.496046 -1.0
-19.504045 -1.0
-19.512045 -1.0
-19.520044 -1.0
-19.528044 -1.0
-19.536043 -1.0
-19.544043 -1.0
-19.552042 -1.0
-19.560041 -1.0
-19.56804 -1.0
-19.57604 -1.0
-19.58404 -1.0
-19.59204 -1.0
-19.600039 -1.0
-19.608038 -1.0
-19.616037 -1.0
-19.624037 -1.0
-19.632036 -1.0
-19.640036 -1.0
-19.648035 -1.0
-19.656034 -1.0
-19.664034 -1.0
-19.672033 -1.0
-19.680033 -1.0
-19.688032 -1.0
-19.696032 -1.0
-19.704031 -1.0
-19.71203 -1.0
-19.72003 -1.0
-19.72803 -1.0
-19.736029 -1.0
-19.744028 -1.0
-19.752028 -1.0
-19.760027 -1.0
-19.768026 -1.0
-19.776026 -1.0
-19.784025 -1.0
-19.792025 -1.0
-19.800024 -1.0
-19.808023 -1.0
-19.816023 -1.0
-19.824022 -1.0
-19.832022 -1.0
-19.840021 -1.0
-19.84802 -1.0
-19.85602 -1.0
-19.86402 -1.0
-19.872019 -1.0
-19.880018 -1.0
-19.888018 -1.0
-19.896017 -1.0
-19.904016 -1.0
-19.912016 -1.0
-19.920015 -1.0
-19.928015 -1.0
-19.936014 -1.0
-19.944014 -1.0
-19.952013 -1.0
-19.960012 -1.0
-19.968012 -1.0
-19.976011 -1.0
-19.98401 -1.0
-19.99201 -1.0
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/sine.gnp b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/sine.gnp
deleted file mode 100644
index 0e5d95582f..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/sine.gnp
+++ /dev/null
@@ -1,4 +0,0 @@
-set terminal latex
-set output "sine.tex"
-set nokey
-plot [0.0:1.0] "sine.plt" with lines
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/sine.plt b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/sine.plt
deleted file mode 100644
index 6168d0e964..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/sine.plt
+++ /dev/null
@@ -1,2500 +0,0 @@
-0.0 0.0
-4.0e-4 5.0260194e-2
-8.0e-4 0.10048864
-1.1999999e-3 0.1506536
-1.6e-3 0.20072344
-1.9999999e-3 0.25066644
-2.3999999e-3 0.30045116
-2.8e-3 0.35004613
-3.2e-3 0.39941996
-3.6e-3 0.44854155
-3.9999997e-3 0.49737975
-4.3999995e-3 0.54590386
-4.7999993e-3 0.5940831
-5.199999e-3 0.6418871
-5.599999e-3 0.68928576
-5.9999987e-3 0.736249
-6.3999984e-3 0.7827472
-6.799998e-3 0.82875097
-7.199998e-3 0.87423134
-7.599998e-3 0.9191595
-7.999998e-3 0.96350706
-8.399998e-3 1.0072463
-8.799998e-3 1.0503491
-9.199998e-3 1.0927886
-9.599999e-3 1.1345378
-9.999999e-3 1.1755705
-1.0399999e-2 1.2158606
-1.0799999e-2 1.2553827
-1.12e-2 1.294112
-1.16e-2 1.3320237
-1.2e-2 1.3690943
-1.24e-2 1.4053
-1.2800001e-2 1.4406182
-1.3200001e-2 1.4750264
-1.3600001e-2 1.5085028
-1.4000001e-2 1.5410266
-1.4400002e-2 1.572577
-1.4800002e-2 1.6031342
-1.5200002e-2 1.6326787
-1.5600002e-2 1.661192
-1.6000003e-2 1.6886561
-1.6400002e-2 1.7150536
-1.6800001e-2 1.7403677
-1.72e-2 1.7645825
-1.76e-2 1.7876829
-1.8e-2 1.8096541
-1.8399999e-2 1.8304824
-1.8799998e-2 1.8501544
-1.9199997e-2 1.8686578
-1.9599997e-2 1.885981
-1.9999996e-2 1.902113
-2.0399995e-2 1.9170434
-2.0799994e-2 1.9307631
-2.1199994e-2 1.9432633
-2.1599993e-2 1.9545361
-2.1999992e-2 1.9645743
-2.2399992e-2 1.9733717
-2.2799991e-2 1.9809227
-2.319999e-2 1.9872226
-2.359999e-2 1.9922671
-2.3999989e-2 1.9960533
-2.4399988e-2 1.9985789
-2.4799988e-2 1.999842
-2.5199987e-2 1.999842
-2.5599986e-2 1.998579
-2.5999986e-2 1.9960536
-2.6399985e-2 1.9922674
-2.6799984e-2 1.9872228
-2.7199984e-2 1.980923
-2.7599983e-2 1.9733722
-2.7999982e-2 1.9645749
-2.8399982e-2 1.9545367
-2.879998e-2 1.943264
-2.919998e-2 1.930764
-2.959998e-2 1.9170443
-2.9999979e-2 1.9021138
-3.0399978e-2 1.8859819
-3.0799977e-2 1.8686588
-3.1199977e-2 1.8501555
-3.1599976e-2 1.8304834
-3.1999975e-2 1.8096554
-3.2399975e-2 1.7876841
-3.2799974e-2 1.7645838
-3.3199973e-2 1.7403691
-3.3599973e-2 1.715055
-3.3999972e-2 1.6886578
-3.439997e-2 1.6611936
-3.479997e-2 1.6326804
-3.519997e-2 1.6031361
-3.559997e-2 1.5725791
-3.599997e-2 1.541029
-3.6399968e-2 1.5085055
-3.6799967e-2 1.4750288
-3.7199967e-2 1.4406208
-3.7599966e-2 1.4053029
-3.7999965e-2 1.3690974
-3.8399965e-2 1.3320271
-3.8799964e-2 1.2941151
-3.9199963e-2 1.2553861
-3.9599963e-2 1.2158642
-3.999996e-2 1.1755743
-4.039996e-2 1.1345419
-4.079996e-2 1.0927929
-4.119996e-2 1.0503532
-4.159996e-2 1.0072505
-4.199996e-2 0.9635117
-4.2399958e-2 0.9191643
-4.2799957e-2 0.87423635
-4.3199956e-2 0.82875574
-4.3599956e-2 0.7827521
-4.3999955e-2 0.7362541
-4.4399954e-2 0.68929106
-4.4799954e-2 0.6418926
-4.5199953e-2 0.5940888
-4.5599952e-2 0.5459092
-4.599995e-2 0.49738535
-4.639995e-2 0.4485473
-4.679995e-2 0.39942592
-4.719995e-2 0.3500523
-4.759995e-2 0.30045706
-4.799995e-2 0.25067255
-4.8399948e-2 0.2007297
-4.8799947e-2 0.15066005
-4.9199946e-2 0.100495264
-4.9599946e-2 5.0266996e-2
-4.9999945e-2 6.500875e-6
-5.0399944e-2 -5.025352e-2
-5.0799944e-2 -0.1004818
-5.1199943e-2 -0.15064661
-5.1599942e-2 -0.20071629
-5.199994e-2 -0.25065964
-5.239994e-2 -0.30044422
-5.279994e-2 -0.350039
-5.319994e-2 -0.39941272
-5.359994e-2 -0.44853416
-5.3999938e-2 -0.4973723
-5.4399937e-2 -0.5458967
-5.4799937e-2 -0.5940759
-5.5199936e-2 -0.64187986
-5.5599935e-2 -0.6892784
-5.5999935e-2 -0.7362416
-5.6399934e-2 -0.7827402
-5.6799933e-2 -0.82874393
-5.7199933e-2 -0.87422425
-5.7599932e-2 -0.9191523
-5.799993e-2 -0.9634999
-5.839993e-2 -1.0072393
-5.879993e-2 -1.0503422
-5.919993e-2 -1.0927815
-5.959993e-2 -1.1345308
-5.9999928e-2 -1.1755633
-6.0399927e-2 -1.2158535
-6.0799927e-2 -1.255376
-6.1199926e-2 -1.2941052
-6.1599925e-2 -1.332017
-6.1999924e-2 -1.3690875
-6.2399924e-2 -1.4052932
-6.279992e-2 -1.4406117
-6.319992e-2 -1.4750199
-6.359992e-2 -1.5084965
-6.399992e-2 -1.5410206
-6.439992e-2 -1.5725712
-6.479992e-2 -1.6031283
-6.519992e-2 -1.6326729
-6.559992e-2 -1.6611863
-6.599992e-2 -1.6886505
-6.639992e-2 -1.7150481
-6.679992e-2 -1.7403624
-6.7199916e-2 -1.7645775
-6.7599915e-2 -1.7876781
-6.7999914e-2 -1.8096495
-6.839991e-2 -1.8304783
-6.879991e-2 -1.8501506
-6.919991e-2 -1.8686541
-6.959991e-2 -1.8859775
-6.999991e-2 -1.9021097
-7.039991e-2 -1.9170405
-7.079991e-2 -1.9307604
-7.119991e-2 -1.9432608
-7.159991e-2 -1.9545338
-7.199991e-2 -1.9645723
-7.239991e-2 -1.97337
-7.2799906e-2 -1.9809214
-7.3199905e-2 -1.9872214
-7.3599905e-2 -1.9922662
-7.3999904e-2 -1.9960527
-7.43999e-2 -1.9985785
-7.47999e-2 -1.9998419
-7.51999e-2 -1.9998423
-7.55999e-2 -1.9985794
-7.59999e-2 -1.9960542
-7.63999e-2 -1.9922683
-7.67999e-2 -1.9872241
-7.71999e-2 -1.9809245
-7.75999e-2 -1.9733739
-7.79999e-2 -1.9645768
-7.83999e-2 -1.9545388
-7.8799896e-2 -1.9432664
-7.9199895e-2 -1.9307666
-7.9599895e-2 -1.9170473
-7.9999894e-2 -1.902117
-8.039989e-2 -1.8859855
-8.079989e-2 -1.8686627
-8.119989e-2 -1.8501595
-8.159989e-2 -1.8304875
-8.199989e-2 -1.8096596
-8.239989e-2 -1.7876887
-8.279989e-2 -1.7645887
-8.319989e-2 -1.7403742
-8.359989e-2 -1.7150604
-8.399989e-2 -1.6886632
-8.439989e-2 -1.6611996
-8.4799886e-2 -1.6326867
-8.5199885e-2 -1.6031425
-8.5599884e-2 -1.5725858
-8.599988e-2 -1.5410352
-8.639988e-2 -1.5085119
-8.679988e-2 -1.4750358
-8.719988e-2 -1.4406279
-8.759988e-2 -1.4053102
-8.799988e-2 -1.3691049
-8.839988e-2 -1.3320347
-8.879988e-2 -1.2941233
-8.919988e-2 -1.2553945
-8.959988e-2 -1.2158726
-8.999988e-2 -1.175583
-9.0399876e-2 -1.13455
-9.0799876e-2 -1.0928011
-9.1199875e-2 -1.050362
-9.1599874e-2 -1.0072595
-9.199987e-2 -0.96352077
-9.239987e-2 -0.9191735
-9.279987e-2 -0.87424564
-9.319987e-2 -0.8287656
-9.359987e-2 -0.78276205
-9.399987e-2 -0.73626417
-9.439987e-2 -0.6893012
-9.479987e-2 -0.64190197
-9.519987e-2 -0.59409815
-9.559987e-2 -0.5459192
-9.599987e-2 -0.49739534
-9.6399866e-2 -0.44855735
-9.6799865e-2 -0.39943603
-9.7199865e-2 -0.35006243
-9.7599864e-2 -0.30046773
-9.799986e-2 -0.25068325
-9.839986e-2 -0.20074043
-9.879986e-2 -0.15067083
-9.919986e-2 -0.10050509
-9.959986e-2 -5.027683e-2
-9.999986e-2 -1.6816446e-5
-0.10039986 5.024321e-2
-0.10079986 0.100471504
-0.10119986 0.15063633
-0.10159986 0.20070602
-0.10199986 0.25064895
-0.102399856 0.30043355
-0.102799855 0.3500284
-0.103199854 0.39940214
-0.103599854 0.44852456
-0.10399985 0.49736276
-0.10439985 0.5458868
-0.10479985 0.5940661
-0.10519985 0.6418701
-0.10559985 0.6892687
-0.10599985 0.736232
-0.10639985 0.7827302
-0.10679985 0.8287341
-0.10719985 0.87421453
-0.10759985 0.9191428
-0.10799985 0.9634913
-0.108399846 1.0072304
-0.108799845 1.0503334
-0.109199844 1.092773
-0.10959984 1.1345222
-0.10999984 1.175555
-0.11039984 1.2158452
-0.11079984 1.2553675
-0.11119984 1.294097
-0.11159984 1.332009
-0.11199984 1.3690796
-0.11239984 1.4052863
-0.11279984 1.4406046
-0.11319984 1.475013
-0.11359984 1.5084898
-0.113999836 1.5410138
-0.114399835 1.5725645
-0.114799835 1.6031219
-0.115199834 1.6326667
-0.11559983 1.6611804
-0.11599983 1.6886448
-0.11639983 1.7150426
-0.11679983 1.7403576
-0.11719983 1.7645729
-0.11759983 1.7876737
-0.11799983 1.8096453
-0.11839983 1.8304739
-0.11879983 1.8501464
-0.11919983 1.8686503
-0.11959983 1.8859739
-0.119999826 1.9021064
-0.120399825 1.9170374
-0.120799825 1.9307575
-0.121199824 1.9432585
-0.12159982 1.9545318
-0.12199982 1.9645705
-0.12239982 1.9733684
-0.12279982 1.9809198
-0.12319982 1.9872202
-0.12359982 1.9922652
-0.12399982 1.996052
-0.12439982 1.9985781
-0.12479982 1.9998418
-0.12519982 1.9998424
-0.12559983 1.9985797
-0.12599984 1.9960546
-0.12639984 1.9922688
-0.12679985 1.9872246
-0.12719986 1.9809252
-0.12759987 1.9733747
-0.12799987 1.9645776
-0.12839988 1.9545392
-0.12879989 1.9432665
-0.12919989 1.9307665
-0.1295999 1.9170468
-0.1299999 1.9021163
-0.13039991 1.8859843
-0.13079992 1.868661
-0.13119993 1.8501575
-0.13159993 1.8304853
-0.13199994 1.8096569
-0.13239995 1.7876855
-0.13279995 1.7645848
-0.13319996 1.7403696
-0.13359997 1.7150551
-0.13399997 1.6886573
-0.13439998 1.6611929
-0.13479999 1.6326791
-0.1352 1.6031342
-0.1356 1.5725766
-0.136 1.5410256
-0.13640001 1.5085014
-0.13680002 1.4750243
-0.13720003 1.4406155
-0.13760003 1.4052968
-0.13800004 1.3690904
-0.13840005 1.3320193
-0.13880005 1.2941068
-0.13920006 1.2553754
-0.13960007 1.2158525
-0.14000008 1.1755617
-0.14040008 1.1345282
-0.14080009 1.0927782
-0.1412001 1.0503379
-0.1416001 1.0072342
-0.14200011 0.9634943
-0.14240012 0.9191458
-0.14280012 0.87421674
-0.14320013 0.8287355
-0.14360014 0.78273076
-0.14400014 0.7362316
-0.14440015 0.68926746
-0.14480016 0.64186794
-0.14520016 0.5940629
-0.14560017 0.54588276
-0.14600018 0.49735776
-0.14640018 0.4485186
-0.14680019 0.39939615
-0.1472002 0.35002142
-0.1476002 0.30042562
-0.14800021 0.25064003
-0.14840022 0.20069614
-0.14880022 0.15062548
-0.14920023 0.10045967
-0.14960024 5.0230417e-2
-0.15000024 -3.2472628e-5
-0.15040025 -5.0293438e-2
-0.15080026 -0.10052263
-0.15120026 -0.15068834
-0.15160027 -0.20075886
-0.15200028 -0.25070256
-0.15240029 -0.30048794
-0.15280029 -0.3500835
-0.1532003 -0.39945793
-0.1536003 -0.44858003
-0.15400031 -0.49741882
-0.15440032 -0.5459434
-0.15480033 -0.5941231
-0.15520033 -0.6419276
-0.15560034 -0.68932664
-0.15600035 -0.7362902
-0.15640035 -0.78278875
-0.15680036 -0.8287928
-0.15720037 -0.8742734
-0.15760037 -0.9192018
-0.15800038 -0.96354955
-0.15840039 -1.0072887
-0.1588004 -1.0503916
-0.1592004 -1.092831
-0.1596004 -1.1345801
-0.16000041 -1.1756126
-0.16040042 -1.2159026
-0.16080043 -1.2554245
-0.16120043 -1.2941549
-0.16160044 -1.3320663
-0.16200045 -1.3691365
-0.16240045 -1.4053416
-0.16280046 -1.4406593
-0.16320047 -1.4750669
-0.16360047 -1.5085428
-0.16400048 -1.5410659
-0.16440049 -1.5726155
-0.1648005 -1.6031718
-0.1652005 -1.6327156
-0.16560051 -1.661228
-0.16600052 -1.688691
-0.16640052 -1.7150875
-0.16680053 -1.7404007
-0.16720054 -1.7646145
-0.16760054 -1.7877138
-0.16800055 -1.8096838
-0.16840056 -1.8305107
-0.16880056 -1.8501815
-0.16920057 -1.8686836
-0.16960058 -1.8860053
-0.17000058 -1.9021357
-0.17040059 -1.9170648
-0.1708006 -1.9307829
-0.1712006 -1.9432814
-0.17160061 -1.9545525
-0.17200062 -1.9645894
-0.17240062 -1.973385
-0.17280063 -1.980934
-0.17320064 -1.9872319
-0.17360064 -1.9922745
-0.17400065 -1.9960587
-0.17440066 -1.9985821
-0.17480066 -1.9998431
-0.17520067 -1.999841
-0.17560068 -1.9985757
-0.17600068 -1.996048
-0.17640069 -1.9922595
-0.1768007 -1.9872127
-0.1772007 -1.9809105
-0.17760071 -1.9733572
-0.17800072 -1.9645574
-0.17840073 -1.9545168
-0.17880073 -1.9432416
-0.17920074 -1.9307389
-0.17960075 -1.9170167
-0.18000075 -1.9020836
-0.18040076 -1.8859491
-0.18080077 -1.8686235
-0.18120077 -1.8501174
-0.18160078 -1.8304428
-0.18200079 -1.8096119
-0.1824008 -1.7876381
-0.1828008 -1.7645352
-0.1832008 -1.7403166
-0.18360081 -1.7149998
-0.18400082 -1.6885997
-0.18440083 -1.661133
-0.18480083 -1.6326171
-0.18520084 -1.6030699
-0.18560085 -1.5725102
-0.18600085 -1.5409572
-0.18640086 -1.5084308
-0.18680087 -1.4749517
-0.18720087 -1.440541
-0.18760088 -1.4052204
-0.18800089 -1.3690121
-0.1884009 -1.3319391
-0.1888009 -1.2940248
-0.18920091 -1.2552933
-0.18960091 -1.2157687
-0.19000092 -1.1754762
-0.19040093 -1.1344413
-0.19080094 -1.0926898
-0.19120094 -1.0502481
-0.19160095 -1.007143
-0.19200096 -0.9634018
-0.19240096 -0.91905206
-0.19280097 -0.8741218
-0.19320098 -0.8286394
-0.19360098 -0.7826336
-0.19400099 -0.73613167
-0.194401 -0.68916655
-0.194801 -0.64176613
-0.19520101 -0.59396034
-0.19560102 -0.54577935
-0.19600102 -0.49725366
-0.19640103 -0.44841388
-0.19680104 -0.39929086
-0.19720104 -0.34991562
-0.19760105 -0.30031937
-0.19800106 -0.2505334
-0.19840106 -0.20058921
-0.19880107 -0.15051831
-0.19920108 -0.10035235
-0.19960108 -5.0122987e-2
-0.20000109 1.3802848e-4
-0.2004011 5.0398957e-2
-0.2008011 0.100628056
-0.20120111 0.1507936
-0.20160112 0.20086388
-0.20200112 0.2508073
-0.20240113 0.30059227
-0.20280114 0.35018742
-0.20320114 0.39956135
-0.20360115 0.4486829
-0.20400116 0.49752104
-0.20440117 0.54604495
-0.20480117 0.59422576
-0.20520118 0.6420294
-0.20560119 0.6894275
-0.20600119 0.7363901
-0.2064012 0.78288764
-0.2068012 0.8288906
-0.20720121 0.8743701
-0.20760122 0.9192972
-0.20800123 0.9636437
-0.20840123 1.0073816
-0.20880124 1.050483
-0.20920125 1.092921
-0.20960125 1.1346686
-0.21000126 1.1756996
-0.21040127 1.2159879
-0.21080127 1.2555081
-0.21120128 1.2942353
-0.21160129 1.3321451
-0.2120013 1.3692133
-0.2124013 1.4054167
-0.2128013 1.4407325
-0.21320131 1.4751382
-0.21360132 1.5086122
-0.21400133 1.5411332
-0.21440133 1.5726807
-0.21480134 1.603235
-0.21520135 1.6327765
-0.21560135 1.6612867
-0.21600136 1.6887486
-0.21640137 1.7151428
-0.21680138 1.7404536
-0.21720138 1.7646651
-0.21760139 1.7877619
-0.2180014 1.8097295
-0.2184014 1.830554
-0.21880141 1.8502222
-0.21920142 1.8687218
-0.21960142 1.886041
-0.22000143 1.902169
-0.22040144 1.9170954
-0.22080144 1.9308109
-0.22120145 1.9433068
-0.22160146 1.9545753
-0.22200146 1.9646091
-0.22240147 1.9734021
-0.22280148 1.9809486
-0.22320148 1.9872438
-0.22360149 1.9922837
-0.2240015 1.9960653
-0.2244015 1.998586
-0.22480151 1.9998444
-0.22520152 1.9998397
-0.22560152 1.9985718
-0.22600153 1.9960413
-0.22640154 1.9922502
-0.22680154 1.9872005
-0.22720155 1.9808956
-0.22760156 1.9733397
-0.22800156 1.9645373
-0.22840157 1.954494
-0.22880158 1.9432161
-0.22920159 1.9307109
-0.22960159 1.9169861
-0.2300016 1.9020505
-0.2304016 1.8859134
-0.23080161 1.8685851
-0.23120162 1.8500766
-0.23160163 1.8303995
-0.23200163 1.8095663
-0.23240164 1.7875899
-0.23280165 1.7644845
-0.23320165 1.7402647
-0.23360166 1.7149456
-0.23400167 1.6885431
-0.23440167 1.6610742
-0.23480168 1.6325561
-0.23520169 1.6030068
-0.2356017 1.5724449
-0.2360017 1.5408899
-0.2364017 1.5083616
-0.23680171 1.4748805
-0.23720172 1.4404678
-0.23760173 1.4051453
-0.23800173 1.3689338
-0.23840174 1.331859
-0.23880175 1.2939429
-0.23920175 1.2552096
-0.23960176 1.2156833
-0.24000177 1.1753893
-0.24040177 1.1343528
-0.24080178 1.0925997
-0.24120179 1.0501566
-0.2416018 1.0070502
-0.2420018 0.9633076
-0.24240181 0.9189566
-0.24280182 0.8740251
-0.24320182 0.8285416
-0.24360183 0.7825347
-0.24400184 0.73603356
-0.24440184 0.6890675
-0.24480185 0.6416662
-0.24520186 0.59385955
-0.24560186 0.54567784
-0.24600187 0.49715143
-0.24640188 0.448311
-0.24680188 0.39918742
-0.24720189 0.3498117
-0.2476019 0.300215
-0.2480019 0.25042868
-0.24840191 0.20048419
-0.24880192 0.15041116
-0.24920192 0.10024502
-0.24960193 5.001556e-2
-0.25000194 -2.4549168e-4
-0.25040194 -5.0506387e-2
-0.25080195 -0.10073538
-0.25120196 -0.15090075
-0.25160196 -0.2009708
-0.25200197 -0.25091392
-0.25240198 -0.30069852
-0.25280198 -0.35029322
-0.253202 -0.39966664
-0.253602 -0.44878763
-0.254002 -0.49762514
-0.254402 -0.5461483
-0.25480202 -0.59432656
-0.25520203 -0.64212936
-0.25560203 -0.6895266
-0.25600204 -0.7364883
-0.25640205 -0.7829848
-0.25680205 -0.8289867
-0.25720206 -0.874465
-0.25760207 -0.919391
-0.25800207 -0.9637362
-0.25840208 -1.0074726
-0.2588021 -1.0505729
-0.2592021 -1.0930094
-0.2596021 -1.1347555
-0.2600021 -1.175785
-0.2604021 -1.2160717
-0.26080212 -1.2555903
-0.26120213 -1.2943158
-0.26160213 -1.3322238
-0.26200214 -1.3692902
-0.26240215 -1.4054918
-0.26280215 -1.4408057
-0.26320216 -1.4752095
-0.26360217 -1.5086814
-0.26400217 -1.5412004
-0.26440218 -1.5727459
-0.2648022 -1.6032981
-0.2652022 -1.6328397
-0.2656022 -1.6613476
-0.2660022 -1.6888062
-0.2664022 -1.715198
-0.26680222 -1.7405065
-0.26720223 -1.7647157
-0.26760224 -1.7878101
-0.26800224 -1.8097752
-0.26840225 -1.8305973
-0.26880226 -1.8502631
-0.26920226 -1.8687601
-0.26960227 -1.8860768
-0.27000228 -1.9022021
-0.27040228 -1.917126
-0.2708023 -1.930839
-0.2712023 -1.9433322
-0.2716023 -1.9545981
-0.2720023 -1.9646293
-0.27240232 -1.9734195
-0.27280232 -1.9809633
-0.27320233 -1.9872558
-0.27360234 -1.9922931
-0.27400234 -1.996072
-0.27440235 -1.9985901
-0.27480236 -1.9998459
-0.27520236 -1.9998384
-0.27560237 -1.9985676
-0.27600238 -1.9960346
-0.27640238 -1.9922408
-0.2768024 -1.9871886
-0.2772024 -1.9808811
-0.2776024 -1.9733225
-0.2780024 -1.9645175
-0.27840242 -1.9544716
-0.27880242 -1.9431912
-0.27920243 -1.9306833
-0.27960244 -1.916956
-0.28000244 -1.9020178
-0.28040245 -1.8858782
-0.28080246 -1.8685476
-0.28120247 -1.8500365
-0.28160247 -1.830357
-0.28200248 -1.8095212
-0.2824025 -1.7875426
-0.2828025 -1.7644348
-0.2832025 -1.7402126
-0.2836025 -1.7148912
-0.2840025 -1.6884866
-0.28440252 -1.6610154
-0.28480253 -1.6324952
-0.28520253 -1.6029437
-0.28560254 -1.5723797
-0.28600255 -1.5408226
-0.28640255 -1.5082922
-0.28680256 -1.4748092
-0.28720257 -1.4403919
-0.28760257 -1.4050674
-0.28800258 -1.3688555
-0.2884026 -1.3317788
-0.2888026 -1.293861
-0.2892026 -1.2551259
-0.2896026 -1.215598
-0.2900026 -1.1753024
-0.29040262 -1.1342642
-0.29080263 -1.0925097
-0.29120263 -1.0500652
-0.29160264 -1.0069573
-0.29200265 -0.96321344
-0.29240265 -0.91886115
-0.29280266 -0.8739285
-0.29320267 -0.82844377
-0.29360268 -0.78243583
-0.29400268 -0.7359336
-0.2944027 -0.6889666
-0.2948027 -0.64156437
-0.2952027 -0.5937569
-0.2956027 -0.5455744
-0.29600272 -0.49704733
-0.29640272 -0.44820628
-0.29680273 -0.39908212
-0.29720274 -0.34970587
-0.29760274 -0.30010876
-0.29800275 -0.25032207
-0.29840276 -0.20037727
-0.29880276 -0.1503059
-0.29920277 -0.100139596
-0.29960278 -4.9910035e-2
-0.30000278 3.5104755e-4
-0.3004028 5.061191e-2
-0.3008028 0.10084081
-0.3012028 0.151006
-0.3016028 0.20107582
-0.30200282 0.25101864
-0.30240282 0.3008029
-0.30280283 0.35039714
-0.30320284 0.39977008
-0.30360284 0.44889048
-0.30400285 0.49772736
-0.30440286 0.54624987
-0.30480286 0.59442735
-0.30520287 0.6422293
-0.30560288 0.6896257
-0.3060029 0.7365864
-0.3064029 0.7830819
-0.3068029 0.8290828
-0.3072029 0.87455994
-0.3076029 0.9194847
-0.30800292 0.9638287
-0.30840293 1.0075638
-0.30880293 1.0506626
-0.30920294 1.093101
-0.30960295 1.1348456
-0.31000295 1.1758734
-0.31040296 1.2161585
-0.31080297 1.2556754
-0.31120297 1.2943991
-0.31160298 1.3323053
-0.312003 1.36937
-0.312403 1.4055697
-0.312803 1.4408816
-0.313203 1.4752833
-0.313603 1.5087532
-0.31400302 1.5412701
-0.31440303 1.5728135
-0.31480303 1.6033634
-0.31520304 1.6329006
-0.31560305 1.6614064
-0.31600305 1.6888628
-0.31640306 1.7152524
-0.31680307 1.7405585
-0.31720307 1.7647653
-0.31760308 1.7878574
-0.3180031 1.8098202
-0.3184031 1.8306398
-0.3188031 1.8503032
-0.3192031 1.8687978
-0.31960312 1.886112
-0.32000312 1.9022348
-0.32040313 1.9171561
-0.32080314 1.9308665
-0.32120314 1.9433572
-0.32160315 1.9546204
-0.32200316 1.9646491
-0.32240316 1.9734367
-0.32280317 1.9809779
-0.32320318 1.9872677
-0.32360318 1.9923024
-0.3240032 1.9960786
-0.3244032 1.998594
-0.3248032 1.9998472
-0.3252032 1.9998369
-0.32560322 1.9985636
-0.32600322 1.996028
-0.32640323 1.9922315
-0.32680324 1.9871767
-0.32720324 1.9808666
-0.32760325 1.9733053
-0.32800326 1.9644977
-0.32840326 1.9544492
-0.32880327 1.9431661
-0.32920328 1.9306557
-0.32960328 1.9169259
-0.3300033 1.9019852
-0.3304033 1.8858432
-0.3308033 1.8685085
-0.3312033 1.8499949
-0.33160332 1.8303128
-0.33200333 1.8094747
-0.33240333 1.7874936
-0.33280334 1.7643833
-0.33320335 1.7401587
-0.33360335 1.7148349
-0.33400336 1.6884279
-0.33440337 1.6609545
-0.33480337 1.632432
-0.33520338 1.6028782
-0.3356034 1.5723121
-0.3360034 1.5407529
-0.3364034 1.5082204
-0.3368034 1.4747353
-0.3372034 1.4403187
-0.33760342 1.4049923
-0.33800343 1.3687785
-0.33840343 1.3317001
-0.33880344 1.2937804
-0.33920345 1.2550437
-0.33960345 1.2155142
-0.34000346 1.1752169
-0.34040347 1.1341773
-0.34080347 1.0924213
-0.34120348 1.0499753
-0.3416035 1.0068661
-0.3420035 0.96312094
-0.3424035 0.9187674
-0.3428035 0.87383354
-0.3432035 0.8283477
-0.34360352 0.7823387
-0.34400353 0.7358355
-0.34440354 0.6888675
-0.34480354 0.6414644
-0.34520355 0.5936561
-0.34560356 0.54547286
-0.34600356 0.49694508
-0.34640357 0.4481034
-0.34680358 0.39897868
-0.34720358 0.34960195
-0.3476036 0.3000044
-0.3480036 0.25021735
-0.3484036 0.20027225
-0.3488036 0.15020065
-0.34920362 0.10003417
-0.34960362 4.9804512e-2
-0.35000363 -4.566034e-4
-0.35040364 -5.0717432e-2
-0.35080364 -0.100946225
-0.35120365 -0.15111126
-0.35160366 -0.20118085
-0.35200366 -0.25112334
-0.35240367 -0.30090722
-0.35280368 -0.35050482
-0.35320368 -0.39987722
-0.3536037 -0.44899708
-0.3540037 -0.4978333
-0.3544037 -0.54635507
-0.3548037 -0.5945318
-0.35520372 -0.6423329
-0.35560372 -0.6897283
-0.35600373 -0.7366881
-0.35640374 -0.78318256
-0.35680375 -0.82918227
-0.35720375 -0.8746583
-0.35760376 -0.91958183
-0.35800377 -0.9639245
-0.35840377 -1.0076584
-0.35880378 -1.0507557
-0.3592038 -1.0931894
-0.3596038 -1.1349325
-0.3600038 -1.1759588
-0.3604038 -1.2162423
-0.3608038 -1.2557576
-0.36120382 -1.2944796
-0.36160383 -1.3323841
-0.36200383 -1.369447
-0.36240384 -1.4056448
-0.36280385 -1.4409548
-0.36320385 -1.4753546
-0.36360386 -1.5088226
-0.36400387 -1.5413374
-0.36440387 -1.5728787
-0.36480388 -1.6034266
-0.3652039 -1.6329616
-0.3656039 -1.6614652
-0.3660039 -1.6889193
-0.3664039 -1.7153066
-0.3668039 -1.7406105
-0.36720392 -1.764815
-0.36760393 -1.7879047
-0.36800393 -1.8098651
-0.36840394 -1.8306823
-0.36880395 -1.8503432
-0.36920395 -1.8688353
-0.36960396 -1.886147
-0.37000397 -1.9022673
-0.37040398 -1.9171861
-0.37080398 -1.9308939
-0.371204 -1.9433821
-0.371604 -1.9546428
-0.372004 -1.9646688
-0.372404 -1.9734539
-0.37280402 -1.9809924
-0.37320402 -1.9872797
-0.37360403 -1.9923117
-0.37400404 -1.9960853
-0.37440404 -1.998598
-0.37480405 -1.9998485
-0.37520406 -1.9998356
-0.37560406 -1.9985595
-0.37600407 -1.996021
-0.37640408 -1.9922218
-0.37680408 -1.9871643
-0.3772041 -1.9808515
-0.3776041 -1.9732876
-0.3780041 -1.9644772
-0.3784041 -1.9544259
-0.37880412 -1.9431403
-0.37920412 -1.9306272
-0.37960413 -1.9168947
-0.38000414 -1.9019513
-0.38040414 -1.8858067
-0.38080415 -1.8684709
-0.38120416 -1.8499548
-0.38160416 -1.8302703
-0.38200417 -1.8094296
-0.38240418 -1.7874461
-0.3828042 -1.7643336
-0.3832042 -1.7401067
-0.3836042 -1.7147806
-0.3840042 -1.6883714
-0.3844042 -1.6608957
-0.38480422 -1.632371
-0.38520423 -1.6028152
-0.38560423 -1.5722469
-0.38600424 -1.5406855
-0.38640425 -1.508151
-0.38680425 -1.474664
-0.38720426 -1.4402454
-0.38760427 -1.4049171
-0.38800427 -1.3687015
-0.38840428 -1.3316213
-0.3888043 -1.2937
-0.3892043 -1.2549615
-0.3896043 -1.2154304
-0.3900043 -1.1751316
-0.3904043 -1.1340904
-0.39080432 -1.092333
-0.39120433 -1.0498855
-0.39160433 -1.0067749
-0.39200434 -0.96302843
-0.39240435 -0.91867363
-0.39280435 -0.8737386
-0.39320436 -0.8282516
-0.39360437 -0.7822415
-0.39400437 -0.7357373
-0.39440438 -0.6887684
-0.3948044 -0.6413644
-0.3952044 -0.59355533
-0.3956044 -0.54537135
-0.3960044 -0.49684283
-0.39640442 -0.44800055
-0.39680442 -0.3988715
-0.39720443 -0.34949428
-0.39760444 -0.29989627
-0.39800444 -0.25010884
-0.39840445 -0.20016342
-0.39880446 -0.15009159
-0.39920446 -9.992494e-2
-0.39960447 -4.9695175e-2
-0.40000448 5.659739e-4
-0.40040448 5.0826766e-2
-0.4008045 0.10105546
-0.4012045 0.15122032
-0.4016045 0.20128965
-0.4020045 0.25123185
-0.40240452 0.30101538
-0.40280452 0.35060874
-0.40320453 0.39998066
-0.40360454 0.44909993
-0.40400454 0.49793553
-0.40440455 0.54645663
-0.40480456 0.59463257
-0.40520456 0.64243287
-0.40560457 0.68982744
-0.40600458 0.73678625
-0.40640458 0.78327966
-0.4068046 0.82927835
-0.4072046 0.87475324
-0.4076046 0.9196756
-0.4080046 0.96401703
-0.40840462 1.0077496
-0.40880463 1.0508455
-0.40920463 1.0932778
-0.40960464 1.1350194
-0.41000465 1.1760442
-0.41040465 1.2163261
-0.41080466 1.2558397
-0.41120467 1.2945601
-0.41160467 1.3324628
-0.41200468 1.3695239
-0.4124047 1.4057199
-0.4128047 1.441028
-0.4132047 1.4754258
-0.4136047 1.5088918
-0.4140047 1.5414046
-0.41440472 1.5729439
-0.41480473 1.6034896
-0.41520473 1.6330225
-0.41560474 1.6615239
-0.41600475 1.6889758
-0.41640475 1.7153609
-0.41680476 1.7406625
-0.41720477 1.7648647
-0.41760477 1.787952
-0.41800478 1.80991
-0.4184048 1.8307248
-0.4188048 1.8503847
-0.4192048 1.8688743
-0.4196048 1.8861834
-0.4200048 1.9023011
-0.42040482 1.9172173
-0.42080483 1.9309224
-0.42120484 1.9434079
-0.42160484 1.9546659
-0.42200485 1.9646893
-0.42240486 1.9734716
-0.42280486 1.9810075
-0.42320487 1.9872919
-0.42360488 1.9923213
-0.42400488 1.9960921
-0.4244049 1.9986022
-0.4248049 1.9998498
-0.4252049 1.9998342
-0.4256049 1.9985555
-0.42600492 1.9960144
-0.42640492 1.9922125
-0.42680493 1.9871523
-0.42720494 1.9808369
-0.42760494 1.9732703
-0.42800495 1.9644574
-0.42840496 1.9544035
-0.42880496 1.9431152
-0.42920497 1.9305997
-0.42960498 1.9168645
-0.43000498 1.9019186
-0.430405 1.8857715
-0.430805 1.8684332
-0.431205 1.8499147
-0.431605 1.8302277
-0.43200502 1.8093847
-0.43240502 1.7873988
-0.43280503 1.7642839
-0.43320504 1.7400546
-0.43360505 1.7147262
-0.43400505 1.6883148
-0.43440506 1.6608369
-0.43480507 1.6323099
-0.43520507 1.602752
-0.43560508 1.5721817
-0.4360051 1.5406183
-0.4364051 1.5080818
-0.4368051 1.4745927
-0.4372051 1.4401722
-0.4376051 1.404842
-0.43800512 1.3686246
-0.43840513 1.3315425
-0.43880513 1.2936195
-0.43920514 1.2548794
-0.43960515 1.2153466
-0.44000515 1.1750461
-0.44040516 1.1340003
-0.44080517 1.0922413
-0.44120517 1.0497924
-0.44160518 1.0066804
-0.4420052 0.9629326
-0.4424052 0.9185765
-0.4428052 0.8736402
-0.4432052 0.82815206
-0.4436052 0.78214085
-0.44400522 0.73563564
-0.44440523 0.6886657
-0.44480523 0.6412608
-0.44520524 0.5934509
-0.44560525 0.5452661
-0.44600525 0.4967369
-0.44640526 0.44789395
-0.44680527 0.39876807
-0.44720528 0.34939033
-0.44760528 0.2997919
-0.4480053 0.2500041
-0.4484053 0.2000584
-0.4488053 0.14998633
-0.4492053 9.981951e-2
-0.44960532 4.9589653e-2
-0.45000532 -6.715298e-4
-0.45040533 -5.093229e-2
-0.45080534 -0.10116088
-0.45120534 -0.15132557
-0.45160535 -0.20139468
-0.45200536 -0.25133657
-0.45240536 -0.30111971
-0.45280537 -0.35071266
-0.45320538 -0.40008408
-0.45360538 -0.4492028
-0.4540054 -0.49803776
-0.4544054 -0.54655814
-0.4548054 -0.5947333
-0.4552054 -0.6425328
-0.45560542 -0.6899265
-0.45600542 -0.73688436
-0.45640543 -0.7833768
-0.45680544 -0.8293744
-0.45720544 -0.8748481
-0.45760545 -0.9197693
-0.45800546 -0.9641095
-0.45840546 -1.0078408
-0.45880547 -1.0509354
-0.45920548 -1.0933661
-0.4596055 -1.1351063
-0.4600055 -1.1761296
-0.4604055 -1.2164099
-0.4608055 -1.2559218
-0.4612055 -1.2946405
-0.46160552 -1.3325415
-0.46200553 -1.3696008
-0.46240553 -1.4057977
-0.46280554 -1.4411038
-0.46320555 -1.4754996
-0.46360555 -1.5089636
-0.46400556 -1.5414743
-0.46440557 -1.5730115
-0.46480557 -1.603555
-0.46520558 -1.6330856
-0.4656056 -1.6615847
-0.4660056 -1.6890345
-0.4664056 -1.7154171
-0.4668056 -1.7407163
-0.4672056 -1.7649161
-0.46760562 -1.7880011
-0.46800563 -1.8099566
-0.46840563 -1.8307688
-0.46880564 -1.8504248
-0.46920565 -1.8689119
-0.46960565 -1.8862185
-0.47000566 -1.9023337
-0.47040567 -1.9172473
-0.47080567 -1.9309499
-0.47120568 -1.9434329
-0.4716057 -1.9546883
-0.4720057 -1.964709
-0.4724057 -1.9734887
-0.4728057 -1.9810219
-0.47320572 -1.9873039
-0.47360572 -1.9923304
-0.47400573 -1.9960986
-0.47440574 -1.9986061
-0.47480574 -1.9998511
-0.47520575 -1.9998329
-0.47560576 -1.9985515
-0.47600576 -1.9960077
-0.47640577 -1.9922032
-0.47680578 -1.9871403
-0.47720578 -1.9808223
-0.4776058 -1.9732531
-0.4780058 -1.9644376
-0.4784058 -1.9543811
-0.4788058 -1.9430903
-0.47920582 -1.930572
-0.47960582 -1.9168345
-0.48000583 -1.9018861
-0.48040584 -1.8857363
-0.48080584 -1.8683956
-0.48120585 -1.8498746
-0.48160586 -1.8301852
-0.48200586 -1.8093398
-0.48240587 -1.7873515
-0.48280588 -1.7642342
-0.48320588 -1.7400026
-0.4836059 -1.714672
-0.4840059 -1.6882582
-0.4844059 -1.6607759
-0.4848059 -1.6322467
-0.48520592 -1.6026865
-0.48560593 -1.572114
-0.48600593 -1.5405486
-0.48640594 -1.5080099
-0.48680595 -1.4745188
-0.48720595 -1.4400963
-0.48760596 -1.4047642
-0.48800597 -1.3685448
-0.48840597 -1.331461
-0.48880598 -1.2935361
-0.489206 -1.2547941
-0.489606 -1.2152597
-0.490006 -1.1749576
-0.490406 -1.1339134
-0.490806 -1.0921528
-0.49120602 -1.0497025
-0.49160603 -1.0065892
-0.49200603 -0.96284
-0.49240604 -0.9184827
-0.49280605 -0.8735452
-0.49320605 -0.828056
-0.49360606 -0.7820437
-0.49400607 -0.73553747
-0.49440607 -0.6885666
-0.49480608 -0.64116085
-0.4952061 -0.5933501
-0.4956061 -0.5451645
-0.4960061 -0.49663466
-0.4964061 -0.44779107
-0.49680611 -0.39866465
-0.49720612 -0.3492864
-0.49760613 -0.29968753
-0.49800614 -0.24989937
-0.49840614 -0.19995338
-0.49880615 -0.14988106
-0.49920616 -9.971409e-2
-0.49960616 -4.948413e-2
-0.50000614 7.7327096e-4
-0.50040615 5.1033996e-2
-0.50080615 0.10126249
-0.50120616 0.15142702
-0.50160617 0.2014959
-0.5020062 0.25143752
-0.5024062 0.3012203
-0.5028062 0.35081282
-0.5032062 0.40018377
-0.5036062 0.44930193
-0.5040062 0.4981363
-0.5044062 0.546656
-0.5048062 0.59483045
-0.5052062 0.6426292
-0.50560623 0.690022
-0.50600624 0.73698246
-0.50640625 0.7834739
-0.50680625 0.82947046
-0.50720626 0.8749431
-0.50760627 0.91986305
-0.5080063 0.964202
-0.5084063 1.0079318
-0.5088063 1.0510252
-0.5092063 1.0934545
-0.5096063 1.1351901
-0.5100063 1.1762149
-0.5104063 1.2164906
-0.5108063 1.256004
-0.5112063 1.2947181
-0.51160634 1.3326203
-0.51200634 1.3696749
-0.51240635 1.4058701
-0.51280636 1.4411718
-0.51320636 1.4755684
-0.51360637 1.5090278
-0.5140064 1.5415392
-0.5144064 1.573072
-0.5148064 1.6036158
-0.5152064 1.6331422
-0.5156064 1.6616414
-0.5160064 1.6890868
-0.5164064 1.7154695
-0.5168064 1.7407683
-0.51720643 1.764964
-0.51760644 1.7880483
-0.51800644 1.8099998
-0.51840645 1.8308114
-0.51880646 1.8504634
-0.51920646 1.8689494
-0.5196065 1.8862523
-0.5200065 1.9023663
-0.5204065 1.9172763
-0.5208065 1.9309775
-0.5212065 1.9434569
-0.5216065 1.9547106
-0.5220065 1.964728
-0.5224065 1.9735059
-0.5228065 1.981036
-0.52320653 1.9873157
-0.52360654 1.9923394
-0.52400655 1.9961053
-0.52440655 1.9986099
-0.52480656 1.9998523
-0.52520657 1.9998316
-0.5256066 1.9985474
-0.5260066 1.9960012
-0.5264066 1.9921939
-0.5268066 1.9871289
-0.5272066 1.9808078
-0.5276066 1.9732366
-0.5280066 1.9644177
-0.5284066 1.9543595
-0.5288066 1.9430653
-0.52920663 1.9305454
-0.52960664 1.9168043
-0.53000665 1.9018546
-0.53040665 1.8857012
-0.53080666 1.8683592
-0.53120667 1.8498344
-0.5316067 1.8301442
-0.5320067 1.8092948
-0.5324067 1.7873058
-0.5328067 1.7641845
-0.5332067 1.7399524
-0.5336067 1.7146176
-0.5340067 1.6882037
-0.5344067 1.6607193
-0.5348067 1.6321901
-0.53520674 1.6026257
-0.53560674 1.5720536
-0.53600675 1.5404836
-0.53640676 1.5079455
-0.53680676 1.4744501
-0.53720677 1.4400283
-0.5376068 1.4046918
-0.5380068 1.3684734
-0.5384068 1.331385
-0.5388068 1.2934556
-0.5392068 1.254715
-0.5396068 1.2151759
-0.5400068 1.1748753
-0.5404068 1.1338264
-0.54080683 1.0920676
-0.54120684 1.0496128
-0.54160684 1.0065013
-0.54200685 0.9627475
-0.54240686 0.91839236
-0.54280686 0.8734503
-0.5432069 0.82796335
-0.5436069 0.78194654
-0.5440069 0.7354429
-0.5444069 0.6884675
-0.5448069 0.64106447
-0.5452069 0.59324926
-0.5456069 0.54506665
-0.5460069 0.4965324
-0.5464069 0.44769192
-0.54680693 0.3985612
-0.54720694 0.3491862
-0.54760695 0.29958317
-0.54800695 0.24979843
-0.54840696 0.19984834
-0.54880697 0.1497796
-0.549207 9.960867e-2
-0.549607 4.938242e-2
-0.550007 -8.826415e-4
-0.550407 -5.113952e-2
-0.550807 -0.10137172
-0.551207 -0.15153226
-0.551607 -0.20160471
-0.552007 -0.25154224
-0.552407 -0.30132842
-0.55280703 -0.35091674
-0.55320704 -0.40029094
-0.55360705 -0.44940478
-0.55400705 -0.49824223
-0.55440706 -0.5467576
-0.55480707 -0.5949349
-0.5552071 -0.64272916
-0.5556071 -0.69012463
-0.5560071 -0.73707706
-0.5564071 -0.783571
-0.5568071 -0.829563
-0.5572071 -0.87503797
-0.5576071 -0.91995335
-0.5580071 -0.96429443
-0.5584071 -1.0080198
-0.55880713 -1.0511149
-0.55920714 -1.0935397
-0.55960715 -1.1352801
-0.56000715 -1.1762972
-0.56040716 -1.2165774
-0.56080717 -1.2560891
-0.5612072 -1.2948015
-0.5616072 -1.3327018
-0.5620072 -1.3697547
-0.5624072 -1.4059478
-0.5628072 -1.4412476
-0.5632072 -1.4756422
-0.5636072 -1.5090996
-0.5640072 -1.5416088
-0.5644072 -1.5731394
-0.56480724 -1.6036812
-0.56520724 -1.6332053
-0.56560725 -1.6617023
-0.56600726 -1.6891454
-0.56640726 -1.7155256
-0.56680727 -1.7408185
-0.5672073 -1.7650154
-0.5676073 -1.7880939
-0.5680073 -1.8100463
-0.5684073 -1.8308523
-0.5688073 -1.8505049
-0.5692073 -1.8689857
-0.5696073 -1.8862886
-0.5700073 -1.9023976
-0.57040733 -1.9173074
-0.57080734 -1.9310039
-0.57120734 -1.9434828
-0.57160735 -1.9547322
-0.57200736 -1.9647485
-0.57240736 -1.9735223
-0.5728074 -1.981051
-0.5732074 -1.9873271
-0.5736074 -1.9923489
-0.5740074 -1.9961116
-0.5744074 -1.998614
-0.5748074 -1.9998536
-0.5752074 -1.9998301
-0.5756074 -1.9985436
-0.5760074 -1.9959943
-0.57640743 -1.9921849
-0.57680744 -1.9871165
-0.57720745 -1.9807937
-0.57760745 -1.9732187
-0.57800746 -1.9643986
-0.57840747 -1.9543363
-0.5788075 -1.9430412
-0.5792075 -1.930517
-0.5796075 -1.9167752
-0.5800075 -1.9018208
-0.5804075 -1.8856673
-0.5808075 -1.8683202
-0.5812075 -1.8497958
-0.5816075 -1.8301
-0.5820075 -1.8092514
-0.58240753 -1.7872567
-0.58280754 -1.764133
-0.58320755 -1.7398984
-0.58360755 -1.7145612
-0.58400756 -1.688145
-0.58440757 -1.6606584
-0.5848076 -1.6321269
-0.5852076 -1.6025603
-0.5856076 -1.5719858
-0.5860076 -1.5404139
-0.5864076 -1.5078738
-0.5868076 -1.4743762
-0.5872076 -1.4399525
-0.5876076 -1.404614
-0.5880076 -1.3683937
-0.58840764 -1.3313034
-0.58880764 -1.293378
-0.58920765 -1.2546297
-0.58960766 -1.215095
-0.59000766 -1.1747867
-0.59040767 -1.1337426
-0.5908077 -1.091976
-0.5912077 -1.0495261
-0.5916077 -1.0064068
-0.5920077 -0.96265835
-0.5924077 -0.9182952
-0.5928077 -0.8733587
-0.5932077 -0.8278638
-0.5936077 -0.7818529
-0.59400773 -0.73534113
-0.59440774 -0.688372
-0.59480774 -0.6409609
-0.59520775 -0.5931521
-0.59560776 -0.5449614
-0.59600776 -0.49643385
-0.5964078 -0.4475853
-0.5968078 -0.3984615
-0.5972078 -0.34907854
-0.5976078 -0.29948258
-0.5980078 -0.24968992
-0.5984078 -0.19974712
-0.5988078 -0.14967054
-0.5992078 -9.950705e-2
-0.5996078 -4.927308e-2
-0.60000783 9.843827e-4
-0.60040784 5.1248852e-2
-0.60080785 0.10147333
-0.60120785 0.15164132
-0.60160786 0.20170593
-0.60200787 0.25165072
-0.6024079 0.301429
-0.6028079 0.35102442
-0.6032079 0.4003906
-0.6036079 0.44951135
-0.6040079 0.49834076
-0.6044079 0.5468628
-0.6048079 0.5950393
-0.6052079 0.6428327
-0.6056079 0.69022727
-0.60600793 0.73717874
-0.60640794 0.7836717
-0.60680795 0.82966256
-0.60720795 0.8751363
-0.60760796 0.9200505
-0.60800797 0.9643903
-0.608408 1.0081142
-0.608808 1.051208
-0.609208 1.0936313
-0.609608 1.1353701
-0.610008 1.1763856
-0.610408 1.2166643
-0.610808 1.2561682
-0.611208 1.2948848
-0.611608 1.3327776
-0.61200804 1.3698343
-0.61240804 1.4060202
-0.61280805 1.4413234
-0.61320806 1.4757109
-0.61360806 1.5091714
-0.61400807 1.5416737
-0.6144081 1.573207
-0.6148081 1.6037419
-0.6152081 1.6332685
-0.6156081 1.6617589
-0.6160081 1.689204
-0.6164081 1.715578
-0.6168081 1.7408723
-0.6172081 1.7650633
-0.61760813 1.7881429
-0.61800814 1.8100896
-0.61840814 1.8308963
-0.61880815 1.8505435
-0.61920816 1.8690246
-0.61960816 1.8863225
-0.6200082 1.9024315
-0.6204082 1.9173363
-0.6208082 1.9310324
-0.6212082 1.9435067
-0.6216082 1.9547553
-0.6220082 1.9647675
-0.6224082 1.9735401
-0.6228082 1.9810649
-0.6232082 1.9873394
-0.62360823 1.9923579
-0.62400824 1.9961184
-0.62440825 1.9986178
-0.62480825 1.9998549
-0.62520826 1.9998288
-0.62560827 1.9985394
-0.6260083 1.9959879
-0.6264083 1.9921752
-0.6268083 1.987104
-0.6272083 1.9807786
-0.6276083 1.9732009
-0.6280083 1.9643781
-0.6284083 1.954313
-0.6288083 1.9430152
-0.6292083 1.9304883
-0.62960833 1.916744
-0.63000834 1.9017869
-0.63040835 1.8856308
-0.63080835 1.8682812
-0.63120836 1.8497542
-0.63160837 1.830056
-0.6320084 1.8092048
-0.6324084 1.7872076
-0.6328084 1.764085
-0.6332084 1.7398446
-0.6336084 1.7145089
-0.6340084 1.6880864
-0.6344084 1.6606016
-0.6348084 1.6320637
-0.6352084 1.6024994
-0.63560843 1.5719182
-0.63600844 1.540349
-0.63640845 1.5078019
-0.63680845 1.4743074
-0.63720846 1.4398766
-0.63760847 1.4045415
-0.6380085 1.3683138
-0.6384085 1.3312274
-0.6388085 1.2932945
-0.6392085 1.2545506
-0.6396085 1.2150081
-0.6400085 1.1747044
-0.6404085 1.1336524
-0.6408085 1.0918908
-0.6412085 1.049433
-0.64160854 1.0063188
-0.64200854 0.9625625
-0.64240855 0.9182048
-0.64280856 0.8732604
-0.64320856 0.8277712
-0.64360857 0.7817522
-0.6440086 0.73524654
-0.6444086 0.6882693
-0.6448086 0.6408645
-0.6452086 0.5930477
-0.6456086 0.5448635
-0.6460086 0.4963279
-0.6464086 0.44748616
-0.6468086 0.39835432
-0.64720863 0.34897834
-0.64760864 0.29937443
-0.64800864 0.24958897
-0.64840865 0.19963829
-0.64880866 0.14956148
-0.64920866 9.9397816e-2
-0.6496087 4.9163744e-2
-0.6500087 -1.0937531e-3
-0.6504087 -5.135819e-2
-0.6508087 -0.10158256
-0.6512087 -0.15175039
-0.6516087 -0.20181474
-0.6520087 -0.25175923
-0.6524087 -0.30153713
-0.6528087 -0.3511321
-0.65320873 -0.40049776
-0.65360874 -0.44961792
-0.65400875 -0.49844667
-0.65440875 -0.546968
-0.65480876 -0.59513646
-0.65520877 -0.6429363
-0.6556088 -0.69032276
-0.6560088 -0.7372804
-0.6564088 -0.78376526
-0.6568088 -0.82976204
-0.6572088 -0.8752278
-0.6576088 -0.9201476
-0.6580088 -0.9644794
-0.6584088 -1.0082086
-0.6588088 -1.0512946
-0.65920883 -1.0937228
-0.65960884 -1.1354539
-0.66000885 -1.1764741
-0.66040885 -1.216745
-0.66080886 -1.2562534
-0.66120887 -1.2949624
-0.6616089 -1.3328592
-0.6620089 -1.3699085
-0.6624089 -1.406098
-0.6628089 -1.4413939
-0.6632089 -1.4757847
-0.6636089 -1.5092381
-0.6640089 -1.5417433
-0.6644089 -1.5732698
-0.6648089 -1.6038073
-0.66520894 -1.6333271
-0.66560894 -1.6618198
-0.66600895 -1.6892585
-0.66640896 -1.7156342
-0.66680896 -1.7409223
-0.66720897 -1.7651147
-0.667609 -1.7881885
-0.668009 -1.8101362
-0.668409 -1.8309373
-0.668809 -1.850585
-0.669209 -1.8690609
-0.669609 -1.8863589
-0.670009 -1.9024628
-0.670409 -1.9173675
-0.67080903 -1.9310609
-0.67120904 -1.9435326
-0.67160904 -1.9547784
-0.67200905 -1.964788
-0.67240906 -1.9735578
-0.67280906 -1.9810799
-0.6732091 -1.9873518
-0.6736091 -1.9923674
-0.6740091 -1.9961252
-0.6744091 -1.9986218
-0.6748091 -1.9998562
-0.6752091 -1.9998274
-0.6756091 -1.9985352
-0.6760091 -1.995981
-0.6764091 -1.9921656
-0.67680913 -1.9870925
-0.67720914 -1.9807634
-0.67760915 -1.9731842
-0.67800915 -1.9643575
-0.67840916 -1.9542915
-0.67880917 -1.9429893
-0.6792092 -1.9304618
-0.6796092 -1.9167128
-0.6800092 -1.9017553
-0.6804092 -1.8855944
-0.6808092 -1.8682449
-0.6812092 -1.8497126
-0.6816092 -1.830015
-0.6820092 -1.8091582
-0.6824092 -1.787162
-0.68280923 -1.7640334
-0.68320924 -1.7397944
-0.68360925 -1.7144526
-0.68400925 -1.6880318
-0.68440926 -1.6605407
-0.68480927 -1.632005
-0.6852093 -1.6024339
-0.6856093 -1.5718554
-0.6860093 -1.5402793
-0.6864093 -1.507735
-0.6868093 -1.4742335
-0.6872093 -1.439806
-0.6876093 -1.4044636
-0.6880093 -1.3682396
-0.6884093 -1.3311459
-0.68880934 -1.293217
-0.68920934 -1.2544653
-0.68960935 -1.2149273
-0.69000936 -1.1746159
-0.69040936 -1.1335686
-0.69080937 -1.0917991
-0.6912094 -1.0493463
-0.6916094 -1.0062243
-0.6920094 -0.9624666
-0.6924094 -0.9181076
-0.6928094 -0.873162
-0.6932094 -0.82767165
-0.6936094 -0.78165156
-0.6940094 -0.7351448
-0.69440943 -0.6881666
-0.69480944 -0.6407609
-0.69520944 -0.5929432
-0.69560945 -0.5447583
-0.69600946 -0.49622196
-0.69640946 -0.44737956
-0.6968095 -0.39824715
-0.6972095 -0.34887066
-0.6976095 -0.2992663
-0.6980095 -0.24948046
-0.6984095 -0.19952947
-0.6988095 -0.14946003
-0.6992095 -9.9288575e-2
-0.6996095 -4.9062036e-2
-0.7000095 1.2031237e-3
-0.70040953 5.1459894e-2
-0.70080954 0.10169179
-0.70120955 0.15185183
-0.70160955 0.20192356
-0.70200956 0.25186017
-0.70240957 0.30164525
-0.7028096 0.35123226
-0.7032096 0.4006049
-0.7036096 0.44971707
-0.7040096 0.4985526
-0.7044096 0.54706585
-0.7048096 0.59524083
-0.7052096 0.6430326
-0.7056096 0.69042546
-0.7060096 0.73737496
-0.70640963 0.78386587
-0.70680964 0.8298546
-0.70720965 0.87532616
-0.70760965 0.9202379
-0.70800966 0.96457523
-0.70840967 1.0082965
-0.7088097 1.0513875
-0.7092097 1.093808
-0.7096097 1.135544
-0.7100097 1.1765563
-0.7104097 1.2168318
-0.7108097 1.2563325
-0.7112097 1.2950457
-0.7116097 1.3329351
-0.7120097 1.3699881
-0.71240973 1.4061702
-0.71280974 1.4414697
-0.71320975 1.4758533
-0.71360976 1.5093099
-0.71400976 1.541813
-0.71440977 1.5733373
-0.7148098 1.6038727
-0.7152098 1.6333903
-0.7156098 1.6618806
-0.7160098 1.689317
-0.7164098 1.7156904
-0.7168098 1.7409762
-0.7172098 1.765166
-0.7176098 1.7882375
-0.7180098 1.8101827
-0.71840984 1.8309813
-0.71880984 1.8506265
-0.71920985 1.8690997
-0.71960986 1.8863952
-0.72000986 1.9024966
-0.72040987 1.9173986
-0.7208099 1.9310874
-0.7212099 1.9435583
-0.7216099 1.9547999
-0.7220099 1.9648083
-0.7224099 1.9735743
-0.7228099 1.981095
-0.7232099 1.9873631
-0.7236099 1.9923769
-0.72400993 1.9961315
-0.72440994 1.9986259
-0.72480994 1.9998574
-0.72520995 1.999826
-0.72560996 1.9985313
-0.72600996 1.9959741
-0.72641 1.9921566
-0.72681 1.9870801
-0.72721 1.9807494
-0.72761 1.9731665
-0.72801 1.9643384
-0.72841 1.9542682
-0.72881 1.9429651
-0.72921 1.9304332
-0.72961 1.9166838
-0.73001003 1.9017215
-0.73041004 1.8855605
-0.73081005 1.8682058
-0.73121005 1.8496739
-0.73161006 1.8299707
-0.73201007 1.8091148
-0.7324101 1.7871128
-0.7328101 1.7639855
-0.7332101 1.7397404
-0.7336101 1.7144002
-0.7340101 1.6879731
-0.7344101 1.660484
-0.7348101 1.6319417
-0.7352101 1.6023731
-0.7356101 1.5717877
-0.73601013 1.5402094
-0.73641014 1.5076631
-0.73681015 1.4741596
-0.73721015 1.43973
-0.73761016 1.4043858
-0.73801017 1.3681599
-0.7384102 1.3310642
-0.7388102 1.2931335
-0.7392102 1.2543802
-0.7396102 1.2148404
-0.7400102 1.1745274
-0.7404102 1.1334785
-0.7408102 1.0917075
-0.7412102 1.0492532
-0.7416102 1.0061299
-0.74201024 0.9623774
-0.74241024 0.9180105
-0.74281025 0.8730704
-0.74321026 0.82757205
-0.74361026 0.7815579
-0.74401027 0.7350431
-0.7444103 0.6880711
-0.7448103 0.6406573
-0.7452103 0.59284604
-0.7456103 0.54465306
-0.7460103 0.49612337
-0.7464103 0.44727296
-0.7468103 0.39814743
-0.7472103 0.34876296
-0.74761033 0.2991657
-0.74801034 0.24937195
-0.74841034 0.19942823
-0.74881035 0.14935096
-0.74921036 9.9186964e-2
-0.74961036 4.89527e-2
-0.7500104 -1.3048649e-3
-0.7504104 -5.156923e-2
-0.7508104 -0.10179339
-0.7512104 -0.15196088
-0.7516104 -0.20202479
-0.7520104 -0.25196865
-0.7524104 -0.30174583
-0.7528104 -0.3513399
-0.7532104 -0.4007046
-0.75361043 -0.44982365
-0.75401044 -0.49865112
-0.75441045 -0.54717106
-0.75481045 -0.595338
-0.75521046 -0.6431362
-0.75561047 -0.69052094
-0.7560105 -0.73747665
-0.7564105 -0.78395945
-0.7568105 -0.82995415
-0.7572105 -0.87541765
-0.7576105 -0.92033505
-0.7580105 -0.964671
-0.7584105 -1.008391
-0.7588105 -1.0514807
-0.7592105 -1.0938996
-0.75961053 -1.1356341
-0.76001054 -1.1766448
-0.76041055 -1.2169186
-0.76081055 -1.2564176
-0.76121056 -1.2951291
-0.76161057 -1.3330166
-0.7620106 -1.3700678
-0.7624106 -1.4062481
-0.7628106 -1.4415455
-0.7632106 -1.4759271
-0.7636106 -1.5093817
-0.7640106 -1.5418777
-0.7644106 -1.5734049
-0.7648106 -1.6039335
-0.7652106 -1.6334534
-0.76561064 -1.6619372
-0.76601064 -1.6893755
-0.76641065 -1.7157427
-0.76681066 -1.74103
-0.76721066 -1.765214
-0.76761067 -1.7882864
-0.7680107 -1.810226
-0.7684107 -1.8310252
-0.7688107 -1.850665
-0.7692107 -1.8691386
-0.7696107 -1.886429
-0.7700107 -1.9025303
-0.7704107 -1.9174275
-0.7708107 -1.9311159
-0.77121073 -1.9435823
-0.77161074 -1.954823
-0.77201074 -1.9648273
-0.77241075 -1.973592
-0.77281076 -1.9811089
-0.77321076 -1.9873754
-0.7736108 -1.9923857
-0.7740108 -1.9961383
-0.7744108 -1.9986296
-0.7748108 -1.9998587
-0.7752108 -1.9998245
-0.7756108 -1.9985272
-0.7760108 -1.9959676
-0.7764108 -1.9921468
-0.7768108 -1.9870685
-0.77721083 -1.9807342
-0.77761084 -1.9731498
-0.77801085 -1.9643178
-0.77841085 -1.9542465
-0.77881086 -1.9429393
-0.77921087 -1.9304066
-0.7796109 -1.9166526
-0.7800109 -1.9016876
-0.7804109 -1.885524
-0.7808109 -1.8681668
-0.7812109 -1.8496323
-0.7816109 -1.8299266
-0.7820109 -1.8090682
-0.7824109 -1.7870637
-0.7828109 -1.763934
-0.78321093 -1.7396865
-0.78361094 -1.7143439
-0.78401095 -1.6879145
-0.78441095 -1.660423
-0.78481096 -1.6318785
-0.78521097 -1.6023077
-0.785611 -1.5717201
-0.786011 -1.5401446
-0.786411 -1.5075914
-0.786811 -1.4740908
-0.787211 -1.4396541
-0.787611 -1.4043133
-0.788011 -1.3680801
-0.788411 -1.3309883
-0.788811 -1.29305
-0.78921103 -1.254301
-0.78961104 -1.2147536
-0.79001105 -1.174445
-0.79041106 -1.1333884
-0.79081106 -1.0916222
-0.79121107 -1.0491601
-0.7916111 -1.0060419
-0.7920111 -0.9622815
-0.7924111 -0.91792005
-0.7928111 -0.872972
-0.7932111 -0.8274794
-0.7936111 -0.78145725
-0.7940111 -0.73494846
-0.7944111 -0.6879684
-0.7948111 -0.6405609
-0.79521114 -0.5927416
-0.79561114 -0.5445552
-0.79601115 -0.49601743
-0.79641116 -0.4471738
-0.79681116 -0.39804026
-0.79721117 -0.3486628
-0.7976112 -0.29905757
-0.7980112 -0.24927099
-0.7984112 -0.1993194
-0.7988112 -0.14924951
-0.7992112 -9.9077724e-2
-0.7996112 -4.8850987e-2
-0.8000112 1.4142354e-3
-0.8004112 5.1670935e-2
-0.80081123 0.10190263
-0.80121124 0.15206233
-0.80161124 0.2021336
-0.80201125 0.25207716
-0.80241126 0.30185392
-0.80281126 0.35144758
-0.8032113 0.40081176
-0.8036113 0.44993022
-0.8040113 0.49875703
-0.8044113 0.5472762
-0.8048113 0.5954424
-0.8052113 0.64323974
-0.8056113 0.6906236
-0.8060113 0.73757833
-0.8064113 0.7840601
-0.80681133 0.8300536
-0.80721134 0.87551594
-0.80761135 0.92043215
-0.80801135 0.9647601
-0.80841136 1.0084854
-0.80881137 1.0515672
-0.8092114 1.0939912
-0.8096114 1.1357177
-0.8100114 1.1767333
-0.8104114 1.2169993
-0.8108114 1.2565027
-0.8112114 1.2952065
-0.8116114 1.3330982
-0.8120114 1.370142
-0.8124114 1.4063258
-0.81281143 1.441616
-0.81321144 1.476001
-0.81361145 1.5094484
-0.81401145 1.5419475
-0.81441146 1.5734677
-0.81481147 1.6039988
-0.8152115 1.6335121
-0.8156115 1.661998
-0.8160115 1.68943
-0.8164115 1.7157989
-0.8168115 1.74108
-0.8172115 1.7652653
-0.8176115 1.788332
-0.8180115 1.8102725
-0.8184115 1.8310661
-0.81881154 1.8507065
-0.81921154 1.8691748
-0.81961155 1.8864653
-0.82001156 1.9025617
-0.82041156 1.9174587
-0.82081157 1.9311423
-0.8212116 1.9436082
-0.8216116 1.9548445
-0.8220116 1.9648478
-0.8224116 1.9736085
-0.8228116 1.9811239
-0.8232116 1.9873868
-0.8236116 1.9923953
-0.8240116 1.9961451
-0.82441163 1.9986336
-0.82481164 1.99986
-0.82521164 1.9998231
-0.82561165 1.9985229
-0.82601166 1.9959607
-0.82641166 1.9921372
-0.8268117 1.9870561
-0.8272117 1.9807191
-0.8276117 1.9731319
-0.8280117 1.9642973
-0.8284117 1.9542233
-0.8288117 1.9429133
-0.8292117 1.930378
-0.8296117 1.9166213
-0.8300117 1.9016562
-0.83041173 1.8854876
-0.83081174 1.8681304
-0.83121175 1.8495907
-0.83161175 1.8298856
-0.83201176 1.8090215
-0.83241177 1.7870181
-0.8328118 1.7638824
-0.8332118 1.7396363
-0.8336118 1.7142875
-0.8340118 1.6878599
-0.8344118 1.660362
-0.8348118 1.6318196
-0.8352118 1.6022421
-0.8356118 1.5716572
-0.8360118 1.5400748
-0.83641183 1.5075245
-0.83681184 1.4740169
-0.83721185 1.4395834
-0.83761185 1.4042355
-0.83801186 1.3680059
-0.83841187 1.3309066
-0.8388119 1.2929724
-0.8392119 1.2542157
-0.8396119 1.2146728
-0.8400119 1.1743565
-0.8404119 1.1333046
-0.8408119 1.0915306
-0.8412119 1.0490736
-0.8416119 1.0059474
-0.8420119 0.96219236
-0.84241194 0.9178229
-0.84281194 0.8728805
-0.84321195 0.8273799
-0.84361196 0.7813636
-0.84401196 0.7348468
-0.84441197 0.6878728
-0.844812 0.6404573
-0.845212 0.5926444
-0.845612 0.5444499
-0.846012 0.49591148
-0.846412 0.4470672
-0.846812 0.39793307
-0.847212 0.3485551
-0.847612 0.29894942
-0.84801203 0.24916248
-0.84841204 0.19921057
-0.84881204 0.14914043
-0.84921205 9.896849e-2
-0.84961206 4.874165e-2
-0.85001206 -1.5236059e-3
-0.8504121 -5.1780272e-2
-0.8508121 -0.10201185
-0.8512121 -0.15217139
-0.8516121 -0.2022424
-0.8520121 -0.25217807
-0.8524121 -0.30196205
-0.8528121 -0.35154775
-0.8532121 -0.4009189
-0.8536121 -0.45002934
-0.85401213 -0.49886295
-0.85441214 -0.54737407
-0.85481215 -0.5955468
-0.85521215 -0.64333606
-0.85561216 -0.6907262
-0.85601217 -0.73767287
-0.8564122 -0.78416073
-0.8568122 -0.8301462
-0.8572122 -0.8756143
-0.8576122 -0.92052245
-0.8580122 -0.9648559
-0.8584122 -1.0085733
-0.8588122 -1.0516602
-0.8592122 -1.0940763
-0.8596122 -1.1358078
-0.86001223 -1.1768155
-0.86041224 -1.2170861
-0.86081225 -1.2565819
-0.86121225 -1.2952899
-0.86161226 -1.333174
-0.86201227 -1.3702216
-0.8624123 -1.4063982
-0.8628123 -1.4416919
-0.8632123 -1.4760696
-0.8636123 -1.5095202
-0.8640123 -1.5420122
-0.8644123 -1.5735352
-0.8648123 -1.6040595
-0.8652123 -1.6335752
-0.8656123 -1.6620547
-0.86601233 -1.6894885
-0.86641234 -1.7158512
-0.86681235 -1.7411339
-0.86721236 -1.7653131
-0.86761236 -1.788381
-0.86801237 -1.810319
-0.8684124 -1.8311101
-0.8688124 -1.850748
-0.8692124 -1.8692137
-0.8696124 -1.8865017
-0.8700124 -1.9025954
-0.8704124 -1.9174898
-0.8708124 -1.9311707
-0.8712124 -1.9436339
-0.8716124 -1.9548676
-0.87201244 -1.9648682
-0.87241244 -1.9736263
-0.87281245 -1.9811388
-0.87321246 -1.9873991
-0.87361246 -1.9924048
-0.8740125 -1.9961514
-0.8744125 -1.9986377
-0.8748125 -1.9998612
-0.8752125 -1.9998217
-0.8756125 -1.9985191
-0.8760125 -1.9959537
-0.8764125 -1.9921283
-0.8768125 -1.9870437
-0.8772125 -1.9807049
-0.87761253 -1.973114
-0.87801254 -1.9642781
-0.87841254 -1.9542
-0.87881255 -1.9428892
-0.87921256 -1.9303493
-0.87961257 -1.9165922
-0.8800126 -1.9016223
-0.8804126 -1.8854536
-0.8808126 -1.8680915
-0.8812126 -1.849552
-0.8816126 -1.8298414
-0.8820126 -1.8089781
-0.8824126 -1.786969
-0.8828126 -1.7638345
-0.8832126 -1.7395823
-0.88361263 -1.7142351
-0.88401264 -1.6878012
-0.88441265 -1.6603053
-0.88481265 -1.6317564
-0.88521266 -1.6021813
-0.88561267 -1.5715896
-0.8860127 -1.5400099
-0.8864127 -1.5074526
-0.8868127 -1.4739481
-0.8872127 -1.4395076
-0.8876127 -1.404163
-0.8880127 -1.3679261
-0.8884127 -1.3308307
-0.8888127 -1.292889
-0.8892127 -1.2541305
-0.88961273 -1.2145859
-0.89001274 -1.174268
-0.89041275 -1.1332145
-0.89081275 -1.091439
-0.89121276 -1.0489805
-0.89161277 -1.0058528
-0.8920128 -0.96209645
-0.8924128 -0.91772574
-0.8928128 -0.8727821
-0.8932128 -0.8272803
-0.8936128 -0.78126293
-0.8940128 -0.734745
-0.8944128 -0.6877701
-0.8948128 -0.6403537
-0.8952128 -0.59253997
-0.89561284 -0.54434466
-0.89601284 -0.49581292
-0.89641285 -0.4469606
-0.89681286 -0.39783338
-0.89721286 -0.34844738
-0.89761287 -0.29884884
-0.8980129 -0.24905396
-0.8984129 -0.19910935
-0.8988129 -0.14903137
-0.8992129 -9.886687e-2
-0.8996129 -4.863231e-2
-0.9000129 1.6253471e-3
-0.9004129 5.1889606e-2
-0.9008129 0.10211346
-0.90121293 0.15228043
-0.90161294 0.20234363
-0.90201294 0.25228658
-0.90241295 0.30206263
-0.90281296 0.35165542
-0.90321296 0.40101856
-0.903613 0.45013592
-0.904013 0.49896148
-0.904413 0.5474793
-0.904813 0.59564394
-0.905213 0.64343965
-0.905613 0.6908217
-0.906013 0.73777455
-0.906413 0.7842543
-0.906813 0.83024573
-0.90721303 0.8757058
-0.90761304 0.92061955
-0.90801305 0.9649451
-0.90841305 1.0086677
-0.90881306 1.0517467
-0.90921307 1.0941678
-0.9096131 1.1358916
-0.9100131 1.176904
-0.9104131 1.2171669
-0.9108131 1.256667
-0.9112131 1.2953732
-0.9116131 1.3332555
-0.9120131 1.3703012
-0.9124131 1.4064759
-0.9128131 1.4417677
-0.91321313 1.4761434
-0.91361314 1.5095919
-0.91401315 1.542082
-0.91441315 1.5736027
-0.91481316 1.6041248
-0.91521317 1.6336383
-0.9156132 1.6621155
-0.9160132 1.6895471
-0.9164132 1.7159073
-0.9168132 1.7411877
-0.9172132 1.7653645
-0.9176132 1.7884299
-0.9180132 1.8103621
-0.9184132 1.8311541
-0.9188132 1.8507864
-0.91921324 1.8692527
-0.91961324 1.8865354
-0.92001325 1.9026291
-0.92041326 1.9175186
-0.92081326 1.9311992
-0.92121327 1.9436579
-0.9216133 1.9548907
-0.9220133 1.9648871
-0.9224133 1.9736439
-0.9228133 1.9811528
-0.9232133 1.9874114
-0.9236133 1.9924138
-0.9240133 1.9961582
-0.9244133 1.9986415
-0.92481333 1.9998626
-0.92521334 1.9998202
-0.92561334 1.9985148
-0.92601335 1.9959472
-0.92641336 1.9921185
-0.92681336 1.9870322
-0.9272134 1.9806898
-0.9276134 1.9730974
-0.9280134 1.9642575
-0.9284134 1.9541783
-0.9288134 1.9428632
-0.9292134 1.9303228
-0.9296134 1.9165609
-0.9300134 1.9015907
-0.9304134 1.8854171
-0.93081343 1.8680551
-0.93121344 1.8495104
-0.93161345 1.8298004
-0.93201345 1.8089315
-0.93241346 1.7869233
-0.93281347 1.763783
-0.9332135 1.7395283
-0.9336135 1.7141788
-0.9340135 1.6877425
-0.9344135 1.6602443
-0.9348135 1.6316931
-0.9352135 1.6021158
-0.9356135 1.5715219
-0.9360135 1.5399401
-0.9364135 1.5073807
-0.93681353 1.4738742
-0.93721354 1.4394317
-0.93761355 1.4040852
-0.93801355 1.3678463
-0.93841356 1.330749
-0.93881357 1.2928056
-0.9392136 1.2540513
-0.9396136 1.214499
-0.9400136 1.1741856
-0.9404136 1.1331244
-0.9408136 1.0913537
-0.9412136 1.0488873
-0.9416136 1.0057648
-0.9420136 0.96200055
-0.9424136 0.9176353
-0.94281363 0.8726837
-0.94321364 0.82718766
-0.94361365 0.78116226
-0.94401366 0.73465043
-0.94441366 0.6876674
-0.94481367 0.6402573
-0.9452137 0.5924355
-0.9456137 0.5442468
-0.9460137 0.49570695
-0.9464137 0.44686142
-0.9468137 0.39772618
-0.9472137 0.3483472
-0.9476137 0.29874068
-0.9480137 0.248953
-0.9484137 0.19900051
-0.94881374 0.14892991
-0.94921374 9.875764e-2
-0.94961375 4.8530597e-2
-0.95001376 -1.7347175e-3
-0.95041376 -5.199131e-2
-0.9508138 -0.10222269
-0.9512138 -0.15238188
-0.9516138 -0.20245244
-0.9520138 -0.25238752
-0.9524138 -0.30217075
-0.9528138 -0.35175556
-0.9532138 -0.40112573
-0.9536138 -0.45023504
-0.9540138 -0.4990674
-0.95441383 -0.54757714
-0.95481384 -0.5957483
-0.95521384 -0.6435432
-0.95561385 -0.69092435
-0.95601386 -0.7378762
-0.95641387 -0.7843549
-0.9568139 -0.8303452
-0.9572139 -0.87580407
-0.9576139 -0.92071664
-0.9580139 -0.96504086
-0.9584139 -1.0087622
-0.9588139 -1.0518397
-0.9592139 -1.0942594
-0.9596139 -1.1359816
-0.9600139 -1.1769924
-0.96041393 -1.2172537
-0.96081394 -1.2567521
-0.96121395 -1.2954508
-0.96161395 -1.333337
-0.96201396 -1.3703754
-0.96241397 -1.4065537
-0.962814 -1.4418381
-0.963214 -1.4762172
-0.963614 -1.5096587
-0.964014 -1.5421516
-0.964414 -1.5736655
-0.964814 -1.6041901
-0.965214 -1.633697
-0.965614 -1.6621763
-0.966014 -1.6896015
-0.96641403 -1.7159635
-0.96681404 -1.7412378
-0.96721405 -1.7654159
-0.96761405 -1.7884754
-0.96801406 -1.8104086
-0.96841407 -1.8311951
-0.9688141 -1.8508279
-0.9692141 -1.8692888
-0.9696141 -1.8865718
-0.9700141 -1.9026605
-0.9704141 -1.9175497
-0.9708141 -1.9312257
-0.9712141 -1.9436836
-0.9716141 -1.9549122
-0.9720141 -1.9649075
-0.97241414 -1.9736603
-0.97281414 -1.9811678
-0.97321415 -1.9874227
-0.97361416 -1.9924232
-0.97401416 -1.9961646
-0.97441417 -1.9986454
-0.9748142 -1.9998637
-0.9752142 -1.9998188
-0.9756142 -1.9985108
-0.9760142 -1.9959403
-0.9764142 -1.9921095
-0.9768142 -1.9870197
-0.9772142 -1.9806746
-0.9776142 -1.9730796
-0.97801423 -1.964237
-0.97841424 -1.9541551
-0.97881424 -1.9428372
-0.97921425 -1.9302942
-0.97961426 -1.9165297
-0.98001426 -1.9015568
-0.9804143 -1.8853806
-0.9808143 -1.868016
-0.9812143 -1.8494687
-0.9816143 -1.8297563
-0.9820143 -1.8088849
-0.9824143 -1.7868742
-0.9828143 -1.7637314
-0.9832143 -1.7394781
-0.9836143 -1.7141224
-0.98401433 -1.6876879
-0.98441434 -1.6601833
-0.98481435 -1.6316344
-0.98521435 -1.6020503
-0.98561436 -1.5714589
-0.98601437 -1.5398703
-0.9864144 -1.5073138
-0.9868144 -1.4738003
-0.9872144 -1.439361
-0.9876144 -1.4040072
-0.9880144 -1.3677721
-0.9884144 -1.3306674
-0.9888144 -1.292728
-0.9892144 -1.2539661
-0.9896144 -1.2144182
-0.99001443 -1.1740971
-0.99041444 -1.1330405
-0.99081445 -1.0912621
-0.99121445 -1.0488007
-0.99161446 -1.0056703
-0.99201447 -0.9619114
-0.9924145 -0.91753817
-0.9928145 -0.87259215
-0.9932145 -0.8270881
-0.9936145 -0.78106856
-0.9940145 -0.7345487
-0.9944145 -0.6875719
-0.9948145 -0.6401537
-0.9952145 -0.5923383
-0.9956145 -0.54414153
-0.99601454 -0.4956084
-0.99641454 -0.4467548
-0.99681455 -0.39762646
-0.99721456 -0.3482395
-0.99761456 -0.29864007
-0.99801457 -0.24884449
-0.9984146 -0.19889928
-0.9988146 -0.14882085
-0.9992146 -9.86484e-2
-0.9996146 -4.842126e-2
diff --git a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/test.T b/testsuite/tests/ghc-regress/programs/barton-mangler-bug/test.T
deleted file mode 100644
index 966b971ae9..0000000000
--- a/testsuite/tests/ghc-regress/programs/barton-mangler-bug/test.T
+++ /dev/null
@@ -1,14 +0,0 @@
-# Exhausts Hugs's heap (CAF leak)
-
-test('barton-mangler-bug',
- [skip_if_fast,
- extra_clean(['Basic.hi', 'Basic.o',
- 'Expected.hi', 'Expected.o',
- 'Main.hi', 'Main.o',
- 'Physical.hi', 'Physical.o',
- 'Plot.hi', 'Plot.o',
- 'PlotExample.hi', 'PlotExample.o',
- 'TypesettingTricks.hi', 'TypesettingTricks.o']),
- omit_compiler_types(['hugs'])],
- multimod_compile_and_run, ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/cholewo-eval/Arr.lhs b/testsuite/tests/ghc-regress/programs/cholewo-eval/Arr.lhs
deleted file mode 100644
index 799f493529..0000000000
--- a/testsuite/tests/ghc-regress/programs/cholewo-eval/Arr.lhs
+++ /dev/null
@@ -1,395 +0,0 @@
-
-\begin{code}
-module Arr (
- module Data.Array,
-
- safezipWith, safezip,
- row,
- sum1, map2, map3,
- mapat, mapat2, mapat3,
- mapindexed, mapindexed2, mapindexed3,
--- zipArr, sumArr, scaleArr,
- arraySize,
-
- matvec, inner,
- outerVector,
-
- Vector (Vector), toVector, fromVector, listVector, vectorList, vector,
- zipVector, scaleVector, sumVector, vectorNorm2, vectorSize,
-
- Matrix (Matrix), toMatrix, fromMatrix, listMatrix, matrixList, matrix,
- zipMatrix, scaleMatrix, sumMatrix,
-
- augment,
- trMatrix,
-
--- showsVector,
--- showsMatrix,
--- showsVecList, showsMatList
--- spy,
-) where
-import Data.Array
-import Numeric
---import Trace
---import IOExtensions(unsafePerformIO)
-\end{code}
-
-@Vector@ and @Matrix@ are 1-based arrays with read/show in form of Lists.
-
-\begin{code}
-data Vector a = Vector (Array Int a) deriving (Eq) --, Show)
-
-toVector :: Array Int a -> Vector a
-toVector x = Vector x
-
-fromVector :: Vector a -> Array Int a
-fromVector (Vector x) = x
-
-instance Functor (Vector) where
- fmap fn x = toVector (fmap fn (fromVector x))
-
-{-instance Eq a => Eq (Vector a) where
--- (Vector x) == (Vector y) = x == y
--}
-
-instance Show a => Show (Vector a) where
- showsPrec p x = showsPrec p (elems (fromVector x))
-
-instance Read a => Read (Vector a) where
- readsPrec p = readParen False
- (\r -> [(listVector s, t) | (s, t) <- reads r])
-
-instance Num b => Num (Vector b) where
- (+) = zipVector "+" (+)
- (-) = zipVector "-" (-)
- negate = fmap negate
- abs = fmap abs
- signum = fmap signum
--- (*) = matMult -- works only for matrices!
--- fromInteger = fmap fromInteger
-\end{code}
-
-
-Convert a list to 1-based vector.
-
-\begin{code}
-listVector :: [a] -> Vector a
-listVector x = toVector (listArray (1,length x) x)
-
-vectorList :: Vector a -> [a]
-vectorList = elems . fromVector
-
-vector (l,u) x | l == 1 = toVector (array (l,u) x)
- | otherwise = error "vector: l != 1"
-
-zipVector :: String -> (b -> c -> d) -> Vector b -> Vector c -> Vector d
-zipVector s f (Vector a) (Vector b)
- | bounds a == bounds b = vector (bounds a) [(i, f (a!i) (b!i)) | i <- indices a]
- | otherwise = error ("zipVector: " ++ s ++ ": unconformable arrays")
-
-scaleVector :: Num a => a -> Vector a -> Vector a
-scaleVector a = fmap (* a)
-
-sumVector :: Num a => Vector a -> a
-sumVector = sum . elems . fromVector
-
-vectorNorm2 :: Num a => Vector a -> a
-vectorNorm2 x = inner x x
-
-vectorSize :: Vector a -> Int
-vectorSize (Vector x) = rangeSize (bounds x)
-
-\end{code}
-
-==============
-
-\begin{code}
-data Matrix a = Matrix (Array (Int, Int) a) deriving Eq
-
-toMatrix :: Array (Int, Int) a -> Matrix a
-toMatrix x = Matrix x
-
-fromMatrix :: Matrix a -> Array (Int, Int) a
-fromMatrix (Matrix x) = x
-
-instance Functor (Matrix) where
- fmap fn x = toMatrix (fmap fn (fromMatrix x))
-
---instance Eq a => Eq (Matrix a) where
--- (Matrix x) == (Matrix y) = x == y
-
-instance Show a => Show (Matrix a) where
- showsPrec p x = vertl (matrixList x)
-
-vertl [] = showString "[]"
-vertl (x:xs) = showChar '[' . shows x . showl xs
- where showl [] = showChar ']'
- showl (x:xs) = showString ",\n" . shows x . showl xs
-
-instance Read a => Read (Matrix a) where
- readsPrec p = readParen False
- (\r -> [(listMatrix s, t) | (s, t) <- reads r])
-
-instance Num b => Num (Matrix b) where
- (+) = zipMatrix "+" (+)
- (-) = zipMatrix "-" (-)
- negate = fmap negate
- abs = fmap abs
- signum = fmap signum
- x * y = toMatrix (matMult (fromMatrix x) (fromMatrix y)) -- works only for matrices!
--- fromInteger = fmap fromInteger
-\end{code}
-
-Convert a nested list to a matrix.
-
-\begin{code}
-listMatrix :: [[a]] -> Matrix a
-listMatrix x = Matrix (listArray ((1, 1), (length x, length (x!!0))) (concat x))
-
-matrixList :: Matrix a -> [[a]]
-matrixList (Matrix x) = [ [x!(i,j) | j <- range (l',u')] | i <- range (l,u)]
- where ((l,l'),(u,u')) = bounds x
-
-matrix ((l,l'),(u,u')) x | l == 1 && l' == 1 = toMatrix (array ((l,l'),(u,u')) x)
- | otherwise = error "matrix: l != 1"
-
-zipMatrix :: String -> (b -> c -> d) -> Matrix b -> Matrix c -> Matrix d
-zipMatrix s f (Matrix a) (Matrix b)
- | bounds a == bounds b = matrix (bounds a) [(i, f (a!i) (b!i)) | i <- indices a]
- | otherwise = error ("zipMatrix: " ++ s ++ ": unconformable arrays")
-
-scaleMatrix :: Num a => a -> Matrix a -> Matrix a
-scaleMatrix a = fmap (* a)
-
-sumMatrix :: Num a => Matrix a -> a
-sumMatrix = sum . elems . fromMatrix
-
-\end{code}
-
-
-============
-
-\begin{code}
-safezipWith :: String -> (a -> b -> c) -> [a] -> [b] -> [c]
-safezipWith _ _ [] [] = []
-safezipWith s f (x:xs) (y:ys) = f x y : safezipWith s f xs ys
-safezipWith s _ _ _ = error ("safezipWith: " ++ s ++ ": unconformable vectors")
-
-safezip :: [a] -> [b] -> [(a,b)]
-safezip = safezipWith "(,)" (,)
-
-trMatrix :: Matrix a -> Matrix a
-trMatrix (Matrix x) = matrix ((l,l'),(u',u)) [((j,i), x!(i,j)) | j <- range (l',u'), i <- range (l,u)]
- where ((l,l'),(u,u')) = bounds x
-
-row :: (Ix a, Ix b) => a -> Array (a,b) c -> Array b c
-row i x = ixmap (l',u') (\j->(i,j)) x where ((l,l'),(u,u')) = bounds x
-
-zipArr :: (Ix a) => String -> (b -> c -> d) -> Array a b -> Array a c -> Array a d
-zipArr s f a b | bounds a == bounds b = array (bounds a) [(i, f (a!i) (b!i)) | i <- indices a]
- | otherwise = error ("zipArr: " ++ s ++ ": unconformable arrays")
-\end{code}
-
-Valid only for b -> c -> b functions.
-
-\begin{code}
-zipArr' :: (Ix a) => String -> (b -> c -> b) -> Array a b -> Array a c -> Array a b
-zipArr' s f a b | bounds a == bounds b = accum f a (assocs b)
- | otherwise = error ("zipArr': " ++ s ++ ": unconformable arrays")
-\end{code}
-
-Overload arithmetical operators to work on lists.
-
-\begin{code}
-instance Num a => Num [a] where
- (+) = safezipWith "+" (+)
- (-) = safezipWith "-" (-)
- negate = fmap negate
- abs = fmap abs
- signum = fmap signum
--- (*) = undefined
--- fromInteger = undefined
-\end{code}
-
-\begin{code}
-sum1 :: (Num a) => [a] -> a
-sum1 = foldl1 (+)
-
---main = print (sum1 [[4,1,1], [5,1,2], [6,1,3,4]])
-\end{code}
-
-\begin{code}
-map2 f = fmap (fmap f)
-map3 f = fmap (map2 f)
-\end{code}
-
-Map function f at position n only. Out of range indices are silently
-ignored.
-
-\begin{code}
-mapat n f x = mapat1 0 f x where
- mapat1 _ _ [] = []
- mapat1 i f (x:xs) = (if i == n then f x else x) : mapat1 (i + 1) f xs
-
-mapat2 (i,j) = mapat i . mapat j
-mapat3 (i,j,k) = mapat i . mapat j . mapat k
-
--- main = print (mapat 2 (10+) [1,2,3,4])
--- main = print (mapat2 (1,0) (1000+) ginp)
--- main = print (mapat3 (1,0,1) (1000+) gw)
-\end{code}
-
-\begin{code}
-mapindexed f x = mapindexed1 f 0 x where
- mapindexed1 _ _ [] = []
- mapindexed1 f n (x:xs) = f n x : mapindexed1 f (n + 1) xs
-
-mapindexed2 f = mapindexed (\i -> mapindexed (\j -> f (i, j)))
-mapindexed3 f = mapindexed (\i -> mapindexed (\j -> mapindexed (\k -> f (i, j, k))))
-
--- main = print (mapindexed (\x y -> mapat (10+) [1,2,3,4] y) [1,2,3,4])
--- main = print (mapindexed2 (\(i,j) x -> 100*i + 10*j + x) ginp)
--- main = print (mapindexed3 (\(i,j,k) x -> 1000*i + 100*j + 10*k + x) gw)
-\end{code}
-
-
-
-Overload arithmetical operators to work on arrays.
-
-\begin{code}
-instance (Ix a, Show a, Num b) => Num (Array a b) where
- (+) = zipArr "+" (+)
- (-) = zipArr "-" (-)
- negate = fmap negate
- abs = fmap abs
- signum = fmap signum
--- (*) = matMult -- works only for matrices!
--- fromInteger = map fromInteger
-\end{code}
-
-\begin{xcode}
-scaleArr :: (Ix i, Num a) => a -> Array i a -> Array i a
-scaleArr a = fmap (*a)
-
-sumArr :: (Ix i, Num a) => Array i a -> a
-sumArr = sum . elems
-\end{xcode}
-
-\begin{code}
-arraySize :: (Ix i) => Array i a -> Int
-arraySize = rangeSize . bounds
-\end{code}
-
-\begin{code}
-matMult :: (Ix a, Ix b, Ix c, Num d) =>
- Array (a,b) d -> Array (b,c) d -> Array (a,c) d
-matMult x y = array resultBounds
- [((i,j), sum [x!(i,k) * y!(k,j) | k <- range (lj,uj)])
- | i <- range (li,ui),
- j <- range (lj',uj') ]
- where ((li,lj),(ui,uj)) = bounds x
- ((li',lj'),(ui',uj')) = bounds y
- resultBounds
- | (lj,uj)==(li',ui') = ((li,lj'),(ui,uj'))
- | otherwise = error "matMult: incompatible bounds"
-\end{code}
-
-
-Inner product of two vectors.
-
-\begin{code}
-inner :: Num a => Vector a -> Vector a -> a
-inner (Vector v) (Vector w) = if b == bounds w
- then sum [v!i * w!i | i <- range b]
- else error "nn.inner: inconformable vectors"
- where b = bounds v
-\end{code}
-
-Outer product of two vectors $v \dot w^\mathrm{T}$.
-
-\begin{code}
-outerVector :: Num b => Vector b -> Vector b -> Matrix b
-outerVector (Vector v) (Vector w) = if (l,u) == (l',u')
- then matrix ((l,l'),(u,u')) [((i,j), v!i * w!j) | i <- range (l,u), j <- range (l',u')]
- else error "nn.outer: inconformable vectors"
- where ((l,u),(l',u')) = (bounds v, bounds w)
-\end{code}
-
-\begin{code}
-outerArr :: (Ix a, Num b) => Array a b -> Array a b -> Array (a,a) b
-outerArr v w = if (l,u) == (l',u')
- then array ((l,l'),(u,u')) [((i,j), v!i * w!j) | i <- range (l,u), j <- range (l',u')]
- else error "nn.outer: inconformable vectors"
- where ((l,u),(l',u')) = (bounds v, bounds w)
-\end{code}
-
-Inner product of a matrix and a vector.
-
-\begin{code}
-matvec :: (Ix a, Num b) => Array (a,a) b -> Array a b -> Array a b
-matvec w x | bounds x == (l',u') =
- array (l,u) [(i, sum [w!(i,j) * x!j | j <- range (l',u')])
- | i <- range (l,u)]
- | otherwise = error "nn.matvec: inconformable arrays"
- where ((l,l'),(u,u')) = bounds w
-\end{code}
-
-Append to a vector.
-
-\begin{code}
-augment :: (Num a) => Vector a -> a -> Vector a
-augment (Vector x) y = Vector (array (a,b') ((b',y) : assocs x))
- where (a,b) = bounds x
- b' = b + 1
-\end{code}
-
-Older approach (x!!i!!j fails in ghc-2.03).
-
-\begin{code}
-toMatrix' :: [[a]] -> Matrix a
-toMatrix' x = Matrix (array ((1,1),(u,u')) [((i,j), (x!!(i-1))!!(j-1))
- | i <- range (1,u), j <- range (1,u')])
- where (u,u') = (length x,length (x!!0))
-\end{code}
-
-Matrix 2D printout.
-
-\begin{code}
-padleft :: Int -> String -> String
-padleft n x | n <= length x = x
- | otherwise = replicate (n - length x) ' ' ++ x
-\end{code}
-
-\begin{code}
-padMatrix :: RealFloat a => Int -> Matrix a -> Matrix String
-padMatrix n x = let ss = fmap (\a -> showFFloat (Just n) a "") x
- maxw = maximum (fmap length (elems (fromMatrix ss)))
- in fmap (padleft maxw) ss
-\end{code}
-
-\begin{xcode}
-showsVector :: (RealFloat a) => Int -> Vector a -> ShowS
-showsVector n x z1 = let x' = padArr n x
- (l,u) = bounds x' in
- concat (fmap (\ (i, s) -> if i == u then s ++ "\n" else s ++ " ") (assocs x')) ++ z1
-\end{xcode}
-
-\begin{xcode}
-showsMatrix :: RealFloat a => Int -> Matrix a -> ShowS
-showsMatrix n x z1 = let x' = padMatrix n x
- ((l,l'),(u,u')) = bounds x' in
- concat (fmap (\ ((i,j), s) -> if j == u' then s ++ "\n" else s ++ " ") (assocs x')) ++ z1
-\end{xcode}
-
-{-
-showsVecList n x s = foldr (showsVector n) s x
-showsMatList n x s = foldr (showsMatrix n) s x
--}
-
-
-\begin{code}
---spy :: Show a => String -> a -> a
---spy msg x = trace ('<' : msg ++ ": " ++ shows x ">\n") x
---spy x = seq (unsafePerformIO (putStr ('<' : shows x ">\n"))) x
---spy x = traceShow "z" x
-\end{code}
diff --git a/testsuite/tests/ghc-regress/programs/cholewo-eval/Main.lhs b/testsuite/tests/ghc-regress/programs/cholewo-eval/Main.lhs
deleted file mode 100644
index a2e5c8d25f..0000000000
--- a/testsuite/tests/ghc-regress/programs/cholewo-eval/Main.lhs
+++ /dev/null
@@ -1,109 +0,0 @@
-\begin{code}
-module Main(main) where
-import Arr
-\end{code}
-
-\begin{code}
-type F a = Vector a -> a
-type DF a = Vector a -> Vector a
-\end{code}
-
-\begin{code}
-data {-(Eval a) =>-} ScgData a = ScgData {k :: !Int, err :: !a,
- w, p, r :: !(Vector a),
- delta, pnorm2, lambda, lambdabar :: !a,
- success :: !Bool}
-\end{code}
-
-\begin{code}
-calculate2order :: Floating a => ScgData a -> a -> DF a -> ScgData a
-calculate2order d sigma1 df =
- let pnorm2' = vectorNorm2 (p d)
- sigma = sigma1 / (sqrt pnorm2')
- s = scaleVector (1/sigma) (df ((w d) + (scaleVector sigma (p d))) - df (w d))
- in d {pnorm2 = pnorm2', delta = inner (p d) s}
-\end{code}
-
-\begin{code}
-hessPosDef :: (Floating a, Ord a) => ScgData a -> ScgData a
-hessPosDef d =
- let delta' = delta d + (lambda d - lambdabar d) * pnorm2 d {- step 3 -}
- in if delta' <= 0 {- step 4 -}
- then let lambdabar' = 2.0 * (lambda d - delta' / pnorm2 d)
- in d {delta = -delta' + lambda d * pnorm2 d, lambda = lambdabar', lambdabar = lambdabar'}
- else d {delta = delta'}
-\end{code}
-
-\begin{code}
-reduceError :: (Floating a, Ord a) => ScgData a -> DF a -> Bool -> a -> a -> ScgData a
-reduceError d df restart bdelta mu =
- let r' = negate (df (w d))
- p' = if restart
- then r'
- else let beta = (vectorNorm2 r' - inner r' (r d)) / mu
- in r' + scaleVector beta (p d)
- in d {p = p', r = r', lambda = if bdelta >= 0.75 then lambda d / 4 else lambda d
- }
-\end{code}
-
-\begin{code}
-data ScgInput a = ScgInput (F a) (DF a) (Vector a)
-\end{code}
-
-\begin{code}
-scgIter :: (Floating a, Ord a) => ScgInput a -> [ScgData a]
-scgIter (ScgInput f df w1) =
- let p1 = negate (df w1) {- step 1 -}
- r1 = p1
- pnorm21 = vectorNorm2 p1
- n = vectorSize w1
- sigma1 = 1.0e-4
- lambda1 = 1.0e-6
- err1 = f w1
- in iterate (\d ->
- let d1 = if success d {- step 2 -}
- then calculate2order d sigma1 df
- else d
- d2 = hessPosDef d1
- mu = inner (p d2) (r d2) {- step 5 -}
- alpha = mu / (delta d2)
- w' = (w d2) + scaleVector alpha (p d2)
- err' = f w'
- bdelta = 2 * (delta d2) * ((err d2) - err') / (mu^2) {- step 6 -}
- success' = (bdelta >= 0) {- step 7 -}
- restart = ((k d) `mod` n == 0)
- d3 = if success'
- then (reduceError (d2 {w = w'}) df restart bdelta mu)
- {err = err', lambdabar = 0}
- else d2 {lambdabar = lambda d2}
- d4 = if bdelta < 0.25 {- step 8 -}
- then d3 {lambda = (lambda d3) + (delta d3) * (1 - bdelta) / (pnorm2 d3)}
- else d3
- in d4 {k = k d4 + 1, success = success'}
- )
- (ScgData 1 err1 w1 p1 r1 0.0 pnorm21 lambda1 0.0 True)
-\end{code}
-
-\begin{code}
-rosenbrock = ScgInput
- (\ (Vector x) -> 100 * (x!2 - x!1^2)^2 + (1 - x!1)^2)
- (\ (Vector x) -> listVector [-2 * (1 - x!1) - 400 * x!1 * (x!2 - x!1^2),
- 200 * (x!2 -x!1^2)])
- (listVector [-1,-1.0])
-\end{code}
-
-
-\begin{code}
-main = case vectorList (w ((scgIter rosenbrock)!!1)) of
- [v1, v2] -> if (e1 `isSame` v1) && (e2 `isSame` v2)
- then print (e1, e2)
- else putStrLn ("Mismatch: " ++ show (e1, e2, v1, v2))
- vs -> putStrLn ("Wrong list length: " ++ show vs)
-
-e1, e2 :: Floating a => a
-e1 = -0.5105811455265337
-e2 = -0.7565080326002654
-
-isSame :: (Fractional a, Ord a) => a -> a -> Bool
-x `isSame` y = abs (x - y) < 0.000000000000001
-\end{code}
diff --git a/testsuite/tests/ghc-regress/programs/cholewo-eval/Makefile b/testsuite/tests/ghc-regress/programs/cholewo-eval/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/cholewo-eval/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/cholewo-eval/cholewo-eval.stdout b/testsuite/tests/ghc-regress/programs/cholewo-eval/cholewo-eval.stdout
deleted file mode 100644
index 3ea84b769b..0000000000
--- a/testsuite/tests/ghc-regress/programs/cholewo-eval/cholewo-eval.stdout
+++ /dev/null
@@ -1 +0,0 @@
-(-0.5105811455265337,-0.7565080326002654)
diff --git a/testsuite/tests/ghc-regress/programs/cholewo-eval/test.T b/testsuite/tests/ghc-regress/programs/cholewo-eval/test.T
deleted file mode 100644
index 32efd68f7b..0000000000
--- a/testsuite/tests/ghc-regress/programs/cholewo-eval/test.T
+++ /dev/null
@@ -1,5 +0,0 @@
-test('cholewo-eval',
- [skip_if_fast,
- extra_clean(['Main.hi', 'Main.o', 'Arr.hi', 'Arr.o'])],
- multimod_compile_and_run,
- ['Main', ''])
diff --git a/testsuite/tests/ghc-regress/programs/cvh_unboxing/Append.lhs b/testsuite/tests/ghc-regress/programs/cvh_unboxing/Append.lhs
deleted file mode 100644
index 9c96ed6553..0000000000
--- a/testsuite/tests/ghc-regress/programs/cvh_unboxing/Append.lhs
+++ /dev/null
@@ -1,142 +0,0 @@
-\section{Versions of {\tt append}}
-
-\begin{code}
-{-# LANGUAGE MagicHash #-}
-
-module Append where
-
-import GHC.Exts
-import Types
-\end{code}
-
-\begin{code}
-append_ :: [a] -> [a] -> [a]
-append_ (x:xs) ys = x : (append_ xs ys)
-append_ [] ys = ys
-
-append_L_S_S :: String -> S Char -> S Char
-append_L_S_S (a: b: c: d: e: a1: b1: c1: d1: e1: xs) ys
- = S5 a b c d e (S5 a1 b1 c1 d1 e1 (append_L_S_S xs ys))
-append_L_S_S (a: b: c: d: e: xs) ys
- = S5 a b c d e (append_L_S_S xs ys)
-append_L_S_S (a: b: c: d: _) ys
- = S4 a b c d ys
-append_L_S_S (a: b: c: _) ys
- = S3 a b c ys
-append_L_S_S (a: b: _) ys
- = S2 a b ys
-append_L_S_S [a] ys
- = S1 a ys
-append_L_S_S [] ys = ys
-
-append_F_S_S :: F Char -> S Char -> S Char
-append_F_S_S (F5 a b c d e (F5 a1 b1 c1 d1 e1 xs)) ys
- = S5 a b c d e (S5 a1 b1 c1 d1 e1 (append_F_S_S xs ys))
-append_F_S_S (F5 a b c d e xs) ys
- = S5 a b c d e (append_F_S_S xs ys)
-append_F_S_S (F4 a b c d) ys
- = S4 a b c d ys
-append_F_S_S (F3 a b c) ys
- = S3 a b c ys
-append_F_S_S (F2 a b) ys
- = S2 a b ys
-append_F_S_S (F1 a) ys
- = S1 a ys
-append_F_S_S FN ys = ys
-
-
-append_L_SC_SC :: String -> SC -> SC
-append_L_SC_SC (C# a: C# b: C# c: C# d:
- C# e: C# a1: C# b1: C# c1:
- C# d1: C# e1: xs) ys
- = SC5 a b c d e (SC5 a1 b1 c1 d1 e1 (append_L_SC_SC xs ys))
-append_L_SC_SC (C# a: C# b: C# c: C# d:
- C# e: xs) ys
- = SC5 a b c d e (append_L_SC_SC xs ys)
-append_L_SC_SC (C# a: C# b: C# c: C# d: _) ys
- = SC4 a b c d ys
-append_L_SC_SC (C# a: C# b: C# c: _) ys
- = SC3 a b c ys
-append_L_SC_SC (C# a: C# b: _) ys
- = SC2 a b ys
-append_L_SC_SC [C# a] ys
- = SC1 a ys
-append_L_SC_SC [] ys = ys
-
-
-append_FC_SC_SC :: FC -> SC -> SC
-append_FC_SC_SC (FC5 a b c d e (FC5 a1 b1 c1 d1 e1 xs)) ys
- = SC5 a b c d e (SC5 a1 b1 c1 d1 e1 (append_FC_SC_SC xs ys))
-append_FC_SC_SC (FC5 a b c d e xs) ys
- = SC5 a b c d e (append_FC_SC_SC xs ys)
-append_FC_SC_SC (FC4 a b c d) ys
- = SC4 a b c d ys
-append_FC_SC_SC (FC3 a b c) ys
- = SC3 a b c ys
-append_FC_SC_SC (FC2 a b) ys
- = SC2 a b ys
-append_FC_SC_SC (FC1 a) ys
- = SC1 a ys
-append_FC_SC_SC FCN ys = ys
-
-append_F_L_L :: F a -> [a] -> [a]
-append_F_L_L (F5 a b c d e (F5 a1 b1 c1 d1 e1 xs)) ys
- = a: b: c: d: e: a1: b1: c1: d1: e1: (append_F_L_L xs ys)
-append_F_L_L (F5 a b c d e xs) ys
- = a: b: c: d: e: (append_F_L_L xs ys)
-append_F_L_L (F4 a b c d) ys = a: b: c: d: ys
-append_F_L_L (F3 a b c) ys = a: b: c: ys
-append_F_L_L (F2 a b) ys = a: b: ys
-append_F_L_L (F1 a) ys = a: ys
-append_F_L_L FN ys = ys
-
-append_S_L_L :: S Char -> String -> String
-append_S_L_L (S5 a b c d e (S5 a1 b1 c1 d1 e1 xs)) ys
- = a: b: c: d: e: a1: b1: c1: d1: e1: (append_S_L_L xs ys)
-append_S_L_L (S5 a b c d e xs) ys
- = a: b: c: d: e: (append_S_L_L xs ys)
-append_S_L_L (S4 a b c d xs) ys
- = a: b: c: d: (append_S_L_L xs ys)
-append_S_L_L (S3 a b c xs) ys
- = a: b: c: (append_S_L_L xs ys)
-append_S_L_L (S2 a b xs) ys
- = a: b: (append_S_L_L xs ys)
-append_S_L_L (S1 a xs) ys
- = a: (append_S_L_L xs ys)
-append_S_L_L SN ys = ys
-
-
-append_FC_L_L :: FC -> String -> String
-append_FC_L_L (FC5 a b c d e (FC5 a1 b1 c1 d1 e1 xs)) ys
- = C# a: C# b: C# c: C# d: C# e: C# a1:
- C# b1: C# c1: C# d1: C# e1:
- (append_FC_L_L xs ys)
-append_FC_L_L (FC5 a b c d e xs) ys
- = C# a: C# b: C# c: C# d:
- C# e: (append_FC_L_L xs ys)
-append_FC_L_L (FC4 a b c d) ys
- = C# a: C# b: C# c: C# d: ys
-append_FC_L_L (FC3 a b c) ys
- = C# a: C# b: C# c: ys
-append_FC_L_L (FC2 a b) ys = C# a: C# b: ys
-append_FC_L_L (FC1 a) ys = C# a: ys
-append_FC_L_L FCN ys = ys
-
-append_SC_L_L :: SC -> String -> String
-append_SC_L_L (SC5 a b c d e (SC5 a1 b1 c1 d1 e1 xs)) ys
- = C# a: C# b: C# c: C# d: C# e: C# a1:
- C# b1: C# c1: C# d1: C# e1:
- (append_SC_L_L xs ys)
-append_SC_L_L (SC5 a b c d e xs) ys
- = C# a: C# b: C# c: C# d:
- C# e: (append_SC_L_L xs ys)
-append_SC_L_L (SC4 a b c d xs) ys
- = C# a: C# b: C# c: C# d: (append_SC_L_L xs ys)
-append_SC_L_L (SC3 a b c xs) ys
- = C# a: C# b: C# c: (append_SC_L_L xs ys)
-append_SC_L_L (SC2 a b xs) ys
- = C# a: C# b: (append_SC_L_L xs ys)
-append_SC_L_L (SC1 a xs) ys
- = C# a: (append_SC_L_L xs ys)
-append_SC_L_L SCN ys = ys
-\end{code}
diff --git a/testsuite/tests/ghc-regress/programs/cvh_unboxing/Main.lhs b/testsuite/tests/ghc-regress/programs/cvh_unboxing/Main.lhs
deleted file mode 100644
index be874a5258..0000000000
--- a/testsuite/tests/ghc-regress/programs/cvh_unboxing/Main.lhs
+++ /dev/null
@@ -1,10 +0,0 @@
-\begin{code}
-{-# LANGUAGE MagicHash #-}
-
-import GHC.Exts
-import Types
-import Append
-
-main = putStr (show (append_FC_L_L (FC2 a_ a_) []))
- where a_ = case 'a' of { C# x -> x }
-\end{code}
diff --git a/testsuite/tests/ghc-regress/programs/cvh_unboxing/Makefile b/testsuite/tests/ghc-regress/programs/cvh_unboxing/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/cvh_unboxing/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/cvh_unboxing/README b/testsuite/tests/ghc-regress/programs/cvh_unboxing/README
deleted file mode 100644
index e80b542db6..0000000000
--- a/testsuite/tests/ghc-regress/programs/cvh_unboxing/README
+++ /dev/null
@@ -1,4 +0,0 @@
-
-These files should typecheck and compile, but while they do
-typecheck, they don't assemble without warnings, and when executed,
-generate an illegal instruction.
diff --git a/testsuite/tests/ghc-regress/programs/cvh_unboxing/Types.lhs b/testsuite/tests/ghc-regress/programs/cvh_unboxing/Types.lhs
deleted file mode 100644
index cba89cf45b..0000000000
--- a/testsuite/tests/ghc-regress/programs/cvh_unboxing/Types.lhs
+++ /dev/null
@@ -1,63 +0,0 @@
-\section{IDS types}
-
-\begin{code}
-{-# LANGUAGE MagicHash #-}
-
-module Types where
-
-import GHC.Exts
-
-data F a = FN | F1 a | F2 a a | F3 a a a
- | F4 a a a a
- | F5 a a a a a (F a)
-
-data FI = FIN | FI1 Int# | FI2 Int# Int# | FI3 Int# Int# Int#
- | FI4 Int# Int# Int# Int#
- | FI5 Int# Int# Int# Int# Int# FI
-
-data FC = FCN | FC1 Char# | FC2 Char# Char#
- | FC3 Char# Char# Char#
- | FC4 Char# Char# Char# Char#
- | FC5 Char# Char# Char# Char# Char# FC
-\end{code}
-
-\begin{code}
-data F2 a b = F2N | F21 a b | F22 a b a b | F23 a b a b a b
- | F24 a b a b a b a b
- | F25 a b a b a b a b a b (F2 a b)
-
-data F3 a b c = F3N | F31 a b c | F32 a b c a b c
- | F33 a b c a b c a b c
- | F34 a b c a b c a b c a b c
- | F35 a b c a b c a b c a b c a b c (F3 a b c)
-
-data F3I = F3IN
- | F3I1 Int# Int# Int#
- | F3I2 Int# Int# Int# Int# Int# Int#
- | F3I3 Int# Int# Int# Int# Int# Int# Int# Int# Int#
- | F3I4 Int# Int# Int# Int# Int# Int# Int# Int# Int#
- Int# Int# Int#
- | F3I5 Int# Int# Int# Int# Int# Int# Int# Int# Int#
- Int# Int# Int# Int# Int# Int# F3I
-\end{code}
-
-\begin{code}
-data S a = SN | S1 a (S a) | S2 a a (S a) | S3 a a a (S a)
- | S4 a a a a (S a)
- | S5 a a a a a (S a)
-
-data SI = SIN | SI1 Int# SI | SI2 Int# Int# SI
- | SI3 Int# Int# Int# SI
- | SI4 Int# Int# Int# Int# SI
- | SI5 Int# Int# Int# Int# Int# SI
-
-
-data SC = SCN | SC1 Char# SC | SC2 Char# Char# SC
- | SC3 Char# Char# Char# SC
- | SC4 Char# Char# Char# Char# SC
- | SC5 Char# Char# Char# Char# Char# SC
-\end{code}
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/programs/cvh_unboxing/cvh_unboxing.stdout b/testsuite/tests/ghc-regress/programs/cvh_unboxing/cvh_unboxing.stdout
deleted file mode 100644
index 742e221412..0000000000
--- a/testsuite/tests/ghc-regress/programs/cvh_unboxing/cvh_unboxing.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"aa" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/programs/cvh_unboxing/test.T b/testsuite/tests/ghc-regress/programs/cvh_unboxing/test.T
deleted file mode 100644
index 4208a7f2af..0000000000
--- a/testsuite/tests/ghc-regress/programs/cvh_unboxing/test.T
+++ /dev/null
@@ -1,10 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-test('cvh_unboxing',
- [skip_if_fast,
- extra_clean(['Append.hi', 'Append.o',
- 'Main.hi', 'Main.o',
- 'Types.hi', 'Types.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/fast2haskell/Fast2haskell.hs b/testsuite/tests/ghc-regress/programs/fast2haskell/Fast2haskell.hs
deleted file mode 100644
index da8789eca4..0000000000
--- a/testsuite/tests/ghc-regress/programs/fast2haskell/Fast2haskell.hs
+++ /dev/null
@@ -1,50 +0,0 @@
- module Fast2haskell (
- Complex_type, Array_type, Assoc_type, Descr_type,
- abortstr, delay, fix, force, iff, iffrev, seQ,
- pair, strcmp,
- entier,
- land_i, lnot_i, lor_i, lshift_i, rshift_i,
- descr,
- destr_update, indassoc, lowbound, tabulate, upbound, update, valassoc) where {
- import Data.Bits;
--- import Word2;
- import Data.Word;
- import Data.Complex; -- 1.3
- import Data.Array; -- 1.3
--- import Data.Int ( Num(fromInt) );
- type Complex_type = Complex Double;
- type Array_type b = Array Int b;
- type Assoc_type a = (Int, a);
- type Descr_type = (Int,Int);
- abortstr str = error ("abort:"++str); -- abort (OtherError str);
- delay x = abortstr "delay not implemented";
- fix f = fix_f where {fix_f = f fix_f};
- force x = x; -- error "force not implemented";
- iff b x y = if b then x else y;
- iffrev y x b = if b then x else y;
- seQ x y = x `seq` y;
- pair [] = False;
- pair x = True;
- strcmp :: [Char] -> [Char] -> Bool;
- strcmp x y = x == y;
- entier x = fromIntegral (floor x);
- land_i :: Int -> Int -> Int;
- land_i x y = x .&. y;
- lnot_i :: Int -> Int;
- lnot_i x = complement x;
- lor_i :: Int -> Int -> Int;
- lor_i x y = x .|. y;
- lshift_i :: Int -> Int -> Int;
- lshift_i x y = x `shiftL` y;
- rshift_i :: Int -> Int -> Int;
- rshift_i x y = x `shiftR` y;
- write x = abortstr "write not implemented";
- descr l u = (l,u);
- destr_update ar i x = ar // [(i,x)];
- indassoc (i,v) = i;
- lowbound (l,u) = l;
- tabulate f (l,u) = listArray (l,u) [f i | i <- [l..u]];
- upbound (l,u) = u;
- update ar i x = ar // [(i,x)];
- valassoc (i,v) = v;
- }
diff --git a/testsuite/tests/ghc-regress/programs/fast2haskell/Main.hs b/testsuite/tests/ghc-regress/programs/fast2haskell/Main.hs
deleted file mode 100644
index 9c4a21dece..0000000000
--- a/testsuite/tests/ghc-regress/programs/fast2haskell/Main.hs
+++ /dev/null
@@ -1,296 +0,0 @@
-module Main (main) -- TEST
-where {
-import Fast2haskell;
-import Data.Complex;--1.3
-import Data.Array;--1.3
-
- c_eps=(5.00000e-06 :: Double);
- c_t=True;
- c_f=False;
- c_input=(0 :: Int);
- f_main a_n=
- let {
- r_x=[(a_tf,(++) (show a_i) ((++) "\t" a_str))|(a_i,(a_tf,a_str))<-f_zip2 (enumFrom (1 :: Int)) c_testlist];
- r_noks=[(++) a_str "\n"|(a_tf,a_str)<-r_x,not a_tf];
- r_oks=[(++) a_str "\n"|(a_tf,a_str)<-r_x,a_tf]
- } in
- if (((>) :: (Int -> Int -> Bool)) a_n (0 :: Int))
- then (f_onetest ((!!) c_testlist (((-) :: (Int -> Int -> Int)) a_n (1 :: Int))))
- else
- ((++) (show (length r_oks)) ((++) " tests passed and " ((++) (show
- (length r_noks)) ((++) " failed\n" (c_concat r_noks)))));
- f_onetest (True,a_str)=(++) "true: " ((++) a_str "\n");
- f_onetest (False,a_str)=(++) "false: " ((++) a_str "\n");
- f_booltest a_name True a_try=
- if a_try
- then (True,"")
- else
- (False,(++) a_name "\tok: true is: false");
- f_booltest a_name False a_try=
- if (not a_try)
- then (True,"")
- else
- (False,(++) a_name "\tok: false is: true");
- f_inttest a_name a_ok a_try=
- if (((==) :: (Int -> Int -> Bool)) a_ok a_try)
- then (True,"")
- else
- (False,(++) a_name ((++) "\tok: " ((++) (show a_ok) ((++) "\tis: "
- (show a_try)))));
- f_chartest a_name a_ok a_try=
- if (((==) :: (Int -> Int -> Bool)) (fromEnum a_ok) (fromEnum a_try))
- then (True,"")
- else
- (False,(++) a_name ((++) "\tok: " ((++) ((:) a_ok []) ((++) "\tis: "
- ((:) a_try [])))));
- f_strtest a_name a_ok a_try=
- if (strcmp a_ok a_try)
- then (True,"")
- else
- (False,(++) a_name ((++) "\tok: " ((++) a_ok ((++) "\tis: " a_try))));
- f_linttest a_name a_ok a_try=
- if (f_lintcmp a_ok a_try)
- then (True,"")
- else
- (False,(++) a_name ((++) "\tok: " ((++) (f_showlint a_ok) ((++) "\tis: "
- (f_showlint a_try)))));
- f_doubtest a_name a_ok a_try=
- if (((<=) :: (Double -> Double -> Bool)) (f_abs (((-) :: (Double -> Double -> Double)) a_ok a_try)) c_eps)
- then (True,"")
- else
- (False,(++) a_name ((++) "\tok: " ((++) (show a_ok) ((++) "\tis: "
- ((++) (show a_try) ((++) "\tok-is: " (show (((-) :: (Double -> Double -> Double)) a_ok a_try))))))));
- f_alternating a_l=(:) (0 :: Int) ((:) (1 :: Int) a_l);
- f_showlint []=[];
- f_showlint a_xs=tail (c_concat [(++) "," (show a_x)|a_x<-a_xs]);
- f_lintcmp [] []=True;
- f_lintcmp [] a_ys=False;
- f_lintcmp a_xs []=False;
- f_lintcmp (a_x:a_xs) (a_y:a_ys)=
- if (((==) :: (Int -> Int -> Bool)) a_x a_y)
- then (f_lintcmp a_xs a_ys)
- else
- False;
- c_testlist=(:) (f_inttest "array" (10 :: Int) ((!) (array (descr (1 :: Int) (3 :: Int)) ((:)
- ((,) (3 :: Int) (30 :: Int)) ((:) ((,) (1 :: Int) (10 :: Int)) ((:) ((,) (2 :: Int) (20 :: Int)) [])))) (1 :: Int))) ((:) (f_inttest "array" (20 :: Int)
- ((!) (array (descr (1 :: Int) (3 :: Int)) ((:) ((,) (3 :: Int) (30 :: Int)) ((:) ((,) (1 :: Int) (10 :: Int))
- ((:) ((,) (2 :: Int) (20 :: Int)) [])))) (2 :: Int))) ((:) (f_inttest "array" (30 :: Int) ((!) (array (descr (1 :: Int) (3 :: Int))
- ((:) ((,) (3 :: Int) (30 :: Int)) [])) (3 :: Int))) ((:) (f_inttest "assoc" (0 :: Int) (indassoc ((,) (0 :: Int) (1 :: Int)))) ((:)
- (f_inttest "assoc" (1 :: Int) (valassoc ((,) (0 :: Int) (1 :: Int)))) ((:) (f_inttest "bounds" (1 :: Int) (lowbound (bounds
- (listArray (descr (1 :: Int) (3 :: Int)) ((:) (1 :: Int) ((:) (2 :: Int) ((:) (3 :: Int) []))))))) ((:) (f_inttest "bounds" (3 :: Int)
- (upbound (bounds (listArray (descr (1 :: Int) (3 :: Int)) ((:) (1 :: Int) ((:) (2 :: Int) ((:) (3 :: Int) [])))))))
- ((:) (f_inttest "descr" (0 :: Int) (lowbound (descr (0 :: Int) (1 :: Int)))) ((:) (f_inttest "descr" (1 :: Int) (upbound
- (descr (0 :: Int) (1 :: Int)))) ((:) (f_linttest "destr_update" ((:) (1 :: Int) ((:) (0 :: Int) ((:) (3 :: Int) []))) (elems
- (destr_update (listArray (descr (0 :: Int) (2 :: Int)) ((:) (1 :: Int) ((:) (2 :: Int) ((:) (3 :: Int) [])))) (1 :: Int) (0 :: Int)))) ((:)
- (f_linttest "destr_update" ((:) (0 :: Int) []) (elems (destr_update (listArray (descr (0 :: Int) (0 :: Int)) ((:) (1 :: Int)
- ((:) (2 :: Int) ((:) (3 :: Int) [])))) (0 :: Int) (0 :: Int)))) ((:) (f_linttest "elems" ((:) (1 :: Int) ((:) (2 :: Int) ((:) (3 :: Int) [])))
- (elems (listArray (descr (0 :: Int) (2 :: Int)) ((:) (1 :: Int) ((:) (2 :: Int) ((:) (3 :: Int) [])))))) ((:)
- (f_linttest "elems" ((:) (1 :: Int) []) (elems (listArray (descr (0 :: Int) (0 :: Int)) ((:) (1 :: Int) ((:) (2 :: Int)
- ((:) (3 :: Int) [])))))) ((:) (f_inttest "indassoc" (0 :: Int) (indassoc ((,) (0 :: Int) (1 :: Int)))) ((:) (f_linttest "listarray"
- ((:) (1 :: Int) ((:) (2 :: Int) ((:) (3 :: Int) []))) (elems (listArray (descr (0 :: Int) (2 :: Int)) ((:) (1 :: Int)
- ((:) (2 :: Int) ((:) (3 :: Int) [])))))) ((:) (f_linttest "listarray" ((:) (1 :: Int) []) (elems (listArray
- (descr (0 :: Int) (0 :: Int)) ((:) (1 :: Int) ((:) (2 :: Int) ((:) (3 :: Int) [])))))) ((:) (f_inttest "lowbound" (0 :: Int) (lowbound
- (descr (0 :: Int) (1 :: Int)))) ((:) (f_inttest "subscript" (1 :: Int) ((!) (tabulate ((!!) ((:) (1 :: Int)
- ((:) (2 :: Int) ((:) (3 :: Int) [])))) (descr (0 :: Int) (2 :: Int))) (0 :: Int))) ((:) (f_inttest "subscript" (2 :: Int) ((!) (tabulate
- ((!!) ((:) (1 :: Int) ((:) (2 :: Int) ((:) (3 :: Int) [])))) (descr (0 :: Int) (2 :: Int))) (1 :: Int))) ((:) (f_inttest "subscript" (3 :: Int)
- ((!) (tabulate ((!!) ((:) (1 :: Int) ((:) (2 :: Int) ((:) (3 :: Int) [])))) (descr (0 :: Int) (2 :: Int))) (2 :: Int)))
- ((:) (f_linttest "tabulate" ((:) (1 :: Int) ((:) (2 :: Int) ((:) (3 :: Int) []))) (elems (tabulate
- ((!!) ((:) (1 :: Int) ((:) (2 :: Int) ((:) (3 :: Int) [])))) (descr (0 :: Int) (2 :: Int))))) ((:) (f_linttest "tabulate"
- ((:) (1 :: Int) []) (elems (tabulate ((!!) ((:) (1 :: Int) ((:) (2 :: Int) ((:) (3 :: Int) []))))
- (descr (0 :: Int) (0 :: Int))))) ((:) (f_inttest "upbound" (1 :: Int) (upbound (descr (0 :: Int) (1 :: Int)))) ((:) (f_inttest "valassoc" (1 :: Int)
- (valassoc ((,) (0 :: Int) (1 :: Int)))) ((:) (f_doubtest "add_x" (0.00000 :: Double) (realPart (((+) :: (Complex_type -> Complex_type -> Complex_type)) ((:+) (0.00000 :: Double) (0.00000 :: Double))
- ((:+) (0.00000 :: Double) (0.00000 :: Double))))) ((:) (f_doubtest "add_x" (0.00000 :: Double) (imagPart (((+) :: (Complex_type -> Complex_type -> Complex_type)) ((:+) (0.00000 :: Double) (0.00000 :: Double)) ((:+) (0.00000 :: Double) (0.00000 :: Double)))))
- ((:) (f_doubtest "add_x" (4.00000 :: Double) (realPart (((+) :: (Complex_type -> Complex_type -> Complex_type)) ((:+) (1.00000 :: Double) (2.00000 :: Double)) ((:+) (3.00000 :: Double) (4.00000 :: Double))))) ((:)
- (f_doubtest "add_x" (6.00000 :: Double) (imagPart (((+) :: (Complex_type -> Complex_type -> Complex_type)) ((:+) (1.00000 :: Double) (2.00000 :: Double)) ((:+) (3.00000 :: Double) (4.00000 :: Double))))) ((:) (f_doubtest "complex" (1.00000 :: Double)
- (realPart ((:+) (1.00000 :: Double) (0.00000 :: Double)))) ((:) (f_doubtest "complex" (1.00000 :: Double) (imagPart ((:+) (0.00000 :: Double) (1.00000 :: Double)))) ((:)
- (f_doubtest "complex_im" (0.00000 :: Double) (imagPart ((:+) (1.00000 :: Double) (0.00000 :: Double)))) ((:) (f_doubtest "complex_im" (1.00000 :: Double) (imagPart ((:+) (0.00000 :: Double) (1.00000 :: Double))))
- ((:) (f_doubtest "complex_re" (0.00000 :: Double) (realPart ((:+) (0.00000 :: Double) (1.00000 :: Double)))) ((:) (f_doubtest "complex_re" (1.00000 :: Double) (realPart
- ((:+) (1.00000 :: Double) (0.00000 :: Double)))) ((:) (f_doubtest "mul_x" (0.00000 :: Double) (realPart (((*) :: (Complex_type -> Complex_type -> Complex_type)) ((:+) (0.00000 :: Double) (0.00000 :: Double)) ((:+) (0.00000 :: Double) (0.00000 :: Double)))))
- ((:) (f_doubtest "mul_x" (0.00000 :: Double) (imagPart (((*) :: (Complex_type -> Complex_type -> Complex_type)) ((:+) (0.00000 :: Double) (0.00000 :: Double)) ((:+) (0.00000 :: Double) (0.00000 :: Double))))) ((:)
- (f_doubtest "mul_x" (((negate) :: (Double -> Double)) (5.00000 :: Double)) (realPart (((*) :: (Complex_type -> Complex_type -> Complex_type)) ((:+) (1.00000 :: Double) (2.00000 :: Double)) ((:+) (3.00000 :: Double) (4.00000 :: Double))))) ((:)
- (f_doubtest "mul_x" (10.0000 :: Double) (imagPart (((*) :: (Complex_type -> Complex_type -> Complex_type)) ((:+) (1.00000 :: Double) (2.00000 :: Double)) ((:+) (3.00000 :: Double) (4.00000 :: Double))))) ((:) (f_doubtest "sub_x" (0.00000 :: Double)
- (realPart (((-) :: (Complex_type -> Complex_type -> Complex_type)) ((:+) (0.00000 :: Double) (0.00000 :: Double)) ((:+) (0.00000 :: Double) (0.00000 :: Double))))) ((:) (f_doubtest "sub_x" (0.00000 :: Double) (imagPart
- (((-) :: (Complex_type -> Complex_type -> Complex_type)) ((:+) (0.00000 :: Double) (0.00000 :: Double)) ((:+) (0.00000 :: Double) (0.00000 :: Double))))) ((:) (f_doubtest "sub_x" (((negate) :: (Double -> Double)) (2.00000 :: Double)) (realPart
- (((-) :: (Complex_type -> Complex_type -> Complex_type)) ((:+) (1.00000 :: Double) (2.00000 :: Double)) ((:+) (3.00000 :: Double) (4.00000 :: Double))))) ((:) (f_doubtest "sub_x" (((negate) :: (Double -> Double)) (2.00000 :: Double)) (imagPart
- (((-) :: (Complex_type -> Complex_type -> Complex_type)) ((:+) (1.00000 :: Double) (2.00000 :: Double)) ((:+) (3.00000 :: Double) (4.00000 :: Double))))) ((:) (f_inttest "seq" (2 :: Int) (seq (enumFrom (1 :: Int)) (2 :: Int)))
- ((:) (f_strtest "**" "this one" "should fail") [])))))))))))))))))))))))))))))))))))))))))));
- f_abs a_x=
- if (((<=) :: (Double -> Double -> Bool)) a_x (0.00000 :: Double))
- then (((negate) :: (Double -> Double)) a_x)
- else
- a_x;
- c_and=f_foldr (&&) True;
- f_cjustify a_n a_s=
- let {
- r_margin=((-) :: (Int -> Int -> Int)) a_n (length a_s);
- r_lmargin=((div) :: (Int -> Int -> Int)) r_margin (2 :: Int);
- r_rmargin=((-) :: (Int -> Int -> Int)) r_margin r_lmargin
- } in (++) (f_spaces r_lmargin) ((++) a_s (f_spaces r_rmargin));
- c_concat=f_foldr (++) [];
- f_const a_x a_y=a_x;
- f_digit a_x=
- if (((<=) :: (Int -> Int -> Bool)) (fromEnum '0') (fromEnum a_x))
- then (((<=) :: (Int -> Int -> Bool)) (fromEnum a_x) (fromEnum '9'))
- else
- False;
- f_drop 0 a_x=a_x;
- f_drop a_n (a_a:a_x)=f_drop (((-) :: (Int -> Int -> Int)) a_n (1 :: Int)) a_x;
- f_drop a_n a_x=[];
- f_dropwhile a_f []=[];
- f_dropwhile a_f (a_a:a_x)=
- if (a_f a_a)
- then (f_dropwhile a_f a_x)
- else
- ((:) a_a a_x);
- c_e=((exp) :: (Double -> Double)) (1.00000 :: Double);
- f_filter a_f a_x=[a_a|a_a<-a_x,a_f a_a];
- f_foldl a_op a_r []=a_r;
- f_foldl a_op a_r (a_a:a_x)=
- let {
- f_strict a_f a_x=seq a_x (a_f a_x)
- } in f_foldl a_op (f_strict a_op a_r a_a) a_x;
- f_foldl1 a_op (a_a:a_x)=f_foldl a_op a_a a_x;
- f_foldr a_op a_r []=a_r;
- f_foldr a_op a_r (a_a:a_x)=a_op a_a (f_foldr a_op a_r a_x);
- f_foldr1 a_op (a_a:[])=a_a;
- f_foldr1 a_op (a_a:a_b:a_x)=a_op a_a (f_foldr1 a_op ((:) a_b a_x));
- f_fst (a_a,a_b)=a_a;
- f_id a_x=a_x;
- f_index a_x=
- let {
- f_f a_n []=[];
- f_f a_n (a_a:a_x)=(:) a_n (f_f (((+) :: (Int -> Int -> Int)) a_n (1 :: Int)) a_x)
- } in f_f (0 :: Int) a_x;
- f_init (a_a:a_x)=
- if (null a_x)
- then []
- else
- ((:) a_a (f_init a_x));
- f_iterate a_f a_x=(:) a_x (f_iterate a_f (a_f a_x));
- f_last a_x=(!!) a_x (((-) :: (Int -> Int -> Int)) (length a_x) (1 :: Int));
- f_lay []=[];
- f_lay (a_a:a_x)=(++) a_a ((++) "\n" (f_lay a_x));
- f_layn a_x=
- let {
- f_f a_n []=[];
- f_f a_n (a_a:a_x)=(++) (f_rjustify (4 :: Int) (show a_n)) ((++) ") " ((++) a_a ((++) "\n"
- (f_f (((+) :: (Int -> Int -> Int)) a_n (1 :: Int)) a_x))))
- } in f_f (1 :: Int) a_x;
- f_letter a_c=
- if (
- if (((<=) :: (Int -> Int -> Bool)) (fromEnum 'a') (fromEnum a_c))
- then (((<=) :: (Int -> Int -> Bool)) (fromEnum a_c) (fromEnum 'z'))
- else
- False)
- then True
- else
- if (((<=) :: (Int -> Int -> Bool)) (fromEnum 'A') (fromEnum a_c))
- then (((<=) :: (Int -> Int -> Bool)) (fromEnum a_c) (fromEnum 'Z'))
- else
- False;
- f_limit (a_a:a_b:a_x)=
- if (((==) :: (Double -> Double -> Bool)) a_a a_b)
- then a_a
- else
- (f_limit ((:) a_b a_x));
- f_lines []=[];
- f_lines (a_a:a_x)=
- let {
- r_xs=
- if (pair a_x)
- then (f_lines a_x)
- else
- ((:) [] [])
- } in
- if (((==) :: (Int -> Int -> Bool)) (fromEnum a_a) (fromEnum '\o012'))
- then ((:) [] (f_lines a_x))
- else
- ((:) ((:) a_a (head r_xs)) (tail r_xs));
- f_ljustify a_n a_s=(++) a_s (f_spaces (((-) :: (Int -> Int -> Int)) a_n (length a_s)));
- f_map a_f a_x=[a_f a_a|a_a<-a_x];
- f_map2 a_f a_x a_y=[a_f a_a a_b|(a_a,a_b)<-f_zip2 a_x a_y];
- f_max a_xs=f_foldl1 f_max2 a_xs;
- f_max2 a_a a_b=
- if (((>=) :: (Int -> Int -> Bool)) a_a a_b)
- then a_a
- else
- a_b;
- f_member a_x a_a=c_or (f_map (flip ((==) :: (Int -> Int -> Bool)) a_a) a_x);
- f_merge [] a_y=a_y;
- f_merge (a_a:a_x) []=(:) a_a a_x;
- f_merge (a_a:a_x) (a_b:a_y)=
- if (((<=) :: (Int -> Int -> Bool)) a_a a_b)
- then ((:) a_a (f_merge a_x ((:) a_b a_y)))
- else
- ((:) a_b (f_merge ((:) a_a a_x) a_y));
- f_min a_xs=f_foldl1 f_min2 a_xs;
- f_min2 a_a a_b=
- if (((>) :: (Int -> Int -> Bool)) a_a a_b)
- then a_b
- else
- a_a;
- f_mkset []=[];
- f_mkset (a_a:a_x)=(:) a_a (f_filter (flip ((/=) :: (Int -> Int -> Bool)) a_a) (f_mkset a_x));
- c_or=f_foldr (||) False;
- c_pi=((*) :: (Double -> Double -> Double)) (4.00000 :: Double) (((atan) :: (Double -> Double)) (1.00000 :: Double));
- f_postfix a_a a_x=(++) a_x ((:) a_a []);
- c_product=f_foldl ((*) :: (Int -> Int -> Int)) (1 :: Int);
- f_rep a_n a_x=f_take a_n (f_repeat a_x);
- f_repeat a_x=(:) a_x (f_repeat a_x);
- c_reverse=f_foldl (flip (:)) [];
- f_rjustify a_n a_s=(++) (f_spaces (((-) :: (Int -> Int -> Int)) a_n (length a_s))) a_s;
- f_scan a_op=
- let {
- f_g a_r []=(:) a_r [];
- f_g a_r (a_a:a_x)=(:) a_r (f_g (a_op a_r a_a) a_x)
- } in f_g;
- f_snd (a_a,a_b)=a_b;
- f_sort a_x=
- let {
- r_n=length a_x;
- r_n2=((div) :: (Int -> Int -> Int)) r_n (2 :: Int)
- } in
- if (((<=) :: (Int -> Int -> Bool)) r_n (1 :: Int))
- then a_x
- else
- (f_merge (f_sort (f_take r_n2 a_x)) (f_sort (f_drop r_n2 a_x)));
- f_spaces a_n=f_rep a_n ' ';
- f_subtract a_x a_y=((-) :: (Int -> Int -> Int)) a_y a_x;
- c_sum=f_foldl ((+) :: (Int -> Int -> Int)) (0 :: Int);
-data
- T_sys_message=F_Stdout [Char] | F_Stderr [Char] | F_Tofile [Char] [Char] | F_Closefile [Char] | F_Appendfile [Char] | F_System [Char] | F_Exit Int;
- f_take 0 a_x=[];
- f_take a_n (a_a:a_x)=(:) a_a (f_take (((-) :: (Int -> Int -> Int)) a_n (1 :: Int)) a_x);
- f_take a_n a_x=[];
- f_takewhile a_f []=[];
- f_takewhile a_f (a_a:a_x)=
- if (a_f a_a)
- then ((:) a_a (f_takewhile a_f a_x))
- else
- [];
- f_transpose a_x=
- let {
- r_x'=f_takewhile pair a_x
- } in
- if (null r_x')
- then []
- else
- ((:) (f_map head r_x') (f_transpose (f_map tail r_x')));
- f_until a_f a_g a_x=
- if (a_f a_x)
- then a_x
- else
- (f_until a_f a_g (a_g a_x));
- f_zip2 (a_a:a_x) (a_b:a_y)=(:) (a_a,a_b) (f_zip2 a_x a_y);
- f_zip2 a_x a_y=[];
- f_zip3 (a_a:a_x) (a_b:a_y) (a_c:a_z)=(:) (a_a,a_b,a_c) (f_zip3 a_x a_y a_z);
- f_zip3 a_x a_y a_z=[];
- f_zip4 (a_a:a_w) (a_b:a_x) (a_c:a_y) (a_d:a_z)=(:) (a_a,a_b,a_c,a_d) (f_zip4 a_w a_x a_y a_z);
- f_zip4 a_w a_x a_y a_z=[];
- f_zip5 (a_a:a_v) (a_b:a_w) (a_c:a_x) (a_d:a_y) (a_e:a_z)=(:) (a_a,a_b,a_c,a_d,a_e) (f_zip5 a_v a_w a_x a_y a_z);
- f_zip5 a_v a_w a_x a_y a_z=[];
- f_zip6 (a_a:a_u) (a_b:a_v) (a_c:a_w) (a_d:a_x) (a_e:a_y) (a_f:a_z)=(:) (a_a,a_b,a_c,a_d,a_e,a_f) (f_zip6 a_u a_v a_w a_x a_y a_z);
- f_zip6 a_u a_v a_w a_x a_y a_z=[];
- f_zip (a_x,a_y)=f_zip2 a_x a_y;
- main = putStr (f_main c_input)
-}
diff --git a/testsuite/tests/ghc-regress/programs/fast2haskell/Makefile b/testsuite/tests/ghc-regress/programs/fast2haskell/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/fast2haskell/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/fast2haskell/fast2haskell.stdout b/testsuite/tests/ghc-regress/programs/fast2haskell/fast2haskell.stdout
deleted file mode 100644
index 2f493161d6..0000000000
--- a/testsuite/tests/ghc-regress/programs/fast2haskell/fast2haskell.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-43 tests passed and 1 failed
-44 ** ok: this one is: should fail
diff --git a/testsuite/tests/ghc-regress/programs/fast2haskell/test.T b/testsuite/tests/ghc-regress/programs/fast2haskell/test.T
deleted file mode 100644
index a730ffdfe2..0000000000
--- a/testsuite/tests/ghc-regress/programs/fast2haskell/test.T
+++ /dev/null
@@ -1,8 +0,0 @@
-
-test('fast2haskell',
- [skip_if_fast,
- extra_clean(['Main.hi', 'Main.o',
- 'Fast2haskell.hi', 'Fast2haskell.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/fun_insts/Main.hs b/testsuite/tests/ghc-regress/programs/fun_insts/Main.hs
deleted file mode 100644
index fece8c9c47..0000000000
--- a/testsuite/tests/ghc-regress/programs/fun_insts/Main.hs
+++ /dev/null
@@ -1,26 +0,0 @@
--- !!! Defines functions as an instance of Num
-
-module Main where
-
-instance (Eq a, Eq b) => Eq (a->b)
-
-
-instance Show (a->b) where
- show f = "<<function>>"
-
-instance (Num a, Num b) => Num (a->b) where
- f + g = \x -> f x + g x
- negate f = \x -> - (f x)
- f * g = \x -> f x * g x
- fromInteger n = \x -> fromInteger n
-
-ss :: Float -> Float
-cc :: Float -> Float
-tt :: Float -> Float
-
-ss = sin * sin
-cc = cos * cos
-tt = ss + cc
--- sin**2 + cos**2 = 1
-
-main = putStrLn ((show (tt 0.4))++ " "++(show (tt 1.652)))
diff --git a/testsuite/tests/ghc-regress/programs/fun_insts/Makefile b/testsuite/tests/ghc-regress/programs/fun_insts/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/fun_insts/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/fun_insts/fun_insts.stdout b/testsuite/tests/ghc-regress/programs/fun_insts/fun_insts.stdout
deleted file mode 100644
index 7886e5523c..0000000000
--- a/testsuite/tests/ghc-regress/programs/fun_insts/fun_insts.stdout
+++ /dev/null
@@ -1 +0,0 @@
-1.0 1.0
diff --git a/testsuite/tests/ghc-regress/programs/fun_insts/test.T b/testsuite/tests/ghc-regress/programs/fun_insts/test.T
deleted file mode 100644
index 5151488038..0000000000
--- a/testsuite/tests/ghc-regress/programs/fun_insts/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('fun_insts',
- [skip_if_fast, extra_clean(['Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/CSG.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/CSG.hs
deleted file mode 100644
index ba37a17b25..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/CSG.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
-module CSG(module Construct,
- module Geometry,
- module Intersections,
- module Interval,
- module Misc) where
-
-import Construct
-import Geometry
-import Intersections
-import Interval
-import Misc
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/Construct.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/Construct.hs
deleted file mode 100644
index 90dbc60f9e..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/Construct.hs
+++ /dev/null
@@ -1,265 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
-module Construct
- ( Surface (..)
- , Face (..)
- , CSG (..)
- , Texture
- , Transform
- , union, intersect, difference
- , plane, sphere, cube, cylinder, cone
- , transform
- , translate, translateX, translateY, translateZ
- , scale, scaleX, scaleY, scaleZ, uscale
- , rotateX, rotateY, rotateZ
- , eye, translateEye
- , rotateEyeX, rotateEyeY, rotateEyeZ
- ) where
-
-import Geometry
-
--- In each case, we model the surface by a point and a pair of tangent vectors.
--- This gives us enough information to determine the surface
--- normal at that point, which is all that is required by the current
--- illumination model. We can't just save the surface normal because
--- that isn't preserved by transformations.
-
-data Surface
- = Planar Point Vector Vector
- | Spherical Point Vector Vector
- | Cylindrical Point Vector Vector
- | Conic Point Vector Vector
- deriving Show
-
-data Face
- = PlaneFace
- | SphereFace
- | CubeFront
- | CubeBack
- | CubeLeft
- | CubeRight
- | CubeTop
- | CubeBottom
- | CylinderSide
- | CylinderTop
- | CylinderBottom
- | ConeSide
- | ConeBase
- deriving Show
-
-data CSG a
- = Plane a
- | Sphere a
- | Cylinder a
- | Cube a
- | Cone a
- | Transform Matrix Matrix (CSG a)
- | Union (CSG a) (CSG a)
- | Intersect (CSG a) (CSG a)
- | Difference (CSG a) (CSG a)
- | Box Box (CSG a)
- deriving (Show)
-
--- the data returned for determining surface texture
--- the Face tells which face of a primitive this is
--- the Point is the point of intersection in object coordinates
--- the a is application-specific texture information
-type Texture a = (Face, Point, a)
-
-union, intersect, difference :: CSG a -> CSG a -> CSG a
-
-union p@(Box b1 _) q@(Box b2 _) = Box (mergeBox b1 b2) (Union p q)
-union p q = Union p q
-
--- rather pessimistic
-intersect p@(Box b1 _) q@(Box b2 _) = Box (mergeBox b1 b2) (Intersect p q)
-intersect p q = Intersect p q
-
-difference (Box b1 p) q = Box b1 (Difference p q)
--- no need to box again inside
--- difference p@(Box b1 _) q = Box b1 (Difference p q)
-difference p q = Difference p q
-
-mkBox b p = Box b p
-
-plane, sphere, cube, cylinder, cone :: a -> CSG a
-
-plane = Plane
-sphere s =
- mkBox (B (-1 - epsilon) (1 + epsilon)
- (-1 - epsilon) (1 + epsilon)
- (-1 - epsilon) (1 + epsilon)) (Sphere s)
-cone s =
- mkBox (B (-1 - epsilon) (1 + epsilon)
- ( - epsilon) (1 + epsilon)
- (-1 - epsilon) (1 + epsilon)) (Cone s)
-cube s =
- mkBox (B (- epsilon) (1 + epsilon)
- (- epsilon) (1 + epsilon)
- (- epsilon) (1 + epsilon)) (Cube s)
-cylinder s =
- mkBox (B (-1 - epsilon) (1 + epsilon)
- ( - epsilon) (1 + epsilon)
- (-1 - epsilon) (1 + epsilon)) (Cylinder s)
-
-----------------------------
--- Object transformations
-----------------------------
-
-type Transform = (Matrix, Matrix)
-
-transform :: Transform -> CSG a -> CSG a
-
-transform (m, m') (Transform mp mp' p) = Transform (multMM m mp) (multMM mp' m') p
-transform mm' (Union p q) = Union (transform mm' p) (transform mm' q)
-transform mm' (Intersect p q) = Intersect (transform mm' p) (transform mm' q)
-transform mm' (Difference p q) = Difference (transform mm' p) (transform mm' q)
-transform mm'@(m,_) (Box box p) = Box (transformBox m box) (transform mm' p)
-transform (m, m') prim = Transform m m' prim
-
-translate :: Coords -> CSG a -> CSG a
-translateX, translateY, translateZ :: Double -> CSG a -> CSG a
-
-translate xyz = transform $ transM xyz
-translateX x = translate (x, 0, 0)
-translateY y = translate (0, y, 0)
-translateZ z = translate (0, 0, z)
-
-scale :: Coords -> CSG a -> CSG a
-scaleX, scaleY, scaleZ, uscale :: Double -> CSG a -> CSG a
-
-scale xyz = transform $ scaleM xyz
-scaleX x = scale (x, 1, 1)
-scaleY y = scale (1, y, 1)
-scaleZ z = scale (1, 1, z)
-uscale u = scale (u,u,u)
-
-rotateX, rotateY, rotateZ :: Radian -> CSG a -> CSG a
-
-rotateX a = transform $ rotxM a
-rotateY a = transform $ rotyM a
-rotateZ a = transform $ rotzM a
-
-unit = matrix
- ( ( 1.0, 0.0, 0.0, 0.0 ),
- ( 0.0, 1.0, 0.0, 0.0 ),
- ( 0.0, 0.0, 1.0, 0.0 ),
- ( 0.0, 0.0, 0.0, 1.0 ) )
-
-transM (x, y, z)
- = ( matrix
- ( ( 1, 0, 0, x ),
- ( 0, 1, 0, y ),
- ( 0, 0, 1, z ),
- ( 0, 0, 0, 1 ) ),
- matrix
- ( ( 1, 0, 0, -x ),
- ( 0, 1, 0, -y ),
- ( 0, 0, 1, -z ),
- ( 0, 0, 0, 1 ) ) )
-
-scaleM (x, y, z)
- = ( matrix
- ( ( x', 0, 0, 0 ),
- ( 0, y', 0, 0 ),
- ( 0, 0, z', 0 ),
- ( 0, 0, 0, 1 ) ),
- matrix
- ( ( 1/x', 0, 0, 0 ),
- ( 0, 1/y', 0, 0 ),
- ( 0, 0, 1/z', 0 ),
- ( 0, 0, 0, 1 ) ) )
- where x' = nonZero x
- y' = nonZero y
- z' = nonZero z
-
-rotxM t
- = ( matrix
- ( ( 1, 0, 0, 0 ),
- ( 0, cos t, -sin t, 0 ),
- ( 0, sin t, cos t, 0 ),
- ( 0, 0, 0, 1 ) ),
- matrix
- ( ( 1, 0, 0, 0 ),
- ( 0, cos t, sin t, 0 ),
- ( 0, -sin t, cos t, 0 ),
- ( 0, 0, 0, 1 ) ) )
-
-rotyM t
- = ( matrix
- ( ( cos t, 0, sin t, 0 ),
- ( 0, 1, 0, 0 ),
- ( -sin t, 0, cos t, 0 ),
- ( 0, 0, 0, 1 ) ),
- matrix
- ( ( cos t, 0, -sin t, 0 ),
- ( 0, 1, 0, 0 ),
- ( sin t, 0, cos t, 0 ),
- ( 0, 0, 0, 1 ) ) )
-
-rotzM t
- = ( matrix
- ( ( cos t, -sin t, 0, 0 ),
- ( sin t, cos t, 0, 0 ),
- ( 0, 0, 1, 0 ),
- ( 0, 0, 0, 1 ) ),
- matrix
- ( ( cos t, sin t, 0, 0 ),
- ( -sin t, cos t, 0, 0 ),
- ( 0, 0, 1, 0 ),
- ( 0, 0, 0, 1 ) ) )
-
--------------------
--- Eye transformations
-
--- These are used to specify placement of the eye.
--- `eye' starts out at (0, 0, -1).
--- These are implemented as inverse transforms of the model.
--------------------
-
-eye :: Transform
-translateEye :: Coords -> Transform -> Transform
-rotateEyeX, rotateEyeY, rotateEyeZ :: Radian -> Transform -> Transform
-
-eye = (unit, unit)
-translateEye xyz (eye1, eye2)
- = (multMM m1 eye1, multMM eye2 m2)
- where (m1, m2) = transM xyz
-rotateEyeX t (eye1, eye2)
- = (multMM m1 eye1, multMM eye2 m2)
- where (m1, m2) = rotxM t
-rotateEyeY t (eye1, eye2)
- = (multMM m1 eye1, multMM eye2 m2)
- where (m1, m2) = rotyM t
-rotateEyeZ t (eye1, eye2)
- = (multMM m1 eye1, multMM eye2 m2)
- where (m1, m2) = rotzM t
-
--------------------
--- Bounding boxes
--------------------
-
-mergeBox (B x11 x12 y11 y12 z11 z12) (B x21 x22 y21 y22 z21 z22) =
- B (x11 `min` x21) (x12 `max` x22)
- (y11 `min` y21) (y12 `max` y22)
- (z11 `min` z21) (z12 `max` z22)
-
-transformBox t (B x1 x2 y1 y2 z1 z2)
- = (B (foldr1 min (map xCoord pts'))
- (foldr1 max (map xCoord pts'))
- (foldr1 min (map yCoord pts'))
- (foldr1 max (map yCoord pts'))
- (foldr1 min (map zCoord pts'))
- (foldr1 max (map zCoord pts')))
- where pts' = map (multMP t) pts
- pts = [point x1 y1 z1,
- point x1 y1 z2,
- point x1 y2 z1,
- point x1 y2 z2,
- point x2 y1 z1,
- point x2 y1 z2,
- point x2 y2 z1,
- point x2 y2 z2]
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/Data.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/Data.hs
deleted file mode 100644
index 11e12ab79f..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/Data.hs
+++ /dev/null
@@ -1,408 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
-module Data where
-
-import Array
-
-import CSG
-import Geometry
-import Illumination
-import Primitives
-import Surface
-
-import Debug.Trace
-
--- Now the parsed (expresssion) language
-
-type Name = String
-
-type Code = [GMLToken]
-
-data GMLToken
- -- All these can occur in parsed code
- = TOp GMLOp
- | TId Name
- | TBind Name
- | TBool Bool
- | TInt Int
- | TReal Double
- | TString String
- | TBody Code
- | TArray Code
- | TApply
- | TIf
- -- These can occur in optimized/transformed code
- -- NONE (yet!)
-
-
-instance Show GMLToken where
- showsPrec p (TOp op) = shows op
- showsPrec p (TId id) = showString id
- showsPrec p (TBind id) = showString ('/' : id)
- showsPrec p (TBool bool) = shows bool
- showsPrec p (TInt i) = shows i
- showsPrec p (TReal d) = shows d
- showsPrec p (TString s) = shows s
- showsPrec p (TBody code) = shows code
- showsPrec p (TArray code) = showString "[ "
- . foldr (\ a b -> a . showChar ' ' . b) id (map shows code)
- . showString "]"
- showsPrec p (TApply) = showString "apply"
- showsPrec p (TIf) = showString "if"
-
- showList code = showString "{ "
- . foldr (\ a b -> a . showChar ' ' . b) id (map shows code)
- . showString "}"
-
-
--- Now the value language, used inside the interpreter
-
-type Stack = [GMLValue]
-
-data GMLValue
- = VBool !Bool
- | VInt !Int
- | VReal !Double
- | VString String
- | VClosure Env Code
- | VArray (Array Int GMLValue) -- FIXME: Haskell array
- -- uses the interpreter version of point
- | VPoint { xPoint :: !Double
- , yPoint :: !Double
- , zPoint :: !Double
- }
- -- these are abstract to the interpreter
- | VObject Object
- | VLight Light
- -- This is an abstract object, used by the abstract interpreter
- | VAbsObj AbsObj
-
-
--- There are only *3* basic abstract values,
--- and the combinators also.
-
-data AbsObj
- = AbsFACE
- | AbsU
- | AbsV
- deriving (Show)
-
-instance Show GMLValue where
- showsPrec p value = showString (showStkEle value)
-
-showStkEle :: GMLValue -> String
-showStkEle (VBool b) = show b ++ " :: Bool"
-showStkEle (VInt i) = show i ++ " :: Int"
-showStkEle (VReal r) = show r ++ " :: Real"
-showStkEle (VString s) = show s ++ " :: String"
-showStkEle (VClosure {}) = "<closure> :: Closure"
-showStkEle (VArray arr)
- = "<array (" ++ show (succ (snd (bounds arr))) ++ " elements)> :: Array"
-showStkEle (VPoint x y z) = "(" ++ show x
- ++ "," ++ show y
- ++ "," ++ show z
- ++ ") :: Point"
-showStkEle (VObject {}) = "<Object> :: Object"
-showStkEle (VLight {}) = "<Light> :: Object"
-showStkEle (VAbsObj vobs) = "{{ " ++ show vobs ++ "}} :: AbsObj"
-
--- An abstract environment
-
-newtype Env = Env [(Name, GMLValue)] deriving Show
-
-emptyEnv :: Env
-emptyEnv = Env []
-
-extendEnv :: Env -> Name -> GMLValue -> Env
-extendEnv (Env e) n v = Env ((n, v):e)
-
-lookupEnv :: Env -> Name -> Maybe GMLValue
-lookupEnv (Env e) n = lookup n e
-
--- All primitive operators
---
--- There is no Op_apply, Op_false, Op_true and Op_if
--- (because they appear explcitly in the rules).
-
-data GMLOp
- = Op_acos
- | Op_addi
- | Op_addf
- | Op_asin
- | Op_clampf
- | Op_cone
- | Op_cos
- | Op_cube
- | Op_cylinder
- | Op_difference
- | Op_divi
- | Op_divf
- | Op_eqi
- | Op_eqf
- | Op_floor
- | Op_frac
- | Op_get
- | Op_getx
- | Op_gety
- | Op_getz
- | Op_intersect
- | Op_length
- | Op_lessi
- | Op_lessf
- | Op_light
- | Op_modi
- | Op_muli
- | Op_mulf
- | Op_negi
- | Op_negf
- | Op_plane
- | Op_point
- | Op_pointlight
- | Op_real
- | Op_render
- | Op_rotatex
- | Op_rotatey
- | Op_rotatez
- | Op_scale
- | Op_sin
- | Op_sphere
- | Op_spotlight
- | Op_sqrt
- | Op_subi
- | Op_subf
- | Op_trace -- non standard, for debugging GML programs
- | Op_translate
- | Op_union
- | Op_uscale
- deriving (Eq,Ord,Ix,Bounded)
-
-instance Show GMLOp where
- showsPrec _ op = showString (opNameTable ! op)
-
-
-------------------------------------------------------------------------------
-
--- And how we use the op codes (there names, there interface)
-
--- These keywords include, "apply", "if", "true" and "false",
--- they are not parsed as operators, but are
--- captured by the parser as a special case.
-
-keyWords :: [String]
-keyWords = [ kwd | (kwd,_,_) <- opcodes ]
-
--- Lookup has to look from the start (or else...)
-opTable :: [(Name,GMLToken)]
-opTable = [ (kwd,op) | (kwd,op,_) <- opcodes ]
-
-opNameTable :: Array GMLOp Name
-opNameTable = array (minBound,maxBound)
- [ (op,name) | (name,TOp op,_) <- opcodes ]
-
-undef = error "undefined function"
-image = error "undefined function: talk to image group"
-
--- typically, its best to have *one* opcode table,
--- so that mis-alignments do not happen.
-
-opcodes :: [(String,GMLToken,PrimOp)]
-opcodes =
- [ ("apply", TApply, error "incorrect use of apply")
- , ("if", TIf, error "incorrect use of if")
- , ("false", TBool False, error "incorrect use of false")
- , ("true", TBool True, error "incorrect use of true")
- ] ++ map (\ (a,b,c) -> (a,TOp b,c))
- -- These are just invocation, any coersions need to occur between here
- -- and before arriving at the application code (like deg -> rad).
- [ ("acos", Op_acos, Real_Real (rad2deg . acos))
- , ("addi", Op_addi, Int_Int_Int (+))
- , ("addf", Op_addf, Real_Real_Real (+))
- , ("asin", Op_asin, Real_Real (rad2deg . asin))
- , ("clampf", Op_clampf, Real_Real clampf)
- , ("cone", Op_cone, Surface_Obj cone)
- , ("cos", Op_cos, Real_Real (cos . deg2rad))
- , ("cube", Op_cube, Surface_Obj cube)
- , ("cylinder", Op_cylinder, Surface_Obj cylinder)
- , ("difference", Op_difference, Obj_Obj_Obj difference)
- , ("divi", Op_divi, Int_Int_Int (ourQuot))
- , ("divf", Op_divf, Real_Real_Real (/))
- , ("eqi", Op_eqi, Int_Int_Bool (==))
- , ("eqf", Op_eqf, Real_Real_Bool (==))
- , ("floor", Op_floor, Real_Int floor)
- , ("frac", Op_frac, Real_Real (snd . properFraction))
- , ("get", Op_get, Arr_Int_Value ixGet)
- , ("getx", Op_getx, Point_Real (\ x y z -> x))
- , ("gety", Op_gety, Point_Real (\ x y z -> y))
- , ("getz", Op_getz, Point_Real (\ x y z -> z))
- , ("intersect", Op_intersect, Obj_Obj_Obj intersect)
- , ("length", Op_length, Arr_Int (succ . snd . bounds))
- , ("lessi", Op_lessi, Int_Int_Bool (<))
- , ("lessf", Op_lessf, Real_Real_Bool (<))
- , ("light", Op_light, Point_Color_Light light)
- , ("modi", Op_modi, Int_Int_Int (ourRem))
- , ("muli", Op_muli, Int_Int_Int (*))
- , ("mulf", Op_mulf, Real_Real_Real (*))
- , ("negi", Op_negi, Int_Int negate)
- , ("negf", Op_negf, Real_Real negate)
- , ("plane", Op_plane, Surface_Obj plane)
- , ("point", Op_point, Real_Real_Real_Point VPoint)
- , ("pointlight", Op_pointlight, Point_Color_Light pointlight)
- , ("real", Op_real, Int_Real fromIntegral)
- , ("render", Op_render, Render $ render eye)
- , ("rotatex", Op_rotatex, Obj_Real_Obj (\ o d -> rotateX (deg2rad d) o))
- , ("rotatey", Op_rotatey, Obj_Real_Obj (\ o d -> rotateY (deg2rad d) o))
- , ("rotatez", Op_rotatez, Obj_Real_Obj (\ o d -> rotateZ (deg2rad d) o))
- , ("scale", Op_scale, Obj_Real_Real_Real_Obj (\ o x y z -> scale (x,y,z) o))
- , ("sin", Op_sin, Real_Real (sin . deg2rad))
- , ("sphere", Op_sphere, Surface_Obj sphere') -- see comment at end of file
- , ("spotlight", Op_spotlight, Point_Point_Color_Real_Real_Light mySpotlight)
- , ("sqrt", Op_sqrt, Real_Real ourSqrt)
- , ("subi", Op_subi, Int_Int_Int (-))
- , ("subf", Op_subf, Real_Real_Real (-))
- , ("trace", Op_trace, Value_String_Value mytrace)
- , ("translate", Op_translate, Obj_Real_Real_Real_Obj (\ o x y z -> translate (x,y,z) o))
- , ("union", Op_union, Obj_Obj_Obj union)
- , ("uscale", Op_uscale, Obj_Real_Obj (\ o r -> uscale r o))
- ]
-
--- This enumerate all possible ways of calling the fixed primitives
-
--- The datatype captures the type at the *interp* level,
--- the type of the functional is mirrored on this (using Haskell types).
-
-data PrimOp
-
- -- 1 argument
- = Int_Int (Int -> Int)
- | Real_Real (Double -> Double)
- | Point_Real (Double -> Double -> Double -> Double)
- | Surface_Obj (SurfaceFn Color Double -> Object)
- | Real_Int (Double -> Int)
- | Int_Real (Int -> Double)
- | Arr_Int (Array Int GMLValue -> Int)
-
- -- 2 arguments
- | Int_Int_Int (Int -> Int -> Int)
- | Int_Int_Bool (Int -> Int -> Bool)
- | Real_Real_Real (Double -> Double -> Double)
- | Real_Real_Bool (Double -> Double -> Bool)
- | Arr_Int_Value (Array Int GMLValue -> Int -> GMLValue)
-
- -- Many arguments, typically image mangling
-
- | Obj_Obj_Obj (Object -> Object -> Object)
- | Point_Color_Light (Coords -> Color -> Light)
- | Real_Real_Real_Point (Double -> Double -> Double -> GMLValue)
- | Obj_Real_Obj (Object -> Double -> Object)
- | Obj_Real_Real_Real_Obj (Object -> Double -> Double -> Double -> Object)
- | Value_String_Value (GMLValue -> String -> GMLValue)
-
- | Point_Point_Color_Real_Real_Light
- (Coords -> Coords -> Color -> Radian -> Radian -> Light)
- -- And finally render
- | Render (Color -> [Light] -> Object -> Int -> Double -> Int -> Int -> String -> IO ())
-
-data Type
- = TyBool
- | TyInt
- | TyReal
- | TyString
- | TyCode
- | TyArray
- | TyPoint
- | TyObject
- | TyLight
- | TyAlpha
- | TyAbsObj
- deriving (Eq,Ord,Ix,Bounded)
-
-typeTable =
- [ ( TyBool, "Bool")
- , ( TyInt, "Int")
- , ( TyReal, "Real")
- , ( TyString, "String")
- , ( TyCode, "Code")
- , ( TyArray, "Array")
- , ( TyPoint, "Point")
- , ( TyObject, "Object")
- , ( TyLight, "Light")
- , ( TyAlpha, "<anything>")
- , ( TyAbsObj, "<abs>")
- ]
-
-typeNames = array (minBound,maxBound) typeTable
-
-instance Show Type where
- showsPrec _ op = showString (typeNames ! op)
-
-getPrimOpType :: PrimOp -> [Type]
-getPrimOpType (Int_Int _) = [TyInt]
-getPrimOpType (Real_Real _) = [TyReal]
-getPrimOpType (Point_Real _) = [TyPoint]
-getPrimOpType (Surface_Obj _) = [TyCode]
-getPrimOpType (Real_Int _) = [TyReal]
-getPrimOpType (Int_Real _) = [TyInt]
-getPrimOpType (Arr_Int _) = [TyArray]
-getPrimOpType (Int_Int_Int _) = [TyInt,TyInt]
-getPrimOpType (Int_Int_Bool _) = [TyInt,TyInt]
-getPrimOpType (Real_Real_Real _) = [TyReal,TyReal]
-getPrimOpType (Real_Real_Bool _) = [TyReal,TyReal]
-getPrimOpType (Arr_Int_Value _) = [TyArray,TyInt]
-getPrimOpType (Obj_Obj_Obj _) = [TyObject,TyObject]
-getPrimOpType (Point_Color_Light _) = [TyPoint,TyPoint]
-getPrimOpType (Real_Real_Real_Point _) = [TyReal,TyReal,TyReal]
-getPrimOpType (Obj_Real_Obj _) = [TyObject,TyReal]
-getPrimOpType (Obj_Real_Real_Real_Obj _) = [TyObject,TyReal,TyReal,TyReal]
-getPrimOpType (Value_String_Value _) = [TyAlpha,TyString]
-getPrimOpType (Point_Point_Color_Real_Real_Light _)
- = [TyPoint,TyPoint,TyPoint,TyReal,TyReal]
-getPrimOpType (Render _) = [TyPoint,
- TyLight,
- TyObject,
- TyInt,
- TyReal,
- TyReal,
- TyReal,
- TyString]
-
-
--- Some primitives with better error message
-
-mytrace v s = trace (s ++" : "++ show v ++ "\n") v
-
-
-ixGet :: Array Int GMLValue -> Int -> GMLValue
-ixGet arr i
- | inRange (bounds arr) i = arr ! i
- | otherwise = error ("failed access with index value "
- ++ show i
- ++ " (should be between 0 and "
- ++ show (snd (bounds arr)) ++ ")")
-
-ourQuot :: Int -> Int -> Int
-ourQuot _ 0 = error "attempt to use divi to divide by 0"
-ourQuot a b = a `quot` b
-
-ourRem :: Int -> Int -> Int
-ourRem _ 0 = error "attempt to use remi to divide by 0"
-ourRem a b = a `rem` b
-
-ourSqrt :: Double -> Double
-ourSqrt n | n < 0 = error "attempt to use sqrt on a negative number"
- | otherwise = sqrt n
-
-
-mySpotlight p1 p2 col cutoff exp = spotlight p1 p2 col (deg2rad cutoff) exp
-
--- The problem specification gets the mapping for spheres backwards
--- (it maps the image from right to left).
--- We've fixed that in the raytracing library so that it goes from left
--- to right, but to keep the GML front compatible with the problem
--- statement, we reverse it here.
-
-sphere' :: SurfaceFn Color Double -> CSG (SurfaceFn Color Double)
-sphere' (SFun f) = sphere (SFun (\i u v -> f i (1 - u) v))
-sphere' s = sphere s
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/Eval.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/Eval.hs
deleted file mode 100644
index 75568f0b04..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/Eval.hs
+++ /dev/null
@@ -1,355 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
-module Eval where
-
-import Array
-
-import Geometry
-import CSG
-import Surface
-import Data
-import Parse (rayParse, rayParseF)
-
-class Monad m => MonadEval m where
- doOp :: PrimOp -> GMLOp -> Stack -> m Stack
- tick :: m ()
- err :: String -> m a
-
- tick = return ()
-
-newtype Pure a = Pure a deriving Show
-
-instance Monad Pure where
- Pure x >>= k = k x
- return = Pure
- fail s = error s
-
-instance MonadEval Pure where
- doOp = doPureOp
- err s = error s
-
-instance MonadEval IO where
- doOp prim op stk = do { -- putStrLn ("Calling " ++ show op
- -- ++ " << " ++ show stk ++ " >>")
- doAllOp prim op stk
- }
- err s = error s
-
-data State
- = State { env :: Env
- , stack :: Stack
- , code :: Code
- } deriving Show
-
-callback :: Env -> Code -> Stack -> Stack
-callback env code stk
- = case eval (State { env = env, stack = stk, code = code}) of
- Pure stk -> stk
-
-{-# SPECIALIZE eval :: State -> Pure Stack #-}
-{-# SPECIALIZE eval :: State -> IO Stack #-}
-
-eval :: MonadEval m => State -> m Stack
-eval st =
- do { () <- return () -- $ unsafePerformIO (print st) -- Functional debugger
- ; if moreCode st then
- do { tick -- tick first, so as to catch loops on new eval.
- ; st' <- step st
- ; eval st'
- }
- else return (stack st)
- }
-
-moreCode :: State -> Bool
-moreCode (State {code = []}) = False
-moreCode _ = True
-
--- Step has a precondition that there *is* code to run
-{-# SPECIALIZE step :: State -> Pure State #-}
-{-# SPECIALIZE step :: State -> IO State #-}
-step :: MonadEval m => State -> m State
-
--- Rule 1: Pushing BaseValues
-step st@(State{ stack = stack, code = (TBool b):cs })
- = return (st { stack = (VBool b):stack, code = cs })
-step st@(State{ stack = stack, code = (TInt i):cs })
- = return (st { stack = (VInt i):stack, code = cs })
-step st@(State{ stack = stack, code = (TReal r):cs })
- = return (st { stack = (VReal r):stack, code = cs })
-step st@(State{ stack = stack, code = (TString s):cs })
- = return (st { stack = (VString s):stack, code = cs })
-
--- Rule 2: Name binding
-step st@(State{ env = env, stack = (v:stack), code = (TBind id):cs }) =
- return (State { env = extendEnv env id v, stack = stack, code = cs })
-step st@(State{ env = env, stack = [], code = (TBind id):cs }) =
- err "Attempt to bind the top of an empty stack"
-
--- Rule 3: Name lookup
-step st@(State{ env = env, stack = stack, code = (TId id):cs }) =
- case (lookupEnv env id) of
- Just v -> return (st { stack = v:stack, code = cs })
- Nothing -> err ("Cannot find value for identifier: " ++ id)
-
--- Rule 4: Closure creation
-step st@(State{ env = env, stack = stack, code = (TBody body):cs }) =
- return (st { stack = (VClosure env body):stack, code = cs })
-
--- Rule 5: Application
-step st@(State{ env = env, stack = (VClosure env' code'):stack, code = TApply:cs }) =
- do { stk <- eval (State {env = env', stack = stack, code = code'})
- ; return (st { stack = stk, code = cs })
- }
-step st@(State{ env = env, stack = [], code = TApply:cs }) =
- err "Application with an empty stack"
-step st@(State{ env = env, stack = _:_, code = TApply:cs }) =
- err "Application of a non-closure"
-
--- Rule 6: Arrays
-step st@(State{ env = env, stack = stack, code = TArray code':cs }) =
- do { stk <- eval (State {env = env, stack = [], code = code'})
- ; let last = length stk-1
- ; let arr = array (0,last) (zip [last,last-1..] stk)
- ; return (st { stack = (VArray arr):stack, code = cs })
- }
-
--- Rule 7 & 8: If statement
-step st@(State{ env = env, stack = (VClosure e2 c2):(VClosure e1 c1):(VBool True):stack, code = TIf:cs }) =
- do { stk <- eval (State {env = e1, stack = stack, code = c1})
- ; return (st { stack = stk, code = cs })
- }
-step st@(State{ env = env, stack = (VClosure e2 c2):(VClosure e1 c1):(VBool False):stack, code = TIf:cs }) =
- do { stk <- eval (State {env = e2, stack = stack, code = c2})
- ; return (st { stack = stk, code = cs })
- }
-step st@(State{ env = env, stack = _, code = TIf:cs }) =
- err "Incorrect use of if (bad and/or inappropriate values on the stack)"
-
--- Rule 9: Operators
-step st@(State{ env = env, stack = stack, code = (TOp op):cs }) =
- do { stk <- doOp (opFnTable ! op) op stack
- ; return (st { stack = stk, code = cs })
- }
-
--- Rule Opps
-step _ = err "Tripped on sidewalk while stepping."
-
-
---------------------------------------------------------------------------
--- Operator code
-
-opFnTable :: Array GMLOp PrimOp
-opFnTable = array (minBound,maxBound)
- [ (op,prim) | (_,TOp op,prim) <- opcodes ]
-
-
-
-
-doPureOp :: (MonadEval m) => PrimOp -> GMLOp -> Stack -> m Stack
-doPureOp _ Op_render _ =
- err ("\nAttempting to call render from inside a purely functional callback.")
-doPureOp primOp op stk = doPrimOp primOp op stk -- call the purely functional operators
-
-{-# SPECIALIZE doPrimOp :: PrimOp -> GMLOp -> Stack -> Pure Stack #-}
-{-# SPECIALIZE doPrimOp :: PrimOp -> GMLOp -> Stack -> IO Stack #-}
-{-# SPECIALIZE doPrimOp :: PrimOp -> GMLOp -> Stack -> Abs Stack #-}
-
-doPrimOp :: (MonadEval m) => PrimOp -> GMLOp -> Stack -> m Stack
-
--- 1 argument.
-
-doPrimOp (Int_Int fn) _ (VInt i1:stk)
- = return ((VInt (fn i1)) : stk)
-doPrimOp (Real_Real fn) _ (VReal r1:stk)
- = return ((VReal (fn r1)) : stk)
-doPrimOp (Point_Real fn) _ (VPoint x y z:stk)
- = return ((VReal (fn x y z)) : stk)
-
--- This is where the callbacks happen from...
-doPrimOp (Surface_Obj fn) _ (VClosure env code:stk)
- = case absapply env code [VAbsObj AbsFACE,VAbsObj AbsU,VAbsObj AbsV] of
- Just [VReal r3,VReal r2,VReal r1,VPoint c1 c2 c3] ->
- let
- res = prop (color c1 c2 c3) r1 r2 r3
- in
- return ((VObject (fn (SConst res))) : stk)
- _ -> return ((VObject (fn (SFun call))) : stk)
- where
- -- The most general case
- call i r1 r2 =
- case callback env code [VReal r2,VReal r1,VInt i] of
- [VReal r3,VReal r2,VReal r1,VPoint c1 c2 c3]
- -> prop (color c1 c2 c3) r1 r2 r3
- stk -> error ("callback failed: incorrectly typed return arguments"
- ++ show stk)
-
-doPrimOp (Real_Int fn) _ (VReal r1:stk)
- = return ((VInt (fn r1)) : stk)
-doPrimOp (Int_Real fn) _ (VInt r1:stk)
- = return ((VReal (fn r1)) : stk)
-doPrimOp (Arr_Int fn) _ (VArray arr:stk)
- = return ((VInt (fn arr)) : stk)
-
--- 2 arguments.
-
-doPrimOp (Int_Int_Int fn) _ (VInt i2:VInt i1:stk)
- = return ((VInt (fn i1 i2)) : stk)
-doPrimOp (Int_Int_Bool fn) _ (VInt i2:VInt i1:stk)
- = return ((VBool (fn i1 i2)) : stk)
-doPrimOp (Real_Real_Real fn) _ (VReal r2:VReal r1:stk)
- = return ((VReal (fn r1 r2)) : stk)
-doPrimOp (Real_Real_Bool fn) _ (VReal r2:VReal r1:stk)
- = return ((VBool (fn r1 r2)) : stk)
-doPrimOp (Arr_Int_Value fn) _ (VInt i:VArray arr:stk)
- = return ((fn arr i) : stk)
-
-
- -- Many arguments, typically image mangling
-
-doPrimOp (Obj_Obj_Obj fn) _ (VObject o2:VObject o1:stk)
- = return ((VObject (fn o1 o2)) : stk)
-doPrimOp (Point_Color_Light fn) _ (VPoint r g b:VPoint x y z : stk)
- = return (VLight (fn (x,y,z) (color r g b)) : stk)
-doPrimOp (Point_Point_Color_Real_Real_Light fn) _
- (VReal r2:VReal r1:VPoint r g b:VPoint x2 y2 z2:VPoint x1 y1 z1 : stk)
- = return (VLight (fn (x1,y1,z1) (x2,y2,z2) (color r g b) r1 r2) : stk)
-doPrimOp (Real_Real_Real_Point fn) _ (VReal r3:VReal r2:VReal r1:stk)
- = return ((fn r1 r2 r3) : stk)
-doPrimOp (Obj_Real_Obj fn) _ (VReal r:VObject o:stk)
- = return (VObject (fn o r) : stk)
-doPrimOp (Obj_Real_Real_Real_Obj fn) _ (VReal r3:VReal r2:VReal r1:VObject o:stk)
- = return (VObject (fn o r1 r2 r3) : stk)
-
--- This one is our testing harness
-doPrimOp (Value_String_Value fn) _ (VString s:o:stk)
- = res `seq` return (res : stk)
- where
- res = fn o s
-
-doPrimOp primOp op args
- = err ("\n\ntype error when attempting to execute builtin primitive \"" ++
- show op ++ "\"\n\n| " ++
- show op ++ " takes " ++ show (length types) ++ " argument" ++ s
- ++ " with" ++ the ++ " type" ++ s ++ "\n|\n|" ++
- " " ++ unwords [ show ty | ty <- types ] ++ "\n|\n|" ++
- " currently, the relevent argument" ++ s ++ " on the stack " ++
- are ++ "\n|\n| " ++
- unwords [ "(" ++ show arg ++ ")"
- | arg <- reverse (take (length types) args) ] ++ "\n|\n| "
- ++ " (top of stack is on the right hand side)\n\n")
- where
- len = length types
- s = (if len /= 1 then "s" else "")
- are = (if len /= 1 then "are" else "is")
- the = (if len /= 1 then "" else " the")
- types = getPrimOpType primOp
-
-
--- Render is somewhat funny, becauase it can only get called at top level.
--- All other operations are purely functional.
-
-doAllOp :: PrimOp -> GMLOp -> Stack -> IO Stack
-doAllOp (Render render) Op_render
- (VString str:VInt ht:VInt wid:VReal fov
- :VInt dep:VObject obj:VArray arr
- :VPoint r g b : stk)
- = do { render (color r g b) lights obj dep (fov * (pi / 180.0)) wid ht str
- ; return stk
- }
- where
- lights = [ light | (VLight light) <- elems arr ]
-
-doAllOp primOp op stk = doPrimOp primOp op stk -- call the purely functional operators
-
-------------------------------------------------------------------------------
-{-
- - Abstract evaluation.
- -
- - The idea is you check for constant code that
- - (1) does not look at its arguments
- - (2) gives a fixed result
- -
- - We run for 100 steps.
- -
- -}
-
-absapply :: Env -> Code -> Stack -> Maybe Stack
-absapply env code stk =
- case runAbs (eval (State env stk code)) 100 of
- AbsState stk _ -> Just stk
- AbsFail m -> Nothing
-
-newtype Abs a = Abs { runAbs :: Int -> AbsState a }
-data AbsState a = AbsState a !Int
- | AbsFail String
-
-instance Monad Abs where
- (Abs fn) >>= k = Abs (\ s -> case fn s of
- AbsState r s' -> runAbs (k r) s'
- AbsFail m -> AbsFail m)
- return x = Abs (\ n -> AbsState x n)
- fail s = Abs (\ n -> AbsFail s)
-
-instance MonadEval Abs where
- doOp = doAbsOp
- err = fail
- tick = Abs (\ n -> if n <= 0
- then AbsFail "run out of time"
- else AbsState () (n-1))
-
-doAbsOp :: PrimOp -> GMLOp -> Stack -> Abs Stack
-doAbsOp _ Op_point (VReal r3:VReal r2:VReal r1:stk)
- = return ((VPoint r1 r2 r3) : stk)
- -- here, you could have an (AbsPoint :: AbsObj) which you put on the
- -- stack, with any object in the three fields.
-doAbsOp _ op _ = err ("operator not understood (" ++ show op ++ ")")
-
-------------------------------------------------------------------------------
--- Driver
-
-mainEval :: Code -> IO ()
-mainEval prog = do { stk <- eval (State emptyEnv [] prog)
- ; return ()
- }
-{-
- * Oops, one of the example actually has something
- * on the stack at the end.
- * Oh well...
- ; if null stk
- then return ()
- else do { putStrLn done
- ; print stk
- }
--}
-
-done = "Items still on stack at (successfull) termination of program"
-
-------------------------------------------------------------------------------
--- testing
-
-test :: String -> Pure Stack
-test is = eval (State emptyEnv [] (rayParse is))
-
-testF :: String -> IO Stack
-testF is = do prog <- rayParseF is
- eval (State emptyEnv [] prog)
-
-testA :: String -> Either String (Stack,Int)
-testA is = case runAbs (eval (State emptyEnv
- [VAbsObj AbsFACE,VAbsObj AbsU,VAbsObj AbsV]
- (rayParse is))) 100 of
- AbsState a n -> Right (a,n)
- AbsFail m -> Left m
-
-abstest1 = "1.0 0.0 0.0 point /red { /v /u /face red 1.0 0.0 1.0 } apply"
-
--- should be [3:: Int]
-et1 = test "1 /x { x } /f 2 /x f apply x addi"
-
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/Geometry.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/Geometry.hs
deleted file mode 100644
index 673c7d4812..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/Geometry.hs
+++ /dev/null
@@ -1,314 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
-module Geometry
- ( Coords
- , Ray
- , Point -- abstract
- , Vector -- abstract
- , Matrix -- abstract
- , Color -- abstract
- , Box(..)
- , Radian
- , matrix
- , coord
- , color
- , uncolor
- , xCoord , yCoord , zCoord
- , xComponent , yComponent , zComponent
- , point
- , vector
- , nearV
- , point_to_vector
- , vector_to_point
- , dot
- , cross
- , tangents
- , addVV
- , addPV
- , subVV
- , negV
- , subPP
- , norm
- , normalize
- , dist2
- , sq
- , distFrom0Sq
- , distFrom0
- , multSV
- , multMM
- , transposeM
- , multMV
- , multMP
- , multMQ
- , multMR
- , white
- , black
- , addCC
- , subCC
- , sumCC
- , multCC
- , multSC
- , nearC
- , offsetToPoint
- , epsilon
- , inf
- , nonZero
- , eqEps
- , near
- , clampf
- ) where
-
-import List
-
-type Coords = (Double,Double,Double)
-
-type Ray = (Point,Vector) -- origin of ray, and unit vector giving direction
-
-data Point = P !Double !Double !Double -- implicit extra arg of 1
- deriving (Show)
-data Vector = V !Double !Double !Double -- implicit extra arg of 0
- deriving (Show, Eq)
-data Matrix = M !Quad !Quad !Quad !Quad
- deriving (Show)
-
-data Color = C !Double !Double !Double
- deriving (Show, Eq)
-
-data Box = B !Double !Double !Double !Double !Double !Double
- deriving (Show)
-
-data Quad = Q !Double !Double !Double !Double
- deriving (Show)
-
-type Radian = Double
-
-type Tup4 a = (a,a,a,a)
-
---{-# INLINE matrix #-}
-matrix :: Tup4 (Tup4 Double) -> Matrix
-matrix ((m11, m12, m13, m14),
- (m21, m22, m23, m24),
- (m31, m32, m33, m34),
- (m41, m42, m43, m44))
- = M (Q m11 m12 m13 m14)
- (Q m21 m22 m23 m24)
- (Q m31 m32 m33 m34)
- (Q m41 m42 m43 m44)
-
-coord x y z = (x, y, z)
-
-color r g b = C r g b
-
-uncolor (C r g b) = (r,g,b)
-
-{-# INLINE xCoord #-}
-xCoord (P x y z) = x
-{-# INLINE yCoord #-}
-yCoord (P x y z) = y
-{-# INLINE zCoord #-}
-zCoord (P x y z) = z
-
-{-# INLINE xComponent #-}
-xComponent (V x y z) = x
-{-# INLINE yComponent #-}
-yComponent (V x y z) = y
-{-# INLINE zComponent #-}
-zComponent (V x y z) = z
-
-point :: Double -> Double -> Double -> Point
-point x y z = P x y z
-
-vector :: Double -> Double -> Double -> Vector
-vector x y z = V x y z
-
-nearV :: Vector -> Vector -> Bool
-nearV (V a b c) (V d e f) = a `near` d && b `near` e && c `near` f
-
-point_to_vector :: Point -> Vector
-point_to_vector (P x y z) = V x y z
-
-vector_to_point :: Vector -> Point
-vector_to_point (V x y z) = P x y z
-
-{-# INLINE vector_to_quad #-}
-vector_to_quad :: Vector -> Quad
-vector_to_quad (V x y z) = Q x y z 0
-
-{-# INLINE point_to_quad #-}
-point_to_quad :: Point -> Quad
-point_to_quad (P x y z) = Q x y z 1
-
-{-# INLINE quad_to_point #-}
-quad_to_point :: Quad -> Point
-quad_to_point (Q x y z _) = P x y z
-
-{-# INLINE quad_to_vector #-}
-quad_to_vector :: Quad -> Vector
-quad_to_vector (Q x y z _) = V x y z
-
---{-# INLINE dot #-}
-dot :: Vector -> Vector -> Double
-dot (V x1 y1 z1) (V x2 y2 z2) = x1 * x2 + y1 * y2 + z1 * z2
-
-cross :: Vector -> Vector -> Vector
-cross (V x1 y1 z1) (V x2 y2 z2)
- = V (y1 * z2 - z1 * y2) (z1 * x2 - x1 * z2) (x1 * y2 - y1 * x2)
-
--- assumption: the input vector is a normal
-tangents :: Vector -> (Vector, Vector)
-tangents v@(V x y z)
- = (v1, v `cross` v1)
- where v1 | x == 0 = normalize (vector 0 z (-y))
- | otherwise = normalize (vector (-y) x 0)
-
-{-# INLINE dot4 #-}
-dot4 :: Quad -> Quad -> Double
-dot4 (Q x1 y1 z1 w1) (Q x2 y2 z2 w2) = x1 * x2 + y1 * y2 + z1 * z2 + w1 * w2
-
-addVV :: Vector -> Vector -> Vector
-addVV (V x1 y1 z1) (V x2 y2 z2)
- = V (x1 + x2) (y1 + y2) (z1 + z2)
-
-addPV :: Point -> Vector -> Point
-addPV (P x1 y1 z1) (V x2 y2 z2)
- = P (x1 + x2) (y1 + y2) (z1 + z2)
-
-subVV :: Vector -> Vector -> Vector
-subVV (V x1 y1 z1) (V x2 y2 z2)
- = V (x1 - x2) (y1 - y2) (z1 - z2)
-
-negV :: Vector -> Vector
-negV (V x1 y1 z1)
- = V (-x1) (-y1) (-z1)
-
-subPP :: Point -> Point -> Vector
-subPP (P x1 y1 z1) (P x2 y2 z2)
- = V (x1 - x2) (y1 - y2) (z1 - z2)
-
---{-# INLINE norm #-}
-norm :: Vector -> Double
-norm (V x y z) = sqrt (sq x + sq y + sq z)
-
---{-# INLINE normalize #-}
--- normalize a vector to a unit vector
-normalize :: Vector -> Vector
-normalize v@(V x y z)
- | norm /= 0 = multSV (1/norm) v
- | otherwise = error "normalize empty!"
- where norm = sqrt (sq x + sq y + sq z)
-
--- This does computes the distance *squared*
-dist2 :: Point -> Point -> Double
-dist2 us vs = sq x + sq y + sq z
- where
- (V x y z) = subPP us vs
-
-{-# INLINE sq #-}
-sq :: Double -> Double
-sq d = d * d
-
-{-# INLINE distFrom0Sq #-}
-distFrom0Sq :: Point -> Double -- Distance of point from origin.
-distFrom0Sq (P x y z) = sq x + sq y + sq z
-
-{-# INLINE distFrom0 #-}
-distFrom0 :: Point -> Double -- Distance of point from origin.
-distFrom0 p = sqrt (distFrom0Sq p)
-
---{-# INLINE multSV #-}
-multSV :: Double -> Vector -> Vector
-multSV k (V x y z) = V (k*x) (k*y) (k*z)
-
---{-# INLINE multMM #-}
-multMM :: Matrix -> Matrix -> Matrix
-multMM m1@(M q1 q2 q3 q4) m2
- = M (multMQ m2' q1)
- (multMQ m2' q2)
- (multMQ m2' q3)
- (multMQ m2' q4)
- where
- m2' = transposeM m2
-
-{-# INLINE transposeM #-}
-transposeM :: Matrix -> Matrix
-transposeM (M (Q e11 e12 e13 e14)
- (Q e21 e22 e23 e24)
- (Q e31 e32 e33 e34)
- (Q e41 e42 e43 e44)) = (M (Q e11 e21 e31 e41)
- (Q e12 e22 e32 e42)
- (Q e13 e23 e33 e43)
- (Q e14 e24 e34 e44))
-
-
---multMM m1 m2 = [map (dot4 row) (transpose m2) | row <- m1]
-
---{-# INLINE multMV #-}
-multMV :: Matrix -> Vector -> Vector
-multMV m v = quad_to_vector (multMQ m (vector_to_quad v))
-
---{-# INLINE multMP #-}
-multMP :: Matrix -> Point -> Point
-multMP m p = quad_to_point (multMQ m (point_to_quad p))
-
--- mat vec = map (dot4 vec) mat
-
-{-# INLINE multMQ #-}
-multMQ :: Matrix -> Quad -> Quad
-multMQ (M q1 q2 q3 q4) q
- = Q (dot4 q q1)
- (dot4 q q2)
- (dot4 q q3)
- (dot4 q q4)
-
-{-# INLINE multMR #-}
-multMR :: Matrix -> Ray -> Ray
-multMR m (r, v) = (multMP m r, multMV m v)
-
-white :: Color
-white = C 1 1 1
-black :: Color
-black = C 0 0 0
-
-addCC :: Color -> Color -> Color
-addCC (C a b c) (C d e f) = C (a+d) (b+e) (c+f)
-
-subCC :: Color -> Color -> Color
-subCC (C a b c) (C d e f) = C (a-d) (b-e) (c-f)
-
-sumCC :: [Color] -> Color
-sumCC = foldr addCC black
-
-multCC :: Color -> Color -> Color
-multCC (C a b c) (C d e f) = C (a*d) (b*e) (c*f)
-
-multSC :: Double -> Color -> Color
-multSC k (C a b c) = C (a*k) (b*k) (c*k)
-
-nearC :: Color -> Color -> Bool
-nearC (C a b c) (C d e f) = a `near` d && b `near` e && c `near` f
-
-offsetToPoint :: Ray -> Double -> Point
-offsetToPoint (r,v) i = r `addPV` (i `multSV` v)
-
---
-
-epsilon, inf :: Double -- aproximate zero and infinity
-epsilon = 1.0e-10
-inf = 1.0e20
-
-nonZero :: Double -> Double -- Use before a division. It makes definitions
-nonZero x | x > epsilon = x -- more complete and I bet the errors that get
- | x < -epsilon = x -- introduced will be undetectable if epsilon
- | otherwise = epsilon -- is small enough
-
-
-eqEps x y = abs (x-y) < epsilon
-near = eqEps
-
-clampf :: Double -> Double
-clampf p | p < 0 = 0
- | p > 1 = 1
- | True = p
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/Illumination.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/Illumination.hs
deleted file mode 100644
index 155a7a9a76..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/Illumination.hs
+++ /dev/null
@@ -1,224 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
--- Modified to use stdout (for testing)
-
-module Illumination
- ( Object
- , Light (..)
- , light, pointlight, spotlight
- , render
- ) where
-
-import Array
-import Char(chr)
-import Maybe
-
-import Geometry
-import CSG
-import Surface
-import Misc
-
-type Object = CSG (SurfaceFn Color Double)
-
-data Cxt = Cxt {ambient::Color, lights::[Light], object::Object, depth::Int}
- deriving Show
-
-render :: (Matrix,Matrix) -> Color -> [Light] -> Object -> Int ->
- Radian -> Int -> Int -> String -> IO ()
-render (m,m') amb ls obj dep fov wid ht file
- = do { debugging
- ; putStrLn (showBitmap' wid ht pixels)
- }
- where
- debugging = return ()
-{-
- do { putStrLn (show cxt)
- ; putStrLn (show (width, delta, aspect, left, top))
- }
--}
- obj' = transform (m',m) obj
- ls' = [ transformLight m' l | l <- ls ]
- pixelA = listArray ((1,1), (ht,wid))
- [ illumination cxt (start,pixel i j)
- | j <- take ht [0.5..]
- , i <- take wid [0.5..] ]
- antiA = pixelA //
- [ (ix, superSample ix (pixelA ! ix))
- | j <- [2 .. ht - 1], i <- [2 .. wid - 1]
- , let ix = (j, i)
- , contrast ix pixelA ]
- pixels = [ [ illumination cxt (start,pixel i j) | i<- take wid [0.5..] ]
- | j <- take ht [0.5..]
- ]
- cxt = Cxt {ambient=amb, lights=ls', object=obj', depth=dep}
- start = point 0 0 (-1)
- width = 2 * tan (fov/2)
- delta = width / fromIntegral wid
- aspect = fromIntegral ht / fromIntegral wid
- left = - width / 2
- top = - left * aspect
- pixel i j = vector (left + i*delta) (top - j*delta) 1
-
- superSample (y, x) col = avg $ col:
- [ illumination cxt (start, pixel (fromIntegral x - 0.5 + xd) (fromIntegral y - 0.5 + yd))
- | (xd, yd) <- [(-0.333, 0.0), (0.333, 0.0), (0.0, -0.333), (0.0, 0.333)]
- ]
-
-avg cs = divN (fromIntegral (length cs)) (uncolor (sumCC cs))
- where divN n (r,g,b) = color (r / n) (g / n) (b / n)
-
-contrast :: (Int, Int) -> Array (Int, Int) Color -> Bool
-contrast (x, y) arr = any diffMax [ subCC cur (arr ! (x + xd, y + yd))
- | xd <- [-1, 1], yd <- [-1, 1]
- ]
- where cur = arr ! (x, y)
- diffMax col = (abs r) > 0.25 || (abs g) > 0.2 || (abs b) > 0.4
- where
- (r,g,b) = uncolor col
-
-
-illumination :: Cxt -> Ray -> Color
-illumination cxt (r,v)
- | depth cxt <= 0 = black
- | otherwise = case castRay (r,v) (object cxt) of
- Nothing -> black
- Just info -> illum (cxt{depth=(depth cxt)-1}) info v
-
-illum :: Cxt -> (Point,Vector,Properties Color Double) -> Vector -> Color
-illum cxt (pos,normV,(col,kd,ks,n)) v
- = ambTerm `addCC` difTerm `addCC` spcTerm `addCC` recTerm
- where
- visibleLights = unobscured pos (object cxt) (lights cxt) normV
- d = depth cxt
- amb = ambient cxt
- newV = subVV v (multSV (2 * dot normV v) normV)
-
- ambTerm = multSC kd (multCC amb col)
- difTerm = multSC kd (sumCC [multSC (dot normV lj) (multCC intensity col)
- |(loc,intensity) <- visibleLights,
- let lj = normalize ({- pos `subVV` -} loc)])
- -- ZZ might want to avoid the phong, when you can...
- spcTerm = multSC ks (sumCC [multSC ((dot normV hj) ** n ) (multCC intensity col)
- |(loc,intensity) <- visibleLights,
- -- ZZ note this is specific to the light at infinity
- let lj = {- pos `subVV` -} normalize loc,
- let hj = normalize (lj `subVV` normalize v)])
- recTerm = if recCoeff `nearC` black then black else multCC recCoeff recRay
- recCoeff = multSC ks col
- recRay = illumination cxt (pos,newV)
-
-showBitmapA :: Int -> Int -> Array (Int, Int) Color -> String
-showBitmapA wid ht arr
- = header ++ concatMap scaleColor (elems arr)
- where
- scaleColor col = [scalePixel r, scalePixel g, scalePixel b]
- where (r,g,b) = uncolor col
- header = "P6\n#Galois\n" ++ show wid ++ " " ++ show ht ++ "\n255\n"
-
-showBitmap :: Int -> Int ->[[Color]] -> String
-showBitmap wid ht pss
--- type of assert | length pss == ht && all (\ ps -> length ps == wid) pss
- = header ++ concat [[scalePixel r,scalePixel g,scalePixel b]
- | ps <- pss, (r,g,b) <- map uncolor ps]
- where
- header = "P6\n#Galois\n" ++ show wid ++ " " ++ show ht ++ "\n255\n"
-showBitmap _ _ _ = error "incorrect length of bitmap string"
-
-scalePixel :: Double -> Char
-scalePixel p = chr (floor (clampf p * 255))
-
-showBitmap' :: Int -> Int ->[[Color]] -> String
-showBitmap' wid ht pss
--- type of assert | length pss == ht && all (\ ps -> length ps == wid) pss
- = header
- ++ unlines [ unwords [unwords [scalePixel' r,scalePixel' g,scalePixel' b]
- | (r,g,b) <- map uncolor ps]
- | ps <- pss ]
- where
- header = "P3\n#Galois\n" ++ show wid ++ " " ++ show ht ++ "\n255\n"
-showBitmap' _ _ _ = error "incorrect length of bitmap string"
-
-scalePixel' :: Double -> String
-scalePixel' p = show (floor (clampf p * 255))
-
--- Lights
-
-data Light = Light Vector Color
- | PointLight Point Color
- | SpotLight Point Point Color Radian Double
- deriving Show
-
-light :: Coords -> Color -> Light
-light (x,y,z) color =
- Light (normalize (vector (-x) (-y) (-z))) color
-pointlight (x,y,z) color =
- PointLight (point x y z) color
-spotlight (x,y,z) (p,q,r) col cutoff exp =
- SpotLight (point x y z) (point p q r) col cutoff exp
-
-transformLight m (Light v c) = Light (multMV m v) c
-transformLight m (PointLight p c) = PointLight (multMP m p) c
-transformLight m (SpotLight p q c r d) = SpotLight (multMP m p) (multMP m q) c r d
-
-unobscured :: Point -> Object -> [Light] -> Vector -> [(Vector,Color)]
-unobscured pos obj lights normV = catMaybes (map (unobscure pos obj normV) lights)
-
-unobscure :: Point -> Object -> Vector -> Light -> Maybe (Vector,Color)
-unobscure pos obj normV (Light vec color)
- -- ZZ probably want to make this faster
- | vec `dot` normV < 0 = Nothing
- | intersects (pos `addPV` (0.0001 `multSV` vec),vec) obj = Nothing
- | otherwise = Just (vec,color)
-unobscure pos obj normV (PointLight pp color)
- | vec `dot` normV < 0 = Nothing
- | intersectWithin (pos `addPV` (0.0001 `multSV` (normalize vec)), vec) obj = Nothing
- | otherwise = Just (vec,is)
- where vec = pp `subPP` pos
- is = attenuate vec color
-unobscure org obj normV (SpotLight pos at color cutoff exp)
- | vec `dot` normV < 0 = Nothing
- | intersectWithin (org `addPV` (0.0001 `multSV` (normalize vec)), vec) obj = Nothing
- | angle > cutoff = Nothing
- | otherwise = Just (vec, is)
- where vec = pos `subPP` org
- vec' = pos `subPP` at
- angle = acos (normalize vec `dot` (normalize vec'))
-
- asp = normalize (at `subPP` pos)
- qsp = normalize (org `subPP` pos)
- is = attenuate vec (((asp `dot` qsp) ** exp) `multSC` color)
-
-attenuate :: Vector -> Color -> Color
-attenuate vec color = (100 / (99 + sq (norm vec))) `multSC` color
-
---
-
-castRay ray p
- = case intersectRayWithObject ray p of
- (True, _, _) -> Nothing -- eye is inside
- (False, [], _) -> Nothing -- eye is inside
- (False, (0, b, _) : _, _) -> Nothing -- eye is inside
- (False, (i, False, _) : _, _) -> Nothing -- eye is inside
- (False, (t, b, (s, p0)) : _, _) ->
- let (v, prop) = surface s p0 in
- Just (offsetToPoint ray t, v, prop)
-
-intersects ray p
- = case intersectRayWithObject ray p of
- (True, _, _) -> False
- (False, [], _) -> False
- (False, (0, b, _) : _, _) -> False
- (False, (i, False, _) : _, _) -> False
- (False, (i, b, _) : _, _) -> True
-
-intersectWithin :: Ray -> Object -> Bool
-intersectWithin ray p
- = case intersectRayWithObject ray p of
- (True, _, _) -> False -- eye is inside
- (False, [], _) -> False -- eye is inside
- (False, (0, b, _) : _, _) -> False -- eye is inside
- (False, (i, False, _) : _, _) -> False -- eye is inside
- (False, (t, b, _) : _, _) -> t < 1.0
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/Intersections.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/Intersections.hs
deleted file mode 100644
index c7fe003eb3..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/Intersections.hs
+++ /dev/null
@@ -1,404 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
-module Intersections
- ( intersectRayWithObject,
- quadratic
- ) where
-
-import Maybe(isJust)
-
-import Construct
-import Geometry
-import Interval
-import Misc
-
--- This is factored into two bits. The main function `intersections'
--- intersects a line with an object.
--- The wrapper call `intersectRayWithObject' coerces this to an intersection
--- with a ray by clamping the result to start at 0.
-
-intersectRayWithObject ray p
- = clampIntervals is
- where is = intersections ray p
-
-clampIntervals (True, [], True) = (False, [(0, True, undefined)], True)
-clampIntervals empty@(False, [], False) = empty
-clampIntervals (True, is@((i, False, p) : is'), isOpen)
- | i `near` 0 || i < 0
- = clampIntervals (False, is', isOpen)
- | otherwise
- = (False, (0, True, undefined) : is, isOpen)
-clampIntervals ivals@(False, is@((i, True, p) : is'), isOpen)
- | i `near` 0 || i < 0
- -- can unify this with first case...
- = clampIntervals (True, is', isOpen)
- | otherwise
- = ivals
-
-intersections ray (Union p q)
- = unionIntervals is js
- where is = intersections ray p
- js = intersections ray q
-
-intersections ray (Intersect p q)
- = intersectIntervals is js
- where is = intersections ray p
- js = intersections ray q
-
-intersections ray (Difference p q)
- = differenceIntervals is (negateSurfaces js)
- where is = intersections ray p
- js = intersections ray q
-
-intersections ray (Transform m m' p)
- = mapI (xform m) is
- where is = intersections (m' `multMR` ray) p
- xform m (i, b, (s, p0)) = (i, b, (transformSurface m s, p0))
-
-intersections ray (Box box p)
- | intersectWithBox ray box = intersections ray p
- | otherwise = emptyIList
-
-intersections ray p@(Plane s)
- = intersectPlane ray s
-
-intersections ray p@(Sphere s)
- = intersectSphere ray s
-
-intersections ray p@(Cube s)
- = intersectCube ray s
-
-intersections ray p@(Cylinder s)
- = intersectCylinder ray s
-
-intersections ray p@(Cone s)
- = intersectCone ray s
-
-negateSurfaces :: IList (Surface, Texture a) -> IList (Surface, Texture a)
-negateSurfaces = mapI negSurf
- where negSurf (i, b, (s,t)) = (i, b, (negateSurface s, t))
-
-negateSurface (Planar p0 v0 v1)
- = Planar p0 v1 v0
-negateSurface (Spherical p0 v0 v1)
- = Spherical p0 v1 v0
-negateSurface (Cylindrical p0 v0 v1)
- = Cylindrical p0 v1 v0
-negateSurface (Conic p0 v0 v1)
- = Conic p0 v1 v0
-
-transformSurface m (Planar p0 v0 v1)
- = Planar p0' v0' v1'
- where p0' = multMP m p0
- v0' = multMV m v0
- v1' = multMV m v1
-
-transformSurface m (Spherical p0 v0 v1)
- = Spherical p0' v0' v1'
- where p0' = multMP m p0
- v0' = multMV m v0
- v1' = multMV m v1
-
--- ditto as above
-transformSurface m (Cylindrical p0 v0 v1)
- = Cylindrical p0' v0' v1'
- where p0' = multMP m p0
- v0' = multMV m v0
- v1' = multMV m v1
-
-transformSurface m (Conic p0 v0 v1)
- = Conic p0' v0' v1'
- where p0' = multMP m p0
- v0' = multMV m v0
- v1' = multMV m v1
-
---------------------------------
--- Plane
---------------------------------
-
-intersectPlane :: Ray -> a -> IList (Surface, Texture a)
-intersectPlane ray texture = intersectXZPlane PlaneFace ray 0.0 texture
-
-intersectXZPlane :: Face -> Ray -> Double -> a -> IList (Surface, Texture a)
-intersectXZPlane n (r,v) yoffset texture
- | b `near` 0
- = -- the ray is parallel to the plane - it's either all in, or all out
- if y `near` yoffset || y < yoffset then openIList else emptyIList
-
- -- The line intersects the plane. Find t such that
- -- (x + at, y + bt, z + ct) intersects the X-Z plane.
- -- t may be negative (the ray starts within the halfspace),
- -- but we'll catch that later when we clamp the intervals
-
- | b < 0 -- the ray is pointing downwards
- = (False, [mkEntry (t0, (Planar p0 v0 v1, (n, p0, texture)))], True)
-
- | otherwise -- the ray is pointing upwards
- = (True, [mkExit (t0, (Planar p0 v0 v1, (n, p0, texture)))], False)
-
- where t0 = (yoffset-y) / b
- x0 = x + a * t0
- z0 = z + c * t0
- p0 = point x0 0 z0
- v0 = vector 0 0 1
- v1 = vector 1 0 0
-
- x = xCoord r
- y = yCoord r
- z = zCoord r
- a = xComponent v
- b = yComponent v
- c = zComponent v
-
-
---------------------------------
--- Sphere
---------------------------------
-
-intersectSphere :: Ray -> a -> IList (Surface, Texture a)
-intersectSphere ray@(r, v) texture
- = -- Find t such that (x + ta, y + tb, z + tc) intersects the
- -- unit sphere, that is, such that:
- -- (x + ta)^2 + (y + tb)^2 + (z + tc)^2 = 1
- -- This is a quadratic equation in t:
- -- t^2(a^2 + b^2 + c^2) + 2t(xa + yb + zc) + (x^2 + y^2 + z^2 - 1) = 0
- let c1 = sq a + sq b + sq c
- c2 = 2 * (x * a + y * b + z * c)
- c3 = sq x + sq y + sq z - 1
- in
- case quadratic c1 c2 c3 of
- Nothing -> emptyIList
- Just (t1, t2) -> entryexit (g t1) (g t2)
- where x = xCoord r
- y = yCoord r
- z = zCoord r
- a = xComponent v
- b = yComponent v
- c = zComponent v
- g t = (t, (Spherical origin v1 v2, (SphereFace, p0, texture)))
- where origin = point 0 0 0
- x0 = x + t * a
- y0 = y + t * b
- z0 = z + t * c
- p0 = point x0 y0 z0
- v0 = vector x0 y0 z0
- (v1, v2) = tangents v0
-
-
---------------------------------
--- Cube
---------------------------------
-
-intersectCube :: Ray -> a -> IList (Surface, Texture a)
-intersectCube ray@(r, v) texture
- = -- The set of t such that (x + at, y + bt, z + ct) lies within
- -- the unit cube satisfies:
- -- 0 <= x + at <= 1, 0 <= y + bt <= 1, 0 <= z + ct <= 1
- -- The minimum and maximum such values of t give us the two
- -- intersection points.
- case intersectSlabIval (intersectCubeSlab face2 face3 x a)
- (intersectSlabIval (intersectCubeSlab face5 face4 y b)
- (intersectCubeSlab face0 face1 z c)) of
- Nothing -> emptyIList
- Just (t1, t2) -> entryexit (g t1) (g t2)
- where g ((n, v0, v1), t)
- = (t, (Planar p0 v0 v1, (n, p0, texture)))
- where p0 = offsetToPoint ray t
- face0 = (CubeFront, vectorY, vectorX)
- face1 = (CubeBack, vectorX, vectorY)
- face2 = (CubeLeft, vectorZ, vectorY)
- face3 = (CubeRight, vectorY, vectorZ)
- face4 = (CubeTop, vectorZ, vectorX)
- face5 = (CubeBottom, vectorX, vectorZ)
- vectorX = vector 1 0 0
- vectorY = vector 0 1 0
- vectorZ = vector 0 0 1
- x = xCoord r
- y = yCoord r
- z = zCoord r
- a = xComponent v
- b = yComponent v
- c = zComponent v
-
-intersectCubeSlab n m w d
- | d `near` 0 = if (0 <= w) && (w <= 1)
- then Just ((n, -inf), (m, inf)) else Nothing
- | d > 0 = Just ((n, (-w)/d), (m, (1-w)/d))
- | otherwise = Just ((m, (1-w)/d), (n, (-w)/d))
-
-intersectSlabIval Nothing Nothing = Nothing
-intersectSlabIval Nothing (Just i) = Nothing
-intersectSlabIval (Just i) Nothing = Nothing
-intersectSlabIval (Just (nu1@(n1, u1), mv1@(m1, v1)))
- (Just (nu2@(n2, u2), mv2@(m2, v2)))
- = checkInterval (nu, mv)
- where nu = if u1 < u2 then nu2 else nu1
- mv = if v1 < v2 then mv1 else mv2
- checkInterval numv@(nu@(_, u), (m, v))
- -- rounding error may force us to push v out a bit
- | u `near` v = Just (nu, (m, u + epsilon))
- | u < v = Just numv
- | otherwise = Nothing
-
-
---------------------------------
--- Cylinder
---------------------------------
-
-intersectCylinder :: Ray -> a -> IList (Surface, Texture a)
-intersectCylinder ray texture
- = isectSide `intersectIntervals` isectTop `intersectIntervals` isectBottom
- where isectSide = intersectCylSide ray texture
- isectTop = intersectXZPlane CylinderTop ray 1.0 texture
- isectBottom = complementIntervals $ negateSurfaces $
- intersectXZPlane CylinderBottom ray 0.0 texture
-
-intersectCylSide (r, v) texture
- = -- The ray (x + ta, y + tb, z + tc) intersects the sides of the
- -- cylinder if:
- -- (x + ta)^2 + (z + tc)^2 = 1 and 0 <= y + tb <= 1.
- if (sq a + sq c) `near` 0
- then -- The ray is parallel to the Y-axis, and does not intersect
- -- the cylinder sides. It's either all in, or all out
- if (sqxy `near` 1.0 || sqxy < 1.0) then openIList else emptyIList
- else -- Find values of t that solve the quadratic equation
- -- (a^2 + c^2)t^2 + 2(ax + cz)t + x^2 + z^2 - 1 = 0
- let c1 = sq a + sq c
- c2 = 2 * (x * a + z * c)
- c3 = sq x + sq z - 1
- in
- case quadratic c1 c2 c3 of
- Nothing -> emptyIList
- Just (t1, t2) -> entryexit (g t1) (g t2)
-
- where sqxy = sq x + sq y
- g t = (t, (Cylindrical origin v1 v2, (CylinderSide, p0, texture)))
- where origin = point 0 0 0
- x0 = x + t * a
- y0 = y + t * b
- z0 = z + t * c
- p0 = point x0 y0 z0
- v0 = vector x0 0 z0
- (v1, v2) = tangents v0
-
- x = xCoord r
- y = yCoord r
- z = zCoord r
- a = xComponent v
- b = yComponent v
- c = zComponent v
-
-
--------------------
--- Cone
--------------------
-
-intersectCone :: Ray -> a -> IList (Surface, Texture a)
-intersectCone ray texture
- = isectSide `intersectIntervals` isectTop `intersectIntervals` isectBottom
- where isectSide = intersectConeSide ray texture
- isectTop = intersectXZPlane ConeBase ray 1.0 texture
- isectBottom = complementIntervals $ negateSurfaces $
- intersectXZPlane ConeBase ray 0.0 texture
-
-intersectConeSide (r, v) texture
- = -- Find the points where the ray intersects the cond side. At any points of
- -- intersection, we must have:
- -- (x + ta)^2 + (z + tc)^2 = (y + tb)^2
- -- which is the following quadratic equation:
- -- t^2(a^2-b^2+c^2) + 2t(xa-yb+cz) + (x^2-y^2+z^2) = 0
- let c1 = sq a - sq b + sq c
- c2 = 2 * (x * a - y * b + c * z)
- c3 = sq x - sq y + sq z
- in case quadratic c1 c2 c3 of
- Nothing -> emptyIList
- Just (t1, t2) ->
- -- If either intersection strikes the middle, then the other
- -- can only be off by rounding error, so we make a tangent
- -- strike using the "good" value.
- -- If the intersections straddle the origin, then it's
- -- an exit/entry pair, otherwise it's an entry/exit pair.
- let y1 = y + t1 * b
- y2 = y + t2 * b
- in if y1 `near` 0 then entryexit (g t1) (g t1)
- else if y2 `near` 0 then entryexit (g t2) (g t2)
- else if (y1 < 0) `xor` (y2 < 0) then exitentry (g t1) (g t2)
- else entryexit (g t1) (g t2)
-
- where g t = (t, (Conic origin v1 v2, (ConeSide, p0, texture)))
- where origin = point 0 0 0
- x0 = x + t * a
- y0 = y + t * b
- z0 = z + t * c
- p0 = point x0 y0 z0
- v0 = normalize $ vector x0 (-y0) z0
- (v1, v2) = tangents v0
-
- x = xCoord r
- y = yCoord r
- z = zCoord r
- a = xComponent v
- b = yComponent v
- c = zComponent v
-
- -- beyond me why this isn't defined in the prelude...
- xor False b = b
- xor True b = not b
-
-
--------------------
--- Solving quadratics
--------------------
-
-quadratic :: Double -> Double -> Double -> Maybe (Double, Double)
-quadratic a b c =
- -- Solve the equation ax^2 + bx + c = 0 by using the quadratic formula.
- let d = sq b - 4 * a * c
- d' = if d `near` 0 then 0 else d
- in if d' < 0
- then Nothing -- There are no real roots.
- else
- if a > 0 then Just (((-b) - sqrt d') / (2 * a),
- ((-b) + sqrt d') / (2 * a))
- else Just (((-b) + sqrt d') / (2 * a),
- ((-b) - sqrt d') / (2 * a))
-
--------------------
--- Bounding boxes
--------------------
-
-data MaybeInterval = Interval !Double !Double
- | NoInterval
-
-isInterval (Interval _ _) = True
-isInterval _ = False
-
-intersectWithBox :: Ray -> Box -> Bool
-intersectWithBox (r, v) (B x1 x2 y1 y2 z1 z2)
- = isInterval interval
- where x_interval = intersectRayWithSlab (xCoord r) (xComponent v) (x1, x2)
- y_interval = intersectRayWithSlab (yCoord r) (yComponent v) (y1, y2)
- z_interval = intersectRayWithSlab (zCoord r) (zComponent v) (z1, z2)
- interval = intersectInterval x_interval
- (intersectInterval y_interval z_interval)
-
-intersectInterval :: MaybeInterval -> MaybeInterval -> MaybeInterval
-intersectInterval NoInterval _ = NoInterval
-intersectInterval _ NoInterval = NoInterval
-intersectInterval (Interval a b) (Interval c d)
- | b < c || d < a = NoInterval
- | otherwise = Interval (a `max` c) (b `min` d)
-
-{-# INLINE intersectRayWithSlab #-}
-intersectRayWithSlab :: Double -> Double -> (Double,Double) -> MaybeInterval
-intersectRayWithSlab xCoord alpha (x1, x2)
- | alpha == 0 = if xCoord < x1 || xCoord > x2 then NoInterval else infInterval
- | alpha > 0 = Interval a b
- | otherwise = Interval b a
- where a = (x1 - xCoord) / alpha
- b = (x2 - xCoord) / alpha
-
-infInterval = Interval (-inf) inf
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/Interval.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/Interval.hs
deleted file mode 100644
index a4d313f66e..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/Interval.hs
+++ /dev/null
@@ -1,121 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
-module Interval
- ( IList
- , Intersection
- , emptyIList, openIList
- , mkEntry, mkExit
- , entryexit, exitentry
- , mapI
- , unionIntervals, intersectIntervals, differenceIntervals
- , complementIntervals
- ) where
-
-import Geometry
-
--- The result of a ray trace is represented as a list of surface
--- intersections. Each intersection is a point along the ray with
--- a flag indicating whether this intersection is an entry or an
--- exit from the solid. Each intersection also carries unspecified
--- surface data for use by the illumination model.
-
--- Just the list of intersections isn't enough, however. An empty
--- list can denote either a trace that is always within the solid
--- or never in the solid. To dissambiguate, an extra flag is kept
--- that indicates whether we are starting inside or outside of the
--- solid. As a convenience, we also keep an additional flag that
--- indicates whether the last intersection ends inside or outside.
-
-type IList a = (Bool, [Intersection a], Bool)
-type Intersection a = (Double, Bool, a)
-
-emptyIList = (False, [], False)
-openIList = (True, [], True)
-
-mapI f (b1, is, b2) = (b1, map f is, b2)
-
-isEntry (_, entry, _) = entry
-isExit (_, entry, _) = not entry
-
-mkEntry (t, a) = (t, True, a)
-mkExit (t, a) = (t, False, a)
-
-entryexit w1 w2 = (False, [mkEntry w1, mkExit w2], False)
-exitentry w1 w2 = (True, [mkExit w1, mkEntry w2], True)
-arrange w1@(t1, _) w2@(t2, _) | t1 < t2 = entryexit w1 w2
- | otherwise = entryexit w2 w1
-
-
-cmpI :: Intersection a -> Intersection a -> Ordering
-cmpI (i, _, _) (j, _, _)
- | i `near` j = EQ
- | i < j = LT
- | otherwise = GT
-
-bad (b1, [], b2) = b1 /= b2
-bad (b1, is, b2) = bad' b1 is || b2 /= b3
- where (_, b3, _) = last is
-
-bad' b [] = False
-bad' b ((_, c, _) : is) = b == c || bad' c is
-
-unionIntervals :: IList a -> IList a -> IList a
-unionIntervals (isStartOpen, is, isEndOpen) (jsStartOpen, js, jsEndOpen)
- = (isStartOpen || jsStartOpen, uniIntervals is js, isEndOpen || jsEndOpen)
- where uniIntervals is [] | jsEndOpen = []
- | otherwise = is
- uniIntervals [] js | isEndOpen = []
- | otherwise = js
- uniIntervals is@(i : is') js@(j : js')
- = case cmpI i j of
- EQ -> if isEntry i == isEntry j then i : uniIntervals is' js'
- else uniIntervals is' js'
- LT -> if isEntry j then i : uniIntervals is' js
- else uniIntervals is' js
- GT -> if isEntry i then j : uniIntervals is js'
- else uniIntervals is js'
-
-intersectIntervals :: IList a -> IList a -> IList a
-intersectIntervals is js
- = complementIntervals (unionIntervals is' js')
- where is' = complementIntervals is
- js' = complementIntervals js
-
-differenceIntervals :: IList a -> IList a -> IList a
-differenceIntervals is js
- = complementIntervals (unionIntervals is' js)
- where is' = complementIntervals is
-
-complementIntervals :: IList a -> IList a
-complementIntervals (o1, is, o2)
- = (not o1, [ (i, not isentry, a) | (i, isentry, a) <- is ], not o2)
-
--- tests...
-
-{-
-mkIn, mkOut :: Double -> Intersection a
-mkIn x = (x, True, undefined)
-mkOut x = (x, False, undefined)
-
-i1 = (False, [ mkIn 2, mkOut 7 ], False)
-i1' = (True, [ mkOut 2, mkIn 7 ], True)
-i2 = (False, [ mkIn 1, mkOut 3, mkIn 4, mkOut 5, mkIn 6, mkOut 8 ], False)
-
-t1 = unionIntervals i1 i2
-t2 = intersectIntervals i1 i2
-t3 = intersectIntervals i2 i1
-t4 = complementIntervals i1
-t5 = intersectIntervals i2 i1'
-t6 = differenceIntervals i2 i1
-t7 = differenceIntervals i2 i2
-
-sh (o1,is,o2) =
- do if o1 then putStr "..." else return ()
- putStr $ foldr1 (++) (map si is)
- if o2 then putStr "..." else return ()
-si (i, True, _, _) = "<" ++ show i
-si (i, False, _, _) = " " ++ show i ++ ">"
--}
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/Main.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/Main.hs
deleted file mode 100644
index 4ef9fe3e95..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/Main.hs
+++ /dev/null
@@ -1,17 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
--- Modified to read sample input directly from a file.
-
-module Main where
-
-import System
-
-import Parse
-import Eval
-
-main = do { str <- readFile "galois.gml"
- ; mainEval (rayParse str)
- }
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/Makefile b/testsuite/tests/ghc-regress/programs/galois_raytrace/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/Misc.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/Misc.hs
deleted file mode 100644
index 104bd06af1..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/Misc.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
-module Misc where
-
-import Debug.Trace
-
-debug s v = trace (s ++" : "++ show v ++ "\n") v
--- debug s v = v
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/Parse.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/Parse.hs
deleted file mode 100644
index 931655c16e..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/Parse.hs
+++ /dev/null
@@ -1,137 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
-module Parse where
-
-import Char
-import Text.ParserCombinators.Parsec hiding (token)
-
-import Data
-
-
-program :: Parser Code
-program =
- do { whiteSpace
- ; ts <- tokenList
- ; eof
- ; return ts
- }
-
-tokenList :: Parser Code
-tokenList = many token <?> "list of tokens"
-
-token :: Parser GMLToken
-token =
- do { ts <- braces tokenList ; return (TBody ts) }
- <|> do { ts <- brackets tokenList ; return (TArray ts) }
- <|> (do { s <- gmlString ; return (TString s) } <?> "string")
- <|> (do { t <- pident False ; return t } <?> "identifier")
- <|> (do { char '/' -- No whitespace after slash
- ; t <- pident True ; return t } <?> "binding identifier")
- <|> (do { n <- number ; return n } <?> "number")
-
-pident :: Bool -> Parser GMLToken
-pident rebind =
- do { id <- ident
- ; case (lookup id opTable) of
- Nothing -> if rebind then return (TBind id) else return (TId id)
- Just t -> if rebind then error ("Attempted rebinding of identifier " ++ id) else return t
- }
-
-ident :: Parser String
-ident = lexeme $
- do { l <- letter
- ; ls <- many (satisfy (\x -> isAlphaNum x || x == '-' || x == '_'))
- ; return (l:ls)
- }
-
-gmlString :: Parser String
-gmlString = lexeme $ between (char '"') (char '"') (many (satisfy (\x -> isPrint x && x /= '"')))
-
--- Tests for numbers
--- Hugs breaks on big exponents (> ~40)
-test_number = "1234 -1234 1 -0 0" ++
- " 1234.5678 -1234.5678 1234.5678e12 1234.5678e-12 -1234.5678e-12" ++
- " -1234.5678e12 -1234.5678E-12 -1234.5678E12" ++
- " 1234e11 1234E33 -1234e33 1234e-33" ++
- " 123e 123.4e 123ee 123.4ee 123E 123.4E 123EE 123.4EE"
-
-
--- Always int or real
-number :: Parser GMLToken
-number = lexeme $
- do { s <- optSign
- ; n <- decimal
- ; do { string "."
- ; m <- decimal
- ; e <- option "" exponent'
- ; return (TReal (read (s ++ n ++ "." ++ m ++ e))) -- FIXME: Handle error conditions
- }
- <|> do { e <- exponent'
- ; return (TReal (read (s ++ n ++ ".0" ++ e)))
- }
- <|> do { return (TInt (read (s ++ n))) }
- }
-
-exponent' :: Parser String
-exponent' = try $
- do { e <- oneOf "eE"
- ; s <- optSign
- ; n <- decimal
- ; return (e:s ++ n)
- }
-
-decimal = many1 digit
-
-optSign :: Parser String
-optSign = option "" (string "-")
-
-
-------------------------------------------------------
--- Library for tokenizing.
-
-braces p = between (symbol "{") (symbol "}") p
-brackets p = between (symbol "[") (symbol "]") p
-
-symbol name = lexeme (string name)
-
-lexeme p = do{ x <- p; whiteSpace; return x }
-
-whiteSpace = skipMany (simpleSpace <|> oneLineComment <?> "")
- where simpleSpace = skipMany1 (oneOf " \t\n\r\v")
- oneLineComment =
- do{ string "%"
- ; skipMany (noneOf "\n\r\v")
- ; return ()
- }
-
-
-------------------------------------------------------------------------------
-
-rayParse :: String -> Code
-rayParse is = case (parse program "<stdin>" is) of
- Left err -> error (show err)
- Right x -> x
-
-rayParseF :: String -> IO Code
-rayParseF file =
- do { r <- parseFromFile program file
- ; case r of
- Left err -> error (show err)
- Right x -> return x
- }
-
-run :: String -> IO ()
-run is = case (parse program "" is) of
- Left err -> print err
- Right x -> print x
-
-runF :: IO ()
-runF =
- do { r <- parseFromFile program "simple.gml"
- ; case r of
- Left err -> print err
- Right x -> print x
- }
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/Pixmap.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/Pixmap.hs
deleted file mode 100644
index 11d20f0df2..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/Pixmap.hs
+++ /dev/null
@@ -1,64 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
-module Pixmap where
-
-import Char
-import IO hiding (try)
-import Parsec
-
-readPPM f
- = do h <- openFile f ReadMode
- s <- hGetContents h
- case (parse parsePPM f s) of
- Left err -> error (show err)
- Right x -> return x
-
-writePPM f ppm
- = do h <- openFile f WriteMode
- let s = showPPM (length (head ppm)) (length ppm) ppm
- hPutStr h s
-
--- parsing
-
-parsePPM
- = do string "P6"
- whiteSpace
- width <- number
- whiteSpace
- height <- number
- whiteSpace
- colormax <- number
- whiteSpace
- cs <- getInput
- return (chop width (chopColors cs))
-
-chopColors [] = []
-chopColors (a:b:c:ds) = (ord a, ord b, ord c) : chopColors ds
-
-chop n [] = []
-chop n xs = h : chop n t
- where (h, t) = splitAt n xs
-
-number
- = do ds <- many1 digit
- return (read ds :: Int)
-
-whiteSpace
- = skipMany (simpleSpace <|> oneLineComment <?> "")
- where simpleSpace = skipMany1 (oneOf " \t\n\r\v")
- oneLineComment =
- do char '#'
- skipMany (noneOf "\n\r\v")
- return ()
-
--- printing
-
-showPPM :: Int -> Int -> [[(Int,Int,Int)]] -> String
-showPPM wid ht pss
- = header ++ concat [[chr r, chr g, chr b] | ps <- pss, (r, g, b) <-ps]
- where
- header = "P6\n#Galois\n" ++ show wid ++ " " ++ show ht ++ "\n255\n"
-showPPM _ _ _ = error "incorrect length of bitmap string"
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/Primitives.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/Primitives.hs
deleted file mode 100644
index 2f21654055..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/Primitives.hs
+++ /dev/null
@@ -1,24 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
-module Primitives where
-
-rad2deg :: Double -> Double
-rad2deg r = r * 180 / pi
-
-deg2rad :: Double -> Double
-deg2rad d = d * pi / 180
-
-addi :: Int -> Int -> Int
-addi = (+)
-
-addf :: Double -> Double -> Double
-addf = (+)
-
-acosD :: Double -> Double
-acosD x = acos x * 180 / pi
-
-asinD :: Double -> Double
-asinD x = asin x * 180 / pi
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/RayTrace.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/RayTrace.hs
deleted file mode 100644
index cb15388e2c..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/RayTrace.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
-module RayTrace(module Illumination, module Surface) where
-
-import Illumination
-import Surface
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/Surface.hs b/testsuite/tests/ghc-regress/programs/galois_raytrace/Surface.hs
deleted file mode 100644
index 832f0fcae2..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/Surface.hs
+++ /dev/null
@@ -1,115 +0,0 @@
--- Copyright (c) 2000 Galois Connections, Inc.
--- All rights reserved. This software is distributed as
--- free software under the license in the file "LICENSE",
--- which is included in the distribution.
-
-module Surface
- ( SurfaceFn (..)
- , Properties
- , sfun, sconst
- , prop
- , matte, shiny
- , chgColor
- , surface
- ) where
-
-import Geometry
-import CSG
-import Misc
-
--- the surface gets passed face then u then v.
-data SurfaceFn c v = SFun (Int -> Double -> Double -> Properties c v)
- | SConst (Properties c v)
-
-sfun :: (Int -> Double -> Double -> Properties c v) -> SurfaceFn c v
-sfun = SFun
-sconst :: Properties c v -> SurfaceFn c v
-sconst = SConst
-
-type Properties c v = (c, v, v, v)
-
-prop c d s p = (c, d, s, p)
-
-matte = (white, 1.0, 0.0, 1.0)
-shiny = (white, 0.0, 1.0, 1.0)
-
-chgColor :: c -> Properties d v -> Properties c v
-chgColor c (_, d, s, p) = (c, d, s, p)
-
-instance (Show c, Show v) => Show (SurfaceFn c v) where
- show (SFun _) = "Surface function"
- -- show (SConst p) = "Surface constant: " ++ show p
- show (SConst p) = "Surface constant"
-
-evalSurface :: SurfaceFn Color Double -> Int -> Double -> Double -> Properties Color Double
-evalSurface (SConst p) = \_ _ _ -> p
-evalSurface (SFun f) = f
-
--- calculate surface properties, given the type of
--- surface, and intersection point in object coordinates
-
--- surface :: Surface SurfaceFn -> (Int, Point) -> (Vector, Properties)
-
-surface (Planar _ v0 v1) (n, p0, fn)
- = (norm, evalSurface fn n' u v)
- where norm = normalize $ cross v0 v1
- (n', u, v) = planarUV n p0
-
-surface (Spherical _ v0 v1) (_, p0, fn)
- = (norm, evalSurface fn 0 u v)
- where x = xCoord p0
- y = yCoord p0
- z = zCoord p0
- k = sqrt (1 - sq y)
- theta = adjustRadian (atan2 (x / k) (z / k))
- -- correct so that the image grows left-to-right
- -- instead of right-to-left
- u = 1.0 - clampf (theta / (2 * pi))
- v = clampf ((y + 1) / 2)
- norm = normalize $ cross v0 v1
-
--- ZZ ignore the (incorrect) surface model, and estimate the normal
--- from the intersection in object space
-surface (Cylindrical _ v0 v1) (_, p0, fn)
- = (norm, evalSurface fn 0 u v)
- where x = xCoord p0
- y = yCoord p0
- z = zCoord p0
- u = clampf $ adjustRadian (atan2 x z) / (2 * pi)
- v = y
- norm = normalize $ cross v0 v1
-
--- ZZ ignore the (incorrect) surface model, and estimate the normal
--- from the intersection in object space
-surface (Conic _ v0 v1) (_, p0, fn)
- = (norm, evalSurface fn 0 u v)
- where x = xCoord p0
- y = yCoord p0
- z = zCoord p0
- u = clampf $ adjustRadian (atan2 (x / y) (z / y)) / (2 * pi)
- v = y
- norm = normalize $ cross v0 v1
-
-planarUV face p0
- = case face of
- PlaneFace -> (0, x, z)
-
- CubeFront -> (0, x, y)
- CubeBack -> (1, x, y)
- CubeLeft -> (2, z, y)
- CubeRight -> (3, z, y)
- CubeTop -> (4, x, z)
- CubeBottom -> (5, x, z)
-
- CylinderTop -> (1, (x + 1) / 2, (z + 1) / 2)
- CylinderBottom -> (2, (x + 1) / 2, (z + 1) / 2)
-
- ConeBase -> (1, (x + 1) / 2, (z + 1) / 2)
- where x = xCoord p0
- y = yCoord p0
- z = zCoord p0
-
--- misc
-
-adjustRadian :: Radian -> Radian
-adjustRadian r = if r > 0 then r else r + 2 * pi
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/galois.gml b/testsuite/tests/ghc-regress/programs/galois_raytrace/galois.gml
deleted file mode 100644
index 5029d57620..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/galois.gml
+++ /dev/null
@@ -1,147 +0,0 @@
-
-[ [97 95 73 50 89 97 99 99 99 99 99 99 99 99 99 98 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 98 99 99 99 99 99 98 99 99 98 97 99 99 99 99 99 99 99 99 99 99 97 97 96 96 96 96 96 96 99 99 99]
- [88 96 66 53 52 86 99 99 99 99 99 99 99 99 99 99 99 99 99 98 99 99 99 99 99 99 99 99 99 99 98 96 98 99 99 99 99 99 99 99 99 97 98 99 99 99 99 99 99 99 99 99 96 96 96 98 97 96 96 96 97 97 96]
- [89 92 79 50 54 45 91 98 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 98 98 99 98 96 98 98 98 98 97 98 99 99 99 99 99 99 99 99 99 99 99 99 99 97 96 96 97 99 99 96 96 98 98 97 97]
- [88 91 96 81 40 35 39 91 95 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 98 97 97 98 99 98 99 99 96 95 95 95 96 97 99 99 98 97 99 99 97 98 99 99 98 96 96 96 94 96 98 99 96 96 96 97 95 96]
- [83 92 91 48 54 33 62 64 98 99 99 99 99 99 99 99 97 98 99 99 99 99 99 99 99 98 98 99 99 99 99 99 99 98 97 97 98 99 97 99 99 99 99 99 99 99 99 99 99 99 96 97 98 96 96 97 99 98 96 95 96 96 96]
- [91 93 64 78 94 75 57 50 81 97 99 99 99 99 99 98 94 96 99 99 99 99 99 99 99 97 98 99 99 99 98 98 99 98 99 98 99 99 98 99 99 99 99 99 99 99 99 99 99 99 97 99 98 96 91 96 97 98 98 96 96 96 99]
- [95 63 85 94 84 95 72 61 44 84 96 98 99 99 99 99 98 98 98 99 99 99 99 99 99 97 96 98 99 99 97 96 98 99 99 97 98 99 98 97 99 99 99 99 99 99 99 99 99 99 97 99 99 96 93 98 96 97 96 96 96 96 95]
- [63 80 88 96 96 88 90 52 64 52 95 98 99 99 99 99 99 99 97 98 99 99 99 97 97 99 98 97 97 97 99 96 98 99 99 97 98 99 99 98 98 98 99 99 99 99 99 99 99 99 98 98 99 96 96 96 94 97 98 99 96 92 95]
- [92 84 90 92 91 88 89 75 50 58 64 96 99 99 99 99 99 99 99 99 99 99 99 98 99 99 98 99 99 98 99 98 99 99 99 99 99 99 99 99 98 98 99 99 99 96 99 98 99 99 99 97 96 97 96 96 92 96 99 98 95 94 95]
- [91 80 85 85 92 96 93 87 81 49 66 88 99 99 99 99 99 99 99 99 99 99 99 98 99 99 96 98 99 99 99 99 99 98 99 99 99 98 99 99 99 99 99 99 99 98 99 98 99 99 98 97 98 96 96 96 93 96 99 98 96 97 97]
- [70 90 96 96 95 95 97 93 60 73 64 67 93 97 99 99 99 99 99 99 99 99 99 98 97 97 98 99 99 99 99 99 98 94 97 98 99 98 99 99 99 99 99 99 99 99 98 98 98 97 98 99 99 96 96 96 96 96 99 97 96 96 95]
- [93 93 97 97 94 88 85 89 90 57 72 43 82 97 99 99 99 99 99 99 99 99 99 99 98 96 97 99 99 99 99 99 99 96 96 96 98 99 99 98 99 97 98 99 99 98 95 81 88 84 98 98 95 96 96 95 96 96 98 95 94 94 92]
- [87 96 91 94 96 97 98 94 75 66 76 60 67 83 99 99 99 99 99 99 99 99 99 99 99 98 98 99 99 99 99 99 99 97 97 97 95 96 97 95 96 76 70 66 73 83 92 60 88 58 88 95 95 95 96 94 95 96 98 96 97 97 97]
- [90 96 86 84 89 85 93 92 96 96 94 84 56 85 98 98 99 99 99 99 99 99 99 99 99 99 99 99 99 99 99 98 99 97 56 40 57 71 69 66 78 73 84 55 34 39 39 41 44 46 31 61 90 98 97 92 94 98 99 97 98 98 98]
- [93 91 94 89 66 81 86 94 89 87 97 82 84 65 84 82 87 89 97 96 97 99 99 99 99 99 99 99 99 99 99 97 96 40 4 15 9 9 6 2 7 14 23 9 8 8 10 3 3 8 13 12 17 42 90 93 86 93 96 97 96 96 96]
- [85 82 82 76 91 90 86 83 84 86 54 37 26 49 31 20 13 43 40 55 80 95 98 98 99 99 99 99 99 98 99 97 66 10 3 4 12 19 4 4 7 18 7 4 11 11 6 11 24 11 12 8 18 9 30 85 93 90 98 99 96 93 96]
- [77 68 78 66 72 66 79 92 73 57 57 73 69 39 73 68 70 57 22 15 17 21 50 83 93 97 98 99 99 97 94 66 12 0 0 0 3 4 6 21 7 3 5 2 3 14 17 7 4 6 28 39 39 24 20 53 95 80 98 99 98 96 97]
- [69 75 86 82 89 86 64 51 66 93 93 80 90 92 89 87 92 94 68 34 24 13 17 6 20 55 91 98 98 95 66 10 18 4 3 3 1 3 12 10 9 11 17 3 15 14 17 23 15 26 25 25 21 43 21 10 65 62 97 98 99 98 96]
- [95 94 94 68 45 48 41 69 84 72 80 94 78 78 94 96 88 93 95 94 83 67 35 13 28 38 15 40 87 80 17 7 4 7 6 9 37 20 19 19 22 9 5 7 11 13 26 14 29 27 41 35 44 19 20 16 43 70 96 96 97 99 99]
- [93 96 88 54 57 57 75 74 70 79 94 96 94 97 97 88 88 96 83 97 97 72 65 75 46 21 17 9 28 29 19 22 4 9 8 5 24 34 17 19 7 8 25 16 9 5 8 12 15 32 54 43 30 14 18 11 45 62 96 96 96 97 98]
- [97 91 56 59 44 70 63 78 88 82 73 82 96 97 78 94 94 96 99 99 98 91 54 21 4 4 3 11 14 35 14 17 7 26 36 21 11 35 42 24 3 9 17 13 9 20 9 21 20 45 28 35 42 19 38 14 36 67 98 98 97 97 96]
- [80 42 56 39 41 71 74 62 54 57 62 68 96 87 92 95 93 97 98 98 67 21 7 4 5 19 22 25 10 8 24 7 6 26 42 43 38 42 32 13 36 60 81 88 67 62 37 63 28 15 26 44 32 30 25 38 62 70 73 78 87 95 97]
- [33 60 39 44 80 73 40 59 58 55 70 71 90 91 86 97 98 98 92 43 8 9 2 6 42 65 50 45 27 27 24 9 13 37 66 66 88 80 60 72 92 90 96 98 94 84 43 43 18 31 34 35 19 53 28 46 31 23 49 56 40 78 96]
- [74 32 63 76 67 52 85 93 81 74 85 83 65 80 88 96 98 68 30 4 2 2 2 24 82 56 40 25 44 44 30 52 70 83 87 91 90 73 69 51 86 97 99 99 97 92 44 39 28 26 26 22 49 23 36 67 37 17 23 27 39 54 91]
- [44 62 77 88 81 94 95 94 55 78 57 42 77 79 90 92 39 7 3 9 1 4 19 68 57 39 49 54 62 53 74 92 88 97 99 99 90 64 82 53 84 99 99 99 97 99 87 76 52 39 48 37 35 26 51 32 8 6 19 6 42 78 84]
- [61 82 82 81 96 90 94 66 64 77 65 81 96 97 81 20 2 5 9 10 21 23 61 67 55 48 53 61 48 87 97 96 98 98 98 96 69 50 85 60 65 98 99 99 98 97 94 62 45 50 57 54 21 11 16 11 6 11 21 6 26 71 75]
- [93 77 71 97 90 93 51 85 65 77 94 96 94 77 15 1 0 0 8 9 8 53 73 61 64 59 59 53 87 98 98 98 96 94 98 75 37 34 84 51 37 97 98 99 99 97 57 5 5 4 5 4 7 3 18 4 6 15 9 4 8 64 76]
- [96 82 93 79 95 82 81 79 85 96 91 74 44 11 12 9 2 0 5 5 24 69 55 63 84 82 75 78 92 98 99 97 95 91 89 33 38 41 70 55 30 94 98 99 98 90 11 8 4 6 3 12 41 2 3 1 6 6 6 6 16 30 58]
- [89 66 92 84 96 98 97 92 96 75 45 29 9 38 6 10 3 10 1 8 69 67 64 70 85 87 93 94 97 99 99 99 94 94 70 44 23 60 78 55 28 98 99 99 99 78 6 9 16 15 5 2 8 4 7 1 18 13 18 16 4 23 66]
- [48 79 85 82 90 97 96 95 64 20 25 26 27 12 5 8 6 7 6 42 74 64 49 80 94 96 98 99 99 99 99 98 94 96 71 50 7 55 92 31 49 98 99 99 98 62 7 10 13 8 12 11 9 3 5 4 16 9 11 9 13 44 68]
- [93 72 87 92 96 98 95 62 38 9 23 64 5 6 12 32 7 9 15 70 69 54 75 97 96 97 99 99 99 99 99 98 98 96 71 79 62 66 69 20 41 98 99 99 98 63 9 29 38 33 28 17 17 40 10 9 18 10 22 10 8 39 74]
- [93 69 84 88 95 93 72 41 17 31 69 54 35 6 6 26 18 36 39 68 77 82 95 98 98 97 99 98 99 99 99 99 99 97 91 89 92 63 31 11 44 98 99 99 98 77 19 8 13 22 30 28 35 14 18 21 15 7 37 46 23 53 91]
- [77 85 92 96 88 65 24 23 58 63 44 35 24 17 9 24 18 21 43 54 87 95 97 98 98 97 99 97 96 98 99 99 99 99 97 89 64 47 42 16 68 99 99 99 99 94 31 17 37 25 20 51 13 7 8 7 6 34 40 39 65 63 94]
- [58 83 97 92 90 42 34 66 76 38 42 35 22 12 10 51 8 33 54 80 98 96 94 90 56 88 94 95 70 68 98 98 98 97 96 94 89 66 30 48 97 99 99 99 98 98 61 13 24 10 20 19 18 6 15 10 11 25 43 27 63 53 92]
- [87 71 66 73 79 65 69 44 74 47 44 38 18 15 24 29 9 38 67 93 98 96 79 53 46 96 95 88 23 61 87 95 95 95 87 79 56 35 46 89 99 99 99 99 99 98 67 23 13 10 21 49 31 21 26 16 17 36 46 40 46 67 96]
- [96 80 47 69 60 77 59 22 29 74 61 50 56 41 34 27 12 48 74 96 99 97 56 40 23 95 96 63 39 77 85 82 77 75 69 68 71 77 90 97 99 99 99 99 99 98 66 29 44 17 7 23 23 18 24 27 16 33 67 18 30 87 96]
- [97 96 92 70 45 52 21 22 30 18 38 74 82 25 24 21 12 35 74 96 99 93 31 57 33 95 94 35 17 53 50 48 77 89 93 96 96 98 95 97 99 99 99 99 99 99 72 7 16 28 22 31 14 10 20 23 16 13 39 25 54 95 92]
- [90 64 52 70 92 83 73 49 25 8 36 40 44 25 39 28 42 26 72 96 98 96 28 41 43 95 88 18 8 75 92 89 91 95 98 93 75 61 94 97 99 99 99 99 99 98 82 13 12 20 34 25 9 23 73 55 45 19 21 15 93 95 96]
- [22 38 82 96 93 95 93 81 89 51 45 46 26 36 28 24 36 15 31 94 98 95 55 44 30 80 93 34 19 87 88 89 83 94 94 79 30 16 33 90 97 99 99 99 98 98 74 26 9 32 38 21 14 54 74 41 46 46 18 29 91 92 96]
- [79 92 98 98 98 95 86 82 85 91 94 81 47 28 13 16 47 7 6 69 93 95 92 70 40 75 95 83 44 42 43 83 94 96 81 61 26 26 7 32 85 98 99 99 98 95 62 38 8 13 20 30 23 62 42 31 3 11 11 59 94 97 97]
- [96 96 97 98 98 85 82 94 93 88 89 96 94 92 59 40 19 12 3 10 37 84 90 94 79 60 93 67 75 65 68 94 97 96 66 40 9 11 48 4 35 93 98 99 97 62 50 36 4 3 15 53 33 63 28 6 2 15 56 72 97 97 95]
- [98 94 97 95 86 94 91 89 90 95 95 96 95 93 98 88 75 58 34 29 7 21 54 83 84 89 75 79 85 94 94 95 98 82 43 25 6 21 60 24 15 89 97 99 70 66 47 48 2 0 3 22 21 7 4 1 6 55 83 96 98 95 93]
- [93 96 96 91 60 65 73 87 93 96 95 91 91 88 94 97 97 97 90 76 74 25 2 19 37 59 72 71 83 91 87 90 92 95 67 47 69 37 51 45 3 76 98 98 46 83 71 21 3 4 2 19 13 2 0 7 60 89 97 99 98 92 90]
- [90 88 92 95 97 95 95 93 87 88 82 86 95 93 92 91 97 96 49 73 58 58 24 6 10 58 77 49 56 84 82 89 87 94 87 46 71 37 47 67 9 54 98 98 56 50 58 13 14 18 0 10 20 4 2 31 96 96 99 99 99 96 95]
- [78 55 84 95 97 89 73 71 89 92 91 89 90 90 83 82 93 93 68 54 41 27 24 49 85 96 97 89 72 70 48 70 76 91 95 92 43 25 40 87 27 69 97 96 75 33 13 12 10 5 2 14 6 3 15 86 99 97 99 99 97 96 97]
- [43 61 66 70 93 79 86 94 89 84 80 84 90 96 90 92 94 92 81 37 34 70 94 96 99 98 99 98 96 95 85 77 57 62 63 59 55 50 52 77 33 63 91 71 18 6 4 5 4 4 4 12 4 15 77 98 99 99 99 98 95 95 96]
- [77 82 75 56 62 67 86 85 84 89 92 90 80 77 52 61 56 59 70 89 98 98 99 99 99 99 99 99 99 98 98 98 92 92 91 69 61 47 28 22 4 9 14 7 4 3 7 11 4 9 4 4 22 79 97 96 97 99 98 96 93 95 96]
- [97 96 93 97 94 86 69 64 73 59 71 71 71 64 87 94 95 96 99 99 99 99 99 99 99 97 99 99 99 99 99 99 98 96 96 96 96 95 96 93 77 35 11 4 10 2 7 6 2 1 18 59 97 97 99 97 97 99 99 97 95 95 95]
- [96 97 98 94 97 95 89 75 65 85 89 93 97 98 99 98 98 99 99 99 99 99 99 97 97 99 98 99 99 97 96 96 95 94 95 97 96 96 96 97 98 93 75 45 19 4 2 4 18 49 90 98 99 99 99 95 96 98 96 96 96 95 96]
- [96 98 99 97 96 95 78 59 78 97 98 98 99 99 99 99 99 99 99 99 99 99 99 98 98 99 97 97 98 96 92 91 92 95 96 98 98 95 96 97 99 98 96 97 93 82 80 87 98 97 98 99 99 98 97 96 96 98 96 96 96 97 96]
- [95 84 92 97 95 94 50 80 95 98 99 99 99 99 99 97 96 99 98 97 98 99 99 97 97 99 97 97 96 96 90 82 89 92 97 94 94 94 93 96 99 99 98 99 97 99 98 99 99 97 97 97 98 98 96 97 96 96 96 96 96 98 96]
- [97 90 92 98 92 52 39 93 98 99 99 99 99 99 98 95 95 98 98 96 97 99 99 97 97 99 99 98 98 95 93 89 87 92 94 88 90 90 88 94 96 97 98 98 97 99 99 99 99 97 97 96 95 96 95 96 96 97 98 98 99 98 96]
- [96 94 90 95 69 43 75 97 99 99 99 99 99 99 97 96 94 94 95 96 99 99 97 94 95 98 99 97 95 95 98 95 87 93 89 89 87 88 93 94 90 94 96 96 98 98 99 98 99 98 96 97 97 95 93 95 96 98 99 99 99 98 99]
- [97 81 85 68 51 53 96 97 99 99 99 99 99 99 99 97 94 95 95 96 96 98 98 97 95 94 95 95 84 90 96 95 93 95 94 88 79 88 92 97 95 95 95 96 98 99 97 97 99 99 99 98 95 94 96 98 97 99 98 98 98 99 99]
- [81 86 70 56 71 72 97 99 99 99 99 99 99 99 99 99 97 98 97 96 96 96 98 98 95 94 96 96 92 94 92 94 95 94 93 91 91 93 95 97 92 87 93 95 98 99 95 95 99 98 98 98 94 88 95 95 96 98 96 97 97 96 98]
- [67 62 30 43 90 73 95 98 98 96 98 98 97 98 95 98 95 95 96 95 98 94 95 96 94 95 96 95 95 96 90 94 96 96 96 92 91 92 94 96 97 91 91 95 94 97 95 93 98 96 96 96 97 95 96 93 95 96 96 96 97 95 96]
- [53 35 46 37 71 72 94 97 99 99 98 97 98 98 95 94 96 97 96 96 98 87 92 93 96 95 95 92 93 96 95 93 93 89 94 90 87 89 92 90 95 96 97 90 90 96 95 94 97 97 96 96 96 97 97 94 95 96 96 97 96 97 96]
- [74 88 56 35 91 90 88 94 97 97 95 95 97 98 95 94 96 97 96 96 98 96 95 95 92 88 91 92 92 94 93 94 90 86 88 95 94 93 93 92 97 96 96 94 95 96 96 96 98 99 98 99 98 98 98 97 95 97 98 98 96 94 93]
- [92 93 63 65 92 97 93 95 99 96 89 98 99 98 96 98 96 93 93 95 97 94 91 94 97 94 95 96 93 88 85 90 92 86 90 97 96 96 96 93 94 97 95 96 94 96 99 96 96 96 96 98 98 96 95 95 94 97 96 93 92 95 93]
- [82 94 95 81 92 95 92 97 99 98 94 93 92 97 94 97 97 98 94 90 97 95 92 94 94 90 91 96 92 88 94 94 89 83 90 97 96 96 95 96 97 95 94 97 96 96 97 94 93 93 96 98 94 96 96 92 89 90 94 94 94 92 88]
- [78 85 76 94 97 95 96 97 99 99 98 96 97 97 96 97 97 95 95 96 98 96 96 96 88 86 93 96 94 93 89 88 88 90 90 94 94 97 97 96 96 97 98 98 98 96 92 87 96 96 96 96 96 94 92 93 88 88 93 95 94 90 87]
- [83 88 91 94 97 97 99 98 98 98 98 99 99 98 99 98 99 97 98 97 98 96 96 95 96 94 96 95 95 91 85 90 90 93 94 94 92 94 95 96 98 97 98 98 97 97 97 96 96 96 95 96 94 95 95 94 93 93 94 95 93 88 91]
- [95 90 94 94 98 96 98 99 96 98 97 97 98 98 99 99 96 95 97 97 99 95 96 98 93 96 96 96 93 95 89 93 93 95 96 96 97 97 97 97 99 98 97 96 98 99 99 99 98 93 93 96 96 96 95 94 91 92 90 93 94 96 96]
-] /galois
-
-{ /v /u /face % bind parameters
- { % toIntCoord : float -> int
- 63.0 mulf floor /i % i = floor(3.0*i)
- i 63 eqi { 62 } { i } if % return max(2, i)
- } /toIntCoord
- galois u toIntCoord apply get % val = texture[u][v]
- v toIntCoord apply get
- real 100.0 divf /gal
- gal gal gal point % b/w galois
- 1.0 % kd = 1.0
- 0.0 % ks = 0.0
- 1.0 % n = 1.0
-} /galoisface
-
-
-galoisface cube
--0.5 -0.5 -0.5 translate % center
-2.5 uscale % make it bigger
--25.0 rotatex -25.0 rotatey % rotate
-0.0 -1.0 7.0 translate % move to final position
-
-%galoisface cylinder
-%-0.5 -0.5 -0.5 translate % center
-%1.5 uscale % make it bigger
-%0.0 rotatex 90.0 rotatey % rotate
-%0.0 0.0 5.0 translate % move to final position
-
-%galoisface sphere
-%-0.5 -0.5 -0.5 translate % center
-%1.5 uscale % make it bigger
-%-25.0 rotatex 25.0 rotatey % rotate
-%-3.0 0.0 5.0 translate % move to final position
-
-%union union % join the 3 together
-
-{ /v /u /face
- v 5.0 divf /v
- u 5.0 divf /u
- v floor 2 modi 0 eqi
- { 1.0 }
- { 0.8 }
- if /r
- u floor 2 modi 0 eqi
- { 1.0 }
- { 0.8 }
- if /g
- v frac /v
- u frac /u
- v 0.0 lessf { v 1.0 addf } { v } if /v
- u 0.0 lessf { u 1.0 addf } { u } if /u
- { % toIntCoord : float -> int
- 63.0 mulf floor /i % i = floor(3.0*i)
- i 63 eqi { 62 } { i } if % return max(2, i)
- } /toIntCoord
- galois u toIntCoord apply get % val = texture[u][v]
- v toIntCoord apply get
- real 100.0 divf /gal
- r gal mulf g gal mulf gal point % b/w galois
- 0.0 % kd = 1.0
- 1.0 % ks = 0.0
- 1.0 % n = 1.0
-} plane /p
-
-p 0.0 -3.0 0.0 translate % plane at Y = -3
-
-union
-
-/scene
- % directional light
-1.0 -1.0 0.0 point % direction
-1.0 1.0 1.0 point light /l % directional light
-
-1.0 0.5 0.0 point % ambient light
-[ l ] % lights
-scene % scene to render
-3 % tracing depth
-90.0 % field of view
-300 200
-"galois.ppm" % output file
-render
-
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/galois_raytrace.stdout b/testsuite/tests/ghc-regress/programs/galois_raytrace/galois_raytrace.stdout
deleted file mode 100644
index ca44ff5c4b..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/galois_raytrace.stdout
+++ /dev/null
@@ -1,205 +0,0 @@
-P3
-#Galois
-300 200
-255
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 253 142 255 248 125 255 253 128 255 248 125 255 248 125 255 248 125 255 245 124 255 248 125 255 243 123 255 250 127 255 248 125 255 240 122 255 253 128 255 255 129 255 250 127 255 245 124 208 139 70 255 217 110 255 196 99 254 170 86 255 175 89 255 235 119 255 243 123 255 248 125 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 150 255 248 125 255 250 127 255 255 129 255 255 129 255 250 127 255 243 123 255 238 120 255 248 125 255 248 125 255 253 128 255 240 122 255 232 118 239 160 81 255 181 91 255 173 87 255 181 91 88 59 30 81 54 27 34 23 11 69 46 23 42 28 14 142 95 48 154 103 52 177 119 60 96 64 32 57 38 19 227 152 77 255 248 125 255 255 129 255 255 129 255 248 125 255 250 127 255 248 125 255 255 129 255 253 128 255 250 127 255 248 125 255 238 120 255 243 123 255 248 125 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 153 255 255 160 255 250 127 255 248 125 255 248 125 255 253 128 255 248 125 255 248 125 255 248 125 255 248 125 255 248 125 255 253 128 162 108 55 92 62 31 166 111 56 54 36 18 146 98 49 108 72 36 139 93 47 61 41 20 69 46 23 27 18 9 19 12 6 69 46 23 30 20 10 61 41 20 88 59 30 212 142 72 119 80 40 23 15 7 27 18 9 255 222 112 255 253 128 255 250 127 255 248 125 255 248 125 255 248 125 255 248 125 255 245 124 255 245 124 255 230 116 255 240 122 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 151 255 255 158 255 255 156 255 255 129 255 255 129 255 253 128 255 255 129 255 255 129 255 255 129 255 255 129 255 250 127 224 150 76 119 80 40 50 33 17 108 72 36 96 64 32 208 139 70 108 72 36 131 87 44 100 67 34 220 147 74 19 12 6 19 12 6 42 28 14 108 72 36 196 131 66 189 126 64 119 80 40 96 64 32 115 77 39 204 137 69 73 49 24 54 36 18 15 10 5 255 250 127 255 255 129 255 253 128 255 250 127 255 243 123 255 250 127 255 253 128 255 243 123 255 245 124 255 248 125 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 148 255 255 158 255 255 160 255 255 158 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 245 124 255 238 120 150 100 51 23 15 7 65 43 22 100 67 34 30 20 10 34 23 11 166 111 56 150 100 51 239 160 81 19 12 6 34 23 11 38 25 13 30 20 10 65 43 22 88 59 30 112 75 38 50 33 17 146 98 49 15 10 5 11 7 3 54 36 18 15 10 5 7 5 2 69 46 23 255 255 129 255 255 129 255 255 129 255 253 128 255 253 128 255 248 125 255 248 125 255 240 122 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 155 255 255 155 255 255 160 255 255 156 255 255 158 255 255 129 255 253 128 255 250 127 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 254 170 86 34 23 11 15 10 5 7 5 2 27 18 9 61 41 20 255 227 115 255 253 128 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 253 128 255 255 129 255 255 129 255 255 129 255 255 129 255 253 128 255 250 127 177 119 60 216 144 73 69 46 23 15 10 5 73 49 24 255 250 127 255 255 129 255 255 129 255 250 127 255 248 125 255 248 125 255 248 125 255 250 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 155 255 255 153 255 255 160 255 255 156 255 255 156 255 255 155 255 255 129 255 255 129 255 255 129 255 255 129 255 250 127 255 253 128 255 255 129 255 255 129 255 253 128 255 245 124 7 5 2 27 18 9 34 23 11 84 56 28 27 18 9 139 93 47 255 238 120 255 217 110 251 168 85 142 95 48 108 72 36 189 126 64 169 113 57 255 175 89 255 255 129 255 255 129 255 255 129 255 250 127 255 240 122 255 230 116 208 139 70 243 162 82 34 23 11 255 240 122 255 253 128 255 250 127 255 245 124 255 225 114 255 248 125 255 250 127 255 245 124 255 250 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 153 255 255 158 255 255 156 255 255 161 255 255 161 255 255 158 255 255 129 255 255 129 255 250 127 255 245 124 255 255 129 255 253 128 255 253 128 255 255 129 255 255 129 255 253 128 220 147 74 34 23 11 46 31 15 3 2 1 142 95 48 131 87 44 162 108 55 255 206 104 247 165 83 193 129 65 158 106 53 231 155 78 212 142 72 243 162 82 181 121 61 135 90 45 255 199 101 235 157 80 61 41 20 42 28 14 81 54 27 142 95 48 96 64 32 181 121 61 255 248 125 255 245 124 255 227 115 255 240 122 255 245 124 255 238 120 255 240 122 255 245 124 255 245 124 255 250 127 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 156 255 255 155 255 255 156 255 255 158 255 255 161 255 255 153 255 255 156 255 255 129 255 255 129 255 248 125 255 253 128 255 253 128 255 255 129 255 255 129 255 253 128 255 243 123 255 250 127 255 250 127 154 103 52 0 0 0 15 10 5 27 18 9 100 67 34 100 67 34 142 95 48 255 250 127 255 253 128 255 230 116 255 181 91 255 183 93 255 235 119 255 250 127 255 225 114 255 178 90 255 253 128 255 243 123 254 170 86 166 111 56 255 225 114 255 245 124 255 235 119 255 248 125 255 248 125 255 250 127 255 230 116 255 240 122 255 248 125 255 227 115 255 232 118 255 232 118 255 248 125 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 151 255 255 156 255 255 160 255 255 156 255 255 145 121 84 47 255 194 109 255 255 148 255 255 129 255 253 128 255 253 128 255 255 129 255 253 128 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 243 123 254 170 86 65 43 22 54 36 18 92 62 31 92 62 31 255 191 97 255 250 127 255 255 129 255 255 129 255 253 128 255 255 129 255 255 129 255 245 124 255 212 107 255 230 116 255 230 116 255 243 123 255 245 124 255 230 116 255 181 91 255 253 128 255 255 129 255 235 119 255 212 107 255 245 124 255 245 124 255 243 123 255 240 122 255 232 118 255 227 115 255 232 118 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 151 255 255 160 255 255 160 255 255 158 25 17 9 75 52 29 167 116 65 163 113 63 255 255 129 255 255 129 255 253 128 255 250 127 255 255 129 255 253 128 255 250 127 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 253 128 34 23 11 42 28 14 96 64 32 96 64 32 208 139 70 235 157 80 255 201 102 255 243 123 255 255 129 255 253 128 255 248 125 88 59 30 150 100 51 30 20 10 73 49 24 169 113 57 255 219 111 255 214 108 255 186 94 255 248 125 255 255 129 255 255 129 255 248 125 255 253 128 255 217 110 255 245 124 255 240 122 255 240 122 255 238 120 255 245 124 255 240 122 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 255 255 156 255 255 160 255 255 161 62 43 24 4 2 1 79 55 31 179 125 70 33 23 13 255 221 124 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 250 127 255 255 129 255 250 127 255 253 128 255 255 129 255 255 129 255 255 129 255 240 122 77 51 26 177 119 60 15 10 5 19 12 6 216 144 73 150 100 51 185 124 62 255 212 107 255 225 114 255 248 125 255 250 127 255 250 127 255 248 125 255 245 124 255 245 124 255 206 104 255 194 98 255 230 116 227 152 77 255 248 125 255 253 128 255 250 127 255 255 129 255 255 129 255 255 129 255 243 123 255 243 123 255 245 124 255 227 115 255 232 118 255 222 112 255 248 125 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-49 61 61 139 139 174 142 142 178 126 158 158 81 81 102 48 60 60 138 138 173 141 141 176 125 156 156 81 81 101 48 60 60 137 137 171 139 139 174 124 155 155 80 80 100 47 59 59 136 136 170 138 138 173 123 153 153 79 79 99 47 59 59 134 134 168 137 137 171 121 152 152 78 78 98 46 58 58 133 133 167 136 136 170 120 150 150 78 78 97 46 58 58 132 132 165 134 134 168 119 149 149 77 77 96 45 57 57 130 130 163 133 133 166 118 147 147 76 76 95 45 56 56 129 129 161 131 131 164 117 146 146 75 75 94 45 56 56 128 128 160 130 130 163 115 144 144 74 74 93 44 55 55 126 126 158 129 129 161 114 143 143 73 73 92 44 55 55 125 125 156 127 127 159 113 141 141 73 73 91 43 54 54 123 123 154 126 126 157 111 139 139 72 72 90 43 53 53 122 122 153 124 124 155 110 138 138 71 71 89 42 53 53 120 120 151 123 123 153 109 136 136 70 70 88 41 52 52 119 119 149 121 121 152 107 134 134 69 69 87 41 51 51 118 118 147 120 120 150 106 133 133 68 68 86 40 51 51 116 116 145 118 118 148 105 131 131 67 67 84 40 50 50 115 115 143 117 117 146 103 129 129 67 67 83 39 49 49 113 113 142 115 115 144 102 128 128 66 66 82 39 49 49 112 112 140 114 114 142 101 126 126 65 65 81 38 48 48 110 110 138 112 112 140 99 124 124 64 64 80 38 48 48 109 109 136 111 111 139 98 123 123 63 63 79 37 47 47 107 107 134 109 109 137 97 121 121 62 62 78 37 46 46 106 106 133 255 255 156 255 255 161 255 255 161 255 255 160 25 17 9 117 81 45 188 130 73 104 72 40 37 26 14 255 186 104 255 255 148 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 253 128 193 129 65 135 90 45 251 168 85 208 139 70 7 5 2 7 5 2 73 49 24 235 157 80 212 142 72 247 165 83 255 194 98 255 245 124 255 250 127 255 204 103 216 144 73 119 80 40 212 142 72 255 238 120 208 139 70 7 5 2 92 62 31 255 243 123 255 255 129 255 255 129 255 255 129 255 255 129 255 250 127 255 253 128 255 245 124 255 245 124 255 235 119 255 248 125 255 248 125 54 54 68 32 40 40 92 92 115 88 110 110 83 104 104 54 54 67 32 40 40 91 91 114 87 109 109 83 103 103 53 53 67 31 39 39 91 91 113 87 108 108 82 102 102 53 53 66 31 39 39 90 90 112 86 108 108 81 102 102 52 52 65 31 39 39 89 89 111 85 107 107 80 101 101 52 52 65 31 38 38 88 88 111 85 106 106 80 100 100 51 51 64 30 38 38 88 88 110 84 105 105 79 99 99 51 51 64 30 38 38 87 87 109 83 104 104 79 98 98 51 51 64 30 38 38 86 86 108 83 104 104 78 98 98 50 50 63 30 37 37 86 86 107 82 103 103 78 97 97 50 50 63 30 37 37 85 85 107 82 102 102 77 97 97 50 50 62 29 37 37 85 85 106 81 102 102 77 96 96 49 49 62 29 37 37 84 84 106 81 101 101 76 96 96 49 49 62 29 37 37 84 84 105 80 101 101 76 95 95 49 49 61 29 36 36 83 83 104 80 100 100 76 95 95 49 49 61 29 36 36 83 83 104 80 100 100 75 94 94 48 48 61 29 36 36 83 83 104 79 99 99 75 94 94 48 48 60 29 36 36 82 82 103 79 99 99 75 93 93 48 48 60 28 36 36 82 82 103 79 98 98 74 93 93 48 48 60 28 36 36 82 82 102 78 98 98 74 93 93 48 48 60 28 35 35 81 81 102 78 98 98 74 92 92 48 48 60 28 35 35 81 81 102 78 97 97 74 92 92 47 47 59 28 35 35 81 81 101 78 97 97 73 92 92 47 47 59 28 35 35 81 81 101 77 97 97 73 91 91 47 47 59
-127 159 159 49 61 61 142 142 178 82 82 102 139 139 174 126 158 158 48 60 60 141 141 177 81 81 101 138 138 172 125 156 156 48 60 60 140 140 175 80 80 100 137 137 171 124 155 155 47 59 59 139 139 174 80 80 100 135 135 169 123 153 153 47 59 59 137 137 172 79 79 99 134 134 168 121 152 152 47 58 58 136 136 170 78 78 98 133 133 166 120 150 150 46 58 58 135 135 169 77 77 97 132 132 165 119 149 149 46 57 57 133 133 167 76 76 96 130 130 163 118 147 147 45 57 57 132 132 165 76 76 95 129 129 161 117 146 146 45 56 56 131 131 163 75 75 94 127 127 159 115 144 144 44 55 55 129 129 162 74 74 93 126 126 158 114 143 143 44 55 55 128 128 160 73 73 92 125 125 156 113 141 141 43 54 54 126 126 158 72 72 91 123 123 154 111 139 139 43 53 53 125 125 156 71 71 89 122 122 152 110 138 138 42 53 53 123 123 154 71 71 88 120 120 150 109 136 136 42 52 52 122 122 152 70 70 87 119 119 149 107 134 134 41 52 52 120 120 151 69 69 86 117 117 147 106 133 133 41 51 51 119 119 149 68 68 85 116 116 145 105 131 131 40 50 50 117 117 147 67 67 84 114 114 143 103 129 129 40 50 50 116 116 145 66 66 83 113 113 141 102 128 128 39 49 49 114 114 143 65 65 82 112 112 140 101 126 126 39 48 48 113 113 141 65 65 81 110 110 138 100 125 125 38 48 48 111 111 139 64 64 80 109 109 136 98 123 123 38 47 47 110 110 138 63 63 79 107 107 134 97 121 121 37 46 46 255 255 158 255 255 155 255 255 160 205 142 80 58 40 22 255 183 102 83 58 32 25 17 9 46 32 17 108 75 42 255 226 127 255 255 129 255 253 128 255 255 129 255 255 129 255 255 129 255 255 129 255 253 128 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 248 125 212 142 72 131 87 44 255 243 123 255 250 127 255 255 129 166 111 56 15 10 5 34 23 11 34 23 11 19 12 6 30 20 10 255 181 91 255 175 89 208 139 70 255 240 122 255 248 125 255 248 125 255 243 123 255 178 90 112 75 38 255 196 99 255 188 95 142 95 48 255 230 116 255 255 129 255 255 129 255 248 125 255 248 125 255 248 125 255 245 124 255 248 125 255 245 124 255 248 125 255 250 127 84 106 106 32 40 40 89 111 111 54 54 68 92 92 116 84 105 105 32 40 40 88 110 110 54 54 67 92 92 115 83 104 104 32 40 40 87 109 109 53 53 67 91 91 114 82 103 103 31 39 39 87 108 108 53 53 66 90 90 113 81 102 102 31 39 39 86 107 107 52 52 66 89 89 112 81 101 101 31 39 39 85 107 107 52 52 65 89 89 111 80 100 100 31 38 38 84 106 106 52 52 65 88 88 110 80 100 100 30 38 38 84 105 105 51 51 64 87 87 109 79 99 99 30 38 38 83 104 104 51 51 64 87 87 108 78 98 98 30 38 38 83 104 104 50 50 63 86 86 108 78 98 98 30 37 37 82 103 103 50 50 63 86 86 107 78 97 97 30 37 37 82 102 102 50 50 62 85 85 107 77 96 96 29 37 37 81 102 102 50 50 62 85 85 106 77 96 96 29 37 37 81 101 101 49 49 62 84 84 105 76 95 95 29 37 37 80 101 101 49 49 61 84 84 105 76 95 95 29 36 36 80 100 100 49 49 61 83 83 104 76 95 95 29 36 36 80 100 100 49 49 61 83 83 104 75 94 94 29 36 36 79 99 99 48 48 61 83 83 103 75 94 94 29 36 36 79 99 99 48 48 60 82 82 103 75 93 93 28 36 36 79 99 99 48 48 60 82 82 103 74 93 93 28 36 36 78 98 98 48 48 60 82 82 102 74 93 93 28 35 35 78 98 98 48 48 60 81 81 102 74 92 92 28 35 35 78 98 98 48 48 60 81 81 102 74 92 92 28 35 35 78 97 97 47 47 59 81 81 101
-142 178 178 49 61 61 49 61 61 138 173 173 140 140 175 40 40 50 10 10 12 139 139 174 141 177 177 35 44 44 28 35 35 25 32 32 140 140 176 17 17 21 39 39 49 5 5 7 135 135 169 124 155 155 4 5 5 2 3 3 137 171 171 137 137 171 79 79 99 20 20 26 133 133 167 136 170 170 47 58 58 47 58 58 132 165 165 133 133 167 38 38 48 9 9 12 133 133 166 135 169 169 34 42 42 27 34 34 24 30 30 134 134 168 16 16 20 37 37 47 5 5 6 129 129 161 118 147 147 4 5 5 2 3 3 130 163 163 130 130 163 75 75 94 19 19 24 127 127 158 129 161 161 44 56 56 44 55 55 126 157 157 127 127 158 36 36 45 9 9 11 126 126 157 128 160 160 32 40 40 25 32 32 23 29 29 127 127 159 15 15 19 35 35 44 5 5 6 122 122 153 111 139 139 3 4 4 2 3 3 123 154 154 123 123 154 71 71 89 18 18 23 120 120 150 122 152 152 42 52 52 42 52 52 118 148 148 119 119 149 34 34 43 8 8 10 119 119 148 121 151 151 30 38 38 24 30 30 21 27 27 120 120 150 14 14 18 33 33 42 4 4 6 115 115 144 105 131 131 3 4 4 2 2 2 116 145 145 116 116 145 67 67 84 17 17 22 112 112 141 115 143 143 39 49 49 39 49 49 111 139 139 112 112 140 32 32 40 8 8 10 111 111 139 113 142 142 28 35 35 22 28 28 20 25 25 112 112 140 13 13 17 31 31 39 4 4 5 108 108 135 98 123 123 3 4 4 2 2 2 109 136 136 109 109 136 255 255 158 255 255 147 255 255 160 16 11 6 0 0 0 125 87 49 41 29 16 29 20 11 54 37 21 87 61 34 167 116 65 255 255 161 255 255 129 255 255 129 255 255 129 255 255 129 255 248 125 255 253 128 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 225 114 50 33 17 255 238 120 255 227 115 255 227 115 255 243 123 255 253 128 255 253 128 150 100 51 0 0 0 7 5 2 11 7 3 27 18 9 69 46 23 69 46 23 34 23 11 46 31 15 46 31 15 139 93 47 181 121 61 73 49 24 255 250 127 255 250 127 255 243 123 216 144 73 255 245 124 255 255 129 255 248 125 255 243 123 255 243 123 255 245 124 255 248 125 255 248 125 255 250 127 255 255 129 255 248 125 93 93 117 95 119 119 24 30 30 19 24 24 17 21 21 89 111 111 11 11 14 26 26 33 3 3 4 91 91 114 83 104 104 2 3 3 1 2 2 92 115 115 92 92 115 53 53 67 14 14 17 90 90 112 91 114 114 31 39 39 31 39 39 89 111 111 90 90 112 26 26 32 6 6 8 89 89 112 91 114 114 23 28 28 18 23 23 16 20 20 85 106 106 11 11 13 25 25 32 3 3 4 87 87 109 80 100 100 2 3 3 1 2 2 89 111 111 89 89 111 51 51 64 13 13 16 86 86 108 88 110 110 30 38 38 30 38 38 86 108 108 87 87 109 25 25 31 6 6 7 86 86 108 88 110 110 22 27 27 17 22 22 16 20 20 82 103 103 10 10 13 24 24 31 3 3 4 85 85 106 77 97 97 2 3 3 1 2 2 86 108 108 86 86 107 50 50 62 13 13 16 84 84 105 86 107 107 29 37 37 29 37 37 84 105 105 84 84 106 24 24 30 6 6 7 84 84 105 86 107 107 21 27 27 17 21 21 15 19 19 80 100 100 10 10 13 24 24 30 3 3 4 83 83 103 76 95 95 2 3 3 1 2 2 84 105 105 84 84 105 49 49 61 12 12 16 82 82 103 84 105 105 29 36 36 29 36 36 82 102 102 83 83 103 23 23 29 5 5 7 82 82 103 84 105 105 21 26 26 17 21 21 15 19 19 79 98 98 10 10 12 23 23 29 3 3 4 81 81 101 74 93 93 2 3 3 1 2 2 82 103 103 82 82 103 48 48 60 12 12 15 81 81 101
-102 127 127 138 172 172 82 103 103 139 174 174 143 143 179 138 138 173 141 141 176 110 110 138 132 132 165 129 129 161 141 177 177 17 21 21 135 169 169 129 162 162 135 169 169 126 158 158 139 139 173 5 5 7 132 132 166 132 132 165 125 125 156 126 126 158 138 173 173 5 7 7 137 171 171 136 171 171 121 151 151 137 137 172 136 136 170 8 8 10 136 136 171 120 120 150 130 130 163 134 168 168 135 169 169 95 119 119 129 162 162 77 97 97 130 163 163 134 134 168 130 130 162 132 132 165 103 103 129 123 123 154 121 121 151 132 166 166 16 20 20 126 158 158 121 151 151 126 158 158 118 147 147 129 129 162 5 5 6 124 124 155 123 123 154 116 116 146 117 117 147 129 161 161 5 6 6 127 159 159 127 159 159 112 140 140 128 128 160 126 126 158 7 7 9 127 127 158 111 111 139 121 121 151 125 156 156 125 157 157 88 111 111 120 150 150 72 90 90 121 151 151 124 124 155 120 120 150 122 122 153 96 96 120 114 114 143 111 111 139 122 153 153 14 18 18 117 146 146 112 140 140 116 145 145 109 136 136 119 119 149 4 4 6 114 114 142 114 114 142 107 107 134 108 108 135 119 149 149 4 6 6 117 146 146 117 146 146 103 129 129 117 117 147 116 116 145 7 7 8 116 116 146 102 102 128 111 111 139 114 143 143 115 144 144 81 102 102 110 138 138 66 82 82 111 138 138 114 114 142 110 110 138 112 112 140 88 88 110 105 105 131 102 102 128 112 140 140 13 17 17 107 134 134 102 128 128 106 133 133 99 124 124 109 109 137 255 255 160 255 255 158 255 255 158 29 20 11 58 40 22 83 58 32 96 66 37 75 52 29 75 52 29 25 17 9 255 226 127 255 255 161 255 255 156 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 253 128 255 217 110 255 188 95 255 230 116 255 243 123 255 250 127 255 238 120 255 222 112 255 227 115 255 232 118 57 38 19 42 28 14 146 98 49 23 15 7 23 15 7 65 43 22 57 38 19 158 106 53 96 64 32 139 93 47 108 72 36 255 238 120 255 227 115 255 240 122 255 232 118 255 199 101 247 165 83 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 253 128 255 253 128 255 250 127 255 250 127 255 253 128 89 89 111 87 87 109 95 119 119 11 14 14 92 115 115 87 109 109 91 114 114 85 106 106 93 93 117 17 17 21 89 89 112 89 89 112 84 84 105 85 85 106 93 117 117 3 4 4 92 115 115 92 115 115 82 102 102 87 109 109 92 92 115 5 5 7 92 92 115 81 81 101 86 86 108 91 114 114 92 115 115 65 81 81 88 110 110 70 88 88 88 111 111 91 91 114 88 88 110 90 90 112 70 70 88 84 84 105 82 82 103 90 113 113 10 13 13 87 109 109 82 103 103 86 108 108 80 101 101 89 89 111 16 16 20 85 85 106 85 85 106 80 80 100 81 81 101 89 111 111 3 4 4 88 110 110 88 110 110 78 97 97 83 104 104 87 87 109 5 5 6 88 88 110 77 77 97 82 82 103 87 109 109 88 110 110 62 77 77 84 105 105 67 84 84 84 106 106 87 87 109 84 84 106 86 86 108 67 67 84 81 81 101 79 79 98 87 108 108 10 13 13 84 105 105 79 99 99 83 103 103 77 97 97 85 85 107 15 15 19 82 82 102 81 81 102 77 77 96 78 78 97 86 107 107 3 4 4 85 106 106 84 106 106 75 94 94 80 100 100 84 84 105 5 5 6 85 85 106 75 75 93 80 80 100 84 105 105 85 106 106 60 75 75 81 102 102 65 81 81 82 103 103 84 84 106 82 82 102 83 83 104 65 65 82 78 78 98 76 76 96 84 105 105 10 12 12 81 102 102 77 96 96 80 101 101 75 94 94 83 83 104 15 15 19 79 79 99 79 79 99
-140 175 175 128 160 160 37 47 47 17 21 21 49 61 61 5 7 7 141 177 177 143 143 178 142 142 178 40 40 50 82 82 102 28 28 35 2 2 3 138 138 173 137 137 171 136 171 171 125 156 156 36 46 46 17 21 21 48 60 60 5 7 7 138 172 172 139 139 174 139 139 174 39 39 49 79 79 99 27 27 34 2 2 3 135 135 168 133 133 166 133 166 166 121 152 152 35 44 44 16 20 20 46 58 58 5 6 6 134 168 168 135 135 169 135 135 169 38 38 47 77 77 97 27 27 33 2 2 3 131 131 164 129 129 162 129 161 161 118 147 147 34 43 43 16 20 20 45 56 56 5 6 6 130 163 163 131 131 164 131 131 164 37 37 46 75 75 94 26 26 32 2 2 3 127 127 158 125 125 156 125 156 156 114 143 143 33 42 42 15 19 19 43 54 54 5 6 6 126 157 157 127 127 159 126 126 158 35 35 44 72 72 90 25 25 31 2 2 3 122 122 153 121 121 151 121 151 151 110 138 138 32 40 40 15 18 18 42 53 53 4 6 6 121 152 152 122 122 153 122 122 153 34 34 43 70 70 87 24 24 30 2 2 3 118 118 148 117 117 146 116 146 146 106 133 133 31 39 39 14 18 18 40 51 51 4 6 6 117 146 146 118 118 148 118 118 147 33 33 41 67 67 84 23 23 29 2 2 2 114 114 142 112 112 141 112 140 140 102 128 128 30 37 37 13 17 17 39 49 49 4 5 5 113 141 141 114 114 142 113 113 142 32 32 40 65 65 81 22 22 28 2 2 2 110 110 137 108 108 135 108 135 135 99 123 123 255 255 158 255 255 148 255 255 160 12 8 4 87 61 34 133 93 52 205 142 80 58 40 22 4 2 1 33 23 13 255 212 119 255 255 158 255 255 151 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 253 128 255 248 125 255 227 115 255 173 87 166 111 56 231 155 78 255 217 110 142 95 48 255 188 95 255 206 104 255 243 123 255 248 125 255 175 89 255 183 93 255 214 108 162 108 55 255 248 125 255 191 97 112 75 38 247 165 83 208 139 70 135 90 45 135 90 45 193 129 65 255 191 97 154 103 52 255 209 106 255 248 125 255 235 119 255 212 107 255 235 119 255 238 120 255 183 93 255 230 116 255 255 129 255 255 129 255 255 129 255 255 129 255 253 128 255 245 124 255 243 123 255 253 128 255 250 127 33 41 41 3 4 4 95 119 119 90 113 113 96 96 120 27 27 33 55 55 68 19 19 24 2 2 3 93 93 116 92 92 115 92 115 115 84 105 105 26 33 33 11 14 14 32 40 40 3 4 4 93 116 116 88 110 110 93 93 117 26 26 33 53 53 67 18 18 23 2 2 3 91 91 113 89 89 112 89 112 112 82 102 102 26 32 32 11 13 13 31 39 39 3 4 4 90 113 113 86 107 107 91 91 114 25 25 32 52 52 65 18 18 23 2 2 3 89 89 111 88 88 110 87 109 109 80 100 100 25 31 31 10 13 13 30 38 38 3 4 4 89 111 111 84 105 105 89 89 112 25 25 31 51 51 64 18 18 22 2 2 3 87 87 109 86 86 107 86 107 107 78 98 98 25 31 31 10 13 13 30 38 38 3 4 4 87 109 109 82 103 103 88 88 110 24 24 31 50 50 63 17 17 22 2 2 3 85 85 107 84 84 106 84 106 106 77 97 97 24 30 30 10 13 13 29 37 37 3 4 4 86 107 107 81 102 102 86 86 108 24 24 30 49 49 62 17 17 21 2 2 3 84 84 105 83 83 104 83 104 104 76 95 95 24 30 30 10 13 13 29 36 36 3 4 4 85 106 106 80 100 100 85 85 107 24 24 30 49 49 61 17 17 21 2 2 3 83 83 104 82 82 103 82 103 103 75 94 94 24 30 30 10 12 12 29 36 36 3 4 4 84 105 105 79 99 99 84 84 106 23 23 29 48 48 60 17 17 21 2 2 3 82 82 103 81 81 102
-150 120 150 181 145 181 173 138 173 180 180 180 116 116 116 176 176 176 112 112 112 81 81 81 110 110 110 171 171 171 176 176 176 176 176 176 178 142 178 172 137 172 168 134 168 130 104 130 162 130 162 78 62 78 169 135 169 158 126 158 175 140 175 173 138 173 175 175 175 134 134 134 165 165 165 165 165 165 73 73 73 155 155 155 160 160 160 172 172 172 170 170 170 172 137 172 124 99 124 138 110 138 112 89 112 75 60 75 77 62 77 137 110 137 169 135 169 160 128 160 169 169 169 109 109 109 158 158 158 96 96 96 38 38 38 60 60 60 153 153 153 166 166 166 149 149 149 166 132 166 110 88 110 95 76 95 116 93 116 41 33 41 63 50 63 135 108 135 163 130 163 156 125 156 162 162 162 105 105 105 158 158 158 101 101 101 73 73 73 99 99 99 154 154 154 158 158 158 158 158 158 159 127 159 154 123 154 151 120 151 117 93 117 145 116 145 70 56 70 151 120 151 141 113 141 156 125 156 154 123 154 156 156 156 119 119 119 147 147 147 147 147 147 65 65 65 138 138 138 143 143 143 153 153 153 151 151 151 152 122 152 110 88 110 122 98 122 99 79 99 67 53 67 68 54 68 121 97 121 150 120 150 142 113 142 149 149 149 96 96 96 139 139 139 85 85 85 34 34 34 53 53 53 135 135 135 147 147 147 131 131 131 146 117 146 97 77 97 83 67 83 102 82 102 36 29 36 55 44 55 119 95 119 143 115 143 137 110 137 143 143 143 92 92 92 139 139 139 88 88 88 64 64 64 87 87 87 135 135 135 139 139 139 138 138 138 255 255 158 255 255 156 255 255 160 16 11 6 255 206 116 37 26 14 87 61 34 71 49 27 12 8 4 255 194 109 255 194 109 255 255 160 255 255 156 255 255 150 255 255 129 255 255 129 255 255 129 255 255 129 255 255 129 255 250 127 200 134 68 224 150 76 189 126 64 255 188 95 220 147 74 254 170 86 255 225 114 255 222 112 220 147 74 255 240 122 255 186 94 255 212 107 220 147 74 212 142 72 255 191 97 247 165 83 251 168 85 255 219 111 255 248 125 146 98 49 65 43 22 224 150 76 255 196 99 112 75 38 115 77 39 96 64 32 255 219 111 255 240 122 255 232 118 255 225 114 255 230 116 255 230 116 255 188 95 251 168 85 255 245 124 255 253 128 255 255 129 255 255 129 255 253 128 255 243 123 255 245 124 255 250 127 255 253 128 121 97 121 120 96 120 121 121 121 92 92 92 114 114 114 114 114 114 51 51 51 107 107 107 111 111 111 119 119 119 118 118 118 119 95 119 86 69 86 96 76 96 77 62 77 52 42 52 53 42 53 95 76 95 117 94 117 111 89 111 117 117 117 75 75 75 110 110 110 67 67 67 27 27 27 42 42 42 106 106 106 116 116 116 104 104 104 115 92 115 77 61 77 66 53 66 81 65 81 29 23 29 44 35 44 95 76 95 114 91 114 109 87 109 114 114 114 73 73 73 111 111 111 71 71 71 51 51 51 69 69 69 108 108 108 112 112 112 112 112 112 110 110 110 109 87 109 107 85 107 83 66 83 103 82 103 49 39 49 107 86 107 100 80 100 111 89 111 110 88 110 111 111 111 85 85 85 105 105 105 105 105 105 47 47 47 99 99 99 103 103 103 110 110 110 109 109 109 110 88 110 80 64 80 89 71 89 72 57 72 48 39 48 50 40 50 88 71 88 109 87 109 104 83 104 109 109 109 70 70 70 102 102 102 62 62 62 25 25 25 39 39 39 100 100 100 108 108 108 97 97 97 108 86 108 72 57 72 62 49 62 76 61 76 27 21 27 41 33 41 89 71 89 108 86 108 103 82 103 107 107 107 69 69 69 105 105 105 67 67 67 48 48 48 66 66 66 103 103 103 106 106 106 106 106 106 104 104 104 103 83 103 101 81 101 78 63 78 98 78 98 47 37 47 102 81 102 95 76 95 106 85 106 105 84 105 106 106 106 81 81 81 100 100 100
-141 176 176 32 40 40 123 154 154 60 75 75 144 181 181 21 27 27 112 140 140 138 172 172 140 176 176 143 143 179 141 141 177 112 112 141 10 10 12 93 93 117 63 63 79 142 142 177 4 4 5 140 140 175 131 131 164 136 136 171 141 176 176 139 174 174 9 12 12 4 5 5 52 65 65 62 77 77 139 174 174 12 15 15 139 173 173 135 169 169 137 171 171 138 138 172 138 138 172 9 9 12 49 49 62 41 41 51 94 94 117 133 133 167 37 37 46 136 136 170 130 130 163 135 135 169 135 169 169 135 168 168 9 11 11 125 156 156 37 47 47 131 164 164 114 143 143 44 55 55 129 161 161 130 162 162 131 131 164 132 132 165 132 132 165 11 11 14 114 114 142 64 64 81 130 130 163 46 46 57 5 5 6 118 118 147 123 123 154 128 160 160 129 161 161 125 156 156 28 35 35 108 136 136 53 66 66 127 159 159 19 24 24 99 123 123 121 152 152 124 155 155 126 126 158 124 124 156 99 99 123 8 8 11 82 82 102 55 55 69 124 124 155 3 3 4 122 122 153 115 115 143 119 119 149 123 154 154 121 152 152 8 10 10 3 4 4 45 57 57 54 67 67 121 151 151 11 13 13 120 151 151 118 147 147 119 148 148 120 120 150 119 119 149 8 8 10 43 43 54 36 36 45 81 81 101 115 115 144 32 32 40 117 117 147 112 112 140 117 117 146 116 146 146 116 145 145 8 10 10 107 134 134 32 40 40 113 141 141 98 123 123 38 47 47 111 138 138 112 140 140 112 112 141 113 113 142 113 113 141 10 10 12 98 98 122 255 255 156 255 255 155 255 255 161 255 206 116 255 192 107 54 37 21 41 29 16 71 49 27 12 8 4 150 104 58 150 104 58 255 255 158 255 255 158 255 255 153 255 255 155 255 255 129 255 255 129 255 253 128 247 165 83 193 129 65 235 157 80 200 134 68 255 194 98 255 225 114 255 240 122 255 230 116 255 238 120 255 222 112 255 222 112 255 204 103 247 165 83 255 194 98 243 162 82 255 191 97 154 103 52 255 219 111 255 243 123 196 131 66 255 209 106 255 250 127 255 245 124 255 186 94 92 62 31 131 87 44 227 152 77 81 54 27 255 188 95 255 245 124 255 219 111 255 243 123 255 245 124 255 230 116 255 204 103 255 222 112 255 245 124 255 245 124 200 134 68 166 111 56 255 186 94 255 188 95 255 186 94 255 250 127 255 245 124 255 250 127 255 248 125 48 48 60 97 97 121 34 34 42 3 3 4 88 88 110 91 91 114 95 119 119 96 120 120 93 116 116 21 26 26 81 101 101 39 49 49 95 119 119 14 18 18 74 92 92 91 114 114 92 116 116 94 94 118 93 93 117 74 74 93 6 6 8 61 61 77 41 41 52 93 93 117 2 2 3 92 92 115 86 86 108 90 90 113 93 116 116 92 115 115 6 8 8 2 3 3 34 43 43 41 51 51 92 115 115 8 10 10 92 115 115 90 112 112 90 113 113 91 91 114 91 91 114 6 6 8 33 33 41 27 27 34 62 62 78 89 89 111 24 24 30 90 90 113 86 86 108 90 90 113 90 113 113 90 112 112 6 7 7 83 104 104 25 31 31 88 110 110 77 96 96 29 37 37 86 108 108 87 109 109 89 111 111 89 89 111 89 89 111 8 8 10 77 77 96 44 44 55 88 88 111 31 31 39 3 3 4 80 80 100 83 83 104 87 109 109 88 110 110 85 106 106 19 24 24 74 93 93 36 45 45 87 109 109 13 16 16 68 85 85 84 105 105 85 107 107 87 87 109 86 86 108 68 68 85 6 6 7 57 57 71 38 38 48 86 86 108 2 2 3 85 85 107 80 80 100 84 84 105 86 108 108 85 107 107 6 7 7 2 3 3 32 40 40 38 47 47 86 107 107 7 9 9 86 107 107 84 105 105 85 106 106 85 85 107 85 85 107 6 6 7 31 31 38 25 25 32 58 58 73 83 83 104 23 23 29 85 85 106
-146 182 182 144 180 180 129 161 161 36 45 45 49 62 62 4 5 5 29 36 36 49 62 62 2 3 3 26 32 32 139 174 174 142 177 177 143 143 179 140 140 175 141 141 176 17 17 21 40 40 50 81 81 102 40 40 50 10 10 12 21 21 26 5 5 7 138 138 172 136 136 170 136 136 170 140 175 175 138 173 173 124 155 155 35 44 44 47 59 59 4 5 5 28 35 35 47 59 59 2 3 3 25 31 31 133 166 166 136 170 170 137 137 171 134 134 167 135 135 169 16 16 20 38 38 48 78 78 97 38 38 47 9 9 11 20 20 25 5 5 6 131 131 164 130 130 162 129 129 162 133 167 167 132 165 165 118 148 148 33 41 41 45 56 56 4 5 5 26 33 33 45 56 56 2 3 3 23 29 29 127 158 158 129 161 161 130 130 163 127 127 159 128 128 160 15 15 19 36 36 45 74 74 92 36 36 45 9 9 11 19 19 24 5 5 6 125 125 156 123 123 154 123 123 153 126 158 158 125 156 156 112 140 140 31 39 39 43 53 53 3 4 4 25 31 31 42 53 53 2 3 3 22 28 28 120 150 150 122 152 152 123 123 154 120 120 150 121 121 151 14 14 18 34 34 43 70 70 87 34 34 42 8 8 10 18 18 22 4 4 6 117 117 147 116 116 145 116 116 145 119 149 149 118 147 147 105 132 132 29 37 37 40 50 50 3 4 4 23 29 29 40 50 50 2 2 2 21 26 26 113 141 141 115 144 144 116 116 145 113 113 141 114 114 143 13 13 17 32 32 40 66 66 82 32 32 40 8 8 10 17 17 21 4 4 5 255 255 158 255 255 151 255 255 158 255 255 148 255 203 114 255 238 134 100 69 39 50 34 19 29 20 11 221 154 86 46 32 17 255 232 130 255 255 161 255 255 156 255 255 150 255 255 161 255 222 112 173 116 59 135 90 45 127 85 43 255 194 98 255 217 110 255 248 125 255 235 119 255 238 120 255 243 123 255 248 125 255 230 116 254 170 86 255 235 119 255 186 94 173 116 59 220 147 74 169 113 57 158 106 53 255 206 104 255 173 87 255 248 125 255 232 118 255 245 124 255 217 110 255 238 120 255 227 115 255 248 125 255 238 120 255 178 90 255 181 91 255 181 91 255 253 128 255 253 128 255 245 124 255 235 119 255 245 124 255 181 91 216 144 73 255 243 123 255 250 127 255 238 120 255 232 118 255 219 111 115 77 39 177 119 60 243 162 82 255 245 124 255 196 99 255 243 123 96 96 120 96 96 121 11 11 14 27 27 34 56 56 70 27 27 34 6 6 8 14 14 18 3 3 4 94 94 118 93 93 116 93 93 116 96 120 120 94 118 118 85 106 106 24 30 30 32 40 40 2 3 3 19 24 24 32 40 40 1 2 2 17 21 21 91 114 114 93 116 116 88 110 110 92 92 115 92 92 116 11 11 14 26 26 33 53 53 67 26 26 33 6 6 8 14 14 17 3 3 4 90 90 113 89 89 112 89 89 112 92 115 115 91 114 114 81 102 102 23 29 29 31 39 39 2 3 3 18 23 23 31 39 39 1 2 2 16 20 20 88 110 110 90 112 112 85 106 106 89 89 111 89 89 112 10 10 13 25 25 32 52 52 65 25 25 31 6 6 7 13 13 17 3 3 4 88 88 110 87 87 108 87 87 108 89 112 112 88 110 110 79 99 99 22 28 28 30 38 38 2 3 3 17 22 22 30 38 38 1 2 2 16 20 20 86 107 107 87 109 109 83 103 103 86 86 108 87 87 109 10 10 13 24 24 31 50 50 63 24 24 31 6 6 7 13 13 16 3 3 4 85 85 107 84 84 106 84 84 106 87 109 109 86 108 108 77 97 97 22 27 27 29 37 37 2 3 3 17 21 21 29 37 37 1 2 2 15 19 19 84 105 105 85 107 107 81 101 101 84 84 106 85 85 107 10 10 13 24 24 30 49 49 62 24 24 30 6 6 7 13 13 16 3 3 4 84 84 105 83 83 104 83 83 104
-157 125 157 181 144 181 79 63 79 154 123 154 182 145 182 178 142 178 174 139 174 172 137 172 181 181 181 180 180 180 180 180 180 180 180 180 50 50 50 76 76 76 152 152 152 177 177 177 59 59 59 142 142 142 178 178 178 176 176 176 170 170 170 173 173 173 176 141 176 176 141 176 176 141 176 176 140 176 35 28 35 74 59 74 113 90 113 173 138 173 40 32 40 138 111 138 149 119 149 169 135 169 166 132 166 160 128 160 162 129 162 172 172 172 171 171 171 171 171 171 34 34 34 8 8 8 94 94 94 165 165 165 78 78 78 68 68 68 17 17 17 165 165 165 161 161 161 156 156 156 162 162 162 167 134 167 163 131 163 165 132 165 156 125 156 6 5 6 92 73 92 157 125 157 76 61 76 49 39 49 61 49 61 164 131 164 160 128 160 158 126 158 144 115 144 162 162 162 162 162 162 160 160 160 161 161 161 6 6 6 92 92 92 137 137 137 90 90 90 69 69 69 59 59 59 159 159 159 155 155 155 150 150 150 140 140 140 157 126 157 157 125 157 153 123 153 156 125 156 72 58 72 129 103 129 133 106 133 153 122 153 67 53 67 131 104 131 154 123 154 150 120 150 147 117 147 145 116 145 152 152 152 152 152 152 152 152 152 151 151 151 42 42 42 64 64 64 127 127 127 148 148 148 49 49 49 119 119 119 149 149 149 147 147 147 142 142 142 145 145 145 147 118 147 147 117 147 147 117 147 146 117 146 29 23 29 61 49 61 94 75 94 143 115 143 33 26 33 115 92 115 123 99 123 141 112 141 137 110 137 133 106 133 134 107 134 255 250 140 255 229 129 255 255 156 112 78 44 255 255 161 255 255 161 71 49 27 33 23 13 238 165 93 79 55 31 75 52 29 255 255 155 255 255 160 255 255 158 255 255 156 255 255 156 193 129 65 204 137 69 255 204 103 255 248 125 255 235 119 247 165 83 255 219 111 255 227 115 255 219 111 255 248 125 255 250 127 255 235 119 255 222 112 255 243 123 255 212 107 255 222 112 255 243 123 255 227 115 216 144 73 162 108 55 231 155 78 239 160 81 255 212 107 255 199 101 255 212 107 254 170 86 255 186 94 255 178 90 255 219 111 255 214 108 255 206 104 255 248 125 247 165 83 146 98 49 255 248 125 255 253 128 255 240 122 255 201 102 166 111 56 255 199 101 255 248 125 255 248 125 255 245 124 255 248 125 255 250 127 255 209 106 204 137 69 255 191 97 255 212 107 221 110 0 232 116 0 121 121 121 118 118 118 120 120 120 115 115 115 122 97 122 122 97 122 121 97 121 24 19 24 51 41 51 78 62 78 119 95 119 28 22 28 96 77 96 103 82 103 117 94 117 115 92 115 111 89 111 112 89 112 119 119 119 119 119 119 119 119 119 24 24 24 5 5 5 65 65 65 114 114 114 54 54 54 47 47 47 11 11 11 115 115 115 112 112 112 108 108 108 113 113 113 116 93 116 114 91 114 115 92 115 109 87 109 4 3 4 64 51 64 110 88 110 53 43 53 35 28 35 43 34 43 115 92 115 112 90 112 111 89 111 102 81 102 114 114 114 114 114 114 113 113 113 114 114 114 4 4 4 65 65 65 97 97 97 64 64 64 49 49 49 42 42 42 113 113 113 110 110 110 107 107 107 100 100 100 112 90 112 112 90 112 110 88 110 112 89 112 52 41 52 92 74 92 96 77 96 110 88 110 48 38 48 94 75 94 111 89 111 109 87 109 106 85 106 105 84 105 111 111 111 111 111 111 110 110 110 110 110 110 31 31 31 46 46 46 93 93 93 109 109 109 36 36 36 87 87 87 110 110 110 108 108 108 105 105 105 107 107 107 103 103 103 109 87 109 109 87 109 109 87 109 22 17 22 46 37 46 70 56 70 108 86 108 25 20 25 86 69 86 93 74 93 106 85 106 104 83 104 100 80 100 101 81 101 108 108 108 108 108 108 108 108 108 21 21 21 5 5 5 60 60 60 104 104 104 50 50 50
-71 89 89 10 12 12 142 177 177 141 177 177 144 180 180 140 175 175 144 180 180 145 145 181 145 145 181 145 145 181 144 144 181 62 62 78 140 140 175 99 99 123 0 0 0 52 52 65 69 69 86 10 10 12 138 138 173 138 138 173 141 141 176 136 136 170 140 140 175 141 177 177 140 175 175 141 176 176 141 176 176 81 101 101 136 170 170 9 12 12 14 17 17 29 37 37 49 61 61 16 21 21 130 163 163 138 173 173 131 164 164 135 169 169 132 165 165 137 137 172 133 133 166 137 137 171 137 137 171 129 129 162 133 133 167 6 6 8 9 9 12 45 45 56 35 35 44 79 79 98 125 125 156 134 134 168 128 128 161 131 131 164 131 131 163 133 166 166 129 161 161 133 166 166 132 165 165 125 157 157 129 161 161 6 8 8 9 11 11 43 54 54 34 43 43 76 95 95 121 151 151 130 162 162 124 155 155 127 158 158 126 158 158 129 129 161 127 127 159 128 128 160 115 115 144 120 120 150 126 126 158 0 0 0 11 11 14 48 48 60 19 19 23 123 123 154 75 75 93 125 125 157 124 124 155 117 117 146 119 119 149 124 155 155 124 155 155 124 155 155 53 67 67 119 149 149 84 105 105 0 0 0 44 55 55 59 74 74 8 10 10 118 147 147 117 147 147 119 149 149 116 145 145 119 149 149 120 120 150 120 120 150 119 119 149 119 119 149 51 51 64 115 115 144 81 81 101 0 0 0 42 42 53 57 57 71 8 8 10 113 113 142 113 113 141 115 115 144 111 111 139 114 114 143 115 144 144 114 142 142 115 144 144 255 255 155 255 255 147 255 255 145 255 255 156 255 253 142 255 255 151 255 255 161 129 90 50 66 46 26 209 145 81 184 128 71 79 55 31 255 247 138 255 255 155 255 255 161 255 255 161 255 255 156 255 255 156 255 250 127 255 227 115 255 230 116 255 227 115 255 214 108 255 245 124 243 162 82 255 238 120 255 235 119 255 181 91 255 240 122 255 225 114 255 232 118 255 240 122 255 199 101 244 122 0 252 126 0 249 124 0 244 122 0 247 123 0 232 116 0 214 107 0 191 95 0 193 96 0 168 84 0 173 86 0 188 94 0 232 116 0 234 117 0 244 122 0 244 122 0 244 122 0 244 122 0 247 123 0 237 118 0 229 114 0 242 121 0 244 122 0 244 122 0 244 122 0 244 122 0 249 124 0 249 124 0 252 126 0 242 121 0 247 123 0 242 121 0 234 117 0 229 114 0 244 122 0 36 45 45 48 60 60 6 8 8 95 119 119 95 119 119 97 121 121 94 117 117 96 121 121 93 117 117 97 97 122 97 97 121 97 97 121 42 42 52 94 94 117 66 66 83 0 0 0 35 35 43 46 46 58 6 6 8 93 93 116 92 92 116 94 94 118 91 91 114 94 94 118 95 119 119 94 117 117 94 118 118 94 118 118 54 68 68 91 114 114 6 8 8 9 11 11 19 24 24 33 41 41 11 14 14 88 110 110 93 116 116 88 110 110 91 114 114 89 111 111 93 93 116 90 90 112 92 92 116 92 92 115 87 87 109 90 90 113 4 4 5 6 6 8 30 30 38 24 24 30 53 53 67 85 85 106 91 91 114 87 87 109 89 89 112 89 89 111 91 114 114 88 110 110 91 113 113 90 113 113 86 107 107 88 111 111 4 5 5 6 7 7 30 37 37 23 29 29 52 66 66 83 104 104 90 112 112 86 107 107 88 110 110 87 109 109 89 89 112 88 88 110 89 89 111 80 80 100 83 83 104 88 88 110 0 0 0 8 8 10 34 34 42 13 13 16 87 87 108 52 52 66 88 88 110 87 87 109 83 83 103 84 84 106 88 110 110 88 110 110 88 110 110 38 47 47 85 106 106 60 75 75 0 0 0 31 39 39 42 53 53 6 7 7 84 106 106 84 106 106 86 108 108 83 104 104 86 108 108 83 104 104 87 87 108 87 87 108 87 87 108 37 37 47 84 84 105 59 59 74 0 0 0
-130 104 130 182 145 182 105 84 105 129 103 129 11 8 11 183 146 183 179 143 179 180 144 180 174 139 174 174 139 174 181 181 181 181 181 181 179 179 179 180 180 180 151 151 151 136 136 136 43 43 43 114 114 114 175 175 175 95 95 95 74 74 74 149 149 149 172 172 172 174 174 174 168 168 168 171 171 171 168 168 168 176 141 176 176 141 176 172 137 172 173 139 173 175 140 175 22 18 22 7 5 7 118 94 118 123 98 123 172 137 172 99 79 99 122 97 122 10 8 10 172 138 172 168 135 168 170 136 170 164 131 164 164 131 164 170 170 170 170 170 170 168 168 168 169 169 169 142 142 142 128 128 128 40 40 40 107 107 107 164 164 164 89 89 89 69 69 69 140 140 140 161 161 161 163 163 163 157 157 157 160 160 160 157 157 157 165 132 165 164 131 164 161 129 161 162 130 162 163 131 163 21 17 21 6 5 6 110 88 110 114 91 114 160 128 160 93 74 93 114 91 114 9 7 9 160 128 160 157 125 157 158 126 158 153 122 153 152 122 152 159 159 159 158 158 158 156 156 156 157 157 157 132 132 132 119 119 119 38 38 38 99 99 99 153 153 153 83 83 83 64 64 64 130 130 130 150 150 150 151 151 151 146 146 146 149 149 149 145 145 145 152 122 152 152 122 152 149 119 149 150 120 150 151 121 151 19 15 19 6 4 6 101 81 101 106 84 106 148 118 148 86 68 86 105 84 105 9 7 9 148 118 148 145 116 145 146 116 146 141 113 141 141 112 141 146 146 146 146 146 146 144 144 144 145 145 145 121 121 121 109 109 109 255 255 155 255 255 153 255 255 151 255 255 156 196 136 76 255 247 138 255 255 161 255 255 160 25 17 9 217 151 84 108 75 42 184 128 71 125 87 49 255 255 153 255 255 156 255 255 156 255 255 158 255 255 158 252 126 0 244 122 0 247 123 0 244 122 0 244 122 0 252 126 0 242 121 0 242 121 0 247 123 0 242 121 0 239 119 0 247 123 0 249 124 0 237 118 0 244 122 0 249 124 0 252 126 0 247 123 0 242 121 0 198 99 0 137 68 0 198 99 0 181 90 0 76 38 0 58 29 0 112 56 0 135 67 0 160 80 0 135 67 0 170 85 0 242 121 0 242 121 0 234 117 0 247 123 0 249 124 0 249 124 0 247 123 0 242 121 0 242 121 0 244 122 0 244 122 0 252 126 0 252 126 0 247 123 0 247 123 0 244 122 0 234 117 0 239 119 0 237 118 0 239 119 0 104 104 104 94 94 94 30 30 30 76 76 76 121 121 121 66 66 66 51 51 51 103 103 103 60 60 60 120 120 120 116 116 116 118 118 118 116 116 116 120 120 120 121 97 121 119 95 119 120 96 120 121 96 121 7 5 7 4 3 4 81 65 81 85 68 85 118 95 118 48 38 48 84 67 84 7 5 7 119 95 119 116 93 116 116 93 116 114 91 114 113 91 113 118 118 118 118 118 118 117 117 117 118 118 118 98 98 98 89 89 89 28 28 28 72 72 72 114 114 114 62 62 62 48 48 48 97 97 97 57 57 57 114 114 114 110 110 110 112 112 112 110 110 110 114 114 114 115 92 115 113 90 113 114 91 114 115 92 115 6 5 6 4 3 4 77 62 77 81 64 81 113 90 113 46 36 46 80 64 80 6 5 6 114 91 114 111 89 111 111 89 111 109 87 109 108 87 108 113 113 113 113 113 113 112 112 112 113 113 113 94 94 94 85 85 85 27 27 27 69 69 69 110 110 110 60 60 60 46 46 46 94 94 94 55 55 55 109 109 109 106 106 106 108 108 108 105 105 105 110 110 110 111 89 111 109 87 109 110 88 110 111 88 111 6 5 6 4 3 4 74 59 74 78 62 78 109 87 109 44 35 44 78 62 78 6 5 6 110 88 110 107 86 107 107 86 107 105 84 105 105 84 105 109 109 109 109 109 109 108 108 108 109 109 109 91 91 91 82 82 82 26 26 26 67 67 67 106 106 106 58 58 58
-141 177 177 5 7 7 28 35 35 107 133 133 89 111 111 45 57 57 23 29 29 143 179 179 132 166 166 66 82 82 113 141 141 142 178 178 137 172 172 140 175 175 136 170 170 140 175 175 144 144 180 144 144 180 143 143 179 137 137 172 5 5 7 27 27 34 18 18 23 86 86 108 79 79 98 15 15 19 139 139 174 128 128 161 34 34 42 124 124 155 138 138 172 133 133 167 137 137 172 131 131 164 135 135 169 139 174 174 139 174 174 139 174 174 137 172 172 2 3 3 26 33 33 18 22 22 73 92 92 76 95 95 15 19 19 123 154 154 134 167 167 33 41 41 119 149 149 128 160 160 131 164 164 133 166 166 125 157 157 131 163 163 134 134 168 134 134 168 133 133 166 134 134 167 2 2 3 13 13 16 32 32 40 71 71 89 73 73 92 26 26 33 64 64 80 129 129 161 5 5 6 88 88 111 123 123 154 126 126 158 127 127 159 118 118 148 126 126 157 129 162 162 129 161 161 127 159 159 128 161 161 85 107 107 27 34 34 31 38 38 65 82 82 65 82 82 25 32 32 61 76 76 124 155 155 40 51 51 85 106 106 27 34 34 123 153 153 122 153 153 113 142 142 120 151 151 124 124 155 124 124 155 121 121 151 123 123 154 82 82 102 26 26 32 23 23 29 63 63 78 62 62 78 38 38 47 19 19 24 118 118 148 39 39 48 54 54 68 26 26 33 117 117 147 113 113 142 116 116 145 115 115 144 116 116 145 118 148 148 116 145 145 118 147 147 113 141 141 4 5 5 22 28 28 85 106 106 70 88 88 36 45 45 255 255 155 255 255 156 255 253 142 255 255 156 154 107 60 133 93 52 255 255 161 255 255 161 255 255 147 255 221 124 62 43 24 104 72 40 175 122 68 255 255 156 255 255 150 255 255 158 255 255 156 255 255 158 252 126 0 247 123 0 247 123 0 242 121 0 244 122 0 244 122 0 244 122 0 242 121 0 244 122 0 244 122 0 239 119 0 249 124 0 244 122 0 244 122 0 249 124 0 252 126 0 247 123 0 247 123 0 221 110 0 102 51 0 99 49 0 66 33 0 20 10 0 40 20 0 10 5 0 20 10 0 58 29 0 165 82 0 68 34 0 45 22 0 63 31 0 38 19 0 150 75 0 183 91 0 244 122 0 252 126 0 252 126 0 244 122 0 247 123 0 244 122 0 244 122 0 249 124 0 249 124 0 247 123 0 244 122 0 249 124 0 237 118 0 237 118 0 239 119 0 100 125 125 100 125 125 99 124 124 100 125 125 66 83 83 21 26 26 24 30 30 51 64 64 51 63 63 20 25 25 47 59 59 96 120 120 31 39 39 66 83 83 21 27 27 96 120 120 95 119 119 88 111 111 94 118 118 95 119 119 97 97 121 95 95 118 96 96 121 64 64 80 20 20 25 18 18 23 49 49 62 49 49 61 30 30 37 15 15 19 93 93 117 30 30 38 43 43 54 21 21 26 93 93 116 90 90 112 92 92 115 91 91 114 92 92 115 94 118 118 92 115 115 94 117 117 90 112 112 3 4 4 18 22 22 68 85 85 56 70 70 29 36 36 15 18 18 91 114 114 84 105 105 42 52 52 72 90 90 90 113 113 87 109 109 89 112 112 86 108 108 89 111 111 92 92 115 92 92 115 91 91 114 88 88 110 3 3 4 17 17 21 12 12 15 55 55 69 50 50 63 10 10 12 89 89 111 82 82 103 22 22 27 79 79 99 88 88 111 86 86 107 88 88 110 85 85 106 87 87 109 90 112 112 90 112 112 90 112 112 89 111 111 1 2 2 17 21 21 11 14 14 48 60 60 49 62 62 9 12 12 80 100 100 87 109 109 21 27 27 78 98 98 83 104 104 86 107 107 87 108 108 82 103 103 86 107 107 88 88 110 88 88 110 87 87 109 88 88 110 1 1 2 8 8 11 21 21 26 47 47 59 48 48 61 17 17 22 42 42 53 86 86 107 3 3 4 59 59 74 82 82 103 85 85 106
-179 179 179 183 183 183 173 173 173 162 162 162 178 143 178 178 142 178 176 141 176 176 140 176 181 145 181 179 143 179 180 144 180 177 141 177 138 110 138 121 97 121 167 133 167 175 140 175 175 140 175 173 138 173 173 138 173 174 139 174 174 139 174 179 143 179 173 139 173 168 134 168 164 131 164 173 173 173 172 172 172 170 170 170 170 170 170 175 175 175 173 173 173 174 174 174 171 171 171 133 133 133 117 117 117 161 161 161 169 169 169 169 169 169 167 167 167 167 167 167 168 168 168 168 168 168 173 173 173 167 167 167 162 162 162 158 158 158 168 134 168 171 137 171 164 131 164 158 127 158 165 132 165 165 132 165 164 131 164 156 124 156 130 104 130 116 92 116 160 128 160 163 130 163 162 130 162 157 126 157 164 131 164 160 128 160 161 129 161 166 133 166 161 128 161 147 117 147 160 128 160 161 161 161 164 164 164 157 157 157 152 152 152 158 158 158 158 158 158 158 158 158 149 149 149 124 124 124 111 111 111 153 153 153 156 156 156 156 156 156 150 150 150 156 156 156 153 153 153 154 154 154 159 159 159 154 154 154 140 140 140 158 126 158 152 122 152 151 120 151 153 123 153 153 122 153 151 121 151 156 124 156 152 122 152 131 105 131 90 72 90 115 92 115 143 114 143 143 114 143 150 120 150 139 111 139 148 118 148 147 118 147 147 118 147 150 120 150 142 113 142 132 106 132 150 150 150 145 145 145 144 144 144 146 146 146 146 146 146 144 144 144 148 148 148 145 145 145 125 125 125 86 86 86 110 110 110 136 136 136 136 136 136 255 250 140 255 255 155 255 255 145 255 255 150 255 200 112 138 96 53 255 255 161 255 255 161 255 255 160 184 128 71 83 58 32 104 72 40 71 49 27 255 255 156 255 255 156 255 255 158 255 255 156 255 255 156 252 126 0 244 122 0 244 122 0 242 121 0 244 122 0 244 122 0 252 126 0 249 124 0 249 124 0 247 123 0 244 122 0 247 123 0 247 123 0 252 126 0 252 126 0 249 124 0 244 122 0 249 124 0 198 99 0 142 71 0 15 7 0 15 7 0 22 11 0 15 7 0 28 14 0 56 28 0 94 47 0 102 51 0 117 58 0 170 85 0 99 49 0 45 22 0 28 14 0 142 71 0 247 123 0 252 126 0 252 126 0 249 124 0 252 126 0 244 122 0 244 122 0 249 124 0 252 126 0 249 124 0 244 122 0 247 123 0 229 114 0 224 112 0 234 117 0 126 101 126 122 98 122 112 89 112 122 97 122 123 123 123 125 125 125 120 120 120 116 116 116 121 121 121 120 120 120 120 120 120 114 114 114 95 95 95 84 84 84 117 117 117 119 119 119 119 119 119 115 115 115 120 120 120 117 117 117 118 118 118 122 122 122 118 118 118 108 108 108 117 117 117 117 94 117 116 93 116 118 94 118 118 94 118 116 93 116 120 96 120 117 94 117 101 81 101 70 56 70 89 71 89 111 88 111 110 88 110 116 93 116 108 86 108 115 92 115 115 92 115 114 91 114 117 93 117 111 88 111 103 82 103 117 117 117 114 114 114 112 112 112 115 115 115 114 114 114 113 113 113 116 116 116 114 114 114 98 98 98 68 68 68 86 86 86 108 108 108 107 107 107 113 113 113 105 105 105 112 112 112 112 112 112 111 111 111 114 114 114 108 108 108 101 101 101 111 89 111 111 89 111 109 87 109 109 87 109 113 90 113 111 89 111 112 90 112 110 88 110 86 69 86 75 60 75 104 83 104 110 88 110 109 87 109 108 86 108 108 86 108 109 87 109 109 87 109 112 90 112 109 87 109 105 84 105 103 82 103 109 109 109 108 108 108 107 107 107 107 107 107 110 110 110 109 109 109 110 110 110 108 108 108 84 84 84 74 74 74 102 102 102 107 107 107 107 107 107 106 106 106 106 106 106 107 107 107 107 107 107 110 110 110 107 107 107 103 103 103 101 101 101 108 86 108 110 88 110 105 84 105 102 81 102
-50 40 50 163 130 163 185 148 185 185 148 185 127 101 127 98 79 98 78 62 78 169 135 169 130 104 130 183 146 183 177 142 177 166 133 166 177 141 177 162 129 162 167 134 167 181 181 181 181 181 181 177 177 177 181 181 181 180 180 180 178 178 178 145 145 145 14 14 14 79 79 79 177 177 177 179 179 179 177 177 177 138 138 138 135 135 135 116 116 116 150 150 150 175 175 175 171 171 171 169 169 169 167 167 167 167 167 167 165 165 165 175 140 175 175 140 175 174 139 174 172 138 172 174 139 174 173 139 173 170 136 170 50 40 50 47 37 47 151 121 151 172 137 172 172 137 172 117 94 117 91 73 91 72 58 72 156 125 156 120 96 120 170 136 170 164 131 164 154 123 154 163 131 163 150 120 150 154 123 154 168 168 168 167 167 167 164 164 164 167 167 167 166 166 166 164 164 164 134 134 134 13 13 13 73 73 73 163 163 163 164 164 164 162 162 162 127 127 127 124 124 124 107 107 107 138 138 138 161 161 161 157 157 157 155 155 155 153 153 153 153 153 153 151 151 151 160 128 160 160 128 160 159 127 159 157 126 157 159 127 159 158 127 158 155 124 155 46 37 46 43 34 43 138 110 138 157 125 157 156 125 156 107 85 107 83 66 83 66 52 66 142 114 142 109 87 109 154 123 154 149 119 149 140 112 140 149 119 149 136 109 136 140 112 140 152 152 152 152 152 152 148 148 148 151 151 151 151 151 151 149 149 149 121 121 121 12 12 12 66 66 66 148 148 148 149 149 149 147 147 147 115 115 115 112 112 112 97 97 97 125 125 125 255 255 143 255 255 155 255 255 147 255 255 150 179 125 70 255 177 99 255 255 145 255 255 160 255 255 161 255 255 150 87 61 34 25 17 9 255 177 99 255 255 161 255 255 156 255 255 156 255 255 156 255 255 156 244 122 0 244 122 0 244 122 0 244 122 0 249 124 0 244 122 0 249 124 0 252 126 0 252 126 0 249 124 0 249 124 0 252 126 0 244 122 0 249 124 0 247 123 0 244 122 0 244 122 0 249 124 0 178 89 0 43 21 0 15 7 0 28 14 0 38 19 0 33 16 0 22 11 0 25 12 0 17 8 0 63 31 0 91 45 0 84 42 0 48 24 0 117 58 0 28 14 0 140 70 0 226 113 0 252 126 0 252 126 0 247 123 0 244 122 0 244 122 0 244 122 0 244 122 0 247 123 0 242 121 0 242 121 0 239 119 0 226 113 0 237 118 0 232 116 0 90 72 90 127 101 127 123 98 123 115 92 115 122 98 122 112 89 112 115 92 115 125 125 125 125 125 125 125 125 125 125 125 125 124 124 124 123 123 123 100 100 100 43 43 43 55 55 55 122 122 122 123 123 123 122 122 122 75 75 75 93 93 93 80 80 80 104 104 104 121 121 121 119 119 119 117 117 117 115 115 115 115 115 115 114 114 114 116 116 116 121 96 121 120 96 120 119 95 119 120 96 120 120 96 120 117 94 117 35 28 35 32 26 32 105 84 105 118 94 118 119 95 119 81 65 81 63 50 63 50 40 50 112 90 112 83 67 83 118 94 118 114 91 114 107 85 107 114 91 114 104 83 104 108 86 108 117 117 117 117 117 117 117 117 117 117 117 117 116 116 116 115 115 115 94 94 94 41 41 41 51 51 51 115 115 115 116 116 116 114 114 114 71 71 71 87 87 87 75 75 75 97 97 97 114 114 114 112 112 112 110 110 110 109 109 109 108 108 108 107 107 107 109 109 109 114 91 114 114 91 114 113 90 113 114 91 114 113 91 113 111 89 111 33 26 33 30 24 30 99 79 99 112 89 112 113 90 113 77 62 77 60 48 60 47 38 47 107 85 107 79 63 79 112 90 112 109 87 109 102 81 102 108 87 108 99 79 99 103 82 103 112 112 112 111 111 111 111 111 111 111 111 111 111 111 111 110 110 110 90 90 90 39 39 39 49 49 49 110 110 110 111 111 111 109 109 109 68 68 68 83 83 83 72 72 72
-182 146 182 182 146 182 99 79 99 153 123 153 155 124 155 164 164 164 164 164 164 177 177 177 169 169 169 173 173 173 172 172 172 142 142 142 172 172 172 61 61 61 81 81 81 177 177 177 88 88 88 141 141 141 176 176 176 164 164 164 175 175 175 164 164 164 78 78 78 174 174 174 172 172 172 176 176 176 96 96 96 166 166 166 149 149 149 174 139 174 158 126 158 170 136 170 165 132 165 166 133 166 160 128 160 137 109 137 165 132 165 142 113 142 78 62 78 164 131 164 84 67 84 136 108 136 153 122 153 158 126 158 138 111 138 163 130 163 75 60 75 169 135 169 165 132 165 168 135 168 116 93 116 159 127 159 135 108 135 167 167 167 151 151 151 156 156 156 158 158 158 120 120 120 154 154 154 131 131 131 162 162 162 136 136 136 125 125 125 157 157 157 81 81 81 157 157 157 146 146 146 163 163 163 132 132 132 155 155 155 130 130 130 161 161 161 159 159 159 159 159 159 111 111 111 122 122 122 128 128 128 159 127 159 146 117 146 149 119 149 103 82 103 114 91 114 146 117 146 138 110 138 154 123 154 157 125 157 119 95 119 149 119 149 143 114 143 149 119 149 92 74 92 155 124 155 126 100 126 155 124 155 123 99 123 122 97 122 151 121 151 151 121 151 127 102 127 116 92 116 128 102 128 148 118 148 138 138 138 129 129 129 97 97 97 141 141 141 134 134 134 131 131 131 106 106 106 148 148 148 113 113 113 93 93 93 135 135 135 141 141 141 88 88 88 146 146 146 33 33 33 147 147 147 135 135 135 115 115 115 143 143 143 255 255 153 255 255 156 255 255 156 255 224 125 255 238 134 255 218 122 125 87 49 205 142 80 255 255 160 255 255 153 33 23 13 16 11 6 129 90 50 255 255 161 255 255 156 255 255 156 255 255 161 244 122 0 244 122 0 244 122 0 244 122 0 249 124 0 249 124 0 247 123 0 247 123 0 244 122 0 244 122 0 244 122 0 244 122 0 249 124 0 237 118 0 242 121 0 165 82 0 109 54 0 114 57 0 91 45 0 79 39 0 94 47 0 20 10 0 15 7 0 15 7 0 45 22 0 40 20 0 38 19 0 15 7 0 28 14 0 43 21 0 40 20 0 140 70 0 104 52 0 15 7 0 2 1 0 79 39 0 219 109 0 249 124 0 247 123 0 242 121 0 247 123 0 244 122 0 242 121 0 242 121 0 237 118 0 247 123 0 242 121 0 234 117 0 242 121 0 112 90 112 116 93 116 102 81 102 120 96 120 55 44 55 124 99 124 121 97 121 124 99 124 85 68 85 117 93 117 99 79 99 123 123 123 111 111 111 115 115 115 116 116 116 88 88 88 113 113 113 96 96 96 119 119 119 100 100 100 92 92 92 116 116 116 59 59 59 115 115 115 108 108 108 120 120 120 98 98 98 115 115 115 96 96 96 119 119 119 118 118 118 118 118 118 82 82 82 90 90 90 95 95 95 116 116 116 108 87 108 111 88 111 76 61 76 85 68 85 109 87 109 103 82 103 115 92 115 117 93 117 89 71 89 112 89 112 107 85 107 111 89 111 69 55 69 116 93 116 94 75 94 117 93 117 93 74 93 91 73 91 114 91 114 114 91 114 96 77 96 87 70 87 97 77 97 112 90 112 105 105 105 98 98 98 74 74 74 107 107 107 102 102 102 99 99 99 81 81 81 113 113 113 86 86 86 71 71 71 104 104 104 108 108 108 67 67 67 113 113 113 25 25 25 114 114 114 104 104 104 89 89 89 111 111 111 112 112 112 93 93 93 61 61 61 94 94 94 109 109 109 101 81 101 95 76 95 109 87 109 104 83 104 99 79 99 106 85 106 79 63 79 106 85 106 37 30 37 69 55 69 109 87 109 106 84 106 66 52 66 109 87 109 25 20 25 109 87 109 102 81 102 87 69 87 108 87 108 109 87 109 109 87 109 59 47 59 92 74 92 93 74 93 99 99 99 99 99 99 106 106 106 102 102 102 104 104 104
-104 130 130 6 7 7 28 35 35 63 79 79 103 129 129 127 159 159 116 146 146 103 129 129 62 78 78 134 167 167 140 175 175 71 89 89 75 94 94 77 96 96 142 177 177 142 177 177 137 171 171 140 175 175 137 171 171 139 174 174 142 178 178 145 145 181 142 142 177 143 143 179 144 144 180 144 144 180 100 100 125 8 8 10 27 27 34 46 46 57 99 99 124 121 121 151 112 112 140 99 99 124 43 43 53 129 129 161 47 47 59 68 68 85 67 67 83 74 74 92 136 136 170 131 131 164 131 131 164 132 132 166 131 131 164 136 136 170 136 136 170 138 173 173 135 169 169 137 171 171 138 172 172 137 172 172 8 10 10 8 10 10 23 29 29 44 55 55 95 119 119 115 144 144 107 134 134 42 53 53 41 51 51 129 162 162 45 56 56 81 102 102 63 79 79 70 88 88 129 162 162 125 157 157 124 155 155 126 158 158 128 161 161 130 162 162 132 132 165 132 132 165 129 129 161 131 131 164 131 131 164 128 128 160 7 7 9 15 15 19 22 22 27 42 42 52 107 107 134 109 109 137 120 120 150 40 40 50 59 59 74 123 123 153 9 9 11 77 77 96 60 60 75 35 35 44 123 123 153 112 112 140 117 117 146 117 117 146 122 122 152 123 123 153 125 156 156 125 156 156 123 154 154 124 155 155 124 155 155 121 151 151 4 6 6 14 18 18 21 26 26 74 93 93 101 126 126 86 108 108 113 141 141 51 64 64 56 70 70 116 145 145 8 10 10 73 91 91 48 60 60 33 42 42 116 145 145 106 132 132 114 143 143 255 255 148 255 255 155 255 255 158 255 247 138 255 255 158 255 255 151 255 192 107 129 90 50 255 255 160 255 255 160 20 14 8 46 32 17 242 168 94 255 255 160 255 255 161 255 255 156 255 255 160 244 122 0 247 123 0 252 126 0 252 126 0 252 126 0 247 123 0 239 119 0 234 117 0 237 118 0 244 122 0 242 121 0 239 119 0 234 117 0 216 108 0 135 67 0 25 12 0 40 20 0 28 14 0 96 48 0 117 58 0 170 85 0 81 40 0 10 5 0 2 1 0 2 1 0 22 11 0 45 22 0 20 10 0 38 19 0 61 30 0 51 25 0 186 93 0 107 53 0 71 35 0 0 0 0 5 2 0 38 19 0 247 123 0 252 126 0 247 123 0 244 122 0 244 122 0 239 119 0 224 112 0 247 123 0 249 124 0 244 122 0 239 119 0 244 122 0 81 81 101 71 71 89 31 31 39 93 93 116 34 34 42 49 49 62 48 48 60 53 53 67 98 98 123 95 95 119 95 95 119 96 96 120 95 95 118 98 98 123 98 98 123 100 125 125 98 123 123 99 124 124 100 125 125 100 125 125 6 7 7 6 7 7 17 21 21 32 40 40 69 86 86 84 105 105 77 97 97 30 38 38 29 37 37 94 118 118 32 40 40 59 74 74 46 58 58 51 64 64 94 118 118 91 114 114 90 113 113 92 115 115 94 117 117 94 118 118 94 118 118 96 96 120 94 94 118 96 96 120 96 96 120 94 94 117 5 5 7 11 11 14 16 16 20 30 30 38 79 79 98 80 80 101 88 88 110 29 29 37 44 44 55 91 91 113 6 6 8 57 57 71 44 44 56 26 26 33 91 91 114 83 83 104 87 87 109 87 87 109 90 90 113 91 91 114 93 116 116 93 116 116 92 115 115 93 116 116 93 116 116 91 113 113 3 4 4 11 14 14 15 19 19 56 70 70 76 95 95 65 81 81 85 107 107 39 48 48 42 53 53 88 110 110 6 8 8 55 69 69 37 46 46 25 32 32 88 111 111 81 101 101 87 109 109 84 106 106 88 110 110 87 109 109 91 91 113 89 89 111 89 89 112 90 90 113 90 90 113 63 63 78 3 3 4 10 10 13 38 38 47 54 54 68 77 77 96 63 63 79 62 62 78 38 38 47 41 41 52 85 85 106 6 6 7 46 46 57 36 36 45 86 86 108 86 86 108
-18 22 22 63 79 79 28 35 35 146 183 183 140 175 175 84 105 105 148 186 186 142 178 178 140 176 176 143 179 179 143 179 179 144 181 181 147 147 184 147 147 184 144 144 180 145 145 181 146 146 183 146 146 183 146 146 182 103 103 129 129 129 162 138 138 172 143 143 179 2 2 3 2 2 3 8 8 10 26 26 32 13 13 16 17 17 21 52 52 65 108 108 135 140 140 175 135 135 169 141 141 176 138 138 172 135 135 169 139 139 174 137 137 172 138 138 173 141 141 176 141 176 176 140 176 176 133 167 167 140 175 175 140 175 175 139 174 174 122 153 153 129 162 162 123 154 154 130 163 163 54 68 68 0 0 0 4 5 5 9 12 12 11 13 13 16 20 20 58 72 72 26 32 32 133 167 167 128 160 160 77 96 96 135 169 169 130 162 162 128 160 160 131 163 163 130 163 163 131 164 164 134 134 167 134 134 167 131 131 163 132 132 165 133 133 166 133 133 166 132 132 165 93 93 117 117 117 146 125 125 156 130 130 162 2 2 3 2 2 3 7 7 9 23 23 29 11 11 14 15 15 19 47 47 58 98 98 122 126 126 158 122 122 153 127 127 159 124 124 155 121 121 152 125 125 156 123 123 154 124 124 155 127 127 158 126 158 158 126 158 158 119 149 149 125 157 157 125 157 157 125 156 156 109 137 137 116 145 145 110 138 138 116 145 145 48 61 61 0 0 0 3 4 4 8 10 10 9 12 12 14 18 18 51 64 64 23 29 29 119 149 149 114 142 142 68 85 85 121 151 151 115 144 144 114 142 142 116 145 145 116 145 145 255 255 158 255 255 158 255 255 160 255 209 117 255 255 153 255 255 145 255 186 104 255 226 127 255 189 106 255 235 132 46 32 17 25 17 9 255 255 143 255 255 161 255 255 161 255 255 153 255 255 156 244 122 0 249 124 0 252 126 0 249 124 0 247 123 0 249 124 0 244 122 0 244 122 0 244 122 0 244 122 0 244 122 0 247 123 0 229 114 0 76 38 0 51 25 0 53 26 0 45 22 0 96 48 0 63 31 0 71 35 0 91 45 0 40 20 0 7 3 0 5 2 0 7 3 0 102 51 0 35 17 0 17 8 0 53 26 0 45 22 0 25 12 0 137 68 0 158 79 0 17 8 0 5 2 0 10 5 0 10 5 0 56 28 0 252 126 0 252 126 0 249 124 0 247 123 0 242 121 0 247 123 0 244 122 0 249 124 0 239 119 0 239 119 0 244 122 0 103 103 128 2 2 2 2 2 2 6 6 7 18 18 23 9 9 11 12 12 15 37 37 46 77 77 97 100 100 125 97 97 121 100 100 126 98 98 123 96 96 120 99 99 124 98 98 122 99 99 123 100 100 126 100 125 125 100 125 125 95 119 119 100 125 125 100 125 125 99 124 124 87 109 109 92 115 115 88 110 110 93 116 116 39 48 48 0 0 0 2 3 3 6 8 8 7 9 9 11 14 14 41 52 52 18 23 23 95 119 119 91 114 114 55 69 69 97 121 121 93 116 116 92 115 115 94 117 117 94 117 117 94 118 118 93 117 117 96 96 120 94 94 118 95 95 119 96 96 120 96 96 120 95 95 119 67 67 84 85 85 106 90 90 113 94 94 118 1 1 2 1 1 2 5 5 7 17 17 21 8 8 10 11 11 14 34 34 42 71 71 89 92 92 115 89 89 111 93 93 116 91 91 113 89 89 111 91 91 114 90 90 113 91 91 114 93 93 116 93 116 116 93 116 116 88 110 110 93 116 116 92 116 116 92 116 116 81 101 101 86 107 107 82 102 102 86 108 108 36 45 45 0 0 0 2 3 3 6 8 8 7 9 9 11 13 13 38 48 48 17 22 22 89 112 112 85 107 107 51 64 64 91 114 114 87 109 109 86 108 108 88 110 110 88 110 110 89 111 111 88 110 110 90 90 113 88 88 111 89 89 112 90 90 113 90 90 113 90 90 112 63 63 79 80 80 100 85 85 107 89 89 111 1 1 2 1 1 2
-182 182 182 186 186 186 178 178 178 179 179 179 181 145 181 185 148 185 181 144 181 186 149 186 184 147 184 178 142 178 181 145 181 185 148 185 179 143 179 182 146 182 104 83 104 11 8 11 7 5 7 29 23 29 18 14 18 49 39 49 33 26 33 27 22 27 108 86 108 176 141 176 181 145 181 176 140 176 175 140 175 175 140 175 180 144 180 176 141 176 176 141 176 170 136 170 172 137 172 173 173 173 177 177 177 171 171 171 172 172 172 176 176 176 170 170 170 173 173 173 177 177 177 175 175 175 171 171 171 138 138 138 10 10 10 7 7 7 28 28 28 17 17 17 68 68 68 70 70 70 26 26 26 103 103 103 168 168 168 173 173 173 171 171 171 169 169 169 166 166 166 171 171 171 168 168 168 167 167 167 160 160 160 163 163 163 165 132 165 168 134 168 162 130 162 164 131 164 167 133 167 165 132 165 163 130 163 167 134 167 165 132 165 162 129 162 131 105 131 45 36 45 10 8 10 26 21 26 16 13 16 65 52 65 66 53 66 41 33 41 48 38 48 159 127 159 163 130 163 161 129 161 159 127 159 157 126 157 160 128 160 158 126 158 158 126 158 151 121 151 154 123 154 150 120 150 155 155 155 155 155 155 154 154 154 157 157 157 155 155 155 153 153 153 155 155 155 157 157 157 152 152 152 123 123 123 42 42 42 9 9 9 9 9 9 14 14 14 61 61 61 62 62 62 39 39 39 45 45 45 112 112 112 153 153 153 151 151 151 150 150 150 148 148 148 150 150 150 150 150 150 147 147 147 149 149 149 144 144 144 255 255 156 255 255 156 255 255 158 255 255 161 205 142 80 179 125 70 255 224 125 255 255 148 251 174 98 221 154 86 251 174 98 29 20 11 33 23 13 255 235 132 255 255 161 255 255 158 255 255 156 255 255 158 244 122 0 244 122 0 247 123 0 244 122 0 244 122 0 244 122 0 244 122 0 247 123 0 244 122 0 244 122 0 242 121 0 249 124 0 107 53 0 22 11 0 61 30 0 48 24 0 35 17 0 48 24 0 81 40 0 124 62 0 89 44 0 53 26 0 17 8 0 20 10 0 22 11 0 43 21 0 89 44 0 45 22 0 79 39 0 58 29 0 22 11 0 53 26 0 135 67 0 56 28 0 48 24 0 35 17 0 30 15 0 10 5 0 249 124 0 252 126 0 244 122 0 247 123 0 249 124 0 244 122 0 249 124 0 244 122 0 244 122 0 242 121 0 131 104 131 129 103 129 129 103 129 73 58 73 7 6 7 5 4 5 20 16 20 13 10 13 35 28 35 23 18 23 19 15 19 76 61 76 124 99 124 128 102 128 123 99 123 123 98 123 123 98 123 127 101 127 124 99 124 124 99 124 120 96 120 121 96 121 122 122 122 124 124 124 120 120 120 121 121 121 124 124 124 120 120 120 122 122 122 124 124 124 123 123 123 120 120 120 97 97 97 7 7 7 4 4 4 19 19 19 12 12 12 48 48 48 49 49 49 18 18 18 73 73 73 118 118 118 122 122 122 120 120 120 119 119 119 118 118 118 121 121 121 118 118 118 118 118 118 113 113 113 115 115 115 113 113 113 119 95 119 115 92 115 116 93 116 118 95 118 117 93 117 116 92 116 119 95 119 118 94 118 115 92 115 93 75 93 32 25 32 7 5 7 19 15 19 11 9 11 46 37 46 47 38 47 29 23 29 34 27 34 114 91 114 117 94 117 116 93 116 115 92 115 113 91 113 116 92 116 115 92 115 114 91 114 109 87 109 111 89 111 109 87 109 112 112 112 112 112 112 112 112 112 114 114 114 113 113 113 112 112 112 113 113 113 115 115 115 111 111 111 90 90 90 31 31 31 6 6 6 6 6 6 10 10 10 45 45 45 46 46 46 28 28 28 33 33 33 83 83 83 114 114 114 114 114 114 111 111 111 110 110 110 112 112 112 112 112 112 110 110 110 112 112 112 108 108 108 106 106 106 109 87 109 109 87 109 109 87 109 112 90 112
-188 150 188 184 147 184 138 111 138 34 27 34 20 16 20 15 12 15 113 90 113 183 146 183 184 147 184 177 141 177 184 147 184 185 148 185 185 148 185 185 148 185 185 148 185 173 138 173 141 113 141 128 102 128 16 13 16 172 138 172 183 146 183 173 139 173 160 128 160 177 141 177 178 142 178 178 142 178 180 144 180 177 177 177 179 179 179 181 181 181 178 178 178 180 180 180 176 176 176 132 132 132 5 5 5 16 16 16 16 16 16 162 162 162 178 178 178 174 174 174 176 176 176 175 175 175 177 177 177 176 176 176 176 176 176 176 176 176 165 165 165 134 134 134 122 122 122 15 15 15 164 164 164 174 174 174 165 165 165 152 152 152 168 168 168 169 169 169 169 169 169 169 135 169 172 137 172 171 137 171 171 137 171 169 135 169 170 136 170 131 104 131 24 19 24 5 4 5 15 12 15 15 12 15 153 122 153 168 134 168 164 131 164 166 133 166 166 132 166 167 133 167 167 133 167 166 133 166 166 133 166 155 124 155 127 101 127 115 92 115 15 12 15 163 130 163 161 128 161 157 125 157 150 120 150 158 126 158 156 125 156 159 127 159 159 159 159 162 162 162 161 161 161 161 161 161 159 159 159 160 160 160 123 123 123 22 22 22 4 4 4 14 14 14 14 14 14 144 144 144 158 158 158 154 154 154 156 156 156 155 155 155 156 156 156 156 156 156 156 156 156 154 154 154 139 139 139 84 84 84 98 98 98 54 54 54 152 152 152 150 150 150 147 147 147 140 140 140 148 148 148 146 146 146 149 149 149 148 119 148 255 255 161 255 255 156 255 255 161 255 255 161 255 224 125 175 122 68 255 238 134 255 255 158 158 110 62 255 238 134 12 8 4 71 49 27 33 23 13 255 255 155 255 255 160 255 255 161 255 255 156 255 255 158 247 123 0 244 122 0 244 122 0 249 124 0 249 124 0 252 126 0 252 126 0 244 122 0 249 124 0 242 121 0 242 121 0 229 114 0 43 21 0 45 22 0 63 31 0 89 44 0 109 54 0 89 44 0 89 44 0 56 28 0 94 47 0 137 68 0 30 15 0 5 2 0 28 14 0 71 35 0 130 65 0 51 25 0 53 26 0 56 28 0 86 43 0 51 25 0 38 19 0 7 3 0 0 0 0 5 2 0 10 5 0 45 22 0 229 114 0 247 123 0 247 123 0 252 126 0 249 124 0 247 123 0 252 126 0 237 118 0 244 122 0 237 118 0 129 103 129 97 77 97 23 19 23 14 11 14 10 8 10 79 63 79 127 102 127 128 103 128 123 98 123 128 102 128 129 103 129 129 103 129 129 103 129 128 103 128 120 96 120 98 78 98 89 71 89 11 9 11 119 95 119 127 101 127 120 96 120 111 89 111 122 98 122 124 99 124 123 99 123 124 99 124 123 123 123 124 124 124 125 125 125 124 124 124 125 125 125 122 122 122 92 92 92 3 3 3 11 11 11 11 11 11 112 112 112 123 123 123 121 121 121 122 122 122 122 122 122 123 123 123 122 122 122 122 122 122 122 122 122 114 114 114 93 93 93 85 85 85 11 11 11 114 114 114 121 121 121 115 115 115 106 106 106 117 117 117 118 118 118 118 118 118 119 119 119 120 96 120 120 96 120 120 96 120 118 95 118 119 95 119 91 73 91 16 13 16 3 2 3 10 8 10 10 8 10 108 86 108 118 95 118 116 93 116 117 93 117 117 93 117 118 94 118 118 94 118 117 94 117 117 94 117 110 88 110 90 72 90 81 65 81 10 8 10 115 92 115 114 91 114 112 89 112 107 85 107 113 90 113 111 89 111 114 91 114 113 113 113 116 116 116 116 116 116 115 115 115 114 114 114 115 115 115 88 88 88 16 16 16 3 3 3 10 10 10 10 10 10 104 104 104 114 114 114 112 112 112 113 113 113 113 113 113 114 114 114 114 114 114 114 114 114 113 113 113 102 102 102 62 62 62 72 72 72 40 40 40 112 112 112 111 111 111 108 108 108
-101 81 101 143 114 143 186 149 186 188 150 188 188 150 188 180 144 180 178 142 178 176 140 176 175 140 175 135 108 135 182 146 182 186 149 186 184 147 184 182 145 182 185 148 185 179 143 179 177 142 177 177 141 177 173 138 173 178 143 178 184 184 184 183 183 183 181 181 181 177 177 177 181 181 181 180 180 180 180 180 180 182 182 182 180 180 180 27 27 27 5 5 5 91 91 91 89 89 89 107 107 107 169 169 169 179 179 179 179 179 179 170 170 170 173 173 173 158 158 158 171 171 171 134 134 134 138 138 138 177 177 177 177 177 177 173 173 173 176 176 176 169 169 169 170 170 170 161 161 161 161 161 161 169 169 169 174 139 174 174 139 174 170 136 170 172 137 172 171 137 171 167 134 167 169 135 169 172 138 172 172 137 172 158 126 158 29 23 29 38 30 38 69 55 69 91 73 91 129 103 129 168 134 168 169 135 169 169 135 169 162 129 162 160 128 160 158 126 158 157 126 157 122 97 122 164 131 164 167 133 167 165 132 165 163 130 163 166 132 166 160 128 160 158 127 158 158 126 158 154 123 154 159 127 159 164 164 164 163 163 163 161 161 161 158 158 158 161 161 161 160 160 160 160 160 160 161 161 161 159 159 159 24 24 24 4 4 4 81 81 81 79 79 79 95 95 95 149 149 149 159 159 159 158 158 158 150 150 150 153 153 153 140 140 140 151 151 151 118 118 118 121 121 121 156 156 156 156 156 156 152 152 152 155 155 155 148 148 148 150 150 150 141 141 141 141 141 141 149 149 149 153 122 153 153 122 153 149 119 149 255 255 160 255 255 156 255 255 156 255 255 161 246 171 96 142 98 55 255 253 142 255 255 160 255 255 145 255 212 119 100 69 39 46 32 17 37 26 14 255 255 160 255 255 161 255 255 161 255 255 161 255 255 161 252 126 0 247 123 0 244 122 0 247 123 0 252 126 0 252 126 0 249 124 0 247 123 0 252 126 0 249 124 0 242 121 0 79 39 0 33 16 0 71 35 0 63 31 0 104 52 0 137 68 0 66 33 0 86 43 0 66 33 0 122 61 0 12 6 0 7 3 0 38 19 0 84 42 0 56 28 0 63 31 0 25 12 0 43 21 0 71 35 0 81 40 0 33 16 0 7 3 0 10 5 0 45 22 0 25 12 0 10 5 0 5 2 0 249 124 0 252 126 0 252 126 0 252 126 0 249 124 0 247 123 0 244 122 0 239 119 0 244 122 0 252 126 0 131 105 131 128 102 128 129 103 129 131 105 131 131 105 131 120 96 120 22 18 22 29 23 29 52 42 52 69 55 69 98 78 98 128 102 128 129 103 129 129 103 129 124 99 124 122 98 122 121 96 121 120 96 120 93 74 93 125 100 125 128 102 128 126 101 126 125 100 125 127 101 127 123 98 123 121 97 121 121 97 121 118 95 118 122 98 122 126 126 126 125 125 125 124 124 124 121 121 121 124 124 124 123 123 123 123 123 123 124 124 124 123 123 123 18 18 18 3 3 3 62 62 62 61 61 61 73 73 73 115 115 115 123 123 123 123 123 123 116 116 116 119 119 119 108 108 108 117 117 117 92 92 92 94 94 94 121 121 121 121 121 121 119 119 119 121 121 121 116 116 116 117 117 117 111 111 111 111 111 111 116 116 116 116 116 116 120 96 120 117 94 117 118 95 118 118 94 118 116 92 116 117 93 117 119 95 119 119 95 119 109 87 109 20 16 20 26 21 26 47 38 47 63 50 63 89 71 89 117 93 117 118 94 118 118 94 118 113 90 113 111 89 111 110 88 110 110 88 110 85 68 85 114 91 114 117 93 117 115 92 115 114 91 114 116 93 116 113 90 113 111 89 111 111 89 111 109 87 109 112 90 112 116 116 116 115 115 115 114 114 114 112 112 112 114 114 114 114 114 114 114 114 114 115 115 115 114 114 114 17 17 17 3 3 3 58 58 58 56 56 56 68 68 68 107 107 107 114 114 114 114 114 114 108 108 108 110 110 110 101 101 101
-155 124 155 183 147 183 164 131 164 169 135 169 171 137 171 177 141 177 188 150 188 188 150 188 187 150 187 185 148 185 179 143 179 175 140 175 186 149 186 186 186 186 186 186 186 185 185 185 185 185 185 183 183 183 164 164 164 80 80 80 156 156 156 68 68 68 135 135 135 174 174 174 152 152 152 131 131 131 77 77 77 177 177 177 136 136 136 47 47 47 99 99 99 64 64 64 91 91 91 73 73 73 147 147 147 175 175 175 165 165 165 161 161 161 163 163 163 168 168 168 179 179 179 178 178 178 178 178 178 176 176 176 170 170 170 166 166 166 177 177 177 176 141 176 176 141 176 176 141 176 176 140 176 173 139 173 155 124 155 76 60 76 105 84 105 144 115 144 128 102 128 165 132 165 143 115 143 124 99 124 145 116 145 141 113 141 128 103 128 45 36 45 93 74 93 60 48 60 86 69 86 127 102 127 79 63 79 164 131 164 156 124 156 152 121 152 153 123 153 121 96 121 166 133 166 168 134 168 167 134 167 165 132 165 160 128 160 156 125 156 161 129 161 162 130 162 165 165 165 165 165 165 165 165 165 163 163 163 159 159 159 111 111 111 99 99 99 135 135 135 120 120 120 154 154 154 157 157 157 111 111 111 135 135 135 132 132 132 120 120 120 42 42 42 87 87 87 56 56 56 61 61 61 119 119 119 73 73 73 154 154 154 145 145 145 137 137 137 133 133 133 112 112 112 155 155 155 156 156 156 156 156 156 154 154 154 152 152 152 153 153 153 150 150 150 151 151 151 154 123 154 154 123 154 153 123 153 151 121 151 255 255 158 255 255 160 255 255 160 255 255 160 154 107 60 255 255 151 255 177 99 255 255 160 255 255 153 255 255 147 71 49 27 29 20 11 255 244 137 255 255 161 255 255 161 255 255 161 255 255 161 252 126 0 252 126 0 252 126 0 244 122 0 244 122 0 247 123 0 247 123 0 252 126 0 252 126 0 247 123 0 214 107 0 147 73 0 20 10 0 28 14 0 15 7 0 66 33 0 68 34 0 114 57 0 38 19 0 79 39 0 71 35 0 114 57 0 12 6 0 10 5 0 33 16 0 96 48 0 33 16 0 94 47 0 33 16 0 112 56 0 30 15 0 22 11 0 96 48 0 122 61 0 53 26 0 33 16 0 12 6 0 28 14 0 10 5 0 221 110 0 252 126 0 249 124 0 242 121 0 242 121 0 244 122 0 252 126 0 234 117 0 247 123 0 133 106 133 133 106 133 131 105 131 131 105 131 117 94 117 57 46 57 112 89 112 49 39 49 106 85 106 127 102 127 108 86 108 93 75 93 55 44 55 126 101 126 38 30 38 84 67 84 70 56 70 45 36 45 65 52 65 52 41 52 105 84 105 124 99 124 111 89 111 115 92 115 116 93 116 120 96 120 127 102 127 127 101 127 127 101 127 125 100 125 121 97 121 118 95 118 126 101 126 126 126 126 126 126 126 125 125 125 125 125 125 124 124 124 111 111 111 54 54 54 105 105 105 46 46 46 91 91 91 118 118 118 102 102 102 88 88 88 52 52 52 119 119 119 92 92 92 32 32 32 67 67 67 43 43 43 62 62 62 49 49 49 100 100 100 118 118 118 112 112 112 109 109 109 110 110 110 114 114 114 121 121 121 121 121 121 121 121 121 119 119 119 115 115 115 113 113 113 120 120 120 117 117 117 120 96 120 120 96 120 119 95 119 118 94 118 106 85 106 51 41 51 72 57 72 98 79 98 87 70 87 112 90 112 98 78 98 85 68 85 99 79 99 96 77 96 88 70 88 31 24 31 64 51 64 41 33 41 59 47 59 87 70 87 54 43 54 113 91 113 107 86 107 105 84 105 106 85 106 83 67 83 115 92 115 116 93 116 116 93 116 115 92 115 111 89 111 109 87 109 112 90 112 113 90 113 115 115 115 115 115 115 115 115 115 114 114 114 111 111 111 78 78 78 69 69 69 95 95 95 84 84 84 109 109 109 111 111 111 78 78 78 96 96 96
-152 152 190 152 152 190 147 147 184 142 142 178 134 134 168 132 132 166 146 146 183 146 182 182 146 182 182 145 182 182 144 180 180 143 179 179 143 179 179 146 183 183 147 184 184 144 180 180 144 180 180 147 184 184 144 180 180 143 179 179 125 157 157 113 141 141 86 108 108 101 126 126 135 169 169 136 170 170 142 178 178 136 170 170 142 177 177 140 175 175 137 171 171 139 174 174 141 176 176 139 174 174 140 175 175 140 175 175 144 180 180 142 178 178 139 174 174 135 169 169 127 159 159 131 164 164 143 143 179 138 138 173 138 138 173 142 142 178 136 136 170 136 136 170 136 136 170 138 138 173 137 137 171 136 136 171 136 136 170 139 139 174 137 137 171 135 135 169 118 118 148 107 107 134 92 92 116 95 95 119 127 127 159 128 128 161 134 134 167 128 128 160 133 133 167 132 132 165 124 124 156 131 131 164 132 132 165 131 131 163 132 132 165 132 132 165 135 135 169 134 134 167 131 131 164 126 126 158 119 119 149 123 123 154 134 167 167 131 164 164 129 162 162 133 166 166 127 159 159 130 162 162 127 159 159 129 162 162 128 160 160 129 161 161 127 159 159 130 162 162 128 160 160 120 150 150 110 138 138 100 125 125 86 108 108 97 121 121 119 148 148 120 150 150 125 156 156 124 156 156 124 155 155 123 153 153 116 145 145 125 156 156 123 154 154 122 152 152 123 153 153 122 153 153 126 157 157 124 156 156 121 152 152 117 147 147 110 137 137 114 143 143 124 124 155 121 121 152 120 120 150 123 123 154 118 118 148 120 120 151 255 255 156 255 255 155 255 255 161 255 255 160 225 157 88 255 255 155 255 203 114 255 255 161 255 255 156 255 192 107 142 98 55 87 61 34 255 212 119 255 255 161 255 255 161 255 255 161 255 255 161 252 126 0 252 126 0 252 126 0 249 124 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 249 124 0 224 112 0 112 56 0 7 3 0 61 30 0 10 5 0 38 19 0 38 19 0 53 26 0 160 80 0 109 54 0 193 96 0 158 79 0 12 6 0 22 11 0 25 12 0 73 36 0 20 10 0 33 16 0 170 85 0 183 91 0 209 104 0 188 94 0 127 63 0 119 59 0 181 90 0 33 16 0 10 5 0 17 8 0 10 5 0 252 126 0 252 126 0 252 126 0 252 126 0 247 123 0 244 122 0 244 122 0 244 122 0 249 124 0 104 130 130 104 104 130 105 105 131 103 103 129 102 102 128 102 102 127 104 104 130 98 98 123 104 104 131 102 102 128 103 103 129 105 105 131 102 102 127 101 101 127 88 88 111 79 79 99 61 61 76 71 71 89 95 95 119 98 98 123 100 100 125 96 96 120 100 100 125 101 101 126 96 96 121 98 98 123 99 99 124 99 99 124 99 99 124 99 99 123 102 102 127 101 101 127 98 98 123 95 95 119 90 90 112 88 88 111 98 98 122 97 122 122 97 122 122 97 121 121 96 120 120 96 120 120 96 120 120 98 122 122 98 123 123 96 120 120 96 120 120 98 123 123 96 120 120 96 120 120 84 105 105 75 94 94 57 72 72 67 84 84 90 113 113 91 114 114 95 119 119 91 113 113 94 118 118 93 117 117 91 114 114 93 117 117 94 118 118 93 116 116 94 117 117 94 117 117 96 121 121 95 119 119 93 117 117 90 113 113 85 107 107 88 110 110 93 116 116 93 93 116 93 93 116 95 95 119 91 91 114 91 91 114 91 91 114 93 93 116 92 92 115 92 92 115 92 92 115 94 94 117 92 92 116 91 91 114 80 80 100 72 72 90 63 63 78 64 64 81 86 86 108 87 87 109 91 91 114 87 87 109 91 91 113 90 90 112 85 85 106 89 89 112 90 90 113 89 89 112 90 90 113 90 90 113 93 93 116 92 92 115 90 90 112 87 87 109 82 82 103 85 85 106 92 115 115 90 113 113 89 112 112 92 115 115 88 110 110 90 112 112 88 110 110
-152 190 190 152 190 190 147 184 184 148 186 186 150 187 187 150 187 187 149 187 187 134 168 168 19 24 24 18 22 22 38 47 47 82 102 102 39 49 49 51 64 64 72 90 90 7 9 9 4 5 5 18 22 22 45 56 56 30 37 37 31 39 39 32 41 41 50 63 63 29 37 37 4 5 5 2 3 3 2 3 3 5 7 7 26 33 33 145 181 181 143 179 179 141 177 177 144 180 180 141 176 176 144 180 180 140 176 176 139 174 174 144 144 181 144 144 180 140 140 175 141 141 176 141 141 176 143 143 179 142 142 177 141 141 177 44 44 55 17 17 21 40 40 50 58 58 73 40 40 50 37 37 46 37 37 46 81 81 101 7 7 8 7 7 8 39 39 49 42 42 53 28 28 35 9 9 12 31 31 38 53 53 66 21 21 26 2 2 3 0 0 0 5 5 6 25 25 31 125 125 156 134 134 168 133 133 166 137 137 171 132 132 165 135 135 169 132 132 165 132 132 165 127 127 159 135 169 169 135 169 169 131 163 163 132 165 165 133 166 166 133 166 166 132 165 165 118 148 148 17 21 21 16 20 20 33 42 42 72 90 90 34 43 43 45 56 56 64 80 80 6 8 8 3 4 4 15 19 19 39 49 49 26 33 33 27 34 34 28 36 36 44 55 55 26 32 32 3 4 4 2 3 3 2 3 3 5 6 6 23 29 29 126 158 158 125 156 156 123 154 154 125 157 157 123 153 153 125 156 156 122 153 153 121 151 151 125 125 157 125 125 157 121 121 151 122 122 153 122 122 152 124 124 155 123 123 153 122 122 153 255 255 160 255 255 161 255 255 161 255 235 132 87 61 34 179 125 70 255 255 153 255 255 161 255 255 156 154 107 60 154 107 60 16 11 6 255 255 156 255 255 161 255 255 161 255 255 158 255 255 161 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 249 124 0 249 124 0 249 124 0 153 76 0 104 52 0 7 3 0 15 7 0 43 21 0 66 33 0 20 10 0 22 11 0 94 47 0 112 56 0 221 110 0 239 119 0 28 14 0 15 7 0 158 79 0 160 80 0 239 119 0 249 124 0 249 124 0 252 126 0 249 124 0 242 121 0 158 79 0 168 84 0 142 71 0 191 95 0 10 5 0 25 12 0 237 118 0 247 123 0 247 123 0 249 124 0 249 124 0 229 114 0 239 119 0 247 123 0 249 124 0 244 122 0 104 131 131 103 129 129 101 126 126 107 107 134 104 104 130 105 105 131 104 104 131 106 106 133 105 105 131 105 105 131 33 33 41 12 12 16 29 29 37 43 43 54 29 29 37 27 27 34 27 27 34 60 60 75 5 5 6 5 5 6 29 29 36 31 31 39 21 21 26 7 7 9 23 23 28 39 39 49 15 15 19 3 3 3 0 0 0 4 4 5 18 18 23 93 93 116 100 100 125 99 99 123 101 101 127 98 98 123 100 100 125 98 98 123 98 98 122 95 95 118 101 126 126 100 126 126 97 122 122 98 123 123 99 124 124 99 124 124 99 123 123 88 111 111 13 16 16 12 15 15 25 31 31 54 67 67 28 35 35 34 42 42 48 60 60 4 6 6 2 3 3 11 14 14 29 37 37 19 24 24 20 26 26 21 27 27 33 42 42 19 24 24 2 3 3 1 2 2 1 2 2 3 4 4 17 22 22 96 120 120 95 118 118 93 117 117 95 119 119 93 117 117 95 119 119 93 116 116 92 115 115 90 112 112 96 96 120 93 93 116 93 93 117 93 93 117 95 95 119 94 94 118 94 94 118 29 29 37 11 11 14 26 26 33 39 39 49 26 26 33 24 24 31 24 24 31 54 54 68 4 4 5 4 4 5 26 26 33 28 28 35 19 19 23 6 6 8 20 20 26 36 36 45 14 14 17 2 2 3 0 0 0 3 3 4 16 16 21 84 84 105 91 91 114 90 90 112 93 93 116 90 90 112 91 91 114 89 89 112 89 89 112 86 86 108
-151 189 189 101 127 127 3 3 3 32 40 40 15 19 19 29 36 36 19 24 24 110 137 137 81 101 101 77 97 97 83 104 104 47 59 59 30 38 38 24 30 30 135 168 168 147 183 183 146 183 183 136 170 170 6 7 7 67 84 84 100 126 126 115 144 144 33 41 41 145 181 181 143 179 179 140 175 175 144 181 181 144 180 180 133 167 167 138 172 172 142 178 178 142 177 177 146 146 183 146 146 182 146 146 182 145 145 182 142 142 178 145 145 181 145 145 181 143 143 179 138 138 173 2 2 3 30 30 38 14 14 18 27 27 34 34 34 43 104 104 130 76 76 95 86 86 108 79 79 99 79 79 98 28 28 35 22 22 28 68 68 85 138 138 173 138 138 172 128 128 160 5 5 7 34 34 42 94 94 118 108 108 136 31 31 38 136 136 170 136 136 170 131 131 164 135 135 169 135 135 169 125 125 157 128 128 160 133 133 166 133 133 166 134 134 168 136 171 171 136 170 170 136 170 170 133 166 166 134 168 168 135 169 169 135 169 169 129 162 162 2 3 3 5 6 6 13 16 16 25 32 32 32 40 40 97 121 121 68 85 85 80 100 100 73 92 92 73 92 92 26 33 33 14 18 18 63 79 79 128 161 161 128 160 160 119 148 148 42 52 52 31 39 39 88 110 110 114 142 142 28 36 36 121 151 151 126 158 158 122 152 152 122 152 152 125 157 157 116 145 145 118 148 148 123 154 154 123 154 154 124 155 155 126 126 158 126 126 158 126 126 157 125 125 157 124 124 155 125 125 156 125 125 156 119 119 149 83 83 103 255 255 161 255 255 161 255 255 161 255 255 151 154 107 60 238 165 93 255 255 158 255 255 158 255 255 158 25 17 9 25 17 9 79 55 31 255 255 155 255 255 161 255 255 161 255 255 161 255 255 161 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 242 121 0 211 105 0 99 49 0 20 10 0 28 14 0 35 17 0 33 16 0 12 6 0 51 25 0 214 107 0 234 117 0 252 126 0 252 126 0 249 124 0 252 126 0 249 124 0 249 124 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 249 124 0 249 124 0 181 90 0 17 8 0 114 57 0 247 123 0 249 124 0 244 122 0 242 121 0 232 116 0 247 123 0 242 121 0 239 119 0 249 124 0 105 132 132 101 126 126 102 127 127 105 131 131 104 131 131 107 107 134 107 107 134 107 107 134 107 107 134 105 105 131 107 107 133 106 106 133 105 105 131 70 70 88 4 4 5 22 22 28 20 20 25 20 20 25 13 13 17 54 54 67 56 56 70 54 54 67 58 58 72 32 32 40 11 11 14 16 16 21 93 93 116 101 101 127 101 101 127 33 33 41 4 4 5 46 46 58 69 69 87 80 80 100 96 96 120 100 100 125 99 99 124 97 97 121 100 100 125 98 98 123 92 92 115 95 95 119 98 98 122 98 98 122 101 126 126 100 126 126 100 126 126 100 125 125 98 123 123 100 125 125 100 125 125 99 123 123 66 83 83 2 2 2 21 26 26 10 12 12 19 23 23 13 16 16 72 90 90 53 66 66 50 63 63 54 68 68 30 38 38 19 24 24 15 19 19 88 110 110 96 120 120 95 119 119 88 111 111 3 4 4 44 55 55 65 82 82 75 94 94 21 27 27 95 118 118 94 117 117 92 115 115 94 118 118 94 118 118 87 109 109 90 113 113 93 116 116 93 116 116 94 117 117 95 95 119 95 95 119 95 95 119 93 93 117 95 95 119 95 95 119 94 94 117 91 91 114 1 1 2 20 20 25 9 9 11 18 18 22 22 22 28 68 68 86 50 50 63 57 57 71 52 52 65 52 52 65 19 19 23 15 15 19 45 45 56 92 92 115 91 91 114 85 85 106 3 3 4 22 22 28 63 63 79 72 72 90 20 20 25 91 91 114 91 91 114 88 88 110
-12 15 15 41 52 52 81 102 102 134 167 167 151 188 188 152 190 190 152 190 190 150 188 188 104 130 130 118 147 147 81 101 101 132 166 166 64 80 80 143 179 179 138 173 173 106 133 133 148 186 186 150 187 187 145 181 181 145 181 181 143 179 179 135 169 169 144 180 180 144 180 180 132 165 165 131 164 164 136 170 170 148 148 185 147 147 184 147 147 184 147 147 184 147 147 183 144 144 180 146 146 183 146 146 183 146 146 182 146 146 182 144 144 180 142 142 178 117 117 146 51 51 64 11 11 14 64 64 80 77 77 96 142 142 178 142 142 178 143 143 179 143 143 179 141 141 177 98 98 122 111 111 138 108 108 135 125 125 156 93 93 116 134 134 168 120 120 150 100 100 125 139 139 174 140 140 176 136 136 170 136 136 170 134 134 168 132 132 166 135 135 169 132 132 165 123 123 154 130 130 163 127 127 159 138 173 173 138 172 172 138 172 172 137 172 172 137 171 171 134 168 168 137 171 171 136 170 170 136 170 170 136 170 170 134 168 168 130 162 162 109 136 136 47 59 59 10 13 13 59 74 74 71 89 89 132 166 166 133 167 167 133 167 167 133 166 166 131 164 164 81 102 102 103 128 128 100 125 125 116 145 145 86 108 108 124 156 156 111 139 139 125 157 157 129 161 161 127 159 159 126 157 157 124 155 155 124 155 155 122 153 153 125 156 156 122 153 153 114 143 143 120 150 150 117 147 147 127 127 159 127 127 159 127 127 159 127 127 158 126 126 158 125 125 156 126 126 157 126 126 157 125 125 157 125 125 156 124 124 155 255 255 155 255 255 161 255 255 160 255 255 151 41 29 16 255 255 158 255 255 160 255 255 153 221 154 86 29 20 11 16 11 6 37 26 14 255 255 161 255 255 161 255 255 161 255 255 161 255 255 161 252 126 0 252 126 0 247 123 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 186 93 0 86 43 0 28 14 0 7 3 0 38 19 0 28 14 0 22 11 0 224 112 0 249 124 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 247 123 0 249 124 0 247 123 0 160 80 0 22 11 0 237 118 0 249 124 0 247 123 0 239 119 0 221 110 0 232 116 0 244 122 0 239 119 0 244 122 0 252 126 0 99 124 124 103 129 129 105 132 132 103 129 129 96 120 120 102 127 127 104 130 130 108 108 135 108 108 135 107 107 134 107 107 134 105 105 131 106 106 132 107 107 133 106 106 133 106 106 133 106 106 133 104 104 130 101 101 127 31 31 38 8 8 10 28 28 35 56 56 70 92 92 115 103 103 129 104 104 131 104 104 130 104 104 130 71 71 89 64 64 80 55 55 69 91 91 114 43 43 54 98 98 122 94 94 118 72 72 91 98 98 123 102 102 128 100 100 125 99 99 124 98 98 122 92 92 116 98 98 123 98 98 123 90 90 112 90 90 112 93 93 116 97 97 121 101 126 126 100 126 126 100 126 126 100 125 125 98 123 123 99 124 124 100 125 125 100 125 125 99 124 124 98 123 123 97 122 122 80 100 100 29 36 36 8 10 10 27 33 33 53 66 66 86 108 108 97 122 122 98 123 123 98 123 123 97 121 121 67 84 84 76 95 95 52 65 65 86 107 107 41 51 51 92 115 115 89 112 112 68 86 86 96 120 120 97 121 121 94 117 117 93 117 117 92 116 116 87 109 109 93 117 117 93 116 116 85 107 107 85 106 106 88 110 110 92 115 115 95 95 119 95 95 119 95 95 119 95 95 119 93 93 116 95 95 119 95 95 119 95 95 119 95 95 118 94 94 117 93 93 116 76 76 95 33 33 41 7 7 9 42 42 52 50 50 63 93 93 116 93 93 116 94 94 117 94 94 117 93 93 116 64 64 80 72 72 91 71 71 88 82 82 102 61 61 76 88 88 110
-107 134 134 119 149 149 151 189 189 151 189 189 153 191 191 151 189 189 143 179 179 57 71 71 113 142 142 89 111 111 52 65 65 150 187 187 151 189 189 151 189 189 148 185 185 150 188 188 146 182 182 149 186 186 148 186 186 147 183 183 148 185 185 148 185 185 149 149 186 149 149 186 149 149 186 148 148 186 148 148 185 148 148 185 148 148 185 148 148 185 147 147 184 147 147 184 144 144 180 25 25 31 35 35 44 143 143 179 145 145 181 11 11 14 2 2 3 30 30 38 11 11 14 101 101 126 108 108 135 112 112 140 127 127 159 143 143 178 144 144 180 142 142 178 142 142 178 53 53 67 10 10 12 107 107 133 59 59 73 49 49 61 142 142 178 142 142 177 140 140 175 138 138 173 137 137 171 136 136 171 139 139 174 139 139 174 137 137 172 138 138 173 140 140 175 139 174 174 139 174 174 139 174 174 139 173 173 138 173 173 138 173 173 138 172 172 138 172 172 137 172 172 134 168 168 110 138 138 33 41 41 114 143 143 135 168 168 92 115 115 10 13 13 1 1 1 28 35 35 32 40 40 94 117 117 93 117 117 104 130 130 132 166 166 132 165 165 133 167 167 132 165 165 125 156 156 49 62 62 99 123 123 77 96 96 45 56 56 130 163 163 131 164 164 131 164 164 128 160 160 130 163 163 126 158 158 129 161 161 128 160 160 127 159 159 128 160 160 127 159 159 129 129 161 128 128 160 128 128 160 128 128 160 127 127 159 127 127 159 127 127 159 127 127 158 126 126 158 126 126 158 123 123 154 21 21 27 255 255 153 255 255 147 255 255 161 255 255 158 255 255 148 25 17 9 255 255 161 255 255 160 255 238 134 255 180 101 58 40 22 75 52 29 16 11 6 255 255 161 255 255 161 255 255 161 255 255 161 255 255 161 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 168 84 0 22 11 0 10 5 0 5 2 0 43 21 0 63 31 0 43 21 0 206 103 0 244 122 0 252 126 0 252 126 0 249 124 0 249 124 0 249 124 0 249 124 0 249 124 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 237 118 0 38 19 0 22 11 0 68 34 0 84 42 0 196 98 0 249 124 0 252 126 0 244 122 0 247 123 0 247 123 0 229 114 0 234 117 0 244 122 0 244 122 0 247 123 0 108 135 135 110 137 137 106 133 133 108 135 135 108 135 135 106 133 133 107 134 134 107 134 134 108 135 135 108 108 135 108 108 135 108 108 135 107 107 134 107 107 134 107 107 134 107 107 134 107 107 133 106 106 133 104 104 130 18 18 22 25 25 32 103 103 129 104 104 131 8 8 10 2 2 2 22 22 27 8 8 10 73 73 91 78 78 97 81 81 101 91 91 114 103 103 129 104 104 130 102 102 128 102 102 128 38 38 48 7 7 9 77 77 96 42 42 53 35 35 44 102 102 128 102 102 128 101 101 126 100 100 125 99 99 123 98 98 123 100 100 126 100 100 125 99 99 124 100 100 125 101 101 126 101 126 126 101 126 126 100 126 126 100 125 125 100 125 125 100 125 125 100 125 125 100 125 125 100 125 125 97 122 122 80 100 100 24 30 30 83 104 104 98 122 122 67 83 83 8 10 10 1 1 1 20 26 26 23 29 29 68 85 85 68 85 85 76 95 95 97 121 121 97 121 121 98 122 122 96 121 121 91 114 114 36 45 45 72 91 91 57 71 71 33 41 41 96 120 120 97 121 121 96 121 121 94 118 118 96 120 120 93 117 117 95 119 119 95 119 119 94 117 117 95 119 119 95 118 118 95 119 119 95 95 119 95 95 119 95 95 119 95 95 119 95 95 119 95 95 119 95 95 119 95 95 118 95 95 118 93 93 116 16 16 20 22 22 28 92 92 116 93 93 117 7 7 9 1 1 2 20 20 25 7 7 9 65 65 82 70 70 87 73 73 91 82 82 103
-40 50 50 146 182 182 147 184 184 147 184 184 139 174 174 139 174 174 109 137 137 149 187 187 152 190 190 152 190 190 152 190 190 152 190 190 148 186 186 148 185 185 151 189 189 148 185 185 151 188 188 150 150 188 150 150 188 150 150 188 150 150 187 150 150 187 149 149 187 149 149 187 149 149 186 123 123 154 100 100 126 126 126 157 39 39 48 135 135 168 116 116 146 140 140 175 143 143 179 134 134 167 114 114 143 142 142 178 65 65 81 13 13 16 39 39 49 51 51 64 35 35 44 26 26 33 82 82 103 64 64 80 38 38 47 68 68 86 138 138 173 132 132 166 131 131 164 131 131 163 103 103 128 140 140 175 143 143 179 143 143 178 142 142 178 142 142 178 139 139 174 139 139 174 142 142 177 131 131 164 141 141 176 139 139 174 141 176 176 140 176 176 140 175 175 140 175 175 140 175 175 139 174 174 139 174 174 115 144 144 94 117 117 117 147 147 36 45 45 96 120 120 108 136 136 130 163 163 133 166 166 124 156 156 106 133 133 132 165 165 129 162 162 12 15 15 37 46 46 48 60 60 32 41 41 30 37 37 76 95 95 111 139 139 35 44 44 63 79 79 128 160 160 122 153 153 128 160 160 121 151 151 107 134 134 130 162 162 132 165 165 132 165 165 131 164 164 131 164 164 128 161 161 129 162 162 130 163 163 121 151 151 130 163 163 128 161 161 129 129 162 129 129 162 129 129 161 129 129 161 128 128 161 128 128 160 128 128 160 120 120 150 86 86 108 72 72 90 33 33 41 88 88 110 99 99 124 255 255 155 255 255 148 255 255 158 255 206 116 255 255 151 150 104 58 255 255 151 255 218 122 255 244 137 104 72 40 146 101 57 255 192 107 255 255 158 255 255 160 255 255 161 255 255 161 255 255 161 252 126 0 252 126 0 252 126 0 247 123 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 249 124 0 214 107 0 35 17 0 45 22 0 7 3 0 22 11 0 20 10 0 22 11 0 153 76 0 247 123 0 252 126 0 165 82 0 94 47 0 71 35 0 124 62 0 104 52 0 173 86 0 247 123 0 252 126 0 247 123 0 247 123 0 81 40 0 10 5 0 114 57 0 170 85 0 221 110 0 56 28 0 244 122 0 244 122 0 237 118 0 237 118 0 234 117 0 239 119 0 234 117 0 244 122 0 244 122 0 239 119 0 247 123 0 110 138 138 110 138 138 110 138 138 110 137 137 110 137 137 108 135 135 107 134 134 101 127 127 106 133 133 107 134 134 108 108 135 108 108 135 108 108 135 108 108 135 108 108 135 107 107 134 107 107 134 100 100 126 88 88 111 60 60 75 90 90 113 74 74 92 96 96 121 100 100 126 102 102 128 102 102 128 69 69 86 82 82 102 100 100 125 46 46 58 28 28 35 5 5 6 37 37 46 23 23 29 18 18 23 86 86 107 46 46 57 27 27 34 98 98 123 99 99 124 99 99 124 93 93 117 83 83 104 73 73 92 100 100 125 102 102 128 102 102 128 102 102 127 102 102 127 100 100 126 99 99 124 101 101 127 99 99 124 101 101 126 101 126 126 101 126 126 101 126 126 100 126 126 100 125 125 100 125 125 100 125 125 94 117 117 82 103 103 56 70 70 84 105 105 26 32 32 90 113 113 78 98 98 96 120 120 96 120 120 65 81 81 77 96 96 95 119 119 43 54 54 8 11 11 4 6 6 34 43 43 21 27 27 17 22 22 55 69 69 43 54 54 25 32 32 92 115 115 93 117 117 93 116 116 88 110 110 88 110 110 69 87 87 95 118 118 96 121 121 96 120 120 96 120 120 96 120 120 94 118 118 94 118 118 96 120 120 94 117 117 96 120 120 94 118 118 95 95 119 95 95 119 95 95 119 95 95 119 95 95 119 95 95 119 95 95 119 78 78 98 64 64 80 80 80 100 24 24 31 86 86 107 74 74 93 89 89 112 91 91 114 85 85 107 73 73 91
-96 121 121 146 183 183 149 186 186 147 184 184 107 134 134 79 98 98 110 137 137 109 137 137 140 175 175 142 177 177 149 187 187 149 186 186 136 136 171 79 79 99 82 82 103 82 82 103 143 143 179 128 128 160 138 138 173 140 140 175 144 144 180 146 146 182 135 135 169 138 138 172 109 109 136 134 134 168 86 86 107 66 66 82 61 61 77 100 100 126 121 121 152 135 135 168 142 142 177 143 143 179 143 143 179 141 141 177 131 131 163 117 117 146 89 89 111 136 136 170 137 137 172 144 144 181 126 126 158 88 88 110 142 142 178 136 136 170 90 90 113 142 142 177 140 140 175 138 138 173 100 100 125 74 74 92 103 103 129 103 103 128 131 131 164 133 133 166 140 140 175 139 139 174 128 160 160 74 93 93 77 96 96 77 96 96 134 168 168 137 171 171 129 162 162 130 163 163 133 166 166 136 170 170 125 157 157 128 160 160 101 126 126 63 79 79 80 100 100 61 77 77 112 140 140 93 117 117 113 141 141 125 156 156 132 165 165 124 156 156 133 166 166 131 164 164 124 155 155 108 136 136 82 103 103 126 157 157 127 159 159 134 167 167 117 146 146 81 102 102 131 164 164 126 157 157 83 104 104 131 163 163 129 161 161 123 154 154 92 115 115 68 85 85 120 150 150 94 118 118 121 151 151 122 153 153 128 161 161 129 162 162 117 117 147 68 68 85 52 52 65 71 71 88 123 123 154 125 125 157 118 118 148 123 123 154 122 122 153 124 124 155 85 85 107 117 117 147 93 93 116 58 58 72 73 73 91 52 52 65 154 107 60 163 113 63 246 171 96 255 255 148 100 69 39 255 194 109 225 157 88 255 177 99 167 116 65 117 81 45 255 255 153 255 255 161 255 255 158 255 255 160 255 255 158 255 255 161 247 123 0 247 123 0 252 126 0 249 124 0 252 126 0 252 126 0 249 124 0 249 124 0 252 126 0 252 126 0 244 122 0 198 99 0 17 8 0 17 8 0 22 11 0 56 28 0 17 8 0 7 3 0 183 91 0 130 65 0 135 67 0 153 76 0 140 70 0 140 70 0 79 39 0 28 14 0 107 53 0 117 58 0 229 114 0 242 121 0 84 42 0 17 8 0 122 61 0 130 65 0 94 47 0 127 63 0 119 59 0 244 122 0 242 121 0 229 114 0 224 112 0 232 116 0 232 116 0 239 119 0 244 122 0 239 119 0 234 117 0 69 87 87 105 132 132 108 136 136 106 133 133 102 128 128 77 96 96 79 98 98 100 125 125 101 126 126 102 127 127 101 127 127 107 133 133 108 135 135 97 97 122 59 59 74 43 43 54 102 102 128 91 91 114 104 104 130 100 100 125 103 103 129 102 102 127 96 96 120 71 71 89 77 77 97 95 95 119 48 48 60 47 47 59 43 43 54 85 85 107 86 86 108 102 102 128 101 101 126 102 102 127 95 95 119 100 100 125 93 93 116 95 95 118 63 63 79 47 47 59 97 97 122 102 102 128 102 102 128 62 62 78 101 101 126 101 101 126 64 64 80 97 97 122 99 99 124 98 98 123 95 95 119 52 52 65 73 73 91 92 92 116 93 93 117 94 94 118 99 99 124 99 99 124 100 100 125 53 66 66 55 68 68 40 50 50 95 119 119 85 106 106 92 115 115 93 116 116 96 120 120 97 121 121 89 112 112 66 83 83 72 90 90 89 111 111 57 71 71 44 55 55 41 51 51 67 83 83 81 101 101 95 119 119 94 118 118 95 119 119 95 119 119 94 118 118 87 109 109 78 97 97 59 74 74 44 55 55 91 114 114 96 120 120 84 105 105 59 73 73 95 119 119 91 114 114 60 76 76 92 115 115 93 117 117 92 116 116 67 84 84 49 62 62 69 86 86 69 86 86 88 110 110 89 111 111 94 117 117 94 117 117 94 118 118 50 50 62 52 52 65 52 52 65 90 90 113 80 80 101 87 87 109 88 88 110 91 91 114 92 92 115 85 85 106 87 87 109 68 68 86
-191 191 191 189 189 189 187 187 187 187 187 187 183 183 183 182 182 182 180 180 180 192 153 192 188 150 188 189 151 189 187 150 187 185 148 185 185 148 185 184 147 184 184 147 184 184 147 184 180 144 180 187 150 187 183 147 183 183 146 183 189 151 189 184 147 184 182 146 182 165 132 165 75 60 75 73 59 73 49 39 49 15 12 15 30 24 30 24 19 24 15 12 15 43 34 43 118 94 118 86 69 86 56 44 56 173 139 173 170 136 170 175 140 175 182 146 182 182 145 182 183 147 183 176 140 176 172 137 172 175 140 175 177 141 177 176 141 176 182 145 182 180 144 180 177 142 177 177 142 177 175 140 175 168 134 168 171 137 171 169 135 169 170 136 170 179 179 179 175 175 175 175 175 175 173 173 173 173 173 173 172 172 172 170 170 170 172 172 172 168 168 168 173 173 173 174 174 174 171 171 171 174 174 174 175 175 175 170 170 170 171 171 171 153 153 153 68 68 68 73 73 73 45 45 45 28 28 28 7 7 7 22 22 22 40 40 40 113 113 113 109 109 109 52 52 52 93 93 93 160 160 160 162 162 162 167 167 167 168 168 168 169 169 169 166 166 166 162 162 162 162 162 162 163 163 163 163 163 163 168 168 168 167 167 167 165 165 165 163 163 163 161 161 161 161 161 161 157 157 157 157 157 157 155 155 155 165 132 165 161 129 161 162 130 162 160 128 160 158 127 158 158 126 158 158 126 158 157 126 157 157 126 157 154 123 154 160 128 160 156 125 156 156 125 156 160 128 160 157 125 157 155 124 155 140 112 140 64 51 64 255 180 101 217 151 84 255 244 137 255 255 148 163 113 63 138 96 53 175 122 68 255 212 119 255 189 106 37 26 14 255 255 160 255 255 161 255 255 160 255 255 158 255 255 156 255 255 161 249 124 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 249 124 0 252 126 0 252 126 0 249 124 0 242 121 0 168 84 0 5 2 0 53 26 0 25 12 0 48 24 0 43 21 0 81 40 0 153 76 0 175 87 0 209 104 0 214 107 0 178 89 0 153 76 0 168 84 0 160 80 0 168 84 0 89 44 0 196 98 0 155 77 0 76 38 0 66 33 0 15 7 0 175 87 0 109 54 0 140 70 0 244 122 0 247 123 0 239 119 0 224 112 0 224 112 0 232 116 0 229 114 0 242 121 0 229 114 0 229 114 0 244 122 0 137 137 137 134 134 134 134 134 134 135 135 135 135 135 135 138 138 138 138 138 138 137 137 137 135 135 135 133 133 133 133 133 133 130 130 130 130 130 130 128 128 128 136 109 136 133 106 133 134 107 134 133 106 133 131 105 131 131 105 131 131 104 131 130 104 130 130 104 130 127 102 127 132 106 132 130 104 130 129 103 129 133 106 133 130 104 130 129 103 129 116 93 116 53 42 53 52 41 52 34 27 34 10 8 10 21 17 21 17 13 17 10 8 10 30 24 30 83 66 83 60 48 60 39 31 39 122 98 122 119 95 119 123 98 123 128 102 128 128 102 128 129 103 129 124 99 124 121 96 121 123 98 123 124 99 124 124 99 124 128 102 128 126 101 126 125 100 125 125 100 125 123 98 123 118 94 118 120 96 120 119 95 119 120 96 120 126 126 126 123 123 123 123 123 123 122 122 122 122 122 122 122 122 122 120 120 120 121 121 121 119 119 119 122 122 122 123 123 123 121 121 121 123 123 123 124 124 124 120 120 120 121 121 121 109 109 109 48 48 48 52 52 52 32 32 32 19 19 19 4 4 4 16 16 16 28 28 28 80 80 80 78 78 78 37 37 37 66 66 66 114 114 114 115 115 115 119 119 119 120 120 120 121 121 121 119 119 119 116 116 116 116 116 116 117 117 117 117 117 117 120 120 120 120 120 120 119 119 119 118 118 118 116 116 116 116 116 116 114 114 114 114 114 114 112 112 112 113 113 113 117 93 117 118 94 118 117 93 117 115 92 115 115 92 115 115 92 115 115 92 115
-184 184 184 186 186 186 189 151 189 187 150 187 187 149 187 183 146 183 187 149 187 186 149 186 186 149 186 188 150 188 186 148 186 185 148 185 183 147 183 81 64 81 17 13 17 46 37 46 82 66 82 26 21 26 36 29 36 57 46 57 44 35 44 49 39 49 21 16 21 5 4 5 7 6 7 5 4 5 76 60 76 13 10 13 11 9 11 39 31 39 34 27 34 43 34 43 101 81 101 116 93 116 13 10 13 3 3 3 7 5 7 5 4 5 147 118 147 180 144 180 184 147 184 182 145 182 178 142 178 176 140 176 174 139 174 175 140 175 179 143 179 180 144 180 176 141 176 172 138 172 174 139 174 175 140 175 175 175 175 175 175 175 171 171 171 174 174 174 174 174 174 174 174 174 175 175 175 173 173 173 173 173 173 171 171 171 176 176 176 16 16 16 43 43 43 77 77 77 25 25 25 33 33 33 53 53 53 94 94 94 46 46 46 19 19 19 5 5 5 3 3 3 5 5 5 70 70 70 24 24 24 10 10 10 36 36 36 31 31 31 17 17 17 94 94 94 107 107 107 109 109 109 3 3 3 6 6 6 5 5 5 25 25 25 166 166 166 169 169 169 167 167 167 164 164 164 162 162 162 160 160 160 149 149 149 164 164 164 166 166 166 162 162 162 158 158 158 160 160 160 161 161 161 162 130 162 160 128 160 157 125 157 160 128 160 159 127 159 159 127 159 160 128 160 158 127 158 158 126 158 156 125 156 161 129 161 68 55 68 39 31 39 70 56 70 31 24 31 30 24 30 48 39 48 86 68 86 37 29 37 255 194 109 255 255 158 255 255 153 255 255 155 104 72 40 33 23 13 25 17 9 96 66 37 25 17 9 62 43 24 255 255 161 255 255 161 255 255 161 255 255 161 255 255 155 255 255 161 252 126 0 252 126 0 252 126 0 247 123 0 249 124 0 249 124 0 252 126 0 252 126 0 252 126 0 252 126 0 247 123 0 175 87 0 48 24 0 10 5 0 7 3 0 51 25 0 89 44 0 107 53 0 204 102 0 186 93 0 175 87 0 94 47 0 96 48 0 17 8 0 158 79 0 234 117 0 226 113 0 201 100 0 244 122 0 237 118 0 201 100 0 102 51 0 63 31 0 117 58 0 242 121 0 232 116 0 244 122 0 244 122 0 247 123 0 226 113 0 239 119 0 244 122 0 226 113 0 219 109 0 211 105 0 237 118 0 242 121 0 2 2 2 4 4 4 21 21 21 111 111 111 139 139 139 138 138 138 138 138 138 134 134 134 131 131 131 123 123 123 132 132 132 136 136 136 133 133 133 133 133 133 130 130 130 133 133 133 134 107 134 132 106 132 132 105 132 132 105 132 131 105 131 131 105 131 132 106 132 131 104 131 130 104 130 130 104 130 133 106 133 57 45 57 12 9 12 58 46 58 25 20 25 18 15 18 25 20 25 71 56 71 30 24 30 34 27 34 4 3 4 2 2 2 5 4 5 3 3 3 18 14 18 9 7 9 7 6 7 23 19 23 13 10 13 30 24 30 71 56 71 82 66 82 9 7 9 2 2 2 5 4 5 19 15 19 103 82 103 126 101 126 127 101 127 127 101 127 124 99 124 123 98 123 113 91 113 122 98 122 125 100 125 123 98 123 123 98 123 120 96 120 121 97 121 124 124 124 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 121 121 121 121 121 121 121 121 121 121 121 121 123 123 123 53 53 53 11 11 11 30 30 30 23 23 23 17 17 17 23 23 23 37 37 37 28 28 28 32 32 32 13 13 13 2 2 2 4 4 4 3 3 3 49 49 49 8 8 8 7 7 7 26 26 26 12 12 12 28 28 28 66 66 66 76 76 76 8 8 8 2 2 2 4 4 4 18 18 18 96 96 96 118 118 118 121 121 121 119 119 119 117 117 117 115 115 115 107 107 107 115 115 115 117 117 117 119 119 119 116 116 116 113 113 113 115 115 115 116 116 116 116 92 116 115 92 115
-194 155 194 194 155 194 194 155 194 194 155 194 191 153 191 191 153 191 158 126 158 117 93 117 79 63 79 5 4 5 13 10 13 44 35 44 27 21 27 23 18 23 121 97 121 83 66 83 75 60 75 146 117 146 9 7 9 15 12 15 17 13 17 19 15 19 55 44 55 32 26 32 24 19 24 43 35 43 55 44 55 24 19 24 49 39 49 72 57 72 68 54 68 39 31 39 24 19 24 22 18 22 9 7 9 11 9 11 7 6 7 163 130 163 185 148 185 183 146 183 181 145 181 177 141 177 173 138 173 178 142 178 178 142 178 174 139 174 161 128 161 177 142 177 182 182 182 182 182 182 182 182 182 182 182 182 181 181 181 181 181 181 181 181 181 179 179 179 178 178 178 147 147 147 109 109 109 74 74 74 19 19 19 12 12 12 41 41 41 25 25 25 37 37 37 113 113 113 77 77 77 69 69 69 135 135 135 8 8 8 14 14 14 16 16 16 17 17 17 14 14 14 30 30 30 22 22 22 40 40 40 12 12 12 22 22 22 45 45 45 66 66 66 83 83 83 36 36 36 22 22 22 20 20 20 19 19 19 10 10 10 6 6 6 150 150 150 170 170 170 168 168 168 166 166 166 162 162 162 159 159 159 163 163 163 163 163 163 159 159 159 147 147 147 167 167 167 167 134 167 167 133 167 166 133 166 166 133 166 166 132 166 165 132 165 165 132 165 163 130 163 163 130 163 134 107 134 99 79 99 4 3 4 18 14 18 11 9 11 37 30 37 19 15 19 34 27 34 103 82 103 70 56 70 63 50 63 100 80 100 8 6 8 255 255 161 255 229 129 255 255 143 255 238 134 37 26 14 41 29 16 87 61 34 29 20 11 158 110 62 255 255 161 255 255 161 255 255 160 255 255 160 255 255 155 255 255 160 252 126 0 249 124 0 244 122 0 252 126 0 252 126 0 252 126 0 252 126 0 249 124 0 249 124 0 249 124 0 242 121 0 22 11 0 30 15 0 7 3 0 2 1 0 61 30 0 28 14 0 109 54 0 168 84 0 252 126 0 244 122 0 191 95 0 112 56 0 127 63 0 181 90 0 247 123 0 244 122 0 175 87 0 237 118 0 249 124 0 206 103 0 244 122 0 242 121 0 239 119 0 158 79 0 234 117 0 244 122 0 234 117 0 226 113 0 221 110 0 242 121 0 244 122 0 229 114 0 234 117 0 224 112 0 229 114 0 51 51 51 68 68 68 30 30 30 18 18 18 7 7 7 15 15 15 8 8 8 5 5 5 139 139 139 139 139 139 138 138 138 136 136 136 130 130 130 131 131 131 134 134 134 133 133 133 121 121 121 133 133 133 137 137 137 137 109 137 136 109 136 136 109 136 136 109 136 136 108 136 136 108 136 134 107 134 134 107 134 133 107 133 110 88 110 55 44 55 4 3 4 14 11 14 9 7 9 18 15 18 16 12 16 28 22 28 84 67 84 52 41 52 101 81 101 83 66 83 6 5 6 12 9 12 13 10 13 38 30 38 10 8 10 17 13 17 30 24 30 38 30 38 9 7 9 34 27 34 50 40 50 47 37 47 63 50 63 27 22 27 15 12 15 6 5 6 14 11 14 7 6 7 113 90 113 128 102 128 128 102 128 127 101 127 122 98 122 120 96 120 121 97 121 123 98 123 121 96 121 111 89 111 123 98 123 126 101 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 125 125 125 124 124 124 124 124 124 124 124 124 75 75 75 51 51 51 3 3 3 13 13 13 28 28 28 17 17 17 15 15 15 26 26 26 53 53 53 48 48 48 95 95 95 77 77 77 9 9 9 11 11 11 12 12 12 36 36 36 21 21 21 16 16 16 28 28 28 35 35 35 8 8 8 32 32 32 46 46 46 44 44 44 59 59 59 15 15 15 14 14 14 6 6 6 13 13 13 4 4 4 106 106 106 120 120 120 120 120 120 118 118 118 115 115 115 113 113 113 114 114 114 116 116 116 114 114 114
-195 156 195 194 155 194 149 119 149 143 114 143 27 21 27 35 28 35 5 4 5 17 14 17 15 12 15 17 14 17 116 93 116 175 140 175 192 154 192 190 152 190 188 150 188 182 145 182 189 151 189 189 151 189 189 151 189 190 152 190 190 152 190 190 152 190 190 152 190 189 151 189 189 151 189 187 150 187 177 142 177 145 116 145 102 82 102 131 105 131 119 95 119 17 13 17 176 141 176 185 148 185 187 149 187 183 146 183 177 141 177 163 131 163 171 136 171 180 144 180 179 143 179 181 145 181 181 145 181 181 144 181 182 146 182 180 180 180 180 180 180 181 181 181 183 183 183 183 183 183 182 182 182 180 180 180 182 182 182 182 182 182 178 178 178 139 139 139 133 133 133 32 32 32 5 5 5 20 20 20 16 16 16 14 14 14 108 108 108 162 162 162 175 175 175 178 178 178 176 176 176 169 169 169 175 175 175 175 175 175 175 175 175 175 175 175 176 176 176 176 176 176 175 175 175 175 175 175 175 175 175 173 173 173 164 164 164 156 156 156 133 133 133 94 94 94 110 110 110 15 15 15 61 61 61 162 162 162 170 170 170 168 168 168 163 163 163 164 164 164 150 150 150 156 156 156 165 165 165 166 166 166 162 162 162 166 166 166 165 165 165 165 132 165 165 132 165 168 134 168 166 132 166 167 134 167 167 133 167 165 132 165 164 131 164 166 133 166 165 132 165 127 101 127 121 97 121 23 18 23 29 23 29 4 3 4 14 11 14 13 10 13 14 11 14 98 79 98 148 118 148 162 129 162 160 128 160 158 126 158 153 122 153 255 255 160 255 255 158 255 255 153 158 110 62 71 49 27 12 8 4 37 26 14 87 61 34 83 58 32 255 255 161 255 255 161 255 255 161 255 255 161 255 255 160 252 126 0 252 126 0 247 123 0 242 121 0 249 124 0 252 126 0 249 124 0 252 126 0 252 126 0 249 124 0 244 122 0 102 51 0 38 19 0 10 5 0 0 0 0 15 7 0 20 10 0 91 45 0 107 53 0 221 110 0 252 126 0 249 124 0 232 116 0 239 119 0 244 122 0 247 123 0 252 126 0 242 121 0 191 95 0 196 98 0 211 105 0 239 119 0 249 124 0 234 117 0 221 110 0 196 98 0 249 124 0 244 122 0 232 116 0 226 113 0 242 121 0 234 117 0 242 121 0 237 118 0 239 119 0 226 113 0 226 113 0 142 142 142 133 133 133 127 127 127 109 109 109 77 77 77 90 90 90 12 12 12 49 49 49 132 132 132 138 138 138 140 140 140 132 132 132 134 134 134 122 122 122 127 127 127 134 134 134 135 135 135 132 132 132 135 135 135 135 135 135 136 136 136 134 107 134 137 109 137 135 108 135 136 109 136 136 109 136 134 107 134 134 107 134 135 108 135 135 108 135 132 106 132 99 79 99 19 15 19 24 19 24 4 3 4 14 11 14 10 8 10 12 9 12 80 64 80 121 96 121 130 104 130 131 105 131 130 104 130 125 100 125 130 104 130 130 104 130 130 104 130 131 105 131 131 105 131 131 105 131 131 104 131 130 104 130 130 104 130 129 103 129 122 97 122 116 93 116 70 56 70 90 72 90 82 65 82 11 9 11 45 36 45 127 102 127 128 103 128 126 100 126 121 97 121 123 98 123 117 94 117 124 99 124 123 99 123 124 99 124 122 97 122 124 99 124 125 100 125 124 124 124 124 124 124 126 126 126 126 126 126 126 126 126 126 126 126 124 124 124 124 124 124 125 125 125 122 122 122 96 96 96 92 92 92 17 17 17 3 3 3 13 13 13 11 11 11 10 10 10 11 11 11 112 112 112 121 121 121 123 123 123 122 122 122 120 120 120 122 122 122 121 121 121 121 121 121 121 121 121 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 122 114 114 114 109 109 109 93 93 93 66 66 66 84 84 84 11 11 11 42 42 42 113 113 113 119 119 119 120 120 120 114 114 114 115 115 115
-7 6 7 0 0 0 5 4 5 17 14 17 9 7 9 41 33 41 129 103 129 178 142 178 193 155 193 187 150 187 146 117 146 64 51 64 97 77 97 153 123 153 173 138 173 172 138 172 182 145 182 153 122 153 185 148 185 179 143 179 152 122 152 117 94 117 77 61 77 48 38 48 88 70 88 176 141 176 113 90 113 132 105 132 183 146 183 185 148 185 179 143 179 167 134 167 169 135 169 167 133 167 172 138 172 174 139 174 170 136 170 183 146 183 182 146 182 177 141 177 176 141 176 180 144 180 185 185 185 183 183 183 177 177 177 181 181 181 182 182 182 180 180 180 180 180 180 183 183 183 181 181 181 177 177 177 179 179 179 73 73 73 27 27 27 0 0 0 5 5 5 16 16 16 9 9 9 38 38 38 78 78 78 165 165 165 180 180 180 174 174 174 136 136 136 59 59 59 79 79 79 142 142 142 160 160 160 160 160 160 168 168 168 141 141 141 121 121 121 166 166 166 140 140 140 108 108 108 71 71 71 44 44 44 83 83 83 162 162 162 104 104 104 121 121 121 168 168 168 170 170 170 171 171 171 164 164 164 155 155 155 153 153 153 158 158 158 159 159 159 156 156 156 164 164 164 167 167 167 162 162 162 161 161 161 165 165 165 169 135 169 169 135 169 162 129 162 165 132 165 166 133 166 164 131 164 164 131 164 167 134 167 165 132 165 161 129 161 163 130 163 67 53 67 25 20 25 6 5 6 5 4 5 15 12 15 8 6 8 34 27 34 71 57 71 109 87 109 163 130 163 158 126 158 123 98 123 54 43 54 72 57 72 255 255 156 255 255 155 255 250 140 255 215 120 146 101 57 37 26 14 12 8 4 255 255 160 25 17 9 255 255 161 255 255 161 255 255 158 255 255 161 255 255 160 252 126 0 252 126 0 249 124 0 242 121 0 247 123 0 252 126 0 252 126 0 252 126 0 252 126 0 247 123 0 247 123 0 142 71 0 102 51 0 25 12 0 10 5 0 17 8 0 22 11 0 66 33 0 94 47 0 178 89 0 224 112 0 244 122 0 242 121 0 239 119 0 249 124 0 252 126 0 249 124 0 242 121 0 209 104 0 226 113 0 226 113 0 239 119 0 239 119 0 221 110 0 122 61 0 216 108 0 252 126 0 244 122 0 244 122 0 242 121 0 229 114 0 239 119 0 244 122 0 224 112 0 234 117 0 242 121 0 237 118 0 134 134 134 114 114 114 57 57 57 36 36 36 67 67 67 66 66 66 131 131 131 84 84 84 137 137 137 138 138 138 139 139 139 133 133 133 124 124 124 125 125 125 128 128 128 129 129 129 126 126 126 133 133 133 136 136 136 135 135 135 131 131 131 133 133 133 137 110 137 137 110 137 136 108 136 131 105 131 135 108 135 133 107 133 133 106 133 136 108 136 136 108 136 134 107 134 132 106 132 54 43 54 20 16 20 5 4 5 0 0 0 4 3 4 12 9 12 28 22 28 58 46 58 89 71 89 122 98 122 133 106 133 128 103 128 44 35 44 58 47 58 66 53 66 105 84 105 118 94 118 118 94 118 104 83 104 90 72 90 127 101 127 122 98 122 104 83 104 80 64 80 32 26 32 61 49 61 60 48 60 120 96 120 77 61 77 90 72 90 126 101 126 127 102 127 122 97 122 114 91 114 115 92 115 114 91 114 119 95 119 116 93 116 122 98 122 125 100 125 124 99 124 120 96 120 123 98 123 126 126 126 126 126 126 125 125 125 121 121 121 123 123 123 123 123 123 123 123 123 125 125 125 125 125 125 124 124 124 121 121 121 122 122 122 18 18 18 5 5 5 0 0 0 3 3 3 11 11 11 6 6 6 53 53 53 82 82 82 113 113 113 123 123 123 119 119 119 93 93 93 54 54 54 62 62 62 98 98 98 110 110 110 110 110 110 116 116 116 84 84 84 118 118 118 114 114 114 97 97 97 75 75 75 49 49 49 57 57 57 56 56 56 112 112 112 72 72 72 84 84 84 117 117 117
-27 22 27 47 37 47 47 37 47 59 47 59 145 116 145 191 152 191 194 155 194 194 155 194 194 155 194 194 155 194 193 155 193 193 154 193 191 153 191 169 135 169 97 78 97 179 143 179 171 136 171 83 66 83 131 105 131 182 145 182 168 134 168 92 74 92 164 131 164 189 151 189 190 152 190 184 147 184 176 141 176 172 138 172 178 142 178 183 147 183 175 140 175 171 137 171 181 144 181 177 141 177 161 129 161 178 142 178 168 135 168 168 134 168 187 187 187 185 185 185 184 184 184 184 184 184 186 186 186 184 184 184 181 181 181 185 185 185 185 185 185 184 184 184 184 184 184 184 184 184 184 184 184 183 183 183 183 183 183 122 122 122 31 31 31 35 35 35 25 25 25 44 44 44 44 44 44 55 55 55 177 177 177 179 179 179 180 180 180 180 180 180 180 180 180 179 179 179 179 179 179 179 179 179 157 157 157 153 153 153 90 90 90 165 165 165 158 158 158 77 77 77 121 121 121 168 168 168 146 146 146 85 85 85 151 151 151 173 173 173 175 175 175 169 169 169 162 162 162 158 158 158 172 172 172 168 168 168 161 161 161 157 157 157 166 166 166 162 162 162 148 148 148 163 163 163 147 147 147 154 154 154 171 136 171 169 135 169 168 135 168 168 134 168 169 135 169 166 132 166 169 135 169 168 135 168 168 134 168 168 134 168 168 134 168 167 134 167 167 133 167 167 133 167 158 126 158 110 88 110 28 22 28 31 25 31 23 18 23 40 32 40 39 31 39 123 98 123 160 128 160 162 129 162 163 130 163 163 130 163 162 130 162 162 130 162 255 255 150 255 255 155 255 215 120 255 186 104 50 34 19 255 255 160 255 255 161 87 61 34 255 255 161 255 255 160 255 255 158 255 255 161 255 255 160 252 126 0 252 126 0 249 124 0 244 122 0 249 124 0 252 126 0 252 126 0 252 126 0 249 124 0 252 126 0 252 126 0 252 126 0 244 122 0 30 15 0 45 22 0 10 5 0 56 28 0 17 8 0 22 11 0 132 66 0 244 122 0 249 124 0 247 123 0 252 126 0 252 126 0 252 126 0 249 124 0 221 110 0 127 63 0 191 95 0 107 53 0 165 82 0 239 119 0 214 107 0 178 89 0 252 126 0 252 126 0 249 124 0 244 122 0 242 121 0 214 107 0 242 121 0 234 117 0 244 122 0 244 122 0 242 121 0 124 124 124 72 72 72 133 133 133 127 127 127 98 98 98 135 135 135 125 125 125 118 118 118 69 69 69 122 122 122 140 140 140 141 141 141 131 131 131 128 128 128 132 132 132 139 139 139 136 136 136 130 130 130 127 127 127 133 133 133 119 119 119 132 132 132 124 124 124 118 118 118 124 124 124 138 110 138 136 109 136 136 108 136 137 109 137 135 108 135 134 107 134 136 109 136 136 109 136 136 108 136 136 108 136 135 108 135 135 108 135 135 108 135 135 108 135 128 102 128 89 71 89 23 18 23 25 20 25 32 25 32 32 25 32 40 32 40 99 79 99 130 104 130 131 105 131 132 106 132 132 106 132 132 105 132 132 105 132 131 105 131 130 104 130 115 92 115 112 90 112 66 53 66 121 97 121 56 45 56 89 71 89 123 99 123 114 91 114 107 86 107 62 50 62 111 89 111 129 103 129 125 100 125 120 96 120 117 93 117 120 96 120 127 101 127 124 99 124 119 95 119 122 98 122 120 96 120 109 87 109 121 96 121 114 91 114 109 87 109 114 91 114 126 126 126 125 125 125 125 125 125 126 126 126 125 125 125 123 123 123 125 125 125 125 125 125 125 125 125 125 125 125 125 125 125 125 125 125 125 125 125 124 124 124 118 118 118 83 83 83 21 21 21 17 17 17 30 30 30 30 30 30 37 37 37 92 92 92 121 121 121 122 122 122 123 123 123 123 123 123 123 123 123 122 122 122 122 122 122 121 121 121 107 107 107 105 105 105 113 113 113 108 108 108 53 53 53 83 83 83 115 115 115 106 106 106
-95 76 95 117 93 117 162 129 162 172 137 172 189 151 189 191 153 191 191 153 191 191 152 191 173 138 173 186 149 186 186 149 186 186 149 186 156 125 156 146 117 146 117 93 117 173 139 173 115 92 115 112 90 112 186 149 186 192 153 192 188 150 188 191 153 191 191 153 191 191 153 191 191 152 191 189 151 189 181 144 181 180 144 180 182 146 182 182 145 182 180 144 180 172 137 172 164 131 164 179 143 179 183 146 183 188 188 188 188 188 188 188 188 188 185 185 185 185 185 185 183 183 183 187 187 187 186 186 186 186 186 186 182 182 182 180 180 180 183 183 183 185 185 185 185 185 185 184 184 184 180 180 180 70 70 70 39 39 39 7 7 7 35 35 35 120 120 120 103 103 103 71 71 71 88 88 88 108 108 108 150 150 150 176 176 176 177 177 177 177 177 177 177 177 177 160 160 160 174 174 174 172 172 172 172 172 172 172 172 172 144 144 144 135 135 135 160 160 160 106 106 106 104 104 104 172 172 172 175 175 175 177 177 177 173 173 173 176 176 176 176 176 176 175 175 175 173 173 173 166 166 166 166 166 166 167 167 167 167 167 167 154 154 154 164 164 164 157 157 157 150 150 150 164 164 164 172 137 172 172 137 172 171 137 171 169 135 169 169 135 169 167 133 167 167 133 167 170 136 170 169 135 169 169 135 169 165 132 165 167 133 167 168 134 168 168 134 168 168 134 168 164 131 164 93 74 93 64 51 64 35 28 35 6 5 6 31 25 31 93 75 93 65 52 65 80 64 80 98 78 98 136 109 136 144 115 144 159 127 159 160 128 160 160 128 160 255 255 151 255 255 151 184 128 71 96 66 37 255 224 125 255 255 158 255 241 135 71 49 27 255 255 161 255 255 161 255 255 160 255 255 161 255 255 156 252 126 0 249 124 0 249 124 0 252 126 0 252 126 0 249 124 0 244 122 0 249 124 0 252 126 0 252 126 0 252 126 0 249 124 0 247 123 0 239 119 0 168 84 0 43 21 0 35 17 0 61 30 0 61 30 0 188 94 0 221 110 0 249 124 0 252 126 0 252 126 0 252 126 0 249 124 0 178 89 0 99 49 0 43 21 0 20 10 0 112 56 0 191 95 0 181 90 0 124 62 0 249 124 0 252 126 0 252 126 0 247 123 0 252 126 0 252 126 0 244 122 0 244 122 0 232 116 0 229 114 0 219 109 0 244 122 0 140 140 140 139 139 139 138 138 138 138 138 138 116 116 116 109 109 109 129 129 129 85 85 85 83 83 83 138 138 138 141 141 141 142 142 142 139 139 139 141 141 141 141 141 141 141 141 141 139 139 139 133 133 133 133 133 133 134 134 134 134 134 134 124 124 124 132 132 132 126 126 126 120 120 120 131 131 131 134 134 134 138 110 138 138 110 138 136 109 136 136 108 136 134 107 134 134 107 134 136 109 136 136 109 136 136 109 136 133 106 133 134 107 134 135 108 135 135 108 135 135 108 135 132 105 132 74 59 74 51 41 51 28 22 28 5 4 5 25 20 25 75 60 75 52 42 52 64 51 64 79 63 79 110 88 110 116 93 116 128 102 128 129 103 129 129 103 129 129 103 129 117 93 117 126 101 126 126 100 126 125 100 125 105 84 105 99 79 99 79 63 79 117 93 117 77 62 77 76 60 76 126 100 126 129 103 129 126 101 126 129 103 129 129 103 129 129 103 129 128 103 128 127 101 127 122 97 122 121 97 121 123 98 123 122 98 122 121 97 121 116 92 116 110 88 110 120 96 120 123 98 123 127 127 127 126 126 126 126 126 126 125 125 125 125 125 125 123 123 123 126 126 126 125 125 125 125 125 125 123 123 123 121 121 121 124 124 124 125 125 125 125 125 125 124 124 124 122 122 122 47 47 47 26 26 26 5 5 5 23 23 23 81 81 81 70 70 70 48 48 48 59 59 59 73 73 73 102 102 102 119 119 119 120 120 120 120 120 120 120 120 120 109 109 109 118 118 118 117 117 117 117 117 117 117 117 117
-127 101 127 107 85 107 162 130 162 190 152 190 190 152 190 192 153 192 183 147 183 189 151 189 187 149 187 187 149 187 165 132 165 41 33 41 49 39 49 113 91 113 52 42 52 137 109 137 191 153 191 193 154 193 193 154 193 192 154 192 192 154 192 192 153 192 190 152 190 186 148 186 182 145 182 168 134 168 185 148 185 181 145 181 183 146 183 184 147 184 184 147 184 182 145 182 189 189 189 189 189 189 189 189 189 189 189 189 188 188 188 188 188 188 188 188 188 188 188 188 187 187 187 187 187 187 187 187 187 187 187 187 186 186 186 186 186 186 178 178 178 39 39 39 24 24 24 125 125 125 170 170 170 39 39 39 16 16 16 3 3 3 7 7 7 42 42 42 98 98 98 127 127 127 123 123 123 118 118 118 99 99 99 150 150 150 174 174 174 176 176 176 175 175 175 170 170 170 175 175 175 173 173 173 172 172 172 152 152 152 38 38 38 45 45 45 104 104 104 48 48 48 126 126 126 176 176 176 177 177 177 177 177 177 177 177 177 177 177 177 176 176 176 174 174 174 170 170 170 166 166 166 154 154 154 169 169 169 166 166 166 167 167 167 169 169 169 168 168 168 166 166 166 173 138 173 173 138 173 172 138 172 172 138 172 172 137 172 171 137 171 171 137 171 171 137 171 170 136 170 170 136 170 170 136 170 170 136 170 169 135 169 169 135 169 162 129 162 35 28 35 22 17 22 113 91 113 122 97 122 154 123 154 15 12 15 3 2 3 6 5 6 38 30 38 88 71 88 115 92 115 111 89 111 106 85 106 89 71 89 136 108 136 157 125 157 158 127 158 217 151 84 142 98 55 255 186 104 255 255 156 255 250 140 255 255 151 230 160 89 255 255 161 255 255 161 255 255 156 255 255 160 255 255 160 249 124 0 244 122 0 252 126 0 252 126 0 249 124 0 247 123 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 249 124 0 247 123 0 242 121 0 73 36 0 89 44 0 25 12 0 112 56 0 158 79 0 122 61 0 234 117 0 247 123 0 252 126 0 249 124 0 247 123 0 224 112 0 160 80 0 89 44 0 237 118 0 242 121 0 191 95 0 183 91 0 247 123 0 249 124 0 247 123 0 252 126 0 252 126 0 252 126 0 239 119 0 242 121 0 244 122 0 234 117 0 239 119 0 244 122 0 249 124 0 141 141 141 141 141 141 142 142 142 136 136 136 140 140 140 138 138 138 138 138 138 122 122 122 36 36 36 84 84 84 39 39 39 101 101 101 141 141 141 142 142 142 142 142 142 141 141 141 141 141 141 141 141 141 141 141 141 139 139 139 136 136 136 133 133 133 123 123 123 132 132 132 134 134 134 135 135 135 135 135 135 133 133 133 138 111 138 138 110 138 138 110 138 138 110 138 137 110 137 137 110 137 137 109 137 137 109 137 136 109 136 136 109 136 136 109 136 136 108 136 136 108 136 135 108 135 130 104 130 28 22 28 17 14 17 91 73 91 97 78 97 123 98 123 28 22 28 12 9 12 2 2 2 5 4 5 31 24 31 71 57 71 90 72 90 85 68 85 72 57 72 109 87 109 126 101 126 128 102 128 127 102 127 129 103 129 123 98 123 127 101 127 125 100 125 125 100 125 110 88 110 27 22 27 32 26 32 35 28 35 91 73 91 128 102 128 129 103 129 129 103 129 129 103 129 129 103 129 128 103 128 128 103 128 127 101 127 124 99 124 121 97 121 112 90 112 124 99 124 121 97 121 122 97 122 123 98 123 122 97 122 127 127 127 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 125 125 125 125 125 125 125 125 125 125 125 125 125 125 125 125 125 125 119 119 119 26 26 26 16 16 16 84 84 84 90 90 90 114 114 114 26 26 26 11 11 11 2 2 2 5 5 5 28 28 28 66 66 66 86 86 86 83 83 83 79 79 79 101 101 101 117 117 117 119 119 119
-17 14 17 23 19 23 23 19 23 83 66 83 71 57 71 93 74 93 37 30 37 148 118 148 191 153 191 191 153 191 183 146 183 185 148 185 110 88 110 186 149 186 192 154 192 194 155 194 188 150 188 186 148 186 183 147 183 183 146 183 189 151 189 185 148 185 186 149 186 186 149 186 188 150 188 188 150 188 191 153 191 185 148 185 191 191 191 191 191 191 190 190 190 190 190 190 186 186 186 180 180 180 187 187 187 189 189 189 189 189 189 189 189 189 188 188 188 188 188 188 188 188 188 188 188 188 165 165 165 24 24 24 132 132 132 173 173 173 166 166 166 165 165 165 176 176 176 174 174 174 183 183 183 183 183 183 3 3 3 0 0 0 3 3 3 5 5 5 11 11 11 13 13 13 33 33 33 33 33 33 14 14 14 16 16 16 22 22 22 22 22 22 77 77 77 66 66 66 86 86 86 34 34 34 137 137 137 176 176 176 176 176 176 169 169 169 170 170 170 101 101 101 171 171 171 177 177 177 178 178 178 172 172 172 170 170 170 168 168 168 173 173 173 169 169 169 171 171 171 171 171 171 170 170 170 172 172 172 172 172 172 175 175 175 169 169 169 174 139 174 174 139 174 174 139 174 173 139 173 169 135 169 164 131 164 171 136 171 172 138 172 172 137 172 171 137 171 171 137 171 171 137 171 171 136 171 170 136 170 149 119 149 22 17 22 120 96 120 157 126 157 150 120 150 160 128 160 158 126 158 166 133 166 166 132 166 66 52 66 3 2 3 0 0 0 3 2 3 5 4 5 10 8 10 11 9 11 30 24 30 30 24 30 13 10 13 14 11 14 255 186 104 255 255 147 255 255 155 255 189 106 255 253 142 255 255 143 167 116 65 255 255 161 255 255 160 255 255 158 255 255 158 255 255 161 249 124 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 249 124 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 102 51 0 22 11 0 28 14 0 114 57 0 63 31 0 137 68 0 150 75 0 191 95 0 237 118 0 252 126 0 252 126 0 239 119 0 244 122 0 242 121 0 242 121 0 204 102 0 153 76 0 214 107 0 25 12 0 216 108 0 252 126 0 252 126 0 249 124 0 247 123 0 239 119 0 247 123 0 244 122 0 237 118 0 232 116 0 244 122 0 244 122 0 26 26 26 26 26 26 11 11 11 13 13 13 17 17 17 17 17 17 61 61 61 52 52 52 68 68 68 27 27 27 109 109 109 141 141 141 135 135 135 136 136 136 81 81 81 137 137 137 141 141 141 142 142 142 137 137 137 136 136 136 134 134 134 134 134 134 138 138 138 135 135 135 136 136 136 136 136 136 135 135 135 137 137 137 136 136 136 139 139 139 134 134 134 138 111 138 138 110 138 138 110 138 138 110 138 135 108 135 130 104 130 136 108 136 137 109 137 137 109 137 136 109 136 136 109 136 136 109 136 136 108 136 119 95 119 17 14 17 95 76 95 125 100 125 120 96 120 119 95 119 127 102 127 126 101 126 132 106 132 132 106 132 52 42 52 2 2 2 0 0 0 2 2 2 4 3 4 8 6 8 9 7 9 24 19 24 24 19 24 10 8 10 11 9 11 15 12 15 15 12 15 55 44 55 62 49 62 25 20 25 99 79 99 127 102 127 127 102 127 122 97 122 123 98 123 73 58 73 124 99 124 128 102 128 129 103 129 125 100 125 123 99 123 122 97 122 122 97 122 125 100 125 123 98 123 124 99 124 124 99 124 124 99 124 125 100 125 124 99 124 127 101 127 123 98 123 127 127 127 126 126 126 126 126 126 126 126 126 120 120 120 125 125 125 126 126 126 126 126 126 125 125 125 125 125 125 125 125 125 125 125 125 125 125 125 110 110 110 16 16 16 88 88 88 115 115 115 110 110 110 110 110 110 118 118 118 116 116 116 122 122 122 122 122 122 48 48 48 2 2 2 0 0 0 2 2 2 3 3 3
-51 41 51 93 75 93 187 150 187 189 151 189 181 144 181 188 151 188 178 143 178 178 142 178 158 126 158 140 112 140 191 153 191 195 156 195 195 156 195 195 156 195 195 156 195 194 155 194 194 155 194 190 152 190 192 153 192 189 151 189 193 154 193 179 143 179 189 151 189 193 154 193 190 152 190 192 192 192 192 192 192 192 192 192 191 191 191 191 191 191 191 191 191 191 191 191 190 190 190 190 190 190 190 190 190 178 178 178 157 157 157 128 128 128 107 107 107 160 160 160 49 49 49 131 131 131 171 171 171 148 148 148 178 178 178 181 181 181 181 181 181 170 170 170 122 122 122 145 145 145 180 180 180 176 176 176 82 82 82 16 16 16 50 50 50 9 9 9 65 65 65 44 44 44 40 40 40 33 33 33 103 103 103 151 151 151 81 81 81 48 48 48 86 86 86 173 173 173 174 174 174 167 167 167 174 174 174 164 164 164 164 164 164 145 145 145 129 129 129 176 176 176 179 179 179 179 179 179 179 179 179 178 178 178 178 178 178 178 178 178 174 174 174 175 175 175 173 173 173 177 177 177 164 164 164 172 172 172 176 176 176 175 140 175 175 140 175 175 140 175 175 140 175 174 139 174 174 139 174 174 139 174 173 139 173 173 138 173 173 138 173 162 129 162 142 114 142 116 93 116 97 77 97 145 116 145 45 36 45 119 95 119 155 124 155 134 107 134 161 129 161 164 131 164 164 131 164 153 123 153 110 88 110 131 104 131 163 130 163 159 127 159 74 59 74 15 12 15 45 36 45 8 6 8 58 47 58 40 32 40 36 29 36 30 24 30 93 74 93 255 255 158 255 255 156 255 255 158 255 226 127 255 255 156 255 253 142 255 255 145 255 255 161 255 255 161 255 255 161 255 255 161 252 126 0 252 126 0 249 124 0 249 124 0 252 126 0 252 126 0 247 123 0 252 126 0 249 124 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 232 116 0 38 19 0 43 21 0 56 28 0 165 82 0 142 71 0 122 61 0 150 75 0 209 104 0 244 122 0 244 122 0 249 124 0 142 71 0 117 58 0 84 42 0 109 54 0 178 89 0 239 119 0 48 24 0 15 7 0 124 62 0 252 126 0 252 126 0 252 126 0 252 126 0 247 123 0 244 122 0 239 119 0 244 122 0 239 119 0 244 122 0 252 126 0 7 7 7 52 52 52 35 35 35 32 32 32 26 26 26 82 82 82 120 120 120 64 64 64 38 38 38 68 68 68 137 137 137 138 138 138 132 132 132 138 138 138 130 130 130 130 130 130 115 115 115 102 102 102 139 139 139 142 142 142 142 142 142 142 142 142 141 141 141 141 141 141 141 141 141 138 138 138 139 139 139 137 137 137 140 140 140 130 130 130 137 137 137 139 139 139 138 138 138 139 111 139 138 111 138 138 110 138 138 110 138 138 110 138 138 110 138 137 110 137 137 110 137 137 109 137 128 103 128 113 90 113 92 73 92 77 61 77 115 92 115 35 28 35 94 75 94 123 98 123 106 85 106 128 102 128 130 104 130 130 104 130 122 97 122 88 70 88 104 83 104 129 103 129 126 101 126 59 47 59 12 9 12 36 29 36 6 5 6 46 37 46 32 25 32 29 23 29 24 19 24 74 59 74 109 87 109 58 46 58 34 27 34 62 49 62 124 99 124 125 100 125 120 96 120 125 100 125 118 94 118 118 94 118 105 84 105 93 74 93 127 101 127 129 103 129 129 103 129 129 103 129 128 103 128 128 103 128 128 102 128 125 100 125 127 101 127 125 100 125 127 102 127 118 95 118 125 100 125 127 102 127 126 100 126 127 127 127 127 127 127 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 126 125 125 125 118 118 118 104 104 104 84 84 84 70 70 70 106 106 106 32 32 32 87 87 87 113 113 113 98 98 98 118 118 118 120 120 120 120 120 120 112 112 112 81 81 81 96 96 96
-186 149 186 174 139 174 178 142 178 177 142 177 167 134 167 145 116 145 129 103 129 155 124 155 188 151 188 194 155 194 196 157 196 196 156 196 195 156 195 195 156 195 193 154 193 195 156 195 191 152 191 194 155 194 194 155 194 194 155 194 192 153 192 188 150 188 193 193 193 193 193 193 193 193 193 185 185 185 190 190 190 157 157 157 85 85 85 124 124 124 96 96 96 156 156 156 116 116 116 173 173 173 144 144 144 184 184 184 171 171 171 161 161 161 140 140 140 126 126 126 160 160 160 133 133 133 167 167 167 102 102 102 110 110 110 153 153 153 104 104 104 121 121 121 123 123 123 160 160 160 181 181 181 120 120 120 71 71 71 31 31 31 108 108 108 142 142 142 138 138 138 54 54 54 56 56 56 46 46 46 165 165 165 157 157 157 172 172 172 166 166 166 172 172 172 160 160 160 164 164 164 163 163 163 163 163 163 154 154 154 133 133 133 118 118 118 142 142 142 173 173 173 178 178 178 180 180 180 179 179 179 179 179 179 177 177 177 178 178 178 175 175 175 178 178 178 178 178 178 177 177 177 175 175 175 171 171 171 176 141 176 176 141 176 176 141 176 168 135 168 173 139 173 143 114 143 77 62 77 113 90 113 88 70 88 142 114 142 105 84 105 157 126 157 131 105 131 167 134 167 155 124 155 146 117 146 126 101 126 114 91 114 145 116 145 121 96 121 151 121 151 93 74 93 99 79 99 139 111 139 94 75 94 109 87 109 110 88 110 144 115 144 163 130 163 108 86 108 64 51 64 28 23 28 97 78 97 128 102 128 124 99 124 48 38 48 50 40 50 50 40 50 255 255 150 255 255 160 230 160 89 255 238 134 255 255 150 255 253 142 255 255 161 255 255 161 255 255 161 255 255 161 252 126 0 252 126 0 249 124 0 247 123 0 249 124 0 244 122 0 249 124 0 249 124 0 244 122 0 247 123 0 249 124 0 252 126 0 252 126 0 247 123 0 140 70 0 96 48 0 10 5 0 12 6 0 107 53 0 145 72 0 140 70 0 155 77 0 178 89 0 204 102 0 247 123 0 249 124 0 229 114 0 142 71 0 79 39 0 140 70 0 234 117 0 229 114 0 63 31 0 147 73 0 178 89 0 249 124 0 252 126 0 252 126 0 247 123 0 244 122 0 244 122 0 249 124 0 244 122 0 229 114 0 247 123 0 247 123 0 95 95 95 56 56 56 25 25 25 86 86 86 113 113 113 109 109 109 42 42 42 44 44 44 36 36 36 131 131 131 125 125 125 136 136 136 131 131 131 136 136 136 127 127 127 129 129 129 129 129 129 122 122 122 105 105 105 94 94 94 112 112 112 137 137 137 141 141 141 142 142 142 142 142 142 141 141 141 140 140 140 141 141 141 138 138 138 140 140 140 140 140 140 140 140 140 138 138 138 135 135 135 139 111 139 139 111 139 139 111 139 133 106 133 137 109 137 113 90 113 61 49 61 89 71 89 69 55 69 112 90 112 83 66 83 124 99 124 103 82 103 132 106 132 122 98 122 115 92 115 100 80 100 90 72 90 90 72 90 114 91 114 95 76 95 119 95 119 73 58 73 78 63 78 109 87 109 74 59 74 86 69 86 87 70 87 114 91 114 129 103 129 86 68 86 51 40 51 22 18 22 77 62 77 101 81 101 98 79 98 38 30 38 39 31 39 33 26 33 118 94 118 112 90 112 123 98 123 119 95 119 122 98 122 114 91 114 117 93 117 117 93 117 110 88 110 95 76 95 85 68 85 102 81 102 124 99 124 127 102 127 129 103 129 128 103 128 128 102 128 127 101 127 128 102 128 125 100 125 128 102 128 127 102 127 127 102 127 126 101 126 123 98 123 127 127 127 127 127 127 127 127 127 121 121 121 125 125 125 103 103 103 56 56 56 81 81 81 63 63 63 63 63 63 102 102 102 76 76 76 114 114 114 95 95 95 121 121 121 112 112 112 106 106 106 92 92 92 83 83 83 105 105 105 88 88 88 110 110 110
-186 149 186 124 99 124 188 150 188 194 155 194 192 153 192 189 151 189 183 146 183 137 110 137 101 81 101 141 113 141 178 143 178 141 112 141 180 144 180 182 145 182 182 145 182 191 153 191 191 153 191 193 154 193 175 175 175 102 102 102 106 106 106 78 78 78 78 78 78 105 105 105 183 183 183 164 164 164 187 187 187 177 177 177 179 179 179 184 184 184 182 182 182 186 186 186 172 172 172 127 127 127 175 175 175 139 139 139 171 171 171 86 86 86 109 109 109 84 84 84 78 78 78 153 153 153 128 128 128 154 154 154 183 183 183 183 183 183 171 171 171 180 180 180 182 182 182 170 170 170 181 181 181 179 179 179 166 166 166 169 169 169 148 148 148 112 112 112 84 84 84 172 172 172 174 174 174 183 183 183 182 182 182 160 160 160 111 111 111 180 180 180 180 180 180 172 172 172 114 114 114 173 173 173 178 178 178 178 178 178 176 176 176 174 174 174 168 168 168 126 126 126 93 93 93 129 129 129 164 164 164 129 129 129 165 165 165 166 166 166 166 166 166 175 175 175 175 175 175 176 176 176 160 128 160 93 74 93 96 77 96 71 57 71 96 77 96 167 134 167 149 119 149 170 136 170 170 136 170 161 129 161 162 130 162 167 134 167 165 132 165 168 135 168 156 125 156 115 92 115 159 127 159 125 100 125 155 124 155 78 62 78 99 79 99 76 61 76 71 56 71 138 110 138 115 92 115 139 111 139 165 132 165 154 123 154 162 130 162 164 131 164 153 122 153 153 122 153 163 130 163 161 129 161 149 119 149 152 121 152 133 106 133 101 80 101 75 60 75 154 123 154 255 200 112 255 255 155 255 255 151 255 212 119 255 200 112 255 255 160 255 255 161 255 255 161 255 255 161 255 255 161 252 126 0 252 126 0 252 126 0 249 124 0 247 123 0 247 123 0 252 126 0 252 126 0 247 123 0 249 124 0 252 126 0 252 126 0 252 126 0 211 105 0 15 7 0 191 95 0 53 26 0 10 5 0 61 30 0 48 24 0 155 77 0 140 70 0 163 81 0 124 62 0 209 104 0 242 121 0 244 122 0 247 123 0 237 118 0 249 124 0 237 118 0 17 8 0 188 94 0 104 52 0 94 47 0 252 126 0 252 126 0 247 123 0 244 122 0 242 121 0 244 122 0 244 122 0 237 118 0 249 124 0 247 123 0 144 144 144 135 135 135 144 144 144 142 142 142 131 131 131 134 134 134 134 134 134 117 117 117 89 89 89 66 66 66 136 136 136 137 137 137 144 144 144 144 144 144 126 126 126 88 88 88 142 142 142 141 141 141 135 135 135 90 90 90 136 136 136 140 140 140 139 139 139 137 137 137 132 132 132 99 99 99 73 73 73 101 101 101 129 129 129 128 128 128 101 101 101 129 129 129 131 131 131 130 130 130 137 137 137 137 137 137 138 138 138 125 100 125 73 58 73 76 60 76 56 44 56 75 60 75 131 105 131 117 93 117 134 107 134 126 101 126 128 102 128 131 105 131 130 104 130 132 106 132 123 98 123 91 72 91 90 72 90 125 100 125 98 79 98 122 97 122 61 49 61 77 62 77 60 48 60 55 44 55 108 87 108 91 72 91 109 87 109 130 104 130 121 97 121 128 102 128 129 103 129 121 97 121 129 103 129 127 102 127 118 94 118 120 96 120 105 84 105 80 64 80 60 48 60 122 98 122 122 97 122 123 98 123 130 104 130 129 103 129 113 91 113 79 63 79 128 102 128 127 102 127 122 97 122 81 65 81 123 98 123 127 101 127 125 100 125 124 99 124 120 96 120 90 72 90 66 53 66 92 73 92 116 93 116 92 73 92 117 94 117 119 95 119 118 95 118 118 95 118 125 100 125 124 99 124 126 100 126 114 114 114 66 66 66 69 69 69 51 51 51 69 69 69 120 120 120 107 107 107 122 122 122 115 115 115 117 117 117 120 120 120 119 119 119 121 121 121 112 112 112 83 83 83 115 115 115 90 90 90 112 112 112
-197 157 197 168 135 168 180 144 180 188 150 188 162 129 162 172 137 172 124 99 124 69 55 69 69 55 69 175 140 175 185 148 185 187 149 187 169 135 169 174 139 174 178 142 178 188 188 188 190 190 190 181 181 181 179 179 179 181 181 181 183 183 183 124 124 124 157 157 157 157 157 157 164 164 164 156 156 156 176 176 176 181 181 181 187 187 187 187 187 187 177 177 177 159 159 159 132 132 132 145 145 145 182 182 182 185 185 185 176 176 176 81 81 81 81 81 81 115 115 115 61 61 61 119 119 119 157 157 157 147 147 147 156 156 156 126 126 126 150 150 150 137 137 137 131 131 131 161 161 161 157 157 157 134 134 134 151 151 151 151 151 151 181 181 181 120 120 120 71 71 71 173 173 173 180 180 180 176 176 176 179 179 179 164 164 164 102 102 102 113 113 113 152 152 152 178 178 178 180 180 180 181 181 181 181 181 181 155 155 155 166 166 166 173 173 173 149 149 149 157 157 157 113 113 113 64 64 64 160 160 160 169 169 169 171 171 171 154 154 154 159 159 159 163 163 163 172 137 172 171 137 171 173 138 173 165 132 165 163 131 163 165 132 165 166 133 166 112 90 112 143 114 143 149 119 149 142 114 142 160 128 160 165 132 165 170 136 170 169 135 169 160 128 160 160 128 160 144 115 144 119 95 119 131 105 131 164 131 164 167 134 167 158 127 158 73 58 73 104 83 104 55 44 55 107 85 107 141 113 141 132 106 132 141 113 141 113 90 113 113 90 113 135 108 135 123 98 123 117 94 117 144 115 144 141 113 141 120 96 120 135 108 135 162 129 162 108 86 108 64 51 64 154 123 154 255 229 129 255 247 138 255 203 114 255 212 119 255 255 160 255 255 161 255 255 161 255 255 161 255 255 161 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 247 123 0 249 124 0 249 124 0 252 126 0 252 126 0 252 126 0 249 124 0 127 63 0 89 44 0 165 82 0 232 116 0 22 11 0 5 2 0 10 5 0 135 67 0 61 30 0 175 87 0 175 87 0 196 98 0 249 124 0 237 118 0 244 122 0 244 122 0 239 119 0 25 12 0 86 43 0 124 62 0 173 86 0 178 89 0 252 126 0 252 126 0 252 126 0 239 119 0 242 121 0 242 121 0 244 122 0 244 122 0 247 123 0 244 122 0 124 124 124 99 99 99 119 119 119 108 108 108 103 103 103 127 127 127 124 124 124 106 106 106 119 119 119 119 119 119 142 142 142 95 95 95 56 56 56 136 136 136 141 141 141 138 138 138 141 141 141 129 129 129 80 80 80 89 89 89 119 119 119 140 140 140 141 141 141 140 140 140 142 142 142 121 121 121 130 130 130 135 135 135 116 116 116 123 123 123 89 89 89 50 50 50 125 125 125 132 132 132 134 134 134 121 121 121 125 125 125 127 127 127 127 127 127 134 107 134 135 108 135 129 103 129 128 102 128 129 103 129 130 104 130 88 70 88 111 89 111 117 93 117 111 89 111 125 100 125 129 103 129 133 106 133 132 106 132 132 106 132 125 100 125 113 90 113 93 74 93 103 82 103 128 103 128 131 105 131 124 99 124 57 45 57 81 65 81 43 34 43 84 67 84 111 89 111 104 83 104 111 88 111 110 88 110 89 71 89 106 85 106 96 77 96 92 74 92 114 91 114 111 88 111 95 76 95 106 85 106 128 102 128 85 68 85 50 40 50 122 97 122 127 101 127 124 99 124 124 99 124 126 101 126 116 92 116 72 58 72 80 64 80 107 86 107 126 100 126 127 101 127 128 102 128 109 87 109 117 94 117 122 98 122 105 84 105 111 89 111 80 64 80 80 64 80 45 36 45 114 91 114 120 96 120 121 97 121 109 87 109 113 90 113 115 92 115 122 122 122 123 123 123 118 118 118 116 116 116 117 117 117 118 118 118 80 80 80 80 80 80 101 101 101 106 106 106 101 101 101 114 114 114 118 118 118 121 121 121 121 121 121
-158 158 197 159 159 199 154 154 193 152 152 191 155 155 194 150 150 188 152 152 190 147 147 184 144 144 180 140 140 175 140 140 175 153 153 191 157 197 197 154 193 193 154 192 192 151 188 188 152 190 190 152 190 190 152 190 190 145 181 181 148 185 185 148 185 185 152 191 191 151 189 189 147 184 184 152 190 190 153 192 192 150 188 188 145 182 182 150 187 187 153 191 191 154 193 193 154 192 192 151 188 188 150 188 188 147 184 184 121 151 151 83 104 104 120 150 150 109 137 137 98 123 123 46 57 57 35 44 44 35 44 44 67 84 84 59 74 74 81 101 101 96 120 120 80 101 101 102 127 127 132 165 165 144 180 180 144 180 180 139 174 174 147 183 183 146 183 183 146 183 183 143 179 179 138 173 173 144 180 180 144 180 180 142 178 178 142 177 177 142 177 177 141 177 177 144 180 180 144 180 180 145 182 182 145 181 181 145 181 181 146 183 183 141 177 177 140 175 175 143 178 178 138 172 172 139 174 174 135 168 168 134 168 168 131 164 164 128 160 160 140 175 175 144 144 180 141 141 176 140 140 176 137 137 172 138 138 173 138 138 173 138 138 173 138 138 172 132 132 165 134 134 168 138 138 173 137 137 171 134 134 167 138 138 172 139 139 174 136 136 170 131 131 164 135 135 169 138 138 173 138 138 172 139 139 174 136 136 170 136 136 170 133 133 166 109 109 136 75 75 94 108 108 135 98 98 123 88 88 111 41 41 52 41 41 51 31 31 39 60 60 75 53 53 67 72 72 91 86 86 108 72 72 90 91 91 114 118 118 148 129 129 161 129 129 161 128 128 161 124 124 155 131 131 163 255 224 125 255 232 130 255 215 120 225 157 88 255 241 135 255 255 161 255 255 160 255 255 161 255 255 161 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 242 121 0 61 30 0 211 105 0 247 123 0 170 85 0 20 10 0 5 2 0 25 12 0 22 11 0 12 6 0 107 53 0 178 89 0 99 49 0 137 68 0 170 85 0 188 94 0 66 33 0 17 8 0 30 15 0 247 123 0 244 122 0 239 119 0 142 71 0 249 124 0 252 126 0 242 121 0 244 122 0 252 126 0 239 119 0 239 119 0 239 119 0 244 122 0 252 126 0 77 97 97 36 45 45 27 34 34 53 66 66 47 58 58 63 79 79 75 94 94 63 79 79 80 100 100 104 130 130 104 130 130 113 141 141 113 141 141 109 136 136 115 143 143 114 143 143 112 140 140 108 135 135 113 141 141 112 141 141 111 139 139 111 139 139 111 138 138 110 138 138 110 138 138 112 141 141 113 142 142 113 142 142 113 141 141 114 143 143 110 138 138 109 136 136 111 139 139 111 139 139 107 134 134 108 135 135 105 131 131 102 128 128 100 125 125 109 136 136 112 112 140 109 109 137 109 109 137 107 107 134 107 107 133 108 108 135 107 107 134 107 107 134 103 103 128 105 105 131 108 108 135 107 107 133 104 104 130 107 107 134 108 108 135 108 108 135 106 106 132 102 102 128 105 105 132 107 107 134 108 108 136 106 106 133 106 106 132 103 103 129 85 85 106 58 58 73 58 58 73 84 84 106 77 77 96 69 69 86 32 32 40 24 24 31 47 47 59 42 42 52 57 57 71 67 67 84 56 56 71 71 71 89 71 71 89 93 93 116 101 101 126 101 101 126 98 98 122 103 103 128 103 103 128 100 100 125 97 97 121 101 101 126 101 101 126 101 101 126 100 100 125 100 100 125 99 99 124 99 99 124 101 101 127 102 102 128 102 102 128 102 102 127 103 103 129 100 100 125 99 99 124 98 98 123 100 100 125 97 97 121 98 98 123 95 95 119 93 93 116 90 90 113 98 98 123 101 127 127 99 124 124 99 124 124 99 124 124 97 121 121 98 122 122 98 122 122 98 122 122 93 117 117 95 119 119 98 123 123 97 122 122
-155 155 194 155 155 193 156 156 195 156 156 195 145 145 181 141 141 177 149 149 186 147 147 184 154 192 192 153 192 192 153 192 192 153 191 191 153 191 191 156 195 195 156 195 195 154 193 193 154 192 192 152 190 190 152 190 190 152 190 190 152 190 190 151 189 189 151 189 189 154 193 193 146 183 183 141 177 177 125 157 157 97 121 121 97 121 121 109 137 137 97 121 121 104 131 131 109 136 136 35 44 44 26 33 33 9 11 11 17 21 21 17 21 21 23 29 29 9 11 11 20 25 25 13 17 17 15 19 19 10 13 13 52 65 65 38 48 48 38 48 48 55 69 69 50 63 63 19 24 24 29 36 36 70 87 87 16 20 20 22 28 28 83 104 104 83 104 104 134 168 168 145 181 181 146 183 183 149 186 186 149 186 186 149 186 186 147 184 184 147 183 183 146 183 183 143 179 179 144 181 181 146 182 182 147 184 184 145 182 182 142 178 178 142 178 178 143 179 179 143 179 179 143 179 179 132 165 165 129 161 161 136 170 170 135 168 168 140 140 175 140 140 175 140 140 175 140 140 175 139 139 174 142 142 178 142 142 177 140 140 175 140 140 175 138 138 173 138 138 173 138 138 172 138 138 172 137 137 172 137 137 171 140 140 175 132 132 166 128 128 160 113 113 142 88 88 110 99 99 124 99 99 123 87 87 109 94 94 118 98 98 123 32 32 40 23 23 29 8 8 10 15 15 19 20 20 26 20 20 26 8 8 10 18 18 22 12 12 15 13 13 17 9 9 12 46 46 58 34 34 43 49 49 61 49 49 61 45 45 56 17 17 22 25 25 32 62 62 78 14 14 18 20 20 25 255 255 151 184 128 71 171 119 67 255 250 140 255 194 109 255 255 161 255 255 156 255 255 161 255 255 161 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 244 122 0 38 19 0 86 43 0 239 119 0 247 123 0 249 124 0 234 117 0 7 3 0 22 11 0 20 10 0 25 12 0 17 8 0 22 11 0 53 26 0 84 42 0 30 15 0 30 15 0 91 45 0 119 59 0 224 112 0 247 123 0 209 104 0 234 117 0 239 119 0 252 126 0 252 126 0 249 124 0 252 126 0 252 126 0 249 124 0 249 124 0 247 123 0 252 126 0 13 16 16 18 22 22 7 9 9 15 19 19 15 19 19 10 13 13 12 15 15 8 10 10 41 51 51 30 37 37 43 54 54 39 49 49 15 19 19 15 19 19 22 28 28 54 68 68 13 16 16 17 22 22 65 81 81 105 131 131 113 141 141 114 143 143 114 142 142 116 145 145 116 145 145 115 144 144 114 143 143 114 143 143 111 139 139 112 141 141 113 142 142 113 142 142 114 143 143 113 141 141 110 138 138 110 138 138 111 139 139 111 139 139 103 128 128 100 125 125 100 125 125 106 132 132 104 130 130 109 109 136 108 108 136 108 108 135 108 108 135 110 110 138 110 110 138 110 110 137 108 108 136 108 108 135 107 107 134 107 107 134 107 107 133 106 106 133 106 106 133 108 108 136 108 108 135 103 103 128 99 99 124 88 88 110 68 68 85 77 77 96 68 68 85 73 73 91 76 76 95 76 76 95 25 25 31 18 18 23 6 6 8 11 11 14 16 16 20 6 6 8 14 14 17 9 9 12 9 9 12 10 10 13 7 7 9 36 36 45 26 26 33 38 38 48 35 35 44 13 13 17 20 20 25 20 20 25 49 49 61 11 11 14 15 15 19 58 58 72 94 94 117 101 101 127 102 102 128 104 104 130 104 104 130 104 104 130 104 104 130 102 102 128 102 102 128 100 100 125 101 101 126 102 102 128 103 103 129 103 103 129 102 102 127 99 99 124 99 99 124 100 100 125 100 100 125 93 93 116 91 91 113 96 96 120 95 95 119 94 94 118 98 123 123 98 123 123 98 123 123 98 123 123 100 125 125 100 125 125 99 124 124 99 123 123
-155 155 194 155 155 194 148 148 186 153 153 191 153 153 191 154 193 193 154 193 193 156 195 195 154 193 193 154 192 192 154 192 192 145 182 182 148 186 186 153 192 192 153 191 191 153 191 191 153 191 191 152 191 191 152 191 191 152 190 190 154 192 192 142 178 178 47 59 59 31 39 39 31 39 39 33 41 41 31 39 39 28 35 35 59 74 74 39 49 49 43 54 54 56 70 70 56 70 70 79 99 99 25 31 31 28 35 35 4 5 5 10 13 13 7 9 9 7 9 9 15 19 19 27 34 34 12 15 15 23 28 28 40 50 50 37 46 46 30 38 38 30 38 38 112 140 140 113 141 141 64 80 80 42 53 53 6 7 7 0 0 0 3 3 3 3 3 3 22 28 28 116 146 146 147 183 183 149 187 187 149 187 187 146 183 183 146 182 182 144 180 180 142 178 178 139 174 174 143 179 179 142 177 177 143 179 179 144 180 180 144 180 180 145 182 182 141 176 176 142 178 178 136 170 170 140 175 175 140 175 175 141 141 177 141 141 176 141 141 176 142 142 178 140 140 175 140 140 175 132 132 166 135 135 169 135 135 169 139 139 174 139 139 174 139 139 173 138 138 173 138 138 173 138 138 173 139 139 174 139 139 174 129 129 161 43 43 53 28 28 35 30 30 37 28 28 35 25 25 32 25 25 31 53 53 67 35 35 44 39 39 49 50 50 63 71 71 89 22 22 28 25 25 31 25 25 31 4 4 5 9 9 12 6 6 8 13 13 17 25 25 31 11 11 13 20 20 25 20 20 25 35 35 44 33 33 41 27 27 34 100 100 125 101 101 126 57 57 71 57 57 71 38 38 47 5 5 6 234 162 91 200 139 78 255 255 145 179 125 70 255 255 161 255 255 153 255 255 161 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 249 124 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 102 51 0 56 28 0 239 119 0 237 118 0 244 122 0 247 123 0 249 124 0 99 49 0 5 2 0 5 2 0 7 3 0 15 7 0 66 33 0 61 30 0 73 36 0 68 34 0 99 49 0 71 35 0 33 16 0 249 124 0 239 119 0 229 114 0 196 98 0 163 81 0 252 126 0 252 126 0 252 126 0 252 126 0 247 123 0 242 121 0 249 124 0 244 122 0 252 126 0 62 78 78 19 24 24 22 27 27 3 4 4 8 10 10 6 7 7 6 7 7 12 15 15 21 27 27 9 12 12 18 22 22 31 39 39 28 36 36 24 30 30 24 30 30 87 109 109 88 110 110 50 62 62 33 41 41 4 5 5 0 0 0 2 2 2 2 2 2 17 22 22 90 113 113 114 142 142 116 145 145 116 145 145 113 141 141 113 141 141 111 139 139 110 138 138 108 135 135 111 139 139 110 137 137 111 138 138 112 140 140 111 139 139 112 140 140 109 136 136 110 137 137 105 131 131 108 135 135 108 135 135 108 135 135 109 109 136 109 109 136 109 109 137 108 108 135 108 108 135 102 102 128 104 104 130 104 104 130 107 107 134 107 107 134 107 107 134 107 107 134 107 107 133 106 106 133 107 107 134 107 107 134 99 99 124 33 33 41 22 22 27 23 23 28 22 22 27 19 19 24 19 19 24 41 41 52 27 27 34 30 30 38 39 39 49 55 55 69 17 17 21 19 19 24 19 19 24 3 3 4 7 7 9 5 5 6 10 10 13 19 19 24 8 8 10 16 16 20 16 16 20 27 27 34 25 25 32 21 21 26 78 78 97 78 78 98 44 44 55 44 44 55 29 29 37 4 4 5 0 0 0 2 2 2 15 15 19 81 81 101 102 102 127 102 102 127 104 104 130 104 104 130 101 101 127 100 100 125 99 99 124 97 97 121 100 100 125 100 100 125 99 99 123 99 99 124 100 100 126 101 101 127 98 98 123 99 99 124 99 99 124 95 95 118 98 98 122 97 97 122 98 123 123 98 123 123 99 124 124 98 123 123 98 123 123
-155 155 194 155 155 194 160 200 200 160 200 200 156 196 196 155 194 194 156 195 195 156 195 195 159 199 199 159 199 199 157 197 197 155 194 194 155 194 194 158 198 198 158 198 198 156 196 196 151 189 189 97 121 121 19 23 23 12 15 15 12 15 15 62 77 77 39 49 49 55 69 69 68 85 85 55 69 69 69 87 87 69 86 86 55 69 69 34 43 43 58 72 72 84 106 106 6 7 7 18 23 23 18 23 23 3 3 3 17 21 21 26 33 33 43 54 54 79 99 99 79 99 99 29 36 36 76 95 95 35 44 44 48 60 60 38 48 48 32 40 40 32 40 40 46 57 57 81 101 101 33 42 42 29 36 36 15 19 19 21 26 26 21 26 26 18 22 22 6 7 7 89 112 112 149 186 186 150 187 187 150 187 187 146 183 183 145 181 181 146 183 183 147 184 184 147 184 184 144 180 180 144 180 180 143 179 179 148 185 185 146 183 183 146 182 182 143 178 178 142 178 178 142 178 178 142 178 178 146 146 183 146 146 183 143 143 179 141 141 177 141 141 176 142 142 178 145 145 181 145 145 181 143 143 179 141 141 177 141 141 176 141 141 176 144 144 180 142 142 177 137 137 172 88 88 110 17 17 21 11 11 14 11 11 14 56 56 70 35 35 44 50 50 62 61 61 76 50 50 62 49 49 62 62 62 78 49 49 62 31 31 39 52 52 65 76 76 95 5 5 7 5 5 7 16 16 21 2 2 3 15 15 19 23 23 29 39 39 48 39 39 48 71 71 88 26 26 33 68 68 85 31 31 39 42 42 53 34 34 43 34 34 43 28 28 36 41 41 51 72 72 90 30 30 37 25 25 32 175 122 68 255 255 145 255 255 153 238 165 93 255 255 161 255 255 161 255 255 161 252 126 0 249 124 0 252 126 0 252 126 0 252 126 0 249 124 0 247 123 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 33 16 0 178 89 0 234 117 0 224 112 0 239 119 0 242 121 0 244 122 0 234 117 0 2 1 0 30 15 0 15 7 0 30 15 0 15 7 0 25 12 0 38 19 0 104 52 0 63 31 0 91 45 0 239 119 0 242 121 0 242 121 0 229 114 0 229 114 0 181 90 0 249 124 0 252 126 0 252 126 0 252 126 0 249 124 0 242 121 0 249 124 0 252 126 0 249 124 0 45 57 57 66 83 83 66 83 83 4 6 6 14 18 18 2 3 3 13 16 16 20 25 25 34 42 42 34 42 42 61 77 77 23 28 28 59 74 74 27 34 34 37 46 46 37 46 46 30 37 37 25 31 31 35 44 44 63 79 79 26 32 32 22 28 28 22 28 28 11 14 14 16 20 20 14 17 17 4 5 5 69 86 86 69 86 86 115 143 143 116 145 145 113 141 141 112 140 140 113 141 141 114 142 142 113 142 142 113 142 142 111 138 138 110 138 138 114 142 142 112 141 141 112 140 140 112 140 140 110 137 137 109 137 137 109 137 137 112 112 141 112 112 140 112 112 140 110 110 137 108 108 136 109 109 137 111 111 139 111 111 139 110 110 137 110 110 137 108 108 136 108 108 135 110 110 138 109 109 136 106 106 132 67 67 84 67 67 84 13 13 16 8 8 11 43 43 53 27 27 34 38 38 48 38 38 48 47 47 59 38 38 48 48 48 60 38 38 47 24 24 30 40 40 50 40 40 50 58 58 73 4 4 5 13 13 16 2 2 2 11 11 14 18 18 22 18 18 22 30 30 37 54 54 68 20 20 25 52 52 65 24 24 30 24 24 30 33 33 41 26 26 33 22 22 28 31 31 39 56 56 70 23 23 29 23 23 29 20 20 25 10 10 13 14 14 18 12 12 15 4 4 5 62 62 77 62 62 77 103 103 128 103 103 129 101 101 127 100 100 125 101 101 126 101 101 126 102 102 127 102 102 127 100 100 125 99 99 124 102 102 128 101 101 127 101 101 127 101 101 126 99 99 124 99 99 124 99 99 123 102 127 127 101 127 127
-161 201 201 161 201 201 159 199 199 160 200 200 160 200 200 160 200 200 160 200 200 160 200 200 159 199 199 159 199 199 156 195 195 156 195 195 135 168 168 93 116 116 73 92 92 12 16 16 17 22 22 17 22 22 9 11 11 41 51 51 43 53 53 51 63 63 71 89 89 71 89 89 23 29 29 49 61 61 41 51 51 61 77 77 79 98 98 79 98 98 6 7 7 9 11 11 23 29 29 12 15 15 51 64 64 51 64 64 34 43 43 39 48 48 15 19 19 15 19 19 26 33 33 26 33 33 43 54 54 31 38 38 49 62 62 20 25 25 4 5 5 4 5 5 0 0 0 6 7 7 27 34 34 7 9 9 6 7 7 6 7 7 13 17 17 1 1 1 74 93 93 148 185 185 147 184 184 147 184 184 147 184 184 148 186 186 150 187 187 148 185 185 148 185 185 145 181 181 146 182 182 149 186 186 144 180 180 139 174 174 139 174 174 143 179 179 143 179 179 138 173 173 147 147 184 147 147 184 147 147 183 146 146 183 145 145 181 146 146 183 146 146 182 146 146 182 145 145 182 145 145 182 145 145 181 145 145 181 142 142 177 122 122 153 122 122 153 84 84 105 66 66 83 11 11 14 15 15 19 8 8 10 8 8 10 37 37 46 38 38 48 46 46 57 64 64 80 21 21 26 21 21 26 44 44 55 37 37 46 55 55 69 71 71 88 5 5 7 5 5 7 8 8 10 21 21 26 11 11 14 46 46 58 30 30 38 30 30 38 35 35 43 13 13 17 13 13 17 23 23 29 38 38 48 38 38 48 27 27 34 44 44 55 17 17 22 4 4 5 4 4 5 0 0 0 5 5 6 255 255 158 255 238 134 255 255 151 251 174 98 255 255 160 255 255 161 255 255 161 252 126 0 252 126 0 252 126 0 249 124 0 244 122 0 249 124 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 209 104 0 51 25 0 173 86 0 239 119 0 247 123 0 198 99 0 219 109 0 224 112 0 201 100 0 196 98 0 28 14 0 30 15 0 12 6 0 89 44 0 56 28 0 45 22 0 188 94 0 102 51 0 206 103 0 244 122 0 232 116 0 209 104 0 204 102 0 234 117 0 226 113 0 247 123 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 249 124 0 252 126 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 18 23 23 9 12 12 40 50 50 26 33 33 26 33 33 30 38 38 12 15 15 12 15 15 20 25 25 33 42 42 33 42 42 24 30 30 38 48 48 15 19 19 3 4 4 0 0 0 0 0 0 4 5 5 21 26 26 5 7 7 4 5 5 10 13 13 10 13 13 1 1 1 57 72 72 113 142 142 113 142 142 113 141 141 113 141 141 114 142 142 115 144 144 113 142 142 111 139 139 112 140 140 112 140 140 114 142 142 110 138 138 107 133 133 110 137 137 110 137 137 110 137 137 106 132 132 113 113 141 112 112 141 112 112 140 111 111 139 111 111 139 112 112 140 111 111 139 111 111 139 111 111 139 111 111 139 111 111 139 111 111 138 108 108 135 93 93 117 64 64 81 51 51 64 51 51 64 8 8 11 12 12 15 6 6 8 28 28 35 28 28 35 29 29 37 35 35 44 49 49 61 16 16 20 34 34 42 33 33 42 28 28 35 42 42 53 54 54 68 4 4 5 6 6 8 6 6 8 16 16 20 8 8 10 35 35 44 23 23 29 26 26 33 26 26 33 10 10 13 10 10 13 18 18 22 30 30 37 21 21 26 21 21 26 34 34 42 13 13 17 3 3 3 0 0 0 4 4 5 4 4 5 19 19 23 5 5 6 4 4 5 9 9 11 1 1 1 1 1 1 51 51 64 101 101 127 101 101 127 101 101 127 102 102 128 102 102 128 103 103 129 102 102 127 100 100 125 100 100 126 102 102 128 102 102 128 99 99 124 96 96 120 99 99 124 99 99 124
-161 201 201 161 201 201 161 201 201 161 201 201 160 201 201 160 200 200 160 200 200 158 198 198 158 198 198 153 192 192 148 185 185 62 78 78 16 20 20 9 12 12 9 12 12 27 34 34 27 34 34 41 52 52 12 16 16 12 16 16 14 17 17 59 73 73 68 85 85 70 87 87 70 87 87 138 173 173 149 186 186 90 113 113 17 21 21 9 11 11 9 11 11 11 13 13 14 17 17 29 37 37 48 61 61 48 60 60 95 119 119 105 131 131 103 129 129 112 140 140 112 140 140 128 160 160 115 144 144 96 120 120 77 97 97 73 91 91 72 91 91 110 137 137 89 112 112 20 25 25 6 7 7 6 7 7 10 13 13 10 13 13 3 3 3 122 153 153 122 153 153 150 187 187 151 189 189 151 189 189 147 184 184 144 180 180 144 180 180 144 180 180 144 180 180 145 181 181 149 187 187 149 186 186 146 182 182 138 173 173 145 182 182 148 185 185 148 148 185 148 148 185 148 148 185 147 147 184 146 146 182 147 147 184 147 147 184 146 146 183 146 146 183 146 146 183 146 146 182 146 146 182 145 145 182 144 144 180 139 139 174 134 134 168 57 57 71 57 57 71 14 14 18 8 8 10 24 24 30 24 24 30 24 24 30 37 37 47 11 11 14 12 12 16 53 53 66 53 53 66 61 61 77 63 63 78 124 124 155 134 134 167 81 81 101 81 81 101 15 15 19 8 8 10 9 9 12 12 12 15 12 12 15 26 26 33 43 43 54 85 85 107 94 94 117 93 93 117 92 92 115 100 100 125 114 114 142 102 102 128 86 86 107 85 85 107 69 69 86 64 64 81 97 97 122 79 79 99 79 79 99 255 226 127 255 247 138 255 255 151 255 255 156 255 255 161 255 255 161 252 126 0 252 126 0 252 126 0 252 126 0 249 124 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 249 124 0 214 107 0 124 62 0 234 117 0 198 99 0 247 123 0 244 122 0 229 114 0 165 82 0 244 122 0 239 119 0 73 36 0 66 33 0 163 81 0 89 44 0 107 53 0 155 77 0 96 48 0 114 57 0 232 116 0 242 121 0 244 122 0 234 117 0 226 113 0 186 93 0 165 82 0 242 121 0 247 123 0 247 123 0 249 124 0 247 123 0 237 118 0 244 122 0 252 126 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 87 109 109 87 108 108 99 123 123 89 111 111 74 93 93 60 75 75 56 70 70 56 70 70 84 106 106 69 86 86 15 19 19 4 5 5 4 5 5 8 10 10 8 10 10 2 2 2 94 117 117 94 117 117 115 143 143 116 145 145 115 144 144 113 141 141 110 138 138 110 138 138 110 138 138 110 137 137 111 139 139 114 143 143 114 142 142 111 139 139 105 132 132 111 139 139 113 141 141 113 113 141 113 113 141 113 113 141 112 112 141 111 111 139 112 112 140 112 112 140 112 112 140 111 111 139 111 111 139 111 111 139 111 111 139 111 111 139 109 109 137 106 106 133 102 102 128 43 43 54 43 43 54 11 11 13 6 6 8 18 18 23 18 18 23 18 18 23 28 28 35 8 8 11 9 9 12 40 40 50 40 40 50 47 47 58 48 48 60 95 95 119 102 102 128 62 62 77 62 62 77 11 11 14 6 6 8 7 7 9 9 9 12 9 9 12 20 20 25 33 33 41 65 65 82 72 72 90 72 72 90 70 70 88 77 77 96 87 87 109 79 79 98 66 66 82 66 66 82 53 53 66 50 50 62 75 75 94 61 61 76 61 61 76 13 13 17 4 4 5 7 7 9 7 7 9 7 7 9 2 2 2 84 84 105 102 102 128 103 103 129 103 103 129 103 103 129 101 101 126 99 99 123 99 99 123 98 98 123 98 98 123 99 99 124 102 102 128
-161 202 202 161 202 202 161 201 201 161 201 201 161 201 201 161 201 201 160 201 201 107 133 133 89 111 111 14 18 18 14 18 18 6 8 8 3 4 4 4 6 6 11 14 14 11 14 14 25 32 32 20 26 26 141 176 176 157 196 196 157 196 196 158 198 198 158 198 198 158 197 197 158 197 197 157 197 197 157 197 197 157 196 196 157 196 196 157 196 196 157 196 196 156 196 196 156 195 195 156 195 195 156 195 195 156 195 195 155 194 194 155 194 194 155 194 194 155 194 194 155 194 194 155 193 193 154 193 193 154 193 193 152 191 191 152 190 190 152 190 190 149 186 186 110 137 137 10 13 13 10 13 13 6 7 7 69 86 86 149 187 187 152 190 190 152 190 190 150 188 188 147 184 184 147 184 184 147 183 183 145 181 181 145 181 181 137 171 171 143 179 179 143 178 178 145 182 182 147 183 183 148 185 185 148 185 185 148 185 185 144 181 181 149 149 186 148 148 186 148 148 185 148 148 185 148 148 185 148 148 185 147 147 184 147 147 184 147 147 184 147 147 184 147 147 183 146 146 183 146 146 183 146 146 182 146 146 182 97 97 121 80 80 101 13 13 16 13 13 16 5 5 7 2 2 3 4 4 5 10 10 12 10 10 12 23 23 29 18 18 23 127 127 159 141 141 177 141 141 176 142 142 178 142 142 178 142 142 177 142 142 177 141 141 177 141 141 176 141 141 176 141 141 176 140 140 176 140 140 175 140 140 175 140 140 175 139 139 174 139 139 174 139 139 174 139 139 173 138 138 173 138 138 173 138 138 173 138 138 172 137 137 172 137 137 172 137 137 171 137 137 171 135 135 169 135 135 169 132 132 165 255 197 111 255 255 153 255 255 151 255 244 137 255 255 161 255 255 161 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 247 123 0 170 85 0 142 71 0 214 107 0 175 87 0 229 114 0 239 119 0 209 104 0 173 86 0 181 90 0 145 72 0 165 82 0 232 116 0 114 57 0 51 25 0 79 39 0 160 80 0 119 59 0 73 36 0 63 31 0 226 113 0 237 118 0 226 113 0 237 118 0 181 90 0 216 108 0 175 87 0 198 99 0 127 63 0 191 95 0 183 91 0 186 93 0 229 114 0 234 117 0 247 123 0 249 124 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 117 146 146 114 143 143 114 142 142 84 105 105 8 10 10 4 5 5 53 66 66 53 66 66 114 142 142 116 145 145 115 143 143 112 140 140 112 140 140 112 140 140 110 138 138 110 138 138 104 130 130 104 130 130 109 136 136 111 138 138 112 140 140 113 141 141 112 141 141 112 140 140 110 137 137 113 113 141 113 113 141 113 113 141 112 112 141 112 112 140 112 112 140 112 112 140 112 112 140 112 112 140 111 111 139 111 111 139 111 111 139 111 111 139 111 111 139 111 111 138 73 73 92 73 73 92 61 61 76 10 10 12 4 4 5 2 2 2 2 2 2 3 3 4 7 7 9 17 17 22 14 14 17 14 14 17 96 96 121 107 107 134 108 108 135 108 108 135 108 108 135 108 108 135 108 108 135 107 107 134 107 107 134 107 107 134 107 107 134 107 107 134 107 107 133 107 107 133 106 106 133 106 106 133 106 106 133 106 106 133 106 106 132 106 106 132 106 106 132 105 105 132 105 105 132 105 105 132 105 105 131 105 105 131 104 104 130 104 104 130 101 101 127 101 101 127 75 75 93 7 7 9 4 4 5 47 47 59 47 47 59 102 102 127 104 104 130 102 102 128 102 102 128 100 100 125 100 100 125 99 99 124 99 99 123 99 99 123
-162 202 202 162 202 202 158 198 198 158 198 198 124 155 155 119 148 148 22 28 28 22 28 28 29 36 36 4 6 6 17 22 22 14 18 18 14 18 18 12 16 16 14 18 18 96 121 121 96 121 121 145 181 181 156 195 195 159 199 199 157 196 196 157 196 196 155 194 194 150 188 188 156 196 196 156 195 195 156 195 195 156 195 195 156 195 195 157 196 196 157 196 196 157 196 196 157 196 196 156 196 196 156 195 195 156 195 195 156 195 195 156 195 195 154 193 193 154 192 192 146 182 182 139 174 174 119 149 149 119 148 148 84 105 105 107 134 134 98 122 122 14 17 17 14 17 17 54 68 68 144 180 180 152 190 190 153 191 191 153 191 191 149 187 187 145 181 181 146 183 183 146 182 182 133 167 167 139 174 174 147 184 184 147 183 183 146 183 183 148 185 185 144 181 181 147 184 184 147 184 184 147 184 184 148 185 185 146 146 183 146 146 183 146 146 183 149 149 186 147 147 184 148 148 186 148 148 185 148 148 185 148 148 185 146 146 183 146 146 183 146 146 182 147 147 184 147 147 184 144 144 180 143 143 179 112 112 140 107 107 134 20 20 25 26 26 33 26 26 33 4 4 5 16 16 20 13 13 16 13 13 16 11 11 14 13 13 16 87 87 109 130 130 163 130 130 163 140 140 175 143 143 179 141 141 176 141 141 176 139 139 174 135 135 168 140 140 175 140 140 175 140 140 175 139 139 174 139 139 174 140 140 176 140 140 175 140 140 175 140 140 175 139 139 174 139 139 174 139 139 174 139 139 174 138 138 173 137 137 171 130 130 162 129 129 162 124 124 155 105 105 132 75 75 93 74 74 93 95 95 119 87 87 108 255 255 148 255 255 156 255 235 132 255 255 161 255 255 161 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 224 112 0 109 54 0 153 76 0 214 107 0 137 68 0 145 72 0 237 118 0 239 119 0 186 93 0 145 72 0 188 94 0 198 99 0 196 98 0 216 108 0 244 122 0 96 48 0 43 21 0 168 84 0 112 56 0 56 28 0 124 62 0 237 118 0 209 104 0 186 93 0 242 121 0 201 100 0 170 85 0 242 121 0 244 122 0 234 117 0 175 87 0 181 90 0 94 47 0 89 44 0 206 103 0 232 116 0 239 119 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 116 146 146 114 142 142 114 142 142 110 137 137 111 139 139 101 127 127 101 127 127 106 132 132 111 139 139 111 139 139 112 140 140 112 140 140 109 137 137 112 140 140 111 139 139 111 139 139 112 140 140 111 111 139 111 111 138 113 113 141 113 113 141 111 111 139 112 112 140 112 112 140 112 112 140 112 112 140 110 110 138 110 110 138 111 111 139 111 111 139 111 111 139 108 108 136 85 85 106 85 85 106 81 81 102 15 15 19 20 20 25 3 3 4 3 3 4 12 12 15 9 9 12 8 8 11 9 9 12 9 9 12 66 66 82 99 99 123 106 106 133 106 106 133 108 108 135 107 107 134 106 106 132 102 102 128 102 102 128 106 106 133 106 106 133 106 106 133 106 106 132 106 106 132 107 107 133 106 106 133 106 106 133 106 106 133 106 106 133 106 106 132 106 106 132 106 106 132 105 105 132 104 104 130 99 99 124 94 94 118 94 94 118 80 80 101 57 57 71 73 73 91 73 73 91 66 66 83 9 9 11 36 36 46 98 98 122 97 97 122 103 103 128 104 104 130 101 101 127 101 101 127 98 98 123 99 99 124
-162 203 203 159 198 198 113 141 141 9 12 12 9 12 12 6 8 8 9 12 12 19 24 24 19 24 24 30 38 38 27 34 34 68 85 85 51 64 64 51 64 64 97 121 121 111 139 139 132 165 165 132 165 165 137 171 171 135 169 169 112 140 140 112 140 140 125 156 156 147 184 184 110 138 138 110 138 138 49 62 62 67 83 83 47 59 59 47 59 59 73 91 91 143 179 179 151 188 188 149 186 186 149 186 186 52 65 65 11 13 13 75 94 94 75 94 94 94 118 118 80 100 100 74 92 92 73 92 92 62 78 78 81 101 101 43 54 54 43 54 54 150 187 187 149 187 187 149 187 187 144 181 181 144 180 180 136 170 170 144 180 180 142 178 178 142 178 178 146 183 183 145 181 181 141 177 177 141 177 177 143 178 178 147 184 184 145 182 182 145 181 181 148 185 185 145 181 181 148 185 185 150 150 188 150 150 188 150 150 188 150 150 187 147 147 183 146 146 183 146 146 183 147 147 184 147 147 184 147 147 184 148 148 185 148 148 185 148 148 185 148 148 185 147 147 184 147 147 184 144 144 180 144 144 180 102 102 128 8 8 11 5 5 7 8 8 11 8 8 11 17 17 22 27 27 34 24 24 31 24 24 31 61 61 76 46 46 58 87 87 109 87 87 109 100 100 125 119 119 149 123 123 154 123 123 153 121 121 151 101 101 126 112 112 140 132 132 165 132 132 165 99 99 123 44 44 55 60 60 75 59 59 74 42 42 53 65 65 81 127 127 159 127 127 159 134 134 168 132 132 166 46 46 58 46 46 58 9 9 12 67 67 84 84 84 105 71 71 89 71 71 89 65 65 81 55 55 69 72 72 90 72 72 90 255 255 151 255 255 148 209 145 81 255 255 161 252 126 0 252 126 0 252 126 0 252 126 0 252 126 0 249 124 0 242 121 0 163 81 0 163 81 0 183 91 0 168 84 0 221 110 0 219 109 0 145 72 0 214 107 0 178 89 0 224 112 0 147 73 0 237 118 0 239 119 0 216 108 0 201 100 0 244 122 0 242 121 0 183 91 0 86 43 0 165 82 0 132 66 0 211 105 0 242 121 0 249 124 0 153 76 0 247 123 0 237 118 0 247 123 0 239 119 0 247 123 0 234 117 0 216 108 0 76 38 0 117 58 0 237 118 0 216 108 0 224 112 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 107 134 134 108 135 135 111 139 139 110 137 137 110 137 137 112 140 140 109 137 137 111 139 139 111 139 139 113 113 142 113 113 141 113 113 141 110 110 138 110 110 138 110 110 138 111 111 139 111 111 139 111 111 139 112 112 140 112 112 140 111 111 139 111 111 139 111 111 139 111 111 139 108 108 136 108 108 135 77 77 96 6 6 8 4 4 5 6 6 8 6 6 8 13 13 16 21 21 26 18 18 23 18 18 23 46 46 58 35 35 44 66 66 82 66 66 82 75 75 94 90 90 112 93 93 116 93 93 116 91 91 114 76 76 95 85 85 106 100 100 125 100 100 125 74 74 93 33 33 42 45 45 56 45 45 56 32 32 40 49 49 62 96 96 121 96 96 121 102 102 127 100 100 126 35 35 44 35 35 44 7 7 9 51 51 64 64 64 80 63 63 79 54 54 67 49 49 62 42 42 53 55 55 68 55 55 68 29 29 37 101 101 126 101 101 126 101 101 126 101 101 126 97 97 122 92 92 115
-14 18 18 14 18 18 19 24 24 4 6 6 1 2 2 1 2 2 60 75 75 39 49 49 17 22 22 17 22 22 61 77 77 143 179 179 146 183 183 146 182 182 146 182 182 111 139 139 59 74 74 59 74 74 61 76 76 37 46 46 11 14 14 11 14 14 99 124 124 148 185 185 102 128 128 102 128 128 142 178 178 89 112 112 113 142 142 113 141 141 153 191 191 119 149 149 47 59 59 47 59 59 41 51 51 14 17 17 9 11 11 9 11 11 109 136 136 112 140 140 67 84 84 67 84 84 86 108 108 96 120 120 151 188 188 150 188 188 150 188 188 153 192 192 147 183 183 146 183 183 140 175 175 135 169 169 123 153 153 122 153 153 141 176 176 141 176 176 134 168 168 134 168 168 145 181 181 148 185 185 148 185 185 147 184 184 144 180 180 141 176 176 148 186 186 148 185 185 151 151 189 151 151 189 151 151 188 147 147 184 144 144 180 148 148 186 148 148 185 150 150 187 148 148 185 148 148 185 147 147 184 149 149 186 149 149 186 148 148 186 148 148 185 146 146 183 142 142 177 85 85 106 85 85 106 13 13 16 17 17 22 4 4 5 4 4 5 1 1 1 54 54 68 35 35 44 35 35 44 16 16 20 55 55 69 129 129 161 128 128 161 131 131 164 131 131 164 100 100 125 100 100 125 53 53 67 55 55 68 33 33 41 33 33 41 10 10 12 89 89 111 132 132 165 132 132 165 91 91 114 127 127 159 80 80 100 79 79 99 101 101 126 136 136 170 106 106 133 106 106 132 42 42 53 36 36 45 12 12 15 12 12 15 8 8 10 96 96 121 99 99 124 99 99 124 60 60 75 76 76 95 84 84 106 255 255 151 255 255 150 255 180 101 255 255 161 252 126 0 252 126 0 252 126 0 252 126 0 247 123 0 214 107 0 132 66 0 124 62 0 153 76 0 229 114 0 244 122 0 226 113 0 211 105 0 234 117 0 175 87 0 188 94 0 188 94 0 102 51 0 216 108 0 239 119 0 237 118 0 249 124 0 247 123 0 249 124 0 224 112 0 229 114 0 153 76 0 178 89 0 244 122 0 249 124 0 242 121 0 244 122 0 214 107 0 168 84 0 237 118 0 249 124 0 214 107 0 239 119 0 247 123 0 170 85 0 188 94 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 109 137 137 111 139 139 111 139 139 111 139 139 108 136 136 106 133 133 106 132 132 111 139 139 114 114 142 113 113 142 113 113 142 111 111 139 108 108 135 108 108 135 111 111 139 112 112 141 111 111 139 111 111 139 111 111 138 112 112 140 111 111 139 111 111 139 111 111 139 110 110 137 106 106 133 106 106 133 63 63 79 10 10 12 13 13 16 13 13 16 3 3 4 1 1 1 41 41 51 41 41 51 26 26 33 12 12 15 41 41 52 41 41 52 96 96 121 99 99 123 98 98 123 98 98 123 75 75 94 40 40 50 41 41 51 41 41 51 25 25 31 7 7 9 67 67 84 67 67 84 99 99 124 69 69 86 96 96 120 96 96 120 60 60 75 76 76 95 103 103 129 103 103 129 80 80 100 32 32 40 27 27 34 27 27 34 9 9 12 6 6 8 73 73 91 73 73 91 75 75 94 45 45 57 58 58 72 58 58 72 64 64 80 101 101 126 101 101 126 101 101 126
-0 0 0 4 6 6 4 6 6 9 12 12 13 16 16 13 16 16 59 73 73 68 85 85 107 134 134 107 134 134 142 177 177 161 201 201 159 199 199 159 199 199 159 199 199 144 180 180 113 142 142 113 141 141 115 143 143 114 143 143 114 143 143 147 183 183 156 195 195 154 193 193 154 193 193 140 175 175 110 138 138 149 186 186 149 186 186 157 196 196 150 188 188 129 161 161 129 161 161 105 131 131 68 85 85 68 85 85 106 133 133 138 172 172 150 188 188 150 188 188 99 124 124 143 179 179 151 189 189 151 189 189 149 187 187 151 189 189 152 190 190 152 190 190 147 184 184 139 174 174 139 174 174 147 183 183 145 181 181 149 187 187 149 186 186 146 182 182 136 170 170 139 174 174 139 174 174 139 174 174 139 173 173 145 181 181 145 181 181 147 184 184 152 152 190 152 152 190 151 151 189 150 150 187 145 145 181 145 145 181 148 148 185 150 150 188 150 150 188 150 150 188 150 150 187 150 150 187 149 149 187 149 149 187 146 146 183 144 144 180 144 144 180 145 145 182 84 84 105 5 5 7 5 5 7 4 4 5 0 0 0 4 4 5 4 4 5 8 8 11 11 11 14 53 53 66 53 53 66 62 62 77 97 97 121 97 97 121 127 127 159 145 145 181 143 143 179 143 143 179 143 143 178 129 129 162 101 101 127 101 101 127 103 103 128 102 102 128 131 131 164 131 131 164 139 139 174 138 138 172 125 125 156 124 124 156 98 98 123 133 133 166 132 132 166 139 139 174 133 133 167 115 115 143 114 114 143 93 93 116 60 60 75 94 94 118 94 94 118 122 122 152 133 133 166 88 88 110 88 88 110 127 127 158 133 133 167 255 255 143 138 96 53 255 255 161 252 126 0 252 126 0 242 121 0 249 124 0 206 103 0 155 77 0 191 95 0 221 110 0 237 118 0 216 108 0 237 118 0 219 109 0 219 109 0 163 81 0 122 61 0 145 72 0 181 90 0 204 102 0 206 103 0 244 122 0 229 114 0 214 107 0 209 104 0 224 112 0 244 122 0 168 84 0 119 59 0 132 66 0 96 48 0 244 122 0 239 119 0 224 112 0 198 99 0 196 98 0 247 123 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 102 128 128 104 131 131 104 130 130 104 130 130 104 130 130 108 136 136 111 138 138 110 138 138 114 114 142 113 113 142 113 113 142 112 112 140 108 108 136 111 111 138 110 110 138 112 112 141 112 112 140 112 112 140 112 112 140 112 112 140 112 112 140 109 109 137 109 109 136 108 108 135 109 109 136 109 109 136 62 62 78 4 4 5 3 3 4 3 3 4 0 0 0 3 3 4 6 6 8 6 6 8 8 8 11 39 39 49 46 46 58 46 46 58 72 72 91 95 95 119 95 95 119 108 108 136 107 107 134 107 107 134 107 107 134 97 97 121 76 76 95 77 77 96 77 77 96 77 77 96 98 98 123 105 105 131 105 105 131 103 103 129 94 94 117 93 93 117 74 74 92 100 100 125 105 105 131 105 105 131 100 100 126 86 86 108 70 70 88 70 70 88 45 45 57 71 71 89 92 92 115 92 92 115 100 100 126 66 66 83 66 66 83 96 96 120
-6 8 8 6 8 8 6 8 8 11 14 14 9 12 12 9 12 12 21 26 26 114 143 143 144 180 180 144 180 180 160 200 200 156 196 196 155 193 193 155 193 193 153 191 191 153 191 191 152 191 191 159 199 199 160 201 201 160 200 200 160 200 200 158 198 198 153 192 192 153 191 191 124 155 155 124 155 155 146 183 183 146 183 183 133 166 166 151 188 188 150 188 188 155 194 194 156 196 196 147 184 184 147 183 183 138 173 173 121 151 151 90 113 113 90 113 113 146 182 182 155 194 194 155 194 194 150 188 188 145 181 181 140 175 175 140 175 175 137 171 171 137 171 171 136 171 171 146 182 182 149 186 186 150 188 188 150 187 187 145 181 181 140 175 175 140 175 175 143 179 179 138 173 173 136 171 171 136 170 170 139 174 174 144 180 180 153 153 191 152 152 191 151 151 188 151 151 188 150 150 188 152 152 190 151 151 189 151 151 189 151 151 189 149 149 187 149 149 187 149 149 186 150 150 188 150 150 188 148 148 185 148 148 185 149 149 187 149 149 187 149 149 186 149 149 186 144 144 180 99 99 124 99 99 123 17 17 22 26 26 33 5 5 7 5 5 7 5 5 7 10 10 13 10 10 13 8 8 11 19 19 24 103 103 129 103 103 129 129 129 162 144 144 180 144 144 180 140 140 176 139 139 174 137 137 171 137 137 171 137 137 171 142 142 178 142 142 178 143 143 179 143 143 179 141 141 177 141 141 176 137 137 171 110 110 138 110 110 138 110 110 138 130 130 163 118 118 148 118 118 148 134 134 167 138 138 172 139 139 174 139 139 173 130 130 162 123 123 153 122 122 153 107 107 133 80 80 100 129 129 161 128 128 161 137 137 171 255 232 130 167 116 65 255 255 161 252 126 0 249 124 0 232 116 0 158 79 0 145 72 0 229 114 0 226 113 0 244 122 0 242 121 0 247 123 0 216 108 0 168 84 0 183 91 0 226 113 0 114 57 0 150 75 0 99 49 0 193 96 0 224 112 0 209 104 0 237 118 0 234 117 0 183 91 0 175 87 0 211 105 0 181 90 0 247 123 0 229 114 0 201 100 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 105 131 131 105 131 131 107 134 134 103 129 129 102 127 127 102 127 127 104 130 130 107 134 134 107 134 134 114 114 142 112 112 141 112 112 140 112 112 140 113 113 141 113 113 141 113 113 141 113 113 141 111 111 139 111 111 139 111 111 139 112 112 140 112 112 140 110 110 138 110 110 138 111 111 139 111 111 139 111 111 139 111 111 139 107 107 134 73 73 92 73 73 92 13 13 16 20 20 25 20 20 25 4 4 5 4 4 5 7 7 9 7 7 9 6 6 8 14 14 17 77 77 96 77 77 96 96 96 121 107 107 134 107 107 134 105 105 131 103 103 129 102 102 128 102 102 128 102 102 128 106 106 133 106 106 133 107 107 134 107 107 134 106 106 132 106 106 132 102 102 128 83 83 103 83 83 103 82 82 103 97 97 122 89 89 111 89 89 111 100 100 125 103 103 129 104 104 130 104 104 130 98 98 122 92 92 115 92 92 115 80 80 100
-23 28 28 39 49 49 39 49 49 39 49 49 49 61 61 49 61 61 121 152 152 159 199 199 160 201 201 160 201 201 162 202 202 162 202 202 162 202 202 161 202 202 161 202 202 161 202 202 161 201 201 161 201 201 159 199 199 159 199 199 141 176 176 137 172 172 137 172 172 81 101 101 148 186 186 142 177 177 142 177 177 69 86 86 109 137 137 109 136 136 151 189 189 139 174 174 139 174 174 131 164 164 76 96 96 136 170 170 135 169 169 156 195 195 157 197 197 157 197 197 152 191 191 146 182 182 142 178 178 142 178 178 147 184 184 155 193 193 154 193 193 151 189 189 145 181 181 144 181 181 141 177 177 149 186 186 146 182 182 145 182 182 133 166 166 147 183 183 146 183 183 138 173 173 132 165 165 138 173 173 138 172 172 153 153 192 151 151 189 151 151 189 151 151 189 151 151 189 152 152 190 152 152 190 150 150 188 149 149 186 148 148 186 151 151 189 151 151 189 151 151 189 151 151 188 150 150 188 150 150 188 150 150 188 150 150 187 150 150 187 149 149 187 149 149 187 149 149 186 141 141 177 141 141 176 99 99 124 25 25 31 25 25 31 28 28 35 20 20 26 20 20 26 35 35 44 35 35 44 44 44 55 44 44 55 109 109 137 143 143 179 143 143 179 144 144 180 145 145 182 145 145 181 145 145 181 145 145 181 144 144 181 144 144 180 144 144 180 144 144 180 143 143 179 142 142 177 126 126 157 123 123 153 122 122 153 72 72 90 132 132 165 132 132 165 126 126 157 61 61 77 97 97 121 97 97 121 134 134 167 123 123 154 123 123 154 116 116 145 67 67 84 67 67 84 120 120 150 138 138 172 139 139 174 139 139 173 255 255 155 255 235 132 255 255 158 252 126 0 114 57 0 89 44 0 84 42 0 242 121 0 244 122 0 232 116 0 234 117 0 239 119 0 239 119 0 214 107 0 193 96 0 168 84 0 219 109 0 224 112 0 142 71 0 107 53 0 81 40 0 158 79 0 196 98 0 244 122 0 122 61 0 237 118 0 237 118 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 111 139 139 108 136 136 99 124 124 99 124 124 109 137 137 103 129 129 98 123 123 98 123 123 103 128 128 114 114 143 114 114 142 113 113 141 112 112 141 112 112 140 112 112 140 113 113 141 112 112 140 112 112 140 110 110 138 112 112 141 112 112 140 112 112 140 112 112 140 112 112 140 112 112 140 111 111 139 111 111 139 111 111 139 111 111 139 111 111 139 111 111 138 110 110 138 105 105 131 73 73 92 73 73 92 18 18 23 21 21 26 15 15 19 15 15 19 26 26 33 26 26 33 26 26 33 33 33 41 81 81 101 81 81 101 106 106 133 107 107 134 108 108 135 108 108 135 108 108 135 108 108 135 107 107 134 107 107 134 107 107 134 107 107 134 107 107 134 106 106 132 94 94 117 94 94 117 91 91 114 53 53 67 53 53 67 98 98 123 94 94 118 46 46 57 46 46 57 72 72 90 100 100 125 100 100 125 92 92 116
-44 55 55 72 91 91 72 91 91 102 128 128 79 99 99 79 99 99 143 179 179 151 189 189 151 189 189 159 199 199 162 203 203 162 203 203 162 202 202 162 202 202 157 196 196 157 196 196 114 143 143 37 46 46 37 46 46 63 79 79 27 34 34 27 34 34 13 16 16 30 38 38 30 38 38 71 89 89 121 151 151 137 171 171 137 171 171 133 167 167 90 112 112 90 112 112 115 144 144 154 192 192 154 192 192 158 198 198 158 198 198 158 198 198 158 197 197 156 195 195 153 191 191 152 191 191 156 195 195 151 188 188 150 188 188 133 166 166 145 182 182 145 182 182 150 187 187 146 183 183 146 183 183 144 181 181 146 182 182 144 180 180 144 180 180 147 184 184 148 186 186 148 185 185 145 181 181 154 154 193 154 154 192 154 154 192 152 152 190 152 152 190 152 152 190 153 153 191 153 153 191 152 152 191 152 152 190 149 149 186 149 149 186 152 152 190 151 151 189 151 151 189 151 151 189 151 151 189 151 151 188 150 150 188 150 150 188 150 150 188 150 150 187 150 150 187 149 149 187 149 149 187 147 147 184 131 131 163 131 131 163 42 42 52 21 21 26 14 14 18 14 14 18 40 40 50 65 65 82 65 65 81 92 92 115 71 71 89 71 71 89 128 128 161 136 136 170 135 135 169 143 143 178 145 145 182 145 145 181 145 145 181 145 145 181 140 140 175 140 140 175 102 102 127 33 33 41 33 33 41 56 56 70 24 24 30 24 24 30 11 11 14 27 27 34 63 63 79 63 63 79 107 107 134 121 121 152 121 121 152 118 118 148 79 79 99 79 79 99 102 102 127 136 136 170 140 140 175 140 140 175 139 139 174 139 139 174 139 139 174 255 255 150 255 255 145 132 66 0 137 68 0 102 51 0 122 61 0 239 119 0 244 122 0 234 117 0 244 122 0 247 123 0 232 116 0 232 116 0 209 104 0 173 86 0 239 119 0 237 118 0 247 123 0 84 42 0 188 94 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 108 135 135 107 134 134 108 136 136 107 134 134 107 134 134 109 136 136 110 138 138 108 135 135 107 134 134 114 114 143 114 114 143 114 114 142 112 112 141 112 112 141 112 112 140 113 113 142 113 113 141 113 113 141 113 113 141 110 110 138 112 112 140 112 112 140 112 112 140 112 112 140 112 112 140 111 111 139 111 111 139 111 111 139 111 111 139 111 111 139 111 111 138 111 111 138 110 110 138 109 109 136 109 109 136 97 97 121 31 31 38 31 31 38 15 15 19 11 11 13 11 11 13 29 29 37 48 48 60 68 68 85 68 68 85 52 52 66 95 95 119 95 95 119 100 100 126 106 106 132 106 106 132 108 108 135 107 107 134 107 107 134 107 107 134 104 104 130 75 75 94 75 75 94 24 24 31 42 42 52 42 42 52 18 18 22 8 8 10 8 8 10 20 20 25 47 47 59 47 47 58 80 80 100
-81 101 101 81 101 101 87 109 109 97 122 122 97 122 122 124 155 155 153 192 192 153 191 191 161 202 202 163 203 203 163 203 203 162 203 203 162 203 203 154 192 192 154 192 192 155 194 194 157 196 196 157 196 196 153 192 192 143 179 179 143 179 179 151 189 189 154 193 193 154 193 193 151 188 188 121 152 152 121 152 152 116 145 145 124 155 155 124 155 155 156 195 195 159 199 199 159 199 199 159 199 199 159 199 199 157 196 196 157 196 196 155 194 194 155 194 194 155 194 194 158 197 197 158 197 197 157 197 197 151 189 189 152 191 191 152 190 190 152 190 190 150 188 188 150 188 188 144 180 180 150 187 187 150 187 187 143 179 179 146 183 183 146 183 183 150 188 188 150 188 188 155 155 194 155 155 193 154 154 193 154 154 193 154 154 193 151 151 189 152 152 190 152 152 190 152 152 190 148 148 186 148 148 185 151 151 189 151 151 189 151 151 189 147 147 184 150 150 188 150 150 188 148 148 186 150 150 187 150 150 187 151 151 189 151 151 188 150 150 188 150 150 188 149 149 186 138 138 172 138 138 172 22 22 28 25 25 32 25 25 32 4 4 5 33 33 41 33 33 41 75 75 93 59 59 74 59 59 74 73 73 91 79 79 98 79 79 98 87 87 109 111 111 139 111 111 139 137 137 172 144 144 181 144 144 180 146 146 182 145 145 182 145 145 181 145 145 181 137 137 172 139 139 173 138 138 173 140 140 175 136 136 171 136 136 170 127 127 159 134 134 168 134 134 168 137 137 171 134 134 167 133 133 167 107 107 134 103 103 129 103 103 129 110 110 137 138 138 173 138 138 172 140 140 176 140 140 175 140 140 175 140 140 175 138 138 173 136 136 171 255 255 145 127 63 0 168 84 0 201 100 0 244 122 0 163 81 0 160 80 0 204 102 0 204 102 0 229 114 0 237 118 0 229 114 0 237 118 0 216 108 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 111 139 139 106 133 133 111 139 139 111 139 139 106 133 133 108 135 135 108 135 135 111 139 139 111 139 139 111 139 139 114 114 143 114 114 143 114 114 143 114 114 142 111 111 139 112 112 140 112 112 140 112 112 140 109 109 137 109 109 137 111 111 139 111 111 139 111 111 139 109 109 136 111 111 139 111 111 138 109 109 137 110 110 138 110 110 138 111 111 139 111 111 139 111 111 139 111 111 138 109 109 137 101 101 127 101 101 127 16 16 20 18 18 23 18 18 23 3 3 4 24 24 30 24 24 30 55 55 69 44 44 55 44 44 55 54 54 67 58 58 72 58 58 72 64 64 81 82 82 102 82 82 102 101 101 127 107 107 133 107 107 133 107 107 134 107 107 134 107 107 134 107 107 134 102 102 127 102 102 128 102 102 128 103 103 129 101 101 126 101 101 126 94 94 118 100 100 125 99 99 124
-91 114 114 106 132 132 139 174 174 139 174 174 140 176 176 155 194 194 155 194 194 158 198 198 161 202 202 161 202 202 161 202 202 92 115 115 75 94 94 75 94 94 37 47 47 54 67 67 54 67 67 70 88 88 49 61 61 49 61 61 65 81 81 129 161 161 128 161 161 136 171 171 60 75 75 60 75 75 16 20 20 138 172 172 137 172 172 160 200 200 160 200 200 160 200 200 160 200 200 156 195 195 156 195 195 157 197 197 156 195 195 155 194 194 155 194 194 152 190 190 152 190 190 152 190 190 151 189 189 151 189 189 150 187 187 153 191 191 152 191 191 146 182 182 154 192 192 153 192 192 149 186 186 139 174 174 139 173 173 151 189 189 146 183 183 146 183 183 155 155 194 155 155 194 155 155 194 155 155 194 155 155 193 154 154 193 154 154 193 154 154 193 154 154 192 154 154 192 150 150 188 150 150 188 153 153 191 153 153 191 153 153 191 149 149 187 151 151 189 151 151 188 152 152 190 152 152 190 152 152 190 151 151 189 151 151 189 151 151 189 142 142 177 30 30 38 30 30 38 42 42 53 69 69 87 69 69 87 6 6 7 7 7 9 7 7 9 63 63 79 123 123 154 123 123 154 85 85 106 82 82 103 82 82 102 95 95 119 125 125 156 125 125 156 126 126 158 139 139 174 139 139 174 142 142 177 145 145 181 144 144 180 144 144 180 82 82 103 82 82 102 67 67 84 33 33 42 33 33 42 48 48 60 62 62 78 62 62 78 43 43 54 58 58 72 57 57 72 114 114 142 121 121 151 121 121 151 53 53 66 14 14 17 14 14 17 121 121 152 141 141 177 141 141 176 141 141 176 140 140 176 140 140 175 137 137 172 138 138 173 138 138 173 242 121 0 244 122 0 234 117 0 211 105 0 232 116 0 242 121 0 234 117 0 131 131 163 130 130 163 133 133 166 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 113 141 141 108 135 135 108 135 135 113 142 142 110 137 137 110 137 137 102 128 128 112 140 140 111 139 139 108 135 135 115 115 143 114 114 143 114 114 143 114 114 143 114 114 142 114 114 142 114 114 142 113 113 142 113 113 142 113 113 141 113 113 141 110 110 138 113 113 141 112 112 141 112 112 140 110 110 137 110 110 137 111 111 138 112 112 140 111 111 139 111 111 139 111 111 139 111 111 139 111 111 139 104 104 130 104 104 130 22 22 27 31 31 39 31 31 39 51 51 64 4 4 5 4 4 5 5 5 6 46 46 58 46 46 58 90 90 113 62 62 78 62 62 78 60 60 75 70 70 88 70 70 87 92 92 115 93 93 116 93 93 116 102 102 128 104 104 131 104 104 130 106 106 133 106 106 133 60 60 76 60 60 75 49 49 62 24 24 31 24 24 31 35 35 44 46 46 57
-104 131 131 116 145 145 133 166 166 133 166 166 161 201 201 162 203 203 162 203 203 162 203 203 162 202 202 148 186 186 87 109 109 87 109 109 66 82 82 93 117 117 93 117 117 67 84 84 72 90 90 72 90 90 114 143 143 154 192 192 154 192 192 135 169 169 31 38 38 31 38 38 9 12 12 79 99 99 79 99 99 156 195 195 160 201 201 160 201 201 160 200 200 157 196 196 157 196 196 158 198 198 156 195 195 156 195 195 156 195 195 151 189 189 151 189 189 155 194 194 157 196 196 157 196 196 153 192 192 153 192 192 148 185 185 151 189 189 151 189 189 149 187 187 149 187 187 149 186 186 152 190 190 150 188 188 150 188 188 155 194 194 156 156 195 156 156 195 156 156 195 156 156 195 155 155 194 155 155 194 155 155 194 155 155 194 155 155 193 154 154 193 154 154 193 151 151 189 152 152 191 152 152 190 152 152 190 152 152 190 152 152 190 153 153 191 153 153 191 153 153 191 152 152 191 152 152 190 152 152 190 150 150 188 150 150 188 127 127 159 9 9 11 9 9 11 19 19 24 114 114 142 114 114 142 31 31 39 6 6 7 6 6 7 9 9 11 36 36 45 36 36 45 102 102 128 100 100 126 100 100 125 91 91 114 94 94 118 94 94 117 104 104 130 119 119 149 119 119 149 144 144 180 145 145 182 145 145 181 145 145 181 133 133 166 132 132 166 78 78 97 58 58 73 58 58 73 83 83 104 60 60 75 60 60 75 64 64 80 102 102 127 101 101 127 136 136 170 136 136 170 120 120 150 27 27 34 27 27 34 8 8 10 70 70 88 70 70 88 137 137 172 141 141 177 141 141 177 141 141 176 138 138 172 138 138 172 139 139 174 137 137 172 247 123 0 137 137 171 132 132 165 132 132 165 136 136 170 137 137 172 137 137 171 134 134 168 129 129 162 129 129 162 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 109 137 137 112 140 140 110 138 138 110 138 138 110 137 137 112 140 140 112 140 140 111 138 138 114 142 142 114 142 142 115 115 143 114 114 143 114 114 143 114 114 143 114 114 143 114 114 142 114 114 142 113 113 142 113 113 142 113 113 142 111 111 138 111 111 138 111 111 139 111 111 139 111 111 139 111 111 139 111 111 139 112 112 140 112 112 140 112 112 140 111 111 139 111 111 139 111 111 139 110 110 137 93 93 116 93 93 116 6 6 8 14 14 18 14 14 18 83 83 104 23 23 29 23 23 29 4 4 5 6 6 8 6 6 8 26 26 33 75 75 93 75 75 93 73 73 92 67 67 83 67 67 83 69 69 86 76 76 96 76 76 95 87 87 109 106 106 132 105 105 132 106 106 133 106 106 133 106 106 133 97 97 122 97 97 122 57 57 71 43 43 54
-106 133 133 90 112 112 90 112 112 136 170 170 136 170 170 157 197 197 159 199 199 159 199 199 159 199 199 160 200 200 160 200 200 153 192 192 158 198 198 158 198 198 156 195 195 156 195 195 156 195 195 138 172 172 34 43 43 34 43 43 41 51 51 41 51 51 95 118 118 44 55 55 44 55 55 114 142 142 159 199 199 159 199 199 161 201 201 161 201 201 161 201 201 160 201 201 160 200 200 160 200 200 160 200 200 160 200 200 160 200 200 158 197 197 158 197 197 154 193 193 151 189 189 151 188 188 139 174 174 154 192 192 153 192 192 150 188 188 151 189 189 151 189 189 153 191 191 153 191 191 152 191 191 151 188 188 157 157 196 157 157 196 156 156 196 156 156 196 156 156 195 156 156 195 156 156 195 156 156 195 155 155 194 155 155 194 155 155 194 155 155 194 155 155 193 154 154 193 154 154 193 154 154 193 154 154 192 154 154 192 154 154 192 153 153 192 153 153 192 153 153 191 153 153 191 153 153 191 146 146 183 32 32 40 32 32 40 19 19 24 102 102 128 102 102 128 110 110 137 139 139 173 138 138 173 32 32 40 31 31 39 13 13 17 3 3 3 3 3 3 6 6 7 34 34 43 34 34 43 79 79 99 103 103 129 103 103 129 100 100 125 95 95 119 95 95 119 80 80 100 122 122 153 122 122 152 141 141 176 141 141 176 142 142 178 142 142 177 142 142 177 143 143 179 137 137 171 136 136 171 141 141 176 139 139 174 139 139 174 139 139 173 122 122 153 122 122 153 30 30 38 36 36 45 36 36 45 84 84 105 83 83 104 39 39 48 101 101 126 100 100 126 140 140 176 142 142 177 141 141 177 141 141 177 141 141 176 141 141 176 140 140 176 140 140 175 140 140 175 140 140 175 140 140 175 138 138 172 135 135 169 135 135 168 132 132 165 122 122 152 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 103 128 128 113 141 141 113 141 141 110 138 138 111 139 139 111 139 139 112 140 140 112 140 140 112 140 140 110 138 138 110 138 138 115 115 144 115 115 143 114 114 143 114 114 143 114 114 143 114 114 142 114 114 142 114 114 142 113 113 142 113 113 142 113 113 141 113 113 141 113 113 141 113 113 141 112 112 141 112 112 140 112 112 140 112 112 140 112 112 140 112 112 140 111 111 139 111 111 139 111 111 139 106 106 133 23 23 29 23 23 29 14 14 18 75 75 93 74 74 93 80 80 100 101 101 126 101 101 126 23 23 29 23 23 29 9 9 12 2 2 2 2 2 2 4 4 5 25 25 31 25 25 31 58 58 72 75 75 94 75 75 94 73 73 91 70 70 87 70 70 87 59 59 73 89 89 111 89 89 111 103 103 129 103 103 129 104 104 130
-113 142 142 113 142 142 90 112 112 90 112 112 133 166 166 154 193 193 154 193 193 159 199 199 159 199 199 159 199 199 159 199 199 155 194 194 155 194 194 114 142 142 114 142 142 16 20 20 47 59 59 47 59 59 125 156 156 120 150 150 120 150 150 88 110 110 60 75 75 60 75 75 145 182 182 145 182 182 161 202 202 161 202 202 161 202 202 161 201 201 158 197 197 157 197 197 156 195 195 156 195 195 155 194 194 155 194 194 155 194 194 155 194 194 153 192 192 153 191 191 154 193 193 154 193 193 154 193 193 152 191 191 152 190 190 144 180 180 153 192 192 153 192 192 155 194 194 155 193 193 154 193 193 157 157 197 156 156 195 155 155 194 157 157 196 157 157 196 157 157 196 156 156 196 156 156 195 156 156 195 156 156 195 156 156 195 154 154 192 155 155 194 155 155 194 155 155 194 155 155 193 154 154 193 154 154 193 154 154 193 154 154 193 154 154 192 154 154 192 149 149 186 85 85 106 85 85 106 23 23 29 23 23 28 52 52 65 144 144 181 144 144 180 149 149 186 152 152 190 151 151 189 150 150 187 65 65 82 65 65 82 6 6 7 6 6 7 13 13 17 15 15 18 15 15 18 13 13 17 7 7 9 7 7 9 12 12 15 63 63 79 63 63 78 105 105 131 104 104 131 101 101 127 80 80 100 80 80 100 119 119 149 138 138 173 138 138 172 142 142 178 142 142 177 142 142 177 141 141 177 141 141 177 138 138 173 101 101 126 101 101 126 14 14 18 42 42 53 42 42 52 110 110 138 110 110 138 106 106 132 78 78 98 78 78 97 53 53 66 128 128 160 128 128 160 142 142 178 142 142 177 142 142 177 141 141 177 141 141 177 138 138 173 136 136 171 136 136 170 136 136 170 136 136 170 136 136 170 135 135 169 134 134 167 133 133 167 135 135 168 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 113 142 142 113 141 141 112 140 140 112 140 140 105 132 132 112 141 141 112 140 140 113 142 142 113 141 141 113 141 141 115 115 144 115 115 144 114 114 142 114 114 143 114 114 143 114 114 143 114 114 143 114 114 142 114 114 142 113 113 142 113 113 142 112 112 140 112 112 140 113 113 141 113 113 141 113 113 141 112 112 141 112 112 140 112 112 140 112 112 140 112 112 140 112 112 140 108 108 135 108 108 135 62 62 77 16 16 21 16 16 21 38 38 47 38 38 47 105 105 131 108 108 135 108 108 135 110 110 138 109 109 136 109 109 136 47 47 59 4 4 5 4 4 5 9 9 12 9 9 12 11 11 13 9 9 12 9 9 12 5 5 6 8 8 10 8 8 10 46 46 57 76 76 95 76 76 95 74 74 92 74 74 92
-72 90 90 90 113 113 90 112 112 112 140 140 123 154 154 123 154 154 123 154 154 123 154 154 119 149 149 51 64 64 51 64 64 9 12 12 4 6 6 4 6 6 56 70 70 56 70 70 148 186 186 80 101 101 80 101 101 112 140 140 133 166 166 133 166 166 115 143 143 115 143 143 162 203 203 162 203 203 162 202 202 162 202 202 160 200 200 160 200 200 160 200 200 159 199 199 154 193 193 154 193 193 154 193 193 157 197 197 155 194 194 155 194 194 155 194 194 155 194 194 155 194 194 150 187 187 150 187 187 151 189 189 153 191 191 152 191 191 157 196 196 157 196 196 155 194 194 158 158 198 158 158 198 158 158 197 158 158 197 157 157 197 157 157 197 157 157 196 157 157 196 157 157 196 157 157 196 155 155 194 153 153 191 153 153 191 156 156 195 156 156 195 155 155 194 155 155 194 155 155 194 155 155 194 155 155 193 154 154 193 154 154 193 154 154 193 151 151 189 62 62 77 62 62 77 34 34 42 105 105 131 105 105 131 147 147 183 146 146 183 128 128 160 152 152 190 152 152 190 150 150 188 141 141 176 141 141 176 45 45 57 45 45 57 4 4 5 13 13 17 13 13 17 12 12 15 7 7 9 7 7 9 1 1 1 1 1 1 9 9 11 22 22 28 22 22 28 58 58 73 64 64 80 64 64 80 80 80 101 80 80 100 100 100 125 110 110 137 110 110 137 109 109 137 106 106 133 106 106 133 45 45 57 45 45 57 8 8 11 4 4 5 4 4 5 49 49 62 131 131 164 131 131 164 71 71 89 71 71 89 99 99 123 117 117 147 117 117 147 101 101 126 143 143 179 143 143 178 142 142 178 142 142 178 142 142 177 140 140 175 140 140 175 140 140 175 135 135 169 135 135 169 135 135 169 135 135 168 137 137 172 136 136 170 135 135 169 135 135 169 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 114 142 142 113 142 142 113 142 142 109 137 137 110 138 138 110 138 138 111 139 139 111 139 139 114 143 143 113 142 142 113 141 141 115 115 144 115 115 144 115 115 144 115 115 143 114 114 143 114 114 143 114 114 143 114 114 143 114 114 142 112 112 141 112 112 140 111 111 139 111 111 139 113 113 141 113 113 141 113 113 141 112 112 141 112 112 141 112 112 140 112 112 140 112 112 140 112 112 140 109 109 137 109 109 137 45 45 56 24 24 30 24 24 30 76 76 95 76 76 95 106 106 133 92 92 116 92 92 116 110 110 138 109 109 136 109 109 136 102 102 127 102 102 127 33 33 41 3 3 4 3 3 4 9 9 12 8 8 11 8 8 11 5 5 6 5 5 6 1 1 1 6 6 8 6 6 8 16 16 20
-15 18 18 15 18 18 20 25 25 20 25 25 20 25 25 70 87 87 70 87 87 60 75 75 78 98 98 78 97 97 31 39 39 31 39 39 124 155 155 161 201 201 161 201 201 160 201 201 160 200 200 153 192 192 155 194 194 155 194 194 92 115 115 156 195 195 156 195 195 161 201 201 161 201 201 162 203 203 157 197 197 157 196 196 155 194 194 155 194 194 153 192 192 153 192 192 153 191 191 158 197 197 154 193 193 154 193 193 156 195 195 156 195 195 155 194 194 155 194 194 155 194 194 157 196 196 156 196 196 156 195 195 159 199 199 159 199 199 154 193 193 159 159 199 159 159 198 158 158 198 158 158 198 158 158 198 158 158 198 158 158 197 154 154 193 154 154 193 149 149 187 155 155 194 155 155 194 157 157 196 157 157 196 156 156 196 156 156 195 156 156 195 156 156 195 156 156 195 155 155 194 155 155 194 155 155 194 155 155 194 136 136 170 136 136 170 20 20 25 20 20 25 109 109 136 143 143 179 143 143 178 136 136 170 136 136 170 136 136 170 145 145 181 145 145 181 143 143 179 151 151 188 150 150 188 150 150 188 150 150 188 59 59 74 3 3 3 3 3 3 0 0 0 3 3 3 3 3 3 4 4 5 4 4 5 9 9 11 10 10 13 10 10 13 27 27 33 27 27 33 27 27 33 12 12 15 12 12 15 13 13 16 17 17 22 17 17 22 17 17 22 17 17 22 62 62 78 53 53 66 53 53 66 69 69 87 69 69 86 28 28 35 110 110 138 110 110 138 142 142 178 142 142 178 142 142 177 136 136 170 135 135 169 137 137 171 81 81 101 81 81 101 137 137 172 137 137 172 141 141 177 143 143 178 142 142 178 138 138 172 136 136 170 136 136 170 134 134 168 134 134 168 134 134 167 138 138 172 138 138 172 135 135 168 134 134 168 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 114 142 142 114 142 142 113 142 142 113 142 142 113 141 141 114 143 143 114 142 142 114 142 142 116 145 145 116 145 145 112 140 140 112 140 140 115 115 144 115 115 144 115 115 144 115 115 143 115 115 143 114 114 143 112 112 140 112 112 140 108 108 135 113 113 141 112 112 141 113 113 142 113 113 142 113 113 141 113 113 141 113 113 141 113 113 141 112 112 141 112 112 140 112 112 140 112 112 140 112 112 140 98 98 123 98 98 123 14 14 18 14 14 18 78 78 98 103 103 129 103 103 129 98 98 123 98 98 123 98 98 123 105 105 131 104 104 131 103 103 129 109 109 136 108 108 136 108 108 136 108 108 135 43 43 54 2 2 2 2 2 2 0 0 0 2 2 2 2 2 2 3 3 4 3 3 4
-45 56 56 35 44 44 35 44 44 46 58 58 40 50 50 40 50 50 26 33 33 26 33 33 66 83 83 146 183 183 146 183 183 161 202 202 161 201 201 151 189 189 136 170 170 136 170 170 152 190 190 152 190 190 101 126 126 155 194 194 155 194 194 162 202 202 161 202 202 163 204 204 159 199 199 159 199 199 156 195 195 156 195 195 157 197 197 159 199 199 159 198 198 162 202 202 162 202 202 160 200 200 153 191 191 153 191 191 153 191 191 153 191 191 159 199 199 157 197 197 157 196 196 157 196 196 157 196 196 158 198 198 160 200 200 159 199 199 158 158 197 159 159 199 159 159 199 159 159 199 159 159 198 158 158 198 158 158 198 158 158 198 156 156 196 156 156 195 158 158 197 157 157 197 157 157 197 157 157 196 157 157 196 157 157 196 157 157 196 156 156 196 156 156 195 156 156 195 156 156 195 154 154 193 154 154 192 129 129 161 128 128 161 31 31 39 106 106 133 106 106 133 136 136 170 135 135 169 149 149 187 137 137 171 136 136 171 146 146 182 145 145 182 147 147 184 150 150 187 149 149 187 148 148 185 148 148 185 141 141 177 30 30 38 30 30 38 1 1 1 13 13 17 13 13 17 15 15 19 15 15 19 12 12 15 48 48 60 48 48 60 39 39 49 39 39 49 36 36 45 77 77 96 76 76 96 43 43 54 43 43 54 40 40 50 31 31 39 31 31 39 41 41 52 41 41 52 35 35 44 23 23 29 23 23 29 59 59 74 59 59 74 130 130 162 143 143 179 143 143 178 134 134 167 133 133 167 120 120 150 134 134 168 134 134 168 89 89 111 88 88 111 136 136 171 142 142 178 142 142 177 143 143 179 143 143 179 140 140 175 137 137 171 136 136 171 138 138 172 139 139 174 139 139 173 141 141 177 141 141 176 139 139 174 133 133 167 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 111 139 139 111 139 139 111 139 139 116 145 145 115 144 144 114 143 143 114 143 143 114 142 142 115 144 144 115 143 143 116 145 145 114 114 143 114 114 143 115 115 144 115 115 144 115 115 144 115 115 143 114 114 143 114 114 143 113 113 141 113 113 141 114 114 142 114 114 142 113 113 142 113 113 142 113 113 142 113 113 141 113 113 141 113 113 141 113 113 141 112 112 141 112 112 140 112 112 140 111 111 139 92 92 116 92 92 116 22 22 28 22 22 28 76 76 95 97 97 122 97 97 122 107 107 134 107 107 134 98 98 123 105 105 131 105 105 131 106 106 132 105 105 132 107 107 134 106 106 133 106 106 133 102 102 127 101 101 127 22 22 27 1 1 1 1 1 1 9 9 12
-42 52 52 42 52 52 60 75 75 60 75 75 47 58 58 46 58 58 154 192 192 155 194 194 155 194 194 147 184 184 147 183 183 155 194 194 150 187 187 150 187 187 159 199 199 159 199 199 128 160 160 106 132 132 106 132 132 162 203 203 162 203 203 163 204 204 163 204 204 163 204 204 163 204 204 163 204 204 163 204 204 163 203 203 162 203 203 162 203 203 162 203 203 160 201 201 160 200 200 160 200 200 160 200 200 160 200 200 160 200 200 158 197 197 158 197 197 158 197 197 157 197 197 159 199 199 159 198 198 159 198 198 160 160 200 160 160 200 160 160 200 160 160 200 159 159 199 159 159 199 159 159 199 159 159 199 159 159 198 158 158 198 158 158 198 158 158 198 158 158 198 158 158 197 158 158 197 157 157 197 157 157 197 154 154 193 154 154 192 154 154 192 131 131 164 131 131 164 134 134 168 134 134 167 102 102 128 77 77 96 77 77 96 61 61 76 61 61 76 144 144 180 122 122 152 122 122 152 151 151 189 151 151 189 151 151 189 135 135 169 135 135 169 141 141 176 141 141 176 123 123 154 122 122 152 122 122 152 149 149 187 149 149 186 118 118 148 118 118 148 16 16 21 58 58 72 58 58 72 18 18 22 18 18 22 9 9 11 9 9 11 9 9 11 25 25 32 25 25 32 18 18 22 22 22 28 22 22 28 61 61 77 61 61 77 37 37 46 37 37 46 37 37 46 53 53 67 53 53 67 41 41 52 137 137 171 136 136 171 138 138 172 137 137 172 130 130 162 137 137 171 137 137 171 132 132 165 132 132 165 141 141 176 113 113 141 112 112 141 93 93 117 93 93 116 142 142 178 144 144 180 143 143 179 143 143 179 143 143 179 143 143 179 143 143 178 142 142 178 142 142 178 142 142 177 142 142 177 141 141 177 140 140 175 139 139 174 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 165 103 0 128 80 0 159 99 0 103 64 0 82 51 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 116 146 146 116 145 145 116 145 145 116 145 145 116 145 145 114 143 143 114 143 143 114 143 143 115 144 144 115 144 144 115 143 143 115 143 143 116 116 145 115 115 144 115 115 144 115 115 144 115 115 144 115 115 143 115 115 143 114 114 143 114 114 143 114 114 143 114 114 142 114 114 142 114 114 142 113 113 142 113 113 142 113 113 141 113 113 141 110 110 138 110 110 138 110 110 138 94 94 118 94 94 118 96 96 120 73 73 92 73 73 92 55 55 69 55 55 69 44 44 55 103 103 129 103 103 129 87 87 109 87 87 109 108 108 135 108 108 135 108 108 135 97 97 121 97 97 121 101 101 126 89 89 111 88 88 111 87 87 109 87 87 109 107 107 134 107 107 134
-43 54 54 43 54 54 79 98 98 158 197 197 158 197 197 159 199 199 159 199 199 152 190 190 159 199 199 159 199 199 150 188 188 150 188 188 150 188 188 133 167 167 133 166 166 118 148 148 118 147 147 161 201 201 161 201 201 164 205 205 164 205 205 164 205 205 164 205 205 164 205 205 163 204 204 163 204 204 163 204 204 163 204 204 163 204 204 159 199 199 159 199 199 161 201 201 159 199 199 159 199 199 162 203 203 162 202 202 150 188 188 158 198 198 158 198 198 161 202 202 161 201 201 159 199 199 161 161 201 161 161 201 160 160 201 160 160 200 160 160 200 160 160 200 160 160 200 160 160 200 159 159 199 159 159 199 159 159 199 159 159 199 159 159 198 159 159 198 158 158 198 158 158 198 158 158 198 158 158 197 148 148 185 130 130 163 130 130 163 106 106 133 106 106 133 88 88 111 133 133 166 133 133 166 41 41 51 41 41 51 108 108 136 108 108 136 141 141 177 122 122 153 122 122 153 147 147 184 147 147 184 150 150 187 150 150 187 149 149 187 140 140 175 140 140 175 101 101 126 119 119 149 119 119 149 148 148 185 148 148 185 145 145 181 145 145 181 67 67 84 13 13 17 13 13 17 41 41 51 41 41 51 7 7 9 53 53 66 53 53 66 36 36 45 36 36 45 33 33 41 33 33 41 27 27 34 84 84 106 84 84 105 123 123 154 123 123 154 66 66 82 39 39 48 39 39 48 70 70 88 70 70 87 140 140 175 141 141 177 141 141 176 135 135 169 135 135 169 140 140 176 140 140 175 133 133 166 132 132 166 132 132 165 117 117 147 117 117 147 104 104 130 142 142 177 141 141 177 144 144 180 144 144 180 144 144 180 143 143 179 143 143 179 143 143 179 143 143 179 143 143 178 142 142 178 142 142 178 139 139 174 139 139 174 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 191 119 0 183 114 0 199 124 0 185 116 0 184 115 0 160 100 0 132 82 0 91 57 0 39 24 0 106 66 0 161 100 0 150 94 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 118 148 148 116 145 145 116 145 145 117 146 146 115 144 144 115 144 144 117 147 147 117 146 146 109 136 136 114 143 143 114 143 143 116 145 145 116 145 145 115 144 144 115 143 143 116 116 145 115 115 144 115 115 144 115 115 144 115 115 144 115 115 144 115 115 143 114 114 143 114 114 143 114 114 143 114 114 143 114 114 142 114 114 142 113 113 142 113 113 142 113 113 142 113 113 141 106 106 133 93 93 117 93 93 117 76 76 95 76 76 95 63 63 79 95 95 119 95 95 119 29 29 36 29 29 36 77 77 97 77 77 97 101 101 126 87 87 109 87 87 109 105 105 131 105 105 131 107 107 134 107 107 134 107 107 134 100 100 125 100 100 125 72 72 90 85 85 106 85 85 106
-158 198 198 150 187 187 150 187 187 160 200 200 160 200 200 159 199 199 137 172 172 137 172 172 152 191 191 152 190 190 134 167 167 154 192 192 154 192 192 118 148 148 118 148 148 148 185 185 148 185 185 163 204 204 165 206 206 164 206 206 164 205 205 164 205 205 164 205 205 164 205 205 164 205 205 164 205 205 163 204 204 162 202 202 161 202 202 161 202 202 156 195 195 156 195 195 146 183 183 146 183 183 154 193 193 154 192 192 160 200 200 160 200 200 160 200 200 158 198 198 158 198 198 161 161 202 161 161 201 161 161 201 161 161 201 161 161 201 160 160 201 160 160 200 160 160 200 160 160 200 160 160 200 155 155 193 155 155 193 153 153 191 153 153 191 103 103 128 106 106 132 106 106 132 102 102 128 102 102 128 115 115 144 115 115 143 121 121 151 149 149 187 149 149 187 154 154 193 154 154 192 85 85 107 85 85 107 90 90 112 147 147 184 147 147 183 126 126 157 126 126 157 148 148 185 114 114 143 114 114 143 97 97 121 97 97 121 109 109 137 109 109 136 132 132 165 88 88 111 88 88 111 101 101 126 101 101 126 145 145 182 145 145 182 140 140 176 69 69 86 69 69 86 38 38 48 38 38 48 35 35 44 35 35 44 105 105 132 67 67 84 67 67 84 64 64 80 64 64 80 67 67 83 92 92 115 92 92 115 57 57 72 57 57 71 54 54 68 54 54 67 67 67 84 141 141 176 141 141 176 133 133 167 133 133 166 142 142 177 141 141 177 141 141 177 122 122 152 122 122 152 135 135 169 134 134 168 118 118 148 118 118 147 135 135 169 104 104 130 104 104 130 130 130 163 130 130 163 143 143 179 144 144 181 144 144 180 144 144 180 144 144 180 143 143 179 143 143 179 143 143 179 143 143 179 142 142 178 141 141 176 141 141 176 140 140 176 140 140 175 136 136 170 127 127 159 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 187 117 0 183 114 0 193 121 0 191 119 0 153 95 0 174 109 0 101 63 0 100 62 0 130 81 0 127 79 0 109 68 0 138 86 0 118 74 0 46 29 0 71 44 0 120 75 0 187 117 0 186 116 0 103 64 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 119 149 149 119 149 149 119 149 149 119 148 148 119 148 148 117 147 147 117 146 146 117 146 146 117 146 146 113 141 141 113 141 141 105 132 132 111 139 139 111 139 139 116 145 145 115 144 144 115 144 144 114 142 142 114 142 142 116 116 145 116 116 145 116 116 145 115 115 144 115 115 144 115 115 144 115 115 144 115 115 143 115 115 143 114 114 143 114 114 143 111 111 138 109 109 137 109 109 137 73 73 92 73 73 92 75 75 94 73 73 91 73 73 91 82 82 102 82 82 102 86 86 108 86 86 108 106 106 133 110 110 137 110 110 137 61 61 76 61 61 76 64 64 80 64 64 80 104 104 131 90 90 112 90 90 112 105 105 132 105 105 131 81 81 102 81 81 102 69 69 86 78 78 97 78 78 97 94 94 118
-160 201 201 160 200 200 162 202 202 162 202 202 148 185 185 148 185 185 155 193 193 141 176 176 141 176 176 149 187 187 149 186 186 99 123 123 99 123 123 142 178 178 142 178 178 162 202 202 163 204 204 163 204 204 165 206 206 165 206 206 165 206 206 164 206 206 164 205 205 164 205 205 164 205 205 159 199 199 159 199 199 164 205 205 163 204 204 160 200 200 158 198 198 158 198 198 161 202 202 161 201 201 163 203 203 162 203 203 161 201 201 160 201 201 160 201 201 162 162 202 162 162 202 161 161 202 161 161 202 161 161 202 161 161 201 161 161 201 161 161 201 161 161 201 157 157 197 157 157 196 136 136 170 84 84 105 84 84 105 93 93 117 93 93 117 79 79 98 78 78 98 117 117 146 117 117 146 91 91 114 105 105 132 105 105 132 153 153 192 153 153 191 138 138 173 138 138 173 137 137 171 90 90 113 90 90 113 147 147 184 147 147 184 114 114 142 113 113 142 124 124 156 129 129 161 129 129 161 89 89 112 89 89 112 86 86 108 86 86 107 116 116 145 122 122 152 121 121 152 120 120 150 120 120 150 119 119 149 119 119 149 149 149 186 116 116 145 116 116 145 30 30 38 30 30 38 13 13 17 13 13 17 47 47 59 96 96 121 96 96 120 58 58 72 58 58 72 71 71 89 71 71 89 112 112 141 27 27 34 27 27 34 12 12 15 12 12 15 77 77 96 77 77 96 137 137 171 137 137 171 132 132 165 142 142 178 142 142 178 143 143 179 143 143 179 131 131 164 131 131 164 137 137 171 124 124 156 124 124 155 132 132 165 131 131 164 87 87 109 87 87 108 125 125 156 142 142 178 142 142 178 143 143 179 143 143 179 144 144 181 144 144 180 144 144 180 144 144 180 143 143 179 143 143 179 143 143 179 138 138 173 138 138 173 142 142 178 139 139 174 139 139 174 137 137 172 137 137 171 140 140 175 139 139 174 141 141 176 139 139 174 139 139 174 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 195 122 0 195 122 0 179 112 0 117 73 0 179 112 0 195 122 0 178 111 0 156 97 0 164 102 0 103 64 0 93 58 0 65 40 0 97 60 0 95 59 0 97 61 0 137 85 0 106 66 0 98 61 0 75 47 0 49 31 0 68 42 0 180 112 0 172 107 0 171 107 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 118 148 148 118 147 147 119 149 149 119 148 148 120 150 150 119 149 149 119 149 149 119 149 149 119 149 149 119 149 149 119 148 148 115 144 144 115 143 143 118 148 148 115 144 144 115 144 144 114 143 143 114 142 142 116 145 145 116 145 145 117 146 146 115 144 144 115 144 144 115 144 144 115 144 144 116 116 145 116 116 145 116 116 145 115 115 144 115 115 144 115 115 144 115 115 144 115 115 144 115 115 143 112 112 140 97 97 121 97 97 121 60 60 75 60 60 75 66 66 83 66 66 83 56 56 70 83 83 104 83 83 104 65 65 81 65 65 81 75 75 94 75 75 94 109 109 136 98 98 123 98 98 123 97 97 121 97 97 121 64 64 80 64 64 80 104 104 131 81 81 101 81 81 101 88 88 111 88 88 110 91 91 114 91 91 114 63 63 79 63 63 79
-157 197 197 157 197 197 147 184 184 147 184 184 150 188 188 150 187 187 150 187 187 141 177 177 141 177 177 122 153 153 122 153 153 109 136 136 131 163 163 131 163 163 159 199 199 159 199 199 164 205 205 164 205 205 165 207 207 165 206 206 165 206 206 165 206 206 165 206 206 163 204 204 163 203 203 164 205 205 164 205 205 161 201 201 160 201 201 164 205 205 163 204 204 163 204 204 163 204 204 163 204 204 161 202 202 161 201 201 158 197 197 162 162 203 162 162 203 162 162 203 162 162 203 162 162 202 162 162 202 155 155 194 155 155 194 160 160 200 132 132 165 132 132 165 71 71 89 71 71 89 104 104 130 103 103 129 81 81 101 81 81 101 131 131 163 97 97 121 96 96 121 145 145 181 145 145 181 120 120 150 120 120 150 154 154 192 142 142 178 142 142 178 134 134 168 134 134 167 116 116 145 116 116 145 105 105 131 105 105 131 133 133 166 111 111 138 111 111 138 139 139 174 139 139 174 85 85 106 85 85 106 91 91 114 91 91 114 127 127 159 86 86 108 86 86 107 100 100 125 100 100 125 101 101 127 101 101 126 132 132 165 149 149 186 149 149 186 99 99 124 99 99 124 58 58 73 58 58 73 26 26 32 26 26 32 89 89 111 117 117 146 116 116 146 113 113 142 113 113 141 44 44 55 44 44 55 45 45 57 45 45 57 38 38 47 135 135 169 135 135 168 128 128 161 128 128 160 140 140 175 140 140 175 135 135 169 139 139 174 139 139 174 130 130 163 130 130 162 133 133 166 132 132 166 132 132 165 132 132 165 124 124 156 108 108 135 108 108 135 96 96 120 96 96 120 115 115 143 114 114 143 139 139 174 139 139 174 143 143 179 145 145 181 144 144 180 144 144 180 144 144 180 144 144 180 143 143 179 142 142 177 143 143 179 143 143 178 140 140 175 139 139 174 142 142 178 142 142 177 142 142 177 141 141 177 141 141 176 139 139 174 139 139 174 165 151 170 255 223 170 255 255 175 255 255 175 228 230 174 255 255 174 187 117 0 180 112 0 112 70 0 173 108 0 191 119 0 105 66 0 62 39 0 86 53 0 126 79 0 125 78 0 85 53 0 67 42 0 160 100 0 155 97 0 118 74 0 119 74 0 93 58 0 108 67 0 137 86 0 178 111 0 189 118 0 172 107 0 176 110 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 103 129 129 89 112 112 89 112 112 79 99 99 79 99 99 95 119 119 115 144 144 115 144 144 119 149 149 119 148 148 120 150 150 119 149 149 119 149 149 119 149 149 119 149 149 117 147 147 117 147 147 118 148 148 118 148 148 116 145 145 115 144 144 118 147 147 117 147 147 117 147 147 117 146 146 117 146 146 115 144 144 115 144 144 113 141 141 113 141 141 116 116 145 116 116 145 116 116 145 116 116 145 115 115 144 110 110 138 110 110 138 114 114 142 94 94 117 94 94 117 51 51 63 50 50 63 74 74 92 73 73 92 57 57 72 57 57 72 93 93 116 68 68 86 68 68 86 103 103 128 103 103 128 85 85 107 85 85 107 109 109 136 109 109 136 101 101 126 95 95 119 95 95 119 82 82 103 82 82 103 74 74 93 74 74 93 94 94 118 78 78 98 78 78 98 98 98 123 98 98 123
-157 197 197 120 150 150 120 150 150 159 199 199 159 199 199 143 179 179 143 179 179 108 135 135 108 135 135 126 158 158 99 124 124 99 124 124 134 168 168 134 168 168 156 195 195 156 195 195 162 203 203 162 203 203 162 203 203 162 203 203 165 207 207 163 204 204 163 204 204 161 202 202 161 202 202 156 195 195 156 195 195 158 197 197 157 197 197 161 201 201 160 201 201 160 201 201 162 202 202 162 202 202 163 204 204 163 204 204 163 163 204 163 163 204 163 163 203 161 161 201 161 161 201 149 149 186 149 149 186 104 104 131 104 104 131 81 81 102 81 81 102 99 99 124 99 99 124 84 84 105 122 122 152 122 122 152 141 141 176 141 141 176 150 150 188 150 150 188 144 144 180 143 143 179 151 151 189 148 148 185 148 148 185 151 151 189 151 151 188 133 133 166 133 133 166 147 147 184 147 147 184 81 81 101 110 110 137 110 110 137 117 117 147 117 117 147 124 124 155 123 123 154 98 98 122 98 98 122 93 93 116 93 93 116 146 146 183 148 148 185 148 148 185 103 103 129 103 103 129 133 133 166 133 133 166 123 123 154 123 123 154 143 143 179 148 148 185 147 147 184 96 96 120 96 96 120 63 63 79 63 63 79 35 35 44 35 35 44 101 101 127 67 67 84 67 67 84 33 33 42 33 33 42 33 33 42 33 33 42 74 74 93 74 74 93 123 123 154 123 123 154 124 124 155 142 142 178 142 142 178 134 134 168 134 134 168 131 131 164 131 131 163 139 139 174 139 139 174 106 106 133 140 140 176 140 140 175 126 126 158 126 126 158 95 95 119 95 95 118 111 111 139 111 111 139 87 87 109 118 118 147 118 118 147 137 137 171 136 136 171 142 142 178 142 142 177 142 142 177 141 141 177 144 144 180 144 144 180 142 142 178 140 140 176 140 140 175 136 136 170 135 135 169 137 137 171 136 136 171 228 184 174 255 237 174 255 235 173 255 204 175 255 217 175 255 223 176 255 215 176 255 253 176 255 255 175 255 255 175 255 255 175 255 255 173 255 240 160 255 255 160 176 166 112 151 150 112 123 120 87 153 139 87 121 76 0 118 73 0 96 60 0 145 90 0 107 66 0 110 68 0 172 107 0 182 113 0 98 61 0 78 48 0 130 81 0 139 87 0 168 105 0 174 109 0 184 115 0 189 118 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 115 144 144 88 110 110 88 110 110 116 145 145 105 131 131 104 131 131 78 98 98 78 98 98 92 115 115 91 114 114 72 90 90 72 90 90 97 122 122 113 141 141 113 141 141 117 147 147 117 147 147 117 146 146 117 146 146 119 149 149 119 149 149 117 147 147 116 145 145 116 145 145 112 140 140 112 140 140 113 141 141 113 141 141 115 144 144 115 144 144 115 144 144 115 143 143 116 145 145 117 146 146 116 146 146 116 116 145 116 116 145 116 116 145 116 116 145 114 114 143 114 114 143 106 106 132 74 74 93 74 74 93 58 58 72 58 58 72 70 70 88 70 70 88 60 60 75 60 60 75 86 86 108 100 100 125 100 100 125 106 106 133 106 106 133 102 102 127 101 101 127 107 107 134 107 107 134 104 104 131 104 104 131 106 106 133 94 94 117 94 94 117 104 104 130 104 104 130 57 57 72 57 57 72 77 77 97 77 77 97 83 83 104
-151 189 189 134 167 167 134 167 167 113 142 142 113 142 142 145 182 182 145 182 182 160 201 201 160 200 200 160 200 200 158 198 198 158 198 198 87 109 109 87 109 109 72 90 90 72 90 90 89 111 111 89 111 111 120 151 151 122 153 153 122 152 152 120 150 150 120 150 150 150 188 188 150 187 187 161 202 202 161 202 202 158 197 197 158 197 197 158 197 197 161 201 201 161 201 201 159 199 199 159 198 198 160 160 200 160 160 200 142 142 177 142 142 177 74 74 92 74 74 92 57 57 72 57 57 72 54 54 67 123 123 154 123 123 153 155 155 194 155 155 194 144 144 180 143 143 179 143 143 179 143 143 179 156 156 195 156 156 195 154 154 193 143 143 178 142 142 178 157 157 196 157 157 196 137 137 171 137 137 171 130 130 163 130 130 163 145 145 181 144 144 181 106 106 132 138 138 172 138 138 172 76 76 96 76 76 96 91 91 113 91 91 113 111 111 139 111 111 139 113 113 141 112 112 141 115 115 144 82 82 103 82 82 103 148 148 185 148 148 185 142 142 177 141 141 177 146 146 183 146 146 182 128 128 161 128 128 160 153 153 192 151 151 189 151 151 189 153 153 191 152 152 191 144 144 181 144 144 180 100 100 126 100 100 126 65 65 81 64 64 81 100 100 125 100 100 125 118 118 148 80 80 100 79 79 99 127 127 159 127 127 159 145 145 181 145 145 181 145 145 181 144 144 181 129 129 161 129 129 161 142 142 178 98 98 123 98 98 122 143 143 179 143 143 179 134 134 167 133 133 167 118 118 148 118 118 148 100 100 125 100 100 125 128 128 160 141 141 177 141 141 176 141 141 176 141 141 176 139 139 174 139 139 173 76 76 96 76 76 95 63 63 79 63 63 79 77 77 97 105 105 131 105 105 131 106 106 133 106 106 133 104 104 131 117 111 130 139 135 163 255 221 163 255 204 175 255 233 175 216 176 171 255 203 171 255 228 170 255 231 174 255 235 173 202 169 171 199 168 171 255 249 172 255 255 172 255 242 152 255 253 152 143 129 79 140 127 79 115 102 61 95 88 58 92 87 58 212 198 131 252 223 131 255 255 166 255 255 166 230 220 153 255 255 153 255 241 153 242 227 152 186 116 0 184 115 0 96 60 0 134 84 0 172 107 0 187 117 0 191 119 0 164 102 0 168 105 0 161 101 0 158 99 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 117 147 147 81 101 101 81 101 101 118 148 148 118 148 148 110 138 138 110 138 138 97 122 122 97 122 122 82 103 103 106 132 132 106 132 132 116 146 146 116 145 145 116 145 145 116 145 145 114 143 143 114 143 143 63 79 79 63 79 79 52 65 65 64 80 80 64 80 80 87 108 108 86 108 108 88 110 110 87 109 109 86 108 108 86 108 108 107 134 134 107 134 134 115 144 144 113 141 141 113 141 141 113 141 141 112 141 141 115 143 143 114 143 143 113 141 141 113 141 141 114 114 143 114 114 142 101 101 126 101 101 126 52 52 65 41 41 51 40 40 51 38 38 48 38 38 48 87 87 109 87 87 109 110 110 137 110 110 137 101 101 127 101 101 127 101 101 127 110 110 138 110 110 138 109 109 136 109 109 136 101 101 126 100 100 126 111 111 138 110 110 138 97 97 121 96 96 121 92 92 115 102 102 127 102 102 127 74 74 93 74 74 93 97 97 121 97 97 121 54 54 67
-158 198 198 105 131 131 105 131 131 159 199 199 159 199 199 164 205 205 162 203 203 162 203 203 160 201 201 160 201 201 155 194 194 155 194 194 116 145 145 116 145 145 86 107 107 85 107 107 119 149 149 119 149 149 151 189 189 119 149 149 119 149 149 152 190 190 152 190 190 154 192 192 153 192 192 153 192 192 153 192 192 161 202 202 161 202 202 161 202 202 161 201 201 163 203 203 147 147 184 147 147 184 86 86 107 86 86 107 89 89 111 89 89 111 66 66 82 66 66 82 89 89 111 89 89 111 154 154 193 154 154 193 138 138 172 138 138 172 157 157 196 149 149 186 149 149 186 150 150 188 150 150 188 155 155 193 155 155 193 153 153 191 153 153 191 156 156 195 156 156 195 144 144 180 144 144 180 106 106 133 147 147 184 147 147 183 116 116 145 116 116 145 143 143 179 143 143 179 72 72 90 72 72 90 91 91 114 91 91 114 70 70 88 70 70 87 65 65 81 65 65 81 127 127 159 106 106 133 106 106 133 128 128 160 128 128 160 152 152 190 151 151 189 142 142 177 142 142 177 149 149 187 149 149 187 151 151 188 150 150 188 141 141 176 150 150 188 150 150 187 148 148 185 148 148 185 137 137 171 137 137 171 139 139 174 139 139 174 122 122 153 122 122 152 92 92 116 92 92 115 69 69 86 69 69 86 141 141 176 142 142 178 142 142 178 150 150 187 149 149 187 149 149 187 149 149 186 131 131 163 130 130 163 91 91 113 91 91 113 146 146 183 146 146 183 146 146 183 140 140 175 140 140 175 93 93 116 93 93 116 141 141 176 140 140 175 145 145 181 144 144 181 143 143 178 142 142 178 141 141 176 141 141 176 136 136 170 102 102 127 101 101 127 75 75 94 75 75 93 243 173 130 150 127 130 153 142 164 255 222 164 244 174 129 199 151 129 255 216 165 255 218 165 255 218 167 255 220 166 255 212 166 255 207 175 255 232 174 255 234 174 255 229 174 252 196 175 255 203 175 255 246 159 255 252 158 157 145 92 163 148 92 167 152 95 173 156 95 135 119 70 175 157 95 142 136 95 218 219 165 255 255 165 255 249 147 255 238 147 255 247 168 255 255 167 255 243 158 255 255 158 255 240 159 238 228 159 255 255 164 255 255 164 255 255 162 255 255 165 193 121 0 176 110 0 179 112 0 133 83 0 131 82 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 117 147 147 123 154 154 123 154 154 123 154 154 108 135 135 108 135 135 75 94 94 75 93 93 121 151 151 121 151 151 120 151 151 120 150 150 115 144 144 115 144 144 76 96 96 76 95 95 116 145 145 115 144 144 119 149 149 117 147 147 117 147 147 116 145 145 116 145 145 112 140 140 112 140 140 84 105 105 83 104 104 61 77 77 61 77 77 85 107 107 85 107 107 108 135 135 85 106 106 85 106 106 109 136 136 109 136 136 110 137 137 110 137 137 109 137 137 109 137 137 115 144 144 115 144 144 115 143 143 115 143 143 116 145 145 105 105 131 105 105 131 61 61 76 61 61 76 63 63 79 63 63 79 46 46 58 46 46 58 63 63 78 63 63 78 109 109 136 109 109 136 97 97 122 97 97 121 111 111 139 105 105 131 105 105 131 106 106 132 106 106 132 109 109 136 109 109 136 107 107 134 107 107 134 109 109 137 109 109 137 101 101 127 101 101 126 75 75 94 103 103 129 103 103 129 81 81 102 81 81 102 100 100 126
-95 119 119 165 206 206 160 200 200 160 200 200 165 206 206 164 206 206 164 206 206 164 205 205 166 207 207 166 207 207 161 201 201 160 201 201 115 143 143 115 143 143 94 118 118 94 118 118 72 90 90 72 90 90 62 77 77 58 73 73 58 73 73 109 136 136 109 136 136 135 169 169 135 169 169 157 196 196 157 196 196 157 196 196 157 196 196 156 196 196 156 196 196 83 83 104 83 83 104 88 88 110 88 88 110 83 83 103 82 82 103 134 134 167 79 79 99 79 79 99 129 129 161 128 128 161 155 155 193 155 155 193 158 158 197 158 158 197 151 151 189 151 151 188 139 139 174 139 139 174 157 157 196 157 157 196 158 158 198 158 158 198 153 153 191 136 136 171 136 136 171 144 144 181 144 144 180 123 123 154 123 123 154 106 106 133 106 106 133 132 132 165 132 132 165 109 109 137 109 109 137 86 86 108 86 86 108 94 94 118 94 94 118 62 62 78 70 70 88 70 70 87 121 121 151 121 121 151 140 140 175 140 140 175 128 128 161 128 128 160 153 153 192 153 153 192 125 125 156 124 124 156 132 132 165 132 132 165 129 129 161 128 128 161 144 144 180 138 138 172 137 137 172 150 150 187 150 150 187 143 143 179 143 143 179 113 113 142 113 113 141 107 107 133 107 107 133 108 108 135 108 108 135 108 108 135 107 107 134 147 147 184 147 147 184 150 150 188 150 150 187 150 150 187 145 145 181 145 145 181 138 138 173 138 138 173 144 144 180 144 144 180 144 144 180 143 143 179 105 105 132 105 105 132 84 84 105 84 84 105 145 145 182 145 145 182 140 140 176 140 140 175 145 145 181 144 144 181 144 144 180 145 145 182 145 145 182 255 233 176 255 236 175 237 169 125 237 169 125 194 138 103 171 127 103 143 103 79 146 104 78 101 78 67 122 88 67 115 83 63 117 84 63 221 158 118 255 192 147 253 185 146 255 211 170 255 218 170 255 220 169 242 189 169 210 172 169 255 208 168 161 145 89 154 141 89 173 155 94 179 159 94 163 146 89 169 150 88 222 211 143 184 187 143 131 124 84 193 189 137 226 210 137 255 255 165 255 255 165 255 255 168 255 255 168 255 244 161 255 255 160 229 217 148 231 218 148 255 255 166 255 255 166 255 255 168 255 255 167 255 255 162 255 255 162 255 245 144 255 255 152 255 255 152 104 130 130 103 129 129 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 89 111 111 89 111 111 89 111 111 122 152 152 121 152 152 124 155 155 123 154 154 123 154 154 123 154 154 119 149 149 114 142 142 114 142 142 119 148 148 118 148 148 118 148 148 118 148 148 87 108 108 87 108 108 69 86 86 69 86 86 120 150 150 119 149 149 115 144 144 115 144 144 119 149 149 119 148 148 118 148 148 119 149 149 119 149 149 115 144 144 115 144 144 82 103 103 82 103 103 67 84 84 67 84 84 51 64 64 51 64 64 44 55 55 44 55 55 42 52 52 42 52 52 77 97 97 77 97 97 96 120 120 112 140 140 111 139 139 111 139 139 111 139 139 111 139 139 111 139 139 59 59 73 59 59 73 62 62 78 62 62 78 58 58 73 58 58 73 95 95 118 94 94 118 56 56 70 56 56 70 90 90 113 90 90 113 109 109 136 111 111 139 111 111 139 106 106 133 106 106 133 98 98 122 98 98 122 110 110 138 110 110 138 111 111 139 111 111 139 107 107 134 107 107 134 96 96 120 95 95 119 101 101 126 101 101 126 86 86 108 75 75 93
-167 209 209 167 209 209 169 211 211 168 211 211 156 196 196 156 195 195 156 195 195 156 195 195 153 191 191 152 191 191 144 180 180 144 180 180 118 148 148 118 148 148 50 63 63 50 63 63 77 97 97 77 97 97 94 118 118 94 118 118 106 132 132 159 199 199 159 199 199 127 159 159 127 159 159 152 190 190 152 190 190 157 196 196 157 196 196 122 122 152 122 122 152 110 110 137 110 110 137 131 131 164 131 131 164 159 159 199 159 159 199 151 151 189 151 151 188 106 106 132 106 106 132 140 140 175 140 140 175 145 145 181 145 145 181 148 148 185 140 140 175 139 139 174 157 157 197 157 157 197 159 159 199 159 159 198 149 149 186 148 148 186 140 140 175 140 140 175 153 153 191 153 153 191 133 133 166 133 133 166 126 126 158 126 126 158 139 139 174 139 139 174 152 152 190 151 151 189 142 142 177 141 141 177 90 90 112 90 90 112 90 90 112 62 62 78 62 62 78 100 100 126 100 100 126 123 123 153 123 123 153 130 130 163 130 130 163 113 113 141 112 112 141 147 147 184 147 147 184 145 145 182 145 145 181 134 134 167 134 134 167 137 137 171 137 137 171 132 132 165 131 131 164 144 144 180 151 151 189 151 151 189 103 103 128 103 103 128 73 73 91 73 73 91 143 143 178 142 142 178 80 80 100 80 80 100 126 126 158 126 126 158 151 151 188 150 150 188 149 149 186 149 149 186 148 148 186 148 148 185 146 146 183 146 146 183 140 140 175 140 140 175 127 127 159 100 100 125 100 100 125 113 113 142 113 113 141 140 140 175 140 140 175 147 147 184 147 147 184 148 148 185 255 240 185 255 230 172 255 230 171 255 230 171 255 230 171 255 255 255 255 255 255 255 210 157 255 202 157 230 167 129 221 162 129 101 72 55 82 63 55 142 105 84 173 127 102 191 136 102 216 154 115 208 150 115 255 221 173 255 211 172 212 161 138 237 173 137 255 194 164 241 186 164 214 175 169 255 212 169 225 206 131 247 220 131 219 196 118 226 200 118 255 238 141 255 239 141 183 200 171 203 212 170 255 241 161 168 185 161 154 153 113 196 179 113 255 251 149 255 254 155 255 255 154 255 255 158 255 255 157 221 212 148 255 240 148 255 255 167 255 255 167 255 255 168 255 255 168 255 255 157 255 255 157 255 255 148 255 253 148 255 255 161 129 161 161 112 140 140 112 140 140 106 133 133 106 133 133 117 146 146 116 146 146 127 159 159 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 85 106 106 85 106 106 60 75 75 60 75 75 117 147 147 117 147 147 66 83 83 66 82 82 104 130 130 104 130 130 124 155 155 124 155 155 122 153 153 122 153 153 122 152 152 122 152 152 120 150 150 115 144 144 115 144 144 105 131 131 104 131 131 82 102 102 82 102 102 93 116 116 93 116 116 115 144 144 115 143 143 121 151 151 120 151 151 121 152 152 121 152 152 112 141 141 112 140 140 112 140 140 112 140 140 109 137 137 109 137 137 103 129 129 103 129 129 84 106 106 36 45 45 36 45 45 55 69 69 55 69 69 67 84 84 67 84 84 75 94 94 75 94 94 113 142 142 113 141 141 90 113 113 90 113 113 108 135 135 108 135 135 111 139 139 111 139 139 86 86 107 86 86 107 77 77 97 77 77 97 92 92 116 92 92 116 112 112 140 112 112 140 106 106 133 74 74 93 74 74 93 99 99 123 98 98 123 102 102 127 102 102 127 104 104 130 104 104 130 98 98 122 98 98 122 110 110 138 110 110 138 111 111 139 111 111 139 104 104 130 104 104 130 98 98 123 98 98 122 107 107 134 107 107 133
-167 209 209 167 209 209 143 179 179 143 179 179 153 192 192 153 191 191 160 200 200 160 200 200 137 172 172 137 172 172 146 182 182 146 182 182 105 131 131 105 131 131 59 74 74 59 74 74 148 186 186 148 186 186 157 196 196 157 196 196 158 198 198 158 198 198 143 179 179 143 178 178 148 185 185 147 184 184 151 189 189 159 159 199 159 159 199 160 160 201 160 160 200 153 153 192 153 153 192 152 152 190 151 151 189 153 153 191 153 153 191 154 154 193 154 154 193 104 104 130 104 104 130 132 132 165 132 132 165 139 139 173 138 138 173 132 132 165 132 132 165 148 148 185 148 148 185 153 153 191 152 152 191 157 157 197 157 157 197 157 157 196 157 157 196 148 148 186 148 148 186 133 133 167 133 133 167 110 110 138 110 110 138 122 122 152 152 152 190 152 152 190 155 155 194 155 155 194 147 147 184 147 147 183 67 67 84 67 67 84 96 96 120 96 96 120 51 51 64 51 51 64 99 99 124 99 99 124 131 131 164 131 131 163 122 122 153 122 122 153 130 130 163 130 130 163 104 104 131 104 104 131 125 125 156 125 125 156 113 113 142 113 113 142 108 108 136 108 108 135 133 133 167 133 133 167 130 130 162 130 130 162 111 111 139 111 111 138 125 125 156 149 149 187 149 149 187 99 99 124 99 99 124 58 58 73 58 58 73 142 142 178 142 142 177 148 148 185 148 148 185 144 144 180 144 144 180 147 147 184 147 147 184 134 134 168 134 134 168 84 84 105 83 83 104 92 92 116 92 92 115 124 124 155 124 124 155 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 198 150 255 211 159 255 208 159 208 149 114 172 132 114 112 82 64 114 83 64 255 210 161 255 215 161 255 228 170 255 225 170 255 218 171 255 224 171 248 186 154 255 200 154 208 168 159 253 190 159 255 195 162 255 197 162 237 234 171 255 255 171 238 235 172 255 255 172 255 255 164 248 237 164 206 210 162 252 238 162 213 215 163 185 197 163 179 194 165 255 255 164 198 179 111 211 187 111 255 239 141 255 234 140 255 237 147 255 234 140 255 230 140 255 255 157 255 255 157 255 255 162 255 255 161 255 255 166 255 255 166 255 255 166 255 255 165 255 255 157 255 255 156 112 141 141 112 140 140 93 116 116 93 116 116 102 128 128 102 127 127 128 160 160 127 159 159 130 162 162 130 162 162 123 153 153 122 153 153 56 70 70 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 89 112 112 110 138 138 110 138 138 107 134 134 107 134 134 91 114 114 91 114 114 103 128 128 102 128 128 123 154 154 123 153 153 81 102 102 81 102 102 48 60 60 48 60 60 116 146 146 116 146 146 121 152 152 121 151 151 118 148 148 118 148 148 120 151 151 120 150 150 110 138 138 110 137 137 68 86 86 76 95 95 76 95 95 102 127 127 101 127 127 119 148 148 119 148 148 120 150 150 119 149 149 120 151 151 120 150 150 103 129 129 103 128 128 110 137 137 110 137 137 114 143 143 114 143 143 98 123 123 98 123 123 104 130 130 104 130 130 75 93 93 75 93 93 42 52 52 42 52 52 106 132 132 105 132 132 111 139 139 111 139 139 112 140 140 112 140 140 101 126 126 101 126 126 104 130 130 104 130 130 106 133 133 112 112 140 112 112 140 113 113 141 113 113 141 108 108 135 108 108 135 107 107 133 106 106 133 107 107 134 107 107 134 108 108 135 108 108 135 73 73 91 73 73 91 93 93 116 92 92 116 97 97 121 97 97 121 92 92 115 92 92 115 103 103 129 103 103 129 107 107 133 106 106 133 110 110 137 110 110 137 109 109 137 109 109 137
-162 203 203 162 203 203 166 207 207 166 207 207 164 205 205 164 205 205 165 207 207 165 206 206 138 172 172 138 172 172 114 142 142 114 142 142 90 112 112 90 112 112 125 157 157 125 156 156 156 195 195 155 194 194 138 173 173 138 173 173 131 164 164 131 164 164 140 175 175 140 175 175 160 200 200 160 200 200 163 163 204 163 163 203 147 147 184 147 147 184 149 149 186 149 149 186 147 147 184 147 147 184 138 138 173 138 138 173 151 151 189 151 151 189 158 158 197 158 158 197 104 104 130 104 104 130 152 152 190 152 152 190 150 150 188 150 150 188 115 115 144 115 115 144 153 153 191 143 143 179 143 143 179 148 148 185 148 148 185 152 152 191 152 152 190 139 139 174 139 139 174 126 126 157 125 125 157 112 112 140 112 112 140 154 154 193 154 154 193 151 151 189 151 151 188 157 157 196 157 157 196 129 129 162 129 129 161 53 53 66 53 53 66 119 119 149 119 119 149 70 70 88 70 70 88 97 97 122 97 97 122 149 149 186 148 148 186 153 153 191 153 153 191 141 141 177 141 141 177 76 76 95 76 76 95 147 147 184 147 147 184 147 147 184 147 147 183 121 121 152 121 121 151 91 91 114 91 91 114 136 136 170 136 136 170 150 150 188 150 150 187 151 151 189 151 151 189 140 140 175 140 140 175 34 34 42 34 34 42 122 122 153 122 122 153 148 148 185 148 148 185 151 151 189 151 151 188 143 143 178 143 143 178 138 138 172 138 138 172 119 119 149 119 119 149 65 65 82 117 117 146 117 117 146 147 147 184 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 216 180 229 175 150 251 185 150 210 154 124 205 152 124 180 129 98 182 130 97 248 178 136 247 178 136 255 223 169 255 225 168 255 194 150 255 187 150 219 166 142 250 182 142 202 161 151 247 184 150 255 209 172 215 176 172 255 255 175 255 255 175 255 254 158 255 247 158 255 255 160 196 202 159 156 176 157 230 222 157 243 226 148 243 226 148 163 182 162 224 220 161 255 255 168 255 255 168 211 187 111 194 177 111 255 255 162 255 255 161 255 255 159 255 255 159 239 210 122 239 210 122 255 255 162 255 255 162 255 255 151 255 255 151 255 255 156 255 255 155 255 255 160 128 160 160 117 146 146 116 146 146 105 132 132 105 131 131 94 118 118 129 162 162 129 161 161 126 158 158 126 158 158 131 164 164 131 164 164 108 135 135 108 135 135 44 55 55 44 55 55 99 124 124 99 124 124 58 73 73 58 73 73 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 63 78 78 122 152 152 121 152 152 121 152 152 121 151 151 100 125 125 100 125 125 75 94 94 75 94 94 112 140 140 112 140 140 123 154 154 123 154 154 124 155 155 124 155 155 115 144 144 115 143 143 28 35 35 28 35 35 100 125 125 100 125 125 121 152 152 121 152 152 124 155 155 123 154 154 117 146 146 117 146 146 113 141 141 112 141 141 97 122 122 97 122 122 53 67 67 53 67 67 95 119 119 95 119 119 120 150 150 120 150 150 118 148 148 118 148 148 118 148 148 118 147 147 116 146 146 116 145 145 118 148 148 117 146 146 117 146 146 118 148 148 118 147 147 98 123 123 98 123 123 81 101 101 81 101 101 64 80 80 64 80 80 89 111 111 89 111 111 110 138 138 110 138 138 98 122 122 98 122 122 93 116 116 93 116 116 99 123 123 98 123 123 113 141 141 112 141 141 115 115 143 114 114 143 104 104 130 103 103 129 104 104 131 104 104 131 103 103 129 103 103 129 97 97 121 97 97 121 106 106 133 106 106 132 110 110 138 110 110 138 73 73 91 73 73 91 106 106 133 106 106 133 105 105 131 105 105 131 80 80 101 80 80 100 107 107 133 106 106 133 99 99 124 99 99 124
-206 206 206 205 205 205 212 212 212 212 212 212 211 211 211 211 211 211 209 209 209 209 209 209 204 204 204 204 204 204 204 204 204 204 204 204 198 198 198 197 197 197 197 197 197 197 197 197 186 186 186 186 186 186 184 184 184 184 184 184 192 192 192 192 192 192 202 202 202 202 202 202 208 167 208 208 167 208 202 161 202 202 161 202 204 163 204 203 163 203 201 161 201 201 161 201 201 161 201 201 160 201 207 165 207 207 165 207 198 158 198 198 158 198 198 158 198 198 158 198 197 158 197 197 158 197 201 161 201 201 161 201 197 157 197 197 157 197 190 152 190 190 152 190 200 160 200 200 160 200 202 161 202 202 161 202 197 158 197 197 158 197 197 157 197 197 157 197 199 159 199 198 159 198 196 157 196 196 157 196 202 161 202 202 161 202 199 159 199 199 159 199 195 156 195 195 156 195 197 157 197 196 157 196 194 155 194 194 155 194 184 147 184 183 147 183 169 135 169 169 135 169 151 120 151 150 120 150 152 122 152 152 122 152 116 93 116 116 92 116 132 105 132 131 105 131 135 108 135 135 108 135 147 117 147 147 117 147 180 144 180 180 144 180 186 149 186 186 148 186 181 145 181 181 145 181 189 151 189 189 151 189 188 151 188 188 150 188 180 144 180 180 144 180 187 150 187 187 150 187 187 149 187 187 149 187 188 151 188 188 150 188 184 147 184 184 147 184 180 144 180 179 143 179 173 139 173 173 138 173 183 146 183 182 146 182 186 149 186 186 148 186 183 147 183 183 146 183 183 146 183 183 146 183 181 144 181 180 144 180 255 248 254 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 242 249 255 255 255 255 255 255 255 255 255 255 255 255 255 198 185 255 199 182 255 196 182 255 182 178 255 195 178 255 224 178 255 236 177 255 223 172 255 228 171 255 227 171 255 229 171 255 205 161 255 206 161 255 203 159 255 184 159 255 171 166 255 201 165 255 216 174 255 197 174 255 255 179 255 248 179 255 253 173 255 255 173 255 255 174 196 185 174 248 210 172 255 249 172 255 229 172 255 246 171 255 224 176 255 233 176 255 255 169 255 255 168 255 255 168 255 255 168 255 255 168 255 255 167 255 255 170 255 255 170 255 255 166 255 255 166 255 255 161 255 255 160 255 255 169 255 255 168 255 255 170 255 255 170 255 255 166 166 166 166 165 165 165 165 165 165 167 167 167 166 166 166 164 164 164 164 164 164 169 169 169 169 169 169 167 167 167 166 166 166 163 163 163 162 162 162 164 164 164 163 163 163 161 161 161 161 161 161 153 153 153 152 152 152 140 140 140 140 140 140 125 125 125 125 125 125 126 126 126 126 126 126 96 96 96 96 96 96 109 109 109 108 108 108 112 112 112 111 111 111 121 121 121 121 121 121 148 148 148 148 148 148 153 153 153 153 153 153 149 149 149 149 149 149 155 155 155 155 155 155 155 155 155 154 154 154 148 148 148 147 147 147 154 154 154 153 153 153 153 153 153 153 153 153 154 154 154 154 154 154 151 151 151 150 150 150 147 147 147 147 147 147 142 142 142 141 141 141 149 149 149 149 149 149 152 152 152 152 152 152 150 150 150 149 149 149 149 149 149 149 149 149 147 147 147 147 147 147 148 148 148 148 148 148 148 148 148 148 148 148 147 147 147 147 147 147 147 147 147 147 147 147 151 151 151 151 151 151 151 151 151 150 150 150 149 149 149 148 148 148 145 145 145 145 145 145 145 145 145 145 145 145 140 140 140 140 140 140 139 139 139 139 139 139 132 132 132 131 131 131 130 130 130 129 129 129 135 135 135 135 135 135 142 142 142 142 142 142 146 117 146 146 117 146 142 113 142 141 113 141 143 114 143 142 114 142 141 113 141 141 112 141 140 112 140 140 112 140 144 115 144 144 115 144 138 110 138 138 110 138 138 110 138 138 110 138 137 110 137 137 110 137 140 112 140 140 112 140 137 109 137 137 109 137 132 106 132 132 105 132
-210 210 210 210 210 210 212 212 212 212 212 212 205 205 205 205 205 205 203 203 203 203 203 203 207 207 207 207 207 207 200 200 200 200 200 200 202 202 202 202 202 202 195 195 195 195 195 195 191 191 191 191 191 191 186 186 186 186 186 186 203 203 203 203 203 203 209 167 209 209 167 209 209 167 209 204 163 204 204 163 204 204 163 204 204 163 204 200 160 200 199 159 199 201 161 201 201 161 201 201 161 201 201 161 201 201 160 201 201 160 201 192 153 192 192 153 192 196 157 196 196 156 196 202 161 202 202 161 202 199 159 199 199 159 199 195 156 195 195 156 195 201 160 201 200 160 200 202 162 202 202 162 202 198 158 198 198 158 198 191 153 191 191 153 191 197 158 197 197 157 197 201 161 201 201 160 201 202 162 202 202 162 202 198 158 198 198 158 198 198 158 198 197 158 197 193 154 193 193 154 193 158 126 158 158 126 158 109 87 109 109 87 109 157 126 157 157 126 157 143 114 143 143 114 143 129 103 129 128 103 128 60 48 60 60 48 60 46 36 46 46 36 46 88 70 88 88 70 88 77 62 77 77 62 77 105 84 105 105 84 105 125 100 125 125 100 125 105 84 105 105 84 105 132 106 132 132 105 132 171 137 171 171 137 171 187 149 187 186 149 186 186 149 186 186 149 186 180 144 180 180 144 180 189 151 189 189 151 189 189 151 189 188 151 188 184 147 184 184 147 184 178 142 178 178 142 178 177 142 177 185 148 185 185 148 185 184 147 184 184 147 184 182 146 182 182 145 182 181 145 181 181 145 181 181 145 181 181 144 181 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 238 185 255 194 179 255 196 179 255 175 177 255 173 177 255 218 180 255 231 180 255 224 174 255 228 174 255 234 175 255 235 175 255 222 169 255 223 169 255 208 165 255 216 165 255 190 161 255 191 160 255 226 175 255 196 175 255 255 180 255 255 179 255 255 176 255 255 175 255 255 175 237 206 175 255 254 171 255 224 171 255 215 172 255 233 172 255 255 171 255 220 171 255 228 171 255 255 171 255 255 163 255 255 163 255 255 166 255 255 166 255 250 171 255 255 171 255 255 169 255 255 168 255 255 165 255 255 164 255 255 169 255 255 169 255 255 170 255 255 170 255 255 166 166 166 166 161 161 161 160 160 160 165 165 165 165 165 165 168 168 168 168 168 168 169 169 169 169 169 169 165 165 165 165 165 165 165 165 165 165 165 165 161 161 161 161 161 161 160 160 160 131 131 131 131 131 131 90 90 90 90 90 90 130 130 130 130 130 130 118 118 118 118 118 118 106 106 106 106 106 106 49 49 49 49 49 49 38 38 38 38 38 38 72 72 72 72 72 72 64 64 64 64 64 64 86 86 86 86 86 86 102 102 102 102 102 102 86 86 86 86 86 86 108 108 108 108 108 108 140 140 140 140 140 140 153 153 153 152 152 152 152 152 152 152 152 152 147 147 147 147 147 147 154 154 154 154 154 154 154 154 154 154 154 154 150 150 150 150 150 150 145 145 145 145 145 145 151 151 151 151 151 151 150 150 150 150 150 150 148 148 148 148 148 148 148 148 148 148 148 148 147 147 147 147 147 147 147 147 147 147 147 147 150 150 150 149 149 149 151 151 151 151 151 151 150 150 150 150 150 150 150 150 150 150 150 150 151 151 151 151 151 151 146 146 146 146 146 146 144 144 144 144 144 144 147 147 147 146 146 146 142 142 142 141 141 141 143 143 143 142 142 142 138 138 138 138 138 138 134 134 134 134 134 134 131 131 131 131 131 131 143 143 143 142 142 142 142 142 142 146 117 146 146 117 146 143 114 143 143 114 143 143 114 143 142 114 142 139 111 139 139 111 139 140 112 140 140 112 140 140 112 140 140 112 140 140 112 140 140 112 140 134 107 134 133 107 133 136 109 136 136 109 136 140 112 140 140 112 140 138 111 138 138 110 138
-211 211 211 210 210 210 208 208 208 208 208 208 208 208 208 208 208 208 205 205 205 205 205 205 205 205 205 205 205 205 205 205 205 196 196 196 196 196 196 200 200 200 200 200 200 200 200 200 200 200 200 197 197 197 197 197 197 199 199 199 199 199 199 210 168 210 209 167 209 205 164 205 205 164 205 207 165 207 207 165 207 204 163 204 204 163 204 202 162 202 202 161 202 202 161 202 202 161 202 201 161 201 201 161 201 201 161 201 201 161 201 199 159 199 198 159 198 200 160 200 200 160 200 200 160 200 200 160 200 195 156 195 195 156 195 201 161 201 201 161 201 203 162 203 203 162 203 203 162 203 198 159 198 198 158 198 198 158 198 198 158 198 202 161 202 202 161 202 203 163 203 203 163 203 199 159 199 199 159 199 197 157 197 196 157 196 198 158 198 198 158 198 177 142 177 177 142 177 81 65 81 81 65 81 79 63 79 79 63 79 85 68 85 85 68 85 52 42 52 52 42 52 16 12 16 16 12 16 32 25 32 32 25 32 8 6 8 8 6 8 26 20 26 26 20 26 16 12 16 16 12 16 46 36 46 45 36 45 129 103 129 129 103 129 125 100 125 125 100 125 125 100 125 91 73 91 91 72 91 59 47 59 59 47 59 106 85 106 106 85 106 183 146 183 182 146 182 178 143 178 178 142 178 184 147 184 183 147 183 189 151 189 189 151 189 191 152 191 190 152 190 190 152 190 190 152 190 191 153 191 191 153 191 187 150 187 187 149 187 183 146 183 182 146 182 178 143 178 178 142 178 182 145 182 181 145 181 183 146 183 255 255 255 255 255 255 255 255 255 255 255 255 255 239 248 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 222 237 255 255 255 255 230 182 255 189 181 255 183 181 255 206 181 255 199 179 255 213 178 255 216 178 255 227 178 255 223 170 255 219 170 255 231 173 255 224 173 255 219 173 255 208 172 255 204 170 255 211 170 255 216 172 255 192 171 255 255 180 255 252 180 255 255 176 255 255 176 250 214 177 242 209 177 255 254 175 255 218 175 226 199 173 216 194 172 255 255 172 255 226 172 255 215 171 255 255 171 255 255 171 255 255 171 255 255 169 255 255 168 255 255 170 255 255 169 255 255 169 255 255 169 255 255 169 255 255 165 255 255 165 255 255 170 255 255 169 255 255 171 255 255 170 167 167 167 166 166 166 166 166 166 166 166 166 169 169 169 169 169 169 170 170 170 170 170 170 166 166 166 166 166 166 164 164 164 164 164 164 165 165 165 165 165 165 147 147 147 147 147 147 67 67 67 67 67 67 65 65 65 65 65 65 70 70 70 70 70 70 43 43 43 43 43 43 13 13 13 13 13 13 26 26 26 26 26 26 6 6 6 6 6 6 21 21 21 21 21 21 21 21 21 13 13 13 13 13 13 37 37 37 37 37 37 106 106 106 106 106 106 102 102 102 102 102 102 74 74 74 74 74 74 48 48 48 48 48 48 87 87 87 87 87 87 149 149 149 149 149 149 146 146 146 145 145 145 150 150 150 150 150 150 154 154 154 154 154 154 155 155 155 155 155 155 155 155 155 155 155 155 156 156 156 156 156 156 152 152 152 152 152 152 149 149 149 148 148 148 145 145 145 145 145 145 148 148 148 147 147 147 149 149 149 149 149 149 148 148 148 148 148 148 148 148 148 148 148 148 147 147 147 152 152 152 152 152 152 151 151 151 151 151 151 149 149 149 149 149 149 147 147 147 147 147 147 147 147 147 147 147 147 145 145 145 145 145 145 145 145 145 144 144 144 138 138 138 138 138 138 141 141 141 141 141 141 140 140 140 140 140 140 139 139 139 138 138 138 140 140 140 139 139 139 147 117 147 146 117 146 143 115 143 143 114 143 144 115 144 144 115 144 143 114 143 142 114 142 141 112 141 141 112 141 140 112 140 140 112 140 140 112 140 140 112 140 140 112 140 139 111 139 139 111 139 138 110 138 137 110 137 139 111 139 139 111 139
-209 209 209 209 209 209 208 208 208 206 206 206 206 206 206 208 208 208 208 208 208 210 210 210 210 210 210 199 199 199 199 199 199 201 201 201 201 201 201 203 203 203 202 202 202 202 202 202 202 202 202 198 198 198 198 198 198 204 163 204 204 163 204 204 163 204 203 163 203 208 166 208 207 166 207 203 162 203 203 162 203 201 160 201 200 160 200 200 160 200 202 162 202 202 162 202 202 161 202 202 161 202 208 166 208 208 166 208 205 164 205 205 164 205 205 164 205 205 164 205 203 162 203 202 162 202 198 158 198 198 158 198 200 160 200 200 160 200 202 161 202 201 161 201 201 161 201 201 161 201 205 164 205 205 164 205 205 164 205 204 163 204 202 162 202 202 161 202 202 161 202 197 158 197 197 158 197 197 158 197 197 157 197 201 161 201 201 160 201 159 127 159 159 127 159 114 91 114 114 91 114 55 44 55 55 44 55 12 9 12 12 9 12 12 9 12 12 9 12 8 6 8 8 6 8 12 9 12 12 9 12 32 25 32 32 25 32 18 14 18 18 14 18 20 16 20 20 16 20 20 16 20 92 73 92 92 73 92 77 62 77 77 62 77 53 43 53 53 43 53 79 63 79 79 63 79 35 28 35 35 28 35 49 39 49 49 39 49 29 23 29 29 23 29 57 45 57 57 45 57 116 92 116 115 92 115 141 112 141 141 112 141 187 150 187 187 150 187 193 154 193 192 154 192 192 154 192 192 153 192 192 153 192 191 153 191 191 153 191 189 151 189 189 151 189 185 148 185 184 147 184 186 149 186 186 148 186 184 147 184 255 255 255 255 233 244 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 244 253 255 255 255 255 255 255 255 255 255 255 255 255 255 243 182 255 233 180 255 233 180 255 208 181 255 194 181 255 205 181 255 196 182 255 226 182 255 195 172 255 223 172 255 202 174 255 222 173 255 223 175 255 195 175 255 230 174 255 230 174 255 205 170 255 195 170 255 255 175 255 226 175 255 255 175 255 255 174 200 189 178 245 211 177 186 180 174 255 216 173 200 186 171 207 189 171 255 223 172 233 203 172 240 206 172 203 188 172 255 255 171 255 255 176 255 255 176 255 255 174 255 250 174 255 255 173 255 255 173 255 255 171 255 255 171 255 255 167 255 255 167 255 255 168 255 255 168 255 255 169 255 255 169 255 255 169 169 169 169 172 172 172 172 172 172 171 171 171 171 171 171 169 169 169 169 169 169 165 165 165 165 165 165 164 164 164 164 164 164 164 164 164 167 167 167 167 167 167 132 132 132 132 132 132 95 95 95 94 94 94 45 45 45 45 45 45 10 10 10 10 10 10 10 10 10 10 10 10 6 6 6 6 6 6 10 10 10 9 9 9 26 26 26 26 26 26 14 14 14 14 14 14 16 16 16 16 16 16 75 75 75 75 75 75 64 64 64 63 63 63 63 63 63 44 44 44 44 44 44 65 65 65 65 65 65 29 29 29 29 29 29 40 40 40 40 40 40 24 24 24 24 24 24 46 46 46 46 46 46 94 94 94 94 94 94 115 115 115 114 114 114 152 152 152 152 152 152 157 157 157 156 156 156 156 156 156 156 156 156 156 156 156 155 155 155 154 154 154 153 153 153 153 153 153 150 150 150 150 150 150 151 151 151 151 151 151 149 149 149 149 149 149 148 148 148 148 148 148 148 148 148 148 148 148 151 151 151 150 150 150 152 152 152 151 151 151 150 150 150 149 149 149 148 148 148 148 148 148 146 146 146 146 146 146 147 147 147 147 147 147 148 148 148 148 148 148 140 140 140 140 140 140 140 140 140 141 141 141 141 141 141 142 142 142 142 142 142 142 142 142 141 141 141 138 138 138 138 138 138 142 114 142 142 114 142 142 113 142 142 113 142 144 115 144 144 115 144 141 113 141 141 113 141 139 111 139 139 111 139 140 112 140 140 112 140 140 112 140 140 112 140 144 115 144 144 115 144 142 114 142 142 114 142 142 113 142
-207 207 207 207 207 207 207 207 207 206 206 206 206 206 206 210 210 210 210 210 210 206 206 206 206 206 206 201 201 201 201 201 201 199 199 199 199 199 199 201 201 201 201 201 201 192 192 192 192 192 192 204 163 204 204 163 204 204 163 204 204 163 204 204 163 204 204 163 204 204 163 204 203 163 203 203 163 203 203 162 203 203 162 203 207 166 207 207 165 207 203 162 203 202 162 202 206 165 206 206 165 206 208 166 208 208 166 208 208 166 208 208 166 208 208 166 208 207 166 207 207 166 207 205 164 205 205 164 205 205 164 205 204 163 204 206 165 206 206 165 206 200 160 200 200 160 200 203 163 203 203 163 203 203 162 203 203 162 203 201 160 201 200 160 200 198 158 198 198 158 198 198 158 198 198 158 198 197 158 197 201 161 201 201 161 201 150 120 150 149 119 149 100 80 100 100 80 100 47 37 47 47 37 47 38 31 38 38 31 38 42 34 42 42 34 42 18 14 18 18 14 18 12 9 12 12 9 12 36 29 36 36 29 36 22 17 22 22 17 22 22 17 22 44 35 44 44 35 44 74 59 74 74 59 74 80 64 80 80 64 80 86 68 86 85 68 85 91 73 91 91 73 91 133 106 133 133 106 133 77 62 77 77 61 77 41 33 41 41 33 41 35 28 35 35 28 35 35 28 35 21 17 21 21 17 21 110 88 110 109 87 109 162 130 162 162 130 162 189 151 189 189 151 189 193 154 193 192 154 192 192 154 192 192 153 192 192 153 192 191 153 191 189 151 189 189 151 189 191 152 191 190 152 190 184 147 184 184 147 184 255 255 255 255 255 255 255 255 255 255 255 255 255 244 252 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 241 181 255 241 180 255 237 180 255 240 180 255 223 180 255 190 183 255 198 183 255 191 179 255 214 178 255 198 178 255 212 174 255 229 174 255 189 172 255 191 172 255 215 173 255 228 173 255 207 165 255 194 165 255 255 176 255 255 175 255 255 175 255 255 175 202 188 175 204 189 174 189 181 174 188 181 174 198 186 173 232 203 173 255 215 173 255 225 176 236 206 176 211 192 172 255 255 172 255 255 175 255 255 175 255 255 176 255 247 176 255 255 176 255 255 175 255 255 175 255 255 175 255 255 173 255 255 173 255 255 172 255 255 172 255 255 173 255 255 173 255 255 168 167 167 167 167 167 167 170 170 170 170 170 170 170 170 170 169 169 169 167 167 167 167 167 167 165 165 165 165 165 165 165 165 165 164 164 164 167 167 167 167 167 167 124 124 124 124 124 124 83 83 83 83 83 83 39 39 39 38 38 38 32 32 32 32 32 32 32 32 32 35 35 35 35 35 35 15 15 15 15 15 15 10 10 10 10 10 10 29 29 29 29 29 29 18 18 18 18 18 18 36 36 36 36 36 36 61 61 61 60 60 60 65 65 65 65 65 65 70 70 70 70 70 70 70 70 70 75 75 75 74 74 74 108 108 108 108 108 108 63 63 63 63 63 63 33 33 33 33 33 33 28 28 28 28 28 28 17 17 17 17 17 17 89 89 89 89 89 89 132 132 132 132 132 132 154 154 154 153 153 153 156 156 156 156 156 156 156 156 156 156 156 156 155 155 155 155 155 155 155 155 155 153 153 153 153 153 153 154 154 154 154 154 154 149 149 149 149 149 149 149 149 149 148 148 148 148 148 148 148 148 148 151 151 151 151 151 151 152 152 152 152 152 152 150 150 150 150 150 150 149 149 149 146 146 146 146 146 146 146 146 146 146 146 146 145 145 145 145 145 145 148 148 148 148 148 148 145 145 145 144 144 144 141 141 141 141 141 141 139 139 139 139 139 139 140 140 140 140 140 140 134 134 134 134 134 134 143 114 143 142 114 142 142 114 142 142 113 142 142 113 142 142 113 142 141 113 141 141 113 141 141 113 141 141 113 141 141 112 141 143 115 143 143 114 143 140 112 140 140 112 140 143 114 143 142 114 142 144 115 144
-207 207 207 207 207 207 207 207 207 209 209 209 209 209 209 209 209 209 208 208 208 193 193 193 193 193 193 189 189 189 189 189 189 188 188 188 199 199 199 199 199 199 197 197 197 197 197 197 205 164 205 205 164 205 205 164 205 205 164 205 204 163 204 204 163 204 204 163 204 204 163 204 208 166 208 208 166 208 208 166 208 208 166 208 207 166 207 205 164 205 205 164 205 205 164 205 205 164 205 202 162 202 202 162 202 202 162 202 202 161 202 202 161 202 202 161 202 201 161 201 201 161 201 201 161 201 201 161 201 201 160 201 205 164 205 205 164 205 194 155 194 194 155 194 187 150 187 187 150 187 166 133 166 166 133 166 128 103 128 128 103 128 145 116 145 145 116 145 128 102 128 128 102 128 138 110 138 138 110 138 138 110 138 144 115 144 144 115 144 47 37 47 47 37 47 34 27 34 34 27 34 12 9 12 12 9 12 22 18 22 22 17 22 30 24 30 30 24 30 12 9 12 12 9 12 26 21 26 26 21 26 26 21 26 18 14 18 18 14 18 20 16 20 20 16 20 14 11 14 14 11 14 68 54 68 68 54 68 50 40 50 50 40 50 72 57 72 72 57 72 65 52 65 65 52 65 25 20 25 25 20 25 25 20 25 37 30 37 37 30 37 91 72 91 91 72 91 21 17 21 21 17 21 29 23 29 29 23 29 108 86 108 108 86 108 174 139 174 174 139 174 187 150 187 187 150 187 187 149 187 189 151 189 188 151 188 192 154 192 192 153 192 192 153 192 191 153 191 191 153 191 191 152 191 189 151 189 188 151 188 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 193 217 255 255 255 255 255 255 255 255 255 255 255 255 255 251 255 255 255 255 255 247 185 255 241 181 255 241 181 255 241 180 255 239 180 255 228 182 255 239 181 255 208 181 255 208 181 255 200 167 255 189 167 255 211 167 255 204 163 255 196 163 255 223 172 255 211 171 255 224 169 255 225 169 255 255 176 255 255 176 255 255 176 255 255 175 204 190 175 189 182 175 204 189 175 189 182 174 233 203 174 250 214 177 245 211 177 207 192 177 255 221 176 255 233 174 221 198 174 255 255 174 255 255 174 255 255 171 255 243 171 255 255 171 255 255 171 255 255 170 255 255 170 255 255 170 255 255 170 255 255 169 255 255 169 255 255 169 255 255 172 255 255 172 163 163 163 162 162 162 157 157 157 157 157 157 139 139 139 139 139 139 107 107 107 107 107 107 121 121 121 120 120 120 106 106 106 106 106 106 106 106 106 114 114 114 114 114 114 119 119 119 119 119 119 39 39 39 39 39 39 28 28 28 28 28 28 10 10 10 10 10 10 18 18 18 18 18 18 25 25 25 25 25 25 10 10 10 10 10 10 10 10 10 21 21 21 21 21 21 14 14 14 14 14 14 16 16 16 16 16 16 11 11 11 11 11 11 55 55 55 55 55 55 41 41 41 40 40 40 58 58 58 58 58 58 58 58 58 53 53 53 53 53 53 21 21 21 21 21 21 30 30 30 30 30 30 74 74 74 74 74 74 17 17 17 17 17 17 24 24 24 23 23 23 87 87 87 87 87 87 141 141 141 141 141 141 141 141 141 152 152 152 151 151 151 153 153 153 153 153 153 155 155 155 155 155 155 155 155 155 155 155 155 154 154 154 154 154 154 152 152 152 152 152 152 152 152 152 152 152 152 148 148 148 148 148 148 148 148 148 149 149 149 149 149 149 150 150 150 150 150 150 152 152 152 151 151 151 150 150 150 149 149 149 146 146 146 146 146 146 146 146 146 145 145 145 147 147 147 147 147 147 146 146 146 146 146 146 146 146 146 135 135 135 135 135 135 132 132 132 132 132 132 139 139 139 139 139 139 137 137 137 137 137 137 143 114 143 142 114 142 142 114 142 142 114 142 142 113 142 142 113 142 141 113 141 141 113 141 141 113 141 144 115 144 144 115 144 143 115 143 143 115 143 142 113 142 141 113 141 141 113 141
-205 205 205 205 205 205 205 205 205 203 203 203 203 203 203 202 202 202 192 192 192 191 191 191 189 189 189 189 189 189 200 200 200 200 200 200 195 195 195 195 195 195 206 164 206 205 164 205 207 166 207 207 166 207 211 169 211 211 169 211 211 169 211 211 169 211 211 169 211 211 168 211 210 168 210 206 165 206 206 165 206 204 163 204 203 163 203 199 159 199 199 159 199 195 156 195 194 155 194 194 155 194 196 157 196 196 157 196 202 162 202 202 162 202 202 161 202 202 161 202 199 159 199 199 159 199 197 158 197 197 157 197 180 144 180 180 144 180 180 144 180 194 155 194 194 155 194 198 158 198 198 158 198 135 108 135 135 108 135 89 71 89 89 71 89 93 74 93 93 74 93 74 59 74 74 59 74 128 102 128 128 102 128 128 102 128 63 51 63 63 51 63 76 60 76 76 60 76 16 13 16 16 13 16 12 9 12 12 9 12 12 9 12 12 9 12 12 9 12 12 9 12 12 9 12 36 29 36 36 29 36 32 26 32 32 25 32 36 29 36 36 29 36 30 24 30 30 24 30 12 9 12 12 9 12 22 17 22 22 17 22 34 27 34 34 27 34 34 27 34 32 25 32 32 25 32 31 25 31 31 25 31 89 71 89 89 71 89 91 73 91 91 73 91 5 4 5 5 4 5 3 3 3 3 3 3 3 3 3 11 9 11 11 9 11 118 94 118 117 94 117 188 150 188 188 150 188 193 155 193 193 154 193 193 154 193 192 154 192 188 151 188 188 150 188 188 150 188 188 150 188 187 150 187 185 148 185 185 148 185 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 198 219 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 242 182 255 239 179 255 239 179 255 239 179 255 239 179 255 236 178 255 237 178 255 233 176 255 225 176 255 172 166 255 193 166 255 183 166 255 206 163 255 192 163 255 225 172 255 211 172 255 224 168 255 215 168 255 255 177 255 255 176 255 255 178 215 196 178 204 192 181 206 193 181 201 191 180 226 203 180 225 203 180 200 190 180 210 194 179 255 219 175 239 207 175 190 182 173 202 187 173 250 210 169 255 227 169 255 245 165 255 255 164 255 255 166 255 255 166 255 255 165 255 255 171 255 255 170 255 255 170 255 255 170 255 255 168 255 255 167 255 255 165 255 255 165 151 151 151 150 150 150 163 163 163 162 162 162 165 165 165 165 165 165 165 165 165 112 112 112 112 112 112 74 74 74 74 74 74 77 77 77 77 77 77 61 61 61 61 61 61 106 106 106 106 106 106 53 53 53 52 52 52 52 52 52 62 62 62 62 62 62 13 13 13 13 13 13 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 30 30 30 30 30 30 30 30 30 26 26 26 26 26 26 29 29 29 29 29 29 24 24 24 24 24 24 9 9 9 9 9 9 18 18 18 18 18 18 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 72 72 72 72 72 72 74 74 74 74 74 74 4 4 4 4 4 4 3 3 3 3 3 3 9 9 9 9 9 9 9 9 9 95 95 95 95 95 95 152 152 152 152 152 152 156 156 156 156 156 156 156 156 156 155 155 155 152 152 152 152 152 152 152 152 152 151 151 151 150 150 150 149 149 149 149 149 149 149 149 149 149 149 149 148 148 148 148 148 148 148 148 148 148 148 148 148 148 148 147 147 147 149 149 149 148 148 148 147 147 147 146 146 146 146 146 146 145 145 145 144 144 144 144 144 144 144 144 144 144 144 144 144 144 144 142 142 142 142 142 142 134 134 134 134 134 134 132 132 132 132 132 132 132 132 132 139 139 139 139 139 139 136 136 136 135 135 135 143 114 143 142 114 142 144 115 144 144 115 144 146 117 146 146 117 146 146 117 146 146 117 146 146 116 146 145 116 145 145 116 145 142 114 142 142 113 142 140 112 140
-206 206 206 205 205 205 203 203 203 203 203 203 192 192 192 192 192 192 190 190 190 190 190 190 200 200 200 200 200 200 196 196 196 195 195 195 206 165 206 206 165 206 206 165 206 208 166 208 208 166 208 212 169 212 212 169 212 212 169 212 211 169 211 211 169 211 211 169 211 207 165 207 207 165 207 206 165 206 204 163 204 204 163 204 200 160 200 199 159 199 195 156 195 195 156 195 197 157 197 197 157 197 203 162 203 203 162 203 203 162 203 202 162 202 202 162 202 200 160 200 200 160 200 198 158 198 197 158 197 180 144 180 180 144 180 195 156 195 195 156 195 199 159 199 198 159 198 198 159 198 135 108 135 135 108 135 89 71 89 89 71 89 93 74 93 93 74 93 74 59 74 74 59 74 128 102 128 128 102 128 128 102 128 64 51 64 64 51 64 76 61 76 76 61 76 16 13 16 16 13 16 12 9 12 12 9 12 12 9 12 12 9 12 12 9 12 12 9 12 12 9 12 36 29 36 36 29 36 32 26 32 32 26 32 36 29 36 36 29 36 30 24 30 30 24 30 12 9 12 12 9 12 12 9 12 22 17 22 22 17 22 34 27 34 34 27 34 32 25 32 32 25 32 32 25 32 32 25 32 90 72 90 89 71 89 91 73 91 91 73 91 91 73 91 5 4 5 5 4 5 3 3 3 3 3 3 11 9 11 11 9 11 118 94 118 118 94 118 189 151 189 188 151 188 188 150 188 194 155 194 193 155 193 193 154 193 193 154 193 189 151 189 189 151 189 188 151 188 188 150 188 186 149 186 186 148 186 185 148 185 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 242 182 255 240 180 255 239 180 255 239 179 255 239 179 255 238 179 255 239 178 255 236 176 255 236 176 255 217 166 255 208 166 255 207 164 255 189 164 255 175 164 255 222 173 255 227 172 255 225 168 255 207 168 255 255 177 255 255 177 255 255 178 228 203 178 187 184 182 189 185 181 196 189 181 255 226 181 233 207 180 255 222 180 255 228 180 255 255 176 255 255 176 249 211 174 181 177 173 239 204 169 255 255 169 255 229 165 245 205 165 255 255 165 255 255 166 255 255 166 255 255 171 255 255 171 255 255 170 255 255 170 255 255 168 255 255 168 255 255 166 255 255 166 255 255 165 151 151 151 151 151 151 163 163 163 162 162 162 166 166 166 165 165 165 113 113 113 113 113 113 74 74 74 74 74 74 77 77 77 77 77 77 77 77 77 62 62 62 61 61 61 106 106 106 106 106 106 53 53 53 52 52 52 63 63 63 63 63 63 13 13 13 13 13 13 13 13 13 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 30 30 30 30 30 30 26 26 26 26 26 26 29 29 29 29 29 29 29 29 29 24 24 24 24 24 24 9 9 9 9 9 9 18 18 18 18 18 18 27 27 27 27 27 27 26 26 26 26 26 26 26 26 26 26 26 26 25 25 25 73 73 73 72 72 72 74 74 74 74 74 74 4 4 4 4 4 4 3 3 3 3 3 3 9 9 9 9 9 9 9 9 9 95 95 95 95 95 95 152 152 152 152 152 152 156 156 156 156 156 156 156 156 156 156 156 156 152 152 152 152 152 152 152 152 152 152 152 152 151 151 151 150 150 150 149 149 149 149 149 149 149 149 149 149 149 149 148 148 148 148 148 148 148 148 148 148 148 148 148 148 148 147 147 147 149 149 149 148 148 148 147 147 147 147 147 147 145 145 145 145 145 145 144 144 144 144 144 144 144 144 144 144 144 144 144 144 144 142 142 142 142 142 142 134 134 134 134 134 134 132 132 132 132 132 132 139 139 139 139 139 139 136 136 136 136 136 136 135 135 135 143 114 143 143 114 143 144 115 144 144 115 144 146 117 146 146 117 146 146 117 146 146 117 146 146 116 146 145 116 145 142 114 142 142 114 142
-206 206 206 206 206 206 199 199 199 199 199 199 201 201 201 201 201 201 203 203 203 203 203 203 203 203 203 203 203 203 202 202 202 207 165 207 206 165 206 211 168 211 210 168 210 212 170 212 212 170 212 210 168 210 210 168 210 210 168 210 207 166 207 207 166 207 205 164 205 205 164 205 209 167 209 209 167 209 204 163 204 204 163 204 204 163 204 204 163 204 204 163 204 204 163 204 204 163 204 203 163 203 203 162 203 201 161 201 201 161 201 199 159 199 198 159 198 198 158 198 194 155 194 194 155 194 196 156 196 195 156 195 178 143 178 178 143 178 111 89 111 111 89 111 20 16 20 20 16 20 20 16 20 33 26 33 33 26 33 22 18 22 22 18 22 29 23 29 29 23 29 79 63 79 79 63 79 95 76 95 95 76 95 95 76 95 138 111 138 138 110 138 66 52 66 66 52 66 22 18 22 22 18 22 8 6 8 8 6 8 2 1 2 2 1 2 2 1 2 2 1 2 2 1 2 8 6 8 8 6 8 18 14 18 18 14 18 42 34 42 42 34 42 42 34 42 14 11 14 14 11 14 20 16 20 20 16 20 32 25 32 32 25 32 54 43 54 54 43 54 46 37 46 46 36 46 46 36 46 110 88 110 110 88 110 82 65 82 81 65 81 61 49 61 61 49 61 11 9 11 11 9 11 1 1 1 1 1 1 1 1 1 13 11 13 13 11 13 61 48 61 61 48 61 169 135 169 169 135 169 192 153 192 192 153 192 187 150 187 187 150 187 187 150 187 189 151 189 188 151 188 184 147 184 184 147 184 186 149 186 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 225 239 255 255 255 255 255 255 255 255 255 255 248 255 255 255 255 255 255 255 255 235 177 255 235 176 255 235 176 255 237 178 255 237 178 255 244 183 255 244 183 255 239 179 255 239 178 255 229 172 255 231 172 255 232 174 255 218 174 247 168 173 255 205 175 255 232 175 255 224 174 255 229 174 255 255 178 255 255 177 255 229 181 185 183 180 182 182 182 207 194 182 199 190 181 217 198 179 255 233 179 255 244 177 255 255 177 255 255 175 255 255 174 255 255 178 255 224 177 191 182 173 255 255 173 255 223 173 255 255 173 255 255 172 255 255 172 255 255 172 255 255 171 255 255 171 255 255 169 255 255 169 255 255 169 255 255 167 255 255 166 255 255 162 255 255 162 164 164 164 163 163 163 149 149 149 149 149 149 92 92 92 92 92 92 92 92 92 17 17 17 17 17 17 27 27 27 27 27 27 19 19 19 19 19 19 24 24 24 24 24 24 65 65 65 65 65 65 65 65 65 78 78 78 78 78 78 114 114 114 114 114 114 54 54 54 54 54 54 18 18 18 18 18 18 6 6 6 6 6 6 6 6 6 1 1 1 1 1 1 1 1 1 1 1 1 6 6 6 6 6 6 15 15 15 14 14 14 34 34 34 34 34 34 34 34 34 11 11 11 11 11 11 16 16 16 16 16 16 26 26 26 26 26 26 44 44 44 44 44 44 44 44 44 37 37 37 37 37 37 89 89 89 89 89 89 66 66 66 66 66 66 50 50 50 49 49 49 9 9 9 9 9 9 9 9 9 1 1 1 1 1 1 11 11 11 11 11 11 49 49 49 49 49 49 136 136 136 136 136 136 155 155 155 154 154 154 154 154 154 151 151 151 150 150 150 152 152 152 152 152 152 148 148 148 148 148 148 149 149 149 149 149 149 150 150 150 150 150 150 150 150 150 148 148 148 148 148 148 146 146 146 146 146 146 150 150 150 150 150 150 145 145 145 145 145 145 142 142 142 142 142 142 142 142 142 143 143 143 143 143 143 147 147 147 147 147 147 144 144 144 143 143 143 139 139 139 138 138 138 138 138 138 140 140 140 139 139 139 141 141 141 141 141 141 140 140 140 140 140 140 143 114 143 143 114 143 146 116 146 145 116 145 145 116 145 146 117 146 146 117 146 145 116 145 144 115 144 143 114 143 143 114 143
-208 208 208 208 208 208 199 199 199 199 199 199 199 199 199 205 205 205 205 205 205 205 205 205 205 205 205 207 166 207 207 165 207 207 165 207 207 165 207 207 165 207 209 167 209 208 167 208 206 165 206 206 165 206 206 165 206 206 165 206 195 156 195 195 156 195 195 156 195 199 159 199 199 159 199 205 164 205 205 164 205 205 164 205 204 163 204 204 163 204 204 163 204 204 163 204 204 163 204 204 163 204 204 163 204 203 163 203 203 162 203 203 162 203 205 164 205 205 164 205 190 152 190 190 152 190 190 152 190 63 50 63 63 50 63 42 33 42 42 33 42 44 35 44 44 35 44 41 33 41 41 33 41 41 33 41 37 30 37 37 30 37 79 63 79 79 63 79 52 41 52 52 41 52 58 46 58 58 46 58 58 46 58 74 59 74 74 59 74 105 84 105 105 84 105 33 26 33 33 26 33 37 29 37 37 29 37 37 29 37 6 4 6 6 4 6 14 11 14 14 11 14 10 8 10 10 8 10 20 16 20 20 16 20 36 29 36 36 29 36 36 29 36 16 13 16 16 13 16 30 24 30 30 24 30 52 42 52 52 42 52 48 38 48 48 38 48 48 38 48 40 32 40 40 32 40 146 117 146 146 117 146 148 118 148 148 118 148 84 67 84 83 67 83 83 67 83 55 44 55 55 44 55 7 6 7 7 6 7 0 0 0 0 0 0 3 3 3 3 3 3 3 3 3 29 23 29 29 23 29 151 121 151 151 121 151 190 152 190 190 152 190 193 155 193 193 154 193 193 154 193 193 154 193 192 154 192 188 150 188 255 255 255 255 255 255 255 255 255 255 255 255 255 202 222 245 180 205 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 243 183 255 243 183 255 245 184 255 245 184 255 245 184 255 247 185 255 247 185 255 239 179 255 239 179 255 241 180 255 241 180 255 230 172 255 215 172 219 156 172 255 210 177 255 231 177 255 227 177 255 232 176 255 255 178 255 255 178 195 186 177 199 188 177 199 189 179 191 185 179 193 186 178 255 255 176 255 255 176 255 255 176 255 255 175 255 255 166 255 255 166 255 255 169 255 255 169 218 193 168 235 204 174 255 244 173 255 255 173 255 255 173 255 255 173 255 255 172 255 255 172 255 255 172 255 255 171 255 255 171 255 255 171 255 255 171 255 255 170 255 255 172 255 255 172 159 159 159 159 159 159 158 158 158 52 52 52 52 52 52 35 35 35 35 35 35 36 36 36 36 36 36 34 34 34 34 34 34 31 31 31 31 31 31 31 31 31 65 65 65 65 65 65 43 43 43 43 43 43 48 48 48 48 48 48 61 61 61 61 61 61 61 61 61 86 86 86 86 86 86 27 27 27 27 27 27 30 30 30 30 30 30 5 5 5 5 5 5 5 5 5 11 11 11 11 11 11 8 8 8 8 8 8 16 16 16 16 16 16 29 29 29 29 29 29 29 29 29 13 13 13 13 13 13 24 24 24 24 24 24 42 42 42 42 42 42 39 39 39 39 39 39 32 32 32 32 32 32 32 32 32 118 118 118 118 118 118 120 120 120 119 119 119 67 67 67 67 67 67 45 45 45 45 45 45 44 44 44 6 6 6 6 6 6 0 0 0 0 0 0 3 3 3 3 3 3 23 23 23 23 23 23 23 23 23 121 121 121 121 121 121 153 153 153 152 152 152 155 155 155 155 155 155 155 155 155 155 155 155 154 154 154 151 151 151 151 151 151 149 149 149 149 149 149 147 147 147 147 147 147 143 143 143 143 143 143 148 148 148 147 147 147 147 147 147 145 145 145 145 145 145 147 147 147 146 146 146 148 148 148 147 147 147 149 149 149 149 149 149 148 148 148 144 144 144 143 143 143 145 145 145 145 145 145 138 138 138 138 138 138 142 142 142 142 142 142 142 142 142 142 142 142 142 142 142 143 114 143 143 114 143 143 114 143 142 114 142 144 115 144 144 115 144 143 115 143 142 113 142 142 113 142
-209 209 209 204 204 204 204 204 204 206 206 206 206 206 206 208 208 208 208 208 208 210 168 210 210 168 210 210 168 210 207 166 207 207 166 207 207 166 207 207 165 207 202 162 202 202 162 202 202 162 202 206 165 206 206 165 206 206 165 206 206 165 206 206 165 206 206 164 206 206 164 206 205 164 205 205 164 205 207 166 207 207 166 207 205 164 205 205 164 205 204 163 204 204 163 204 204 163 204 204 163 204 204 163 204 202 161 202 201 161 201 208 166 208 207 166 207 89 71 89 88 71 88 19 15 19 19 15 19 19 15 19 50 40 50 50 40 50 90 72 90 90 72 90 39 31 39 39 31 39 29 23 29 29 23 29 29 23 29 39 31 39 39 31 39 62 50 62 62 50 62 110 88 110 110 88 110 110 88 110 47 38 47 47 38 47 54 43 54 54 43 54 22 18 22 22 18 22 6 4 6 6 4 6 6 4 6 4 3 4 4 3 4 8 6 8 8 6 8 6 4 6 6 4 6 82 65 82 82 65 82 81 65 81 28 22 28 28 22 28 14 11 14 14 11 14 12 9 12 12 9 12 42 34 42 42 34 42 42 34 42 36 29 36 36 29 36 20 16 20 20 16 20 46 37 46 46 37 46 108 86 108 108 86 108 108 86 108 124 99 124 124 99 124 126 100 126 125 100 125 13 11 13 13 11 13 3 3 3 3 3 3 3 3 3 7 6 7 7 6 7 5 4 5 5 4 5 29 23 29 29 23 29 29 23 29 155 124 155 155 124 155 190 152 190 190 152 190 193 154 193 193 154 193 191 153 191 190 152 190 255 255 255 255 255 255 255 255 255 255 255 255 255 202 223 219 166 197 231 173 202 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 241 181 255 246 185 255 245 184 255 248 186 255 247 186 255 247 185 255 242 181 255 242 181 255 242 181 255 241 181 255 236 177 255 224 176 209 155 178 255 197 178 255 233 177 255 234 179 255 237 179 255 255 180 255 255 180 251 215 178 202 190 178 199 188 177 189 183 177 255 228 177 255 255 173 255 255 173 255 255 176 255 255 176 255 255 175 255 255 175 255 255 175 255 255 175 255 255 174 179 177 174 233 203 174 255 236 175 255 255 175 255 255 173 255 255 173 255 255 172 255 255 172 255 255 172 255 255 172 255 255 171 255 255 169 255 255 169 255 255 174 255 255 174 173 173 173 74 74 74 74 74 74 15 15 15 15 15 15 42 42 42 42 42 42 75 75 75 75 75 75 75 75 75 33 33 33 33 33 33 24 24 24 24 24 24 32 32 32 32 32 32 51 51 51 51 51 51 51 51 51 91 91 91 91 91 91 39 39 39 39 39 39 44 44 44 44 44 44 44 44 44 18 18 18 18 18 18 5 5 5 5 5 5 3 3 3 3 3 3 6 6 6 6 6 6 6 6 6 5 5 5 5 5 5 66 66 66 66 66 66 23 23 23 23 23 23 11 11 11 11 11 11 11 11 11 9 9 9 9 9 9 34 34 34 34 34 34 29 29 29 29 29 29 16 16 16 16 16 16 16 16 16 37 37 37 37 37 37 87 87 87 87 87 87 100 100 100 100 100 100 101 101 101 101 101 101 101 101 101 11 11 11 11 11 11 3 3 3 3 3 3 6 6 6 6 6 6 6 6 6 4 4 4 4 4 4 23 23 23 23 23 23 124 124 124 124 124 124 152 152 152 152 152 152 152 152 152 155 155 155 155 155 155 153 153 153 152 152 152 152 152 152 152 152 152 149 149 149 148 148 148 148 148 148 147 147 147 146 146 146 145 145 145 144 144 144 135 135 135 135 135 135 145 145 145 145 145 145 145 145 145 148 148 148 148 148 148 149 149 149 149 149 149 145 145 145 145 145 145 145 145 145 145 145 145 145 145 145 141 141 141 141 141 141 142 142 142 142 142 142 144 144 144 143 143 143 145 116 145 145 116 145 144 115 144 143 114 143 142 114 142 142 114 142 142 114 142 139 111 139
-209 209 209 204 204 204 204 204 204 204 204 204 208 208 208 208 208 208 210 168 210 210 168 210 208 166 208 208 166 208 208 166 208 207 166 207 207 166 207 207 166 207 207 166 207 211 169 211 211 169 211 211 169 211 211 169 211 211 168 211 213 170 213 213 170 213 212 170 212 212 170 212 206 164 206 206 164 206 210 168 210 210 168 210 209 167 209 211 169 211 211 169 211 203 162 203 202 162 202 202 162 202 202 162 202 202 161 202 191 153 191 191 153 191 36 28 36 36 28 36 38 30 38 38 30 38 82 66 82 82 66 82 82 66 82 44 35 44 44 35 44 92 74 92 92 74 92 63 50 63 63 50 63 63 50 63 88 70 88 88 70 88 67 53 67 67 53 67 39 31 39 39 31 39 102 81 102 102 81 102 102 81 102 72 58 72 72 58 72 43 34 43 43 34 43 14 11 14 14 11 14 14 11 14 84 67 84 84 67 84 16 13 16 16 13 16 18 14 18 18 14 18 34 27 34 34 27 34 34 27 34 71 57 71 71 57 71 26 21 26 26 21 26 36 29 36 36 29 36 36 29 36 63 50 63 63 50 63 46 37 46 46 37 46 28 22 28 28 22 28 28 22 28 18 14 18 18 14 18 28 22 28 28 22 28 46 37 46 46 36 46 66 53 66 66 52 66 66 52 66 42 33 42 41 33 41 25 20 25 25 20 25 39 31 39 39 31 39 39 31 39 11 9 11 11 9 11 7 6 7 7 6 7 43 34 43 43 34 43 190 152 190 190 152 190 190 152 190 194 155 194 193 155 193 193 154 193 193 154 193 191 152 191 255 255 255 255 255 255 255 255 255 255 227 240 220 168 200 224 170 201 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 246 185 255 243 183 255 243 183 255 248 186 255 247 186 255 247 186 255 247 186 255 247 185 255 237 178 255 237 177 255 241 181 255 241 181 255 182 177 229 162 176 255 206 176 255 236 179 255 240 179 255 255 181 255 234 181 188 183 178 230 204 178 197 188 178 236 207 178 255 255 177 255 243 177 255 255 177 255 255 180 255 255 180 255 250 180 255 218 179 249 214 179 255 255 181 255 255 180 255 255 180 195 187 180 255 255 174 255 255 174 255 255 173 255 255 177 255 255 176 255 255 178 255 255 178 255 255 170 255 255 170 255 255 170 255 255 169 255 255 169 255 255 160 255 255 160 30 30 30 30 30 30 31 31 31 31 31 31 31 31 31 68 68 68 68 68 68 36 36 36 36 36 36 77 77 77 76 76 76 52 52 52 52 52 52 52 52 52 72 72 72 72 72 72 55 55 55 55 55 55 32 32 32 32 32 32 32 32 32 84 84 84 84 84 84 59 59 59 59 59 59 35 35 35 35 35 35 11 11 11 11 11 11 11 11 11 69 69 69 69 69 69 13 13 13 13 13 13 15 15 15 15 15 15 15 15 15 28 28 28 28 28 28 58 58 58 58 58 58 21 21 21 21 21 21 21 21 21 29 29 29 29 29 29 51 51 51 51 51 51 37 37 37 37 37 37 22 22 22 22 22 22 22 22 22 14 14 14 14 14 14 22 22 22 22 22 22 37 37 37 37 37 37 37 37 37 53 53 53 53 53 53 33 33 33 33 33 33 20 20 20 20 20 20 31 31 31 31 31 31 31 31 31 9 9 9 9 9 9 6 6 6 6 6 6 34 34 34 34 34 34 34 34 34 152 152 152 152 152 152 155 155 155 155 155 155 155 155 155 154 154 154 152 152 152 152 152 152 152 152 152 147 147 147 147 147 147 150 150 150 150 150 150 146 146 146 146 146 146 146 146 146 144 144 144 144 144 144 148 148 148 148 148 148 146 146 146 146 146 146 149 149 149 149 149 149 149 149 149 148 148 148 148 148 148 142 142 142 142 142 142 145 145 145 144 144 144 144 144 144 141 141 141 141 141 141 144 144 144 143 143 143 145 116 145 145 116 145 143 114 143 143 114 143 143 114 143 142 114 142
-205 205 205 205 205 205 209 209 209 209 209 209 211 169 211 211 168 211 208 167 208 208 167 208 208 166 208 208 166 208 208 166 208 208 166 208 208 166 208 212 169 212 212 169 212 212 169 212 211 169 211 211 169 211 213 171 213 213 170 213 213 170 213 213 170 213 213 170 213 206 165 206 206 165 206 210 168 210 210 168 210 212 169 212 212 169 212 212 169 212 203 162 203 203 162 203 203 162 203 203 162 203 192 153 192 192 153 192 191 153 191 36 28 36 36 28 36 38 30 38 38 30 38 82 66 82 82 66 82 82 66 82 44 35 44 44 35 44 93 74 93 93 74 93 63 50 63 63 50 63 88 70 88 88 70 88 88 70 88 67 53 67 67 53 67 39 31 39 39 31 39 102 82 102 102 82 102 102 82 102 73 58 73 73 58 73 43 35 43 43 35 43 14 11 14 14 11 14 14 11 14 85 68 85 85 68 85 16 13 16 16 13 16 18 14 18 18 14 18 18 14 18 35 28 35 35 28 35 72 57 72 71 57 71 26 21 26 26 21 26 26 21 26 36 29 36 36 29 36 63 50 63 63 50 63 46 37 46 46 37 46 28 22 28 28 22 28 28 22 28 18 14 18 18 14 18 28 22 28 28 22 28 46 37 46 46 37 46 46 37 46 66 53 66 66 53 66 42 33 42 42 33 42 26 20 26 25 20 25 25 20 25 39 31 39 39 31 39 11 9 11 11 9 11 7 6 7 7 6 7 7 6 7 43 34 43 43 34 43 191 153 191 191 152 191 194 155 194 194 155 194 194 155 194 194 155 194 193 155 193 191 153 191 255 255 255 255 255 255 255 255 255 212 163 195 255 225 240 228 173 203 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 245 186 255 244 184 255 244 183 255 246 187 255 243 187 255 247 186 255 248 186 255 248 186 255 237 178 255 237 178 255 242 181 255 242 181 255 234 177 213 156 177 255 174 176 255 236 180 255 239 180 255 255 181 201 191 181 184 181 179 188 183 179 255 243 178 255 255 178 255 255 178 255 237 177 255 255 177 255 255 181 255 255 180 255 230 180 255 251 180 255 231 179 255 232 181 255 255 181 255 255 180 255 253 180 255 255 180 255 255 174 255 255 174 255 255 177 255 255 177 255 255 178 255 255 178 255 255 171 255 255 170 255 255 170 255 255 170 255 255 170 255 255 160 255 255 160 30 30 30 30 30 30 30 30 30 31 31 31 31 31 31 68 68 68 68 68 68 36 36 36 36 36 36 36 36 36 77 77 77 77 77 77 52 52 52 52 52 52 73 73 73 73 73 73 72 72 72 55 55 55 55 55 55 32 32 32 32 32 32 84 84 84 84 84 84 84 84 84 59 59 59 59 59 59 35 35 35 35 35 35 11 11 11 11 11 11 11 11 11 69 69 69 69 69 69 13 13 13 13 13 13 15 15 15 15 15 15 28 28 28 28 28 28 28 28 28 58 58 58 58 58 58 21 21 21 21 21 21 29 29 29 29 29 29 29 29 29 51 51 51 51 51 51 37 37 37 37 37 37 22 22 22 22 22 22 22 22 22 14 14 14 14 14 14 22 22 22 22 22 22 37 37 37 37 37 37 37 37 37 53 53 53 53 53 53 33 33 33 33 33 33 20 20 20 20 20 20 20 20 20 31 31 31 31 31 31 9 9 9 9 9 9 6 6 6 6 6 6 34 34 34 34 34 34 34 34 34 152 152 152 152 152 152 155 155 155 155 155 155 155 155 155 155 155 155 154 154 154 153 153 153 152 152 152 147 147 147 147 147 147 150 150 150 150 150 150 150 150 150 146 146 146 146 146 146 144 144 144 144 144 144 149 149 149 148 148 148 148 148 148 146 146 146 146 146 146 149 149 149 149 149 149 149 149 149 148 148 148 148 148 148 142 142 142 142 142 142 145 145 145 144 144 144 141 141 141 141 141 141 141 141 141 144 144 144 144 144 144 145 116 145 145 116 145 143 114 143 143 114 143
-209 209 209 209 209 209 216 172 216 216 172 216 215 172 215 215 172 215 215 172 215 211 168 211 211 168 211 210 168 210 208 166 208 208 166 208 210 168 210 210 168 210 214 171 214 214 171 214 214 171 214 214 171 214 214 171 214 211 169 211 211 169 211 209 167 209 209 167 209 209 167 209 208 167 208 208 167 208 212 170 212 212 170 212 210 168 210 210 168 210 210 168 210 203 162 203 203 162 203 130 104 130 130 104 130 25 20 25 25 20 25 25 20 25 17 13 17 17 13 17 83 66 83 82 66 82 53 42 53 53 42 53 53 42 53 74 59 74 74 59 74 91 72 91 90 72 90 73 59 73 73 59 73 73 59 73 92 74 92 92 74 92 73 58 73 73 58 73 46 36 46 46 36 46 46 36 46 77 62 77 77 61 77 112 90 112 112 90 112 8 6 8 8 6 8 8 6 8 24 19 24 24 19 24 4 3 4 4 3 4 22 18 22 22 18 22 22 18 22 35 28 35 35 28 35 57 46 57 57 46 57 105 84 105 104 83 104 104 83 104 39 31 39 38 31 38 100 80 100 100 80 100 47 37 47 46 37 46 46 37 46 63 50 63 63 50 63 50 40 50 50 40 50 42 34 42 42 34 42 42 34 42 60 48 60 60 48 60 106 85 106 106 85 106 44 35 44 44 35 44 44 35 44 38 30 38 38 30 38 20 16 20 19 15 19 19 15 19 27 22 27 27 22 27 23 19 23 23 19 23 7 6 7 7 6 7 7 6 7 116 93 116 116 93 116 193 154 193 193 154 193 194 155 194 194 155 194 194 155 194 190 152 190 255 255 255 255 255 255 255 232 245 213 164 198 255 255 255 212 164 198 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 244 184 255 244 184 255 244 184 255 250 189 255 248 189 255 247 187 255 246 187 255 248 186 255 248 186 255 247 186 255 242 182 255 242 181 255 239 181 255 223 181 239 168 181 255 225 180 255 239 180 255 255 185 208 197 185 190 187 185 233 209 185 255 255 184 255 248 180 255 255 180 255 255 178 255 255 178 255 255 179 255 255 179 255 236 179 255 224 182 255 236 182 255 255 181 255 255 181 255 255 179 255 255 179 255 255 179 255 255 176 255 255 176 255 255 176 255 255 176 255 255 179 255 255 179 255 255 178 255 255 176 255 255 176 255 255 170 255 255 170 253 181 109 247 178 109 108 108 108 21 21 21 21 21 21 14 14 14 14 14 14 69 69 69 69 69 69 68 68 68 44 44 44 44 44 44 61 61 61 61 61 61 75 75 75 75 75 75 75 75 75 61 61 61 60 60 60 76 76 76 76 76 76 76 76 76 60 60 60 60 60 60 37 37 37 37 37 37 63 63 63 63 63 63 63 63 63 92 92 92 92 92 92 6 6 6 6 6 6 20 20 20 20 20 20 20 20 20 3 3 3 3 3 3 18 18 18 18 18 18 28 28 28 28 28 28 28 28 28 46 46 46 46 46 46 85 85 85 84 84 84 31 31 31 31 31 31 31 31 31 81 81 81 80 80 80 37 37 37 37 37 37 50 50 50 50 50 50 50 50 50 40 40 40 40 40 40 34 34 34 34 34 34 48 48 48 48 48 48 48 48 48 85 85 85 85 85 85 35 35 35 35 35 35 30 30 30 30 30 30 30 30 30 16 16 16 15 15 15 22 22 22 22 22 22 19 19 19 19 19 19 19 19 19 6 6 6 6 6 6 93 93 93 93 93 93 154 154 154 154 154 154 153 153 153 155 155 155 155 155 155 151 151 151 151 151 151 149 149 149 149 149 149 149 149 149 150 150 150 150 150 150 151 151 151 151 151 151 151 151 151 151 151 151 150 150 150 147 147 147 147 147 147 147 147 147 146 146 146 151 151 151 151 151 151 150 150 150 149 149 149 149 149 149 148 148 148 148 148 148 145 145 145 145 145 145 144 144 144 144 144 144 144 144 144 144 144 144 144 144 144 144 144 144 148 118 148 148 118 148
-203 203 203 216 173 216 216 173 216 216 173 216 216 172 216 216 172 216 215 172 215 215 172 215 209 167 209 209 167 209 208 167 208 208 167 208 208 166 208 210 168 210 210 168 210 210 168 210 210 168 210 212 169 212 212 169 212 212 169 212 214 171 214 213 171 213 211 169 211 211 169 211 211 169 211 211 168 211 211 168 211 210 168 210 210 168 210 189 151 189 189 151 189 188 151 188 66 53 66 66 53 66 27 22 27 27 22 27 25 20 25 25 20 25 25 20 25 59 47 59 59 47 59 53 42 53 53 42 53 87 69 87 87 69 87 87 69 87 114 91 114 114 91 114 59 47 59 59 47 59 59 47 59 54 43 54 54 43 54 71 57 71 71 57 71 54 43 54 54 43 54 54 43 54 100 80 100 100 80 100 119 95 119 119 95 119 10 8 10 10 8 10 10 8 10 6 5 6 6 5 6 10 8 10 10 8 10 24 19 24 24 19 24 24 19 24 58 46 58 58 46 58 62 49 62 62 49 62 61 49 61 41 33 41 41 32 41 41 32 41 41 32 41 43 34 43 43 34 43 43 34 43 14 11 14 14 11 14 44 35 44 44 35 44 69 55 69 69 55 69 69 55 69 77 61 77 77 61 77 40 32 40 40 32 40 40 32 40 30 24 30 30 24 30 6 4 6 6 4 6 4 3 4 4 3 4 4 3 4 0 0 0 0 0 0 4 3 4 3 3 3 7 6 7 7 6 7 7 6 7 7 6 7 7 6 7 35 28 35 35 28 35 178 142 178 177 142 177 177 142 177 193 154 193 192 154 192 190 152 190 190 152 190 255 255 255 255 255 255 255 255 255 227 172 203 255 255 255 255 251 255 229 174 207 255 255 255 255 243 254 255 255 255 255 255 255 255 255 255 255 245 185 255 244 184 255 244 184 255 249 188 255 249 188 255 243 183 255 242 183 255 243 183 255 243 183 255 243 182 255 243 182 255 242 182 255 238 180 255 235 179 230 164 179 255 204 175 255 208 175 255 254 186 203 194 186 190 188 185 255 255 185 255 255 185 255 255 184 255 255 184 255 255 178 255 255 178 255 255 178 255 246 178 255 255 177 255 255 179 255 255 179 255 255 178 255 255 178 255 255 178 255 255 179 255 240 179 255 255 181 255 255 180 255 255 178 255 255 178 255 255 178 255 255 177 255 255 177 255 255 177 255 255 176 255 255 158 255 255 158 255 255 158 126 91 55 55 55 55 23 23 23 23 23 23 23 23 23 21 21 21 21 21 21 49 49 49 49 49 49 44 44 44 44 44 44 44 44 44 72 72 72 72 72 72 94 94 94 94 94 94 48 48 48 48 48 48 48 48 48 45 45 45 45 45 45 58 58 58 58 58 58 44 44 44 44 44 44 44 44 44 82 82 82 82 82 82 97 97 97 97 97 97 97 97 97 8 8 8 8 8 8 5 5 5 5 5 5 8 8 8 8 8 8 8 8 8 20 20 20 20 20 20 47 47 47 47 47 47 50 50 50 50 50 50 50 50 50 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 34 34 34 34 34 34 11 11 11 11 11 11 36 36 36 36 36 36 36 36 36 55 55 55 55 55 55 62 62 62 61 61 61 32 32 32 32 32 32 32 32 32 24 24 24 24 24 24 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 0 0 0 0 0 0 3 3 3 3 3 3 3 3 3 6 6 6 6 6 6 6 6 6 6 6 6 28 28 28 28 28 28 28 28 28 141 141 141 141 141 141 153 153 153 153 153 153 151 151 151 151 151 151 151 151 151 151 151 151 151 151 151 149 149 149 149 149 149 153 153 153 153 153 153 153 153 153 151 151 151 151 151 151 147 147 147 147 147 147 147 147 147 147 147 147 146 146 146 149 149 149 149 149 149 146 146 146 146 146 146 145 145 145 145 145 145 145 145 145 145 145 145 145 145 145 143 143 143 143 143 143 143 143 143 139 139 139 139 139 139 148 118 148
-217 173 217 216 173 216 216 173 216 216 173 216 216 173 216 216 173 216 209 167 209 209 167 209 209 167 209 209 167 209 209 167 209 211 169 211 211 168 211 211 168 211 210 168 210 210 168 210 212 170 212 212 170 212 214 171 214 214 171 214 214 171 214 212 169 212 211 169 211 211 169 211 211 169 211 211 169 211 211 169 211 211 169 211 189 151 189 189 151 189 66 53 66 66 53 66 66 53 66 27 22 27 27 22 27 25 20 25 25 20 25 59 47 59 59 47 59 59 47 59 53 42 53 53 42 53 87 69 87 87 69 87 87 69 87 114 91 114 114 91 114 59 47 59 59 47 59 55 44 55 55 44 55 55 44 55 71 57 71 71 57 71 54 43 54 54 43 54 54 43 54 101 80 101 101 80 101 119 95 119 119 95 119 10 8 10 10 8 10 10 8 10 6 5 6 6 5 6 10 8 10 10 8 10 10 8 10 25 20 25 24 19 24 58 46 58 58 46 58 62 49 62 62 49 62 62 49 62 41 33 41 41 33 41 41 33 41 41 33 41 41 32 41 43 34 43 43 34 43 14 11 14 14 11 14 45 36 45 45 36 45 45 36 45 69 55 69 69 55 69 77 62 77 77 61 77 77 61 77 40 32 40 40 32 40 30 24 30 30 24 30 6 4 6 6 4 6 6 4 6 4 3 4 4 3 4 0 0 0 0 0 0 0 0 0 4 3 4 4 3 4 8 6 8 7 6 7 7 6 7 7 6 7 7 6 7 35 28 35 35 28 35 178 142 178 178 142 178 193 155 193 193 154 193 193 154 193 191 152 191 190 152 190 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 202 226 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 245 185 255 245 185 255 245 185 255 249 188 255 249 188 255 244 184 255 244 184 255 243 183 255 243 183 255 243 183 255 243 183 255 243 182 255 240 180 255 239 180 255 192 180 255 174 176 255 202 175 239 213 186 196 191 186 201 193 186 255 255 185 255 255 185 255 255 185 255 255 185 255 255 179 255 255 178 255 255 178 255 255 178 255 255 178 255 255 179 255 255 179 255 221 179 255 255 178 255 255 178 255 255 180 255 249 179 255 255 181 255 255 181 255 255 180 255 255 178 255 255 178 255 255 178 255 255 177 255 255 177 255 255 177 255 255 177 255 255 158 255 255 158 126 91 55 55 55 55 55 55 55 23 23 23 23 23 23 21 21 21 21 21 21 49 49 49 49 49 49 49 49 49 44 44 44 44 44 44 72 72 72 72 72 72 94 94 94 94 94 94 94 94 94 49 49 49 48 48 48 45 45 45 45 45 45 45 45 45 59 59 59 58 58 58 45 45 45 44 44 44 82 82 82 82 82 82 82 82 82 97 97 97 97 97 97 8 8 8 8 8 8 8 8 8 5 5 5 5 5 5 8 8 8 8 8 8 20 20 20 20 20 20 20 20 20 47 47 47 47 47 47 50 50 50 50 50 50 50 50 50 33 33 33 33 33 33 33 33 33 33 33 33 34 34 34 34 34 34 34 34 34 11 11 11 11 11 11 36 36 36 36 36 36 36 36 36 55 55 55 55 55 55 62 62 62 62 62 62 32 32 32 32 32 32 32 32 32 24 24 24 24 24 24 4 4 4 4 4 4 4 4 4 3 3 3 3 3 3 0 0 0 0 0 0 3 3 3 3 3 3 3 3 3 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 28 28 28 28 28 28 141 141 141 141 141 141 154 154 154 153 153 153 153 153 153 151 151 151 151 151 151 151 151 151 151 151 151 149 149 149 149 149 149 149 149 149 153 153 153 153 153 153 151 151 151 151 151 151 151 151 151 147 147 147 147 147 147 147 147 147 147 147 147 150 150 150 149 149 149 149 149 149 146 146 146 146 146 146 146 146 146 145 145 145 145 145 145 145 145 145 145 145 145 143 143 143 143 143 143 140 140 140 139 139 139
-217 173 217 217 173 217 217 173 217 216 173 216 216 173 216 214 171 214 214 171 214 216 173 216 216 173 216 216 172 216 216 172 216 215 172 215 215 172 215 215 172 215 215 172 215 215 172 215 215 172 215 215 172 215 214 171 214 214 171 214 214 171 214 214 171 214 210 168 210 209 167 209 181 145 181 181 145 181 181 145 181 125 100 125 125 100 125 99 79 99 99 79 99 17 13 17 17 13 17 17 13 17 23 18 23 23 18 23 12 10 12 12 10 12 12 10 12 55 44 55 55 44 55 57 46 57 57 46 57 68 54 68 68 54 68 68 54 68 95 76 95 95 76 95 31 25 31 31 25 31 31 25 31 65 52 65 65 52 65 55 44 55 54 43 54 54 43 54 82 65 82 82 65 82 105 84 105 105 84 105 8 6 8 8 6 8 8 6 8 12 10 12 12 10 12 31 25 31 31 25 31 31 25 31 16 13 16 16 13 16 68 55 68 68 54 68 68 54 68 45 36 45 45 36 45 51 41 51 51 41 51 20 16 20 20 16 20 20 16 20 20 16 20 20 16 20 35 28 35 34 27 34 34 27 34 57 46 57 57 45 57 40 32 40 40 32 40 65 52 65 65 52 65 65 52 65 26 21 26 26 21 26 6 4 6 6 4 6 6 4 6 0 0 0 0 0 0 8 6 8 8 6 8 8 6 8 36 29 36 36 28 36 10 8 10 10 8 10 8 6 8 8 6 8 8 6 8 17 14 17 17 14 17 1 1 1 1 1 1 1 1 1 97 77 97 97 77 97 192 153 192 191 153 191 191 153 191 191 153 191 191 153 191 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 207 230 255 255 255 255 191 218 255 255 255 255 255 255 255 255 255 255 248 187 255 247 187 255 253 191 255 252 191 255 252 190 255 244 184 255 244 184 255 236 178 255 236 178 255 236 177 255 243 183 255 243 183 255 243 182 255 242 182 255 227 182 190 146 176 255 212 176 197 192 187 199 193 186 255 239 186 255 255 186 255 246 186 255 255 185 255 255 185 255 255 183 255 255 183 255 255 182 255 255 184 255 255 184 255 255 183 255 227 183 231 207 183 255 238 183 255 255 182 255 255 182 255 255 182 255 255 181 255 255 181 255 255 181 255 255 181 255 255 180 255 255 176 255 255 176 255 255 176 255 255 152 255 248 152 240 172 104 227 166 104 192 137 82 194 138 82 82 82 82 14 14 14 14 14 14 19 19 19 19 19 19 19 19 19 10 10 10 10 10 10 46 46 46 46 46 46 45 45 45 47 47 47 47 47 47 56 56 56 56 56 56 78 78 78 78 78 78 78 78 78 26 26 26 26 26 26 53 53 53 53 53 53 53 53 53 45 45 45 44 44 44 67 67 67 67 67 67 67 67 67 85 85 85 85 85 85 6 6 6 6 6 6 10 10 10 10 10 10 10 10 10 25 25 25 25 25 25 13 13 13 13 13 13 13 13 13 55 55 55 55 55 55 36 36 36 36 36 36 41 41 41 41 41 41 41 41 41 16 16 16 16 16 16 16 16 16 16 16 16 16 16 16 28 28 28 28 28 28 46 46 46 46 46 46 46 46 46 32 32 32 32 32 32 52 52 52 52 52 52 21 21 21 21 21 21 21 21 21 4 4 4 4 4 4 0 0 0 0 0 0 0 0 0 6 6 6 6 6 6 28 28 28 28 28 28 28 28 28 8 8 8 7 7 7 6 6 6 6 6 6 14 14 14 14 14 14 14 14 14 1 1 1 1 1 1 77 77 77 77 77 77 77 77 77 152 152 152 152 152 152 152 152 152 151 151 151 151 151 151 151 151 151 151 151 151 152 152 152 152 152 152 153 153 153 153 153 153 153 153 153 151 151 151 151 151 151 148 148 148 147 147 147 147 147 147 148 148 148 148 148 148 151 151 151 151 151 151 146 146 146 146 146 146 146 146 146 141 141 141 141 141 141 145 145 145 145 145 145 145 145 145 145 145 145 144 144 144
-217 174 217 217 173 217 217 173 217 217 173 217 217 173 217 216 173 216 216 173 216 216 173 216 216 173 216 216 173 216 216 173 216 216 172 216 216 172 216 215 172 215 215 172 215 215 172 215 215 172 215 215 172 215 215 172 215 215 172 215 212 170 212 212 170 212 212 170 212 190 152 190 190 152 190 190 152 190 190 152 190 190 152 190 95 76 95 94 75 94 6 5 6 6 5 6 6 5 6 51 41 51 51 41 51 8 6 8 8 6 8 32 25 32 32 25 32 32 25 32 62 49 62 62 49 62 32 25 32 32 25 32 32 25 32 42 34 42 42 34 42 59 47 59 59 47 59 59 47 59 38 30 38 38 30 38 59 47 59 59 47 59 59 47 59 110 88 110 109 87 109 95 76 95 95 76 95 10 8 10 10 8 10 10 8 10 8 6 8 8 6 8 33 26 33 33 26 33 33 26 33 27 21 27 27 21 27 79 63 79 79 63 79 79 63 79 27 21 27 27 21 27 76 61 76 76 61 76 76 61 76 49 39 49 49 39 49 26 21 26 26 21 26 90 72 90 90 72 90 90 72 90 32 26 32 32 26 32 24 19 24 24 19 24 24 19 24 18 14 18 18 14 18 16 13 16 16 13 16 16 13 16 8 6 8 8 6 8 4 3 4 4 3 4 4 3 4 6 4 6 6 4 6 28 22 28 28 22 28 28 22 28 20 16 20 20 16 20 8 6 8 8 6 8 8 6 8 8 6 8 8 6 8 3 3 3 3 3 3 35 28 35 35 28 35 35 28 35 194 155 194 194 155 194 196 156 196 195 156 195 195 156 195 255 255 255 255 255 255 255 255 255 255 199 225 255 255 255 255 255 255 255 255 255 222 170 204 255 203 227 255 255 255 255 255 255 255 255 255 255 248 188 255 248 188 255 250 189 255 250 189 255 250 189 255 245 185 255 244 184 255 236 178 255 236 178 255 236 178 255 244 183 255 243 183 255 243 183 255 243 183 255 237 182 236 169 186 255 176 186 197 192 187 235 211 187 255 255 187 255 255 186 255 253 186 255 255 186 255 255 186 255 255 185 255 255 185 255 255 185 255 255 184 255 255 184 255 233 184 226 205 184 255 255 183 255 236 183 255 255 183 255 255 182 255 255 182 255 242 182 255 255 182 255 255 181 255 255 181 255 255 181 255 255 179 255 255 178 255 255 178 255 255 160 255 255 159 255 255 159 255 255 159 255 255 159 187 133 79 79 79 79 5 5 5 5 5 5 5 5 5 42 42 42 42 42 42 7 7 7 7 7 7 7 7 7 26 26 26 26 26 26 51 51 51 51 51 51 26 26 26 26 26 26 26 26 26 35 35 35 35 35 35 49 49 49 48 48 48 48 48 48 31 31 31 31 31 31 48 48 48 48 48 48 48 48 48 89 89 89 89 89 89 77 77 77 77 77 77 77 77 77 8 8 8 8 8 8 6 6 6 6 6 6 6 6 6 27 27 27 27 27 27 22 22 22 22 22 22 64 64 64 64 64 64 64 64 64 21 21 21 21 21 21 62 62 62 61 61 61 61 61 61 40 40 40 40 40 40 21 21 21 21 21 21 21 21 21 72 72 72 72 72 72 26 26 26 26 26 26 26 26 26 19 19 19 19 19 19 14 14 14 14 14 14 13 13 13 13 13 13 13 13 13 6 6 6 6 6 6 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 22 22 22 22 22 22 22 22 22 16 16 16 15 15 15 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 3 3 3 3 3 3 28 28 28 28 28 28 28 28 28 154 154 154 154 154 154 155 155 155 155 155 155 154 154 154 154 154 154 154 154 154 154 154 154 154 154 154 153 153 153 153 153 153 153 153 153 153 153 153 153 153 153 152 152 152 151 151 151 150 150 150 149 149 149 148 148 148 150 150 150 150 150 150 149 149 149 146 146 146 146 146 146 141 141 141 141 141 141 141 141 141 145 145 145 145 145 145 145 145 145
-217 174 217 217 174 217 217 174 217 217 173 217 217 173 217 217 173 217 217 173 217 216 173 216 216 173 216 216 173 216 216 173 216 216 173 216 216 173 216 216 172 216 216 172 216 215 172 215 215 172 215 215 172 215 215 172 215 213 170 213 213 170 213 191 152 191 191 152 191 190 152 190 190 152 190 190 152 190 95 76 95 95 76 95 95 76 95 6 5 6 6 5 6 51 41 51 51 41 51 51 41 51 8 6 8 8 6 8 32 25 32 32 25 32 32 25 32 62 49 62 62 49 62 32 25 32 32 25 32 32 25 32 42 34 42 42 34 42 59 47 59 59 47 59 59 47 59 38 30 38 38 30 38 59 47 59 59 47 59 59 47 59 110 88 110 110 88 110 95 76 95 95 76 95 10 8 10 10 8 10 10 8 10 8 6 8 8 6 8 33 26 33 33 26 33 33 26 33 27 21 27 27 21 27 79 63 79 79 63 79 79 63 79 27 21 27 27 21 27 77 61 77 77 61 77 77 61 77 49 39 49 49 39 49 26 21 26 26 21 26 26 21 26 91 72 91 90 72 90 33 26 33 33 26 33 32 26 32 24 19 24 24 19 24 18 14 18 18 14 18 18 14 18 16 13 16 16 13 16 8 6 8 8 6 8 8 6 8 4 3 4 4 3 4 6 4 6 6 4 6 6 4 6 28 22 28 28 22 28 20 16 20 20 16 20 8 6 8 8 6 8 8 6 8 8 6 8 8 6 8 4 3 4 4 3 4 3 3 3 35 28 35 35 28 35 195 156 195 195 156 195 194 155 194 196 157 196 196 157 196 196 156 196 255 255 255 255 255 255 255 255 255 255 241 254 255 254 255 255 255 255 255 255 255 210 164 200 255 194 221 255 255 255 255 255 255 255 255 255 255 255 255 255 248 188 255 251 190 255 250 189 255 250 189 255 245 185 255 245 185 255 235 179 255 236 178 255 235 178 255 243 184 255 244 183 255 243 183 255 243 183 255 241 183 255 204 186 255 187 186 231 209 188 243 215 187 255 250 187 255 237 187 255 255 187 255 253 186 255 255 186 255 255 186 255 255 185 255 255 185 255 255 185 255 255 185 255 255 184 255 251 184 255 255 184 255 255 183 255 255 183 255 255 183 255 255 183 255 255 182 255 255 182 255 255 182 255 255 181 255 255 181 255 255 181 255 255 179 255 255 179 255 255 160 255 255 160 255 255 159 255 255 159 255 255 159 187 133 79 79 79 79 79 79 79 5 5 5 5 5 5 43 43 43 43 43 43 42 42 42 7 7 7 7 7 7 26 26 26 26 26 26 26 26 26 51 51 51 51 51 51 26 26 26 26 26 26 35 35 35 35 35 35 35 35 35 49 49 49 49 49 49 31 31 31 31 31 31 31 31 31 48 48 48 48 48 48 90 90 90 89 89 89 89 89 89 77 77 77 77 77 77 8 8 8 8 8 8 8 8 8 6 6 6 6 6 6 27 27 27 27 27 27 27 27 27 22 22 22 22 22 22 64 64 64 64 64 64 64 64 64 21 21 21 21 21 21 62 62 62 62 62 62 61 61 61 40 40 40 40 40 40 21 21 21 21 21 21 21 21 21 72 72 72 72 72 72 26 26 26 26 26 26 26 26 26 19 19 19 19 19 19 14 14 14 14 14 14 13 13 13 13 13 13 13 13 13 6 6 6 6 6 6 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 22 22 22 22 22 22 22 22 22 16 16 16 16 16 16 6 6 6 6 6 6 6 6 6 6 6 6 6 6 6 3 3 3 3 3 3 3 3 3 28 28 28 28 28 28 154 154 154 154 154 154 154 154 154 155 155 155 155 155 155 154 154 154 154 154 154 154 154 154 154 154 154 154 154 154 153 153 153 153 153 153 153 153 153 153 153 153 153 153 153 151 151 151 151 151 151 150 150 150 149 149 149 148 148 148 150 150 150 150 150 150 146 146 146 146 146 146 146 146 146 141 141 141 141 141 141 145 145 145 145 145 145
-218 174 218 217 174 217 217 174 217 217 174 217 217 174 217 217 173 217 217 173 217 217 173 217 217 173 217 217 173 217 216 173 216 216 173 216 214 171 214 214 171 214 214 171 214 214 171 214 213 171 213 213 171 213 213 170 213 213 170 213 176 141 176 176 141 176 130 104 130 130 104 130 130 104 130 88 71 88 88 71 88 6 5 6 6 5 6 6 5 6 23 19 23 23 19 23 15 12 15 15 12 15 15 12 15 49 39 49 49 39 49 30 24 30 30 24 30 30 24 30 25 20 25 25 20 25 45 36 45 45 36 45 44 35 44 134 107 134 134 107 134 91 73 91 91 73 91 91 73 91 83 66 83 83 66 83 161 129 161 161 129 161 161 129 161 131 105 131 131 105 131 10 8 10 10 8 10 10 8 10 16 13 16 16 13 16 18 15 18 18 15 18 18 15 18 21 16 21 21 16 21 60 48 60 60 48 60 60 48 60 16 13 16 16 13 16 35 28 35 35 28 35 35 28 35 27 21 27 27 21 27 47 38 47 47 38 47 47 38 47 60 48 60 60 48 60 14 11 14 14 11 14 14 11 14 26 21 26 26 21 26 53 42 53 53 42 53 53 42 53 78 62 78 77 62 77 73 59 73 73 58 73 73 58 73 98 78 98 97 78 97 42 34 42 42 34 42 42 34 42 26 21 26 26 21 26 24 19 24 24 19 24 24 19 24 10 8 10 10 8 10 22 17 22 22 17 22 22 17 22 12 9 12 12 9 12 8 6 8 8 6 8 7 6 7 173 138 173 173 138 173 197 157 197 196 157 196 196 157 196 196 157 196 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 242 251 210 162 195 255 255 255 255 255 255 255 255 255 255 255 255 255 241 183 255 246 186 255 246 186 255 245 186 255 245 185 255 245 185 255 238 181 255 239 181 255 220 167 255 219 167 255 220 167 255 244 184 255 244 183 255 250 189 255 243 189 226 166 188 211 199 188 216 202 188 255 244 187 250 219 187 255 255 187 255 247 187 255 255 186 255 255 186 255 255 186 255 255 186 255 255 185 255 255 185 255 255 185 255 255 184 255 255 184 255 255 184 255 255 184 255 255 183 255 255 183 255 255 183 255 252 181 255 255 180 255 255 180 255 255 180 255 255 180 255 255 179 255 255 179 255 242 148 255 240 147 255 245 147 255 182 109 252 180 109 170 122 74 74 74 74 74 74 74 5 5 5 5 5 5 19 19 19 19 19 19 19 19 19 12 12 12 12 12 12 12 12 12 41 41 41 40 40 40 24 24 24 24 24 24 21 21 21 21 21 21 21 21 21 37 37 37 36 36 36 36 36 36 110 110 110 110 110 110 75 75 75 75 75 75 67 67 67 67 67 67 67 67 67 131 131 131 131 131 131 131 131 131 107 107 107 106 106 106 8 8 8 8 8 8 13 13 13 13 13 13 13 13 13 15 15 15 15 15 15 15 15 15 16 16 16 16 16 16 49 49 49 49 49 49 48 48 48 13 13 13 13 13 13 28 28 28 28 28 28 28 28 28 21 21 21 21 21 21 38 38 38 38 38 38 38 38 38 48 48 48 48 48 48 11 11 11 11 11 11 11 11 11 21 21 21 21 21 21 42 42 42 42 42 42 42 42 42 62 62 62 62 62 62 58 58 58 58 58 58 58 58 58 77 77 77 77 77 77 33 33 33 33 33 33 33 33 33 20 20 20 20 20 20 19 19 19 19 19 19 19 19 19 7 7 7 7 7 7 17 17 17 17 17 17 17 17 17 9 9 9 9 9 9 6 6 6 6 6 6 6 6 6 137 137 137 136 136 136 155 155 155 155 155 155 155 155 155 154 154 154 154 154 154 152 152 152 152 152 152 152 152 152 150 150 150 150 150 150 147 147 147 147 147 147 146 146 146 143 143 143 143 143 143 144 144 144 144 144 144 144 144 144 147 147 147 147 147 147 146 146 146 146 146 146 146 146 146 143 143 143 143 143 143
-216 172 216 218 174 218 218 174 218 218 174 218 217 174 217 217 174 217 217 174 217 217 174 217 217 173 217 217 173 217 217 173 217 217 173 217 216 173 216 216 173 216 216 173 216 216 173 216 214 171 214 214 171 214 213 171 213 207 165 207 207 165 207 200 160 200 200 160 200 200 160 200 84 67 84 84 67 84 21 17 21 21 17 21 21 17 21 13 10 13 12 10 12 36 29 36 36 29 36 36 29 36 36 29 36 36 29 36 56 44 56 56 44 56 56 44 56 17 13 17 17 13 17 19 15 19 19 15 19 19 15 19 79 63 79 79 63 79 92 73 92 92 73 92 91 73 91 94 75 94 93 75 93 185 148 185 185 148 185 185 148 185 200 160 200 199 159 199 199 159 199 121 96 121 120 96 120 23 18 23 23 18 23 23 18 23 12 10 12 12 10 12 14 11 14 14 11 14 14 11 14 18 15 18 18 15 18 39 31 39 39 31 39 39 31 39 64 51 64 64 51 64 127 102 127 127 101 127 127 101 127 139 111 139 139 111 139 137 109 137 137 109 137 137 109 137 149 119 149 149 119 149 169 135 169 169 135 169 169 135 169 152 122 152 152 122 152 127 102 127 127 102 127 127 101 127 102 82 102 102 82 102 96 77 96 96 76 96 96 76 96 145 116 145 144 115 144 118 94 118 118 94 118 117 94 117 26 21 26 26 21 26 26 21 26 8 6 8 8 6 8 14 11 14 14 11 14 14 11 14 14 11 14 14 11 14 4 3 4 4 3 4 4 3 4 160 128 160 159 127 159 195 156 195 195 156 195 195 156 195 196 157 196 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 233 245 255 255 255 255 255 255 255 255 255 255 255 255 255 244 185 255 246 187 255 246 186 255 253 192 255 253 192 255 253 191 255 248 187 255 247 187 255 233 177 255 232 177 255 233 177 255 247 186 255 246 186 255 251 189 255 250 189 255 191 189 211 200 188 224 206 188 213 201 188 255 243 188 255 254 187 255 255 187 255 255 187 255 255 187 255 255 184 255 255 184 255 255 186 255 255 185 255 255 185 255 255 185 255 255 185 255 255 184 255 255 184 255 255 184 255 255 183 255 255 183 255 255 183 255 255 183 255 255 182 255 255 182 255 255 182 255 255 180 255 255 179 255 255 179 255 255 173 255 255 173 255 255 167 255 255 167 255 255 167 167 119 70 70 70 70 18 18 18 18 18 18 18 18 18 10 10 10 10 10 10 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 46 46 46 46 46 46 46 46 46 14 14 14 14 14 14 14 14 14 15 15 15 15 15 15 65 65 65 64 64 64 64 64 64 75 75 75 75 75 75 76 76 76 76 76 76 76 76 76 151 151 151 150 150 150 162 162 162 162 162 162 162 162 162 98 98 98 98 98 98 18 18 18 18 18 18 18 18 18 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 15 15 15 15 15 15 32 32 32 32 32 32 32 32 32 52 52 52 52 52 52 102 102 102 102 102 102 102 102 102 111 111 111 111 111 111 109 109 109 109 109 109 109 109 109 119 119 119 119 119 119 135 135 135 135 135 135 135 135 135 121 121 121 121 121 121 121 121 121 101 101 101 101 101 101 81 81 81 81 81 81 81 81 81 76 76 76 76 76 76 115 115 115 114 114 114 114 114 114 93 93 93 93 93 93 20 20 20 20 20 20 20 20 20 6 6 6 6 6 6 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 3 3 3 3 3 3 3 3 3 126 126 126 126 126 126 154 154 154 154 154 154 153 153 153 155 155 155 154 154 154 154 154 154 154 154 154 154 154 154 151 151 151 150 150 150 147 147 147 147 147 147 147 147 147 146 146 146 146 146 146 146 146 146 146 146 146 146 146 146 147 147 147 147 147 147 147 147 147 151 151 151 151 151 151 148 148 148
-218 174 218 218 174 218 218 174 218 218 174 218 218 174 218 218 174 218 217 174 217 217 174 217 217 174 217 217 174 217 217 173 217 217 173 217 217 173 217 217 173 217 216 173 216 214 171 214 214 171 214 207 166 207 207 166 207 207 166 207 200 160 200 200 160 200 85 68 85 84 67 84 84 67 84 21 17 21 21 17 21 13 10 13 13 10 13 13 10 13 36 29 36 36 29 36 36 29 36 36 29 36 36 29 36 56 44 56 56 44 56 56 44 56 17 13 17 17 13 17 19 15 19 19 15 19 19 15 19 79 63 79 79 63 79 92 73 92 92 73 92 92 73 92 94 75 94 94 75 94 186 148 186 185 148 185 185 148 185 200 160 200 200 160 200 200 160 200 121 97 121 121 96 121 23 18 23 23 18 23 23 18 23 12 10 12 12 10 12 14 11 14 14 11 14 14 11 14 18 15 18 18 15 18 40 32 40 39 31 39 39 31 39 65 52 65 65 52 65 127 102 127 127 102 127 127 102 127 140 112 140 139 111 139 139 111 139 137 110 137 137 109 137 149 119 149 149 119 149 149 119 149 170 136 170 169 135 169 153 122 153 153 122 153 152 122 152 127 102 127 127 102 127 102 82 102 102 82 102 102 82 102 96 77 96 96 77 96 145 116 145 145 116 145 145 116 145 118 94 118 118 94 118 26 21 26 26 21 26 26 21 26 8 6 8 8 6 8 8 6 8 14 11 14 14 11 14 14 11 14 14 11 14 14 11 14 4 3 4 4 3 4 160 128 160 160 128 160 160 128 160 195 156 195 195 156 195 197 157 197 197 157 197 255 255 255 255 255 255 255 255 255 255 255 255 255 230 245 255 255 255 255 255 255 255 238 249 246 182 210 255 255 255 255 255 255 255 255 255 255 255 255 255 244 185 255 246 187 255 246 187 255 253 192 255 252 192 255 251 192 255 247 188 255 247 187 255 232 177 255 233 177 255 234 177 255 247 186 255 247 186 255 252 190 255 251 189 255 239 189 255 224 189 255 233 189 209 198 188 255 222 188 255 255 188 255 255 187 255 255 187 255 255 187 255 255 185 255 255 184 255 255 186 255 255 186 255 255 186 255 255 185 255 255 185 255 255 185 255 255 184 255 255 184 255 255 184 255 255 184 255 255 183 255 255 183 255 255 183 255 255 182 255 255 182 255 255 182 255 255 180 255 255 180 255 255 174 255 255 173 255 255 173 255 255 167 255 255 167 167 119 70 70 70 70 70 70 70 18 18 18 18 18 18 10 10 10 10 10 10 10 10 10 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 46 46 46 46 46 46 46 46 46 14 14 14 14 14 14 15 15 15 15 15 15 15 15 15 65 65 65 65 65 65 75 75 75 75 75 75 75 75 75 76 76 76 76 76 76 151 151 151 151 151 151 151 151 151 162 162 162 162 162 162 98 98 98 98 98 98 98 98 98 18 18 18 18 18 18 10 10 10 10 10 10 10 10 10 11 11 11 11 11 11 11 11 11 15 15 15 15 15 15 32 32 32 32 32 32 32 32 32 52 52 52 52 52 52 102 102 102 102 102 102 102 102 102 112 112 112 111 111 111 110 110 110 109 109 109 109 109 109 119 119 119 119 119 119 135 135 135 135 135 135 135 135 135 121 121 121 121 121 121 121 121 121 101 101 101 101 101 101 81 81 81 81 81 81 81 81 81 76 76 76 76 76 76 115 115 115 115 115 115 114 114 114 93 93 93 93 93 93 20 20 20 20 20 20 20 20 20 6 6 6 6 6 6 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 3 3 3 3 3 3 126 126 126 126 126 126 126 126 126 154 154 154 154 154 154 155 155 155 155 155 155 154 154 154 154 154 154 154 154 154 151 151 151 151 151 151 150 150 150 147 147 147 147 147 147 147 147 147 146 146 146 146 146 146 146 146 146 146 146 146 146 146 146 147 147 147 147 147 147 151 151 151 151 151 151
-218 175 218 218 175 218 218 174 218 218 174 218 218 174 218 218 174 218 218 174 218 218 174 218 211 169 211 211 168 211 211 168 211 215 172 215 215 172 215 217 173 217 217 173 217 217 173 217 214 171 214 214 171 214 181 145 181 181 145 181 181 145 181 85 68 85 85 68 85 85 68 85 17 13 17 17 13 17 23 19 23 23 19 23 23 19 23 30 24 30 30 24 30 30 24 30 30 24 30 30 24 30 28 22 28 28 22 28 28 22 28 10 8 10 10 8 10 43 34 43 43 34 43 43 34 43 133 106 133 133 106 133 180 144 180 180 144 180 180 144 180 197 157 197 197 157 197 212 169 212 211 169 211 211 169 211 207 165 207 207 165 207 207 165 207 206 165 206 206 165 206 191 153 191 191 153 191 191 153 191 165 132 165 165 132 165 131 105 131 131 105 131 131 104 131 133 106 133 133 106 133 162 130 162 162 129 162 162 129 162 197 158 197 197 158 197 197 158 197 205 164 205 205 164 205 205 164 205 205 164 205 205 164 205 204 163 204 204 163 204 206 165 206 206 165 206 206 164 206 203 163 203 203 162 203 203 162 203 203 162 203 203 162 203 196 157 196 196 157 196 196 156 196 127 102 127 127 102 127 135 108 135 135 108 135 135 108 135 170 136 170 170 136 170 102 81 102 102 81 102 102 81 102 67 53 67 67 53 67 67 53 67 12 9 12 12 9 12 6 4 6 6 4 6 6 4 6 4 3 4 4 3 4 8 6 8 8 6 8 8 6 8 164 131 164 164 131 164 198 158 198 198 158 198 198 158 198 197 158 197 197 158 197 197 157 197 255 255 255 255 255 255 255 255 255 255 253 255 255 255 255 255 255 255 255 214 236 227 173 205 255 255 255 255 255 255 255 255 255 255 255 255 255 247 188 255 247 187 255 247 187 255 244 187 255 245 187 255 243 186 255 244 186 255 246 186 255 244 186 255 245 185 255 245 185 255 247 187 255 247 186 255 251 190 255 250 190 255 247 190 255 226 189 224 207 189 249 219 189 249 219 188 255 254 188 255 255 188 255 255 188 255 255 187 255 255 183 255 255 183 255 255 187 255 255 186 255 255 186 255 255 186 255 255 185 255 255 185 255 255 185 255 255 185 247 216 184 255 242 184 255 255 184 255 245 178 255 255 178 255 255 181 255 255 181 255 255 180 255 255 182 255 255 182 255 255 180 255 255 179 255 255 179 255 253 151 255 253 151 255 255 151 71 71 71 70 70 70 14 14 14 14 14 14 14 14 14 19 19 19 19 19 19 25 25 25 25 25 25 25 25 25 25 25 25 25 25 25 23 23 23 23 23 23 23 23 23 8 8 8 8 8 8 8 8 8 35 35 35 35 35 35 109 109 109 109 109 109 109 109 109 147 147 147 147 147 147 161 161 161 160 160 160 160 160 160 172 172 172 172 172 172 168 168 168 168 168 168 168 168 168 167 167 167 167 167 167 167 167 167 154 154 154 154 154 154 133 133 133 133 133 133 133 133 133 105 105 105 105 105 105 107 107 107 107 107 107 106 106 106 130 130 130 130 130 130 130 130 130 158 158 158 158 158 158 164 164 164 164 164 164 164 164 164 164 164 164 163 163 163 163 163 163 163 163 163 163 163 163 164 164 164 164 164 164 162 162 162 162 162 162 161 161 161 161 161 161 161 161 161 161 161 161 155 155 155 155 155 155 101 101 101 101 101 101 101 101 101 107 107 107 107 107 107 134 134 134 134 134 134 134 134 134 80 80 80 80 80 80 53 53 53 53 53 53 53 53 53 9 9 9 9 9 9 9 9 9 4 4 4 4 4 4 3 3 3 3 3 3 3 3 3 6 6 6 6 6 6 129 129 129 129 129 129 129 129 129 156 156 156 155 155 155 155 155 155 155 155 155 155 155 155 153 153 153 153 153 153 152 152 152 154 154 154 154 154 154 153 153 153 153 153 153 153 153 153 150 150 150 149 149 149 148 148 148 148 148 148 147 147 147 147 147 147 147 147 147 147 147 147
-219 175 219 219 175 219 218 175 218 218 175 218 218 174 218 218 174 218 218 174 218 218 174 218 218 174 218 218 174 218 217 174 217 217 174 217 217 174 217 217 174 217 217 173 217 217 173 217 217 173 217 160 128 160 159 127 159 159 127 159 74 59 74 74 59 74 17 13 17 17 13 17 17 13 17 24 19 24 23 19 23 23 19 23 6 5 6 6 5 6 32 26 32 32 26 32 32 26 32 23 19 23 23 19 23 19 15 19 19 15 19 19 15 19 19 15 19 19 15 19 19 15 19 144 115 144 144 115 144 202 162 202 202 161 202 202 161 202 208 166 208 208 166 208 208 166 208 208 166 208 207 166 207 209 167 209 209 167 209 209 167 209 211 169 211 211 169 211 209 167 209 208 167 208 208 167 208 210 168 210 210 168 210 208 166 208 208 166 208 207 166 207 207 166 207 207 166 207 207 165 207 207 165 207 207 165 207 208 167 208 208 167 208 208 166 208 206 165 206 206 164 206 208 166 208 207 166 207 207 166 207 207 165 207 207 165 207 207 165 207 206 165 206 206 165 206 206 165 206 206 165 206 206 164 206 203 163 203 203 162 203 203 162 203 203 162 203 202 162 202 200 160 200 200 160 200 200 160 200 144 115 144 144 115 144 94 75 94 94 75 94 94 75 94 114 91 114 114 91 114 153 122 153 153 122 153 153 122 153 36 29 36 36 29 36 36 29 36 8 6 8 8 6 8 20 16 20 20 16 20 20 16 20 38 30 38 38 30 38 38 30 38 187 149 187 187 149 187 194 155 194 194 155 194 194 155 194 194 155 194 193 155 193 195 156 195 255 255 255 255 255 255 255 255 255 255 253 255 255 255 255 255 255 255 255 255 255 255 209 228 255 255 255 255 255 255 255 255 255 255 255 255 255 245 186 255 244 186 255 244 186 255 240 183 255 241 183 255 240 183 255 244 186 255 246 186 255 251 190 255 251 190 255 250 189 255 248 187 255 247 187 255 249 189 255 244 188 255 216 188 233 211 190 232 211 189 207 198 189 212 200 189 255 254 189 255 255 188 255 255 188 255 255 188 255 255 187 255 255 187 255 255 187 255 255 187 255 255 186 255 255 186 255 255 186 255 255 186 255 255 185 255 235 185 200 192 185 255 255 184 255 238 184 255 247 184 255 243 184 255 255 183 255 255 183 255 255 183 255 255 182 255 255 182 255 255 182 255 255 182 255 255 181 255 224 133 255 223 133 255 223 133 62 62 62 61 61 61 14 14 14 14 14 14 14 14 14 19 19 19 19 19 19 19 19 19 5 5 5 5 5 5 26 26 26 26 26 26 26 26 26 19 19 19 19 19 19 19 19 19 16 16 16 16 16 16 15 15 15 15 15 15 15 15 15 118 118 118 118 118 118 165 165 165 165 165 165 165 165 165 170 170 170 169 169 169 169 169 169 169 169 169 168 168 168 170 170 170 170 170 170 169 169 169 171 171 171 171 171 171 169 169 169 168 168 168 168 168 168 170 170 170 169 169 169 169 169 169 167 167 167 167 167 167 167 167 167 166 166 166 166 166 166 166 166 166 165 165 165 167 167 167 167 167 167 166 166 166 164 164 164 164 164 164 164 164 164 165 165 165 165 165 165 165 165 165 165 165 165 164 164 164 164 164 164 164 164 164 164 164 164 163 163 163 163 163 163 161 161 161 161 161 161 161 161 161 161 161 161 160 160 160 158 158 158 158 158 158 158 158 158 114 114 114 113 113 113 74 74 74 74 74 74 74 74 74 90 90 90 90 90 90 90 90 90 120 120 120 120 120 120 28 28 28 28 28 28 28 28 28 6 6 6 6 6 6 15 15 15 15 15 15 15 15 15 30 30 30 30 30 30 30 30 30 147 147 147 146 146 146 153 153 153 152 152 152 152 152 152 152 152 152 152 152 152 152 152 152 153 153 153 153 153 153 152 152 152 152 152 152 152 152 152 152 152 152 152 152 152 145 145 145 145 145 145 145 145 145 138 138 138 138 138 138 138 138 138 146 146 146
-219 175 219 219 175 219 219 175 219 219 175 219 218 175 218 218 175 218 218 174 218 218 174 218 218 174 218 218 174 218 218 174 218 218 174 218 217 174 217 217 174 217 217 174 217 217 174 217 160 128 160 160 128 160 74 59 74 74 59 74 74 59 74 17 14 17 17 14 17 17 14 17 24 19 24 24 19 24 6 5 6 6 5 6 6 5 6 32 26 32 32 26 32 32 26 32 23 19 23 23 19 23 19 15 19 19 15 19 19 15 19 19 15 19 19 15 19 145 116 145 144 115 144 144 115 144 203 162 203 202 162 202 202 162 202 209 167 209 208 167 208 208 167 208 208 166 208 208 166 208 210 168 210 210 168 210 210 168 210 212 169 212 211 169 211 209 167 209 209 167 209 209 167 209 211 168 211 211 168 211 210 168 210 208 166 208 208 166 208 208 166 208 208 166 208 207 166 207 207 166 207 207 166 207 209 167 209 209 167 209 209 167 209 206 165 206 206 165 206 206 165 206 208 166 208 208 166 208 207 166 207 207 166 207 207 166 207 207 165 207 207 165 207 206 165 206 206 165 206 206 165 206 204 163 204 204 163 204 203 163 203 203 162 203 203 162 203 201 160 201 200 160 200 200 160 200 144 115 144 144 115 144 144 115 144 94 75 94 94 75 94 115 92 115 115 92 115 114 91 114 153 123 153 153 122 153 153 122 153 36 29 36 36 29 36 8 6 8 8 6 8 8 6 8 20 16 20 20 16 20 20 16 20 38 30 38 38 30 38 187 150 187 187 150 187 187 149 187 195 156 195 195 156 195 194 155 194 194 155 194 194 155 194 196 156 196 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 255 225 239 255 255 255 255 255 255 255 255 255 255 255 255 255 245 186 255 245 186 255 244 186 255 241 184 255 242 183 255 247 187 255 244 187 255 245 187 255 251 190 255 251 190 255 251 190 255 248 188 255 248 187 255 250 189 255 217 189 213 161 188 208 199 190 200 195 190 205 197 190 222 206 189 255 255 189 255 255 189 255 255 188 255 255 188 255 255 188 255 255 188 255 255 187 255 255 187 255 255 187 255 255 187 255 255 186 255 255 186 255 224 186 251 218 185 238 212 185 255 232 185 255 231 185 255 250 184 255 219 184 255 255 184 255 255 183 255 255 183 255 255 183 255 255 183 255 255 182 255 255 182 255 255 182 255 255 182 255 224 134 255 225 133 146 104 62 62 62 62 62 62 62 14 14 14 14 14 14 19 19 19 19 19 19 19 19 19 5 5 5 5 5 5 5 5 5 26 26 26 26 26 26 19 19 19 19 19 19 19 19 19 16 16 16 16 16 16 16 16 16 15 15 15 15 15 15 118 118 118 118 118 118 118 118 118 165 165 165 165 165 165 165 165 165 170 170 170 169 169 169 169 169 169 169 169 169 169 169 169 170 170 170 170 170 170 171 171 171 171 171 171 171 171 171 169 169 169 169 169 169 168 168 168 170 170 170 169 169 169 167 167 167 167 167 167 167 167 167 167 167 167 166 166 166 166 166 166 166 166 166 166 166 166 167 167 167 167 167 167 167 167 167 165 165 165 164 164 164 166 166 166 166 166 166 165 165 165 165 165 165 165 165 165 165 165 165 164 164 164 164 164 164 164 164 164 164 164 164 163 163 163 161 161 161 161 161 161 161 161 161 161 161 161 160 160 160 159 159 159 158 158 158 158 158 158 114 114 114 114 114 114 113 113 113 74 74 74 74 74 74 90 90 90 90 90 90 90 90 90 121 121 121 120 120 120 28 28 28 28 28 28 28 28 28 6 6 6 6 6 6 6 6 6 15 15 15 15 15 15 30 30 30 30 30 30 30 30 30 147 147 147 147 147 147 146 146 146 153 153 153 152 152 152 152 152 152 152 152 152 152 152 152 153 153 153 153 153 153 153 153 153 152 152 152 152 152 152 152 152 152 152 152 152 152 152 152 145 145 145 145 145 145 139 139 139 138 138 138 138 138 138
-
diff --git a/testsuite/tests/ghc-regress/programs/galois_raytrace/test.T b/testsuite/tests/ghc-regress/programs/galois_raytrace/test.T
deleted file mode 100644
index 169e162d6a..0000000000
--- a/testsuite/tests/ghc-regress/programs/galois_raytrace/test.T
+++ /dev/null
@@ -1,26 +0,0 @@
-setTestOpts(omit_compiler_types(['hugs'])) # takes much too long
-
-# Floating point differences on x86 using the NCG
-if config.platform.startswith('i386-') and \
- config.platform != 'i386-unknown-openbsd':
- setTestOpts(expect_fail_for(['hpc','optasm','profasm','threaded2','profthreaded']))
-
-test('galois_raytrace',
- [skip_if_fast,
- extra_clean(['CSG.hi', 'CSG.o',
- 'Construct.hi', 'Construct.o',
- 'Data.hi', 'Data.o',
- 'Eval.hi', 'Eval.o',
- 'Geometry.hi', 'Geometry.o',
- 'Illumination.hi', 'Illumination.o',
- 'Intersections.hi', 'Intersections.o',
- 'Interval.hi', 'Interval.o',
- 'Main.hi', 'Main.o',
- 'Misc.hi', 'Misc.o',
- 'Parse.hi', 'Parse.o',
- 'Primitives.hi', 'Primitives.o',
- 'Surface.hi', 'Surface.o']),
- reqlib('parsec')],
- multimod_compile_and_run,
- ['Main','-package parsec'])
-
diff --git a/testsuite/tests/ghc-regress/programs/hs-boot/A.hs b/testsuite/tests/ghc-regress/programs/hs-boot/A.hs
deleted file mode 100644
index e09cebb67b..0000000000
--- a/testsuite/tests/ghc-regress/programs/hs-boot/A.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module A where
-
-import C
--- THIS FIXES IT:
--- import B
diff --git a/testsuite/tests/ghc-regress/programs/hs-boot/A.hs-boot b/testsuite/tests/ghc-regress/programs/hs-boot/A.hs-boot
deleted file mode 100644
index c80b00d29d..0000000000
--- a/testsuite/tests/ghc-regress/programs/hs-boot/A.hs-boot
+++ /dev/null
@@ -1,4 +0,0 @@
-
-module A where
-
-import C
diff --git a/testsuite/tests/ghc-regress/programs/hs-boot/B.hs b/testsuite/tests/ghc-regress/programs/hs-boot/B.hs
deleted file mode 100644
index 13d1ac4948..0000000000
--- a/testsuite/tests/ghc-regress/programs/hs-boot/B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module B where
-
-import C
-import {-# SOURCE #-} A
diff --git a/testsuite/tests/ghc-regress/programs/hs-boot/C.hs b/testsuite/tests/ghc-regress/programs/hs-boot/C.hs
deleted file mode 100644
index b81773302e..0000000000
--- a/testsuite/tests/ghc-regress/programs/hs-boot/C.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-
-module C where
diff --git a/testsuite/tests/ghc-regress/programs/hs-boot/Main.hs b/testsuite/tests/ghc-regress/programs/hs-boot/Main.hs
deleted file mode 100644
index 2f51014fd2..0000000000
--- a/testsuite/tests/ghc-regress/programs/hs-boot/Main.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-module Main where
-
-import B
--- REMOVING THIS OR MOVING THIS OVER "import B" FIXES IT:
-import C
-
-main = return () \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/programs/hs-boot/Makefile b/testsuite/tests/ghc-regress/programs/hs-boot/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/hs-boot/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/hs-boot/all.T b/testsuite/tests/ghc-regress/programs/hs-boot/all.T
deleted file mode 100644
index eb48087188..0000000000
--- a/testsuite/tests/ghc-regress/programs/hs-boot/all.T
+++ /dev/null
@@ -1,9 +0,0 @@
-# This test is for bug #906, a problem with the ordering of
-# compilations involving .hs-boot files, fixed in 6.6.
-
-test('hs-boot',
- extra_clean(['A.hi', 'A.hi-boot', 'A.o', 'A.o-boot',
- 'B.hi', 'B.o', 'C.hi', 'C.o',
- 'Main.hi', 'Main.o']),
- multimod_compile,
- ['Main -v0', ''])
diff --git a/testsuite/tests/ghc-regress/programs/hs-boot/hs-boot.stderr b/testsuite/tests/ghc-regress/programs/hs-boot/hs-boot.stderr
deleted file mode 100644
index 99de1b67f5..0000000000
--- a/testsuite/tests/ghc-regress/programs/hs-boot/hs-boot.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-B.hs:5:23: Warning: {-# SOURCE #-} unnecessary in import of `A'
diff --git a/testsuite/tests/ghc-regress/programs/jl_defaults/Main.hs b/testsuite/tests/ghc-regress/programs/jl_defaults/Main.hs
deleted file mode 100644
index 7264c53c1e..0000000000
--- a/testsuite/tests/ghc-regress/programs/jl_defaults/Main.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-d=25637784375346753+0158409406114519728029864689069987389733-25637784375346753
-
-cox(n)=foldr (\x(y)->128* y+x)0(n)
-de(n)=un(\x-> (x`mod`128,x `div`128),( ==0))n
-coll= un(\ zs->( take( 35)zs, drop(35)zs),(==""))
-pe(n,m)x=s(p( n`div`2,m)x) `mod`m --2323 -- john launchbury --
-p(n,m)x=if( n==0)then(1) else(if(even(n)) then(pe(n,m)x)else(po(n,m)x))
-po(n, m)x= (x*p( n-1,m) x)`mod` m
-un(f, p)n= if(p(n))then []else (let(a, b)=f(n)in(a:un(f,p)b))
-(g,s) =(\x ->x,\x->x*x) --v(f) t*g+172
-
-e=4998372704153806867349631861645896723396264061670520817438963311707989737197
-n=6133011105483442903214719346445720362447680717496623906453276570566830154479
-
-a=g
- (concat.map(map(chr.fromIntegral).de.p(d,n).read).lines)
-main=interact
- (unlines.map(show.p(e,n).cox.map(fromIntegral.ord)).coll)
-b=g
---p::(Integer,Integer)->Integer->Integer
-default (Integer)
--- 1.3
-ord = (fromEnum :: Char -> Int)
-chr = (toEnum :: Int -> Char)
diff --git a/testsuite/tests/ghc-regress/programs/jl_defaults/Makefile b/testsuite/tests/ghc-regress/programs/jl_defaults/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/jl_defaults/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/jl_defaults/jl_defaults.stdin b/testsuite/tests/ghc-regress/programs/jl_defaults/jl_defaults.stdin
deleted file mode 100644
index 9f42b3cdaf..0000000000
--- a/testsuite/tests/ghc-regress/programs/jl_defaults/jl_defaults.stdin
+++ /dev/null
@@ -1,97 +0,0 @@
-module Main
-where
-
-import Rsa
-
-main = interact (decrypt 2036450659413645137870851576872812267542175329986469156678671505255564383842535488743101632280716717779536712424613501441720195827856504007305662157107
- 5282760067491066073559694937813662322539426172665930660813609694132726350877)
-module Main
-where
-
-import Rsa
-
-main = interact (prompt . keys . lines)
-
-keys (x:y:xs) = makeKeys (read x) (read y)
-prompt ks = "\nEnter two random numbers on separate lines:\n" ++
- case ks of
- (n,e,d) -> "The numbers n, e, and d are:\n" ++
- unlines (map show [n,e,d]) ++ "\n"
-
-
-
-
-module Main
-where
-
-import Rsa
-
-main = interact (encrypt 2036450659413645137870851576872812267542175329986469156678671505255564383842535488743101632280716717779536712424613501441720195827856504007305662157107
-
- 387784473137902876992546516170169092918207676456888779623592396031349415024943784869634893342729620092877891356118467738167515879252473323905128540213)
-module Rsa (encrypt, decrypt, makeKeys)
-where
-
-
-encrypt, decrypt :: Integer -> Integer -> String -> String
-encrypt n e = unlines . map (show . power e n . code) . collect (size n)
-decrypt n d = concat . map (decode . power d n . read) . lines
-
-
--------- Converting between Strings and Integers -----------
-
-code :: String -> Integer
-code = foldl accum 0
- where accum x y = (128 * x) + fromIntegral (ord y)
-
-decode :: Integer -> String
-decode n = reverse (expand n)
- where expand 0 = []
- expand x = chr (fromIntegral (x `mod` 128)) : expand (x `div` 128)
-
-collect :: Int -> [a] -> [[a]]
-collect 0 xs = []
-collect n [] = []
-collect n xs = take n xs : collect n (drop n xs)
-
-size :: Integer -> Int
-size n = (length (show n) * 47) `div` 100 -- log_128 10 = 0.4745
-
-
-------- Constructing keys -------------------------
-
-makeKeys :: Integer -> Integer -> (Integer, Integer, Integer)
-makeKeys p' q' = (n, invert phi d, d)
- where p = nextPrime p'
- q = nextPrime q'
- n = p*q
- phi = (p-1)*(q-1)
- d = nextPrime (p+q+1)
-
-nextPrime :: Integer -> Integer
-nextPrime a = head (filter prime [odd,odd+2..])
- where odd | even a = a+1
- | True = a
- prime p = and [power (p-1) p x == 1 | x <- [3,5,7]]
-
-invert :: Integer -> Integer -> Integer
-invert n a = if e<0 then e+n else e
- where e=iter n 0 a 1
-
-iter :: Integer -> Integer -> Integer -> Integer -> Integer
-iter g v 0 w = v
-iter g v h w = iter h w (g - fact * h) (v - fact * w)
- where fact = g `div` h
-
-
-------- Fast exponentiation, mod m -----------------
-
-power :: Integer -> Integer -> Integer -> Integer
-power 0 m x = 1
-power n m x | even n = sqr (power (n `div` 2) m x) `mod` m
- | True = (x * power (n-1) m x) `mod` m
-
-sqr :: Integer -> Integer
-sqr x = x * x
-
-
diff --git a/testsuite/tests/ghc-regress/programs/jl_defaults/jl_defaults.stdout b/testsuite/tests/ghc-regress/programs/jl_defaults/jl_defaults.stdout
deleted file mode 100644
index 96af88d02a..0000000000
--- a/testsuite/tests/ghc-regress/programs/jl_defaults/jl_defaults.stdout
+++ /dev/null
@@ -1,81 +0,0 @@
-4920809715423652126833300223898584158049941072841886687495995700883334743100
-5432330858306872686500084883710596485987545962633593608556693314985929397278
-4339248871826075716689365252959383603865108452038731242628114027468386889392
-5093536091168354561903967261876376065518631989366599364453052968769674546808
-452255175131343471422777502400803159982075304884934452744062890985998925579
-5651794710074432381863213344353720104403137760112806914487431596242938363430
-3061160482336986047106286569124179361131165975312875785380225174897705056247
-3707532298830907015078026151401521396408816523701073885235911174226183847616
-1672527229229602085474445755878025438634885550315976736763448691537272636397
-2694095939000995014017603368080556297555174784041262508235371067342645255524
-374377465877617758578798366250540382775835183912685973484329204081752413108
-70670677534061236024006132424883477045800689401223889299851269113903609674
-4000628399955471904243661544397767048125987794908180173183625871229892876397
-4906565929095346836492941810877575932437495191179616117416632984168943509597
-5516346249998806624976191380102290469940913229929556365185124042458931748107
-3249082870923755215225394643296748590367123662573818411184222619514686103707
-1491720335558719705869091168528404980739494271046932349218229579321184830523
-1686737417317757855955298010512776238712753331633604323753903197890876799373
-1805585126801071079811419697627136537113089029403553023028612722432622665752
-3511736403324390887823438889080816442699457593665362088272279450694662350325
-3059090617697805984966883699385391457394972451765807015618308229682170754691
-1791469209415048698889701534711117102841920419919199191251466207775050401648
-4909486343080247382855393243376373590835553788279147318500120102235277324688
-6105584463845350869346463822943556344444743115967948397202046370564408862801
-3101811255702323827681538739391405240305979676311679950655332212164728286905
-502301603479002276983794250287799138413539671219594405716785181026407853070
-4358061173842713923727596635618515537510627182560600542063351264350418316626
-164453598598861572154717095227623488925677211321244997860334336257326798364
-4394558632435728786563083951771397684083785946746450795656358634203698441707
-6006851346698376668509905281824701381916163461685508740794674441125858788140
-3867538230503966184572683721734208947665221540440622466928061154772391187329
-5338109760830381076911983869920441650716477560575467116072876135764595748095
-3743970364360709692565346166809854918016520774549917187253761579957026935285
-5338885389104874014929439098775791103906923949376645756253431737471221283700
-2348178884706827085411484833459920161135814667852004573467265439960241493131
-5254623865012121523980274965685942704689624593023469438181719491186136936015
-3986275158016351977835439147155809957999996272270283467743293472532115583617
-526935137060210001028448464377173261084183239425747466381941443743544027195
-507273794051233348674698212476241189139986916720908541050194948680762996344
-1033556763489852311463603207019927285083136108137572596117745744242871916900
-3446795433667187698189441512959300936201773618507473942386709884930451135074
-545931880879424996206435364533933413676207664131244784634909342311706884452
-2795801327214218413435627230002144566845535290174353455844445456463875729434
-2931834269644667286282273161824736012205083677965116753449411073863166504357
-4321226293197008552166855291951448174194860947478057945983594070230611540335
-2915201550606214604494324179626096006121149723557886610883841340815238149840
-4811620416165033750799620419212417505145222669364398338747204968522878524911
-1466224263109815153902563034416239744965838185919402925858674448761002454779
-2438889162050605487686752760988810450126857080767315726495753536171323863054
-5998821980800057085636781495295707864684178467171746799651972228599139201266
-6089567412803075636381417941158119969114523106164962143432961423089887792292
-3050021010531468802113118367257671370659795560347299789117728278864278450131
-5945718375382831109423632944705128211793085885913633593861683167159528782591
-3026204398245236798354704986302023975861815145437855415245441815308415387953
-2676529366868155998394698157879317295826322813777929555458747920862958367966
-2510144819506913011833805684069407453087501420718601429525528464579648027945
-927261031293985730579168798603066378051891567746020053024936290977579745443
-5915344780625405584011111029616932649698677975010841120923573679748044000720
-3148048140163124147500328788647215500539594107393850553079025886755275538822
-2287692746592755607916955694183169908842703620578310343535165175569710544053
-1063693689244866698553354251617273211405432367453924577142357801317603990975
-3849377130782157501991218894503189735241973306948618262933858934701817306449
-4936383948961571782723042323182925874145007039724697967700967643799136008113
-1509617705803393270808477952473702864659023851066698294243357961717765168672
-5472216837765373996121128218666257320756026383617272333703957906641519754263
-4780254190063899712174761115854857641499167561602339838395636904013647414584
-5581514826041367626669555434100028158983453767987104047095662205070800757827
-5309252036506593340513508392734823467337429965923448711237185191264932184860
-4583433054186756079090681370045250784557808030067459137931281644720019191362
-5575463174094526452776738273855782291534405989081458614218391164048773471067
-5852605354443026555410261612196443374066160991330461866108439516671532034102
-1874394262755169898049882304381434185778432126556225514931962873197932483312
-788055637358938666586632974037948121627136430004899534614992989099047141460
-2622180375354647151274534995106977971178016843195527033965282744574806644939
-4796950796491327077781445701993257220109214573739662989797578674154036157406
-233413414192494514986495864446565635199384720742811236012866416296376677246
-2347993888467688740232778654271044706092005506762442826710421788460808408534
-91161250689328982701754090976033028590711392587459602281964712770783938325
-1819439705826650262304124492559936132802903570523631190847187428885890378612
-2856891250452648545493984485566790848211215232771965243626157791018496330646
-1757223836152519443955234766296600906372788951356756698651751141731568824792
diff --git a/testsuite/tests/ghc-regress/programs/jl_defaults/test.T b/testsuite/tests/ghc-regress/programs/jl_defaults/test.T
deleted file mode 100644
index 0f6e4cbd69..0000000000
--- a/testsuite/tests/ghc-regress/programs/jl_defaults/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('jl_defaults',
- [skip_if_fast, extra_clean(['Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/joao-circular/Data_Lazy.hs b/testsuite/tests/ghc-regress/programs/joao-circular/Data_Lazy.hs
deleted file mode 100644
index d5ab24a9ca..0000000000
--- a/testsuite/tests/ghc-regress/programs/joao-circular/Data_Lazy.hs
+++ /dev/null
@@ -1,273 +0,0 @@
-module Data_Lazy where
-
-import LrcPrelude
-
---
--- Abstract Syntax
---
---
-data P
- = C_RootProd_1 !Defs
- deriving (Show , Eq , Ord)
-
-data Defs
- = C_Defs2_1 !Def !Defs
- | C_NoDefs_1
- deriving (Show , Eq , Ord)
-
-data Def
- = C_Arraydecl_1 !Type !Name !INT
- | C_Declfunc_1 !Type !Name !FormPars !Stats
- | C_Declfunc_header_1 !Type !Name !FormPars !Stats
- | C_Declfunc_header_novar_1 !Type !Name !FormPars !Stats
- | C_Vardecl_1 !Type !Name
- deriving (Show , Eq , Ord)
-
-data Type
- = C_Booltype_1
- | C_Chartype_1
- | C_Errortype_1
- | C_Inttype_1
- | C_Realtype_1
- deriving (Show , Eq , Ord)
-
-data Name
- = C_Ident_1 !STR
- deriving (Show , Eq , Ord)
-
-data FormPars
- = C_Emptyformpars_1
- | C_Lstformpars_1 !FormPar !FormPars
- deriving (Show , Eq , Ord)
-
-data FormPar
- = C_Declformpar_1 !Type !Name
- deriving (Show , Eq , Ord)
-
-data Stats
- = C_Emptystat_1
- | C_Lststats_1 !Stat !Stats
- deriving (Show , Eq , Ord)
-
-data Stat
- = C_ArrAssign_1 !ArrayUse !Exp
- | C_Assign_1 !Name !Exp
- | C_Funccall_1 !Name !ActPars
- | C_If_t_e_1 !Exp !Stats !Stats
- | C_Input_1 !Name
- | C_LocalDecl_1 !Type !Name
- | C_Print_1 !Exp
- | C_While_1 !Exp !Stats
- deriving (Show , Eq , Ord)
-
-data ArrayUse
- = C_ArrayInd_1 !Name !Exp
- deriving (Show , Eq , Ord)
-
-data Exp
- = C_AddExp_1 !Exp !Exp
- | C_AndExp_1 !Exp !Exp
- | C_DivExp_1 !Exp !Exp
- | C_EqExp_1 !Exp !Exp
- | C_Factor_1 !Fac
- | C_GTExp_1 !Exp !Exp
- | C_LTExp_1 !Exp !Exp
- | C_MinExp_1 !Exp
- | C_MulExp_1 !Exp !Exp
- | C_NotExp_1 !Exp
- | C_OrExp_1 !Exp !Exp
- | C_SubExp_1 !Exp !Exp
- deriving (Show , Eq , Ord)
-
-data Fac
- = C_ArrayConst_1 !ArrayUse
- | C_BoolConst_1 !BOOL
- | C_CNIdent_1 !Name
- | C_Expr_1 !Exp
- | C_Funcinv_1 !Name !ActPars
- | C_IntConst_1 !INT
- | C_RealConst_1 !REAL
- deriving (Show , Eq , Ord)
-
-data ActPars
- = C_Emptyactpars_1
- | C_Lstactpars_1 !Exp !ActPars
- deriving (Show , Eq , Ord)
-
-data PPRoot
- = C_All_1 !PPS
- | C_Best_1 !PPS
- deriving (Show , Eq , Ord)
-
-data PPS
- = C_Above_1 !PPS !PPS
- | C_Apply_1 !PPC !PPSArgs
- | C_Beside_1 !PPS !PPS
- | C_Dup_1 !PPS !PPS
- | C_Empty_1
- | C_FillBlock_1 !INT !FillList
- | C_Filla_1 !FillList
- | C_Indent_1 !INT !PPS
- | C_Join_1 !PPS
- | C_Text_1 !STR
- deriving (Show , Eq , Ord)
-
-data PPC
- = C_AboveC_1 !PPC !PPC
- | C_ApplyC_1 !PPC !PPCArgs
- | C_BesideC_1 !PPC !PPC
- | C_DupC_1 !PPC !PPC
- | C_IndentC_1 !INT !PPC
- | C_JoinC_1 !PPC
- | C_ParC_1
- deriving (Show , Eq , Ord)
-
-data PPCArgs
- = C_ConsPPCArgs_1 !PPC !PPCArgs
- | C_NilPPCArgs_1
- deriving (Show , Eq , Ord)
-
-data PPSArgs
- = C_ConsArgs_1 !PPS !PPSArgs
- | C_NilArgs_1
- deriving (Show , Eq , Ord)
-
-data FillList
- = C_ConsFillList_1 !PPS !FillList
- | C_NilFillList_1
- deriving (Show , Eq , Ord)
-
-
---
--- Type of Attributes
---
---
-type Code = [Instr]
-
-type CodeParams = [Code]
-
-data Disp
- = C_Displ_1 !PPS
- deriving (Show , Eq , Ord)
-
-data ENTRY
- = C_Consarray_1 !Type !INT !INT
- | C_Consfunc_1 !Type !INT !LSTPARAM
- | C_Consvar_1 !Type !INT
- | C_EmptyEntry_1
- deriving (Show , Eq , Ord)
-
-type ERROR = [OneError]
-
-data Format
- = C_Elem_1 !INT !INT !INT !Lst_Str
- deriving (Show , Eq , Ord)
-
-type Formats = [Format]
-
-data Instr
- = C_ALabel_1 !Name
- | C_Add_1
- | C_And_1
- | C_Call_1 !Name
- | C_Cod_1
- | C_Data_1
- | C_Div_1
- | C_Eq_1
- | C_Gt_1
- | C_Halt_1
- | C_IIn_1
- | C_IOut_1
- | C_Jump_1 !Name
- | C_Jumpf_1 !Name
- | C_Load_1
- | C_Lt_1
- | C_Minus_1
- | C_Mul_1
- | C_Neq_1
- | C_Not_1
- | C_Or_1
- | C_Pusha_1 !Name !INT
- | C_Pushb_1 !BOOL
- | C_Pushi_1 !INT
- | C_Pushr_1 !REAL
- | C_Ret_1
- | C_Store_1
- | C_Sub_1
- | C_Var_1 !Name !INT !Type
- deriving (Show , Eq , Ord)
-
-type LSTPARAM = [OneParam]
-
-type Lst_Str = [STR]
-
-data OneError
- = C_E_FormParam_AD_1 !Name
- | C_E_Fun_ND_1 !Name
- | C_E_Loc_Name_AD_1 !Name
- | C_E_Name_AD_1 !Name
- | C_E_Name_ND_1 !Name
- deriving (Show , Eq , Ord)
-
-data OneParam
- = C_AParam_1 !Type !Name
- deriving (Show , Eq , Ord)
-
-data OneTypeError
- = C_E_T_ActParam_1
- | C_E_T_BOP_1
- | C_E_T_DT_1 !Name
- | C_E_T_IndArrNotInt_1
- | C_E_T_NC_1 !Type !Type
- | C_E_T_NotArithExp_1
- | C_E_T_NotBooleanExp_1
- | C_E_T_if_t_e_1
- | C_E_T_while_1
- | C_NoTypeError_1
- deriving (Show , Eq , Ord)
-
-data Pair_Formats
- = C_C_Pair_Formats_1 !Formats !BOOL
- deriving (Show , Eq , Ord)
-
-data Pair_Lst_T_Errs
- = C_CPair_Lst_T_Errs_1 !T_Errs !T_Errs
- deriving (Show , Eq , Ord)
-
-data Pair_Lst_T_Fmts
- = C_CPair_Lst_T_Fmts_1 !T_Fmts !T_Fmts
- deriving (Show , Eq , Ord)
-
-data Pair_Lst_T_Mins
- = C_CPair_Lst_T_Mins_1 !T_Mins !T_Mins
- deriving (Show , Eq , Ord)
-
-data Pair_T_Formats
- = C_C_Pair_T_Formats_1 !T_Formats !BOOL
- deriving (Show , Eq , Ord)
-
-data Sizes
- = C_Triple_1 !INT !INT !INT
- deriving (Show , Eq , Ord)
-
-type TYPES = [Type]
-
-type T_Errs = [BOOL]
-
-type T_Fmts = [T_Formats]
-
-data T_Formats
- = C_AFormat_1 !Formats
- | C_TFormats_1 !Formats !Formats !BOOL !BOOL
- deriving (Show , Eq , Ord)
-
-data T_Frame
- = C_F_1 !INT !INT
- deriving (Show , Eq , Ord)
-
-type T_Mins = [Sizes]
-
-type T_Reqs = [T_Frame]
-
-type TypeError = [OneTypeError]
-
diff --git a/testsuite/tests/ghc-regress/programs/joao-circular/Funcs_Lexer.hs b/testsuite/tests/ghc-regress/programs/joao-circular/Funcs_Lexer.hs
deleted file mode 100644
index c9f5c07b16..0000000000
--- a/testsuite/tests/ghc-regress/programs/joao-circular/Funcs_Lexer.hs
+++ /dev/null
@@ -1,111 +0,0 @@
---
--- Lexer for MicroC
---
--- João Saraiva
--- 2002
---
-
-
-module Funcs_Lexer where
-import Data.Char
-
---
--- Tokens passed to the parser
---
-
-data Token
- = Tsemicolon
- | TopenB
- | TcloseB
- | TopenSB
- | TcloseSB
- | TopenCB
- | TcloseCB
- | Ttowdots
- | Tcomma
- | Tequal
- | Tand
- | Tor
- | Tassing
- | Tadd
- | Tmul
- | Tsub
- | Tdiv
- | Tgt
- | Tlt
- | Tnot
- | Ttrue
- | Tfalse
- | Tint
- | Treal
- | Tbool
- | Tchar
- | Tif
- | Tthen
- | Telse
- | Twhile
- | Tinput
- | Tprint
- | TIdent String
- | TintVal Int
- | TrealVal Float
- deriving Show
-
-lexer [] = []
-lexer (';':cs) = Tsemicolon : lexer cs
-lexer ('(':cs) = TopenB : lexer cs
-lexer (')':cs) = TcloseB : lexer cs
-lexer ('[':cs) = TopenSB : lexer cs
-lexer (']':cs) = TcloseSB : lexer cs
-lexer ('{':cs) = TopenCB : lexer cs
-lexer ('}':cs) = TcloseCB : lexer cs
-lexer (':':cs) = Ttowdots : lexer cs
-lexer (',':cs) = Tcomma : lexer cs
-
-lexer ('=':'=':cs) = Tequal : lexer cs
-lexer ('&':'&':cs) = Tor : lexer cs
-lexer ('|':'|':cs) = Tand : lexer cs
-
-lexer ('=':cs) = Tassing : lexer cs
-lexer ('+':cs) = Tadd : lexer cs
-lexer ('*':cs) = Tmul : lexer cs
-lexer ('-':cs) = Tsub : lexer cs
-lexer ('/':cs) = Tdiv : lexer cs
-lexer ('>':cs) = Tgt : lexer cs
-lexer ('<':cs) = Tlt : lexer cs
-lexer ('!':cs) = Tnot : lexer cs
-
-lexer (c:cs)
- | isSpace c = lexer cs
- | isAlpha c = lexSTR (c:cs)
- | isDigit c = lexINT (c:cs)
-
-lexINT cs =
- case span isDigit cs of
- (var,rest) -> TintVal ((read var)::Int) : lexer rest
-
-
-lexSTR cs =
- case span isLegalChar cs of
- ("true",rest) -> Ttrue : lexer rest
- ("false",rest) -> Tfalse : lexer rest
- ("int",rest) -> Tint : lexer rest
- ("real",rest) -> Treal : lexer rest
- ("bool",rest) -> Tbool : lexer rest
- ("char",rest) -> Tchar : lexer rest
- ("if",rest) -> Tif : lexer rest
- ("then",rest) -> Tthen : lexer rest
- ("else",rest) -> Telse : lexer rest
- ("while",rest) -> Twhile : lexer rest
- ("input",rest) -> Tinput : lexer rest
- ("print",rest) -> Tprint : lexer rest
- (var,rest) -> TIdent var : lexer rest
-
-isLegalChar c = let x = ord c
- in (isAlpha c) || (isDigit c) || (c == '_')
-
-runScan = do s <- readFile "input"
- let t = lexer s
- putStr (show t)
- return () -- (scanner inp))
-
diff --git a/testsuite/tests/ghc-regress/programs/joao-circular/Funcs_Parser_Lazy.hs b/testsuite/tests/ghc-regress/programs/joao-circular/Funcs_Parser_Lazy.hs
deleted file mode 100644
index ec47769beb..0000000000
--- a/testsuite/tests/ghc-regress/programs/joao-circular/Funcs_Parser_Lazy.hs
+++ /dev/null
@@ -1,1549 +0,0 @@
--- parser produced by Happy Version 1.13
-
-module Funcs_Parser_Lazy ( runParser ) where
-
-import Funcs_Lexer
-
-import Data_Lazy
-
-data HappyAbsSyn t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 t15 t16 t17 t18
- = HappyTerminal Token
- | HappyErrorToken Int
- | HappyAbsSyn4 t4
- | HappyAbsSyn5 t5
- | HappyAbsSyn6 t6
- | HappyAbsSyn7 t7
- | HappyAbsSyn8 t8
- | HappyAbsSyn9 t9
- | HappyAbsSyn10 t10
- | HappyAbsSyn11 t11
- | HappyAbsSyn12 t12
- | HappyAbsSyn13 t13
- | HappyAbsSyn14 t14
- | HappyAbsSyn15 t15
- | HappyAbsSyn16 t16
- | HappyAbsSyn17 t17
- | HappyAbsSyn18 t18
-
-action_0 (41) = happyShift action_6
-action_0 (42) = happyShift action_7
-action_0 (43) = happyShift action_8
-action_0 (44) = happyShift action_9
-action_0 (51) = happyShift action_10
-action_0 (4) = happyGoto action_11
-action_0 (5) = happyGoto action_2
-action_0 (6) = happyGoto action_3
-action_0 (7) = happyGoto action_4
-action_0 (18) = happyGoto action_5
-action_0 _ = happyReduce_3
-
-action_1 (41) = happyShift action_6
-action_1 (42) = happyShift action_7
-action_1 (43) = happyShift action_8
-action_1 (44) = happyShift action_9
-action_1 (51) = happyShift action_10
-action_1 (5) = happyGoto action_2
-action_1 (6) = happyGoto action_3
-action_1 (7) = happyGoto action_4
-action_1 (18) = happyGoto action_5
-action_1 _ = happyFail
-
-action_2 _ = happyReduce_1
-
-action_3 (19) = happyShift action_14
-action_3 _ = happyFail
-
-action_4 (51) = happyShift action_10
-action_4 (18) = happyGoto action_13
-action_4 _ = happyFail
-
-action_5 (20) = happyShift action_12
-action_5 _ = happyFail
-
-action_6 _ = happyReduce_7
-
-action_7 _ = happyReduce_8
-
-action_8 _ = happyReduce_9
-
-action_9 _ = happyReduce_10
-
-action_10 _ = happyReduce_51
-
-action_11 (54) = happyAccept
-action_11 _ = happyFail
-
-action_12 (41) = happyShift action_6
-action_12 (42) = happyShift action_7
-action_12 (43) = happyShift action_8
-action_12 (44) = happyShift action_9
-action_12 (7) = happyGoto action_17
-action_12 (8) = happyGoto action_18
-action_12 (9) = happyGoto action_19
-action_12 (10) = happyGoto action_20
-action_12 _ = happyReduce_11
-
-action_13 (22) = happyShift action_16
-action_13 _ = happyReduce_4
-
-action_14 (41) = happyShift action_6
-action_14 (42) = happyShift action_7
-action_14 (43) = happyShift action_8
-action_14 (44) = happyShift action_9
-action_14 (51) = happyShift action_10
-action_14 (5) = happyGoto action_15
-action_14 (6) = happyGoto action_3
-action_14 (7) = happyGoto action_4
-action_14 (18) = happyGoto action_5
-action_14 _ = happyReduce_3
-
-action_15 _ = happyReduce_2
-
-action_16 (52) = happyShift action_24
-action_16 _ = happyFail
-
-action_17 (51) = happyShift action_10
-action_17 (18) = happyGoto action_23
-action_17 _ = happyFail
-
-action_18 (21) = happyShift action_22
-action_18 _ = happyFail
-
-action_19 _ = happyReduce_12
-
-action_20 (27) = happyShift action_21
-action_20 _ = happyReduce_14
-
-action_21 (41) = happyShift action_6
-action_21 (42) = happyShift action_7
-action_21 (43) = happyShift action_8
-action_21 (44) = happyShift action_9
-action_21 (7) = happyGoto action_17
-action_21 (9) = happyGoto action_27
-action_21 (10) = happyGoto action_20
-action_21 _ = happyFail
-
-action_22 (26) = happyShift action_26
-action_22 _ = happyFail
-
-action_23 _ = happyReduce_15
-
-action_24 (23) = happyShift action_25
-action_24 _ = happyFail
-
-action_25 _ = happyReduce_5
-
-action_26 (41) = happyShift action_6
-action_26 (42) = happyShift action_7
-action_26 (43) = happyShift action_8
-action_26 (44) = happyShift action_9
-action_26 (7) = happyGoto action_28
-action_26 _ = happyFail
-
-action_27 _ = happyReduce_13
-
-action_28 (24) = happyShift action_29
-action_28 _ = happyFail
-
-action_29 (41) = happyShift action_6
-action_29 (42) = happyShift action_7
-action_29 (43) = happyShift action_8
-action_29 (44) = happyShift action_9
-action_29 (45) = happyShift action_35
-action_29 (48) = happyShift action_36
-action_29 (49) = happyShift action_37
-action_29 (50) = happyShift action_38
-action_29 (51) = happyShift action_10
-action_29 (7) = happyGoto action_30
-action_29 (11) = happyGoto action_31
-action_29 (12) = happyGoto action_32
-action_29 (15) = happyGoto action_33
-action_29 (18) = happyGoto action_34
-action_29 _ = happyReduce_17
-
-action_30 (51) = happyShift action_10
-action_30 (18) = happyGoto action_59
-action_30 _ = happyFail
-
-action_31 (25) = happyShift action_58
-action_31 _ = happyFail
-
-action_32 (19) = happyShift action_57
-action_32 _ = happyFail
-
-action_33 (31) = happyShift action_56
-action_33 _ = happyFail
-
-action_34 (20) = happyShift action_53
-action_34 (22) = happyShift action_54
-action_34 (31) = happyShift action_55
-action_34 _ = happyFail
-
-action_35 (20) = happyShift action_43
-action_35 (34) = happyShift action_44
-action_35 (38) = happyShift action_45
-action_35 (39) = happyShift action_46
-action_35 (40) = happyShift action_47
-action_35 (51) = happyShift action_10
-action_35 (52) = happyShift action_48
-action_35 (53) = happyShift action_49
-action_35 (13) = happyGoto action_52
-action_35 (14) = happyGoto action_40
-action_35 (15) = happyGoto action_41
-action_35 (18) = happyGoto action_42
-action_35 _ = happyFail
-
-action_36 (20) = happyShift action_43
-action_36 (34) = happyShift action_44
-action_36 (38) = happyShift action_45
-action_36 (39) = happyShift action_46
-action_36 (40) = happyShift action_47
-action_36 (51) = happyShift action_10
-action_36 (52) = happyShift action_48
-action_36 (53) = happyShift action_49
-action_36 (13) = happyGoto action_51
-action_36 (14) = happyGoto action_40
-action_36 (15) = happyGoto action_41
-action_36 (18) = happyGoto action_42
-action_36 _ = happyFail
-
-action_37 (51) = happyShift action_10
-action_37 (18) = happyGoto action_50
-action_37 _ = happyFail
-
-action_38 (20) = happyShift action_43
-action_38 (34) = happyShift action_44
-action_38 (38) = happyShift action_45
-action_38 (39) = happyShift action_46
-action_38 (40) = happyShift action_47
-action_38 (51) = happyShift action_10
-action_38 (52) = happyShift action_48
-action_38 (53) = happyShift action_49
-action_38 (13) = happyGoto action_39
-action_38 (14) = happyGoto action_40
-action_38 (15) = happyGoto action_41
-action_38 (18) = happyGoto action_42
-action_38 _ = happyFail
-
-action_39 (28) = happyShift action_67
-action_39 (29) = happyShift action_68
-action_39 (30) = happyShift action_69
-action_39 (32) = happyShift action_70
-action_39 (33) = happyShift action_71
-action_39 (34) = happyShift action_72
-action_39 (35) = happyShift action_73
-action_39 (36) = happyShift action_74
-action_39 (37) = happyShift action_75
-action_39 _ = happyReduce_25
-
-action_40 _ = happyReduce_26
-
-action_41 _ = happyReduce_42
-
-action_42 (20) = happyShift action_81
-action_42 (22) = happyShift action_54
-action_42 _ = happyReduce_43
-
-action_43 (20) = happyShift action_43
-action_43 (34) = happyShift action_44
-action_43 (38) = happyShift action_45
-action_43 (39) = happyShift action_46
-action_43 (40) = happyShift action_47
-action_43 (51) = happyShift action_10
-action_43 (52) = happyShift action_48
-action_43 (53) = happyShift action_49
-action_43 (13) = happyGoto action_80
-action_43 (14) = happyGoto action_40
-action_43 (15) = happyGoto action_41
-action_43 (18) = happyGoto action_42
-action_43 _ = happyFail
-
-action_44 (20) = happyShift action_43
-action_44 (34) = happyShift action_44
-action_44 (38) = happyShift action_45
-action_44 (39) = happyShift action_46
-action_44 (40) = happyShift action_47
-action_44 (51) = happyShift action_10
-action_44 (52) = happyShift action_48
-action_44 (53) = happyShift action_49
-action_44 (13) = happyGoto action_79
-action_44 (14) = happyGoto action_40
-action_44 (15) = happyGoto action_41
-action_44 (18) = happyGoto action_42
-action_44 _ = happyFail
-
-action_45 (20) = happyShift action_43
-action_45 (34) = happyShift action_44
-action_45 (38) = happyShift action_45
-action_45 (39) = happyShift action_46
-action_45 (40) = happyShift action_47
-action_45 (51) = happyShift action_10
-action_45 (52) = happyShift action_48
-action_45 (53) = happyShift action_49
-action_45 (13) = happyGoto action_78
-action_45 (14) = happyGoto action_40
-action_45 (15) = happyGoto action_41
-action_45 (18) = happyGoto action_42
-action_45 _ = happyFail
-
-action_46 _ = happyReduce_40
-
-action_47 _ = happyReduce_41
-
-action_48 _ = happyReduce_38
-
-action_49 _ = happyReduce_39
-
-action_50 _ = happyReduce_24
-
-action_51 (24) = happyShift action_77
-action_51 (28) = happyShift action_67
-action_51 (29) = happyShift action_68
-action_51 (30) = happyShift action_69
-action_51 (32) = happyShift action_70
-action_51 (33) = happyShift action_71
-action_51 (34) = happyShift action_72
-action_51 (35) = happyShift action_73
-action_51 (36) = happyShift action_74
-action_51 (37) = happyShift action_75
-action_51 _ = happyFail
-
-action_52 (28) = happyShift action_67
-action_52 (29) = happyShift action_68
-action_52 (30) = happyShift action_69
-action_52 (32) = happyShift action_70
-action_52 (33) = happyShift action_71
-action_52 (34) = happyShift action_72
-action_52 (35) = happyShift action_73
-action_52 (36) = happyShift action_74
-action_52 (37) = happyShift action_75
-action_52 (46) = happyShift action_76
-action_52 _ = happyFail
-
-action_53 (20) = happyShift action_43
-action_53 (34) = happyShift action_44
-action_53 (38) = happyShift action_45
-action_53 (39) = happyShift action_46
-action_53 (40) = happyShift action_47
-action_53 (51) = happyShift action_10
-action_53 (52) = happyShift action_48
-action_53 (53) = happyShift action_49
-action_53 (13) = happyGoto action_64
-action_53 (14) = happyGoto action_40
-action_53 (15) = happyGoto action_41
-action_53 (16) = happyGoto action_65
-action_53 (17) = happyGoto action_66
-action_53 (18) = happyGoto action_42
-action_53 _ = happyReduce_47
-
-action_54 (20) = happyShift action_43
-action_54 (34) = happyShift action_44
-action_54 (38) = happyShift action_45
-action_54 (39) = happyShift action_46
-action_54 (40) = happyShift action_47
-action_54 (51) = happyShift action_10
-action_54 (52) = happyShift action_48
-action_54 (53) = happyShift action_49
-action_54 (13) = happyGoto action_63
-action_54 (14) = happyGoto action_40
-action_54 (15) = happyGoto action_41
-action_54 (18) = happyGoto action_42
-action_54 _ = happyFail
-
-action_55 (20) = happyShift action_43
-action_55 (34) = happyShift action_44
-action_55 (38) = happyShift action_45
-action_55 (39) = happyShift action_46
-action_55 (40) = happyShift action_47
-action_55 (51) = happyShift action_10
-action_55 (52) = happyShift action_48
-action_55 (53) = happyShift action_49
-action_55 (13) = happyGoto action_62
-action_55 (14) = happyGoto action_40
-action_55 (15) = happyGoto action_41
-action_55 (18) = happyGoto action_42
-action_55 _ = happyFail
-
-action_56 (20) = happyShift action_43
-action_56 (34) = happyShift action_44
-action_56 (38) = happyShift action_45
-action_56 (39) = happyShift action_46
-action_56 (40) = happyShift action_47
-action_56 (51) = happyShift action_10
-action_56 (52) = happyShift action_48
-action_56 (53) = happyShift action_49
-action_56 (13) = happyGoto action_61
-action_56 (14) = happyGoto action_40
-action_56 (15) = happyGoto action_41
-action_56 (18) = happyGoto action_42
-action_56 _ = happyFail
-
-action_57 (41) = happyShift action_6
-action_57 (42) = happyShift action_7
-action_57 (43) = happyShift action_8
-action_57 (44) = happyShift action_9
-action_57 (45) = happyShift action_35
-action_57 (48) = happyShift action_36
-action_57 (49) = happyShift action_37
-action_57 (50) = happyShift action_38
-action_57 (51) = happyShift action_10
-action_57 (7) = happyGoto action_30
-action_57 (11) = happyGoto action_60
-action_57 (12) = happyGoto action_32
-action_57 (15) = happyGoto action_33
-action_57 (18) = happyGoto action_34
-action_57 _ = happyReduce_17
-
-action_58 _ = happyReduce_6
-
-action_59 _ = happyReduce_18
-
-action_60 _ = happyReduce_16
-
-action_61 (28) = happyShift action_67
-action_61 (29) = happyShift action_68
-action_61 (30) = happyShift action_69
-action_61 (32) = happyShift action_70
-action_61 (33) = happyShift action_71
-action_61 (34) = happyShift action_72
-action_61 (35) = happyShift action_73
-action_61 (36) = happyShift action_74
-action_61 (37) = happyShift action_75
-action_61 _ = happyReduce_20
-
-action_62 (28) = happyShift action_67
-action_62 (29) = happyShift action_68
-action_62 (30) = happyShift action_69
-action_62 (32) = happyShift action_70
-action_62 (33) = happyShift action_71
-action_62 (34) = happyShift action_72
-action_62 (35) = happyShift action_73
-action_62 (36) = happyShift action_74
-action_62 (37) = happyShift action_75
-action_62 _ = happyReduce_19
-
-action_63 (23) = happyShift action_97
-action_63 (28) = happyShift action_67
-action_63 (29) = happyShift action_68
-action_63 (30) = happyShift action_69
-action_63 (32) = happyShift action_70
-action_63 (33) = happyShift action_71
-action_63 (34) = happyShift action_72
-action_63 (35) = happyShift action_73
-action_63 (36) = happyShift action_74
-action_63 (37) = happyShift action_75
-action_63 _ = happyFail
-
-action_64 (27) = happyShift action_96
-action_64 (28) = happyShift action_67
-action_64 (29) = happyShift action_68
-action_64 (30) = happyShift action_69
-action_64 (32) = happyShift action_70
-action_64 (33) = happyShift action_71
-action_64 (34) = happyShift action_72
-action_64 (35) = happyShift action_73
-action_64 (36) = happyShift action_74
-action_64 (37) = happyShift action_75
-action_64 _ = happyReduce_50
-
-action_65 (21) = happyShift action_95
-action_65 _ = happyFail
-
-action_66 _ = happyReduce_48
-
-action_67 (20) = happyShift action_43
-action_67 (34) = happyShift action_44
-action_67 (38) = happyShift action_45
-action_67 (39) = happyShift action_46
-action_67 (40) = happyShift action_47
-action_67 (51) = happyShift action_10
-action_67 (52) = happyShift action_48
-action_67 (53) = happyShift action_49
-action_67 (13) = happyGoto action_94
-action_67 (14) = happyGoto action_40
-action_67 (15) = happyGoto action_41
-action_67 (18) = happyGoto action_42
-action_67 _ = happyFail
-
-action_68 (20) = happyShift action_43
-action_68 (34) = happyShift action_44
-action_68 (38) = happyShift action_45
-action_68 (39) = happyShift action_46
-action_68 (40) = happyShift action_47
-action_68 (51) = happyShift action_10
-action_68 (52) = happyShift action_48
-action_68 (53) = happyShift action_49
-action_68 (13) = happyGoto action_93
-action_68 (14) = happyGoto action_40
-action_68 (15) = happyGoto action_41
-action_68 (18) = happyGoto action_42
-action_68 _ = happyFail
-
-action_69 (20) = happyShift action_43
-action_69 (34) = happyShift action_44
-action_69 (38) = happyShift action_45
-action_69 (39) = happyShift action_46
-action_69 (40) = happyShift action_47
-action_69 (51) = happyShift action_10
-action_69 (52) = happyShift action_48
-action_69 (53) = happyShift action_49
-action_69 (13) = happyGoto action_92
-action_69 (14) = happyGoto action_40
-action_69 (15) = happyGoto action_41
-action_69 (18) = happyGoto action_42
-action_69 _ = happyFail
-
-action_70 (20) = happyShift action_43
-action_70 (34) = happyShift action_44
-action_70 (38) = happyShift action_45
-action_70 (39) = happyShift action_46
-action_70 (40) = happyShift action_47
-action_70 (51) = happyShift action_10
-action_70 (52) = happyShift action_48
-action_70 (53) = happyShift action_49
-action_70 (13) = happyGoto action_91
-action_70 (14) = happyGoto action_40
-action_70 (15) = happyGoto action_41
-action_70 (18) = happyGoto action_42
-action_70 _ = happyFail
-
-action_71 (20) = happyShift action_43
-action_71 (34) = happyShift action_44
-action_71 (38) = happyShift action_45
-action_71 (39) = happyShift action_46
-action_71 (40) = happyShift action_47
-action_71 (51) = happyShift action_10
-action_71 (52) = happyShift action_48
-action_71 (53) = happyShift action_49
-action_71 (13) = happyGoto action_90
-action_71 (14) = happyGoto action_40
-action_71 (15) = happyGoto action_41
-action_71 (18) = happyGoto action_42
-action_71 _ = happyFail
-
-action_72 (20) = happyShift action_43
-action_72 (34) = happyShift action_44
-action_72 (38) = happyShift action_45
-action_72 (39) = happyShift action_46
-action_72 (40) = happyShift action_47
-action_72 (51) = happyShift action_10
-action_72 (52) = happyShift action_48
-action_72 (53) = happyShift action_49
-action_72 (13) = happyGoto action_89
-action_72 (14) = happyGoto action_40
-action_72 (15) = happyGoto action_41
-action_72 (18) = happyGoto action_42
-action_72 _ = happyFail
-
-action_73 (20) = happyShift action_43
-action_73 (34) = happyShift action_44
-action_73 (38) = happyShift action_45
-action_73 (39) = happyShift action_46
-action_73 (40) = happyShift action_47
-action_73 (51) = happyShift action_10
-action_73 (52) = happyShift action_48
-action_73 (53) = happyShift action_49
-action_73 (13) = happyGoto action_88
-action_73 (14) = happyGoto action_40
-action_73 (15) = happyGoto action_41
-action_73 (18) = happyGoto action_42
-action_73 _ = happyFail
-
-action_74 (20) = happyShift action_43
-action_74 (34) = happyShift action_44
-action_74 (38) = happyShift action_45
-action_74 (39) = happyShift action_46
-action_74 (40) = happyShift action_47
-action_74 (51) = happyShift action_10
-action_74 (52) = happyShift action_48
-action_74 (53) = happyShift action_49
-action_74 (13) = happyGoto action_87
-action_74 (14) = happyGoto action_40
-action_74 (15) = happyGoto action_41
-action_74 (18) = happyGoto action_42
-action_74 _ = happyFail
-
-action_75 (20) = happyShift action_43
-action_75 (34) = happyShift action_44
-action_75 (38) = happyShift action_45
-action_75 (39) = happyShift action_46
-action_75 (40) = happyShift action_47
-action_75 (51) = happyShift action_10
-action_75 (52) = happyShift action_48
-action_75 (53) = happyShift action_49
-action_75 (13) = happyGoto action_86
-action_75 (14) = happyGoto action_40
-action_75 (15) = happyGoto action_41
-action_75 (18) = happyGoto action_42
-action_75 _ = happyFail
-
-action_76 (24) = happyShift action_85
-action_76 _ = happyFail
-
-action_77 (41) = happyShift action_6
-action_77 (42) = happyShift action_7
-action_77 (43) = happyShift action_8
-action_77 (44) = happyShift action_9
-action_77 (45) = happyShift action_35
-action_77 (48) = happyShift action_36
-action_77 (49) = happyShift action_37
-action_77 (50) = happyShift action_38
-action_77 (51) = happyShift action_10
-action_77 (7) = happyGoto action_30
-action_77 (11) = happyGoto action_84
-action_77 (12) = happyGoto action_32
-action_77 (15) = happyGoto action_33
-action_77 (18) = happyGoto action_34
-action_77 _ = happyReduce_17
-
-action_78 (28) = happyShift action_67
-action_78 (29) = happyShift action_68
-action_78 (30) = happyShift action_69
-action_78 (32) = happyShift action_70
-action_78 (33) = happyShift action_71
-action_78 (34) = happyShift action_72
-action_78 (35) = happyShift action_73
-action_78 (36) = happyShift action_74
-action_78 (37) = happyShift action_75
-action_78 _ = happyReduce_36
-
-action_79 (28) = happyShift action_67
-action_79 (29) = happyShift action_68
-action_79 (30) = happyShift action_69
-action_79 (32) = happyShift action_70
-action_79 (33) = happyShift action_71
-action_79 (34) = happyShift action_72
-action_79 (35) = happyShift action_73
-action_79 (36) = happyShift action_74
-action_79 (37) = happyShift action_75
-action_79 _ = happyReduce_37
-
-action_80 (21) = happyShift action_83
-action_80 (28) = happyShift action_67
-action_80 (29) = happyShift action_68
-action_80 (30) = happyShift action_69
-action_80 (32) = happyShift action_70
-action_80 (33) = happyShift action_71
-action_80 (34) = happyShift action_72
-action_80 (35) = happyShift action_73
-action_80 (36) = happyShift action_74
-action_80 (37) = happyShift action_75
-action_80 _ = happyFail
-
-action_81 (20) = happyShift action_43
-action_81 (34) = happyShift action_44
-action_81 (38) = happyShift action_45
-action_81 (39) = happyShift action_46
-action_81 (40) = happyShift action_47
-action_81 (51) = happyShift action_10
-action_81 (52) = happyShift action_48
-action_81 (53) = happyShift action_49
-action_81 (13) = happyGoto action_64
-action_81 (14) = happyGoto action_40
-action_81 (15) = happyGoto action_41
-action_81 (17) = happyGoto action_82
-action_81 (18) = happyGoto action_42
-action_81 _ = happyFail
-
-action_82 (21) = happyShift action_101
-action_82 _ = happyFail
-
-action_83 _ = happyReduce_45
-
-action_84 (25) = happyShift action_100
-action_84 _ = happyFail
-
-action_85 (41) = happyShift action_6
-action_85 (42) = happyShift action_7
-action_85 (43) = happyShift action_8
-action_85 (44) = happyShift action_9
-action_85 (45) = happyShift action_35
-action_85 (48) = happyShift action_36
-action_85 (49) = happyShift action_37
-action_85 (50) = happyShift action_38
-action_85 (51) = happyShift action_10
-action_85 (7) = happyGoto action_30
-action_85 (11) = happyGoto action_99
-action_85 (12) = happyGoto action_32
-action_85 (15) = happyGoto action_33
-action_85 (18) = happyGoto action_34
-action_85 _ = happyReduce_17
-
-action_86 (28) = happyShift action_67
-action_86 (29) = happyShift action_68
-action_86 (30) = happyShift action_69
-action_86 (32) = happyShift action_70
-action_86 (33) = happyShift action_71
-action_86 (34) = happyShift action_72
-action_86 (35) = happyShift action_73
-action_86 (36) = happyShift action_74
-action_86 (37) = happyShift action_75
-action_86 _ = happyReduce_35
-
-action_87 (28) = happyShift action_67
-action_87 (29) = happyShift action_68
-action_87 (30) = happyShift action_69
-action_87 (32) = happyShift action_70
-action_87 (33) = happyShift action_71
-action_87 (34) = happyShift action_72
-action_87 (35) = happyShift action_73
-action_87 (36) = happyShift action_74
-action_87 (37) = happyShift action_75
-action_87 _ = happyReduce_34
-
-action_88 (28) = happyShift action_67
-action_88 (29) = happyShift action_68
-action_88 (30) = happyShift action_69
-action_88 (32) = happyShift action_70
-action_88 (33) = happyShift action_71
-action_88 (34) = happyShift action_72
-action_88 (35) = happyShift action_73
-action_88 (36) = happyShift action_74
-action_88 (37) = happyShift action_75
-action_88 _ = happyReduce_30
-
-action_89 (28) = happyShift action_67
-action_89 (29) = happyShift action_68
-action_89 (30) = happyShift action_69
-action_89 (32) = happyShift action_70
-action_89 (33) = happyShift action_71
-action_89 (34) = happyShift action_72
-action_89 (35) = happyShift action_73
-action_89 (36) = happyShift action_74
-action_89 (37) = happyShift action_75
-action_89 _ = happyReduce_28
-
-action_90 (28) = happyShift action_67
-action_90 (29) = happyShift action_68
-action_90 (30) = happyShift action_69
-action_90 (32) = happyShift action_70
-action_90 (33) = happyShift action_71
-action_90 (34) = happyShift action_72
-action_90 (35) = happyShift action_73
-action_90 (36) = happyShift action_74
-action_90 (37) = happyShift action_75
-action_90 _ = happyReduce_29
-
-action_91 (28) = happyShift action_67
-action_91 (29) = happyShift action_68
-action_91 (30) = happyShift action_69
-action_91 (32) = happyShift action_70
-action_91 (33) = happyShift action_71
-action_91 (34) = happyShift action_72
-action_91 (35) = happyShift action_73
-action_91 (36) = happyShift action_74
-action_91 (37) = happyShift action_75
-action_91 _ = happyReduce_27
-
-action_92 (28) = happyShift action_67
-action_92 (29) = happyShift action_68
-action_92 (30) = happyShift action_69
-action_92 (32) = happyShift action_70
-action_92 (33) = happyShift action_71
-action_92 (34) = happyShift action_72
-action_92 (35) = happyShift action_73
-action_92 (36) = happyShift action_74
-action_92 (37) = happyShift action_75
-action_92 _ = happyReduce_32
-
-action_93 (28) = happyShift action_67
-action_93 (29) = happyShift action_68
-action_93 (30) = happyShift action_69
-action_93 (32) = happyShift action_70
-action_93 (33) = happyShift action_71
-action_93 (34) = happyShift action_72
-action_93 (35) = happyShift action_73
-action_93 (36) = happyShift action_74
-action_93 (37) = happyShift action_75
-action_93 _ = happyReduce_31
-
-action_94 (28) = happyShift action_67
-action_94 (29) = happyShift action_68
-action_94 (30) = happyShift action_69
-action_94 (32) = happyShift action_70
-action_94 (33) = happyShift action_71
-action_94 (34) = happyShift action_72
-action_94 (35) = happyShift action_73
-action_94 (36) = happyShift action_74
-action_94 (37) = happyShift action_75
-action_94 _ = happyReduce_33
-
-action_95 _ = happyReduce_21
-
-action_96 (20) = happyShift action_43
-action_96 (34) = happyShift action_44
-action_96 (38) = happyShift action_45
-action_96 (39) = happyShift action_46
-action_96 (40) = happyShift action_47
-action_96 (51) = happyShift action_10
-action_96 (52) = happyShift action_48
-action_96 (53) = happyShift action_49
-action_96 (13) = happyGoto action_64
-action_96 (14) = happyGoto action_40
-action_96 (15) = happyGoto action_41
-action_96 (17) = happyGoto action_98
-action_96 (18) = happyGoto action_42
-action_96 _ = happyFail
-
-action_97 _ = happyReduce_46
-
-action_98 _ = happyReduce_49
-
-action_99 (25) = happyShift action_102
-action_99 _ = happyFail
-
-action_100 _ = happyReduce_22
-
-action_101 _ = happyReduce_44
-
-action_102 (47) = happyShift action_103
-action_102 _ = happyFail
-
-action_103 (24) = happyShift action_104
-action_103 _ = happyFail
-
-action_104 (41) = happyShift action_6
-action_104 (42) = happyShift action_7
-action_104 (43) = happyShift action_8
-action_104 (44) = happyShift action_9
-action_104 (45) = happyShift action_35
-action_104 (48) = happyShift action_36
-action_104 (49) = happyShift action_37
-action_104 (50) = happyShift action_38
-action_104 (51) = happyShift action_10
-action_104 (7) = happyGoto action_30
-action_104 (11) = happyGoto action_105
-action_104 (12) = happyGoto action_32
-action_104 (15) = happyGoto action_33
-action_104 (18) = happyGoto action_34
-action_104 _ = happyReduce_17
-
-action_105 (25) = happyShift action_106
-action_105 _ = happyFail
-
-action_106 _ = happyReduce_23
-
-happyReduce_1 = happySpecReduce_1 4 happyReduction_1
-happyReduction_1 (HappyAbsSyn5 happy_var_1)
- = HappyAbsSyn4
- (C_RootProd_1 happy_var_1
- )
-happyReduction_1 _ = notHappyAtAll
-
-happyReduce_2 = happySpecReduce_3 5 happyReduction_2
-happyReduction_2 (HappyAbsSyn5 happy_var_3)
- _
- (HappyAbsSyn6 happy_var_1)
- = HappyAbsSyn5
- (C_Defs2_1 happy_var_1 happy_var_3
- )
-happyReduction_2 _ _ _ = notHappyAtAll
-
-happyReduce_3 = happySpecReduce_0 5 happyReduction_3
-happyReduction_3 = HappyAbsSyn5
- (C_NoDefs_1
- )
-
-happyReduce_4 = happySpecReduce_2 6 happyReduction_4
-happyReduction_4 (HappyAbsSyn18 happy_var_2)
- (HappyAbsSyn7 happy_var_1)
- = HappyAbsSyn6
- (C_Vardecl_1 happy_var_1 happy_var_2
- )
-happyReduction_4 _ _ = notHappyAtAll
-
-happyReduce_5 = happyReduce 5 6 happyReduction_5
-happyReduction_5 (_ `HappyStk`
- (HappyTerminal (TintVal happy_var_4)) `HappyStk`
- _ `HappyStk`
- (HappyAbsSyn18 happy_var_2) `HappyStk`
- (HappyAbsSyn7 happy_var_1) `HappyStk`
- happyRest)
- = HappyAbsSyn6
- (C_Arraydecl_1 happy_var_1 happy_var_2 (toInteger happy_var_4)
- ) `HappyStk` happyRest
-
-happyReduce_6 = happyReduce 9 6 happyReduction_6
-happyReduction_6 (_ `HappyStk`
- (HappyAbsSyn11 happy_var_8) `HappyStk`
- _ `HappyStk`
- (HappyAbsSyn7 happy_var_6) `HappyStk`
- _ `HappyStk`
- _ `HappyStk`
- (HappyAbsSyn8 happy_var_3) `HappyStk`
- _ `HappyStk`
- (HappyAbsSyn18 happy_var_1) `HappyStk`
- happyRest)
- = HappyAbsSyn6
- (C_Declfunc_1 happy_var_6 happy_var_1 happy_var_3 happy_var_8
- ) `HappyStk` happyRest
-
-happyReduce_7 = happySpecReduce_1 7 happyReduction_7
-happyReduction_7 _
- = HappyAbsSyn7
- (C_Inttype_1
- )
-
-happyReduce_8 = happySpecReduce_1 7 happyReduction_8
-happyReduction_8 _
- = HappyAbsSyn7
- (C_Realtype_1
- )
-
-happyReduce_9 = happySpecReduce_1 7 happyReduction_9
-happyReduction_9 _
- = HappyAbsSyn7
- (C_Booltype_1
- )
-
-happyReduce_10 = happySpecReduce_1 7 happyReduction_10
-happyReduction_10 _
- = HappyAbsSyn7
- (C_Chartype_1
- )
-
-happyReduce_11 = happySpecReduce_0 8 happyReduction_11
-happyReduction_11 = HappyAbsSyn8
- (C_Emptyformpars_1
- )
-
-happyReduce_12 = happySpecReduce_1 8 happyReduction_12
-happyReduction_12 (HappyAbsSyn9 happy_var_1)
- = HappyAbsSyn8
- (happy_var_1
- )
-happyReduction_12 _ = notHappyAtAll
-
-happyReduce_13 = happySpecReduce_3 9 happyReduction_13
-happyReduction_13 (HappyAbsSyn9 happy_var_3)
- _
- (HappyAbsSyn10 happy_var_1)
- = HappyAbsSyn9
- (C_Lstformpars_1 happy_var_1 happy_var_3
- )
-happyReduction_13 _ _ _ = notHappyAtAll
-
-happyReduce_14 = happySpecReduce_1 9 happyReduction_14
-happyReduction_14 (HappyAbsSyn10 happy_var_1)
- = HappyAbsSyn9
- (C_Lstformpars_1 happy_var_1 C_Emptyformpars_1
- )
-happyReduction_14 _ = notHappyAtAll
-
-happyReduce_15 = happySpecReduce_2 10 happyReduction_15
-happyReduction_15 (HappyAbsSyn18 happy_var_2)
- (HappyAbsSyn7 happy_var_1)
- = HappyAbsSyn10
- (C_Declformpar_1 happy_var_1 happy_var_2
- )
-happyReduction_15 _ _ = notHappyAtAll
-
-happyReduce_16 = happySpecReduce_3 11 happyReduction_16
-happyReduction_16 (HappyAbsSyn11 happy_var_3)
- _
- (HappyAbsSyn12 happy_var_1)
- = HappyAbsSyn11
- (C_Lststats_1 happy_var_1 happy_var_3
- )
-happyReduction_16 _ _ _ = notHappyAtAll
-
-happyReduce_17 = happySpecReduce_0 11 happyReduction_17
-happyReduction_17 = HappyAbsSyn11
- (C_Emptystat_1
- )
-
-happyReduce_18 = happySpecReduce_2 12 happyReduction_18
-happyReduction_18 (HappyAbsSyn18 happy_var_2)
- (HappyAbsSyn7 happy_var_1)
- = HappyAbsSyn12
- (C_LocalDecl_1 happy_var_1 happy_var_2
- )
-happyReduction_18 _ _ = notHappyAtAll
-
-happyReduce_19 = happySpecReduce_3 12 happyReduction_19
-happyReduction_19 (HappyAbsSyn13 happy_var_3)
- _
- (HappyAbsSyn18 happy_var_1)
- = HappyAbsSyn12
- (C_Assign_1 happy_var_1 happy_var_3
- )
-happyReduction_19 _ _ _ = notHappyAtAll
-
-happyReduce_20 = happySpecReduce_3 12 happyReduction_20
-happyReduction_20 (HappyAbsSyn13 happy_var_3)
- _
- (HappyAbsSyn15 happy_var_1)
- = HappyAbsSyn12
- (C_ArrAssign_1 happy_var_1 happy_var_3
- )
-happyReduction_20 _ _ _ = notHappyAtAll
-
-happyReduce_21 = happyReduce 4 12 happyReduction_21
-happyReduction_21 (_ `HappyStk`
- (HappyAbsSyn16 happy_var_3) `HappyStk`
- _ `HappyStk`
- (HappyAbsSyn18 happy_var_1) `HappyStk`
- happyRest)
- = HappyAbsSyn12
- (C_Funccall_1 happy_var_1 happy_var_3
- ) `HappyStk` happyRest
-
-happyReduce_22 = happyReduce 5 12 happyReduction_22
-happyReduction_22 (_ `HappyStk`
- (HappyAbsSyn11 happy_var_4) `HappyStk`
- _ `HappyStk`
- (HappyAbsSyn13 happy_var_2) `HappyStk`
- _ `HappyStk`
- happyRest)
- = HappyAbsSyn12
- (C_While_1 happy_var_2 happy_var_4
- ) `HappyStk` happyRest
-
-happyReduce_23 = happyReduce 10 12 happyReduction_23
-happyReduction_23 (_ `HappyStk`
- (HappyAbsSyn11 happy_var_9) `HappyStk`
- _ `HappyStk`
- _ `HappyStk`
- _ `HappyStk`
- (HappyAbsSyn11 happy_var_5) `HappyStk`
- _ `HappyStk`
- _ `HappyStk`
- (HappyAbsSyn13 happy_var_2) `HappyStk`
- _ `HappyStk`
- happyRest)
- = HappyAbsSyn12
- (C_If_t_e_1 happy_var_2 happy_var_5 happy_var_9
- ) `HappyStk` happyRest
-
-happyReduce_24 = happySpecReduce_2 12 happyReduction_24
-happyReduction_24 (HappyAbsSyn18 happy_var_2)
- _
- = HappyAbsSyn12
- (C_Input_1 happy_var_2
- )
-happyReduction_24 _ _ = notHappyAtAll
-
-happyReduce_25 = happySpecReduce_2 12 happyReduction_25
-happyReduction_25 (HappyAbsSyn13 happy_var_2)
- _
- = HappyAbsSyn12
- (C_Print_1 happy_var_2
- )
-happyReduction_25 _ _ = notHappyAtAll
-
-happyReduce_26 = happySpecReduce_1 13 happyReduction_26
-happyReduction_26 (HappyAbsSyn14 happy_var_1)
- = HappyAbsSyn13
- (C_Factor_1 happy_var_1
- )
-happyReduction_26 _ = notHappyAtAll
-
-happyReduce_27 = happySpecReduce_3 13 happyReduction_27
-happyReduction_27 (HappyAbsSyn13 happy_var_3)
- _
- (HappyAbsSyn13 happy_var_1)
- = HappyAbsSyn13
- (C_AddExp_1 happy_var_1 happy_var_3
- )
-happyReduction_27 _ _ _ = notHappyAtAll
-
-happyReduce_28 = happySpecReduce_3 13 happyReduction_28
-happyReduction_28 (HappyAbsSyn13 happy_var_3)
- _
- (HappyAbsSyn13 happy_var_1)
- = HappyAbsSyn13
- (C_SubExp_1 happy_var_1 happy_var_3
- )
-happyReduction_28 _ _ _ = notHappyAtAll
-
-happyReduce_29 = happySpecReduce_3 13 happyReduction_29
-happyReduction_29 (HappyAbsSyn13 happy_var_3)
- _
- (HappyAbsSyn13 happy_var_1)
- = HappyAbsSyn13
- (C_MulExp_1 happy_var_1 happy_var_3
- )
-happyReduction_29 _ _ _ = notHappyAtAll
-
-happyReduce_30 = happySpecReduce_3 13 happyReduction_30
-happyReduction_30 (HappyAbsSyn13 happy_var_3)
- _
- (HappyAbsSyn13 happy_var_1)
- = HappyAbsSyn13
- (C_DivExp_1 happy_var_1 happy_var_3
- )
-happyReduction_30 _ _ _ = notHappyAtAll
-
-happyReduce_31 = happySpecReduce_3 13 happyReduction_31
-happyReduction_31 (HappyAbsSyn13 happy_var_3)
- _
- (HappyAbsSyn13 happy_var_1)
- = HappyAbsSyn13
- (C_AndExp_1 happy_var_1 happy_var_3
- )
-happyReduction_31 _ _ _ = notHappyAtAll
-
-happyReduce_32 = happySpecReduce_3 13 happyReduction_32
-happyReduction_32 (HappyAbsSyn13 happy_var_3)
- _
- (HappyAbsSyn13 happy_var_1)
- = HappyAbsSyn13
- (C_OrExp_1 happy_var_1 happy_var_3
- )
-happyReduction_32 _ _ _ = notHappyAtAll
-
-happyReduce_33 = happySpecReduce_3 13 happyReduction_33
-happyReduction_33 (HappyAbsSyn13 happy_var_3)
- _
- (HappyAbsSyn13 happy_var_1)
- = HappyAbsSyn13
- (C_EqExp_1 happy_var_1 happy_var_3
- )
-happyReduction_33 _ _ _ = notHappyAtAll
-
-happyReduce_34 = happySpecReduce_3 13 happyReduction_34
-happyReduction_34 (HappyAbsSyn13 happy_var_3)
- _
- (HappyAbsSyn13 happy_var_1)
- = HappyAbsSyn13
- (C_GTExp_1 happy_var_1 happy_var_3
- )
-happyReduction_34 _ _ _ = notHappyAtAll
-
-happyReduce_35 = happySpecReduce_3 13 happyReduction_35
-happyReduction_35 (HappyAbsSyn13 happy_var_3)
- _
- (HappyAbsSyn13 happy_var_1)
- = HappyAbsSyn13
- (C_LTExp_1 happy_var_1 happy_var_3
- )
-happyReduction_35 _ _ _ = notHappyAtAll
-
-happyReduce_36 = happySpecReduce_2 13 happyReduction_36
-happyReduction_36 (HappyAbsSyn13 happy_var_2)
- _
- = HappyAbsSyn13
- (C_NotExp_1 happy_var_2
- )
-happyReduction_36 _ _ = notHappyAtAll
-
-happyReduce_37 = happySpecReduce_2 13 happyReduction_37
-happyReduction_37 (HappyAbsSyn13 happy_var_2)
- _
- = HappyAbsSyn13
- (C_MinExp_1 happy_var_2
- )
-happyReduction_37 _ _ = notHappyAtAll
-
-happyReduce_38 = happySpecReduce_1 14 happyReduction_38
-happyReduction_38 (HappyTerminal (TintVal happy_var_1))
- = HappyAbsSyn14
- (C_IntConst_1 (toInteger happy_var_1)
- )
-happyReduction_38 _ = notHappyAtAll
-
-happyReduce_39 = happySpecReduce_1 14 happyReduction_39
-happyReduction_39 (HappyTerminal (TrealVal happy_var_1))
- = HappyAbsSyn14
- (C_RealConst_1 happy_var_1
- )
-happyReduction_39 _ = notHappyAtAll
-
-happyReduce_40 = happySpecReduce_1 14 happyReduction_40
-happyReduction_40 _
- = HappyAbsSyn14
- (C_BoolConst_1 True
- )
-
-happyReduce_41 = happySpecReduce_1 14 happyReduction_41
-happyReduction_41 _
- = HappyAbsSyn14
- (C_BoolConst_1 False
- )
-
-happyReduce_42 = happySpecReduce_1 14 happyReduction_42
-happyReduction_42 (HappyAbsSyn15 happy_var_1)
- = HappyAbsSyn14
- (C_ArrayConst_1 happy_var_1
- )
-happyReduction_42 _ = notHappyAtAll
-
-happyReduce_43 = happySpecReduce_1 14 happyReduction_43
-happyReduction_43 (HappyAbsSyn18 happy_var_1)
- = HappyAbsSyn14
- (C_CNIdent_1 happy_var_1
- )
-happyReduction_43 _ = notHappyAtAll
-
-happyReduce_44 = happyReduce 4 14 happyReduction_44
-happyReduction_44 (_ `HappyStk`
- (HappyAbsSyn17 happy_var_3) `HappyStk`
- _ `HappyStk`
- (HappyAbsSyn18 happy_var_1) `HappyStk`
- happyRest)
- = HappyAbsSyn14
- (C_Funcinv_1 happy_var_1 happy_var_3
- ) `HappyStk` happyRest
-
-happyReduce_45 = happySpecReduce_3 14 happyReduction_45
-happyReduction_45 _
- (HappyAbsSyn13 happy_var_2)
- _
- = HappyAbsSyn14
- (C_Expr_1 happy_var_2
- )
-happyReduction_45 _ _ _ = notHappyAtAll
-
-happyReduce_46 = happyReduce 4 15 happyReduction_46
-happyReduction_46 (_ `HappyStk`
- (HappyAbsSyn13 happy_var_3) `HappyStk`
- _ `HappyStk`
- (HappyAbsSyn18 happy_var_1) `HappyStk`
- happyRest)
- = HappyAbsSyn15
- (C_ArrayInd_1 happy_var_1 happy_var_3
- ) `HappyStk` happyRest
-
-happyReduce_47 = happySpecReduce_0 16 happyReduction_47
-happyReduction_47 = HappyAbsSyn16
- (C_Emptyactpars_1
- )
-
-happyReduce_48 = happySpecReduce_1 16 happyReduction_48
-happyReduction_48 (HappyAbsSyn17 happy_var_1)
- = HappyAbsSyn16
- (happy_var_1
- )
-happyReduction_48 _ = notHappyAtAll
-
-happyReduce_49 = happySpecReduce_3 17 happyReduction_49
-happyReduction_49 (HappyAbsSyn17 happy_var_3)
- _
- (HappyAbsSyn13 happy_var_1)
- = HappyAbsSyn17
- (C_Lstactpars_1 happy_var_1 happy_var_3
- )
-happyReduction_49 _ _ _ = notHappyAtAll
-
-happyReduce_50 = happySpecReduce_1 17 happyReduction_50
-happyReduction_50 (HappyAbsSyn13 happy_var_1)
- = HappyAbsSyn17
- (C_Lstactpars_1 happy_var_1 C_Emptyactpars_1
- )
-happyReduction_50 _ = notHappyAtAll
-
-happyReduce_51 = happySpecReduce_1 18 happyReduction_51
-happyReduction_51 (HappyTerminal (TIdent happy_var_1))
- = HappyAbsSyn18
- (C_Ident_1 happy_var_1
- )
-happyReduction_51 _ = notHappyAtAll
-
-happyNewToken action sts stk [] =
- action 54 54 (error "reading EOF!") (HappyState action) sts stk []
-
-happyNewToken action sts stk (tk:tks) =
- let cont i = action i i tk (HappyState action) sts stk tks in
- case tk of {
- Tsemicolon -> cont 19;
- TopenB -> cont 20;
- TcloseB -> cont 21;
- TopenSB -> cont 22;
- TcloseSB -> cont 23;
- TopenCB -> cont 24;
- TcloseCB -> cont 25;
- Ttowdots -> cont 26;
- Tcomma -> cont 27;
- Tequal -> cont 28;
- Tand -> cont 29;
- Tor -> cont 30;
- Tassing -> cont 31;
- Tadd -> cont 32;
- Tmul -> cont 33;
- Tsub -> cont 34;
- Tdiv -> cont 35;
- Tgt -> cont 36;
- Tlt -> cont 37;
- Tnot -> cont 38;
- Ttrue -> cont 39;
- Tfalse -> cont 40;
- Tint -> cont 41;
- Treal -> cont 42;
- Tbool -> cont 43;
- Tchar -> cont 44;
- Tif -> cont 45;
- Tthen -> cont 46;
- Telse -> cont 47;
- Twhile -> cont 48;
- Tinput -> cont 49;
- Tprint -> cont 50;
- TIdent happy_dollar_dollar -> cont 51;
- TintVal happy_dollar_dollar -> cont 52;
- TrealVal happy_dollar_dollar -> cont 53;
- _ -> happyError tks
- }
-
-happyThen = \m k -> k m
-happyReturn = \a -> a
-happyThen1 = happyThen
-happyReturn1 = \a tks -> a
-
-parser tks = happyThen (happyParse action_0 tks) (\x -> case x of {HappyAbsSyn4 z -> happyReturn z; _other -> notHappyAtAll })
-
-happySeq = happyDontSeq
-
--- happyError :: [Token] -> a
-happyError _ = error ("Parse error in line \n")
-
-
-
--- runParser :: String -> Error
-runParser = parser . lexer
-
-
-testParser :: String -> IO()
-testParser filename
- = do s <- readFile filename
- let tks = lexer s
- putStr (show tks)
- let ast = parser tks
- putStr (show ast)
- return () -- (scanner inp)
-{-# LINE 1 "GenericTemplate.hs" #-}
--- $Id: Funcs_Parser_Lazy.hs,v 1.1 2002/11/19 17:00:02 simonpj Exp $
-
-{-# LINE 15 "GenericTemplate.hs" #-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-infixr 9 `HappyStk`
-data HappyStk a = HappyStk a (HappyStk a)
-
------------------------------------------------------------------------------
--- starting the parse
-
-happyParse start_state = happyNewToken start_state notHappyAtAll notHappyAtAll
-
------------------------------------------------------------------------------
--- Accepting the parse
-
-happyAccept j tk st sts (HappyStk ans _) =
-
- (happyReturn1 ans)
-
------------------------------------------------------------------------------
--- Arrays only: do the next action
-
-{-# LINE 150 "GenericTemplate.hs" #-}
-
-
------------------------------------------------------------------------------
--- HappyState data type (not arrays)
-
-
-
-newtype HappyState b c = HappyState
- (Int -> -- token number
- Int -> -- token number (yes, again)
- b -> -- token semantic value
- HappyState b c -> -- current state
- [HappyState b c] -> -- state stack
- c)
-
-
-
------------------------------------------------------------------------------
--- Shifting a token
-
-happyShift new_state (1) tk st sts stk@(x `HappyStk` _) =
- let i = (case x of { HappyErrorToken (i) -> i }) in
--- trace "shifting the error token" $
- new_state i i tk (HappyState (new_state)) ((st):(sts)) (stk)
-
-happyShift new_state i tk st sts stk =
- happyNewToken new_state ((st):(sts)) ((HappyTerminal (tk))`HappyStk`stk)
-
--- happyReduce is specialised for the common cases.
-
-happySpecReduce_0 i fn (1) tk st sts stk
- = happyFail (1) tk st sts stk
-happySpecReduce_0 nt fn j tk st@((HappyState (action))) sts stk
- = action nt j tk st ((st):(sts)) (fn `HappyStk` stk)
-
-happySpecReduce_1 i fn (1) tk st sts stk
- = happyFail (1) tk st sts stk
-happySpecReduce_1 nt fn j tk _ sts@(((st@(HappyState (action))):(_))) (v1`HappyStk`stk')
- = let r = fn v1 in
- happySeq r (action nt j tk st sts (r `HappyStk` stk'))
-
-happySpecReduce_2 i fn (1) tk st sts stk
- = happyFail (1) tk st sts stk
-happySpecReduce_2 nt fn j tk _ ((_):(sts@(((st@(HappyState (action))):(_))))) (v1`HappyStk`v2`HappyStk`stk')
- = let r = fn v1 v2 in
- happySeq r (action nt j tk st sts (r `HappyStk` stk'))
-
-happySpecReduce_3 i fn (1) tk st sts stk
- = happyFail (1) tk st sts stk
-happySpecReduce_3 nt fn j tk _ ((_):(((_):(sts@(((st@(HappyState (action))):(_))))))) (v1`HappyStk`v2`HappyStk`v3`HappyStk`stk')
- = let r = fn v1 v2 v3 in
- happySeq r (action nt j tk st sts (r `HappyStk` stk'))
-
-happyReduce k i fn (1) tk st sts stk
- = happyFail (1) tk st sts stk
-happyReduce k nt fn j tk st sts stk
- = case happyDrop (k - ((1) :: Int)) sts of
- sts1@(((st1@(HappyState (action))):(_))) ->
- let r = fn stk in -- it doesn't hurt to always seq here...
- happyDoSeq r (action nt j tk st1 sts1 r)
-
-happyMonadReduce k nt fn (1) tk st sts stk
- = happyFail (1) tk st sts stk
-happyMonadReduce k nt fn j tk st sts stk =
- happyThen1 (fn stk) (\r -> action nt j tk st1 sts1 (r `HappyStk` drop_stk))
- where sts1@(((st1@(HappyState (action))):(_))) = happyDrop k ((st):(sts))
- drop_stk = happyDropStk k stk
-
-happyDrop (0) l = l
-happyDrop n ((_):(t)) = happyDrop (n - ((1) :: Int)) t
-
-happyDropStk (0) l = l
-happyDropStk n (x `HappyStk` xs) = happyDropStk (n - ((1)::Int)) xs
-
------------------------------------------------------------------------------
--- Moving to a new state after a reduction
-
-
-
-
-
-
-
-
-
-happyGoto action j tk st = action j j tk (HappyState action)
-
-
------------------------------------------------------------------------------
--- Error recovery ((1) is the error token)
-
--- parse error if we are in recovery and we fail again
-happyFail (1) tk old_st _ stk =
--- trace "failing" $
- happyError
-
-
-{- We don't need state discarding for our restricted implementation of
- "error". In fact, it can cause some bogus parses, so I've disabled it
- for now --SDM
-
--- discard a state
-happyFail (1) tk old_st (((HappyState (action))):(sts))
- (saved_tok `HappyStk` _ `HappyStk` stk) =
--- trace ("discarding state, depth " ++ show (length stk)) $
- action (1) (1) tk (HappyState (action)) sts ((saved_tok`HappyStk`stk))
--}
-
--- Enter error recovery: generate an error token,
--- save the old token and carry on.
-happyFail i tk (HappyState (action)) sts stk =
--- trace "entering error recovery" $
- action (1) (1) tk (HappyState (action)) sts ( (HappyErrorToken (i)) `HappyStk` stk)
-
--- Internal happy errors:
-
-notHappyAtAll = error "Internal Happy error\n"
-
------------------------------------------------------------------------------
--- Hack to get the typechecker to accept our action functions
-
-
-
-
-
-
-
------------------------------------------------------------------------------
--- Seq-ing. If the --strict flag is given, then Happy emits
--- happySeq = happyDoSeq
--- otherwise it emits
--- happySeq = happyDontSeq
-
-happyDoSeq, happyDontSeq :: a -> b -> b
-happyDoSeq a b = a `seq` b
-happyDontSeq a b = b
-
------------------------------------------------------------------------------
--- Don't inline any functions from the template. GHC has a nasty habit
--- of deciding to inline happyGoto everywhere, which increases the size of
--- the generated parser quite a bit.
-
-
-
-
-
-
-
-
-
-{-# NOINLINE happyShift #-}
-{-# NOINLINE happySpecReduce_0 #-}
-{-# NOINLINE happySpecReduce_1 #-}
-{-# NOINLINE happySpecReduce_2 #-}
-{-# NOINLINE happySpecReduce_3 #-}
-{-# NOINLINE happyReduce #-}
-{-# NOINLINE happyMonadReduce #-}
-{-# NOINLINE happyGoto #-}
-{-# NOINLINE happyFail #-}
-
--- end of Happy Template.
diff --git a/testsuite/tests/ghc-regress/programs/joao-circular/LrcPrelude.hs b/testsuite/tests/ghc-regress/programs/joao-circular/LrcPrelude.hs
deleted file mode 100644
index 84daa7fed8..0000000000
--- a/testsuite/tests/ghc-regress/programs/joao-circular/LrcPrelude.hs
+++ /dev/null
@@ -1,72 +0,0 @@
---
--- Lrc Prelude for Haskell/Gofer
---
---
--- by João Saraiva
--- Mon Mar 5
---
-
-module LrcPrelude where
-
-
-type INT = Integer
-type BOOL = Bool
-type STR = String
-type CHAR = Char
-type REAL = Float
-
-
-lrc_REALtoSTR r = show r
-lrc_INTtoSTR i = show i
-sf_INTtoSTR i = show i
-
-data BTree a = Fork !a !(BTree a) !(BTree a)
- | Nil
- deriving (Show, Eq , Ord)
-
-lrc_tree_insert a b Nil = (Fork (a,b) Nil Nil)
-lrc_tree_insert a b (Fork (c,d) l r)
- | a < c = (Fork (c,d) (lrc_tree_insert a b l) r)
- | a == c = (Fork (a,b) l r)
- | a > c = (Fork (c,d) l (lrc_tree_insert a b r))
-
-type MAP a b = (BTree (a,b),b)
-
-lrc_empty_map :: a -> (MAP b a)
-lrc_empty_map a = (Nil , a)
-
-lrc_map_single_update :: (Eq a , Ord a) => a -> b -> (MAP a b) -> (MAP a b)
-lrc_map_single_update a b (t,d) = ((lrc_tree_insert a b t),d)
-
-lrc_map_application :: (Eq a , Ord a) => a -> (MAP a b) -> b
-lrc_map_application a (Nil, b) = b
-lrc_map_application a ((Fork (b,c) l r),d)
- | a == b = c
- | a < b = lrc_map_application a (l,d)
- | a > b = lrc_map_application a (r,d)
-
-
-lrc_map_in :: (Eq a , Ord a) => a -> (MAP a b) -> Bool
-lrc_map_in _ (Nil, _) = False
-lrc_map_in a ((Fork (b,c) l r),d)
- | a == b = True
- | a < b = lrc_map_in a (l,d)
- | a > b = lrc_map_in a (r,d)
-
-lrc_map_update :: (Eq a , Ord a) => (MAP a b) -> (MAP a b) -> (MAP a b)
-lrc_map_update e1 e2 = e1 -- XXXXXXXXXXXXXXXX
-
-
-lrc_string_index :: String -> Int -> Char
-lrc_string_index s i = s!!i
-
-
-lrc_string_sub :: String -> Int -> Int -> String
-lrc_string_sub s i1 i2 = s
-
-lrc_string_opensub s i = s
-
-lrc_strindex s c = 0
-
-repeatCHAR :: a -> Integer -> [a]
-repeatCHAR c i = replicate (fromIntegral i) c
diff --git a/testsuite/tests/ghc-regress/programs/joao-circular/Main.hs b/testsuite/tests/ghc-regress/programs/joao-circular/Main.hs
deleted file mode 100644
index 2202554816..0000000000
--- a/testsuite/tests/ghc-regress/programs/joao-circular/Main.hs
+++ /dev/null
@@ -1,77 +0,0 @@
-module Main (main) where
-
-import System.Environment
-
-import LrcPrelude
-import Funcs_Parser_Lazy
-
-import Data_Lazy
-import Visfun_Lazy
-
-
--- runSemantics :: String -> [BibEntry]
-runSemantics inp pw = lrcEval (runParser inp) pw
-
-
-runEval fn pw
- = do s <- readFile fn
- let (code,errors,te,pp) = runSemantics s pw
-
- putStrLn "Pretty Printed Input:"
- putStrLn pp
- putStrLn "MSP Generated Code:"
- putStrLn (showCode code)
-
- putStrLn "Detected Semantic Errors:"
- putStrLn (show errors)
- putStrLn (show te)
-
--- putStrLn pp_code
- return ()
-
-main :: IO ()
-main = do args <- getArgs
- putStrLn (show args)
- let fn = head args
- let pw = mytoint (head . tail $ args)
- runEval fn pw
-
-mytoint :: String -> Integer
-mytoint s = read s
-
-
-showCode [] = "\n"
-showCode (x:xs) = (showInstr x) ++ "\n" ++ (showCode xs)
-
-showInstr (C_ALabel_1 n) = (show n) ++ ":"
-showInstr C_Add_1 = "ADD"
-showInstr C_And_1 = "AND"
-showInstr (C_Call_1 n) = "CALL " ++ (showName n)
-showInstr C_Cod_1 = "CODIGO"
-showInstr C_Data_1 = "MEMORIA DE DADOS"
-showInstr C_Div_1 = "DIV"
-showInstr C_Eq_1 = "EQ"
-showInstr C_Gt_1 = "GT"
-showInstr C_Halt_1 = "HALT"
-showInstr C_IIn_1 = "IN"
-showInstr C_IOut_1 = "OUT"
-showInstr (C_Jump_1 n) = "JMP " ++ (showName n)
-showInstr (C_Jumpf_1 n) = "JMPF " ++ (showName n)
-showInstr C_Load_1 = "LOAD"
-showInstr C_Lt_1 = "LT"
-showInstr C_Minus_1 = "MIN"
-showInstr C_Mul_1 = "MUL"
-showInstr C_Neq_1 = "NEQ"
-showInstr C_Not_1 = "NOT"
-showInstr C_Or_1 = "OR"
-showInstr (C_Pusha_1 n i) = "PUSHa " ++ (showName n) ++ " " ++ (show i)
-showInstr (C_Pushb_1 b) = "PUSHb " ++ (show b)
-showInstr (C_Pushi_1 i) = "PUSHi " ++ (show i)
-showInstr (C_Pushr_1 r) = "PUSHr " ++ (show r)
-showInstr C_Ret_1 = "RET"
-showInstr C_Store_1 = "STORE"
-showInstr C_Sub_1 = "SUB"
-showInstr (C_Var_1 n i t) = (showName n) ++ " TAM " ++ (show i)
-
-
-showName (C_Ident_1 n) = show n
diff --git a/testsuite/tests/ghc-regress/programs/joao-circular/Makefile b/testsuite/tests/ghc-regress/programs/joao-circular/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/joao-circular/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/joao-circular/README b/testsuite/tests/ghc-regress/programs/joao-circular/README
deleted file mode 100644
index f022b71126..0000000000
--- a/testsuite/tests/ghc-regress/programs/joao-circular/README
+++ /dev/null
@@ -1,6 +0,0 @@
-This program went into an infinite loop when compiled with GHC 5.04.
-
-Input is
-
- ./joao-circular inp 40
-
diff --git a/testsuite/tests/ghc-regress/programs/joao-circular/Visfun_Lazy.hs b/testsuite/tests/ghc-regress/programs/joao-circular/Visfun_Lazy.hs
deleted file mode 100644
index fa768999c0..0000000000
--- a/testsuite/tests/ghc-regress/programs/joao-circular/Visfun_Lazy.hs
+++ /dev/null
@@ -1,1145 +0,0 @@
-module Visfun_Lazy where
-import Data_Lazy
-import LrcPrelude
---
--- Lazy Circular Evaluator Functions
---
-lrcEval = visit_P
-visit_P (C_RootProd_1 t_Defs ) x_pw = (x_code , x_errlst , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = x_fmts_2
- x_typeerrors = x_typeerrors_1
- x_errlst = x_errlst_1
- x_code = ((((:) C_Data_1 (gen_data_mem x_declsout_1))++x_declscode_1)++(((:) C_Cod_1 (genCodeMainFun ))++x_code_1))
- x_infun_1 = 0
- x_env_1 = x_declsout_1
- x_declsin_1 = (lrc_empty_map (C_EmptyEntry_1 ))
- x_pw_2 = x_pw
- t_uu_pp = (C_Best_1 x_uu_pp_1)
- (x_code_1 , x_declscode_1 , x_declsout_1 , x_errlst_1 , x_outfun_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Defs t_Defs x_declsin_1 x_env_1 x_infun_1
- (x_fmts_2 ) = visit_PPRoot t_uu_pp x_pw_2
-visit_Defs (C_Defs2_1 t_Def t_Defs_2 ) x_declsin x_env x_infun = (x_code , x_declscode , x_declsout , x_errlst , x_outfun , x_typeerrors , x_uu_pp )
- where
- x_infun_2 = x_outfun_1
- x_env_2 = x_env
- x_declsin_2 = x_declsout_1
- x_uu_pp = (C_Above_1 x_uu_pp_1 x_uu_pp_2)
- x_typeerrors = (x_typeerrors_1++x_typeerrors_2)
- x_outfun = x_outfun_2
- x_errlst = (x_errlst_1++x_errlst_2)
- x_declsout = x_declsout_2
- x_declscode = (x_declscode_1++x_declscode_2)
- x_code = (x_code_1++x_code_2)
- x_infun_1 = x_infun
- x_env_1 = x_env
- x_declsin_1 = x_declsin
- (x_code_1 , x_declscode_1 , x_declsout_1 , x_errlst_1 , x_outfun_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Def t_Def x_declsin_1 x_env_1 x_infun_1
- (x_code_2 , x_declscode_2 , x_declsout_2 , x_errlst_2 , x_outfun_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Defs t_Defs_2 x_declsin_2 x_env_2 x_infun_2
-visit_Defs (C_NoDefs_1 ) x_declsin x_env x_infun = (x_code , x_declscode , x_declsout , x_errlst , x_outfun , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (C_Empty_1 )
- x_typeerrors = ([] )
- x_outfun = x_infun
- x_errlst = ([] )
- x_declsout = x_declsin
- x_declscode = ([] )
- x_code = ([] )
-visit_Def (C_Arraydecl_1 t_Type t_Name t_INT ) x_declsin x_env x_infun = (x_code , x_declscode , x_declsout , x_errlst , x_outfun , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (C_Beside_1 (ppType t_Type) (C_Beside_1 (C_Text_1 " = ") (C_Beside_1 (ppName t_Name) (C_Text_1 (("["++(lrc_INTtoSTR t_INT))++"]")))))
- x_typeerrors = ([] )
- x_outfun = x_infun
- x_errlst = (if (lrc_map_in t_Name x_declsin) then ((:) (C_E_Name_AD_1 t_Name) ([] )) else ([] ))
- x_declsout = (if (lrc_map_in t_Name x_declsin) then x_declsin else (lrc_map_single_update t_Name (C_Consarray_1 t_Type t_INT x_infun) x_declsin))
- x_declscode = ((:) (C_Var_1 (C_Ident_1 ((nametoSTR t_Name)++(lrc_INTtoSTR x_infun))) t_INT t_Type) ([] ))
- x_code = ([] )
-visit_Def (C_Declfunc_1 t_Type t_Name t_FormPars t_Stats ) x_declsin x_env x_infun = (x_code , x_declscode , x_declsout , x_errlst , x_outfun , x_typeerrors , x_uu_pp )
- where
- x_nlabeli_4 = 1
- x_infun_4 = (x_infun+1)
- x_fid_4 = t_Name
- x_envi_4 = x_env
- x_uu_pp = (func_def_a_la_c (ppType t_Type) (ppName t_Name) x_uu_pp_3 x_uu_pp_4)
- x_typeerrors = x_typeerrors_4
- x_outfun = (x_infun+1)
- x_errlst = (x_err_aux++x_errlst_4)
- x_declsout = (if (lrc_map_in t_Name x_declsin) then x_declsin else (lrc_map_single_update t_Name (C_Consfunc_1 t_Type x_infun x_lst_params_3) x_declsin))
- x_declscode = (((:) (C_Var_1 (C_Ident_1 ((nametoSTR t_Name)++(lrc_INTtoSTR x_infun))) 1 t_Type) (gen_code_func x_infun_4 x_lst_params_3))++x_declscode_4)
- x_code = (((:) (C_ALabel_1 t_Name) x_code_4)++((:) (C_Ret_1 ) []))
- x_error = (if (lrc_map_in t_Name x_declsin) then "" else " <- id already defined!")
- x_err_aux = (if (lrc_map_in t_Name x_declsin) then ((:) (C_E_Name_AD_1 t_Name) x_errlst_3) else x_errlst_3)
- (x_errlst_3 , x_lst_params_3 , x_uu_pp_3 ) = visit_FormPars t_FormPars
- (x_code_4 , x_declscode_4 , x_envo_4 , x_errlst_4 , x_nlabelo_4 , x_typeerrors_4 , x_uu_pp_4 ) = visit_Stats t_Stats x_envi_4 x_fid_4 x_infun_4 x_nlabeli_4
-visit_Def (C_Declfunc_header_1 t_Type t_Name t_FormPars t_Stats ) x_declsin x_env x_infun = (x_code , x_declscode , x_declsout , x_errlst , x_outfun , x_typeerrors , x_uu_pp )
- where
- x_nlabeli_4 = 1
- x_infun_4 = (x_infun+1)
- x_fid_4 = t_Name
- x_envi_4 = x_env
- x_uu_pp = (C_Empty_1 )
- x_typeerrors = x_typeerrors_4
- x_outfun = (x_infun+1)
- x_errlst = (x_err_aux++x_errlst_4)
- x_declsout = (if (lrc_map_in t_Name x_declsin) then x_declsin else (lrc_map_single_update t_Name (C_Consfunc_1 t_Type x_infun x_lst_params_3) x_declsin))
- x_declscode = (((:) (C_Var_1 (C_Ident_1 ((nametoSTR t_Name)++(lrc_INTtoSTR x_infun))) 1 t_Type) (gen_code_func x_infun_4 x_lst_params_3))++x_declscode_4)
- x_code = (((:) (C_ALabel_1 t_Name) x_code_4)++((:) (C_Ret_1 ) []))
- x_error = (if (lrc_map_in t_Name x_declsin) then "" else " <- id already defined!")
- x_err_aux = (if (lrc_map_in t_Name x_declsin) then ((:) (C_E_Name_AD_1 t_Name) x_errlst_3) else x_errlst_3)
- (x_errlst_3 , x_lst_params_3 , x_uu_pp_3 ) = visit_FormPars t_FormPars
- (x_code_4 , x_declscode_4 , x_envo_4 , x_errlst_4 , x_nlabelo_4 , x_typeerrors_4 , x_uu_pp_4 ) = visit_Stats t_Stats x_envi_4 x_fid_4 x_infun_4 x_nlabeli_4
-visit_Def (C_Declfunc_header_novar_1 t_Type t_Name t_FormPars t_Stats ) x_declsin x_env x_infun = (x_code , x_declscode , x_declsout , x_errlst , x_outfun , x_typeerrors , x_uu_pp )
- where
- x_nlabeli_4 = 1
- x_infun_4 = (x_infun+1)
- x_fid_4 = t_Name
- x_envi_4 = x_env
- x_uu_pp = (C_Empty_1 )
- x_typeerrors = x_typeerrors_4
- x_outfun = (x_infun+1)
- x_errlst = (x_err_aux++x_errlst_4)
- x_declsout = (if (lrc_map_in t_Name x_declsin) then x_declsin else (lrc_map_single_update t_Name (C_Consfunc_1 t_Type x_infun x_lst_params_3) x_declsin))
- x_declscode = (((:) (C_Var_1 (C_Ident_1 ((nametoSTR t_Name)++(lrc_INTtoSTR x_infun))) 1 t_Type) (gen_code_func x_infun_4 x_lst_params_3))++x_declscode_4)
- x_code = (((:) (C_ALabel_1 t_Name) x_code_4)++((:) (C_Ret_1 ) []))
- x_error = (if (lrc_map_in t_Name x_declsin) then "" else " <- id already defined!")
- x_err_aux = (if (lrc_map_in t_Name x_declsin) then ((:) (C_E_Name_AD_1 t_Name) x_errlst_3) else x_errlst_3)
- (x_errlst_3 , x_lst_params_3 , x_uu_pp_3 ) = visit_FormPars t_FormPars
- (x_code_4 , x_declscode_4 , x_envo_4 , x_errlst_4 , x_nlabelo_4 , x_typeerrors_4 , x_uu_pp_4 ) = visit_Stats t_Stats x_envi_4 x_fid_4 x_infun_4 x_nlabeli_4
-visit_Def (C_Vardecl_1 t_Type t_Name ) x_declsin x_env x_infun = (x_code , x_declscode , x_declsout , x_errlst , x_outfun , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (C_Beside_1 (ppType t_Type) (C_Beside_1 (C_Text_1 " = ") (ppName t_Name)))
- x_typeerrors = ([] )
- x_outfun = x_infun
- x_errlst = (if (lrc_map_in t_Name x_declsin) then ((:) (C_E_Name_AD_1 t_Name) ([] )) else ([] ))
- x_declsout = (if (lrc_map_in t_Name x_declsin) then x_declsin else (lrc_map_single_update t_Name (C_Consvar_1 t_Type x_infun) x_declsin))
- x_declscode = ((:) (C_Var_1 (C_Ident_1 ((nametoSTR t_Name)++(lrc_INTtoSTR x_infun))) 1 t_Type) ([] ))
- x_code = ([] )
-visit_Type (C_Booltype_1 ) = ()
-visit_Type (C_Chartype_1 ) = ()
-visit_Type (C_Errortype_1 ) = ()
-visit_Type (C_Inttype_1 ) = ()
-visit_Type (C_Realtype_1 ) = ()
-visit_Name (C_Ident_1 t_STR ) = ()
-visit_FormPars (C_Emptyformpars_1 ) = (x_errlst , x_lst_params , x_uu_pp )
- where
- x_uu_pp = (C_Text_1 "")
- x_lst_params = ([] )
- x_errlst = ([] )
-visit_FormPars (C_Lstformpars_1 t_FormPar t_FormPars_2 ) = (x_errlst , x_lst_params , x_uu_pp )
- where
- x_uu_pp = (hv x_uu_pp_1 (C_Beside_1 (C_Text_1 ",") x_uu_pp_2))
- x_lst_params = (x_one_param_1++x_lst_params_2)
- x_errlst = (if (isinlst x_parname_1 x_lst_params_2) then ((:) (C_E_FormParam_AD_1 x_parname_1) x_errlst_2) else x_errlst_2)
- (x_one_param_1 , x_parname_1 , x_uu_pp_1 ) = visit_FormPar t_FormPar
- (x_errlst_2 , x_lst_params_2 , x_uu_pp_2 ) = visit_FormPars t_FormPars_2
-visit_FormPar (C_Declformpar_1 t_Type t_Name ) = (x_one_param , x_parname , x_uu_pp )
- where
- x_uu_pp = (C_Beside_1 (ppType t_Type) (C_Beside_1 (C_Text_1 " ") (ppName t_Name)))
- x_parname = t_Name
- x_one_param = ((:) (C_AParam_1 t_Type t_Name) ([] ))
-visit_Stats (C_Emptystat_1 ) x_envi x_fid x_infun x_nlabeli = (x_code , x_declscode , x_envo , x_errlst , x_nlabelo , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (C_Empty_1 )
- x_typeerrors = ([] )
- x_nlabelo = x_nlabeli
- x_errlst = ([] )
- x_envo = x_envi
- x_declscode = ([] )
- x_code = []
-visit_Stats (C_Lststats_1 t_Stat t_Stats_2 ) x_envi x_fid x_infun x_nlabeli = (x_code , x_declscode , x_envo , x_errlst , x_nlabelo , x_typeerrors , x_uu_pp )
- where
- x_nlabeli_2 = x_nlabelo_1
- x_infun_2 = x_infun
- x_fid_2 = x_fid
- x_envi_2 = x_envo_1
- x_uu_pp = (C_Above_1 (C_Beside_1 x_uu_pp_1 (C_Text_1 ";")) x_uu_pp_2)
- x_typeerrors = (x_typeerrors_1++x_typeerrors_2)
- x_nlabelo = x_nlabelo_2
- x_errlst = (x_errlst_1++x_errlst_2)
- x_envo = x_envo_2
- x_declscode = (x_declscode_1++x_declscode_2)
- x_code = (x_code_1++x_code_2)
- x_upw_Stats_infun_1 = x_infun
- x_nlabeli_1 = x_nlabeli
- x_infun_1 = x_infun
- x_fid_1 = x_fid
- x_envi_1 = x_envi
- (x_code_1 , x_declscode_1 , x_envo_1 , x_errlst_1 , x_nlabelo_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Stat t_Stat x_envi_1 x_fid_1 x_infun_1 x_nlabeli_1 x_upw_Stats_infun_1
- (x_code_2 , x_declscode_2 , x_envo_2 , x_errlst_2 , x_nlabelo_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Stats t_Stats_2 x_envi_2 x_fid_2 x_infun_2 x_nlabeli_2
-visit_Stat (C_ArrAssign_1 t_ArrayUse t_Exp ) x_envi x_fid x_infun x_nlabeli x_upw_Stats_infun = (x_code , x_declscode , x_envo , x_errlst , x_nlabelo , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (C_Beside_1 x_uu_pp_1 (C_Beside_1 (C_Text_1 "[") (C_Beside_1 x_uu_pp_2 (C_Beside_1 (C_Text_1 "] = ") x_uu_pp_2))))
- x_typeerrors = (if (typecheck x_an_1 x_type_2 x_fid x_envi) then x_typeerrors_2 else ((:) (C_E_T_DT_1 x_an_1) x_typeerrors_2))
- x_nlabelo = x_nlabeli
- x_errlst = (x_errlst_1++x_errlst_2)
- x_envo = x_envi
- x_declscode = ([] )
- x_code = (x_code_1++x_code_2)
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_envi
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_envi
- (x_an_1 , x_code_1 , x_errlst_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_ArrayUse t_ArrayUse x_env_1 x_fid_1 x_upw_Stats_infun_1
- (x_code_2 , x_errlst_2 , x_type_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Exp t_Exp x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_Stat (C_Assign_1 t_Name t_Exp ) x_envi x_fid x_infun x_nlabeli x_upw_Stats_infun = (x_code , x_declscode , x_envo , x_errlst , x_nlabelo , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (C_Beside_1 (ppName t_Name) (C_Beside_1 (C_Text_1 " = ") x_uu_pp_2))
- x_typeerrors = (if (x_typerr==(C_NoTypeError_1 )) then x_typeerrors_2 else ((:) x_typerr x_typeerrors_2))
- x_nlabelo = x_nlabeli
- x_errlst = (if (isinenv t_Name x_fid x_envi) then x_errlst_2 else ((:) (C_E_Name_ND_1 t_Name) x_errlst_2))
- x_envo = x_envi
- x_declscode = ([] )
- x_code = (((:) (C_Pusha_1 t_Name x_infun) x_code_2)++((:) (C_Store_1 ) ([] )))
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_envi
- x_typerr = (assign_InfType t_Name x_type_2 x_fid x_envi)
- x_error = (if (isinenv t_Name x_fid x_envi) then ([] ) else ((:) (C_E_Name_ND_1 t_Name) ([] )))
- (x_code_2 , x_errlst_2 , x_type_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Exp t_Exp x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_Stat (C_Funccall_1 t_Name t_ActPars ) x_envi x_fid x_infun x_nlabeli x_upw_Stats_infun = (x_code , x_declscode , x_envo , x_errlst , x_nlabelo , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (funccall (ppName t_Name) x_uu_pp_2)
- x_typeerrors = (checkactparams t_Name x_act_params_2 x_envi)
- x_nlabelo = x_nlabeli
- x_errlst = (if (lrc_map_in t_Name x_envi) then x_errlst_2 else ((:) (C_E_Fun_ND_1 t_Name) x_errlst_2))
- x_envo = x_envi
- x_declscode = ([] )
- x_code = (gen_code_func_inv t_Name x_envi x_code_2)
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_envi
- x_error = (if (lrc_map_in t_Name x_envi) then ([] ) else ((:) (C_E_Fun_ND_1 t_Name) ([] )))
- (x_act_params_2 , x_code_2 , x_errlst_2 , x_uu_pp_2 ) = visit_ActPars t_ActPars x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_Stat (C_If_t_e_1 t_Exp t_Stats t_Stats_2 ) x_envi x_fid x_infun x_nlabeli x_upw_Stats_infun = (x_code , x_declscode , x_envo , x_errlst , x_nlabelo , x_typeerrors , x_uu_pp )
- where
- x_nlabeli_3 = (x_nlabeli+1)
- x_infun_3 = x_infun
- x_fid_3 = x_fid
- x_envi_3 = x_envi
- x_nlabeli_2 = x_nlabelo_3
- x_infun_2 = x_infun
- x_fid_2 = x_fid
- x_envi_2 = x_envi
- x_uu_pp = (if_t_ePP x_uu_pp_1 x_uu_pp_2 x_uu_pp_3)
- x_typeerrors = (if (x_typerr==(C_NoTypeError_1 )) then ((x_typeerrors_1++x_typeerrors_2)++x_typeerrors_3) else ((:) x_typerr ((x_typeerrors_1++x_typeerrors_2)++x_typeerrors_3)))
- x_nlabelo = x_nlabelo_2
- x_errlst = ((x_errlst_1++x_errlst_2)++x_errlst_3)
- x_envo = x_envi
- x_declscode = (x_declscode_2++x_declscode_3)
- x_code = (gen_code_ite x_nlabeli x_code_1 x_code_2 x_code_3)
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_envi
- x_typerr = (if (isboolexp x_type_1) then (C_NoTypeError_1 ) else (C_E_T_if_t_e_1 ))
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp x_env_1 x_fid_1 x_upw_Stats_infun_1
- (x_code_2 , x_declscode_2 , x_envo_2 , x_errlst_2 , x_nlabelo_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Stats t_Stats x_envi_2 x_fid_2 x_infun_2 x_nlabeli_2
- (x_code_3 , x_declscode_3 , x_envo_3 , x_errlst_3 , x_nlabelo_3 , x_typeerrors_3 , x_uu_pp_3 ) = visit_Stats t_Stats_2 x_envi_3 x_fid_3 x_infun_3 x_nlabeli_3
-visit_Stat (C_Input_1 t_Name ) x_envi x_fid x_infun x_nlabeli x_upw_Stats_infun = (x_code , x_declscode , x_envo , x_errlst , x_nlabelo , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (C_Beside_1 (C_Text_1 "input ") (ppName t_Name))
- x_typeerrors = ([] )
- x_nlabelo = x_nlabeli
- x_errlst = (if (isinenv t_Name x_fid x_envi) then ([] ) else ((:) (C_E_Name_ND_1 t_Name) ([] )))
- x_envo = x_envi
- x_declscode = ([] )
- x_code = ((:) (C_Pusha_1 t_Name x_upw_Stats_infun) ((:) (C_IIn_1 ) ((:) (C_Store_1 ) ([] ))))
-visit_Stat (C_LocalDecl_1 t_Type t_Name ) x_envi x_fid x_infun x_nlabeli x_upw_Stats_infun = (x_code , x_declscode , x_envo , x_errlst , x_nlabelo , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (C_Beside_1 (ppType t_Type) (C_Beside_1 (C_Text_1 " ") (ppName t_Name)))
- x_typeerrors = ([] )
- x_nlabelo = x_nlabeli
- x_errlst = (if (lrc_map_in t_Name x_envi) then ((:) (C_E_Loc_Name_AD_1 t_Name) ([] )) else ([] ))
- x_envo = (if (lrc_map_in t_Name x_envi) then x_envi else (lrc_map_single_update t_Name (C_Consvar_1 t_Type x_infun) x_envi))
- x_declscode = ((:) (C_Var_1 t_Name x_infun t_Type) ([] ))
- x_code = ([] )
-visit_Stat (C_Print_1 t_Exp ) x_envi x_fid x_infun x_nlabeli x_upw_Stats_infun = (x_code , x_declscode , x_envo , x_errlst , x_nlabelo , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (C_Beside_1 (C_Text_1 "print ") x_uu_pp_1)
- x_typeerrors = x_typeerrors_1
- x_nlabelo = x_nlabeli
- x_errlst = x_errlst_1
- x_envo = x_envi
- x_declscode = ([] )
- x_code = (x_code_1++((:) (C_IOut_1 ) ([] )))
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_envi
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp x_env_1 x_fid_1 x_upw_Stats_infun_1
-visit_Stat (C_While_1 t_Exp t_Stats ) x_envi x_fid x_infun x_nlabeli x_upw_Stats_infun = (x_code , x_declscode , x_envo , x_errlst , x_nlabelo , x_typeerrors , x_uu_pp )
- where
- x_nlabeli_2 = (x_nlabeli+1)
- x_infun_2 = x_infun
- x_fid_2 = x_fid
- x_envi_2 = x_envi
- x_uu_pp = (whilePP (C_Text_1 "while ") x_uu_pp_1 x_uu_pp_2)
- x_typeerrors = (if (x_typerr==(C_NoTypeError_1 )) then (x_typeerrors_1++x_typeerrors_2) else ((:) x_typerr (x_typeerrors_1++x_typeerrors_2)))
- x_nlabelo = x_nlabelo_2
- x_errlst = (x_errlst_1++x_errlst_2)
- x_envo = x_envi
- x_declscode = x_declscode_2
- x_code = (gen_code_while x_nlabeli x_code_1 x_code_2)
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_envi
- x_typerr = (if (isboolexp x_type_1) then (C_NoTypeError_1 ) else (C_E_T_while_1 ))
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp x_env_1 x_fid_1 x_upw_Stats_infun_1
- (x_code_2 , x_declscode_2 , x_envo_2 , x_errlst_2 , x_nlabelo_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Stats t_Stats x_envi_2 x_fid_2 x_infun_2 x_nlabeli_2
-visit_ArrayUse (C_ArrayInd_1 t_Name t_Exp ) x_env x_fid x_upw_Stats_infun = (x_an , x_code , x_errlst , x_typeerrors , x_uu_pp )
- where
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_env
- x_uu_pp = (C_Beside_1 (ppName t_Name) (C_Beside_1 (C_Text_1 "[") (C_Beside_1 x_uu_pp_2 (C_Text_1 "]"))))
- x_typeerrors = (if (isinttype x_type_2) then x_typeerrors_2 else ((:) (C_E_T_IndArrNotInt_1 ) x_typeerrors_2))
- x_errlst = (if x_noerror then x_errlst_2 else ((:) (C_E_Name_ND_1 t_Name) x_errlst_2))
- x_code = x_code_2
- x_an = t_Name
- x_noerror = (isinenv t_Name x_fid x_env)
- x_error = (if x_noerror then ([] ) else ((:) (C_E_Name_ND_1 t_Name) ([] )))
- (x_code_2 , x_errlst_2 , x_type_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Exp t_Exp x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_Exp (C_AddExp_1 t_Exp_2 t_Exp_3 ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_env
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- x_uu_pp = (hv x_uu_pp_1 (C_Beside_1 (C_Text_1 " + ") x_uu_pp_2))
- x_typeerrors = (if (x_type==(C_Errortype_1 )) then ((:) (C_E_T_BOP_1 ) (x_typeerrors_1++x_typeerrors_2)) else (x_typeerrors_1++x_typeerrors_2))
- x_type = (infType 1 x_type_1 x_type_2)
- x_errlst = (x_errlst_1++x_errlst_2)
- x_code = ((x_code_1++x_code_2)++((:) (C_Add_1 ) ([] )))
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp_2 x_env_1 x_fid_1 x_upw_Stats_infun_1
- (x_code_2 , x_errlst_2 , x_type_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Exp t_Exp_3 x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_Exp (C_AndExp_1 t_Exp_2 t_Exp_3 ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_env
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- x_uu_pp = (hv x_uu_pp_1 (C_Beside_1 (C_Text_1 " && ") x_uu_pp_2))
- x_typeerrors = (if (x_type==(C_Errortype_1 )) then ((:) (C_E_T_BOP_1 ) (x_typeerrors_1++x_typeerrors_2)) else (x_typeerrors_1++x_typeerrors_2))
- x_type = (infType 2 x_type_1 x_type_2)
- x_errlst = (x_errlst_1++x_errlst_2)
- x_code = ((x_code_1++x_code_2)++((:) (C_And_1 ) ([] )))
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp_2 x_env_1 x_fid_1 x_upw_Stats_infun_1
- (x_code_2 , x_errlst_2 , x_type_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Exp t_Exp_3 x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_Exp (C_DivExp_1 t_Exp_2 t_Exp_3 ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_env
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- x_uu_pp = (hv x_uu_pp_1 (C_Beside_1 (C_Text_1 " / ") x_uu_pp_2))
- x_typeerrors = (if (x_type==(C_Errortype_1 )) then ((:) (C_E_T_BOP_1 ) (x_typeerrors_1++x_typeerrors_2)) else (x_typeerrors_1++x_typeerrors_2))
- x_type = (infType 1 x_type_1 x_type_2)
- x_errlst = (x_errlst_1++x_errlst_2)
- x_code = ((x_code_1++x_code_2)++((:) (C_Div_1 ) ([] )))
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp_2 x_env_1 x_fid_1 x_upw_Stats_infun_1
- (x_code_2 , x_errlst_2 , x_type_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Exp t_Exp_3 x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_Exp (C_EqExp_1 t_Exp_2 t_Exp_3 ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_env
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- x_uu_pp = (hv x_uu_pp_1 (C_Beside_1 (C_Text_1 " == ") x_uu_pp_2))
- x_typeerrors = (if (x_type==(C_Errortype_1 )) then ((:) (C_E_T_BOP_1 ) (x_typeerrors_1++x_typeerrors_2)) else (x_typeerrors_1++x_typeerrors_2))
- x_type = (infType 2 x_type_1 x_type_2)
- x_errlst = (x_errlst_1++x_errlst_2)
- x_code = ((x_code_1++x_code_2)++((:) (C_Eq_1 ) ([] )))
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp_2 x_env_1 x_fid_1 x_upw_Stats_infun_1
- (x_code_2 , x_errlst_2 , x_type_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Exp t_Exp_3 x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_Exp (C_Factor_1 t_Fac ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- x_uu_pp = x_uu_pp_1
- x_typeerrors = x_typeerrors_1
- x_type = x_type_1
- x_errlst = x_errlst_1
- x_code = x_code_1
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Fac t_Fac x_env_1 x_fid_1 x_upw_Stats_infun_1
-visit_Exp (C_GTExp_1 t_Exp_2 t_Exp_3 ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_env
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- x_uu_pp = (hv x_uu_pp_1 (C_Beside_1 (C_Text_1 " > ") x_uu_pp_2))
- x_typeerrors = (if (x_type==(C_Errortype_1 )) then ((:) (C_E_T_BOP_1 ) (x_typeerrors_1++x_typeerrors_2)) else (x_typeerrors_1++x_typeerrors_2))
- x_type = (infType 2 x_type_1 x_type_2)
- x_errlst = (x_errlst_1++x_errlst_2)
- x_code = ((x_code_1++x_code_2)++((:) (C_Gt_1 ) ([] )))
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp_2 x_env_1 x_fid_1 x_upw_Stats_infun_1
- (x_code_2 , x_errlst_2 , x_type_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Exp t_Exp_3 x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_Exp (C_LTExp_1 t_Exp_2 t_Exp_3 ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_env
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- x_uu_pp = (hv x_uu_pp_1 (C_Beside_1 (C_Text_1 " < ") x_uu_pp_2))
- x_typeerrors = (if (x_type==(C_Errortype_1 )) then ((:) (C_E_T_BOP_1 ) (x_typeerrors_1++x_typeerrors_2)) else (x_typeerrors_1++x_typeerrors_2))
- x_type = (infType 2 x_type_1 x_type_2)
- x_errlst = (x_errlst_1++x_errlst_2)
- x_code = ((x_code_1++x_code_2)++((:) (C_Lt_1 ) ([] )))
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp_2 x_env_1 x_fid_1 x_upw_Stats_infun_1
- (x_code_2 , x_errlst_2 , x_type_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Exp t_Exp_3 x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_Exp (C_MinExp_1 t_Exp_2 ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- x_uu_pp = (C_Beside_1 (C_Text_1 " - ") x_uu_pp_1)
- x_typeerrors = (if (x_type==(C_Errortype_1 )) then ((:) (C_E_T_NotArithExp_1 ) x_typeerrors_1) else x_typeerrors_1)
- x_type = (if (isaritmexp x_type_1) then x_type_1 else (C_Errortype_1 ))
- x_errlst = x_errlst_1
- x_code = (x_code_1++((:) (C_Minus_1 ) ([] )))
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp_2 x_env_1 x_fid_1 x_upw_Stats_infun_1
-visit_Exp (C_MulExp_1 t_Exp_2 t_Exp_3 ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_env
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- x_uu_pp = (hv x_uu_pp_1 (C_Beside_1 (C_Text_1 " * ") x_uu_pp_2))
- x_typeerrors = (if (x_type==(C_Errortype_1 )) then ((:) (C_E_T_BOP_1 ) (x_typeerrors_1++x_typeerrors_2)) else (x_typeerrors_1++x_typeerrors_2))
- x_type = (infType 1 x_type_1 x_type_2)
- x_errlst = (x_errlst_1++x_errlst_2)
- x_code = ((x_code_1++x_code_2)++((:) (C_Mul_1 ) ([] )))
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp_2 x_env_1 x_fid_1 x_upw_Stats_infun_1
- (x_code_2 , x_errlst_2 , x_type_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Exp t_Exp_3 x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_Exp (C_NotExp_1 t_Exp_2 ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- x_uu_pp = (C_Beside_1 (C_Text_1 " ! ") x_uu_pp_1)
- x_typeerrors = (if (x_type==(C_Errortype_1 )) then ((:) (C_E_T_NotBooleanExp_1 ) x_typeerrors_1) else x_typeerrors_1)
- x_type = (if (isboolexp x_type_1) then x_type_1 else (C_Errortype_1 ))
- x_errlst = x_errlst_1
- x_code = (x_code_1++((:) (C_Not_1 ) ([] )))
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp_2 x_env_1 x_fid_1 x_upw_Stats_infun_1
-visit_Exp (C_OrExp_1 t_Exp_2 t_Exp_3 ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_env
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- x_uu_pp = (hv x_uu_pp_1 (C_Beside_1 (C_Text_1 " || ") x_uu_pp_2))
- x_typeerrors = (if (x_type==(C_Errortype_1 )) then ((:) (C_E_T_BOP_1 ) (x_typeerrors_1++x_typeerrors_2)) else (x_typeerrors_1++x_typeerrors_2))
- x_type = (infType 2 x_type_1 x_type_2)
- x_errlst = (x_errlst_1++x_errlst_2)
- x_code = ((x_code_1++x_code_2)++((:) (C_Or_1 ) ([] )))
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp_2 x_env_1 x_fid_1 x_upw_Stats_infun_1
- (x_code_2 , x_errlst_2 , x_type_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Exp t_Exp_3 x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_Exp (C_SubExp_1 t_Exp_2 t_Exp_3 ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_env
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- x_uu_pp = (hv x_uu_pp_1 (C_Beside_1 (C_Text_1 " - ") x_uu_pp_2))
- x_typeerrors = (if (x_type==(C_Errortype_1 )) then ((:) (C_E_T_BOP_1 ) (x_typeerrors_1++x_typeerrors_2)) else (x_typeerrors_1++x_typeerrors_2))
- x_type = (infType 1 x_type_1 x_type_2)
- x_errlst = (x_errlst_1++x_errlst_2)
- x_code = ((x_code_1++x_code_2)++((:) (C_Sub_1 ) ([] )))
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp_2 x_env_1 x_fid_1 x_upw_Stats_infun_1
- (x_code_2 , x_errlst_2 , x_type_2 , x_typeerrors_2 , x_uu_pp_2 ) = visit_Exp t_Exp_3 x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_Fac (C_ArrayConst_1 t_ArrayUse ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = x_uu_pp_1
- x_typeerrors = x_typeerrors_1
- x_type = (gettype x_an_1 x_fid x_env)
- x_errlst = x_errlst_1
- x_code = x_code_1
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- (x_an_1 , x_code_1 , x_errlst_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_ArrayUse t_ArrayUse x_env_1 x_fid_1 x_upw_Stats_infun_1
-visit_Fac (C_BoolConst_1 t_BOOL ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (C_Text_1 (if t_BOOL then "true" else "false") )
- x_typeerrors = ([] )
- x_type = (C_Booltype_1 )
- x_errlst = ([] )
- x_code = ((:) (C_Pushb_1 t_BOOL) ([] ))
-visit_Fac (C_CNIdent_1 t_Name ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (ppName t_Name)
- x_typeerrors = ([] )
- x_type = (gettype t_Name x_fid x_env)
- x_errlst = (if (isinenv t_Name x_fid x_env) then ([] ) else ((:) (C_E_Name_ND_1 t_Name) ([] )))
- x_code = ((:) (C_Pusha_1 t_Name x_upw_Stats_infun) ((:) (C_Load_1 ) ([] )))
-visit_Fac (C_Expr_1 t_Exp ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = x_uu_pp_1
- x_typeerrors = x_typeerrors_1
- x_type = x_type_1
- x_errlst = x_errlst_1
- x_code = x_code_1
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp x_env_1 x_fid_1 x_upw_Stats_infun_1
-visit_Fac (C_Funcinv_1 t_Name t_ActPars ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (funccall (ppName t_Name) x_uu_pp_2)
- x_typeerrors = (checkactparams t_Name x_act_params_2 x_env)
- x_type = (gettype t_Name x_fid x_env)
- x_errlst = (x_error++x_errlst_2)
- x_code = (gen_code_func_inv t_Name x_env x_code_2)
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_env
- x_noerror = (lrc_map_in t_Name x_env)
- x_error = (if x_noerror then ([] ) else ((:) (C_E_Fun_ND_1 t_Name) ([] )))
- (x_act_params_2 , x_code_2 , x_errlst_2 , x_uu_pp_2 ) = visit_ActPars t_ActPars x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_Fac (C_IntConst_1 t_INT ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (C_Text_1 (lrc_INTtoSTR t_INT))
- x_typeerrors = ([] )
- x_type = (C_Inttype_1 )
- x_errlst = ([] )
- x_code = ((:) (C_Pushi_1 t_INT) ([] ))
-visit_Fac (C_RealConst_1 t_REAL ) x_env x_fid x_upw_Stats_infun = (x_code , x_errlst , x_type , x_typeerrors , x_uu_pp )
- where
- x_uu_pp = (C_Text_1 (lrc_REALtoSTR t_REAL))
- x_typeerrors = ([] )
- x_type = (C_Realtype_1 )
- x_errlst = ([] )
- x_code = ((:) (C_Pushr_1 t_REAL) ([] ))
-visit_ActPars (C_Emptyactpars_1 ) x_env x_fid x_upw_Stats_infun = (x_act_params , x_code , x_errlst , x_uu_pp )
- where
- x_uu_pp = (C_Empty_1 )
- x_errlst = ([] )
- x_code = ([] )
- x_act_params = ([] )
-visit_ActPars (C_Lstactpars_1 t_Exp t_ActPars_2 ) x_env x_fid x_upw_Stats_infun = (x_act_params , x_code , x_errlst , x_uu_pp )
- where
- x_upw_Stats_infun_1 = x_upw_Stats_infun
- x_fid_1 = x_fid
- x_env_1 = x_env
- x_upw_Stats_infun_2 = x_upw_Stats_infun
- x_fid_2 = x_fid
- x_env_2 = x_env
- x_uu_pp = (hv x_uu_pp_1 x_uu_pp_2)
- x_errlst = (x_errlst_1++x_errlst_2)
- x_code = ((:) x_code_1 x_code_2)
- x_act_params = ((:) x_type_1 x_act_params_2)
- (x_code_1 , x_errlst_1 , x_type_1 , x_typeerrors_1 , x_uu_pp_1 ) = visit_Exp t_Exp x_env_1 x_fid_1 x_upw_Stats_infun_1
- (x_act_params_2 , x_code_2 , x_errlst_2 , x_uu_pp_2 ) = visit_ActPars t_ActPars_2 x_env_2 x_fid_2 x_upw_Stats_infun_2
-visit_PPRoot (C_All_1 t_PPS ) x_pw = (x_fmts )
- where
- x_frame_1 = (C_F_1 x_pw x_pw)
- x_fmts = (eq_all_fmts x_pw x_fmts_1)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 ) = visit_PPS t_PPS x_frame_1
-visit_PPRoot (C_Best_1 t_PPS ) x_pw = (x_fmts )
- where
- x_frame_1 = (C_F_1 x_pw x_pw)
- x_fmts = (eq_best_fmts x_pw x_fmts_1)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 ) = visit_PPS t_PPS x_frame_1
-visit_PPS (C_Above_1 t_PPS_2 t_PPS_3 ) x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw )
- where
- x_frame_2 = x_frame
- x_frame_1 = x_frame
- x_minw = (max x_minw_1 x_minw_2)
- x_minll = x_minll_2
- x_maxh = (x_maxh_1+x_maxh_2)
- x_fmts = (fst_Pair_T_Formats x_fe)
- x_error = ((x_error_1||x_error_2)||x_aerror)
- x_fe = (set_fmts_above x_fmts_1 x_fmts_2 x_maxh_1 x_maxh_2)
- x_aerror = (snd_Pair_T_Formats x_fe)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 ) = visit_PPS t_PPS_2 x_frame_1
- (x_error_2 , x_fmts_2 , x_maxh_2 , x_minll_2 , x_minw_2 ) = visit_PPS t_PPS_3 x_frame_2
-visit_PPS (C_Apply_1 t_PPC t_PPSArgs ) x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw )
- where
- x_reqs_2 = x_reqs_1
- x_minw = (set_var_apply x_error_cond x_lem x_minw_1)
- x_minll = (set_var_apply x_error_cond x_lem x_minll_1)
- x_maxh = (set_var_apply x_error_cond 1 x_maxh_1)
- x_fmts = (eq_set_fmts_apply x_error_cond x_error_msg x_fmts_1)
- x_error = x_l_error
- x_frame_1 = x_frame
- x_fillmins_1 = x_mins_2
- x_fillfmts_1 = x_fmts_2
- x_fillerrs_1 = x_error_2
- x_lem = (fromIntegral (length x_error_msg))
- x_l_error = (if x_error_cond then True else x_error_1)
- x_error_msg = (set_error_msg x_numpars_1 x_len_2)
- x_error_cond = (x_numpars_1/=x_len_2)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 , x_numpars_1 , x_reqs_1 ) = visit_PPC t_PPC x_fillerrs_1 x_fillfmts_1 x_fillmins_1 x_frame_1
- (x_error_2 , x_fmts_2 , x_len_2 , x_mins_2 ) = visit_PPSArgs t_PPSArgs x_reqs_2
-visit_PPS (C_Beside_1 t_PPS_2 t_PPS_3 ) x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw )
- where
- x_frame_2 = (narrow_frame x_minll_1 x_frame)
- x_frame_1 = (narrow_ll x_minw_2 x_frame)
- x_minw = (max x_minw_1 (x_minll_1+x_minw_2))
- x_minll = (x_minll_1+x_minll_2)
- x_maxh = (beside_height x_maxh_1 x_maxh_2)
- x_fmts = (fst_Pair_T_Formats x_fe)
- x_error = (x_l_error||x_berror)
- x_l_error = (x_error_1||x_error_2)
- x_fe = (set_fmts_beside x_fmts_1 x_fmts_2 x_maxh_1 x_maxh_2 x_frame x_l_error)
- x_berror = (snd_Pair_T_Formats x_fe)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 ) = visit_PPS t_PPS_2 x_frame_1
- (x_error_2 , x_fmts_2 , x_maxh_2 , x_minll_2 , x_minw_2 ) = visit_PPS t_PPS_3 x_frame_2
-visit_PPS (C_Dup_1 t_PPS_2 t_PPS_3 ) x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw )
- where
- x_frame_2 = x_frame
- x_frame_1 = x_frame
- x_minw = x_l_minw
- x_minll = (min x_minll_1 x_minll_2)
- x_maxh = (max x_maxh_1 x_maxh_2)
- x_fmts = (sem_fmts_dup x_fmts_1 x_fmts_2 x_error_1 x_error_2 x_l_minw)
- x_error = x_l_error
- x_l_minw = (min x_minw_1 x_minw_2)
- x_l_error = (x_error_1 && x_error_2)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 ) = visit_PPS t_PPS_2 x_frame_1
- (x_error_2 , x_fmts_2 , x_maxh_2 , x_minll_2 , x_minw_2 ) = visit_PPS t_PPS_3 x_frame_2
-visit_PPS (C_Empty_1 ) x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw )
- where
- x_minw = 0
- x_minll = 0
- x_maxh = 0
- x_fmts = (set_fmts_empty )
- x_error = False
-visit_PPS (C_FillBlock_1 t_INT t_FillList ) x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw )
- where
- x_minw = x_minw_2
- x_minll = x_minll_2
- x_maxh = x_maxh_2
- x_fmts = (set_fmts_fillblock t_INT x_fmts_2 x_l_pw)
- x_error = (((t_INT<0)||(t_INT>x_l_pw))||x_error_2)
- x_pw_2 = t_INT
- x_minwi_2 = 0
- x_minlli_2 = 0
- x_maxhi_2 = 0
- x_frame_2 = (C_F_1 t_INT t_INT)
- x_fmtsi_2 = (empty_fmts )
- x_errori_2 = False
- x_l_pw = case x_frame of { (C_F_1 w _) -> w }
- (x_error_2 , x_fmts_2 , x_maxh_2 , x_minll_2 , x_minw_2 ) = visit_FillList t_FillList x_errori_2 x_fmtsi_2 x_frame_2 x_maxhi_2 x_minlli_2 x_minwi_2 x_pw_2
-visit_PPS (C_Filla_1 t_FillList ) x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw )
- where
- x_minw = x_minw_1
- x_minll = x_minll_1
- x_maxh = x_maxh_1
- x_fmts = (eq_set_fmts_fill x_fmts_1)
- x_error = x_error_1
- x_pw_1 = x_l_pw
- x_minwi_1 = 0
- x_minlli_1 = 0
- x_maxhi_1 = 0
- x_frame_1 = (C_F_1 x_l_pw x_l_pw)
- x_fmtsi_1 = (empty_fmts )
- x_errori_1 = False
- x_l_pw = case x_frame of { (C_F_1 w _) -> w }
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 ) = visit_FillList t_FillList x_errori_1 x_fmtsi_1 x_frame_1 x_maxhi_1 x_minlli_1 x_minwi_1 x_pw_1
-visit_PPS (C_Indent_1 t_INT t_PPS_2 ) x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw )
- where
- x_frame_2 = (narrow_frame t_INT x_frame)
- x_minw = x_l_minw
- x_minll = (t_INT+x_minll_2)
- x_maxh = x_maxh_2
- x_fmts = (set_fmts_indent t_INT x_fmts_2 x_pw x_l_minw x_frame x_error_2)
- x_error = (((t_INT<0)||(t_INT>x_pw))||x_error_2)
- x_pw = case x_frame of { (C_F_1 w _) -> w }
- x_l_minw = (t_INT+x_minw_2)
- (x_error_2 , x_fmts_2 , x_maxh_2 , x_minll_2 , x_minw_2 ) = visit_PPS t_PPS_2 x_frame_2
-visit_PPS (C_Join_1 t_PPS_2 ) x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw )
- where
- x_frame_1 = x_frame
- x_minw = x_minw_1
- x_minll = x_minll_1
- x_maxh = x_maxh_1
- x_fmts = (fst_Pair_T_Formats x_fe)
- x_error = (x_error_1||x_jerror)
- x_jerror = (snd_Pair_T_Formats x_fe)
- x_fe = (set_fmts_join x_fmts_1 x_error_1)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 ) = visit_PPS t_PPS_2 x_frame_1
-visit_PPS (C_Text_1 t_STR ) x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw )
- where
- x_minw = x_l_minw
- x_minll = x_l_minw
- x_maxh = 1
- x_fmts = (set_fmts_text t_STR x_l_minw x_l_error)
- x_error = x_l_error
- x_pw = case x_frame of { (C_F_1 w _) -> w }
- x_l_minw = (fromIntegral (length t_STR))
- x_l_error = (x_l_minw>x_pw)
-visit_PPC (C_AboveC_1 t_PPC_2 t_PPC_3 ) x_fillerrs x_fillfmts x_fillmins x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw , x_numpars , x_reqs )
- where
- x_frame_2 = x_frame
- x_fillmins_2 = (snd_Pair_Lst_T_Mins x_i)
- x_fillfmts_2 = (snd_Pair_Lst_T_Fmts x_m)
- x_fillerrs_2 = (snd_Pair_Lst_T_Errs x_e)
- x_frame_1 = x_frame
- x_fillmins_1 = (fst_Pair_Lst_T_Mins x_i)
- x_fillfmts_1 = (fst_Pair_Lst_T_Fmts x_m)
- x_fillerrs_1 = (fst_Pair_Lst_T_Errs x_e)
- x_reqs = (x_reqs_1++x_reqs_2)
- x_numpars = (x_numpars_1+x_numpars_2)
- x_minw = (max x_minw_1 x_minw_2)
- x_minll = x_minll_2
- x_maxh = (x_maxh_1+x_maxh_2)
- x_fmts = (fst_Pair_T_Formats x_fe)
- x_error = ((x_error_1||x_error_2)||x_aerror)
- x_m = (splitAt_T_Fmts (fromIntegral x_numpars_1) x_fillfmts)
- x_i = (splitAt_T_Mins (fromIntegral x_numpars_1) x_fillmins)
- x_fe = (set_fmts_above x_fmts_1 x_fmts_2 x_maxh_1 x_maxh_2)
- x_e = (splitAt_T_Errs (fromIntegral x_numpars_1) x_fillerrs)
- x_aerror = (snd_Pair_T_Formats x_fe)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 , x_numpars_1 , x_reqs_1 ) = visit_PPC t_PPC_2 x_fillerrs_1 x_fillfmts_1 x_fillmins_1 x_frame_1
- (x_error_2 , x_fmts_2 , x_maxh_2 , x_minll_2 , x_minw_2 , x_numpars_2 , x_reqs_2 ) = visit_PPC t_PPC_3 x_fillerrs_2 x_fillfmts_2 x_fillmins_2 x_frame_2
-visit_PPC (C_ApplyC_1 t_PPC_2 t_PPCArgs ) x_fillerrs x_fillfmts x_fillmins x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw , x_numpars , x_reqs )
- where
- x_ireqs_2 = x_reqs_1
- x_ifillmins_2 = x_fillmins
- x_ifillfmts_2 = x_fillfmts
- x_ifillerrs_2 = x_fillerrs
- x_frame_1 = x_frame
- x_fillmins_1 = x_fillmins_2
- x_fillfmts_1 = x_fmts_2
- x_fillerrs_1 = x_error_2
- x_reqs = x_reqs_2
- x_numpars = x_numpars_2
- x_minw = (set_var_apply x_error_cond x_lem x_minw_1)
- x_minll = (set_var_apply x_error_cond x_lem x_minll_1)
- x_maxh = (set_var_apply x_error_cond 1 x_maxh_1)
- x_fmts = (eq_set_fmts_apply x_error_cond x_error_msg x_fmts_1)
- x_error = x_l_error
- x_lem = (fromIntegral (length x_error_msg))
- x_l_error = (if x_error_cond then True else x_error_1)
- x_error_msg = (set_error_msg x_numpars_1 x_len_2)
- x_error_cond = (x_numpars_2/=x_len_2)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 , x_numpars_1 , x_reqs_1 ) = visit_PPC t_PPC_2 x_fillerrs_1 x_fillfmts_1 x_fillmins_1 x_frame_1
- (x_error_2 , x_fillmins_2 , x_fmts_2 , x_len_2 , x_numpars_2 , x_reqs_2 ) = visit_PPCArgs t_PPCArgs x_ifillerrs_2 x_ifillfmts_2 x_ifillmins_2 x_ireqs_2
-visit_PPC (C_BesideC_1 t_PPC_2 t_PPC_3 ) x_fillerrs x_fillfmts x_fillmins x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw , x_numpars , x_reqs )
- where
- x_frame_2 = (narrow_frame x_minll_1 x_frame)
- x_fillmins_2 = (snd_Pair_Lst_T_Mins x_i)
- x_fillfmts_2 = (snd_Pair_Lst_T_Fmts x_m)
- x_fillerrs_2 = (snd_Pair_Lst_T_Errs x_e)
- x_frame_1 = (narrow_ll x_minw_2 x_frame)
- x_fillmins_1 = (fst_Pair_Lst_T_Mins x_i)
- x_fillfmts_1 = (fst_Pair_Lst_T_Fmts x_m)
- x_fillerrs_1 = (fst_Pair_Lst_T_Errs x_e)
- x_reqs = (x_reqs_1++x_reqs_2)
- x_numpars = (x_numpars_1+x_numpars_2)
- x_minw = (max x_minw_1 (x_minll_1+x_minw_2))
- x_minll = (x_minll_1+x_minll_2)
- x_maxh = (beside_height x_maxh_1 x_maxh_2)
- x_fmts = (fst_Pair_T_Formats x_fe)
- x_error = (x_l_error||x_berror)
- x_m = (splitAt_T_Fmts (fromIntegral x_numpars_1) x_fillfmts)
- x_l_error = (x_error_1||x_error_2)
- x_i = (splitAt_T_Mins (fromIntegral x_numpars_1) x_fillmins)
- x_fe = (set_fmts_beside x_fmts_1 x_fmts_2 x_maxh_1 x_maxh_2 x_frame x_l_error)
- x_e = (splitAt_T_Errs (fromIntegral x_numpars_1) x_fillerrs)
- x_berror = (snd_Pair_T_Formats x_fe)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 , x_numpars_1 , x_reqs_1 ) = visit_PPC t_PPC_2 x_fillerrs_1 x_fillfmts_1 x_fillmins_1 x_frame_1
- (x_error_2 , x_fmts_2 , x_maxh_2 , x_minll_2 , x_minw_2 , x_numpars_2 , x_reqs_2 ) = visit_PPC t_PPC_3 x_fillerrs_2 x_fillfmts_2 x_fillmins_2 x_frame_2
-visit_PPC (C_DupC_1 t_PPC_2 t_PPC_3 ) x_fillerrs x_fillfmts x_fillmins x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw , x_numpars , x_reqs )
- where
- x_frame_2 = x_frame
- x_fillmins_2 = x_fillmins
- x_fillfmts_2 = x_fillfmts
- x_fillerrs_2 = x_fillerrs
- x_frame_1 = x_frame
- x_fillmins_1 = x_fillmins
- x_fillfmts_1 = x_fillfmts
- x_fillerrs_1 = x_fillerrs
- x_reqs = (eq_DupC x_reqs_1 x_reqs_2)
- x_numpars = x_numpars_1
- x_minw = x_l_minw
- x_minll = (min x_minll_1 x_minll_2)
- x_maxh = (max x_maxh_1 x_maxh_2)
- x_fmts = (sem_fmts_cdup x_fmts_1 x_fmts_2 x_error_1 x_error_2 x_numpars_1 x_numpars_2 x_l_minw x_error_msg)
- x_error = x_l_error
- x_l_minw = (min x_minw_1 x_minw_2)
- x_l_error = ((x_numpars_1/=x_numpars_2)||(x_error_1 && x_error_2))
- x_error_msg = (eq_set_error_msg x_numpars_1 x_numpars_2)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 , x_numpars_1 , x_reqs_1 ) = visit_PPC t_PPC_2 x_fillerrs_1 x_fillfmts_1 x_fillmins_1 x_frame_1
- (x_error_2 , x_fmts_2 , x_maxh_2 , x_minll_2 , x_minw_2 , x_numpars_2 , x_reqs_2 ) = visit_PPC t_PPC_3 x_fillerrs_2 x_fillfmts_2 x_fillmins_2 x_frame_2
-visit_PPC (C_IndentC_1 t_INT t_PPC_2 ) x_fillerrs x_fillfmts x_fillmins x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw , x_numpars , x_reqs )
- where
- x_frame_2 = (narrow_frame t_INT x_frame)
- x_fillmins_2 = x_fillmins
- x_fillfmts_2 = x_fillfmts
- x_fillerrs_2 = x_fillerrs
- x_reqs = x_reqs_2
- x_numpars = x_numpars_2
- x_minw = x_l_minw
- x_minll = (t_INT+x_minll_2)
- x_maxh = x_maxh_2
- x_fmts = (set_fmts_indent t_INT x_fmts_2 x_pw x_l_minw x_frame x_error_2)
- x_error = (((t_INT<0)||(t_INT>x_pw))||x_error_2)
- x_pw = case x_frame of { (C_F_1 w _) -> w }
- x_l_minw = (t_INT+x_minw_2)
- (x_error_2 , x_fmts_2 , x_maxh_2 , x_minll_2 , x_minw_2 , x_numpars_2 , x_reqs_2 ) = visit_PPC t_PPC_2 x_fillerrs_2 x_fillfmts_2 x_fillmins_2 x_frame_2
-visit_PPC (C_JoinC_1 t_PPC_2 ) x_fillerrs x_fillfmts x_fillmins x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw , x_numpars , x_reqs )
- where
- x_frame_1 = x_frame
- x_fillmins_1 = x_fillmins
- x_fillfmts_1 = x_fillfmts
- x_fillerrs_1 = x_fillerrs
- x_reqs = x_reqs_1
- x_numpars = x_numpars_1
- x_minw = x_minw_1
- x_minll = x_minll_1
- x_maxh = x_maxh_1
- x_fmts = (fst_Pair_T_Formats x_fe)
- x_error = (x_error_1||x_jerror)
- x_jerror = (snd_Pair_T_Formats x_fe)
- x_fe = (set_fmts_join x_fmts_1 x_error_1)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 , x_numpars_1 , x_reqs_1 ) = visit_PPC t_PPC_2 x_fillerrs_1 x_fillfmts_1 x_fillmins_1 x_frame_1
-visit_PPC (C_ParC_1 ) x_fillerrs x_fillfmts x_fillmins x_frame = (x_error , x_fmts , x_maxh , x_minll , x_minw , x_numpars , x_reqs )
- where
- x_reqs = ((:) x_frame ([] ))
- x_numpars = 1
- x_minw = (fst_t x_l_m)
- x_minll = (snd_t x_l_m)
- x_maxh = (third_t x_l_m)
- x_fmts = (head_T_Fmts x_fillfmts)
- x_error = x_l_error
- x_l_m = (head_T_Mins x_fillmins)
- x_l_error = (head_T_Errs x_fillerrs)
-visit_PPCArgs (C_ConsPPCArgs_1 t_PPC t_PPCArgs_2 ) x_ifillerrs x_ifillfmts x_ifillmins x_ireqs = (x_error , x_fillmins , x_fmts , x_len , x_numpars , x_reqs )
- where
- x_ireqs_2 = (tail_T_Reqs x_ireqs)
- x_ifillmins_2 = (snd_Pair_Lst_T_Mins x_i)
- x_ifillfmts_2 = (snd_Pair_Lst_T_Fmts x_m)
- x_ifillerrs_2 = (snd_Pair_Lst_T_Errs x_e)
- x_reqs = (x_reqs_1++x_reqs_2)
- x_numpars = (x_numpars_1+x_numpars_2)
- x_len = (x_len_2+1)
- x_fmts = ((:) x_fmts_1 x_fmts_2)
- x_fillmins = ((:) (C_Triple_1 x_minw_1 x_minll_1 x_maxh_1) x_fillmins_2)
- x_error = ((:) x_error_1 x_error_2)
- x_frame_1 = (head_T_Reqs x_ireqs)
- x_fillmins_1 = (fst_Pair_Lst_T_Mins x_i)
- x_fillfmts_1 = (fst_Pair_Lst_T_Fmts x_m)
- x_fillerrs_1 = (fst_Pair_Lst_T_Errs x_e)
- x_m = (splitAt_T_Fmts (fromIntegral x_numpars_1) x_ifillfmts)
- x_i = (splitAt_T_Mins (fromIntegral x_numpars_1) x_ifillmins)
- x_e = (splitAt_T_Errs (fromIntegral x_numpars_1) x_ifillerrs)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 , x_numpars_1 , x_reqs_1 ) = visit_PPC t_PPC x_fillerrs_1 x_fillfmts_1 x_fillmins_1 x_frame_1
- (x_error_2 , x_fillmins_2 , x_fmts_2 , x_len_2 , x_numpars_2 , x_reqs_2 ) = visit_PPCArgs t_PPCArgs_2 x_ifillerrs_2 x_ifillfmts_2 x_ifillmins_2 x_ireqs_2
-visit_PPCArgs (C_NilPPCArgs_1 ) x_ifillerrs x_ifillfmts x_ifillmins x_ireqs = (x_error , x_fillmins , x_fmts , x_len , x_numpars , x_reqs )
- where
- x_reqs = ([] )
- x_numpars = 0
- x_len = 0
- x_fmts = ([] )
- x_fillmins = ([] )
- x_error = ([] )
-visit_PPSArgs (C_ConsArgs_1 t_PPS t_PPSArgs_2 ) x_reqs = (x_error , x_fmts , x_len , x_mins )
- where
- x_reqs_2 = (tail_T_Reqs x_reqs)
- x_mins = ((:) (C_Triple_1 x_minw_1 x_minll_1 x_maxh_1) x_mins_2)
- x_len = (x_len_2+1)
- x_fmts = ((:) x_fmts_1 x_fmts_2)
- x_error = ((:) x_error_1 x_error_2)
- x_frame_1 = (head_T_Reqs x_reqs)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 ) = visit_PPS t_PPS x_frame_1
- (x_error_2 , x_fmts_2 , x_len_2 , x_mins_2 ) = visit_PPSArgs t_PPSArgs_2 x_reqs_2
-visit_PPSArgs (C_NilArgs_1 ) x_reqs = (x_error , x_fmts , x_len , x_mins )
- where
- x_mins = ([] )
- x_len = 0
- x_fmts = ([] )
- x_error = ([] )
-visit_FillList (C_ConsFillList_1 t_PPS t_FillList_2 ) x_errori x_fmtsi x_frame x_maxhi x_minlli x_minwi x_pw = (x_error , x_fmts , x_maxh , x_minll , x_minw )
- where
- x_frame_1 = x_frame
- x_pw_2 = x_pw
- x_minwi_2 = x_minwi
- x_minlli_2 = ((x_minlli+x_minwi)+x_minw_1)
- x_maxhi_2 = (cons_height x_maxh_1 x_maxhi True)
- x_frame_2 = x_frame
- x_fmtsi_2 = (fst_Pair_Formats x_fe)
- x_errori_2 = (x_errori||x_ferror)
- x_minw = x_minw_2
- x_minll = x_minll_2
- x_maxh = x_maxh_2
- x_fmts = x_fmts_2
- x_error = (x_error_2||x_error_1)
- x_newll = (x_minlli+x_minw_1)
- x_ferror = (snd_Pair_Formats x_fe)
- x_fe = (set_fmts_filllist x_fmtsi x_fmts_1 x_maxhi x_maxh_1 x_frame x_avail)
- x_avail = ((x_pw-x_newll)>=0)
- (x_error_1 , x_fmts_1 , x_maxh_1 , x_minll_1 , x_minw_1 ) = visit_PPS t_PPS x_frame_1
- (x_error_2 , x_fmts_2 , x_maxh_2 , x_minll_2 , x_minw_2 ) = visit_FillList t_FillList_2 x_errori_2 x_fmtsi_2 x_frame_2 x_maxhi_2 x_minlli_2 x_minwi_2 x_pw_2
-visit_FillList (C_NilFillList_1 ) x_errori x_fmtsi x_frame x_maxhi x_minlli x_minwi x_pw = (x_error , x_fmts , x_maxh , x_minll , x_minw )
- where
- x_minw = x_minwi
- x_minll = x_minlli
- x_maxh = x_maxhi
- x_fmts = x_fmtsi
- x_error = x_errori
-above_fmt u l =
- case u of { (C_Elem_1 uh ul uw ut) -> case l of { (C_Elem_1 lh ll lw lt) -> (C_Elem_1 (uh+lh) ll (max uw lw) (ut++lt)) } }
-above_fmts u l =
- case u of { ( [] ) -> ([] ) ; ( (:) u2 us ) -> case l of { ( [] ) -> ([] ) ; ( (:) l2 ls ) -> let { (utw) = (total_w u2) ; (ltw) = (total_w l2) ; (fe) = (above_fmt u2 l2) } in (if (utw>=ltw) then ((:) fe (above_fmts us l)) else ((:) fe (above_fmts u ls))) } }
-actformparams actparams lfps =
- case actparams of { ( (:) t1 ts ) -> case lfps of { ( (:) p ls ) -> case p of { (C_AParam_1 t2 n) -> (if (t1==t2) then (actformparams ts ls) else ((:) (C_E_T_ActParam_1 ) (actformparams ts ls))) } ; ( [] ) -> ((:) (C_E_T_ActParam_1 ) ([] )) } ; ( [] ) -> case lfps of { ( (:) p ls ) -> ((:) (C_E_T_ActParam_1 ) ([] )) ; ( [] ) -> ([] ) } }
-add_glue i ls =
- case ls of { ( [] ) -> ([] ) ; ( (:) s ss ) -> ((:) ((repeatCHAR ' ' i)++s) (add_glue i ss)) }
-afmt_txt string =
- (C_AFormat_1 (text_fmts string))
-allf fs =
- case fs of { ( [] ) -> "" ; ( (:) f fs2 ) -> ((txtstr f 0 "\n\n")++(best fs2)) }
-assign_InfType n exptype fid env =
- let { (desttype) = (gettype n fid env) } in (if ((coersibleTypes desttype exptype)==(C_Errortype_1 )) then (C_E_T_NC_1 desttype exptype) else (C_NoTypeError_1 ))
-asts i =
- (if (i==0) then "" else (if (i==1) then "*" else ((":"++(repeatCHAR '*' (fromIntegral (i-2))))++"*>")) )
-beside_fmt l r =
- case l of { (C_Elem_1 lh ll lw lt) -> case r of { (C_Elem_1 rh rl rw rt) -> (C_Elem_1 ((lh+rh)-1) (ll+rl) (max lw (ll+rw)) (join ll lt rt)) } }
-beside_fmts f l r =
- case f of { (C_F_1 pw _) -> (foldLeft pw l r) }
-beside_height lh rh =
- (if ((lh==0)||(rh==0)) then 0 else 1)
-best fs =
- case fs of { ( [] ) -> "" ; ( (:) f fs2 ) -> (txtstr f 0 "") }
-blockStats sts =
- (C_Above_1 (C_Beside_1 (C_Text_1 "{") (C_Indent_1 2 sts)) (C_Text_1 "}"))
-checkactparams s actpars env =
- case (lrc_map_application s env) of { (C_Consfunc_1 t i lfp) -> (actformparams actpars lfp) ; _ -> ([] ) }
-choose_ab_beside_fmts avail fa fb f =
- (if avail then (beside_fmts f fa fb) else (above_fmts fa fb))
-choose_ab_error_beside avail fa fb f =
- (if avail then (error_beside fa fb) else (above_fmts fa fb))
-coersibleTypes t1 t2 =
- (if (t1==t2) then t1 else case t1 of { (C_Realtype_1 ) -> case t2 of { (C_Inttype_1 ) -> t1 ; _ -> (C_Errortype_1 ) } ; _ -> (C_Errortype_1 ) } )
-cons_height pph acth avail =
- (if (acth==0) then (if (pph>0) then 1 else 0) else (acth+(if avail then 0 else 1) ))
-dispf fs =
- case fs of { ( [] ) -> "" ; ( (:) f fs2 ) -> (txtstr f 0 "") }
-dropWhileFormatsNotFit i fs =
- case fs of { ( [] ) -> ([] ) ; ( (:) f fs2 ) -> (if (notFits i f) then (dropWhileFormatsNotFit i fs2) else fs) }
-dropWhileFormatsTooWide i l r =
- case r of { ( [] ) -> ([] ) ; ( (:) f fs ) -> (if (tooWide i l f) then (dropWhileFormatsTooWide i l fs) else r) }
-empty_fmts =
- ([] )
-enclosedBy o b c =
- (C_Beside_1 (C_Text_1 o) (C_Beside_1 b (C_Text_1 c)))
-eq_DupC r1 r2 =
- (zipwith_max r1 r2)
-eq_all_fmts pw fmts =
- (allf (set_fmts_render pw fmts))
-eq_best_fmts pw fmts =
- (best (set_fmts_render pw fmts))
-eq_disp pw fmts =
- (dispf (set_fmts_render pw fmts))
-eq_set_error_msg apars bpars =
- (((("<Error: incorrect choice expression. #pars left "++(lrc_INTtoSTR apars))++" /= #pars right ")++(lrc_INTtoSTR bpars))++">")
-eq_set_fmts_apply error msg fmts =
- (set_fmts_apply error (C_AFormat_1 (text_fmts msg)) fmts)
-eq_set_fmts_fill fmts =
- (C_AFormat_1 fmts)
-error_beside fs1 fs2 =
- ([] )
-error_indent i fs =
- (map_indent_fmt i fs)
-foldLeft pw l r =
- case l of { ( [] ) -> ([] ) ; ( (:) f fs ) -> (map_With_fmts f (dropWhileFormatsTooWide pw f r)) }
-fst_Pair_Formats f =
- case f of { (C_C_Pair_Formats_1 a b) -> a }
-fst_Pair_Lst_T_Errs t =
- case t of { (C_CPair_Lst_T_Errs_1 a _) -> a }
-fst_Pair_Lst_T_Fmts t =
- case t of { (C_CPair_Lst_T_Fmts_1 a _) -> a }
-fst_Pair_Lst_T_Mins t =
- case t of { (C_CPair_Lst_T_Mins_1 a _) -> a }
-fst_Pair_T_Formats f =
- case f of { (C_C_Pair_T_Formats_1 a b) -> a }
-fst_t t =
- case t of { (C_Triple_1 pw _ _) -> pw }
-func_def_a_la_c ty name formpars body =
- (C_Above_1 (C_Beside_1 name (C_Beside_1 (C_Text_1 "(") (C_Beside_1 formpars (C_Beside_1 (C_Text_1 ") : ") ty)))) (blockStats body))
-funccall name pars =
- (C_Beside_1 name (enclosedBy "(" pars ")"))
-genCodeMainFun =
- ((:) (C_Call_1 (C_Ident_1 "main")) ((:) (C_Halt_1 ) ([] )))
-genCodeParamsFunc i lsttp cap =
- case lsttp of { ( [] ) -> ([] ) ; ( (:) fp fps ) -> case cap of { ( [] ) -> ([] ) ; ( (:) c cs ) -> case fp of { (C_AParam_1 t n) -> (((:) (C_Pusha_1 n i) c)++((:) (C_Store_1 ) (genCodeParamsFunc i fps cs))) } } }
-gen_code_func nf lst =
- case lst of { ( [] ) -> ([] ) ; ( (:) apar ls ) -> case apar of { (C_AParam_1 t n) -> ((:) (C_Var_1 n nf t) (gen_code_func nf ls)) } }
-gen_code_func_inv fn env cap =
- case (lrc_map_application fn env) of { (C_Consfunc_1 t i lstp) -> ((genCodeParamsFunc i lstp cap)++((:) (C_Call_1 fn) ([] ))) ; _ -> ([] ) }
-gen_code_ite i e c1 c2 =
- (((e++((:) (C_Jumpf_1 (C_Ident_1 ("else_"++(lrc_INTtoSTR i)))) c1))++((:) (C_Jumpf_1 (C_Ident_1 ("end_if_"++(lrc_INTtoSTR i)))) ((:) (C_ALabel_1 (C_Ident_1 ("else_"++(lrc_INTtoSTR i)))) c2)))++((:) (C_ALabel_1 (C_Ident_1 ("end_if_"++(lrc_INTtoSTR i)))) ([] )))
-gen_code_while i e c1 =
- ((((:) (C_ALabel_1 (C_Ident_1 ("while_"++(lrc_INTtoSTR i)))) e)++((:) (C_Jumpf_1 (C_Ident_1 ("end_while_"++(lrc_INTtoSTR i)))) c1))++((:) (C_Jump_1 (C_Ident_1 ("while_"++(lrc_INTtoSTR i)))) ((:) (C_ALabel_1 (C_Ident_1 ("end_while_"++(lrc_INTtoSTR i)))) ([] ))))
-gen_data_mem e =
- ([] )
-get_fmts fs =
- case fs of { (C_AFormat_1 a) -> a ; (C_TFormats_1 _ _ _ _) -> (text_fmts "<Error: can\'t dup a dup") }
-gettype id fid env =
- case (lrc_map_application id env) of { (C_Consvar_1 t i) -> t ; (C_Consarray_1 t i i2) -> t ; (C_Consfunc_1 t i l) -> t ; _ -> case (lrc_map_application fid env) of { (C_Consfunc_1 t i lstp) -> (gettypefp id lstp) ; _ -> (C_Errortype_1 ) } }
-gettypefp id lstfp =
- case lstfp of { ( (:) p ls ) -> case p of { (C_AParam_1 t n) -> (if (id==n) then t else (gettypefp id ls)) } ; ( [] ) -> (C_Errortype_1 ) }
-head_T_Errs t =
- case t of { ( (:) s _ ) -> s }
-head_T_Fmts t =
- case t of { ( (:) s _ ) -> s }
-head_T_Mins t =
- case t of { ( (:) s _ ) -> s }
-head_T_Reqs t =
- case t of { ( (:) f _ ) -> f }
-hv a b =
- (C_Join_1 (C_Dup_1 (C_Beside_1 a b) (C_Above_1 a b)))
-hvc a b =
- (C_DupC_1 (C_BesideC_1 a b) (C_AboveC_1 a b))
-if_t_ePP exp stats1 stats2 =
- (hv (hv (hv (C_Text_1 "if") (C_Beside_1 (C_Text_1 "(") (C_Beside_1 exp (C_Text_1 ")")))) (hv (C_Text_1 "then") (blockStats stats1))) (hv (C_Text_1 "else") (blockStats stats2)))
-indent_fmt i f =
- case f of { (C_Elem_1 dh dl dw dt) -> (C_Elem_1 dh (i+dl) (i+dw) (add_glue i dt)) }
-indent_fmts f i fs =
- case f of { (C_F_1 pw _) -> (map_indent_fmt i (dropWhileFormatsNotFit (pw-i) fs)) }
-infType op t1 t2 =
- case op of { 1 -> (coersibleTypes t1 t2) ; 2 -> (if (t1==t2) then (C_Booltype_1 ) else (C_Errortype_1 )) ; _ -> (C_Errortype_1 ) }
-initLst_Str l =
- case l of { ( [] ) -> ([] ) ; ( (:) x ( [] ) ) -> ([] ) ; ( (:) x ls ) -> ((:) x (initLst_Str ls)) }
-isaritmexp t =
- case t of { (C_Inttype_1 ) -> True ; _ -> False }
-isboolexp t =
- case t of { (C_Booltype_1 ) -> True ; _ -> False }
-isinenv n fid env =
- (if (lrc_map_in n env) then True else case (lrc_map_application fid env) of { (C_Consfunc_1 t i lstp) -> (isinlst n lstp) ; _ -> False } )
-isinlst n l =
- case l of { ( [] ) -> False ; ( (:) apar ls ) -> case apar of { (C_AParam_1 t n2) -> (if (n==n2) then True else (isinlst n ls)) } }
-isinttype t =
- case t of { (C_Inttype_1 ) -> True ; _ -> False }
-join i lt rt =
- case rt of { ( [] ) -> lt ; ( (:) x rt2 ) -> (((initLst_Str lt)++((:) ((lastLst_Str lt)++x) ([] )))++(add_glue i rt2)) }
-lastLst_Str l =
- case l of { ( (:) x ( [] ) ) -> x ; ( (:) _ ls ) -> (lastLst_Str ls) }
-last_w f =
- case f of { (C_Elem_1 _ pll _ _) -> pll }
-map_With_fmts f fs =
- case fs of { ( [] ) -> ([] ) ; ( (:) f2 fs2 ) -> ((:) (beside_fmt f f2) (map_With_fmts f fs2)) }
-map_indent_fmt i fs =
- case fs of { ( [] ) -> ([] ) ; ( (:) f fs2 ) -> ((:) (indent_fmt i f) (map_indent_fmt i fs2)) }
-max_T_Frame a b =
- case a of { (C_F_1 w _) -> case b of { (C_F_1 z _) -> (if (w>z) then a else b) } }
-merge xs ys =
- case xs of { ( [] ) -> ys ; ( (:) x xs2 ) -> case ys of { ( [] ) -> xs ; ( (:) y ys2 ) -> (if (x==y) then ((:) x (merge xs2 ys2)) else (if (x<y) then ((:) x (merge xs2 ys)) else ((:) y (merge xs ys2))) ) } }
-nametoSTR n =
- case n of { (C_Ident_1 s) -> s }
-narrow_frame i f =
- case f of { (C_F_1 s l) -> (C_F_1 (s-i) (l-i)) }
-narrow_ll i f =
- case f of { (C_F_1 s l) -> (C_F_1 s (l-i)) }
-newlines ls =
- case ls of { ( (:) x ( [] ) ) -> x ; ( (:) x xs ) -> ((x++"\n")++(newlines xs)) }
-notFits delta f =
- case f of { (C_Elem_1 _ _ dw _) -> (dw>delta) }
-nullFormats fs =
- case fs of { ( [] ) -> True ; _ -> False }
-ppName n =
- case n of { (C_Ident_1 s) -> (C_Text_1 s) }
-ppType t =
- case t of { (C_Inttype_1 ) -> (C_Text_1 "Int") ; (C_Realtype_1 ) -> (C_Text_1 "Real") ; (C_Booltype_1 ) -> (C_Text_1 "Bool") ; (C_Chartype_1 ) -> (C_Text_1 "Char") ; (C_Errortype_1 ) -> (C_Text_1 "Error??") }
-s2fmt s = let { (l) = (fromIntegral (length s)) } in (C_Elem_1 1 l l ((:) s ([] )))
-sem_fmts_cdup a b ae be anpars bnpars min_w mesg =
- (if (anpars/=bnpars) then (afmt_txt mesg) else (sem_fmts_dup a b ae be min_w))
-sem_fmts_dup afs bfs ae be minw =
- (if (ae && be) then (afmt_txt (asts minw)) else (C_TFormats_1 (get_fmts afs) (get_fmts bfs) ae be))
-set_error_msg numpars len =
- (((("<Error: incorrect apply expression. #pars "++(lrc_INTtoSTR numpars))++" /= #args ")++(lrc_INTtoSTR len))++">")
-set_fmts_ab_above fs gs uh lh etxt =
- case fs of { (C_AFormat_1 ffmts) -> case gs of { (C_AFormat_1 gfmts) -> (C_C_Pair_T_Formats_1 (C_AFormat_1 (set_fmts_abovea ffmts gfmts uh lh)) False) ; (C_TFormats_1 a bs ae be) -> (C_C_Pair_T_Formats_1 (C_TFormats_1 (set_fmts_abovea ffmts a uh lh) (set_fmts_abovea ffmts bs uh lh) ae be) False) } ; (C_TFormats_1 a bs ae be) -> case gs of { (C_AFormat_1 gfmts) -> (C_C_Pair_T_Formats_1 (C_TFormats_1 (set_fmts_abovea a gfmts uh lh) (set_fmts_abovea bs gfmts uh lh) ae be) False) ; _ -> (C_C_Pair_T_Formats_1 (afmt_txt etxt) True) } }
-set_fmts_ab_beside fs gs uh lh frame error etxt =
- case fs of { (C_AFormat_1 ffmts) -> case gs of { (C_AFormat_1 gfmts) -> (C_C_Pair_T_Formats_1 (C_AFormat_1 (set_fmts_besidea ffmts gfmts uh lh frame error)) False) ; (C_TFormats_1 a bs ae be) -> (C_C_Pair_T_Formats_1 (C_TFormats_1 (set_fmts_besidea ffmts a uh lh frame error) (set_fmts_besidea ffmts bs uh lh frame error) ae be) False) } ; (C_TFormats_1 a bs ae be) -> case gs of { (C_AFormat_1 gfmts) -> (C_C_Pair_T_Formats_1 (C_TFormats_1 (set_fmts_besidea a gfmts uh lh frame error) (set_fmts_besidea bs gfmts uh lh frame error) ae be) False) ; _ -> (C_C_Pair_T_Formats_1 (afmt_txt etxt) True) } }
-set_fmts_above us ls uh lh =
- (set_fmts_ab_above us ls uh lh "<Error: can\'t above two pairs")
-set_fmts_abovea a bs uh lh =
- (if (uh==0) then bs else (if (lh==0) then a else (above_fmts a bs)) )
-set_fmts_apply error msg fmts =
- (if error then msg else fmts)
-set_fmts_beside ls rs lh rh frame error =
- (set_fmts_ab_beside ls rs lh rh frame error "<Error: can\'t beside two pairs")
-set_fmts_besidea ls rs lh rh frame error =
- (if (lh==0) then rs else (if (rh==0) then ls else (if error then (error_beside ls rs) else (beside_fmts frame ls rs)) ) )
-set_fmts_empty =
- (C_AFormat_1 (empty_fmts ))
-set_fmts_fillblock i fmts w =
- (if (i<0) then (afmt_txt "<Error: negative page width in fillblock>") else (if (i>w) then (afmt_txt (asts i)) else (C_AFormat_1 fmts)) )
-set_fmts_filllist af bf ah bh f avail =
- case bf of { (C_AFormat_1 ns) -> (if (ah==0) then (C_C_Pair_Formats_1 ns False) else (if (bh==0) then (C_C_Pair_Formats_1 af False) else (if (bh<=1) then (C_C_Pair_Formats_1 (choose_ab_beside_fmts avail af ns f) False) else (C_C_Pair_Formats_1 (choose_ab_error_beside avail af (text_fmts "<Error: element in fill higher than 1>") f) True)) ) ) ; _ -> (C_C_Pair_Formats_1 (set_fmts_filllista (text_fmts "<Error: element in fill list is a pair>") af ah bh avail f) True) }
-set_fmts_filllista fs afmts ah nh avail f =
- (if (ah==0) then afmts else (if (nh==0) then fs else (choose_ab_error_beside avail fs afmts f)) )
-set_fmts_indent i f pw minw frame error =
- (if (i<0) then (afmt_txt "<Error: negative indentation>") else (if (i>pw) then (afmt_txt (asts minw)) else (if error then (set_fmts_indent_error_indent i f) else (set_fmts_indent_indent_fmts i f frame)) ) )
-set_fmts_indent_error_indent i fmts =
- case fmts of { (C_AFormat_1 fs) -> (C_AFormat_1 (error_indent i fs)) ; (C_TFormats_1 a bs ae be) -> (C_TFormats_1 (error_indent i a) (error_indent i bs) ae be) }
-set_fmts_indent_indent_fmts i fmts frame =
- case fmts of { (C_AFormat_1 fs) -> (C_AFormat_1 (indent_fmts frame i fs)) ; (C_TFormats_1 a bs ae be) -> (C_TFormats_1 (indent_fmts frame i a) (indent_fmts frame i bs) ae be) }
-set_fmts_join fs err =
- case fs of { (C_AFormat_1 f) -> (if err then (C_C_Pair_T_Formats_1 fs err) else (C_C_Pair_T_Formats_1 (afmt_txt "<Error: can\'t join a single result>") True)) ; (C_TFormats_1 a bs ae be) -> let { (aa) = (if be then (if (nullFormats a) then bs else a) else (if ae then (if (nullFormats bs) then a else bs) else (merge a bs)) ) } in (C_C_Pair_T_Formats_1 (C_AFormat_1 aa) False) }
-set_fmts_render pw fmts =
- (if (pw<0) then (text_fmts "<Error: negative page width >") else case fmts of { (C_AFormat_1 fmt) -> fmt ; _ -> (text_fmts "<Error: can\'t render a pair>") } )
-set_fmts_text string minw error =
- (afmt_txt (if error then (asts minw) else string) )
-set_var_apply error lem min =
- (if error then lem else min)
-snd_Pair_Formats f =
- case f of { (C_C_Pair_Formats_1 a b) -> b }
-snd_Pair_Lst_T_Errs t =
- case t of { (C_CPair_Lst_T_Errs_1 _ a) -> a }
-snd_Pair_Lst_T_Fmts t =
- case t of { (C_CPair_Lst_T_Fmts_1 _ a) -> a }
-snd_Pair_Lst_T_Mins t =
- case t of { (C_CPair_Lst_T_Mins_1 _ a) -> a }
-snd_Pair_T_Formats f =
- case f of { (C_C_Pair_T_Formats_1 a b) -> b }
-snd_t t =
- case t of { (C_Triple_1 _ pll _) -> pll }
-splitAt_T_Errs i tm =
- (if (i<=0) then (C_CPair_Lst_T_Errs_1 ([] ) tm) else case tm of { ( [] ) -> (C_CPair_Lst_T_Errs_1 ([] ) ([] )) ; ( (:) x xs ) -> let { (a) = (splitAt_T_Errs (i-1) xs) ; (xs2) = (fst_Pair_Lst_T_Errs a) ; (xs22) = (snd_Pair_Lst_T_Errs a) } in (C_CPair_Lst_T_Errs_1 ((:) x xs2) xs22) } )
-splitAt_T_Fmts i tm =
- (if (i<=0) then (C_CPair_Lst_T_Fmts_1 ([] ) tm) else case tm of { ( [] ) -> (C_CPair_Lst_T_Fmts_1 ([] ) ([] )) ; ( (:) x xs ) -> let { (a) = (splitAt_T_Fmts (i-1) xs) ; (xs2) = (fst_Pair_Lst_T_Fmts a) ; (xs22) = (snd_Pair_Lst_T_Fmts a) } in (C_CPair_Lst_T_Fmts_1 ((:) x xs2) xs22) } )
-splitAt_T_Mins i tm =
- (if (i<=0) then (C_CPair_Lst_T_Mins_1 ([] ) tm) else case tm of { ( [] ) -> (C_CPair_Lst_T_Mins_1 ([] ) ([] )) ; ( (:) x xs ) -> let { (a) = (splitAt_T_Mins (i-1) xs) ; (xs2) = (fst_Pair_Lst_T_Mins a) ; (xs22) = (snd_Pair_Lst_T_Mins a) } in (C_CPair_Lst_T_Mins_1 ((:) x xs2) xs22) } )
-tail_T_Reqs t =
- case t of { ( (:) _ tr ) -> tr }
-text_fmts s =
- ((:) (s2fmt s) ([] ))
-third_t t =
- case t of { (C_Triple_1 _ _ ph) -> ph }
-tooWide pw x y =
- ((max (total_w x) ((last_w x)+(total_w y)))>pw)
-total_w f =
- case f of { (C_Elem_1 _ _ w _) -> w }
-txtstr f n s =
- case f of { (C_Elem_1 dh dl dw dt) -> ((newlines (add_glue n dt))++s) }
-typecheck s exptype fid env =
- (if (exptype==(gettype s fid env)) then True else False)
-whilePP bg exp stats =
- (C_Apply_1 (C_JoinC_1 (hvc (C_ParC_1 ) (C_JoinC_1 (hvc (C_ParC_1 ) C_ParC_1)))) (C_ConsArgs_1 bg (C_ConsArgs_1 exp (C_ConsArgs_1 stats (C_NilArgs_1 )))))
-whilePPOLD exp stats =
- (hv (hv (C_Text_1 "while") (C_Beside_1 (C_Text_1 "(") (C_Beside_1 exp (C_Text_1 ")")))) (blockStats stats))
-zipwith_max l1 l2 =
- case l1 of { ( [] ) -> l2 ; ( (:) l11 l11s ) -> case l2 of { ( [] ) -> l1 ; ( (:) l22 l22s ) -> ((:) (max_T_Frame l11 l22) (zipwith_max l11s l22s)) } }
diff --git a/testsuite/tests/ghc-regress/programs/joao-circular/inp b/testsuite/tests/ghc-regress/programs/joao-circular/inp
deleted file mode 100644
index 9f88682479..0000000000
--- a/testsuite/tests/ghc-regress/programs/joao-circular/inp
+++ /dev/null
@@ -1,22 +0,0 @@
-int a;
-int b;
-int c;
-int a;
-
-
-fact (int x) : int
-{
- fact = 1;
- while ( x > 0 )
- { fact = fact * x;
- x = x - 1;
- };
-};
-
-recfact (int x) : int
-{ if ( x == 0) then
- { recfact = 1;}
- else
- { recfact = x * recfact (x - 1); };
-};
-
diff --git a/testsuite/tests/ghc-regress/programs/joao-circular/joao-circular.stdout b/testsuite/tests/ghc-regress/programs/joao-circular/joao-circular.stdout
deleted file mode 100644
index 0c69f85dbc..0000000000
--- a/testsuite/tests/ghc-regress/programs/joao-circular/joao-circular.stdout
+++ /dev/null
@@ -1,86 +0,0 @@
-["inp","40"]
-Pretty Printed Input:
-Int = a
-Int = b
-Int = c
-Int = a
-fact(Int x,) : Int
-{ fact = 1;
- while x > 0fact = fact * x;
- x = x - 1;;
-}
-recfact(Int x,) : Int
-{ if(x == 0)then{ recfact = 1;
- }
- else{ recfact = x * recfact(x - 1);
- };
-}
-MSP Generated Code:
-MEMORIA DE DADOS
-"a0" TAM 1
-"b0" TAM 1
-"c0" TAM 1
-"a0" TAM 1
-"fact0" TAM 1
-"x" TAM 1
-"recfact1" TAM 1
-"x" TAM 2
-CODIGO
-CALL "main"
-HALT
-C_Ident_1 "fact":
-PUSHa "fact" 1
-PUSHi 1
-STORE
-C_Ident_1 "while_1":
-PUSHa "x" 1
-LOAD
-PUSHi 0
-GT
-JMPF "end_while_1"
-PUSHa "fact" 1
-PUSHa "fact" 1
-LOAD
-PUSHa "x" 1
-LOAD
-MUL
-STORE
-PUSHa "x" 1
-PUSHa "x" 1
-LOAD
-PUSHi 1
-SUB
-STORE
-JMP "while_1"
-C_Ident_1 "end_while_1":
-RET
-C_Ident_1 "recfact":
-PUSHa "x" 2
-LOAD
-PUSHi 0
-EQ
-JMPF "else_1"
-PUSHa "recfact" 2
-PUSHi 1
-STORE
-JMPF "end_if_1"
-C_Ident_1 "else_1":
-PUSHa "recfact" 2
-PUSHa "x" 2
-LOAD
-PUSHa "x" 1
-PUSHa "x" 2
-LOAD
-PUSHi 1
-SUB
-STORE
-CALL "recfact"
-MUL
-STORE
-C_Ident_1 "end_if_1":
-RET
-
-
-Detected Semantic Errors:
-[C_E_Name_AD_1 (C_Ident_1 "a")]
-[]
diff --git a/testsuite/tests/ghc-regress/programs/joao-circular/test.T b/testsuite/tests/ghc-regress/programs/joao-circular/test.T
deleted file mode 100644
index 935ec7e6f4..0000000000
--- a/testsuite/tests/ghc-regress/programs/joao-circular/test.T
+++ /dev/null
@@ -1,11 +0,0 @@
-test('joao-circular',
- [skip_if_fast,
- extra_clean(['Data_Lazy.hi', 'Data_Lazy.o',
- 'Funcs_Lexer.hi', 'Funcs_Lexer.o',
- 'Funcs_Parser_Lazy.hi', 'Funcs_Parser_Lazy.o',
- 'LrcPrelude.hi', 'LrcPrelude.o',
- 'Main.hi', 'Main.o',
- 'Visfun_Lazy.hi', 'Visfun_Lazy.o']),
- extra_run_opts('inp 40')],
- multimod_compile_and_run,
- ['Main', '-O'])
diff --git a/testsuite/tests/ghc-regress/programs/jq_readsPrec/Main.hs b/testsuite/tests/ghc-regress/programs/jq_readsPrec/Main.hs
deleted file mode 100644
index 360a411ef0..0000000000
--- a/testsuite/tests/ghc-regress/programs/jq_readsPrec/Main.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-module Main where
-
-data Vertex = V Int deriving (Read, Show)
-
-main = do
- userInput <- getContents
- (parseVertex.lines) userInput report
-
-report::Vertex -> IO ()
-report int = putStr (show int)
-
-parseVertex::[String] -> (Vertex -> IO ()) -> IO ()
-parseVertex inputLines cont
- = case inputLines of
- (l1:rest) -> case (reads l1) of
- [(x,"")] -> cont x
- other -> putStr
- ((showString "Error - retype the edges\n". shows other) "")
- _ -> putStr "No Vertex"
-
diff --git a/testsuite/tests/ghc-regress/programs/jq_readsPrec/Makefile b/testsuite/tests/ghc-regress/programs/jq_readsPrec/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/jq_readsPrec/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/jq_readsPrec/jq_readsPrec.stdin b/testsuite/tests/ghc-regress/programs/jq_readsPrec/jq_readsPrec.stdin
deleted file mode 100644
index 8cc78bf4cd..0000000000
--- a/testsuite/tests/ghc-regress/programs/jq_readsPrec/jq_readsPrec.stdin
+++ /dev/null
@@ -1 +0,0 @@
-(V 1)
diff --git a/testsuite/tests/ghc-regress/programs/jq_readsPrec/jq_readsPrec.stdout b/testsuite/tests/ghc-regress/programs/jq_readsPrec/jq_readsPrec.stdout
deleted file mode 100644
index 725c38e559..0000000000
--- a/testsuite/tests/ghc-regress/programs/jq_readsPrec/jq_readsPrec.stdout
+++ /dev/null
@@ -1 +0,0 @@
-V 1 \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/programs/jq_readsPrec/test.T b/testsuite/tests/ghc-regress/programs/jq_readsPrec/test.T
deleted file mode 100644
index 393f82c4b3..0000000000
--- a/testsuite/tests/ghc-regress/programs/jq_readsPrec/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('jq_readsPrec',
- [skip_if_fast, extra_clean(['Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/jtod_circint/Bit.hs b/testsuite/tests/ghc-regress/programs/jtod_circint/Bit.hs
deleted file mode 100644
index be11a6f517..0000000000
--- a/testsuite/tests/ghc-regress/programs/jtod_circint/Bit.hs
+++ /dev/null
@@ -1,183 +0,0 @@
-module Bit where
-import LogFun
-import Signal
-
-data Bit = Bot | WeakZero | WeakOne | Zero | One | Top
- deriving (Eq,Show{-was:Text-})
-
-instance Static Bit where
- intToSig = intToSigBit
- sigToInt = sigToIntBit
- showStaticSig = showBit
-
-instance Lattice Bit where
- bot = Bot
- top = Top
- weakZero = WeakZero
- weakOne = WeakOne
- lub = lubBit
- pass = passBit
-
-instance Signal Bit where
- showSig = showBit
- initial = Zero
- zerO = Zero
- one = One
- tt1 = tt1Bit
- tt2 = tt2Bit
-
-instance Log Bit where
- dumLog = Zero
-
-tt1Bit :: TT1 -> Bit -> Bit
-tt1Bit (a,b) =
- let p = intBit a
- q = intBit b
- f x = case x of
- Bot -> Bot
- Zero -> p
- One -> q
- Top -> Top
- in f
-
-tt2Bit :: TT2 -> Bit -> Bit -> Bit
-tt2Bit (a,b,c,d) = f
- where p = intBit a
- q = intBit b
- r = intBit c
- s = intBit d
- f x y = case x of
- Bot -> case y of
- Bot -> Bot
- WeakZero -> Bot
- WeakOne -> Bot
- Zero -> Bot
- One -> Bot
- Top -> Top
- WeakZero -> case y of
- Bot -> Bot
- WeakZero -> p
- WeakOne -> q
- Zero -> p
- One -> q
- Top -> Top
- WeakOne -> case y of
- Bot -> Bot
- WeakZero -> r
- WeakOne -> s
- Zero -> r
- One -> s
- Top -> Top
- Zero -> case y of
- Bot -> Bot
- WeakZero -> p
- WeakOne -> q
- Zero -> p
- One -> q
- Top -> Top
- One -> case y of
- Bot -> Bot
- WeakZero -> r
- WeakOne -> s
- Zero -> r
- One -> s
- Top -> Top
- Top -> case y of
- Bot -> Top
- WeakZero -> Top
- WeakOne -> Top
- Zero -> Top
- One -> Top
- Top -> Top
-
-lubBit :: Bit -> Bit -> Bit
-lubBit a b =
- case a of
- Bot -> case b of
- Bot -> Bot
- WeakZero -> WeakZero
- WeakOne -> WeakOne
- Zero -> Zero
- One -> One
- Top -> Top
- WeakZero -> case b of
- Bot -> Zero
- WeakZero -> WeakZero
- WeakOne -> Top
- Zero -> Zero
- One -> One
- Top -> Top
- WeakOne -> case b of
- Bot -> WeakOne
- WeakZero -> Top
- WeakOne -> WeakOne
- Zero -> Zero
- One -> One
- Top -> Top
- Zero -> case b of
- Bot -> Zero
- WeakZero -> Zero
- WeakOne -> Zero
- Zero -> Zero
- One -> Top
- Top -> Top
- One -> case b of
- Bot -> One
- WeakZero -> One
- WeakOne -> One
- Zero -> Top
- One -> One
- Top -> Top
- Top -> case b of
- Bot -> Top
- WeakZero -> Top
- WeakOne -> Top
- Zero -> Top
- One -> Top
- Top -> Top
-
-showBit :: Bit -> String
-showBit Bot = "v"
-showBit WeakZero = "z"
-showBit WeakOne = "o"
-showBit Zero = "0"
-showBit One = "1"
-showBit Top = "^"
-
-
-intBit :: Int -> Bit
-intBit 0 = Zero
-intBit 1 = One
-intBit x =
- error ("\nintBit received bad Int " ++ show x ++ ".\n")
-
-intToSigBit :: Int -> Bit
-intToSigBit i
- | i==0 = Zero
- | i==1 = One
- | i==8 = Bot
- | i==9 = Top
-
-sigToIntBit :: Bit -> Int
-sigToIntBit Zero = 0
-sigToIntBit One = 1
-sigToIntBit Bot = 8
-sigToIntBit Top = 9
-
-passBit :: Bit -> Bit -> Bit
-passBit c a =
- case c of
- Bot -> Bot
- Zero -> Bot
- One -> a
- Top -> Top
-
-instance Num Bit where
- (+) = or2
- (*) = and2
- a - b = xor a b
- negate = inv
- abs = error "abs not defined for Signals"
- signum = error "signum not defined for Signals"
- fromInteger = error "fromInteger not defined for Signals"
-
diff --git a/testsuite/tests/ghc-regress/programs/jtod_circint/LogFun.hs b/testsuite/tests/ghc-regress/programs/jtod_circint/LogFun.hs
deleted file mode 100644
index b9a5bf169d..0000000000
--- a/testsuite/tests/ghc-regress/programs/jtod_circint/LogFun.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-module LogFun where
-
-type TT1 = (Int,Int)
-type TT2 = (Int,Int,Int,Int)
-
-tt_con10, tt_id, tt_inv, tt_con11 :: TT1
-
-tt_con10 = (0,0)
-tt_id = (0,1)
-tt_inv = (1,0)
-tt_con11 = (1,1)
-
-tt_con20, tt_and2, tt_nimp, tt_id21 :: TT2
-tt_nimp', tt_id22, tt_xor, tt_or2 :: TT2
-tt_nor2, tt_equ2, tt_inv22, tt_imp' :: TT2
-tt_inv21, tt_imp, tt_nand2, tt_con21 :: TT2
-
-tt_con20 = (0,0,0,0)
-tt_and2 = (0,0,0,1)
-tt_nimp = (0,0,1,0)
-tt_id21 = (0,0,1,1)
-tt_nimp' = (0,1,0,0)
-tt_id22 = (0,1,0,1)
-tt_xor = (0,1,1,0)
-tt_or2 = (0,1,1,1)
-tt_nor2 = (1,0,0,0)
-tt_equ2 = (1,0,0,1)
-tt_inv22 = (1,0,1,0)
-tt_imp' = (1,0,1,1)
-tt_inv21 = (1,1,0,0)
-tt_imp = (1,1,0,1)
-tt_nand2 = (1,1,1,0)
-tt_con21 = (1,1,1,1)
-
diff --git a/testsuite/tests/ghc-regress/programs/jtod_circint/Main.hs b/testsuite/tests/ghc-regress/programs/jtod_circint/Main.hs
deleted file mode 100644
index a1907dc6a9..0000000000
--- a/testsuite/tests/ghc-regress/programs/jtod_circint/Main.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module Main where
-import Signal
-import Bit
-
-main = putStr test
-
-test = stest
-
-type B = Stream Bit
-
-stest = take 80 (shows z "\n")
- where z = one :: B
diff --git a/testsuite/tests/ghc-regress/programs/jtod_circint/Makefile b/testsuite/tests/ghc-regress/programs/jtod_circint/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/jtod_circint/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/jtod_circint/Signal.hs b/testsuite/tests/ghc-regress/programs/jtod_circint/Signal.hs
deleted file mode 100644
index 38a1fc86f5..0000000000
--- a/testsuite/tests/ghc-regress/programs/jtod_circint/Signal.hs
+++ /dev/null
@@ -1,146 +0,0 @@
-module Signal where
-
-import LogFun
-
-class (Eq a, Show{-was:Text-} a, Num a) => Signal a where
- showSig :: a -> String
-
- zerO, one, initial :: a
-
- tt1 :: TT1 -> a -> a
- tt2 :: TT2 -> a -> a -> a
-
- con10, buf, inv, con11 :: a -> a
-
- con20, and2, nimp, id21 :: a -> a -> a
- nimp', id22, xor, or2 :: a -> a -> a
- nor2, equ2, inv22, imp' :: a -> a -> a
- inv21, imp, nand2, con21 :: a -> a -> a
- and3, or3, nand3, nor3 :: a -> a -> a -> a
- and4, or4, nand4, nor4 :: a -> a -> a -> a -> a
-
- con10 = tt1 tt_con10
- buf = tt1 tt_id
- inv = tt1 tt_inv
- con11 = tt1 tt_con11
-
- con20 = tt2 tt_con20
- and2 = tt2 tt_and2
- nimp = tt2 tt_nimp
- id21 = tt2 tt_id21
- nimp' = tt2 tt_nimp'
- id22 = tt2 tt_id22
- xor = tt2 tt_xor
- or2 = tt2 tt_or2
- nor2 = tt2 tt_nor2
- equ2 = tt2 tt_equ2
- inv22 = tt2 tt_inv22
- imp' = tt2 tt_imp'
- inv21 = tt2 tt_inv21
- imp = tt2 tt_imp
- nand2 = tt2 tt_nand2
- con21 = tt2 tt_con21
-
- and3 a b c = a*b*c
- or3 a b c = a+b+c
- nand3 a b c = nand2 a (nand2 b c)
- nor3 a b c = nor2 a (nor2 b c)
-
- and4 a b c d = (a*b)*(c*d)
- or4 a b c d = (a+b)+(c+d)
- nand4 a b c d = nand2 (nand2 a b) (nand2 c d)
- nor4 a b c d = nor2 (nor2 a b) (nor2 c d)
-
-class (Signal a) => Lattice a where
- bot, top, weakZero, weakOne :: a
- lub :: a -> a -> a
- pass :: a -> a -> a
-
-class (Signal a) => Static a where
- intToSig :: Int -> a
- sigToInt :: a -> Int
- showStaticSig :: a -> String
-
-class (Signal a) => Dynamic a where
- latch, dff :: a -> a
-
-class (Lattice a, Static a) => Log a where
- dumLog :: a
-
-class (Lattice a, Dynamic a) => Sig a where
- dumSig :: a
-
-data Stream a = Snil | Scons a (Stream a) deriving (Eq,Show{-was:Text-})
-
-shead :: Stream a -> a
-shead (Scons x xs) = x
-
-stail :: Stream a -> Stream a
-stail (Scons x xs) = xs
-
-snull :: Stream a -> Bool
-snull Snil = True
-snull (Scons x xs) = False
-
-smap :: (a->b) -> Stream a -> Stream b
-smap f Snil = Snil
-smap f (Scons x xs) = Scons (f x) (smap f xs)
-
-stake, sdrop :: Int -> Stream a -> Stream a
-
-stake 0 xs = xs
---should be: stake (i+1) (Scons x xs) = Scons x (stake i xs)
-stake i (Scons x xs) | i < 0 = error "Signal.stake: < 0"
- | otherwise = Scons x (stake (i-1) xs)
-
-sdrop 0 xs = xs
---should be:sdrop (i+1) (Scons x xs) = sdrop i xs
-sdrop i (Scons x xs) | i < 0 = error "Signal.sdrop: < 0"
- | otherwise = sdrop i xs
-
-smap2 :: (a->b->c) -> Stream a -> Stream b -> Stream c
-smap2 f as bs =
- case as of
- Snil -> Snil
- Scons a as' ->
- case bs of
- Snil -> Snil
- Scons b bs' -> Scons (f a b) (smap2 f as' bs')
-
-srepeat :: (Static a) => a -> Stream a
-srepeat x = xs where xs = Scons x xs
-
-stream :: [a] -> Stream a
-stream [] = Snil
-stream (x:xs) = Scons x (stream xs)
-
-instance (Signal a, Static a) => Dynamic (Stream a) where
- latch xs = Scons initial xs
- dff xs = Scons initial xs
-
-instance (Lattice a, Static a) => Lattice (Stream a) where
- bot = srepeat bot
- top = srepeat top
- weakZero = srepeat weakZero
- weakOne = srepeat weakOne
- lub = smap2 lub
- pass = smap2 pass
-
-instance (Signal a, Static a) => Signal (Stream a) where
- zerO = srepeat zerO
- one = srepeat one
- tt1 = smap . tt1
- tt2 = smap2 . tt2
-
-instance (Lattice a, Static a) => Sig (Stream a) where
- dumSig = bot -- ??? shouldn't be necessary, check compiler
-
-instance (Static a) => Num (Stream a) where
- (+) = or2
- (*) = and2
- a - b = xor a b
- negate = inv
- abs = error "abs not defined for Signals"
- signum = error "signum not defined for Signals"
- fromInteger = error "fromInteger not defined for Signals"
-
diff --git a/testsuite/tests/ghc-regress/programs/jtod_circint/jtod_circint.stdout b/testsuite/tests/ghc-regress/programs/jtod_circint/jtod_circint.stdout
deleted file mode 100644
index bc629dadd2..0000000000
--- a/testsuite/tests/ghc-regress/programs/jtod_circint/jtod_circint.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Scons One (Scons One (Scons One (Scons One (Scons One (Scons One (Scons One (Sco \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/programs/jtod_circint/test.T b/testsuite/tests/ghc-regress/programs/jtod_circint/test.T
deleted file mode 100644
index 47338d7b89..0000000000
--- a/testsuite/tests/ghc-regress/programs/jtod_circint/test.T
+++ /dev/null
@@ -1,10 +0,0 @@
-
-test('jtod_circint',
- [skip_if_fast,
- extra_clean(['Bit.hi', 'Bit.o',
- 'LogFun.hi', 'LogFun.o',
- 'Main.hi', 'Main.o',
- 'Signal.hi', 'Signal.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/jules_xref/Main.hs b/testsuite/tests/ghc-regress/programs/jules_xref/Main.hs
deleted file mode 100644
index 19f364d0f9..0000000000
--- a/testsuite/tests/ghc-regress/programs/jules_xref/Main.hs
+++ /dev/null
@@ -1,174 +0,0 @@
--- !!! a performance-problem test from Jules.
--- further comment at the end
---
-module Main where
-
-import Data.Char -- 1.3
-
---1.3:data Maybe a = Nothing | Just a
-
-data ATree a b = ALeaf
- | ABranch (ATree a b) a [b] (ATree a b) Int
- -- deriving (Eq)
-
-type SymTable = ATree String Int
-
-
-pp_tree :: SymTable -> String
-pp_tree ALeaf = ""
-pp_tree (ABranch l k vs r h)
- = pp_tree l ++ show (k,reverse vs) ++ "\n" ++ pp_tree r
-
-{-
-avAdd :: Ord a => ATree a b ->
- a ->
- b ->
- ATree a b
--}
-avAdd ALeaf xk xv = ABranch ALeaf xk [xv] ALeaf 1
-
-avAdd (ABranch l yk yv r hy) xk xv
- | yk > xk = let (ABranch l1 zk zv l2 _) = avAdd l xk xv
- in avCombine l1 (f l1) l2 (f l2) r (f r) zk zv yk yv
- | xk > yk = let (ABranch r1 zk zv r2 _) = avAdd r xk xv
- in avCombine l (f l) r1 (f r1) r2 (f r2) yk yv zk zv
- | otherwise = ABranch l yk (xv:yv) r hy
- where
- f :: ATree a b -> Int
- f ALeaf = 0
- f (ABranch _ _ _ _ d) = d
-
-
-
--- ==========================================================--
---
-{-
-avLookup :: Ord a => ATree a b ->
- a ->
- Maybe b
--}
-avLookup ALeaf _ = Nothing
-
-avLookup (ABranch l k v r _) kk
- | kk < k = avLookup l kk
- | kk > k = avLookup r kk
- | otherwise = Just v
-
-
-
--- ==========================================================--
---
-avCombine :: ATree a b ->
- Int ->
- ATree a b ->
- Int ->
- ATree a b ->
- Int ->
- a ->
- [b] ->
- a ->
- [b] ->
- ATree a b
-
-avCombine t1 h1 t2 h2 t3 h3 ak av ck cv
- | h2 > h1 && h2 > h3
- = ABranch (ABranch t1 ak av t21 (h1+1)) bk bv
- (ABranch t22 ck cv t3 (h3+1)) (h1+2)
- | h1 >= h2 && h1 >= h3
- = ABranch t1 ak av (ABranch t2 ck cv t3 (max1 h2 h3))
- (max1 h1 (max1 h2 h3))
- | h3 >= h2 && h3 >= h1
- = ABranch (ABranch t1 ak av t2 (max1 h1 h2)) ck cv t3
- (max1 (max1 h1 h2) h3)
- where
- (ABranch t21 bk bv t22 _) = t2
- max1 :: Int -> Int -> Int
- max1 n m = 1 + (if n > m then n else m)
-
-
--- ==========================================================--
--- === end AVLTree.hs ===--
--- ==========================================================--
-
-
-
-
-xref :: SymTable -> Int -> String -> SymTable
-
-xref stab lineno [] = stab
-xref stab lineno ('\n':cs) = xref stab (lineno+1) cs
-xref stab lineno (c:cs)
- = if isAlpha c then
- let (word, rest) = span isAlphaNum cs
- in xref (avAdd stab (c:word) lineno) lineno rest
- else xref stab lineno cs
-
-main = do
- s <- getContents
- putStr (pp_tree (xref ALeaf 1 s))
-
-{-
-Date: Thu, 29 Oct 92 19:38:31 GMT
-From: Julian Seward (DRL PhD) <sewardj@uk.ac.man.cs>
-Message-Id: <9210291938.AA27685@r6b.cs.man.ac.uk>
-To: partain@uk.ac.glasgow.dcs
-Subject: More ghc vs hbc fiddling (OR: nofib ephemeral contribution (unsolicited :-))
-
-Will,
-
-There are still some very simple programs for which ghc's performance
-falls far behind that of hbc's -- even with ghc using a better
-GC. The stat files below are from a
-crude cross reference program we hacked together for the purposes
-of an internal "what-language-to-teach-first-year-undergrads" debate.
-
-Is this something to do with dictionary zapping?
-
-Program included below. Use as a pipe. Suggest you feed it any
-large Haskell source file (I used TypeCheck5.hs from Anna).
-
-Jules
-
----------------------------------------------------------
-
-a.out -H9000000 -S
-Nw Heap Tt Heap Stk GC(real) GC acc (real) tot (real) newheap in -dupl -new -del +stk out mcode
- 99192 99192 20 0.06 0.1 0.06 0.1 0.16 0.4 396768 0 0 0 0 0 0
- 247752 247752 14 0.13 0.1 0.19 0.2 0.44 0.8 991008 0 0 0 0 0 0
- 623104 623104 34 0.32 0.3 0.51 0.5 1.08 1.5 2492416 0 0 0 0 0 0
-1433968 1433968 15879 0.62 0.8 1.13 1.4 2.66 3.6 5735872 0 0 0 0 0 0
-3009700 3009700 2382 1.56 1.6 2.69 3.0 6.88 8.6 9000000 0 0 0 0 0 0
- 5 GCs,
- 8.69 (13.1) seconds total time,
- 2.69 (3.0) seconds GC time (31.0(23.1)% of total time)
- 0.00 (0.0) seconds major GC time ( 0.0( 0.0)% of total time)
- 9303816 bytes allocated from the heap.
-
-------------------------------------------------
-
-xref +RTS -H9M -S -K200k
-
-Collector: APPEL HeapSize: 9,437,184 (bytes)
-
- Alloc Live Live Astk Bstk OldGen GC GC TOT TOT Page Flts Collec Resid
- bytes bytes % bytes bytes roots user elap user elap GC TOT tion %heap
-4718580 786672 16.7 40 220 424 0.37 0.52 3.67 4.68 0 0 Minor
-4325248 808804 18.7 62724 62820 564968 0.50 0.60 6.63 8.05 0 0 Minor
-3920848 743508 19.0 47512 47600 743220 0.47 0.60 8.60 10.17 0 0 Minor
-3549096 681464 19.2 34644 34892 680820 0.46 0.53 10.43 12.13 0 0 Minor
-3208348 604892 18.9 23564 23676 604512 0.41 0.48 12.07 13.89 0 0 Minor
-2905900 528584 18.2 14164 14396 527952 0.35 0.41 13.53 15.42 0 0 Minor
-2641592 490812 18.6 5228 5388 490476 0.30 0.37 14.85 16.82 0 0 Minor
-2396204 534400 22.3 16 40 534380 0.28 0.32 16.41 18.75 0 0 Minor
-2129016 691708 32.5 36 144 691420 0.33 0.39 18.38 21.68 0 0 Minor
-1090480
-
-30,885,312 bytes allocated in the heap
- 9 garbage collections performed
-
- Total time 19.29s (23.06s elapsed)
- GC time 3.47s (4.22s elapsed)
- %GC time 18.0%
-
---------------------------------------------------
--}
diff --git a/testsuite/tests/ghc-regress/programs/jules_xref/Makefile b/testsuite/tests/ghc-regress/programs/jules_xref/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/jules_xref/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/jules_xref/jules_xref.stdin b/testsuite/tests/ghc-regress/programs/jules_xref/jules_xref.stdin
deleted file mode 100644
index a43907d9bd..0000000000
--- a/testsuite/tests/ghc-regress/programs/jules_xref/jules_xref.stdin
+++ /dev/null
@@ -1,1105 +0,0 @@
-
---==========================================================--
---=== A type-checker -- v5 File: TypeCheck5.m (1) ===--
---=== Corrected version for 0.210a ===--
---==========================================================--
-
-module TypeCheck5 where
-import BaseDefs
-import Utils
-import MyUtils
-
---==========================================================--
---=== Formatting of results ===--
---==========================================================--
-
-tcMapAnnExpr :: (a -> b) ->
- AnnExpr c a ->
- AnnExpr c b
-
-tcMapAnnExpr f (ann, node)
- = (f ann, mapAnnExpr' node)
- where
- mapAnnExpr' (AVar v) = AVar v
- mapAnnExpr' (ANum n) = ANum n
- mapAnnExpr' (AConstr c) = AConstr c
- mapAnnExpr' (AAp ae1 ae2)
- = AAp (tcMapAnnExpr f ae1) (tcMapAnnExpr f ae2)
- mapAnnExpr' (ALet recFlag annDefs mainExpr)
- = ALet recFlag (map mapAnnDefn annDefs) (tcMapAnnExpr f mainExpr)
- mapAnnExpr' (ACase switchExpr annAlts)
- = ACase (tcMapAnnExpr f switchExpr) (map mapAnnAlt annAlts)
- mapAnnExpr' (ALam vs e) = ALam vs (tcMapAnnExpr f e)
-
- mapAnnDefn (naam, expr)
- = (naam, tcMapAnnExpr f expr)
-
- mapAnnAlt (naam, (pars, resExpr))
- = (naam, (pars, tcMapAnnExpr f resExpr))
-
-
---======================================================--
---
-tcSubstAnnTree :: Subst ->
- AnnExpr Naam TExpr ->
- AnnExpr Naam TExpr
-
-tcSubstAnnTree phi tree = tcMapAnnExpr (tcSub_type phi) tree
-
-
---======================================================--
---
-tcTreeToEnv :: AnnExpr Naam TExpr ->
- TypeEnv
-
-tcTreeToEnv tree
- = t2e tree
- where
- t2e (nodeType, node) = t2e' node
-
- t2e' (AVar v) = []
- t2e' (ANum n) = []
- t2e' (AConstr c) = []
- t2e' (AAp ae1 ae2) = (t2e ae1) ++ (t2e ae2)
- t2e' (ALam cs e) = t2e e
- t2e' (ALet rf dl me)
- = (concat (map aFN dl)) ++ (t2e me)
- t2e' (ACase sw alts)
- = (t2e sw) ++ (concat (map (t2e.second.second) alts))
-
- aFN (naam, (tijp, body))
- = (naam, tijp):(t2e' body)
-
-
-
---======================================================--
---
-tcShowtExpr :: TExpr ->
- [Char]
-
-tcShowtExpr t
- = pretty' False t
- where
- pretty' b (TVar tvname) = [' ', chr (96+(lookup tvname tvdict))]
- pretty' b (TCons "int" []) = " int"
- pretty' b (TCons "bool" []) = " bool"
- pretty' b (TCons "char" []) = " char"
- pretty' True (TArr t1 t2)
- = " (" ++ (pretty' True t1) ++ " -> " ++
- (pretty' False t2) ++ ")"
- pretty' False (TArr t1 t2)
- = (pretty' True t1) ++ " -> " ++
- (pretty' False t2)
- pretty' b (TCons notArrow cl)
- = " (" ++ notArrow ++
- concat (map (pretty' True) cl) ++ ")"
- lookup tvname []
- = panic "tcShowtExpr: Type name lookup failed"
- lookup tvname (t:ts) | t==tvname = 1
- | otherwise = 1 + (lookup tvname ts)
- tvdict = nub (tvdict' t)
- tvdict' (TVar t) = [t]
- tvdict' (TCons c ts) = concat (map tvdict' ts)
- tvdict' (TArr t1 t2) = tvdict' t1 ++ tvdict' t2
-
-
---======================================================--
---
-tcPretty :: (Naam, TExpr) ->
- [Char]
-
-tcPretty (naam, tipe)
- = "\n " ++ (ljustify 25 (naam ++ " :: ")) ++
- (tcShowtExpr tipe)
-
-
---======================================================--
-tcCheck :: TcTypeEnv ->
- TypeNameSupply ->
- AtomicProgram ->
- ([Char], Reply (AnnExpr Naam TExpr, TypeEnv) Message)
-
-tcCheck baseTypes ns (tdefs, expr)
- = if good tcResult
- then (fullEnvWords, Ok (rootTree, fullEnv))
- else ("", Fail "No type")
- where
- tcResult = tc (tdefs++builtInTypes)
- (baseTypes++finalConstrTypes) finalNs expr
-
- good (Ok x) = True
- good (Fail x2) = False
-
- (rootSubst, rootType, annoTree) = f tcResult where f (Ok x) = x
-
- rootTree = tcSubstAnnTree rootSubst annoTree
-
- rootEnv = tcTreeToEnv rootTree
-
- fullEnv = rootEnv ++ map f finalConstrTypes
- where
- f (naam, (Scheme vs t)) = (naam, t)
-
- fullEnvWords = concat (map tcPretty fullEnv)
-
- (finalNs, constrTypes) =
- mapAccuml tcConstrTypeSchemes ns (tdefs++builtInTypes)
- finalConstrTypes = concat constrTypes
-
- builtInTypes
- = [ ("bool", [], [("True", []), ("False", [])]) ]
-
-
-
---==========================================================--
---=== 9.2 Representation of type expressions ===--
---==========================================================--
-
-----======================================================--
---tcArrow :: TExpr ->
--- TExpr ->
--- TExpr
---
---tcArrow t1 t2 = TArr t1 t2
-
-
-
---======================================================--
-tcInt :: TExpr
-
-tcInt = TCons "int" []
-
-
-
---======================================================--
-tcBool :: TExpr
-
-tcBool = TCons "bool" []
-
-
-
---======================================================--
-tcTvars_in :: TExpr ->
- [TVName]
-
-tcTvars_in t = tvars_in' t []
- where
- tvars_in' (TVar x) l = x:l
- tvars_in' (TCons y ts) l = foldr tvars_in' l ts
- tvars_in' (TArr t1 t2) l = tvars_in' t1 (tvars_in' t2 l)
-
-
---==========================================================--
---=== 9.41 Substitutions ===--
---==========================================================--
-
---======================================================--
-tcApply_sub :: Subst ->
- TVName ->
- TExpr
-
-tcApply_sub phi tvn
- = if TVar tvn == lookUpResult
- then TVar tvn
- else tcSub_type phi lookUpResult
- where
- lookUpResult = utLookupDef phi tvn (TVar tvn)
-
-
---======================================================--
-tcSub_type :: Subst ->
- TExpr ->
- TExpr
-
-tcSub_type phi (TVar tvn) = tcApply_sub phi tvn
-
-tcSub_type phi (TCons tcn ts) = TCons tcn (map (tcSub_type phi) ts)
-
-tcSub_type phi (TArr t1 t2) = TArr (tcSub_type phi t1) (tcSub_type phi t2)
-
-
---======================================================--
-tcScomp :: Subst ->
- Subst ->
- Subst
-
-tcScomp sub2 sub1 = sub1 ++ sub2
-
-
-
---======================================================--
-tcId_subst :: Subst
-
-tcId_subst = []
-
-
-
---======================================================--
-tcDelta :: TVName ->
- TExpr ->
- Subst
--- all TVar -> TVar substitutions lead downhill
-tcDelta tvn (TVar tvn2)
- | tvn == tvn2 = []
- | tvn > tvn2 = [(tvn, TVar tvn2)]
- | tvn < tvn2 = [(tvn2, TVar tvn)]
-
-tcDelta tvn non_var_texpr = [(tvn, non_var_texpr)]
-
-
---==========================================================--
---=== 9.42 Unification ===--
---==========================================================--
-
---======================================================--
-tcExtend :: Subst ->
- TVName ->
- TExpr ->
- Reply Subst Message
-
-tcExtend phi tvn t
- | t == TVar tvn
- = Ok phi
- | tvn `notElem` (tcTvars_in t)
- = Ok ((tcDelta tvn t) `tcScomp` phi)
- | otherwise
- = fail
- ( "Type error in source program:\n\n" ++
- "Circular substitution:\n " ++
- tcShowtExpr (TVar tvn) ++
- "\n going to\n" ++
- " " ++
- tcShowtExpr t ++
- "\n")
-
-
-
---======================================================--
-tcUnify :: Subst ->
- (TExpr, TExpr) ->
- Reply Subst Message
-
-tcUnify phi (TVar tvn, t)
- = if phitvn == TVar tvn
- then tcExtend phi tvn phit
- else tcUnify phi (phitvn, phit)
- where
- phitvn = tcApply_sub phi tvn
- phit = tcSub_type phi t
-
-tcUnify phi (p@(TCons _ _), q@(TVar _))
- = tcUnify phi (q, p)
-
-tcUnify phi (p@(TArr _ _), q@(TVar _))
- = tcUnify phi (q, p)
-
-tcUnify phi (TArr t1 t2, TArr t1' t2')
- = tcUnifyl phi [(t1, t1'), (t2, t2')]
-
-tcUnify phi (TCons tcn ts, TCons tcn' ts')
- | tcn == tcn'
- = tcUnifyl phi (ts `zip` ts')
-
-tcUnify phi (t1, t2)
- = fail
- ( "Type error in source program:\n\n" ++
- "Cannot unify\n " ++
- tcShowtExpr t1 ++
- "\n with\n " ++
- tcShowtExpr t2 ++
- "\n"
- )
-
-
-
---======================================================--
-tcUnifyl :: Subst ->
- [(TExpr, TExpr)] ->
- Reply Subst Message
-
-tcUnifyl phi eqns
- = foldr unify' (Ok phi) eqns
- where
- unify' eqn (Ok phi) = tcUnify phi eqn
- unify' eqn (Fail m) = Fail m
-
-
-
---==========================================================--
---=== 9.42.2 Merging of substitutions ===--
---==========================================================--
-
---======================================================--
-tcMergeSubs :: Subst ->
- Subst
-
-tcMergeSubs phi
- = if newBinds == []
- then unifiedOlds
- else tcMergeSubs (unifiedOlds ++ newBinds)
- where
- (newBinds, unifiedOlds) = tcMergeSubsMain phi
-
-
-
---======================================================--
-tcMergeSubsMain :: Subst ->
- (Subst, Subst) -- pair of new binds, unified olds
-
-tcMergeSubsMain phi
- = (concat newUnifiersChecked,
- zip oldVars (tcOldUnified newUnifiersChecked oldGroups))
- where
- oldVars = nub (utDomain phi)
- oldGroups = map (utLookupAll phi) oldVars
- newUnifiers = map (tcUnifySet tcId_subst) oldGroups
- newUnifiersChecked = map tcCheckUnifier newUnifiers
-
-
-
---======================================================--
-tcCheckUnifier :: Reply Subst Message -> Subst
-
-tcCheckUnifier (Ok r) = r
-tcCheckUnifier (Fail m)
- = panic ("tcCheckUnifier: " ++ m)
-
-
-
---======================================================--
-tcOldUnified :: [Subst] -> [[TExpr]] -> [TExpr]
-
-tcOldUnified [] [] = []
-tcOldUnified (u:us) (og:ogs)
- = (tcSub_type u (head og)): tcOldUnified us ogs
-
-
---==========================================================--
---=== 9.5 Keeping track of types ===--
---==========================================================--
-
---======================================================--
-tcUnknowns_scheme :: TypeScheme ->
- [TVName]
-
-tcUnknowns_scheme (Scheme scvs t) = tcTvars_in t `tcBar` scvs
-
-
-
---======================================================--
-tcBar :: (Eq a) => [a] ->
- [a] ->
- [a]
-
-tcBar xs ys = [ x | x <- xs, not (x `elem` ys)]
-
-
-
---======================================================--
-tcSub_scheme :: Subst ->
- TypeScheme ->
- TypeScheme
-
-tcSub_scheme phi (Scheme scvs t)
- = Scheme scvs (tcSub_type (tcExclude phi scvs) t)
- where
- tcExclude phi scvs = [(n,e) | (n,e) <- phi, not (n `elem` scvs)]
-
-
-
---==========================================================--
---=== 9.53 Association lists ===--
---==========================================================--
-
---======================================================--
-tcCharVal :: AList Naam b -> Naam -> b
-
-tcCharVal al k
- = utLookupDef al k (panic ("tcCharVal: no such variable: " ++ k))
-
-
---======================================================--
-tcUnknowns_te :: TcTypeEnv ->
- [TVName]
-
-tcUnknowns_te gamma = concat (map tcUnknowns_scheme (utRange gamma))
-
-
-
---======================================================--
-tcSub_te :: Subst ->
- TcTypeEnv ->
- TcTypeEnv
-
-tcSub_te phi gamma = [(x, tcSub_scheme phi st) | (x, st) <- gamma]
-
-
---==========================================================--
---=== 9.6 New variables ===--
---==========================================================--
-
---======================================================--
-tcNext_name :: TypeNameSupply ->
- TVName
-
-tcNext_name ns@(f, s) = ns
-
-
-
---======================================================--
-tcDeplete :: TypeNameSupply ->
- TypeNameSupply
-
-tcDeplete (f, s) = (f, tcNSSucc s)
-
-
-
---======================================================--
-tcSplit :: TypeNameSupply ->
- (TypeNameSupply, TypeNameSupply)
-
-tcSplit (f, s) = ((f2, [0]), (tcNSSucc f2, [0]))
- where f2 = tcNSDouble f
-
-
-
---======================================================--
-tcName_sequence :: TypeNameSupply ->
- [TVName]
-
-tcName_sequence ns = tcNext_name ns: tcName_sequence (tcDeplete ns)
-
-
---======================================================--
-tcNSSucc :: [Int] ->
- [Int]
-
-tcNSSucc [] = [1]
-tcNSSucc (n:ns) | n < tcNSslimit = n+1: ns
- | otherwise = 0: tcNSSucc ns
-
-
---======================================================--
-tcNSDouble :: [Int] ->
- [Int]
-
-tcNSDouble [] = []
-tcNSDouble (n:ns)
- = 2*n': ns'
- where n' | n > tcNSdlimit = n - tcNSdlimit
- | otherwise = n
- ns' | n' == n = tcNSDouble ns
- | otherwise = tcNSSucc (tcNSDouble ns)
-
-
-tcNSdlimit :: Int
-tcNSdlimit = 2^30
-
-tcNSslimit :: Int
-tcNSslimit = tcNSdlimit + (tcNSdlimit - 1)
-
-
---==========================================================--
---=== 9.7 The type-checker ===--
---==========================================================--
-
-
---======================================================--
-tc :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- CExpr ->
- Reply TypeInfo Message
-
-tc tds gamma ns (ENum n)
- = Ok (tcId_subst, TCons "int" [], (TCons "int" [], ANum n))
-
-tc tds gamma ns (EVar x)
- = tcvar tds gamma ns x
-
-tc tds gamma ns (EConstr c)
- = tcvar tds gamma ns c
-
-tc tds gamma ns (EAp e1 e2)
- = tcap tds gamma ns e1 e2
-
-tc tds gamma ns (ELam [] e)
- = tc tds gamma ns e
-tc tds gamma ns (ELam [x] e)
- = tclambda tds gamma ns x e
-tc tds gamma ns (ELam (x:y:xs) e)
- = tclambda tds gamma ns x (ELam (y:xs) e)
-
-tc tds gamma ns (ELet recursive dl e)
- = if not recursive
- then tclet tds gamma ns xs es e
- else tcletrec tds gamma ns xs es e
- where
- (xs, es) = unzip2 dl
-
-tc tds gamma ns (ECase switch alts)
- = tccase tds gamma ns switch constructors arglists exprs
- where
- (constructors, alters) = unzip2 alts
- (arglists, exprs) = unzip2 alters
-
-
---==========================================================--
---=== 0.00 Type-checking case-expressions ===--
---==========================================================--
-
-tcConstrTypeSchemes :: TypeNameSupply ->
- TypeDef ->
- (TypeNameSupply, AList Naam TypeScheme)
-
-tcConstrTypeSchemes ns (tn, stvs, cal)
- = (finalNameSupply, map2nd enScheme cAltsCurried)
- where
- -- associates new type vars with each poly var
- -- in the type
- newTVs = tcNewTypeVars (tn, stvs, cal) ns
-
- -- the actual type variables themselves
- tVs = map second newTVs
-
- -- the types of the constructor functions
- cAltsCurried = map2nd (foldr TArr tdSignature) cAltsXLated
- cAltsXLated = map2nd (map (tcTDefSubst newTVs)) cal
- tdSignature = TCons tn (map TVar tVs)
- enScheme texp = Scheme ((nub.tcTvars_in) texp) texp
-
- -- the revised name supply
- finalNameSupply = applyNtimes ( length tVs + 2) tcDeplete ns
-
- -- apply a function n times to an arg
- applyNtimes n func arg
- | n ==0 = arg
- | otherwise = applyNtimes (n-1) func (func arg)
-
-
-
---======================================================--
---
-tccase :: [TypeDef] -> -- constructor type definitions
- TcTypeEnv -> -- current type bindings
- TypeNameSupply -> -- name supply
- CExpr -> -- switch expression
- [Naam] -> -- constructors
- [[Naam]] -> -- argument lists
- [CExpr] -> -- resulting expressions
- Reply TypeInfo Message
-
-
-tccase tds gamma ns sw cs als res
--- get the type definition in use, & an association of
--- variables therein to type vars & pass
--- Also, reorder the argument lists
--- and resulting expressions so as to reflect the
--- sequence of constructors in the definition
- = if length tdCNames /= length (nub cs)
- then fail
- "Error in source program: missing alternatives in CASE"
- else tccase1 tds gamma ns1 sw reOals reOres newTVs tdInUse
- where
- tdInUse = tcGetTypeDef tds cs
- newTVs = tcNewTypeVars tdInUse ns2
- (ns1, ns2) = tcSplit ns
- merge = zip cs (zip als res)
- tdCNames = map first (tcK33 tdInUse)
- (reOals, reOres) = unzip2 (tcReorder tdCNames merge)
-
-
-
---======================================================--
---
-tcReorder :: [Naam] -> [(Naam,b)] -> [b]
-
-tcReorder [] uol = []
-tcReorder (k:ks) uol
- = (utLookupDef uol k
- (fail
- ("Error in source program: undeclared constructor '" ++ k ++
- "' in CASE") ) )
- : tcReorder ks uol
-
-
---======================================================--
--- Projection functions and similar rubbish.
-tcDeOksel (Ok x) = x
-tcDeOksel (Fail m) = panic ("tcDeOkSel: " ++ m)
-tcOk13sel (Ok (a, b, c)) = a
-tcOk13sel (Fail m) = panic ("tcOk13sel: " ++ m)
-tcOk23sel (Ok (a, b, c)) = b
-tcOk23sel (Fail m) = panic ("tcOk23sel: " ++ m)
-tcOk33sel (Ok (a, b, c)) = c
-tcOk33sel (Fail m) = panic ("tcOk33sel: " ++ m)
-tcK31sel (a, b, c) = a
-tcK33 (a,b,c) = c
-
-
-
---======================================================--
---
-tccase1 :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- CExpr ->
- [[Naam]] ->
- [CExpr] ->
- AList Naam TVName ->
- TypeDef ->
- Reply TypeInfo Message
-
-tccase1 tds gamma ns sw reOals reOres newTVs tdInUse
--- calculate all the gammas for the RHS's
--- call tc for each RHS, so as to gather all the
--- sigmas and types for each RHS, then pass on
- = tccase2 tds gamma ns2 sw reOals newTVs tdInUse rhsTcs
- where
- rhsGammas = tcGetAllGammas newTVs (tcK33 tdInUse) reOals
- rhsTcs = rhsTc1 ns1 rhsGammas reOres
- rhsTc1 nsl [] [] = []
- rhsTc1 nsl (g:gs) (r:rs)
- = tc tds (g++gamma) nsl1 r : rhsTc1 nsl2 gs rs
- where (nsl1, nsl2) = tcSplit nsl
- (ns1, ns2) = tcSplit ns
-
-
---======================================================--
---
-tccase2 :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- CExpr ->
- [[Naam]] ->
- AList Naam TVName ->
- TypeDef ->
- [Reply TypeInfo Message] ->
- Reply TypeInfo Message
-
-tccase2 tds gamma ns sw reOals newTVs tdInUse rhsTcs
--- get the unifiers for T1 to Tk and hence the unifier for all
--- type variables in the type definition. Also compute the
--- unifier of the result types.
- = tccase3 tds gamma ns sw reOals newTVs tdInUse rhsTcs
- phi_1_to_n tau_1_to_n phi_rhs
- where
- phi_1_to_n = map tcOk13sel rhsTcs
- tau_1_to_n = map tcOk23sel rhsTcs
- phi_rhs = tcDeOksel (tcUnifySet tcId_subst tau_1_to_n)
-
-
-
---======================================================--
---
-tccase3 :: [TypeDef] -> -- tds
- TcTypeEnv -> -- gamma
- TypeNameSupply -> -- ns
- CExpr -> -- sw
- [[Naam]] -> -- reOals
- AList Naam TVName -> -- newTVs
- TypeDef -> -- tdInUse
- [Reply TypeInfo Message] -> -- rhsTcs
- [Subst] -> -- phi_1_to_n
- [TExpr] -> -- tau_1_to_n
- Subst -> -- phi_rhs
- Reply TypeInfo Message
-
-tccase3 tds gamma ns sw reOals newTVs tdInUse rhsTcs
- phi_1_to_n tau_1_to_n phi_rhs
--- make up substitutions for each of the unknown tvars
--- merge the substitutions into one
--- apply the substitution to the typedef's signature to get the
--- most general allowable input type
--- call tc to get the type of the switch expression
--- check that this is an instance of the deduced input type
--- gather the new bindings from the RHSs and switch expression
--- return Ok (the big substitution, the result type, gathered bindings)
- = Ok (phi_Big, tau_final,
- (tau_final, ACase tree_s
- (zip tdCNames (zip reOals annotatedRHSs))))
- where
- phi_sTau_sTree_s = tc tds gamma ns sw
- phi_s = tcOk13sel phi_sTau_sTree_s
- tau_s = tcOk23sel phi_sTau_sTree_s
- tree_s = tcOk33sel phi_sTau_sTree_s
-
- phi = tcMergeSubs (concat phi_1_to_n ++ phi_rhs ++ phi_s)
-
- tau_lhs = tcSub_type phi tdSignature
-
- phi_lhs = tcUnify tcId_subst (tau_lhs, tau_s) -- reverse these?
-
- phi_Big = tcMergeSubs (tcDeOksel phi_lhs ++ phi)
-
- tau_final = tcSub_type phi_Big (head (map tcOk23sel rhsTcs))
-
- annotatedRHSs = map tcOk33sel rhsTcs
- tVs = map second newTVs
- tdSignature = TCons (tcK31sel tdInUse) (map TVar tVs)
- tdCNames = map first (tcK33 tdInUse)
-
-
---======================================================--
---
-tcUnifySet :: Subst ->
- [TExpr] ->
- Reply Subst Message
-
-tcUnifySet sub (e1:[]) = Ok sub
-tcUnifySet sub (e1:e2:[])
- = tcUnify sub (e1, e2)
-tcUnifySet sub (e1:e2:e3:es)
- = tcUnifySet newSub (e2:e3:es)
- where
- newSub = tcDeOksel (tcUnify sub (e1, e2))
-
-
---======================================================--
---
-tcNewTypeVars :: TypeDef ->
- TypeNameSupply ->
- AList Naam TVName
-
-tcNewTypeVars (t, vl, c) ns = zip vl (tcName_sequence ns)
-
-
-
---======================================================--
---
-tcGetGammaN :: AList Naam TVName ->
- ConstrAlt ->
- [Naam] ->
- AList Naam TypeScheme
-
-tcGetGammaN tvl (cname, cal) cparams
- = zip cparams (map (Scheme [] . tcTDefSubst tvl) cal)
-
-
-
---======================================================--
---
-tcTDefSubst :: AList Naam TVName ->
- TDefExpr ->
- TExpr
-
-tcTDefSubst nameMap (TDefVar n)
- = f result
- where
- f (Just tvn) = TVar tvn
- f Nothing = TCons n []
- result = utLookup nameMap n
-
-tcTDefSubst nameMap (TDefCons c al)
- = TCons c (map (tcTDefSubst nameMap) al)
-
-
---======================================================--
---
-tcGetAllGammas :: AList Naam TVName ->
- [ConstrAlt] ->
- [[Naam]] ->
- [AList Naam TypeScheme]
-
-tcGetAllGammas tvl [] [] = []
--- note param lists cparamss must be ordered in
--- accordance with calts
-tcGetAllGammas tvl (calt:calts) (cparams:cparamss) =
- tcGetGammaN tvl calt cparams :
- tcGetAllGammas tvl calts cparamss
-
-
---======================================================--
---
-tcGetTypeDef :: [TypeDef] -> -- type definitions
- [Naam] -> -- list of constructors used here
- TypeDef
-
-tcGetTypeDef tds cs
- = if length tdefset == 0
- then fail "Undeclared constructors in use"
- else if length tdefset > 1
- then fail "CASE expression contains mixed constructors"
- else head tdefset
- where
- tdefset = nub
- [ (tname, ftvs, cl) |
- (tname, ftvs, cl) <- tds,
- usedc <- cs,
- usedc `elem` (map first cl) ]
-
-
---==========================================================--
---=== 9.71 Type-checking lists of expressions ===--
---==========================================================--
-
---======================================================--
---
-tcl :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- [CExpr] ->
- Reply (Subst, [TExpr], [AnnExpr Naam TExpr]) Message
-
-tcl tds gamma ns []
- = Ok (tcId_subst, [], [])
-tcl tds gamma ns (e:es)
- = tcl1 tds gamma ns0 es (tc tds gamma ns1 e)
- where
- (ns0, ns1) = tcSplit ns
-
-
---======================================================--
---
-tcl1 tds gamma ns es (Fail m) = Fail m
-tcl1 tds gamma ns es (Ok (phi, t, annotatedE))
- = tcl2 phi t (tcl tds (tcSub_te phi gamma) ns es) annotatedE
-
-
---======================================================--
---
-tcl2 phi t (Fail m) annotatedE = Fail m
-tcl2 phi t (Ok (psi, ts, annotatedEs)) annotatedE
- = Ok (psi `tcScomp` phi, (tcSub_type psi t):ts,
- annotatedE:annotatedEs)
-
-
---==========================================================--
---=== 9.72 Type-checking variables ===--
---==========================================================--
-
---======================================================--
---
-tcvar :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- Naam ->
- Reply TypeInfo Message
-
-tcvar tds gamma ns x = Ok (tcId_subst, finalType, (finalType, AVar x))
- where
- scheme = tcCharVal gamma x
- finalType = tcNewinstance ns scheme
-
-
---======================================================--
---
-tcNewinstance :: TypeNameSupply ->
- TypeScheme ->
- TExpr
-
-tcNewinstance ns (Scheme scvs t) = tcSub_type phi t
- where
- al = scvs `zip` (tcName_sequence ns)
- phi = tcAl_to_subst al
-
-
---======================================================--
---
-tcAl_to_subst :: AList TVName TVName ->
- Subst
-
-tcAl_to_subst al = map2nd TVar al
-
-
---==========================================================--
---=== 9.73 Type-checking applications ===--
---==========================================================--
-
---======================================================--
---
-tcap :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- CExpr ->
- CExpr ->
- Reply TypeInfo Message
-
-tcap tds gamma ns e1 e2 = tcap1 tvn (tcl tds gamma ns' [e1, e2])
- where
- tvn = tcNext_name ns
- ns' = tcDeplete ns
-
-
---======================================================--
---
-tcap1 tvn (Fail m)
- = Fail m
-tcap1 tvn (Ok (phi, [t1, t2], [ae1, ae2]))
- = tcap2 tvn (tcUnify phi (t1, t2 `TArr` (TVar tvn))) [ae1, ae2]
-
-
---======================================================--
---
-tcap2 tvn (Fail m) [ae1, ae2]
- = Fail m
-tcap2 tvn (Ok phi) [ae1, ae2]
- = Ok (phi, finalType, (finalType, AAp ae1 ae2))
- where
- finalType = tcApply_sub phi tvn
-
-
---==========================================================--
---=== 9.74 Type-checking lambda abstractions ===--
---==========================================================--
-
---======================================================--
---
-tclambda :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- Naam ->
- CExpr ->
- Reply TypeInfo Message
-
-tclambda tds gamma ns x e = tclambda1 tvn x (tc tds gamma' ns' e)
- where
- ns' = tcDeplete ns
- gamma' = tcNew_bvar (x, tvn): gamma
- tvn = tcNext_name ns
-
-
---======================================================--
---
-tclambda1 tvn x (Fail m) = Fail m
-
-tclambda1 tvn x (Ok (phi, t, annotatedE)) =
- Ok (phi, finalType, (finalType, ALam [x] annotatedE))
- where
- finalType = (tcApply_sub phi tvn) `TArr` t
-
-
---======================================================--
---
-tcNew_bvar (x, tvn) = (x, Scheme [] (TVar tvn))
-
-
---==========================================================--
---=== 9.75 Type-checking let-expressions ===--
---==========================================================--
-
---======================================================--
---
-tclet :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- [Naam] ->
- [CExpr] ->
- CExpr ->
- Reply TypeInfo Message
-
-tclet tds gamma ns xs es e
- = tclet1 tds gamma ns0 xs e rhsTypes
- where
- (ns0, ns1) = tcSplit ns
- rhsTypes = tcl tds gamma ns1 es
-
-
---======================================================--
---
-tclet1 tds gamma ns xs e (Fail m) = Fail m
-
-tclet1 tds gamma ns xs e (Ok (phi, ts, rhsAnnExprs))
- = tclet2 phi xs False (tc tds gamma'' ns1 e) rhsAnnExprs
- where
- gamma'' = tcAdd_decls gamma' ns0 xs ts
- gamma' = tcSub_te phi gamma
- (ns0, ns1) = tcSplit ns
-
-
---======================================================--
---
-tclet2 phi xs recFlag (Fail m) rhsAnnExprs = Fail m
-
-tclet2 phi xs recFlag (Ok (phi', t, annotatedE)) rhsAnnExprs
- = Ok (phi' `tcScomp` phi, t, (t, ALet recFlag (zip xs rhsAnnExprs) annotatedE))
-
-
---======================================================--
---
-tcAdd_decls :: TcTypeEnv ->
- TypeNameSupply ->
- [Naam] ->
- [TExpr] ->
- TcTypeEnv
-
-tcAdd_decls gamma ns xs ts = (xs `zip` schemes) ++ gamma
- where
- schemes = map (tcGenbar unknowns ns) ts
- unknowns = tcUnknowns_te gamma
-
-
---======================================================--
---
-tcGenbar unknowns ns t = Scheme (map second al) t'
- where
- al = scvs `zip` (tcName_sequence ns)
- scvs = (nub (tcTvars_in t)) `tcBar` unknowns
- t' = tcSub_type (tcAl_to_subst al) t
-
-
-
---==========================================================--
---=== 9.76 Type-checking letrec-expressions ===--
---==========================================================--
-
---======================================================--
---
-tcletrec :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- [Naam] ->
- [CExpr] ->
- CExpr ->
- Reply TypeInfo Message
-
-tcletrec tds gamma ns xs es e
- = tcletrec1 tds gamma ns0 xs nbvs e
- (tcl tds (nbvs ++ gamma) ns1 es)
- where
- (ns0, ns') = tcSplit ns
- (ns1, ns2) = tcSplit ns'
- nbvs = tcNew_bvars xs ns2
-
-
---======================================================--
---
-tcNew_bvars xs ns = map tcNew_bvar (xs `zip` (tcName_sequence ns))
-
-
-
---======================================================--
---
-tcletrec1 tds gamma ns xs nbvs e (Fail m) = (Fail m)
-
-tcletrec1 tds gamma ns xs nbvs e (Ok (phi, ts, rhsAnnExprs))
- = tcletrec2 tds gamma' ns xs nbvs' e (tcUnifyl phi (ts `zip` ts')) rhsAnnExprs
- where
- ts' = map tcOld_bvar nbvs'
- nbvs' = tcSub_te phi nbvs
- gamma' = tcSub_te phi gamma
-
-
---======================================================--
---
-tcOld_bvar (x, Scheme [] t) = t
-
-
---======================================================--
---
-tcletrec2 tds gamma ns xs nbvs e (Fail m) rhsAnnExprs = (Fail m)
-
-tcletrec2 tds gamma ns xs nbvs e (Ok phi) rhsAnnExprs
- = tclet2 phi xs True (tc tds gamma'' ns1 e) rhsAnnExprs
- where
- ts = map tcOld_bvar nbvs'
- nbvs' = tcSub_te phi nbvs
- gamma' = tcSub_te phi gamma
- gamma'' = tcAdd_decls gamma' ns0 (map first nbvs) ts
- (ns0, ns1) = tcSplit ns
- subnames = map first nbvs
-
-
---==========================================================--
---=== End TypeCheck5.m (1) ===--
---==========================================================--
diff --git a/testsuite/tests/ghc-regress/programs/jules_xref/jules_xref.stdout b/testsuite/tests/ghc-regress/programs/jules_xref/jules_xref.stdout
deleted file mode 100644
index 8a8af9e4c6..0000000000
--- a/testsuite/tests/ghc-regress/programs/jules_xref/jules_xref.stdout
+++ /dev/null
@@ -1,500 +0,0 @@
-("A",[3])
-("AAp",[26,27,63,937])
-("ACase",[30,31,67,719])
-("AConstr",[25,25,62])
-("ALam",[32,32,64,967])
-("ALet",[28,29,65,1015])
-("AList",[415,553,649,675,700,762,770,773,782,799,802,899])
-("ANum",[24,24,61,515])
-("AVar",[23,23,60,879])
-("Also",[596,682])
-("AnnExpr",[17,18,44,45,52,120,842])
-("Association",[411])
-("AtomicProgram",[119])
-("BaseDefs",[8])
-("Big",[718,733,735])
-("CASE",[601,622,822])
-("CExpr",[511,586,589,646,648,673,698,841,914,915,952,987,988,1052,1053])
-("Cannot",[306])
-("Char",[78,109,120])
-("Circular",[268])
-("ConstrAlt",[771,800])
-("Corrected",[4])
-("EAp",[523])
-("ECase",[540])
-("EConstr",[520])
-("ELam",[526,528,530,531])
-("ELet",[533])
-("ENum",[514])
-("EVar",[517])
-("End",[1104])
-("Eq",[390])
-("Error",[601,621])
-("Fail",[125,131,324,324,364,629,631,633,635,854,854,861,861,926,927,934,935,964,964,1000,1000,1012,1012,1073,1073,1090,1090])
-("False",[81,89,90,92,131,150,1003])
-("File",[3])
-("Formatting",[13])
-("Int",[474,475,483,484,495,498])
-("Just",[789])
-("Keeping",[378])
-("Merging",[329])
-("Message",[120,258,280,318,361,512,590,651,677,678,702,706,747,842,877,916,953,989,1054])
-("MyUtils",[10])
-("Naam",[44,45,52,108,120,415,415,553,587,588,615,615,647,649,674,675,699,700,762,770,772,773,782,799,801,802,815,842,876,951,986,1022,1051])
-("New",[438])
-("No",[125])
-("Nothing",[790])
-("Ok",[124,130,133,262,264,321,323,363,515,628,630,632,634,717,718,749,845,855,862,863,879,928,936,937,966,967,1002,1014,1015,1075,1092])
-("Projection",[627])
-("RHS",[654,655,656])
-("RHSs",[716])
-("Reply",[120,258,280,318,361,512,590,651,677,678,702,706,747,842,877,916,953,989,1054])
-("Representation",[155])
-("Scheme",[141,385,403,404,569,776,891,974,1034,1085])
-("Subst",[43,197,210,222,223,224,231,240,255,258,278,280,316,318,333,334,346,347,347,361,361,370,399,430,703,705,745,747,842,900])
-("Substitutions",[193])
-("T1",[681])
-("TArr",[87,90,103,163,189,218,218,293,296,296,566,929,969])
-("TCons",[84,85,86,93,102,170,177,188,216,216,290,299,299,515,515,568,739,790,794])
-("TDefCons",[793])
-("TDefExpr",[783])
-("TDefVar",[786])
-("TExpr",[44,45,52,77,108,120,159,160,161,168,175,182,199,211,212,239,257,279,279,317,317,370,370,704,746,784,842,842,889,1023])
-("TVName",[183,198,238,256,383,423,443,468,649,675,700,762,770,782,799,899,899])
-("TVar",[83,101,187,202,203,206,214,241,241,242,244,245,261,269,282,283,290,293,568,739,789,902,929,974])
-("TcTypeEnv",[117,422,431,432,509,584,644,671,696,839,874,912,949,984,1020,1024,1049])
-("The",[503])
-("Tk",[681])
-("True",[87,88,91,95,130,150,1093])
-("Type",[97,267,305,548,833,868,906,943,978,1043])
-("TypeCheck5",[3,7,1104])
-("TypeDef",[508,552,583,643,650,670,676,695,701,760,814,816,838,873,911,948,983,1048])
-("TypeEnv",[53,120])
-("TypeInfo",[512,590,651,677,678,702,706,877,916,953,989,1054])
-("TypeNameSupply",[118,442,450,451,458,459,459,467,510,551,553,585,645,672,697,761,840,875,887,913,950,985,1021,1050])
-("TypeScheme",[382,400,401,553,773,802,888])
-("Undeclared",[820])
-("Unification",[251])
-("Utils",[9])
-("a",[4,16,17,390,390,391,392,574,630,630,632,634,636,636,637])
-("aFN",[66,70])
-("abstractions",[943])
-("accordance",[806])
-("actual",[562])
-("ae1",[26,27,63,63,928,929,934,936,937])
-("ae2",[26,27,63,63,928,929,934,936,937])
-("al",[417,418,793,794,893,894,902,902,1034,1036,1038])
-("all",[241,654,655,681])
-("allowable",[713])
-("als",[593,607])
-("alternatives",[601])
-("alters",[543,544])
-("alts",[67,68,540,543])
-("an",[574,594,715])
-("and",[597,627,656,681,716])
-("ann",[20,21])
-("annAlts",[30,31])
-("annDefs",[28,29])
-("annoTree",[133,135])
-("annotatedE",[855,856,861,862,864,966,967,1014,1015])
-("annotatedEs",[862,864])
-("annotatedRHSs",[720,737])
-("applications",[906])
-("apply",[574,712])
-("applyNtimes",[572,575,577])
-("arg",[574,575,576,577])
-("arglists",[541,544])
-("argument",[588,596])
-("as",[597,655])
-("associates",[558])
-("association",[594])
-("b",[16,18,83,84,85,86,93,415,415,615,615,630,632,632,634,636,637])
-("baseTypes",[122,128])
-("be",[805])
-("big",[717])
-("bindings",[584,716,717])
-("binds",[347])
-("body",[70,71])
-("bool",[85,85,150,177])
-("builtInTypes",[127,146,149])
-("bvar",[958,974,1067,1078,1085,1095])
-("bvars",[1062,1067])
-("c",[17,18,25,25,62,102,520,521,630,632,634,634,636,637,637,764,793,794])
-("cAltsCurried",[556,566])
-("cAltsXLated",[566,567])
-("cal",[555,560,567,775,776])
-("calculate",[654])
-("call",[655,714])
-("calt",[807,808])
-("calts",[806,807,809])
-("case",[548])
-("char",[86,86])
-("check",[715])
-("checker",[3,503])
-("checking",[548,833,868,906,943,978,1043])
-("chr",[83])
-("cl",[93,95,826,827,829])
-("cname",[775])
-("compute",[682])
-("concat",[66,68,95,102,143,147,350,425,727])
-("constrTypes",[145,147])
-("constructor",[565,583,621])
-("constructors",[541,543,587,598,815,820,822])
-("contains",[822])
-("cparams",[775,776,807,808])
-("cparamss",[805,807,809])
-("cs",[64,593,599,604,607,818,828])
-("current",[584])
-("decls",[1005,1020,1026,1098])
-("deduced",[715])
-("definition",[594,598,682])
-("definitions",[583,814])
-("dl",[65,66,533,538])
-("downhill",[241])
-("e",[32,32,64,64,406,406,526,527,528,529,530,531,533,535,536,846,847,955,955,991,992,1000,1002,1003,1056,1057,1073,1075,1076,1090,1092,1093])
-("e1",[523,524,749,750,751,752,755,918,918])
-("e2",[523,524,750,751,752,753,755,918,918])
-("e3",[752,753])
-("each",[558,655,656,710])
-("elem",[394,406,829])
-("else",[125,204,285,339,536,602,821,823])
-("enScheme",[556,569])
-("eqn",[323,323,324])
-("eqns",[320,321])
-("error",[267,305])
-("es",[535,536,538,752,753,846,847,854,855,856,991,995,1056,1058])
-("expr",[34,35,122,128])
-("expression",[586,714,716,822])
-("expressions",[155,548,589,597,833,978,1043])
-("exprs",[541,544])
-("f",[20,21,27,27,29,31,32,35,38,133,133,139,141,445,453,453,461,462,787,789,790])
-("f2",[461,461,462])
-("fail",[266,304,600,620,820,822])
-("failed",[97])
-("final",[718,719,735])
-("finalConstrTypes",[128,139,147])
-("finalNameSupply",[556,572])
-("finalNs",[128,145])
-("finalType",[879,879,882,937,937,939,967,967,969])
-("first",[608,740,829,1098,1100])
-("foldr",[188,321,566])
-("for",[4,654,655,656,681,681,710])
-("from",[716])
-("ftvs",[826,827])
-("fullEnv",[124,139,143])
-("fullEnvWords",[124,143])
-("func",[575,577,577])
-("function",[574])
-("functions",[565,627])
-("g",[662,663])
-("gamma",[425,425,434,434,514,517,518,520,521,523,524,526,527,528,529,530,531,533,535,536,540,541,593,602,653,657,663,680,684,696,708,722,844,846,847,847,854,855,856,879,881,918,918,955,955,958,958,991,992,995,1000,1002,1003,1005,1005,1006,1006,1026,1026,1029,1056,1057,1058,1073,1075,1076,1080,1080,1090,1092,1093,1097,1097,1098,1098])
-("gammas",[654])
-("gather",[655,716])
-("gathered",[717])
-("general",[713])
-("get",[594,681,712,714])
-("going",[270])
-("good",[123,130,131])
-("gs",[662,663])
-("head",[374,735,823])
-("hence",[681])
-("here",[815])
-("if",[123,202,283,337,534,599,819,821])
-("import",[8,9,10])
-("in",[182,185,185,187,188,188,189,189,189,263,267,305,385,559,569,594,598,601,601,621,622,682,805,820,1037])
-("input",[713,715])
-("instance",[715])
-("int",[84,84,170,515,515])
-("into",[711])
-("is",[715])
-("k",[417,418,418,618,619,621])
-("ks",[618,623])
-("l",[187,187,188,188,189,189])
-("lambda",[943])
-("lead",[241])
-("length",[572,599,599,819,821])
-("let",[978])
-("letrec",[1043])
-("lhs",[729,731,731,733])
-("list",[815])
-("lists",[411,588,596,805,833])
-("ljustify",[112])
-("lookUpResult",[202,204,206])
-("lookup",[83,96,97,98,99])
-("m",[3,324,324,364,365,629,629,631,631,633,633,635,635,854,854,861,861,926,927,934,935,964,964,1000,1000,1012,1012,1073,1073,1090,1090,1104])
-("mainExpr",[28,29])
-("make",[710])
-("map",[29,31,66,68,95,102,139,143,216,354,355,356,425,563,567,568,608,687,688,735,737,738,739,740,776,794,829,1028,1034,1067,1078,1095,1098,1100])
-("map2nd",[556,566,567,902])
-("mapAccuml",[146])
-("mapAnnAlt",[31,37])
-("mapAnnDefn",[29,34])
-("mapAnnExpr",[21,23,24,25,26,28,30,32])
-("me",[65,66])
-("merge",[607,609,711])
-("missing",[601])
-("mixed",[822])
-("module",[7])
-("most",[713])
-("must",[805])
-("n",[24,24,61,112,267,267,268,270,270,273,305,305,306,308,308,310,406,406,406,478,478,478,487,488,489,489,489,490,491,491,514,515,574,575,576,577,685,685,687,688,689,703,704,709,709,727,786,790,791])
-("naam",[34,35,37,38,70,71,111,112,141,141])
-("name",[97,442,445,470,571,585,920,959])
-("nameMap",[786,791,793,794])
-("nbvs",[1057,1058,1062,1073,1075,1076,1078,1079,1079,1090,1092,1095,1096,1096,1098,1100])
-("new",[347,558,716])
-("newBinds",[337,339,341])
-("newSub",[753,755])
-("newTVs",[560,563,567,602,605,653,657,659,680,684,700,708,738])
-("newUnifiers",[355,356])
-("newUnifiersChecked",[350,351,356])
-("no",[418])
-("node",[20,21,58,58])
-("nodeType",[58])
-("non",[247,247])
-("not",[394,406,534])
-("notArrow",[93,94])
-("notElem",[263])
-("note",[805])
-("ns",[122,146,445,445,470,470,470,478,478,479,487,488,491,491,492,514,517,518,520,521,523,524,526,527,528,529,530,531,533,535,536,540,541,555,560,572,593,606,653,665,680,684,697,708,722,764,764,844,846,849,854,855,856,879,882,891,893,918,918,920,921,921,955,955,957,957,959,991,994,1000,1002,1007,1026,1028,1034,1036,1056,1060,1060,1061,1067,1067,1073,1075,1076,1090,1092,1099])
-("ns0",[847,849,992,994,1005,1007,1057,1060,1098,1099])
-("ns1",[602,606,660,665,847,849,994,995,1003,1007,1058,1061,1093,1099])
-("ns2",[605,606,657,665,1061,1062])
-("nsl",[661,662,664])
-("nsl1",[663,664])
-("nsl2",[663,664])
-("nub",[100,353,569,599,825,1037])
-("of",[13,155,329,347,378,565,594,598,683,710,714,715,815,833])
-("og",[373,374])
-("ogs",[373,374])
-("oldGroups",[351,354,355])
-("oldVars",[351,353,354])
-("olds",[347])
-("on",[656])
-("one",[711])
-("ordered",[805])
-("otherwise",[99,265,479,490,492,577])
-("p",[290,291,293,294])
-("pair",[347])
-("panic",[97,365,418,629,631,633,635])
-("param",[805])
-("pars",[37,38])
-("pass",[595,656])
-("phi",[47,47,201,204,206,214,214,216,216,218,218,218,260,262,264,282,284,285,287,288,290,291,293,294,296,297,299,301,303,320,321,323,323,336,341,349,353,354,403,404,406,406,434,434,685,685,687,689,703,705,709,709,718,722,723,723,724,725,727,727,727,727,729,731,733,733,733,735,855,856,856,861,862,863,891,894,928,929,936,937,939,966,967,969,1002,1003,1006,1012,1014,1014,1015,1015,1075,1076,1079,1080,1092,1093,1096,1097])
-("phit",[284,285,288])
-("phitvn",[283,285,287])
-("poly",[558])
-("pretty",[81,83,84,85,86,87,88,89,90,91,92,93,95])
-("program",[267,305,601,621])
-("psi",[862,863,863])
-("q",[290,291,293,294])
-("r",[363,363,662,663])
-("reOals",[602,609,653,657,659,680,684,699,708,720])
-("reOres",[602,609,653,660])
-("recFlag",[28,29,1012,1014,1015])
-("recursive",[533,534])
-("reflect",[597])
-("reorder",[596])
-("res",[593,607])
-("resExpr",[37,38])
-("result",[683,717,787,791])
-("resulting",[589,597])
-("results",[13])
-("return",[717])
-("reverse",[731])
-("revised",[571])
-("rf",[65])
-("rhs",[685,689,705,709,727])
-("rhsAnnExprs",[1002,1003,1012,1014,1015,1075,1076,1090,1092,1093])
-("rhsGammas",[659,660])
-("rhsTc1",[660,661,662,663])
-("rhsTcs",[657,660,680,684,687,688,702,708,735,737])
-("rhsTypes",[992,995])
-("rootEnv",[137,139])
-("rootSubst",[133,135])
-("rootTree",[124,135,137])
-("rootType",[133])
-("rs",[662,663])
-("rubbish",[627])
-("s",[445,453,453,461,654,712,719,722,723,723,724,724,725,725,727,731])
-("sTau",[722,723,724,725])
-("sTree",[722,723,724,725])
-("scheme",[382,385,399,403,425,434,881,882])
-("schemes",[1026,1028])
-("scvs",[385,385,403,404,404,406,406,891,893,1036,1037])
-("second",[68,68,563,738,1034])
-("sequence",[467,470,470,598,764,893,1036,1067])
-("sigmas",[656])
-("signature",[712])
-("similar",[627])
-("so",[597,655])
-("source",[267,305,601,621])
-("st",[434,434])
-("stvs",[555,560])
-("sub",[197,201,214,287,749,749,750,751,752,755,939,969])
-("sub1",[226,226])
-("sub2",[226,226])
-("subnames",[1100])
-("subst",[231,233,355,515,689,731,845,879,894,899,902,1038])
-("substitution",[268,712,717])
-("substitutions",[241,329,710,711])
-("such",[418])
-("supply",[571,585])
-("sw",[67,68,593,602,653,657,680,684,698,708,722])
-("switch",[540,541,586,714,716])
-("switchExpr",[30,31])
-("t",[80,81,98,98,100,101,101,141,141,185,185,260,261,263,264,272,282,288,385,385,403,404,764,855,856,861,862,863,891,891,966,969,1014,1015,1015,1034,1034,1037,1038,1038,1085,1085])
-("t1",[87,88,90,91,103,103,163,163,189,189,218,218,296,296,297,297,303,307,928,929])
-("t2",[87,89,90,92,103,103,163,163,189,189,218,218,296,296,297,297,303,309,928,929])
-("t2e",[56,58,58,60,61,62,63,63,63,64,64,65,66,67,68,68,71])
-("tVs",[563,568,572,738,739])
-("tau",[685,688,689,704,709,718,719,724,729,731,731,735])
-("tc",[127,508,514,517,520,523,526,527,528,530,533,540,655,663,714,722,847,955,1003,1093])
-("tcAdd",[1005,1020,1026,1098])
-("tcAl",[894,899,902,1038])
-("tcApply",[197,201,214,287,939,969])
-("tcArrow",[159,163])
-("tcBar",[385,390,394,1037])
-("tcBool",[175,177])
-("tcCharVal",[415,417,418,881])
-("tcCheck",[117,122])
-("tcCheckUnifier",[356,361,363,364,365])
-("tcConstrTypeSchemes",[146,551,555])
-("tcDeOkSel",[629])
-("tcDeOksel",[628,629,689,733,755])
-("tcDelta",[238,242,247,264])
-("tcDeplete",[450,453,470,572,921,957])
-("tcExclude",[404,406])
-("tcExtend",[255,260,284])
-("tcGenbar",[1028,1034])
-("tcGetAllGammas",[659,799,804,807,809])
-("tcGetGammaN",[770,775,808])
-("tcGetTypeDef",[604,814,818])
-("tcId",[231,233,355,515,689,731,845,879])
-("tcInt",[168,170])
-("tcK31sel",[636,739])
-("tcK33",[608,637,659,740])
-("tcMapAnnExpr",[16,20,27,27,29,31,32,35,38,47])
-("tcMergeSubs",[333,336,339,727,733])
-("tcMergeSubsMain",[341,346,349])
-("tcNSDouble",[462,483,486,487,491,492])
-("tcNSSucc",[453,461,474,477,478,479,492])
-("tcNSdlimit",[489,489,495,496,499,499])
-("tcNSslimit",[478,498,499])
-("tcName",[467,470,470,764,893,1036,1067])
-("tcNew",[958,974,1062,1067,1067])
-("tcNewTypeVars",[560,605,760,764])
-("tcNewinstance",[882,887,891])
-("tcNext",[442,445,470,920,959])
-("tcOk13sel",[630,631,631,687,723])
-("tcOk23sel",[632,633,633,688,724,735])
-("tcOk33sel",[634,635,635,725,737])
-("tcOld",[1078,1085,1095])
-("tcOldUnified",[351,370,372,373,374])
-("tcPretty",[108,111,143])
-("tcReorder",[609,615,617,618,623])
-("tcResult",[123,127,133])
-("tcScomp",[222,226,264,863,1015])
-("tcShowtExpr",[77,80,97,113,269,272,307,309])
-("tcSplit",[458,461,606,664,665,849,994,1007,1060,1061,1099])
-("tcSub",[47,204,210,214,216,216,218,218,218,288,374,399,403,404,430,434,434,729,735,856,863,891,1006,1038,1079,1080,1096,1097])
-("tcSubstAnnTree",[43,47,135])
-("tcTDefSubst",[567,776,782,786,793,794])
-("tcTreeToEnv",[52,55,137])
-("tcTvars",[182,185,263,385,569,1037])
-("tcUnify",[278,282,285,290,291,293,294,296,299,303,323,731,751,755,929])
-("tcUnifySet",[355,689,745,749,750,752,753])
-("tcUnifyl",[297,301,316,320,1076])
-("tcUnknowns",[382,385,422,425,425,1029])
-("tcap",[524,911,918])
-("tcap1",[918,926,928])
-("tcap2",[929,934,936])
-("tccase",[541,583,593])
-("tccase1",[602,643,653])
-("tccase2",[657,670,680])
-("tccase3",[684,695,708])
-("tcl",[838,844,846,856,918,995,1058])
-("tcl1",[847,854,855])
-("tcl2",[856,861,862])
-("tclambda",[529,531,948,955])
-("tclambda1",[955,964,966])
-("tclet",[535,983,991])
-("tclet1",[992,1000,1002])
-("tclet2",[1003,1012,1014,1093])
-("tcletrec",[536,1048,1056])
-("tcletrec1",[1057,1073,1075])
-("tcletrec2",[1076,1090,1092])
-("tcn",[216,216,299,299,300,300])
-("tcvar",[518,521,873,879])
-("tdCNames",[599,608,609,720,740])
-("tdInUse",[602,604,605,608,653,657,659,680,684,701,708,739,740])
-("tdSignature",[566,568,729,739])
-("tdefs",[122,127,146])
-("tdefset",[819,821,823,825])
-("tds",[514,517,518,520,521,523,524,526,527,528,529,530,531,533,535,536,540,541,593,602,604,653,657,663,680,684,695,708,722,818,827,844,846,847,847,854,855,856,879,918,918,955,955,991,992,995,1000,1002,1003,1056,1057,1058,1073,1075,1076,1090,1092,1093])
-("te",[422,425,430,434,856,1006,1029,1079,1080,1096,1097])
-("texp",[569,569,569])
-("texpr",[247,247])
-("that",[715])
-("the",[559,562,565,565,571,594,596,597,598,654,654,655,681,681,682,682,683,710,711,712,712,712,714,714,715,716,716,717,717])
-("themselves",[562])
-("then",[124,203,284,338,535,600,656,820,822])
-("therein",[595])
-("these",[731])
-("this",[715])
-("tijp",[70,71])
-("times",[574])
-("tipe",[111,113])
-("tn",[555,560,568])
-("tname",[826,827])
-("to",[270,574,595,597,655,681,685,685,687,688,689,703,704,709,709,712,712,714,727,894,899,902,1038])
-("track",[378])
-("tree",[47,47,55,56,719,725])
-("ts",[98,99,102,102,188,188,216,216,299,299,301,301,862,863,1002,1005,1026,1028,1075,1076,1076,1078,1095,1098])
-("tvars",[185,187,188,188,189,189,189,710])
-("tvdict",[83,100,100,101,102,102,103,103,103])
-("tvl",[775,776,804,807,808,809])
-("tvn",[201,202,203,206,206,214,214,242,243,244,244,245,245,247,247,260,261,263,264,269,282,283,284,287,789,789,918,920,926,928,929,929,934,936,939,955,958,959,964,966,969,974,974])
-("tvn2",[242,243,244,244,245,245])
-("tvname",[83,83,96,98,98,99])
-("type",[3,47,125,155,204,210,214,216,216,218,218,218,288,374,404,503,558,559,562,583,584,594,595,682,682,713,714,715,717,729,735,814,863,891,1038])
-("typedef",[712])
-("types",[378,565,656,683])
-("u",[373,374])
-("undeclared",[621])
-("unified",[347])
-("unifiedOlds",[338,339,341])
-("unifier",[681,683])
-("unifiers",[681])
-("unify",[306,321,323,324])
-("unknown",[710])
-("unknowns",[1028,1029,1034,1037])
-("unzip2",[538,543,544,609])
-("uol",[617,618,619,623])
-("up",[710])
-("us",[373,374])
-("use",[594,820])
-("used",[815])
-("usedc",[828,829])
-("utDomain",[353])
-("utLookup",[791])
-("utLookupAll",[354])
-("utLookupDef",[206,418,619])
-("utRange",[425])
-("v",[23,23,60])
-("v5",[3])
-("var",[247,247,558])
-("variable",[418])
-("variables",[438,562,595,682,868])
-("vars",[558,595])
-("version",[4])
-("vl",[764,764])
-("vs",[32,32,141])
-("where",[7,22,57,82,126,133,140,186,205,286,322,340,352,405,462,489,537,542,557,603,658,664,686,721,754,788,824,848,880,892,919,938,956,968,993,1004,1027,1035,1059,1077,1094])
-("with",[308,558,806])
-("x",[130,133,133,187,187,394,394,394,434,434,517,518,528,529,530,531,628,628,879,879,881,955,955,958,964,966,967,974,974,1085])
-("x2",[131])
-("xs",[394,394,530,531,535,536,538,991,992,1000,1002,1003,1005,1012,1014,1015,1026,1026,1056,1057,1062,1067,1067,1073,1075,1076,1090,1092,1093])
-("y",[188,530,531])
-("ys",[394,394])
-("zip",[301,351,607,607,720,720,764,776,893,1015,1026,1036,1067,1076])
diff --git a/testsuite/tests/ghc-regress/programs/jules_xref/test.T b/testsuite/tests/ghc-regress/programs/jules_xref/test.T
deleted file mode 100644
index 07da9cbd0d..0000000000
--- a/testsuite/tests/ghc-regress/programs/jules_xref/test.T
+++ /dev/null
@@ -1,8 +0,0 @@
-# exhausts Hugs's heap
-test('jules_xref',
- [skip_if_fast,
- extra_clean(['Main.hi', 'Main.o']),
- omit_compiler_types(['hugs'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/jules_xref2/Main.hs b/testsuite/tests/ghc-regress/programs/jules_xref2/Main.hs
deleted file mode 100644
index 10d20a5671..0000000000
--- a/testsuite/tests/ghc-regress/programs/jules_xref2/Main.hs
+++ /dev/null
@@ -1,73 +0,0 @@
--- partain: the failure (crashing) was w/ -prof-auto compilation
-
-module Main where
-
-xreff :: Int -> [String] -> Table -> Int -> String -> String
-xreff cc exs stab lineno [] = display (foldl delete stab exs)
-xreff cc exs stab lineno ('\n':cs) = xreff cc exs stab (lineno+1) cs
-xreff cc exs stab lineno (c:cs)
- = if (c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z') then
- case getRestWord cs of
- (word, rest) -> if (cc :: Int) == 0
- then if stab == stab
- then
- xreff 1000 exs
- (enter lineno stab (c:word)) lineno rest
- else error "Force failed?!"
- else xreff (cc-1) exs
- (enter lineno stab (c:word)) lineno rest
- else xreff cc exs stab lineno cs
-
-xref exceptions source = xreff 1000 exceptions ALeaf 1 source
-
-getRestWord [] = ([], [])
-getRestWord xs@(x:xs')
- | (x >= 'a' && x <= 'z') || (x >= 'A' && x <= 'Z') || (x >= '0' && x <= '9')
- = case getRestWord xs' of
- (ys,zs) -> if (x >= 'A' && x <= 'Z')
- then (toEnum (fromEnum x + (32::Int)):ys, zs)
- else (x:ys, zs)
- | otherwise
- = ([],xs)
-
-data Table = ALeaf | ABranch Table String [Int] Table deriving (Eq)
-
-enter n ALeaf w = ABranch ALeaf w [n] ALeaf
-enter n (ABranch l k ns r) w
- = if w < k then ABranch (enter n l w) k ns r else
- if w > k then ABranch l k ns (enter n r w) else
- ABranch l k (n:ns) r
-
-delete ALeaf w = ALeaf
-delete (ABranch l k ns r) w
- = if w < k then ABranch (delete l w) k ns r else
- if w > k then ABranch l k ns (delete r w) else
- ABranch l k [] r
-
-display :: Table -> String
-display t = display_a t ""
-
-display_a :: Table -> String -> String
-display_a ALeaf acc = acc
-display_a (ABranch l k ns r) acc
- = display_a l (dispLine k ns ++ display_a r acc)
-
-dispLine k [] = ""
-dispLine k ns = k ++ ":" ++ dispNos ns ++ "\n"
-
-dispNos :: [Int] -> String
-dispNos [] = ""
-dispNos (n:ns) = ' ':(show n ++ dispNos ns)
-
-main = do
- input <- getContents
- exceptions <- catch (readFile "exceptions") (\ e -> return "")
- putStr (xref (lines exceptions) input)
-
-{- OLD 1.2:
-main = readChan stdin abort (\input ->
- readFile "exceptions"
- (\errors -> output (xref [] input))
- (\exceptions -> output (xref (lines exceptions) input)))
- where output s = appendChan stdout s abort done
--}
diff --git a/testsuite/tests/ghc-regress/programs/jules_xref2/Makefile b/testsuite/tests/ghc-regress/programs/jules_xref2/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/jules_xref2/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/jules_xref2/jules_xref2.stdin b/testsuite/tests/ghc-regress/programs/jules_xref2/jules_xref2.stdin
deleted file mode 100644
index a43907d9bd..0000000000
--- a/testsuite/tests/ghc-regress/programs/jules_xref2/jules_xref2.stdin
+++ /dev/null
@@ -1,1105 +0,0 @@
-
---==========================================================--
---=== A type-checker -- v5 File: TypeCheck5.m (1) ===--
---=== Corrected version for 0.210a ===--
---==========================================================--
-
-module TypeCheck5 where
-import BaseDefs
-import Utils
-import MyUtils
-
---==========================================================--
---=== Formatting of results ===--
---==========================================================--
-
-tcMapAnnExpr :: (a -> b) ->
- AnnExpr c a ->
- AnnExpr c b
-
-tcMapAnnExpr f (ann, node)
- = (f ann, mapAnnExpr' node)
- where
- mapAnnExpr' (AVar v) = AVar v
- mapAnnExpr' (ANum n) = ANum n
- mapAnnExpr' (AConstr c) = AConstr c
- mapAnnExpr' (AAp ae1 ae2)
- = AAp (tcMapAnnExpr f ae1) (tcMapAnnExpr f ae2)
- mapAnnExpr' (ALet recFlag annDefs mainExpr)
- = ALet recFlag (map mapAnnDefn annDefs) (tcMapAnnExpr f mainExpr)
- mapAnnExpr' (ACase switchExpr annAlts)
- = ACase (tcMapAnnExpr f switchExpr) (map mapAnnAlt annAlts)
- mapAnnExpr' (ALam vs e) = ALam vs (tcMapAnnExpr f e)
-
- mapAnnDefn (naam, expr)
- = (naam, tcMapAnnExpr f expr)
-
- mapAnnAlt (naam, (pars, resExpr))
- = (naam, (pars, tcMapAnnExpr f resExpr))
-
-
---======================================================--
---
-tcSubstAnnTree :: Subst ->
- AnnExpr Naam TExpr ->
- AnnExpr Naam TExpr
-
-tcSubstAnnTree phi tree = tcMapAnnExpr (tcSub_type phi) tree
-
-
---======================================================--
---
-tcTreeToEnv :: AnnExpr Naam TExpr ->
- TypeEnv
-
-tcTreeToEnv tree
- = t2e tree
- where
- t2e (nodeType, node) = t2e' node
-
- t2e' (AVar v) = []
- t2e' (ANum n) = []
- t2e' (AConstr c) = []
- t2e' (AAp ae1 ae2) = (t2e ae1) ++ (t2e ae2)
- t2e' (ALam cs e) = t2e e
- t2e' (ALet rf dl me)
- = (concat (map aFN dl)) ++ (t2e me)
- t2e' (ACase sw alts)
- = (t2e sw) ++ (concat (map (t2e.second.second) alts))
-
- aFN (naam, (tijp, body))
- = (naam, tijp):(t2e' body)
-
-
-
---======================================================--
---
-tcShowtExpr :: TExpr ->
- [Char]
-
-tcShowtExpr t
- = pretty' False t
- where
- pretty' b (TVar tvname) = [' ', chr (96+(lookup tvname tvdict))]
- pretty' b (TCons "int" []) = " int"
- pretty' b (TCons "bool" []) = " bool"
- pretty' b (TCons "char" []) = " char"
- pretty' True (TArr t1 t2)
- = " (" ++ (pretty' True t1) ++ " -> " ++
- (pretty' False t2) ++ ")"
- pretty' False (TArr t1 t2)
- = (pretty' True t1) ++ " -> " ++
- (pretty' False t2)
- pretty' b (TCons notArrow cl)
- = " (" ++ notArrow ++
- concat (map (pretty' True) cl) ++ ")"
- lookup tvname []
- = panic "tcShowtExpr: Type name lookup failed"
- lookup tvname (t:ts) | t==tvname = 1
- | otherwise = 1 + (lookup tvname ts)
- tvdict = nub (tvdict' t)
- tvdict' (TVar t) = [t]
- tvdict' (TCons c ts) = concat (map tvdict' ts)
- tvdict' (TArr t1 t2) = tvdict' t1 ++ tvdict' t2
-
-
---======================================================--
---
-tcPretty :: (Naam, TExpr) ->
- [Char]
-
-tcPretty (naam, tipe)
- = "\n " ++ (ljustify 25 (naam ++ " :: ")) ++
- (tcShowtExpr tipe)
-
-
---======================================================--
-tcCheck :: TcTypeEnv ->
- TypeNameSupply ->
- AtomicProgram ->
- ([Char], Reply (AnnExpr Naam TExpr, TypeEnv) Message)
-
-tcCheck baseTypes ns (tdefs, expr)
- = if good tcResult
- then (fullEnvWords, Ok (rootTree, fullEnv))
- else ("", Fail "No type")
- where
- tcResult = tc (tdefs++builtInTypes)
- (baseTypes++finalConstrTypes) finalNs expr
-
- good (Ok x) = True
- good (Fail x2) = False
-
- (rootSubst, rootType, annoTree) = f tcResult where f (Ok x) = x
-
- rootTree = tcSubstAnnTree rootSubst annoTree
-
- rootEnv = tcTreeToEnv rootTree
-
- fullEnv = rootEnv ++ map f finalConstrTypes
- where
- f (naam, (Scheme vs t)) = (naam, t)
-
- fullEnvWords = concat (map tcPretty fullEnv)
-
- (finalNs, constrTypes) =
- mapAccuml tcConstrTypeSchemes ns (tdefs++builtInTypes)
- finalConstrTypes = concat constrTypes
-
- builtInTypes
- = [ ("bool", [], [("True", []), ("False", [])]) ]
-
-
-
---==========================================================--
---=== 9.2 Representation of type expressions ===--
---==========================================================--
-
-----======================================================--
---tcArrow :: TExpr ->
--- TExpr ->
--- TExpr
---
---tcArrow t1 t2 = TArr t1 t2
-
-
-
---======================================================--
-tcInt :: TExpr
-
-tcInt = TCons "int" []
-
-
-
---======================================================--
-tcBool :: TExpr
-
-tcBool = TCons "bool" []
-
-
-
---======================================================--
-tcTvars_in :: TExpr ->
- [TVName]
-
-tcTvars_in t = tvars_in' t []
- where
- tvars_in' (TVar x) l = x:l
- tvars_in' (TCons y ts) l = foldr tvars_in' l ts
- tvars_in' (TArr t1 t2) l = tvars_in' t1 (tvars_in' t2 l)
-
-
---==========================================================--
---=== 9.41 Substitutions ===--
---==========================================================--
-
---======================================================--
-tcApply_sub :: Subst ->
- TVName ->
- TExpr
-
-tcApply_sub phi tvn
- = if TVar tvn == lookUpResult
- then TVar tvn
- else tcSub_type phi lookUpResult
- where
- lookUpResult = utLookupDef phi tvn (TVar tvn)
-
-
---======================================================--
-tcSub_type :: Subst ->
- TExpr ->
- TExpr
-
-tcSub_type phi (TVar tvn) = tcApply_sub phi tvn
-
-tcSub_type phi (TCons tcn ts) = TCons tcn (map (tcSub_type phi) ts)
-
-tcSub_type phi (TArr t1 t2) = TArr (tcSub_type phi t1) (tcSub_type phi t2)
-
-
---======================================================--
-tcScomp :: Subst ->
- Subst ->
- Subst
-
-tcScomp sub2 sub1 = sub1 ++ sub2
-
-
-
---======================================================--
-tcId_subst :: Subst
-
-tcId_subst = []
-
-
-
---======================================================--
-tcDelta :: TVName ->
- TExpr ->
- Subst
--- all TVar -> TVar substitutions lead downhill
-tcDelta tvn (TVar tvn2)
- | tvn == tvn2 = []
- | tvn > tvn2 = [(tvn, TVar tvn2)]
- | tvn < tvn2 = [(tvn2, TVar tvn)]
-
-tcDelta tvn non_var_texpr = [(tvn, non_var_texpr)]
-
-
---==========================================================--
---=== 9.42 Unification ===--
---==========================================================--
-
---======================================================--
-tcExtend :: Subst ->
- TVName ->
- TExpr ->
- Reply Subst Message
-
-tcExtend phi tvn t
- | t == TVar tvn
- = Ok phi
- | tvn `notElem` (tcTvars_in t)
- = Ok ((tcDelta tvn t) `tcScomp` phi)
- | otherwise
- = fail
- ( "Type error in source program:\n\n" ++
- "Circular substitution:\n " ++
- tcShowtExpr (TVar tvn) ++
- "\n going to\n" ++
- " " ++
- tcShowtExpr t ++
- "\n")
-
-
-
---======================================================--
-tcUnify :: Subst ->
- (TExpr, TExpr) ->
- Reply Subst Message
-
-tcUnify phi (TVar tvn, t)
- = if phitvn == TVar tvn
- then tcExtend phi tvn phit
- else tcUnify phi (phitvn, phit)
- where
- phitvn = tcApply_sub phi tvn
- phit = tcSub_type phi t
-
-tcUnify phi (p@(TCons _ _), q@(TVar _))
- = tcUnify phi (q, p)
-
-tcUnify phi (p@(TArr _ _), q@(TVar _))
- = tcUnify phi (q, p)
-
-tcUnify phi (TArr t1 t2, TArr t1' t2')
- = tcUnifyl phi [(t1, t1'), (t2, t2')]
-
-tcUnify phi (TCons tcn ts, TCons tcn' ts')
- | tcn == tcn'
- = tcUnifyl phi (ts `zip` ts')
-
-tcUnify phi (t1, t2)
- = fail
- ( "Type error in source program:\n\n" ++
- "Cannot unify\n " ++
- tcShowtExpr t1 ++
- "\n with\n " ++
- tcShowtExpr t2 ++
- "\n"
- )
-
-
-
---======================================================--
-tcUnifyl :: Subst ->
- [(TExpr, TExpr)] ->
- Reply Subst Message
-
-tcUnifyl phi eqns
- = foldr unify' (Ok phi) eqns
- where
- unify' eqn (Ok phi) = tcUnify phi eqn
- unify' eqn (Fail m) = Fail m
-
-
-
---==========================================================--
---=== 9.42.2 Merging of substitutions ===--
---==========================================================--
-
---======================================================--
-tcMergeSubs :: Subst ->
- Subst
-
-tcMergeSubs phi
- = if newBinds == []
- then unifiedOlds
- else tcMergeSubs (unifiedOlds ++ newBinds)
- where
- (newBinds, unifiedOlds) = tcMergeSubsMain phi
-
-
-
---======================================================--
-tcMergeSubsMain :: Subst ->
- (Subst, Subst) -- pair of new binds, unified olds
-
-tcMergeSubsMain phi
- = (concat newUnifiersChecked,
- zip oldVars (tcOldUnified newUnifiersChecked oldGroups))
- where
- oldVars = nub (utDomain phi)
- oldGroups = map (utLookupAll phi) oldVars
- newUnifiers = map (tcUnifySet tcId_subst) oldGroups
- newUnifiersChecked = map tcCheckUnifier newUnifiers
-
-
-
---======================================================--
-tcCheckUnifier :: Reply Subst Message -> Subst
-
-tcCheckUnifier (Ok r) = r
-tcCheckUnifier (Fail m)
- = panic ("tcCheckUnifier: " ++ m)
-
-
-
---======================================================--
-tcOldUnified :: [Subst] -> [[TExpr]] -> [TExpr]
-
-tcOldUnified [] [] = []
-tcOldUnified (u:us) (og:ogs)
- = (tcSub_type u (head og)): tcOldUnified us ogs
-
-
---==========================================================--
---=== 9.5 Keeping track of types ===--
---==========================================================--
-
---======================================================--
-tcUnknowns_scheme :: TypeScheme ->
- [TVName]
-
-tcUnknowns_scheme (Scheme scvs t) = tcTvars_in t `tcBar` scvs
-
-
-
---======================================================--
-tcBar :: (Eq a) => [a] ->
- [a] ->
- [a]
-
-tcBar xs ys = [ x | x <- xs, not (x `elem` ys)]
-
-
-
---======================================================--
-tcSub_scheme :: Subst ->
- TypeScheme ->
- TypeScheme
-
-tcSub_scheme phi (Scheme scvs t)
- = Scheme scvs (tcSub_type (tcExclude phi scvs) t)
- where
- tcExclude phi scvs = [(n,e) | (n,e) <- phi, not (n `elem` scvs)]
-
-
-
---==========================================================--
---=== 9.53 Association lists ===--
---==========================================================--
-
---======================================================--
-tcCharVal :: AList Naam b -> Naam -> b
-
-tcCharVal al k
- = utLookupDef al k (panic ("tcCharVal: no such variable: " ++ k))
-
-
---======================================================--
-tcUnknowns_te :: TcTypeEnv ->
- [TVName]
-
-tcUnknowns_te gamma = concat (map tcUnknowns_scheme (utRange gamma))
-
-
-
---======================================================--
-tcSub_te :: Subst ->
- TcTypeEnv ->
- TcTypeEnv
-
-tcSub_te phi gamma = [(x, tcSub_scheme phi st) | (x, st) <- gamma]
-
-
---==========================================================--
---=== 9.6 New variables ===--
---==========================================================--
-
---======================================================--
-tcNext_name :: TypeNameSupply ->
- TVName
-
-tcNext_name ns@(f, s) = ns
-
-
-
---======================================================--
-tcDeplete :: TypeNameSupply ->
- TypeNameSupply
-
-tcDeplete (f, s) = (f, tcNSSucc s)
-
-
-
---======================================================--
-tcSplit :: TypeNameSupply ->
- (TypeNameSupply, TypeNameSupply)
-
-tcSplit (f, s) = ((f2, [0]), (tcNSSucc f2, [0]))
- where f2 = tcNSDouble f
-
-
-
---======================================================--
-tcName_sequence :: TypeNameSupply ->
- [TVName]
-
-tcName_sequence ns = tcNext_name ns: tcName_sequence (tcDeplete ns)
-
-
---======================================================--
-tcNSSucc :: [Int] ->
- [Int]
-
-tcNSSucc [] = [1]
-tcNSSucc (n:ns) | n < tcNSslimit = n+1: ns
- | otherwise = 0: tcNSSucc ns
-
-
---======================================================--
-tcNSDouble :: [Int] ->
- [Int]
-
-tcNSDouble [] = []
-tcNSDouble (n:ns)
- = 2*n': ns'
- where n' | n > tcNSdlimit = n - tcNSdlimit
- | otherwise = n
- ns' | n' == n = tcNSDouble ns
- | otherwise = tcNSSucc (tcNSDouble ns)
-
-
-tcNSdlimit :: Int
-tcNSdlimit = 2^30
-
-tcNSslimit :: Int
-tcNSslimit = tcNSdlimit + (tcNSdlimit - 1)
-
-
---==========================================================--
---=== 9.7 The type-checker ===--
---==========================================================--
-
-
---======================================================--
-tc :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- CExpr ->
- Reply TypeInfo Message
-
-tc tds gamma ns (ENum n)
- = Ok (tcId_subst, TCons "int" [], (TCons "int" [], ANum n))
-
-tc tds gamma ns (EVar x)
- = tcvar tds gamma ns x
-
-tc tds gamma ns (EConstr c)
- = tcvar tds gamma ns c
-
-tc tds gamma ns (EAp e1 e2)
- = tcap tds gamma ns e1 e2
-
-tc tds gamma ns (ELam [] e)
- = tc tds gamma ns e
-tc tds gamma ns (ELam [x] e)
- = tclambda tds gamma ns x e
-tc tds gamma ns (ELam (x:y:xs) e)
- = tclambda tds gamma ns x (ELam (y:xs) e)
-
-tc tds gamma ns (ELet recursive dl e)
- = if not recursive
- then tclet tds gamma ns xs es e
- else tcletrec tds gamma ns xs es e
- where
- (xs, es) = unzip2 dl
-
-tc tds gamma ns (ECase switch alts)
- = tccase tds gamma ns switch constructors arglists exprs
- where
- (constructors, alters) = unzip2 alts
- (arglists, exprs) = unzip2 alters
-
-
---==========================================================--
---=== 0.00 Type-checking case-expressions ===--
---==========================================================--
-
-tcConstrTypeSchemes :: TypeNameSupply ->
- TypeDef ->
- (TypeNameSupply, AList Naam TypeScheme)
-
-tcConstrTypeSchemes ns (tn, stvs, cal)
- = (finalNameSupply, map2nd enScheme cAltsCurried)
- where
- -- associates new type vars with each poly var
- -- in the type
- newTVs = tcNewTypeVars (tn, stvs, cal) ns
-
- -- the actual type variables themselves
- tVs = map second newTVs
-
- -- the types of the constructor functions
- cAltsCurried = map2nd (foldr TArr tdSignature) cAltsXLated
- cAltsXLated = map2nd (map (tcTDefSubst newTVs)) cal
- tdSignature = TCons tn (map TVar tVs)
- enScheme texp = Scheme ((nub.tcTvars_in) texp) texp
-
- -- the revised name supply
- finalNameSupply = applyNtimes ( length tVs + 2) tcDeplete ns
-
- -- apply a function n times to an arg
- applyNtimes n func arg
- | n ==0 = arg
- | otherwise = applyNtimes (n-1) func (func arg)
-
-
-
---======================================================--
---
-tccase :: [TypeDef] -> -- constructor type definitions
- TcTypeEnv -> -- current type bindings
- TypeNameSupply -> -- name supply
- CExpr -> -- switch expression
- [Naam] -> -- constructors
- [[Naam]] -> -- argument lists
- [CExpr] -> -- resulting expressions
- Reply TypeInfo Message
-
-
-tccase tds gamma ns sw cs als res
--- get the type definition in use, & an association of
--- variables therein to type vars & pass
--- Also, reorder the argument lists
--- and resulting expressions so as to reflect the
--- sequence of constructors in the definition
- = if length tdCNames /= length (nub cs)
- then fail
- "Error in source program: missing alternatives in CASE"
- else tccase1 tds gamma ns1 sw reOals reOres newTVs tdInUse
- where
- tdInUse = tcGetTypeDef tds cs
- newTVs = tcNewTypeVars tdInUse ns2
- (ns1, ns2) = tcSplit ns
- merge = zip cs (zip als res)
- tdCNames = map first (tcK33 tdInUse)
- (reOals, reOres) = unzip2 (tcReorder tdCNames merge)
-
-
-
---======================================================--
---
-tcReorder :: [Naam] -> [(Naam,b)] -> [b]
-
-tcReorder [] uol = []
-tcReorder (k:ks) uol
- = (utLookupDef uol k
- (fail
- ("Error in source program: undeclared constructor '" ++ k ++
- "' in CASE") ) )
- : tcReorder ks uol
-
-
---======================================================--
--- Projection functions and similar rubbish.
-tcDeOksel (Ok x) = x
-tcDeOksel (Fail m) = panic ("tcDeOkSel: " ++ m)
-tcOk13sel (Ok (a, b, c)) = a
-tcOk13sel (Fail m) = panic ("tcOk13sel: " ++ m)
-tcOk23sel (Ok (a, b, c)) = b
-tcOk23sel (Fail m) = panic ("tcOk23sel: " ++ m)
-tcOk33sel (Ok (a, b, c)) = c
-tcOk33sel (Fail m) = panic ("tcOk33sel: " ++ m)
-tcK31sel (a, b, c) = a
-tcK33 (a,b,c) = c
-
-
-
---======================================================--
---
-tccase1 :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- CExpr ->
- [[Naam]] ->
- [CExpr] ->
- AList Naam TVName ->
- TypeDef ->
- Reply TypeInfo Message
-
-tccase1 tds gamma ns sw reOals reOres newTVs tdInUse
--- calculate all the gammas for the RHS's
--- call tc for each RHS, so as to gather all the
--- sigmas and types for each RHS, then pass on
- = tccase2 tds gamma ns2 sw reOals newTVs tdInUse rhsTcs
- where
- rhsGammas = tcGetAllGammas newTVs (tcK33 tdInUse) reOals
- rhsTcs = rhsTc1 ns1 rhsGammas reOres
- rhsTc1 nsl [] [] = []
- rhsTc1 nsl (g:gs) (r:rs)
- = tc tds (g++gamma) nsl1 r : rhsTc1 nsl2 gs rs
- where (nsl1, nsl2) = tcSplit nsl
- (ns1, ns2) = tcSplit ns
-
-
---======================================================--
---
-tccase2 :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- CExpr ->
- [[Naam]] ->
- AList Naam TVName ->
- TypeDef ->
- [Reply TypeInfo Message] ->
- Reply TypeInfo Message
-
-tccase2 tds gamma ns sw reOals newTVs tdInUse rhsTcs
--- get the unifiers for T1 to Tk and hence the unifier for all
--- type variables in the type definition. Also compute the
--- unifier of the result types.
- = tccase3 tds gamma ns sw reOals newTVs tdInUse rhsTcs
- phi_1_to_n tau_1_to_n phi_rhs
- where
- phi_1_to_n = map tcOk13sel rhsTcs
- tau_1_to_n = map tcOk23sel rhsTcs
- phi_rhs = tcDeOksel (tcUnifySet tcId_subst tau_1_to_n)
-
-
-
---======================================================--
---
-tccase3 :: [TypeDef] -> -- tds
- TcTypeEnv -> -- gamma
- TypeNameSupply -> -- ns
- CExpr -> -- sw
- [[Naam]] -> -- reOals
- AList Naam TVName -> -- newTVs
- TypeDef -> -- tdInUse
- [Reply TypeInfo Message] -> -- rhsTcs
- [Subst] -> -- phi_1_to_n
- [TExpr] -> -- tau_1_to_n
- Subst -> -- phi_rhs
- Reply TypeInfo Message
-
-tccase3 tds gamma ns sw reOals newTVs tdInUse rhsTcs
- phi_1_to_n tau_1_to_n phi_rhs
--- make up substitutions for each of the unknown tvars
--- merge the substitutions into one
--- apply the substitution to the typedef's signature to get the
--- most general allowable input type
--- call tc to get the type of the switch expression
--- check that this is an instance of the deduced input type
--- gather the new bindings from the RHSs and switch expression
--- return Ok (the big substitution, the result type, gathered bindings)
- = Ok (phi_Big, tau_final,
- (tau_final, ACase tree_s
- (zip tdCNames (zip reOals annotatedRHSs))))
- where
- phi_sTau_sTree_s = tc tds gamma ns sw
- phi_s = tcOk13sel phi_sTau_sTree_s
- tau_s = tcOk23sel phi_sTau_sTree_s
- tree_s = tcOk33sel phi_sTau_sTree_s
-
- phi = tcMergeSubs (concat phi_1_to_n ++ phi_rhs ++ phi_s)
-
- tau_lhs = tcSub_type phi tdSignature
-
- phi_lhs = tcUnify tcId_subst (tau_lhs, tau_s) -- reverse these?
-
- phi_Big = tcMergeSubs (tcDeOksel phi_lhs ++ phi)
-
- tau_final = tcSub_type phi_Big (head (map tcOk23sel rhsTcs))
-
- annotatedRHSs = map tcOk33sel rhsTcs
- tVs = map second newTVs
- tdSignature = TCons (tcK31sel tdInUse) (map TVar tVs)
- tdCNames = map first (tcK33 tdInUse)
-
-
---======================================================--
---
-tcUnifySet :: Subst ->
- [TExpr] ->
- Reply Subst Message
-
-tcUnifySet sub (e1:[]) = Ok sub
-tcUnifySet sub (e1:e2:[])
- = tcUnify sub (e1, e2)
-tcUnifySet sub (e1:e2:e3:es)
- = tcUnifySet newSub (e2:e3:es)
- where
- newSub = tcDeOksel (tcUnify sub (e1, e2))
-
-
---======================================================--
---
-tcNewTypeVars :: TypeDef ->
- TypeNameSupply ->
- AList Naam TVName
-
-tcNewTypeVars (t, vl, c) ns = zip vl (tcName_sequence ns)
-
-
-
---======================================================--
---
-tcGetGammaN :: AList Naam TVName ->
- ConstrAlt ->
- [Naam] ->
- AList Naam TypeScheme
-
-tcGetGammaN tvl (cname, cal) cparams
- = zip cparams (map (Scheme [] . tcTDefSubst tvl) cal)
-
-
-
---======================================================--
---
-tcTDefSubst :: AList Naam TVName ->
- TDefExpr ->
- TExpr
-
-tcTDefSubst nameMap (TDefVar n)
- = f result
- where
- f (Just tvn) = TVar tvn
- f Nothing = TCons n []
- result = utLookup nameMap n
-
-tcTDefSubst nameMap (TDefCons c al)
- = TCons c (map (tcTDefSubst nameMap) al)
-
-
---======================================================--
---
-tcGetAllGammas :: AList Naam TVName ->
- [ConstrAlt] ->
- [[Naam]] ->
- [AList Naam TypeScheme]
-
-tcGetAllGammas tvl [] [] = []
--- note param lists cparamss must be ordered in
--- accordance with calts
-tcGetAllGammas tvl (calt:calts) (cparams:cparamss) =
- tcGetGammaN tvl calt cparams :
- tcGetAllGammas tvl calts cparamss
-
-
---======================================================--
---
-tcGetTypeDef :: [TypeDef] -> -- type definitions
- [Naam] -> -- list of constructors used here
- TypeDef
-
-tcGetTypeDef tds cs
- = if length tdefset == 0
- then fail "Undeclared constructors in use"
- else if length tdefset > 1
- then fail "CASE expression contains mixed constructors"
- else head tdefset
- where
- tdefset = nub
- [ (tname, ftvs, cl) |
- (tname, ftvs, cl) <- tds,
- usedc <- cs,
- usedc `elem` (map first cl) ]
-
-
---==========================================================--
---=== 9.71 Type-checking lists of expressions ===--
---==========================================================--
-
---======================================================--
---
-tcl :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- [CExpr] ->
- Reply (Subst, [TExpr], [AnnExpr Naam TExpr]) Message
-
-tcl tds gamma ns []
- = Ok (tcId_subst, [], [])
-tcl tds gamma ns (e:es)
- = tcl1 tds gamma ns0 es (tc tds gamma ns1 e)
- where
- (ns0, ns1) = tcSplit ns
-
-
---======================================================--
---
-tcl1 tds gamma ns es (Fail m) = Fail m
-tcl1 tds gamma ns es (Ok (phi, t, annotatedE))
- = tcl2 phi t (tcl tds (tcSub_te phi gamma) ns es) annotatedE
-
-
---======================================================--
---
-tcl2 phi t (Fail m) annotatedE = Fail m
-tcl2 phi t (Ok (psi, ts, annotatedEs)) annotatedE
- = Ok (psi `tcScomp` phi, (tcSub_type psi t):ts,
- annotatedE:annotatedEs)
-
-
---==========================================================--
---=== 9.72 Type-checking variables ===--
---==========================================================--
-
---======================================================--
---
-tcvar :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- Naam ->
- Reply TypeInfo Message
-
-tcvar tds gamma ns x = Ok (tcId_subst, finalType, (finalType, AVar x))
- where
- scheme = tcCharVal gamma x
- finalType = tcNewinstance ns scheme
-
-
---======================================================--
---
-tcNewinstance :: TypeNameSupply ->
- TypeScheme ->
- TExpr
-
-tcNewinstance ns (Scheme scvs t) = tcSub_type phi t
- where
- al = scvs `zip` (tcName_sequence ns)
- phi = tcAl_to_subst al
-
-
---======================================================--
---
-tcAl_to_subst :: AList TVName TVName ->
- Subst
-
-tcAl_to_subst al = map2nd TVar al
-
-
---==========================================================--
---=== 9.73 Type-checking applications ===--
---==========================================================--
-
---======================================================--
---
-tcap :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- CExpr ->
- CExpr ->
- Reply TypeInfo Message
-
-tcap tds gamma ns e1 e2 = tcap1 tvn (tcl tds gamma ns' [e1, e2])
- where
- tvn = tcNext_name ns
- ns' = tcDeplete ns
-
-
---======================================================--
---
-tcap1 tvn (Fail m)
- = Fail m
-tcap1 tvn (Ok (phi, [t1, t2], [ae1, ae2]))
- = tcap2 tvn (tcUnify phi (t1, t2 `TArr` (TVar tvn))) [ae1, ae2]
-
-
---======================================================--
---
-tcap2 tvn (Fail m) [ae1, ae2]
- = Fail m
-tcap2 tvn (Ok phi) [ae1, ae2]
- = Ok (phi, finalType, (finalType, AAp ae1 ae2))
- where
- finalType = tcApply_sub phi tvn
-
-
---==========================================================--
---=== 9.74 Type-checking lambda abstractions ===--
---==========================================================--
-
---======================================================--
---
-tclambda :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- Naam ->
- CExpr ->
- Reply TypeInfo Message
-
-tclambda tds gamma ns x e = tclambda1 tvn x (tc tds gamma' ns' e)
- where
- ns' = tcDeplete ns
- gamma' = tcNew_bvar (x, tvn): gamma
- tvn = tcNext_name ns
-
-
---======================================================--
---
-tclambda1 tvn x (Fail m) = Fail m
-
-tclambda1 tvn x (Ok (phi, t, annotatedE)) =
- Ok (phi, finalType, (finalType, ALam [x] annotatedE))
- where
- finalType = (tcApply_sub phi tvn) `TArr` t
-
-
---======================================================--
---
-tcNew_bvar (x, tvn) = (x, Scheme [] (TVar tvn))
-
-
---==========================================================--
---=== 9.75 Type-checking let-expressions ===--
---==========================================================--
-
---======================================================--
---
-tclet :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- [Naam] ->
- [CExpr] ->
- CExpr ->
- Reply TypeInfo Message
-
-tclet tds gamma ns xs es e
- = tclet1 tds gamma ns0 xs e rhsTypes
- where
- (ns0, ns1) = tcSplit ns
- rhsTypes = tcl tds gamma ns1 es
-
-
---======================================================--
---
-tclet1 tds gamma ns xs e (Fail m) = Fail m
-
-tclet1 tds gamma ns xs e (Ok (phi, ts, rhsAnnExprs))
- = tclet2 phi xs False (tc tds gamma'' ns1 e) rhsAnnExprs
- where
- gamma'' = tcAdd_decls gamma' ns0 xs ts
- gamma' = tcSub_te phi gamma
- (ns0, ns1) = tcSplit ns
-
-
---======================================================--
---
-tclet2 phi xs recFlag (Fail m) rhsAnnExprs = Fail m
-
-tclet2 phi xs recFlag (Ok (phi', t, annotatedE)) rhsAnnExprs
- = Ok (phi' `tcScomp` phi, t, (t, ALet recFlag (zip xs rhsAnnExprs) annotatedE))
-
-
---======================================================--
---
-tcAdd_decls :: TcTypeEnv ->
- TypeNameSupply ->
- [Naam] ->
- [TExpr] ->
- TcTypeEnv
-
-tcAdd_decls gamma ns xs ts = (xs `zip` schemes) ++ gamma
- where
- schemes = map (tcGenbar unknowns ns) ts
- unknowns = tcUnknowns_te gamma
-
-
---======================================================--
---
-tcGenbar unknowns ns t = Scheme (map second al) t'
- where
- al = scvs `zip` (tcName_sequence ns)
- scvs = (nub (tcTvars_in t)) `tcBar` unknowns
- t' = tcSub_type (tcAl_to_subst al) t
-
-
-
---==========================================================--
---=== 9.76 Type-checking letrec-expressions ===--
---==========================================================--
-
---======================================================--
---
-tcletrec :: [TypeDef] ->
- TcTypeEnv ->
- TypeNameSupply ->
- [Naam] ->
- [CExpr] ->
- CExpr ->
- Reply TypeInfo Message
-
-tcletrec tds gamma ns xs es e
- = tcletrec1 tds gamma ns0 xs nbvs e
- (tcl tds (nbvs ++ gamma) ns1 es)
- where
- (ns0, ns') = tcSplit ns
- (ns1, ns2) = tcSplit ns'
- nbvs = tcNew_bvars xs ns2
-
-
---======================================================--
---
-tcNew_bvars xs ns = map tcNew_bvar (xs `zip` (tcName_sequence ns))
-
-
-
---======================================================--
---
-tcletrec1 tds gamma ns xs nbvs e (Fail m) = (Fail m)
-
-tcletrec1 tds gamma ns xs nbvs e (Ok (phi, ts, rhsAnnExprs))
- = tcletrec2 tds gamma' ns xs nbvs' e (tcUnifyl phi (ts `zip` ts')) rhsAnnExprs
- where
- ts' = map tcOld_bvar nbvs'
- nbvs' = tcSub_te phi nbvs
- gamma' = tcSub_te phi gamma
-
-
---======================================================--
---
-tcOld_bvar (x, Scheme [] t) = t
-
-
---======================================================--
---
-tcletrec2 tds gamma ns xs nbvs e (Fail m) rhsAnnExprs = (Fail m)
-
-tcletrec2 tds gamma ns xs nbvs e (Ok phi) rhsAnnExprs
- = tclet2 phi xs True (tc tds gamma'' ns1 e) rhsAnnExprs
- where
- ts = map tcOld_bvar nbvs'
- nbvs' = tcSub_te phi nbvs
- gamma' = tcSub_te phi gamma
- gamma'' = tcAdd_decls gamma' ns0 (map first nbvs) ts
- (ns0, ns1) = tcSplit ns
- subnames = map first nbvs
-
-
---==========================================================--
---=== End TypeCheck5.m (1) ===--
---==========================================================--
diff --git a/testsuite/tests/ghc-regress/programs/jules_xref2/jules_xref2.stdout b/testsuite/tests/ghc-regress/programs/jules_xref2/jules_xref2.stdout
deleted file mode 100644
index 6adf88b894..0000000000
--- a/testsuite/tests/ghc-regress/programs/jules_xref2/jules_xref2.stdout
+++ /dev/null
@@ -1,499 +0,0 @@
-A: 3
-Aap: 937 63 27 26
-Acase: 719 67 31 30
-Aconstr: 62 25 25
-Alam: 967 64 32 32
-Alet: 1015 65 29 28
-Alist: 899 802 799 782 773 770 762 700 675 649 553 415
-Also: 682 596
-Annexpr: 842 120 52 45 44 18 17
-Anum: 515 61 24 24
-Association: 411
-Atomicprogram: 119
-Avar: 879 60 23 23
-Basedefs: 8
-Big: 735 733 718
-Cannot: 306
-Case: 822 622 601
-Cexpr: 1053 1052 988 987 952 915 914 841 698 673 648 646 589 586 511
-Char: 120 109 78
-Circular: 268
-Constralt: 800 771
-Corrected: 4
-Eap: 523
-Ecase: 540
-Econstr: 520
-Elam: 531 530 528 526
-Elet: 533
-End: 1104
-Enum: 514
-Eq: 390
-Error: 621 601
-Evar: 517
-Fail: 1090 1090 1073 1073 1012 1012 1000 1000 964 964 935 934 927 926 861 861 854 854 635 633 631 629 364 324 324 131 125
-False: 1003 150 131 92 90 89 81
-File: 3
-Formatting: 13
-Int: 498 495 484 483 475 474
-Just: 789
-Keeping: 378
-Merging: 329
-Message: 1054 989 953 916 877 842 747 706 702 678 677 651 590 512 361 318 280 258 120
-Myutils: 10
-Naam: 1051 1022 986 951 876 842 815 802 801 799 782 773 772 770 762 700 699 675 674 649 647 615 615 588 587 553 415 415 120 108 52 45 44
-New: 438
-No: 125
-Nothing: 790
-Ok: 1092 1075 1015 1014 1002 967 966 937 936 928 879 863 862 855 845 749 718 717 634 632 630 628 515 363 323 321 264 262 133 130 124
-Projection: 627
-Reply: 1054 989 953 916 877 842 747 706 702 678 677 651 590 512 361 318 280 258 120
-Representation: 155
-Rhs: 656 655 654
-Rhss: 716
-Scheme: 1085 1034 974 891 776 569 404 403 385 141
-Subst: 900 842 747 745 705 703 430 399 370 361 361 347 347 346 334 333 318 316 280 278 258 255 240 231 224 223 222 210 197 43
-Substitutions: 193
-T1: 681
-Tarr: 969 929 566 296 296 293 218 218 189 163 103 90 87
-Tcons: 794 790 739 568 515 515 299 299 290 216 216 188 177 170 102 93 86 85 84
-Tctypeenv: 1049 1024 1020 984 949 912 874 839 696 671 644 584 509 432 431 422 117
-Tdefcons: 793
-Tdefexpr: 783
-Tdefvar: 786
-Texpr: 1023 889 842 842 784 746 704 370 370 317 317 279 279 257 239 212 211 199 182 175 168 161 160 159 120 108 77 52 45 44
-The: 503
-Tk: 681
-True: 1093 150 130 95 91 88 87
-Tvar: 974 929 902 789 739 568 293 290 283 282 269 261 245 244 242 241 241 214 206 203 202 187 101 83
-Tvname: 899 899 799 782 770 762 700 675 649 468 443 423 383 256 238 198 183
-Type: 1043 978 943 906 868 833 548 305 267 97
-Typecheck5: 1104 7 3
-Typedef: 1048 983 948 911 873 838 816 814 760 701 695 676 670 650 643 583 552 508
-Typeenv: 120 53
-Typeinfo: 1054 989 953 916 877 706 702 678 677 651 590 512
-Typenamesupply: 1050 1021 985 950 913 887 875 840 761 697 672 645 585 553 551 510 467 459 459 458 451 450 442 118
-Typescheme: 888 802 773 553 401 400 382
-Undeclared: 820
-Unification: 251
-Utils: 9
-a: 637 636 636 634 632 630 630 574 392 391 390 390 17 16 4
-abstractions: 943
-accordance: 806
-actual: 562
-ae1: 937 936 934 929 928 63 63 27 26
-ae2: 937 936 934 929 928 63 63 27 26
-afn: 70 66
-al: 1038 1036 1034 902 902 894 893 794 793 418 417
-all: 681 655 654 241
-allowable: 713
-als: 607 593
-alternatives: 601
-alters: 544 543
-alts: 543 540 68 67
-an: 715 594 574
-and: 716 681 656 627 597
-ann: 21 20
-annalts: 31 30
-anndefs: 29 28
-annotatede: 1015 1014 967 966 864 862 861 856 855
-annotatedes: 864 862
-annotatedrhss: 737 720
-annotree: 135 133
-applications: 906
-apply: 712 574
-applyntimes: 577 575 572
-arg: 577 576 575 574
-arglists: 544 541
-argument: 596 588
-as: 655 597
-associates: 558
-association: 594
-b: 637 636 634 632 632 630 615 615 415 415 93 86 85 84 83 18 16
-basetypes: 128 122
-be: 805
-big: 717
-bindings: 717 716 584
-binds: 347
-body: 71 70
-bool: 177 150 85 85
-builtintypes: 149 146 127
-bvar: 1095 1085 1078 1067 974 958
-bvars: 1067 1062
-c: 794 793 764 637 637 636 634 634 632 630 521 520 102 62 25 25 18 17
-cal: 776 775 567 560 555
-calculate: 654
-call: 714 655
-calt: 808 807
-calts: 809 807 806
-caltscurried: 566 556
-caltsxlated: 567 566
-case: 548
-char: 86 86
-check: 715
-checker: 503 3
-checking: 1043 978 943 906 868 833 548
-chr: 83
-cl: 829 827 826 95 93
-cname: 775
-compute: 682
-concat: 727 425 350 147 143 102 95 68 66
-constrtypes: 147 145
-constructor: 621 583 565
-constructors: 822 820 815 598 587 543 541
-contains: 822
-cparams: 808 807 776 775
-cparamss: 809 807 805
-cs: 828 818 607 604 599 593 64
-current: 584
-decls: 1098 1026 1020 1005
-deduced: 715
-definition: 682 598 594
-definitions: 814 583
-dl: 538 533 66 65
-downhill: 241
-e: 1093 1092 1090 1076 1075 1073 1057 1056 1003 1002 1000 992 991 955 955 847 846 536 535 533 531 530 529 528 527 526 406 406 64 64 32 32
-e1: 918 918 755 752 751 750 749 524 523
-e2: 918 918 755 753 752 751 750 524 523
-e3: 753 752
-each: 710 656 655 558
-elem: 829 406 394
-else: 823 821 602 536 339 285 204 125
-enscheme: 569 556
-eqn: 324 323 323
-eqns: 321 320
-error: 305 267
-es: 1058 1056 995 991 856 855 854 847 846 753 752 538 536 535
-expr: 128 122 35 34
-expression: 822 716 714 586
-expressions: 1043 978 833 597 589 548 155
-exprs: 544 541
-f: 790 789 787 462 461 453 453 445 141 139 133 133 38 35 32 31 29 27 27 21 20
-f2: 462 461 461
-fail: 822 820 620 600 304 266
-failed: 97
-final: 735 719 718
-finalconstrtypes: 147 139 128
-finalnamesupply: 572 556
-finalns: 145 128
-finaltype: 969 967 967 939 937 937 882 879 879
-first: 1100 1098 829 740 608
-foldr: 566 321 188
-for: 710 681 681 656 655 654 4
-from: 716
-ftvs: 827 826
-fullenv: 143 139 124
-fullenvwords: 143 124
-func: 577 577 575
-function: 574
-functions: 627 565
-g: 663 662
-gamma: 1098 1098 1097 1097 1093 1092 1090 1080 1080 1076 1075 1073 1058 1057 1056 1029 1026 1026 1006 1006 1005 1005 1003 1002 1000 995 992 991 958 958 955 955 918 918 881 879 856 855 854 847 847 846 844 722 708 696 684 680 663 657 653 602 593 541 540 536 535 533 531 530 529 528 527 526 524 523 521 520 518 517 514 434 434 425 425
-gammas: 654
-gather: 716 655
-gathered: 717
-general: 713
-get: 714 712 681 594
-going: 270
-good: 131 130 123
-gs: 663 662
-head: 823 735 374
-hence: 681
-here: 815
-if: 821 819 599 534 337 283 202 123
-import: 10 9 8
-in: 1037 820 805 682 622 621 601 601 598 594 569 559 385 305 267 263 189 189 189 188 188 187 185 185 182
-input: 715 713
-instance: 715
-int: 515 515 170 84 84
-into: 711
-is: 715
-k: 621 619 618 418 418 417
-ks: 623 618
-l: 189 189 188 188 187 187
-lambda: 943
-lead: 241
-length: 821 819 599 599 572
-let: 978
-letrec: 1043
-lhs: 733 731 731 729
-list: 815
-lists: 833 805 596 588 411
-ljustify: 112
-lookup: 99 98 97 96 83
-lookupresult: 206 204 202
-m: 1104 1090 1090 1073 1073 1012 1012 1000 1000 964 964 935 934 927 926 861 861 854 854 635 635 633 633 631 631 629 629 365 364 324 324 3
-mainexpr: 29 28
-make: 710
-map: 1100 1098 1095 1078 1067 1034 1028 829 794 776 740 739 738 737 735 688 687 608 568 567 563 425 356 355 354 216 143 139 102 95 68 66 31 29
-map2nd: 902 567 566 556
-mapaccuml: 146
-mapannalt: 37 31
-mapanndefn: 34 29
-mapannexpr: 32 30 28 26 25 24 23 21
-me: 66 65
-merge: 711 609 607
-missing: 601
-mixed: 822
-module: 7
-most: 713
-must: 805
-n: 791 790 786 727 709 709 704 703 689 688 687 685 685 577 576 575 574 515 514 491 491 490 489 489 489 488 487 478 478 478 406 406 406 310 308 308 306 305 305 273 270 270 268 267 267 112 61 24 24
-naam: 141 141 112 111 71 70 38 37 35 34
-name: 959 920 585 571 470 445 442 97
-namemap: 794 793 791 786
-nbvs: 1100 1098 1096 1096 1095 1092 1090 1079 1079 1078 1076 1075 1073 1062 1058 1057
-new: 716 558 347
-newbinds: 341 339 337
-newsub: 755 753
-newtvs: 738 708 700 684 680 659 657 653 605 602 567 563 560
-newunifiers: 356 355
-newunifierschecked: 356 351 350
-no: 418
-node: 58 58 21 20
-nodetype: 58
-non: 247 247
-not: 534 406 394
-notarrow: 94 93
-note: 805
-notelem: 263
-ns: 1099 1092 1090 1076 1075 1073 1067 1067 1061 1060 1060 1056 1036 1034 1028 1026 1007 1002 1000 994 991 959 957 957 955 955 921 921 920 918 918 893 891 882 879 856 855 854 849 846 844 764 764 722 708 697 684 680 665 653 606 593 572 560 555 541 540 536 535 533 531 530 529 528 527 526 524 523 521 520 518 517 514 492 491 491 488 487 479 478 478 470 470 470 445 445 146 122
-ns0: 1099 1098 1060 1057 1007 1005 994 992 849 847
-ns1: 1099 1093 1061 1058 1007 1003 995 994 849 847 665 660 606 602
-ns2: 1062 1061 665 657 606 605
-nsl: 664 662 661
-nsl1: 664 663
-nsl2: 664 663
-nub: 1037 825 599 569 353 100
-of: 833 815 715 714 710 683 598 594 565 378 347 329 155 13
-og: 374 373
-ogs: 374 373
-oldgroups: 355 354 351
-olds: 347
-oldvars: 354 353 351
-on: 656
-one: 711
-ordered: 805
-otherwise: 577 492 490 479 265 99
-p: 294 293 291 290
-pair: 347
-panic: 635 633 631 629 418 365 97
-param: 805
-pars: 38 37
-pass: 656 595
-phi: 1097 1096 1093 1092 1080 1079 1076 1075 1015 1015 1014 1014 1012 1006 1003 1002 969 967 966 939 937 936 929 928 894 891 863 862 861 856 856 855 735 733 733 733 731 729 727 727 727 727 725 724 723 723 722 718 709 709 705 703 689 687 685 685 434 434 406 406 404 403 354 353 349 341 336 323 323 321 320 303 301 299 297 296 294 293 291 290 288 287 285 284 282 264 262 260 218 218 218 216 216 214 214 206 204 201 47 47
-phit: 288 285 284
-phitvn: 287 285 283
-poly: 558
-pretty: 95 93 92 91 90 89 88 87 86 85 84 83 81
-program: 621 601 305 267
-psi: 863 863 862
-q: 294 293 291 290
-r: 663 662 363 363
-recflag: 1015 1014 1012 29 28
-recursive: 534 533
-reflect: 597
-reoals: 720 708 699 684 680 659 657 653 609 602
-reorder: 596
-reores: 660 653 609 602
-res: 607 593
-resexpr: 38 37
-result: 791 787 717 683
-resulting: 597 589
-results: 13
-return: 717
-reverse: 731
-revised: 571
-rf: 65
-rhs: 727 709 705 689 685
-rhsannexprs: 1093 1092 1090 1076 1075 1015 1014 1012 1003 1002
-rhsgammas: 660 659
-rhstc1: 663 662 661 660
-rhstcs: 737 735 708 702 688 687 684 680 660 657
-rhstypes: 995 992
-rootenv: 139 137
-rootsubst: 135 133
-roottree: 137 135 124
-roottype: 133
-rs: 663 662
-rubbish: 627
-s: 731 727 725 725 724 724 723 723 722 719 712 654 461 453 453 445
-scheme: 882 881 434 425 403 399 385 382
-schemes: 1028 1026
-scvs: 1037 1036 893 891 406 406 404 404 403 385 385
-second: 1034 738 563 68 68
-sequence: 1067 1036 893 764 598 470 470 467
-sigmas: 656
-signature: 712
-similar: 627
-so: 655 597
-source: 621 601 305 267
-st: 434 434
-stau: 725 724 723 722
-stree: 725 724 723 722
-stvs: 560 555
-sub: 969 939 755 752 751 750 749 749 287 214 201 197
-sub1: 226 226
-sub2: 226 226
-subnames: 1100
-subst: 1038 902 899 894 879 845 731 689 515 355 233 231
-substitution: 717 712 268
-substitutions: 711 710 329 241
-such: 418
-supply: 585 571
-sw: 722 708 698 684 680 657 653 602 593 68 67
-switch: 716 714 586 541 540
-switchexpr: 31 30
-t: 1085 1085 1038 1038 1037 1034 1034 1015 1015 1014 969 966 891 891 863 862 861 856 855 764 404 403 385 385 288 282 272 264 263 261 260 185 185 141 141 101 101 100 98 98 81 80
-t1: 929 928 307 303 297 297 296 296 218 218 189 189 163 163 103 103 91 90 88 87
-t2: 929 928 309 303 297 297 296 296 218 218 189 189 163 163 103 103 92 90 89 87
-t2e: 71 68 68 67 66 65 64 64 63 63 63 62 61 60 58 58 56
-tau: 735 731 731 729 724 719 718 709 704 689 688 685
-tc: 1093 1003 955 847 722 714 663 655 540 533 530 528 527 526 523 520 517 514 508 127
-tcadd: 1098 1026 1020 1005
-tcal: 1038 902 899 894
-tcap: 918 911 524
-tcap1: 928 926 918
-tcap2: 936 934 929
-tcapply: 969 939 287 214 201 197
-tcarrow: 163 159
-tcbar: 1037 394 390 385
-tcbool: 177 175
-tccase: 593 583 541
-tccase1: 653 643 602
-tccase2: 680 670 657
-tccase3: 708 695 684
-tccharval: 881 418 417 415
-tccheck: 122 117
-tccheckunifier: 365 364 363 361 356
-tcconstrtypeschemes: 555 551 146
-tcdelta: 264 247 242 238
-tcdeoksel: 755 733 689 629 629 628
-tcdeplete: 957 921 572 470 453 450
-tcexclude: 406 404
-tcextend: 284 260 255
-tcgenbar: 1034 1028
-tcgetallgammas: 809 807 804 799 659
-tcgetgamman: 808 775 770
-tcgettypedef: 818 814 604
-tcid: 879 845 731 689 515 355 233 231
-tcint: 170 168
-tck31sel: 739 636
-tck33: 740 659 637 608
-tcl: 1058 995 918 856 846 844 838
-tcl1: 855 854 847
-tcl2: 862 861 856
-tclambda: 955 948 531 529
-tclambda1: 966 964 955
-tclet: 991 983 535
-tclet1: 1002 1000 992
-tclet2: 1093 1014 1012 1003
-tcletrec: 1056 1048 536
-tcletrec1: 1075 1073 1057
-tcletrec2: 1092 1090 1076
-tcmapannexpr: 47 38 35 32 31 29 27 27 20 16
-tcmergesubs: 733 727 339 336 333
-tcmergesubsmain: 349 346 341
-tcn: 300 300 299 299 216 216
-tcname: 1067 1036 893 764 470 470 467
-tcnew: 1067 1067 1062 974 958
-tcnewinstance: 891 887 882
-tcnewtypevars: 764 760 605 560
-tcnext: 959 920 470 445 442
-tcnsdlimit: 499 499 496 495 489 489
-tcnsdouble: 492 491 487 486 483 462
-tcnsslimit: 499 498 478
-tcnssucc: 492 479 478 477 474 461 453
-tcok13sel: 723 687 631 631 630
-tcok23sel: 735 724 688 633 633 632
-tcok33sel: 737 725 635 635 634
-tcold: 1095 1085 1078
-tcoldunified: 374 373 372 370 351
-tcpretty: 143 111 108
-tcreorder: 623 618 617 615 609
-tcresult: 133 127 123
-tcscomp: 1015 863 264 226 222
-tcshowtexpr: 309 307 272 269 113 97 80 77
-tcsplit: 1099 1061 1060 1007 994 849 665 664 606 461 458
-tcsub: 1097 1096 1080 1079 1038 1006 891 863 856 735 729 434 434 430 404 403 399 374 288 218 218 218 216 216 214 210 204 47
-tcsubstanntree: 135 47 43
-tctdefsubst: 794 793 786 782 776 567
-tctreetoenv: 137 55 52
-tctvars: 1037 569 385 263 185 182
-tcunify: 929 755 751 731 323 303 299 296 294 293 291 290 285 282 278
-tcunifyl: 1076 320 316 301 297
-tcunifyset: 753 752 750 749 745 689 355
-tcunknowns: 1029 425 425 422 385 382
-tcvar: 879 873 521 518
-tdcnames: 740 720 609 608 599
-tdefs: 146 127 122
-tdefset: 825 823 821 819
-tdinuse: 740 739 708 701 684 680 659 657 653 608 605 604 602
-tds: 1093 1092 1090 1076 1075 1073 1058 1057 1056 1003 1002 1000 995 992 991 955 955 918 918 879 856 855 854 847 847 846 844 827 818 722 708 695 684 680 663 657 653 604 602 593 541 540 536 535 533 531 530 529 528 527 526 524 523 521 520 518 517 514
-tdsignature: 739 729 568 566
-te: 1097 1096 1080 1079 1029 1006 856 434 430 425 422
-texp: 569 569 569
-texpr: 247 247
-that: 715
-the: 717 717 716 716 715 714 714 712 712 712 711 710 683 682 682 681 681 655 654 654 598 597 596 594 571 565 565 562 559
-themselves: 562
-then: 822 820 656 600 535 338 284 203 124
-therein: 595
-these: 731
-this: 715
-tijp: 71 70
-times: 574
-tipe: 113 111
-tn: 568 560 555
-tname: 827 826
-to: 1038 902 899 894 727 714 712 712 709 709 704 703 689 688 687 685 685 681 655 597 595 574 270
-track: 378
-tree: 725 719 56 55 47 47
-ts: 1098 1095 1078 1076 1076 1075 1028 1026 1005 1002 863 862 301 301 299 299 216 216 188 188 102 102 99 98
-tvars: 710 189 189 189 188 188 187 185
-tvdict: 103 103 103 102 102 101 100 100 83
-tvl: 809 808 807 804 776 775
-tvn: 974 974 969 966 964 959 958 955 939 936 934 929 929 928 926 920 918 789 789 287 284 283 282 269 264 263 261 260 247 247 245 245 244 244 243 242 214 214 206 206 203 202 201
-tvn2: 245 245 244 244 243 242
-tvname: 99 98 98 96 83 83
-tvs: 739 738 572 568 563
-type: 1038 891 863 814 735 729 717 715 714 713 682 682 595 594 584 583 562 559 558 503 404 374 288 218 218 218 216 216 214 210 204 155 125 47 3
-typedef: 712
-types: 683 656 565 378
-u: 374 373
-undeclared: 621
-unified: 347
-unifiedolds: 341 339 338
-unifier: 683 681
-unifiers: 681
-unify: 324 323 321 306
-unknown: 710
-unknowns: 1037 1034 1029 1028
-unzip2: 609 544 543 538
-uol: 623 619 618 617
-up: 710
-us: 374 373
-use: 820 594
-used: 815
-usedc: 829 828
-utdomain: 353
-utlookup: 791
-utlookupall: 354
-utlookupdef: 619 418 206
-utrange: 425
-v: 60 23 23
-v5: 3
-var: 558 247 247
-variable: 418
-variables: 868 682 595 562 438
-vars: 595 558
-version: 4
-vl: 764 764
-vs: 141 32 32
-where: 1094 1077 1059 1035 1027 1004 993 968 956 938 919 892 880 848 824 788 754 721 686 664 658 603 557 542 537 489 462 405 352 340 322 286 205 186 140 133 126 82 57 22 7
-with: 806 558 308
-x: 1085 974 974 967 966 964 958 955 955 881 879 879 628 628 531 530 529 528 518 517 434 434 394 394 394 187 187 133 133 130
-x2: 131
-xs: 1093 1092 1090 1076 1075 1073 1067 1067 1062 1057 1056 1026 1026 1015 1014 1012 1005 1003 1002 1000 992 991 538 536 535 531 530 394 394
-y: 531 530 188
-ys: 394 394
-zip: 1076 1067 1036 1026 1015 893 776 764 720 720 607 607 351 301
diff --git a/testsuite/tests/ghc-regress/programs/jules_xref2/test.T b/testsuite/tests/ghc-regress/programs/jules_xref2/test.T
deleted file mode 100644
index 384155c8c7..0000000000
--- a/testsuite/tests/ghc-regress/programs/jules_xref2/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('jules_xref2',
- [skip_if_fast, extra_clean(['Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/launchbury/Main.hs b/testsuite/tests/ghc-regress/programs/launchbury/Main.hs
deleted file mode 100644
index 6351d54aa7..0000000000
--- a/testsuite/tests/ghc-regress/programs/launchbury/Main.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-e=181021504832735228091659724090293195791121747536890433
-
-u(f,m)x=i(m(x), [],let(a,b)=f(x) in(a:u(f,m)b))
-(v,h)=(foldr(\x(y )->00+128*y+x)0,u( sp(25),((==)"")))
-p::(Integer,Integer )->Integer -> Integer --NotInt
-p(n,m)x =i(n==0 ,1,i(z n ,q(n,m)x, r(n,m)x))
-i(n,e,d )=if(n) then(e) else (d) --23+3d4f
-(g,main ,s,un)= (\x->x, y(j),\x->x*x,unlines)--)
-j(o)=i(take(2)o== "e=","e="++t (drop(4-2)o),i(d>e,k,l)o)
-l=un.map (show.p (e,n).v.map( fromIntegral{-g-}.fromEnum)).h
-k=co.map(map(toEnum .fromIntegral ).w.p(d,n). read).lines
-(t,y)=(\ (o:q)-> i(o=='-' ,'1','-' ): q,interact)
-q(n,m)x= mod(s( p( div(n)2, m{-jl-})x) )m--hd&&gdb
-(r,z,co) =(\(n, m)x->mod(x*p(n-1, m)x)m,even ,concat)--6
-(w,sp)=( u(\x->( mod(x)128,div(x )128),(==0 )),splitAt)
-
-d=563347325936+1197371806136556985877790097-563347325936
-n=351189532146914946493104395525009571831256157560461451
diff --git a/testsuite/tests/ghc-regress/programs/launchbury/Makefile b/testsuite/tests/ghc-regress/programs/launchbury/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/launchbury/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/launchbury/launchbury.stdin b/testsuite/tests/ghc-regress/programs/launchbury/launchbury.stdin
deleted file mode 100644
index 085b33d738..0000000000
--- a/testsuite/tests/ghc-regress/programs/launchbury/launchbury.stdin
+++ /dev/null
@@ -1,18 +0,0 @@
-e=181021504832735228091659724090293195791121747536890433
-
-u(f,m)x=i(m(x), [],let(a,b)=f(x) in(a:u(f,m)b))
-(v,h)=(foldr(\x(y )->00+128*y+x)0,u( sp(25),((==)"")))
-p::(Integer,Integer )->Integer -> Integer --NotInt
-p(n,m)x =i(n==0 ,1,i(z n ,q(n,m)x, r(n,m)x))
-i(n,e,d )=if(n) then(e) else (d) --23+3d4f
-(g,main ,s,un)= (\x->x, y(j),\x->x*x,unlines)--)
-j(o)=i(take(2)o== "e=","e="++t (drop(4-2)o),i(d>e,k,l)o)
-l=un.map (show.p (e,n).v.map( fromIntegral{-g-}.ord)).h
-k=co.map(map(chr .fromIntegral ).w.p(d,n). read).lines
-(t,y)=(\ (o:q)-> i(o=='-' ,'1','-' ): q,interact)
-q(n,m)x= mod(s( p( div(n)2, m{-jl-})x) )m--hd&&gdb
-(r,z,co) =(\(n, m)x->mod(x*p(n-1, m)x)m,even ,concat)--6
-(w,sp)=( u(\x->( mod(x)128,div(x )128),(==0 )),splitAt)
-
-d=563347325936+1197371806136556985877790097-563347325936
-n=351189532146914946493104395525009571831256157560461451
diff --git a/testsuite/tests/ghc-regress/programs/launchbury/launchbury.stdout b/testsuite/tests/ghc-regress/programs/launchbury/launchbury.stdout
deleted file mode 100644
index 9eb035733e..0000000000
--- a/testsuite/tests/ghc-regress/programs/launchbury/launchbury.stdout
+++ /dev/null
@@ -1,18 +0,0 @@
-e=-81021504832735228091659724090293195791121747536890433
-
-u(f,m)x=i(m(x), [],let(a,b)=f(x) in(a:u(f,m)b))
-(v,h)=(foldr(\x(y )->00+128*y+x)0,u( sp(25),((==)"")))
-p::(Integer,Integer )->Integer -> Integer --NotInt
-p(n,m)x =i(n==0 ,1,i(z n ,q(n,m)x, r(n,m)x))
-i(n,e,d )=if(n) then(e) else (d) --23+3d4f
-(g,main ,s,un)= (\x->x, y(j),\x->x*x,unlines)--)
-j(o)=i(take(2)o== "e=","e="++t (drop(4-2)o),i(d>e,k,l)o)
-l=un.map (show.p (e,n).v.map( fromIntegral{-g-}.ord)).h
-k=co.map(map(chr .fromIntegral ).w.p(d,n). read).lines
-(t,y)=(\ (o:q)-> i(o=='-' ,'1','-' ): q,interact)
-q(n,m)x= mod(s( p( div(n)2, m{-jl-})x) )m--hd&&gdb
-(r,z,co) =(\(n, m)x->mod(x*p(n-1, m)x)m,even ,concat)--6
-(w,sp)=( u(\x->( mod(x)128,div(x )128),(==0 )),splitAt)
-
-d=563347325936+1197371806136556985877790097-563347325936
-n=351189532146914946493104395525009571831256157560461451
diff --git a/testsuite/tests/ghc-regress/programs/launchbury/test.T b/testsuite/tests/ghc-regress/programs/launchbury/test.T
deleted file mode 100644
index 937bb94a6e..0000000000
--- a/testsuite/tests/ghc-regress/programs/launchbury/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('launchbury',
- [skip_if_fast, extra_clean(['Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/lennart_range/Main.hs b/testsuite/tests/ghc-regress/programs/lennart_range/Main.hs
deleted file mode 100644
index c45e4b2b36..0000000000
--- a/testsuite/tests/ghc-regress/programs/lennart_range/Main.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-{-
-Date: Thu, 22 Sep 1994 01:59:49 +0200
-From: Lennart Augustsson <augustss@cs.chalmers.se>
-Message-Id: <199409212359.BAA01719@statler.cs.chalmers.se>
-To: glasgow-haskell-bugs@dcs.glasgow.ac.uk
-Subject: ghc bug
-
-
-Some floating constants that are within the floating range
-become wrong, e.g.
-
- 1.82173691287639817263897126389712638972163e-300::Double
-
- -- Lennart
-
-PS. Maybe you use fromRational as defined in the Prelude?
-That won't do. It is badly broken, tell me if you want
-one that works.
--}
-
--- I have turned this into a general test of extreme constants.
--- WDP 94/12
-
-main = putStr (shows (1.82173691287639817263897126389712638972163e-300::Double) "\n")
diff --git a/testsuite/tests/ghc-regress/programs/lennart_range/Makefile b/testsuite/tests/ghc-regress/programs/lennart_range/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/lennart_range/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/lennart_range/lennart_range.stdout b/testsuite/tests/ghc-regress/programs/lennart_range/lennart_range.stdout
deleted file mode 100644
index 5196dcc970..0000000000
--- a/testsuite/tests/ghc-regress/programs/lennart_range/lennart_range.stdout
+++ /dev/null
@@ -1 +0,0 @@
-1.821736912876398e-300
diff --git a/testsuite/tests/ghc-regress/programs/lennart_range/test.T b/testsuite/tests/ghc-regress/programs/lennart_range/test.T
deleted file mode 100644
index f308f0039d..0000000000
--- a/testsuite/tests/ghc-regress/programs/lennart_range/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('lennart_range',
- [skip_if_fast, extra_clean(['Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/lex/Main.hs b/testsuite/tests/ghc-regress/programs/lex/Main.hs
deleted file mode 100644
index 4c9a44802d..0000000000
--- a/testsuite/tests/ghc-regress/programs/lex/Main.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module Main where
-
-main = interact ( \ s -> shows (lex' s) "\n")
- where lex' "" = []
- lex' s = tok : lex' s' where -- [(tok,s')] = lex s
- (tok,s') = case lex s of
- [r] -> r
- [] -> error ("Empty: " ++ s)
- other -> error ("Multi: " ++ s)
diff --git a/testsuite/tests/ghc-regress/programs/lex/Makefile b/testsuite/tests/ghc-regress/programs/lex/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/lex/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/lex/lex.stdin b/testsuite/tests/ghc-regress/programs/lex/lex.stdin
deleted file mode 100644
index dcd009c41b..0000000000
--- a/testsuite/tests/ghc-regress/programs/lex/lex.stdin
+++ /dev/null
@@ -1,170 +0,0 @@
-module Graph where
-
-import Parse
-import StdLib
-import PSlib
-import GRIP
-
-paperX = 280::Int
-paperY = 190::Int
-
-fromInt :: Num a => Int -> a
-fromInt = fromInteger . toInteger
-
-gspostscript str = initialise stdheader ++ portrait ++ str ++ "showpage\n"
-postscript str = initialise stdheader ++ landscape ++ str ++ "showpage\n"
-
-ePostscript (reqdx,reqdy) str = initialise (stdheader++
- "%%BoundingBox: 0 0 "++show (cms2pts reqdx)++" "++show (cms2pts reqdy)++"\n"
- ++ "%%EndComments\n")
- ++ scale (fromInt reqdx*10/fromInt paperX) (fromInt reqdy*10/fromInt paperY) ++ str ++
- showpage
-
-initGraph title pedata (topX,topY) (xlabel,ylabel) keys =
- drawBox (Pt 0 0) paperX paperY ++
- drawBox (Pt 1 1) (paperX-2) 5 ++
- drawBox (Pt 1 (paperY-7)) (paperX-2) 6 ++
- setfont "BOLD" ++ moveto (Pt (paperX `div` 2) (paperY-6)) ++ cjustify (title) ++
- setfont "NORM" ++
- placePEs pedata ++
- translate 20 25 ++
- newpath ++ moveto (Pt 0 (-5)) ++ lineto (Pt 0 dimY) ++
- moveto (Pt (-5) 0) ++ lineto (Pt dimX 0) ++ stroke ++
- setfont "SMALL" ++
- markXAxis dimX topX++
- markYAxis dimY topY++
- moveto (Pt 0 (dimY+4)) ++ rjustify ylabel ++ stroke ++
- moveto (Pt dimX (-8)) ++ rjustify xlabel ++ stroke ++
- setfont "NORM" ++
- dokeys dimX keys
-
-placePEs (pes,on) | checkPEs (tail pes) on =
- showActive (length pes) (length used) ++
- showUsed pes used ++ setfont "NORM"
- where used = if on==[] then tail pes else on
-
-
-cms2pts :: Int -> Int
-cms2pts x = round (28.4584 * fromInt x)
-
-plotCurve :: Int -> [Point] -> Postscript
-plotCurve x pts = setgray x ++ fillObject pts
-
-plot :: [Point] -> Postscript
-plot points = plotCurve 5 (Pt 0 0:points)
-
-dokeys left keys = concat (map2 format (places 0) keys)
- where
- format pt@(Pt x y) (col,tex,pc) = fillBox pt 16 9 col ++ stroke ++ moveto (Pt (x+17) (y+3))
- ++ text tex ++ stroke ++ moveto (Pt (x+8) (y+3)) ++
- inv col ++ setfont "BOLD" ++ cjustify (pc) ++
- stroke ++ setfont "NORM" ++ setgray 10
- no=left `div` length keys
- places n | n == no = []
- places n = (Pt (n*no) (-17)):places (n+1)
-
-showActive t f =
- setfont "LARGE" ++ moveto (Pt 10 16) ++ cjustify (show f) ++
- setfont "SMALL" ++ moveto (Pt 10 12) ++ cjustify "PE(s)" ++ stroke ++
- setfont "SMALL" ++ moveto (Pt 10 8) ++ cjustify "displayed" ++ stroke ++
- setfont "NORM"
-
-showUsed (m:pes) on = moveto (Pt 2 2) ++ setfont "SMALL" ++ text "Configuration:" ++
- dopes (paperX-27) (("SMALLITALIC",showPE m):map f pes) ++ stroke
- where
- f pe | elem pe on = ("SMALLBOLD",showPE pe)
- | otherwise = ("SMALL",showPE pe)
-
-dopes left pes = concat (map2 format (places 0) pes)
- where
- format pt@(Pt x y) (font,tex) = setfont font ++ moveto pt ++ text tex ++ stroke
- no=left `div` ((length pes*2)+1)
- f x = (no*((x*2)+1)) + 27
- places n | n>2*no = []
- places n = (Pt (f n) 2):places (n+1)
-
-
-
-checkPEs pes [] = True
-checkPEs pes (p:ps) | elem p pes = checkPEs pes ps
- | otherwise = error ("Attempt to gather information from inactive PE - "++ showPE p)
-
-showPE :: PElement -> String
-showPE (PE str no) = str++"."++show no
-
-inv x | x>=5 = setgray 0
- | otherwise = setgray 10
-
-dimX = paperX-30
-dimY = paperY-40
-
-markXAxis :: Int -> Int -> Postscript
-markXAxis dimX maxX = label 10 ++ markOnX 100
- where
- label 0 = ""
- label x = newpath ++ moveto (Pt (notch x) 0) ++ rlineto 0 (-2) ++
- moveto (Pt (notch x) (-5)) ++
- cjustify (printFloat (t x)) ++ stroke ++ label (x-1)
- t x = fromInt x*(fromInt maxX / fromInt 10)
- notch x = x*(dimX `div` 10)
-
-markOnX n = mapcat notches [1..n] ++ stroke
- where
- notches n = movetofloat (m*fromInt n) 0 ++ (rlineto 0 (-1)) ++ stroke
- m = fromInt dimX/fromInt n
-
-
-markYAxis :: Int -> Int -> Postscript
-markYAxis dimY maxY = label 10 ++ markOnY (calibrate maxY)
- where
- label 0 = ""
- label x = newpath ++ moveto (Pt 0 (notch x)) ++ rlineto (-2) 0 ++
- moveto (Pt (-3) (notch x)) ++
- rjustify (printFloat (t x)) ++ stroke ++ label (x-1)
- t x = fromInt x*(fromInt maxY / fromInt 10)
- notch x = x*(dimY `div` 10)
-
-calibrate x | x<=1 = 1
- | x<=100 = x
- | otherwise = calibrate (x `div` 10)
-
-markOnY n = mapcat notches [1..n] ++ stroke
- where
- notches n = movetofloat 0 (m*fromInt n) ++ (rlineto (-1) 0)
- m = fromInt dimY/fromInt n
-
-movetofloat x y = show x ++ " " ++ show y ++ " moveto\n"
-
-
-determineScale :: [Point] -> (Int,Int)
-determineScale pts = (axisScale x, axisScale y)
- where (min,Pt x y) = minandmax pts
-
-axisScale :: Int -> Int
-axisScale x = axisScale' x 1
-axisScale' x m | x <= m = m
- | x <= m*2 = m*2
- | x <= m*5 = m*5
- | x <= m*10 = m*10
- | otherwise = axisScale' x (m*10)
-
-minandmax :: [Point] -> (Point,Point)
-minandmax [] = error "No points"
-minandmax (p:ps) = f (p,p) ps
- where
- f p [] = p
- f (Pt minx miny,Pt maxx maxy) (Pt x y:ps) = f (Pt minx' miny',Pt maxx' maxy') ps
- where minx' = min x minx
- miny' = min y miny
- maxx' = max x maxx
- maxy' = max y maxy
-
-
-printFloat :: Float -> String
-printFloat x = f (show (round (x*10)))
- where
- f "0" = "0"
- f r | x<1 = "0."++r
- f (r:"0") | x<10 = [r]
- f (r:m) | x<10 = r:'.':m
- f _ = show (round x)
diff --git a/testsuite/tests/ghc-regress/programs/lex/lex.stdout b/testsuite/tests/ghc-regress/programs/lex/lex.stdout
deleted file mode 100644
index e1e9e468d1..0000000000
--- a/testsuite/tests/ghc-regress/programs/lex/lex.stdout
+++ /dev/null
@@ -1 +0,0 @@
-["module","Graph","where","import","Parse","import","StdLib","import","PSlib","import","GRIP","paperX","=","280","::","Int","paperY","=","190","::","Int","fromInt","::","Num","a","=>","Int","->","a","fromInt","=","fromInteger",".","toInteger","gspostscript","str","=","initialise","stdheader","++","portrait","++","str","++","\"showpage\\n\"","postscript","str","=","initialise","stdheader","++","landscape","++","str","++","\"showpage\\n\"","ePostscript","(","reqdx",",","reqdy",")","str","=","initialise","(","stdheader","++","\"%%BoundingBox: 0 0 \"","++","show","(","cms2pts","reqdx",")","++","\" \"","++","show","(","cms2pts","reqdy",")","++","\"\\n\"","++","\"%%EndComments\\n\"",")","++","scale","(","fromInt","reqdx","*","10","/","fromInt","paperX",")","(","fromInt","reqdy","*","10","/","fromInt","paperY",")","++","str","++","showpage","initGraph","title","pedata","(","topX",",","topY",")","(","xlabel",",","ylabel",")","keys","=","drawBox","(","Pt","0","0",")","paperX","paperY","++","drawBox","(","Pt","1","1",")","(","paperX","-","2",")","5","++","drawBox","(","Pt","1","(","paperY","-","7",")",")","(","paperX","-","2",")","6","++","setfont","\"BOLD\"","++","moveto","(","Pt","(","paperX","`","div","`","2",")","(","paperY","-","6",")",")","++","cjustify","(","title",")","++","setfont","\"NORM\"","++","placePEs","pedata","++","translate","20","25","++","newpath","++","moveto","(","Pt","0","(","-","5",")",")","++","lineto","(","Pt","0","dimY",")","++","moveto","(","Pt","(","-","5",")","0",")","++","lineto","(","Pt","dimX","0",")","++","stroke","++","setfont","\"SMALL\"","++","markXAxis","dimX","topX","++","markYAxis","dimY","topY","++","moveto","(","Pt","0","(","dimY","+","4",")",")","++","rjustify","ylabel","++","stroke","++","moveto","(","Pt","dimX","(","-","8",")",")","++","rjustify","xlabel","++","stroke","++","setfont","\"NORM\"","++","dokeys","dimX","keys","placePEs","(","pes",",","on",")","|","checkPEs","(","tail","pes",")","on","=","showActive","(","length","pes",")","(","length","used",")","++","showUsed","pes","used","++","setfont","\"NORM\"","where","used","=","if","on","==","[","]","then","tail","pes","else","on","cms2pts","::","Int","->","Int","cms2pts","x","=","round","(","28.4584","*","fromInt","x",")","plotCurve","::","Int","->","[","Point","]","->","Postscript","plotCurve","x","pts","=","setgray","x","++","fillObject","pts","plot","::","[","Point","]","->","Postscript","plot","points","=","plotCurve","5","(","Pt","0","0",":","points",")","dokeys","left","keys","=","concat","(","map2","format","(","places","0",")","keys",")","where","format","pt","@","(","Pt","x","y",")","(","col",",","tex",",","pc",")","=","fillBox","pt","16","9","col","++","stroke","++","moveto","(","Pt","(","x","+","17",")","(","y","+","3",")",")","++","text","tex","++","stroke","++","moveto","(","Pt","(","x","+","8",")","(","y","+","3",")",")","++","inv","col","++","setfont","\"BOLD\"","++","cjustify","(","pc",")","++","stroke","++","setfont","\"NORM\"","++","setgray","10","no","=","left","`","div","`","length","keys","places","n","|","n","==","no","=","[","]","places","n","=","(","Pt","(","n","*","no",")","(","-","17",")",")",":","places","(","n","+","1",")","showActive","t","f","=","setfont","\"LARGE\"","++","moveto","(","Pt","10","16",")","++","cjustify","(","show","f",")","++","setfont","\"SMALL\"","++","moveto","(","Pt","10","12",")","++","cjustify","\"PE(s)\"","++","stroke","++","setfont","\"SMALL\"","++","moveto","(","Pt","10","8",")","++","cjustify","\"displayed\"","++","stroke","++","setfont","\"NORM\"","showUsed","(","m",":","pes",")","on","=","moveto","(","Pt","2","2",")","++","setfont","\"SMALL\"","++","text","\"Configuration:\"","++","dopes","(","paperX","-","27",")","(","(","\"SMALLITALIC\"",",","showPE","m",")",":","map","f","pes",")","++","stroke","where","f","pe","|","elem","pe","on","=","(","\"SMALLBOLD\"",",","showPE","pe",")","|","otherwise","=","(","\"SMALL\"",",","showPE","pe",")","dopes","left","pes","=","concat","(","map2","format","(","places","0",")","pes",")","where","format","pt","@","(","Pt","x","y",")","(","font",",","tex",")","=","setfont","font","++","moveto","pt","++","text","tex","++","stroke","no","=","left","`","div","`","(","(","length","pes","*","2",")","+","1",")","f","x","=","(","no","*","(","(","x","*","2",")","+","1",")",")","+","27","places","n","|","n",">","2","*","no","=","[","]","places","n","=","(","Pt","(","f","n",")","2",")",":","places","(","n","+","1",")","checkPEs","pes","[","]","=","True","checkPEs","pes","(","p",":","ps",")","|","elem","p","pes","=","checkPEs","pes","ps","|","otherwise","=","error","(","\"Attempt to gather information from inactive PE - \"","++","showPE","p",")","showPE","::","PElement","->","String","showPE","(","PE","str","no",")","=","str","++","\".\"","++","show","no","inv","x","|","x",">=","5","=","setgray","0","|","otherwise","=","setgray","10","dimX","=","paperX","-","30","dimY","=","paperY","-","40","markXAxis","::","Int","->","Int","->","Postscript","markXAxis","dimX","maxX","=","label","10","++","markOnX","100","where","label","0","=","\"\"","label","x","=","newpath","++","moveto","(","Pt","(","notch","x",")","0",")","++","rlineto","0","(","-","2",")","++","moveto","(","Pt","(","notch","x",")","(","-","5",")",")","++","cjustify","(","printFloat","(","t","x",")",")","++","stroke","++","label","(","x","-","1",")","t","x","=","fromInt","x","*","(","fromInt","maxX","/","fromInt","10",")","notch","x","=","x","*","(","dimX","`","div","`","10",")","markOnX","n","=","mapcat","notches","[","1","..","n","]","++","stroke","where","notches","n","=","movetofloat","(","m","*","fromInt","n",")","0","++","(","rlineto","0","(","-","1",")",")","++","stroke","m","=","fromInt","dimX","/","fromInt","n","markYAxis","::","Int","->","Int","->","Postscript","markYAxis","dimY","maxY","=","label","10","++","markOnY","(","calibrate","maxY",")","where","label","0","=","\"\"","label","x","=","newpath","++","moveto","(","Pt","0","(","notch","x",")",")","++","rlineto","(","-","2",")","0","++","moveto","(","Pt","(","-","3",")","(","notch","x",")",")","++","rjustify","(","printFloat","(","t","x",")",")","++","stroke","++","label","(","x","-","1",")","t","x","=","fromInt","x","*","(","fromInt","maxY","/","fromInt","10",")","notch","x","=","x","*","(","dimY","`","div","`","10",")","calibrate","x","|","x","<=","1","=","1","|","x","<=","100","=","x","|","otherwise","=","calibrate","(","x","`","div","`","10",")","markOnY","n","=","mapcat","notches","[","1","..","n","]","++","stroke","where","notches","n","=","movetofloat","0","(","m","*","fromInt","n",")","++","(","rlineto","(","-","1",")","0",")","m","=","fromInt","dimY","/","fromInt","n","movetofloat","x","y","=","show","x","++","\" \"","++","show","y","++","\" moveto\\n\"","determineScale","::","[","Point","]","->","(","Int",",","Int",")","determineScale","pts","=","(","axisScale","x",",","axisScale","y",")","where","(","min",",","Pt","x","y",")","=","minandmax","pts","axisScale","::","Int","->","Int","axisScale","x","=","axisScale'","x","1","axisScale'","x","m","|","x","<=","m","=","m","|","x","<=","m","*","2","=","m","*","2","|","x","<=","m","*","5","=","m","*","5","|","x","<=","m","*","10","=","m","*","10","|","otherwise","=","axisScale'","x","(","m","*","10",")","minandmax","::","[","Point","]","->","(","Point",",","Point",")","minandmax","[","]","=","error","\"No points\"","minandmax","(","p",":","ps",")","=","f","(","p",",","p",")","ps","where","f","p","[","]","=","p","f","(","Pt","minx","miny",",","Pt","maxx","maxy",")","(","Pt","x","y",":","ps",")","=","f","(","Pt","minx'","miny'",",","Pt","maxx'","maxy'",")","ps","where","minx'","=","min","x","minx","miny'","=","min","y","miny","maxx'","=","max","x","maxx","maxy'","=","max","y","maxy","printFloat","::","Float","->","String","printFloat","x","=","f","(","show","(","round","(","x","*","10",")",")",")","where","f","\"0\"","=","\"0\"","f","r","|","x","<","1","=","\"0.\"","++","r","f","(","r",":","\"0\"",")","|","x","<","10","=","[","r","]","f","(","r",":","m",")","|","x","<","10","=","r",":","'.'",":","m","f","_","=","show","(","round","x",")",""]
diff --git a/testsuite/tests/ghc-regress/programs/lex/test.T b/testsuite/tests/ghc-regress/programs/lex/test.T
deleted file mode 100644
index da6e227a68..0000000000
--- a/testsuite/tests/ghc-regress/programs/lex/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('lex',
- [skip_if_fast, extra_clean(['Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/life_space_leak/Main.hs b/testsuite/tests/ghc-regress/programs/life_space_leak/Main.hs
deleted file mode 100644
index b794a3779a..0000000000
--- a/testsuite/tests/ghc-regress/programs/life_space_leak/Main.hs
+++ /dev/null
@@ -1,360 +0,0 @@
---------------------------------
--- The Game of Life --
---------------------------------
-
-generations x = 30
-
-data L a = N | C1 a (L a) | C2 a a (L a)
-
-data Tuple2 a b = T2 a b
-
-data Tuple3 a b c = T3 a b c
-
-
-main = putStr (listChar_string
- (append1 (C1 '\FF' N)
- (life1 (generations ()) (start ()))))
-
-listChar_string :: L Char -> String
-listChar_string N = []
-listChar_string (C1 x xs) = x : listChar_string xs
-
-start :: a -> L (L Int)
-start x = (C1 N
- (C1 N
- (C1 N
- (C1 N
- (C1 N
- (C1 N
- (C1 N
- (C1 N
- (C1 N
- (C1 N
- (C1 N
- (C1 N
- (C1 N
- (C1 N
- (C1
- (C1 0
- (C1 0
- (C1 0
- (C1 1
- (C1 1
- (C1 1
- (C1 1
- (C1 1
- (C1 0
- (C1 1
- (C1 1
- (C1 1
- (C1 1
- (C1 1
- (C1 0
- (C1 1
- (C1 1
- (C1 1
- (C1 1
- (C1 1
- (C1 0
- (C1 1
- (C1 1
- (C1 1
- (C1 1
- (C1 1
- (C1 0 N))))))))))))))))))))))))))) N)))))))))))))))
-
--- Calculating the next generation
-
-gen1 :: Int -> L (L Int) -> L (L Int)
-gen1 n board = map1 row1 (shift1 (copy1 n 0) board)
-
-row1 :: Tuple3 (L Int) (L Int) (L Int) -> L Int
-row1 (T3 last this next)
- = zipWith31 elt1 (shift2 0 last)
- (shift2 0 this)
- (shift2 0 next)
-
-
-elt1 :: Tuple3 Int Int Int
- -> (Tuple3 Int Int Int)
- -> (Tuple3 Int Int Int) -> Int
-elt1 (T3 a b c) (T3 d e f) (T3 g h i)
- = if (not (eq tot 2))
- && (not (eq tot 3))
- then 0
- else if (eq tot 3) then 1 else e
- where tot = a `plus` b `plus` c `plus` d
- `plus` f `plus` g `plus` h `plus` i
-
-eq :: Int -> Int -> Bool
-eq x y = x == y
-
-plus :: Int -> Int -> Int
-plus x y = x + y
-
-shiftr1 :: L Int -> L (L Int) -> L (L Int)
-shiftr1 x xs = append2 (C1 x N) (init1 xs)
-
-shiftl1 :: L Int -> L (L Int) -> L (L Int)
-shiftl1 x xs = append2 (tail1 xs) (C1 x N)
-
-shift1 :: L Int -> L (L Int)
- -> L (Tuple3 (L Int) (L Int) (L Int))
-shift1 x xs = zip31 (shiftr1 x xs) xs (shiftl1 x xs)
-
-shiftr2 :: Int -> L Int -> L Int
-shiftr2 x xs = append3 (C1 x N) (init2 xs)
-
-shiftl2 :: Int -> L Int -> L Int
-shiftl2 x xs = append3 (tail2 xs) (C1 x N)
-
-shift2 :: Int -> L Int -> L (Tuple3 Int Int Int)
-shift2 x xs = zip32 (shiftr2 x xs) xs (shiftl2 x xs)
-
--- copy
-
-copy1 :: Int -> Int -> L Int
-copy1 0 x = N
-copy1 n x = C1 x (copy1 (n-1) x)
-
-copy2 :: Int -> L Int -> L (L Int)
-copy2 0 x = N
-copy2 n x = C1 x (copy2 (n-1) x)
-
-copy3 :: Int -> Char -> L Char
-copy3 0 x = N
-copy3 n x = C1 x (copy3 (n-1) x)
-
--- Displaying one generation
-
-disp1 :: (Tuple2 (L Char) (L (L Int))) -> L Char
-disp1 (T2 gen xss)
- = append1 gen
- (append1 (C1 '\n' (C1 '\n' N))
- (foldr_1 (glue1 (C1 '\n' N)) N
- (map4 (compose2 concat1 (map2 star1)) xss)))
-
-star1 :: Int -> L Char
-star1 i = case i of
- 0 -> C1 ' ' (C1 ' ' N)
- 1 -> C1 ' ' (C1 'o' N)
-
-glue1 :: L Char -> L Char -> L Char -> L Char
-glue1 s xs ys = append1 xs (append1 s ys)
-
--- Generating and displaying a sequence of generations
-
-life1 :: Int -> L (L Int) -> L Char
-life1 n xss
- = foldr_1 (glue1 (copy3 (n+2) '\VT')) N
- (map5 disp1
- (zip1_ (map6 (string_ListChar.show) (ints 0))
- gens))
- where
- gens = take3 (100 {-740-}::Int) (iterate1 (gen1 n) (initial1 n xss))
-
-ints :: Int -> L Int
-ints x = C1 x (ints (x+1))
-
-string_ListChar :: String -> L Char
-string_ListChar [] = N
-string_ListChar (x:xs) = C1 x (string_ListChar xs)
-
-initial1 :: Int -> L (L Int) -> L (L Int)
-initial1 n xss = take1 n (append2 (map3 (compose1 (take2 n)
- (`append3` (copy1 n 0))) xss)
- (copy2 n (copy1 n 0)))
-
-iterate1 :: (L (L Int) -> L (L Int))
- -> L (L Int) -> L (L (L Int))
-iterate1 f x = C1 x (iterate1 f (f x))
-
--- versions of built in functions
-
--- take
-take1 :: Int -> L (L Int) -> L (L Int)
-take1 0 _ = N
-take1 _ N = N
---should be:take1 (n+1) (C1 x xs) = C1 x (take1 n xs)
-take1 n (C1 x xs) | n < 0 = error "Main.take1"
- | otherwise = C1 x (take1 (n-1) xs)
-
-take2 :: Int -> L Int -> L Int
-take2 0 _ = N
-take2 _ N = N
---should be:take2 (n+1) (C1 x xs) = C1 x (take2 n xs)
-take2 n (C1 x xs) | n < 0 = error "Main.take2"
- | otherwise = C1 x (take2 (n-1) xs)
-
-take3 :: Int -> L (L (L Int))
- -> L (L (L Int))
-take3 0 _ = N
-take3 _ N = N
-take3 n (C1 x xs) = C1 x (take3 (n-1) xs)
-
--- init
-
-init1 :: L (L Int) -> L (L Int)
-init1 (C1 x N) = N
-init1 (C1 x xs) = C1 x (init1 xs)
-init1 N = error "init1 got a bad list"
-
-init2 :: L Int -> L Int
-init2 (C1 x N) = N
-init2 (C1 x xs) = C1 x (init2 xs)
-init2 N = error "init1 got a bad list"
-
--- tail
-
-tail1 :: L (L Int) -> L (L Int)
-tail1 (C1 _ xs) = xs
-tail1 N = error "tail1 got a bad list"
-
-tail2 :: L Int -> L Int
-tail2 (C1 _ xs) = xs
-tail2 N = error "tail2 got a bad list"
-
--- maps
-
-map1 :: (Tuple3 (L Int) (L Int) (L Int) -> L Int) ->
- L (Tuple3 (L Int) (L Int) (L Int))
- -> L (L Int)
-map1 f N = N
-map1 f (C1 x xs) = C1 (f x) (map1 f xs)
-
-map2 :: (Int -> L Char) -> L Int -> L (L Char)
-map2 f N = N
-map2 f (C1 x xs) = C1 (f x) (map2 f xs)
-
-map3 :: (L Int -> L Int) -> L (L Int) -> L (L Int)
-map3 f N = N
-map3 f (C1 x xs) = C1 (f x) (map3 f xs)
-
-map4 :: (L Int -> L Char)
- -> L (L Int) -> L (L Char)
-map4 f N = N
-map4 f (C1 x xs) = C1 (f x) (map4 f xs)
-
-map5 :: (Tuple2 (L Char) (L (L Int)) -> L Char)
- -> L (Tuple2 (L Char) (L (L Int)))
- -> L (L Char)
-map5 f N = N
-map5 f (C1 x xs) = C1 (f x) (map5 f xs)
-
-map6 :: (Int -> L Char) -> L Int -> L (L Char)
-map6 f N = N
-map6 f (C1 x xs) = C1 (f x) (map6 f xs)
-
--- compose
-
-compose2 :: (L (L Char) -> L Char)
- -> (L Int -> L (L Char))
- -> L Int -> L Char
-compose2 f g xs = f (g xs)
-
-compose1 :: (L Int -> L Int)
- -> (L Int -> L Int) -> L Int -> L Int
-compose1 f g xs = f (g xs)
-
--- concat
-
-concat1 :: L (L Char) -> L Char
-concat1 = foldr_1 append1 N
-
--- foldr
-
-foldr_1 :: (L Char -> L Char -> L Char)
- -> L Char -> L (L Char) -> L Char
-foldr_1 f a N = a
-foldr_1 f a (C1 x xs) = f x (foldr_1 f a xs)
-
--- appends
-
-append1 :: L Char -> L Char -> L Char
-append1 N ys = ys
-append1 (C1 x xs) ys = C1 x (append1 xs ys)
-
-append2 :: L (L Int) -> L (L Int) -> L (L Int)
-append2 N ys = ys
-append2 (C1 x xs) ys = C1 x (append2 xs ys)
-
-append3 :: L Int -> L Int -> L Int
-append3 N ys = ys
-append3 (C1 x xs) ys = C1 x (append3 xs ys)
-
--- zips
-
-pzip f (C1 x1 xs) (C1 y1 ys)
- = C1 (f x1 y1) (pzip f xs ys)
-pzip f _ _ = N
-
-
-zip1_ :: L (L Char)
- -> L (L (L Int))
- -> L (Tuple2 (L Char) (L (L Int)))
-zip1_ = pzip T2
-
-zip2_ :: L (L Int)
- -> L (L Int)
- -> L (Tuple2 (L Int) (L Int))
-zip2_ = pzip T2
-
-zip3d :: L Int -> (Tuple2 (L Int) (L Int))
- -> (Tuple3 (L Int) (L Int) (L Int))
-zip3d x (T2 y z) = T3 x y z
-
-zip3_ :: L (L Int)
- -> L (Tuple2 (L Int) (L Int))
- -> L (Tuple3 (L Int) (L Int) (L Int))
-zip3_ = pzip zip3d
-
-zip4_ :: L Int
- -> L Int
- -> L (Tuple2 Int Int)
-zip4_ = pzip T2
-
-zip5d :: Int -> (Tuple2 Int Int) -> (Tuple3 Int Int Int)
-zip5d x (T2 y z) = T3 x y z
-
-zip5_ :: L Int
- -> L (Tuple2 Int Int)
- -> L (Tuple3 Int Int Int)
-zip5_ = pzip zip5d
-
-zip6_ :: L (Tuple3 Int Int Int)
- -> L (Tuple3 Int Int Int)
- -> L (Tuple2 (Tuple3 Int Int Int)
- (Tuple3 Int Int Int))
-zip6_ = pzip T2
-
-zip31 :: L (L Int) -> L (L Int)
- -> L (L Int)
- -> L (Tuple3 (L Int) (L Int) (L Int))
-zip31 as bs cs
- = zip3_ as (zip2_ bs cs)
-
-zip32 :: L Int -> L Int -> L Int
- -> L (Tuple3 Int Int Int)
-zip32 as bs cs
- = zip5_ as (zip4_ bs cs)
-
--- zipWith
-
-zipWith21 :: ((Tuple3 Int Int Int)
- -> (Tuple2 (Tuple3 Int Int Int)
- (Tuple3 Int Int Int)) -> Int)
- -> L (Tuple3 Int Int Int)
- -> L (Tuple2 (Tuple3 Int Int Int)
- (Tuple3 Int Int Int))
- -> L Int
-zipWith21 = pzip
-
-zipWith31 :: ((Tuple3 Int Int Int)
- -> (Tuple3 Int Int Int)
- -> (Tuple3 Int Int Int) -> Int)
- -> L (Tuple3 Int Int Int)
- -> L (Tuple3 Int Int Int)
- -> L (Tuple3 Int Int Int) -> L Int
-zipWith31 z as bs cs
- = zipWith21 z' as (zip6_ bs cs)
- where z' a (T2 b c) = z a b c
diff --git a/testsuite/tests/ghc-regress/programs/life_space_leak/Makefile b/testsuite/tests/ghc-regress/programs/life_space_leak/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/life_space_leak/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/life_space_leak/life.test b/testsuite/tests/ghc-regress/programs/life_space_leak/life.test
deleted file mode 100644
index 41d7928373..0000000000
--- a/testsuite/tests/ghc-regress/programs/life_space_leak/life.test
+++ /dev/null
@@ -1,17 +0,0 @@
-#! /bin/sh
-#
-./life_space_leak | sum > /tmp/sum-real-$$
-
-cat > ./sum-expected-$$ << EOTHING
-02845 1350
-EOTHING
-
-if cmp -s ./sum-real-$$ ./sum-expected-$$ ; then
- /bin/rm ./sum*$$
- exit 0
-else
- echo -n '*** sum I got: ' ; cat ./sum-real-$$
- echo -n '*** sum I expected: ' ; cat ./sum-expected-$$
- /bin/rm ./sum*$$
- exit 1
-fi
diff --git a/testsuite/tests/ghc-regress/programs/life_space_leak/life_space_leak.stdout b/testsuite/tests/ghc-regress/programs/life_space_leak/life_space_leak.stdout
deleted file mode 100644
index efb639a1c5..0000000000
--- a/testsuite/tests/ghc-regress/programs/life_space_leak/life_space_leak.stdout
+++ /dev/null
@@ -1,3201 +0,0 @@
- 0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- o o o o o o o o o o o o o o o o o o o o
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 1
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 2
-
-
-
-
-
-
-
-
-
-
-
-
-
- o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o
-
-
-
-
-
-
-
-
-
-
-
-
-
- 3
-
-
-
-
-
-
-
-
-
-
-
-
-
- o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o
-
-
-
-
-
-
-
-
-
-
-
-
-
- 4
-
-
-
-
-
-
-
-
-
-
-
-
-
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o o o o o
-
-
-
-
-
-
-
-
-
-
-
-
-
- 5
-
-
-
-
-
-
-
-
-
-
-
-
- o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o
-
-
-
-
-
-
-
-
-
-
-
-
- 6
-
-
-
-
-
-
-
-
-
-
-
-
- o o o o o o o o o o o o
-
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o
-
- o o o o o o o o o o o o
-
-
-
-
-
-
-
-
-
-
-
-
- 7
-
-
-
-
-
-
-
-
-
-
-
- o o o o
- o o o o
- o o o o o o o o o o
-
- o o o o o o o o o o o o o o o o o o
-
- o o o o o o o o o o
- o o o o
- o o o o
-
-
-
-
-
-
-
-
-
-
-
- 8
-
-
-
-
-
-
-
-
-
-
-
-
- o o o o
- o o o o o o o o o o
- o o o o o o o o o o
- o o
- o o o o o o o o o o
- o o o o o o o o o o
- o o o o
-
-
-
-
-
-
-
-
-
-
-
-
- 9
-
-
-
-
-
-
-
-
-
-
-
-
- o o o o o o o o
- o o o o o o
- o o o o o o o o
- o o o o o o
- o o o o o o o o
- o o o o o o
- o o o o o o o o
-
-
-
-
-
-
-
-
-
-
-
-
- 10
-
-
-
-
-
-
-
-
-
-
-
- o o
- o o o o o o o o
- o o o o
- o o o o o o
- o o o o
- o o o o o o
- o o o o
- o o o o o o o o
- o o
-
-
-
-
-
-
-
-
-
-
-
- 11
-
-
-
-
-
-
-
-
-
-
-
- o o
- o o o o o o o o
- o o o o o o
- o o
- o o o o
- o o
- o o o o o o
- o o o o o o o o
- o o
-
-
-
-
-
-
-
-
-
-
-
- 12
-
-
-
-
-
-
-
-
-
-
-
- o o
- o o o o o o o o o o o o
- o o
-
-
-
- o o
- o o o o o o o o o o o o
- o o
-
-
-
-
-
-
-
-
-
-
-
- 13
-
-
-
-
-
-
-
-
-
-
-
- o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o
-
-
-
- o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o
-
-
-
-
-
-
-
-
-
-
-
- 14
-
-
-
-
-
-
-
-
-
-
- o o
- o o o o o o o o o o
-
- o o o o o o o o o o
- o o
-
- o o
- o o o o o o o o o o
-
- o o o o o o o o o o
- o o
-
-
-
-
-
-
-
-
-
-
- 15
-
-
-
-
-
-
-
-
-
-
- o o o o
- o o o o
- o o o o o o o o
- o o o o
- o o o o
-
- o o o o
- o o o o
- o o o o o o o o
- o o o o
- o o o o
-
-
-
-
-
-
-
-
-
-
- 16
-
-
-
-
-
-
-
-
-
-
-
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o o o o o o o o o
-
-
-
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o o o o o o o o o
-
-
-
-
-
-
-
-
-
-
-
- 17
-
-
-
-
-
-
-
-
-
-
- o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o
-
- o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o
-
-
-
-
-
-
-
-
-
-
- 18
-
-
-
-
-
-
-
-
-
-
- o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o
-
- o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o
-
-
-
-
-
-
-
-
-
-
- 19
-
-
-
-
-
-
-
-
-
-
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o o o o o
-
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o o o o o
-
-
-
-
-
-
-
-
-
-
- 20
-
-
-
-
-
-
-
-
-
- o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o
-
- o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o
-
-
-
-
-
-
-
-
-
- 21
-
-
-
-
-
-
-
-
-
- o o o o o o o o o o o o
-
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o o o o o
-
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o
-
- o o o o o o o o o o o o
-
-
-
-
-
-
-
-
-
- 22
-
-
-
-
-
-
-
-
- o o o o
- o o o o
- o o o o o o o o o o
-
- o o o o o o o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o
-
- o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o o o o o o o
-
- o o o o o o o o o o
- o o o o
- o o o o
-
-
-
-
-
-
-
-
- 23
-
-
-
-
-
-
-
-
-
- o o o o
- o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o o o
-
- o o o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o
- o o o o
-
-
-
-
-
-
-
-
-
- 24
-
-
-
-
-
-
-
-
-
- o o o o o o o o
- o o o o o o
- o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o
- o o o o o o o o o o o o
-
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o
- o o o o o o
- o o o o o o o o
-
-
-
-
-
-
-
-
-
- 25
-
-
-
-
-
-
-
-
- o o
- o o o o o o o o
- o o o o o o o o o o
- o o o o
- o o o o o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o
-
- o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o o o o o
- o o o o
- o o o o o o o o o o
- o o o o o o o o
- o o
-
-
-
-
-
-
-
-
- 26
-
-
-
-
-
-
-
-
- o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o o o o o o o
- o o o o o o o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o
-
- o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o o o o o o o
- o o o o o o o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o
-
-
-
-
-
-
-
-
- 27
-
-
-
-
-
-
-
-
- o o
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o o o
- o o o o
- o o o o o o o o
- o o o o o o o o o o o o
-
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o
- o o o o o o
- o o o o o o o o
- o o o o o o o o o o o o
- o o
-
-
-
-
-
-
-
-
- 28
-
-
-
-
-
-
-
-
- o o o o o o o o
- o o o o
- o o o o o o
- o o o o
- o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o
-
- o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o
- o o o o o o
- o o o o
- o o o o o o o o
-
-
-
-
-
-
-
-
- 29
-
-
-
-
-
-
-
- o o
- o o o o o o
- o o o o o o
- o o o o
- o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o
-
- o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o
- o o o o
- o o o o o o
- o o o o o o
- o o
-
-
-
-
-
-
-
- 30
-
-
-
-
-
-
-
-
- o o o o o o
- o o o o o o
- o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o
-
- o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o
- o o o o o o
- o o o o o o
-
-
-
-
-
-
-
-
- 31
-
-
-
-
-
-
-
-
- o o o o o o
- o o o o
- o o o o o o o o
- o o o o
- o o o o o o o o o o o o
- o o o o o o
- o o o o
-
- o o o o
- o o o o o o
- o o o o o o o o o o o o
- o o o o
- o o o o o o o o
- o o o o
- o o o o o o
-
-
-
-
-
-
-
-
- 32
-
-
-
-
-
-
-
- o o
- o o
- o o o o o o o o
- o o o o
- o o o o o o o o o o o o
- o o o o o o
- o o o o o o o o o o
- o o
-
- o o
- o o o o o o o o o o
- o o o o o o
- o o o o o o o o o o o o
- o o o o
- o o o o o o o o
- o o
- o o
-
-
-
-
-
-
-
- 33
-
-
-
-
-
-
-
-
- o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o
- o o o o
- o o o o o o o o
- o o o o
-
- o o o o
- o o o o o o o o
- o o o o
- o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o
-
-
-
-
-
-
-
-
- 34
-
-
-
-
-
-
-
- o o
- o o o o o o o o
- o o o o o o
- o o o o o o
- o o o o o o o o o o
- o o o o o o
- o o o o o o
- o o o o o o o o
-
- o o o o o o o o
- o o o o o o
- o o o o o o
- o o o o o o o o o o
- o o o o o o
- o o o o o o
- o o o o o o o o
- o o
-
-
-
-
-
-
-
- 35
-
-
-
-
-
-
-
- o o o o o o
- o o o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o
- o o o o
- o o o o
- o o o o o o
-
- o o o o o o
- o o o o
- o o o o
- o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o o o
- o o o o o o
-
-
-
-
-
-
-
- 36
-
-
-
-
-
-
- o o
- o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o
-
- o o o o o o o o
- o o
-
- o o
- o o o o o o o o
-
- o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o
- o o
-
-
-
-
-
-
- 37
-
-
-
-
-
-
- o o
- o o o o o o
- o o o o o o o o o o o o o o
- o o o o o o o o o o o o o o
- o o o o o o
- o o
-
- o o o o
- o o o o
-
- o o o o
- o o o o
-
- o o
- o o o o o o
- o o o o o o o o o o o o o o
- o o o o o o o o o o o o o o
- o o o o o o
- o o
-
-
-
-
-
-
- 38
-
-
-
-
-
-
- o o o o o o
- o o o o
- o o o o o o o o
- o o o o o o
- o o o o o o
- o o o o
-
- o o o o
- o o o o
-
- o o o o
- o o o o
-
- o o o o
- o o o o o o
- o o o o o o
- o o o o o o o o
- o o o o
- o o o o o o
-
-
-
-
-
-
- 39
-
-
-
-
-
- o o
- o o o o o o
- o o o o o o o o o o o o o o
- o o o o
- o o
- o o o o o o o o o o o o
- o o o o o o
-
- o o o o
- o o o o
-
- o o o o
- o o o o
-
- o o o o o o
- o o o o o o o o o o o o
- o o
- o o o o
- o o o o o o o o o o o o o o
- o o o o o o
- o o
-
-
-
-
-
- 40
-
-
-
-
-
- o o o o o o
- o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o
- o o o o o o
- o o o o
- o o
- o o o o
- o o o o
-
- o o o o
- o o o o
- o o
- o o o o
- o o o o o o
- o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o
- o o o o o o
-
-
-
-
-
- 41
-
-
-
-
- o o
- o o
- o o o o o o o o
- o o
- o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o
- o o
- o o o o
- o o o o
-
- o o o o
- o o o o
- o o
- o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o
- o o
- o o o o o o o o
- o o
- o o
-
-
-
-
- 42
-
-
-
-
-
- o o o o o o
- o o o o o o
- o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o
- o o o o o o
- o o o o
- o o
- o o o o
-
- o o o o
- o o
- o o o o
- o o o o o o
- o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o
- o o o o o o
- o o o o o o
-
-
-
-
-
- 43
-
-
-
-
- o o
- o o o o
- o o o o
- o o
- o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o
- o o o o
- o o
- o o
-
- o o
- o o
- o o o o
- o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o
- o o
- o o o o
- o o o o
- o o
-
-
-
-
- 44
-
-
-
-
- o o o o
- o o o o o o
- o o o o
- o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o
- o o o o
- o o
-
-
-
- o o
- o o o o
- o o
- o o o o o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o
- o o o o
- o o o o o o
- o o o o
-
-
-
-
- 45
-
-
-
-
- o o o o
- o o o o
- o o o o
- o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o o o
-
- o o o o o o
- o o o o o o
- o o
-
-
-
- o o
- o o o o o o
- o o o o o o
-
- o o o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o
- o o o o
- o o o o
- o o o o
-
-
-
-
- 46
-
-
-
-
- o o
- o o o o o o o o
- o o o o o o
- o o o o
- o o o o o o
- o o o o o o o o
- o o o o o o
- o o o o o o
- o o o o o o o o
- o o
-
-
-
- o o
- o o o o o o o o
- o o o o o o
- o o o o o o
- o o o o o o o o
- o o o o o o
- o o o o
- o o o o o o
- o o o o o o o o
- o o
-
-
-
-
- 47
-
-
-
-
- o o o o o o
- o o o o o o
- o o o o o o
- o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o
- o o
- o o o o
- o o o o o o o o
- o o o o o o
-
-
-
- o o o o o o
- o o o o o o o o
- o o o o
- o o
- o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o o o
- o o o o o o
- o o o o o o
-
-
-
-
- 48
-
-
-
- o o
- o o o o o o o o
- o o o o
- o o o o o o
-
- o o
- o o o o o o o o o o o o
- o o o o
- o o o o
- o o o o
- o o o o o o
- o o
-
- o o
- o o o o o o
- o o o o
- o o o o
- o o o o
- o o o o o o o o o o o o
- o o
-
- o o o o o o
- o o o o
- o o o o o o o o
- o o
-
-
-
- 49
-
-
-
- o o o o
- o o o o o o
- o o o o
- o o o o
- o o o o o o
- o o o o
- o o o o o o o o o o
- o o o o
- o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o
-
- o o o o
- o o o o o o o o
- o o o o o o o o
- o o o o
- o o o o
- o o o o o o o o o o
- o o o o
- o o o o o o
- o o o o
- o o o o
- o o o o o o
- o o o o
-
-
-
- 50
-
-
-
- o o o o o o
- o o o o
- o o o o o o
- o o o o
- o o o o
- o o
- o o o o o o
- o o o o o o
- o o
- o o o o
- o o o o
- o o o o
-
- o o o o
- o o o o
- o o o o
- o o
- o o o o o o
- o o o o o o
- o o
- o o o o
- o o o o
- o o o o o o
- o o o o
- o o o o o o
-
-
-
- 51
-
-
- o o
- o o o o o o
- o o
- o o o o o o o o
- o o o o o o
-
- o o o o
- o o o o o o
- o o o o
- o o o o o o
- o o o o
- o o o o o o o o
-
-
-
- o o o o o o o o
- o o o o
- o o o o o o
- o o o o
- o o o o o o
- o o o o
-
- o o o o o o
- o o o o o o o o
- o o
- o o o o o o
- o o
-
-
- 52
-
-
- o o o o o o
- o o o o o o
- o o o o
- o o o o
- o o o o o o o o
-
- o o o o
- o o o o
- o o o o
- o o
- o o o o o o
- o o o o o o
- o o
-
- o o
- o o o o o o
- o o o o o o
- o o
- o o o o
- o o o o
- o o o o
-
- o o o o o o o o
- o o o o
- o o o o
- o o o o o o
- o o o o o o
-
-
- 53
-
- o o
- o o o o
- o o
- o o
- o o o o
- o o o o o o
-
- o o o o
- o o o o o o
- o o o o o o
- o o o o o o
- o o o o
- o o o o o o o o o o
-
-
-
- o o o o o o o o o o
- o o o o
- o o o o o o
- o o o o o o
- o o o o o o
- o o o o
-
- o o o o o o
- o o o o
- o o
- o o
- o o o o
- o o
-
- 54
-
- o o
- o o
- o o
- o o o o
- o o
- o o o o
- o o
- o o o o o o
- o o o o
- o o o o
- o o
- o o o o o o
- o o o o o o
- o o
-
- o o
- o o o o o o
- o o o o o o
- o o
- o o o o
- o o o o
- o o o o o o
- o o
- o o o o
- o o
- o o o o
- o o
- o o
- o o
-
- 55
-
-
- o o o o
- o o
- o o o o
- o o o o
- o o
- o o o o
- o o o o
- o o o o
- o o o o
- o o o o o o
- o o o o o o
- o o o o o o o o o o
-
-
-
- o o o o o o o o o o
- o o o o o o
- o o o o o o
- o o o o
- o o o o
- o o o o
- o o o o
- o o
- o o o o
- o o o o
- o o
- o o o o
-
-
- 56
-
-
- o o o o
- o o
- o o o o
- o o
- o o o o o o
- o o o o
- o o o o
- o o
- o o o o o o
- o o
- o o o o
- o o o o o o
- o o
-
- o o
- o o o o o o
- o o o o
- o o
- o o o o o o
- o o
- o o o o
- o o o o
- o o o o o o
- o o
- o o o o
- o o
- o o o o
-
-
- 57
-
-
- o o
- o o
- o o
- o o o o
- o o o o
- o o o o o o
- o o o o
- o o o o
- o o
- o o o o
- o o
- o o o o o o o o
-
-
-
- o o o o o o o o
- o o
- o o o o
- o o
- o o o o
- o o o o
- o o o o o o
- o o o o
- o o o o
- o o
- o o
- o o
-
-
- 58
-
-
-
- o o
- o o o o
- o o o o
- o o o o
- o o o o o o o o o o
- o o o o
- o o
- o o
-
- o o o o o o
- o o
- o o
-
- o o
- o o
- o o o o o o
-
- o o
- o o
- o o o o
- o o o o o o o o o o
- o o o o
- o o o o
- o o o o
- o o
-
-
-
- 59
-
-
-
- o o o o
- o o o o
- o o o o o o
- o o o o o o
- o o o o o o o o o o
- o o
- o o
-
- o o o o
-
- o o o o o o
-
-
-
- o o o o o o
-
- o o o o
-
- o o
- o o
- o o o o o o o o o o
- o o o o o o
- o o o o o o
- o o o o
- o o o o
-
-
-
- 60
-
-
-
- o o o o o o
-
-
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o
-
- o o
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
- o o
-
- o o o o
- o o o o o o o o
- o o o o o o o o o o o o
-
-
- o o o o o o
-
-
-
- 61
-
-
- o o
- o o
- o o
- o o
- o o o o o o o o o o
- o o o o o o o o o o o o
-
-
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
-
-
- o o o o o o o o o o o o
- o o o o o o o o o o
- o o
- o o
- o o
- o o
-
-
- 62
-
-
-
- o o o o o o
-
- o o o o o o o o
- o o o o o o o o o o o o o o
- o o o o o o o o o o o o o o
- o o
-
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
-
- o o
- o o o o o o o o o o o o o o
- o o o o o o o o o o o o o o
- o o o o o o o o
-
- o o o o o o
-
-
-
- 63
-
-
- o o
- o o
- o o o o o o
- o o o o o o o o o o
- o o o o
- o o o o o o o o
- o o o o o o o o
-
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
-
- o o o o o o o o
- o o o o o o o o
- o o o o
- o o o o o o o o o o
- o o o o o o
- o o
- o o
-
-
- 64
-
-
-
- o o o o
- o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
- o o o o
- o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o
- o o o o
-
-
-
- 65
-
-
-
- o o o o o o o o o o
- o o o o
- o o o o
- o o
- o o o o o o
-
- o o o o
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
- o o o o
-
- o o o o o o
- o o
- o o o o
- o o o o
- o o o o o o o o o o
-
-
-
- 66
-
-
- o o o o o o
- o o o o o o
- o o
- o o o o
- o o
- o o o o
-
-
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
-
-
- o o o o
- o o
- o o o o
- o o
- o o o o o o
- o o o o o o
-
-
- 67
-
- o o
- o o o o
- o o o o o o
- o o o o
- o o o o
- o o
- o o o o
-
-
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
-
-
- o o o o
- o o
- o o o o
- o o o o
- o o o o o o
- o o o o
- o o
-
- 68
-
- o o
- o o o o o o
- o o o o o o
- o o o o o o o o o o
- o o o o
- o o
- o o
-
-
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
-
-
- o o
- o o
- o o o o
- o o o o o o o o o o
- o o o o o o
- o o o o o o
- o o
-
- 69
-
- o o o o
- o o o o
- o o o o
- o o o o o o o o
- o o o o
- o o o o
-
-
-
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
-
-
-
- o o o o
- o o o o
- o o o o o o o o
- o o o o
- o o o o
- o o o o
-
- 70
-
- o o o o
- o o o o
- o o o o o o o o o o
- o o o o o o o o
- o o o o o o
- o o
-
-
-
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
-
-
-
- o o
- o o o o o o
- o o o o o o o o
- o o o o o o o o o o
- o o o o
- o o o o
-
- 71
-
- o o o o
- o o o o
- o o o o
- o o o o
- o o o o o o o o o o
-
-
-
-
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
-
-
-
-
- o o o o o o o o o o
- o o o o
- o o o o
- o o o o
- o o o o
-
- 72
-
- o o
- o o
- o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o
- o o
-
-
-
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
-
-
-
- o o
- o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o
- o o
- o o
-
- 73
-
-
- o o
- o o o o o o o o o o
- o o o o
- o o o o o o
- o o o o o o o o
-
-
-
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
-
-
-
- o o o o o o o o
- o o o o o o
- o o o o
- o o o o o o o o o o
- o o
-
-
- 74
-
-
- o o o o
- o o o o o o o o o o o o
- o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o o o
- o o
-
-
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
-
-
- o o
- o o o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o
- o o o o o o o o o o o o
- o o o o
-
-
- 75
-
-
- o o o o o o
- o o o o o o o o
- o o o o
- o o o o
- o o o o
- o o o o o o
-
-
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
-
-
- o o o o o o
- o o o o
- o o o o
- o o o o
- o o o o o o o o
- o o o o o o
-
-
- 76
-
-
- o o
- o o o o o o
- o o o o o o
- o o o o o o
- o o o o o o
- o o
-
-
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
-
-
- o o
- o o o o o o
- o o o o o o
- o o o o o o
- o o o o o o
- o o
-
-
- 77
-
-
-
- o o o o o o o o
- o o o o o o o o
- o o o o o o
- o o o o o o o o
- o o o o
-
-
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
-
-
- o o o o
- o o o o o o o o
- o o o o o o
- o o o o o o o o
- o o o o o o o o
-
-
-
- 78
-
-
-
- o o o o o o o o
- o o o o
- o o o o o o o o
- o o
- o o o o
-
-
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
-
-
- o o o o
- o o
- o o o o o o o o
- o o o o
- o o o o o o o o
-
-
-
- 79
-
-
-
- o o o o
- o o o o o o o o o o
- o o o o
- o o o o o o
-
-
-
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
-
-
-
- o o o o o o
- o o o o
- o o o o o o o o o o
- o o o o
-
-
-
- 80
-
-
-
- o o o o o o
- o o o o
- o o o o o o o o o o
- o o
-
-
-
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
-
-
-
- o o
- o o o o o o o o o o
- o o o o
- o o o o o o
-
-
-
- 81
-
-
- o o
- o o o o o o
- o o o o
- o o o o o o
- o o o o
-
-
-
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
-
-
-
- o o o o
- o o o o o o
- o o o o
- o o o o o o
- o o
-
-
- 82
-
-
- o o o o o o
- o o o o o o
- o o o o
- o o o o o o
- o o o o o o
-
-
-
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
-
-
-
- o o o o o o
- o o o o o o
- o o o o
- o o o o o o
- o o o o o o
-
-
- 83
-
- o o
- o o o o
- o o o o
- o o o o
- o o o o
- o o o o
- o o
-
-
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
-
-
- o o
- o o o o
- o o o o
- o o o o
- o o o o
- o o o o
- o o
-
- 84
-
- o o
- o o o o o o
- o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o o o
- o o
-
-
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
-
-
- o o
- o o o o o o
- o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o o o
- o o
-
- 85
-
- o o o o o o
- o o o o
- o o o o
- o o o o
- o o o o
- o o o o
- o o o o o o
-
-
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
-
-
- o o o o o o
- o o o o
- o o o o
- o o o o
- o o o o
- o o o o
- o o o o o o
-
- 86
-
- o o o o o o
- o o o o o o o o o o
- o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o o o o o o o
- o o o o o o
- o o
-
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
-
- o o
- o o o o o o
- o o o o o o o o o o
- o o o o o o o o
- o o o o o o o o o o o o
- o o o o o o o o
- o o o o o o o o o o
- o o o o o o
- o o
- 87
-
- o o o o
- o o o o
- o o o o o o
- o o o o o o o o
- o o o o o o
- o o o o
- o o o o
- o o o o o o
-
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
-
- o o o o o o
- o o o o
- o o o o
- o o o o o o
- o o o o o o o o
- o o o o o o
- o o o o
- o o o o
- o o o o o o
- 88
-
-
- o o o o
- o o o o o o o o o o
- o o o o o o o o o o o o o o o
- o o o o o o o o o o
- o o o o
- o o o o o o o o o o
- o o o o o o
- o o
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
- o o
- o o o o o o
- o o o o o o o o o o
- o o o o
- o o o o o o o o o o
- o o o o o o o o o o o o o o o
- o o o o o o o o o o
- o o o o
- o o o o o o o o o o
- o o o o o o
- 89
-
-
- o o o o o o o o
- o o o o o
- o o o o o o o
- o o o o o
- o o o o o o o o
- o o o o
- o o o o
- o o o o o o
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
- o o o o o o
- o o o o
- o o o o
- o o o o o o o o
- o o o o o
- o o o o o o o
- o o o o o
- o o o o o o o o
- o o o o
- o o o o
- 90
-
-
- o o o
- o o o o o
- o o o o o o o o o o o o
- o o o o o
- o o o o o o o
- o o o o
- o o o o o o
- o o o o o o
- o o
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
- o o
- o o o o o o
- o o o o o o
- o o o o
- o o o o o o o
- o o o o o
- o o o o o o o o o o o o
- o o o o o
- o o o o o o o
- o o o o
-
- 91
-
-
-
- o o o o o
- o o o o o o o o o o
- o o o o o o o o
- o o o o o o
- o o o o o o o o o
- o o o o o o
-
- o o o o o o
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
- o o o o o o
-
- o o o o o o
- o o o o o o o o o
- o o o o o o
- o o o o o o o o
- o o o o o o o o o o
- o o o o o o o o
- o o o o o o
- o o o
-
- 92
-
-
-
- o o o o o o
- o o o o o o o o o
- o o o o o o o o o
- o o o o o o o o o o o o o
- o o o o o o o o o o o
- o o o o o o o
-
- o o
- o o
- o o
- o o
- o o
-
- o o
- o o
- o o
- o o
- o o
-
- o o o o o o o
- o o o o o o o o o o o
- o o o o o o o o o o o o o
- o o o o o o o o o
- o o o o o o o o o o o o o o o o o
- o o o o o o o o o
- o o o o o o o o
- o o o o o o
-
- 93
-
-
-
- o o o o o o
- o o o o o o o o o o o
- o o o o o o o
- o o o o
-
- o o o o o o
- o o o o
-
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
-
- o o o o
- o o o o o o
-
- o o o o
- o o o o
- o o o o
- o o o o
- o o o
- o o o o o o o
-
- 94
-
-
-
- o o o o o o o o o
- o o o o o o o o o o o o o o o
- o o o o o o o o o o o
- o o o o o
-
- o o o o o
- o o o o o
-
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
-
- o o o o o
- o o o o o
-
-
- o o o o o o o
- o o o o o
- o o
- o o o o o o
- o o
- o
- 95
-
-
- o o o o o
- o o
- o o o o
- o o o o o o o o
- o o o o o
- o
- o o o o
- o o o o
- o
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
- o
- o o o o
- o o o o
- o
-
- o o o o
- o o o o o
- o o o o
- o o o
- o o
- o o
- 96
-
- o o o
- o o o o
- o o o o
- o o o
- o o o o o o o o o
- o o o o
- o o o
- o o o o
- o o o o
- o
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
- o
- o o o o
- o o o o
- o
-
- o o o o
- o o o o
- o o o
- o
- o o o o o
- o
- 97
-
- o o
- o
- o o
- o o o o o o o
- o o o o o o o o
- o o o o o
- o o o
- o o o o
- o o o o
- o
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
- o
- o o o o
- o o o o
- o
-
- o o o o
- o o o o o
- o
- o
- o o o o
- o o o o
- 98
-
-
- o o
- o o
- o o o o
- o o o o o o o o o o o o
- o o
- o o o
- o o o
- o o o o
- o
-
- o o
- o o
- o o
-
- o o
- o o
- o o
-
- o
- o o o o
- o o o o
- o
-
- o o o o
- o o o o
-
- o o o
- o o
- o o
- 99
-
-
- o o
- o o o
- o o o o o o o o
- o o o o o o o
- o o o o o o o
- o o o
- o o o o
- o
- o o
-
-
- o o o o o o
-
-
-
- o o o o o o
-
-
- o
- o o o o
- o o o o
- o
-
- o o o o
- o o o o
-
- o o
- o o o o
-
- \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/programs/life_space_leak/test.T b/testsuite/tests/ghc-regress/programs/life_space_leak/test.T
deleted file mode 100644
index 417342f38e..0000000000
--- a/testsuite/tests/ghc-regress/programs/life_space_leak/test.T
+++ /dev/null
@@ -1,8 +0,0 @@
-# exhausts Hugs's heap (CAF leak)
-test('life_space_leak',
- [skip_if_fast,
- extra_clean(['Main.hi', 'Main.o']),
- if_compiler_type('hugs', expect_fail)],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/maessen-hashtab/Data/HashTab.hs b/testsuite/tests/ghc-regress/programs/maessen-hashtab/Data/HashTab.hs
deleted file mode 100644
index 8251a760c8..0000000000
--- a/testsuite/tests/ghc-regress/programs/maessen-hashtab/Data/HashTab.hs
+++ /dev/null
@@ -1,339 +0,0 @@
------------------------------------------------------------------------------
--- |
--- Module : Data.HashTable
--- Copyright : (c) The University of Glasgow 2003
--- License : BSD-style (see the file libraries/base/LICENSE)
---
--- Maintainer : libraries@haskell.org
--- Stability : provisional
--- Portability : portable
---
--- An implementation of extensible hash tables, as described in
--- Per-Ake Larson, /Dynamic Hash Tables/, CACM 31(4), April 1988,
--- pp. 446--457. The implementation is also derived from the one
--- in GHC's runtime system (@ghc\/rts\/Hash.{c,h}@).
---
------------------------------------------------------------------------------
-
-module Data.HashTab (
- -- * Basic hash table operations
- HashTable, new, insert, delete, lookup, update,
- -- * Converting to and from lists
- fromList, toList,
- -- * Hash functions
- -- $hash_functions
- hashInt, hashString,
- prime,
- -- * Diagnostics
- longestChain
- ) where
-
--- This module is imported by Data.Typeable, which is pretty low down in the
--- module hierarchy, so don't import "high-level" modules
-
--- Right now we import high-level modules with gay abandon.
-import Prelude hiding ( lookup )
-import Data.Tuple ( fst )
-import Data.Bits
-import Data.Maybe
-import Data.List ( maximumBy, partition, concat, foldl )
-import Data.Int ( Int32 )
-
-import Data.Array.Base
-import Data.Array hiding (bounds)
-import Data.Array.IO
-
-import Data.Char ( ord )
-import Data.IORef ( IORef, newIORef, readIORef, writeIORef )
-import Control.Monad ( mapM, sequence_ )
-
-
------------------------------------------------------------------------
-
-readHTArray :: HTArray a -> Int32 -> IO a
-readMutArray :: MutArray a -> Int32 -> IO a
-writeMutArray :: MutArray a -> Int32 -> a -> IO ()
-freezeArray :: MutArray a -> IO (HTArray a)
-thawArray :: HTArray a -> IO (MutArray a)
-newMutArray :: (Int32, Int32) -> a -> IO (MutArray a)
-#if defined(DEBUG) || defined(__NHC__)
-type MutArray a = IOArray Int32 a
-type HTArray a = MutArray a
-newMutArray = newArray
-readHTArray = readArray
-readMutArray = readArray
-writeMutArray = writeArray
-freezeArray = return
-thawArray = return
-#else
-type MutArray a = IOArray Int32 a
-type HTArray a = Array Int32 a
-newMutArray = newArray
-readHTArray arr i = return $! (unsafeAt arr (fromIntegral i))
-readMutArray arr i = unsafeRead arr (fromIntegral i)
-writeMutArray arr i x = unsafeWrite arr (fromIntegral i) x
-freezeArray = unsafeFreeze
-thawArray = unsafeThaw
-#endif
-
-newtype HashTable key val = HashTable (IORef (HT key val))
--- TODO: the IORef should really be an MVar.
-
-data HT key val
- = HT {
- kcount :: !Int32, -- Total number of keys.
- buckets :: !(HTArray [(key,val)]),
- bmask :: !Int32,
- hash_fn :: key -> Int32,
- cmp :: key -> key -> Bool
- }
-
--- -----------------------------------------------------------------------------
--- Sample hash functions
-
--- $hash_functions
---
--- This implementation of hash tables uses the low-order /n/ bits of the hash
--- value for a key, where /n/ varies as the hash table grows. A good hash
--- function therefore will give an even distribution regardless of /n/.
---
--- If your keyspace is integrals such that the low-order bits between
--- keys are highly variable, then you could get away with using 'id'
--- as the hash function.
---
--- We provide some sample hash functions for 'Int' and 'String' below.
-
--- | A sample hash function for 'Int', implemented as simply @(x `mod` P)@
--- where P is a suitable prime (currently 1500007). Should give
--- reasonable results for most distributions of 'Int' values, except
--- when the keys are all multiples of the prime!
---
-hashInt :: Int -> Int32
-hashInt = (`rem` prime) . fromIntegral
-
--- | A sample hash function for 'String's. The implementation is:
---
--- > hashString = fromIntegral . foldr f 0
--- > where f c m = ord c + (m * 128) `rem` 1500007
---
--- which seems to give reasonable results.
---
-hashString :: String -> Int32
-hashString = fromIntegral . foldl f 0
- where f m c = ord c + (m * 128) `rem` fromIntegral prime
-
--- | A prime larger than the maximum hash table size
-prime :: Int32
-prime = 1500007
-
--- -----------------------------------------------------------------------------
--- Parameters
-
-tABLE_MAX = 1024 * 1024 :: Int32 -- Maximum size of hash table
-#if tABLE_MIN
-#else
-tABLE_MIN = 16 :: Int32
-
-hLOAD = 4 :: Int32 -- Maximum average load of a single hash bucket
-
-hYSTERESIS = 0 :: Int32 -- entries to ignore in load computation
-#endif
-
-{- Hysteresis favors long association-list-like behavior for small tables. -}
-
--- -----------------------------------------------------------------------------
--- Creating a new hash table
-
--- | Creates a new hash table. The following property should hold for the @eq@
--- and @hash@ functions passed to 'new':
---
--- > eq A B => hash A == hash B
---
-new
- :: (key -> key -> Bool) -- ^ @eq@: An equality comparison on keys
- -> (key -> Int32) -- ^ @hash@: A hash function on keys
- -> IO (HashTable key val) -- ^ Returns: an empty hash table
-
-new cmpr hash = do
- -- make a new hash table with a single, empty, segment
- let mask = tABLE_MIN-1
- bkts' <- newMutArray (0,mask) []
- bkts <- freezeArray bkts'
-
- let
- kcnt = 0
- ht = HT { buckets=bkts, kcount=kcnt, bmask=mask,
- hash_fn=hash, cmp=cmpr }
-
- table <- newIORef ht
- return (HashTable table)
-
--- -----------------------------------------------------------------------------
--- Inserting a key\/value pair into the hash table
-
--- | Inserts an key\/value mapping into the hash table.
---
--- Note that 'insert' doesn't remove the old entry from the table -
--- the behaviour is like an association list, where 'lookup' returns
--- the most-recently-inserted mapping for a key in the table. The
--- reason for this is to keep 'insert' as efficient as possible. If
--- you need to update a mapping, then we provide 'update'.
---
-insert :: HashTable key val -> key -> val -> IO ()
-
-insert (HashTable ref) key val = do
- table@HT{ kcount=k, buckets=bkts, bmask=b } <- readIORef ref
- let table1 = table{ kcount = k+1 }
- indx = bucketIndex table key
- bucket <- readHTArray bkts indx
- bkts' <- thawArray bkts
- writeMutArray bkts' indx ((key,val):bucket)
- freezeArray bkts'
- table2 <-
- if tooBig k b
- then expandHashTable table1
- else return table1
- writeIORef ref table2
-
-tooBig :: Int32 -> Int32 -> Bool
-tooBig k b = k-hYSTERESIS > hLOAD * b
-
-bucketIndex :: HT key val -> key -> Int32
-bucketIndex HT{ hash_fn=hash, bmask=mask } key =
- let h = hash key
- in (h .&. mask)
-
-expandHashTable :: HT key val -> IO (HT key val)
-expandHashTable
- table@HT{ buckets=bkts, bmask=mask } = do
- let
- oldsize = mask + 1
- newmask = mask + mask + 1
- newsize = newmask + 1
- --
- if newsize > tABLE_MAX
- then return table
- else do
- --
- newbkts' <- newMutArray (0,newmask) []
-
- let
- table'=table{ bmask=newmask }
- splitBucket oldindex = do
- bucket <- readHTArray bkts oldindex
- let (oldb,newb) = partition ((oldindex==).bucketIndex table' . fst) bucket
- writeMutArray newbkts' oldindex oldb
- writeMutArray newbkts' (oldindex + oldsize) newb
- mapM_ splitBucket [0..mask]
-
- newbkts <- freezeArray newbkts'
-
- return ( table'{ buckets=newbkts } )
-
--- -----------------------------------------------------------------------------
--- Deleting a mapping from the hash table
-
--- Remove a key from a bucket
-deleteBucket :: (key -> Bool) -> [(key,val)] -> (Int32, [(key, val)])
-deleteBucket _ [] = (0,[])
-deleteBucket del (pair@(k,_):bucket) =
- case deleteBucket del bucket of
- (dels, bucket') | del k -> dels' `seq` (dels', bucket')
- | otherwise -> (dels, pair:bucket')
- where dels' = dels + 1
-
--- | Remove an entry from the hash table.
-delete :: HashTable key val -> key -> IO ()
-
-delete (HashTable ref) key = do
- table@HT{ buckets=bkts, kcount=kcnt, cmp=cmpr } <- readIORef ref
- let indx = bucketIndex table key
- bkts' <- thawArray bkts
- bucket <- readMutArray bkts' indx
- let (removed,bucket') = deleteBucket (cmpr key) bucket
- writeMutArray bkts' indx bucket'
- freezeArray bkts'
- writeIORef ref ( table{kcount = kcnt - removed} )
-
--- -----------------------------------------------------------------------------
--- Updating a mapping in the hash table
-
--- | Updates an entry in the hash table, returning 'True' if there was
--- already an entry for this key, or 'False' otherwise. After 'update'
--- there will always be exactly one entry for the given key in the table.
---
--- 'insert' is more efficient than 'update' if you don't care about
--- multiple entries, or you know for sure that multiple entries can't
--- occur. However, 'update' is more efficient than 'delete' followed
--- by 'insert'.
-update :: HashTable key val -> key -> val -> IO Bool
-
-update (HashTable ref) key val = do
- table@HT{ kcount=k, buckets=bkts, cmp=cmpr, bmask=b } <- readIORef ref
- let indx = bucketIndex table key
- bkts' <- thawArray bkts
- bucket <- readMutArray bkts' indx
- let (deleted,bucket') = deleteBucket (cmpr key) bucket
- k' = k + 1 - deleted
- table1 = table{ kcount=k' }
-
- writeMutArray bkts' indx ((key,val):bucket')
- freezeArray bkts'
- table2 <-
- if tooBig k' b -- off by one from insert's resize heuristic.
- then expandHashTable table1
- else return table1
- writeIORef ref table2
- return (deleted>0)
-
--- -----------------------------------------------------------------------------
--- Looking up an entry in the hash table
-
--- | Looks up the value of a key in the hash table.
-lookup :: HashTable key val -> key -> IO (Maybe val)
-
-lookup (HashTable ref) key = do
- table@HT{ buckets=bkts, cmp=cmpr } <- readIORef ref
- let indx = bucketIndex table key
- bucket <- readHTArray bkts indx
- case [ val | (key',val) <- bucket, cmpr key key' ] of
- [] -> return Nothing
- (v:_) -> return (Just v)
-
--- -----------------------------------------------------------------------------
--- Converting to/from lists
-
--- | Convert a list of key\/value pairs into a hash table. Equality on keys
--- is taken from the Eq instance for the key type.
---
-fromList :: (Eq key) => (key -> Int32) -> [(key,val)] -> IO (HashTable key val)
-fromList hash list = do
- table <- new (==) hash
- sequence_ [ insert table k v | (k,v) <- list ]
- return table
-
--- | Converts a hash table to a list of key\/value pairs.
---
-toList :: (Ord key, Ord val) => HashTable key val -> IO [(key,val)]
-toList (HashTable ref) = do
- HT{ buckets=bkts, bmask=b } <- readIORef ref
- fmap concat (mapM (readHTArray bkts) [0..b])
-
--- -----------------------------------------------------------------------------
--- Diagnostics
-
--- | This function is useful for determining whether your hash function
--- is working well for your data set. It returns the longest chain
--- of key\/value pairs in the hash table for which all the keys hash to
--- the same bucket. If this chain is particularly long (say, longer
--- than 10 elements), then it might be a good idea to try a different
--- hash function.
---
-longestChain :: HashTable key val -> IO [(key,val)]
-longestChain (HashTable ref) = do
- HT{ buckets=bkts, bmask=b } <- readIORef ref
- let lengthCmp (_:x)(_:y) = lengthCmp x y
- lengthCmp [] [] = EQ
- lengthCmp [] _ = LT
- lengthCmp _ [] = GT
- fmap (maximumBy lengthCmp) (mapM (readHTArray bkts) [0..b])
diff --git a/testsuite/tests/ghc-regress/programs/maessen-hashtab/HashTest.hs b/testsuite/tests/ghc-regress/programs/maessen-hashtab/HashTest.hs
deleted file mode 100644
index 51c60c0640..0000000000
--- a/testsuite/tests/ghc-regress/programs/maessen-hashtab/HashTest.hs
+++ /dev/null
@@ -1,278 +0,0 @@
-{- Test code for Data.HashTable -}
-
-module Main(main) where
-
-import Prelude hiding (lookup)
-import qualified Prelude (lookup)
-import Data.Maybe(isJust,isNothing)
-import Data.Int(Int32)
-import Test.QuickCheck
-import System.IO.Unsafe(unsafePerformIO)
-import Data.HashTab
-import Control.Monad(liftM2, foldM)
-import System.Random
-import System.Environment
-
-infixr 0 ==.
-infixr 0 ==~
-infixr 0 ~~
-
-type HT = HashTable Int Int
-newtype HashFun = HF {unHF :: (Int -> Int32)}
-data Empty = E {e :: (IO HT), hfe :: HashFun}
-data MkH = H {h :: (IO HT), hfh :: HashFun}
-newtype List a = L [a]
-
-data Action = Lookup Int
- | Insert Int Int
- | Delete Int
- | Update Int Int
- deriving (Show)
-
-instance Arbitrary Action where
- arbitrary = frequency [(10,fmap Lookup arbitrary),
- (5, liftM2 Insert arbitrary arbitrary),
- (3, liftM2 Update arbitrary arbitrary),
- (1, fmap Delete arbitrary)]
- coarbitrary = error "coarbitrary Action"
-
-simA :: [Action] -> [Either Bool [Int]]
-simA = fst . foldl sim ([],[])
- where sim :: ([Either Bool [Int]], [Action]) -> Action ->
- ([Either Bool [Int]], [Action])
- sim (res, past) (Lookup k) = (Right (lkup k past) : res, past)
- sim (res, past) (Insert k v) = (res, Insert k v : past)
- sim (res, past) (Delete k) = (res, Delete k : past)
- sim (res, past) (Update k v) =
- (Left (not (null l)) : res, Update k v : past)
- where l = lkup k past
- lkup _ [] = []
- lkup k (Delete k' : _)
- | k==k' = []
- lkup k (Update k' v : _)
- | k==k' = [v]
- lkup k (Insert k' v : past)
- | k==k' = v:lkup k past
- lkup k (_ : past) = lkup k past
-
-runA :: HashFun -> [Action] -> IO [Either Bool (Maybe Int)]
-runA hf acts = do
- ht <- new (==) (unHF hf)
- let run res (Lookup a) = fmap (lkup res) $ lookup ht a
- run res (Insert k v) = insert ht k v >> return res
- run res (Delete k) = delete ht k >> return res
- run res (Update k v) = fmap (upd res) $ update ht k v
- lkup res m = Right m : res
- upd res b = Left b : res
- foldM run [] acts
-
-(~~) :: IO [Either Bool (Maybe Int)] -> [Either Bool [Int]] -> Bool
-acts ~~ sims = and $ zipWith same (unsafePerformIO acts) sims
- where same (Left b) (Left b') = b==b'
- same (Right Nothing) (Right []) = True
- same (Right (Just a)) (Right xs) = a `elem` xs
- same _ _ = False
-
-lookups :: HT -> [Int] -> IO [Maybe Int]
-lookups ht ks = mapM (lookup ht) ks
-
-instance Show HashFun where
- showsPrec _ (HF hf) r
- | hf 1 == 0 = "degenerate"++r
- | otherwise = "usual"++r
-
-instance Show Empty where
- showsPrec _ ee r = shows (hfe ee) r
-
-instance Show MkH where
- showsPrec _ hh r = shows (hfh hh) $
- ("; "++shows (unsafePerformIO (h hh >>= toList)) r)
-
-instance Show a => Show (List a) where
- showsPrec _ (L l) r = shows l r
-
-instance Arbitrary HashFun where
- arbitrary = frequency [(20,return (HF hashInt)),
- (1,return (HF (const 0)))]
- coarbitrary = error "coarbitrary HashFun"
-
-instance Arbitrary Empty where
- arbitrary = fmap mkE arbitrary
- where mkE (HF hf) = E {e = new (==) hf, hfe=HF hf}
- coarbitrary = error "coarbitrary Empty"
-
-instance Arbitrary a => Arbitrary (List a) where
- arbitrary = do
- sz <- frequency [(50, sized return),
- (1,return (4096*2)),
- (0, return (1024*1024))]
- resize sz $ fmap L $ sized vector
- coarbitrary = error "coarbitrary (List a)"
-
-instance Arbitrary MkH where
- arbitrary = do
- hf <- arbitrary
- L list <- arbitrary
- let mkH act = H { h = act, hfh = hf }
- return (mkH . fromList (unHF hf) $ list)
- coarbitrary = error "coarbitrary MkH"
-
-(==~) :: (Eq a) => IO a -> IO a -> Bool
-act1 ==~ act2 = unsafePerformIO act1 == unsafePerformIO act2
-
-(==.) :: (Eq a) => IO a -> a -> Bool
-act ==. v = unsafePerformIO act == v
-
-notin :: (Testable a) => Int -> MkH -> a -> Property
-k `notin` hh = \prop ->
- let f = (not . isJust . unsafePerformIO) (h hh >>= flip lookup k) in
- f `trivial` prop
-
-prop_emptyLookup :: Empty -> Int -> Bool
-prop_emptyLookup ee k =
- isNothing . unsafePerformIO $
- (do mt <- e ee
- lookup mt k)
-
-prop_emptyToList :: Empty -> Bool
-prop_emptyToList ee =
- (do mt <- e ee
- toList mt) ==. []
-
-prop_emptyFromList :: HashFun -> Int -> Bool
-prop_emptyFromList hf k =
- (do mt <- new (==) (unHF hf) :: IO HT
- lookup mt k) ==~
- (do mt <- fromList (unHF hf) []
- lookup mt k)
-
-prop_insert :: MkH -> Int -> Int -> Bool
-prop_insert hh k v =
- (do ht <- h hh
- insert ht k v
- lookup ht k) ==. Just v
-
-prop_insertu :: MkH -> Int -> Int -> List Int -> Bool
-prop_insertu hh k v (L ks) =
- let ks' = filter (k /=) ks in
- (do ht <- h hh
- insert ht k v
- lookups ht ks') ==~
- (do ht <- h hh
- lookups ht ks')
-
-prop_delete :: MkH -> Int -> Property
-prop_delete hh k =
- k `notin` hh $
- isNothing . unsafePerformIO $
- (do ht <- h hh
- delete ht k
- lookup ht k)
-
-prop_deleteu :: MkH -> Int -> List Int -> Bool
-prop_deleteu hh k (L ks) =
- let ks' = filter (k /=) ks in
- (do ht <- h hh
- delete ht k
- lookups ht ks') ==~
- (do ht <- h hh
- lookups ht ks')
-
-naiveUpdate :: HT -> Int -> Int -> IO ()
-naiveUpdate ht k v = do
- delete ht k
- insert ht k v
-
-prop_update :: MkH -> Int -> Int -> List Int -> Bool
-prop_update hh k v (L ks) =
- (do ht <- h hh
- _ <- update ht k v
- lookups ht ks) ==~
- (do ht <- h hh
- naiveUpdate ht k v
- lookups ht ks)
-
-prop_updatec :: MkH -> Int -> Int -> Bool
-prop_updatec hh k v =
- (do ht <- h hh
- _ <- update ht k v
- lookup ht k) ==. Just v
-
-prop_updateLookup :: MkH -> Int -> Int -> Property
-prop_updateLookup hh k v =
- k `notin` hh $
- (do ht <- h hh
- update ht k v) ==~
- (do ht <- h hh
- fmap isJust (lookup ht k))
-
-prop_simulation :: HashFun -> List Action -> Property
-prop_simulation hf (L acts) =
- (null acts `trivial`) $
- runA hf acts ~~ simA acts
-
-{-
-
-For "fromList" and "toList" properties we're a bit sloppy: we perform
-multiple insertions for a key (potentially) but give nor promises
-about which one we will retrieve with lookup, or what order they'll be
-returned by toList (or if they'll all be returned at all). Thus we
-insert all occurrences of a key with the same value, and do all
-checking via lookups.
-
--}
-
-prop_fromList :: HashFun -> List Int -> List Int -> Property
-prop_fromList hf (L l) (L ks) =
- null l `trivial`
- let assocs = map (\t -> (t,t)) l in
- ( do ht <- fromList (unHF hf) assocs
- lookups ht ks) ==. (map (`Prelude.lookup` assocs) ks)
-
-prop_fromListInsert :: HashFun -> List (Int,Int) -> Int -> Int -> List Int -> Property
-prop_fromListInsert hf (L l) k v (L ks) =
- null l `trivial`
- (( do ht <- fromList (unHF hf) l
- insert ht k v
- lookups ht ks) ==~
- ( do ht <- fromList (unHF hf) (l++[(k,v)])
- lookups ht ks))
-
-prop_toList :: HashFun -> List Int -> List Int -> Property
-prop_toList hf (L l) (L ks) =
- null l `trivial`
- let assocs = map (\t -> (t,t)) l in
- ( do ht <- fromList (unHF hf) assocs
- lookups ht ks) ==~
- ( do ht <- fromList (unHF hf) assocs
- fmap (\as -> map (`Prelude.lookup` as) ks) $ toList ht )
-
-te :: (Testable a) => String -> a -> IO ()
--- te name prop = putStrLn name >> verboseCheck prop
-te name prop = do
- putStr name
- check (defaultConfig{configMaxTest = 500,
- configMaxFail = 10000,
- configEvery = \_ _ -> "" }) prop
-
-main :: IO ()
-main = do
- [r] <- getArgs
- setStdGen (mkStdGen (read r :: Int))
- sequence_ $
- [ te "emptyLookup:" prop_emptyLookup,
- te "emptyToList:" prop_emptyToList,
- te "emptyFromList:" prop_emptyFromList,
- te "insert:" prop_insert,
- te "insertu:" prop_insertu,
- te "delete:" prop_delete,
- te "deleteu:" prop_deleteu,
- te "update:" prop_update,
- te "updatec:" prop_updatec,
- te "updateLookup:" prop_updateLookup,
- te "fromList:" prop_fromList,
- te "fromListInsert:" prop_fromListInsert,
- te "toList:" prop_toList,
- te "simulation:" prop_simulation
- ]
- putStrLn "OK"
diff --git a/testsuite/tests/ghc-regress/programs/maessen-hashtab/Makefile b/testsuite/tests/ghc-regress/programs/maessen-hashtab/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/maessen-hashtab/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/maessen-hashtab/maessen_hashtab.stdout b/testsuite/tests/ghc-regress/programs/maessen-hashtab/maessen_hashtab.stdout
deleted file mode 100644
index b667dcaae0..0000000000
--- a/testsuite/tests/ghc-regress/programs/maessen-hashtab/maessen_hashtab.stdout
+++ /dev/null
@@ -1,15 +0,0 @@
-emptyLookup:OK, passed 500 tests.
-emptyToList:OK, passed 500 tests.
-emptyFromList:OK, passed 500 tests.
-insert:OK, passed 500 tests.
-insertu:OK, passed 500 tests.
-delete:OK, passed 500 tests (60% trivial).
-deleteu:OK, passed 500 tests.
-update:OK, passed 500 tests.
-updatec:OK, passed 500 tests.
-updateLookup:OK, passed 500 tests (63% trivial).
-fromList:OK, passed 500 tests (2% trivial).
-fromListInsert:OK, passed 500 tests (2% trivial).
-toList:OK, passed 500 tests (1% trivial).
-simulation:OK, passed 500 tests (1% trivial).
-OK
diff --git a/testsuite/tests/ghc-regress/programs/maessen-hashtab/test.T b/testsuite/tests/ghc-regress/programs/maessen-hashtab/test.T
deleted file mode 100644
index 807cb85e81..0000000000
--- a/testsuite/tests/ghc-regress/programs/maessen-hashtab/test.T
+++ /dev/null
@@ -1,11 +0,0 @@
-
-test('maessen_hashtab',
- [reqlib('QuickCheck'),
- extra_clean(['HashTest.hi', 'HashTest.o',
- 'Data/HashTab.hi', 'Data/HashTab.o']),
- skip_if_fast,
-# this test runs out of time when not optimised:
- omit_ways(['normal','ghci','threaded1']),
- extra_run_opts('99999')],
- multimod_compile_and_run, ['HashTest', '-cpp'])
-
diff --git a/testsuite/tests/ghc-regress/programs/north_array/Main.hs b/testsuite/tests/ghc-regress/programs/north_array/Main.hs
deleted file mode 100644
index b6ceb706d6..0000000000
--- a/testsuite/tests/ghc-regress/programs/north_array/Main.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-import Data.Array -- 1.3
-
-val1, val2 :: Array (Int,Int) Int
-val1 = array ((1,2), (2,1)) []
-val2 = array ((2,1), (1,2)) []
-
-val3 :: Array Integer Double
-val3 = array (4, -3) []
-
-main = print ((val1 == val1) && (val2 == val2) && (val3 == val3))
diff --git a/testsuite/tests/ghc-regress/programs/north_array/Makefile b/testsuite/tests/ghc-regress/programs/north_array/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/north_array/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/north_array/north_array.stdout b/testsuite/tests/ghc-regress/programs/north_array/north_array.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/programs/north_array/north_array.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/programs/north_array/test.T b/testsuite/tests/ghc-regress/programs/north_array/test.T
deleted file mode 100644
index e2b89b4501..0000000000
--- a/testsuite/tests/ghc-regress/programs/north_array/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('north_array',
- [skip_if_fast, extra_clean(['Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/okeefe_neural/Main.hs b/testsuite/tests/ghc-regress/programs/okeefe_neural/Main.hs
deleted file mode 100644
index 0717238787..0000000000
--- a/testsuite/tests/ghc-regress/programs/okeefe_neural/Main.hs
+++ /dev/null
@@ -1,1533 +0,0 @@
-
-module Main(main) where
-
---import Int( Num(fromInt) )
-
-newtype RNG_State = RNG_State (Int, Int, Int)
-
-new_random i = RNG_State (i `mod` 30269, i `mod` 30307, i `mod` 30323)
-
-next_unit_random (RNG_State (a,b,c)) =
- (r, RNG_State (a1,b1,c1))
- where a1 = (a * 171) `mod` 30269
- b1 = (b * 172) `mod` 30307
- c1 = (c * 170) `mod` 30323
- t = fromIntegral a1/30269.0 +
- fromIntegral b1/30307.0 +
- fromIntegral c1/30323.0
- r = t - fromIntegral (truncate t)
-
-next_random_bool p s =
- (r < p, s1)
- where (r,s1) = next_unit_random s
-
-next_random_list f n s =
- loop [] n s
- where loop ps 0 s = (ps, s)
- loop ps m s = loop (p:ps) (m-1) s1
- where (p,s1) = f s
-
-rpart [] _ _ ps qs s = ((ps, qs), s)
-rpart (x:xs) n d ps qs s =
- if d*r < n
- then rpart xs (n-1.0) (d-1.0) (x:ps) qs s1
- else rpart xs n (d-1.0) ps (x:qs) s1
- where (r, s1) = next_unit_random s
-
-random_permutation xs s =
- rperm xs (length xs) [] s
- where rperm [] 0 ps s = (ps, s)
- rperm [x1] 1 ps s = ((x1:ps), s)
- rperm [x1,x2] 2 ps s =
- if b then (x1:x2:ps, s1) else (x2:x1:ps, s1)
- where (b, s1) = next_random_bool 0.5 s
- rperm xs d ps s =
- let n = d `div` 2
- ((ys, zs), s1) = rpart xs (fromIntegral n) (fromIntegral d) [] [] s
- (zps, s2) = rperm zs (d-n) ps s1
- in rperm ys n zps s2
-
-minit m n g =
- outer (m-1) []
- where outer (-1) xss = xss
- outer m xss = outer (m-1) (inner (n-1) [] : xss)
- where inner (-1) xs = xs
- inner n xs = inner (n-1) (g m n : xs)
-
-vadd [] [] = []
-vadd (x:xs) (y:ys) = x+y : vadd xs ys
-
-madd [] [] = []
-madd (xs:xss) (ys:yss) = vadd xs ys : madd xss yss
-
-vaddx [] [] _ = []
-vaddx (x:xs) (y:ys) a = x+y*a : vaddx xs ys a
-
-vsub [] [] = []
-vsub (x:xs) (y:ys) = x-y : vsub xs ys
-
-vmulx [] _ = []
-vmulx (x:xs) a = x*a : vmulx xs a
-
-mmulx [] _ = []
-mmulx (xs:xss) a = vmulx xs a : mmulx xss a
-
-vdist xs ys =
- loop xs ys 0.0
- where loop [] [] s = s
- loop (x:xs) (y:ys) s = loop xs ys (s+d*d)
- where d = x-y
-
-vdot xs ys =
- loop xs ys 0.0
- where loop [] [] s = s
- loop (x:xs) (y:ys) s = loop xs ys (s+x*y)
-
-vmmul [] [] = []
-vmmul (x:xs) (r:rs) =
- loop xs rs (vmulx r x)
- where loop [] [] ws = ws
- loop (x:xs) (r:rs) ws = loop xs rs (vaddx ws r x)
-
-vupdate [] _ [] _ = []
-vupdate (r:rs) xs (y:ys) c = vaddx r xs (y*c) : vupdate rs xs ys c
-
-vscale [] [] = []
-vscale (x:xs) (y:ys) = x*y*(1.0-y) : vscale xs ys
-
-sigmoid x = 1.0/(1.0 + exp (0.0-x))
-
-mrand m n l u s =
- next_random_list (next_random_list f n) m s
- where f s = (l + (u-l)*r, s1)
- (r, s1) = next_unit_random s
-
-train pats i_h_wt i_h_ch h_o_wt h_o_ch epochs s =
- loop pats1 i_h_ch h_o_ch 0.0
- where
- (pats1, s1) = random_permutation pats s
- loop [] i_h_ch h_o_ch e0
- | e < criterion = ((e,0,i_h_wt,h_o_wt), s1)
- | epochs <= 0 = ((e,1,i_h_wt,h_o_wt), s1)
- | True =
- train pats (madd i_h_wt i_h_ch) (mmulx i_h_ch momentum)
- (madd h_o_wt h_o_ch) (mmulx h_o_ch momentum) (epochs-1) s1
- where e = e0/(fromIntegral (length pats) * fromIntegral (length h_o_wt))
- loop ((in_pat, out_pat):ps) i_h_ch h_o_ch e =
- loop ps (vupdate i_h_ch in_act (tail hid_err) rate)
- (vupdate h_o_ch hid_act out_err rate)
- (e + vdist out_pat out_act)
- where
- in_act = 1.0:in_pat
- hid_act = 1.0:map (\w -> sigmoid (vdot in_act w)) i_h_wt
- out_act = map (\w -> sigmoid (vdot hid_act w)) h_o_wt
- out_err = vscale (vsub out_pat out_act) out_act
- hid_err = vscale (vmmul out_err h_o_wt) hid_act
-
-main = putStrLn (show ans)
- where (in1,out1) = head patterns
- nin = length in1
- nhid = nin
- nout = length out1
- s0 = new_random 353721
- (i_h_wt, s1) = mrand nhid (nin +1) (0.0-0.3) 0.3 s0
- i_h_ch = minit nhid (nin +1) (\i j -> 0.0)
- (h_o_wt, s2) = mrand nout (nhid+1) (0.0-0.3) 0.3 s1
- h_o_ch = minit nout (nhid+1) (\i j -> 0.0)
- (ans, _) = train patterns i_h_wt i_h_ch h_o_wt h_o_ch epochs s2
-
-rate = 0.05
-
-momentum = 0.9
-
-criterion = 0.01
-
---epochs = 100
-
---patterns = [([1.0,0.0],[1.0]),
--- ([0.0,1.0],[1.0]),
--- ([0.0,0.0],[0.0]),
--- ([1.0,1.0],[0.0])]
-
-epochs = 90
-
-patterns =
- [([0.955809, 0.095706, 0.269204, 0.824671, 0.448012, 0.722709,
- 0.327677, 0.148595, 0.063143, 0.007019, 0.135166, 0.928800, 0.298593,
- 0.931150, 0.711234, 0.432630, 0.913450, 0.545061, 0.651082, 0.692984,
- 0.371532, 0.940641, 0.202521, 0.064852, 0.965941, 0.523637, 0.914884,
- 0.159062, 0.031648, 0.866848, 0.516526, 0.684317, 0.152135, 0.923734,
- 0.177435, 0.228339, 0.766503, 0.885159, 0.812220, 0.510208, 0.082949,
- 0.459792, 0.580920, 0.134190, 0.705741, 0.859523, 0.243171, 0.377117,
- 0.880551, 0.271218, 0.521989, 0.039888, 0.765862, 0.096347, 0.133702,
- 0.895138, 0.635548, 0.738853, 0.640126, 0.761162, 0.419599, 0.223579,
- 0.779260, 0.734947, 0.488937, 0.426038, 0.430799, 0.613788, 0.090487,
- 0.194372, 0.872494, 0.038179, 0.339183, 0.145482, 0.483932, 0.386425,
- 0.172430, 0.416150, 0.553850, 0.952422, 0.174200, 0.150365, 0.347056,
- 0.438063, 0.674154, 0.004456, 0.087527, 0.291269, 0.028474, 0.450819,
- 0.013642, 0.920896, 0.488815, 0.161840, 0.162084, 0.319803, 0.564989,
- 0.255287, 0.036348, 0.127750, 0.288461, 0.681906, 0.816370, 0.664449,
- 0.282235, 0.537126, 0.265328, 0.964965, 0.043672, 0.577898, 0.990173,
- 0.348186, 0.346446, 0.725700, 0.211463, 0.549821, 0.167943, 0.837062,
- 0.700003, 0.950896, 0.048341, 0.523087, 0.034761, 0.933439, 0.287393,
- 0.299081, 0.840144, 0.894284, 0.885464, 0.845302, 0.157476, 0.948210,
- 0.635060, 0.660421, 0.607990, 0.852107, 0.268868, 0.888760, 0.502518,
- 0.180609, 0.070650, 0.602802, 0.555223, 0.285440, 0.855495, 0.321665,
- 0.356700, 0.068758, 0.725059, 0.047487, 0.263344, 0.102695, 0.504959,
- 0.600452, 0.858974, 0.125217, 0.269662, 0.533982, 0.644642, 0.444838,
- 0.861721, 0.411145, 0.113712, 0.284371, 0.811182, 0.723930, 0.867702,
- 0.595538, 0.561968, 0.235847, 0.929167, 0.375408, 0.410901, 0.030122,
- 0.908536, 0.016297, 0.065859, 0.043977, 0.180425, 0.719810, 0.229469,
- 0.370403, 0.726096, 0.506699, 0.114353, 0.108921, 0.797998, 0.853908,
- 0.296274, 0.046419, 0.063143, 0.489364, 0.811396, 0.949217, 0.380902,
- 0.376751, 0.903958, 0.747703, 0.872127, 0.420392, 0.330729, 0.395032,
- 0.435102, 0.922697, 0.628071, 0.680502, 0.365703, 0.324259, 0.248299,
- 0.779656, 0.236610, 0.258950, 0.971496, 0.821680, 0.692892, 0.454146,
- 0.498856, 0.255776, 0.319895, 0.508377, 0.634022, 0.297617, 0.239479,
- 0.076937, 0.958342, 0.237007, 0.591144, 0.497055, 0.406842, 0.888241,
- 0.554064, 0.383587, 0.650624],
- [0.234896, 0.423061, 0.263443, 0.123426,
- 0.794525, 0.243195, 0.176474, 0.282455, 0.620580, 0.126517, 0.858114,
- 0.150592, 0.351949, 0.153976, 0.480803, 0.272537, 0.062543, 0.525171,
- 0.896010, 0.872203, 0.431661, 0.702341, 0.385838, 0.951113, 0.058039,
- 0.563982, 0.981357, 0.319594, 0.190779, 0.159156, 0.182152, 0.912154,
- 0.046355, 0.322471, 0.190853, 0.146977, 0.556987, 0.432033, 0.849777,
- 0.397618, 0.800925, 0.817440, 0.103982, 0.417800, 0.982832, 0.123455,
- 0.075878, 0.578246, 0.575774, 0.662847, 0.121769, 0.310270, 0.451505,
- 0.871721, 0.263607, 0.963375, 0.198854, 0.249971, 0.273863, 0.592648,
- 0.133579, 0.119994, 0.679855, 0.626287, 0.174323, 0.164256, 0.841121,
- 0.752313, 0.501021, 0.569367, 0.804985, 0.639864, 0.272153, 0.055158,
- 0.281015, 0.090302, 0.648710, 0.526850, 0.121161, 0.620315, 0.383709,
- 0.487889, 0.739381, 0.609108, 0.181023, 0.419480, 0.453455, 0.658062,
- 0.054643, 0.832708, 0.255309, 0.744293, 0.909823, 0.895573, 0.934952,
- 0.332162, 0.514298, 0.129617, 0.568588, 0.459891, 0.512871, 0.708730,
- 0.244905, 0.504490, 0.408360, 0.724549, 0.263859, 0.126921, 0.917366,
- 0.128843, 0.761606, 0.295994, 0.485532, 0.364426, 0.209157, 0.331918,
- 0.923155, 0.832404, 0.344705, 0.992287, 0.797664, 0.513933, 0.197295,
- 0.898075, 0.321190, 0.766076, 0.896433, 0.510118, 0.555644, 0.731407,
- 0.336166, 0.961858, 0.108792, 0.274650, 0.447974, 0.322401, 0.519439,
- 0.127972, 0.743228, 0.095587, 0.442358, 0.065578, 0.427339, 0.867874,
- 0.115209, 0.391970, 0.222726, 0.427568, 0.562064, 0.073965, 0.500635,
- 0.103580, 0.193423, 0.463678, 0.352990, 0.872354, 0.266832, 0.066053,
- 0.567679, 0.465254, 0.715300, 0.890676, 0.962122, 0.823967, 0.085568,
- 0.195321, 0.730473, 0.142718, 0.589829, 0.954951, 0.190184, 0.350517,
- 0.593301, 0.582699, 0.060864, 0.072237, 0.305630, 0.417032, 0.670941,
- 0.430787, 0.876681, 0.244844, 0.060370, 0.274557, 0.598552, 0.194049,
- 0.661775, 0.251685, 0.143953, 0.228740, 0.268005, 0.353289, 0.234517,
- 0.866899, 0.382406, 0.826395, 0.551468, 0.910383, 0.677785, 0.487901,
- 0.408431, 0.465832, 0.226357, 0.897554, 0.717515, 0.630160, 0.664560,
- 0.807919, 0.184460, 0.314334, 0.122805, 0.073591, 0.617129, 0.220999,
- 0.050125, 0.388057, 0.262980, 0.898668, 0.103295, 0.798561, 0.110919,
- 0.451100, 0.852923, 0.263962, 0.169917, 0.891759, 0.902670, 0.074144,
- 0.746980, 0.667262, 0.158418, 0.192804, 0.468950]),
-
- ([0.964202, 0.066500, 0.226936, 0.692160, 0.655660, 0.898740, 0.524033,
- 0.579821, 0.196814, 0.235450, 0.473617, 0.647664, 0.698416, 0.424787,
- 0.767571, 0.187048, 0.029542, 0.048921, 0.508835, 0.956023, 0.030000,
- 0.973724, 0.787866, 0.432691, 0.833460, 0.532731, 0.948271, 0.219459,
- 0.583239, 0.502701, 0.073183, 0.503311, 0.322489, 0.025788, 0.723991,
- 0.979400, 0.338694, 0.135716, 0.461501, 0.143620, 0.745018, 0.043428,
- 0.182409, 0.360729, 0.578967, 0.839015, 0.800714, 0.613727, 0.199988,
- 0.765618, 0.306711, 0.341594, 0.267281, 0.722098, 0.733726, 0.270852,
- 0.078555, 0.150273, 0.064547, 0.647755, 0.551744, 0.963408, 0.608631,
- 0.776727, 0.630360, 0.671590, 0.880856, 0.272225, 0.393933, 0.361126,
- 0.513932, 0.929319, 0.654927, 0.683248, 0.235145, 0.619770, 0.322947,
- 0.509049, 0.438612, 0.119938, 0.318155, 0.406720, 0.384625, 0.276345,
- 0.314371, 0.597186, 0.557329, 0.415448, 0.093722, 0.544572, 0.211493,
- 0.403851, 0.794000, 0.837703, 0.640553, 0.265084, 0.829402, 0.518754,
- 0.195807, 0.759392, 0.766900, 0.515610, 0.589740, 0.832545, 0.938505,
- 0.333811, 0.512986, 0.340007, 0.071291, 0.664602, 0.097476, 0.953063,
- 0.716330, 0.065249, 0.256539, 0.652181, 0.757408, 0.367809, 0.432722,
- 0.715354, 0.781518, 0.972747, 0.785791, 0.606159, 0.591449, 0.683523,
- 0.350780, 0.668813, 0.642537, 0.238472, 0.198431, 0.035859, 0.684408,
- 0.196112, 0.128605, 0.655354, 0.388958, 0.330393, 0.928220, 0.843074,
- 0.246040, 0.191717, 0.724906, 0.266549, 0.507981, 0.990509, 0.467574,
- 0.767113, 0.463881, 0.458998, 0.065279, 0.925687, 0.825770, 0.848079,
- 0.215400, 0.779382, 0.506851, 0.714957, 0.452528, 0.594592, 0.573901,
- 0.658132, 0.449507, 0.102847, 0.654500, 0.655812, 0.101474, 0.105991,
- 0.580767, 0.164403, 0.424482, 0.856655, 0.550645, 0.632588, 0.799554,
- 0.120334, 0.587909, 0.587939, 0.594195, 0.325510, 0.582446, 0.952055,
- 0.691580, 0.707785, 0.691580, 0.740196, 0.959563, 0.854366, 0.384228,
- 0.802393, 0.190100, 0.555376, 0.908933, 0.761345, 0.541063, 0.367840,
- 0.466506, 0.804132, 0.010590, 0.799005, 0.869655, 0.483566, 0.976623,
- 0.514817, 0.969665, 0.185705, 0.331492, 0.480422, 0.632160, 0.419385,
- 0.244026, 0.438002, 0.543016, 0.584490, 0.079379, 0.629322, 0.625263,
- 0.374889, 0.508713, 0.168279, 0.348827, 0.472396, 0.339213, 0.970336,
- 0.714225, 0.688009, 0.096377, 0.644551, 0.190954, 0.206671, 0.889401,
- 0.255043, 0.392529],
- [ 0.347267, 0.395278, 0.312221, 0.271034, 0.606466,
- 0.281430, 0.206116, 0.433894, 0.811608, 0.149699, 0.930589, 0.131576,
- 0.606860, 0.168244, 0.510042, 0.318780, 0.017318, 0.390086, 0.887702,
- 0.856325, 0.410205, 0.731879, 0.429107, 0.951366, 0.090044, 0.460008,
- 0.982247, 0.365122, 0.274204, 0.137115, 0.153039, 0.951211, 0.065363,
- 0.265502, 0.089683, 0.080594, 0.583010, 0.702345, 0.741734, 0.195394,
- 0.694880, 0.634725, 0.110399, 0.510145, 0.984661, 0.095715, 0.060022,
- 0.603920, 0.771879, 0.818352, 0.082082, 0.618599, 0.573476, 0.893264,
- 0.229809, 0.985823, 0.317123, 0.178742, 0.319886, 0.742494, 0.070001,
- 0.097983, 0.799138, 0.627735, 0.234819, 0.174270, 0.832352, 0.747531,
- 0.647704, 0.705891, 0.773991, 0.515965, 0.364954, 0.068576, 0.245708,
- 0.052415, 0.660207, 0.516471, 0.116974, 0.402301, 0.668778, 0.478975,
- 0.759934, 0.675118, 0.254879, 0.420252, 0.301185, 0.501663, 0.106245,
- 0.885773, 0.233874, 0.852706, 0.920644, 0.903723, 0.918905, 0.397496,
- 0.508660, 0.350752, 0.525033, 0.525978, 0.501128, 0.591062, 0.327965,
- 0.501709, 0.383894, 0.685330, 0.354505, 0.031559, 0.873401, 0.127268,
- 0.798431, 0.353377, 0.460709, 0.275419, 0.208795, 0.362425, 0.876697,
- 0.927418, 0.263693, 0.985030, 0.725649, 0.371198, 0.304175, 0.897437,
- 0.436677, 0.633838, 0.883890, 0.471352, 0.563572, 0.763623, 0.364169,
- 0.958443, 0.068425, 0.260482, 0.313543, 0.394317, 0.443647, 0.121875,
- 0.780465, 0.211723, 0.268817, 0.067533, 0.660574, 0.821465, 0.084727,
- 0.520244, 0.288125, 0.675550, 0.580184, 0.116487, 0.701141, 0.082960,
- 0.262049, 0.478233, 0.452062, 0.902427, 0.540173, 0.098391, 0.338498,
- 0.422226, 0.634723, 0.927242, 0.954212, 0.803277, 0.096551, 0.200374,
- 0.689030, 0.291707, 0.580938, 0.939620, 0.151359, 0.232785, 0.503464,
- 0.695066, 0.052623, 0.060584, 0.175948, 0.382867, 0.590377, 0.137340,
- 0.854693, 0.227445, 0.042913, 0.300106, 0.598812, 0.232287, 0.684412,
- 0.365377, 0.094614, 0.097589, 0.241374, 0.555737, 0.246608, 0.794405,
- 0.244149, 0.733437, 0.394148, 0.893992, 0.702754, 0.580066, 0.313107,
- 0.633119, 0.305982, 0.934299, 0.642923, 0.551348, 0.624630, 0.790857,
- 0.331221, 0.474498, 0.189123, 0.110964, 0.484088, 0.151825, 0.119752,
- 0.369902, 0.186865, 0.815287, 0.074211, 0.710128, 0.272505, 0.428258,
- 0.913809, 0.370850, 0.101142, 0.907882, 0.813830, 0.169027, 0.828513,
- 0.535021, 0.157700, 0.154209, 0.657740] ),
-
- ([0.091800, 0.590747, 0.357860, 0.768944, 0.705832, 0.861995, 0.219123,
- 0.097995, 0.202826, 0.055971, 0.621387, 0.056795, 0.750175, 0.527818,
- 0.164159, 0.654408, 0.634266, 0.384625, 0.464583, 0.807123, 0.907865,
- 0.206702, 0.164922, 0.837733, 0.734306, 0.770074, 0.152898, 0.179693,
- 0.085452, 0.302530, 0.901242, 0.067660, 0.949400, 0.304209, 0.332316,
- 0.495651, 0.703909, 0.463515, 0.115024, 0.223945, 0.812586, 0.700278,
- 0.798822, 0.116245, 0.499100, 0.867183, 0.692465, 0.587878, 0.556658,
- 0.140294, 0.892911, 0.446852, 0.947905, 0.630696, 0.370830, 0.908597,
- 0.352580, 0.247810, 0.519211, 0.065737, 0.318644, 0.345988, 0.070711,
- 0.594501, 0.172735, 0.185614, 0.790979, 0.978179, 0.347209, 0.739830,
- 0.852931, 0.029786, 0.279061, 0.878292, 0.299570, 0.995025, 0.537614,
- 0.459029, 0.500534, 0.015748, 0.336619, 0.359905, 0.009095, 0.237007,
- 0.087802, 0.980621, 0.726005, 0.337168, 0.151524, 0.246712, 0.775872,
- 0.763451, 0.440596, 0.646962, 0.003052, 0.453749, 0.034516, 0.334819,
- 0.492813, 0.326060, 0.459212, 0.825983, 0.023896, 0.316568, 0.789178,
- 0.322672, 0.859310, 0.248024, 0.228217, 0.196203, 0.781091, 0.309366,
- 0.324992, 0.658956, 0.775445, 0.427870, 0.479324, 0.157048, 0.274606,
- 0.315165, 0.895993, 0.515091, 0.361614, 0.468337, 0.642048, 0.363872,
- 0.844020, 0.907407, 0.963775, 0.882931, 0.603198, 0.930235, 0.519639,
- 0.388195, 0.125248, 0.666524, 0.685812, 0.797388, 0.619831, 0.711478,
- 0.589740, 0.502792, 0.632923, 0.621326, 0.028840, 0.684194, 0.560228,
- 0.550920, 0.930204, 0.591937, 0.967132, 0.815455, 0.507126, 0.832453,
- 0.121433, 0.657216, 0.769890, 0.186468, 0.645528, 0.998627, 0.545610,
- 0.992279, 0.693594, 0.462813, 0.664510, 0.624012, 0.560564, 0.443159,
- 0.468307, 0.097537, 0.129246, 0.502792, 0.297189, 0.334117, 0.061190,
- 0.885464, 0.111545, 0.113559, 0.138157, 0.418867, 0.904599, 0.248360,
- 0.660176, 0.592181, 0.062349, 0.009522, 0.306528, 0.088137, 0.327311,
- 0.335643, 0.365917, 0.551897, 0.521531, 0.856471, 0.741783, 0.877163,
- 0.686026, 0.262154, 0.639637, 0.791314, 0.792169, 0.049593, 0.341929,
- 0.020661, 0.681936, 0.176702, 0.977325, 0.816828, 0.392651, 0.656301,
- 0.690176, 0.125736, 0.522843, 0.620746, 0.116733, 0.180731, 0.795282,
- 0.888485, 0.574419, 0.800439, 0.473739, 0.563616, 0.869655, 0.172918,
- 0.789270, 0.700369, 0.131840, 0.407849, 0.032655, 0.562670, 0.578539,
- 0.636982, 0.469131],
- [0.250121, 0.483413, 0.264094, 0.307941, 0.733994,
- 0.238909, 0.172450, 0.289615, 0.639522, 0.156406, 0.927321, 0.115653,
- 0.439196, 0.138059, 0.430463, 0.210567, 0.043311, 0.427593, 0.713422,
- 0.874737, 0.349128, 0.641711, 0.307643, 0.960792, 0.057629, 0.274816,
- 0.959588, 0.398889, 0.271323, 0.171029, 0.242094, 0.978259, 0.096858,
- 0.335654, 0.139114, 0.149906, 0.430454, 0.483910, 0.630219, 0.285243,
- 0.744639, 0.707501, 0.128506, 0.505621, 0.986704, 0.086747, 0.267839,
- 0.638377, 0.606427, 0.850217, 0.108584, 0.368790, 0.415063, 0.828986,
- 0.366711, 0.960958, 0.215415, 0.253284, 0.268513, 0.436681, 0.111406,
- 0.103739, 0.653758, 0.511406, 0.359645, 0.142705, 0.886096, 0.729033,
- 0.570775, 0.475699, 0.781399, 0.624880, 0.453394, 0.105905, 0.258093,
- 0.043573, 0.695208, 0.381172, 0.131100, 0.470651, 0.494271, 0.329024,
- 0.677485, 0.566830, 0.452777, 0.283240, 0.187764, 0.614069, 0.110264,
- 0.810169, 0.297650, 0.804280, 0.875188, 0.876858, 0.950973, 0.347310,
- 0.568015, 0.203545, 0.636385, 0.402638, 0.561527, 0.704415, 0.335657,
- 0.416779, 0.371755, 0.656713, 0.245263, 0.069130, 0.858867, 0.117609,
- 0.814266, 0.357809, 0.368650, 0.195525, 0.253112, 0.273989, 0.897546,
- 0.737842, 0.188547, 0.991165, 0.751005, 0.552062, 0.267549, 0.903292,
- 0.309227, 0.766666, 0.885213, 0.570977, 0.382676, 0.564119, 0.461571,
- 0.938216, 0.127708, 0.189827, 0.276506, 0.377828, 0.537514, 0.231975,
- 0.575255, 0.211339, 0.194267, 0.110436, 0.330972, 0.823506, 0.087909,
- 0.405803, 0.398364, 0.585681, 0.676848, 0.126466, 0.459028, 0.068184,
- 0.229350, 0.508934, 0.295492, 0.876380, 0.290811, 0.034688, 0.401911,
- 0.337465, 0.767958, 0.852948, 0.981002, 0.763970, 0.070562, 0.312852,
- 0.691511, 0.244069, 0.497265, 0.912701, 0.104435, 0.312821, 0.663720,
- 0.688728, 0.072052, 0.040471, 0.113943, 0.208670, 0.557001, 0.255511,
- 0.744639, 0.166425, 0.049652, 0.223302, 0.492090, 0.229562, 0.573484,
- 0.590362, 0.206928, 0.294928, 0.183751, 0.270976, 0.310734, 0.917243,
- 0.200381, 0.691783, 0.425492, 0.882956, 0.635164, 0.618051, 0.253056,
- 0.505014, 0.434698, 0.910271, 0.737867, 0.553463, 0.588869, 0.748615,
- 0.244402, 0.282370, 0.257965, 0.119861, 0.620997, 0.124454, 0.112210,
- 0.383214, 0.245615, 0.853594, 0.145247, 0.776892, 0.166819, 0.548061,
- 0.802385, 0.142570, 0.098268, 0.887335, 0.906549, 0.087140, 0.690883,
- 0.731714, 0.239845, 0.207338, 0.304361] ),
-
- ([0.511246, 0.618427, 0.945036, 0.731468, 0.048402, 0.198859, 0.911771,
- 0.848018, 0.052889, 0.803369, 0.046754, 0.561571, 0.734703, 0.006043,
- 0.897824, 0.095798, 0.342509, 0.988769, 0.114628, 0.024812, 0.153844,
- 0.927488, 0.248695, 0.402722, 0.780084, 0.654073, 0.570818, 0.809198,
- 0.316813, 0.499557, 0.687429, 0.467269, 0.371319, 0.725608, 0.237007,
- 0.089572, 0.498337, 0.449721, 0.447890, 0.609638, 0.075076, 0.471175,
- 0.838435, 0.453658, 0.147130, 0.903470, 0.841304, 0.510117, 0.276162,
- 0.019532, 0.632557, 0.452528, 0.921018, 0.216407, 0.947417, 0.572161,
- 0.382977, 0.504929, 0.163121, 0.776605, 0.847072, 0.431288, 0.431196,
- 0.910825, 0.550035, 0.836573, 0.139134, 0.056368, 0.606738, 0.360027,
- 0.484054, 0.965941, 0.525834, 0.093295, 0.438520, 0.288186, 0.946165,
- 0.290719, 0.890316, 0.740532, 0.625294, 0.543016, 0.237251, 0.885006,
- 0.211066, 0.319712, 0.218513, 0.663961, 0.827631, 0.287240, 0.263222,
- 0.352092, 0.007172, 0.308573, 0.138035, 0.080264, 0.998840, 0.530656,
- 0.174993, 0.588122, 0.985260, 0.466170, 0.860317, 0.361461, 0.239326,
- 0.475600, 0.065981, 0.810541, 0.751152, 0.555773, 0.705252, 0.645741,
- 0.356883, 0.841639, 0.093051, 0.106632, 0.901242, 0.726859, 0.792779,
- 0.200873, 0.463912, 0.010041, 0.230628, 0.609210, 0.182226, 0.972442,
- 0.859035, 0.412427, 0.700308, 0.793481, 0.149602, 0.297342, 0.776666,
- 0.210761, 0.198004, 0.397015, 0.081118, 0.830256, 0.221076, 0.422315,
- 0.712790, 0.992767, 0.727836, 0.240638, 0.469253, 0.604083, 0.645497,
- 0.558153, 0.399884, 0.833644, 0.182073, 0.861904, 0.672903, 0.088626,
- 0.706290, 0.277627, 0.288400, 0.170141, 0.426405, 0.500320, 0.668447,
- 0.016816, 0.149052, 0.452895, 0.655019, 0.942717, 0.899747, 0.829737,
- 0.947935, 0.775628, 0.685324, 0.181372, 0.512894, 0.802149, 0.180853,
- 0.696341, 0.991943, 0.925413, 0.621357, 0.336467, 0.646809, 0.942015,
- 0.679678, 0.482131, 0.867000, 0.344493, 0.612293, 0.743370, 0.773278,
- 0.555376, 0.453688, 0.093204, 0.948363, 0.998871, 0.540880, 0.979797,
- 0.825709, 0.917112, 0.149327, 0.572924, 0.767724, 0.336436, 0.521439,
- 0.801843, 0.364666, 0.090609, 0.068575, 0.340251, 0.985717, 0.306742,
- 0.028718, 0.194739, 0.112888, 0.260231, 0.360057, 0.053102, 0.489731,
- 0.005432, 0.151982, 0.048616, 0.615528, 0.687857, 0.335643, 0.096561,
- 0.616504, 0.943907, 0.973693, 0.459304, 0.025239, 0.295297, 0.911924,
- 0.696127, 0.499680],
- [0.372363, 0.313207, 0.276106, 0.279324, 0.820741,
- 0.205839, 0.328552, 0.399419, 0.774962, 0.215105, 0.853020, 0.226282,
- 0.571785, 0.173005, 0.436688, 0.238419, 0.019348, 0.460500, 0.847289,
- 0.878880, 0.228861, 0.695937, 0.239922, 0.971454, 0.036638, 0.461105,
- 0.972190, 0.455536, 0.254031, 0.210429, 0.335951, 0.912823, 0.057891,
- 0.222266, 0.176725, 0.124067, 0.581808, 0.736316, 0.652302, 0.248547,
- 0.704722, 0.716806, 0.087022, 0.515832, 0.973141, 0.095332, 0.098511,
- 0.549793, 0.810595, 0.823819, 0.070312, 0.561088, 0.364184, 0.852806,
- 0.259421, 0.961891, 0.135451, 0.210059, 0.366696, 0.553164, 0.115941,
- 0.097627, 0.862905, 0.499057, 0.464813, 0.240171, 0.903088, 0.744335,
- 0.613677, 0.796010, 0.774554, 0.611191, 0.427484, 0.043273, 0.272693,
- 0.091735, 0.626866, 0.598557, 0.314647, 0.606310, 0.660126, 0.401762,
- 0.782298, 0.587858, 0.140014, 0.598725, 0.358832, 0.437350, 0.217892,
- 0.874923, 0.189696, 0.806172, 0.853777, 0.849070, 0.872760, 0.442148,
- 0.530084, 0.230444, 0.608441, 0.564128, 0.408068, 0.732274, 0.456723,
- 0.421654, 0.596509, 0.737912, 0.407249, 0.036761, 0.856259, 0.132400,
- 0.832515, 0.371338, 0.573567, 0.425011, 0.247448, 0.522633, 0.942719,
- 0.907415, 0.228517, 0.986824, 0.848198, 0.284663, 0.271171, 0.915369,
- 0.547810, 0.745923, 0.881908, 0.504883, 0.428851, 0.661564, 0.298134,
- 0.974143, 0.105652, 0.342785, 0.412873, 0.440510, 0.350132, 0.211733,
- 0.810887, 0.132996, 0.237006, 0.051134, 0.598440, 0.778627, 0.090580,
- 0.634583, 0.339945, 0.511342, 0.660187, 0.184938, 0.614215, 0.064794,
- 0.270805, 0.456836, 0.536392, 0.940503, 0.295905, 0.129487, 0.447837,
- 0.526879, 0.729304, 0.910458, 0.972890, 0.761394, 0.249717, 0.346499,
- 0.779652, 0.299671, 0.729285, 0.934442, 0.192382, 0.281585, 0.555343,
- 0.601925, 0.071142, 0.063458, 0.207701, 0.356162, 0.631022, 0.165572,
- 0.760330, 0.131365, 0.021257, 0.262862, 0.640069, 0.250123, 0.642715,
- 0.204412, 0.149900, 0.125013, 0.202026, 0.475843, 0.260838, 0.853036,
- 0.272570, 0.625518, 0.496405, 0.928861, 0.852380, 0.627557, 0.282402,
- 0.475618, 0.273318, 0.944023, 0.592831, 0.608529, 0.662162, 0.839359,
- 0.161527, 0.473947, 0.200285, 0.107977, 0.738683, 0.100967, 0.083270,
- 0.366952, 0.199829, 0.879304, 0.068496, 0.810832, 0.152595, 0.411953,
- 0.930309, 0.339304, 0.144649, 0.935868, 0.843733, 0.110269, 0.859667,
- 0.592107, 0.216361, 0.175124, 0.385298] ),
-
- ([0.943571, 0.073397, 0.654073, 0.012421, 0.871151, 0.176305, 0.656026,
- 0.542619, 0.655629, 0.156926, 0.542405, 0.800378, 0.902829, 0.078860,
- 0.722526, 0.016022, 0.705557, 0.810053, 0.891964, 0.325236, 0.033692,
- 0.248329, 0.572222, 0.780511, 0.462539, 0.377392, 0.129032, 0.521500,
- 0.144963, 0.933775, 0.425214, 0.134312, 0.434156, 0.966491, 0.764672,
- 0.731895, 0.062868, 0.070772, 0.283547, 0.786004, 0.285745, 0.576525,
- 0.445143, 0.242653, 0.890561, 0.473159, 0.794336, 0.951994, 0.485031,
- 0.352306, 0.628040, 0.943632, 0.965209, 0.149022, 0.738151, 0.579333,
- 0.571642, 0.963286, 0.882778, 0.113498, 0.439985, 0.742515, 0.142247,
- 0.693381, 0.051637, 0.107181, 0.816492, 0.329875, 0.491256, 0.099826,
- 0.018921, 0.870327, 0.917081, 0.139225, 0.624866, 0.504471, 0.150365,
- 0.961089, 0.728721, 0.834925, 0.790429, 0.825892, 0.267861, 0.043214,
- 0.760887, 0.776238, 0.968657, 0.183111, 0.694266, 0.223640, 0.270516,
- 0.131596, 0.060457, 0.646962, 0.385601, 0.229835, 0.445692, 0.683218,
- 0.148625, 0.144536, 0.887997, 0.392621, 0.814661, 0.981414, 0.675863,
- 0.978240, 0.459761, 0.181738, 0.515610, 0.742088, 0.142125, 0.233406,
- 0.474563, 0.559130, 0.478713, 0.727805, 0.605640, 0.649739, 0.794183,
- 0.793298, 0.659810, 0.932279, 0.498611, 0.437361, 0.792779, 0.737205,
- 0.849818, 0.827906, 0.672170, 0.163610, 0.756523, 0.045228, 0.891018,
- 0.859615, 0.779260, 0.336314, 0.094516, 0.507736, 0.984222, 0.401685,
- 0.725700, 0.796930, 0.807337, 0.747398, 0.796442, 0.161718, 0.584033,
- 0.632344, 0.590472, 0.070559, 0.901578, 0.642506, 0.703818, 0.144047,
- 0.429609, 0.423597, 0.329569, 0.884640, 0.385693, 0.603046, 0.193243,
- 0.298593, 0.291696, 0.432661, 0.044496, 0.192328, 0.177679, 0.183294,
- 0.111820, 0.423322, 0.888943, 0.822748, 0.426374, 0.887570, 0.653188,
- 0.007904, 0.421369, 0.524461, 0.563555, 0.923124, 0.712760, 0.120975,
- 0.133824, 0.994690, 0.468154, 0.195196, 0.582293, 0.014374, 0.269692,
- 0.741783, 0.000336, 0.702048, 0.877377, 0.119633, 0.062075, 0.238655,
- 0.798944, 0.863826, 0.431074, 0.801965, 0.072726, 0.701865, 0.520829,
- 0.634602, 0.169713, 0.557176, 0.765007, 0.677358, 0.420850, 0.819544,
- 0.053285, 0.297617, 0.876003, 0.664510, 0.490219, 0.144963, 0.000885,
- 0.703085, 0.131718, 0.665090, 0.118290, 0.742485, 0.857143, 0.302835,
- 0.999176, 0.939543, 0.031739, 0.926389, 0.510941, 0.128086, 0.116794,
- 0.503006, 0.728446],
- [0.351222, 0.278591, 0.283138, 0.122628, 0.763695,
- 0.308245, 0.231191, 0.327072, 0.669178, 0.237753, 0.933039, 0.161955,
- 0.527918, 0.162872, 0.276862, 0.338759, 0.013447, 0.500357, 0.758393,
- 0.890117, 0.286404, 0.614922, 0.471315, 0.955186, 0.089488, 0.366257,
- 0.978455, 0.616409, 0.306164, 0.160409, 0.159356, 0.978049, 0.097219,
- 0.344033, 0.186289, 0.116885, 0.728207, 0.627205, 0.714860, 0.208562,
- 0.727131, 0.828565, 0.158439, 0.466829, 0.971232, 0.121343, 0.161650,
- 0.661611, 0.618124, 0.841358, 0.046860, 0.452121, 0.341010, 0.865947,
- 0.152254, 0.966536, 0.213056, 0.304055, 0.335217, 0.523691, 0.087881,
- 0.064809, 0.795485, 0.452027, 0.317999, 0.116250, 0.898968, 0.803284,
- 0.544429, 0.616822, 0.841354, 0.611205, 0.371687, 0.033215, 0.256717,
- 0.064430, 0.627021, 0.627504, 0.191870, 0.526017, 0.501716, 0.287086,
- 0.784309, 0.622639, 0.183675, 0.468426, 0.212266, 0.355046, 0.108475,
- 0.889961, 0.275599, 0.872669, 0.942839, 0.877238, 0.920511, 0.392231,
- 0.563621, 0.144615, 0.633087, 0.349760, 0.505776, 0.827315, 0.389287,
- 0.540466, 0.506721, 0.612825, 0.373225, 0.041362, 0.902200, 0.092558,
- 0.739404, 0.272585, 0.388132, 0.298448, 0.321686, 0.374587, 0.935410,
- 0.898459, 0.192054, 0.991002, 0.725184, 0.382465, 0.319403, 0.858241,
- 0.597066, 0.710496, 0.882099, 0.531761, 0.456813, 0.845161, 0.499102,
- 0.969086, 0.106525, 0.332143, 0.326130, 0.364720, 0.654414, 0.171305,
- 0.596477, 0.110804, 0.178501, 0.057372, 0.576870, 0.814650, 0.061785,
- 0.478826, 0.367008, 0.320375, 0.650806, 0.181174, 0.468965, 0.037388,
- 0.270917, 0.385496, 0.362564, 0.833518, 0.339478, 0.046834, 0.462328,
- 0.608506, 0.601353, 0.894656, 0.955409, 0.723455, 0.147482, 0.237962,
- 0.735452, 0.206749, 0.757557, 0.933967, 0.214645, 0.375817, 0.574143,
- 0.817046, 0.041647, 0.069035, 0.130061, 0.486610, 0.681156, 0.481305,
- 0.869591, 0.204328, 0.104596, 0.343107, 0.564518, 0.275226, 0.611070,
- 0.249097, 0.084293, 0.199324, 0.278827, 0.330948, 0.206980, 0.806283,
- 0.256766, 0.588891, 0.445696, 0.906602, 0.709172, 0.561304, 0.262893,
- 0.710889, 0.551355, 0.953251, 0.692670, 0.754259, 0.498363, 0.792302,
- 0.159659, 0.299479, 0.167739, 0.071807, 0.487328, 0.132015, 0.081683,
- 0.272535, 0.177688, 0.930233, 0.106226, 0.619949, 0.120131, 0.334437,
- 0.914901, 0.213753, 0.088482, 0.942437, 0.858771, 0.095054, 0.726020,
- 0.678025, 0.174585, 0.250140, 0.419005] ),
-
- ([0.601306, 0.883114, 0.558214, 0.413923, 0.130222, 0.384136, 0.449324,
- 0.272683, 0.500229, 0.345470, 0.984649, 0.890042, 0.345927, 0.126225,
- 0.419813, 0.756462, 0.566454, 0.909177, 0.362194, 0.286752, 0.101840,
- 0.275582, 0.614643, 0.239540, 0.352245, 0.821070, 0.490219, 0.443525,
- 0.020661, 0.968566, 0.628559, 0.236457, 0.661061, 0.635151, 0.845820,
- 0.523545, 0.712516, 0.908383, 0.048616, 0.860897, 0.301248, 0.388562,
- 0.744163, 0.470901, 0.591296, 0.353648, 0.176855, 0.595355, 0.965209,
- 0.402234, 0.623585, 0.092685, 0.816248, 0.731590, 0.877987, 0.685690,
- 0.233009, 0.706626, 0.455763, 0.765831, 0.358135, 0.876186, 0.551866,
- 0.160466, 0.701590, 0.092624, 0.280770, 0.769280, 0.190893, 0.891629,
- 0.231391, 0.475784, 0.238411, 0.787347, 0.867458, 0.240974, 0.607837,
- 0.640522, 0.805078, 0.784509, 0.360515, 0.754662, 0.498337, 0.759972,
- 0.663198, 0.857143, 0.364544, 0.830958, 0.738365, 0.621326, 0.879940,
- 0.553301, 0.738395, 0.885830, 0.677480, 0.470473, 0.824793, 0.227515,
- 0.177862, 0.328135, 0.233619, 0.044069, 0.784997, 0.813868, 0.608844,
- 0.802728, 0.177038, 0.728782, 0.384106, 0.611042, 0.724540, 0.996948,
- 0.494827, 0.766533, 0.566729, 0.418714, 0.201544, 0.440626, 0.377331,
- 0.575030, 0.305979, 0.154241, 0.350841, 0.787622, 0.540605, 0.199896,
- 0.441176, 0.542680, 0.413648, 0.667959, 0.382977, 0.283364, 0.290170,
- 0.232246, 0.528031, 0.977935, 0.990936, 0.352031, 0.026643, 0.369121,
- 0.689871, 0.045808, 0.386700, 0.311991, 0.391797, 0.894131, 0.940397,
- 0.105319, 0.771477, 0.426649, 0.250557, 0.223823, 0.654927, 0.550768,
- 0.987945, 0.356761, 0.925199, 0.177038, 0.309977, 0.159551, 0.132481,
- 0.698355, 0.273354, 0.624531, 0.591235, 0.478805, 0.310312, 0.477004,
- 0.244270, 0.008667, 0.301309, 0.503098, 0.076144, 0.881558, 0.274270,
- 0.215339, 0.356426, 0.249977, 0.262093, 0.762444, 0.494186, 0.915983,
- 0.349712, 0.489517, 0.785394, 0.712516, 0.441755, 0.054872, 0.833766,
- 0.332133, 0.782250, 0.509812, 0.926908, 0.259377, 0.757439, 0.247291,
- 0.148778, 0.962706, 0.013001, 0.226386, 0.509751, 0.002441, 0.417310,
- 0.378002, 0.875271, 0.211280, 0.901120, 0.598773, 0.974853, 0.602954,
- 0.705924, 0.238899, 0.272378, 0.165716, 0.071505, 0.490493, 0.978912,
- 0.197302, 0.894253, 0.582476, 0.989257, 0.336314, 0.387463, 0.188452,
- 0.023652, 0.948027, 0.274850, 0.953734, 0.756066, 0.019135, 0.548418,
- 0.547594, 0.209479],
- [0.271663, 0.525723, 0.267998, 0.250128, 0.702226,
- 0.229707, 0.175555, 0.297942, 0.860000, 0.169436, 0.887007, 0.126692,
- 0.384973, 0.182938, 0.553939, 0.253207, 0.029636, 0.425111, 0.846293,
- 0.842762, 0.304010, 0.762392, 0.447713, 0.952176, 0.056503, 0.447279,
- 0.970657, 0.412395, 0.340561, 0.121831, 0.176847, 0.956278, 0.114158,
- 0.355843, 0.137279, 0.076094, 0.595278, 0.711299, 0.589624, 0.171310,
- 0.768125, 0.554197, 0.121300, 0.554864, 0.976230, 0.161199, 0.085808,
- 0.386882, 0.683964, 0.831818, 0.057765, 0.313484, 0.508615, 0.827996,
- 0.333389, 0.971560, 0.189127, 0.211048, 0.345118, 0.566802, 0.105797,
- 0.080436, 0.782501, 0.518403, 0.218373, 0.281876, 0.906947, 0.889611,
- 0.479506, 0.629542, 0.654916, 0.480508, 0.389275, 0.082686, 0.280760,
- 0.109858, 0.733491, 0.446057, 0.249002, 0.541121, 0.502550, 0.371208,
- 0.721902, 0.436620, 0.244237, 0.250580, 0.226793, 0.627351, 0.160097,
- 0.747408, 0.375859, 0.871497, 0.926349, 0.874001, 0.869867, 0.307266,
- 0.483985, 0.124589, 0.578719, 0.366280, 0.412193, 0.594651, 0.369025,
- 0.481161, 0.576671, 0.467754, 0.224526, 0.031813, 0.821986, 0.090304,
- 0.836334, 0.444711, 0.408687, 0.205362, 0.263692, 0.475828, 0.905762,
- 0.909118, 0.301838, 0.988982, 0.774767, 0.589240, 0.246877, 0.876037,
- 0.457144, 0.741628, 0.921321, 0.527897, 0.302698, 0.768976, 0.397204,
- 0.953512, 0.101570, 0.219640, 0.337110, 0.454909, 0.462697, 0.162126,
- 0.761869, 0.168659, 0.298322, 0.061892, 0.703901, 0.867304, 0.080736,
- 0.314129, 0.380475, 0.314903, 0.665137, 0.094841, 0.523808, 0.073543,
- 0.279188, 0.490220, 0.451759, 0.926845, 0.472939, 0.145560, 0.309754,
- 0.286070, 0.687752, 0.920453, 0.965685, 0.776630, 0.163112, 0.167838,
- 0.626627, 0.243982, 0.641384, 0.902528, 0.114211, 0.308358, 0.492737,
- 0.566340, 0.048890, 0.067968, 0.103615, 0.316475, 0.394561, 0.284335,
- 0.879411, 0.207121, 0.036808, 0.216855, 0.550790, 0.368205, 0.531398,
- 0.365759, 0.165072, 0.177080, 0.274344, 0.397236, 0.225324, 0.880869,
- 0.228650, 0.783659, 0.547302, 0.814027, 0.767327, 0.545063, 0.256435,
- 0.519250, 0.316496, 0.922818, 0.742588, 0.447345, 0.628000, 0.811624,
- 0.252169, 0.572887, 0.213673, 0.089029, 0.696801, 0.113802, 0.091420,
- 0.428054, 0.235681, 0.820236, 0.133022, 0.686627, 0.107302, 0.561399,
- 0.916099, 0.288236, 0.200918, 0.935256, 0.871452, 0.071271, 0.844837,
- 0.711053, 0.182887, 0.241940, 0.460490] ),
-
- ([0.219306, 0.322092, 0.147404, 0.200659, 0.284280, 0.812433, 0.760430,
- 0.114444, 0.378002, 0.977233, 0.289865, 0.789850, 0.589251, 0.843959,
- 0.751396, 0.798212, 0.219275, 0.058535, 0.546159, 0.895779, 0.016999,
- 0.686483, 0.196661, 0.930845, 0.017365, 0.796655, 0.452040, 0.987487,
- 0.139592, 0.860195, 0.168432, 0.046815, 0.201483, 0.494491, 0.871120,
- 0.947172, 0.506088, 0.584613, 0.404584, 0.924009, 0.656545, 0.312540,
- 0.576678, 0.511643, 0.756066, 0.126225, 0.203162, 0.087252, 0.648824,
- 0.179022, 0.458876, 0.838771, 0.357830, 0.271249, 0.941954, 0.437727,
- 0.376904, 0.824976, 0.356761, 0.198767, 0.971770, 0.923154, 0.222907,
- 0.006409, 0.147496, 0.944456, 0.515183, 0.790796, 0.438429, 0.825312,
- 0.641896, 0.833399, 0.176000, 0.479720, 0.666982, 0.684164, 0.392041,
- 0.408856, 0.182928, 0.971374, 0.012452, 0.031281, 0.739891, 0.884854,
- 0.498703, 0.765130, 0.237953, 0.614887, 0.592303, 0.393262, 0.188604,
- 0.526902, 0.319590, 0.743370, 0.251320, 0.354137, 0.912076, 0.213263,
- 0.951964, 0.188818, 0.799341, 0.173467, 0.989166, 0.553789, 0.330271,
- 0.777825, 0.034639, 0.334971, 0.379254, 0.213538, 0.434095, 0.856960,
- 0.493179, 0.922300, 0.714560, 0.881954, 0.735740, 0.822626, 0.304758,
- 0.814142, 0.885464, 0.066225, 0.374645, 0.890103, 0.143284, 0.358257,
- 0.200201, 0.637074, 0.006165, 0.373455, 0.959990, 0.379772, 0.463057,
- 0.299265, 0.369518, 0.077609, 0.169347, 0.037141, 0.059816, 0.272897,
- 0.756066, 0.093295, 0.106357, 0.431806, 0.929991, 0.690115, 0.614643,
- 0.459212, 0.521317, 0.129551, 0.768517, 0.668508, 0.134556, 0.939848,
- 0.248054, 0.987823, 0.559313, 0.836421, 0.422315, 0.683584, 0.597034,
- 0.028748, 0.224067, 0.383435, 0.460158, 0.904111, 0.112278, 0.678640,
- 0.399579, 0.619312, 0.028840, 0.088046, 0.717002, 0.632313, 0.755638,
- 0.664907, 0.818293, 0.704154, 0.578021, 0.027009, 0.464095, 0.402936,
- 0.661733, 0.092349, 0.874020, 0.641255, 0.048372, 0.300729, 0.840358,
- 0.277657, 0.676748, 0.603351, 0.508164, 0.314188, 0.335276, 0.000824,
- 0.977386, 0.720634, 0.953093, 0.911679, 0.383465, 0.417096, 0.134404,
- 0.151738, 0.612903, 0.446089, 0.344005, 0.806513, 0.309671, 0.865047,
- 0.648915, 0.777062, 0.328990, 0.391095, 0.423078, 0.281167, 0.294504,
- 0.328928, 0.921384, 0.090823, 0.415387, 0.813135, 0.128697, 0.787164,
- 0.219306, 0.896023, 0.790979, 0.814234, 0.357738, 0.512772, 0.033723,
- 0.612995, 0.139805],
- [0.337469, 0.211019, 0.303828, 0.169147, 0.566631,
- 0.265004, 0.229917, 0.266692, 0.707275, 0.181060, 0.891105, 0.151850,
- 0.330346, 0.236540, 0.566669, 0.367808, 0.022893, 0.342128, 0.828586,
- 0.836092, 0.288965, 0.520367, 0.340710, 0.948377, 0.068229, 0.481998,
- 0.961949, 0.321867, 0.409557, 0.096625, 0.235185, 0.963402, 0.086902,
- 0.304833, 0.136653, 0.100314, 0.555993, 0.473476, 0.687371, 0.091541,
- 0.824397, 0.761128, 0.176079, 0.461218, 0.972764, 0.101685, 0.092011,
- 0.704997, 0.786809, 0.845653, 0.048572, 0.532518, 0.294126, 0.790332,
- 0.263704, 0.972708, 0.345158, 0.097973, 0.310588, 0.411926, 0.068545,
- 0.167609, 0.738812, 0.590916, 0.165281, 0.483342, 0.827012, 0.874491,
- 0.706514, 0.764947, 0.810091, 0.569694, 0.516268, 0.052071, 0.182505,
- 0.087599, 0.683585, 0.451136, 0.172146, 0.361382, 0.584432, 0.524382,
- 0.697889, 0.607622, 0.269281, 0.404014, 0.383005, 0.465719, 0.133359,
- 0.848459, 0.329923, 0.676798, 0.918466, 0.925962, 0.912074, 0.448496,
- 0.592100, 0.143557, 0.664445, 0.531189, 0.525847, 0.767499, 0.299313,
- 0.578332, 0.624400, 0.466934, 0.132613, 0.062552, 0.904959, 0.127579,
- 0.818607, 0.446923, 0.465014, 0.273226, 0.337396, 0.414281, 0.956502,
- 0.834423, 0.290169, 0.990990, 0.851944, 0.418151, 0.380813, 0.826651,
- 0.462244, 0.779744, 0.812940, 0.421702, 0.511798, 0.737402, 0.242433,
- 0.976064, 0.082025, 0.373773, 0.357622, 0.499017, 0.402349, 0.271163,
- 0.773220, 0.143733, 0.266738, 0.050067, 0.499764, 0.788335, 0.090030,
- 0.517396, 0.443833, 0.574189, 0.552392, 0.191110, 0.418867, 0.138714,
- 0.305420, 0.657505, 0.572325, 0.943814, 0.480564, 0.142950, 0.344197,
- 0.370294, 0.751791, 0.917778, 0.979460, 0.802610, 0.237874, 0.154067,
- 0.546123, 0.157159, 0.840947, 0.881112, 0.184218, 0.258215, 0.482485,
- 0.519804, 0.043765, 0.055481, 0.093186, 0.499097, 0.448311, 0.311212,
- 0.855592, 0.258039, 0.041089, 0.214369, 0.600970, 0.397062, 0.636188,
- 0.356101, 0.081942, 0.210988, 0.129305, 0.371435, 0.371639, 0.813555,
- 0.371106, 0.809968, 0.372638, 0.920697, 0.714700, 0.493914, 0.314693,
- 0.564047, 0.208476, 0.945736, 0.642147, 0.532650, 0.600253, 0.861064,
- 0.231185, 0.557751, 0.243577, 0.108949, 0.781807, 0.164608, 0.116768,
- 0.415680, 0.234421, 0.906828, 0.111577, 0.653296, 0.165778, 0.443490,
- 0.832201, 0.205338, 0.099455, 0.939522, 0.892921, 0.067812, 0.864319,
- 0.700760, 0.271345, 0.210610, 0.439696] ),
-
- ([0.854610, 0.475326, 0.616596, 0.950865, 0.181310, 0.239937, 0.388104,
- 0.212043, 0.604663, 0.777734, 0.682180, 0.037111, 0.873531, 0.897580,
- 0.711814, 0.242958, 0.692618, 0.919034, 0.401349, 0.869625, 0.605152,
- 0.349773, 0.907193, 0.866420, 0.971740, 0.994659, 0.187109, 0.100467,
- 0.075686, 0.902371, 0.899991, 0.343669, 0.887173, 0.056734, 0.416395,
- 0.394208, 0.516037, 0.218085, 0.222419, 0.989471, 0.886166, 0.821223,
- 0.496567, 0.665883, 0.661061, 0.336375, 0.142308, 0.222571, 0.953185,
- 0.999573, 0.056734, 0.944517, 0.847346, 0.317728, 0.916807, 0.241737,
- 0.270089, 0.256111, 0.264321, 0.861171, 0.235817, 0.513260, 0.171300,
- 0.326365, 0.001282, 0.790063, 0.266274, 0.762535, 0.159398, 0.459365,
- 0.403455, 0.762322, 0.203894, 0.542253, 0.755608, 0.448927, 0.595691,
- 0.397046, 0.611988, 0.392743, 0.862850, 0.027497, 0.662709, 0.537706,
- 0.764550, 0.416578, 0.050600, 0.793786, 0.051119, 0.791528, 0.971892,
- 0.451552, 0.850826, 0.227088, 0.106937, 0.075411, 0.214850, 0.492874,
- 0.662587, 0.031648, 0.851985, 0.550890, 0.306497, 0.307230, 0.583544,
- 0.610065, 0.775964, 0.776147, 0.550768, 0.143223, 0.441389, 0.569140,
- 0.705100, 0.773644, 0.606220, 0.703238, 0.612903, 0.436659, 0.824488,
- 0.627277, 0.106082, 0.723136, 0.016999, 0.839625, 0.809595, 0.810663,
- 0.668081, 0.234626, 0.076937, 0.889065, 0.882870, 0.333628, 0.365429,
- 0.486129, 0.587970, 0.057009, 0.581957, 0.600085, 0.655538, 0.193640,
- 0.430799, 0.044923, 0.232307, 0.223701, 0.294565, 0.914945, 0.055483,
- 0.651296, 0.679708, 0.574450, 0.035493, 0.503189, 0.757500, 0.079470,
- 0.888302, 0.149663, 0.032319, 0.437056, 0.097079, 0.104068, 0.667837,
- 0.608753, 0.985992, 0.956877, 0.502762, 0.664693, 0.185675, 0.100833,
- 0.287271, 0.994018, 0.273446, 0.403882, 0.171575, 0.978393, 0.867855,
- 0.484603, 0.977294, 0.034639, 0.959990, 0.748314, 0.283578, 0.432752,
- 0.762108, 0.838771, 0.859127, 0.795434, 0.855464, 0.662252, 0.470412,
- 0.685659, 0.917722, 0.640034, 0.599139, 0.188330, 0.812006, 0.345836,
- 0.098178, 0.892514, 0.318552, 0.184057, 0.318918, 0.179724, 0.290109,
- 0.265450, 0.740165, 0.226020, 0.512284, 0.136235, 0.630360, 0.622272,
- 0.050356, 0.516984, 0.774438, 0.020600, 0.363872, 0.707480, 0.795923,
- 0.712027, 0.969573, 0.814051, 0.106540, 0.542009, 0.934843, 0.455031,
- 0.013642, 0.070437, 0.982299, 0.101444, 0.017182, 0.381726, 0.486923,
- 0.708243, 0.827479],
- [0.358315, 0.270049, 0.342954, 0.214249, 0.838752,
- 0.310564, 0.336771, 0.491659, 0.732358, 0.146048, 0.875334, 0.177203,
- 0.340052, 0.229098, 0.470689, 0.199422, 0.013477, 0.437964, 0.834417,
- 0.801902, 0.374778, 0.710470, 0.380647, 0.932384, 0.136688, 0.415547,
- 0.964993, 0.435191, 0.308797, 0.163246, 0.208703, 0.966874, 0.093376,
- 0.265505, 0.059608, 0.236134, 0.535674, 0.631452, 0.664845, 0.282025,
- 0.768258, 0.736782, 0.122918, 0.461566, 0.987912, 0.084404, 0.129183,
- 0.480177, 0.727945, 0.669787, 0.062807, 0.564469, 0.428409, 0.826974,
- 0.384675, 0.966756, 0.210445, 0.272487, 0.317097, 0.370697, 0.125074,
- 0.121726, 0.635255, 0.498751, 0.333923, 0.279037, 0.831576, 0.742353,
- 0.554140, 0.759262, 0.788903, 0.342407, 0.402883, 0.054452, 0.192420,
- 0.161426, 0.594132, 0.626459, 0.311456, 0.580723, 0.643488, 0.466939,
- 0.751366, 0.460380, 0.344418, 0.299266, 0.238402, 0.530317, 0.201173,
- 0.845135, 0.368270, 0.901918, 0.933553, 0.879270, 0.896686, 0.242673,
- 0.645876, 0.221722, 0.671788, 0.696868, 0.613856, 0.594100, 0.345442,
- 0.478488, 0.365499, 0.560186, 0.419429, 0.068769, 0.764765, 0.122668,
- 0.800360, 0.269527, 0.402713, 0.334230, 0.186238, 0.417001, 0.967712,
- 0.853496, 0.310179, 0.990401, 0.731177, 0.343208, 0.224512, 0.855574,
- 0.460790, 0.815310, 0.857852, 0.702756, 0.390921, 0.820575, 0.520593,
- 0.972868, 0.068325, 0.330995, 0.461637, 0.405847, 0.510358, 0.189043,
- 0.743286, 0.146544, 0.298520, 0.047979, 0.553638, 0.834975, 0.179460,
- 0.576135, 0.432415, 0.424000, 0.680846, 0.195304, 0.569258, 0.102375,
- 0.234922, 0.416825, 0.427743, 0.919058, 0.366473, 0.080673, 0.323088,
- 0.458077, 0.866718, 0.887048, 0.954464, 0.853763, 0.211882, 0.257413,
- 0.401140, 0.143234, 0.711803, 0.858469, 0.176694, 0.376906, 0.538888,
- 0.499580, 0.083381, 0.049338, 0.126933, 0.301235, 0.503423, 0.417381,
- 0.790785, 0.244376, 0.054084, 0.341139, 0.605380, 0.327142, 0.557695,
- 0.273406, 0.123661, 0.177072, 0.239960, 0.264496, 0.289714, 0.758051,
- 0.287238, 0.796446, 0.445350, 0.931600, 0.752621, 0.391089, 0.172409,
- 0.373470, 0.299196, 0.900410, 0.786394, 0.402751, 0.604255, 0.859393,
- 0.225666, 0.533102, 0.141675, 0.139006, 0.737770, 0.172180, 0.215538,
- 0.462962, 0.197081, 0.947766, 0.109388, 0.597156, 0.074044, 0.534133,
- 0.892876, 0.319288, 0.078681, 0.906544, 0.855450, 0.069378, 0.791340,
- 0.571897, 0.240928, 0.309915, 0.333618] ),
-
- ([0.451521, 0.147221, 0.793268, 0.134800, 0.476577, 0.611164, 0.619312,
- 0.662313, 0.073580, 0.838679, 0.636280, 0.533280, 0.753319, 0.481674,
- 0.839106, 0.484176, 0.576586, 0.062868, 0.198126, 0.954619, 0.398022,
- 0.234657, 0.817927, 0.585437, 0.603961, 0.899411, 0.980773, 0.156499,
- 0.750755, 0.472213, 0.731285, 0.494858, 0.009735, 0.067598, 0.158452,
- 0.385083, 0.825037, 0.891324, 0.030732, 0.012787, 0.690573, 0.618091,
- 0.941404, 0.972564, 0.452345, 0.037629, 0.619587, 0.371441, 0.042665,
- 0.748924, 0.563768, 0.059786, 0.051729, 0.184606, 0.653706, 0.519852,
- 0.043977, 0.747215, 0.897092, 0.444105, 0.024262, 0.337168, 0.967315,
- 0.534165, 0.961150, 0.055483, 0.688437, 0.551775, 0.772637, 0.360759,
- 0.123692, 0.152776, 0.681478, 0.463057, 0.423811, 0.535783, 0.345561,
- 0.235115, 0.091189, 0.436445, 0.670095, 0.422437, 0.816492, 0.498489,
- 0.707541, 0.433393, 0.543687, 0.553453, 0.551897, 0.490768, 0.920011,
- 0.839228, 0.633168, 0.425855, 0.786615, 0.689840, 0.318613, 0.896237,
- 0.866817, 0.726920, 0.226783, 0.308817, 0.307596, 0.084445, 0.160772,
- 0.229316, 0.231239, 0.697897, 0.066927, 0.558763, 0.952391, 0.189154,
- 0.924924, 0.259499, 0.018006, 0.378399, 0.976012, 0.910947, 0.725455,
- 0.954070, 0.195318, 0.876461, 0.275369, 0.332316, 0.414594, 0.363414,
- 0.215857, 0.237434, 0.001343, 0.156438, 0.333476, 0.033784, 0.501236,
- 0.306101, 0.648152, 0.341227, 0.149297, 0.553819, 0.667592, 0.964965,
- 0.656789, 0.774438, 0.557909, 0.670919, 0.179449, 0.217383, 0.386395,
- 0.838435, 0.873989, 0.828394, 0.092746, 0.520737, 0.948180, 0.431837,
- 0.345286, 0.945158, 0.611988, 0.056398, 0.937925, 0.983947, 0.834864,
- 0.184088, 0.884640, 0.627003, 0.315989, 0.204352, 0.867244, 0.987884,
- 0.573992, 0.854793, 0.193091, 0.874325, 0.561632, 0.929228, 0.918790,
- 0.454176, 0.712302, 0.034577, 0.295877, 0.048708, 0.824549, 0.678182,
- 0.195654, 0.583819, 0.690542, 0.465743, 0.668020, 0.730705, 0.874996,
- 0.692587, 0.291879, 0.267403, 0.550737, 0.108310, 0.472610, 0.692251,
- 0.797235, 0.136631, 0.343059, 0.620319, 0.268136, 0.331645, 0.424207,
- 0.994598, 0.634236, 0.351482, 0.702170, 0.642689, 0.708243, 0.230903,
- 0.277017, 0.210700, 0.657064, 0.234046, 0.240455, 0.004852, 0.208808,
- 0.068270, 0.938200, 0.773156, 0.259468, 0.740928, 0.273110, 0.957274,
- 0.786981, 0.839503, 0.206091, 0.446608, 0.477462, 0.517289, 0.109989,
- 0.365703, 0.971221],
- [0.322975, 0.414170, 0.161146, 0.219434, 0.685011,
- 0.207119, 0.124562, 0.313554, 0.680383, 0.204607, 0.926401, 0.123031,
- 0.342319, 0.160562, 0.383025, 0.263413, 0.031530, 0.278214, 0.854517,
- 0.938668, 0.207718, 0.530081, 0.599408, 0.967141, 0.060306, 0.216206,
- 0.956149, 0.457582, 0.287160, 0.123662, 0.170455, 0.944915, 0.075664,
- 0.367949, 0.137354, 0.245977, 0.789458, 0.601613, 0.753918, 0.205538,
- 0.801701, 0.727608, 0.099538, 0.372815, 0.980670, 0.128872, 0.153952,
- 0.733913, 0.697334, 0.832264, 0.048116, 0.476656, 0.542969, 0.813115,
- 0.428087, 0.974934, 0.283452, 0.267722, 0.308373, 0.467845, 0.073733,
- 0.060755, 0.726314, 0.632607, 0.207968, 0.198739, 0.724649, 0.827431,
- 0.659246, 0.606561, 0.804978, 0.605795, 0.421802, 0.080890, 0.184399,
- 0.042613, 0.669469, 0.636515, 0.163279, 0.506129, 0.443891, 0.538560,
- 0.687417, 0.616605, 0.243001, 0.421577, 0.417744, 0.332821, 0.104680,
- 0.814680, 0.274723, 0.854675, 0.928105, 0.822819, 0.907391, 0.392828,
- 0.560366, 0.167488, 0.771640, 0.421482, 0.502021, 0.705366, 0.356323,
- 0.236132, 0.465837, 0.673047, 0.271604, 0.044967, 0.875918, 0.101957,
- 0.690344, 0.418263, 0.416007, 0.385675, 0.177956, 0.381637, 0.926377,
- 0.834779, 0.212896, 0.991925, 0.837922, 0.493060, 0.257955, 0.881184,
- 0.455624, 0.759888, 0.797075, 0.476411, 0.546274, 0.653626, 0.437864,
- 0.979247, 0.101421, 0.310239, 0.301380, 0.315334, 0.540806, 0.179717,
- 0.803455, 0.157591, 0.320087, 0.061332, 0.563749, 0.755219, 0.043938,
- 0.411661, 0.403751, 0.445964, 0.558204, 0.265296, 0.639173, 0.087912,
- 0.230078, 0.404120, 0.337301, 0.932361, 0.434332, 0.084389, 0.343341,
- 0.257858, 0.761906, 0.918835, 0.952784, 0.774380, 0.105933, 0.159839,
- 0.830403, 0.338071, 0.526166, 0.863985, 0.233685, 0.379596, 0.616285,
- 0.618324, 0.069956, 0.031873, 0.139768, 0.470940, 0.707807, 0.243367,
- 0.727987, 0.305121, 0.104586, 0.262189, 0.546923, 0.339179, 0.566545,
- 0.340525, 0.118514, 0.187525, 0.391617, 0.309406, 0.182629, 0.782616,
- 0.233684, 0.765575, 0.523726, 0.866878, 0.699958, 0.572039, 0.237482,
- 0.526532, 0.374557, 0.928282, 0.707831, 0.618044, 0.446578, 0.624965,
- 0.199537, 0.468197, 0.182506, 0.083061, 0.585536, 0.276978, 0.076367,
- 0.358145, 0.224962, 0.838192, 0.129973, 0.763684, 0.229108, 0.557319,
- 0.866519, 0.293349, 0.163828, 0.895601, 0.903358, 0.058000, 0.789358,
- 0.591071, 0.270399, 0.131062, 0.486600] ),
-
- ([0.965209, 0.133641, 0.925626, 0.133671, 0.650899, 0.231605, 0.871517,
- 0.258309, 0.107364, 0.016541, 0.557054, 0.607166, 0.550859, 0.089724,
- 0.176702, 0.195593, 0.110752, 0.006592, 0.188025, 0.227668, 0.951659,
- 0.533219, 0.454115, 0.087741, 0.069246, 0.349925, 0.138401, 0.295358,
- 0.041841, 0.858791, 0.882534, 0.328928, 0.517289, 0.250343, 0.298502,
- 0.725211, 0.718314, 0.486862, 0.306864, 0.359874, 0.746239, 0.357524,
- 0.351665, 0.316630, 0.964873, 0.262246, 0.023408, 0.249794, 0.245796,
- 0.880398, 0.122013, 0.647938, 0.356243, 0.380047, 0.689871, 0.903531,
- 0.270577, 0.325297, 0.047121, 0.595904, 0.687124, 0.936308, 0.360454,
- 0.893399, 0.531205, 0.859523, 0.775628, 0.480361, 0.725822, 0.103824,
- 0.646290, 0.916501, 0.010987, 0.299142, 0.889737, 0.833583, 0.093417,
- 0.933103, 0.000305, 0.876553, 0.907254, 0.722800, 0.753166, 0.794946,
- 0.267495, 0.777764, 0.127628, 0.590930, 0.697531, 0.709616, 0.483627,
- 0.130345, 0.711173, 0.345744, 0.520463, 0.122745, 0.331400, 0.202582,
- 0.050539, 0.876949, 0.126804, 0.374828, 0.118503, 0.737968, 0.546495,
- 0.997009, 0.497635, 0.612384, 0.835261, 0.933500, 0.093997, 0.487197,
- 0.310099, 0.853481, 0.290597, 0.349590, 0.279397, 0.346660, 0.761834,
- 0.412946, 0.385571, 0.236427, 0.789911, 0.056154, 0.653279, 0.746544,
- 0.614765, 0.381603, 0.023560, 0.677328, 0.848170, 0.798975, 0.655934,
- 0.248329, 0.483566, 0.540361, 0.778741, 0.762841, 0.533067, 0.513596,
- 0.370281, 0.751061, 0.822260, 0.399396, 0.450819, 0.748253, 0.974914,
- 0.399030, 0.267159, 0.363384, 0.118046, 0.538774, 0.151311, 0.795740,
- 0.339244, 0.937040, 0.334025, 0.454329, 0.426740, 0.940641, 0.494705,
- 0.837642, 0.924558, 0.536699, 0.328990, 0.329020, 0.032716, 0.946013,
- 0.914975, 0.064608, 0.384930, 0.804102, 0.159703, 0.529588, 0.234169,
- 0.837001, 0.106906, 0.039155, 0.077731, 0.436689, 0.387310, 0.760826,
- 0.253212, 0.043825, 0.592669, 0.433638, 0.536180, 0.742943, 0.855220,
- 0.441084, 0.271157, 0.976867, 0.412976, 0.393719, 0.067049, 0.786706,
- 0.443129, 0.877956, 0.588458, 0.483413, 0.943754, 0.526688, 0.473434,
- 0.156957, 0.945952, 0.069094, 0.910062, 0.930143, 0.837275, 0.514573,
- 0.902127, 0.362255, 0.077548, 0.128025, 0.755486, 0.909848, 0.088778,
- 0.352489, 0.816553, 0.850124, 0.599902, 0.334941, 0.993927, 0.573504,
- 0.227882, 0.212073, 0.094333, 0.651753, 0.576739, 0.812311, 0.504532,
- 0.587451, 0.634816],
- [0.302431, 0.592346, 0.385344, 0.262467, 0.590451,
- 0.183795, 0.213462, 0.439501, 0.685453, 0.160185, 0.933631, 0.128044,
- 0.473315, 0.155567, 0.492202, 0.220253, 0.019522, 0.469708, 0.877853,
- 0.882415, 0.430326, 0.645252, 0.298033, 0.974497, 0.075881, 0.454331,
- 0.980756, 0.353203, 0.227064, 0.112352, 0.204441, 0.986582, 0.111204,
- 0.360922, 0.104295, 0.042607, 0.664624, 0.575153, 0.703935, 0.219955,
- 0.724316, 0.760176, 0.086626, 0.569313, 0.985771, 0.070120, 0.125450,
- 0.608872, 0.735175, 0.869160, 0.116281, 0.382006, 0.535477, 0.916268,
- 0.339548, 0.951149, 0.269138, 0.158267, 0.227921, 0.496810, 0.078373,
- 0.109946, 0.857936, 0.460175, 0.325318, 0.226608, 0.881037, 0.765901,
- 0.643060, 0.624702, 0.860348, 0.550049, 0.440815, 0.045541, 0.260502,
- 0.076994, 0.577882, 0.615792, 0.139510, 0.358114, 0.612593, 0.347721,
- 0.818075, 0.526762, 0.377618, 0.514885, 0.205696, 0.501251, 0.196091,
- 0.886461, 0.334135, 0.829124, 0.919315, 0.913637, 0.931191, 0.463876,
- 0.534980, 0.183099, 0.612192, 0.441730, 0.502768, 0.648400, 0.513146,
- 0.572191, 0.598630, 0.502384, 0.334881, 0.031650, 0.855085, 0.124462,
- 0.852059, 0.450404, 0.460454, 0.470191, 0.387106, 0.341040, 0.953467,
- 0.868460, 0.346095, 0.991675, 0.840988, 0.432867, 0.309167, 0.832854,
- 0.502416, 0.631140, 0.913146, 0.646113, 0.533057, 0.744471, 0.344817,
- 0.940144, 0.095737, 0.351065, 0.352773, 0.470006, 0.334397, 0.168739,
- 0.758467, 0.118992, 0.163775, 0.065261, 0.683652, 0.880562, 0.097123,
- 0.524062, 0.373206, 0.612702, 0.639353, 0.118260, 0.626205, 0.073664,
- 0.238101, 0.415854, 0.550570, 0.891418, 0.355098, 0.070208, 0.362777,
- 0.318568, 0.738166, 0.900724, 0.976352, 0.702925, 0.146500, 0.299967,
- 0.705262, 0.364984, 0.552743, 0.965066, 0.116578, 0.213095, 0.466038,
- 0.747374, 0.067506, 0.087477, 0.178816, 0.416269, 0.468249, 0.214696,
- 0.835123, 0.118108, 0.025186, 0.379601, 0.633495, 0.177899, 0.682522,
- 0.295777, 0.141661, 0.153813, 0.116872, 0.401177, 0.173447, 0.851914,
- 0.213767, 0.629566, 0.332266, 0.909032, 0.721796, 0.678533, 0.154774,
- 0.709337, 0.292937, 0.943155, 0.633317, 0.467546, 0.571542, 0.892620,
- 0.209587, 0.472640, 0.425492, 0.096146, 0.488989, 0.063471, 0.114715,
- 0.354080, 0.168293, 0.811268, 0.093427, 0.730772, 0.163385, 0.495506,
- 0.936379, 0.234286, 0.082734, 0.884049, 0.750206, 0.102785, 0.857904,
- 0.691171, 0.194803, 0.207255, 0.440377] ),
-
- ([0.929533, 0.249916, 0.651570, 0.752678, 0.825922, 0.961516, 0.715232,
- 0.981933, 0.119022, 0.782250, 0.481582, 0.056917, 0.710440, 0.744163,
- 0.024689, 0.800104, 0.911008, 0.647359, 0.041017, 0.232368, 0.420331,
- 0.972259, 0.720145, 0.170141, 0.315378, 0.856197, 0.640889, 0.589434,
- 0.705618, 0.666005, 0.599170, 0.539232, 0.209906, 0.197089, 0.773492,
- 0.884823, 0.912564, 0.031281, 0.134800, 0.662252, 0.953429, 0.083590,
- 0.506851, 0.325632, 0.409558, 0.869930, 0.182592, 0.668203, 0.624042,
- 0.526902, 0.504379, 0.698263, 0.637928, 0.114566, 0.312449, 0.251686,
- 0.882595, 0.233741, 0.669393, 0.622059, 0.787561, 0.489059, 0.765893,
- 0.989288, 0.460860, 0.828913, 0.414533, 0.928587, 0.097812, 0.293558,
- 0.037843, 0.780816, 0.274758, 0.202918, 0.556444, 0.165197, 0.783349,
- 0.314676, 0.083987, 0.416028, 0.162694, 0.984741, 0.835170, 0.224250,
- 0.584674, 0.860591, 0.152470, 0.265755, 0.248909, 0.139317, 0.058779,
- 0.096744, 0.944182, 0.921293, 0.241127, 0.098422, 0.931639, 0.690481,
- 0.872860, 0.751366, 0.806818, 0.453597, 0.179449, 0.021455, 0.496414,
- 0.568194, 0.155065, 0.138371, 0.045839, 0.791528, 0.335582, 0.547716,
- 0.354442, 0.581622, 0.034608, 0.318491, 0.513718, 0.181249, 0.948485,
- 0.786798, 0.905820, 0.516587, 0.536851, 0.716880, 0.717704, 0.441359,
- 0.084780, 0.761498, 0.027741, 0.358196, 0.852809, 0.501877, 0.120792,
- 0.747978, 0.220954, 0.849330, 0.187933, 0.638630, 0.233589, 0.089114,
- 0.067476, 0.544877, 0.450301, 0.348674, 0.182867, 0.909635, 0.510178,
- 0.770287, 0.334483, 0.578784, 0.314920, 0.170507, 0.500961, 0.340342,
- 0.237617, 0.467055, 0.306589, 0.059359, 0.262856, 0.654500, 0.310953,
- 0.439802, 0.464888, 0.610065, 0.777306, 0.944517, 0.730033, 0.510666,
- 0.075198, 0.904721, 0.129185, 0.142705, 0.374828, 0.350352, 0.847346,
- 0.885556, 0.787927, 0.592059, 0.075533, 0.650136, 0.612690, 0.086581,
- 0.772607, 0.553880, 0.838374, 0.616688, 0.701407, 0.613178, 0.565600,
- 0.316538, 0.647694, 0.234718, 0.499344, 0.574175, 0.226051, 0.787072,
- 0.170141, 0.342265, 0.180517, 0.033082, 0.040284, 0.888180, 0.585284,
- 0.705618, 0.150731, 0.514817, 0.852107, 0.006226, 0.465651, 0.283395,
- 0.950774, 0.309885, 0.570208, 0.269387, 0.748466, 0.855129, 0.878201,
- 0.383007, 0.874722, 0.702322, 0.005676, 0.285348, 0.017823, 0.740684,
- 0.467086, 0.431471, 0.059359, 0.025330, 0.349376, 0.771599, 0.952605,
- 0.225471, 0.121464],
- [0.471172, 0.394669, 0.206750, 0.210992, 0.672674,
- 0.219721, 0.244692, 0.426030, 0.784261, 0.125930, 0.920721, 0.154459,
- 0.450891, 0.147751, 0.367723, 0.353484, 0.026113, 0.408033, 0.834816,
- 0.836353, 0.222549, 0.727688, 0.436814, 0.937279, 0.062492, 0.322380,
- 0.970168, 0.358693, 0.165828, 0.163289, 0.179660, 0.946080, 0.107585,
- 0.214507, 0.120466, 0.146463, 0.513517, 0.744142, 0.796061, 0.229379,
- 0.872125, 0.699375, 0.097177, 0.456963, 0.983115, 0.103819, 0.067400,
- 0.572813, 0.619288, 0.738678, 0.064006, 0.534990, 0.457646, 0.821854,
- 0.245365, 0.935265, 0.292294, 0.273248, 0.484045, 0.650145, 0.134589,
- 0.129359, 0.760950, 0.500222, 0.244806, 0.295520, 0.888711, 0.794874,
- 0.648125, 0.671853, 0.861657, 0.618463, 0.418073, 0.037680, 0.213474,
- 0.081569, 0.498616, 0.466083, 0.254703, 0.579328, 0.489857, 0.365154,
- 0.823990, 0.691592, 0.177938, 0.402626, 0.413972, 0.432276, 0.128408,
- 0.861022, 0.334743, 0.852509, 0.905923, 0.855449, 0.907655, 0.449490,
- 0.525716, 0.146824, 0.576212, 0.621424, 0.631967, 0.680759, 0.213491,
- 0.453037, 0.455632, 0.589247, 0.386547, 0.051896, 0.834187, 0.065552,
- 0.821578, 0.352428, 0.257310, 0.496232, 0.325953, 0.415318, 0.944347,
- 0.879332, 0.271775, 0.994542, 0.755022, 0.297164, 0.397653, 0.922277,
- 0.248507, 0.646424, 0.828524, 0.605859, 0.566800, 0.766935, 0.501635,
- 0.968145, 0.101199, 0.250424, 0.261777, 0.417199, 0.420268, 0.129902,
- 0.670874, 0.244133, 0.465330, 0.072836, 0.635216, 0.847806, 0.110087,
- 0.366808, 0.501077, 0.518786, 0.719245, 0.116495, 0.614688, 0.075322,
- 0.230603, 0.497451, 0.382493, 0.916194, 0.445191, 0.092338, 0.298070,
- 0.477992, 0.755918, 0.914011, 0.974732, 0.707787, 0.173469, 0.199932,
- 0.765572, 0.213141, 0.596297, 0.892776, 0.147179, 0.364556, 0.506639,
- 0.737935, 0.078835, 0.081713, 0.207005, 0.301130, 0.607415, 0.176493,
- 0.729900, 0.207783, 0.024178, 0.266947, 0.655454, 0.133159, 0.598460,
- 0.426653, 0.098941, 0.108835, 0.144931, 0.394514, 0.293194, 0.870920,
- 0.156846, 0.751377, 0.464677, 0.895932, 0.790477, 0.579755, 0.462048,
- 0.682392, 0.230107, 0.921158, 0.641127, 0.610895, 0.569350, 0.699673,
- 0.178217, 0.276934, 0.170802, 0.081585, 0.765277, 0.194187, 0.089230,
- 0.378231, 0.151939, 0.827206, 0.093455, 0.748796, 0.175005, 0.362430,
- 0.899749, 0.406536, 0.105491, 0.936633, 0.825872, 0.095697, 0.877409,
- 0.610769, 0.203597, 0.204503, 0.606680] ),
-
- ([0.142003, 0.751518, 0.465590, 0.234352, 0.876461, 0.696310, 0.339915,
- 0.668569, 0.669485, 0.761986, 0.382611, 0.085208, 0.223121, 0.575793,
- 0.773675, 0.736900, 0.707907, 0.110324, 0.562853, 0.794153, 0.569628,
- 0.058077, 0.192145, 0.244758, 0.713095, 0.294137, 0.598560, 0.021302,
- 0.594043, 0.332591, 0.677908, 0.513382, 0.250404, 0.183752, 0.391614,
- 0.120975, 0.804621, 0.517899, 0.296945, 0.005188, 0.467360, 0.541704,
- 0.782586, 0.692190, 0.574999, 0.494095, 0.790277, 0.687185, 0.691214,
- 0.167272, 0.304422, 0.754418, 0.304331, 0.359569, 0.390179, 0.019105,
- 0.151738, 0.666005, 0.061647, 0.548479, 0.702445, 0.513138, 0.761681,
- 0.566820, 0.828913, 0.844234, 0.733970, 0.962340, 0.199927, 0.361064,
- 0.069002, 0.240516, 0.425275, 0.728690, 0.705344, 0.581744, 0.483444,
- 0.649129, 0.166875, 0.158025, 0.464034, 0.210852, 0.317911, 0.366222,
- 0.155736, 0.419538, 0.917020, 0.133152, 0.511338, 0.316782, 0.250801,
- 0.949675, 0.520859, 0.593127, 0.629414, 0.788903, 0.524155, 0.101291,
- 0.024079, 0.566149, 0.494308, 0.176244, 0.628986, 0.295633, 0.322825,
- 0.167791, 0.627735, 0.600818, 0.638203, 0.092868, 0.946715, 0.734642,
- 0.188726, 0.812616, 0.275399, 0.765618, 0.321360, 0.641591, 0.136143,
- 0.086184, 0.587024, 0.794610, 0.283456, 0.899930, 0.004608, 0.577685,
- 0.214942, 0.842891, 0.014191, 0.729667, 0.074770, 0.396619, 0.650868,
- 0.820124, 0.731040, 0.247932, 0.970763, 0.110355, 0.307810, 0.252602,
- 0.260140, 0.783593, 0.954222, 0.158452, 0.058901, 0.950316, 0.130284,
- 0.744774, 0.529954, 0.335520, 0.192419, 0.533708, 0.205237, 0.053743,
- 0.558275, 0.730583, 0.640339, 0.378185, 0.233345, 0.548448, 0.008240,
- 0.910215, 0.980041, 0.574084, 0.163976, 0.055635, 0.910550, 0.331095,
- 0.211127, 0.213782, 0.784875, 0.696524, 0.101505, 0.585772, 0.795099,
- 0.327189, 0.299417, 0.007965, 0.117161, 0.752190, 0.041505, 0.717429,
- 0.011841, 0.287454, 0.223609, 0.454909, 0.755211, 0.429151, 0.445753,
- 0.812281, 0.180944, 0.881344, 0.246742, 0.230079, 0.115024, 0.875149,
- 0.059297, 0.551988, 0.484176, 0.934996, 0.917264, 0.541856, 0.379467,
- 0.748222, 0.445784, 0.270180, 0.856349, 0.294778, 0.166387, 0.775903,
- 0.751946, 0.892605, 0.647328, 0.909574, 0.301675, 0.315500, 0.531083,
- 0.764855, 0.835444, 0.639454, 0.970031, 0.603778, 0.335368, 0.973693,
- 0.501480, 0.682699, 0.136326, 0.732688, 0.893765, 0.884610, 0.549852,
- 0.605731, 0.993652],
- [0.253504, 0.534326, 0.251760, 0.237928, 0.664410,
- 0.126609, 0.132684, 0.418006, 0.666470, 0.215330, 0.920184, 0.117055,
- 0.355147, 0.170783, 0.327884, 0.256327, 0.027910, 0.470747, 0.880988,
- 0.889491, 0.479139, 0.521001, 0.393600, 0.972722, 0.085265, 0.415580,
- 0.972281, 0.482544, 0.346985, 0.134187, 0.148290, 0.967033, 0.064457,
- 0.308757, 0.091188, 0.106056, 0.666364, 0.644436, 0.738676, 0.157409,
- 0.796504, 0.819582, 0.161226, 0.572395, 0.985212, 0.056289, 0.124700,
- 0.684193, 0.738343, 0.858700, 0.119422, 0.531593, 0.540814, 0.806578,
- 0.255111, 0.953920, 0.375051, 0.132877, 0.304271, 0.424460, 0.108830,
- 0.140324, 0.726330, 0.390954, 0.344656, 0.297103, 0.836113, 0.845710,
- 0.541340, 0.593495, 0.799546, 0.607697, 0.385357, 0.059555, 0.275257,
- 0.043167, 0.741677, 0.452371, 0.186232, 0.458056, 0.634944, 0.440253,
- 0.781245, 0.585590, 0.386615, 0.299644, 0.311233, 0.638113, 0.139079,
- 0.818473, 0.272349, 0.785139, 0.910448, 0.847825, 0.909313, 0.463918,
- 0.570289, 0.136830, 0.605815, 0.361042, 0.480547, 0.633562, 0.233467,
- 0.466913, 0.601511, 0.711690, 0.285150, 0.039565, 0.908040, 0.081223,
- 0.741324, 0.409105, 0.448214, 0.349451, 0.247382, 0.355812, 0.891038,
- 0.892278, 0.230916, 0.983817, 0.739059, 0.550368, 0.366082, 0.896731,
- 0.351754, 0.755379, 0.861318, 0.627702, 0.478943, 0.759569, 0.411450,
- 0.968553, 0.062213, 0.275821, 0.331454, 0.331865, 0.397601, 0.223281,
- 0.710319, 0.145954, 0.317140, 0.057056, 0.578738, 0.816384, 0.047016,
- 0.525610, 0.336833, 0.552102, 0.683525, 0.119884, 0.484933, 0.066421,
- 0.280478, 0.551438, 0.287947, 0.877956, 0.468814, 0.059983, 0.421428,
- 0.275246, 0.737221, 0.887111, 0.973068, 0.761741, 0.125024, 0.179706,
- 0.712262, 0.175115, 0.647305, 0.929135, 0.099306, 0.232157, 0.620496,
- 0.679094, 0.034862, 0.051003, 0.142482, 0.370931, 0.493494, 0.258032,
- 0.837991, 0.177554, 0.086700, 0.207737, 0.563446, 0.417696, 0.483721,
- 0.268154, 0.138681, 0.203293, 0.290859, 0.364657, 0.312939, 0.843912,
- 0.214481, 0.670471, 0.528396, 0.848559, 0.746439, 0.552310, 0.207122,
- 0.532526, 0.364218, 0.940528, 0.635287, 0.556140, 0.505382, 0.879060,
- 0.255610, 0.447759, 0.191044, 0.081017, 0.529700, 0.163505, 0.202604,
- 0.245266, 0.199667, 0.866675, 0.114402, 0.669242, 0.149501, 0.338364,
- 0.852990, 0.361792, 0.111204, 0.925449, 0.829030, 0.085374, 0.849162,
- 0.590237, 0.245031, 0.150276, 0.340917] ),
-
- ([0.564470, 0.693442, 0.879666, 0.107578, 0.513840, 0.306131, 0.271432,
- 0.947142, 0.450636, 0.831721, 0.927030, 0.669912, 0.940580, 0.550462,
- 0.742088, 0.047792, 0.156682, 0.041353, 0.661550, 0.293374, 0.382855,
- 0.755455, 0.113773, 0.575396, 0.667714, 0.981658, 0.235786, 0.755394,
- 0.535142, 0.986694, 0.045747, 0.376049, 0.157872, 0.609790, 0.218940,
- 0.432936, 0.899991, 0.093966, 0.623646, 0.960265, 0.634938, 0.434828,
- 0.272652, 0.962981, 0.745201, 0.027924, 0.847713, 0.725242, 0.209784,
- 0.896725, 0.451704, 0.027467, 0.685934, 0.281228, 0.746239, 0.302713,
- 0.991058, 0.869991, 0.129826, 0.263619, 0.891629, 0.455061, 0.113681,
- 0.031587, 0.604541, 0.292825, 0.550615, 0.298959, 0.918088, 0.950591,
- 0.874081, 0.555651, 0.337840, 0.920957, 0.003021, 0.911557, 0.164525,
- 0.785180, 0.069155, 0.545976, 0.909726, 0.206366, 0.622486, 0.315073,
- 0.955535, 0.534104, 0.471877, 0.548936, 0.864864, 0.301584, 0.816462,
- 0.569140, 0.248146, 0.396710, 0.824427, 0.958556, 0.593219, 0.188147,
- 0.315226, 0.114170, 0.963958, 0.387860, 0.701682, 0.114353, 0.974639,
- 0.930906, 0.847865, 0.431928, 0.945891, 0.654439, 0.999481, 0.524003,
- 0.648366, 0.056551, 0.442701, 0.830317, 0.540605, 0.916623, 0.047761,
- 0.210761, 0.907559, 0.057924, 0.353465, 0.353740, 0.805231, 0.034425,
- 0.349071, 0.186407, 0.218818, 0.022553, 0.609790, 0.818262, 0.339518,
- 0.699057, 0.941710, 0.048799, 0.366863, 0.386822, 0.193091, 0.971587,
- 0.742851, 0.249214, 0.387860, 0.704428, 0.223762, 0.814692, 0.837397,
- 0.778466, 0.696280, 0.612629, 0.387249, 0.216193, 0.143742, 0.201758,
- 0.455000, 0.830653, 0.669515, 0.372478, 0.015076, 0.776055, 0.982635,
- 0.804102, 0.187414, 0.882138, 0.253090, 0.958678, 0.585559, 0.802576,
- 0.742302, 0.492080, 0.080996, 0.509293, 0.115177, 0.964324, 0.139897,
- 0.163701, 0.840327, 0.129429, 0.387829, 0.896115, 0.583880, 0.587237,
- 0.559923, 0.524461, 0.004425, 0.077090, 0.491440, 0.744163, 0.853969,
- 0.196173, 0.306101, 0.819422, 0.792077, 0.822077, 0.457564, 0.307962,
- 0.819178, 0.022309, 0.780969, 0.850459, 0.734977, 0.731315, 0.210089,
- 0.555071, 0.529038, 0.975768, 0.317301, 0.009491, 0.108585, 0.930784,
- 0.331614, 0.451064, 0.271065, 0.586749, 0.791589, 0.126011, 0.326701,
- 0.309183, 0.489364, 0.369976, 0.277749, 0.072176, 0.861965, 0.439833,
- 0.960906, 0.647023, 0.485916, 0.629292, 0.058443, 0.527085, 0.831874,
- 0.698630, 0.385174],
- [0.495618, 0.441464, 0.557017, 0.272405, 0.594053,
- 0.213913, 0.095401, 0.330141, 0.756265, 0.213387, 0.945661, 0.215836,
- 0.478364, 0.166789, 0.265475, 0.224600, 0.011292, 0.356525, 0.881330,
- 0.899717, 0.340867, 0.762765, 0.398643, 0.959794, 0.076373, 0.411068,
- 0.956087, 0.425671, 0.267392, 0.086429, 0.230950, 0.969761, 0.077102,
- 0.364494, 0.110616, 0.201659, 0.655970, 0.529764, 0.775525, 0.178886,
- 0.732134, 0.748248, 0.129081, 0.515934, 0.980429, 0.110490, 0.140175,
- 0.754832, 0.623327, 0.732077, 0.072652, 0.447853, 0.313085, 0.880703,
- 0.231171, 0.966561, 0.265433, 0.153128, 0.496576, 0.485365, 0.232871,
- 0.147871, 0.742083, 0.608403, 0.367386, 0.242410, 0.889346, 0.726072,
- 0.567069, 0.541939, 0.876543, 0.588447, 0.463390, 0.048924, 0.332279,
- 0.112237, 0.583767, 0.708608, 0.194895, 0.406334, 0.623418, 0.521972,
- 0.732477, 0.736640, 0.234700, 0.436454, 0.332746, 0.552401, 0.149503,
- 0.896181, 0.132756, 0.723063, 0.864270, 0.737282, 0.896088, 0.500499,
- 0.435932, 0.208168, 0.772405, 0.552217, 0.466660, 0.676089, 0.363508,
- 0.511280, 0.383914, 0.680339, 0.244844, 0.037614, 0.821954, 0.097665,
- 0.866579, 0.369076, 0.428357, 0.289866, 0.218990, 0.386788, 0.958202,
- 0.895966, 0.332165, 0.987714, 0.837437, 0.415629, 0.234766, 0.762833,
- 0.575631, 0.802375, 0.868664, 0.547072, 0.361121, 0.787932, 0.372006,
- 0.962287, 0.132690, 0.364041, 0.272380, 0.455698, 0.386066, 0.211024,
- 0.726992, 0.223019, 0.238927, 0.028980, 0.619901, 0.829672, 0.114443,
- 0.530184, 0.384064, 0.570925, 0.593174, 0.172192, 0.479118, 0.055151,
- 0.175546, 0.543465, 0.386083, 0.921652, 0.407870, 0.111462, 0.413042,
- 0.409689, 0.804235, 0.840629, 0.970208, 0.698751, 0.221048, 0.330415,
- 0.674973, 0.245212, 0.661346, 0.911649, 0.197003, 0.272622, 0.678364,
- 0.645042, 0.082575, 0.073088, 0.102925, 0.483113, 0.540776, 0.190397,
- 0.789439, 0.199725, 0.028167, 0.298789, 0.666024, 0.294616, 0.698567,
- 0.244601, 0.071771, 0.145942, 0.372541, 0.500928, 0.208398, 0.810336,
- 0.256493, 0.752106, 0.419867, 0.844875, 0.739738, 0.589028, 0.172165,
- 0.576336, 0.388612, 0.942727, 0.605002, 0.466328, 0.573021, 0.868937,
- 0.193609, 0.484958, 0.312042, 0.164538, 0.625321, 0.355834, 0.114481,
- 0.326462, 0.120043, 0.885765, 0.155206, 0.625728, 0.175445, 0.336309,
- 0.853385, 0.299478, 0.164527, 0.921071, 0.777973, 0.099571, 0.860153,
- 0.491092, 0.205249, 0.258365, 0.463333] ),
-
- ([0.870357, 0.935087, 0.150121, 0.356639, 0.240822, 0.138127, 0.380718,
- 0.045442, 0.429823, 0.562517, 0.242409, 0.731742, 0.138768, 0.464309,
- 0.042634, 0.353954, 0.804498, 0.131626, 0.514969, 0.766320, 0.348430,
- 0.478835, 0.791864, 0.209052, 0.130772, 0.994385, 0.910764, 0.898007,
- 0.891110, 0.198492, 0.884426, 0.139439, 0.956359, 0.266915, 0.867061,
- 0.876614, 0.498032, 0.976684, 0.447493, 0.073946, 0.119053, 0.630573,
- 0.600482, 0.846004, 0.552141, 0.116428, 0.327250, 0.735923, 0.750786,
- 0.757378, 0.517228, 0.051332, 0.154057, 0.109104, 0.061281, 0.662770,
- 0.406384, 0.361095, 0.748314, 0.171056, 0.313822, 0.497330, 0.976440,
- 0.850581, 0.317667, 0.872921, 0.809565, 0.273690, 0.267159, 0.363384,
- 0.411298, 0.023469, 0.772149, 0.742088, 0.386822, 0.400220, 0.916929,
- 0.442579, 0.064089, 0.528459, 0.617023, 0.361950, 0.246193, 0.770837,
- 0.399457, 0.861446, 0.465133, 0.854518, 0.888180, 0.620563, 0.269173,
- 0.617115, 0.776025, 0.500992, 0.574511, 0.777551, 0.563921, 0.076479,
- 0.612659, 0.639058, 0.849269, 0.985076, 0.504776, 0.129612, 0.444014,
- 0.759636, 0.994293, 0.087008, 0.104495, 0.293527, 0.368694, 0.193701,
- 0.153478, 0.596973, 0.102481, 0.468856, 0.776269, 0.000702, 0.251717,
- 0.723014, 0.271676, 0.463393, 0.131748, 0.881924, 0.039613, 0.138493,
- 0.309763, 0.585681, 0.585986, 0.857418, 0.442610, 0.969939, 0.326548,
- 0.684713, 0.991852, 0.034211, 0.470840, 0.201971, 0.346904, 0.505295,
- 0.767449, 0.676412, 0.387707, 0.600116, 0.391675, 0.770318, 0.017975,
- 0.595965, 0.757439, 0.948088, 0.700552, 0.613239, 0.533708, 0.236518,
- 0.525773, 0.517441, 0.647847, 0.495041, 0.844569, 0.346507, 0.555956,
- 0.851680, 0.996948, 0.169897, 0.562578, 0.461623, 0.167638, 0.785394,
- 0.470077, 0.244209, 0.900052, 0.160161, 0.339549, 0.754509, 0.299173,
- 0.022309, 0.644307, 0.846034, 0.455824, 0.508805, 0.597034, 0.280923,
- 0.122440, 0.276406, 0.932340, 0.943175, 0.172155, 0.982025, 0.925138,
- 0.812067, 0.872494, 0.537828, 0.927244, 0.351482, 0.504379, 0.048799,
- 0.202124, 0.471297, 0.358623, 0.837458, 0.340373, 0.717582, 0.640278,
- 0.463027, 0.035951, 0.847407, 0.312296, 0.141240, 0.505356, 0.444563,
- 0.410382, 0.470290, 0.330546, 0.732871, 0.859432, 0.869991, 0.006806,
- 0.242683, 0.323160, 0.640065, 0.977264, 0.487289, 0.118381, 0.043641,
- 0.434400, 0.305338, 0.724967, 0.322703, 0.671255, 0.025483, 0.922483,
- 0.050966, 0.261727],
- [0.260157, 0.307517, 0.358097, 0.252689, 0.772330,
- 0.168730, 0.199755, 0.263603, 0.796697, 0.181093, 0.908662, 0.220840,
- 0.448967, 0.056864, 0.383428, 0.252245, 0.028268, 0.379121, 0.920537,
- 0.931111, 0.376615, 0.702265, 0.339892, 0.951384, 0.054280, 0.473895,
- 0.985559, 0.437227, 0.257565, 0.131997, 0.163347, 0.974754, 0.051855,
- 0.364200, 0.179886, 0.139106, 0.533888, 0.439360, 0.658220, 0.284960,
- 0.802907, 0.717600, 0.108974, 0.423505, 0.979426, 0.072133, 0.140069,
- 0.642677, 0.641243, 0.648287, 0.086454, 0.332935, 0.442687, 0.900471,
- 0.324827, 0.970455, 0.321905, 0.153388, 0.273655, 0.560316, 0.054492,
- 0.164323, 0.775053, 0.618409, 0.320127, 0.217728, 0.806489, 0.830306,
- 0.422330, 0.576379, 0.884398, 0.516388, 0.381542, 0.044992, 0.252025,
- 0.077069, 0.768432, 0.381270, 0.154768, 0.518110, 0.765505, 0.365825,
- 0.591896, 0.683737, 0.155926, 0.240362, 0.234728, 0.662729, 0.099457,
- 0.899237, 0.244236, 0.906834, 0.903701, 0.839181, 0.900426, 0.410311,
- 0.610486, 0.151047, 0.777519, 0.399258, 0.474944, 0.605231, 0.337552,
- 0.385688, 0.341139, 0.679593, 0.385755, 0.035838, 0.872824, 0.144731,
- 0.756607, 0.337629, 0.336516, 0.400295, 0.349064, 0.239996, 0.890461,
- 0.918159, 0.191377, 0.993292, 0.743830, 0.487235, 0.297947, 0.904181,
- 0.347443, 0.796035, 0.902446, 0.487609, 0.457696, 0.661949, 0.538200,
- 0.961316, 0.048804, 0.252998, 0.376427, 0.402341, 0.368201, 0.151905,
- 0.719359, 0.208973, 0.274783, 0.051515, 0.586169, 0.870502, 0.067245,
- 0.473591, 0.397839, 0.618277, 0.627337, 0.094868, 0.342847, 0.082950,
- 0.306641, 0.610109, 0.216219, 0.850829, 0.415679, 0.109415, 0.430899,
- 0.368500, 0.672157, 0.943332, 0.973869, 0.654748, 0.097660, 0.130777,
- 0.714200, 0.168292, 0.513323, 0.919240, 0.323300, 0.443992, 0.613737,
- 0.690707, 0.038421, 0.054618, 0.152763, 0.333967, 0.530286, 0.307992,
- 0.929752, 0.188744, 0.063666, 0.359969, 0.680815, 0.212698, 0.676648,
- 0.319024, 0.140095, 0.220252, 0.142314, 0.333826, 0.266799, 0.812927,
- 0.297978, 0.767975, 0.598235, 0.890015, 0.710723, 0.567831, 0.346083,
- 0.587204, 0.342478, 0.962254, 0.687791, 0.580150, 0.457589, 0.859200,
- 0.168856, 0.500052, 0.205292, 0.075898, 0.546948, 0.241454, 0.054149,
- 0.449954, 0.299996, 0.883236, 0.178772, 0.792651, 0.196661, 0.379851,
- 0.872677, 0.203970, 0.132733, 0.919790, 0.809352, 0.089786, 0.863894,
- 0.624949, 0.109569, 0.242875, 0.490815] ),
-
- ([0.109653, 0.085360, 0.731498, 0.853023, 0.430921, 0.667531, 0.044008,
- 0.850154, 0.842463, 0.407300, 0.649648, 0.774590, 0.193823, 0.284799,
- 0.957732, 0.577776, 0.450789, 0.762169, 0.762383, 0.691122, 0.074648,
- 0.338389, 0.154241, 0.093356, 0.318003, 0.949950, 0.613880, 0.177160,
- 0.592273, 0.248024, 0.692862, 0.695242, 0.564287, 0.284463, 0.189398,
- 0.568255, 0.137181, 0.636647, 0.224097, 0.835078, 0.972625, 0.503494,
- 0.122288, 0.527024, 0.709952, 0.803125, 0.509537, 0.746971, 0.539415,
- 0.803919, 0.525956, 0.734947, 0.284402, 0.319864, 0.566210, 0.201239,
- 0.650410, 0.001801, 0.450911, 0.708457, 0.795862, 0.755516, 0.436171,
- 0.383374, 0.881466, 0.817835, 0.966979, 0.740532, 0.754509, 0.522599,
- 0.581103, 0.897977, 0.424116, 0.287027, 0.869961, 0.967071, 0.483627,
- 0.850154, 0.901700, 0.897488, 0.136662, 0.294290, 0.014008, 0.558214,
- 0.982940, 0.881375, 0.382244, 0.336375, 0.219855, 0.234382, 0.268654,
- 0.034822, 0.416761, 0.896359, 0.360271, 0.349834, 0.517472, 0.797082,
- 0.100467, 0.709983, 0.227424, 0.659627, 0.420942, 0.757775, 0.442335,
- 0.877346, 0.780511, 0.255074, 0.873501, 0.892941, 0.916623, 0.693625,
- 0.527085, 0.610584, 0.216132, 0.391614, 0.192969, 0.872768, 0.111423,
- 0.358409, 0.599780, 0.532609, 0.408124, 0.707389, 0.391797, 0.153142,
- 0.950774, 0.899533, 0.584887, 0.864986, 0.532609, 0.597858, 0.656850,
- 0.413190, 0.455794, 0.414716, 0.928922, 0.925077, 0.648213, 0.332713,
- 0.394421, 0.429762, 0.743095, 0.080905, 0.651234, 0.661153, 0.027985,
- 0.247139, 0.093509, 0.175176, 0.669027, 0.408185, 0.019929, 0.312784,
- 0.116611, 0.058351, 0.813959, 0.039888, 0.099429, 0.618641, 0.852504,
- 0.195654, 0.112186, 0.306833, 0.299783, 0.180029, 0.804041, 0.150334,
- 0.441664, 0.612049, 0.173437, 0.922910, 0.717612, 0.990204, 0.976043,
- 0.286172, 0.106082, 0.885769, 0.251625, 0.918027, 0.019684, 0.700980,
- 0.376598, 0.907865, 0.366314, 0.522385, 0.547777, 0.201270, 0.932493,
- 0.101688, 0.104434, 0.374615, 0.745384, 0.494430, 0.594440, 0.520707,
- 0.569597, 0.388134, 0.990387, 0.527390, 0.194708, 0.651479, 0.962951,
- 0.529740, 0.670400, 0.134983, 0.616688, 0.817530, 0.144810, 0.255318,
- 0.595294, 0.978668, 0.463027, 0.393689, 0.961913, 0.560747, 0.181127,
- 0.640217, 0.761345, 0.030885, 0.152898, 0.915036, 0.670125, 0.316111,
- 0.344829, 0.997864, 0.640645, 0.704550, 0.035859, 0.496719, 0.945677,
- 0.389813, 0.058412],
- [0.454856, 0.248515, 0.361389, 0.122148, 0.694139,
- 0.146798, 0.280774, 0.412776, 0.702364, 0.163216, 0.902092, 0.093065,
- 0.474958, 0.264249, 0.434468, 0.227983, 0.011746, 0.387684, 0.926212,
- 0.733468, 0.251994, 0.594014, 0.524123, 0.948130, 0.157794, 0.383516,
- 0.975607, 0.466704, 0.307640, 0.100712, 0.141646, 0.956370, 0.042512,
- 0.297531, 0.085487, 0.093468, 0.596480, 0.690076, 0.797975, 0.267221,
- 0.753295, 0.774192, 0.116699, 0.464241, 0.985235, 0.073823, 0.089206,
- 0.447433, 0.719236, 0.815190, 0.046099, 0.489775, 0.405497, 0.906062,
- 0.254434, 0.967531, 0.295697, 0.102913, 0.406725, 0.519415, 0.081144,
- 0.196076, 0.755829, 0.377023, 0.214420, 0.150418, 0.858558, 0.876656,
- 0.635810, 0.630952, 0.729097, 0.625271, 0.333465, 0.042126, 0.224886,
- 0.142931, 0.763860, 0.603410, 0.175108, 0.380019, 0.666179, 0.447647,
- 0.869742, 0.579908, 0.245852, 0.371972, 0.344010, 0.359698, 0.081658,
- 0.833780, 0.219437, 0.796887, 0.949882, 0.901161, 0.913896, 0.377543,
- 0.619674, 0.128213, 0.516002, 0.422384, 0.409693, 0.684524, 0.425780,
- 0.548613, 0.520597, 0.594379, 0.261667, 0.079061, 0.904477, 0.080815,
- 0.801571, 0.404271, 0.580455, 0.402241, 0.263298, 0.523119, 0.942118,
- 0.916117, 0.335429, 0.988195, 0.777338, 0.500755, 0.323573, 0.857648,
- 0.592954, 0.611505, 0.838570, 0.625515, 0.332418, 0.798301, 0.539981,
- 0.981028, 0.122947, 0.425385, 0.327212, 0.369861, 0.378286, 0.154940,
- 0.779355, 0.110862, 0.317416, 0.040495, 0.507705, 0.858675, 0.089329,
- 0.297920, 0.288036, 0.377962, 0.567168, 0.167161, 0.586962, 0.064270,
- 0.234567, 0.532191, 0.422919, 0.913402, 0.394611, 0.032129, 0.312803,
- 0.443883, 0.683181, 0.931617, 0.976537, 0.787270, 0.157918, 0.235750,
- 0.617241, 0.176583, 0.705436, 0.958141, 0.218316, 0.217251, 0.681318,
- 0.793152, 0.079533, 0.080840, 0.214927, 0.437709, 0.604961, 0.227055,
- 0.805453, 0.181182, 0.030641, 0.358724, 0.664910, 0.292232, 0.570454,
- 0.224660, 0.089332, 0.112569, 0.273717, 0.225018, 0.222019, 0.788015,
- 0.214029, 0.802656, 0.590121, 0.912856, 0.734046, 0.469630, 0.260610,
- 0.592389, 0.334603, 0.936535, 0.760104, 0.684230, 0.639625, 0.771056,
- 0.221245, 0.374172, 0.134190, 0.110979, 0.800637, 0.245717, 0.135946,
- 0.260575, 0.133939, 0.933764, 0.118476, 0.528121, 0.136099, 0.495127,
- 0.832425, 0.290466, 0.117380, 0.906839, 0.875183, 0.109638, 0.801086,
- 0.592449, 0.213508, 0.105856, 0.559403] ),
-
- ([0.287667, 0.529618, 0.438673, 0.236427, 0.456221, 0.072512, 0.464156,
- 0.676840, 0.272042, 0.673482, 0.784814, 0.071169, 0.228248, 0.558977,
- 0.351512, 0.662923, 0.676229, 0.723411, 0.223273, 0.037019, 0.087497,
- 0.907071, 0.873074, 0.388348, 0.473739, 0.818476, 0.104709, 0.424421,
- 0.996277, 0.007080, 0.862880, 0.559435, 0.296335, 0.292642, 0.716330,
- 0.555620, 0.577166, 0.157262, 0.296731, 0.267830, 0.969390, 0.006928,
- 0.473403, 0.648152, 0.210730, 0.708121, 0.546007, 0.666372, 0.171728,
- 0.306284, 0.235694, 0.302835, 0.258034, 0.332102, 0.756676, 0.269784,
- 0.221168, 0.601794, 0.748833, 0.617328, 0.408521, 0.918088, 0.353099,
- 0.880612, 0.984344, 0.577532, 0.210608, 0.924131, 0.152379, 0.090884,
- 0.667013, 0.139714, 0.912015, 0.022645, 0.962706, 0.154088, 0.378460,
- 0.355846, 0.691366, 0.702475, 0.199225, 0.288553, 0.306650, 0.824641,
- 0.096835, 0.868343, 0.959380, 0.039155, 0.070467, 0.370739, 0.445662,
- 0.652913, 0.286416, 0.828272, 0.548173, 0.860988, 0.189764, 0.615894,
- 0.550707, 0.794305, 0.867641, 0.499588, 0.208014, 0.170660, 0.195868,
- 0.053896, 0.952147, 0.705496, 0.800104, 0.854976, 0.615955, 0.938505,
- 0.362468, 0.355022, 0.455947, 0.632893, 0.305307, 0.845149, 0.754814,
- 0.402814, 0.383221, 0.411695, 0.785363, 0.725791, 0.214209, 0.293527,
- 0.417158, 0.996002, 0.282022, 0.545701, 0.146947, 0.774834, 0.439955,
- 0.415845, 0.834132, 0.895138, 0.448195, 0.340190, 0.922422, 0.575060,
- 0.575457, 0.964476, 0.429365, 0.197882, 0.796442, 0.096713, 0.484603,
- 0.914396, 0.616108, 0.998077, 0.697958, 0.723258, 0.052217, 0.917264,
- 0.139195, 0.186743, 0.807428, 0.276101, 0.210242, 0.437208, 0.161779,
- 0.411145, 0.191046, 0.630543, 0.617695, 0.278390, 0.740867, 0.503739,
- 0.827418, 0.027253, 0.135472, 0.191687, 0.835658, 0.849696, 0.522507,
- 0.960417, 0.167425, 0.011017, 0.974883, 0.012116, 0.793146, 0.468978,
- 0.624958, 0.019257, 0.501572, 0.986328, 0.659841, 0.542924, 0.712699,
- 0.144322, 0.458937, 0.992523, 0.260903, 0.162633, 0.655873, 0.282632,
- 0.180303, 0.932218, 0.405011, 0.843440, 0.023194, 0.167119, 0.634602,
- 0.140690, 0.743034, 0.082095, 0.567461, 0.362041, 0.672964, 0.501450,
- 0.290262, 0.425428, 0.631581, 0.805994, 0.653279, 0.965941, 0.686575,
- 0.624012, 0.281045, 0.457595, 0.608081, 0.672903, 0.976012, 0.126011,
- 0.542528, 0.656941, 0.295572, 0.808527, 0.938688, 0.628498, 0.584643,
- 0.417402, 0.256569],
- [0.218635, 0.357876, 0.173623, 0.173806, 0.673032,
- 0.189860, 0.351286, 0.442685, 0.692897, 0.138260, 0.929152, 0.187127,
- 0.499222, 0.119533, 0.454319, 0.261703, 0.018971, 0.302934, 0.747664,
- 0.921815, 0.284514, 0.658830, 0.284149, 0.956592, 0.066063, 0.446204,
- 0.972693, 0.393397, 0.309208, 0.095630, 0.181192, 0.938930, 0.067703,
- 0.237331, 0.113878, 0.093320, 0.503422, 0.681623, 0.733120, 0.312091,
- 0.650519, 0.652697, 0.137933, 0.532398, 0.983085, 0.084617, 0.065343,
- 0.549961, 0.745401, 0.892501, 0.074734, 0.519583, 0.376233, 0.753947,
- 0.242325, 0.964071, 0.286072, 0.208462, 0.337912, 0.594345, 0.092390,
- 0.212956, 0.694319, 0.460707, 0.237936, 0.361339, 0.858933, 0.819767,
- 0.467638, 0.727528, 0.746701, 0.532651, 0.330979, 0.050657, 0.332196,
- 0.035503, 0.658197, 0.457472, 0.193841, 0.467948, 0.537894, 0.345733,
- 0.718487, 0.513743, 0.333842, 0.380397, 0.321536, 0.427051, 0.148436,
- 0.799359, 0.348584, 0.849755, 0.868229, 0.841677, 0.909258, 0.539411,
- 0.690853, 0.152109, 0.660805, 0.456971, 0.539072, 0.776359, 0.274709,
- 0.519946, 0.582156, 0.705097, 0.382707, 0.054506, 0.834956, 0.064999,
- 0.809754, 0.418180, 0.407116, 0.378793, 0.226499, 0.431485, 0.869723,
- 0.873152, 0.149430, 0.982588, 0.630468, 0.370831, 0.299135, 0.909328,
- 0.323344, 0.720702, 0.875886, 0.584744, 0.507132, 0.548361, 0.426220,
- 0.959330, 0.112001, 0.223089, 0.350064, 0.521868, 0.493527, 0.204729,
- 0.762551, 0.219292, 0.210416, 0.070511, 0.560222, 0.754688, 0.060908,
- 0.647756, 0.250738, 0.593946, 0.819360, 0.207920, 0.412829, 0.103411,
- 0.364463, 0.585421, 0.424595, 0.913237, 0.494716, 0.067945, 0.427710,
- 0.381549, 0.765270, 0.912343, 0.971849, 0.806889, 0.129748, 0.287356,
- 0.736490, 0.295920, 0.689556, 0.923895, 0.205147, 0.320950, 0.615522,
- 0.694049, 0.058830, 0.072159, 0.210321, 0.362232, 0.547235, 0.186022,
- 0.851536, 0.164144, 0.022905, 0.236097, 0.560682, 0.291979, 0.590515,
- 0.365463, 0.178689, 0.189426, 0.202501, 0.315727, 0.251595, 0.922035,
- 0.244061, 0.671076, 0.500123, 0.894621, 0.834322, 0.546120, 0.309387,
- 0.600686, 0.311961, 0.941726, 0.612745, 0.578015, 0.654615, 0.818524,
- 0.202517, 0.443512, 0.141913, 0.090282, 0.711760, 0.207059, 0.192837,
- 0.374708, 0.308595, 0.899807, 0.086978, 0.753923, 0.143085, 0.494978,
- 0.853515, 0.231696, 0.082054, 0.950877, 0.857621, 0.094328, 0.831074,
- 0.575920, 0.180761, 0.182903, 0.451331] ),
-
- ([0.718009, 0.244209, 0.163427, 0.491195, 0.639515, 0.517624, 0.195013,
- 0.041749, 0.877834, 0.575610, 0.809778, 0.957854, 0.963408, 0.181585,
- 0.894559, 0.093814, 0.741722, 0.717978, 0.750359, 0.202765, 0.042695,
- 0.855434, 0.958098, 0.501022, 0.656911, 0.645558, 0.441786, 0.734794,
- 0.024689, 0.319102, 0.385052, 0.279641, 0.544420, 0.570025, 0.157659,
- 0.305033, 0.906003, 0.607593, 0.907834, 0.533891, 0.356182, 0.756920,
- 0.976928, 0.629597, 0.301828, 0.889828, 0.792657, 0.741111, 0.157048,
- 0.466933, 0.397015, 0.237220, 0.840907, 0.472427, 0.265328, 0.162053,
- 0.831782, 0.022462, 0.572344, 0.441908, 0.184606, 0.928922, 0.562059,
- 0.375927, 0.417127, 0.999023, 0.177313, 0.440596, 0.671804, 0.353252,
- 0.605213, 0.940550, 0.058901, 0.541429, 0.894925, 0.535783, 0.588183,
- 0.739128, 0.304025, 0.177526, 0.593890, 0.805506, 0.529710, 0.483230,
- 0.060884, 0.483535, 0.480575, 0.082461, 0.756981, 0.524247, 0.746330,
- 0.964660, 0.578143, 0.015839, 0.420362, 0.360057, 0.013123, 0.699393,
- 0.432600, 0.185247, 0.133427, 0.551744, 0.048128, 0.584246, 0.014496,
- 0.417707, 0.688009, 0.596515, 0.995483, 0.971984, 0.728782, 0.483383,
- 0.682394, 0.792535, 0.436720, 0.743736, 0.102390, 0.826472, 0.692984,
- 0.350414, 0.914212, 0.029969, 0.666128, 0.238746, 0.081515, 0.463027,
- 0.088076, 0.578051, 0.915708, 0.620594, 0.289987, 0.857662, 0.893735,
- 0.281381, 0.653859, 0.318766, 0.157811, 0.655507, 0.636708, 0.763237,
- 0.103030, 0.112033, 0.023133, 0.270272, 0.958892, 0.268075, 0.562639,
- 0.852962, 0.771264, 0.720237, 0.647908, 0.585314, 0.691366, 0.200079,
- 0.190405, 0.231269, 0.977233, 0.434706, 0.349742, 0.907041, 0.614277,
- 0.493332, 0.272164, 0.807581, 0.961699, 0.901822, 0.495834, 0.529160,
- 0.329905, 0.305857, 0.177801, 0.018616, 0.896573, 0.964263, 0.799707,
- 0.680990, 0.866024, 0.853542, 0.508316, 0.676382, 0.279611, 0.665059,
- 0.746910, 0.937742, 0.382702, 0.476272, 0.334086, 0.940519, 0.954009,
- 0.376476, 0.645924, 0.755516, 0.504685, 0.829615, 0.058077, 0.416181,
- 0.752617, 0.053926, 0.303842, 0.131596, 0.278085, 0.201056, 0.904294,
- 0.376568, 0.767815, 0.614795, 0.327250, 0.389630, 0.752647, 0.951445,
- 0.030793, 0.110721, 0.245949, 0.442457, 0.047884, 0.089572, 0.188604,
- 0.081332, 0.268227, 0.395978, 0.106754, 0.015137, 0.073580, 0.063143,
- 0.888882, 0.922636, 0.482986, 0.095767, 0.087985, 0.659810, 0.463851,
- 0.573687, 0.655934],
- [0.426641, 0.368498, 0.324384, 0.244630, 0.810313,
- 0.154400, 0.349735, 0.383929, 0.592216, 0.152524, 0.905401, 0.140957,
- 0.476962, 0.196000, 0.330754, 0.277185, 0.018883, 0.277773, 0.862392,
- 0.903272, 0.303903, 0.594118, 0.361856, 0.941660, 0.079700, 0.480783,
- 0.969456, 0.472912, 0.230198, 0.098414, 0.160896, 0.968786, 0.046620,
- 0.262502, 0.139625, 0.175795, 0.361952, 0.682237, 0.823679, 0.267849,
- 0.790622, 0.778540, 0.116554, 0.395309, 0.970600, 0.098625, 0.083999,
- 0.714550, 0.748284, 0.835519, 0.077502, 0.521743, 0.326032, 0.755997,
- 0.251540, 0.976562, 0.302812, 0.305042, 0.410685, 0.551413, 0.117068,
- 0.132348, 0.621621, 0.626591, 0.383646, 0.184807, 0.834431, 0.780612,
- 0.507623, 0.612959, 0.794717, 0.533914, 0.477495, 0.029843, 0.227917,
- 0.108277, 0.660436, 0.700065, 0.209277, 0.487593, 0.541569, 0.553619,
- 0.731494, 0.580211, 0.275850, 0.372828, 0.243097, 0.420385, 0.098984,
- 0.857177, 0.250690, 0.833313, 0.913703, 0.867545, 0.951534, 0.361687,
- 0.527698, 0.243859, 0.717807, 0.467260, 0.580161, 0.714308, 0.267384,
- 0.456982, 0.374384, 0.692335, 0.299550, 0.083761, 0.919893, 0.096244,
- 0.848201, 0.232173, 0.484829, 0.245712, 0.249837, 0.437164, 0.970420,
- 0.887475, 0.244833, 0.991818, 0.763004, 0.286520, 0.264178, 0.806474,
- 0.660562, 0.674266, 0.860876, 0.734945, 0.467590, 0.805231, 0.447643,
- 0.964540, 0.110531, 0.299224, 0.495899, 0.439600, 0.515685, 0.221798,
- 0.708328, 0.123330, 0.259151, 0.045842, 0.530350, 0.760107, 0.140522,
- 0.285037, 0.378773, 0.458631, 0.583821, 0.141129, 0.426094, 0.055360,
- 0.322095, 0.582423, 0.468241, 0.884921, 0.413174, 0.046554, 0.445516,
- 0.540792, 0.812143, 0.869259, 0.956194, 0.762436, 0.207954, 0.269481,
- 0.813644, 0.223316, 0.794380, 0.903227, 0.153186, 0.216683, 0.710133,
- 0.745967, 0.076032, 0.082960, 0.138856, 0.522247, 0.371434, 0.332129,
- 0.891117, 0.218265, 0.071134, 0.248548, 0.680875, 0.198809, 0.592904,
- 0.277751, 0.089860, 0.167141, 0.243550, 0.326903, 0.306565, 0.898553,
- 0.198083, 0.618236, 0.607264, 0.941108, 0.790631, 0.602020, 0.208493,
- 0.649504, 0.429139, 0.913258, 0.681561, 0.603627, 0.630023, 0.737105,
- 0.243026, 0.483829, 0.173393, 0.060755, 0.683204, 0.284398, 0.103508,
- 0.451004, 0.147505, 0.885852, 0.105137, 0.803031, 0.112451, 0.412019,
- 0.725960, 0.227560, 0.200442, 0.915390, 0.853311, 0.078259, 0.842300,
- 0.799232, 0.236802, 0.236590, 0.327087] ),
-
- ([0.954619, 0.565477, 0.882290, 0.514939, 0.431104, 0.530839, 0.601520,
- 0.873959, 0.745659, 0.043428, 0.083987, 0.694906, 0.115177, 0.264992,
- 0.254036, 0.215796, 0.019532, 0.320292, 0.658498, 0.936796, 0.358745,
- 0.385907, 0.300882, 0.975127, 0.846828, 0.538285, 0.290017, 0.195654,
- 0.922880, 0.018097, 0.834101, 0.023194, 0.961272, 0.066805, 0.612140,
- 0.342235, 0.061831, 0.991760, 0.053194, 0.391247, 0.201239, 0.615833,
- 0.555406, 0.057314, 0.027192, 0.768517, 0.175451, 0.477218, 0.076205,
- 0.973907, 0.820093, 0.351512, 0.696615, 0.992309, 0.470962, 0.877926,
- 0.457930, 0.371685, 0.473708, 0.709677, 0.327677, 0.665059, 0.422895,
- 0.846034, 0.397076, 0.470138, 0.673788, 0.860347, 0.436934, 0.947569,
- 0.012513, 0.372204, 0.064577, 0.973785, 0.515427, 0.170415, 0.803797,
- 0.585101, 0.129429, 0.892026, 0.818018, 0.868954, 0.004059, 0.664693,
- 0.599261, 0.958464, 0.106784, 0.618000, 0.392895, 0.287179, 0.152989,
- 0.670248, 0.640126, 0.759484, 0.381329, 0.496689, 0.219337, 0.993439,
- 0.206183, 0.086032, 0.767602, 0.292032, 0.278512, 0.790704, 0.863277,
- 0.499344, 0.985839, 0.277596, 0.351390, 0.397595, 0.922941, 0.285684,
- 0.592853, 0.801569, 0.364940, 0.596271, 0.918546, 0.006256, 0.273080,
- 0.122410, 0.069948, 0.744957, 0.865230, 0.523911, 0.907346, 0.312357,
- 0.281869, 0.253761, 0.166540, 0.010956, 0.379498, 0.442518, 0.546251,
- 0.575243, 0.181585, 0.526841, 0.906095, 0.730888, 0.019501, 0.028474,
- 0.857814, 0.545152, 0.894040, 0.389874, 0.529893, 0.724143, 0.088504,
- 0.272439, 0.787500, 0.513932, 0.565783, 0.224372, 0.688589, 0.361431,
- 0.178961, 0.123508, 0.457686, 0.990905, 0.228339, 0.302072, 0.758507,
- 0.053224, 0.395123, 0.759056, 0.546556, 0.003449, 0.583239, 0.367016,
- 0.283151, 0.362987, 0.700766, 0.479049, 0.791986, 0.023072, 0.912137,
- 0.842555, 0.539506, 0.745323, 0.391858, 0.225715, 0.620411, 0.515885,
- 0.112064, 0.663411, 0.229438, 0.909360, 0.694113, 0.728050, 0.900784,
- 0.118595, 0.855739, 0.732658, 0.296213, 0.807093, 0.485733, 0.271249,
- 0.823481, 0.439283, 0.876308, 0.003815, 0.865810, 0.246467, 0.145054,
- 0.091372, 0.904202, 0.483016, 0.377850, 0.187872, 0.313334, 0.130009,
- 0.523209, 0.394818, 0.112827, 0.702780, 0.570452, 0.085238, 0.454512,
- 0.317667, 0.041719, 0.002808, 0.127476, 0.675253, 0.330271, 0.542833,
- 0.861965, 0.115421, 0.915250, 0.620991, 0.713157, 0.401471, 0.984863,
- 0.036164, 0.306619],
- [0.359776, 0.367097, 0.360432, 0.206506, 0.754471,
- 0.285965, 0.166168, 0.326315, 0.800244, 0.206862, 0.902224, 0.139618,
- 0.610692, 0.143672, 0.351668, 0.325182, 0.025730, 0.455092, 0.929569,
- 0.796769, 0.251855, 0.747627, 0.331670, 0.964723, 0.081021, 0.389377,
- 0.981844, 0.573396, 0.213534, 0.174239, 0.116232, 0.955129, 0.098010,
- 0.382178, 0.106874, 0.088279, 0.545543, 0.621791, 0.575619, 0.146018,
- 0.761163, 0.653365, 0.150332, 0.606838, 0.980184, 0.110615, 0.146229,
- 0.514361, 0.704054, 0.766151, 0.064525, 0.409417, 0.439298, 0.897061,
- 0.299828, 0.971770, 0.367509, 0.291184, 0.281051, 0.502794, 0.096782,
- 0.083478, 0.840663, 0.583090, 0.395116, 0.281379, 0.877926, 0.828898,
- 0.625191, 0.619742, 0.853877, 0.536377, 0.372904, 0.073845, 0.199405,
- 0.100709, 0.606060, 0.473555, 0.180722, 0.531621, 0.601256, 0.244270,
- 0.741130, 0.594147, 0.163998, 0.204984, 0.241442, 0.590100, 0.134714,
- 0.816974, 0.270377, 0.806844, 0.880223, 0.902738, 0.878790, 0.222071,
- 0.650206, 0.154455, 0.539164, 0.455021, 0.436253, 0.719163, 0.462310,
- 0.466113, 0.538283, 0.504002, 0.245044, 0.046836, 0.881469, 0.148622,
- 0.804958, 0.406845, 0.435662, 0.364701, 0.291077, 0.404339, 0.948996,
- 0.888650, 0.217218, 0.988262, 0.810153, 0.354070, 0.251472, 0.892376,
- 0.390826, 0.855087, 0.934166, 0.635453, 0.402146, 0.843193, 0.463845,
- 0.975613, 0.078484, 0.275776, 0.417762, 0.424582, 0.351462, 0.152584,
- 0.709934, 0.176501, 0.342223, 0.045484, 0.523229, 0.867291, 0.180673,
- 0.433035, 0.494813, 0.457182, 0.578500, 0.122501, 0.627640, 0.059493,
- 0.203059, 0.417564, 0.405842, 0.883510, 0.382213, 0.080276, 0.288037,
- 0.366680, 0.771502, 0.868585, 0.984384, 0.748690, 0.225509, 0.208029,
- 0.508301, 0.300714, 0.593630, 0.933136, 0.149565, 0.327301, 0.570310,
- 0.512326, 0.044906, 0.068581, 0.171144, 0.334918, 0.595896, 0.244451,
- 0.868130, 0.306131, 0.023271, 0.230718, 0.581006, 0.262223, 0.475655,
- 0.306093, 0.119837, 0.192525, 0.192306, 0.363700, 0.344519, 0.844001,
- 0.236159, 0.757393, 0.441866, 0.873148, 0.723895, 0.628312, 0.289490,
- 0.471274, 0.276109, 0.933656, 0.774933, 0.515753, 0.508829, 0.878633,
- 0.161455, 0.487705, 0.194438, 0.073326, 0.719559, 0.146848, 0.064468,
- 0.295699, 0.159501, 0.841205, 0.130773, 0.727858, 0.213309, 0.529196,
- 0.900356, 0.375119, 0.133807, 0.913048, 0.900510, 0.175900, 0.858299,
- 0.624336, 0.144456, 0.290592, 0.449766] ),
-
- ([0.388440, 0.499100, 0.733940, 0.225929, 0.232795, 0.223090, 0.876339,
- 0.324351, 0.299356, 0.762169, 0.124699, 0.241615, 0.421522, 0.130528,
- 0.041871, 0.907041, 0.671590, 0.884213, 0.019318, 0.309915, 0.296731,
- 0.349498, 0.636219, 0.319224, 0.977630, 0.978820, 0.856349, 0.833064,
- 0.065096, 0.364208, 0.969207, 0.039460, 0.952208, 0.940916, 0.681356,
- 0.069918, 0.236579, 0.911008, 0.264534, 0.826624, 0.830744, 0.419446,
- 0.166601, 0.264809, 0.675344, 0.513321, 0.991638, 0.911466, 0.212561,
- 0.915128, 0.255379, 0.901486, 0.275369, 0.142155, 0.822535, 0.312845,
- 0.549120, 0.002838, 0.431623, 0.081851, 0.261422, 0.000977, 0.214240,
- 0.279397, 0.257302, 0.679678, 0.614551, 0.030152, 0.114689, 0.435926,
- 0.615497, 0.855617, 0.457808, 0.837184, 0.677969, 0.721702, 0.123600,
- 0.971038, 0.298898, 0.573473, 0.338267, 0.859340, 0.594989, 0.636738,
- 0.559618, 0.468276, 0.817927, 0.268838, 0.141697, 0.345042, 0.207495,
- 0.639485, 0.478042, 0.412946, 0.088961, 0.022736, 0.779626, 0.955870,
- 0.620685, 0.981933, 0.143742, 0.323527, 0.098392, 0.227912, 0.070437,
- 0.388592, 0.222510, 0.432844, 0.082003, 0.287027, 0.234504, 0.780084,
- 0.602710, 0.472945, 0.328471, 0.531602, 0.754234, 0.619098, 0.244667,
- 0.394452, 0.223426, 0.394330, 0.450758, 0.967101, 0.858760, 0.649190,
- 0.817225, 0.047121, 0.151219, 0.041231, 0.193121, 0.081668, 0.256630,
- 0.630696, 0.788629, 0.541459, 0.714805, 0.478256, 0.770287, 0.500076,
- 0.522507, 0.776086, 0.975463, 0.199438, 0.716086, 0.543352, 0.152318,
- 0.883206, 0.120151, 0.417158, 0.631336, 0.678243, 0.418531, 0.570818,
- 0.834529, 0.807184, 0.203528, 0.290048, 0.529160, 0.911405, 0.160436,
- 0.238777, 0.231574, 0.767174, 0.042421, 0.945555, 0.667928, 0.175390,
- 0.593280, 0.541917, 0.697378, 0.306375, 0.073183, 0.284127, 0.604968,
- 0.281075, 0.544816, 0.889096, 0.169347, 0.269845, 0.574664, 0.216163,
- 0.412732, 0.889950, 0.507523, 0.325938, 0.438124, 0.183325, 0.968780,
- 0.447096, 0.261116, 0.955596, 0.751854, 0.882717, 0.041932, 0.757408,
- 0.746513, 0.387494, 0.624226, 0.290139, 0.064486, 0.046663, 0.786370,
- 0.516160, 0.018586, 0.188360, 0.112522, 0.255684, 0.111606, 0.360057,
- 0.888607, 0.551195, 0.691214, 0.901181, 0.929960, 0.580615, 0.427168,
- 0.142399, 0.747154, 0.400586, 0.266976, 0.763115, 0.955779, 0.301065,
- 0.026276, 0.338481, 0.336375, 0.052614, 0.270486, 0.607135, 0.451674,
- 0.827326, 0.643361],
- [0.341520, 0.354248, 0.277172, 0.160909, 0.797057,
- 0.240798, 0.202232, 0.531780, 0.648235, 0.247807, 0.899272, 0.204557,
- 0.643516, 0.176589, 0.498432, 0.206448, 0.025146, 0.357909, 0.889836,
- 0.870475, 0.239393, 0.718789, 0.405395, 0.966255, 0.060351, 0.494726,
- 0.973623, 0.450753, 0.274252, 0.156538, 0.144262, 0.967449, 0.117045,
- 0.347548, 0.190970, 0.086992, 0.503627, 0.736885, 0.627200, 0.147963,
- 0.625970, 0.729231, 0.144069, 0.508258, 0.979544, 0.100684, 0.155637,
- 0.614090, 0.726387, 0.819368, 0.064838, 0.369947, 0.284572, 0.910960,
- 0.231451, 0.965955, 0.243170, 0.194659, 0.336649, 0.518927, 0.181495,
- 0.160324, 0.764995, 0.434198, 0.334108, 0.141132, 0.895691, 0.739906,
- 0.519881, 0.575619, 0.774124, 0.553721, 0.448064, 0.045919, 0.193842,
- 0.091922, 0.777352, 0.523866, 0.113049, 0.299497, 0.627231, 0.439321,
- 0.832294, 0.576561, 0.340493, 0.339656, 0.307748, 0.471689, 0.148783,
- 0.872684, 0.317473, 0.791259, 0.918053, 0.786497, 0.862708, 0.431441,
- 0.684761, 0.260587, 0.733843, 0.426337, 0.532126, 0.655947, 0.510283,
- 0.364938, 0.552296, 0.762060, 0.360770, 0.052184, 0.840864, 0.127741,
- 0.689611, 0.300560, 0.320230, 0.241689, 0.372612, 0.472813, 0.967107,
- 0.929884, 0.252993, 0.992958, 0.742849, 0.411894, 0.345896, 0.770270,
- 0.572115, 0.658990, 0.814392, 0.655808, 0.420486, 0.707766, 0.345577,
- 0.975158, 0.085844, 0.406723, 0.249006, 0.238066, 0.539499, 0.145692,
- 0.790438, 0.168272, 0.230688, 0.057680, 0.571479, 0.740323, 0.066511,
- 0.489331, 0.318142, 0.492005, 0.589285, 0.132762, 0.636211, 0.046943,
- 0.332692, 0.462977, 0.288413, 0.866029, 0.322398, 0.070890, 0.418203,
- 0.476348, 0.784088, 0.918616, 0.971825, 0.687118, 0.119708, 0.226636,
- 0.739284, 0.164853, 0.567597, 0.948301, 0.253904, 0.454577, 0.630131,
- 0.797070, 0.069375, 0.062262, 0.181825, 0.514047, 0.579143, 0.347091,
- 0.790777, 0.249278, 0.041634, 0.302402, 0.692700, 0.223413, 0.806465,
- 0.255903, 0.078892, 0.196589, 0.233383, 0.438091, 0.133392, 0.873997,
- 0.187271, 0.777030, 0.369699, 0.892954, 0.791136, 0.568050, 0.271141,
- 0.550761, 0.438786, 0.966893, 0.695801, 0.625005, 0.646452, 0.847563,
- 0.206998, 0.480985, 0.149400, 0.125530, 0.576586, 0.184683, 0.119176,
- 0.215631, 0.154857, 0.888609, 0.251622, 0.675261, 0.155464, 0.353164,
- 0.907869, 0.196696, 0.109431, 0.930597, 0.817032, 0.075295, 0.760376,
- 0.463851, 0.244921, 0.108898, 0.363699] ),
-
- ([0.490799, 0.225929, 0.074892, 0.299295, 0.397198, 0.393933, 0.135197,
- 0.595447, 0.837336, 0.225318, 0.868160, 0.699576, 0.888455, 0.430280,
- 0.082522, 0.270516, 0.534074, 0.653493, 0.045015, 0.866939, 0.412214,
- 0.461928, 0.850429, 0.240822, 0.002838, 0.233283, 0.934324, 0.172216,
- 0.786401, 0.850764, 0.509842, 0.001007, 0.403821, 0.611042, 0.209449,
- 0.512284, 0.350383, 0.251167, 0.712882, 0.331492, 0.233283, 0.501053,
- 0.642750, 0.485702, 0.125431, 0.067263, 0.509201, 0.286843, 0.046144,
- 0.455184, 0.984191, 0.193701, 0.099704, 0.534806, 0.287484, 0.808802,
- 0.303781, 0.257302, 0.965209, 0.665822, 0.638356, 0.428144, 0.841853,
- 0.964843, 0.346568, 0.942930, 0.427839, 0.910703, 0.018830, 0.392499,
- 0.563128, 0.811274, 0.491501, 0.443617, 0.578448, 0.591876, 0.090976,
- 0.900815, 0.755394, 0.881619, 0.255013, 0.856624, 0.366649, 0.328623,
- 0.062166, 0.835719, 0.077364, 0.299783, 0.700522, 0.339396, 0.989319,
- 0.621662, 0.407453, 0.696799, 0.108737, 0.518509, 0.911039, 0.629048,
- 0.519395, 0.403943, 0.904782, 0.432417, 0.041688, 0.682455, 0.586871,
- 0.186987, 0.659810, 0.216529, 0.795068, 0.896878, 0.497147, 0.616626,
- 0.768395, 0.968383, 0.622394, 0.009156, 0.067385, 0.932310, 0.466384,
- 0.439619, 0.683523, 0.816675, 0.131870, 0.566332, 0.869289, 0.075869,
- 0.377178, 0.801874, 0.720511, 0.483139, 0.554643, 0.557756, 0.041597,
- 0.891690, 0.285531, 0.748955, 0.525468, 0.271493, 0.152684, 0.214423,
- 0.778893, 0.927824, 0.191748, 0.209876, 0.225135, 0.307291, 0.462600,
- 0.629200, 0.414502, 0.298441, 0.482101, 0.110355, 0.774560, 0.432508,
- 0.799402, 0.682699, 0.330760, 0.890835, 0.495071, 0.111087, 0.429548,
- 0.725181, 0.885434, 0.594012, 0.994079, 0.197241, 0.212867, 0.971038,
- 0.344646, 0.643666, 0.604266, 0.096530, 0.115024, 0.772210, 0.077700,
- 0.535691, 0.295450, 0.796472, 0.879727, 0.238716, 0.933805, 0.314280,
- 0.933409, 0.350383, 0.526536, 0.336650, 0.679617, 0.809870, 0.630024,
- 0.373333, 0.091556, 0.898587, 0.723991, 0.981353, 0.144749, 0.390881,
- 0.858089, 0.682424, 0.523148, 0.465102, 0.112980, 0.656240, 0.842891,
- 0.030122, 0.407239, 0.114841, 0.174810, 0.624500, 0.680746, 0.765282,
- 0.147374, 0.544084, 0.986877, 0.266182, 0.410352, 0.354198, 0.523759,
- 0.084964, 0.741539, 0.443220, 0.136418, 0.661367, 0.577044, 0.772942,
- 0.320780, 0.284127, 0.246986, 0.482833, 0.260842, 0.586688, 0.697104,
- 0.503922, 0.930418],
- [0.424107, 0.396879, 0.414405, 0.114626, 0.785829,
- 0.223161, 0.220193, 0.579817, 0.719536, 0.172066, 0.875931, 0.125967,
- 0.394629, 0.199909, 0.343574, 0.187285, 0.027203, 0.308855, 0.855927,
- 0.876132, 0.397154, 0.704915, 0.341795, 0.949075, 0.098719, 0.354898,
- 0.976726, 0.321007, 0.223962, 0.124901, 0.175442, 0.971870, 0.143232,
- 0.219022, 0.142665, 0.053376, 0.474999, 0.543850, 0.804155, 0.310526,
- 0.791216, 0.762469, 0.169269, 0.528699, 0.985355, 0.087431, 0.175909,
- 0.577205, 0.625587, 0.768158, 0.096223, 0.503537, 0.413709, 0.885578,
- 0.191869, 0.926045, 0.329703, 0.186974, 0.282816, 0.604256, 0.109594,
- 0.178356, 0.753140, 0.517298, 0.515606, 0.216674, 0.820059, 0.804815,
- 0.611976, 0.631029, 0.803835, 0.591237, 0.322586, 0.052500, 0.328980,
- 0.123051, 0.620348, 0.532733, 0.144982, 0.391361, 0.613410, 0.383974,
- 0.734064, 0.532324, 0.344537, 0.422938, 0.254770, 0.530569, 0.153824,
- 0.835986, 0.547887, 0.832646, 0.901160, 0.830598, 0.935647, 0.287002,
- 0.598803, 0.108118, 0.799591, 0.405487, 0.543971, 0.689053, 0.329327,
- 0.383579, 0.390946, 0.614205, 0.349351, 0.048845, 0.904713, 0.143100,
- 0.771536, 0.357421, 0.459892, 0.389907, 0.224094, 0.376756, 0.948369,
- 0.888373, 0.273341, 0.992956, 0.780531, 0.400960, 0.424054, 0.878922,
- 0.436259, 0.647822, 0.800395, 0.634784, 0.492485, 0.799851, 0.479985,
- 0.964370, 0.058900, 0.276129, 0.348107, 0.391172, 0.603799, 0.216043,
- 0.688422, 0.219302, 0.464335, 0.091783, 0.600059, 0.873305, 0.044057,
- 0.450227, 0.399348, 0.499331, 0.611188, 0.133346, 0.474435, 0.073997,
- 0.290723, 0.628574, 0.407430, 0.898788, 0.407404, 0.074780, 0.427978,
- 0.480693, 0.685756, 0.861848, 0.948614, 0.789383, 0.103810, 0.242024,
- 0.591603, 0.202827, 0.707913, 0.928032, 0.219192, 0.375436, 0.620618,
- 0.740555, 0.085314, 0.073262, 0.123595, 0.291393, 0.559089, 0.284462,
- 0.905447, 0.173849, 0.075588, 0.443385, 0.643536, 0.251822, 0.598107,
- 0.282495, 0.110525, 0.149146, 0.151177, 0.353747, 0.285400, 0.869472,
- 0.224384, 0.648134, 0.328993, 0.908896, 0.810594, 0.513033, 0.234783,
- 0.575107, 0.211473, 0.963435, 0.609522, 0.609734, 0.516709, 0.787513,
- 0.218430, 0.318520, 0.172837, 0.092019, 0.536853, 0.163634, 0.178079,
- 0.368606, 0.184779, 0.929009, 0.159243, 0.748073, 0.172109, 0.597596,
- 0.901627, 0.175661, 0.128399, 0.923317, 0.852674, 0.072980, 0.825466,
- 0.662855, 0.122188, 0.163042, 0.256912] )]
diff --git a/testsuite/tests/ghc-regress/programs/okeefe_neural/Makefile b/testsuite/tests/ghc-regress/programs/okeefe_neural/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/okeefe_neural/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/okeefe_neural/test.T b/testsuite/tests/ghc-regress/programs/okeefe_neural/test.T
deleted file mode 100644
index cf329cf716..0000000000
--- a/testsuite/tests/ghc-regress/programs/okeefe_neural/test.T
+++ /dev/null
@@ -1,12 +0,0 @@
-
-# this one causes the compiler to run out of heap in the simplifier
-
-def set_opts( opts ):
- opts.expect = 'fail'
-
-test('okeefe_neural',
- [skip_if_fast,
- set_opts,
- extra_clean(['Main.hi'])],
- multimod_compile_and_run,
- ['Main', '-package lang +RTS -M64m -RTS'])
diff --git a/testsuite/tests/ghc-regress/programs/record_upd/Main.hs b/testsuite/tests/ghc-regress/programs/record_upd/Main.hs
deleted file mode 100644
index 3b6b3ae2f9..0000000000
--- a/testsuite/tests/ghc-regress/programs/record_upd/Main.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{- The purpose of this is to test that record update is
- sufficiently polymorphic. See comments with
- tcExpr (RecordUpd) in TcExpr.lhs
--}
-
-module Main where
-
-data T a b c d = MkT1 { op1 :: a, op2 :: b }
- | MkT2 { op1 :: a, op3 :: c }
- | MkT3 { op4 :: a, op5 :: d }
-
-update1 :: a2 -> T a b c d -> T a2 b c d2
-update1 x t = t { op1 = x }
- -- NB: the MkT3.op4 case doesn't constrain the result because
- -- it doesn't have an op1 field
-
-update2 :: a2 -> T a b c d -> T a2 b2 c2 d
-update2 x t = t { op4 = x }
-
-main = print (op4 $
- update2 True $
- MkT3 { op4 = op2 $
- update1 (1::Int) $
- MkT1 { op1 = True }
- })
diff --git a/testsuite/tests/ghc-regress/programs/record_upd/Makefile b/testsuite/tests/ghc-regress/programs/record_upd/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/record_upd/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/record_upd/record_upd.stdout b/testsuite/tests/ghc-regress/programs/record_upd/record_upd.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/programs/record_upd/record_upd.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/programs/record_upd/test.T b/testsuite/tests/ghc-regress/programs/record_upd/test.T
deleted file mode 100644
index e98b70c43e..0000000000
--- a/testsuite/tests/ghc-regress/programs/record_upd/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('record_upd',
- [skip_if_fast, extra_clean(['Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/rittri/Main.hs b/testsuite/tests/ghc-regress/programs/rittri/Main.hs
deleted file mode 100644
index e62c8a4667..0000000000
--- a/testsuite/tests/ghc-regress/programs/rittri/Main.hs
+++ /dev/null
@@ -1,39 +0,0 @@
-infixr ->!,=\
-
--- auxiliary functions -----------------------------------------------------
-
-g u v w (x:y:z) = i(v x y)(u x y (w z) z)(x:w(y:z))
-g u v w [x] = [x,512]
-q u v w nil = u : 95 : z v : w
-
-long = several.length
-((->!),(=\))=(map,($))
-a = g q f
-y = (-)32
-z = (+)32
-several = (>)2
-fairlySmall = (<)64
-notTooSmall = (>)91
-justRight = (==)95
-notTooBig = (<)96
-veryBig = (>)123
-goodSize x =foldr(&&)
- otherwise =\($x)->![notTooBig,veryBig]
-f y z =fairlySmall(z)&&goodSize(y)&&notTooSmall(z)
-i cond th el=if(cond)then(th)else(el)
-toBeIsToDoAndToDoIsToBeSaidConFuTse
-
--- main functions ----------------------------------------------------------
-
- g = interact$map
- toEnum.g.map
- fromEnum
-main =
- toBeIsToDoAndToDoIsToBeSaidConFuTse(let h=a;t=x where x x=i(long x)x(h t x)
- q v w x z = - y w:x
- a = g q f
- f x y = justRight x
- && goodSize y
- in t)
-
--- rittri@cs.chalmers.se ---------------------------------------------------
diff --git a/testsuite/tests/ghc-regress/programs/rittri/Makefile b/testsuite/tests/ghc-regress/programs/rittri/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/rittri/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/rittri/rittri.stdin b/testsuite/tests/ghc-regress/programs/rittri/rittri.stdin
deleted file mode 100644
index 84e5ba190d..0000000000
--- a/testsuite/tests/ghc-regress/programs/rittri/rittri.stdin
+++ /dev/null
@@ -1,39 +0,0 @@
-infixr ->!,=\
-
--- auxiliary functions -----------------------------------------------------
-
-g u v w (x:y:z) = i(v x y)(u x y (w z) z)(x:w(y:z))
-g u v w [x] = [x,512]
-q u v w nil = u : 95 : z v : w
-
-long = several.length
-((->!),(=\))=(map,($))
-a = g q f
-y = (-)32
-z = (+)32
-several = (>)2
-fairlySmall = (<)64
-notTooSmall = (>)91
-justRight = (==)95
-notTooBig = (<)96
-veryBig = (>)123
-goodSize x =foldr(&&)
- otherwise =\($x)->![notTooBig,veryBig]
-f y z =fairlySmall(z)&&goodSize(y)&&notTooSmall(z)
-i cond th el=if(cond)then(th)else(el)
-toBeIsToDoAndToDoIsToBeSaidConFuTse
-
--- main functions ----------------------------------------------------------
-
- g = interact$map
- chr.g.map
- ord
-main =
- toBeIsToDoAndToDoIsToBeSaidConFuTse(let h=a;t=x where x x=i(long x)x(h t x)
- q v w x z =- y w:x
- a = g q f
- f x y = justRight x
- && goodSize y
- in t)
-
--- rittri@cs.chalmers.se ---------------------------------------------------
diff --git a/testsuite/tests/ghc-regress/programs/rittri/rittri.stdout b/testsuite/tests/ghc-regress/programs/rittri/rittri.stdout
deleted file mode 100644
index c904cda513..0000000000
--- a/testsuite/tests/ghc-regress/programs/rittri/rittri.stdout
+++ /dev/null
@@ -1,39 +0,0 @@
-infixr ->!,=\
-
--- auxiliary functions -----------------------------------------------------
-
-g u v w (x:y:z) = i(v x y)(u x y (w z) z)(x:w(y:z))
-g u v w [x] = [x,512]
-q u v w nil = u : 95 : z v : w
-
-long = several.length
-((->!),(=\))=(map,($))
-a = g q f
-y = (-)32
-z = (+)32
-several = (>)2
-fairly_small = (<)64
-not_too_small = (>)91
-just_right = (==)95
-not_too_big = (<)96
-very_big = (>)123
-good_size x =foldr(&&)
- otherwise =\($x)->![not_too_big,very_big]
-f y z =fairly_small(z)&&good_size(y)&&not_too_small(z)
-i cond th el=if(cond)then(th)else(el)
-to_be_is_to_do_and_to_do_is_to_be_said_con_fu_tse
-
--- main functions ----------------------------------------------------------
-
- g = interact$map
- chr.g.map
- ord
-main =
- to_be_is_to_do_and_to_do_is_to_be_said_con_fu_tse(let h=a;t=x where x x=i(long x)x(h t x)
- q v w x z =- y w:x
- a = g q f
- f x y = just_right x
- && good_size y
- in t)
-
--- rittri@cs.chalmers.se ---------------------------------------------------
diff --git a/testsuite/tests/ghc-regress/programs/rittri/test.T b/testsuite/tests/ghc-regress/programs/rittri/test.T
deleted file mode 100644
index 2e14f6fdcc..0000000000
--- a/testsuite/tests/ghc-regress/programs/rittri/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('rittri',
- [skip_if_fast, extra_clean(['Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/sanders_array/Main.hs b/testsuite/tests/ghc-regress/programs/sanders_array/Main.hs
deleted file mode 100644
index d5a2b29d12..0000000000
--- a/testsuite/tests/ghc-regress/programs/sanders_array/Main.hs
+++ /dev/null
@@ -1,52 +0,0 @@
-{-
-From: Paul Sanders <psanders@srd.bt.co.uk>
-To: partain
-Subject: A puzzle for you
-Date: Mon, 28 Oct 91 17:02:19 GMT
-
-I'm struggling with the following code fragment at the moment:
--}
-
-import Data.Array -- 1.3
-import Data.Ix -- 1.3
-
-conv_list :: (Ix a, Ix b) => [a] -> [b] -> [[c]] -> Array (a,b) c -> Array (a,b) c
-conv_list [] _ _ ar = ar
-conv_list _ _ [] ar = ar
-conv_list (r:rs) cls (rt:rts) ar
- = conv_list rs cls rts ar'
- where ar' = conv_elems r cls rt ar
-
-conv_elems :: (Ix a, Ix b) => a -> [b] -> [c] -> Array (a,b) c -> Array (a,b) c
-conv_elems row [] _ ar = ar
-conv_elems _ _ [] ar = ar
-conv_elems row (col:cls) (rt:rts) ar
- = conv_elems row cls rts ar'
- where ar' = ar // [((row,col), rt)]
-
-ar :: Array (Int, Int) Int
-ar = conv_list [(1::Int)..(3::Int)] [(1::Int)..(3::Int)] ar_list init_ar
- where init_ar = array (((1::Int),(1::Int)),((3::Int),(3::Int))) []
-
-
-ar_list :: [[Int]] -- WDP
-ar_list = [[1,2,3],
- [6,7,8],
- [10,12,15]]
-
-main = putStrLn (show ar)
-
-{-
-What it tries to do is turn a list of lists into a 2-d array in an incremental
-fashion using 2 nested for-loops. It compiles okay on the prototype compiler
-but gives a segmentation fault when it executes. I know I can define in the
-array in one go (and I have done) but, for my piece of mind, I want to get this
-way working properly.
-
-Is it a bug in the prototype or is there a glaringly obvious error in my code
-which I've been stupid to spot ????
-
-Hoping its the latter,
-
-Paul.
--}
diff --git a/testsuite/tests/ghc-regress/programs/sanders_array/Makefile b/testsuite/tests/ghc-regress/programs/sanders_array/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/sanders_array/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/sanders_array/sanders_array.stdout b/testsuite/tests/ghc-regress/programs/sanders_array/sanders_array.stdout
deleted file mode 100644
index d3405a74e2..0000000000
--- a/testsuite/tests/ghc-regress/programs/sanders_array/sanders_array.stdout
+++ /dev/null
@@ -1 +0,0 @@
-array ((1,1),(3,3)) [((1,1),1),((1,2),2),((1,3),3),((2,1),6),((2,2),7),((2,3),8),((3,1),10),((3,2),12),((3,3),15)]
diff --git a/testsuite/tests/ghc-regress/programs/sanders_array/test.T b/testsuite/tests/ghc-regress/programs/sanders_array/test.T
deleted file mode 100644
index 03c4d4eece..0000000000
--- a/testsuite/tests/ghc-regress/programs/sanders_array/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('sanders_array',
- [skip_if_fast, extra_clean(['Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/seward-space-leak/Main.lhs b/testsuite/tests/ghc-regress/programs/seward-space-leak/Main.lhs
deleted file mode 100644
index 327118d5e3..0000000000
--- a/testsuite/tests/ghc-regress/programs/seward-space-leak/Main.lhs
+++ /dev/null
@@ -1,650 +0,0 @@
-{-
-
-This test runs for a Long Time (10mins for the registerised version)
-and allocates 3.4Gbytes. It also hammers the GC; with -H16M it spend
-40% of the time in the GC.
-
-
-
-Date: Sun, 25 Oct 92 16:38:12 GMT
-From: Julian Seward (DRL PhD) <sewardj@uk.ac.man.cs>
-Message-Id: <9210251638.AA21153@r6b.cs.man.ac.uk>
-To: partain@uk.ac.glasgow.dcs
-Subject: Space consumption in 0.09 produced binary
-Cc: sewardj@uk.ac.man.cs, simonpj@uk.ac.glasgow.dcs
-
-Folks,
-
-At the risk of wasting even more of your valuable time, here is
-a small problem I ran into:
-
-The program (XXXX.lhs) listed below runs in constant space (about 4k)
-in both Gofer and hbc 0.998.5. When compiled with 0.09, it runs out
-of heap in seconds (4 meg heap).
-
-The program builds a gigantic list of things (CDSs, in fact), I believe
-at least 100,000 long, and searches to find out if a particular CDS is
-present. The CDS list is generated lazily, and should be thrown away
-as it goes, until apply_cds is found (see the bottom of the listing).
-Gofer and hbc behave as expected, but I suspect ghc is holding onto
-the complete list unnecessarily.
-
-I include XXXX.stat as supporting evidence.
-
-Jules
-
-(compiled hence:
-ghc9 -v -O -gc-ap -flet-float -Rgc-stats -Rmax-heapsize 14M -o XXXX XXXX.lhs
-)
-
------------------------------------------------------------------------
-
-XXXX +RTS -S
-
-Collector: APPEL HeapSize: 4,194,304 (bytes)
-
- Alloc Live Live Astk Bstk OldGen GC GC TOT TOT Page Flts Collec Resid
- bytes bytes % bytes bytes roots user elap user elap GC TOT tion %heap
-2097108 1119672 53.4 52 132 1119616 0.33 0.35 1.01 1.15 0 0 Minor
-1537300 918200 59.7 48 128 918188 0.26 0.31 1.76 1.95 0 0 Minor
-1078216 654212 60.7 56 160 652612 0.19 0.18 2.29 2.46 0 0 Minor
- 751108 442140 58.9 52 108 442140 0.12 0.12 2.64 2.84 0 0 Minor
-3134224 2935044 93.6 52 108 1.49 1.50 4.13 4.34 0 0 *MAJOR* 70.0%
- 629612 376848 59.9 52 132 376836 0.11 0.11 4.44 4.64 0 0 Minor
- 441184 265100 60.1 96 200 264416 0.08 0.07 4.66 4.86 0 0 Minor
- 308640 204072 66.1 56 160 199476 0.06 0.05 4.81 5.01 0 0 Minor
-3781064 3687092 97.5 56 160 1.81 1.85 6.62 6.86 0 0 *MAJOR* 87.9%
- 253600 160584 63.3 52 108 160584 0.05 0.04 6.75 6.98 0 0 Minor
- 173312 112344 64.8 56 160 110304 0.03 0.03 6.83 7.07 0 0 Minor
- 117128 77260 66.0 36 140 74112 0.01 0.02 6.88 7.13 0 0 Minor
-4037280 3985284 98.7 36 140 1.96 1.98 8.85 9.11 0 0 *MAJOR* 95.0%
-
--------------------------------------------------------------------------
--}
-
-> module Main where
-
-%============================================================
-%============================================================
-
-\section{A CDS interpreter}
-
-\subsection{Declarations}
-
-Second attempt at a CDS interpreter. Should do
-loop detection correctly in the presence of higher order functions.
-
-The types allowed are very restrictive at the mo.
-
-> data Type = Two
-> | Fn [Type]
-
-Now, we also have to define CDSs and selectors.
-\begin{itemize}
-\item
-@Empty@ is a non-legitimate CDS, denoting no value at all. We use
-it as an argument in calls to other CDSs denoting that
-the particular argument is not really supplied.
-\item
-@Par@ is similarly a non-legit CDS, but useful for constructing
-selectors. It simply denotes the parameter specified (note
-parameter numbering starts at 1).
-\item
-@Zero@ and @One@ are constant valued CDSs.
-\item
-@Call@.
-Calls to other functions are done with @Call@, which expects
-the callee to return @Zero@ or @One@, and selects the relevant
-branch. The @Tag@s identify calls in the dependancy list.
-Although a @Call@ is a glorified @Case@ statement, the only allowed
-return values are @Zero@ and @One@. Hence the @CDS CDS@ continuations
-rather than the more comprehensive @(AList Return CDS)@.
-We require arguments to be fully disassembled.
-\item @Case@
-Case selectors can only be of the following form:
-\begin{itemize}
-\item
- @[Par n]@ if the n'th parameter is not a function space.
-\item
- @[Par n, v1 ... vn]@ if the n'th parameter is a function space of
- arity n. The v's may be only @Empty@, @Zero@,
- @One@, or @Par n@.
-\end{itemize}
-\end{itemize}
-We also have a @Magic@ CDS which is a load of mumbo-jumbo for use
-in enumeration of and compilation to CDSs. Of no significance
-whatever here.
-
-> data CDS = Empty
-> | Par Int
-> | Zero
-> | One
-> | Case [CDS] (AList Return CDS)
-> | Call String Tag [CDS] CDS CDS
-> | Magic
->
-> type AList a b = [(a, b)]
->
-> type Tag = Int
-
-> instance Eq CDS where
-> (Par n1) == (Par n2) = n1 == n2
-> Zero == Zero = True
-> One == One = True
-> (Case sels1 rets1) == (Case sels2 rets2) = sels1 == sels2 &&
-> rets1 == rets2
-> (Call f1 t1 sels1 a1 b1) == (Call f2 t2 sels2 a2 b2)
-> = f1 == f2 && t1 == t2 && sels1 == sels2 && a1 == a2 && b1 == b2
-> Magic == Magic = True
-> _ == _ = False
-
-
-A @Return@ is a temporary thing used to decide which way to go at
-a @Case@ statement.
-
-> data Return = RZero
-> | ROne
-> | RP Int
-
-> instance Eq Return where
-> RZero == RZero = True
-> ROne == ROne = True
-> (RP p1) == (RP p2) = p1 == p2
-> _ == _ = False
-
-We need a code store, which gives out a fresh instance of a CDS
-as necessary. ToDo: Need to rename call sites? I don't think so.
-
-> type Code = AList String CDS
-
-%============================================================
-%============================================================
-
-\subsection{The evaluator}
-Main CDS evaluator takes
-\begin{itemize}
-\item the code store
-\item the dependancy list, a list of @Tag@s of calls which are
- currently in progress
-\item the current arguments
-\item the CDS fragment currently being worked on
-\end{itemize}
-
-> type Depends = [Tag]
->
-> eval :: Code -> Depends -> [CDS] -> CDS -> CDS
-
-Evaluating a constant valued CDS is trivial. There may be arguments
-present -- this is not a mistake.
-
-> eval co de args Zero = Zero
-> eval co de args One = One
-
-Making a call is also pretty simple, because we assume
-that all non-functional arguments are presented as literals,
-and all functional values have already been dismantled (unless
-they are being passed unchanged in the same position in a recursive call
-to the same function, something for the compiler to detect).
-
-Two other issues are at work here. Guided by the selectors,
-we copy the args to make a set of args for the call. However, if an
-copied arg is Empty, the call cannot proceed, so we return the CDS as-is.
-Note that an Empty *selector* is not allowed in a Call (although it is
-in a Case).
-
-The second issue arises if the call can go ahead. We need to check the
-tag on the call just about to be made with the tags of calls already in
-progress (in de) to see if we are looping. If the tag has already been
-encountered, the result of the call is Zero, so the Zero alternative is
-immediately selected.
-
-> eval co de args cds@(Call fname tag params alt0 alt1)
-> = let (copied_an_empty, callee_args) = copy_args args params
-> augmented_de = tag : de
-> callee_code = lkup co fname
-> callee_result = eval co augmented_de callee_args callee_code
-> been_here_before = tag `elem` de
-> in
-> if copied_an_empty
-> then cds
-> else
-> if been_here_before
-> then eval co augmented_de args alt0
-> else case callee_result of
-> Zero -> eval co de args alt0
-> One -> eval co de args alt1
-> _ -> error "Bad callee result"
-
-Case really means "evaluate".
-
- - make sure first selector is non-Empty. If so, return CDS as-is.
-
- - Copy other args. If Empty is *copied*, return CDS as-is.
- Otherwise, call evaluator and switch on head of result.
-
-Note about switching on the head of the result. We expect to see
-*only* the following as results:
-
- Zero
- One
- Case [Param m, rest]
-
-in which case switching is performed on
-
- Zero
- One
- Case (Param m)
-
-ToDo: what happens if a Call turns up ???
-
-> eval co de args cds@(Case ((Par n):ps) alts)
-> = let (copied_an_empty, new_args) = copy_args args ps
-> functional_param = args !! (n-1)
-> in if functional_param == Empty ||
-> copied_an_empty
-> then cds
-> else eval co de args
-> (lkup alts (get_head
-> (eval co de new_args functional_param)))
-
-Auxiliary for evaluating Case expressions.
-
-> get_head Zero = RZero
-> get_head One = ROne
-> get_head (Case ((Par n):_) _) = RP n
-
-Copy args based on directions in a list of selectors.
-Also returns a boolean which is True if an Empty has been
-*copied*. An Empty *selector* simply produces Empty in the
-corresponding output position.
-
-> copy_args :: [CDS] -> [CDS] -> (Bool, [CDS])
->
-> copy_args args params
-> = case cax False params [] of
-> (empty_copied, res) -> (empty_copied, reverse res)
-> where
-> cax empty [] res = (empty, res)
-> cax empty (Zero:ps) res = cax empty ps (Zero:res)
-> cax empty (One:ps) res = cax empty ps (One:res)
-> cax empty (Empty:ps) res = cax empty ps (Empty:res)
-> cax empty ((Par n):ps) res
-> = case args !! (n-1) of
-> Empty -> cax True ps (Empty:res)
-> other -> cax empty ps (other:res)
-
-> lkup env k = head ( [v | (kk,v) <- env, kk == k] ++
-> [error ( "Can't look up " ) ] )
-
-%============================================================
-%============================================================
-
-%============================================================
-%============================================================
-
-Something to make running tests easier ...
-
-> eval0 fname args = eval test [] args (lkup test fname)
->
-> two = [Zero, One]
-
-Now for some test data ...
-
-> test
-> =
-> [
-> ("add", add_cds),
-> ("apply", apply_cds),
-> ("k0", k0_cds),
-> ("id", id_cds),
-> ("k1", k1_cds),
-> ("kkkr", kkkr_cds),
-> ("kkkl", kkkl_cds),
-> ("apply2", apply2_cds)
-> ]
->
-
-Constant Zero function.
-
-> k0_cds
-> = Case [Par 1]
-> [(RZero, Zero),
-> (ROne, Zero)]
->
-
-Identity.
-
-> id_cds
-> = Case [Par 1]
-> [(RZero, Zero),
-> (ROne, One)]
-
-Constant One function.
-
-> k1_cds
-> = Case [Par 1]
-> [(RZero, One),
-> (ROne, One)]
-
-Strict in both of two arguments, for example (+).
-
-> add_cds
-> = Case [Par 1]
-> [(RZero, Case [Par 2]
-> [(RZero, Zero),
-> (ROne, Zero)
-> ]),
-> (ROne, Case [Par 2]
-> [(RZero, Zero),
-> (ROne, One)
-> ])
-> ]
-
-The (in)famous apply function.
-
-> apply_cds
-> = Case [Par 1, Empty]
-> [(RZero, Zero),
-> (ROne, One),
-> (RP 1, Case [Par 2]
-> [(RZero, Case [Par 1, Zero]
-> [(RZero, Zero),
-> (ROne, One)]),
-> (ROne, Case [Par 1, One]
-> [(RZero, Zero),
-> (ROne, One)])
-> ])
-> ]
-
-The inverse K-combinator: K x y = y
-
-> kkkr_cds
-> = Case [Par 2]
-> [(RZero, Zero),
-> (ROne, One)
-> ]
-
-The standard K-combinator, defined thus: K x y = K-inverse y x.
-Purpose of this is to test function calling.
-
-> kkkl_cds
-> = Case [Par 1]
-> [(RZero, Case [Par 2]
-> [(RZero, Call "kkkr" 101 [Zero, Zero] Zero One),
-> (ROne, Call "kkkr" 102 [One, Zero] Zero One)
-> ]),
-> (ROne, Case [Par 2]
-> [(RZero, Call "kkkr" 103 [Zero, One] Zero One),
-> (ROne, Call "kkkr" 104 [One, One] Zero One)
-> ])
-> ]
-
-Apply a 2-argument function (apply2 f x y = f x y).
-
-> apply2_cds
-> = Case [Par 1, Empty, Empty]
-> [(RZero, Zero),
-> (ROne, One),
-> (RP 1, Case [Par 2]
-> [(RZero, Case [Par 1, Zero, Empty]
-> [(RZero, Zero),
-> (ROne, One),
-> (RP 2, Case [Par 3]
-> [(RZero, Case [Par 1, Zero, Zero]
-> [(RZero, Zero),
-> (ROne, One)]),
-> (ROne, Case [Par 1, Zero, One]
-> [(RZero, Zero),
-> (ROne, One)])
-> ])
-> ]),
-> (ROne, Case [Par 1, One, Empty]
-> [(RZero, Zero),
-> (ROne, One),
-> (RP 2, Case [Par 3]
-> [(RZero, Case [Par 1, One, Zero]
-> [(RZero, Zero),
-> (ROne, One)]),
-> (ROne, Case [Par 1, One, One]
-> [(RZero, Zero),
-> (ROne, One)])
-> ])
-> ])
-> ]),
-> (RP 2, Case [Par 3]
-> [(RZero, Case [Par 1, Empty, Zero]
-> [(RZero, Zero),
-> (ROne, One),
-> (RP 1, Case [Par 2]
-> [(RZero, Case [Par 1, Zero, Zero]
-> [(RZero, Zero),
-> (ROne, One)]),
-> (ROne, Case [Par 1, One, Zero]
-> [(RZero, Zero),
-> (ROne, One)])
-> ])
-> ]),
-> (ROne, Case [Par 1, Empty, One]
-> [(RZero, Zero),
-> (ROne, One),
-> (RP 1, Case [Par 2]
-> [(RZero, Case [Par 1, Zero, One]
-> [(RZero, Zero),
-> (ROne, One)]),
-> (ROne, Case [Par 1, One, One]
-> [(RZero, Zero),
-> (ROne, One)])
-> ])
-> ])
-> ])
-> ]
-
-Simple, isn't it!
-
-%============================================================
-%============================================================
-
-%============================================================
-%============================================================
-
-Enumeration of all CDSs of a given type.
-
-Define n-ary branched trees. These are used to hold the
-possible prefixes of function arguments, something essential
-when enumerating higher-order CDSs. ToDo: translate to English
-
-> data NTree a = NLeaf
-> | NBranch a [NTree a]
-
-The enumeration enterprise involves some mutual recursion
-when it comes to higher-order functions. We define the
-top-level enumerator function, for trivial cases, hence:
-
-> enumerate :: Type -> [CDS]
->
-> enumerate Two = [Zero, One]
-> enumerate (Fn ats) =
-> expand_templates (traverse (length ats) (gen_pfx_trees ats))
-
-Enumerating a function space is tricky. In summary:
-
- - Generate the prefix trees for each argument.
- For non-function arguments this trivial, but for
- function-valued arguments this means a call to the
- enumerator to get all the possible values of the
- (argument) function space.
-
- - Traverse the prefix trees, generating a series of
- "templates" for functions.
-
- - Expand each template thus generated into a genuine CDS.
- Each template denotes a group of CDSs, all of
- the same "shape" and differing only in the constants
- they return. The Magic and RMagic constructors are
- used for these purposes.
-
-Generating prefix trees. For a Two-argument, is easy:
-
-> gen_pfx_trees :: [Type] -> [NTree [CDS]]
->
-> gen_pfx_trees ts = zipWith gen_pfx_tree ts [1 .. length ts]
->
-> gen_pfx_tree :: Type -> Int -> NTree [CDS]
->
-> gen_pfx_tree Two n = NBranch [Par n] []
-
-Note all prefixes are missing the initial (Par n) selector ...
-
-For a function arg
-
- - enumerate each of the *function's* args
-
- - starting with a selector [Empty, ...., Empty],
- make a tree wherein at each level, branching is
- achieved by filling in every Empty with every value
- of that argument type. ToDo: fix this
-
-> gen_pfx_tree (Fn arg_types) n
-> = let number_args = length arg_types
-> enumed_args = map enumerate arg_types
-> initial_sel = take number_args (repeat Empty)
-> init_tree = NBranch ((Par n):initial_sel) []
-> in
-> expand_pfx_tree number_args number_args n enumed_args init_tree
-
-@expand_pfx_tree@ expands a tree until there are no Emptys
-at the leaves. Its first parameter is the number of Emptys
-in the tree it has been given; when zero, expansion is complete.
-The second parameter is the number of Emptys in the original
-tree (equal to the arity of the function being enumerated).
-Third number is the argument number in the top-level function,
-needed to make the initial "Par n" selector.
-Also needs to carry around the enumeration of the function's
-arguments.
-
-> expand_pfx_tree :: Int -> Int -> Int -> [[CDS]] -> NTree [CDS] -> NTree [CDS]
->
-> expand_pfx_tree 0 w i enums tree = tree
->
-> expand_pfx_tree n w i enums (NBranch sels [])
-> = let indices = [0 .. w - 1]
-> n_minus_1 = n - 1
-> new_sels = concat (map expand_sel indices)
-> expand_sel n
-> = case sels !! (n+1) of
-> Empty -> map (upd (n+1) sels) (enums !! n)
-> other -> []
-> mk_trivial_tree sel = NBranch sel []
-> in
-> NBranch sels (map (expand_pfx_tree n_minus_1 w i enums . mk_trivial_tree)
-> new_sels)
-
-> upd :: Int -> [a] -> a -> [a]
-> upd 0 (y:ys) x = x:ys
-> upd n (y:ys) x = y:upd (n-1) ys x
-
-In the second phase, the prefix trees are traversed to generate
-CDS templates (full of Magic, but no Zero or One).
-The first arg is the number of arguments, and the
-second the prefix trees for each argument.
-
-> traverse :: Int -> [NTree [CDS]] -> [CDS]
-
-Each pfxtree denotes a selector, one for each argument, plus a load
-of more specific selectors. So for each argument, one manufactures
-all possible sub-cds using the sub-selectors as the set Z.
-You then take this arg's selector, and manufacture a load of CDSs
-like this:
-\begin{verbatim}
- Case this_selector
- 0 -> z | z <- Z
- 1 -> z | z <- Z
- Par n -> z | z <- Z for each n in [1 .. length this_selector]
- satisfying this_selector !! n == Empty
-\end{verbatim}
-
-
-> traverse n pfxtrees
-> = Magic : concat (map doOne [0 .. n - 1])
-> where
-> doOne i = traverse_arg n i pfxtrees (pfxtrees !! i)
-
-@traverse_arg@ makes the CDSs corresponding to descending a
-particular argument, the number of which is given as its second
-parameter. It also gets the complete set of pfxtrees and the one
-to descend. Note that having descended in the given argument, we
-check its sub-selectors. If none, (an empty list), this replaced
-by [NLeaf] to make everything work out. A NLeaf selector
-is a dummy which generates no CDSs.
-
-> traverse_arg n i pfxtrees NLeaf
-> = []
-
-> traverse_arg n i pfxtrees (NBranch this_selector subsidiary_selectors_init)
-> = let subsidiary_selectors
-> = case subsidiary_selectors_init of
-> [] -> [NLeaf]; (_:_) -> subsidiary_selectors_init
-> subsidiary_pfxtrees = map (upd i pfxtrees) subsidiary_selectors
-> par_requests = preq 1 [] this_selector
-> preq n acc [] = acc
-> preq n acc (Empty:rest) = preq (n+1) ((RP n):acc) rest
-> preq n acc (other:rest) = preq (n+1) acc rest
-> subsidiary_cdss = concat (map (traverse n) subsidiary_pfxtrees)
-> all_poss_rhss = splat (2 + length par_requests) subsidiary_cdss
-> all_poss_returns = [RZero, ROne] ++ par_requests
-> in
-> [Case this_selector (zip all_poss_returns rhs)
-> | rhs <- all_poss_rhss]
->
-> splat :: Int -> [a] -> [[a]]
-> splat 0 set = [[]]
-> splat n set = [x:xs | x <- set, xs <- splat (n-1) set]
-
-The final stage in the game is to fill in all the @Magic@s
-with constants. A template with $n$ @Magic@s presently generates
-@2^n@ CDSs, obtained by all possible combinations of
-filling each @Magic@ in with @Zero@ or @One@. To do this we
-first need to count the @Magic@s.
-
-> count_magic :: CDS -> Int
->
-> count_magic Magic = 1
-> count_magic (Case sels alts) = sum (map (count_magic.snd) alts)
-
-We don't expect to see anything else at this stage.
-Now make $2^n$ lists, each of length $n$, each with a different
-sequence of @Zero@s and @One@s. Use these to label the
-@Magic@s in the template.
-
-> label_cds :: CDS -> [CDS] -> ([CDS], CDS)
->
-> label_cds Magic (l:ls) = (ls, l)
-> label_cds (Case sels alts) ls
-> = case f ls alts of (l9, alts_done) -> (l9, Case sels alts_done)
-> where
-> f l0 [] = (l0, [])
-> f l0 (a:as) = let (l1, a_done) = lalt l0 a
-> (l2, as_done) = f l1 as
-> in (l2, a_done:as_done)
-> lalt l0 (ret, cds) = case label_cds cds l0 of
-> (l1, cds_done) -> (l1, (ret, cds_done))
-
-Finally:
-
-> expand_templates :: [CDS] -> [CDS]
->
-> expand_templates ts
-> = concat (map f ts)
-> where
-> f tem = map (snd . label_cds tem)
-> (splat (count_magic tem) [Zero, One])
-
---> testq tt = (layn . map show' . nub) (enumerate tt)
-
-> main = putStrLn (show (apply_cds `myElem` (enumerate (Fn [Fn [Two], Two]))))
->
-> i `myElem` [] = False
-> i `myElem` (x:xs) = if i == x then True else i `myElem` xs
-
-%============================================================
-%============================================================
diff --git a/testsuite/tests/ghc-regress/programs/seward-space-leak/Makefile b/testsuite/tests/ghc-regress/programs/seward-space-leak/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/seward-space-leak/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/seward-space-leak/README b/testsuite/tests/ghc-regress/programs/seward-space-leak/README
deleted file mode 100644
index b43c8a7e7b..0000000000
--- a/testsuite/tests/ghc-regress/programs/seward-space-leak/README
+++ /dev/null
@@ -1,13 +0,0 @@
-I thought this crashed if compiled without -O, but I
-can't make it do so.
-
- glhc -darity-checks -C Main.hs
-
-then
-
- glhc -g -v -optc-O Main.hc -o cg023-reg
-
-It eats 3Gbytes and runs for 10mins but doesn't crash.
-
-
-SLPJ 17 june 93
diff --git a/testsuite/tests/ghc-regress/programs/seward-space-leak/cg023.stdout b/testsuite/tests/ghc-regress/programs/seward-space-leak/cg023.stdout
deleted file mode 100644
index c1f22fbc23..0000000000
--- a/testsuite/tests/ghc-regress/programs/seward-space-leak/cg023.stdout
+++ /dev/null
@@ -1 +0,0 @@
-False \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/programs/seward-space-leak/seward-space-leak.stdout b/testsuite/tests/ghc-regress/programs/seward-space-leak/seward-space-leak.stdout
deleted file mode 100644
index bc59c12aa1..0000000000
--- a/testsuite/tests/ghc-regress/programs/seward-space-leak/seward-space-leak.stdout
+++ /dev/null
@@ -1 +0,0 @@
-False
diff --git a/testsuite/tests/ghc-regress/programs/seward-space-leak/test.T b/testsuite/tests/ghc-regress/programs/seward-space-leak/test.T
deleted file mode 100644
index bdb7759275..0000000000
--- a/testsuite/tests/ghc-regress/programs/seward-space-leak/test.T
+++ /dev/null
@@ -1,7 +0,0 @@
-setTestOpts(omit_compiler_types(['hugs'])) # takes much too long
-
-test('seward-space-leak',
- [skip_if_fast, extra_clean(['Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/strict_anns/Main.hs b/testsuite/tests/ghc-regress/programs/strict_anns/Main.hs
deleted file mode 100644
index b2ee82d4bc..0000000000
--- a/testsuite/tests/ghc-regress/programs/strict_anns/Main.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- This test checks that constructors with strictness annotations
--- at least parse correctly. In GHC 2.02 they didn't!
-
-module Main where
-
-data Foo1 = Crunch1 ! Int ! Int Int deriving( Show )
-
-data Foo2 = Crunch2 ! Int Int Int deriving( Show )
-
-main = do
- print (Crunch1 (1+1) (2+2) (3+3))
- print (Crunch2 (1+1) (2+2) (3+3))
-
diff --git a/testsuite/tests/ghc-regress/programs/strict_anns/Makefile b/testsuite/tests/ghc-regress/programs/strict_anns/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/strict_anns/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/strict_anns/strict_anns.stdout b/testsuite/tests/ghc-regress/programs/strict_anns/strict_anns.stdout
deleted file mode 100644
index 0f6e62ec68..0000000000
--- a/testsuite/tests/ghc-regress/programs/strict_anns/strict_anns.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Crunch1 2 4 6
-Crunch2 2 4 6
diff --git a/testsuite/tests/ghc-regress/programs/strict_anns/test.T b/testsuite/tests/ghc-regress/programs/strict_anns/test.T
deleted file mode 100644
index 77ed9dab53..0000000000
--- a/testsuite/tests/ghc-regress/programs/strict_anns/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('strict_anns',
- [skip_if_fast, extra_clean(['Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/thurston-modular-arith/Main.hs b/testsuite/tests/ghc-regress/programs/thurston-modular-arith/Main.hs
deleted file mode 100644
index 608025b1e1..0000000000
--- a/testsuite/tests/ghc-regress/programs/thurston-modular-arith/Main.hs
+++ /dev/null
@@ -1,62 +0,0 @@
-{-# LANGUAGE UndecidableInstances, ExistentialQuantification,
- ScopedTypeVariables, Rank2Types #-}
-
--- Modular arithmetic, due to Dale Thurston
-
--- Here's a way to mimic dependent types using existential types,
--- illustrated by an implementation of modular arithmetic. To try it
--- out, load modulus.hs and try something like
--- inModulus (mkModulus (1234567890123::Integer)) (^ 98765432198765) 2
--- to compute 2 to the 98765432198765'th power modulo 1234567890123.
-
--- The key is the definitions at the top of TypeVal.hs:
---
--- class TypeVal a t | t -> a where
--- -- typeToVal should ignore its argument.
--- typeToVal :: t -> a
---
--- data Wrapper a = forall t . (TypeVal a t) => Wrapper t
---
--- class ValToType a where
--- valToType :: a -> Wrapper a
---
--- `valToType' takes a value `x' and returns a (wrapped version of a)
--- fake value in a new type; from the new type, `x' can be recovered by
--- applying typeToVal.
---
--- This code works under ghc. It uses existentially quantified data
--- constructors, scoped type variables, and explicit universal
--- quantification.
-
-
-module Main where
-
-import TypeVal
-
-default (Integer)
-
-main = print (map (inModulus (mkModulus (1234567890123::Integer)) (^98765432198765)) [2..1000])
-
-
-
-data Mod s a = Mod {value::a} deriving (Eq, Show)
-
-data Modulus a = forall s. TypeVal a s => Modulus (a -> Mod s a) (Mod s a -> a)
-
-mkModulus :: (ValToType a, Integral a) => a -> Modulus a
-mkModulus x = case valToType x of {Wrapper (y :: t) ->
- Modulus normalize (value :: Mod t a -> a)}
-
-normalize :: forall a s. (TypeVal a s, Integral a) => a -> Mod s a
-normalize x = (Mod (x `mod` typeToVal (undefined::s)))
-
-inModulus :: Modulus a -> (forall s . TypeVal a s => Mod s a -> Mod s a)
- -> a -> a
-inModulus (Modulus in_ out) f x = out (f (in_ x))
-
-instance (TypeVal a s, Integral a) => Num (Mod s a) where
- Mod x + Mod y = normalize (x + y)
- Mod x - Mod y = normalize (x - y)
- negate (Mod x) = normalize (negate x)
- Mod x * Mod y = normalize (x * y)
- fromInteger a = normalize (fromInteger a)
diff --git a/testsuite/tests/ghc-regress/programs/thurston-modular-arith/Makefile b/testsuite/tests/ghc-regress/programs/thurston-modular-arith/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/programs/thurston-modular-arith/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/programs/thurston-modular-arith/TypeVal.hs b/testsuite/tests/ghc-regress/programs/thurston-modular-arith/TypeVal.hs
deleted file mode 100644
index f1608a7dfe..0000000000
--- a/testsuite/tests/ghc-regress/programs/thurston-modular-arith/TypeVal.hs
+++ /dev/null
@@ -1,89 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- UndecidableInstances, ExistentialQuantification,
- ScopedTypeVariables #-}
-
--- TypeVal.hs: dependent types, here we come!
-module TypeVal where
-
--- The functional dependency is necessary to get ghc to accept
--- some of the instances below. Is this a bug?
-class TypeVal a t | t -> a where
- -- typeToVal should ignore its argument.
- typeToVal :: t -> a
-
-data Wrapper a = forall t . (TypeVal a t) => Wrapper t
-instance Show a => Show (Wrapper a) where
- show x = "valToType " ++ show (getValue x)
-
-class ValToType a where
- valToType :: a -> Wrapper a
-
-getValue :: Wrapper a -> a
-getValue (Wrapper p) = case p of {(_::t) -> typeToVal (undefined::t)}
-
--- Instances of ValToType for standard types. This would also be a
--- straightforward compiler extension for the general case.
----- ValToType Bool
-data TRUE = Dummy1
-instance TypeVal Bool TRUE where typeToVal = const True
-data FALSE = Dummy2
-instance TypeVal Bool FALSE where typeToVal = const False
-
-instance ValToType Bool where
- valToType True = Wrapper (undefined :: TRUE)
- valToType False = Wrapper (undefined :: FALSE)
-
----- ValToType Int, ValToType Integer
-data Zero = Dummy3
-instance TypeVal Integer Zero where typeToVal = const 0
-data Succ n = Dummy4
-instance (TypeVal Integer n) => TypeVal Integer (Succ n)
- where typeToVal = const (typeToVal (undefined :: n) + 1)
-data Pred n = Dummy5
-instance (TypeVal Integer n) => TypeVal Integer (Pred n)
- where typeToVal = const (typeToVal (undefined :: n) - 1)
-data Dbl n = Dummy6
-instance (TypeVal Integer n) => TypeVal Integer (Dbl n)
- where typeToVal = const (typeToVal (undefined :: n) * 2)
-
-instance ValToType Integer where
- valToType n | n == 0 = Wrapper (undefined :: Zero)
- | even n =
- case valToType (div n 2) of {Wrapper x ->
- case x of {(_ :: t) ->
- Wrapper (undefined :: Dbl t)}}
- | n > 0 =
- case valToType (n-1) of {Wrapper x ->
- case x of {(_ :: t) ->
- Wrapper (undefined :: Succ t)}}
- | n < 1 =
- case valToType (n+1) of {Wrapper x ->
- case x of {(_ :: t) ->
- Wrapper (undefined :: Pred t)}}
-
---- ValToType (a,b)
---- Doesn't work. Perhaps a bug in ghc?
---- Don't need it yet, anyway.
---instance (TypeVal a1 t1, TypeVal a2 t2) => TypeVal (a1,a2) (t1,t2)
--- where typeToVal (x,y) = (typeToVal x, typeToVal y)
-
---instance (ValToType a, ValToType b) => ValToType (a,b) where
--- valToType (a,b) = case valToType a of {x ->
--- case valToType b of {y ->
--- Wrapper (x,y)}}
-
-data NIL a = Dummy20
-instance TypeVal [a] (NIL a)
- where typeToVal = const []
-data CONS t r = Dummy21
-instance (TypeVal [a] r, TypeVal a t) => TypeVal [a] (CONS t r)
- where typeToVal = const (typeToVal (undefined::t):typeToVal (undefined::r))
-
-instance (ValToType a) => ValToType [a] where
- valToType [] = Wrapper (undefined::NIL a)
- valToType (x:xs) = case valToType x of {Wrapper x' ->
- case x' of {(_::xt) ->
- case valToType xs of {Wrapper xs' ->
- case xs' of {(_::xst) ->
- Wrapper (undefined::CONS xt xst)}}}}
-
diff --git a/testsuite/tests/ghc-regress/programs/thurston-modular-arith/test.T b/testsuite/tests/ghc-regress/programs/thurston-modular-arith/test.T
deleted file mode 100644
index 812fb07ba0..0000000000
--- a/testsuite/tests/ghc-regress/programs/thurston-modular-arith/test.T
+++ /dev/null
@@ -1,8 +0,0 @@
-# uses GHC-specific scoped type variables
-test('thurston-modular-arith',
- [skip_if_fast,
- extra_clean(['Main.hi', 'Main.o', 'TypeVal.hi', 'TypeVal.o']),
- only_compiler_types(['ghc'])],
- multimod_compile_and_run,
- ['Main', ''])
-
diff --git a/testsuite/tests/ghc-regress/programs/thurston-modular-arith/thurston-modular-arith.stdout b/testsuite/tests/ghc-regress/programs/thurston-modular-arith/thurston-modular-arith.stdout
deleted file mode 100644
index 8e3f242235..0000000000
--- a/testsuite/tests/ghc-regress/programs/thurston-modular-arith/thurston-modular-arith.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[1160454313058,601042866744,486139893064,1061833102220,1200539454459,431697477337,1071932948573,437368016493,648465519190,28117328753,572802463620,525458964661,1098965050058,1146413181663,1031790281833,132693597578,1022572439703,1188385014820,1155550272194,1085333828748,711138169084,1097810085884,969851413290,688113499105,1051451464166,91762740357,683576430811,1017300306164,859345346706,464476722784,986691407909,126154333557,616844850370,807700787534,950949002319,569427334108,139926701747,190252127100,681104764591,255337432013,578119123611,1095387195469,205025111054,4280351535,610564088860,668244575777,808958391,413622644002,547196368946,972489655833,43426052275,1029109886156,1003618336884,701219690218,32652275231,856890419730,795025690024,547167228323,81588598779,99123847990,1220352459311,861656358801,415539053485,262846600937,1095771863403,902329833964,155153868473,153256674846,95762892226,434756569979,1119461310498,225955668604,956407996106,602727331338,938712892870,138739207238,597476751261,753203850127,630377605028,1104011481810,651971720632,612639306767,44587272558,723189778903,1175694673739,296308490298,1050104370640,627705731156,456946245990,273636070060,370164717197,714102131007,241897937971,38548029431,641195604432,461162026660,1034230483799,414958271178,116683347148,993546029951,41338685529,1220999331823,355305087011,1154304537831,766433766430,492783359087,728660191128,1182291562810,303019838675,970531985883,1045175815468,414139799249,356215791186,930220136011,1207666364855,579053085321,1129739376256,618126466955,368266007673,603781312885,473511265493,481922050275,677266129081,470427220376,847741222506,990891352681,812435920874,1023023680992,1208648273494,1088031018179,397541463261,529449734884,685114033205,176592183684,1090703954446,425846826311,1030710203349,955873684381,1187149926806,151655613972,786557007817,906015064925,705327542406,765658988977,796744992014,459893204178,7120144612,955773870884,1107099246174,642634148962,523073631629,58810720680,871199825791,432464993000,473547864180,1192291465438,595260628376,1072564372326,78245140603,907635981434,1107920080794,448916242606,138424240535,771626704089,165569019913,39555526940,770608713618,515846898835,75890462387,368361334842,45929245822,113717079968,27967579008,761506187395,1041881431520,325796720496,1116752001385,562028391536,674089512057,684719722795,698329876223,1000106137626,333283811722,544115584442,52151559447,593024042413,593403396845,703893326397,891454822660,673538061926,1085365393980,682406768362,1175661162158,24810610938,428514302596,242328677783,1146691870623,445320947368,864057887837,1043096768322,1079482205566,528910556072,656320945593,1064352684013,278897066828,225559146681,402782331265,659412153374,362593056657,364730396677,1148557099688,421921752513,133993132252,1212170060675,634220655210,1193832204682,944513974343,100005147966,1143053740822,869930873522,597571253205,1126573274992,1098475166978,1019152575837,127516694770,753856020941,182462155983,1055841159892,1090239319538,1111328111610,109997744290,716224188827,696188724732,628913582881,1140602949365,1191662634855,1118097070063,914849082719,675285189684,1212483031948,1005245378633,359463110721,599408183053,547330377389,722963002668,297547082524,774657435221,99824244072,823385133688,281330124509,496819564299,608029555942,418934961653,535244972361,69559315471,719903133248,775576742202,791217321085,830663150129,357628283766,50329297006,629010984818,399300483534,844190871193,1177651219601,295235324508,298762498933,640850115419,996814410816,1191748613152,623580620366,848859960861,450598347415,937257569423,185858247159,387374896393,484633408337,595302696579,313413800134,496578302939,1186936457550,1084776227881,1207149372011,378702576975,13768562311,88971637925,78133947057,370744945123,506882398136,1041055057095,514588090864,810688626791,749466223761,201955679689,193128396581,622185514341,50781478150,96159001679,1095884182806,363039641863,721677089876,539220204741,703310309362,792815735693,1158048228795,902375131249,967175975249,236171954442,212846487217,355219969592,224801991714,399425740960,705135846005,1097450157045,1113041027773,740806614671,471468459255,212390876815,875518600811,91631615655,549056769637,318874352846,804813562572,320760633832,415881440936,967177486461,220454508523,1017740100677,1189461696882,304789032646,1053664539896,952370456796,387781408399,205824342704,1043023288251,229962678091,1157959228388,157439920431,710504704177,547579387976,162664500339,870138759367,460985207786,455487687357,8941448179,554639580674,1188661385061,541750828411,644168654918,1112574821787,426308210125,32055355232,1043230207386,817091977816,893778761354,943758646944,228461650648,1048712884757,421413823740,325501620253,1199866192940,928639509771,131629542466,129295607117,360470445201,917320693930,762083126231,824301510441,201186223081,333161915069,632714271198,360025291471,1081931599316,1189948821699,478148985928,360636707762,733359741846,1154318330158,4740061154,154804428228,595322626936,1190077271684,648335955183,70902560803,965638725137,884647563534,246333658246,997025680376,876772960188,268821879826,564963007403,496203319992,1190255420221,1205878745345,761790415671,363992050603,914469688418,830971452261,604356339244,681802188773,1139919862926,617134290520,506310044828,1062000551985,367349124595,631047074579,139402478742,119201476132,568357381712,746135276958,377692642384,427149372725,1134775925640,6286992172,1213780407968,1099210021863,1112144815717,186978713498,473414771892,1042388392384,810706992008,1184326701837,230266782967,777166996691,754307517579,185890912750,737382949109,1157370682449,984031886647,201323443925,451852790436,29770301089,510986676710,272590013214,313071017737,183766893173,24142297407,1019310800176,518107423013,848680481169,1001375623714,222556405526,1078851836163,971374237084,685014921170,306091259997,758451325831,161822311238,503187490506,757573811953,399929921153,307727255763,622976564857,777026317370,878048036676,375263237737,190034609300,560433601737,439106791060,688051786847,800100518109,1056996730813,1052473747676,1079216172801,388541989780,693297119405,65087791335,1032219499684,752853293756,225848306913,214729950034,1071237287861,1047979140312,376025964895,723732391964,105401678547,983938797598,779738601410,583856935776,847798794211,1202302182695,433115846580,776043906184,490746025703,540238890048,576350727547,1210658282030,1205125109643,638664247138,1218415239266,665480311572,264979343416,42572107736,519364330929,1013530783237,1136792022548,266240525811,1116177912751,876885668567,579372041244,686881957741,869588711057,53902619421,1137719320579,333660464642,653519234190,536169401650,488134923326,666373975728,574797219589,419780893640,1056631409409,404201534647,700888820813,12633156054,1048562180281,452418067259,98144609445,678734068666,223938955292,571034512779,1089434833354,813073368098,66718778856,896591098510,810930390536,1083816917535,949520068315,237324564635,450805767306,1031087019826,718256322665,668953458180,107118126445,796601244899,423207189471,745416172117,331197599630,548793228600,836410144525,1109259650234,287280184875,551647209646,673640803448,930837538401,246170879647,1073444959250,1133458004343,777088699882,512175277337,187110897210,1188867033061,1029022199471,1003276554945,1149086828404,872914915673,771310912452,919129709572,977899716566,645299335803,636693979498,777884667695,241002230496,308988228235,716253490004,990350757363,551816255251,795464824433,579042118215,590495051341,485379632300,333440087460,401442097876,58112869031,538439987268,723917486872,738611440298,25181737887,789222479599,778777859522,177224757066,591901112146,603428436269,36556739187,1095915354724,1120666090166,1076764711272,417618270562,372482310311,1115161210740,1061283447088,891370967168,614503373025,705386707777,176657312189,426056599269,106155768004,4834253099,185076150300,1134248064883,255044207948,969655781724,801145069630,823540691849,495443851494,1124906765692,63595663727,543602566536,1080292362568,803133407084,1196172699624,615526340809,42092276858,859293415248,34559835463,501493313834,36454784694,605630067508,1192374228119,1171423126038,62066814913,44545946426,439207033797,1092646960921,414091445564,608291005227,21762096208,867954464315,1017550045014,22731996142,49560289331,222015335580,151964194894,696163708808,498591364503,458938819435,852580990280,176405495163,716406386188,873740680490,810232860120,1064634217903,743347864466,542722926261,627997546633,922725420917,141925635147,1082879409280,246364778111,1173214463124,1107528346528,347026435673,1175664021489,811196017027,520831331666,668249677512,414115730068,282793576307,939013384965,246200840836,77432200211,463885150533,394985748859,339962496404,788961748989,492272778106,1132589035625,95797076439,81297818446,603127748105,488796622353,19119566668,350885526914,608635935204,272378421700,266623750190,490855611894,111923979553,213211244837,619892836065,575035208152,600688763276,3968264184,1134646634788,231538274435,472441410960,291440077675,1025363433788,532254950955,949871527390,163404774242,947254408062,989303806084,67039322273,455068899216,759289806901,492408235529,443633467602,197303904070,830603398865,1039525525473,549796662556,225671429921,1089123020142,13099529380,991302967631,376676271165,50848774357,245397995564,27673216080,73564292053,222598516223,162621662673,1116304987417,845358791561,324151213014,663787442521,759535744781,835869085407,45516137494,39088312847,281794196451,742120345573,704748391196,127129982442,784443607819,1007044082108,1020324776409,1151301844147,1054297114136,1217548061994,624217342234,756801050240,827565925374,610212327871,1209344774438,420836195643,190253021119,1019448057740,904737588471,298611112576,922632323987,377556252450,493405832035,986145757880,931014075537,987189757201,16801494617,912036401208,963436283158,961508349530,196882435335,324623940508,488567083754,473968663077,237556588690,428804808065,872569024512,566376854056,169576240292,1184551251063,1047838560715,585107124704,1041503818257,618379283590,986528569040,173200849248,978957144595,377336710283,747312415956,765602210758,987023945711,1221251392449,1144049855161,1194562367543,883657437597,801193848082,1144522383824,19018716660,833643076306,1094367968099,1045228448610,537332435335,937431679397,32309800005,8820587755,1099504787084,316187090010,1076501314930,1117055439086,291270278271,655813071325,823457184848,1030789554096,866396461009,7799629667,727869519225,160285383850,743348569961,1021748344044,540077384539,850294073258,1096919735280,810655428142,778365106256,49073962377,320024370520,678926236469,708492477777,49993284382,762653920025,624120527208,421583562973,1172984912486,158832494130,186071390764,817194898499,1230715808202,1026946734106,742625356844,697042207251,1095808038256,961307591537,870277884573,855648831577,649462441088,695372808411,673649632234,910307791166,1094641072197,474112802497,903646629164,808585464567,650147277253,444834812771,778279687335,211291803634,1022480888153,178013981526,47880352543,975754452467,707537330220,269331014119,303622262270,1039322874414,149200761730,1219332108926,170560181796,945674748334,485302770896,311002029522,559559656303,566899917458,236783273007,206088843892,1088628973061,1026892605411,394263456073,394345625390,1122032680902,491690434723,1020592556885,1219961462568,652365968092,825235016780,73370248665,796890173578,928364785229,17110826604,1162942078537,1173507878195,1232221757148,467827784866,223619026325,298514612472,887977813861,260547093800,825998471361,109911996004,215065834514,319154485806,1189677213955,53282417159,109447793880,1011636097942,176096736290,156690829818,197304290182,125061656846,32794352883,895336369369,1047310675160,469354358526,273657872464,875246913089,717944780535,492436502587,86652673007,1181180595048,256906166476,56191734983,337545292959,20090366131,1042260087323,1096609289421,468486331123,657576693674,540406625694,589752064096,196447528265,1092803351910,1033442605564,738974294747,360853858020,753658950817,251754117887,185150165169,1080251673814,696410723501,209146220727,728116952386,541816275992,885329108817,523336091209,1207901223971,197708138706,549737409931,707289691964,1008236790759,593819768920,3135402797,757258400919,188728338655,326462614298,202101067536,49575572212,792989987609,656828936424,1027081263814,664578896573,568858527078,379895869435,1200454144442,1187313887964,347463668044,863495153564,697828624611,707836378177,497800941782,891147150183,1097337866503,965913241799,214704777741,1233651782329,1135014633092,357714026754,633888552586,89066644166,1030848723300,509543498059,1142147774309,270312177909,729834048334,520851616817,473654695560,1191708665263,980790712148,559483522461,823078061473,139116053984,156281534361,508228538947,1170210501914,98354970072,412534017133,1141235914757,986721161949,178299003463,982812836462,382538408247,424482988636,91109478353,394544577027,633277865194,1017479542775,757102424373,140155683415,455694849041,785294036826,1224623784043,393785874140,990223248441,109957573366,480437033783,1057527371877,1145404508929,531860986940,738863767248,1033171120555]
diff --git a/testsuite/tests/ghc-regress/quasiquotation/Makefile b/testsuite/tests/ghc-regress/quasiquotation/Makefile
deleted file mode 100644
index 96a01ba5bc..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/Makefile
+++ /dev/null
@@ -1,11 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-.PHONY: T4150
-
-T4150:
- $(RM) T4150A.hi T4150A.o T4150.hi T4150.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 -c T4150A.hs
- -'$(TEST_HC)' $(TEST_HC_OPTS) -v0 -c T4150.hs
-
diff --git a/testsuite/tests/ghc-regress/quasiquotation/T3953.hs b/testsuite/tests/ghc-regress/quasiquotation/T3953.hs
deleted file mode 100644
index 2b17419201..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/T3953.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE QuasiQuotes #-}
-
-module T3953 where
-
-foo = [notDefinedHere| |]
-
diff --git a/testsuite/tests/ghc-regress/quasiquotation/T3953.stderr b/testsuite/tests/ghc-regress/quasiquotation/T3953.stderr
deleted file mode 100644
index da6f2dcebf..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/T3953.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-T3953.hs:5:7: Not in scope: `notDefinedHere'
diff --git a/testsuite/tests/ghc-regress/quasiquotation/T4150.hs b/testsuite/tests/ghc-regress/quasiquotation/T4150.hs
deleted file mode 100644
index 3bf7cddc49..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/T4150.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE CPP, QuasiQuotes #-}
-
-module Main (main) where
-
-import T4150A
-
-myHtmlsTemplate = [multiLineStr|
-#include "T4150template.txt"
-|]
-
-somethingElse :: NoSuchType
-somethingElse = undefined
-
-main :: IO ()
-main = print myHtmlsTemplate
-
diff --git a/testsuite/tests/ghc-regress/quasiquotation/T4150.stderr b/testsuite/tests/ghc-regress/quasiquotation/T4150.stderr
deleted file mode 100644
index 9e0f4c26ab..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/T4150.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-T4150.hs:11:18:
- Not in scope: type constructor or class `NoSuchType'
diff --git a/testsuite/tests/ghc-regress/quasiquotation/T4150A.hs b/testsuite/tests/ghc-regress/quasiquotation/T4150A.hs
deleted file mode 100644
index 25ee003fee..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/T4150A.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
-module T4150A where
-
-import Language.Haskell.TH
-import Language.Haskell.TH.Quote
-
-multiLineStr :: QuasiQuoter
-multiLineStr = QuasiQuoter {
- quoteExp = stringE,
- quotePat = error "XXX",
- quoteType = error "XXX",
- quoteDec = error "XXX"
- }
diff --git a/testsuite/tests/ghc-regress/quasiquotation/T4150template.txt b/testsuite/tests/ghc-regress/quasiquotation/T4150template.txt
deleted file mode 100644
index a92d664bc2..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/T4150template.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-line 1
-line 2
-line 3
diff --git a/testsuite/tests/ghc-regress/quasiquotation/all.T b/testsuite/tests/ghc-regress/quasiquotation/all.T
deleted file mode 100644
index 2fa0427813..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/all.T
+++ /dev/null
@@ -1,7 +0,0 @@
-test('T3953', [req_interp, only_compiler_types(['ghc'])], compile_fail, [''])
-test('T4150',
- [only_compiler_types(['ghc']),
- expect_broken(4150),
- extra_clean(['T4150A.hi', 'T4150A.o', 'T4150.hi', 'T4150.o'])],
- run_command,
- ['$MAKE -s --no-print-directory T4150'])
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq001/Makefile b/testsuite/tests/ghc-regress/quasiquotation/qq001/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq001/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq001/qq001.hs b/testsuite/tests/ghc-regress/quasiquotation/qq001/qq001.hs
deleted file mode 100644
index 652c8cf874..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq001/qq001.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE QuasiQuotes #-}
-module Main where
-
-parse = undefined
-
-main :: IO ()
-main = print $ [parse||]
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq001/qq001.stderr b/testsuite/tests/ghc-regress/quasiquotation/qq001/qq001.stderr
deleted file mode 100644
index aa748e60cd..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq001/qq001.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-qq001.hs:7:16:
- GHC stage restriction: parse
- is used in a quasiquote, and must be imported, not defined locally
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq001/test.T b/testsuite/tests/ghc-regress/quasiquotation/qq001/test.T
deleted file mode 100644
index 2db7546687..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq001/test.T
+++ /dev/null
@@ -1,2 +0,0 @@
-test('qq001', [req_interp, only_compiler_types(['ghc'])],
- compile_fail, [''])
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq002/Makefile b/testsuite/tests/ghc-regress/quasiquotation/qq002/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq002/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq002/qq002.hs b/testsuite/tests/ghc-regress/quasiquotation/qq002/qq002.hs
deleted file mode 100644
index a9ac995e5a..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq002/qq002.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE QuasiQuotes #-}
-module Main where
-
-parse = undefined
-
-main :: IO ()
-main = case () of
- [parse||] -> return ()
- _ -> return ()
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq002/qq002.stderr b/testsuite/tests/ghc-regress/quasiquotation/qq002/qq002.stderr
deleted file mode 100644
index b32b5ac6a0..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq002/qq002.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-qq002.hs:8:10:
- GHC stage restriction: parse
- is used in a quasiquote, and must be imported, not defined locally
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq002/test.T b/testsuite/tests/ghc-regress/quasiquotation/qq002/test.T
deleted file mode 100644
index 2c39664a85..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq002/test.T
+++ /dev/null
@@ -1,2 +0,0 @@
-test('qq002', [req_interp, only_compiler_types(['ghc'])],
- compile_fail, [''])
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq003/Makefile b/testsuite/tests/ghc-regress/quasiquotation/qq003/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq003/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq003/qq003.hs b/testsuite/tests/ghc-regress/quasiquotation/qq003/qq003.hs
deleted file mode 100644
index 7afbad964e..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq003/qq003.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE QuasiQuotes #-}
-module Main where
-
-main :: IO ()
-main = print $ \parse -> [parse||]
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq003/qq003.stderr b/testsuite/tests/ghc-regress/quasiquotation/qq003/qq003.stderr
deleted file mode 100644
index a1f490fb2c..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq003/qq003.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-qq003.hs:5:26:
- GHC stage restriction: parse
- is used in a quasiquote, and must be imported, not defined locally
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq003/test.T b/testsuite/tests/ghc-regress/quasiquotation/qq003/test.T
deleted file mode 100644
index 9c61d0a11a..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq003/test.T
+++ /dev/null
@@ -1,2 +0,0 @@
-test('qq003', [req_interp, only_compiler_types(['ghc'])],
- compile_fail, [''])
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq004/Makefile b/testsuite/tests/ghc-regress/quasiquotation/qq004/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq004/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq004/qq004.hs b/testsuite/tests/ghc-regress/quasiquotation/qq004/qq004.hs
deleted file mode 100644
index c95b94ef02..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq004/qq004.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE QuasiQuotes #-}
-module Main where
-
-main :: IO ()
-main = p undefined
- where
- p = \parse -> case () of
- [parse||] -> return ()
- _ -> return ()
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq004/qq004.stderr b/testsuite/tests/ghc-regress/quasiquotation/qq004/qq004.stderr
deleted file mode 100644
index be61788926..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq004/qq004.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-qq004.hs:8:21:
- GHC stage restriction: parse
- is used in a quasiquote, and must be imported, not defined locally
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq004/test.T b/testsuite/tests/ghc-regress/quasiquotation/qq004/test.T
deleted file mode 100644
index 13ecda5dad..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq004/test.T
+++ /dev/null
@@ -1,2 +0,0 @@
-test('qq004', [req_interp, only_compiler_types(['ghc'])],
- compile_fail, [''])
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq005/Expr.hs b/testsuite/tests/ghc-regress/quasiquotation/qq005/Expr.hs
deleted file mode 100644
index d628e8d52f..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq005/Expr.hs
+++ /dev/null
@@ -1,99 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-module Expr where
-
-import Data.Generics
-import Language.Haskell.TH as TH
-import Language.Haskell.TH.Quote
-
-import Text.ParserCombinators.Parsec
-import Text.ParserCombinators.Parsec.Char
-
-data Expr = IntExpr Integer
- | AntiIntExpr String
- | BinopExpr BinOp Expr Expr
- | AntiExpr String
- deriving(Typeable, Data)
-
-data BinOp = AddOp
- | SubOp
- | MulOp
- | DivOp
- deriving(Typeable, Data)
-
-eval :: Expr -> Integer
-eval (IntExpr n) = n
-eval (BinopExpr op x y) = (opToFun op) (eval x) (eval y)
- where
- opToFun AddOp = (+)
- opToFun SubOp = (-)
- opToFun MulOp = (*)
- opToFun DivOp = (div)
-
-small = lower <|> char '_'
-large = upper
-idchar = small <|> large <|> digit <|> char '\''
-
-lexeme p = do{ x <- p; spaces; return x }
-symbol name = lexeme (string name)
-parens p = between (symbol "(") (symbol ")") p
-
-_expr :: CharParser st Expr
-_expr = term `chainl1` mulop
-
-term :: CharParser st Expr
-term = factor `chainl1` addop
-
-factor :: CharParser st Expr
-factor = parens _expr <|> integer <|> anti
-
-mulop = do{ symbol "*"; return $ BinopExpr MulOp }
- <|> do{ symbol "/"; return $ BinopExpr DivOp }
-
-addop = do{ symbol "+"; return $ BinopExpr AddOp }
- <|> do{ symbol "-"; return $ BinopExpr SubOp }
-
-integer :: CharParser st Expr
-integer = lexeme $ do{ ds <- many1 digit ; return $ IntExpr (read ds) }
-
-anti = lexeme $
- do symbol "$"
- c <- small
- cs <- many idchar
- return $ AntiIntExpr (c : cs)
-
-parseExpr :: Monad m => TH.Loc -> String -> m Expr
-parseExpr (Loc {loc_filename = file, loc_start = (line,col)}) s =
- case runParser p () "" s of
- Left err -> fail $ show err
- Right e -> return e
- where
- p = do pos <- getPosition
- setPosition $ setSourceName (setSourceLine (setSourceColumn pos col) line) file
- spaces
- e <- _expr
- eof
- return e
-
-expr = QuasiQuoter { quoteExp = parseExprExp, quotePat = parseExprPat }
-
-parseExprExp :: String -> Q Exp
-parseExprExp s = do loc <- location
- expr <- parseExpr loc s
- dataToExpQ (const Nothing `extQ` antiExprExp) expr
-
-antiExprExp :: Expr -> Maybe (Q Exp)
-antiExprExp (AntiIntExpr v) = Just $ appE (conE (mkName "IntExpr"))
- (varE (mkName v))
-antiExprExp (AntiExpr v) = Just $ varE (mkName v)
-antiExprExp _ = Nothing
-
-parseExprPat :: String -> Q Pat
-parseExprPat s = do loc <- location
- expr <- parseExpr loc s
- dataToPatQ (const Nothing `extQ` antiExprPat) expr
-
-antiExprPat :: Expr -> Maybe (Q Pat)
-antiExprPat (AntiIntExpr v) = Just $ conP (mkName "IntExpr")
- [varP (mkName v)]
-antiExprPat (AntiExpr v) = Just $ varP (mkName v)
-antiExprPat _ = Nothing
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq005/Main.hs b/testsuite/tests/ghc-regress/quasiquotation/qq005/Main.hs
deleted file mode 100644
index d8c8a3433c..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq005/Main.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE QuasiQuotes #-}
-module Main where
-
-import Expr
-
-main :: IO ()
-main = do print $ eval [expr|1 + 3 + 5|]
- case [expr|2|] of
- [expr|$n|] -> print n
- _ -> return ()
- case [$expr|1 + 2|] of
- [expr|$x + $y|] -> putStrLn $ show x ++ " + " ++ show y
- _ -> return ()
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq005/Makefile b/testsuite/tests/ghc-regress/quasiquotation/qq005/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq005/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq005/qq005.stderr b/testsuite/tests/ghc-regress/quasiquotation/qq005/qq005.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq005/qq005.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq005/qq005.stdout b/testsuite/tests/ghc-regress/quasiquotation/qq005/qq005.stdout
deleted file mode 100644
index b9473d1e3b..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq005/qq005.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-9
-2
-1 + 2
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq005/test.T b/testsuite/tests/ghc-regress/quasiquotation/qq005/test.T
deleted file mode 100644
index 52671ef838..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq005/test.T
+++ /dev/null
@@ -1,11 +0,0 @@
-test('qq005',
- [skip_if_fast,
- reqlib('parsec'),
- only_compiler_types(['ghc']),
- # We'd need to jump through some hoops to run this test the
- # profiling ways, due to the TH use, so for now we just
- # omit the profiling ways
- omit_ways(['profasm','profthreaded']),
- extra_clean(['Expr.hi', 'Expr.o', 'Main.hi', 'Main.o'])],
- multimod_compile_and_run,
- ['Main', ''])
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq006/Expr.hs b/testsuite/tests/ghc-regress/quasiquotation/qq006/Expr.hs
deleted file mode 100644
index d628e8d52f..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq006/Expr.hs
+++ /dev/null
@@ -1,99 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-module Expr where
-
-import Data.Generics
-import Language.Haskell.TH as TH
-import Language.Haskell.TH.Quote
-
-import Text.ParserCombinators.Parsec
-import Text.ParserCombinators.Parsec.Char
-
-data Expr = IntExpr Integer
- | AntiIntExpr String
- | BinopExpr BinOp Expr Expr
- | AntiExpr String
- deriving(Typeable, Data)
-
-data BinOp = AddOp
- | SubOp
- | MulOp
- | DivOp
- deriving(Typeable, Data)
-
-eval :: Expr -> Integer
-eval (IntExpr n) = n
-eval (BinopExpr op x y) = (opToFun op) (eval x) (eval y)
- where
- opToFun AddOp = (+)
- opToFun SubOp = (-)
- opToFun MulOp = (*)
- opToFun DivOp = (div)
-
-small = lower <|> char '_'
-large = upper
-idchar = small <|> large <|> digit <|> char '\''
-
-lexeme p = do{ x <- p; spaces; return x }
-symbol name = lexeme (string name)
-parens p = between (symbol "(") (symbol ")") p
-
-_expr :: CharParser st Expr
-_expr = term `chainl1` mulop
-
-term :: CharParser st Expr
-term = factor `chainl1` addop
-
-factor :: CharParser st Expr
-factor = parens _expr <|> integer <|> anti
-
-mulop = do{ symbol "*"; return $ BinopExpr MulOp }
- <|> do{ symbol "/"; return $ BinopExpr DivOp }
-
-addop = do{ symbol "+"; return $ BinopExpr AddOp }
- <|> do{ symbol "-"; return $ BinopExpr SubOp }
-
-integer :: CharParser st Expr
-integer = lexeme $ do{ ds <- many1 digit ; return $ IntExpr (read ds) }
-
-anti = lexeme $
- do symbol "$"
- c <- small
- cs <- many idchar
- return $ AntiIntExpr (c : cs)
-
-parseExpr :: Monad m => TH.Loc -> String -> m Expr
-parseExpr (Loc {loc_filename = file, loc_start = (line,col)}) s =
- case runParser p () "" s of
- Left err -> fail $ show err
- Right e -> return e
- where
- p = do pos <- getPosition
- setPosition $ setSourceName (setSourceLine (setSourceColumn pos col) line) file
- spaces
- e <- _expr
- eof
- return e
-
-expr = QuasiQuoter { quoteExp = parseExprExp, quotePat = parseExprPat }
-
-parseExprExp :: String -> Q Exp
-parseExprExp s = do loc <- location
- expr <- parseExpr loc s
- dataToExpQ (const Nothing `extQ` antiExprExp) expr
-
-antiExprExp :: Expr -> Maybe (Q Exp)
-antiExprExp (AntiIntExpr v) = Just $ appE (conE (mkName "IntExpr"))
- (varE (mkName v))
-antiExprExp (AntiExpr v) = Just $ varE (mkName v)
-antiExprExp _ = Nothing
-
-parseExprPat :: String -> Q Pat
-parseExprPat s = do loc <- location
- expr <- parseExpr loc s
- dataToPatQ (const Nothing `extQ` antiExprPat) expr
-
-antiExprPat :: Expr -> Maybe (Q Pat)
-antiExprPat (AntiIntExpr v) = Just $ conP (mkName "IntExpr")
- [varP (mkName v)]
-antiExprPat (AntiExpr v) = Just $ varP (mkName v)
-antiExprPat _ = Nothing
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq006/Main.hs b/testsuite/tests/ghc-regress/quasiquotation/qq006/Main.hs
deleted file mode 100644
index 7e21acc235..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq006/Main.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE QuasiQuotes #-}
-module Main where
-
-import Expr
-
-main :: IO ()
-main = do case [$expr|1 + 2|] of
- [$expr|$x + $x|] -> print x
- _ -> return ()
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq006/Makefile b/testsuite/tests/ghc-regress/quasiquotation/qq006/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq006/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq006/qq006.stderr b/testsuite/tests/ghc-regress/quasiquotation/qq006/qq006.stderr
deleted file mode 100644
index 3eb51824b0..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq006/qq006.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-Main.hs:8:20:
- Conflicting definitions for `x'
- In a case alternative
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq006/test.T b/testsuite/tests/ghc-regress/quasiquotation/qq006/test.T
deleted file mode 100644
index 21d9a3db1c..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq006/test.T
+++ /dev/null
@@ -1,7 +0,0 @@
-test('qq006',
- [skip_if_fast,
- reqlib('parsec'),
- extra_clean(['Expr.hi', 'Expr.o']),
- only_compiler_types(['ghc'])],
- multimod_compile_fail,
- ['Main', '-v0'])
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq007/Makefile b/testsuite/tests/ghc-regress/quasiquotation/qq007/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq007/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq007/QQ.hs b/testsuite/tests/ghc-regress/quasiquotation/qq007/QQ.hs
deleted file mode 100644
index 3c13315a31..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq007/QQ.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module QQ where
-
-import Language.Haskell.TH.Quote
-import Language.Haskell.TH
-
-pq = QuasiQuoter { quoteDec = \_ -> [d| f x = x |],
- quoteType = \_ -> [t| Int -> Int |],
- quoteExp = \_ -> [| $(varE (mkName "x")) + 1::Int |],
- quotePat = \_ -> [p| Just x |] }
-
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq007/Test.hs b/testsuite/tests/ghc-regress/quasiquotation/qq007/Test.hs
deleted file mode 100644
index 42cef722d3..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq007/Test.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE QuasiQuotes #-}
-module Test where
-
-import QQ
-
-f :: [pq| foo |] -- Expands to Int -> Int
-[pq| blah |] -- Expands to f x = x
-
-h [pq| foo |] = f [pq| blah |] * 8
- -- Expands to h (Just x) = f (x+1) * 8
-
-
-
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq007/test.T b/testsuite/tests/ghc-regress/quasiquotation/qq007/test.T
deleted file mode 100644
index 6b7ef6dcd7..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq007/test.T
+++ /dev/null
@@ -1,10 +0,0 @@
-test('qq007',
- [skip_if_fast,
- extra_clean(['QQ.hi', 'QQ.o', 'Test.hi', 'Test.o']),
- # We'd need to jump through some hoops to run this test the
- # profiling ways, due to the TH use, so for now we just
- # omit the profiling ways
- omit_ways(['profasm','profthreaded']),
- only_compiler_types(['ghc'])],
- multimod_compile,
- ['Test', '-v0'])
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq008/Makefile b/testsuite/tests/ghc-regress/quasiquotation/qq008/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq008/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq008/QQ.hs b/testsuite/tests/ghc-regress/quasiquotation/qq008/QQ.hs
deleted file mode 100644
index eee8dc9670..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq008/QQ.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module QQ where
-
-import Language.Haskell.TH.Quote
-import Language.Haskell.TH
-
-pq = QuasiQuoter { quoteDec = \_ -> [d| f x = x |],
- quoteType = \_ -> [t| Int -> Int |],
- quoteExp = \_ -> [| $(varE (mkName "x")) + 1::Int |],
- quotePat = \_ -> [p| Just x |] }
-
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq008/Test.hs b/testsuite/tests/ghc-regress/quasiquotation/qq008/Test.hs
deleted file mode 100644
index c04f427f63..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq008/Test.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE QuasiQuotes #-}
-module Test where
-
-import QQ
-
-f :: [pq| foo |] -- Expands to Int -> Int
-[pq| blah |] -- Expands to f x = x
-
-h [pq| foo |] = f [$pq| blah |] * 8
--- Expands to h (Just x) = f (x+1) * 8
-
-
-
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq008/qq008.stderr b/testsuite/tests/ghc-regress/quasiquotation/qq008/qq008.stderr
deleted file mode 100644
index b13e999463..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq008/qq008.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-Test.hs:9:19:
- Warning: Deprecated syntax:
- quasiquotes no longer need a dollar sign: $pq
diff --git a/testsuite/tests/ghc-regress/quasiquotation/qq008/test.T b/testsuite/tests/ghc-regress/quasiquotation/qq008/test.T
deleted file mode 100644
index 02b88dbd0a..0000000000
--- a/testsuite/tests/ghc-regress/quasiquotation/qq008/test.T
+++ /dev/null
@@ -1,10 +0,0 @@
-test('qq008',
- [skip_if_fast,
- extra_clean(['QQ.hi', 'QQ.o', 'Test.hi', 'Test.o']),
- # We'd need to jump through some hoops to run this test the
- # profiling ways, due to the TH use, so for now we just
- # omit the profiling ways
- omit_ways(['profasm','profthreaded']),
- only_compiler_types(['ghc'])],
- multimod_compile,
- ['Test', '-v0'])
diff --git a/testsuite/tests/ghc-regress/rebindable/DoParamM.hs b/testsuite/tests/ghc-regress/rebindable/DoParamM.hs
deleted file mode 100644
index 95ff235cdd..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/DoParamM.hs
+++ /dev/null
@@ -1,303 +0,0 @@
-{-# OPTIONS -XRebindableSyntax #-}
--- Haskell98!
-
--- Tests of the do-notation for the parameterized monads
--- We demonstrate a variable-type state `monadic' transformer
--- and its phantom-type-state relative to enforce the locking protocol
--- (a lock can be released only if it is being held, and acquired only
--- if it is not being held)
--- The tests are based on the code
--- http://okmij.org/ftp/Computation/monads.html#param-monad
-
--- Please search for DO-NOT-YET
-
-module DoParamM where
-
-import Prelude (const, String, ($), (.), Maybe(..),
- Int, fromInteger, succ, pred, fromEnum, toEnum,
- (+), Char, (==), Bool(..),
- IO, getLine, putStrLn, read, show)
-import qualified Prelude
-import qualified Control.Monad.State as State
-import qualified Control.Monad.Identity as IdM
-
--- A parameterized `monad'
-class Monadish m where
- return :: a -> m p p a
- fail :: String -> m p p a
- (>>=) :: m p q a -> (a -> m q r b) -> m p r b
-
-m1 >> m2 = m1 >>= (const m2)
-
--- All regular monads are the instances of the parameterized monad
-
-newtype RegularM m p q a = RegularM{unRM :: m a}
-
-instance Prelude.Monad m => Monadish (RegularM m) where
- return = RegularM . Prelude.return
- fail = RegularM . Prelude.fail
- m >>= f = RegularM ((Prelude.>>=) (unRM m) (unRM . f))
-
--- As a warm-up, we write the regular State computation, with the same
--- type of state throughout. We thus inject Monad.State into the
--- parameterized monad
-
-test1 = State.runState (unRM c) (0::Int) where
- c = gget >>= (\v -> gput (succ v) >> return v)
- gget :: (State.MonadState s m) => RegularM m s s s
- gget = RegularM State.get
- gput :: (State.MonadState s m) => s -> RegularM m s s ()
- gput = RegularM . State.put
--- (0,1)
-
--- The same in the do-notation
-test1_do = State.runState (unRM c) (0::Int) where
- c = do
- v <- gget
- gput (succ v)
- return v
- gget :: (State.MonadState s m) => RegularM m s s s
- gget = RegularM State.get
- gput :: (State.MonadState s m) => s -> RegularM m s s ()
- gput = RegularM . State.put
--- (0,1)
-
-
--- Introduce the variable-type state (transformer)
-
-newtype VST m si so v = VST{runVST:: si -> m (so,v)}
-
-instance Prelude.Monad m => Monadish (VST m) where
- return x = VST (\si -> Prelude.return (si,x))
- fail x = VST (\si -> Prelude.fail x)
- m >>= f = VST (\si -> (Prelude.>>=) (runVST m si)
- (\ (sm,x) -> runVST (f x) sm))
-
-vsget :: Prelude.Monad m => VST m si si si
-vsget = VST (\si -> Prelude.return (si,si))
-vsput :: Prelude.Monad m => so -> VST m si so ()
-vsput x = VST (\si -> Prelude.return (x,()))
-
-
--- Repeat test1 via VST: the type of the state is the same
-vsm1 () = vsget >>= (\v -> vsput (succ v) >> return v)
-
--- The same with the do-notation
-vsm1_do () = do
- v <- vsget
- vsput (succ v)
- return v
-
-{-
- *DoParamM> :t vsm1
- vsm1 :: (Monadish (VST m), IdM.Monad m, Prelude.Enum si) =>
- () -> VST m si si si
--}
-
-test2 = IdM.runIdentity (runVST (vsm1 ()) (0::Int))
--- (1,0)
-
-test2_do = IdM.runIdentity (runVST (vsm1_do ()) (0::Int))
--- (1,0)
-
-
--- Now, we vary the type of the state, from Int to a Char
-vsm2 () = vsget >>= (\v -> vsput ((toEnum (65+v))::Char) >>
- vsget >>= \v' -> return (v,v'))
-
-{-
- *DoParamM> :t vsm2
- vsm2 :: (Monadish (VST m), IdM.Monad m) => () -> VST m Int Char (Int, Char)
--}
-
--- The same with the do-notation
- -- the following does not yet work
-vsm2_do () = do
- v <- vsget
- vsput ((toEnum (65+v))::Char)
- v' <- vsget
- return (v,v')
-
-test3 = IdM.runIdentity (runVST (vsm2 ()) (0::Int))
--- ('A',(0,'A'))
-
-test3_do = IdM.runIdentity (runVST (vsm2_do ()) (0::Int))
--- ('A',(0,'A'))
-
-{- The following is a deliberate error:
-
- DoParamM.hs:147:55:
- Couldn't match expected type `Int' against inferred type `Char'
- In the second argument of `(==)', namely `v''
- In the first argument of `return', namely `(v == v')'
- In the expression: return (v == v')
-
-vsm3 () = vsget >>= (\v -> vsput ((toEnum (65+v))::Char) >>
- vsget >>= \v' -> return (v==v'))
- -}
-
-
- -- The following too must report a type error -- the expression
--- return (v == v') must be flagged, rather than something else
-vsm3_do () = do
- v <- vsget
- vsput ((toEnum (65+v))::Char)
- v' <- vsget
- return (v==v')
-
-
-
--- Try polymorphic recursion, over the state.
--- crec1 invokes itself, and changes the type of the state from
--- some si to Bool.
-crec1 :: (Prelude.Enum si, Prelude.Monad m) => VST m si si Int
-crec1 = vsget >>= (\s1 -> case fromEnum s1 of
- 0 -> return 0
- 1 -> vsput (pred s1) >> return 1
- _ -> vsput True >>
- crec1 >>= (\v ->
- (vsput s1 >> -- restore state type to si
- return (v + 10))))
-
--- The same in the do-notation
-crec1_do :: (Prelude.Enum si, Prelude.Monad m) => VST m si si Int
-crec1_do = do
- s1 <- vsget
- case fromEnum s1 of
- 0 -> return 0
- 1 -> do {vsput (pred s1); return 1}
- _ -> do
- vsput True
- v <- crec1_do
- vsput s1 -- restore state type to si
- return (v + 10)
-
-
-test4 = IdM.runIdentity (runVST crec1 'a')
--- ('a',11)
-
-test4_do = IdM.runIdentity (runVST crec1_do 'a')
--- ('a',11)
-
--- Another example, to illustrate locking and static reasoning about
--- the locking state
-
-data Locked = Locked; data Unlocked = Unlocked
-newtype LIO p q a = LIO{unLIO::IO a}
-
-instance Monadish LIO where
- return = LIO . Prelude.return
- m >>= f = LIO ((Prelude.>>=) (unLIO m) (unLIO . f))
-
-lput :: String -> LIO p p ()
-lput = LIO . putStrLn
-lget :: LIO p p String
-lget = LIO getLine
-
--- In the real program, the following will execute actions to acquire
--- or release the lock. Here, we just print out our intentions.
-lock :: LIO Unlocked Locked ()
-lock = LIO (putStrLn "Lock")
-
-unlock :: LIO Locked Unlocked ()
-unlock = LIO (putStrLn "UnLock")
-
--- We should start in unlocked state, and finish in the same state
-runLIO :: LIO Unlocked Unlocked a -> IO a
-runLIO = unLIO
-
--- User code
-
-tlock1 = lget >>= (\l ->
- return (read l) >>= (\x ->
- lput (show (x+1))))
-
-tlock1r = runLIO tlock1
-
--- the same in the do-notation
-tlock1_do = do
- l <- lget
- let x = read l
- lput (show (x+1))
-
-{-
- *VarStateM> :t tlock1
- tlock1 :: LIO p p ()
- Inferred type has the same input and output states and is polymorphic:
- tlock1 does not affect the state of the lock.
--}
-
-
-tlock2 = lget >>= (\l ->
- lock >> (
- return (read l) >>= (\x ->
- lput (show (x+1)))))
-
-tlock2_do = do
- l <- lget
- lock
- let x = read l
- lput (show (x+1))
-
-{-
- *VarStateM> :t tlock2
- tlock2 :: LIO Unlocked Locked ()
-
-The inferred type says that the computation does the locking.
--}
-
-tlock3 = tlock2 >> unlock
-tlock3r = runLIO tlock3
-
-{-
- *DoParamM> :t tlock3
- tlock3 :: LIO Unlocked Unlocked ()
--}
-
-{-
-*DoParamM> tlock3r
--- user input: 123
-Lock
-124
-UnLock
--}
-
-tlock3_do = do {tlock2_do; unlock}
-tlock3r_do = runLIO tlock3_do
-
-
--- An attempt to execute the following
--- tlock4 = tlock2 >> tlock2
-
-{-
- gives a type error:
- Couldn't match expected type `Locked'
- against inferred type `Unlocked'
- Expected type: LIO Locked r b
- Inferred type: LIO Unlocked Locked ()
- In the expression: tlock2
- In a lambda abstraction: \ _ -> tlock2
-
-The error message correctly points out an error of acquiring an already
-held lock.
--}
-
--- The following too must be an error: with the SAME error message as above
-tlock4_do = do {tlock2_do; tlock2_do}
-
--- Similarly, the following gives a type error because of an attempt
--- to release a lock twice
--- tlock4' = tlock2 >> unlock >> unlock
-{-
-DoParamM.hs:298:30:
- Couldn't match expected type `Unlocked'
- against inferred type `Locked'
- Expected type: LIO Unlocked r b
- Inferred type: LIO Locked Unlocked ()
- In the second argument of `(>>)', namely `unlock'
- In the expression: (tlock2 >> unlock) >> unlock
--}
-
- -- The following too must be an error: with the SAME error message as above
-tlock4'_do = do {tlock2_do; unlock; unlock}
-
diff --git a/testsuite/tests/ghc-regress/rebindable/DoParamM.stderr b/testsuite/tests/ghc-regress/rebindable/DoParamM.stderr
deleted file mode 100644
index 7abfdd4b56..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/DoParamM.stderr
+++ /dev/null
@@ -1,25 +0,0 @@
-
-DoParamM.hs:146:25:
- Couldn't match expected type `Int' with actual type `Char'
- In the second argument of `(==)', namely `v''
- In the first argument of `return', namely `(v == v')'
- In a stmt of a 'do' block: return (v == v')
-
-DoParamM.hs:286:28:
- Couldn't match expected type `Locked' with actual type `Unlocked'
- Expected type: LIO Locked r0 b0
- Actual type: LIO Unlocked Locked ()
- In a stmt of a 'do' block: tlock2_do
- In the expression:
- do { tlock2_do;
- tlock2_do }
-
-DoParamM.hs:302:37:
- Couldn't match expected type `Unlocked' with actual type `Locked'
- Expected type: LIO Unlocked r0 b0
- Actual type: LIO Locked Unlocked ()
- In a stmt of a 'do' block: unlock
- In the expression:
- do { tlock2_do;
- unlock;
- unlock }
diff --git a/testsuite/tests/ghc-regress/rebindable/DoRestrictedM.hs b/testsuite/tests/ghc-regress/rebindable/DoRestrictedM.hs
deleted file mode 100644
index dea2b1ea03..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/DoRestrictedM.hs
+++ /dev/null
@@ -1,99 +0,0 @@
-{-# LANGUAGE RebindableSyntax, MultiParamTypeClasses,
- FlexibleInstances #-}
-
--- Tests of the do-notation for the restricted monads
--- We demonstrate that all ordinary monads are restricted monads,
--- and show the frequently requested implementation
--- of MonadPlus in terms of Data.Set.
---
--- The tests are based on the code
--- http://okmij.org/ftp/Haskell/types.html#restricted-datatypes
-
-module DoRestrictedM where
-
-import Data.List
-import Prelude (const, String, ($), (.), Maybe(..))
-import qualified Prelude
-import qualified Data.Set as Set
-
--- Defining the restricted monad
-class MN2 m a where
- return :: a -> m a
- fail :: String -> m a
-
-class (MN2 m a, MN2 m b) => MN3 m a b where
- (>>=) :: m a -> (a -> m b) -> m b
-
-m1 >> m2 = m1 >>= (const m2)
-
--- All regular monads are the instances of the restricted monad
-
-newtype RegularM m a = RegularM{unRM :: m a}
-
-instance Prelude.Monad m => MN2 (RegularM m) a where
- return = RegularM . Prelude.return
- fail = RegularM . Prelude.fail
-
-instance Prelude.Monad m => MN3 (RegularM m) a b where
- m >>= f = RegularM ((Prelude.>>=) (unRM m) (unRM . f))
-
--- We try to inject Maybe (as the regular monad) into Restricted Monad
-
-test1s () = return "a" >>= (\x -> return $ "b" ++ x)
-test1f () = fail "" >>= (\x -> return $ "b" ++ x)
-
--- the same with the do-notation
-
-test1s_do () = do
- x <- return "a"
- return $ "b" ++ x
-
-
-{-
-whose inferred type is
- *DoRestrictedM> :t test1s
- test1s :: (MN3 m [Prelude.Char] [Prelude.Char]) => () -> m [Prelude.Char]
--}
-
-test1sr :: Maybe String
-test1sr = unRM $ test1s ()
--- Just "ba"
-
-test1fr :: Maybe String
-test1fr = unRM $ test1f ()
--- Nothing
-
-test1sr_do :: Maybe String
-test1sr_do = unRM $ test1s_do ()
--- Just "ba"
-
--- As often requested, we implement a MonadPlus `monad'
--- in terms of a Set. Set requires the Ord constraint.
-
-newtype SMPlus a = SMPlus{unSM:: Set.Set a}
-
-instance MN2 SMPlus a where
- return = SMPlus . Set.singleton
- fail x = SMPlus $ Set.empty
-
-instance Prelude.Ord b => MN3 SMPlus a b where
- m >>= f = SMPlus (Set.fold (Set.union . unSM . f) Set.empty (unSM m))
-
--- We cannot forget the Ord constraint, because the typechecker
--- will complain (and tell us exactly what we have forgotten).
-
--- Now we can instantiate the previously written test1s and test1d
--- functions for this Set monad:
-
-test2sr :: Set.Set String
-test2sr = unSM $ test1s ()
--- fromList ["ba"]
-
-test2fr :: Set.Set String
-test2fr = unSM $ test1f ()
--- fromList []
-
-test2sr_do :: Set.Set String
-test2sr_do = unSM $ test1s_do ()
--- fromList ["ba"]
-
diff --git a/testsuite/tests/ghc-regress/rebindable/Makefile b/testsuite/tests/ghc-regress/rebindable/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/rebindable/T303.hs b/testsuite/tests/ghc-regress/rebindable/T303.hs
deleted file mode 100644
index 418a695e8d..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/T303.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE RebindableSyntax #-}
-
--- Trac #303
-
-module T where
-import qualified Prelude as P
-
-class IxMonad m where
- return :: a -> m i i a
- (>>=) :: m i j a -> (a -> m j k b) -> m i k b
- (>>) :: m i j a -> m j k b -> m i k b
- m >> n = m >>= \_ -> n
-
- fail :: P.String -> m i j a
- fail s = P.error s
-
-data T a b c = T
-instance IxMonad T where
- return _ = T
- m >>= f = T
- fail _ = T
-
-testM :: T (a,b) b a
-testM = T
-
-test1 = testM >>= \x -> return x
-
-test2 = do
- x <- testM
- return x
diff --git a/testsuite/tests/ghc-regress/rebindable/T4851.hs b/testsuite/tests/ghc-regress/rebindable/T4851.hs
deleted file mode 100644
index 38ce45212f..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/T4851.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE Arrows, RebindableSyntax #-}
-module T4851 where
-
-import Prelude hiding ( id, (.) )
-
-import Control.Category ( Category(..) )
-import Control.Arrow
-
-garbage x =
- proc b ->
- do rec (c, d) <- undefined -< (b, d)
- returnA -< c
diff --git a/testsuite/tests/ghc-regress/rebindable/T5038.hs b/testsuite/tests/ghc-regress/rebindable/T5038.hs
deleted file mode 100644
index 42f3df2712..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/T5038.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE RebindableSyntax #-}
-module Main (main) where
-
-import Prelude
-
-ifThenElse True t f = f
-ifThenElse False t f = t
-
-main = print (if True then 1 else 2 :: Int)
--- Should print 2!
diff --git a/testsuite/tests/ghc-regress/rebindable/T5038.stdout b/testsuite/tests/ghc-regress/rebindable/T5038.stdout
deleted file mode 100644
index 0cfbf08886..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/T5038.stdout
+++ /dev/null
@@ -1 +0,0 @@
-2
diff --git a/testsuite/tests/ghc-regress/rebindable/all.T b/testsuite/tests/ghc-regress/rebindable/all.T
deleted file mode 100644
index 7df16d4135..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/all.T
+++ /dev/null
@@ -1,31 +0,0 @@
-# These tests try test the rebindable-syntax feature of GHC,
-# which you get when you use -XNoImplicitPrelude
-#
-# Written by Ashley Yakeley
-
-# No point in doing anything except the normal way
-setTestOpts(only_ways(['normal']));
-setTestOpts(only_compiler_types(['ghc']))
-
-test('rebindable1', normal, compile, [''])
-test('rebindable2', normal, compile_and_run, [''])
-test('rebindable3', normal, compile_and_run, [''])
-test('rebindable4', normal, compile_and_run, [''])
-test('rebindable5', normal, compile_and_run, [''])
-
-# rebindable6 has become expected failures
-# following Trac #1537
-test('rebindable6', normal, compile_fail, [''])
-
-test('rebindable7', normal, compile_and_run, [''])
-test('rebindable8', normal, compile, [''])
-test('rebindable9', normal, compile, [''])
-test('rebindable10', normal, compile_and_run, [''])
-
-test('T303', normal, compile, [''])
-
-# Tests from Oleg
-test('DoRestrictedM', normal, compile, [''])
-test('DoParamM', reqlib('mtl'), compile_fail, [''])
-test('T5038', normal, compile_and_run, [''])
-test('T4851', normal, compile, [''])
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable1.hs b/testsuite/tests/ghc-regress/rebindable/rebindable1.hs
deleted file mode 100644
index 1fb0b596fb..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable1.hs
+++ /dev/null
@@ -1,55 +0,0 @@
-{-# LANGUAGE RebindableSyntax, NPlusKPatterns #-}
-
-module RebindableCase1 where
- {
--- import Prelude;
- import Prelude(String,undefined,Maybe(..), (==), (>=) );
-
- return :: a;
- return = undefined;
-
- infixl 1 >>=;
- (>>=) :: a;
- (>>=) = undefined;
-
- infixl 1 >>;
- (>>) :: a;
- (>>) = undefined;
-
- fail :: a;
- fail = undefined;
-
- fromInteger :: a;
- fromInteger = undefined;
-
- fromRational :: a;
- fromRational = undefined;
-
- negate :: a;
- negate = undefined;
-
- (-) :: a;
- (-) = undefined;
-
-
- test_do f g = do
- {
- f;
- Just a <- g;
- return a;
- };
-
- test_fromInteger = 1;
-
- test_fromRational = 0.5;
-
- test_negate a = - a;
-
- test_fromInteger_pattern 1 = undefined;
- test_fromInteger_pattern (-1) = undefined;
- test_fromInteger_pattern (a + 7) = a;
-
- test_fromRational_pattern 0.5 = undefined;
- test_fromRational_pattern (-0.5) = undefined;
- test_fromRational_pattern _ = undefined;
- }
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable1.stderr b/testsuite/tests/ghc-regress/rebindable/rebindable1.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable1.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable10.hs b/testsuite/tests/ghc-regress/rebindable/rebindable10.hs
deleted file mode 100644
index 5123f0e175..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable10.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE RebindableSyntax #-}
-module Main where
-import Prelude
-
-ifThenElse :: Int -> String -> String -> String
-ifThenElse a b c = case a > 0 of
- True -> b
- False -> c
-
-main :: IO ()
-main = do
- print $ if -5 then "this fails" else "this works"
- print $ if 5 then "this works" else "this fails" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable10.stdout b/testsuite/tests/ghc-regress/rebindable/rebindable10.stdout
deleted file mode 100644
index 925fc6dc09..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable10.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-"this works"
-"this works"
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable2.hs b/testsuite/tests/ghc-regress/rebindable/rebindable2.hs
deleted file mode 100644
index 7b626585ba..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable2.hs
+++ /dev/null
@@ -1,122 +0,0 @@
-{-# LANGUAGE RebindableSyntax, NPlusKPatterns #-}
-
-module Main where
- {
--- import Prelude;
- import qualified Prelude;
- import Prelude(String,undefined,Maybe(..),IO,putStrLn,
- Integer,(++),Rational, (==), (>=) );
-
- import Prelude(Monad(..));
-
- debugFunc :: String -> IO a -> IO a;
- debugFunc s ioa = (putStrLn ("++ " ++ s)) Prelude.>>
- (ioa Prelude.>>= (\a ->
- (putStrLn ("-- " ++ s)) Prelude.>> (Prelude.return a)
- ));
-
- newtype TM a = MkTM {unTM :: IO a};
-
- instance (Monad TM) where
- {
- return a = MkTM (debugFunc "return" (Prelude.return a));
-
- (>>=) ma amb = MkTM (debugFunc ">>=" ((Prelude.>>=) (unTM ma) (\a -> unTM (amb a))));
-
- (>>) ma mb = MkTM (debugFunc ">>" ((Prelude.>>) (unTM ma) (unTM mb)));
-
- fail s = MkTM (debugFunc "fail" (Prelude.return undefined));
- };
-
- preturn a = MkTM (Prelude.return a);
-
- fromInteger :: Integer -> Integer;
- fromInteger a = a Prelude.+ a Prelude.+ a Prelude.+ a Prelude.+ a; -- five times
-
- fromRational :: Rational -> Rational;
- fromRational a = a Prelude.+ a Prelude.+ a; -- three times
-
- negate :: a -> a;
- negate a = a; -- don't actually negate
-
- (-) :: a -> a -> a;
- (-) x y = y; -- changed function
-
-
- test_do f g = do
- {
- f; -- >>
- Just a <- g; -- >>= (and fail if g returns Nothing)
- return a; -- return
- };
-
- test_fromInteger = 27;
-
- test_fromRational = 31.5;
-
- test_negate a = - a;
-
- test_fromInteger_pattern a@1 = "1=" ++ (Prelude.show a);
- test_fromInteger_pattern a@(-2) = "(-2)=" ++ (Prelude.show a);
- test_fromInteger_pattern (a + 7) = "(a + 7)=" ++ Prelude.show a;
-
- test_fromRational_pattern a@0.5 = "0.5=" ++ (Prelude.show a);
- test_fromRational_pattern a@(-0.7) = "(-0.7)=" ++ (Prelude.show a);
- test_fromRational_pattern a = "_=" ++ (Prelude.show a);
-
- tmPutStrLn s = MkTM (putStrLn s);
-
- doTest :: String -> TM a -> IO ();
- doTest s ioa =
- (putStrLn ("start test " ++ s))
- Prelude.>>
- (unTM ioa)
- Prelude.>>
- (putStrLn ("end test " ++ s));
-
- main :: IO ();
- main =
- (doTest "test_do failure"
- (test_do (preturn ()) (preturn Nothing))
- )
- Prelude.>>
- (doTest "test_do success"
- (test_do (preturn ()) (preturn (Just ())))
- )
- Prelude.>>
- (doTest "test_fromInteger"
- (tmPutStrLn (Prelude.show test_fromInteger)) -- 27 * 5 = 135
- )
- Prelude.>>
- (doTest "test_fromRational"
- (tmPutStrLn (Prelude.show test_fromRational)) -- 31.5 * 3 = 189%2
- )
- Prelude.>>
- (doTest "test_negate"
- (tmPutStrLn (Prelude.show (test_negate 3))) -- 3 * 5 = 15, non-negate
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern 1"
- (tmPutStrLn (test_fromInteger_pattern 1)) -- 1 * 5 = 5, matches "1"
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern (-2)"
- (tmPutStrLn (test_fromInteger_pattern (-2))) -- "-2" = 2 * 5 = 10
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern 9"
- (tmPutStrLn (test_fromInteger_pattern 9)) -- "9" = 45, 45 "-" "7" = "7" = 35
- )
- Prelude.>>
- (doTest "test_fromRational_pattern 0.5"
- (tmPutStrLn (test_fromRational_pattern 0.5)) -- "0.5" = 3%2
- )
- Prelude.>>
- (doTest "test_fromRational_pattern (-0.7)"
- (tmPutStrLn (test_fromRational_pattern (-0.7))) -- "-0.7" = "0.7" = 21%10
- )
- Prelude.>>
- (doTest "test_fromRational_pattern 1.7"
- (tmPutStrLn (test_fromRational_pattern 1.7)) -- "1.7" = 51%10
- );
- }
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable2.stdout b/testsuite/tests/ghc-regress/rebindable/rebindable2.stdout
deleted file mode 100644
index 970af0f0ab..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable2.stdout
+++ /dev/null
@@ -1,43 +0,0 @@
-start test test_do failure
-++ >>
-++ >>=
-++ fail
--- fail
--- >>=
--- >>
-end test test_do failure
-start test test_do success
-++ >>
-++ >>=
-++ return
--- return
--- >>=
--- >>
-end test test_do success
-start test test_fromInteger
-135
-end test test_fromInteger
-start test test_fromRational
-189 % 2
-end test test_fromRational
-start test test_negate
-15
-end test test_negate
-start test test_fromInteger_pattern 1
-1=5
-end test test_fromInteger_pattern 1
-start test test_fromInteger_pattern (-2)
-(-2)=10
-end test test_fromInteger_pattern (-2)
-start test test_fromInteger_pattern 9
-(a + 7)=35
-end test test_fromInteger_pattern 9
-start test test_fromRational_pattern 0.5
-0.5=3 % 2
-end test test_fromRational_pattern 0.5
-start test test_fromRational_pattern (-0.7)
-(-0.7)=21 % 10
-end test test_fromRational_pattern (-0.7)
-start test test_fromRational_pattern 1.7
-_=51 % 10
-end test test_fromRational_pattern 1.7
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable3.hs b/testsuite/tests/ghc-regress/rebindable/rebindable3.hs
deleted file mode 100644
index 682787fced..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable3.hs
+++ /dev/null
@@ -1,119 +0,0 @@
-{-# LANGUAGE RebindableSyntax, NPlusKPatterns #-}
-
-module Main where
- {
--- import Prelude;
- import qualified Prelude;
- import Prelude(String,undefined,Maybe(..),IO,putStrLn,
- Integer,(++),Rational, (==), (>=) );
-
- debugFunc :: String -> IO a -> IO a;
- debugFunc s ioa = (putStrLn ("++ " ++ s)) Prelude.>>
- (ioa Prelude.>>= (\a ->
- (putStrLn ("-- " ++ s)) Prelude.>> (Prelude.return a)
- ));
-
- return :: a -> IO a;
- return a = debugFunc "return" (Prelude.return a);
-
- infixl 1 >>=;
- (>>=) :: IO a -> (a -> IO b) -> IO b;
- (>>=) ma amb = debugFunc ">>=" ((Prelude.>>=) ma amb);
-
- infixl 1 >>;
- (>>) :: IO a -> IO b -> IO b;
- (>>) ma mb = debugFunc ">>" ((Prelude.>>) ma mb);
-
- fail :: String -> IO a;
- fail s = debugFunc "fail" (Prelude.return undefined);
--- fail s = debugFunc "fail" (Prelude.fail s);
-
- fromInteger :: Integer -> Integer;
- fromInteger a = a Prelude.+ a Prelude.+ a Prelude.+ a Prelude.+ a; -- five times
-
- fromRational :: Rational -> Rational;
- fromRational a = a Prelude.+ a Prelude.+ a; -- three times
-
- negate :: a -> a;
- negate a = a; -- don't actually negate
-
- (-) :: a -> a -> a;
- (-) x y = y; -- changed function
-
-
- test_do f g = do
- {
- f; -- >>
- Just a <- g; -- >>= (and fail if g returns Nothing)
- return a; -- return
- };
-
- test_fromInteger = 27;
-
- test_fromRational = 31.5;
-
- test_negate a = - a;
-
- test_fromInteger_pattern a@1 = "1=" ++ (Prelude.show a);
- test_fromInteger_pattern a@(-2) = "(-2)=" ++ (Prelude.show a);
- test_fromInteger_pattern (a + 7) = "(a + 7)=" ++ Prelude.show a;
-
- test_fromRational_pattern a@0.5 = "0.5=" ++ (Prelude.show a);
- test_fromRational_pattern a@(-0.7) = "(-0.7)=" ++ (Prelude.show a);
- test_fromRational_pattern a = "_=" ++ (Prelude.show a);
-
-
- doTest :: String -> IO a -> IO ();
- doTest s ioa =
- (putStrLn ("start test " ++ s))
- Prelude.>>
- ioa
- Prelude.>>
- (putStrLn ("end test " ++ s));
-
- main :: IO ();
- main =
- (doTest "test_do failure"
- (test_do (Prelude.return ()) (Prelude.return Nothing))
- )
- Prelude.>>
- (doTest "test_do success"
- (test_do (Prelude.return ()) (Prelude.return (Just ())))
- )
- Prelude.>>
- (doTest "test_fromInteger"
- (putStrLn (Prelude.show test_fromInteger))
- )
- Prelude.>>
- (doTest "test_fromRational"
- (putStrLn (Prelude.show test_fromRational))
- )
- Prelude.>>
- (doTest "test_negate"
- (putStrLn (Prelude.show (test_negate 3)))
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern 1"
- (putStrLn (test_fromInteger_pattern 1))
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern (-2)"
- (putStrLn (test_fromInteger_pattern (-2)))
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern 9"
- (putStrLn (test_fromInteger_pattern 9))
- )
- Prelude.>>
- (doTest "test_fromRational_pattern 0.5"
- (putStrLn (test_fromRational_pattern 0.5))
- )
- Prelude.>>
- (doTest "test_fromRational_pattern (-0.7)"
- (putStrLn (test_fromRational_pattern (-0.7)))
- )
- Prelude.>>
- (doTest "test_fromRational_pattern 1.7"
- (putStrLn (test_fromRational_pattern 1.7))
- );
- }
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable3.stdout b/testsuite/tests/ghc-regress/rebindable/rebindable3.stdout
deleted file mode 100644
index 970af0f0ab..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable3.stdout
+++ /dev/null
@@ -1,43 +0,0 @@
-start test test_do failure
-++ >>
-++ >>=
-++ fail
--- fail
--- >>=
--- >>
-end test test_do failure
-start test test_do success
-++ >>
-++ >>=
-++ return
--- return
--- >>=
--- >>
-end test test_do success
-start test test_fromInteger
-135
-end test test_fromInteger
-start test test_fromRational
-189 % 2
-end test test_fromRational
-start test test_negate
-15
-end test test_negate
-start test test_fromInteger_pattern 1
-1=5
-end test test_fromInteger_pattern 1
-start test test_fromInteger_pattern (-2)
-(-2)=10
-end test test_fromInteger_pattern (-2)
-start test test_fromInteger_pattern 9
-(a + 7)=35
-end test test_fromInteger_pattern 9
-start test test_fromRational_pattern 0.5
-0.5=3 % 2
-end test test_fromRational_pattern 0.5
-start test test_fromRational_pattern (-0.7)
-(-0.7)=21 % 10
-end test test_fromRational_pattern (-0.7)
-start test test_fromRational_pattern 1.7
-_=51 % 10
-end test test_fromRational_pattern 1.7
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable4.hs b/testsuite/tests/ghc-regress/rebindable/rebindable4.hs
deleted file mode 100644
index 2c25c9a03f..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable4.hs
+++ /dev/null
@@ -1,127 +0,0 @@
-{-# LANGUAGE RebindableSyntax, NPlusKPatterns #-}
-
-module Main where
- {
--- import Prelude;
- import qualified Prelude;
- import Prelude(String,undefined,Maybe(..),IO,putStrLn,
- Integer,(++),Rational, (==), (>=) );
-
- debugFunc :: String -> IO a -> IO a;
- debugFunc s ioa = (putStrLn ("++ " ++ s)) Prelude.>>
- (ioa Prelude.>>= (\a ->
- (putStrLn ("-- " ++ s)) Prelude.>> (Prelude.return a)
- ));
-
- infixl 1 >>=;
- infixl 1 >>;
-
- class MyMonad m where
- {
- return :: a -> m a;
- (>>=) :: m a -> (a -> m b) -> m b;
- (>>) :: m a -> m b -> m b;
- fail :: String -> m a;
- };
-
- instance MyMonad IO where
- {
- return a = debugFunc "return" (Prelude.return a);
-
- (>>=) ma amb = debugFunc ">>=" ((Prelude.>>=) ma amb);
-
- (>>) ma mb = debugFunc ">>" ((Prelude.>>) ma mb);
-
- fail s = debugFunc "fail" (Prelude.return undefined);
- -- fail s = debugFunc "fail" (Prelude.fail s);
- };
-
- fromInteger :: Integer -> Integer;
- fromInteger a = a Prelude.+ a Prelude.+ a Prelude.+ a Prelude.+ a; -- five times
-
- fromRational :: Rational -> Rational;
- fromRational a = a Prelude.+ a Prelude.+ a; -- three times
-
- negate :: a -> a;
- negate a = a; -- don't actually negate
-
- (-) :: a -> a -> a;
- (-) x y = y; -- changed function
-
-
- test_do f g = do
- {
- f; -- >>
- Just a <- g; -- >>= (and fail if g returns Nothing)
- return a; -- return
- };
-
- test_fromInteger = 27;
-
- test_fromRational = 31.5;
-
- test_negate a = - a;
-
- test_fromInteger_pattern a@1 = "1=" ++ (Prelude.show a);
- test_fromInteger_pattern a@(-2) = "(-2)=" ++ (Prelude.show a);
- test_fromInteger_pattern (a + 7) = "(a + 7)=" ++ Prelude.show a;
-
- test_fromRational_pattern a@0.5 = "0.5=" ++ (Prelude.show a);
- test_fromRational_pattern a@(-0.7) = "(-0.7)=" ++ (Prelude.show a);
- test_fromRational_pattern a = "_=" ++ (Prelude.show a);
-
-
- doTest :: String -> IO a -> IO ();
- doTest s ioa =
- (putStrLn ("start test " ++ s))
- Prelude.>>
- ioa
- Prelude.>>
- (putStrLn ("end test " ++ s));
-
- main :: IO ();
- main =
- (doTest "test_do failure"
- (test_do (Prelude.return ()) (Prelude.return Nothing))
- )
- Prelude.>>
- (doTest "test_do success"
- (test_do (Prelude.return ()) (Prelude.return (Just ())))
- )
- Prelude.>>
- (doTest "test_fromInteger"
- (putStrLn (Prelude.show test_fromInteger))
- )
- Prelude.>>
- (doTest "test_fromRational"
- (putStrLn (Prelude.show test_fromRational))
- )
- Prelude.>>
- (doTest "test_negate"
- (putStrLn (Prelude.show (test_negate 3)))
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern 1"
- (putStrLn (test_fromInteger_pattern 1))
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern (-2)"
- (putStrLn (test_fromInteger_pattern (-2)))
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern 9"
- (putStrLn (test_fromInteger_pattern 9))
- )
- Prelude.>>
- (doTest "test_fromRational_pattern 0.5"
- (putStrLn (test_fromRational_pattern 0.5))
- )
- Prelude.>>
- (doTest "test_fromRational_pattern (-0.7)"
- (putStrLn (test_fromRational_pattern (-0.7)))
- )
- Prelude.>>
- (doTest "test_fromRational_pattern 1.7"
- (putStrLn (test_fromRational_pattern 1.7))
- );
- }
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable4.stdout b/testsuite/tests/ghc-regress/rebindable/rebindable4.stdout
deleted file mode 100644
index 970af0f0ab..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable4.stdout
+++ /dev/null
@@ -1,43 +0,0 @@
-start test test_do failure
-++ >>
-++ >>=
-++ fail
--- fail
--- >>=
--- >>
-end test test_do failure
-start test test_do success
-++ >>
-++ >>=
-++ return
--- return
--- >>=
--- >>
-end test test_do success
-start test test_fromInteger
-135
-end test test_fromInteger
-start test test_fromRational
-189 % 2
-end test test_fromRational
-start test test_negate
-15
-end test test_negate
-start test test_fromInteger_pattern 1
-1=5
-end test test_fromInteger_pattern 1
-start test test_fromInteger_pattern (-2)
-(-2)=10
-end test test_fromInteger_pattern (-2)
-start test test_fromInteger_pattern 9
-(a + 7)=35
-end test test_fromInteger_pattern 9
-start test test_fromRational_pattern 0.5
-0.5=3 % 2
-end test test_fromRational_pattern 0.5
-start test test_fromRational_pattern (-0.7)
-(-0.7)=21 % 10
-end test test_fromRational_pattern (-0.7)
-start test test_fromRational_pattern 1.7
-_=51 % 10
-end test test_fromRational_pattern 1.7
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable5.hs b/testsuite/tests/ghc-regress/rebindable/rebindable5.hs
deleted file mode 100644
index 94b3f4ef7a..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable5.hs
+++ /dev/null
@@ -1,196 +0,0 @@
-{-# LANGUAGE RebindableSyntax, NPlusKPatterns, FlexibleInstances,
- MultiParamTypeClasses, FunctionalDependencies #-}
-
-module Main where
- {
--- import Prelude;
- import qualified Prelude;
- import Prelude(String,undefined,Maybe(..),IO,putStrLn,
- Integer,(++),Rational, (==), (>=) );
-
- debugFunc :: String -> IO a -> IO a;
- debugFunc s ioa = (putStrLn ("++ " ++ s)) Prelude.>>
- (ioa Prelude.>>= (\a ->
- (putStrLn ("-- " ++ s)) Prelude.>> (Prelude.return a)
- ));
-
- infixl 1 >>=;
- infixl 1 >>;
-
- returnIO :: a -> IO a;
- returnIO = Prelude.return;
-
- class HasReturn m where
- {
- return :: a -> m a;
- };
-
- class HasBind m n mn | m n -> mn, m mn -> n where
- {
- (>>=) :: m a -> (a -> n b) -> mn b;
- };
-
- class HasSeq m n mn | m n -> mn, m mn -> n where
- {
- (>>) :: m a -> n b -> mn b;
- };
-
- class HasFail m where
- {
- fail :: String -> m a;
- };
-
- instance HasReturn IO where
- {
- return a = debugFunc "return" (returnIO a);
- };
-
- instance HasBind IO IO IO where
- {
- (>>=) ma amb = debugFunc ">>=" ((Prelude.>>=) ma amb);
- };
-
- instance HasSeq IO IO IO where
- {
- (>>) ma mb = debugFunc ">>" ((Prelude.>>) ma mb);
- };
-
- instance HasFail IO where
- {
- fail s = debugFunc "fail" (returnIO undefined);
- -- fail s = debugFunc "fail" (Prelude.fail s);
- };
-
- class HasFromInteger a where
- {
- fromInteger :: a -> a;
- };
-
- instance HasFromInteger Integer where
- {
- fromInteger a = a Prelude.+ a Prelude.+ a Prelude.+ a Prelude.+ a; -- five times
- };
-
- class HasFromRational a where
- {
- fromRational :: a -> a;
- };
-
- instance HasFromRational Rational where
- {
- fromRational a = a Prelude.+ a Prelude.+ a; -- three times
- };
-
- class HasNegate a where
- {
- negate :: a -> a;
- };
-
- instance HasNegate Integer where
- {
- negate a = a; -- don't actually negate
- };
-
- instance HasNegate Rational where
- {
- negate a = a; -- don't actually negate
- };
-
- class HasMinus a where
- {
- (-) :: a -> a -> a;
- };
-
- instance HasMinus Rational where
- {
- (-) x y = y; -- changed function
- };
-
- instance HasMinus Integer where
- {
- (-) x y = y; -- changed function
- };
-
-
- test_do f g = do
- {
- f; -- >>
- Just a <- g; -- >>= (and fail if g returns Nothing)
- return a; -- return
- };
-
- test_fromInteger :: Integer;
- test_fromInteger = 27;
-
- test_fromRational :: Rational;
- test_fromRational = 31.5;
-
- test_negate :: Integer -> Integer;
- test_negate a = - a;
-
- test_fromInteger_pattern :: Integer -> String;
- test_fromInteger_pattern a@1 = "1=" ++ (Prelude.show a);
- test_fromInteger_pattern a@(-2) = "(-2)=" ++ (Prelude.show a);
- test_fromInteger_pattern (a + 7) = "(a + 7)=" ++ Prelude.show a;
-
- test_fromRational_pattern :: Rational -> String;
- test_fromRational_pattern a@0.5 = "0.5=" ++ (Prelude.show a);
- test_fromRational_pattern a@(-0.7) = "(-0.7)=" ++ (Prelude.show a);
- test_fromRational_pattern a = "_=" ++ (Prelude.show a);
-
-
- doTest :: String -> IO a -> IO ();
- doTest s ioa =
- (putStrLn ("start test " ++ s))
- Prelude.>>
- ioa
- Prelude.>>
- (putStrLn ("end test " ++ s));
-
- main :: IO ();
- main =
- (doTest "test_do failure"
- (test_do (returnIO ()) (returnIO Nothing))
- )
- Prelude.>>
- (doTest "test_do success"
- (test_do (returnIO ()) (returnIO (Just ())))
- )
- Prelude.>>
- (doTest "test_fromInteger"
- (putStrLn (Prelude.show test_fromInteger))
- )
- Prelude.>>
- (doTest "test_fromRational"
- (putStrLn (Prelude.show test_fromRational))
- )
- Prelude.>>
- (doTest "test_negate"
- (putStrLn (Prelude.show (test_negate 3)))
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern 1"
- (putStrLn (test_fromInteger_pattern 1))
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern (-2)"
- (putStrLn (test_fromInteger_pattern (-(2::Integer)::Integer)))
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern 9"
- (putStrLn (test_fromInteger_pattern 9))
- )
- Prelude.>>
- (doTest "test_fromRational_pattern 0.5"
- (putStrLn (test_fromRational_pattern 0.5))
- )
- Prelude.>>
- (doTest "test_fromRational_pattern (-0.7)"
- (putStrLn (test_fromRational_pattern (-(0.7::Rational)::Rational)))
- )
- Prelude.>>
- (doTest "test_fromRational_pattern 1.7"
- (putStrLn (test_fromRational_pattern 1.7))
- )
- ;
- }
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable5.stderr b/testsuite/tests/ghc-regress/rebindable/rebindable5.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable5.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable5.stdout b/testsuite/tests/ghc-regress/rebindable/rebindable5.stdout
deleted file mode 100644
index 970af0f0ab..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable5.stdout
+++ /dev/null
@@ -1,43 +0,0 @@
-start test test_do failure
-++ >>
-++ >>=
-++ fail
--- fail
--- >>=
--- >>
-end test test_do failure
-start test test_do success
-++ >>
-++ >>=
-++ return
--- return
--- >>=
--- >>
-end test test_do success
-start test test_fromInteger
-135
-end test test_fromInteger
-start test test_fromRational
-189 % 2
-end test test_fromRational
-start test test_negate
-15
-end test test_negate
-start test test_fromInteger_pattern 1
-1=5
-end test test_fromInteger_pattern 1
-start test test_fromInteger_pattern (-2)
-(-2)=10
-end test test_fromInteger_pattern (-2)
-start test test_fromInteger_pattern 9
-(a + 7)=35
-end test test_fromInteger_pattern 9
-start test test_fromRational_pattern 0.5
-0.5=3 % 2
-end test test_fromRational_pattern 0.5
-start test test_fromRational_pattern (-0.7)
-(-0.7)=21 % 10
-end test test_fromRational_pattern (-0.7)
-start test test_fromRational_pattern 1.7
-_=51 % 10
-end test test_fromRational_pattern 1.7
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable6.hs b/testsuite/tests/ghc-regress/rebindable/rebindable6.hs
deleted file mode 100644
index 74d861cda8..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable6.hs
+++ /dev/null
@@ -1,184 +0,0 @@
-{-# LANGUAGE RebindableSyntax, NPlusKPatterns, Rank2Types,
- ScopedTypeVariables, FlexibleInstances #-}
-module Main where
- {
--- import Prelude;
- import qualified Prelude;
- import Prelude(String,undefined,Maybe(..),IO,putStrLn,
- Integer,(++),Rational, (==), (>=) );
-
- debugFunc :: String -> IO a -> IO a;
- debugFunc s ioa = (putStrLn ("++ " ++ s)) Prelude.>>
- (ioa Prelude.>>= (\a ->
- (putStrLn ("-- " ++ s)) Prelude.>> (Prelude.return a)
- ));
-
- infixl 1 >>=;
- infixl 1 >>;
-
- returnIO :: a -> IO a;
- returnIO = Prelude.return;
-
- class HasReturn a where
- {
- return :: a;
- };
-
- class HasBind a where
- {
- (>>=) :: a;
- };
-
- class HasSeq a where
- {
- (>>) :: a;
- };
-
- class HasFail a where
- {
- fail :: a;
- };
-
- instance HasReturn (a -> IO a) where
- {
- return a = debugFunc "return" (Prelude.return a);
- };
-
- instance HasBind (IO a -> (a -> IO b) -> IO b) where
- {
- (>>=) ma amb = debugFunc ">>=" ((Prelude.>>=) ma amb);
- };
-
- instance HasSeq (IO a -> IO b -> IO b) where
- {
- (>>) ma mb = debugFunc ">>" ((Prelude.>>) ma mb);
- };
-
- instance HasFail (String -> IO a) where
- {
- fail s = debugFunc "fail" (Prelude.return undefined);
- -- fail s = debugFunc "fail" (Prelude.fail s);
- };
-
- class HasFromInteger a where
- {
- fromInteger :: a;
- };
-
- instance HasFromInteger (Integer -> Integer) where
- {
- fromInteger a = a Prelude.+ a Prelude.+ a Prelude.+ a Prelude.+ a; -- five times
- };
-
- class HasFromRational a where
- {
- fromRational :: a;
- };
-
- instance HasFromRational (Rational -> Rational) where
- {
- fromRational a = a Prelude.+ a Prelude.+ a; -- three times
- };
-
- class HasNegate a where
- {
- negate :: a;
- };
-
- instance HasNegate (a -> a) where
- {
- negate a = a; -- don't actually negate
- };
-
- class HasMinus a where
- {
- (-) :: a;
- };
-
- instance HasMinus (a -> a -> a) where
- {
- (-) x y = y; -- changed function
- };
-
- test_do :: forall a b. IO a -> IO (Maybe b) -> IO b;
- test_do f g = do
- {
- f; -- >>
- Just (b::b) <- g; -- >>= (and fail if g returns Nothing)
- return b; -- return
- };
-
- test_fromInteger :: Integer;
- test_fromInteger = 27;
-
- test_fromRational :: Rational;
- test_fromRational = 31.5;
-
- test_negate :: Integer -> Integer;
- test_negate a = - a;
-
- test_fromInteger_pattern :: Integer -> String;
- test_fromInteger_pattern a@1 = "1=" ++ (Prelude.show a);
- test_fromInteger_pattern a@(-2) = "(-2)=" ++ (Prelude.show a);
- test_fromInteger_pattern (a + 7) = "(a + 7)=" ++ Prelude.show a;
-
- test_fromRational_pattern :: Rational -> String;
- test_fromRational_pattern a@0.5 = "0.5=" ++ (Prelude.show a);
- test_fromRational_pattern a@(-0.7) = "(-0.7)=" ++ (Prelude.show a);
- test_fromRational_pattern a = "_=" ++ (Prelude.show a);
-
-
- doTest :: String -> IO a -> IO ();
- doTest s ioa =
- (putStrLn ("start test " ++ s))
- Prelude.>>
- ioa
- Prelude.>>
- (putStrLn ("end test " ++ s));
-
- main :: IO ();
- main =
- (doTest "test_do failure"
- (test_do (Prelude.return ()) (Prelude.return Nothing))
- )
- Prelude.>>
- (doTest "test_do success"
- (test_do (Prelude.return ()) (Prelude.return (Just ())))
- )
- Prelude.>>
- (doTest "test_fromInteger"
- (putStrLn (Prelude.show test_fromInteger))
- )
- Prelude.>>
- (doTest "test_fromRational"
- (putStrLn (Prelude.show test_fromRational))
- )
- Prelude.>>
- (doTest "test_negate"
- (putStrLn (Prelude.show (test_negate 3)))
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern 1"
- (putStrLn (test_fromInteger_pattern 1))
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern (-2)"
- (putStrLn (test_fromInteger_pattern (-(2::Integer)::Integer)))
- )
- Prelude.>>
- (doTest "test_fromInteger_pattern 9"
- (putStrLn (test_fromInteger_pattern 9))
- )
- Prelude.>>
- (doTest "test_fromRational_pattern 0.5"
- (putStrLn (test_fromRational_pattern 0.5))
- )
- Prelude.>>
- (doTest "test_fromRational_pattern (-0.7)"
- (putStrLn (test_fromRational_pattern (-(0.7::Rational)::Rational)))
- )
- Prelude.>>
- (doTest "test_fromRational_pattern 1.7"
- (putStrLn (test_fromRational_pattern 1.7))
- );
- }
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable6.stderr b/testsuite/tests/ghc-regress/rebindable/rebindable6.stderr
deleted file mode 100644
index d451400514..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable6.stderr
+++ /dev/null
@@ -1,64 +0,0 @@
-
-rebindable6.hs:106:17:
- No instance for (HasSeq (IO a -> t0 -> IO b))
- arising from a do statement
- Possible fix:
- add an instance declaration for (HasSeq (IO a -> t0 -> IO b))
- In a stmt of a 'do' block: f
- In the expression:
- do { f;
- Just (b :: b) <- g;
- return b }
- In an equation for `test_do':
- test_do f g
- = do { f;
- Just (b :: b) <- g;
- return b }
-
-rebindable6.hs:107:17:
- No instance for (HasFail ([Prelude.Char] -> t1))
- arising from a do statement
- Possible fix:
- add an instance declaration for (HasFail ([Prelude.Char] -> t1))
- In a stmt of a 'do' block: Just (b :: b) <- g
- In the expression:
- do { f;
- Just (b :: b) <- g;
- return b }
- In an equation for `test_do':
- test_do f g
- = do { f;
- Just (b :: b) <- g;
- return b }
-
-rebindable6.hs:107:17:
- No instance for (HasBind (IO (Maybe b) -> (Maybe b -> t1) -> t0))
- arising from a do statement
- Possible fix:
- add an instance declaration for
- (HasBind (IO (Maybe b) -> (Maybe b -> t1) -> t0))
- In a stmt of a 'do' block: Just (b :: b) <- g
- In the expression:
- do { f;
- Just (b :: b) <- g;
- return b }
- In an equation for `test_do':
- test_do f g
- = do { f;
- Just (b :: b) <- g;
- return b }
-
-rebindable6.hs:108:17:
- No instance for (HasReturn (b -> t1))
- arising from a use of `return'
- Possible fix: add an instance declaration for (HasReturn (b -> t1))
- In a stmt of a 'do' block: return b
- In the expression:
- do { f;
- Just (b :: b) <- g;
- return b }
- In an equation for `test_do':
- test_do f g
- = do { f;
- Just (b :: b) <- g;
- return b }
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable6.stdout b/testsuite/tests/ghc-regress/rebindable/rebindable6.stdout
deleted file mode 100644
index ff6a69e060..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable6.stdout
+++ /dev/null
@@ -1,43 +0,0 @@
-start test test_do failure
-++ >>
-++ >>=
-++ fail
--- fail
--- >>=
--- >>
-end test test_do failure
-start test test_do success
-++ >>
-++ >>=
-++ return
--- return
--- >>=
--- >>
-end test test_do success
-start test test_fromInteger
-135
-end test test_fromInteger
-start test test_fromRational
-189%2
-end test test_fromRational
-start test test_negate
-15
-end test test_negate
-start test test_fromInteger_pattern 1
-1=5
-end test test_fromInteger_pattern 1
-start test test_fromInteger_pattern (-2)
-(-2)=10
-end test test_fromInteger_pattern (-2)
-start test test_fromInteger_pattern 9
-(a + 7)=35
-end test test_fromInteger_pattern 9
-start test test_fromRational_pattern 0.5
-0.5=3%2
-end test test_fromRational_pattern 0.5
-start test test_fromRational_pattern (-0.7)
-(-0.7)=21%10
-end test test_fromRational_pattern (-0.7)
-start test test_fromRational_pattern 1.7
-_=51%10
-end test test_fromRational_pattern 1.7
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable7.hs b/testsuite/tests/ghc-regress/rebindable/rebindable7.hs
deleted file mode 100644
index 8e0000e0e5..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable7.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-{-# OPTIONS -XRebindableSyntax #-}
-
--- This one tests rebindable syntax for do-notation
-
-module Main where
-
-import qualified Prelude
-import GHC.Num
-import GHC.Base hiding( Monad(..) )
-
-class Foo a where
- op :: a -> a
-
-data T a = MkT a
-
-instance Foo Int where
- op x = x+1
-
-(>>=) :: Foo a => T a -> (a -> T b) -> T b
-(>>=) (MkT x) f = f (op x)
-
-(>>) :: Foo a => T a -> T b -> T b
-(>>) x y = x >>= (\_ -> y)
-
-return :: Num a => a -> T a
-return x = MkT (x+1)
-
-fail :: String -> T a
-fail s = error "urk"
-
-t1 :: T Int
-t1 = MkT 4
-
-myt = do { x <- t1
- ; return x }
-
-main = case myt of
- MkT i -> Prelude.print i
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable7.stdout b/testsuite/tests/ghc-regress/rebindable/rebindable7.stdout
deleted file mode 100644
index f1c101bdd7..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable7.stdout
+++ /dev/null
@@ -1 +0,0 @@
-6
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable8.hs b/testsuite/tests/ghc-regress/rebindable/rebindable8.hs
deleted file mode 100644
index 2c1f484f47..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable8.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE RebindableSyntax, MultiParamTypeClasses #-}
-
--- Trac #1537
-
-module Foo where
-import Prelude hiding (Monad(..))
-
-class Bind m1 m2 m3 where
- (>>=) :: m1 a -> (a -> m2 b) -> m3 b
-
-class Return m where
- return :: a -> m a
- fail :: String -> m a
-
-instance Bind Maybe [] [] where
- Just x >>= f = f x
- Nothing >>= f = []
-
-instance Return [] where
- return x = [x]
- fail _ = []
-
-should_compile :: [Int]
-should_compile = do
- a <- Just 1
- [a]
diff --git a/testsuite/tests/ghc-regress/rebindable/rebindable9.hs b/testsuite/tests/ghc-regress/rebindable/rebindable9.hs
deleted file mode 100644
index 081e22c46f..0000000000
--- a/testsuite/tests/ghc-regress/rebindable/rebindable9.hs
+++ /dev/null
@@ -1,43 +0,0 @@
-{-# LANGUAGE RebindableSyntax, FlexibleInstances,
- MultiParamTypeClasses, FunctionalDependencies #-}
-
--- Trac #1537
-
-module Foo where
-import qualified Prelude
-import Prelude hiding (Monad(..))
-
-newtype Identity a = Identity { runIdentity :: a }
-
-instance Prelude.Monad Identity where
- return a = Identity a
- m >>= k = k (runIdentity m)
-
-class Bind m1 m2 m3 | m1 m2 -> m3 where
- (>>=) :: m1 a -> (a -> m2 b) -> m3 b
-
-class Return m where
- returnM :: a -> m a
- fail :: String -> m a
-
-instance Bind Maybe [] [] where
- Just x >>= f = f x
- Nothing >>= f = []
-
-instance Functor a => Bind Identity a a where m >>= f = f (runIdentity m)
-instance Functor a => Bind a Identity a where m >>= f = fmap (runIdentity . f) m
-
-instance Prelude.Monad m => Bind m m m where (>>=) = (Prelude.>>=)
-
-instance Return [] where
- returnM x = [x]
- fail _ = []
-
-return :: a -> Identity a
-return = Prelude.return
-
-should_compile :: [Int]
-should_compile = do
- a <- Just 1
- b <- [a*1,a*2]
- return (b+1) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/rename/Makefile b/testsuite/tests/ghc-regress/rename/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/rename/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/rename/prog001/Makefile b/testsuite/tests/ghc-regress/rename/prog001/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog001/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/rename/prog001/Rn037Help.hs b/testsuite/tests/ghc-regress/rename/prog001/Rn037Help.hs
deleted file mode 100644
index 64d1224f49..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog001/Rn037Help.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Rn037Help( T(C) ) where
-
-data T = C
diff --git a/testsuite/tests/ghc-regress/rename/prog001/rn037.hs b/testsuite/tests/ghc-regress/rename/prog001/rn037.hs
deleted file mode 100644
index 544de2fdd9..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog001/rn037.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! Checking that you can hide a constructor
-module ShouldCompile where
-
-import Rn037Help hiding( C )
- -- C is the constructor, but we should
- -- still be able to hide it
-
--- we should still be able to refer to the type constructor, though
-type Foo = T
diff --git a/testsuite/tests/ghc-regress/rename/prog001/test.T b/testsuite/tests/ghc-regress/rename/prog001/test.T
deleted file mode 100644
index ad1a5fef70..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog001/test.T
+++ /dev/null
@@ -1,4 +0,0 @@
-test('rename.prog001',
- extra_clean(['Rn037Help.hi', 'Rn037Help.o', 'rn037.hi', 'rn037.o']),
- multimod_compile,
- ['rn037', '-v0'])
diff --git a/testsuite/tests/ghc-regress/rename/prog002/Makefile b/testsuite/tests/ghc-regress/rename/prog002/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog002/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/rename/prog002/Rn037Help.hs b/testsuite/tests/ghc-regress/rename/prog002/Rn037Help.hs
deleted file mode 100644
index 64d1224f49..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog002/Rn037Help.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Rn037Help( T(C) ) where
-
-data T = C
diff --git a/testsuite/tests/ghc-regress/rename/prog002/rename.prog002.stderr b/testsuite/tests/ghc-regress/rename/prog002/rename.prog002.stderr
deleted file mode 100644
index 31b672b539..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog002/rename.prog002.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-rnfail037.hs:8:7: Not in scope: data constructor `Rn037Help.C'
diff --git a/testsuite/tests/ghc-regress/rename/prog002/rename.prog002.stderr-hugs b/testsuite/tests/ghc-regress/rename/prog002/rename.prog002.stderr-hugs
deleted file mode 100644
index cc2a587de2..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog002/rename.prog002.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail037.hs":8 - Undefined data constructor "Rn037Help.C"
diff --git a/testsuite/tests/ghc-regress/rename/prog002/rnfail037.hs b/testsuite/tests/ghc-regress/rename/prog002/rnfail037.hs
deleted file mode 100644
index 0a2935c5ad..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog002/rnfail037.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! Checking that you can hide a constructor
-module ShouldCompile where
-
-import Rn037Help hiding( C )
- -- C is the constructor, but we should
- -- still be able to hide it
-
-f x = Rn037Help.C
diff --git a/testsuite/tests/ghc-regress/rename/prog002/test.T b/testsuite/tests/ghc-regress/rename/prog002/test.T
deleted file mode 100644
index 0aa4c39057..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog002/test.T
+++ /dev/null
@@ -1,4 +0,0 @@
-test('rename.prog002',
- extra_clean(['Rn037Help.hi', 'Rn037Help.o']),
- multimod_compile_fail,
- ['rnfail037', '-v0'])
diff --git a/testsuite/tests/ghc-regress/rename/prog003/A.hs b/testsuite/tests/ghc-regress/rename/prog003/A.hs
deleted file mode 100644
index 6b68075f96..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog003/A.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module A(method) where
-class Class a where method :: a -> a
diff --git a/testsuite/tests/ghc-regress/rename/prog003/B.hs b/testsuite/tests/ghc-regress/rename/prog003/B.hs
deleted file mode 100644
index 77be6cbc0e..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog003/B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Exporting a class method should not export the class too
-module B where
-import A
-f :: Class a => a -> a
-f = method
diff --git a/testsuite/tests/ghc-regress/rename/prog003/Makefile b/testsuite/tests/ghc-regress/rename/prog003/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog003/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/rename/prog003/rename.prog003.stderr b/testsuite/tests/ghc-regress/rename/prog003/rename.prog003.stderr
deleted file mode 100644
index 49c264cae8..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog003/rename.prog003.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-B.hs:4:6: Not in scope: type constructor or class `Class'
diff --git a/testsuite/tests/ghc-regress/rename/prog003/rename.prog003.stderr-hugs b/testsuite/tests/ghc-regress/rename/prog003/rename.prog003.stderr-hugs
deleted file mode 100644
index 5cb62fcdf2..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog003/rename.prog003.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "B.hs":4 - Undefined class "Class"
diff --git a/testsuite/tests/ghc-regress/rename/prog003/test.T b/testsuite/tests/ghc-regress/rename/prog003/test.T
deleted file mode 100644
index 7d4c06ab0e..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog003/test.T
+++ /dev/null
@@ -1,4 +0,0 @@
-test('rename.prog003',
- extra_clean(['A.hi', 'A.o']),
- multimod_compile_fail,
- ['B', '-v0'])
diff --git a/testsuite/tests/ghc-regress/rename/prog004/A.hs b/testsuite/tests/ghc-regress/rename/prog004/A.hs
deleted file mode 100644
index 23fe5bb187..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog004/A.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module A(foo, Bar(..)) where
-
-foo :: Bar
-foo = MkBar 42
-
-data Bar = MkBar Int
diff --git a/testsuite/tests/ghc-regress/rename/prog004/B.hs b/testsuite/tests/ghc-regress/rename/prog004/B.hs
deleted file mode 100644
index 47d2903abb..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog004/B.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module B(module A) where
-
-import A hiding (Bar)
-import A(Bar)
diff --git a/testsuite/tests/ghc-regress/rename/prog004/C.hs b/testsuite/tests/ghc-regress/rename/prog004/C.hs
deleted file mode 100644
index e66231afec..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog004/C.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module C where
-
-import B
-
-baz :: Bar
-baz = foo
-
diff --git a/testsuite/tests/ghc-regress/rename/prog004/Makefile b/testsuite/tests/ghc-regress/rename/prog004/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog004/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/rename/prog004/rename.prog004.stderr b/testsuite/tests/ghc-regress/rename/prog004/rename.prog004.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog004/rename.prog004.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/prog004/test.T b/testsuite/tests/ghc-regress/rename/prog004/test.T
deleted file mode 100644
index 4d97d580c0..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog004/test.T
+++ /dev/null
@@ -1,4 +0,0 @@
-test('rename.prog004',
- extra_clean(['A.hi', 'A.o', 'B.hi', 'B.o', 'C.hi', 'C.o']),
- multimod_compile,
- ['C', '-v0'])
diff --git a/testsuite/tests/ghc-regress/rename/prog005/Makefile b/testsuite/tests/ghc-regress/rename/prog005/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog005/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/rename/prog005/VersionGraphClient.hs b/testsuite/tests/ghc-regress/rename/prog005/VersionGraphClient.hs
deleted file mode 100644
index 3aad9f5180..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog005/VersionGraphClient.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module VersionGraphClient(
- VersionGraphClient,
-
- ) where
-
-import ViewType
-
-newtype VersionGraphClient = VersionGraphClient Int
diff --git a/testsuite/tests/ghc-regress/rename/prog005/VersionGraphClient.hs-boot b/testsuite/tests/ghc-regress/rename/prog005/VersionGraphClient.hs-boot
deleted file mode 100644
index 6bca0bbf5e..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog005/VersionGraphClient.hs-boot
+++ /dev/null
@@ -1,3 +0,0 @@
-module VersionGraphClient where
-
-data VersionGraphClient
diff --git a/testsuite/tests/ghc-regress/rename/prog005/View.hs b/testsuite/tests/ghc-regress/rename/prog005/View.hs
deleted file mode 100644
index c14d301c3d..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog005/View.hs
+++ /dev/null
@@ -1,42 +0,0 @@
-{-
-Bug report submitted by George Russell, 1/10/2004:
-
-With both ghc6.2 and 6.2.20040915 on Linux, ghc --make cannot compile
-the attached files and produces a confusing error message.
-
- # ghc --make View.hs
-Chasing modules from: View.hs
-Compiling ViewType ( ./ViewType.hs, ./ViewType.o )
-Compiling VersionGraphClient ( ./VersionGraphClient.hs, ./VersionGraphClient.o )Compiling View ( View.hs, View.o )
-
-View.hs:14:
- Couldn't match `VersionGraphClient' against `VersionGraphClient'
- Expected type: VersionGraphClient
- Inferred type: VersionGraphClient
- In the `graphClient1' field of a record
- In the record construction: View {graphClient1 = graphClient}
-
-However ghc without make has no problems.
-
-# ghc -c ViewType.hs
-# ghc -c VersionGraphClient.hs
-# ghc -c View.hs
--}
-
--- | This module defines the fundamental structure of the (untyped)
--- objects in a repository.
---
--- We depend circularly on CodedValue.hs. This module is compiled
--- first and uses CodedValue.hi-boot.
-module View(
- ) where
-
-import ViewType
-import VersionGraphClient
-
-createView :: VersionGraphClient -> IO View
-createView graphClient =
- do
- return (View {
- graphClient1 = graphClient
- })
diff --git a/testsuite/tests/ghc-regress/rename/prog005/ViewType.hs b/testsuite/tests/ghc-regress/rename/prog005/ViewType.hs
deleted file mode 100644
index 8e9dd3cd49..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog005/ViewType.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module ViewType(
-
- View(..),
- ) where
-
-
-import {-# SOURCE #-} VersionGraphClient
-
-data View = View {
- graphClient1 :: VersionGraphClient
- }
-
diff --git a/testsuite/tests/ghc-regress/rename/prog005/test.T b/testsuite/tests/ghc-regress/rename/prog005/test.T
deleted file mode 100644
index 35769bd2bb..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog005/test.T
+++ /dev/null
@@ -1,7 +0,0 @@
-test('rename.prog005',
- [only_compiler_types(['ghc']),
- extra_clean(['VersionGraphClient.o-boot','VersionGraphClient.hi-boot',
- 'VersionGraphClient.hi', 'VersionGraphClient.o',
- 'ViewType.hi', 'ViewType.o', 'View.hi', 'View.o'])],
- multimod_compile,
- ['View', '-v0'])
diff --git a/testsuite/tests/ghc-regress/rename/prog006/A.hs b/testsuite/tests/ghc-regress/rename/prog006/A.hs
deleted file mode 100644
index 52e442a0c2..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog006/A.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module A (f, y) where
-
-import B.C (T(..))
-
-f (T x) = x
-
-y = T 42
-
-
diff --git a/testsuite/tests/ghc-regress/rename/prog006/B/C.hs b/testsuite/tests/ghc-regress/rename/prog006/B/C.hs
deleted file mode 100644
index ece50b9002..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog006/B/C.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module B.C where
-
-newtype T = T Int
- deriving Show
-
diff --git a/testsuite/tests/ghc-regress/rename/prog006/Main.hs b/testsuite/tests/ghc-regress/rename/prog006/Main.hs
deleted file mode 100644
index 13f7265fc4..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog006/Main.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Main (main, z) where
-
-import A
-
-main = print (f y)
-
-z = y
diff --git a/testsuite/tests/ghc-regress/rename/prog006/Makefile b/testsuite/tests/ghc-regress/rename/prog006/Makefile
deleted file mode 100644
index d1f4dc0764..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog006/Makefile
+++ /dev/null
@@ -1,39 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-# Original comments relating to GHC 6.4:
-# This test caused a panic in GHC 6.4, but in reality it is user
-# error, caused by compiling separate modules in the program using
-# different search paths. GHC gets confused when it can't find a
-# module mentioned as a dependency in another interface file.
-
-# Update for GHC 6.6:
-# This test now succeeds, because A.hi records the fact that B.C
-# came from the package test-1.0, so there's no conflict.
-
-# If the package format changes, we might have to re-generate pkg.conf
-# using the supplied Cabal configuration.
-
-LOCAL_PKGCONF=local.package.conf
-LOCAL_GHC_PKG = '$(GHC_PKG)' --no-user-package-conf -f $(LOCAL_PKGCONF)
-
-rn.prog006:
- rm -f A.hi A.o B/C.hi B/C.o Main.hi Main.o pkg.conf
- rm -f pwd pwd.exe pwd.exe.manifest pwd.hi pwd.o
- '$(TEST_HC)' $(TEST_HC_OPTS) --make pwd -v0
- '$(TEST_HC)' $(TEST_HC_OPTS) --make -package-name test-1.0 B.C -fforce-recomp -v0
- rm -f pkg.conf
- echo "name: test" >>pkg.conf
- echo "version: 1.0" >>pkg.conf
- echo "id: test-XXX" >>pkg.conf
- echo "import-dirs: `./pwd`" >>pkg.conf
- echo "exposed-modules: B.C" >>pkg.conf
- echo "[]" >$(LOCAL_PKGCONF)
- $(LOCAL_GHC_PKG) register pkg.conf -v0
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -package-conf $(LOCAL_PKGCONF) -package test -fforce-recomp A.hs -i
-# The -i clears the search path, so A.hs will find B.C from package test
- -'$(TEST_HC)' $(TEST_HC_OPTS) -c -package-conf $(LOCAL_PKGCONF) -package test -fforce-recomp Main.hs
-# No -i when compiling Main, so a from-scratch search would find a home-pkg module B.C
-# However, A.hi remembers that B.C came from package test, so all is ok.
-
diff --git a/testsuite/tests/ghc-regress/rename/prog006/Setup.lhs b/testsuite/tests/ghc-regress/rename/prog006/Setup.lhs
deleted file mode 100644
index b28a8234f9..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog006/Setup.lhs
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/usr/bin/runhaskell
-> module Main where
-> import Distribution.Simple
-> main :: IO ()
-> main = defaultMain
diff --git a/testsuite/tests/ghc-regress/rename/prog006/all.T b/testsuite/tests/ghc-regress/rename/prog006/all.T
deleted file mode 100644
index 4126e6cdf4..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog006/all.T
+++ /dev/null
@@ -1,7 +0,0 @@
-test('rn.prog006',
- extra_clean(['A.hi', 'A.o', 'B/C.hi', 'B/C.o',
- 'Main.hi', 'Main.o', 'pkg.conf',
- 'pwd', 'pwd.exe', 'pwd.exe.manifest',
- 'pwd.hi', 'pwd.o']),
- run_command,
- ['$MAKE -s --no-print-directory rn.prog006'])
diff --git a/testsuite/tests/ghc-regress/rename/prog006/pwd.hs b/testsuite/tests/ghc-regress/rename/prog006/pwd.hs
deleted file mode 100644
index 177e836fe1..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog006/pwd.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-
-module Main where
-
-import System.Directory
-import System.Environment
-
-main :: IO ()
-main = do d <- getCurrentDirectory
- putStr $ concatMap f d
- where f '\\' = "/"
- f c = [c]
-
diff --git a/testsuite/tests/ghc-regress/rename/prog006/rn.prog006.stderr b/testsuite/tests/ghc-regress/rename/prog006/rn.prog006.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog006/rn.prog006.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/prog006/test.cabal b/testsuite/tests/ghc-regress/rename/prog006/test.cabal
deleted file mode 100644
index 64fb00e11a..0000000000
--- a/testsuite/tests/ghc-regress/rename/prog006/test.cabal
+++ /dev/null
@@ -1,4 +0,0 @@
-name: test
-version: 1.0
-exposed-modules: B.C
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/2334.hs b/testsuite/tests/ghc-regress/rename/should_compile/2334.hs
deleted file mode 100644
index 6c1cd80e1f..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/2334.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE TypeFamilies,EmptyDataDecls,MultiParamTypeClasses #-}
-module Test where
-
-type family Fam1 a
-
-class C b where
- f :: ( Fam1 s ~ () ) => b -> s
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Imp100Aux.hs b/testsuite/tests/ghc-regress/rename/should_compile/Imp100Aux.hs
deleted file mode 100644
index 2ae5f0baa4..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Imp100Aux.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-
-module Imp100Aux where
-import Imp100
-
-data T1 a
-data T2 a b
-data T3 a b c
-data T4 a b c d
-data T5 a b c d e
-data T6 a
-data T7 a b
-data T8 a b c
-data T9 a b c d
-data T10 a b c d e
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Imp100Aux.hs-boot b/testsuite/tests/ghc-regress/rename/should_compile/Imp100Aux.hs-boot
deleted file mode 100644
index 934db61841..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Imp100Aux.hs-boot
+++ /dev/null
@@ -1,11 +0,0 @@
-module Imp100Aux where
-data T1 a
-data T2 a b
-data T3 a b c
-data T4 a b c d
-data T5 a b c d e
-data T6 a
-data T7 a b
-data T8 a b c
-data T9 a b c d
-data T10 a b c d e
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Imp10Aux.hs b/testsuite/tests/ghc-regress/rename/should_compile/Imp10Aux.hs
deleted file mode 100644
index f838aa558d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Imp10Aux.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
-module Imp10Aux where
-import Imp10
-data T1 a
-data T2 a b
-data T3 a b c
-data T4 a b c d
-data T5 a b c d e
-data T6 a
-data T7 a b
-data T8 a b c
-data T9 a b c d
-data T10 a b c d e
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Imp10Aux.hs-boot b/testsuite/tests/ghc-regress/rename/should_compile/Imp10Aux.hs-boot
deleted file mode 100644
index 248c113ba2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Imp10Aux.hs-boot
+++ /dev/null
@@ -1,11 +0,0 @@
-module Imp10Aux where
-data T1 a
-data T2 a b
-data T3 a b c
-data T4 a b c d
-data T5 a b c d e
-data T6 a
-data T7 a b
-data T8 a b c
-data T9 a b c d
-data T10 a b c d e
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Imp500Aux.hs b/testsuite/tests/ghc-regress/rename/should_compile/Imp500Aux.hs
deleted file mode 100644
index 20c3c79415..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Imp500Aux.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-
-module Imp500Aux where
-import Imp500
-
-data T1 a
-data T2 a b
-data T3 a b c
-data T4 a b c d
-data T5 a b c d e
-data T6 a
-data T7 a b
-data T8 a b c
-data T9 a b c d
-data T10 a b c d e
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Imp500Aux.hs-boot b/testsuite/tests/ghc-regress/rename/should_compile/Imp500Aux.hs-boot
deleted file mode 100644
index 251ac8012c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Imp500Aux.hs-boot
+++ /dev/null
@@ -1,11 +0,0 @@
-module Imp500Aux where
-data T1 a
-data T2 a b
-data T3 a b c
-data T4 a b c d
-data T5 a b c d e
-data T6 a
-data T7 a b
-data T8 a b c
-data T9 a b c d
-data T10 a b c d e
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Makefile b/testsuite/tests/ghc-regress/rename/should_compile/Makefile
deleted file mode 100644
index 36fc785f7f..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Makefile
+++ /dev/null
@@ -1,44 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-T1792_imports:
- $(RM) T1792_imports.hi T1792_imports.o T1792_imports.imports
- '$(TEST_HC)' $(TEST_HC_OPTS) -ddump-minimal-imports -c T1792_imports.hs
- cat T1792_imports.imports
-
-T3823:
- $(RM) T3823A.hi-boot T3823A.hi T3823B.hi
- $(RM) T3823A.o-boot T3823A.o T3823B.o
- -'$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make T3823A.hs
-
-T4003:
- $(RM) T4003A.hi-boot T4003A.hi T4003B.hi
- $(RM) T4003A.o-boot T4003A.o T4003B.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -O -c T4003A.hs-boot
- '$(TEST_HC)' $(TEST_HC_OPTS) -O -c T4003B.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -O -c T4003A.hs
-
-T3449:
- $(RM) T3449.hi-boot T3449.hi T3449A.hi
- $(RM) T3449.o-boot T3449.o T3449A.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -Wall -c T3449.hs-boot
- '$(TEST_HC)' $(TEST_HC_OPTS) -Wall -c T3449A.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -Wall -c T3449.hs
-
-T4239:
- $(RM) T4239A.hi T4239A.o
- $(RM) T4239.hi T4239.o T4239.imports
- '$(TEST_HC)' $(TEST_HC_OPTS) -c T4239A.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c T4239.hs -ddump-minimal-imports
- cat T4239.imports
-
-T4240:
- $(RM) T4240A.hi T4240A.o
- $(RM) T4240B.hi T4240B.o
- $(RM) T4240.hi T4240.o T4240.imports
- '$(TEST_HC)' $(TEST_HC_OPTS) -c T4240A.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c T4240B.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c T4240.hs -ddump-minimal-imports
- cat T4240.imports
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Rn042_A.hs b/testsuite/tests/ghc-regress/rename/should_compile/Rn042_A.hs
deleted file mode 100644
index ea19a1a3f8..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Rn042_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Rn042_A( Type(..) ) where
-
-data Type a = Constr { field :: a }
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Rn043_A.hs b/testsuite/tests/ghc-regress/rename/should_compile/Rn043_A.hs
deleted file mode 100644
index ab24017637..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Rn043_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Rn043_A where
-
-x = True
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Rn043_B.hs b/testsuite/tests/ghc-regress/rename/should_compile/Rn043_B.hs
deleted file mode 100644
index b7f49f4143..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Rn043_B.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Rn043_B where
-
-x = 'x'
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Rn044_A.hs b/testsuite/tests/ghc-regress/rename/should_compile/Rn044_A.hs
deleted file mode 100644
index 475ffe83cb..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Rn044_A.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Rn044_A where
-
-x = True
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Rn044_B.hs b/testsuite/tests/ghc-regress/rename/should_compile/Rn044_B.hs
deleted file mode 100644
index e11f03c10b..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Rn044_B.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Rn044_B where
-
-x = 'x'
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Rn050_A.hs b/testsuite/tests/ghc-regress/rename/should_compile/Rn050_A.hs
deleted file mode 100644
index d4e1f55c7c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Rn050_A.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module Rn050_A where
-
-{-# DEPRECATED C "Use D instead" #-}
-{-# DEPRECATED op "Use bop instead" #-}
-
-data T = C | D
-
-class Foo a where
- op :: a -> a
- bop :: a -> a
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Rn052Aux.hs b/testsuite/tests/ghc-regress/rename/should_compile/Rn052Aux.hs
deleted file mode 100644
index 748da06728..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Rn052Aux.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module Rn052Aux where
-
-class C a where
- f :: a -> Bool
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Rn053_A.hs b/testsuite/tests/ghc-regress/rename/should_compile/Rn053_A.hs
deleted file mode 100644
index d454462034..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Rn053_A.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module Rn053_A where
-
-data D = C1 | C2
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Rn053_B.hs b/testsuite/tests/ghc-regress/rename/should_compile/Rn053_B.hs
deleted file mode 100644
index 49603e8543..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Rn053_B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module Rn053_B where
-
-data D = C1 | C2
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Rn059_A.hs b/testsuite/tests/ghc-regress/rename/should_compile/Rn059_A.hs
deleted file mode 100644
index ddebd78b11..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Rn059_A.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module Rn059_A where
-
-data A = A { label :: Char }
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Rn059_B.hs b/testsuite/tests/ghc-regress/rename/should_compile/Rn059_B.hs
deleted file mode 100644
index df93ae3688..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Rn059_B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module Rn059_B where
-
-data B = B { label :: Char }
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Rn065A.hs b/testsuite/tests/ghc-regress/rename/should_compile/Rn065A.hs
deleted file mode 100644
index 4c6ff53cd4..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Rn065A.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-
-module Rn065A where
-
-data T = T { a :: Int }
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Rn066_A.hs b/testsuite/tests/ghc-regress/rename/should_compile/Rn066_A.hs
deleted file mode 100644
index c6624c3c67..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Rn066_A.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module Rn066_A where
-
-{-# WARNING C "Are you sure you want to do that?" #-}
-{-# WARNING op "Is that really a good idea?" #-}
-
-data T = C | D
-
-class Foo a where
- op :: a -> a
- bop :: a -> a
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/Rn067_A.hs b/testsuite/tests/ghc-regress/rename/should_compile/Rn067_A.hs
deleted file mode 100644
index 8d7958d64c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/Rn067_A.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Rn067_A where
-
-x = True
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/RnAux017.hs b/testsuite/tests/ghc-regress/rename/should_compile/RnAux017.hs
deleted file mode 100644
index 5514524fee..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/RnAux017.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-module RnAux017 where
-import Test -- Import main module so there really is a loop
- -- (avoid warning message)
-data Wibble = Wibble
-data Wobble = Wobble
-
-a :: Int -> Int
-a = undefined
-
-b :: Int -> Int
-b = undefined
-
-c :: Int -> Int
-c = undefined
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/RnAux017.hs-boot b/testsuite/tests/ghc-regress/rename/should_compile/RnAux017.hs-boot
deleted file mode 100644
index a2f3cd3916..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/RnAux017.hs-boot
+++ /dev/null
@@ -1,8 +0,0 @@
-module RnAux017 where
-
-data Wibble
-data Wobble
-
-a :: Int -> Int
-b :: Int -> Int
-c :: Int -> Int
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T1074b.hs b/testsuite/tests/ghc-regress/rename/should_compile/T1074b.hs
deleted file mode 100644
index f236e9b52e..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T1074b.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-
-module Foo (Monad(..)) where
-
-import Prelude (Monad((>>=), return))
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T1789.hs b/testsuite/tests/ghc-regress/rename/should_compile/T1789.hs
deleted file mode 100644
index efe3840e4f..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T1789.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# OPTIONS_GHC -fwarn-missing-import-lists #-}
-
--- Test Trac #1789
-module T1789 where
-
-import Prelude
-import Data.Map
-import Data.Map (size)
-import Data.Maybe (Maybe(..))
-import Data.Maybe hiding (isJust)
-import qualified Data.Set as Set \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T1789.stderr b/testsuite/tests/ghc-regress/rename/should_compile/T1789.stderr
deleted file mode 100644
index dc9a794935..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T1789.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-T1789.hs:6:1:
- Warning: The module `Prelude' does not have an explicit import list
-
-T1789.hs:7:1:
- Warning: The module `Data.Map' does not have an explicit import list
-
-T1789.hs:9:1:
- Warning: The import item `Maybe(..)' does not have an explicit import list
-
-T1789.hs:10:1:
- Warning: The module `Data.Maybe' does not have an explicit import list
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T1789_2.hs b/testsuite/tests/ghc-regress/rename/should_compile/T1789_2.hs
deleted file mode 100644
index 2ac2a509fe..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T1789_2.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# OPTIONS_GHC -fwarn-missing-import-lists #-}
-
--- Test Trac #1789
-module T1789_2 where
-
-import Data.Map (size)
-import Data.Maybe (Maybe(Just, Nothing))
-import qualified Data.Set as Set (insert)
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T1792_imports.hs b/testsuite/tests/ghc-regress/rename/should_compile/T1792_imports.hs
deleted file mode 100644
index 8830bd03e8..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T1792_imports.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module T1792_imports (B.putStr, z, zipWith) where
-
-import qualified Data.ByteString as B (putStr, readFile, zip, zipWith)
-
-z = B.readFile
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T1792_imports.stdout b/testsuite/tests/ghc-regress/rename/should_compile/T1792_imports.stdout
deleted file mode 100644
index b497d12ec6..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T1792_imports.stdout
+++ /dev/null
@@ -1 +0,0 @@
-import qualified Data.ByteString as B ( putStr, readFile )
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T1954.hs b/testsuite/tests/ghc-regress/rename/should_compile/T1954.hs
deleted file mode 100644
index 07bfa3a3e8..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T1954.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-{-# OPTIONS_GHC -Wall -Werror #-}
-module Bug(P) where
-
-newtype P a = P (IO a) deriving Monad
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T1972.hs b/testsuite/tests/ghc-regress/rename/should_compile/T1972.hs
deleted file mode 100644
index 09dd8acaf4..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T1972.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# OPTIONS_GHC -fwarn-name-shadowing -fwarn-unused-binds #-}
-
--- Trac #1972
-
-module Temp where
-
-import Data.List
-
-data Data = Data {name :: String}
-
-h :: a -> a
-h name = name
-
-f mapAccumL x = x
-
-mapAccumL y = y
-
-test x = a+b
- where
- (a,b,c) = x \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T1972.stderr b/testsuite/tests/ghc-regress/rename/should_compile/T1972.stderr
deleted file mode 100644
index 4f9344c4bc..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T1972.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-T1972.hs:12:3:
- Warning: This binding for `name' shadows the existing binding
- defined at T1972.hs:9:19
-
-T1972.hs:14:3:
- Warning: This binding for `mapAccumL' shadows the existing bindings
- defined at T1972.hs:16:1
- imported from Data.List at T1972.hs:7:1-16
-
-T1972.hs:20:10: Warning: Defined but not used: `c'
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T2205.hs b/testsuite/tests/ghc-regress/rename/should_compile/T2205.hs
deleted file mode 100644
index 580dea247a..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T2205.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# OPTIONS_GHC -XTypeOperators #-}
-
--- Test fixity of type operators
--- Trac #2205
-
-module ShouldCompile where
-
- infixr 0 :->
- data a :-> b = P a b
-
- fst3:: (a :-> (b :-> c)) -> a
- fst3 (P a (P b c)) = a
-
-
- fst3':: (a :-> b :-> c) -> a
- fst3' (P a (P b c)) = a
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T2436.hs b/testsuite/tests/ghc-regress/rename/should_compile/T2436.hs
deleted file mode 100644
index 5cfd64100a..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T2436.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-{-# OPTIONS_GHC -fwarn-duplicate-exports #-}
-
-module T2436( C(..), T(..), module T2436a, S(..) ) where
-
-import T2436a
-
-class C a where
- data T a
-
-instance C Int where
- data T Int = TInt Int
-
-data instance S Int = SInt \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T2436a.hs b/testsuite/tests/ghc-regress/rename/should_compile/T2436a.hs
deleted file mode 100644
index 4813fd918d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T2436a.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-module T2436a( S ) where
-
-data family S a \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T2506.hs b/testsuite/tests/ghc-regress/rename/should_compile/T2506.hs
deleted file mode 100644
index 1e31a12c12..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T2506.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- Trac #2506
-
-module ShouldCompile where
-import Control.Exception (assert)
-
-foo = True `assert` ()
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T2914.hs b/testsuite/tests/ghc-regress/rename/should_compile/T2914.hs
deleted file mode 100644
index 788efef59d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T2914.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TypeFamilies, RecordWildCards #-}
-module AssocWildCards where
-
-class FooClass a where
- data FooType a
-
-instance FooClass Int where
- data FooType Int = FooInt { fooIntVal :: Int }
-
-fooInt :: Int -> FooType Int
-fooInt fooIntVal = FooInt{..}
-
-fromFooInt :: FooType Int -> Int
-fromFooInt (FooInt{..}) = fooIntVal
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3221.hs b/testsuite/tests/ghc-regress/rename/should_compile/T3221.hs
deleted file mode 100644
index 5550fd3fa7..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3221.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# OPTIONS_GHC -Werror -fwarn-unused-binds #-}
-
--- Test Trac #3221: the constructors are used by the deriving
--- clause, even though they are not exported
-
-module T3221( Foo ) where
-
-data Foo = Bar | Baz deriving (Show,Read)
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3262.hs b/testsuite/tests/ghc-regress/rename/should_compile/T3262.hs
deleted file mode 100644
index 01437d8d2f..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3262.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# OPTIONS -fwarn-name-shadowing #-}
-
--- Trac #3262: report shadowing in g but not f
-
-module T3262 where
-
-f x = let _ignored = 10 in
- let _ignored = 20 in
- x + _ignored
-
-g x = let not_ignored = 10 in
- let not_ignored = 20 in
- x + not_ignored
-
-mf x = do let _ignored = 10
- let _ignored = 20
- return (x + _ignored)
-
-mg x = do let not_ignored = 10
- let not_ignored = 20
- return (x + not_ignored)
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3262.stderr-ghc b/testsuite/tests/ghc-regress/rename/should_compile/T3262.stderr-ghc
deleted file mode 100644
index 4e730efa8d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3262.stderr-ghc
+++ /dev/null
@@ -1,8 +0,0 @@
-
-T3262.hs:12:11:
- Warning: This binding for `not_ignored' shadows the existing binding
- bound at T3262.hs:11:11
-
-T3262.hs:20:15:
- Warning: This binding for `not_ignored' shadows the existing binding
- bound at T3262.hs:19:15
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3371.hs b/testsuite/tests/ghc-regress/rename/should_compile/T3371.hs
deleted file mode 100644
index 9b3d4459f9..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3371.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE RecordWildCards #-}
-{-# OPTIONS_GHC -fwarn-unused-matches #-}
-
--- Should warn about the unused 'a', but not about the unused 'c'
-
-module T3371(bar) where
-
-data Foo = Foo { a,b,c :: Int } deriving(Eq)
-
-bar Foo{ a = a, ..} = print b
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3371.stderr b/testsuite/tests/ghc-regress/rename/should_compile/T3371.stderr
deleted file mode 100644
index b354d9d3d6..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3371.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-T3371.hs:10:14: Warning: Defined but not used: `a'
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3449.hs b/testsuite/tests/ghc-regress/rename/should_compile/T3449.hs
deleted file mode 100644
index 462bde67af..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3449.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
-module T3449 (Foo, f1) where
-
-import T3449A
-
-class Foo a where
- f1 :: a
- f2 :: a
-
-instance Foo Char where
- f1 = f2
- f2 = aChar
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3449.hs-boot b/testsuite/tests/ghc-regress/rename/should_compile/T3449.hs-boot
deleted file mode 100644
index 153f29eef8..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3449.hs-boot
+++ /dev/null
@@ -1,9 +0,0 @@
-
-module T3449 (Foo, f1) where
-
-class Foo a where
- f1 :: a
- f2 :: a
-
-unused :: Int
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3449.stderr b/testsuite/tests/ghc-regress/rename/should_compile/T3449.stderr
deleted file mode 100644
index da36d24465..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3449.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-T3449.hs-boot:8:1: Warning: Defined but not used: `unused'
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3449A.hs b/testsuite/tests/ghc-regress/rename/should_compile/T3449A.hs
deleted file mode 100644
index 6af161cdfd..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3449A.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-module T3449A where
-
-import {-# SOURCE #-} T3449
-
-z :: Foo a => a
-z = f1
-
-aChar :: Char
-aChar = 'a'
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3640.hs b/testsuite/tests/ghc-regress/rename/should_compile/T3640.hs
deleted file mode 100644
index 2f8c2253ab..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3640.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE NamedFieldPuns #-}
-
-module T3640 where
-
-data Record = Record { f1, f2, f3 :: Int }
-
-goodPun Record{f1,f2,f3} = f1 + f2 + f3
-
-badPun r = f1 + f2 + f3
- where Record{f1=f1,f2,f3} = r
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3823.stderr b/testsuite/tests/ghc-regress/rename/should_compile/T3823.stderr
deleted file mode 100644
index 0eb8234554..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3823.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-T3823B.hs:8:7:
- Couldn't match expected type `A' with actual type `Bool'
- In the first argument of `y', namely `a'
- In the expression: y a
- In an equation for `b': b = y a
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3823A.hs b/testsuite/tests/ghc-regress/rename/should_compile/T3823A.hs
deleted file mode 100644
index 0a5c230973..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3823A.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module T3823A where
-
-import T3823B
-
-data A = X { x :: Bool } | Y
-
-y :: A -> A
-y = \_ -> Y
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3823A.hs-boot b/testsuite/tests/ghc-regress/rename/should_compile/T3823A.hs-boot
deleted file mode 100644
index 3b7dd8bb17..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3823A.hs-boot
+++ /dev/null
@@ -1,5 +0,0 @@
-module T3823A where
-
-data A = X { x :: Bool } | Y
-
-y :: A -> A
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3823B.hs b/testsuite/tests/ghc-regress/rename/should_compile/T3823B.hs
deleted file mode 100644
index 9f4d03e091..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3823B.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module T3823B where
-
-import {-# SOURCE #-} T3823A
-
-data B = A A
-
-a = x (X True)
-b = y a
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3901.hs b/testsuite/tests/ghc-regress/rename/should_compile/T3901.hs
deleted file mode 100644
index 39b521977b..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3901.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE RecordWildCards, TransformListComp, NamedFieldPuns #-}
-
-module T3901 where
-
-data Rec = Rec {a :: Int} deriving (Show)
-
-recs1 = [a | Rec {a=a} <- [Rec 1], then group by a]
-
-recs2 = [a | Rec {a} <- [Rec 1], then group by a]
-
-recs3 = [a | Rec {..} <- [Rec 1], then group by a]
-
-recs4 :: [[Int]]
-recs4 = [a | Rec {..} <- [Rec 1], then group by a]
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T3943.hs b/testsuite/tests/ghc-regress/rename/should_compile/T3943.hs
deleted file mode 100644
index efbeb295be..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T3943.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# OPTIONS_GHC -Wall #-}
-{-# LANGUAGE ViewPatterns #-}
-
-module T3943 where
-
--- Note that 'r' is used, in the view pattern
--- The bug was that 'r' was reported unused
-
-test :: ([a], [a]) -> [a]
-test x = let (r,(r++) -> rs) = x in rs
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T4003A.hs b/testsuite/tests/ghc-regress/rename/should_compile/T4003A.hs
deleted file mode 100644
index c17fbae456..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T4003A.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-
-module T4003A where
-
-import T4003B
-
-import Data.Data
-
-data MyId = MyId
- deriving (Data, Typeable)
-
-data HsExpr id
- = HsOverLit (HsOverLit id)
- | HsBracketOut (HsExpr MyId)
- deriving (Data, Typeable)
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T4003A.hs-boot b/testsuite/tests/ghc-regress/rename/should_compile/T4003A.hs-boot
deleted file mode 100644
index b750e47474..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T4003A.hs-boot
+++ /dev/null
@@ -1,8 +0,0 @@
-module T4003A where
-
-import Data.Data
-
-data HsExpr i
-
-instance Typeable1 HsExpr
-instance Data i => Data (HsExpr i)
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T4003B.hs b/testsuite/tests/ghc-regress/rename/should_compile/T4003B.hs
deleted file mode 100644
index 24ce2432a2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T4003B.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-
-{-# LANGUAGE DeriveDataTypeable #-}
-
-module T4003B where
-
-import {-# SOURCE #-} T4003A (HsExpr)
-
-import Data.Data
-
-data HsLit = HsChar
- deriving (Data, Typeable)
-
-data HsOverLit id
- = OverLit (HsExpr id)
- deriving (Data, Typeable)
-
-data OverLitVal = HsIntegral
- deriving (Data, Typeable)
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T4239.hs b/testsuite/tests/ghc-regress/rename/should_compile/T4239.hs
deleted file mode 100644
index 5d4f94f857..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T4239.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-
-module T4239 where
-
-import T4239A
-
-v1 :: (:+++)
-v1 = (:+++)
-
-v2 :: (:+++)
-v2 = X
-
-v3 :: (:+++)
-v3 = (:---)
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T4239A.hs b/testsuite/tests/ghc-regress/rename/should_compile/T4239A.hs
deleted file mode 100644
index ea92d9653b..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T4239A.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-{-# LANGUAGE TypeOperators #-}
-
-module T4239A where
-
-data (:+++) = (:+++)
- | (:---)
- | X
- | Y
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T4240.hs b/testsuite/tests/ghc-regress/rename/should_compile/T4240.hs
deleted file mode 100644
index 75621cf4d5..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T4240.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-module T4240 where
-
-import T4240B
-
-v :: Int
-v = m
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T4240.stdout b/testsuite/tests/ghc-regress/rename/should_compile/T4240.stdout
deleted file mode 100644
index c73585f4a4..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T4240.stdout
+++ /dev/null
@@ -1 +0,0 @@
-import T4240B ( m )
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T4240A.hs b/testsuite/tests/ghc-regress/rename/should_compile/T4240A.hs
deleted file mode 100644
index 15215e7080..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T4240A.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-module T4240A where
-
-class C a where
- m :: a
-
-instance C Int where
- m = 5
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T4240B.hs b/testsuite/tests/ghc-regress/rename/should_compile/T4240B.hs
deleted file mode 100644
index b3165b3c12..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T4240B.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module T4240B (m) where
-
-import T4240A
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T4478.hs b/testsuite/tests/ghc-regress/rename/should_compile/T4478.hs
deleted file mode 100644
index 0d6a5e1ea6..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T4478.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
--- We don't want to warn about duplicate exports for things exported
--- by both "module" exports
-module T4478 (module Prelude, module Data.List) where
-
-import Prelude
-import Data.List
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T4489.hs b/testsuite/tests/ghc-regress/rename/should_compile/T4489.hs
deleted file mode 100644
index a967cad06d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T4489.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# OPTIONS_GHC -fwarn-missing-import-lists #-}
-module T4489 where
-
-import Data.Maybe
-import Data.Maybe( Maybe(..) )
-import Data.Maybe( Maybe(Just) )
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T4489.stderr b/testsuite/tests/ghc-regress/rename/should_compile/T4489.stderr
deleted file mode 100644
index 8cd400a720..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T4489.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-T4489.hs:4:1:
- Warning: The module `Data.Maybe' does not have an explicit import list
-
-T4489.hs:5:1:
- Warning: The import item `Maybe(..)' does not have an explicit import list
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T4534.hs b/testsuite/tests/ghc-regress/rename/should_compile/T4534.hs
deleted file mode 100644
index 03eb67f23d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T4534.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TransformListComp #-}
-
--- GHC 7.0.1 failed because the renamer didn't attach
--- all the used variables to the TransformListComp constructor
-
-module List where
-
-intersectFront :: Ord a => [a] -> [a] -> [a]
-intersectFront xs ys = [x | (x,y) <- zip xs ys, then takeWhile by x == y]
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T5331.hs b/testsuite/tests/ghc-regress/rename/should_compile/T5331.hs
deleted file mode 100644
index 4e7343e56b..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T5331.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE GADTs, ScopedTypeVariables #-}
-{-# OPTIONS_GHC -Wall #-}
-
-module Foo where
-
-data T a
-
-instance Eq (T a)
-{-# SPECIALISE instance forall a.Eq (T Int) #-}
-
-data S = forall a.S1
-
-data W where
- W1 :: forall a. W
-
-f :: forall a. Int
-f = 3
-
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T5331.stderr b/testsuite/tests/ghc-regress/rename/should_compile/T5331.stderr
deleted file mode 100644
index 36261c539d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T5331.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-
-T5331.hs:9:32:
- Warning: Unused quantified type variable `a'
- In the type `forall a. Eq (T Int)'
- In a SPECIALISE instance pragma
-
-T5331.hs:11:17:
- Warning: Unused quantified type variable `a'
- In the definition of data constructor `S1'
-
-T5331.hs:14:16:
- Warning: Unused quantified type variable `a'
- In the definition of data constructor `W1'
-
-T5331.hs:16:13:
- Warning: Unused quantified type variable `a'
- In the type `forall a. Int'
- In the type signature for `f'
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T5334.hs b/testsuite/tests/ghc-regress/rename/should_compile/T5334.hs
deleted file mode 100644
index 83f539d492..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T5334.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE RecordWildCards #-}
-
-module T5334 where
-
-data T = T { a, b :: Int }
-
-t = T {..}
- where
- a = 1
- -- b = 2
-
-data S = S { x, y :: Int }
-
-s = S { x = 1 }
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/T5334.stderr b/testsuite/tests/ghc-regress/rename/should_compile/T5334.stderr
deleted file mode 100644
index de906b9dd6..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/T5334.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-T5334.hs:7:5:
- Warning: Fields of `T' not initialised: b
- In the expression: T {..}
- In an equation for `t':
- t = T {..}
- where
- a = 1
-
-T5334.hs:14:5:
- Warning: Fields of `S' not initialised: y
- In the expression: S {x = 1}
- In an equation for `s': s = S {x = 1}
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/all.T b/testsuite/tests/ghc-regress/rename/should_compile/all.T
deleted file mode 100644
index 3946987e37..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/all.T
+++ /dev/null
@@ -1,179 +0,0 @@
-# Args to vtc are: extra compile flags
-
-test('rn003', normal, compile, [''])
-test('rn005', normal, compile, [''])
-test('rn006', normal, compile, [''])
-test('rn009',
- [only_compiler_types(['ghc']),
- extra_clean(['Imp10Aux.hi', 'Imp10Aux.o',
- 'Imp10Aux.hi-boot', 'Imp10Aux.o-boot'])],
- multimod_compile,
- ['rn009', '-v0'])
-# rn10 tests the same things as 009,011,012
-#test('rn010', only_compiler_types(['ghc']), multimod_compile, ['rn010', '-v0'])
-test('rn011',
- [only_compiler_types(['ghc']),
- extra_clean(['Imp100Aux.hi', 'Imp100Aux.o',
- 'Imp100Aux.hi-boot', 'Imp100Aux.o-boot'])],
- multimod_compile,
- ['rn011', '-v0'])
-test('rn012',
- [only_compiler_types(['ghc']),
- extra_clean(['Imp500Aux.hi', 'Imp500Aux.o',
- 'Imp500Aux.hi-boot', 'Imp500Aux.o-boot'])],
- multimod_compile,
- ['rn012', '-v0'])
-test('rn013', normal, compile, [''])
-test('rn017',
- [only_compiler_types(['ghc']),
- extra_clean(['RnAux017.hi', 'RnAux017.o',
- 'RnAux017.hi-boot', 'RnAux017.o-boot'])],
- multimod_compile,
- ['rn017', '-v0'])
-test('rn019', normal, compile, [''])
-test('rn020', normal, compile, [''])
-test('rn022', normal, compile, [''])
-test('rn023', normal, compile, [''])
-test('rn024', normal, compile, [''])
-test('rn025', normal, compile, [''])
-test('rn026', normal, compile, [''])
-test('rn027', normal, compile, [''])
-test('rn028', normal, compile, [''])
-test('rn029', normal, compile, [''])
-test('rn031', normal, compile, [''])
-test('rn032', normal, compile, [''])
-test('rn033', normal, compile, [''])
-test('rn034', normal, compile, [''])
-test('rn035', normal, compile, [''])
-test('rn036', normal, compile, [''])
-test('rn037', normal, compile, [''])
-
-# Missing:
-# test('rn038', normal, compile, [''])
-
-test('rn039', normal, compile, [''])
-test('rn040', normal, compile, ['-fwarn-unused-binds -fwarn-unused-matches'])
-test('rn041', normal, compile, [''])
-test('rn042',
- extra_clean(['Rn042_A.hi', 'Rn042_A.o']),
- multimod_compile,
- ['rn042', '-v0'])
-test('rn043',
- extra_clean(['Rn043_A.hi', 'Rn043_A.o', 'Rn043_B.hi', 'Rn043_B.o']),
- multimod_compile, ['rn043', '-v0'])
-test('rn044',
- extra_clean(['Rn044_A.hi', 'Rn044_A.o', 'Rn044_B.hi', 'Rn044_B.o']),
- multimod_compile, ['rn044', '-v0'])
-test('rn045', normal, compile, [''])
-test('rn046', normal, compile, ['-W'])
-test('rn047', normal, compile, ['-W'])
-test('rn048', normal, compile, ['-W'])
-test('rn049', normal, compile, ['-W'])
-
-test('rn050',
- extra_clean(['Rn050_A.hi', 'Rn050_A.o']),
- multimod_compile, ['rn050', '-v0'])
-
-test('rn051', normal, compile, [''])
-
-test('rn052',
- extra_clean(['Rn052Aux.hi', 'Rn052Aux.o']),
- multimod_compile, ['rn052', '-v0'])
-
-test('rn053',
- extra_clean(['Rn053_A.hi', 'Rn053_A.o', 'Rn053_B.hi', 'Rn053_B.o']),
- multimod_compile, ['rn053', '-v0'])
-
-test('rn054', normal, compile, [''])
-test('rn055', normal, compile, [''])
-test('rn056', normal, compile, [''])
-test('rn057', normal, compile, [''])
-test('rn058', normal, compile, [''])
-test('rn059',
- extra_clean(['Rn059_A.hi', 'Rn059_A.o', 'Rn059_B.hi', 'Rn059_B.o']),
- multimod_compile, ['rn059', '-v0'])
-test('rn060', normal, compile, [''])
-test('rn061', normal, compile, [''])
-test('rn062', normal, compile, [''])
-test('rn063', normal, compile, [''])
-test('rn064', normal, compile, [''])
-test('rn065',
- extra_clean(['Rn065A.hi', 'Rn065A.o']),
- multimod_compile,
- ['rn065', '-v0'])
-
-test('rn066',
- extra_clean(['Rn066_A.hi', 'Rn066_A.o']),
- multimod_compile, ['rn066', '-v0'])
-
-test('rn067',
- extra_clean(['Rn067_A.hi', 'Rn067_A.o']),
- multimod_compile, ['rn067', '-v0'])
-
-test('T1972', normal, compile, [''])
-test('T2205', normal, compile, [''])
-
-test('2334', normal, compile, [''])
-test('T2506', normal, compile, [''])
-test('T2914', normal, compile, [''])
-test('T3221', normal, compile, [''])
-test('T3262', normal, compile, [''])
-test('T3371', normal, compile, [''])
-test('T1074b', normal, compile, ['-Wall'])
-test('T3640', normal, compile, [''])
-test('T3901', normal, compile, [''])
-test('T1954', normal, compile, [''])
-test('T3943', normal, compile, [''])
-
-test('timing001', normal, compile, [''])
-test('timing002', normal, compile, [''])
-test('timing003', normal, compile, [''])
-
-test('T1792_imports', extra_clean(['T1792_imports.imports']), run_command,
- ['$MAKE -s --no-print-directory T1792_imports'])
-
-test('T3823',
- extra_clean(['T3823A.hi-boot', 'T3823A.hi', 'T3823B.hi',
- 'T3823A.o-boot', 'T3823A.o', 'T3823B.o']),
- run_command,
- ['$MAKE -s --no-print-directory T3823'])
-
-test('T4003',
- extra_clean(['T4003A.hi-boot', 'T4003A.hi', 'T4003B.hi',
- 'T4003A.o-boot', 'T4003A.o', 'T4003B.o']),
- run_command,
- ['$MAKE -s --no-print-directory T4003'])
-test('T1789', normal, compile, [''])
-test('T1789_2', normal, compile, [''])
-test('T3449',
- extra_clean(['T3449.hi-boot', 'T3449.hi',
- 'T3449.o-boot', 'T3449.o']),
- run_command,
- ['$MAKE -s --no-print-directory T3449'])
-test('T4239',
- [expect_broken(4239),
- extra_clean(['T4239A.hi', 'T4239A.o', 'T4239.hi', 'T4239.o',
- 'T4239.imports'])],
- run_command,
- ['$MAKE -s --no-print-directory T4239'])
-test('T4240',
- [extra_clean(['T4240A.hi', 'T4240A.o', 'T4240.hi', 'T4240.o',
- 'T4240.imports'])],
- run_command,
- ['$MAKE -s --no-print-directory T4240'])
-
-test('T4489', normal, compile, [''])
-test('T4478', if_compiler_lt('ghc', '7.1', expect_fail), compile, [''])
-test('T4534', normal, compile, [''])
-
-test('mc09', normal, compile, [''])
-test('mc10', normal, compile, [''])
-test('mc11', normal, compile, [''])
-test('mc12', normal, compile, [''])
-test('T2436',
- [ only_compiler_types(['ghc']),
- extra_clean(['T2436a.hi', 'T2436a.o']) ],
- multimod_compile,
- ['T2436', '-v0'])
-test('T5331', normal, compile, ['']) # Unused tyvar warnings
-test('T5334', normal, compile, ['']) # Unused tyvar warnings
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/mc09.hs b/testsuite/tests/ghc-regress/rename/should_compile/mc09.hs
deleted file mode 100644
index f4a62fa617..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/mc09.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE MonadComprehensions, TransformListComp #-}
-
--- Test performed for TransformListComp and should work for monad comp aswell:
--- GHC 7.0.1 failed because the renamer didn't attach
--- all the used variables to the TransformListComp constructor
-
-module List where
-
-intersectFront :: Ord a => [a] -> [a] -> [a]
-intersectFront xs ys = [x | (x,y) <- zip xs ys, then takeWhile by x == y]
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/mc10.hs b/testsuite/tests/ghc-regress/rename/should_compile/mc10.hs
deleted file mode 100644
index fa9774fdfb..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/mc10.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# OPTIONS_GHC -fwarn-unused-matches #-}
-{-# LANGUAGE MonadComprehensions, ParallelListComp #-}
--- Test for parallel list comp should work for monad comp aswell:
---
--- GHC 6.4 erroneously reported that the
--- bindings for q and z were unused
---
--- Note the parallel list comprehension,
--- which was the cause of the trouble
-
-module ShouldCompile where
-
-t :: [Int]
-t = [ q | y <- [1..10]
- | z <- [30..40], let q = z*z]
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/mc10.stderr-ghc b/testsuite/tests/ghc-regress/rename/should_compile/mc10.stderr-ghc
deleted file mode 100644
index 585bfa4528..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/mc10.stderr-ghc
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mc10.hs:14:11: Warning: Defined but not used: `y'
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/mc11.hs b/testsuite/tests/ghc-regress/rename/should_compile/mc11.hs
deleted file mode 100644
index 250e587a16..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/mc11.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE RecordWildCards, MonadComprehensions, TransformListComp, NamedFieldPuns #-}
-
-module T3901 where
-
-data Rec = Rec {a :: Int} deriving (Show)
-
-recs1 = [a | Rec {a=a} <- [Rec 1], then group by a]
-
-recs2 = [a | Rec {a} <- [Rec 1], then group by a]
-
-recs3 = [a | Rec {..} <- [Rec 1], then group by a]
-
-recs4 :: [[Int]]
-recs4 = [a | Rec {..} <- [Rec 1], then group by a]
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/mc12.hs b/testsuite/tests/ghc-regress/rename/should_compile/mc12.hs
deleted file mode 100644
index cd55dfb451..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/mc12.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# OPTIONS_GHC -Wall #-}
-{-# LANGUAGE MonadComprehensions, ParallelListComp #-}
--- Test for parallel list comp, which should work for monad comp as well:
---
--- On GHC 6.0 and earlier, this parallel list comprehension generated
--- an incorrect unused-binding warning.
-
-module ShouldCompile where
-
-t :: [(Char,Char)]
-t = [ (a,b) | a <- "foo" | b <- "bar" ]
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn003.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn003.hs
deleted file mode 100644
index bb22583721..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn003.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module Foo (f) where
--- export food
-f x = x
-
--- !!! weird patterns with no variables
-1 = f 1
-[] = f []
-1 = f (f 1)
-[] = f (f [])
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn003.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn003.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn003.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn005.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn005.hs
deleted file mode 100644
index 623bd78df3..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn005.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! rn005: simplest case: a few non-recursive bindings
-
-module Test where
-
-f = []
-g x = x
-h x y = x
-i x y z = x
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn005.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn005.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn005.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn006.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn006.hs
deleted file mode 100644
index 4f4c0a4fed..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn006.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !!! rn006: two sets of mutually-recursive blobs:
--- !!! f, g, h are mut rec
--- !!! i, j, k are mut rec
-
-module Test where
-
-f x = g x x
-i x = j x x
-
-g x y = h x x y
-j x y = k x x y
-
-h x y z = f z
-k x y z = i z
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn006.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn006.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn006.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn009.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn009.hs
deleted file mode 100644
index 7192e1d45a..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn009.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module Imp10 where
-import {-# SOURCE #-} Imp10Aux
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn009.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn009.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn009.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn010.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn010.hs
deleted file mode 100644
index d1eac0a700..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn010.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module Imp100 where
-import {-# SOURCE #-} Int10
-import {-# SOURCE #-} Int10
-import {-# SOURCE #-} Int10
-import {-# SOURCE #-} Int10
-import {-# SOURCE #-} Int10
-import {-# SOURCE #-} Int10
-import {-# SOURCE #-} Int10
-import {-# SOURCE #-} Int10
-import {-# SOURCE #-} Int10
-import {-# SOURCE #-} Int10
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn010.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn010.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn010.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn011.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn011.hs
deleted file mode 100644
index df0cb62b25..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn011.hs
+++ /dev/null
@@ -1,101 +0,0 @@
-module Imp100 where
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-import {-# SOURCE #-} Imp100Aux
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn011.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn011.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn011.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn012.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn012.hs
deleted file mode 100644
index 46bcfce6a3..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn012.hs
+++ /dev/null
@@ -1,503 +0,0 @@
-module Imp500 where
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-import {-# SOURCE #-} Imp500Aux
-
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn012.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn012.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn012.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn013.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn013.hs
deleted file mode 100644
index e48c2c56ee..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn013.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-module Mod10 where
-
-data T1 a = C1 a
-
-data T2 a b = T2C1 a | T2C2 b
-
-data T3 a b c = T3C1 a | T3C2 b | T3C3 c
-
-data T4 a b c d = T4C1 a | T4C2 b | T4C3 c | T4C4 d
-
-data T5 a b c d e = T5C1 a | T5C2 b | T5C3 c | T5C4 d | T5C5 e
-
-data T6 a = T6C6 a
-
-data T7 a b = T7C6 a | T7C7 b
-
-data T8 a b c = T8C1 a | T8C2 b | T8C3 c
-
-data T9 a b c d = T9C1 a | T9C2 b | T9C3 c | T9C4 d
-
-data T10 a b c d e = T10C1 a | T10C2 b | T10C3 c | T10C4 d | T10C5 e
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn013.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn013.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn013.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn016.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn016.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn016.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn017.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn017.hs
deleted file mode 100644
index 7d073e90ea..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn017.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !! Rexporting
-module Test ( module Test , module RnAux017 ) where
-
-import {-# SOURCE #-} RnAux017
-
-f x = x
-
-data Foo = MkFoo
-
-class FOO a where
- op :: a -> Int
-
-instance FOO Foo where
- op x = 42
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn018.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn018.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn018.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn019.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn019.hs
deleted file mode 100644
index 9c393f9119..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn019.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module Silly (
- Data.Array.accum
- ) where
-import qualified Data.Array
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn020.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn020.hs
deleted file mode 100644
index 5485d7cb51..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn020.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! Duplicate fields in record decls
-
-module OK where
-
-data X = A {a :: Int} | B {a :: Int}
-
-f x = x
-
--- data Y = V {a :: Int}
-
--- f y = y
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn022.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn022.hs
deleted file mode 100644
index c59b949a48..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn022.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- this is legal, I think (WDP)
-
-module Confused where
-
-import Prelude hiding (otherwise)
-
-otherwise = False
-
-f x | otherwise = 1
-
-g otherwise | otherwise = 2
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn022.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn022.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn022.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn023.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn023.hs
deleted file mode 100644
index 3522ff0ff4..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn023.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !! This one is fine in Haskell 1.4
---
-module Foo ( Bar(..) ) where { data Bar = Bar X; data X = Y }
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn024.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn024.hs
deleted file mode 100644
index ae9cc6b4f0..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn024.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !! This is fine in Haskell 1.4
---
-module Foo ( Baz(..) ) where
-
-class Baz a where
- opx :: Int -> Bar -> a -> a
-
-data Bar = Bar X
-data X = Y
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn025.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn025.hs
deleted file mode 100644
index b8bf1ffe94..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn025.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Re-exporting a module whose contents is partially hidden.
-module ShouldCompile ( module Data.List ) where
-
-import Data.List hiding ( sort )
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn025.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn025.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn025.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn026.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn026.hs
deleted file mode 100644
index 45510361a9..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn026.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! Checking that more than imported module can share a local
--- !!! local alias.
-module ShouldCompile where
-
-import qualified Data.List as X
-import qualified Data.Maybe as X
-
-x :: Ord a => [a] -> [a]
-x = X.sort
-
-y :: Maybe a -> Bool
-y = X.isJust
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn027.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn027.hs
deleted file mode 100644
index 76cefe9310..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn027.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! Checking that an imported module may still have
--- !!! a local alias without having used 'qualified'.
-module ShouldCompile where
-
-import Data.List as X
-import Data.Maybe as X
-
-x :: Ord a => [a] -> [a]
-x = X.sort
-
-y :: Maybe a -> Bool
-y = X.isJust
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn028.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn028.hs
deleted file mode 100644
index 6bbafd7a36..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn028.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- !!! Checking that a toplevel declaration 'f' in module M is accessible
--- !!! as both 'f' and 'M.f' within the scope of M. Similarly for imported
--- !!! entities.
-module ShouldCompile where
-
-import Data.List ( sort )
-
-x :: Int
-x = 2
-
-y :: Int
-y = x
-
-z :: Int
-z = ShouldCompile.x
-
-sortOf :: Ord a=> [a] -> [a]
-sortOf = Data.List.sort
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn029.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn029.hs
deleted file mode 100644
index 76dd993dc9..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn029.hs
+++ /dev/null
@@ -1,17 +0,0 @@
--- !!! Checking that lazy name clashing works.
-module ShouldCompile where
-
-import Data.List ( reverse, sort )
-
-sort :: Int -- Clashes with Data.List.sort,
-sort = 4 -- but never used, so OK
-
-
-reverse :: Int -- Clashes with Data.List.reverse,
-reverse = 3 -- but the only uses are qualified
-
-x = ShouldCompile.reverse
-
-y = Data.List.reverse
-
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn031.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn031.hs
deleted file mode 100644
index 7b4a07d626..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn031.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! Checking that an imported module may still have
--- !!! a local alias without having used 'qualified'.
-module ShouldCompile where
-
-import Data.List as X
-import Data.Maybe as X
-
-x :: Ord a => [a] -> [a]
-x = X.sort
-
-y :: Maybe a -> Bool
-y = isJust
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn032.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn032.hs
deleted file mode 100644
index 6bbafd7a36..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn032.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- !!! Checking that a toplevel declaration 'f' in module M is accessible
--- !!! as both 'f' and 'M.f' within the scope of M. Similarly for imported
--- !!! entities.
-module ShouldCompile where
-
-import Data.List ( sort )
-
-x :: Int
-x = 2
-
-y :: Int
-y = x
-
-z :: Int
-z = ShouldCompile.x
-
-sortOf :: Ord a=> [a] -> [a]
-sortOf = Data.List.sort
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn033.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn033.hs
deleted file mode 100644
index 4c30160a8d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn033.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !!! Checking that lazy name clashing works
-module ShouldCompile where
-
-import Data.List ( sort )
-
-sort :: Int
-sort = 3
-
-foo :: Int
-foo = ShouldCompile.sort
-
-baz :: (Ord a) => [a] -> [a]
-baz = Data.List.sort
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn034.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn034.hs
deleted file mode 100644
index b8fc047171..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn034.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! Checking that empty declarations are permitted.
-module ShouldCompile where
-
-
-class Foo a where
-
-class Foz a
-
-x = 2 where
-y = 3
-
-instance Foo Int where
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn035.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn035.hs
deleted file mode 100644
index 3de6a9b71d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn035.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! Checking what's legal in the body of a class declaration.
-module ShouldCompile where
-
-class Foo a where {
- (--<>--) :: a -> a -> Int ;
- infixl 5 --<>-- ;
- (--<>--) _ _ = 2 ; -- empty decl at the end.
-};
-
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn036.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn036.hs
deleted file mode 100644
index 9eb96b1dd6..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn036.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !!! Checking that qualified method names are legal in instance body.
--- but not (now -- Aug 02) in the binding position
-module ShouldCompile where
-
-import Prelude hiding (Eq, (==))
-import Prelude as P (Eq,(==))
-
-data Foo = Foo Int Integer
-
-instance P.Eq Foo where
- (Foo a1 b1) == (Foo a2 b2) = a1 P.== a2 && b1 P.== b2
-
-
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn037.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn037.hs
deleted file mode 100644
index 46de96fae5..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn037.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-{-# OPTIONS -fwarn-unused-imports #-}
--- !!! test unused import warning
-import Data.List
-main = return () :: IO ()
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn037.stderr-ghc b/testsuite/tests/ghc-regress/rename/should_compile/rn037.stderr-ghc
deleted file mode 100644
index 64b604f9bd..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn037.stderr-ghc
+++ /dev/null
@@ -1,5 +0,0 @@
-
-rn037.hs:3:1:
- Warning: The import of `Data.List' is redundant
- except perhaps to import instances from `Data.List'
- To import instances alone, use: import Data.List()
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn039.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn039.hs
deleted file mode 100644
index 9033858158..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn039.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# OPTIONS -fwarn-name-shadowing #-}
-module ShouldCompile where
-
--- !!! test shadowing of a global name
-
-g = 42 where f -1 = -1 -- shadows (-), probably by accident!
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn039.stderr-ghc b/testsuite/tests/ghc-regress/rename/should_compile/rn039.stderr-ghc
deleted file mode 100644
index f3c9c5bf3d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn039.stderr-ghc
+++ /dev/null
@@ -1,4 +0,0 @@
-
-rn039.hs:6:16:
- Warning: This binding for `-' shadows the existing binding
- imported from Prelude
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn040.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn040.hs
deleted file mode 100644
index 3b418f5c2f..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn040.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# OPTIONS -fwarn-unused-binds #-}
-module ShouldCompile where
-
--- !!! should produce warnings about unused identifers
-x :: [()]
-x = [ () | y <- [] ]
-
-z = do w <- getContents; return ()
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn040.stderr-ghc b/testsuite/tests/ghc-regress/rename/should_compile/rn040.stderr-ghc
deleted file mode 100644
index 5de9d0c1c6..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn040.stderr-ghc
+++ /dev/null
@@ -1,4 +0,0 @@
-
-rn040.hs:6:12: Warning: Defined but not used: `y'
-
-rn040.hs:8:8: Warning: Defined but not used: `w'
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn041.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn041.hs
deleted file mode 100644
index 454227c14d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn041.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# OPTIONS -fwarn-unused-binds #-}
-
--- Test reports of unused bindings
-
-module ShouldCompile( t ) where
-
-f x = f x -- Unused
-
-g x = h x -- Unused
-h x = g x
-
-t x = t x -- Used by export list
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn041.stderr-ghc b/testsuite/tests/ghc-regress/rename/should_compile/rn041.stderr-ghc
deleted file mode 100644
index da94a09854..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn041.stderr-ghc
+++ /dev/null
@@ -1,6 +0,0 @@
-
-rn041.hs:7:1: Warning: Defined but not used: `f'
-
-rn041.hs:9:1: Warning: Defined but not used: `g'
-
-rn041.hs:10:1: Warning: Defined but not used: `h'
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn042.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn042.hs
deleted file mode 100644
index db96e89b73..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn042.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- Record field selectors imported alone; should be ok
-
-module M where
-
-import Rn042_A( field )
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn043.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn043.hs
deleted file mode 100644
index e88e8426df..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn043.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- This one should succeed; M.x is unambiguous
-
-module ShouldCompile (module M) where
-
- import Rn043_A as M -- x, M.x
- import Rn043_B -- x, Rn043_A.x
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn044.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn044.hs
deleted file mode 100644
index 44e33b40b4..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn044.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- This one should succeed; x is unambiguous, even
--- though M.x is not
-
-module ShouldCompile (module M) where
-
-import qualified Rn044_A as M -- M.x
-import Rn044_B as M -- x, M.x
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn045.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn045.hs
deleted file mode 100644
index 16a3c49972..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn045.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# OPTIONS_GHC -Wall #-}
-{-# LANGUAGE ParallelListComp #-}
--- On GHC 6.0 and earlier, this parallel list comprehension generated
--- an incorrect unused-binding warning.
-
-module ShouldCompile where
-
-t :: [(Char,Char)]
-t = [ (a,b) | a <- "foo" | b <- "bar" ]
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn046.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn046.hs
deleted file mode 100644
index ba469f3aec..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn046.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldCompile where
-import Data.List (nub) -- all unused
-import Data.Char (ord, chr) -- some unused
-
-x = chr 42
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn046.stderr-ghc b/testsuite/tests/ghc-regress/rename/should_compile/rn046.stderr-ghc
deleted file mode 100644
index ebde8af373..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn046.stderr-ghc
+++ /dev/null
@@ -1,8 +0,0 @@
-
-rn046.hs:2:1:
- Warning: The import of `Data.List' is redundant
- except perhaps to import instances from `Data.List'
- To import instances alone, use: import Data.List()
-
-rn046.hs:3:1:
- Warning: The import of `ord' from module `Data.Char' is redundant
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn047.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn047.hs
deleted file mode 100644
index f4526aa384..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn047.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# OPTIONS_GHC -fwarn-unused-matches #-}
-{-# LANGUAGE ParallelListComp #-}
--- GHC 6.4 erroneously reported that the
--- bindings for q and z were unused
---
--- Note the parallel list comprehension,
--- which was the cause of the trouble
-
-module ShouldCompile where
-
-t :: [Int]
-t = [ q | y <- [1..10]
- | z <- [30..40], let q = z*z]
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn047.stderr-ghc b/testsuite/tests/ghc-regress/rename/should_compile/rn047.stderr-ghc
deleted file mode 100644
index 8b9614cb17..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn047.stderr-ghc
+++ /dev/null
@@ -1,2 +0,0 @@
-
-rn047.hs:12:11: Warning: Defined but not used: `y'
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn048.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn048.hs
deleted file mode 100644
index e34c979258..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn048.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE GADTs #-}
-{-# OPTIONS_GHC -W #-}
--- Produced a bogus unused-import warning in versions of GHC 6.6
-
-module Bug ( Structure (..) ) where
-
-import Prelude hiding( Rational )
- -- Rational is exported by Prelude
-import Data.Ratio ( Rational )
-
-data Structure a where
- StructCons :: Int -> Structure Int
- StructRatio :: Structure Rational
-
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn049.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn049.hs
deleted file mode 100644
index 83f6c5c276..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn049.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- GHC 6.4.1 said
--- test.hs:1:5:
--- Warning: accepting non-standard pattern guards
--- (-fglasgow-exts to suppress this message)
--- [x <- ((1 * 2) + 3) * 4, undefined]
--- Note the wrongly-parenthesised expression
-
-{-# LANGUAGE Haskell98 #-}
-
-module ShouldCompile where
-
-main | x <- 1*2+3*4 = x
- \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn049.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn049.stderr
deleted file mode 100644
index 766c681051..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn049.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-rn049.hs:12:6:
- Warning: accepting non-standard pattern guards (use -XPatternGuards to suppress this message)
- x <- 1 * 2 + 3 * 4
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn050.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn050.hs
deleted file mode 100644
index 4dd1e6c4c4..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn050.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# OPTIONS_GHC -fwarn-warnings-deprecations #-}
-
--- Test deprecation of constructors and class ops
-
-module ShouldCompile where
-
-import Rn050_A
-
-instance Foo T where
- op x = x
- bop y = y
-
-foo = op C
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn050.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn050.stderr
deleted file mode 100644
index d323205aed..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn050.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-rn050.hs:7:1:
- Warning: In the use of data constructor `C'
- (imported from Rn050_A):
- Deprecated: "Use D instead"
-
-rn050.hs:7:1:
- Warning: In the use of `op'
- (imported from Rn050_A):
- Deprecated: "Use bop instead"
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn051.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn051.hs
deleted file mode 100644
index ee5b53ee8e..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn051.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# OPTIONS -XNoImplicitPrelude #-}
-
--- This one crashed GHC 6.6 in lookupDeprec
--- See Trac #1128
--- and Note [Used names with interface not loaded]
--- in RnNames
-
-module ShouldCompile where
-
-import Prelude
-
-foo :: Int -> Float
-foo x = 3.0
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn052.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn052.hs
deleted file mode 100644
index 47e115a25c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn052.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-module Rn052 where
-
-import qualified Rn052Aux
-
-data D = D
-
-instance Rn052Aux.C D where
- f _ = True
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn053.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn053.hs
deleted file mode 100644
index 6994bf29bd..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn053.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-module Rn053 (D(C1, C2)) where
-
-import qualified Rn053_A
-import Rn053_A hiding (D(..))
-import Rn053_B
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn054.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn054.hs
deleted file mode 100644
index 9706072cb6..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn054.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module Rn054 where
-
-import Data.Bits (shiftL)
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn055.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn055.hs
deleted file mode 100644
index d5ec280d4a..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn055.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# OPTIONS_GHC -fwarn-implicit-prelude -fwarn-unused-imports #-}
-module ShouldCompile where
-
--- !!! should produce warnings about implicitly imported Prelude
--- (but not about the implicit import being unused)
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn055.stderr-ghc b/testsuite/tests/ghc-regress/rename/should_compile/rn055.stderr-ghc
deleted file mode 100644
index 1b928b46cf..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn055.stderr-ghc
+++ /dev/null
@@ -1,2 +0,0 @@
-
-rn055.hs:1:1: Warning: Module `Prelude' implicitly imported
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn056.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn056.hs
deleted file mode 100644
index 5e775dd112..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn056.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# OPTIONS_GHC -fwarn-implicit-prelude -fwarn-unused-imports #-}
-module ShouldCompile where
-
-import Prelude ()
-
--- !!! should produce no warnings
--- (the other use of importing nothing is
--- to nullify the implicit import of the Prelude)
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn056.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn056.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn056.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn057.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn057.hs
deleted file mode 100644
index b6ca224ffb..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn057.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# OPTIONS_GHC -fwarn-implicit-prelude #-}
-{-# LANGUAGE NoImplicitPrelude #-}
-module ShouldCompile where
-
--- !!! should produce no warning
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn057.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn057.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn057.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn058.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn058.hs
deleted file mode 100644
index 838f58b1c7..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn058.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-{-# OPTIONS_GHC -fwarn-unused-imports #-}
-
--- Trac #1386
--- We do not want a warning about unused imports
-
-module Foo () where
-
-import Control.Monad (liftM)
-
-foo :: IO ()
-foo = id `liftM` return ()
-
-foreign export ccall "hs_foo" foo :: IO ()
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn059.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn059.hs
deleted file mode 100644
index e46c666433..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn059.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# OPTIONS_GHC -XDisambiguateRecordFields #-}
-
-module Foo () where
-
-import Rn059_A
-import Rn059_B
-
-a = A { label = 'a' }
-
-b = B { label = 'b' }
-
-f (A { label = a }) (B { label = b }) = (a,b)
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn060.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn060.hs
deleted file mode 100644
index aa6ff02191..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn060.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module Foo (module Data.List) where
-
-import Data.List
-import Data.List as Foo
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn061.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn061.hs
deleted file mode 100644
index caeb1c9e79..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn061.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-
-module Foo (module Prelude) where
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn062.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn062.hs
deleted file mode 100644
index dbb5493fb9..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn062.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- Trac #2055
-
-module Foo where
-
-import qualified Data.List
-
-foo genericReplicate = genericReplicate True
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn063.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn063.hs
deleted file mode 100644
index 4f40cce7ee..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn063.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-
-{-# OPTIONS_GHC -Wall #-}
-
-module Foo where
-
--- We should complain that both x and y are unused.
--- We used to not warn for recursive bindings, like x (trac #2136).
-
-v :: a
-v = let x = x in undefined
-
-w :: a
-w = let y = 'a' in undefined
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn063.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn063.stderr
deleted file mode 100644
index c437dd3c6a..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn063.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-rn063.hs:10:9: Warning: Defined but not used: `x'
-
-rn063.hs:13:9: Warning: Defined but not used: `y'
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn064.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn064.hs
deleted file mode 100644
index 658d87b348..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn064.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-
-{-# OPTIONS_GHC -Wall #-}
-
-module Foo where
-
--- We should complain that the first r shadows the second one, and give
--- the right locations for the two of them. (trac #2137)
-
-z :: a
-z = r
- where
- _a = 'a'
- _f r = r
- _b = 'b'
- r = undefined
- _c = 'c'
-
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn064.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn064.stderr
deleted file mode 100644
index f23a96bb54..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn064.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-rn064.hs:13:12:
- Warning: This binding for `r' shadows the existing binding
- bound at rn064.hs:15:9
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn065.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn065.hs
deleted file mode 100644
index 2da09d0d74..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn065.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-{-# LANGUAGE RecordWildCards #-}
-
--- trac #1491
-
-module Foo where
-
-import Rn065A
-
-f T{..} = a + 1
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn066.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn066.hs
deleted file mode 100644
index c41265ecf5..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn066.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# OPTIONS_GHC -fwarn-warnings-deprecations #-}
-
--- Test warnings on constructors and class ops
-
-module ShouldCompile where
-
-import Rn066_A
-
-instance Foo T where
- op x = x
- bop y = y
-
-foo = op C
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn066.stderr b/testsuite/tests/ghc-regress/rename/should_compile/rn066.stderr
deleted file mode 100644
index 6a95f2f93c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn066.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-rn066.hs:7:1:
- Warning: In the use of data constructor `C'
- (imported from Rn066_A):
- "Are you sure you want to do that?"
-
-rn066.hs:7:1:
- Warning: In the use of `op'
- (imported from Rn066_A):
- "Is that really a good idea?"
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/rn067.hs b/testsuite/tests/ghc-regress/rename/should_compile/rn067.hs
deleted file mode 100644
index d0e2d2ede2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/rn067.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-
-module ShouldCompile where
-
-import Rn067_A
-
-x = 'a'
-
--- The use of x here should not be reported as ambiguous, as it refers
--- to the local variable.
---
--- hugs Sept 2006 says:
---
--- ERROR "rn067.hs":14 - Ambiguous variable occurrence "x"
-test = let x = "" in x
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/timing001.hs b/testsuite/tests/ghc-regress/rename/should_compile/timing001.hs
deleted file mode 100644
index b84b341f19..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/timing001.hs
+++ /dev/null
@@ -1,507 +0,0 @@
--- !!! 500 defns chained together at the top-level
-module Main(main) where
-main = undefined
-a000 = a001
-a001 = a002
-a002 = a003
-a003 = a004
-a004 = a005
-a005 = a006
-a006 = a007
-a007 = a008
-a008 = a009
-a009 = a010
-a010 = a011
-a011 = a012
-a012 = a013
-a013 = a014
-a014 = a015
-a015 = a016
-a016 = a017
-a017 = a018
-a018 = a019
-a019 = a020
-a020 = a021
-a021 = a022
-a022 = a023
-a023 = a024
-a024 = a025
-a025 = a026
-a026 = a027
-a027 = a028
-a028 = a029
-a029 = a030
-a030 = a031
-a031 = a032
-a032 = a033
-a033 = a034
-a034 = a035
-a035 = a036
-a036 = a037
-a037 = a038
-a038 = a039
-a039 = a040
-a040 = a041
-a041 = a042
-a042 = a043
-a043 = a044
-a044 = a045
-a045 = a046
-a046 = a047
-a047 = a048
-a048 = a049
-a049 = a050
-a050 = a051
-a051 = a052
-a052 = a053
-a053 = a054
-a054 = a055
-a055 = a056
-a056 = a057
-a057 = a058
-a058 = a059
-a059 = a060
-a060 = a061
-a061 = a062
-a062 = a063
-a063 = a064
-a064 = a065
-a065 = a066
-a066 = a067
-a067 = a068
-a068 = a069
-a069 = a070
-a070 = a071
-a071 = a072
-a072 = a073
-a073 = a074
-a074 = a075
-a075 = a076
-a076 = a077
-a077 = a078
-a078 = a079
-a079 = a080
-a080 = a081
-a081 = a082
-a082 = a083
-a083 = a084
-a084 = a085
-a085 = a086
-a086 = a087
-a087 = a088
-a088 = a089
-a089 = a090
-a090 = a091
-a091 = a092
-a092 = a093
-a093 = a094
-a094 = a095
-a095 = a096
-a096 = a097
-a097 = a098
-a098 = a099
-a099 = a100
-
-a100 = a101
-a101 = a102
-a102 = a103
-a103 = a104
-a104 = a105
-a105 = a106
-a106 = a107
-a107 = a108
-a108 = a109
-a109 = a110
-a110 = a111
-a111 = a112
-a112 = a113
-a113 = a114
-a114 = a115
-a115 = a116
-a116 = a117
-a117 = a118
-a118 = a119
-a119 = a120
-a120 = a121
-a121 = a122
-a122 = a123
-a123 = a124
-a124 = a125
-a125 = a126
-a126 = a127
-a127 = a128
-a128 = a129
-a129 = a130
-a130 = a131
-a131 = a132
-a132 = a133
-a133 = a134
-a134 = a135
-a135 = a136
-a136 = a137
-a137 = a138
-a138 = a139
-a139 = a140
-a140 = a141
-a141 = a142
-a142 = a143
-a143 = a144
-a144 = a145
-a145 = a146
-a146 = a147
-a147 = a148
-a148 = a149
-a149 = a150
-a150 = a151
-a151 = a152
-a152 = a153
-a153 = a154
-a154 = a155
-a155 = a156
-a156 = a157
-a157 = a158
-a158 = a159
-a159 = a160
-a160 = a161
-a161 = a162
-a162 = a163
-a163 = a164
-a164 = a165
-a165 = a166
-a166 = a167
-a167 = a168
-a168 = a169
-a169 = a170
-a170 = a171
-a171 = a172
-a172 = a173
-a173 = a174
-a174 = a175
-a175 = a176
-a176 = a177
-a177 = a178
-a178 = a179
-a179 = a180
-a180 = a181
-a181 = a182
-a182 = a183
-a183 = a184
-a184 = a185
-a185 = a186
-a186 = a187
-a187 = a188
-a188 = a189
-a189 = a190
-a190 = a191
-a191 = a192
-a192 = a193
-a193 = a194
-a194 = a195
-a195 = a196
-a196 = a197
-a197 = a198
-a198 = a199
-a199 = a200
-
-a200 = a201
-a201 = a202
-a202 = a203
-a203 = a204
-a204 = a205
-a205 = a206
-a206 = a207
-a207 = a208
-a208 = a209
-a209 = a210
-a210 = a211
-a211 = a212
-a212 = a213
-a213 = a214
-a214 = a215
-a215 = a216
-a216 = a217
-a217 = a218
-a218 = a219
-a219 = a220
-a220 = a221
-a221 = a222
-a222 = a223
-a223 = a224
-a224 = a225
-a225 = a226
-a226 = a227
-a227 = a228
-a228 = a229
-a229 = a230
-a230 = a231
-a231 = a232
-a232 = a233
-a233 = a234
-a234 = a235
-a235 = a236
-a236 = a237
-a237 = a238
-a238 = a239
-a239 = a240
-a240 = a241
-a241 = a242
-a242 = a243
-a243 = a244
-a244 = a245
-a245 = a246
-a246 = a247
-a247 = a248
-a248 = a249
-a249 = a250
-a250 = a251
-a251 = a252
-a252 = a253
-a253 = a254
-a254 = a255
-a255 = a256
-a256 = a257
-a257 = a258
-a258 = a259
-a259 = a260
-a260 = a261
-a261 = a262
-a262 = a263
-a263 = a264
-a264 = a265
-a265 = a266
-a266 = a267
-a267 = a268
-a268 = a269
-a269 = a270
-a270 = a271
-a271 = a272
-a272 = a273
-a273 = a274
-a274 = a275
-a275 = a276
-a276 = a277
-a277 = a278
-a278 = a279
-a279 = a280
-a280 = a281
-a281 = a282
-a282 = a283
-a283 = a284
-a284 = a285
-a285 = a286
-a286 = a287
-a287 = a288
-a288 = a289
-a289 = a290
-a290 = a291
-a291 = a292
-a292 = a293
-a293 = a294
-a294 = a295
-a295 = a296
-a296 = a297
-a297 = a298
-a298 = a299
-a299 = a300
-
-a300 = a301
-a301 = a302
-a302 = a303
-a303 = a304
-a304 = a305
-a305 = a306
-a306 = a307
-a307 = a308
-a308 = a309
-a309 = a310
-a310 = a311
-a311 = a312
-a312 = a313
-a313 = a314
-a314 = a315
-a315 = a316
-a316 = a317
-a317 = a318
-a318 = a319
-a319 = a320
-a320 = a321
-a321 = a322
-a322 = a323
-a323 = a324
-a324 = a325
-a325 = a326
-a326 = a327
-a327 = a328
-a328 = a329
-a329 = a330
-a330 = a331
-a331 = a332
-a332 = a333
-a333 = a334
-a334 = a335
-a335 = a336
-a336 = a337
-a337 = a338
-a338 = a339
-a339 = a340
-a340 = a341
-a341 = a342
-a342 = a343
-a343 = a344
-a344 = a345
-a345 = a346
-a346 = a347
-a347 = a348
-a348 = a349
-a349 = a350
-a350 = a351
-a351 = a352
-a352 = a353
-a353 = a354
-a354 = a355
-a355 = a356
-a356 = a357
-a357 = a358
-a358 = a359
-a359 = a360
-a360 = a361
-a361 = a362
-a362 = a363
-a363 = a364
-a364 = a365
-a365 = a366
-a366 = a367
-a367 = a368
-a368 = a369
-a369 = a370
-a370 = a371
-a371 = a372
-a372 = a373
-a373 = a374
-a374 = a375
-a375 = a376
-a376 = a377
-a377 = a378
-a378 = a379
-a379 = a380
-a380 = a381
-a381 = a382
-a382 = a383
-a383 = a384
-a384 = a385
-a385 = a386
-a386 = a387
-a387 = a388
-a388 = a389
-a389 = a390
-a390 = a391
-a391 = a392
-a392 = a393
-a393 = a394
-a394 = a395
-a395 = a396
-a396 = a397
-a397 = a398
-a398 = a399
-a399 = a400
-
-a400 = a401
-a401 = a402
-a402 = a403
-a403 = a404
-a404 = a405
-a405 = a406
-a406 = a407
-a407 = a408
-a408 = a409
-a409 = a410
-a410 = a411
-a411 = a412
-a412 = a413
-a413 = a414
-a414 = a415
-a415 = a416
-a416 = a417
-a417 = a418
-a418 = a419
-a419 = a420
-a420 = a421
-a421 = a422
-a422 = a423
-a423 = a424
-a424 = a425
-a425 = a426
-a426 = a427
-a427 = a428
-a428 = a429
-a429 = a430
-a430 = a431
-a431 = a432
-a432 = a433
-a433 = a434
-a434 = a435
-a435 = a436
-a436 = a437
-a437 = a438
-a438 = a439
-a439 = a440
-a440 = a441
-a441 = a442
-a442 = a443
-a443 = a444
-a444 = a445
-a445 = a446
-a446 = a447
-a447 = a448
-a448 = a449
-a449 = a450
-a450 = a451
-a451 = a452
-a452 = a453
-a453 = a454
-a454 = a455
-a455 = a456
-a456 = a457
-a457 = a458
-a458 = a459
-a459 = a460
-a460 = a461
-a461 = a462
-a462 = a463
-a463 = a464
-a464 = a465
-a465 = a466
-a466 = a467
-a467 = a468
-a468 = a469
-a469 = a470
-a470 = a471
-a471 = a472
-a472 = a473
-a473 = a474
-a474 = a475
-a475 = a476
-a476 = a477
-a477 = a478
-a478 = a479
-a479 = a480
-a480 = a481
-a481 = a482
-a482 = a483
-a483 = a484
-a484 = a485
-a485 = a486
-a486 = a487
-a487 = a488
-a488 = a489
-a489 = a490
-a490 = a491
-a491 = a492
-a492 = a493
-a493 = a494
-a494 = a495
-a495 = a496
-a496 = a497
-a497 = a498
-a498 = a499
-a499 = [] -- !!! ta-dah!!!
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/timing001.stderr b/testsuite/tests/ghc-regress/rename/should_compile/timing001.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/timing001.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/timing002.hs b/testsuite/tests/ghc-regress/rename/should_compile/timing002.hs
deleted file mode 100644
index f81b026a67..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/timing002.hs
+++ /dev/null
@@ -1,504 +0,0 @@
--- !!! 500 defns chained together with "where"s
-module Main(main) where
-
-main = undefined
-a500 = let a000 = []
- a001 = a000
- a002 = a001
- a003 = a002
- a004 = a003
- a005 = a004
- a006 = a005
- a007 = a006
- a008 = a007
- a009 = a008
- a010 = a009
- a011 = a010
- a012 = a011
- a013 = a012
- a014 = a013
- a015 = a014
- a016 = a015
- a017 = a016
- a018 = a017
- a019 = a018
- a020 = a019
- a021 = a020
- a022 = a021
- a023 = a022
- a024 = a023
- a025 = a024
- a026 = a025
- a027 = a026
- a028 = a027
- a029 = a028
- a030 = a029
- a031 = a030
- a032 = a031
- a033 = a032
- a034 = a033
- a035 = a034
- a036 = a035
- a037 = a036
- a038 = a037
- a039 = a038
- a040 = a039
- a041 = a040
- a042 = a041
- a043 = a042
- a044 = a043
- a045 = a044
- a046 = a045
- a047 = a046
- a048 = a047
- a049 = a048
- a050 = a049
- a051 = a050
- a052 = a051
- a053 = a052
- a054 = a053
- a055 = a054
- a056 = a055
- a057 = a056
- a058 = a057
- a059 = a058
- a060 = a059
- a061 = a060
- a062 = a061
- a063 = a062
- a064 = a063
- a065 = a064
- a066 = a065
- a067 = a066
- a068 = a067
- a069 = a068
- a070 = a069
- a071 = a070
- a072 = a071
- a073 = a072
- a074 = a073
- a075 = a074
- a076 = a075
- a077 = a076
- a078 = a077
- a079 = a078
- a080 = a079
- a081 = a080
- a082 = a081
- a083 = a082
- a084 = a083
- a085 = a084
- a086 = a085
- a087 = a086
- a088 = a087
- a089 = a088
- a090 = a089
- a091 = a090
- a092 = a091
- a093 = a092
- a094 = a093
- a095 = a094
- a096 = a095
- a097 = a096
- a098 = a097
- a099 = a098
- a100 = a099
- a101 = a100
- a102 = a101
- a103 = a102
- a104 = a103
- a105 = a104
- a106 = a105
- a107 = a106
- a108 = a107
- a109 = a108
- a110 = a109
- a111 = a110
- a112 = a111
- a113 = a112
- a114 = a113
- a115 = a114
- a116 = a115
- a117 = a116
- a118 = a117
- a119 = a118
- a120 = a119
- a121 = a120
- a122 = a121
- a123 = a122
- a124 = a123
- a125 = a124
- a126 = a125
- a127 = a126
- a128 = a127
- a129 = a128
- a130 = a129
- a131 = a130
- a132 = a131
- a133 = a132
- a134 = a133
- a135 = a134
- a136 = a135
- a137 = a136
- a138 = a137
- a139 = a138
- a140 = a139
- a141 = a140
- a142 = a141
- a143 = a142
- a144 = a143
- a145 = a144
- a146 = a145
- a147 = a146
- a148 = a147
- a149 = a148
- a150 = a149
- a151 = a150
- a152 = a151
- a153 = a152
- a154 = a153
- a155 = a154
- a156 = a155
- a157 = a156
- a158 = a157
- a159 = a158
- a160 = a159
- a161 = a160
- a162 = a161
- a163 = a162
- a164 = a163
- a165 = a164
- a166 = a165
- a167 = a166
- a168 = a167
- a169 = a168
- a170 = a169
- a171 = a170
- a172 = a171
- a173 = a172
- a174 = a173
- a175 = a174
- a176 = a175
- a177 = a176
- a178 = a177
- a179 = a178
- a180 = a179
- a181 = a180
- a182 = a181
- a183 = a182
- a184 = a183
- a185 = a184
- a186 = a185
- a187 = a186
- a188 = a187
- a189 = a188
- a190 = a189
- a191 = a190
- a192 = a191
- a193 = a192
- a194 = a193
- a195 = a194
- a196 = a195
- a197 = a196
- a198 = a197
- a199 = a198
- a200 = a199
- a201 = a200
- a202 = a201
- a203 = a202
- a204 = a203
- a205 = a204
- a206 = a205
- a207 = a206
- a208 = a207
- a209 = a208
- a210 = a209
- a211 = a210
- a212 = a211
- a213 = a212
- a214 = a213
- a215 = a214
- a216 = a215
- a217 = a216
- a218 = a217
- a219 = a218
- a220 = a219
- a221 = a220
- a222 = a221
- a223 = a222
- a224 = a223
- a225 = a224
- a226 = a225
- a227 = a226
- a228 = a227
- a229 = a228
- a230 = a229
- a231 = a230
- a232 = a231
- a233 = a232
- a234 = a233
- a235 = a234
- a236 = a235
- a237 = a236
- a238 = a237
- a239 = a238
- a240 = a239
- a241 = a240
- a242 = a241
- a243 = a242
- a244 = a243
- a245 = a244
- a246 = a245
- a247 = a246
- a248 = a247
- a249 = a248
- a250 = a249
- a251 = a250
- a252 = a251
- a253 = a252
- a254 = a253
- a255 = a254
- a256 = a255
- a257 = a256
- a258 = a257
- a259 = a258
- a260 = a259
- a261 = a260
- a262 = a261
- a263 = a262
- a264 = a263
- a265 = a264
- a266 = a265
- a267 = a266
- a268 = a267
- a269 = a268
- a270 = a269
- a271 = a270
- a272 = a271
- a273 = a272
- a274 = a273
- a275 = a274
- a276 = a275
- a277 = a276
- a278 = a277
- a279 = a278
- a280 = a279
- a281 = a280
- a282 = a281
- a283 = a282
- a284 = a283
- a285 = a284
- a286 = a285
- a287 = a286
- a288 = a287
- a289 = a288
- a290 = a289
- a291 = a290
- a292 = a291
- a293 = a292
- a294 = a293
- a295 = a294
- a296 = a295
- a297 = a296
- a298 = a297
- a299 = a298
- a300 = a299
- a301 = a300
- a302 = a301
- a303 = a302
- a304 = a303
- a305 = a304
- a306 = a305
- a307 = a306
- a308 = a307
- a309 = a308
- a310 = a309
- a311 = a310
- a312 = a311
- a313 = a312
- a314 = a313
- a315 = a314
- a316 = a315
- a317 = a316
- a318 = a317
- a319 = a318
- a320 = a319
- a321 = a320
- a322 = a321
- a323 = a322
- a324 = a323
- a325 = a324
- a326 = a325
- a327 = a326
- a328 = a327
- a329 = a328
- a330 = a329
- a331 = a330
- a332 = a331
- a333 = a332
- a334 = a333
- a335 = a334
- a336 = a335
- a337 = a336
- a338 = a337
- a339 = a338
- a340 = a339
- a341 = a340
- a342 = a341
- a343 = a342
- a344 = a343
- a345 = a344
- a346 = a345
- a347 = a346
- a348 = a347
- a349 = a348
- a350 = a349
- a351 = a350
- a352 = a351
- a353 = a352
- a354 = a353
- a355 = a354
- a356 = a355
- a357 = a356
- a358 = a357
- a359 = a358
- a360 = a359
- a361 = a360
- a362 = a361
- a363 = a362
- a364 = a363
- a365 = a364
- a366 = a365
- a367 = a366
- a368 = a367
- a369 = a368
- a370 = a369
- a371 = a370
- a372 = a371
- a373 = a372
- a374 = a373
- a375 = a374
- a376 = a375
- a377 = a376
- a378 = a377
- a379 = a378
- a380 = a379
- a381 = a380
- a382 = a381
- a383 = a382
- a384 = a383
- a385 = a384
- a386 = a385
- a387 = a386
- a388 = a387
- a389 = a388
- a390 = a389
- a391 = a390
- a392 = a391
- a393 = a392
- a394 = a393
- a395 = a394
- a396 = a395
- a397 = a396
- a398 = a397
- a399 = a398
- a400 = a399
- a401 = a400
- a402 = a401
- a403 = a402
- a404 = a403
- a405 = a404
- a406 = a405
- a407 = a406
- a408 = a407
- a409 = a408
- a410 = a409
- a411 = a410
- a412 = a411
- a413 = a412
- a414 = a413
- a415 = a414
- a416 = a415
- a417 = a416
- a418 = a417
- a419 = a418
- a420 = a419
- a421 = a420
- a422 = a421
- a423 = a422
- a424 = a423
- a425 = a424
- a426 = a425
- a427 = a426
- a428 = a427
- a429 = a428
- a430 = a429
- a431 = a430
- a432 = a431
- a433 = a432
- a434 = a433
- a435 = a434
- a436 = a435
- a437 = a436
- a438 = a437
- a439 = a438
- a440 = a439
- a441 = a440
- a442 = a441
- a443 = a442
- a444 = a443
- a445 = a444
- a446 = a445
- a447 = a446
- a448 = a447
- a449 = a448
- a450 = a449
- a451 = a450
- a452 = a451
- a453 = a452
- a454 = a453
- a455 = a454
- a456 = a455
- a457 = a456
- a458 = a457
- a459 = a458
- a460 = a459
- a461 = a460
- a462 = a461
- a463 = a462
- a464 = a463
- a465 = a464
- a466 = a465
- a467 = a466
- a468 = a467
- a469 = a468
- a470 = a469
- a471 = a470
- a472 = a471
- a473 = a472
- a474 = a473
- a475 = a474
- a476 = a475
- a477 = a476
- a478 = a477
- a479 = a478
- a480 = a479
- a481 = a480
- a482 = a481
- a483 = a482
- a484 = a483
- a485 = a484
- a486 = a485
- a487 = a486
- a488 = a487
- a489 = a488
- a490 = a489
- a491 = a490
- a492 = a491
- a493 = a492
- a494 = a493
- a495 = a494
- a496 = a495
- a497 = a496
- a498 = a497 in
- a498
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/timing002.stderr b/testsuite/tests/ghc-regress/rename/should_compile/timing002.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/timing002.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/timing003.hs b/testsuite/tests/ghc-regress/rename/should_compile/timing003.hs
deleted file mode 100644
index c268646daf..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/timing003.hs
+++ /dev/null
@@ -1,508 +0,0 @@
--- !!! 500 defns, not chained together
-module Main(main) where
-
-main = undefined
-a000 = []
-a001 = []
-a002 = []
-a003 = []
-a004 = []
-a005 = []
-a006 = []
-a007 = []
-a008 = []
-a009 = []
-a010 = []
-a011 = []
-a012 = []
-a013 = []
-a014 = []
-a015 = []
-a016 = []
-a017 = []
-a018 = []
-a019 = []
-a020 = []
-a021 = []
-a022 = []
-a023 = []
-a024 = []
-a025 = []
-a026 = []
-a027 = []
-a028 = []
-a029 = []
-a030 = []
-a031 = []
-a032 = []
-a033 = []
-a034 = []
-a035 = []
-a036 = []
-a037 = []
-a038 = []
-a039 = []
-a040 = []
-a041 = []
-a042 = []
-a043 = []
-a044 = []
-a045 = []
-a046 = []
-a047 = []
-a048 = []
-a049 = []
-a050 = []
-a051 = []
-a052 = []
-a053 = []
-a054 = []
-a055 = []
-a056 = []
-a057 = []
-a058 = []
-a059 = []
-a060 = []
-a061 = []
-a062 = []
-a063 = []
-a064 = []
-a065 = []
-a066 = []
-a067 = []
-a068 = []
-a069 = []
-a070 = []
-a071 = []
-a072 = []
-a073 = []
-a074 = []
-a075 = []
-a076 = []
-a077 = []
-a078 = []
-a079 = []
-a080 = []
-a081 = []
-a082 = []
-a083 = []
-a084 = []
-a085 = []
-a086 = []
-a087 = []
-a088 = []
-a089 = []
-a090 = []
-a091 = []
-a092 = []
-a093 = []
-a094 = []
-a095 = []
-a096 = []
-a097 = []
-a098 = []
-a099 = []
-
-a100 = []
-a101 = []
-a102 = []
-a103 = []
-a104 = []
-a105 = []
-a106 = []
-a107 = []
-a108 = []
-a109 = []
-a110 = []
-a111 = []
-a112 = []
-a113 = []
-a114 = []
-a115 = []
-a116 = []
-a117 = []
-a118 = []
-a119 = []
-a120 = []
-a121 = []
-a122 = []
-a123 = []
-a124 = []
-a125 = []
-a126 = []
-a127 = []
-a128 = []
-a129 = []
-a130 = []
-a131 = []
-a132 = []
-a133 = []
-a134 = []
-a135 = []
-a136 = []
-a137 = []
-a138 = []
-a139 = []
-a140 = []
-a141 = []
-a142 = []
-a143 = []
-a144 = []
-a145 = []
-a146 = []
-a147 = []
-a148 = []
-a149 = []
-a150 = []
-a151 = []
-a152 = []
-a153 = []
-a154 = []
-a155 = []
-a156 = []
-a157 = []
-a158 = []
-a159 = []
-a160 = []
-a161 = []
-a162 = []
-a163 = []
-a164 = []
-a165 = []
-a166 = []
-a167 = []
-a168 = []
-a169 = []
-a170 = []
-a171 = []
-a172 = []
-a173 = []
-a174 = []
-a175 = []
-a176 = []
-a177 = []
-a178 = []
-a179 = []
-a180 = []
-a181 = []
-a182 = []
-a183 = []
-a184 = []
-a185 = []
-a186 = []
-a187 = []
-a188 = []
-a189 = []
-a190 = []
-a191 = []
-a192 = []
-a193 = []
-a194 = []
-a195 = []
-a196 = []
-a197 = []
-a198 = []
-a199 = []
-
-a200 = []
-a201 = []
-a202 = []
-a203 = []
-a204 = []
-a205 = []
-a206 = []
-a207 = []
-a208 = []
-a209 = []
-a210 = []
-a211 = []
-a212 = []
-a213 = []
-a214 = []
-a215 = []
-a216 = []
-a217 = []
-a218 = []
-a219 = []
-a220 = []
-a221 = []
-a222 = []
-a223 = []
-a224 = []
-a225 = []
-a226 = []
-a227 = []
-a228 = []
-a229 = []
-a230 = []
-a231 = []
-a232 = []
-a233 = []
-a234 = []
-a235 = []
-a236 = []
-a237 = []
-a238 = []
-a239 = []
-a240 = []
-a241 = []
-a242 = []
-a243 = []
-a244 = []
-a245 = []
-a246 = []
-a247 = []
-a248 = []
-a249 = []
-a250 = []
-a251 = []
-a252 = []
-a253 = []
-a254 = []
-a255 = []
-a256 = []
-a257 = []
-a258 = []
-a259 = []
-a260 = []
-a261 = []
-a262 = []
-a263 = []
-a264 = []
-a265 = []
-a266 = []
-a267 = []
-a268 = []
-a269 = []
-a270 = []
-a271 = []
-a272 = []
-a273 = []
-a274 = []
-a275 = []
-a276 = []
-a277 = []
-a278 = []
-a279 = []
-a280 = []
-a281 = []
-a282 = []
-a283 = []
-a284 = []
-a285 = []
-a286 = []
-a287 = []
-a288 = []
-a289 = []
-a290 = []
-a291 = []
-a292 = []
-a293 = []
-a294 = []
-a295 = []
-a296 = []
-a297 = []
-a298 = []
-a299 = []
-
-a300 = []
-a301 = []
-a302 = []
-a303 = []
-a304 = []
-a305 = []
-a306 = []
-a307 = []
-a308 = []
-a309 = []
-a310 = []
-a311 = []
-a312 = []
-a313 = []
-a314 = []
-a315 = []
-a316 = []
-a317 = []
-a318 = []
-a319 = []
-a320 = []
-a321 = []
-a322 = []
-a323 = []
-a324 = []
-a325 = []
-a326 = []
-a327 = []
-a328 = []
-a329 = []
-a330 = []
-a331 = []
-a332 = []
-a333 = []
-a334 = []
-a335 = []
-a336 = []
-a337 = []
-a338 = []
-a339 = []
-a340 = []
-a341 = []
-a342 = []
-a343 = []
-a344 = []
-a345 = []
-a346 = []
-a347 = []
-a348 = []
-a349 = []
-a350 = []
-a351 = []
-a352 = []
-a353 = []
-a354 = []
-a355 = []
-a356 = []
-a357 = []
-a358 = []
-a359 = []
-a360 = []
-a361 = []
-a362 = []
-a363 = []
-a364 = []
-a365 = []
-a366 = []
-a367 = []
-a368 = []
-a369 = []
-a370 = []
-a371 = []
-a372 = []
-a373 = []
-a374 = []
-a375 = []
-a376 = []
-a377 = []
-a378 = []
-a379 = []
-a380 = []
-a381 = []
-a382 = []
-a383 = []
-a384 = []
-a385 = []
-a386 = []
-a387 = []
-a388 = []
-a389 = []
-a390 = []
-a391 = []
-a392 = []
-a393 = []
-a394 = []
-a395 = []
-a396 = []
-a397 = []
-a398 = []
-a399 = []
-
-a400 = []
-a401 = []
-a402 = []
-a403 = []
-a404 = []
-a405 = []
-a406 = []
-a407 = []
-a408 = []
-a409 = []
-a410 = []
-a411 = []
-a412 = []
-a413 = []
-a414 = []
-a415 = []
-a416 = []
-a417 = []
-a418 = []
-a419 = []
-a420 = []
-a421 = []
-a422 = []
-a423 = []
-a424 = []
-a425 = []
-a426 = []
-a427 = []
-a428 = []
-a429 = []
-a430 = []
-a431 = []
-a432 = []
-a433 = []
-a434 = []
-a435 = []
-a436 = []
-a437 = []
-a438 = []
-a439 = []
-a440 = []
-a441 = []
-a442 = []
-a443 = []
-a444 = []
-a445 = []
-a446 = []
-a447 = []
-a448 = []
-a449 = []
-a450 = []
-a451 = []
-a452 = []
-a453 = []
-a454 = []
-a455 = []
-a456 = []
-a457 = []
-a458 = []
-a459 = []
-a460 = []
-a461 = []
-a462 = []
-a463 = []
-a464 = []
-a465 = []
-a466 = []
-a467 = []
-a468 = []
-a469 = []
-a470 = []
-a471 = []
-a472 = []
-a473 = []
-a474 = []
-a475 = []
-a476 = []
-a477 = []
-a478 = []
-a479 = []
-a480 = []
-a481 = []
-a482 = []
-a483 = []
-a484 = []
-a485 = []
-a486 = []
-a487 = []
-a488 = []
-a489 = []
-a490 = []
-a491 = []
-a492 = []
-a493 = []
-a494 = []
-a495 = []
-a496 = []
-a497 = []
-a498 = []
-a499 = []
diff --git a/testsuite/tests/ghc-regress/rename/should_compile/timing003.stderr b/testsuite/tests/ghc-regress/rename/should_compile/timing003.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_compile/timing003.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/Makefile b/testsuite/tests/ghc-regress/rename/should_fail/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/RnFail047_A.hs b/testsuite/tests/ghc-regress/rename/should_fail/RnFail047_A.hs
deleted file mode 100644
index dfe63adbaa..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/RnFail047_A.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-module RnFail047_A (x) where
-
-import RnFail047
-
-x :: Int
-x = 3
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/RnFail047_A.hs-boot b/testsuite/tests/ghc-regress/rename/should_fail/RnFail047_A.hs-boot
deleted file mode 100644
index 5bfff40b96..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/RnFail047_A.hs-boot
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module RnFail047_A (x, y) where
-
-x::Int
-y::Int
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/RnFail055.hs b/testsuite/tests/ghc-regress/rename/should_fail/RnFail055.hs
deleted file mode 100644
index bd95add36b..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/RnFail055.hs
+++ /dev/null
@@ -1,48 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses,RankNTypes,ExistentialQuantification,DatatypeContexts #-}
-module RnFail055 where
-
-import RnFail055_aux
-
--- Id with different type
-f1 :: Int -> Float
-f1 = undefined
-
--- type synonym with different arity
-type S1 a b = (a,b)
-
--- type synonym with different rhs
-type S2 a b = forall a. (a,b)
-
--- type synonym with alpha-renaming (should be ok)
-type S3 a = [a]
-
--- datatype with different fields
-data T1 a b = T1 [b] [a]
-
--- datatype with different stupid theta
-data (Eq b) => T2 a b = T2 a
-
--- different constructor name
-data T3' = T3
-data T3 = T3'
-
--- check alpha equivalence
-data T4 a = T4 (forall b. a -> b)
-
--- different field labels
-data T5 a = T5 { field5 :: a }
-
--- different strict marks
-data T6 = T6 Int
-
--- different existential quantification
-data T7 a = forall a . T7 a
-
--- extra method in the hs-boot
-class C1 a b where {}
-
--- missing method in the hs-boot
-class C2 a b where { m2 :: a -> b; m2' :: a -> b }
-
--- different superclasses
-class (Eq a, Ord a) => C3 a where { }
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/RnFail055.hs-boot b/testsuite/tests/ghc-regress/rename/should_fail/RnFail055.hs-boot
deleted file mode 100644
index 57a97d3695..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/RnFail055.hs-boot
+++ /dev/null
@@ -1,29 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses,RankNTypes,ExistentialQuantification,DatatypeContexts #-}
-module RnFail055 where
-
-f1 :: Float -> Int
-
-type S1 a b c = (a,b)
-
-type S2 a b = forall b. (a,b)
-
-type S3 t = [t]
-
-data T1 a b = T1 [a] [b]
-
-data (Eq a) => T2 a b = T2 a
-
-data T3 = T3
-data T3' = T3'
-
-data T4 b = T4 (forall a. b -> a)
-
-data T5 a = T5 a
-
-data T6 = T6 !Int
-
-data T7 a = forall b . T7 a
-
-class C1 a b where { m1 :: a -> b }
-class C2 a b where { m2 :: a -> b }
-class (Ord a, Eq a) => C3 a where { }
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/RnFail055_aux.hs b/testsuite/tests/ghc-regress/rename/should_fail/RnFail055_aux.hs
deleted file mode 100644
index 4e1f12bf81..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/RnFail055_aux.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module RnFail055_aux where
-
-import {-# SOURCE #-} RnFail055
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/Rnfail040_A.hs b/testsuite/tests/ghc-regress/rename/should_fail/Rnfail040_A.hs
deleted file mode 100644
index 6de0f88ac9..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/Rnfail040_A.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module Rnfail040_A( nub ) where
- nub = True
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T1595a.hs b/testsuite/tests/ghc-regress/rename/should_fail/T1595a.hs
deleted file mode 100644
index 5497a7a269..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T1595a.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module T1595a where
-
-a, b :: Integer -> Tpyo
-a = undefined
-b = undefined
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T1595a.stderr b/testsuite/tests/ghc-regress/rename/should_fail/T1595a.stderr
deleted file mode 100644
index 3c9adca7f7..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T1595a.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-T1595a.hs:3:20: Not in scope: type constructor or class `Tpyo'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T2310.hs b/testsuite/tests/ghc-regress/rename/should_fail/T2310.hs
deleted file mode 100644
index 6094b8e211..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T2310.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# OPTIONS_GHC -XScopedTypeVariables #-}
-
-module Foo where
-
-foo = let c = \ x :: a -> (x :: a) in co
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T2310.stderr b/testsuite/tests/ghc-regress/rename/should_fail/T2310.stderr
deleted file mode 100644
index 6500eef1fc..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T2310.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-T2310.hs:5:22:
- Illegal result type signature `a'
- Result signatures are no longer supported in pattern matches
- In a lambda abstraction: \ x :: a -> (x :: a)
-
-T2310.hs:5:39:
- Not in scope: `co'
- Perhaps you meant one of these:
- `c' (line 5), `cos' (imported from Prelude)
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T2490.hs b/testsuite/tests/ghc-regress/rename/should_fail/T2490.hs
deleted file mode 100644
index 31afc0987a..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T2490.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- Trac #2490
-module ShouldFail where
-
--- All these sections are illegal
-
-f x = [ (`head` x, ())
- , (+ x, ())
- , ((), + x)
- , ((), + x, ())
- , ((), x +) ]
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T2490.stderr b/testsuite/tests/ghc-regress/rename/should_fail/T2490.stderr
deleted file mode 100644
index 15beadab1e..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T2490.stderr
+++ /dev/null
@@ -1,15 +0,0 @@
-
-T2490.hs:6:10:
- A section must be enclosed in parentheses thus: (`head` x)
-
-T2490.hs:7:10:
- A section must be enclosed in parentheses thus: (+ x)
-
-T2490.hs:8:14:
- A section must be enclosed in parentheses thus: (+ x)
-
-T2490.hs:9:14:
- A section must be enclosed in parentheses thus: (+ x)
-
-T2490.hs:10:14:
- A section must be enclosed in parentheses thus: (x +)
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T2723.hs b/testsuite/tests/ghc-regress/rename/should_fail/T2723.hs
deleted file mode 100644
index 74f11af778..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T2723.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# OPTIONS_GHC -fwarn-name-shadowing -XNamedFieldPuns -XRecordWildCards #-}
-module WildCard where
-
-data Record = Record {field1 :: Int, field2 :: Double}
-
-field3 :: Int
-field3 = 3
-
-test1 (Record {field1, field2}) = let test = 1 in field1
-
-test2 :: (Record, Int)
-test2 = let
- field1 = 10
- field2 = 10.0
- field3 = 8
- in (Record {..}, field3)
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T2723.stderr b/testsuite/tests/ghc-regress/rename/should_fail/T2723.stderr
deleted file mode 100644
index 7ede041658..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T2723.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-T2723.hs:15:5:
- Warning: This binding for `field3' shadows the existing binding
- defined at T2723.hs:7:1
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T2901.hs b/testsuite/tests/ghc-regress/rename/should_fail/T2901.hs
deleted file mode 100644
index a703a5e53d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T2901.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE DisambiguateRecordFields #-}
--- Trac #2901
-
-module T2901 where
-
-f = F.Foo { F.field = "" }
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T2901.stderr b/testsuite/tests/ghc-regress/rename/should_fail/T2901.stderr
deleted file mode 100644
index 7b3e9d5145..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T2901.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T2901.hs:6:5: Not in scope: data constructor `F.Foo'
-
-T2901.hs:6:13:
- `F.field' is not a (visible) field of constructor `Foo'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T2993.hs b/testsuite/tests/ghc-regress/rename/should_fail/T2993.hs
deleted file mode 100644
index 99f2a89ca1..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T2993.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TypeOperators #-}
-
--- Trac #2993
-
-module T2993 where
-
-foo b a = a <$> b . b
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T2993.stderr b/testsuite/tests/ghc-regress/rename/should_fail/T2993.stderr
deleted file mode 100644
index 0ba55ddd36..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T2993.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-T2993.hs:7:13: Not in scope: `<$>'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T3265.hs b/testsuite/tests/ghc-regress/rename/should_fail/T3265.hs
deleted file mode 100644
index e938bbc34d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T3265.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses #-}
-
--- Test Trac #3265
-
-module T3265 where
-
-data a :+: b = Left a | Right b
-
-class a :*: b where {}
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T3265.stderr b/testsuite/tests/ghc-regress/rename/should_fail/T3265.stderr
deleted file mode 100644
index 37642ff16b..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T3265.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-T3265.hs:7:8:
- Illegal declaration of a type or class operator `:+:'
- Use -XTypeOperators to declare operators in type and declarations
-
-T3265.hs:9:9:
- Illegal declaration of a type or class operator `:*:'
- Use -XTypeOperators to declare operators in type and declarations
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T3792.hs b/testsuite/tests/ghc-regress/rename/should_fail/T3792.hs
deleted file mode 100644
index e01efb9418..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T3792.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module T3792 where
-
-import Prelude( Prelude.map ) -- Illegal
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T3792.stderr b/testsuite/tests/ghc-regress/rename/should_fail/T3792.stderr
deleted file mode 100644
index 892fb11083..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T3792.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-T3792.hs:3:17: Illegal qualified name in import item: Prelude.map
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T4042.hs b/testsuite/tests/ghc-regress/rename/should_fail/T4042.hs
deleted file mode 100644
index 221b5519ef..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T4042.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- Test Trac #4042
-
-module T4042 where
-
-f :: A -> A
-f
--- The above line is a naked Template Haskell splice
--- When compiling without -XTemplateHaskell we don't
--- want a confusing error messsage saying "A is not in scope"
-
-data A = A
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T4042.stderr b/testsuite/tests/ghc-regress/rename/should_fail/T4042.stderr
deleted file mode 100644
index f8c7e433a6..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T4042.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-T4042.hs:6:1: Parse error: naked expression at top level
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T5211.hs b/testsuite/tests/ghc-regress/rename/should_fail/T5211.hs
deleted file mode 100644
index 2d0e69af7b..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T5211.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# OPTIONS_GHC -fwarn-unused-imports #-}
-module RedundantImport where
-
--- this import is redundant, but GHC does not spot it
-import qualified Foreign.Storable
-
-import Foreign.Storable (Storable, sizeOf, alignment, peek, poke, )
-import Foreign.Ptr (castPtr, )
-
-newtype T a = Cons a
-
-instance Storable a => Storable (T a) where
- sizeOf (Cons a) = sizeOf a
- alignment (Cons a) = alignment a
- peek = fmap Cons . peek . castPtr
- poke p (Cons a) = poke (castPtr p) a
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/T5211.stderr b/testsuite/tests/ghc-regress/rename/should_fail/T5211.stderr
deleted file mode 100644
index a33a02750c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/T5211.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T5211.hs:5:1:
- Warning: The import of `Foreign.Storable' is redundant
- except perhaps to import instances from `Foreign.Storable'
- To import instances alone, use: import Foreign.Storable()
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/all.T b/testsuite/tests/ghc-regress/rename/should_fail/all.T
deleted file mode 100644
index 78d35ce37c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/all.T
+++ /dev/null
@@ -1,83 +0,0 @@
-
-test('rnfail001', normal, compile_fail, [''])
-test('rnfail002', normal, compile_fail, [''])
-test('rnfail003', normal, compile_fail, [''])
-test('rnfail004', normal, compile_fail, [''])
-test('rnfail007', normal, compile_fail, [''])
-test('rnfail008', normal, compile_fail, [''])
-test('rnfail009', normal, compile_fail, [''])
-test('rnfail010', normal, compile_fail, [''])
-test('rnfail011', normal, compile_fail, [''])
-test('rnfail012', normal, compile_fail, [''])
-test('rnfail013', normal, compile_fail, [''])
-
-test('rnfail015', normal, compile_fail, [''])
-test('rnfail016', normal, compile_fail, [''])
-test('rnfail017', normal, compile_fail, [''])
-test('rnfail018', normal, compile_fail, [''])
-test('rnfail019', normal, compile_fail, [''])
-test('rnfail020', normal, compile, ['']) # Succeeds now (Jan07)
-test('rnfail021', normal, compile_fail, [''])
-test('rnfail022', normal, compile_fail, [''])
-test('rnfail023', normal, compile_fail, [''])
-test('rnfail024', normal, compile_fail, [''])
-test('rnfail025', normal, compile_fail, [''])
-test('rnfail026', normal, compile_fail, [''])
-test('rnfail027', normal, compile_fail, [''])
-test('rnfail028', normal, compile_fail, [''])
-test('rnfail029', normal, compile_fail, [''])
-test('rnfail030', normal, compile_fail, [''])
-test('rnfail031', normal, compile_fail, [''])
-test('rnfail032', normal, compile_fail, [''])
-test('rnfail033', normal, compile_fail, [''])
-test('rnfail034', normal, compile_fail, [''])
-test('rnfail035', normal, compile_fail, [''])
-
-# Missing:
-# test('rnfail037', normal, compile_fail, [''])
-
-test('rnfail038', normal, compile_fail, [''])
-test('rnfail039', normal, compile_fail, [''])
-
-test('rnfail040',
- extra_clean(['Rnfail040_A.hi', 'Rnfail040_A.o']),
- multimod_compile_fail, ['rnfail040', '-v0'])
-test('rnfail041', normal, compile_fail, [''])
-test('rnfail042', normal, compile_fail, [''])
-
-test('rnfail043', skip_if_no_ghci, compile_fail, ['-v0'])
-test('rnfail044', normal, compile_fail, [''])
-test('rnfail045', normal, compile_fail, [''])
-test('rnfail046', normal, compile_fail, [''])
-test('rnfail047',
- extra_clean(['RnFail047_A.hi-boot', 'RnFail047_A.o-boot']),
- multimod_compile_fail,
- ['rnfail047', '-v0'])
-test('rnfail048', normal, compile_fail, [''])
-test('rnfail049', normal, compile_fail, [''])
-test('rnfail050', normal, compile_fail, [''])
-test('rnfail051', normal, compile_fail, [''])
-test('rnfail052', normal, compile_fail, [''])
-test('rnfail053', normal, compile_fail, [''])
-test('rnfail054', normal, compile_fail, [''])
-test('rnfail055',
- extra_clean(['RnFail055.hi-boot', 'RnFail055.o-boot',
- 'RnFail055_aux.hi', 'RnFail055_aux.o']),
- multimod_compile_fail,
- ['RnFail055','-v0'])
-test('rnfail056', normal, compile_fail, [''])
-
-test('rn_dup', normal, compile_fail, [''])
-test('T2310', normal, compile_fail, [''])
-test('T2490', normal, compile_fail, [''])
-test('T2901', normal, compile_fail, [''])
-test('T2723', normal, compile, ['']) # Warnings only
-test('T2993', normal, compile_fail, [''])
-test('T3265', normal, compile_fail, [''])
-test('T3792', normal, compile_fail, [''])
-test('T4042', normal, compile_fail, [''])
-
-test('mc13', normal, compile_fail, [''])
-test('mc14', normal, compile_fail, [''])
-test('T5211', normal, compile, ['']) # Warnings only
-test('T1595a', normal, compile_fail, [''])
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/mc13.hs b/testsuite/tests/ghc-regress/rename/should_fail/mc13.hs
deleted file mode 100644
index 2686005f7f..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/mc13.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- Test for transform list comp which should work for monad comp aswell:
---
--- Test trying to use a function bound in the list comprehension as the transform function
-
-{-# OPTIONS_GHC -XRank2Types -XMonadComprehensions -XTransformListComp #-}
-
-module RnFail048 where
-
-functions :: [forall a. [a] -> [a]]
-functions = [take 4, take 5]
-
-output = [() | f <- functions, then f]
-
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/mc13.stderr b/testsuite/tests/ghc-regress/rename/should_fail/mc13.stderr
deleted file mode 100644
index 82f8dd5f18..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/mc13.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mc13.hs:12:37: Not in scope: `f'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/mc14.hs b/testsuite/tests/ghc-regress/rename/should_fail/mc14.hs
deleted file mode 100644
index e2cf74cbf5..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/mc14.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- Test for transform list comp which should work for monad comp aswell:
---
--- Test trying to use a function bound in the list comprehension as the group function
-
-{-# OPTIONS_GHC -XRank2Types -XMonadComprehensions -XTransformListComp #-}
-
-module RnFail049 where
-
-import Data.List(inits, tails)
-
-functions :: [forall a. [a] -> [[a]]]
-functions = [inits, tails]
-
-output = [() | f <- functions, then group using f]
-
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/mc14.stderr b/testsuite/tests/ghc-regress/rename/should_fail/mc14.stderr
deleted file mode 100644
index 1eadb9d4b7..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/mc14.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-mc14.hs:14:49: Not in scope: `f'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rn_dup.hs b/testsuite/tests/ghc-regress/rename/should_fail/rn_dup.hs
deleted file mode 100644
index 927e15ff32..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rn_dup.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
--- Test for top-level duplicates
-
-module Dup where
-
-data T = MkT | MkT
-
-data S = MkT
-
-data P = MkP { rf :: Int, rf :: Int }
-data Q = MkQ { rf :: Int }
-
-class C a where
- data CT a
- f :: CT a -> a
- data CT a
- f :: CT a -> a
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rn_dup.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rn_dup.stderr
deleted file mode 100644
index 88e2f86413..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rn_dup.stderr
+++ /dev/null
@@ -1,22 +0,0 @@
-
-rn_dup.hs:9:10:
- Multiple declarations of `Dup.MkT'
- Declared at: rn_dup.hs:7:10
- rn_dup.hs:7:16
- rn_dup.hs:9:10
-
-rn_dup.hs:12:16:
- Multiple declarations of `Dup.rf'
- Declared at: rn_dup.hs:11:16
- rn_dup.hs:11:27
- rn_dup.hs:12:16
-
-rn_dup.hs:17:8:
- Multiple declarations of `Dup.CT'
- Declared at: rn_dup.hs:15:8
- rn_dup.hs:17:8
-
-rn_dup.hs:18:3:
- Multiple declarations of `Dup.f'
- Declared at: rn_dup.hs:16:3
- rn_dup.hs:18:3
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail001.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail001.hs
deleted file mode 100644
index f6758a1b2b..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail001.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-f x x = 2
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail001.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail001.stderr
deleted file mode 100644
index 5414f93f27..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail001.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-rnfail001.hs:3:3:
- Conflicting definitions for `x'
- Bound at: rnfail001.hs:3:3
- rnfail001.hs:3:5
- In an equation for `f'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail001.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail001.stderr-hugs
deleted file mode 100644
index 9103ec5b64..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail001.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail001.hs":3 - Repeated variable "x" in pattern
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail002.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail002.hs
deleted file mode 100644
index ab387223fc..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail002.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! rn001: super-simple set of bindings,
--- !!! incl wildcard pattern-bindings and *duplicates*
-
-x = []
-y = []
-y = []
-_ = []
-_ = 1
-z = []
-_ = []
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail002.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail002.stderr
deleted file mode 100644
index db236f3073..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail002.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-rnfail002.hs:6:1:
- Multiple declarations of `Main.y'
- Declared at: rnfail002.hs:5:1
- rnfail002.hs:6:1
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail002.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail002.stderr-hugs
deleted file mode 100644
index 46f18320e9..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail002.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail002.hs":5 - "y" multiply defined
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail003.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail003.hs
deleted file mode 100644
index fb62bac074..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail003.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! split definition of f (error)
-f [] = []
-g x = x
-f (x:xs) = []
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail003.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail003.stderr
deleted file mode 100644
index 0398a4d9c7..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail003.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-rnfail003.hs:4:1:
- Multiple declarations of `Main.f'
- Declared at: rnfail003.hs:2:1
- rnfail003.hs:4:1
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail003.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail003.stderr-hugs
deleted file mode 100644
index 9ebafc363e..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail003.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail003.hs":2 - "f" multiply defined
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail004.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail004.hs
deleted file mode 100644
index 90a97f894c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail004.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! multiple definitions, but hidden in patterns
-module Foo where
-
-f x = x
- where
- a = []
- (b,c,a) = ([],[],d)
- [d,b,_] = ([],a,[])
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail004.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail004.stderr
deleted file mode 100644
index edff58cf6f..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail004.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-rnfail004.hs:6:5:
- Conflicting definitions for `a'
- Bound at: rnfail004.hs:6:5
- rnfail004.hs:7:10
-
-rnfail004.hs:7:6:
- Conflicting definitions for `b'
- Bound at: rnfail004.hs:7:6
- rnfail004.hs:8:8
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail004.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail004.stderr-hugs
deleted file mode 100644
index 3ad3a13469..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail004.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail004.hs":7 - "b" multiply defined
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail005.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail005.stderr
deleted file mode 100644
index 9ad30e8755..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail005.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-rnfail005.hs:4:
- Conflicting definitions for: `v'
- Defined at rnfail005.hs:20
- Defined at rnfail005.hs:19
-
-
-Compilation had errors
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail007.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail007.hs
deleted file mode 100644
index 272abcf9fb..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail007.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! Main module with no definition of main
-
-module Main where
-
-f x = x
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail007.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail007.stderr
deleted file mode 100644
index a00dc892d5..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail007.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-rnfail007.hs:1:1:
- The function `main' is not defined in module `Main'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail008.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail008.hs
deleted file mode 100644
index 196214a840..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail008.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- !!! Class and instance decl
-
-module Test where
-
-class K a where
- op1 :: a -> a -> a
- op2 :: Int -> a
-
-instance K Int where
- op1 a b = a+b
- op2 x = x
-
-instance K Bool where
- op1 a b = a
- -- Pick up the default decl for op2
-
-instance K [a] where
- op3 a = a -- Oops! Isn't a class op of K
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail008.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail008.stderr
deleted file mode 100644
index 91818fc656..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail008.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-rnfail008.hs:18:9: `op3' is not a (visible) method of class `K'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail008.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail008.stderr-hugs
deleted file mode 100644
index cd6711a842..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail008.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail008.hs":18 - No member "op3" in class "K"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail009.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail009.hs
deleted file mode 100644
index 1557f48c7b..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail009.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Foo where
-
-data F = A | B
-
-data G = A | C
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail009.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail009.stderr
deleted file mode 100644
index 9cddc115d6..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail009.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-rnfail009.hs:5:10:
- Multiple declarations of `Foo.A'
- Declared at: rnfail009.hs:3:10
- rnfail009.hs:5:10
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail009.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail009.stderr-hugs
deleted file mode 100644
index 2775982760..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail009.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail009.hs":3 - Multiple declarations for data constructor "A"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail010.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail010.hs
deleted file mode 100644
index d5e51ed4fd..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail010.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-f x = 2
-
-g x = 6
-
-f x = 3
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail010.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail010.stderr
deleted file mode 100644
index 0855b4b731..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail010.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-rnfail010.hs:6:1:
- Multiple declarations of `Main.f'
- Declared at: rnfail010.hs:2:1
- rnfail010.hs:6:1
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail010.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail010.stderr-hugs
deleted file mode 100644
index 1a35934d4c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail010.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail010.hs":2 - "f" multiply defined
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail011.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail011.hs
deleted file mode 100644
index b342618e15..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail011.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-type A = Int
-
-type B = Bool
-
-type A = [Bool]
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail011.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail011.stderr
deleted file mode 100644
index d76a63a410..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail011.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-rnfail011.hs:6:6:
- Multiple declarations of `Main.A'
- Declared at: rnfail011.hs:2:6
- rnfail011.hs:6:6
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail011.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail011.stderr-hugs
deleted file mode 100644
index 3ed800c263..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail011.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail011.hs":6 - Multiple declarations of type constructor "A"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail012.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail012.hs
deleted file mode 100644
index 725b0d1632..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail012.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-class A a where
- op1 :: a
-
-class B a where
- op2 :: b -> b
-
-class A a where
- op3 :: a
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail012.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail012.stderr
deleted file mode 100644
index 93bfec9346..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail012.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-rnfail012.hs:8:7:
- Multiple declarations of `Main.A'
- Declared at: rnfail012.hs:2:7
- rnfail012.hs:8:7
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail012.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail012.stderr-hugs
deleted file mode 100644
index 5908cb6f67..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail012.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail012.hs":8 - Multiple declarations of class "A"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail013.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail013.hs
deleted file mode 100644
index 4d30ded185..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail013.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! Conflicting constructors from two data type decls
-
-module Foo where
-
-data T1 = MkT Int
-
-data T2 = MkT Bool
-
-f (MkT x) = x
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail013.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail013.stderr
deleted file mode 100644
index 761f2f0a0e..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail013.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-rnfail013.hs:7:11:
- Multiple declarations of `Foo.MkT'
- Declared at: rnfail013.hs:5:11
- rnfail013.hs:7:11
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail013.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail013.stderr-hugs
deleted file mode 100644
index 3342f19b3c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail013.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail013.hs":5 - Multiple declarations for data constructor "MkT"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail015.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail015.hs
deleted file mode 100644
index 20f9934f4b..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail015.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-module ShouldFail where
-
--- !!! duplicate constructors in datatype
--- (bug report from Alex Ferguson, c. 2.06)
-
-data Token
- = TokNewline
- | TokLiteral
- | TokCount
- | TokCheck
- | TokIs
- | TokDeref
- | TokFind
- | TokLiteral -- Duplicated!
- | TokThe
-
- deriving Show
-
-main = print TokCount
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail015.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail015.stderr
deleted file mode 100644
index bf1e382f6c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail015.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-rnfail015.hs:14:9:
- Multiple declarations of `ShouldFail.TokLiteral'
- Declared at: rnfail015.hs:8:9
- rnfail015.hs:14:9
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail015.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail015.stderr-hugs
deleted file mode 100644
index a91ae7cb04..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail015.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail015.hs":7 - Multiple declarations for data constructor "TokLiteral"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail016.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail016.hs
deleted file mode 100644
index 1fa71c583a..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail016.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module ShouldFail where
-
--- !!! Pattern syntax in expressions
-
-f x = x @ x
-g x = ~ x
-h x = _
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail016.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail016.stderr
deleted file mode 100644
index ed9debda77..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail016.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-rnfail016.hs:5:7: Pattern syntax in expression context: x@x
-
-rnfail016.hs:6:7: Pattern syntax in expression context: ~x
-
-rnfail016.hs:7:7: Pattern syntax in expression context: _
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail016.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail016.stderr-hugs
deleted file mode 100644
index 76c2827039..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail016.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail016.hs":5 - Illegal `@' in expression
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail017.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail017.hs
deleted file mode 100644
index 327a9d6abd..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail017.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-module ShouldFail where
-
--- !!! Precedence of unary negation
-
-f1 x y = x + -y -- Fails
-f2 x y = x * -y -- Fails
-
-
-f3 x y = -x + y -- OK: means (-x) + y
- -- since - is left associative
-
-f4 x y = - x*y -- OK: means -(x*y)
- -- since - binds less tightly than *
-
-f5 x y = x >= -y -- OK means x >= (-y)
-
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail017.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail017.stderr
deleted file mode 100644
index f04b1d0990..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail017.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-rnfail017.hs:5:10:
- Precedence parsing error
- cannot mix `+' [infixl 6] and prefix `-' [infixl 6] in the same infix expression
-
-rnfail017.hs:6:10:
- Precedence parsing error
- cannot mix `*' [infixl 7] and prefix `-' [infixl 6] in the same infix expression
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail018.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail018.hs
deleted file mode 100644
index 1b3ad82762..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail018.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, ExplicitForAll #-}
-
-module ShouldFail where
-
--- !!! For-all with parens
-
--- This one crashed ghc-4.04proto; the parens after the for-all fooled it
-
-class Monad m => StateMonad s m where
- getState :: m s
-
-setState0 :: forall b. (StateMonad (a,b) m => m a)
-setState0 = getState >>= \ (l,_r) -> return l
-
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail018.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail018.stderr
deleted file mode 100644
index 3bae3eb527..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail018.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-rnfail018.hs:12:37: Not in scope: type variable `a'
-
-rnfail018.hs:12:42: Not in scope: type variable `m'
-
-rnfail018.hs:12:47: Not in scope: type variable `m'
-
-rnfail018.hs:12:49: Not in scope: type variable `a'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail019.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail019.hs
deleted file mode 100644
index ec97efe1cf..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail019.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module ShouldFail where
-
--- !!! Section with with a bad precedence
-
-f x y = (x:y:)
-
--- GHC 4.04 (as released) let this by, but it's a precedence error.
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail019.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail019.stderr
deleted file mode 100644
index f990e2d2cd..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail019.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-rnfail019.hs:5:9:
- The operator `:' [infixr 5] of a section
- must have lower precedence than that of the operand,
- namely `:' [infixr 5]
- in the section: `x : y :'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail019.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail019.stderr-hugs
deleted file mode 100644
index 1e09963ae1..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail019.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail019.hs":5 - Syntax error in expression (unexpected `)')
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail020.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail020.hs
deleted file mode 100644
index decd2e80ad..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail020.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
-
--- !!! Error messages with scoped type variables
-
-module Foo where
-
-data Set a = Set a
-
-unionSetB :: Eq a => Set a -> Set a -> Set a
-unionSetB (s1 :: Set a) s2 = unionSets s1 s2
- where
- unionSets :: Eq a => Set a -> Set a -> Set a
- unionSets a b = a
-
-
-{- In GHC 4.04 this gave the terrible message:
-
- None of the type variable(s) in the constraint `Eq a'
- appears in the type `Set a -> Set a -> Set a'
- In the type signature for `unionSets'
--}
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail020.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail020.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail020.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail021.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail021.hs
deleted file mode 100644
index a8062967e1..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail021.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! Qualified names in binding positions are rejected
-
-module Foo where
-
-(Baz.f, x) = True
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail021.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail021.stderr
deleted file mode 100644
index 1cf26eca36..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail021.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-rnfail021.hs:5:2: Qualified name in binding position: Baz.f
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail021.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail021.stderr-hugs
deleted file mode 100644
index cb4c6c422a..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail021.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail021.hs":5 - Syntax error in declaration (unexpected symbol "Baz.f")
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail022.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail022.hs
deleted file mode 100644
index 05c842e770..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail022.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! Check that 'qualified' doesn't bring the unqual'ed name into scope.
-module ShouldFail where
-
-import qualified Data.List as L ( intersperse )
-
-x = L.intersperse
-
-y = intersperse
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail022.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail022.stderr
deleted file mode 100644
index 011d6790d7..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail022.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-rnfail022.hs:8:5:
- Not in scope: `intersperse'
- Perhaps you meant `L.intersperse' (imported from Data.List)
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail022.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail022.stderr-hugs
deleted file mode 100644
index b58124c912..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail022.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail022.hs":8 - Undefined variable "intersperse"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail023.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail023.hs
deleted file mode 100644
index bf7c4a2f20..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail023.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- !!! Check that type signatures and pragmas that
--- !!! don't have a "parent" are correctly reported
-
-module ShouldFail where
-
--- Top level test
-f :: Int -> Int
-{-# INLINE f #-}
-
--- Nested test
-h :: Int -> Int -- This one is ok
-h x = x
- where
- g :: Int -> Int -- Bogus
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail023.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail023.stderr
deleted file mode 100644
index ec9d81ab76..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail023.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-rnfail023.hs:7:1:
- The type signature for `f' lacks an accompanying binding
-
-rnfail023.hs:8:12:
- The INLINE pragma for `f' lacks an accompanying binding
-
-rnfail023.hs:14:7:
- The type signature for `g' lacks an accompanying binding
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail023.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail023.stderr-hugs
deleted file mode 100644
index 1f8191015d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail023.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail023.hs":7 - Missing binding for variable "f" in type signature
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail024.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail024.hs
deleted file mode 100644
index 4663319ce9..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail024.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldFail where
-
-sig_without_a_defn :: a -> b
-
-f :: a -> b
-f = sig_without_a_defn
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail024.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail024.stderr
deleted file mode 100644
index 19b9f33921..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail024.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-rnfail024.hs:3:1:
- The type signature for `sig_without_a_defn'
- lacks an accompanying binding
-
-rnfail024.hs:6:5: Not in scope: `sig_without_a_defn'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail024.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail024.stderr-hugs
deleted file mode 100644
index 1b89d6825a..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail024.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail024.hs":3 - Missing binding for variable "sig_without_a_defn" in type signature
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail025.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail025.hs
deleted file mode 100644
index 42cf3d76f5..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail025.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldFail where
-
-sig_without_a_defn :: a -> b
-
--- We don't even refer to the variable. This compiled without error
--- in ghc-4.08.
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail025.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail025.stderr
deleted file mode 100644
index 4c2e25a07c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail025.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-rnfail025.hs:3:1:
- The type signature for `sig_without_a_defn'
- lacks an accompanying binding
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail025.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail025.stderr-hugs
deleted file mode 100644
index 7a2bcb5945..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail025.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail025.hs":3 - Missing binding for variable "sig_without_a_defn" in type signature
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail026.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail026.hs
deleted file mode 100644
index 3256876e68..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail026.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE Rank2Types, FlexibleInstances #-}
-
--- This one made ghc-4.08 crash
--- rename/RnEnv.lhs:239: Non-exhaustive patterns in function get_tycon_key
--- The type in the Monad instance is utterly bogus, of course
-
-module ShouldCompile ( Set ) where
-
-
-data Set a = Set [a]
- deriving (Eq, Ord, Read, Show)
-
-instance Functor Set where
- f `fmap` (Set xs) = Set $ f `fmap` xs
-
-instance Monad (forall a. Eq a => Set a) where
- return x = Set [x]
-
-instance Eq (forall a. [a]) where
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail026.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail026.stderr
deleted file mode 100644
index 6aa899b36d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail026.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-rnfail026.hs:16:17:
- Kind mis-match
- The first argument of `Monad' should have kind `* -> *',
- but `Set a' has kind `*'
- In the instance declaration for `Monad (forall a. Eq a => Set a)'
-
-rnfail026.hs:19:10:
- Illegal polymorphic or qualified type: forall a. [a]
- In the instance declaration for `Eq (forall a. [a])'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail026.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail026.stderr-hugs
deleted file mode 100644
index 245ba83337..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail026.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail026.hs":16 - Syntax error in type expression (unexpected keyword "forall")
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail027.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail027.hs
deleted file mode 100644
index fc6d8c87d4..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail027.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- !!! infix declarations for unknown identifiers aren't allowed
-
-module ShouldFail where
-
-infixl 9 `wibble`
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail027.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail027.stderr
deleted file mode 100644
index 31214a1a42..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail027.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-rnfail027.hs:5:10:
- The fixity signature for `wibble' lacks an accompanying binding
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail027.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail027.stderr-hugs
deleted file mode 100644
index df1f912339..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail027.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail027.hs":5 - Cannot find binding for operator "wibble" in fixity declaration
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail028.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail028.hs
deleted file mode 100644
index 13e2237aba..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail028.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- !!! illegal to export a module we haven't imported.
-module ShouldFail ( module List ) where
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail028.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail028.stderr
deleted file mode 100644
index f09cda3f33..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail028.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-rnfail028.hs:2:21: The export item `module List' is not imported
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail028.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail028.stderr-hugs
deleted file mode 100644
index d1aa3d5903..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail028.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail028.hs" - Unknown module "List" exported from module "ShouldFail"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail029.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail029.hs
deleted file mode 100644
index 8d8608e41f..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail029.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! conflicting exports for a function name
-module ShouldFail ( Data.List.map, module ShouldFail ) where
-import qualified Data.List
-map = undefined
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail029.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail029.stderr
deleted file mode 100644
index e22f4c33ae..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail029.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-rnfail029.hs:2:36:
- Conflicting exports for `map':
- `Data.List.map' exports `Data.List.map' imported from Data.List at rnfail029.hs:3:1-26
- `module ShouldFail' exports `ShouldFail.map' defined at rnfail029.hs:4:1
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail029.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail029.stderr-hugs
deleted file mode 100644
index a2f0265916..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail029.stderr-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-ERROR "rnfail029.hs" - Conflicting exports of entity "map"
-*** Could refer to Hugs.Prelude.map or ShouldFail.map
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail030.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail030.hs
deleted file mode 100644
index 23c54c8feb..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail030.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! check that unqualified imports don't bring qualified names into scope
-module ShouldFail ( Data.List.map ) where
-import Data.List ()
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail030.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail030.stderr
deleted file mode 100644
index 749206a814..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail030.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-rnfail030.hs:2:21: Not in scope: `Data.List.map'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail030.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail030.stderr-hugs
deleted file mode 100644
index eb846ddfac..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail030.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail030.hs" - Unknown entity "List.map" exported from module "ShouldFail"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail031.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail031.hs
deleted file mode 100644
index ce86cf935a..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail031.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! check that qualified imports can be restricted to certain names
-module ShouldFail ( Data.List.map ) where
-import qualified Data.List ( foldr )
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail031.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail031.stderr
deleted file mode 100644
index ad04461dc3..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail031.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-rnfail031.hs:2:21: Not in scope: `Data.List.map'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail031.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail031.stderr-hugs
deleted file mode 100644
index 2036937995..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail031.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail031.hs" - Unknown entity "List.map" exported from module "ShouldFail"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail032.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail032.hs
deleted file mode 100644
index 2970030ab0..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail032.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! check that hiding works with qualified imports
-module ShouldFail ( Data.List.map ) where
-import qualified Data.List hiding ( map )
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail032.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail032.stderr
deleted file mode 100644
index ea80202dd0..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail032.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-rnfail032.hs:2:21:
- Not in scope: `Data.List.map'
- Perhaps you meant one of these:
- `Data.List.zip' (imported from Data.List),
- `Data.List.sum' (imported from Data.List),
- `Data.List.all' (imported from Data.List)
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail032.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail032.stderr-hugs
deleted file mode 100644
index fef6e8e210..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail032.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail032.hs" - Unknown entity "List.map" exported from module "ShouldFail"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail033.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail033.hs
deleted file mode 100644
index 7d8b4c4fdc..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail033.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! check that hiding on an unqualified import also hides the qualified name
-module ShouldFail ( Data.List.map ) where
-import Data.List hiding ( map )
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail033.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail033.stderr
deleted file mode 100644
index c9abd0f87a..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail033.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-rnfail033.hs:2:21:
- Not in scope: `Data.List.map'
- Perhaps you meant one of these:
- `Data.List.zip' (imported from Data.List),
- `Data.List.sum' (imported from Data.List),
- `Data.List.all' (imported from Data.List)
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail033.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail033.stderr-hugs
deleted file mode 100644
index d651e56ebe..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail033.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail033.hs" - Unknown entity "List.map" exported from module "ShouldFail"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail034.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail034.hs
deleted file mode 100644
index 25d9189472..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail034.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! qualified names aren't allowed in local binds either
--- (Haskell 98 (revised) section 5.5.1)
-module M where
-g x = let M.y = x + 1 in M.y
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail034.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail034.stderr
deleted file mode 100644
index 2ec0a3b8e5..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail034.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-rnfail034.hs:4:11: Qualified name in binding position: M.y
-
-rnfail034.hs:4:26:
- Not in scope: `M.y'
- Perhaps you meant `M.g' (line 4)
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail034.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail034.stderr-hugs
deleted file mode 100644
index e1e0a9a566..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail034.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail034.hs":4 - Syntax error in expression (unexpected symbol "M.y")
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail035.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail035.hs
deleted file mode 100644
index 4f57c06374..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail035.hs
+++ /dev/null
@@ -1,3 +0,0 @@
--- !!! can't name a constructor in an export list
-module ShouldFail ( C ) where
-data T = C
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail035.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail035.stderr
deleted file mode 100644
index 83eb2d85e3..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail035.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-rnfail035.hs:2:21: Not in scope: type constructor or class `C'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail035.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail035.stderr-hugs
deleted file mode 100644
index 105e56f36c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail035.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail035.hs" - Illegal export of a lone data constructor "C"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail038.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail038.hs
deleted file mode 100644
index b96000a873..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail038.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! It is now illegal to import a module hiding
--- !!! an entity that it doesn't export
-module ShouldCompile where
-import Data.List hiding ( wibble )
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail038.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail038.stderr
deleted file mode 100644
index 71c31d6d1b..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail038.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-rnfail038.hs:4:27: Module `Data.List' does not export `wibble'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail038.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail038.stderr-hugs
deleted file mode 100644
index ee3487e0d4..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail038.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail038.hs" - Unknown entity "wibble" hidden from module "List"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail039.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail039.hs
deleted file mode 100644
index 428d8d9716..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail039.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! Checking that qualified method names are ILLEGAL
--- in the binding position instance body.
-module ShouldFail where
-
-import Prelude hiding (Eq, (==))
-import Prelude as P (Eq,(==))
-
-data Foo = Foo Int Integer
-
-instance P.Eq Foo where
- (Foo a1 b1) P.== (Foo a2 b2) = a1 P.== a2 && b1 P.== b2
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail039.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail039.stderr
deleted file mode 100644
index 6283dccd33..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail039.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-rnfail039.hs:11:15: Qualified name in binding position: P.==
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail039.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail039.stderr-hugs
deleted file mode 100644
index 43c760998e..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail039.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail039.hs":11 - Syntax error in declaration (unexpected symbol "P.==")
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail040.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail040.hs
deleted file mode 100644
index 5ba4d41bec..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail040.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- This one should fail, because it exports
--- both Data.List:nub and Rnfail040_A:nub
---
--- Data.List:nub is in scope as M.nub and nub
--- Rnfail040_A:nub is in scope as T.nub, M.nub, and nub
-
-module M1 (module M) where
-
- import qualified Rnfail040_A as M -- M.nub
- import Data.List as M -- M.nub nub
- import Rnfail040_A as T -- T.nub nub
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail040.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail040.stderr
deleted file mode 100644
index 25e3c1153f..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail040.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-rnfail040.hs:7:12:
- Conflicting exports for `nub':
- `module M' exports `M.nub' imported from Data.List at rnfail040.hs:10:2-22
- `module M' exports `T.nub' imported from Rnfail040_A at rnfail040.hs:11:2-24
- (defined at Rnfail040_A.hs:2:3)
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail040.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail040.stderr-hugs
deleted file mode 100644
index 913c1b455c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail040.stderr-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-ERROR "rnfail040.hs" - Conflicting exports of entity "nub"
-*** Could refer to Data.List.nub or Rnfail040_A.nub
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail041.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail041.hs
deleted file mode 100644
index 57f79705b5..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail041.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-f = 3
-g = 3
-
-h :: Int
-j :: Int
-
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail041.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail041.stderr
deleted file mode 100644
index 0c5c60d4d2..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail041.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-rnfail041.hs:4:1:
- The type signature for `h' lacks an accompanying binding
-
-rnfail041.hs:5:1:
- The type signature for `j' lacks an accompanying binding
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail041.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail041.stderr-hugs
deleted file mode 100644
index 2b8745ec9b..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail041.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail041.hs":4 - Missing binding for variable "h" in type signature
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail042.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail042.hs
deleted file mode 100644
index 16c01f3450..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail042.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- Uses of built-in syntax should provoke a decent error message
-
-module ShouldFail where
-
-data T0 = ()
-data T3= (,,,)
-data Nil = []
-data List = Int : Bool
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail042.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail042.stderr
deleted file mode 100644
index 9e030d7bf8..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail042.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-rnfail042.hs:5:11: Illegal binding of built-in syntax: ()
-
-rnfail042.hs:6:10: Illegal binding of built-in syntax: (,,,)
-
-rnfail042.hs:7:12: Illegal binding of built-in syntax: []
-
-rnfail042.hs:8:17: Illegal binding of built-in syntax: :
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail042.stderr-hugs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail042.stderr-hugs
deleted file mode 100644
index 66c517d13c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail042.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "rnfail042.hs":6 - Syntax error in data type declaration (unexpected `;', possibly due to bad layout)
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail043.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail043.hs
deleted file mode 100644
index 492cebb516..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail043.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Duplicate bindings introduced one at a time with TH
-module ShouldFail where
-
-f x = x
-
-$([d| h x = x |])
-
-f x = x
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail043.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail043.stderr
deleted file mode 100644
index 428c1944dc..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail043.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-rnfail043.hs:10:1:
- Multiple declarations of `f'
- Declared at: rnfail043.hs:6:1
- rnfail043.hs:10:1
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail044.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail044.hs
deleted file mode 100644
index ed72b9abae..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail044.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- Renamer test
--- The ambiguity is between the Prelude import and the defn
--- of splitAt. The import of Data.List has nothing to do with it.
-
-module A ( splitAt ) where
-
- import qualified Data.List
- splitAt = undefined
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail044.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail044.stderr
deleted file mode 100644
index 2b27ad4fea..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail044.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-rnfail044.hs:5:12:
- Ambiguous occurrence `splitAt'
- It could refer to either `A.splitAt', defined at rnfail044.hs:8:3
- or `Data.List.splitAt', imported from Prelude
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail045.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail045.hs
deleted file mode 100644
index 641bec0a6a..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail045.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- These crashed GHC 6.4.2
-
-module ShouldFail where
-
-x `op1` y = True
-op1 x = False
-
-op2 x = False
-x `op2` y = True
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail045.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail045.stderr
deleted file mode 100644
index d8c80008c0..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail045.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-rnfail045.hs:5:1:
- Equations for `op1' have different numbers of arguments
- rnfail045.hs:5:1-16
- rnfail045.hs:6:1-13
-
-rnfail045.hs:8:1:
- Equations for `op2' have different numbers of arguments
- rnfail045.hs:8:1-13
- rnfail045.hs:9:1-16
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail046.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail046.hs
deleted file mode 100644
index f8aa7a734c..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail046.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- Qualified name in binding position
-module ShouldFail where
-
-data Test = Map.Map Int Int
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail046.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail046.stderr
deleted file mode 100644
index 49cfe356f4..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail046.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-rnfail046.hs:4:13: Qualified name in binding position: Map.Map
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail047.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail047.hs
deleted file mode 100644
index 55bd0b8d68..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail047.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
--- trac #924: RnFail047_A.hs-boot exports more than RnFail047_A.hs
-
-module RnFail047 where
-
-import {-# SOURCE #-} RnFail047_A
-
-v = x
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail047.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail047.stderr
deleted file mode 100644
index 380bbd906b..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail047.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-RnFail047_A.hs-boot:5:1:
- RnFail047_A.y is exported by the hs-boot file, but not exported by the module
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail048.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail048.hs
deleted file mode 100644
index d1c8d73eb0..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail048.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- Trac #1888
--- Pretty printing for pragmas
-
-module ShouldFail where
-
-{-# NOINLINE[1] foo #-}
-{-# NOINLINE[~2] foo #-}
-{-# NOINLINE foo #-}
-{-# INLINE[1] foo #-}
-{-# INLINE[~2] foo #-}
-{-# INLINE foo #-}
-
-foo n = foo (n+1)
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail048.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail048.stderr
deleted file mode 100644
index 885229d745..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail048.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-rnfail048.hs:11:1:
- Duplicate INLINE pragma:
- rnfail048.hs:11:1-18: {-# INLINE foo #-}
- rnfail048.hs:10:1-22: {-# INLINE[~2] foo #-}
- rnfail048.hs:9:1-21: {-# INLINE[1] foo #-}
- rnfail048.hs:8:1-20: {-# NOINLINE foo #-}
- rnfail048.hs:7:1-24: {-# NOINLINE[~2] foo #-}
- rnfail048.hs:6:1-23: {-# NOINLINE[1] foo #-}
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail049.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail049.hs
deleted file mode 100644
index 7f4b6c7842..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail049.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- Test trying to use a function bound in the list comprehension as the group function
-
-{-# OPTIONS_GHC -XRank2Types -XTransformListComp #-}
-
-module RnFail049 where
-
-import Data.List(inits, tails)
-
-functions :: [forall a. [a] -> [[a]]]
-functions = [inits, tails]
-
-output = [() | f <- functions, then group using f]
-
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail049.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail049.stderr
deleted file mode 100644
index 6b753fbf2d..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail049.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-rnfail049.hs:12:49: Not in scope: `f'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail050.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail050.hs
deleted file mode 100644
index 0c3b262a0f..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail050.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- Test trying to use a function bound in the list comprehension as the transform function
-
-{-# OPTIONS_GHC -XRank2Types -XTransformListComp #-}
-
-module RnFail048 where
-
-functions :: [forall a. [a] -> [a]]
-functions = [take 4, take 5]
-
-output = [() | f <- functions, then f]
-
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail050.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail050.stderr
deleted file mode 100644
index d097fc5b44..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail050.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-rnfail050.hs:10:37: Not in scope: `f'
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail051.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail051.hs
deleted file mode 100644
index 227e040033..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail051.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- trac #2033: This used to fail when the renamer didn't check for a view
--- /pattern/ being used in an /expression/ context
-
-module RnFail051 where
-
-main :: IO ()
-main = wrapper (_ -> putStrLn "_")
-
-wrapper :: (String -> IO ()) -> IO ()
-wrapper f = f ""
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail051.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail051.stderr
deleted file mode 100644
index 36eccc5724..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail051.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-rnfail051.hs:7:17:
- Pattern syntax in expression context: _ -> putStrLn "_"
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail052.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail052.hs
deleted file mode 100644
index 63a0dfd6d1..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail052.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- Error messages when you use 'forall' *without* the RankN flags
--- Test cases similar to Trac #2114
-
-module ShouldFail where
-
-f :: forall a. a->a
-f = error "ur"
-
-g :: Int -> (forall a. a-> a) -> Int
-g = error "ur"
-
-data S = MkS (forall a. a->a)
- -- This one complains about 'a' and 'forall' not in scope
- -- because they aren't implicitly quantified,
- -- whereas implicit quantification deals with the first two
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail052.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail052.stderr
deleted file mode 100644
index f6d0929bca..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail052.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-rnfail052.hs:6:14:
- Illegal symbol '.' in type
- Perhaps you intended -XRankNTypes or similar flag
- to enable explicit-forall syntax: forall <tvs>. <type>
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail053.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail053.hs
deleted file mode 100644
index dbc219271b..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail053.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- Test Trac #2114 (error message)
-
-module ShouldFail where
-
-data T = forall a. MkT a
-
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail053.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail053.stderr
deleted file mode 100644
index 47f44c4464..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail053.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-rnfail053.hs:5:10:
- Not a data constructor: `forall'
- Perhaps you intended to use -XExistentialQuantification
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail054.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail054.hs
deleted file mode 100644
index f83a0f9970..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail054.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- Test for trac #2141
-
-module Foo where
-
-foo :: () -> ()
-foo x = x { foo = 1 }
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail054.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail054.stderr
deleted file mode 100644
index ab952aadeb..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail054.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-rnfail054.hs:6:13:
- `foo' is not a record selector
- In the expression: x {foo = 1}
- In an equation for `foo': foo x = x {foo = 1}
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail055.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail055.stderr
deleted file mode 100644
index 7c30e7828e..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail055.stderr
+++ /dev/null
@@ -1,107 +0,0 @@
-
-RnFail055.hs:1:73:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
-
-RnFail055.hs-boot:1:73:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
-
-RnFail055.hs-boot:4:1:
- Identifier `f1' has conflicting definitions in the module and its hs-boot file
- Main module: f1 :: Int -> Float
- Boot file: f1 :: Float -> Int
-
-RnFail055.hs-boot:6:6:
- Type constructor `S1' has conflicting definitions in the module and its hs-boot file
- Main module: type S1 a b
- = (a, b)
- FamilyInstance: none
- Boot file: type S1 a b c
- = (a, b)
- FamilyInstance: none
-
-RnFail055.hs-boot:8:6:
- Type constructor `S2' has conflicting definitions in the module and its hs-boot file
- Main module: type S2 a b
- = forall a. (a, b)
- FamilyInstance: none
- Boot file: type S2 a b
- = forall b. (a, b)
- FamilyInstance: none
-
-RnFail055.hs-boot:12:6:
- Type constructor `T1' has conflicting definitions in the module and its hs-boot file
- Main module: data T1 a b
- RecFlag Recursive
- = T1 :: forall a b. [b] -> [a] -> T1 a b Stricts: _ _
- FamilyInstance: none
- Boot file: data T1 a b
- RecFlag NonRecursive
- = T1 :: forall a b. [a] -> [b] -> T1 a b Stricts: _ _
- FamilyInstance: none
-
-RnFail055.hs-boot:14:16:
- Type constructor `T2' has conflicting definitions in the module and its hs-boot file
- Main module: data Eq b => T2 a b
- RecFlag Recursive
- = T2 :: forall a b. a -> T2 a b Stricts: _
- FamilyInstance: none
- Boot file: data Eq a => T2 a b
- RecFlag NonRecursive
- = T2 :: forall a b. a -> T2 a b Stricts: _
- FamilyInstance: none
-
-RnFail055.hs-boot:16:11:
- T3 is exported by the hs-boot file, but not exported by the module
-
-RnFail055.hs-boot:17:12:
- T3' is exported by the hs-boot file, but not exported by the module
-
-RnFail055.hs-boot:21:6:
- Type constructor `T5' has conflicting definitions in the module and its hs-boot file
- Main module: data T5 a
- RecFlag Recursive
- = T5 :: forall a. a -> T5 a Stricts: _ Fields: field5
- FamilyInstance: none
- Boot file: data T5 a
- RecFlag NonRecursive
- = T5 :: forall a. a -> T5 a Stricts: _
- FamilyInstance: none
-
-RnFail055.hs-boot:23:6:
- Type constructor `T6' has conflicting definitions in the module and its hs-boot file
- Main module: data T6
- RecFlag Recursive
- = T6 :: Int -> T6 Stricts: _
- FamilyInstance: none
- Boot file: data T6
- RecFlag NonRecursive
- = T6 :: Int -> T6 HasWrapper Stricts: !
- FamilyInstance: none
-
-RnFail055.hs-boot:25:6:
- Type constructor `T7' has conflicting definitions in the module and its hs-boot file
- Main module: data T7 a
- RecFlag Recursive
- = T7 :: forall a a. a -> T7 a Stricts: _
- FamilyInstance: none
- Boot file: data T7 a
- RecFlag NonRecursive
- = T7 :: forall a b. a -> T7 a Stricts: _
- FamilyInstance: none
-
-RnFail055.hs-boot:27:22:
- RnFail055.m1 is exported by the hs-boot file, but not exported by the module
-
-RnFail055.hs-boot:28:7:
- Class `C2' has conflicting definitions in the module and its hs-boot file
- Main module: class C2 a b
- RecFlag NonRecursive
- m2 :: a -> b m2' :: a -> b
- Boot file: class C2 a b
- RecFlag NonRecursive
- m2 :: a -> b
-
-RnFail055.hs-boot:29:24:
- Class `C3' has conflicting definitions in the module and its hs-boot file
- Main module: class (Eq a, Ord a) => C3 a RecFlag NonRecursive
- Boot file: class (Ord a, Eq a) => C3 a RecFlag NonRecursive
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail056.hs b/testsuite/tests/ghc-regress/rename/should_fail/rnfail056.hs
deleted file mode 100644
index 23ec008dc6..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail056.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- TupleSections not enabled
-{-# LANGUAGE UnboxedTuples #-}
-
-module Foo where
-
-foo = (1,)
-
-bar = (# 1, #)
diff --git a/testsuite/tests/ghc-regress/rename/should_fail/rnfail056.stderr b/testsuite/tests/ghc-regress/rename/should_fail/rnfail056.stderr
deleted file mode 100644
index 3ddf502dee..0000000000
--- a/testsuite/tests/ghc-regress/rename/should_fail/rnfail056.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-rnfail056.hs:6:7: Illegal tuple section: use -XTupleSections
-
-rnfail056.hs:8:7: Illegal tuple section: use -XTupleSections
diff --git a/testsuite/tests/ghc-regress/rts/2047.hs b/testsuite/tests/ghc-regress/rts/2047.hs
deleted file mode 100644
index 08b72664a9..0000000000
--- a/testsuite/tests/ghc-regress/rts/2047.hs
+++ /dev/null
@@ -1,102 +0,0 @@
-module Main where
-
-import qualified Data.Set as Set
-import Control.Monad
-import Data.List
-
----
----
----
-
-data Direction = DirUp | DirLeft | DirRight | DirDown
- deriving (Eq,Ord,Show,Read)
-
-directions = [DirUp,DirLeft,DirRight,DirDown]
-
-coordOffset DirUp = (-1,0)
-coordOffset DirLeft = (0,-1)
-coordOffset DirRight = (0,1)
-coordOffset DirDown = (1,0)
-
-move (r,c) d = (r+dr,c+dc) where (dr,dc) = coordOffset d
-
-sortPair (x,y) =
- case compare x y of
- EQ -> (x,y)
- LT -> (x,y)
- GT -> (y,x)
-mapPair12 f (x,y) = (f x,f y)
-
-cachedUsingList f = f'
- where
- list = map f [0..]
- f' i = list !! i
-
-nubSorted [] = []
-nubSorted (x:xs) = nubSorted' x xs
- where
- nubSorted' x [] = [x]
- nubSorted' x (y:ys)
- | x == y = nubSorted' x ys
- | otherwise = x : nubSorted' y ys
-
----
----
----
-
-size = 21
-largestExplicitlyEnumeratedArea = 7
-
-type Cell = (Int,Int)
-type Edge = (Cell,Cell)
-
-mkEdge cell1 cell2 = sortPair (cell1,cell2)
-
-cellsAround area = nubSorted $ sort $
- do
- cell <- area
- dir <- directions
- let cell2 = move cell dir
- guard $ cell2 `notElem` area
- return $ cell2
-
-increaseAreas areas = nubSorted $ sort $
- do
- area <- areas
- cell2 <- cellsAround area
- return $ sort $ cell2 : area
-getAreas :: Int -> [[Cell]]
-getAreasRaw 1 = [[(0,0)]]
-getAreasRaw n = areas
- where
- areas = increaseAreas $ getAreas $ n - 1
-getAreas = cachedUsingList getAreasRaw
-
-getEdges area = mapPair12 (map snd) $ partition fst $ nubSorted $ sort $
- do
- cell <- area
- dir <- directions
- let cell2 = move cell dir
- let isInternal = cell2 `elem` area
- return (isInternal,mkEdge cell cell2)
-
-type SizedArea = (Int,((Set.Set Cell,Set.Set Cell),(Set.Set Edge,Set.Set Edge)))
-getExtendedAreas n =
- do
- area <- getAreas n
- let areaAround = cellsAround area
- let edgeInfo = getEdges area
- return ((Set.fromList area,Set.fromList areaAround),mapPair12 Set.fromList edgeInfo)
-
-getSizedAreasThrough :: Int -> [SizedArea]
-getSizedAreasThrough n =
- do
- n' <- [1 .. n]
- extendedArea <- getExtendedAreas n'
- return $ (n',extendedArea)
-
-sizeForSizedArea (asize,_) = asize
-allSizedAreas = getSizedAreasThrough largestExplicitlyEnumeratedArea
-
-main = print $ allSizedAreas
-
diff --git a/testsuite/tests/ghc-regress/rts/2783.hs b/testsuite/tests/ghc-regress/rts/2783.hs
deleted file mode 100644
index 5edca4e7cd..0000000000
--- a/testsuite/tests/ghc-regress/rts/2783.hs
+++ /dev/null
@@ -1 +0,0 @@
-main = print $ do x <- [ 0 .. 5 ] ; let { y = 5 - y } ; return y
diff --git a/testsuite/tests/ghc-regress/rts/2783.stderr b/testsuite/tests/ghc-regress/rts/2783.stderr
deleted file mode 100644
index 86d45f2a1a..0000000000
--- a/testsuite/tests/ghc-regress/rts/2783.stderr
+++ /dev/null
@@ -1 +0,0 @@
-2783: <<loop>>
diff --git a/testsuite/tests/ghc-regress/rts/3236.c b/testsuite/tests/ghc-regress/rts/3236.c
deleted file mode 100644
index 92d4c12dcd..0000000000
--- a/testsuite/tests/ghc-regress/rts/3236.c
+++ /dev/null
@@ -1,7 +0,0 @@
-#include "Rts.h"
-
-int main (int argc, char *argv[])
-{
- // should fail: RTS is not initialised
- rts_lock();
-}
diff --git a/testsuite/tests/ghc-regress/rts/3236.stderr b/testsuite/tests/ghc-regress/rts/3236.stderr
deleted file mode 100644
index c1f0511021..0000000000
--- a/testsuite/tests/ghc-regress/rts/3236.stderr
+++ /dev/null
@@ -1 +0,0 @@
-newBoundTask: RTS is not initialised; call hs_init() first
diff --git a/testsuite/tests/ghc-regress/rts/3424.hs b/testsuite/tests/ghc-regress/rts/3424.hs
deleted file mode 100644
index e168df49c0..0000000000
--- a/testsuite/tests/ghc-regress/rts/3424.hs
+++ /dev/null
@@ -1,611 +0,0 @@
-
-module Main (main) where
-
-import Control.Monad (guard)
-
-main :: IO ()
-main = print $ head z
-
-z :: [[Int]]
-z = do x1 <- [0..3]
- x2 <- [0..3]
- x3 <- [0..3]
- x4 <- [0..3]
- x5 <- [0..3]
- x6 <- [0..3]
- x7 <- [0..3]
- x8 <- [0..3]
- x9 <- [0..3]
- x10 <- [0..3]
- x11 <- [0..3]
- x12 <- [0..3]
- x13 <- [0..3]
- x14 <- [0..3]
- x15 <- [0..3]
- x16 <- [0..3]
- x17 <- [0..3]
- x18 <- [0..3]
- x19 <- [0..3]
- x20 <- [0..3]
- x21 <- [0..3]
- x22 <- [0..3]
- x23 <- [0..3]
- x24 <- [0..3]
- x25 <- [0..3]
- x26 <- [0..3]
- x27 <- [0..3]
- x28 <- [0..3]
- x29 <- [0..3]
- x30 <- [0..3]
- x31 <- [0..3]
- x32 <- [0..3]
- x33 <- [0..3]
- x34 <- [0..3]
- x35 <- [0..3]
- x36 <- [0..3]
- x37 <- [0..3]
- x38 <- [0..3]
- x39 <- [0..3]
- x40 <- [0..3]
- x41 <- [0..3]
- x42 <- [0..3]
- x43 <- [0..3]
- x44 <- [0..3]
- x45 <- [0..3]
- x46 <- [0..3]
- x47 <- [0..3]
- x48 <- [0..3]
- x49 <- [0..3]
- x50 <- [0..3]
- x51 <- [0..3]
- x52 <- [0..3]
- x53 <- [0..3]
- x54 <- [0..3]
- x55 <- [0..3]
- x56 <- [0..3]
- x57 <- [0..3]
- x58 <- [0..3]
- x59 <- [0..3]
- x60 <- [0..3]
- x61 <- [0..3]
- x62 <- [0..3]
- x63 <- [0..3]
- x64 <- [0..3]
- x65 <- [0..3]
- x66 <- [0..3]
- x67 <- [0..3]
- x68 <- [0..3]
- x69 <- [0..3]
- x70 <- [0..3]
- x71 <- [0..3]
- x72 <- [0..3]
- x73 <- [0..3]
- x74 <- [0..3]
- x75 <- [0..3]
- x76 <- [0..3]
- x77 <- [0..3]
- x78 <- [0..3]
- x79 <- [0..3]
- x80 <- [0..3]
- x81 <- [0..3]
- x82 <- [0..3]
- x83 <- [0..3]
- x84 <- [0..3]
- x85 <- [0..3]
- x86 <- [0..3]
- x87 <- [0..3]
- x88 <- [0..3]
- x89 <- [0..3]
- x90 <- [0..3]
- x91 <- [0..3]
- x92 <- [0..3]
- x93 <- [0..3]
- x94 <- [0..3]
- x95 <- [0..3]
- x96 <- [0..3]
- x97 <- [0..3]
- x98 <- [0..3]
- x99 <- [0..3]
- x100 <- [0..3]
- x101 <- [0..3]
- x102 <- [0..3]
- x103 <- [0..3]
- x104 <- [0..3]
- x105 <- [0..3]
- x106 <- [0..3]
- x107 <- [0..3]
- x108 <- [0..3]
- x109 <- [0..3]
- x110 <- [0..3]
- x111 <- [0..3]
- x112 <- [0..3]
- x113 <- [0..3]
- x114 <- [0..3]
- x115 <- [0..3]
- x116 <- [0..3]
- x117 <- [0..3]
- x118 <- [0..3]
- x119 <- [0..3]
- x120 <- [0..3]
- x121 <- [0..3]
- x122 <- [0..3]
- x123 <- [0..3]
- x124 <- [0..3]
- x125 <- [0..3]
- x126 <- [0..3]
- x127 <- [0..3]
- x128 <- [0..3]
- x129 <- [0..3]
- x130 <- [0..3]
- x131 <- [0..3]
- x132 <- [0..3]
- x133 <- [0..3]
- x134 <- [0..3]
- x135 <- [0..3]
- x136 <- [0..3]
- x137 <- [0..3]
- x138 <- [0..3]
- x139 <- [0..3]
- x140 <- [0..3]
- x141 <- [0..3]
- x142 <- [0..3]
- x143 <- [0..3]
- x144 <- [0..3]
- x145 <- [0..3]
- x146 <- [0..3]
- x147 <- [0..3]
- x148 <- [0..3]
- x149 <- [0..3]
- x150 <- [0..3]
- x151 <- [0..3]
- x152 <- [0..3]
- x153 <- [0..3]
- x154 <- [0..3]
- x155 <- [0..3]
- x156 <- [0..3]
- x157 <- [0..3]
- x158 <- [0..3]
- x159 <- [0..3]
- x160 <- [0..3]
- x161 <- [0..3]
- x162 <- [0..3]
- x163 <- [0..3]
- x164 <- [0..3]
- x165 <- [0..3]
- x166 <- [0..3]
- x167 <- [0..3]
- x168 <- [0..3]
- x169 <- [0..3]
- x170 <- [0..3]
- x171 <- [0..3]
- x172 <- [0..3]
- x173 <- [0..3]
- x174 <- [0..3]
- x175 <- [0..3]
- x176 <- [0..3]
- x177 <- [0..3]
- x178 <- [0..3]
- x179 <- [0..3]
- x180 <- [0..3]
- x181 <- [0..3]
- x182 <- [0..3]
- x183 <- [0..3]
- x184 <- [0..3]
- x185 <- [0..3]
- x186 <- [0..3]
- x187 <- [0..3]
- x188 <- [0..3]
- x189 <- [0..3]
- x190 <- [0..3]
- x191 <- [0..3]
- x192 <- [0..3]
- x193 <- [0..3]
- x194 <- [0..3]
- x195 <- [0..3]
- x196 <- [0..3]
- x197 <- [0..3]
- x198 <- [0..3]
- x199 <- [0..3]
- x200 <- [0..3]
- x201 <- [0..3]
- x202 <- [0..3]
- x203 <- [0..3]
- x204 <- [0..3]
- x205 <- [0..3]
- x206 <- [0..3]
- x207 <- [0..3]
- x208 <- [0..3]
- x209 <- [0..3]
- x210 <- [0..3]
- x211 <- [0..3]
- x212 <- [0..3]
- x213 <- [0..3]
- x214 <- [0..3]
- x215 <- [0..3]
- x216 <- [0..3]
- x217 <- [0..3]
- x218 <- [0..3]
- x219 <- [0..3]
- x220 <- [0..3]
- x221 <- [0..3]
- x222 <- [0..3]
- x223 <- [0..3]
- x224 <- [0..3]
- x225 <- [0..3]
- x226 <- [0..3]
- x227 <- [0..3]
- x228 <- [0..3]
- x229 <- [0..3]
- x230 <- [0..3]
- x231 <- [0..3]
- x232 <- [0..3]
- x233 <- [0..3]
- x234 <- [0..3]
- x235 <- [0..3]
- x236 <- [0..3]
- x237 <- [0..3]
- x238 <- [0..3]
- x239 <- [0..3]
- x240 <- [0..3]
- x241 <- [0..3]
- x242 <- [0..3]
- x243 <- [0..3]
- x244 <- [0..3]
- x245 <- [0..3]
- x246 <- [0..3]
- x247 <- [0..3]
- x248 <- [0..3]
- x249 <- [0..3]
- x250 <- [0..3]
- x251 <- [0..3]
- x252 <- [0..3]
- x253 <- [0..3]
- x254 <- [0..3]
- x255 <- [0..3]
- x256 <- [0..3]
- x257 <- [0..3]
- x258 <- [0..3]
- x259 <- [0..3]
- x260 <- [0..3]
- x261 <- [0..3]
- x262 <- [0..3]
- x263 <- [0..3]
- x264 <- [0..3]
- x265 <- [0..3]
- x266 <- [0..3]
- x267 <- [0..3]
- x268 <- [0..3]
- x269 <- [0..3]
- x270 <- [0..3]
- x271 <- [0..3]
- x272 <- [0..3]
- x273 <- [0..3]
- x274 <- [0..3]
- x275 <- [0..3]
- x276 <- [0..3]
- x277 <- [0..3]
- x278 <- [0..3]
- x279 <- [0..3]
- x280 <- [0..3]
- x281 <- [0..3]
- x282 <- [0..3]
- x283 <- [0..3]
- x284 <- [0..3]
- x285 <- [0..3]
- x286 <- [0..3]
- x287 <- [0..3]
- x288 <- [0..3]
- x289 <- [0..3]
- x290 <- [0..3]
- x291 <- [0..3]
- x292 <- [0..3]
- x293 <- [0..3]
- x294 <- [0..3]
- x295 <- [0..3]
- x296 <- [0..3]
- x297 <- [0..3]
- x298 <- [0..3]
- x299 <- [0..3]
- x300 <- [0..3]
- x301 <- [0..3]
- x302 <- [0..3]
- x303 <- [0..3]
- x304 <- [0..3]
- x305 <- [0..3]
- x306 <- [0..3]
- x307 <- [0..3]
- x308 <- [0..3]
- x309 <- [0..3]
- x310 <- [0..3]
- x311 <- [0..3]
- x312 <- [0..3]
- x313 <- [0..3]
- x314 <- [0..3]
- x315 <- [0..3]
- x316 <- [0..3]
- x317 <- [0..3]
- x318 <- [0..3]
- x319 <- [0..3]
- x320 <- [0..3]
- x321 <- [0..3]
- x322 <- [0..3]
- x323 <- [0..3]
- x324 <- [0..3]
- x325 <- [0..3]
- x326 <- [0..3]
- x327 <- [0..3]
- x328 <- [0..3]
- x329 <- [0..3]
- x330 <- [0..3]
- x331 <- [0..3]
- x332 <- [0..3]
- x333 <- [0..3]
- x334 <- [0..3]
- x335 <- [0..3]
- x336 <- [0..3]
- x337 <- [0..3]
- x338 <- [0..3]
- x339 <- [0..3]
- x340 <- [0..3]
- x341 <- [0..3]
- x342 <- [0..3]
- x343 <- [0..3]
- x344 <- [0..3]
- x345 <- [0..3]
- x346 <- [0..3]
- x347 <- [0..3]
- x348 <- [0..3]
- x349 <- [0..3]
- x350 <- [0..3]
- x351 <- [0..3]
- x352 <- [0..3]
- x353 <- [0..3]
- x354 <- [0..3]
- x355 <- [0..3]
- x356 <- [0..3]
- x357 <- [0..3]
- x358 <- [0..3]
- x359 <- [0..3]
- x360 <- [0..3]
- x361 <- [0..3]
- x362 <- [0..3]
- x363 <- [0..3]
- x364 <- [0..3]
- x365 <- [0..3]
- x366 <- [0..3]
- x367 <- [0..3]
- x368 <- [0..3]
- x369 <- [0..3]
- x370 <- [0..3]
- x371 <- [0..3]
- x372 <- [0..3]
- x373 <- [0..3]
- x374 <- [0..3]
- x375 <- [0..3]
- x376 <- [0..3]
- x377 <- [0..3]
- x378 <- [0..3]
- x379 <- [0..3]
- x380 <- [0..3]
- x381 <- [0..3]
- x382 <- [0..3]
- x383 <- [0..3]
- x384 <- [0..3]
- x385 <- [0..3]
- x386 <- [0..3]
- x387 <- [0..3]
- x388 <- [0..3]
- x389 <- [0..3]
- x390 <- [0..3]
- x391 <- [0..3]
- x392 <- [0..3]
- x393 <- [0..3]
- x394 <- [0..3]
- x395 <- [0..3]
- x396 <- [0..3]
- x397 <- [0..3]
- x398 <- [0..3]
- x399 <- [0..3]
- x400 <- [0..3]
- x401 <- [0..3]
- x402 <- [0..3]
- x403 <- [0..3]
- x404 <- [0..3]
- x405 <- [0..3]
- x406 <- [0..3]
- x407 <- [0..3]
- x408 <- [0..3]
- x409 <- [0..3]
- x410 <- [0..3]
- x411 <- [0..3]
- x412 <- [0..3]
- x413 <- [0..3]
- x414 <- [0..3]
- x415 <- [0..3]
- x416 <- [0..3]
- x417 <- [0..3]
- x418 <- [0..3]
- x419 <- [0..3]
- x420 <- [0..3]
- x421 <- [0..3]
- x422 <- [0..3]
- x423 <- [0..3]
- x424 <- [0..3]
- x425 <- [0..3]
- x426 <- [0..3]
- x427 <- [0..3]
- x428 <- [0..3]
- x429 <- [0..3]
- x430 <- [0..3]
- x431 <- [0..3]
- x432 <- [0..3]
- x433 <- [0..3]
- x434 <- [0..3]
- x435 <- [0..3]
- x436 <- [0..3]
- x437 <- [0..3]
- x438 <- [0..3]
- x439 <- [0..3]
- x440 <- [0..3]
- x441 <- [0..3]
- x442 <- [0..3]
- x443 <- [0..3]
- x444 <- [0..3]
- x445 <- [0..3]
- x446 <- [0..3]
- x447 <- [0..3]
- x448 <- [0..3]
- x449 <- [0..3]
- x450 <- [0..3]
- x451 <- [0..3]
- x452 <- [0..3]
- x453 <- [0..3]
- x454 <- [0..3]
- x455 <- [0..3]
- x456 <- [0..3]
- x457 <- [0..3]
- x458 <- [0..3]
- x459 <- [0..3]
- x460 <- [0..3]
- x461 <- [0..3]
- x462 <- [0..3]
- x463 <- [0..3]
- x464 <- [0..3]
- x465 <- [0..3]
- x466 <- [0..3]
- x467 <- [0..3]
- x468 <- [0..3]
- x469 <- [0..3]
- x470 <- [0..3]
- x471 <- [0..3]
- x472 <- [0..3]
- x473 <- [0..3]
- x474 <- [0..3]
- x475 <- [0..3]
- x476 <- [0..3]
- x477 <- [0..3]
- x478 <- [0..3]
- x479 <- [0..3]
- x480 <- [0..3]
- x481 <- [0..3]
- x482 <- [0..3]
- x483 <- [0..3]
- x484 <- [0..3]
- x485 <- [0..3]
- x486 <- [0..3]
- x487 <- [0..3]
- x488 <- [0..3]
- x489 <- [0..3]
- x490 <- [0..3]
- x491 <- [0..3]
- x492 <- [0..3]
- x493 <- [0..3]
- x494 <- [0..3]
- x495 <- [0..3]
- x496 <- [0..3]
- x497 <- [0..3]
- x498 <- [0..3]
- x499 <- [0..3]
- x500 <- [0..3]
- x501 <- [0..3]
- x502 <- [0..3]
- x503 <- [0..3]
- x504 <- [0..3]
- x505 <- [0..3]
- x506 <- [0..3]
- x507 <- [0..3]
- x508 <- [0..3]
- x509 <- [0..3]
- x510 <- [0..3]
- x511 <- [0..3]
- x512 <- [0..3]
- x513 <- [0..3]
- x514 <- [0..3]
- x515 <- [0..3]
- x516 <- [0..3]
- x517 <- [0..3]
- x518 <- [0..3]
- x519 <- [0..3]
- x520 <- [0..3]
- x521 <- [0..3]
- x522 <- [0..3]
- x523 <- [0..3]
- x524 <- [0..3]
- x525 <- [0..3]
- x526 <- [0..3]
- x527 <- [0..3]
- x528 <- [0..3]
- x529 <- [0..3]
- x530 <- [0..3]
- x531 <- [0..3]
- x532 <- [0..3]
- x533 <- [0..3]
- x534 <- [0..3]
- x535 <- [0..3]
- x536 <- [0..3]
- x537 <- [0..3]
- x538 <- [0..3]
- x539 <- [0..3]
- x540 <- [0..3]
- x541 <- [0..3]
- x542 <- [0..3]
- x543 <- [0..3]
- x544 <- [0..3]
- x545 <- [0..3]
- x546 <- [0..3]
- x547 <- [0..3]
- x548 <- [0..3]
- x549 <- [0..3]
- x550 <- [0..3]
- x551 <- [0..3]
- x552 <- [0..3]
- x553 <- [0..3]
- x554 <- [0..3]
- x555 <- [0..3]
- x556 <- [0..3]
- x557 <- [0..3]
- x558 <- [0..3]
- x559 <- [0..3]
- x560 <- [0..3]
- x561 <- [0..3]
- x562 <- [0..3]
- x563 <- [0..3]
- x564 <- [0..3]
- x565 <- [0..3]
- x566 <- [0..3]
- x567 <- [0..3]
- x568 <- [0..3]
- x569 <- [0..3]
- x570 <- [0..3]
- x571 <- [0..3]
- x572 <- [0..3]
- x573 <- [0..3]
- x574 <- [0..3]
- x575 <- [0..3]
- x576 <- [0..3]
- x577 <- [0..3]
- x578 <- [0..3]
- x579 <- [0..3]
- x580 <- [0..3]
- x581 <- [0..3]
- x582 <- [0..3]
- x583 <- [0..3]
- x584 <- [0..3]
- x585 <- [0..3]
- x586 <- [0..3]
- x587 <- [0..3]
- x588 <- [0..3]
- x589 <- [0..3]
- x590 <- [0..3]
- x591 <- [0..3]
- x592 <- [0..3]
- x593 <- [0..3]
- x594 <- [0..3]
- x595 <- [0..3]
- x596 <- [0..3]
- x597 <- [0..3]
- x598 <- [0..3]
- x599 <- [0..3]
- x600 <- [0..3]
- guard (x1+x2+2*x3 >= 0)
- return [x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12,x13,x14,x15,x16,x17,x18,x19,x20,x21,x22,x23,x24,x25,x26,x27,x28,x29,x30,x31,x32,x33,x34,x35,x36,x37,x38,x39,x40,x41,x42,x43,x44,x45,x46,x47,x48,x49,x50,x51,x52,x53,x54,x55,x56,x57,x58,x59,x60,x61,x62,x63,x64,x65,x66,x67,x68,x69,x70,x71,x72,x73,x74,x75,x76,x77,x78,x79,x80,x81,x82,x83,x84,x85,x86,x87,x88,x89,x90,x91,x92,x93,x94,x95,x96,x97,x98,x99,x100,x101,x102,x103,x104,x105,x106,x107,x108,x109,x110,x111,x112,x113,x114,x115,x116,x117,x118,x119,x120,x121,x122,x123,x124,x125,x126,x127,x128,x129,x130,x131,x132,x133,x134,x135,x136,x137,x138,x139,x140,x141,x142,x143,x144,x145,x146,x147,x148,x149,x150,x151,x152,x153,x154,x155,x156,x157,x158,x159,x160,x161,x162,x163,x164,x165,x166,x167,x168,x169,x170,x171,x172,x173,x174,x175,x176,x177,x178,x179,x180,x181,x182,x183,x184,x185,x186,x187,x188,x189,x190,x191,x192,x193,x194,x195,x196,x197,x198,x199,x200,x201,x202,x203,x204,x205,x206,x207,x208,x209,x210,x211,x212,x213,x214,x215,x216,x217,x218,x219,x220,x221,x222,x223,x224,x225,x226,x227,x228,x229,x230,x231,x232,x233,x234,x235,x236,x237,x238,x239,x240,x241,x242,x243,x244,x245,x246,x247,x248,x249,x250,x251,x252,x253,x254,x255,x256,x257,x258,x259,x260,x261,x262,x263,x264,x265,x266,x267,x268,x269,x270,x271,x272,x273,x274,x275,x276,x277,x278,x279,x280,x281,x282,x283,x284,x285,x286,x287,x288,x289,x290,x291,x292,x293,x294,x295,x296,x297,x298,x299,x300,x301,x302,x303,x304,x305,x306,x307,x308,x309,x310,x311,x312,x313,x314,x315,x316,x317,x318,x319,x320,x321,x322,x323,x324,x325,x326,x327,x328,x329,x330,x331,x332,x333,x334,x335,x336,x337,x338,x339,x340,x341,x342,x343,x344,x345,x346,x347,x348,x349,x350,x351,x352,x353,x354,x355,x356,x357,x358,x359,x360,x361,x362,x363,x364,x365,x366,x367,x368,x369,x370,x371,x372,x373,x374,x375,x376,x377,x378,x379,x380,x381,x382,x383,x384,x385,x386,x387,x388,x389,x390,x391,x392,x393,x394,x395,x396,x397,x398,x399,x400,x401,x402,x403,x404,x405,x406,x407,x408,x409,x410,x411,x412,x413,x414,x415,x416,x417,x418,x419,x420,x421,x422,x423,x424,x425,x426,x427,x428,x429,x430,x431,x432,x433,x434,x435,x436,x437,x438,x439,x440,x441,x442,x443,x444,x445,x446,x447,x448,x449,x450,x451,x452,x453,x454,x455,x456,x457,x458,x459,x460,x461,x462,x463,x464,x465,x466,x467,x468,x469,x470,x471,x472,x473,x474,x475,x476,x477,x478,x479,x480,x481,x482,x483,x484,x485,x486,x487,x488,x489,x490,x491,x492,x493,x494,x495,x496,x497,x498,x499,x500,x501,x502,x503,x504,x505,x506,x507,x508,x509,x510,x511,x512,x513,x514,x515,x516,x517,x518,x519,x520,x521,x522,x523,x524,x525,x526,x527,x528,x529,x530,x531,x532,x533,x534,x535,x536,x537,x538,x539,x540,x541,x542,x543,x544,x545,x546,x547,x548,x549,x550,x551,x552,x553,x554,x555,x556,x557,x558,x559,x560,x561,x562,x563,x564,x565,x566,x567,x568,x569,x570,x571,x572,x573,x574,x575,x576,x577,x578,x579,x580,x581,x582,x583,x584,x585,x586,x587,x588,x589,x590,x591,x592,x593,x594,x595,x596,x597,x598,x599,x600]
diff --git a/testsuite/tests/ghc-regress/rts/3424.stdout b/testsuite/tests/ghc-regress/rts/3424.stdout
deleted file mode 100644
index e905960197..0000000000
--- a/testsuite/tests/ghc-regress/rts/3424.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
diff --git a/testsuite/tests/ghc-regress/rts/4059.hs b/testsuite/tests/ghc-regress/rts/4059.hs
deleted file mode 100644
index 5af5bbc4aa..0000000000
--- a/testsuite/tests/ghc-regress/rts/4059.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-
-{-# LANGUAGE ForeignFunctionInterface #-}
-
-import Foreign hiding ( unsafePerformIO )
-import Foreign.C
-import System.IO.Unsafe
-
-d f x = unsafePerformIO $ do
- g <- mkfun f
- r <- deriv g x 1
- return r
-
-main = do
- print $ d (\x -> x * 2) 3
- print $ d (\x -> x * d (\y -> x + y) 5) 7
-
-
-foreign import ccall safe "deriv"
- deriv :: FunPtr (CDouble -> CDouble) -> CDouble -> CDouble -> IO CDouble
-
-foreign import ccall safe "wrapper"
- mkfun :: (CDouble -> CDouble) -> IO (FunPtr (CDouble -> CDouble))
diff --git a/testsuite/tests/ghc-regress/rts/4059_c.c b/testsuite/tests/ghc-regress/rts/4059_c.c
deleted file mode 100644
index 3595b82cae..0000000000
--- a/testsuite/tests/ghc-regress/rts/4059_c.c
+++ /dev/null
@@ -1,4 +0,0 @@
-
-double deriv(double f(double), double x, double h) {
- return f(x) + h;
-}
diff --git a/testsuite/tests/ghc-regress/rts/4850.hs b/testsuite/tests/ghc-regress/rts/4850.hs
deleted file mode 100644
index 72616d97eb..0000000000
--- a/testsuite/tests/ghc-regress/rts/4850.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface #-}
-module Main where
-
-import Foreign
-import Control.Concurrent
-
-type Fun = Int -> IO Int
-
-foreign import ccall "wrapper" mkF :: Fun -> IO (FunPtr Fun)
-
-foreign import ccall "dynamic" callF :: FunPtr Fun -> Fun
-
--- This test should create 4 OS threads only:
--- one for main
--- worker 1 for the IO manager
--- worker 2 to run the first forkIO
--- worker 3 created when worker 2 makes its foreign call
-
--- Due to #4850, an extra worker was being created because worker 2 was
--- lost after returning from its foreign call.
-
-main = do
- m <- newEmptyMVar
- callback m >> takeMVar m >>= print
- callback m >> takeMVar m >>= print
-
-callback m =
- forkIO $ do
- f <- mkF $ \x -> return (x+1)
- r <- callF f 3
- putMVar m r
diff --git a/testsuite/tests/ghc-regress/rts/4850.stdout b/testsuite/tests/ghc-regress/rts/4850.stdout
deleted file mode 100644
index b8626c4cff..0000000000
--- a/testsuite/tests/ghc-regress/rts/4850.stdout
+++ /dev/null
@@ -1 +0,0 @@
-4
diff --git a/testsuite/tests/ghc-regress/rts/5250.hs b/testsuite/tests/ghc-regress/rts/5250.hs
deleted file mode 100644
index f10c2e7c47..0000000000
--- a/testsuite/tests/ghc-regress/rts/5250.hs
+++ /dev/null
@@ -1,60 +0,0 @@
-module Main where
-
-import Foreign
-import Foreign.C
-import Text.Printf
-import System.Exit
-import Control.Monad
-
-foreign import ccall "getesp" getesp :: IO CInt
-
-main = do
- checkSpAlignment
- wrap checkSpAlignment >>= run
- wrap1 args1 >>= \f -> run1 f 3
- wrap2 args2 >>= \f -> run2 f 3 4
- wrap3 args3 >>= \f -> run3 f 3 4 5
- wrap4 args4 >>= \f -> run4 f 3 4 5 6
-
-foreign import ccall "wrapper" wrap :: IO () -> IO (FunPtr (IO ()))
-foreign import ccall "dynamic" run :: FunPtr (IO ()) -> IO ()
-
-type Args1 = Int -> IO ()
-
-foreign import ccall "wrapper" wrap1 :: Args1 -> IO (FunPtr Args1)
-foreign import ccall "dynamic" run1 :: FunPtr Args1 -> Args1
-
-args1 :: Args1
-args1 _ = checkSpAlignment
-
-type Args2 = Int -> Int -> IO ()
-
-foreign import ccall "wrapper" wrap2 :: Args2 -> IO (FunPtr Args2)
-foreign import ccall "dynamic" run2 :: FunPtr Args2 -> Args2
-
-args2 :: Args2
-args2 _ _ = checkSpAlignment
-
-type Args3 = Int -> Int -> Int -> IO ()
-
-foreign import ccall "wrapper" wrap3 :: Args3 -> IO (FunPtr Args3)
-foreign import ccall "dynamic" run3 :: FunPtr Args3 -> Args3
-
-args3 :: Args3
-args3 _ _ _ = checkSpAlignment
-
-type Args4 = Int -> Int -> Int -> Int -> IO ()
-
-foreign import ccall "wrapper" wrap4 :: Args4 -> IO (FunPtr Args4)
-foreign import ccall "dynamic" run4 :: FunPtr Args4 -> Args4
-
-args4 :: Args4
-args4 _ _ _ _ = checkSpAlignment
-
-checkSpAlignment :: IO ()
-checkSpAlignment = do
- esp <- getesp
- when (((esp + fromIntegral (sizeOf (undefined :: Ptr ()))) .&. 15) /= 0) $ do
- printf "esp not aligned correctly: %x\n" (fromIntegral esp :: Word32)
- exitWith (ExitFailure 1)
-
diff --git a/testsuite/tests/ghc-regress/rts/Makefile b/testsuite/tests/ghc-regress/rts/Makefile
deleted file mode 100644
index 72b0658b4c..0000000000
--- a/testsuite/tests/ghc-regress/rts/Makefile
+++ /dev/null
@@ -1,38 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-outofmem-prep::
- '$(TEST_HC)' $(TEST_HC_OPTS) --make -fforce-recomp outofmem.hs -o outofmem
-
-outofmem::
- @$(MAKE) outofmem-prep >prep.out 2>prep.out
- @ulimit -v 10000000 2>/dev/null; ./outofmem || echo "exit($$?)"
-
-outofmem2-prep::
- '$(TEST_HC)' $(TEST_HC_OPTS) -rtsopts --make -fforce-recomp outofmem2.hs -o outofmem2
-
-outofmem2::
- @$(MAKE) outofmem2-prep >prep.out 2>prep.out
- @ulimit -v 1000000 2>/dev/null; ./outofmem2 +RTS -M5m -RTS || echo "exit($$?)"
-
-T2615-prep:
- $(RM) libfoo_T2615.so
- '$(TEST_HC)' $(TEST_HC_OPTS) -fPIC -c libfoo_T2615.c -o libfoo_T2615.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -shared -no-auto-link-packages libfoo_T2615.o -o libfoo_T2615.so
-
-.PHONY: T4059
-T4059:
- $(RM) 4059_c.o 4059.o 4059.hi
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make 4059 4059_c.c
- ./4059
-
-exec_signals-prep:
- $(CC) -o exec_signals_child exec_signals_child.c
- $(CC) -o exec_signals_prepare exec_signals_prepare.c
-
-.PHONY: 4850
-4850:
- $(RM) 4850.o 4850.hi 4850$(exeext)
- "$(TEST_HC)" $(TEST_HC_OPTS) -v0 -rtsopts -debug -threaded --make 4850
- ./4850 +RTS -s 2>&1 | grep Task | wc -l | tr -d ' '
diff --git a/testsuite/tests/ghc-regress/rts/T2615.hs b/testsuite/tests/ghc-regress/rts/T2615.hs
deleted file mode 100644
index ee04d93bcf..0000000000
--- a/testsuite/tests/ghc-regress/rts/T2615.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-import ObjLink
-
-library_name = "libfoo_script_T2615.so" -- this is really a linker script
-
-main = do
- result <- loadDLL library_name
- case result of
- Nothing -> putStrLn (library_name ++ " loaded successfully")
- Just x -> putStrLn ("error: " ++ x)
diff --git a/testsuite/tests/ghc-regress/rts/T2615.stdout b/testsuite/tests/ghc-regress/rts/T2615.stdout
deleted file mode 100644
index 16a9ae1c20..0000000000
--- a/testsuite/tests/ghc-regress/rts/T2615.stdout
+++ /dev/null
@@ -1 +0,0 @@
-libfoo_script_T2615.so loaded successfully
diff --git a/testsuite/tests/ghc-regress/rts/T4059.stdout b/testsuite/tests/ghc-regress/rts/T4059.stdout
deleted file mode 100644
index 34f64643a5..0000000000
--- a/testsuite/tests/ghc-regress/rts/T4059.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-7.0
-92.0
diff --git a/testsuite/tests/ghc-regress/rts/all.T b/testsuite/tests/ghc-regress/rts/all.T
deleted file mode 100644
index 172c2953f7..0000000000
--- a/testsuite/tests/ghc-regress/rts/all.T
+++ /dev/null
@@ -1,117 +0,0 @@
-test('testblockalloc', compose(c_src,
- compose(only_ways(['normal','threaded1']),
- extra_run_opts('+RTS -I0'))),
- compile_and_run, [''])
-
-
-# See bug #101, test requires +RTS -c (or equivalently +RTS -M<something>)
-# only GHCi triggers the bug, but we run the test all ways for completeness.
-test('bug1010', normal, compile_and_run, ['+RTS -c -RTS'])
-test('derefnull',
- composes([
- # LLVM Optimiser considers dereference of a null pointer
- # undefined and marks the code as unreachable which means
- # that later optimisations remove it altogether.
- omit_ways(['optllvm']),
- # SIGSEGV on Linux (which we make the default)
- exit_code(139),
- # Apparently the output can be different on different
- # Linux setups, so just ignore it. As long as we get
- # the right exit code we're OK.
- if_os('linux', ignore_output),
- # SIGBUS on OX X (PPC and x86 only; amd64 gives SEGV)
- if_platform('i386-apple-darwin', exit_code(138)),
- if_platform('powerpc-apple-darwin', exit_code(138)),
- if_platform('i386-unknown-mingw32', exit_code(1))]),
- compile_and_run, [''])
-test('divbyzero',
- composes([
- # SIGFPE on Linux
- exit_code(136),
- # Apparently the output can be different on different
- # Linux setups, so just ignore it. As long as we get
- # the right exit code we're OK.
- if_os('linux', ignore_output),
- if_platform('i386-unknown-mingw32', exit_code(1))]),
- compile_and_run, [''])
-
-test('outofmem', normal, run_command, ['$MAKE -s --no-print-directory outofmem'])
-test('outofmem2', extra_run_opts('+RTS -M5m -RTS'),
- run_command, ['$MAKE -s --no-print-directory outofmem2'])
-
-test('2047', compose(ignore_output, extra_run_opts('+RTS -c -RTS')),
- compile_and_run, ['-package containers'])
-
-# Blackhole-detection test.
-# Skip GHCi due to #2786
-test('2783', [ omit_ways(['ghci']), exit_code(1) ], compile_and_run, [''])
-
-# Test the work-stealing deque implementation. We run this test in
-# both threaded1 (-threaded -debug) and threaded2 (-threaded) ways.
-test('testwsdeque', [unless_in_tree_compiler(skip),
- c_src, only_ways(['threaded1', 'threaded2'])],
- compile_and_run, ['-I../../../../rts'])
-
-test('3236', [c_src, only_ways(['normal','threaded1']), exit_code(1)], compile_and_run, [''])
-
-test('stack001', extra_run_opts('+RTS -K32m -RTS'), compile_and_run, [''])
-test('stack002', extra_run_opts('+RTS -K32m -k4m -RTS'), compile_and_run, [''])
-
-# run this test with very small stack chunks to exercise the stack
-# overflow/underflow machinery.
-test('stack003', [ omit_ways('ghci'), # uses unboxed tuples
- extra_run_opts('500000 +RTS -kc1k -kb100 -K96m -RTS') ],
- compile_and_run, [''])
-
-test('atomicinc', [ c_src, only_ways(['normal']) ], compile_and_run, [''])
-
-test('3424', # it's slow:
- [ skip_if_fast, only_ways(['normal','threaded1','ghci']) ],
- compile_and_run, [''])
-
-# Test for out-of-range heap size
-test('rtsflags001', [ only_ways(['normal']), exit_code(1), extra_run_opts('+RTS -H0m -RTS') ], compile_and_run, [''])
-
-# Test to see if linker scripts link properly to real ELF files
-test('T2615',
- [ if_platform('i386-unknown-mingw32',skip),
- # OS X doesn't seem to support linker scripts
- if_os('darwin', skip),
- # Solaris' linker does not support GNUish linker scripts
- if_os('solaris2', skip),
- cmd_prefix('$MAKE T2615-prep && ' +
- # Add current directory to dlopen search path
- 'LD_LIBRARY_PATH=$LD_LIBRARY_PATH:. '),
- extra_clean(['libfoo_T2615.so'])],
- compile_and_run,
- ['-package ghc'])
-
-# omit dyn and profiling ways, because we don't build dyn_l or p_l
-# variants of the RTS by default
-test('traceEvent', [ omit_ways(['dyn'] + prof_ways),
- extra_run_opts('+RTS -ls -RTS') ],
- compile_and_run, ['-eventlog'])
-
-test('T4059', normal, run_command, ['$MAKE -s --no-print-directory T4059'])
-
-# Test for #4274
-test('exec_signals', [
- if_platform('i386-unknown-mingw32',skip),
- cmd_prefix('$MAKE exec_signals-prep && ./exec_signals_prepare'),
- extra_clean(['exec_signals_child', 'exec_signals_prepare'])
- ], compile_and_run, [''])
-
-test('return_mem_to_os', normal, compile_and_run, [''])
-
-test('4850', extra_clean(['4850.o','4850.hi','4850']),
- run_command, ['$MAKE -s --no-print-directory 4850'])
-
-def config_5250(opts):
- if not (config.arch in ['i386','x86_64']):
- opts.skip = 1;
-
-test('5250', [ config_5250,
- extra_clean(['spalign.o']),
- omit_ways(['ghci']) ],
- compile_and_run, ['spalign.c'])
-
diff --git a/testsuite/tests/ghc-regress/rts/atomicinc.c b/testsuite/tests/ghc-regress/rts/atomicinc.c
deleted file mode 100644
index 8f1c8bf3ed..0000000000
--- a/testsuite/tests/ghc-regress/rts/atomicinc.c
+++ /dev/null
@@ -1,21 +0,0 @@
-#define THREADED_RTS
-
-#include "Rts.h"
-
-StgWord i;
-
-int main(int argc, char *argv[])
-{
- StgWord j;
-
- i = 0;
- j = atomic_inc(&i);
- CHECK(j == 1);
- CHECK(i == 1);
-
- j = atomic_dec(&i);
- CHECK(j == 0);
- CHECK(i == 0);
-
- return 0;
-}
diff --git a/testsuite/tests/ghc-regress/rts/bug1010.hs b/testsuite/tests/ghc-regress/rts/bug1010.hs
deleted file mode 100644
index 50329b738b..0000000000
--- a/testsuite/tests/ghc-regress/rts/bug1010.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-module Main where
-
-break2 p (x:xs) = if p x then
- ([],x:xs)
- else
- let (b1,b2) = break2 p xs
- in (x : b1, b2)
-break2 p [] = ([],[])
-
-surprise xs = b1 ++ "\n surprise " ++ b2
- where
- (b1,b2) = break2 (=='\n') xs
-
-test n = length $ surprise $ [head (show i) | i <-[1..n] ] ++ "\n the end"
-
-main = print $ test 10000
diff --git a/testsuite/tests/ghc-regress/rts/bug1010.stdout b/testsuite/tests/ghc-regress/rts/bug1010.stdout
deleted file mode 100644
index 8a0934b514..0000000000
--- a/testsuite/tests/ghc-regress/rts/bug1010.stdout
+++ /dev/null
@@ -1 +0,0 @@
-10020
diff --git a/testsuite/tests/ghc-regress/rts/derefnull.hs b/testsuite/tests/ghc-regress/rts/derefnull.hs
deleted file mode 100644
index 474ff62c4c..0000000000
--- a/testsuite/tests/ghc-regress/rts/derefnull.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-
-{-
-By default, on Windows a segfault will pop up an annoying dialog box.
-We want the RTS to catch it instead.
--}
-
-module Main where
-
-import Foreign
-
-main :: IO ()
-main = do x <- peek nullPtr
- print (x :: Int)
-
diff --git a/testsuite/tests/ghc-regress/rts/derefnull.stderr-x86_64-unknown-openbsd b/testsuite/tests/ghc-regress/rts/derefnull.stderr-x86_64-unknown-openbsd
deleted file mode 100644
index d1ecae163f..0000000000
--- a/testsuite/tests/ghc-regress/rts/derefnull.stderr-x86_64-unknown-openbsd
+++ /dev/null
@@ -1 +0,0 @@
-Segmentation fault
diff --git a/testsuite/tests/ghc-regress/rts/derefnull.stdout-i386-unknown-mingw32 b/testsuite/tests/ghc-regress/rts/derefnull.stdout-i386-unknown-mingw32
deleted file mode 100644
index 5f2034dd57..0000000000
--- a/testsuite/tests/ghc-regress/rts/derefnull.stdout-i386-unknown-mingw32
+++ /dev/null
@@ -1 +0,0 @@
-Segmentation fault/access violation in generated code
diff --git a/testsuite/tests/ghc-regress/rts/divbyzero.hs b/testsuite/tests/ghc-regress/rts/divbyzero.hs
deleted file mode 100644
index 0cf82bbae5..0000000000
--- a/testsuite/tests/ghc-regress/rts/divbyzero.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
-{-
-By default, on Windows a division-by-zero will pop up an annoying dialog box.
-We want the RTS to catch it instead.
--}
-
-module Main where
-
-import GHC.Base
-
-main :: IO ()
-main = print (5 `divInt` 0)
-
diff --git a/testsuite/tests/ghc-regress/rts/divbyzero.stderr-x86_64-unknown-openbsd b/testsuite/tests/ghc-regress/rts/divbyzero.stderr-x86_64-unknown-openbsd
deleted file mode 100644
index da6f639f9d..0000000000
--- a/testsuite/tests/ghc-regress/rts/divbyzero.stderr-x86_64-unknown-openbsd
+++ /dev/null
@@ -1 +0,0 @@
-Floating point exception
diff --git a/testsuite/tests/ghc-regress/rts/divbyzero.stdout-i386-unknown-mingw32 b/testsuite/tests/ghc-regress/rts/divbyzero.stdout-i386-unknown-mingw32
deleted file mode 100644
index 466709b368..0000000000
--- a/testsuite/tests/ghc-regress/rts/divbyzero.stdout-i386-unknown-mingw32
+++ /dev/null
@@ -1 +0,0 @@
-divide by zero
diff --git a/testsuite/tests/ghc-regress/rts/exec_signals.hs b/testsuite/tests/ghc-regress/rts/exec_signals.hs
deleted file mode 100644
index a9433d206a..0000000000
--- a/testsuite/tests/ghc-regress/rts/exec_signals.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-import System.Process
-import System.Posix.Signals
-import Control.Monad(when)
-
-data SigState = Ignored | Default | Handled
- deriving (Eq, Read, Show)
-
-data ChildInfo = ChildInfo {
- masked :: [(Int,Bool)],
- handlers :: [(Int, SigState)] }
- deriving (Read, Show)
-
-main = do out <- readProcess "./exec_signals_child" [] ""
- let ci = read out :: ChildInfo
- blockedSigs = [x | (x, True) <- masked ci]
- ignoredSigs = [x | (x, Ignored) <- handlers ci]
- when (not $ null blockedSigs) $
- putStrLn ("signals " ++ show blockedSigs ++ " are blocked")
- when (not $ null ignoredSigs) $
- putStrLn ("signals " ++ show ignoredSigs ++ " are ignored")
diff --git a/testsuite/tests/ghc-regress/rts/exec_signals_child.c b/testsuite/tests/ghc-regress/rts/exec_signals_child.c
deleted file mode 100644
index 4b84008928..0000000000
--- a/testsuite/tests/ghc-regress/rts/exec_signals_child.c
+++ /dev/null
@@ -1,47 +0,0 @@
-#include <signal.h>
-#include <stdio.h>
-#include <errno.h>
-
-// Prints the state of the signal handlers to stdout
-int main()
-{
- int open = 0, i;
- sigset_t blockedsigs;
-
- printf("ChildInfo { masked = [");
-
- sigprocmask(SIG_BLOCK, NULL, &blockedsigs);
- for(i = 0; i < NSIG; ++i)
- {
- int ret = sigismember(&blockedsigs, i);
- if(ret >= 0)
- {
- if(!open)
- open=1;
- else
- printf(",");
- printf("(%d,%s)", i, ret == 1 ? "True" : "False");
- }
- }
- printf("], handlers = [");
-
- open = 0;
- for(i = 0; i < NSIG; ++i)
- {
- struct sigaction old;
- if(sigaction(i, NULL, &old) >= 0)
- {
- if(!open)
- open=1;
- else
- printf(",");
-
- printf("(%d,%s)", i,
- old.sa_handler == SIG_IGN ? "Ignored" :
- (old.sa_handler == SIG_DFL ? "Default" : "Handled"));
- }
- }
- printf("]}");
-
- return 0;
-}
diff --git a/testsuite/tests/ghc-regress/rts/exec_signals_prepare.c b/testsuite/tests/ghc-regress/rts/exec_signals_prepare.c
deleted file mode 100644
index 26f30acc57..0000000000
--- a/testsuite/tests/ghc-regress/rts/exec_signals_prepare.c
+++ /dev/null
@@ -1,29 +0,0 @@
-#include <signal.h>
-#include <stdio.h>
-#include <errno.h>
-#include <string.h>
-
-// Invokes a process, making sure that the state of the signal
-// handlers has all been set back to the unix default.
-int main(int argc, char **argv)
-{
- int i;
- sigset_t blockedsigs;
- struct sigaction action;
-
- // unblock all signals
- sigemptyset(&blockedsigs);
- sigprocmask(SIG_BLOCK, NULL, NULL);
-
- // reset all signals to SIG_DFL
- memset(&action, 0, sizeof(action));
- action.sa_handler = SIG_DFL;
- action.sa_flags = 0;
- sigemptyset(&action.sa_mask);
- for(i = 0; i < NSIG; ++i)
- sigaction(i, &action, NULL);
-
- execv(argv[1], argv+1);
- fprintf(stderr, "failed to execv %s\n", argv[1]);
- return 0;
-}
diff --git a/testsuite/tests/ghc-regress/rts/libfoo_T2615.c b/testsuite/tests/ghc-regress/rts/libfoo_T2615.c
deleted file mode 100644
index a83cb18e7a..0000000000
--- a/testsuite/tests/ghc-regress/rts/libfoo_T2615.c
+++ /dev/null
@@ -1,2 +0,0 @@
-void foo( void );
-void foo() {}
diff --git a/testsuite/tests/ghc-regress/rts/libfoo_script_T2615.so b/testsuite/tests/ghc-regress/rts/libfoo_script_T2615.so
deleted file mode 100644
index d744ae9604..0000000000
--- a/testsuite/tests/ghc-regress/rts/libfoo_script_T2615.so
+++ /dev/null
@@ -1,5 +0,0 @@
-/* GNU ld script
- Use the shared library, but some functions are only in
- the static library, so try that secondarily. */
-OUTPUT_FORMAT(elf64-x86-64)
-GROUP ( libfoo_T2615.so )
diff --git a/testsuite/tests/ghc-regress/rts/outofmem.hs b/testsuite/tests/ghc-regress/rts/outofmem.hs
deleted file mode 100644
index 9392ab1da0..0000000000
--- a/testsuite/tests/ghc-regress/rts/outofmem.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Main where
-import Data.Array.IO
-import Control.Monad
-main = do
- arrs <- sequence $ repeat $ (newArray_ (0,2^28) :: IO (IOUArray Int Int))
- -- larger than 2^28 causes other problems...
- print (length arrs)
diff --git a/testsuite/tests/ghc-regress/rts/outofmem.stderr b/testsuite/tests/ghc-regress/rts/outofmem.stderr
deleted file mode 100644
index 81856a7544..0000000000
--- a/testsuite/tests/ghc-regress/rts/outofmem.stderr
+++ /dev/null
@@ -1 +0,0 @@
-outofmem.exe: out of memory
diff --git a/testsuite/tests/ghc-regress/rts/outofmem.stderr-i386-apple-darwin b/testsuite/tests/ghc-regress/rts/outofmem.stderr-i386-apple-darwin
deleted file mode 100644
index 929879a922..0000000000
--- a/testsuite/tests/ghc-regress/rts/outofmem.stderr-i386-apple-darwin
+++ /dev/null
@@ -1 +0,0 @@
-outofmem: memory allocation failed (requested 1074790400 bytes)
diff --git a/testsuite/tests/ghc-regress/rts/outofmem.stderr-i386-unknown-mingw32 b/testsuite/tests/ghc-regress/rts/outofmem.stderr-i386-unknown-mingw32
deleted file mode 100644
index 81856a7544..0000000000
--- a/testsuite/tests/ghc-regress/rts/outofmem.stderr-i386-unknown-mingw32
+++ /dev/null
@@ -1 +0,0 @@
-outofmem.exe: out of memory
diff --git a/testsuite/tests/ghc-regress/rts/outofmem.stderr-powerpc-apple-darwin b/testsuite/tests/ghc-regress/rts/outofmem.stderr-powerpc-apple-darwin
deleted file mode 100644
index 929879a922..0000000000
--- a/testsuite/tests/ghc-regress/rts/outofmem.stderr-powerpc-apple-darwin
+++ /dev/null
@@ -1 +0,0 @@
-outofmem: memory allocation failed (requested 1074790400 bytes)
diff --git a/testsuite/tests/ghc-regress/rts/outofmem.stderr-ws-32 b/testsuite/tests/ghc-regress/rts/outofmem.stderr-ws-32
deleted file mode 100644
index 6147d23e91..0000000000
--- a/testsuite/tests/ghc-regress/rts/outofmem.stderr-ws-32
+++ /dev/null
@@ -1 +0,0 @@
-outofmem: out of memory (requested 1074790400 bytes)
diff --git a/testsuite/tests/ghc-regress/rts/outofmem.stderr-ws-64 b/testsuite/tests/ghc-regress/rts/outofmem.stderr-ws-64
deleted file mode 100644
index 42a4696fcf..0000000000
--- a/testsuite/tests/ghc-regress/rts/outofmem.stderr-ws-64
+++ /dev/null
@@ -1 +0,0 @@
-outofmem: out of memory (requested 2148532224 bytes)
diff --git a/testsuite/tests/ghc-regress/rts/outofmem.stdout b/testsuite/tests/ghc-regress/rts/outofmem.stdout
deleted file mode 100644
index 63a3a6988c..0000000000
--- a/testsuite/tests/ghc-regress/rts/outofmem.stdout
+++ /dev/null
@@ -1 +0,0 @@
-exit(1)
diff --git a/testsuite/tests/ghc-regress/rts/outofmem2.hs b/testsuite/tests/ghc-regress/rts/outofmem2.hs
deleted file mode 100644
index b206d7147e..0000000000
--- a/testsuite/tests/ghc-regress/rts/outofmem2.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- Test for bug #1791
-import Control.Monad.ST
-import Data.Array.ST
-import Data.Array.MArray
-import Data.Array.Base(unsafeNewArray_)
-main = print (runST (do make_empty_table >> return ()))
-
-make_empty_table:: ST s (STArray s (Int, Int) (Maybe ep))
-make_empty_table =
- unsafeNewArray_ ((1, 1), (16384, 16384))
diff --git a/testsuite/tests/ghc-regress/rts/outofmem2.stderr b/testsuite/tests/ghc-regress/rts/outofmem2.stderr
deleted file mode 100644
index 5fa8ba00e7..0000000000
--- a/testsuite/tests/ghc-regress/rts/outofmem2.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-Heap exhausted;
-Current maximum heap size is 5242880 bytes (5 MB);
-use `+RTS -M<size>' to increase it.
diff --git a/testsuite/tests/ghc-regress/rts/outofmem2.stdout b/testsuite/tests/ghc-regress/rts/outofmem2.stdout
deleted file mode 100644
index 1acdde769d..0000000000
--- a/testsuite/tests/ghc-regress/rts/outofmem2.stdout
+++ /dev/null
@@ -1 +0,0 @@
-exit(251)
diff --git a/testsuite/tests/ghc-regress/rts/return_mem_to_os.hs b/testsuite/tests/ghc-regress/rts/return_mem_to_os.hs
deleted file mode 100644
index 242ccc3bb0..0000000000
--- a/testsuite/tests/ghc-regress/rts/return_mem_to_os.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-
-import Control.Concurrent
-import System.IO
-import System.Mem
-
-main :: IO ()
-main = do hSetBuffering stdout LineBuffering
- mapM_ doIter [1..3]
-
-doIter :: Int -> IO ()
-doIter n = do putStrLn ("Iteration " ++ show n)
- let xs = [n .. 1000000 + n]
- putStrLn ("Last: " ++ show (last xs))
- putStrLn "GC 1 start"
- performGC
- putStrLn "GC 1 done"
- putStrLn ("Head: " ++ show (head xs))
- putStrLn "GC 2 start"
- performGC
- putStrLn "GC 2 done"
-
diff --git a/testsuite/tests/ghc-regress/rts/return_mem_to_os.stdout b/testsuite/tests/ghc-regress/rts/return_mem_to_os.stdout
deleted file mode 100644
index 01ddffa89e..0000000000
--- a/testsuite/tests/ghc-regress/rts/return_mem_to_os.stdout
+++ /dev/null
@@ -1,21 +0,0 @@
-Iteration 1
-Last: 1000001
-GC 1 start
-GC 1 done
-Head: 1
-GC 2 start
-GC 2 done
-Iteration 2
-Last: 1000002
-GC 1 start
-GC 1 done
-Head: 2
-GC 2 start
-GC 2 done
-Iteration 3
-Last: 1000003
-GC 1 start
-GC 1 done
-Head: 3
-GC 2 start
-GC 2 done
diff --git a/testsuite/tests/ghc-regress/rts/rtsflags001.hs b/testsuite/tests/ghc-regress/rts/rtsflags001.hs
deleted file mode 100644
index b3549c2fe3..0000000000
--- a/testsuite/tests/ghc-regress/rts/rtsflags001.hs
+++ /dev/null
@@ -1 +0,0 @@
-main = return ()
diff --git a/testsuite/tests/ghc-regress/rts/rtsflags001.stderr-ws-32 b/testsuite/tests/ghc-regress/rts/rtsflags001.stderr-ws-32
deleted file mode 100644
index 2bdd8ab066..0000000000
--- a/testsuite/tests/ghc-regress/rts/rtsflags001.stderr-ws-32
+++ /dev/null
@@ -1 +0,0 @@
-rtsflags001: error in RTS option -H0m: size outside allowed range (4096 - 4294967295)
diff --git a/testsuite/tests/ghc-regress/rts/rtsflags001.stderr-ws-64 b/testsuite/tests/ghc-regress/rts/rtsflags001.stderr-ws-64
deleted file mode 100644
index f50a3ee22b..0000000000
--- a/testsuite/tests/ghc-regress/rts/rtsflags001.stderr-ws-64
+++ /dev/null
@@ -1 +0,0 @@
-rtsflags001: error in RTS option -H0m: size outside allowed range (4096 - 18446744073709551615)
diff --git a/testsuite/tests/ghc-regress/rts/spalign.c b/testsuite/tests/ghc-regress/rts/spalign.c
deleted file mode 100644
index 0b776e17cc..0000000000
--- a/testsuite/tests/ghc-regress/rts/spalign.c
+++ /dev/null
@@ -1,30 +0,0 @@
-#include "Rts.h"
-
-#ifdef darwin_HOST_OS
-#define STG_GLOBAL ".globl "
-#else
-#define STG_GLOBAL ".global "
-#endif
-
-#ifdef LEADING_UNDERSCORE
-#define GETESP "_getesp"
-#else
-#define GETESP "getesp"
-#endif
-
-void __dummy__(void)
-{
- __asm__ volatile (
- STG_GLOBAL GETESP "\n"
- GETESP ":\n\t"
-
-#if defined(i386_HOST_ARCH)
- "movl %%esp, %%eax\n\t"
-#elif defined(x86_64_HOST_ARCH)
- "movq %%rsp, %%rax\n\t"
-#else
-#error splign.c: not implemented for this architecture
-#endif
- "ret"
- : : );
-}
diff --git a/testsuite/tests/ghc-regress/rts/stack001.hs b/testsuite/tests/ghc-regress/rts/stack001.hs
deleted file mode 100644
index 4676e046ac..0000000000
--- a/testsuite/tests/ghc-regress/rts/stack001.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module Main where
-
-import Control.Concurrent
-import Control.Exception
-
-main = do
- -- stack will grow as we evaluate the expression, and then shrink again
- evaluate $ foldr (+) 0 [1..200000]
- threadDelay 10 -- allow stack to shrink back to its smallest size
diff --git a/testsuite/tests/ghc-regress/rts/stack002.hs b/testsuite/tests/ghc-regress/rts/stack002.hs
deleted file mode 100644
index e6c8ee8d69..0000000000
--- a/testsuite/tests/ghc-regress/rts/stack002.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-{-# LANGUAGE CPP #-}
-#include "stack001.hs"
diff --git a/testsuite/tests/ghc-regress/rts/stack003.hs b/testsuite/tests/ghc-regress/rts/stack003.hs
deleted file mode 100644
index 4b6b29fa8d..0000000000
--- a/testsuite/tests/ghc-regress/rts/stack003.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE MagicHash, UnboxedTuples #-}
-
-import GHC.Exts
-import System.Environment
-
-main = do
- [n] <- fmap (fmap read) getArgs
- case g n of
- (# a, b, c, d, e, f, g, h, i #) -> print a
-
--- a deep stack in which each frame is an unboxed tuple-return, to exercise
--- the stack underflow machinery.
-g :: Int -> (# Int,Float,Double,Int#,Float#,Double#,Int,Float,Double #)
-g 0 = (# 1, 2.0, 3.0, 1#, 2.0#, 3.0##, 1, 2.0, 3.0 #)
-g x = case g (x-1) of
- (# a, b, c, d, e, f, g, h, i #) ->
- (# a+1, b, c, d, e, f, g, h, i #)
diff --git a/testsuite/tests/ghc-regress/rts/stack003.stdout b/testsuite/tests/ghc-regress/rts/stack003.stdout
deleted file mode 100644
index 1567408305..0000000000
--- a/testsuite/tests/ghc-regress/rts/stack003.stdout
+++ /dev/null
@@ -1 +0,0 @@
-500001
diff --git a/testsuite/tests/ghc-regress/rts/testblockalloc.c b/testsuite/tests/ghc-regress/rts/testblockalloc.c
deleted file mode 100644
index 5ccc14bf59..0000000000
--- a/testsuite/tests/ghc-regress/rts/testblockalloc.c
+++ /dev/null
@@ -1,75 +0,0 @@
-#include "Rts.h"
-
-#include <stdio.h>
-
-extern bdescr *allocGroup_lock_lock(nat n);
-extern void freeGroup_lock(bdescr *p);
-
-const int ARRSIZE = 256;
-const int LOOPS = 100;
-const int MAXALLOC = ((8 * 1024 * 1024) / BLOCK_SIZE - 1);
-//const int MAXALLOC = ((64 * 1024 * 1024) / BLOCK_SIZE - 1);
-const int SEED = 0xf00f00;
-
-extern lnat mblocks_allocated;
-
-int main (int argc, char *argv[])
-{
- int i, j, b;
-
- bdescr *a[ARRSIZE];
-
- srand(SEED);
-
- hs_init(&argc, &argv);
-
- // repeatedly sweep though the array, allocating new random-sized
- // objects and deallocating the old ones.
- for (i=0; i < LOOPS; i++)
- {
- for (j=0; j < ARRSIZE; j++)
- {
- if (i > 0)
- {
- IF_DEBUG(block_alloc, debugBelch("A%d: freeing %p, %d blocks @ %p\n", j, a[j], a[j]->blocks, a[j]->start));
- freeGroup_lock(a[j]);
- DEBUG_ONLY(checkFreeListSanity());
- }
- b = (rand() % MAXALLOC) + 1;
- a[j] = allocGroup_lock(b);
- IF_DEBUG(block_alloc, debugBelch("A%d: allocated %p, %d blocks @ %p\n", j, a[j], b, a[j]->start));
- // allocating zero blocks isn't allowed
- DEBUG_ONLY(checkFreeListSanity());
- }
- }
-
- for (j=0; j < ARRSIZE; j++)
- {
- freeGroup_lock(a[j]);
- }
-
- // this time, sweep forwards allocating new blocks, and then
- // backwards deallocating them.
- for (i=0; i < LOOPS; i++)
- {
- for (j=0; j < ARRSIZE; j++)
- {
- b = (rand() % MAXALLOC) + 1;
- a[j] = allocGroup_lock(b);
- IF_DEBUG(block_alloc, debugBelch("B%d,%d: allocated %p, %d blocks @ %p\n", i, j, a[j], b, a[j]->start));
- DEBUG_ONLY(checkFreeListSanity());
- }
- for (j=ARRSIZE-1; j >= 0; j--)
- {
- IF_DEBUG(block_alloc, debugBelch("B%d,%d: freeing %p, %d blocks @ %p\n", i, j, a[j], a[j]->blocks, a[j]->start));
- freeGroup_lock(a[j]);
- DEBUG_ONLY(checkFreeListSanity());
- }
- }
-
- DEBUG_ONLY(checkFreeListSanity());
-
- hs_exit(); // will do a memory leak test
-
- exit(0);
-}
diff --git a/testsuite/tests/ghc-regress/rts/testheapalloced.c b/testsuite/tests/ghc-regress/rts/testheapalloced.c
deleted file mode 100644
index cc4dad40d4..0000000000
--- a/testsuite/tests/ghc-regress/rts/testheapalloced.c
+++ /dev/null
@@ -1,100 +0,0 @@
-#include "Rts.h"
-#include "RtsFlags.h"
-#ifdef DEBUG
-#define INLINE_HEADER
-#endif
-#include "MBlock.h"
-#ifdef DEBUG
-extern void *getFirstMBlock(void);
-extern void *getNextMBlock(void *mblock);
-#endif
-
-#include <stdio.h>
-#include <string.h>
-
-extern bdescr *allocGroup_lock_lock(nat n);
-extern void freeGroup_lock(bdescr *p);
-
-const int ARRSIZE = 2000;
-const int LOOPS = 20000;
-const int MAXALLOC = ((8 * 1024 * 1024) / BLOCK_SIZE - 1);
-//const int MAXALLOC = ((4 * 1024 * 1024) / BLOCK_SIZE - 1);
-const int SEED = 0xf00f00;
-
-extern lnat mblocks_allocated;
-
-int main (int argc, char *argv[])
-{
- int i, j, b;
-
- bdescr *a[ARRSIZE];
-
- srand(SEED);
-
- hs_init(&argc, &argv);
-
- memset(a, 0, ARRSIZE * sizeof(bdescr*));
-
- for (i=0; i < LOOPS; i++)
- {
- j = rand() % ARRSIZE;
- if (a[j]) { freeGroup_lock(a[j]); }
- a[j] = allocGroup_lock(rand() % MAXALLOC + 1);
- }
-
-#ifdef DEBUG
- {
- void *p;
- i = 0;
- for (p = getFirstMBlock(); p != NULL; p = getNextMBlock(p))
- {
- if (!HEAP_ALLOCED(p)) barf("%p",p);
- i++;
- }
- printf("%d\n", i);
- }
-#endif
-
- {
- void *p, *base;
-
- j = 0;
- base = RtsFlags.GcFlags.heapBase;
-
- for (i=0; i < LOOPS*2000; i++)
- {
- // this is for testing: generate random addresses anywhere
- // in the address space.
- //
- // 48 bits is: 0x800000000000 - 0x7fffffffffff
- // so ((StgInt)rand() >> 4) varies between -2^27 and 2^27-1.
- // and << 20 of this is a random signed 48-bit megablock address
- //
- // p = (void*)((StgWord)((StgInt)rand() >> 4) << 20);
-
- // this is for benchmarking: roughly half of these
- // addresses will be in the heap.
- p = base + (((StgWord)rand() << 10) %
- ((StgWord)ARRSIZE * MAXALLOC * BLOCK_SIZE));
-
- if (HEAP_ALLOCED(p)) {
- // printf("%p\n",p);
- j++;
- }
- }
- printf("%d\n", j);
- }
-
- printf("misses: %ld, %ld%\n", mpc_misses, mpc_misses / (LOOPS*20));
-
- for (i=0; i < ARRSIZE; i++)
- {
- if (a[i]) { freeGroup_lock(a[i]); }
- }
-
- hs_exit(); // will do a memory leak test
-
- exit(0);
-}
-
-// 48 bits is: 0x800000000000 - 0x7fffffffffff
diff --git a/testsuite/tests/ghc-regress/rts/testwsdeque.c b/testsuite/tests/ghc-regress/rts/testwsdeque.c
deleted file mode 100644
index 51aeec1ca4..0000000000
--- a/testsuite/tests/ghc-regress/rts/testwsdeque.c
+++ /dev/null
@@ -1,167 +0,0 @@
-#define THREADED_RTS
-
-#include "Rts.h"
-#include "WSDeque.h"
-#include <stdio.h>
-
-#define SCRATCH_SIZE (1024*1024)
-#define THREADS 3
-#define POP 2
-
-WSDeque *q;
-
-StgWord scratch[SCRATCH_SIZE];
-StgWord done;
-
-OSThreadId ids[THREADS];
-
-// -----------------------------------------------------------------------------
-// version of stealWSDeque() that logs its actions, for debugging
-
-#ifdef DEBUG
-
-#define BUF 128
-
-int bufs[THREADS];
-
-StgWord last_b[THREADS][BUF];
-StgWord last_t[THREADS][BUF];
-StgWord last_v[THREADS][BUF];
-
-#define CASTOP(addr,old,new) ((old) == cas(((StgPtr)addr),(old),(new)))
-
-void *
-myStealWSDeque_ (WSDeque *q, nat n)
-{
- void * stolen;
- StgWord b,t;
-
-// Can't do this on someone else's spark pool:
-// ASSERT_WSDEQUE_INVARIANTS(q);
-
- // NB. these loads must be ordered, otherwise there is a race
- // between steal and pop.
- t = q->top;
- load_load_barrier();
- b = q->bottom;
-
- // NB. b and t are unsigned; we need a signed value for the test
- // below, because it is possible that t > b during a
- // concurrent popWSQueue() operation.
- if ((long)b - (long)t <= 0 ) {
- return NULL; /* already looks empty, abort */
- }
-
- /* now access array, see pushBottom() */
- stolen = q->elements[t & q->moduloSize];
-
- /* now decide whether we have won */
- if ( !(CASTOP(&(q->top),t,t+1)) ) {
- /* lost the race, someon else has changed top in the meantime */
- return NULL;
- } /* else: OK, top has been incremented by the cas call */
-
- // debugBelch("stealWSDeque_: t=%d b=%d\n", t, b);
-
-// Can't do this on someone else's spark pool:
-// ASSERT_WSDEQUE_INVARIANTS(q);
-
- bufs[n] ++;
- if (bufs[n] == BUF) { bufs[n] = 0; }
- last_b[n][bufs[n]] = b;
- last_t[n][bufs[n]] = t;
- last_v[n][bufs[n]] = (StgWord)stolen;
- return stolen;
-}
-
-void *
-myStealWSDeque (WSDeque *q, nat n)
-{
- void *stolen;
-
- do {
- stolen = myStealWSDeque_(q,n);
- } while (stolen == NULL && !looksEmptyWSDeque(q));
-
- return stolen;
-}
-
-void dump(void)
-{
- nat n;
- nat i;
- for (n = 0; n < THREADS; n++) {
- debugBelch("\nthread %d:\n", n);
- for (i = bufs[n]; i >= stg_max(bufs[n]-20,0); i--) {
- debugBelch("%d: t=%ld b=%ld = %ld\n", i, last_t[n][i], last_b[n][i], last_v[n][i]);
- }
- }
-}
-
-#endif // DEBUG
-
-// -----------------------------------------------------------------------------
-
-void work(void *p, nat n)
-{
- StgWord val;
-
- // debugBelch("work %ld %d\n", p, n);
- val = *(StgWord *)p;
- if (val != 0) {
- fflush(stdout);
- fflush(stderr);
- barf("FAIL: %ld %d %d", p, n, val);
- }
- *(StgWord*)p = n+10;
-}
-
-void OSThreadProcAttr thief(void *info)
-{
- void *p;
- StgWord n;
- nat count = 0;
-
- n = (StgWord)info;
-
- while (!done) {
-#ifdef DEBUG
- p = myStealWSDeque(q,n);
-#else
- p = stealWSDeque(q);
-#endif
- if (p != NULL) { work(p,n+1); count++; }
- }
- debugBelch("thread %ld finished, stole %d", n, count);
-}
-
-int main(int argc, char*argv[])
-{
- int n;
- nat count = 0;
- void *p;
-
- q = newWSDeque(1024);
- done = 0;
-
- for (n=0; n < SCRATCH_SIZE; n++) {
- scratch[n] = 0;
- }
-
- for (n=0; n < THREADS; n++) {
- createOSThread(&ids[n], thief, (void*)(StgWord)n);
- }
-
- for (n=0; n < SCRATCH_SIZE; n++) {
- if (n % POP) {
- p = popWSDeque(q);
- if (p != NULL) { work(p,0); count++; }
- }
- pushWSDeque(q,&scratch[n]);
- }
-
-#ifdef DEBUG
- debugBelch("main thread finished, popped %d", count);
-#endif
- exit(0);
-}
diff --git a/testsuite/tests/ghc-regress/rts/traceEvent.hs b/testsuite/tests/ghc-regress/rts/traceEvent.hs
deleted file mode 100644
index ef641816d4..0000000000
--- a/testsuite/tests/ghc-regress/rts/traceEvent.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-import GHC.Exts
-
-main = do
- traceEvent "testing"
- traceEvent "%s" -- see #3874
diff --git a/testsuite/tests/ghc-regress/safeHaskell/Makefile b/testsuite/tests/ghc-regress/safeHaskell/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check01.hs b/testsuite/tests/ghc-regress/safeHaskell/check/Check01.hs
deleted file mode 100644
index bd018acb50..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check01.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE SafeImports #-}
-module Check01 ( main' ) where
-
-import safe Check01_B
-
-main' = do
- let n = mainM 1
- print $ n
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check01.stderr b/testsuite/tests/ghc-regress/safeHaskell/check/Check01.stderr
deleted file mode 100644
index 70722f32b8..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check01.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-[3 of 3] Compiling Check01 ( Check01.hs, Check01.o )
-
-<no location info>:
- The package (base) is required to be trusted but it isn't!
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check01_A.hs b/testsuite/tests/ghc-regress/safeHaskell/check/Check01_A.hs
deleted file mode 100644
index 8b318a5124..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check01_A.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE Trustworthy #-}
-module Check01_A (
- trace
- ) where
-
-import qualified Debug.Trace as D
-import qualified Data.ByteString.Lazy.Char8 as BS
-
--- | Allowed declasification
-trace :: String -> a -> a
-trace s = D.trace $ s ++ show a3
-
-a3 :: BS.ByteString
-a3 = BS.take 3 $ BS.repeat 'a'
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check01_B.hs b/testsuite/tests/ghc-regress/safeHaskell/check/Check01_B.hs
deleted file mode 100644
index b584e51b97..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check01_B.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE Safe #-}
-
--- Since Safe we require base package be trusted to compile
-module Check01_B where
-
-import Check01_A
-
-mainM :: Int -> Int
-mainM n = trace "Allowed Leak" $ n * 2
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check02.hs b/testsuite/tests/ghc-regress/safeHaskell/check/Check02.hs
deleted file mode 100644
index 3f15cb4ba9..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check02.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE SafeImports #-}
-module Check02 ( main' ) where
-
-import safe Check02_B
-
-main' = do
- let n = mainM 1
- print $ n
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check02.stderr b/testsuite/tests/ghc-regress/safeHaskell/check/Check02.stderr
deleted file mode 100644
index 708541b8ed..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check02.stderr
+++ /dev/null
@@ -1 +0,0 @@
-[3 of 3] Compiling Check02 ( Check02.hs, Check02.o )
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check02_A.hs b/testsuite/tests/ghc-regress/safeHaskell/check/Check02_A.hs
deleted file mode 100644
index d43dab727a..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check02_A.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE Trustworthy #-}
-module Check02_A (
- trace
- ) where
-
-import qualified Debug.Trace as D
-import qualified Data.ByteString.Lazy.Char8 as BS
-
--- | Allowed declasification
-trace :: String -> a -> a
-trace s = D.trace $ s ++ show a3
-
-a3 :: BS.ByteString
-a3 = BS.take 3 $ BS.repeat 'a'
-
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check02_B.hs b/testsuite/tests/ghc-regress/safeHaskell/check/Check02_B.hs
deleted file mode 100644
index 10d45ccfbb..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check02_B.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE Safe #-}
-
--- Since Safe we require base package be trusted to compile
-module Check02_B where
-
-import Check02_A
-
-mainM :: Int -> Int
-mainM n = trace "Allowed Leak" $ n * 2
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check03.hs b/testsuite/tests/ghc-regress/safeHaskell/check/Check03.hs
deleted file mode 100644
index e06b4f83fb..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check03.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module Check03 where
-
-import Check03_B
-
-mainN = do
- let n = mainM 1
- print $ n
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check03.stderr b/testsuite/tests/ghc-regress/safeHaskell/check/Check03.stderr
deleted file mode 100644
index 343803f6ff..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check03.stderr
+++ /dev/null
@@ -1 +0,0 @@
-[3 of 3] Compiling Check03 ( Check03.hs, Check03.o )
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check03_A.hs b/testsuite/tests/ghc-regress/safeHaskell/check/Check03_A.hs
deleted file mode 100644
index e7b8d75d03..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check03_A.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE Trustworthy #-}
-module Check03_A (
- trace
- ) where
-
-import qualified Debug.Trace as D
-import qualified Data.ByteString.Lazy.Char8 as BS
-
--- | Allowed declasification
-trace :: String -> a -> a
-trace s = D.trace $ s ++ show a3
-
-a3 :: BS.ByteString
-a3 = BS.take 3 $ BS.repeat 'a'
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check03_B.hs b/testsuite/tests/ghc-regress/safeHaskell/check/Check03_B.hs
deleted file mode 100644
index bce45af4e5..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check03_B.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE Safe #-}
-
--- Since Safe we require base package be trusted to compile
-module Check03_B where
-
-import Check03_A
-
-mainM :: Int -> Int
-mainM n = trace "Allowed Leak" $ n * 2
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check04.hs b/testsuite/tests/ghc-regress/safeHaskell/check/Check04.hs
deleted file mode 100644
index 9891de36ee..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check04.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE SafeImports #-}
-module Main ( main ) where
-
-import Check04_1
-
-main = main'
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check04.stderr b/testsuite/tests/ghc-regress/safeHaskell/check/Check04.stderr
deleted file mode 100644
index ec3bdb1585..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check04.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-[4 of 4] Compiling Main ( Check04.hs, Check04.o )
-Linking Check04 ...
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check04_1.hs b/testsuite/tests/ghc-regress/safeHaskell/check/Check04_1.hs
deleted file mode 100644
index e823c889d6..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check04_1.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE SafeImports #-}
-module Check04_1 ( main' ) where
-
-import safe Check04_B
-
-main' = do
- let n = mainM 1
- print $ n
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check04_A.hs b/testsuite/tests/ghc-regress/safeHaskell/check/Check04_A.hs
deleted file mode 100644
index 3f6b5f00e9..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check04_A.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE Trustworthy #-}
-module Check04_A (
- trace
- ) where
-
-import qualified Debug.Trace as D
-import qualified Data.ByteString.Lazy.Char8 as BS
-
--- | Allowed declasification
-trace :: String -> a -> a
-trace s = D.trace $ s ++ show a3
-
-a3 :: BS.ByteString
-a3 = BS.take 3 $ BS.repeat 'a'
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Check04_B.hs b/testsuite/tests/ghc-regress/safeHaskell/check/Check04_B.hs
deleted file mode 100644
index 5280c51fad..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Check04_B.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE Safe #-}
-
--- Since Safe we require base package be trusted to compile
-module Check04_B where
-
-import Check04_A
-
-mainM :: Int -> Int
-mainM n = trace "Allowed Leak" $ n * 2
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/CheckA.hs b/testsuite/tests/ghc-regress/safeHaskell/check/CheckA.hs
deleted file mode 100644
index 80f9ae4ee0..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/CheckA.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE Trustworthy #-}
-module CheckA (
- trace
- ) where
-
-import qualified Debug.Trace as D
-import qualified Data.ByteString.Lazy.Char8 as BS
-
--- | Allowed declasification
-trace :: String -> a -> a
-trace s = D.trace $ s ++ show a3
-
-a3 :: BS.ByteString
-a3 = BS.take 3 $ BS.repeat 'a'
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/CheckB.hs b/testsuite/tests/ghc-regress/safeHaskell/check/CheckB.hs
deleted file mode 100644
index 7e649a1598..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/CheckB.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE Safe #-}
-
--- Since Safe we require base package be trusted to compile
-module CheckB where
-
-import CheckB_Aux
-
-mainM :: Int -> Int
-mainM n = trace "Allowed Leak" $ n * 2
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/CheckB.stderr b/testsuite/tests/ghc-regress/safeHaskell/check/CheckB.stderr
deleted file mode 100644
index f8321b3704..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/CheckB.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-[1 of 2] Compiling CheckB_Aux ( CheckB_Aux.hs, CheckB_Aux.o )
-[2 of 2] Compiling CheckB ( CheckB.hs, CheckB.o )
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/CheckB_Aux.hs b/testsuite/tests/ghc-regress/safeHaskell/check/CheckB_Aux.hs
deleted file mode 100644
index c04d5102d7..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/CheckB_Aux.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE Trustworthy #-}
-module CheckB_Aux (
- trace
- ) where
-
-import qualified Debug.Trace as D
-import qualified Data.ByteString.Lazy.Char8 as BS
-
--- | Allowed declasification
-trace :: String -> a -> a
-trace s = D.trace $ s ++ show a3
-
-a3 :: BS.ByteString
-a3 = BS.take 3 $ BS.repeat 'a'
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/Makefile b/testsuite/tests/ghc-regress/safeHaskell/check/Makefile
deleted file mode 100644
index 9ce1411567..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/all.T b/testsuite/tests/ghc-regress/safeHaskell/check/all.T
deleted file mode 100644
index 2e769ba1aa..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/all.T
+++ /dev/null
@@ -1,38 +0,0 @@
-# Just do the normal way, SafeHaskell is all in the frontend
-def f( opts ):
- opts.only_ways = ['normal']
-
-setTestOpts(f)
-
-test('CheckA', normal, compile, [''])
-test('CheckB',
- extra_clean(['CheckB_Aux.hi', 'CheckB_Aux.o']),
- multimod_compile, ['CheckB', '-trust base'])
-
-# fail as we don't trust base when compiling Check01
-test('Check01', normal, multi_compile_fail, ['Check01', [
- ('Check01_A.hs', ''),
- ('Check01_B.hs', '-trust base')
- ], ''])
-
-# suceed this time since we trust base when we compile AND use CheckB
-test('Check02', normal, multi_compile, ['Check02', [
- ('Check02_A.hs', ''),
- ('Check02_B.hs', '')
- ], '-trust base'])
-
-# suceed as while like Check01_fail we don't import CheckB as a safe
-# import this time, so don't require base trusted when used.
-test('Check03', normal, multi_compile, ['Check03', [
- ('Check03_A.hs', ''),
- ('Check03_B.hs', '-trust base')
- ], ''])
-
-# Check a slightly larger transitive program. Check01 isn't imported
-# safely by Check03 so we don't require base trused at end.
-test('Check04', normal, multi_compile, ['Check04', [
- ('Check04_A.hs', ''),
- ('Check04_B.hs', '-trust base'),
- ('Check04_1.hs', '-trust base')
- ], ''])
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafe01.hs b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafe01.hs
deleted file mode 100644
index deb0d57f8d..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafe01.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE Safe #-}
-{-# LANGUAGE NoImplicitPrelude #-}
-module ImpSafe ( MyWord ) where
-
--- While Data.Word is safe it imports trustworthy
--- modules in base, hence base needs to be trusted.
--- Note: Worthwhile giving out better error messages for cases
--- like this if I can.
-import Data.Word
-
-type MyWord = Word
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafe01.stderr b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafe01.stderr
deleted file mode 100644
index 9ca2bbe817..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafe01.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-ImpSafe01.hs:9:1:
- base:Data.Word can't be safely imported! The package (base) the module resides in isn't trusted.
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly01.hs b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly01.hs
deleted file mode 100644
index 2143d3139b..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly01.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Safe #-}
-module Main where
-
-import M_SafePkg
-
-main = do
- putStrLn $ show bigInt
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly02.hs b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly02.hs
deleted file mode 100644
index 27281b9cce..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly02.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Safe #-}
-module Main where
-
-import M_SafePkg2
-
-main = do
- putStrLn $ show bigInt
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly03.hs b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly03.hs
deleted file mode 100644
index d09e39937d..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly03.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Safe #-}
-module Main where
-
-import M_SafePkg3
-
-main = do
- putStrLn $ show bigInt
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly03.stderr b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly03.stderr
deleted file mode 100644
index bc6eecffee..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/ImpSafeOnly03.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-ImpSafeOnly03.hs:4:1:
- safePkg01-1.0:M_SafePkg3 can't be safely imported! The package (safePkg01-1.0) the module resides in isn't trusted.
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg.hs b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg.hs
deleted file mode 100644
index 14c21132e7..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE Safe #-}
-module M_SafePkg where
-
-bigInt :: Int
-bigInt = 9
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg2.hs b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg2.hs
deleted file mode 100644
index 74c263f61d..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg2.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE Trustworthy #-}
-module M_SafePkg2 where
-
-bigInt :: Int
-bigInt = 9
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg3.hs b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg3.hs
deleted file mode 100644
index 67714c4731..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg3.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Safe #-}
-module M_SafePkg3 where
-
-import qualified M_SafePkg2 as M2
-
-bigInt :: Int
-bigInt = M2.bigInt
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg4.hs b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg4.hs
deleted file mode 100644
index 52367b113b..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/M_SafePkg4.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE Safe #-}
-module M_SafePkg4 where
-
-import qualified M_SafePkg3 as M3
-import Data.Word
-
-bigInt :: Int
-bigInt = M3.bigInt
-
-type MyWord = Word
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/Makefile b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/Makefile
deleted file mode 100644
index 1c979a14d5..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/Makefile
+++ /dev/null
@@ -1,46 +0,0 @@
-TOP=../../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-clean:
- rm -rf setup a.out
- rm -rf dist
- find . -name "*.o" | xargs rm -f
- find . -name "*.hi" | xargs rm -f
- rm -rf local.db
- rm -rf install
-
-# We use the global package database as there's no easy way to tell
-# ghc-pkg (via Cabal) to use one in ., and the global one at least
-# won't affect the installed GHC and is more likely to work
-
-PREFIX := $(abspath install)
-$(eval $(call canonicalise,PREFIX))
-
-PKGCONF = local.db
-LGHC_PKG = '$(GHC_PKG)' --no-user-package-conf -f '$(PKGCONF)'
-
-safePkg01:
- '$(MAKE)' clean
- '$(TEST_HC)' --make -o setup Setup.hs -v0
-
- '$(GHC_PKG)' init local.db
- ./setup configure -v0 --prefix='$(PREFIX)' --with-compiler='$(TEST_HC)' --ghc-options='$(TEST_HC_OPTS) -trust base' --with-hc-pkg='$(GHC_PKG)' --package-db='$(PKGCONF)' $(PROF)
- ./setup build -v0
- ./setup copy -v0
- ./setup register --inplace -v0
- $(LGHC_PKG) list
- $(LGHC_PKG) field safePkg01-1.0 trusted
- echo
- echo 'M_SafePkg'
- '$(TEST_HC)' --show-iface dist/build/M_SafePkg.hi | grep -E '^package dependencies:|^trusted:|^require own pkg trusted:'
- echo
- echo 'M_SafePkg2'
- '$(TEST_HC)' --show-iface dist/build/M_SafePkg2.hi | grep -E '^package dependencies:|^trusted:|^require own pkg trusted:'
- echo
- echo 'M_SafePkg3'
- '$(TEST_HC)' --show-iface dist/build/M_SafePkg3.hi | grep -E '^package dependencies:|^trusted:|^require own pkg trusted:'
- echo
- echo 'M_SafePkg4'
- '$(TEST_HC)' --show-iface dist/build/M_SafePkg4.hi | grep -E '^package dependencies:|^trusted:|^require own pkg trusted:'
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/Setup.hs b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/Setup.hs
deleted file mode 100644
index 6479cb1c16..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/Setup.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-import Distribution.Simple
-
-main = defaultMain
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/all.T b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/all.T
deleted file mode 100644
index bdbdc4c56d..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/all.T
+++ /dev/null
@@ -1,24 +0,0 @@
-# Just do the normal way, SafeHaskell is all in the frontend
-def f( opts ):
- opts.only_ways = ['normal']
-
-setTestOpts(f)
-
-if config.have_profiling:
- prof = '--enable-library-profiling'
-else:
- prof = ''
-
-test('safePkg01',
- [normal, alone],
- run_command,
- ['$MAKE -s --no-print-directory safePkg01 PROF=' + prof])
-
-test('ImpSafe01', normal, compile_fail, [''])
-
-test('ImpSafeOnly01', [normal, alone], compile, ['-package-conf local.db -trust base'])
-
-test('ImpSafeOnly02', [normal, alone], compile, ['-package-conf local.db -trust base -trust safePkg01'])
-
-test('ImpSafeOnly03', [normal, alone], compile_fail, ['-package-conf local.db -trust base'])
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/p.cabal b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/p.cabal
deleted file mode 100644
index f6d84b5f8a..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/p.cabal
+++ /dev/null
@@ -1,15 +0,0 @@
-Name: safePkg01
-Version: 1.0
-Description: SafeHaskell Test Package
-License: BSD3
-Build-Type: Simple
-
-Library {
- Build-Depends: base >= 4
- Exposed-Modules:
- M_SafePkg
- M_SafePkg2
- M_SafePkg3
- M_SafePkg4
-}
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/safePkg01.stdout b/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/safePkg01.stdout
deleted file mode 100644
index c1a5642c17..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/check/pkg01/safePkg01.stdout
+++ /dev/null
@@ -1,24 +0,0 @@
-local.db:
- safePkg01-1.0
-
-trusted: False
-
-M_SafePkg
-package dependencies: base* ghc-prim integer-gmp
-trusted: safe
-require own pkg trusted: False
-
-M_SafePkg2
-package dependencies: base ghc-prim integer-gmp
-trusted: trustworthy
-require own pkg trusted: False
-
-M_SafePkg3
-package dependencies: base* ghc-prim integer-gmp
-trusted: safe
-require own pkg trusted: True
-
-M_SafePkg4
-package dependencies: base* ghc-prim integer-gmp
-trusted: safe
-require own pkg trusted: True
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/Flags01.hs b/testsuite/tests/ghc-regress/safeHaskell/flags/Flags01.hs
deleted file mode 100644
index 0e1d120a81..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/Flags01.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE CPP #-}
-
--- | CPP should still be allowed
-module Main where
-
-#include "Flags01_A.cpp"
-
-#define mainn main=putStrLn str
-
-mainn
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/Flags01_A.cpp b/testsuite/tests/ghc-regress/safeHaskell/flags/Flags01_A.cpp
deleted file mode 100644
index 9170664236..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/Flags01_A.cpp
+++ /dev/null
@@ -1,3 +0,0 @@
-str :: String
-str = "Hello World"
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/Flags02.hs b/testsuite/tests/ghc-regress/safeHaskell/flags/Flags02.hs
deleted file mode 100644
index 525064dedf..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/Flags02.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# OPTIONS_GHC -pgmlc pgmlc, -pgmdll pgmdll, -I., -L., -Uggg, -Dggg, -with-rtsopts full #-}
-
--- | These are all flags that should be allowed
-module Flags02 where
-
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/Makefile b/testsuite/tests/ghc-regress/safeHaskell/flags/Makefile
deleted file mode 100644
index 9ce1411567..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags01.hs b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags01.hs
deleted file mode 100644
index f5790eba64..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags01.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Safe #-}
-
--- | Basic test to see if Safe flags compiles
-module SafeFlags01 where
-
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags02.hs b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags02.hs
deleted file mode 100644
index 50a1101bd4..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags02.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Trustworthy #-}
-
--- | Basic test to see if Safe flags compiles
-module SafeFlags02 where
-
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags03.hs b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags03.hs
deleted file mode 100644
index ea83a06210..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags03.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE SafeImports #-}
-
--- | Basic test to see if Safe flags compiles
-module SafeFlags03 where
-
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags04.hs b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags04.hs
deleted file mode 100644
index b966eba1a0..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags04.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE SafeLanguage #-}
-
--- | Basic test to see if Safe flags compiles
-module SafeFlags04 where
-
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags04.stderr b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags04.stderr
deleted file mode 100644
index 2a550f25a1..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags04.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-SafeFlags04.hs:1:14: Unsupported extension: SafeLanguage
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags05.hs b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags05.hs
deleted file mode 100644
index 0f316d475b..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags05.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Safe, SafeImports #-}
-
--- | Basic test to see if Safe flags compiles
-module SafeFlags05 where
-
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags06.hs b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags06.hs
deleted file mode 100644
index 81fd3257ae..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags06.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Trustworthy, SafeImports #-}
-
--- | Basic test to see if Safe flags compiles
-module SafeFlags06 where
-
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags07.hs b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags07.hs
deleted file mode 100644
index 0339fe362f..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags07.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE SafeLanguage, SafeImports #-}
-
--- | Basic test to see if Safe flags compiles
-module SafeFlags07 where
-
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags07.stderr b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags07.stderr
deleted file mode 100644
index 3c3317f20c..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags07.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-SafeFlags07.hs:1:14: Unsupported extension: SafeLanguage
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags08.hs b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags08.hs
deleted file mode 100644
index 445e591b1e..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags08.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE SafeLanguage, Trustworthy #-}
-
--- | Basic test to see if Safe flags compiles
-module SafeFlags08 where
-
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags08.stderr b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags08.stderr
deleted file mode 100644
index e72e6e459f..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags08.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-SafeFlags08.hs:1:14: Unsupported extension: SafeLanguage
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags09.hs b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags09.hs
deleted file mode 100644
index d03b0dacbf..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags09.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE SafeLanguage, Safe #-}
-
--- | Basic test to see if Safe flags compiles
-module SafeFlags09 where
-
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags09.stderr b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags09.stderr
deleted file mode 100644
index 2bc5aed21c..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags09.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-SafeFlags09.hs:1:14: Unsupported extension: SafeLanguage
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags10.hs b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags10.hs
deleted file mode 100644
index 43ba5c81cd..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags10.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Safe, Trustworthy #-}
-
--- | Basic test to see if Safe flags compiles
-module SafeFlags10 where
-
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags10.stderr b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags10.stderr
deleted file mode 100644
index 86346b77fe..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags10.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-ghc-stage2: SafeFlags10.hs:1:20-30: Incompatible Safe Haskell flags! (Safe, Trustworthy)
-Usage: For basic information, try the `--help' option.
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags11.hs b/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags11.hs
deleted file mode 100644
index e90b105dde..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/SafeFlags11.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE Safe #-}
-{-# LANGUAGE Safe #-}
-
--- | Basic test to see if Safe flags compiles
-module SafeFlags11 where
-
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/flags/all.T b/testsuite/tests/ghc-regress/safeHaskell/flags/all.T
deleted file mode 100644
index 7848b8328d..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/flags/all.T
+++ /dev/null
@@ -1,29 +0,0 @@
-# Just do the normal way, SafeHaskell is all in the frontend
-def f( opts ):
- opts.only_ways = ['normal']
-
-setTestOpts(f)
-
-test('SafeFlags01', normal, compile, ['-trust base'])
-test('SafeFlags02', normal, compile, [''])
-test('SafeFlags03', normal, compile, [''])
-
-# no longer support a SafeLanguage flag, so expect fail for them.
-test('SafeFlags04', normal, compile_fail, ['-trust base'])
-
-test('SafeFlags05', normal, compile, ['-trust base'])
-test('SafeFlags06', normal, compile, [''])
-
-# no longer support a SafeLanguage flag, so expect fail for them.
-test('SafeFlags07', normal, compile_fail, ['-trust base'])
-
-# no longer support a SafeLanguage flag, so expect fail for them.
-test('SafeFlags08', normal, compile_fail, ['-trust base'])
-test('SafeFlags09', normal, compile_fail, [''])
-
-test('SafeFlags10', normal, compile_fail, [''])
-test('SafeFlags11', normal, compile, ['-trust base'])
-
-test('Flags01', normal, compile, [''])
-test('Flags02', normal, compile, [''])
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/Makefile b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/Makefile
deleted file mode 100644
index 9ce1411567..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang01.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang01.hs
deleted file mode 100644
index 5920c03161..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang01.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Safe, TemplateHaskell #-}
-
--- | Test SafeLanguage disables things
-module SafeLang01 where
-
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang01.stderr b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang01.stderr
deleted file mode 100644
index 18320eb727..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang01.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-SafeLang01.hs:1:20:
- Warning: XTemplateHaskell is not allowed in Safe Haskell; ignoring XTemplateHaskell
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang02.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang02.hs
deleted file mode 100644
index 9bf1c82a09..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang02.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Safe, GeneralizedNewtypeDeriving #-}
-
--- | Test SafeLanguage disables things
-module SafeLang02 where
-
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang02.stderr b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang02.stderr
deleted file mode 100644
index 6e3546968b..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang02.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-<no location info>:
- Warning: -XGeneralizedNewtypeDeriving is not allowed in Safe Haskell; ignoring -XGeneralizedNewtypeDeriving
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang03.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang03.hs
deleted file mode 100644
index 4f3bce7e0a..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang03.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE Safe #-}
-{-# OPTIONS_GHC -fenable-rewrite-rules #-}
-
--- | Test SafeLanguage disables things
-module SafeLang03 where
-
-{-# RULES "f" f = undefined #-}
-f :: Int
-f = 1
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang03.stderr b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang03.stderr
deleted file mode 100644
index fdcc5997d5..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang03.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-SafeLang03.hs:7:11:
- Rule "f" ignored
- User defined rules are disabled under Safe Haskell
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang04.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang04.hs
deleted file mode 100644
index a9ac3619f3..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang04.hs
+++ /dev/null
@@ -1,32 +0,0 @@
-{-# OPTIONS_GHC -fenable-rewrite-rules #-}
--- | Check rules work as normal without Safe
-module Main where
-
-data T = T1 | T2 | T3 deriving ( Eq, Ord, Show )
-
-lookupx :: Ord key => Show val => [(key,val)] -> key -> Maybe val
-lookupx [] _ = Nothing
-lookupx ((t,a):xs) t' | t == t' = Just a
- | otherwise = lookupx xs t'
-
-{-# RULES "lookupx/T" lookupx = tLookup #-}
-tLookup :: [(T,a)] -> T -> Maybe a
-tLookup [] _ = Nothing
-tLookup ((t,a):xs) t' | t /= t' = Just a
- | otherwise = tLookup xs t'
-
-space = [(T1,"a"),(T2,"b"),(T3,"c")]
-key = T3
-
-main = do
- putStrLn $ "looking for " ++ show key
- putStrLn $ "in space " ++ show space
- putStrLn $ "Found: " ++ show (fromMaybe "Not Found!" $ lookupx space key)
- let b | Just "c" <- lookupx space key = "YES"
- | otherwise = "NO"
- putStrLn $ "Rules Disabled: " ++ b
-
-fromMaybe :: a -> Maybe a -> a
-fromMaybe a Nothing = a
-fromMaybe _ (Just a) = a
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang04.stdout b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang04.stdout
deleted file mode 100644
index b80e6135bd..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang04.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-looking for T3
-in space [(T1,"a"),(T2,"b"),(T3,"c")]
-Found: "a"
-Rules Disabled: NO
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang05.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang05.hs
deleted file mode 100644
index 1dd9016152..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang05.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-{-# LANGUAGE Safe #-}
-{-# OPTIONS_GHC -fenable-rewrite-rules #-}
-
--- | Check rules are disabled under Safe
-module Main where
-
-data T = T1 | T2 | T3 deriving ( Eq, Ord, Show )
-
-lookupx :: Ord key => Show val => [(key,val)] -> key -> Maybe val
-lookupx [] _ = Nothing
-lookupx ((t,a):xs) t' | t == t' = Just a
- | otherwise = lookupx xs t'
-
-{-# RULES "lookupx/T" lookupx = tLookup #-}
-tLookup :: [(T,a)] -> T -> Maybe a
-tLookup [] _ = Nothing
-tLookup ((t,a):xs) t' | t /= t' = Just a
- | otherwise = tLookup xs t'
-
-space = [(T1,"a"),(T2,"b"),(T3,"c")]
-key = T3
-
-main = do
- putStrLn $ "looking for " ++ show key
- putStrLn $ "in space " ++ show space
- putStrLn $ "Found: " ++ show (fromMaybe "Not Found!" $ lookupx space key)
- let b | Just "c" <- lookupx space key = "YES"
- | otherwise = "NO"
- putStrLn $ "Rules Disabled: " ++ b
-
-fromMaybe :: a -> Maybe a -> a
-fromMaybe a Nothing = a
-fromMaybe _ (Just a) = a
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang05.stdout b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang05.stdout
deleted file mode 100644
index 2334866860..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang05.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-looking for T3
-in space [(T1,"a"),(T2,"b"),(T3,"c")]
-Found: "c"
-Rules Disabled: YES
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang06.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang06.hs
deleted file mode 100644
index 685846f150..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang06.hs
+++ /dev/null
@@ -1,40 +0,0 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-
--- Here we allow it to succeed (No SAFE)
-
--- | We use newtype to create an isomorphic type to Int
--- with a reversed Ord dictionary. We now use the MinList
--- API of Y1 to create a new MinList. Then we use newtype
--- deriving to convert the newtype MinList to an Int
--- MinList. This final result breaks the invariants of
--- MinList which shouldn't be possible with the exposed
--- API of Y1.
-module Main where
-
-import SafeLang06_A
-
-class IntIso t where
- intIso :: c t -> c Int
-
-instance IntIso Int where
- intIso = id
-
-newtype Down a = Down a deriving (Eq, Show, IntIso)
-
-instance Ord a => Ord (Down a) where
- compare (Down a) (Down b) = compare b a
-
-forceInt :: MinList Int -> MinList Int
-forceInt = id
-
-a1, a2 :: MinList Int
-a1 = foldl insertMinList (newMinList $ head nums) (tail nums)
-a2 = forceInt $ intIso $ foldl (\x y -> insertMinList x $ Down y) (newMinList $ Down $ head nums) (tail nums)
-
-nums :: [Int]
-nums = [1,4,0,1,-5,2,3,5,-1,2,0,0,-4,-3,9]
-
-main = do
- printIntMinList a1
- printIntMinList a2
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang06.stdout b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang06.stdout
deleted file mode 100644
index ed005737b7..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang06.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-MinList Int :: MinList 1 [9,2,5,3,2,4]
-MinList Int :: MinList 1 [-3,-4,0,0,-1,-5,0]
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang06_A.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang06_A.hs
deleted file mode 100644
index d092ae7a1a..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang06_A.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-{-# LANGUAGE Trustworthy #-}
-
--- | Here we expose a MinList API that only allows elements
--- to be inserted into a list if they are at least greater
--- than an initial element the list is created with.
-module SafeLang06_A (
- MinList,
- newMinList,
- insertMinList,
- printIntMinList
- ) where
-
-data MinList a = MinList a [a]
-
-newMinList :: Ord a => a -> MinList a
-newMinList n = MinList n []
-
-insertMinList :: Ord a => MinList a -> a -> MinList a
-insertMinList s@(MinList m xs) n | n > m = MinList m (n:xs)
- | otherwise = s
-
-printIntMinList :: MinList Int -> IO ()
-printIntMinList (MinList min xs) = putStrLn $ "MinList Int :: MinList " ++ show min ++ " " ++ show xs
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang07.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang07.hs
deleted file mode 100644
index 006cd0ea08..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang07.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-{-# LANGUAGE Safe #-}
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-
--- Here we stop it succeeding (SAFE)
-
--- | We use newtype to create an isomorphic type to Int
--- with a reversed Ord dictionary. We now use the MinList
--- API of Y1 to create a new MinList. Then we use newtype
--- deriving to convert the newtype MinList to an Int
--- MinList. This final result breaks the invariants of
--- MinList which shouldn't be possible with the exposed
--- API of Y1.
-module Main where
-
-import SafeLang07_A
-
-class IntIso t where
- intIso :: c t -> c Int
-
-instance IntIso Int where
- intIso = id
-
-newtype Down a = Down a deriving (Eq, Show, IntIso)
-
-instance Ord a => Ord (Down a) where
- compare (Down a) (Down b) = compare b a
-
-forceInt :: MinList Int -> MinList Int
-forceInt = id
-
-a1, a2 :: MinList Int
-a1 = foldl insertMinList (newMinList $ head nums) (tail nums)
-a2 = forceInt $ intIso $ foldl (\x y -> insertMinList x $ Down y) (newMinList $ Down $ head nums) (tail nums)
-
-nums :: [Int]
-nums = [1,4,0,1,-5,2,3,5,-1,2,0,0,-4,-3,9]
-
-main = do
- printIntMinList a1
- printIntMinList a2
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang07.stderr b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang07.stderr
deleted file mode 100644
index 1218b29a6d..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang07.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-<no location info>:
- Warning: -XGeneralizedNewtypeDeriving is not allowed in Safe Haskell; ignoring -XGeneralizedNewtypeDeriving
-
-SafeLang07.hs:15:1:
- Failed to load interface for `SafeLang07_A'
- Use -v to see a list of the files searched for.
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang07_A.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang07_A.hs
deleted file mode 100644
index 6ef49d5946..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang07_A.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-{-# LANGUAGE Trustworthy #-}
-
--- | Here we expose a MinList API that only allows elements
--- to be inserted into a list if they are at least greater
--- than an initial element the list is created with.
-module SafeLang07_A (
- MinList,
- newMinList,
- insertMinList,
- printIntMinList
- ) where
-
-data MinList a = MinList a [a]
-
-newMinList :: Ord a => a -> MinList a
-newMinList n = MinList n []
-
-insertMinList :: Ord a => MinList a -> a -> MinList a
-insertMinList s@(MinList m xs) n | n > m = MinList m (n:xs)
- | otherwise = s
-
-printIntMinList :: MinList Int -> IO ()
-printIntMinList (MinList min xs) = putStrLn $ "MinList Int :: MinList " ++ show min ++ " " ++ show xs
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang08.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang08.hs
deleted file mode 100644
index 7249c8d0ec..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang08.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE Safe #-}
-{-# LANGUAGE ForeignFunctionInterface #-}
-
--- | Make sure FFI must be IO type
-module Main where
-
-import Foreign.C
-
-foreign import ccall "SafeLang08_A" c_sin :: CDouble -> CDouble
-
-sinx :: Double -> Double
-sinx d = realToFrac $ c_sin $ realToFrac d
-
-x :: Double
-x = 0.8932
-
-main :: IO ()
-main = do
- putStrLn "Hello World"
- putStrLn $ "Sin of " ++ (show x) ++ " is " ++ (show $ sinx x)
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang08.stderr b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang08.stderr
deleted file mode 100644
index fc7c7fa00d..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang08.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-SafeLang08.hs:9:1:
- Unacceptable result type in foreign declaration: CDouble
- Safe Haskell is on, all FFI imports must be in the IO monad
- When checking declaration:
- foreign import ccall safe "static SafeLang08_A" c_sin
- :: CDouble -> CDouble
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang08_A.c b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang08_A.c
deleted file mode 100644
index d77ebad560..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang08_A.c
+++ /dev/null
@@ -1,6 +0,0 @@
-double sinyy (double d) {
- double (*y)(double) = 0x0;
- return y(d);
-}
-
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09.hs
deleted file mode 100644
index 4e20f177bf..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module Main where
-
-import SafeLang09_A -- trusted lib
-import SafeLang09_B -- untrusted plugin
-
-main = do
- let r = res [(1::Int)]
- putStrLn $ "Result: " ++ show r
- putStrLn $ "Result: " ++ show function
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09.stderr b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09.stderr
deleted file mode 100644
index 27d951e959..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09.stderr
+++ /dev/null
@@ -1 +0,0 @@
-SafeLang09: This curry is poisoned!
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09_A.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09_A.hs
deleted file mode 100644
index 129c2c4b56..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09_A.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE FlexibleInstances #-}
-
--- | Trusted library that unsafe plugins can use
-module SafeLang09_A where
-
-class Pos a where
- res :: a -> Bool
-
--- Any call to res with a list in out TCB
--- should use this method and never a more
--- specific one provided by an untrusted module
-instance Pos [a] where
- res _ = True
-
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09_B.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09_B.hs
deleted file mode 100644
index 76e0fe5a1c..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang09_B.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE OverlappingInstances #-}
-
--- Untrusted plugin! Don't wan't it changing behaviour of our
--- trusted code
-module SafeLang09_B where
-
-import SafeLang09_A
-
-instance Pos a where
- res _ = False
-
-instance Pos [Int] where
- res _ = error "This curry is poisoned!"
-
-function :: Int
-function = 3
-
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10.hs
deleted file mode 100644
index ff5c168cff..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE SafeImports #-}
-module Main where
-
-import safe SafeLang10_A -- trusted lib
-import safe SafeLang10_B -- untrusted plugin
-
-main = do
- let r = res [(1::Int)]
- putStrLn $ "Result: " ++ show r
- putStrLn $ "Result: " ++ show function
-
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10.stderr b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10.stderr
deleted file mode 100644
index d9a671b08d..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10.stderr
+++ /dev/null
@@ -1,20 +0,0 @@
-[1 of 3] Compiling SafeLang10_A ( SafeLang10_A.hs, SafeLang10_A.o )
-[2 of 3] Compiling SafeLang10_B ( SafeLang10_B.hs, SafeLang10_B.o )
-[3 of 3] Compiling Main ( SafeLang10.hs, SafeLang10.o )
-
-SafeLang10.hs:8:13:
- Unsafe overlapping instances for Pos [Int]
- arising from a use of `res'
- The matching instance is:
- instance [overlap ok] [safe] Pos [Int]
- -- Defined at SafeLang10_B.hs:14:10-18
- It is compiled in a Safe module and as such can only
- overlap instances from the same module, however it
- overlaps the following instances from different modules:
- instance Pos [a] -- Defined at SafeLang10_A.hs:13:10-16
- In the expression: res [(1 :: Int)]
- In an equation for `r': r = res [(1 :: Int)]
- In the expression:
- do { let r = res ...;
- putStrLn $ "Result: " ++ show r;
- putStrLn $ "Result: " ++ show function }
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10.stdout b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10.stdout
deleted file mode 100644
index 32f4c5bbce..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-[1 of 3] Compiling SafeLang10_A ( SafeLang10_A.hs, SafeLang10_A.o )
-[2 of 3] Compiling SafeLang10_B ( SafeLang10_B.hs, SafeLang10_B.o )
-[3 of 3] Compiling Main ( SafeLang10.hs, SafeLang10.o )
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10_A.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10_A.hs
deleted file mode 100644
index 7be17b5ec0..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10_A.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE Trustworthy #-}
-
--- | Trusted library that unsafe plugins can use
-module SafeLang10_A where
-
-class Pos a where
- res :: a -> Bool
-
--- Any call to res with a list in out TCB
--- should use this method and never a more
--- specific one provided by an untrusted module
-instance Pos [a] where
- res _ = True
-
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10_B.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10_B.hs
deleted file mode 100644
index 5b9954c12e..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang10_B.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE OverlappingInstances #-}
-{-# LANGUAGE Safe #-}
-
--- Untrusted plugin! Don't wan't it changing behaviour of our
--- trusted code
-module SafeLang10_B where
-
-import SafeLang10_A
-
-instance Pos a where
- res _ = False
-
-instance Pos [Int] where
- res _ = error "This curry is poisoned!"
-
-function :: Int
-function = 3
-
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11.hs
deleted file mode 100644
index 11b32ec57c..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module Main where
-
-import SafeLang11_A
-import SafeLang11_B
-
-$(mkSimpleClass ''A)
-
-main = do
- let b = c :: A
- putStrLn $ "I have a value of A :: " ++ show b
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11.stdout b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11.stdout
deleted file mode 100644
index 34f1bf217a..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11.stdout
+++ /dev/null
@@ -1 +0,0 @@
-I have a value of A :: A1 is secret!
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11_A.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11_A.hs
deleted file mode 100644
index 7eb818183c..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11_A.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE Safe #-}
-module SafeLang11_A ( A ) where
-
-data A = A1 | A2
-
-instance Show A where
- show A1 = "A1 is secret!"
- show A2 = "A2 is secret!"
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11_B.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11_B.hs
deleted file mode 100644
index 8d81be6abc..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang11_B.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module SafeLang11_B ( Class(..), mkSimpleClass ) where
-
-import Language.Haskell.TH
-
-class Class a where
- c :: a
-
-mkSimpleClass :: Name -> Q [Dec]
-mkSimpleClass name = do
- TyConI (DataD [] dname [] cs _) <- reify name
- ((NormalC conname []):_) <- return cs
- ClassI (ClassD [] cname [_] [] [SigD mname _]) _ <- reify ''Class
- return [InstanceD [] (AppT (ConT cname) (ConT dname)) [FunD mname
- [Clause [] (NormalB (ConE conname)) []]]]
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang12.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang12.hs
deleted file mode 100644
index 5817e54095..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang12.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE Safe #-}
-{-# LANGUAGE TemplateHaskell #-}
-module Main where
-
-import SafeLang11_A
-import SafeLang12_B
-
-$(mkSimpleClass ''A)
-
-main = do
- let b = c :: A
- putStrLn $ "I have a value of A :: " ++ show b
-
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang12.stderr b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang12.stderr
deleted file mode 100644
index 1466921b07..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang12.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-SafeLang12.hs:2:14:
- Warning: XTemplateHaskell is not allowed in Safe Haskell; ignoring XTemplateHaskell
-
-SafeLang12_B.hs:2:14:
- Warning: XTemplateHaskell is not allowed in Safe Haskell; ignoring XTemplateHaskell
-
-SafeLang12_B.hs:3:8:
- File name does not match module name:
- Saw: `SafeLang11_B'
- Expected: `SafeLang12_B'
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang12_B.hs b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang12_B.hs
deleted file mode 100644
index f6ce559448..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/SafeLang12_B.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE Safe #-}
-{-# LANGUAGE TemplateHaskell #-}
-module SafeLang11_B ( Class(..), mkSimpleClass ) where
-
-import Language.Haskell.TH
-
-class Class a where
- c :: a
-
-mkSimpleClass :: Name -> Q [Dec]
-mkSimpleClass name = do
- TyConI (DataD [] dname [] cs _) <- reify name
- ((NormalC conname []):_) <- return cs
- ClassI (ClassD [] cname [_] [] [SigD mname _]) _ <- reify ''Class
- return [InstanceD [] (AppT (ConT cname) (ConT dname)) [FunD mname
- [Clause [] (NormalB (ConE conname)) []]]]
-
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/all.T b/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/all.T
deleted file mode 100644
index 7074c0f75c..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/safeLanguage/all.T
+++ /dev/null
@@ -1,19 +0,0 @@
-# Just do the normal way, SafeHaskell is all in the frontend
-def f( opts ):
- opts.only_ways = ['normal']
-
-setTestOpts(f)
-
-test('SafeLang01', normal, compile, ['-trust base'])
-test('SafeLang02', normal, compile, ['-trust base'])
-test('SafeLang03', normal, compile, ['-trust base'])
-test('SafeLang04', normal, compile_and_run, [''])
-test('SafeLang05', normal, compile_and_run, ['-trust base'])
-test('SafeLang06', normal, compile_and_run, [''])
-test('SafeLang07', normal, compile_fail, [''])
-test('SafeLang08', normal, compile_fail, [''])
-test('SafeLang09', exit_code(1), compile_and_run, [''])
-test('SafeLang10', normal, compile_fail, ['--make -trust base'])
-test('SafeLang11', req_interp, compile_and_run, ['--make -trust base'])
-test('SafeLang12', normal, compile_fail, ['--make -trust base'])
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport01.hs b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport01.hs
deleted file mode 100644
index ae72dd6cd3..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport01.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE Safe #-}
-module Main where
-
-import System.IO.Unsafe
-
-f :: Int
-f = unsafePerformIO $ putStrLn "What kind of swallow?" >> return 2
-
-main :: IO ()
-main = putStrLn $ "X is: " ++ show f
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport01.stderr b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport01.stderr
deleted file mode 100644
index 983e043591..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport01.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-BadImport01.hs:4:1:
- base:System.IO.Unsafe can't be safely imported! The module itself isn't safe.
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport02.hs b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport02.hs
deleted file mode 100644
index e9d5ca7577..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport02.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE StandaloneDeriving, DeriveDataTypeable #-}
-
--- | Here we used typeable to produce an illegal value
-module Main where
-
-import Data.Typeable
-
-import BadImport02_A
-
-deriving instance Typeable Nat
-
-data NInt = NInt Int deriving Show
-
-instance Typeable NInt where
- typeOf _ = typeOf (undefined::Nat)
-
-main = do
- let a = succ' $ zero
- Just n@(NInt z) = (cast a) :: Maybe NInt
- n' = NInt (-z)
- Just m = (cast n') :: Maybe Nat
-
- putStrLn $ showNat a
- putStrLn $ show n
- putStrLn $ showNat m
- return ()
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport02.stdout b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport02.stdout
deleted file mode 100644
index c0f565d07c..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport02.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-Nat 1
-NInt 1
-Nat -1
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport02_A.hs b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport02_A.hs
deleted file mode 100644
index 2ca43343eb..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport02_A.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE Trustworthy #-}
-module BadImport02_A (
- Nat, zero, succ', showNat
- ) where
-
-data Nat = NatC Int
-
-zero :: Nat
-zero = NatC 0
-
-succ' :: Nat -> Nat
-succ' (NatC n) = NatC $ n + 1
-
-showNat :: Nat -> String
-showNat (NatC n) = "Nat " ++ show n
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport03.hs b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport03.hs
deleted file mode 100644
index 835009a276..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport03.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-{-# LANGUAGE Safe #-}
-{-# LANGUAGE StandaloneDeriving, DeriveDataTypeable #-}
-
--- | Here we used typeable to produce an illegal value
--- Now using SAFE though so will fail
-module Main where
-
-import Data.Typeable
-
-import BadImport02_A
-
-deriving instance Typeable Nat
-
-data NInt = NInt Int deriving Show
-
-instance Typeable NInt where
- typeOf _ = typeOf (undefined::Nat)
-
-main = do
- let a = succ' $ zero
- Just n@(NInt z) = (cast a) :: Maybe NInt
- n' = NInt (-z)
- Just m = (cast n') :: Maybe Nat
-
- putStrLn $ showNat a
- putStrLn $ show n
- putStrLn $ showNat m
- return ()
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport03.stderr b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport03.stderr
deleted file mode 100644
index b1fcc3ca09..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/BadImport03.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-[1 of 2] Compiling BadImport02_A ( BadImport02_A.hs, BadImport02_A.o )
-[2 of 2] Compiling Main ( BadImport03.hs, BadImport03.o )
-
-BadImport03.hs:8:1:
- base:Data.Typeable can't be safely imported! The module itself isn't safe.
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep01.hs b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep01.hs
deleted file mode 100644
index 5ee1cd0288..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep01.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-module Dep01 where
-
-import Control.Monad
-import Control.Monad.ST
-import Data.STRef
-
-sumST :: Num a => [a] -> IO a
-sumST xs = unsafeSTToIO $ do
- n <- newSTRef 0
- forM_ xs $ \x -> do
- modifySTRef n (+x)
- readSTRef n
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep01.stderr b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep01.stderr
deleted file mode 100644
index a21b4861dd..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep01.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-Dep01.hs:4:1:
- Warning: In the use of `unsafeSTToIO'
- (imported from Control.Monad.ST):
- Deprecated: "Please import from Control.Monad.ST.Unsafe instead; This will be removed in the next release"
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep02.hs b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep02.hs
deleted file mode 100644
index f9dbb26064..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep02.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-module Dep02 where
-
-import Control.Monad
-import Control.Monad.ST.Lazy
-import Data.STRef.Lazy
-
-sumST :: Num a => [a] -> a
-sumST xs = runST $ do
- n <- newSTRef 0
- forM_ xs $ \x -> do
- modifySTRef n (+x)
- readSTRef n
-
-badST :: ()
-badST = runST $ unsafeIOToST $ putStrLn "Hello World"
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep02.stderr b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep02.stderr
deleted file mode 100644
index 8ae7621251..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep02.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-Dep02.hs:4:1:
- Warning: In the use of `unsafeIOToST'
- (imported from Control.Monad.ST.Lazy):
- Deprecated: "Please import from Control.Monad.ST.Lazy.Unsafe instead; This will be removed in the next release"
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep03.hs b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep03.hs
deleted file mode 100644
index b5f39affc7..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep03.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Dep03 where
-
-import Foreign
-
-bad :: IO a -> a
-bad = unsafePerformIO
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep03.stderr b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep03.stderr
deleted file mode 100644
index 51c4d0a850..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep03.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-Dep03.hs:3:1:
- Warning: In the use of `unsafePerformIO'
- (imported from Foreign):
- Deprecated: "Use System.IO.Unsafe.unsafePerformIO instead; This function will be removed in the next release"
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep04.hs b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep04.hs
deleted file mode 100644
index 5ff23ea0ad..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep04.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module Dep04 where
-
-import Foreign.Ptr
-import Foreign.ForeignPtr
-
-bad :: ForeignPtr a -> Ptr a
-bad = unsafeForeignPtrToPtr
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep04.stderr b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep04.stderr
deleted file mode 100644
index ef81bf4212..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep04.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-Dep04.hs:4:1:
- Warning: In the use of `unsafeForeignPtrToPtr'
- (imported from Foreign.ForeignPtr):
- Deprecated: "Use Foreign.ForeignPtr.Unsafe.unsafeForeignPtrToPtr instead; This function will be removed in the next release"
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep05.hs b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep05.hs
deleted file mode 100644
index da25c1a52a..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep05.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE NoMonomorphismRestriction #-}
-module Dep05 where
-
-import GHC.Arr
-
-bad1 = unsafeArray
-
-bad2 = fill
-
-bad3 = done
-
-bad4 = unsafeThawSTArray
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep05.stderr b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep05.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep05.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep06.hs b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep06.hs
deleted file mode 100644
index 0a5811d02b..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep06.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Dep06 where
-
-import GHC.Conc
-
-bad1 = unsafeIOToSTM
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep06.stderr b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep06.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep06.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep07.hs b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep07.hs
deleted file mode 100644
index 6f0df7af11..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep07.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Dep07 where
-
-import GHC.ForeignPtr
-
-bad1 = unsafeForeignPtrToPtr
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep07.stderr b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep07.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep07.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep08.hs b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep08.hs
deleted file mode 100644
index a3fbc7be61..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep08.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE NoMonomorphismRestriction #-}
-module Dep08 where
-
-import GHC.IOArray
-
-bad1 = unsafeReadIOArray
-
-bad2 = unsafeWriteIOArray
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep08.stderr b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep08.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep08.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep09.hs b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep09.hs
deleted file mode 100644
index beeb7ffe95..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep09.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Dep09 where
-
-import GHC.Ptr
-
-bad1 = castFunPtrToPtr
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep09.stderr b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep09.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep09.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep10.hs b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep10.hs
deleted file mode 100644
index 70d660ed1c..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep10.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module Dep10 where
-
-import GHC.ST
-
-bad1 = liftST
-
-bad2 = unsafeInterleaveST
-
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep10.stderr b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep10.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Dep10.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Makefile b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Makefile
deleted file mode 100644
index 9ce1411567..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/all.T b/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/all.T
deleted file mode 100644
index c985b65c3c..0000000000
--- a/testsuite/tests/ghc-regress/safeHaskell/unsafeLibs/all.T
+++ /dev/null
@@ -1,21 +0,0 @@
-# Just do the normal way, SafeHaskell is all in the frontend
-def f( opts ):
- opts.only_ways = ['normal']
-
-setTestOpts(f)
-
-test('Dep01', normal, compile, [''])
-test('Dep02', normal, compile, [''])
-test('Dep03', normal, compile, [''])
-test('Dep04', normal, compile, [''])
-test('Dep05', normal, compile, [''])
-test('Dep06', normal, compile, [''])
-test('Dep07', normal, compile, [''])
-test('Dep08', normal, compile, [''])
-test('Dep09', normal, compile, [''])
-test('Dep10', normal, compile, [''])
-
-test('BadImport01', normal, compile_fail, [''])
-test('BadImport02', normal, compile_and_run, ['--make'])
-test('BadImport03', normal, compile_fail, ['--make'])
-
diff --git a/testsuite/tests/ghc-regress/simplCore/Makefile b/testsuite/tests/ghc-regress/simplCore/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/simplCore/prog001/Makefile b/testsuite/tests/ghc-regress/simplCore/prog001/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/prog001/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/simplCore/prog001/Simpl006Help.hs b/testsuite/tests/ghc-regress/simplCore/prog001/Simpl006Help.hs
deleted file mode 100644
index 81baad3aee..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/prog001/Simpl006Help.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Simpl006Help( forever ) where
-
-forever c = sequence_ (repeat c)
diff --git a/testsuite/tests/ghc-regress/simplCore/prog001/simpl006.hs b/testsuite/tests/ghc-regress/simplCore/prog001/simpl006.hs
deleted file mode 100644
index ac38869638..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/prog001/simpl006.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- !!! This one sent 4.06 into an infinite loop
-
--- But it worked ok if Simpl006Help.forever is
--- defined in this module. I have no idea why!
-
-{-# OPTIONS -O #-}
-
-module ShouldCompile where
-
-import Control.Concurrent
-import Simpl006Help
-
-after :: Int -> IO a -> IO a
-after d c = c
-
-every :: Int -> IO a -> IO ()
-every d c = forever (after d c)
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/prog001/test.T b/testsuite/tests/ghc-regress/simplCore/prog001/test.T
deleted file mode 100644
index bfe2dcfaa3..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/prog001/test.T
+++ /dev/null
@@ -1,5 +0,0 @@
-test('simplCore.prog001',
- extra_clean(['Simpl006Help.hi', 'Simpl006Help.o',
- 'simpl006.hi', 'simpl006.o']),
- multimod_compile,
- ['simpl006', '-v0'])
diff --git a/testsuite/tests/ghc-regress/simplCore/prog002/Makefile b/testsuite/tests/ghc-regress/simplCore/prog002/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/prog002/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/simplCore/prog002/Simpl009Help.hs b/testsuite/tests/ghc-regress/simplCore/prog002/Simpl009Help.hs
deleted file mode 100644
index ac75943016..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/prog002/Simpl009Help.hs
+++ /dev/null
@@ -1,39 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables, RankNTypes #-}
-
--- Helper for simpl009.hs (see comments there)
-
-module Simpl009Help where
-
-import Control.Monad
-
-newtype Parser s a
- = Parser (forall res . (a -> [String] -> P s res) -> [String] -> P s res)
-
-data P s res
- = Symbol (s -> P s res)
- | Fail [String] [String]
- | Result res (P s res)
-
-instance Monad (Parser s) where
- return a = Parser (\fut -> fut a)
-
- Parser f >>= k =
- Parser (\fut -> f (\a -> let Parser g = k a in g fut))
-
- fail s =
- Parser (\fut exp -> Fail exp [s])
-
-instance MonadPlus (Parser s) where
- mplus = error "urk"
- mzero = Parser (\fut exp -> Fail exp [])
-
-lookAhead :: forall s. Parser s s
-lookAhead =
- Parser (\fut exp -> Symbol (\c ->
- feed c (fut c [])
- ))
- where
- feed :: forall res. s -> P s res -> P s res
- feed c (Symbol sym) = sym c
- feed c (Result res fut) = Result res (feed c fut)
- feed c p@(Fail _ _) = p
diff --git a/testsuite/tests/ghc-regress/simplCore/prog002/simpl009.hs b/testsuite/tests/ghc-regress/simplCore/prog002/simpl009.hs
deleted file mode 100644
index bac2bafbdb..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/prog002/simpl009.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-
--- This one killed GHC 5.02 with a funResultTy panic
--- The reason was that the simplifier was doing a
--- case-of-case where the result had a polymorphic type.
--- This in turn showed up because of a newtype (now
--- transparent) with a forall inside it.
---
--- It's quite hard to tickle this one, hence the two-module setup.
-
-module FormParse where
-
-import Control.Monad
-import Simpl009Help
-
-identifier :: Parser Char Char
-identifier =
- do c <- lookAhead
- guard (c == 'a')
- return c
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/prog002/test.T b/testsuite/tests/ghc-regress/simplCore/prog002/test.T
deleted file mode 100644
index 1394874e16..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/prog002/test.T
+++ /dev/null
@@ -1,5 +0,0 @@
-test('simplCore.prog002',
- extra_clean(['Simpl009Help.hi', 'Simpl009Help.o',
- 'simpl009.hi', 'simpl009.o']),
- multimod_compile,
- ['simpl009', '-v0'])
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/EvalTest.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/EvalTest.hs
deleted file mode 100644
index 8fce496ab3..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/EvalTest.hs
+++ /dev/null
@@ -1,48 +0,0 @@
--- There was a bug in 6.12 that meant that the binding
--- for 'rght' was initially determined (correctly) to be
--- strictly demanded, but the FloatOut pass made it lazy
---
--- The test compiles the program and greps for the
--- binding of 'rght' to check that it is marked strict
--- somethign like this:
--- rght [Dmd=Just S] :: EvalTest.AList a
-
-module EvalTest where
-
-import GHC.Conc
-
-data Eval a = Done a
-
-instance Monad Eval where
- return x = Done x
- Done x >>= k = k x -- Note: pattern 'Done x' makes '>>=' strict
-
-rpar :: a -> Eval a
-rpar x = x `par` return x
-
-rseq :: a -> Eval a
-rseq x = x `pseq` return x
-
-runEval :: Eval a -> a
-runEval (Done x) = x
-
-data AList a = ANil | ASing a | Append (AList a) (AList a) | AList [a]
-
-append ANil r = r
-append l ANil = l -- **
-append l r = Append l r
-
-parListTreeLike :: Integer -> Integer -> (Integer -> a) -> AList a
-parListTreeLike min max fn
- | max - min <= threshold = ASing (fn max)
- | otherwise =
- runEval $ do
- rpar rght
- rseq left
- return (left `append` rght)
- where
- mid = min + ((max - min) `quot` 2)
- left = parListTreeLike min mid fn
- rght = parListTreeLike (mid+1) max fn
-
-threshold = 1
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/EvalTest.stdout b/testsuite/tests/ghc-regress/simplCore/should_compile/EvalTest.stdout
deleted file mode 100644
index 4c7cb1c0b0..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/EvalTest.stdout
+++ /dev/null
@@ -1 +0,0 @@
- rght [Dmd=Just S] :: EvalTest.AList a
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/Makefile b/testsuite/tests/ghc-regress/simplCore/should_compile/Makefile
deleted file mode 100644
index cbf5ec24a8..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/Makefile
+++ /dev/null
@@ -1,51 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-T3055:
- $(RM) -f T3055.o T3055.hi T3055.simpl
- '$(TEST_HC)' $(TEST_HC_OPTS) -O -c T3055.hs -ddump-simpl > T3055.simpl
- grep 'I# (-28)' T3055.simpl | sed 's/.*\(I# (-28)\).*/\1/'
-
-T3772:
- $(RM) -f T3772*.hi T3772*.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T3772_A.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T3772.hs -dsuppress-uniques -ddump-simpl
-
-T4306:
- $(RM) -f T4306.hi T4306.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T4306.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) --show-iface T4306.hi | grep 'wupd ::'
-
-T4201:
- $(RM) -f T4201.hi T4201.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T4201.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) --show-iface T4201.hi | grep 'Sym'
-
-# This one looped as a result of bogus specialisation
-T4903:
- $(RM) -f T4903.hi T4903a.hi T4903a.o T4903.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T4903a.hs -dcore-lint
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T4903.hs -dcore-lint
-
-T4918:
- $(RM) -f T4918.hi T4918.o T4918a.hi T4918a.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T4918a.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O T4918.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) --show-iface T4918.hi | grep 'C#'
-
-EvalTest:
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -O EvalTest.hs -ddump-simpl -dsuppress-uniques | grep 'rght.*Dmd'
-
-T5168:
- -('$(TEST_HC)' $(TEST_HC_OPTS) -c -O T5168.hs -ddump-simpl -dsuppress-uniques | grep 'patError')
-
-# When SpecConstr works there are no STUArrays at all
-# The "-(...)" ignores the (expected) non-zero exit code from grep
-# when there are (as expected) no matches
-T4945:
- -('$(TEST_HC)' $(TEST_HC_OPTS) -c -O2 -fno-liberate-case T4945.hs -ddump-simpl -dsuppress-uniques | grep 'STUArray')
-
-# When this one works there are no 'lets' at all
-T4957:
- -('$(TEST_HC)' $(TEST_HC_OPTS) -c -O T4957.hs -ddump-simpl -dsuppress-uniques | grep 'let')
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/Simpl020_A.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/Simpl020_A.hs
deleted file mode 100644
index d7ac756b65..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/Simpl020_A.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-module Simpl020_A where
-
-class GUIValue a
-
-class GUIObject w where
- toGUIObject :: w -> ()
- cset :: GUIValue a => a -> w
-
-instance GUIValue Int
-
-class GUIObject w => HasSize w where
- width :: Int -> w
-
-class HasSize w => HasGeometry w where
- geometry :: Int -> w
-
-class GUIObject w => Window w where
-
-instance Window w => HasSize w where
- width w = geometry w
-
-instance Window w => HasGeometry w where
- geometry g = cset g
-
-instance GUIObject ()
-
-instance Window ()
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T1647.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T1647.hs
deleted file mode 100644
index b785a405d0..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T1647.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module T1647 where
-
-foo :: IO ()
-foo = putStrLn "Foo"
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T2520.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T2520.hs
deleted file mode 100644
index f0115474ea..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T2520.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- Trac #2520: a bug in the specialiser when we tried to
--- quantify over an Internal Name
-
-module Types where
-
-data Prod a b = Prod a b
-
-data Nil = Nil
-
-class ProdSel f where
- nil :: f Nil
- prod :: f x -> f y -> f (Prod x y)
-
-instance ProdSel SqlFields where
- nil = SFNil
- prod = SFProd
-
-{-# SPECIALIZE reproject :: SqlFields a -> SqlFields a #-}
-
-reproject :: ProdSel f => SqlFields a -> f a
-reproject SFNil = nil
-reproject (SFProd a b) = prod (reproject a) (reproject b)
-
-data SqlFields a where
- SFNil :: SqlFields Nil
- SFProd :: SqlFields a -> SqlFields b -> SqlFields (Prod a b)
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T3016.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T3016.hs
deleted file mode 100644
index d05bd1008d..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T3016.hs
+++ /dev/null
@@ -1,584 +0,0 @@
--- Test Trac #3016.
--- The issue here is whether it compiles in a reasonable time
--- With GHC 6.10 it took hours! After fixing the bug (which
--- was too much inlining) it went down to 30s.
-
-module T3016 where
-
-newtype F = F Integer
-data P = NZ !F !F | Z
-
-largeConsts :: [P]
-largeConsts = [
- NZ (F 0x1f8bd0b0c77369f3c5a1943c01215cad8c7018c4af1a588e6eF81c0a39e0a50db8e55bb371d956b15dbcb13ab12af532b1fc6b7ddf0a13d12dfaa76051132b84020bec72d2f265) (F 0x44a9e41f77686550649d5d124021aa477516211625bed15762a0729a0d052c71e99cdcdde7d245c0ab279cd4fd5b554d1f5f5e4ca912c0051df85de732dbc5f672c49f12215103f)
- , NZ (F 0x1717e2a5c3ee28F6db3f13b087fb3e9efbe38772ffc1f1b03e0f2bbccc016ede33153d46b7ba33618c056cb2f35eda083af75b17115e138483dc59ad83F1077a2829e20bfF5f) (F 0x0c2a90da370b1b8963dF950c975806f6de5a01e5152b4850b2ff99d1f8b0726d5d2f0bb850aba987acafc99b70c581abe9dd39e7bfa4acfb303e76738ed001dec5032359c3ad2c)
- , NZ (F 0x0d9bae2a98471270cd81eec78d6c906d5db35cdf049f56822b5910fa9b03bfbb07bff09ccec3831c4e4b04485F70a460ef8e0a88f6be4957822bf3c997f34dba2864c6cd47e0b1) (F 0x5c08664f55b7ddce2277f251725bc76ea968ef0c4e4a8522ef920d9dcd36d68704b1c7f03dd54154F741e1970c4cf3bcb055b4938ca787179aeada021e2d7795f52484cf504837)
- , NZ (F 0x68989557c872f0f3b33eaf57e55f7d5853a2b61c368ae0b602b587b6ed600856dad98d83fc0F370ff6f229b3a0aa3a5fc9ce9d05ebf7f8f531071479c643f0f914226df4a875da) (F 0x0069c79079321474fab6bc7d302eaf60ec2dde78023a2865f2d428be48c8c24fcdef0c049d2c9d6e4f67d37a00b6542813d485d3b3c04a6292513775d4f86d8a288741074d5c88a)
- , NZ (F 0x0ce80da044b946af21a69e31ac4fc1e5a42bdb8d6cf99fd54ad02087cbf414483145ec8bc2c2b05bd90db5abcb55b0d3fb7c5c9f23acb5605392e16836df34898ac0e8a244b2f42) (F 0x6f19698a2e8a07619db0cde15c261b4bb8f4a2b0332928e2c2529ad04414c7cfb84a38514fc0d6e807dc5e1ba2c35d14cc2d1756df443f407a421a96a96a9f6c945b38b51e6a3ce)
- , NZ (F 0x2d549e10fd758033c2d9c42b9581291395f196c0c235e8eeeb2c7ae1aae4b81009e50632287b9225b28c4a07be3b32136c2df76bfda3db44ec1ad3c2c75198ba88c48df3acbcf6c) (F 0x0c8433cf98b3a74bf644a38e2b1665d340e68d22b0e12725b6b152c67ea8352247b3be4c454b005362de4f74aba48083374d2d35c94e668f989c2705e86786a9ae6f4551f7098f4)
- , NZ (F 0x02707bea041e78a21de04f0d99de3767a77af119bF08ee2d2645f76517f7716bbb9c342a4025a5743c82720c932c2d7c140c3347e1585a2bbc54c9185e8005064500bdcb5b602c) (F 0x402be6d62231db6644fF204e039ac366db5c875d624d19b454e267e8661e6c1b7857ce8d9fa88b5dfa232b66b743d193ff8df776dbe191b9b488a30f28b74ce622631e0435082d)
- , NZ (F 0x0704694ba693174331f08b462effdf5fdf4248a09048a5752732794f317d797982aea4a73de08545332d7fd3e47204cc76d234178c70355fd134dfd3c09db43d984f1c5368000b7) (F 0x68c6e1741a6b6c05e0c9a7972ab61beaaf5ba808198574d76988664f6ac08f67cb8a28f39f7fbd4beee011a784f4e7720091f69ea9670e8307f52b1468ae03a1d55a9F4601b560)
- , NZ (F 0x1eea11c3d5391cd112c54b56181845a38e0e819460bf38b14224afff8e365364e2b21a6d1b1e859ac53349118cfc49ccc8f43c2e2082f846da7e7289b03e33F6301e23fd3be5b6) (F 0x501188011b45eeb4e0849a15441c48e3244b5453798223d3f8207c836fae1561a88f27b49e5d903044c70bf100be066be47f6ffadc1f93e21dd6d73e76922566128b13fc7278b78)
- , NZ (F 0x6f4028f5d3c848c11979294848d590bb60c04aaf4a755c955f0674da8d4f16061f2a2ef10af04d4ad4361a577114b3862decc1606efdaae107b97ebfb6658898F3274d5ed773bc) (F 0x24c24b6001f97364416d1ff2924e85d008d142b2de80ea133e12253c460548f2fb16514f31c6199a4471934c75441821d87c88ab4e29212d19d3e9493f8bd478c6728c32F3ce87)
- , NZ (F 0x2cdb2db5887b8d5e72c360b7aaf778dc90f3982d32cb4800d0a4d89a62716195fb4bf34ae6a9b9f85b845fd1265ea348f979553d16ad17dda326eeed5ffba79d7937926417aa87a) (F 0x6f2dff0a5a06ff421c5713002ae47a29e42e1a9537c049f8d8e2fc82232cc41fa9acb6a93069adc0dc5fdb5041dee65f972255a0174c139885cdbfa1767cef3f21fc8e20691af54)
- , NZ (F 0x62e3e472a5361e3a807e35e3a0ef747af308399ecebaea7172aaa5ecb464e237021ca06e7592241098c027a1d6170ae09610b3f2a43ef705420e62455f0a4d3c871327cd626cd49) (F 0x0c0ae9be79663ad7af9a309910ef635e6a29f43d6852073e91f33ffb825ed1e458ec59558e50aef20a2a2e764b64b6d638f05d48cc11289ec6bf34ebeb4ef07ca2d1e316e85ce1f)
- , NZ (F 0x692a88b4f4bb1fb765c852fbc801e30da715debdf38f6b6671a0f8d0f2f19eeafd5074dd3ee3877fc61aec49ac10e94abf9d575fd0c805d56781958bbb2fff32f9bac3cf217a3db) (F 0x6a12b076fd8c5c6bf6a80abb9c86b3c8a046c6f54c1803988c788e678134b1cc9ebe3d4fd1d94dbca40af830e430019022d595843133e95b25191eff98238e2f9a158ea6ff146dc)
- , NZ (F 0x12f4F60602c7275862f75b0c6a37f620ccb9ac01428f4871046ba7443c27f82ce4a20d92c7f249a9586737cbc4ffac2d26094dff3ba865275b53195d8e93776be097ae89b638e4) (F 0x357d198c192d31d0a51ab8b3171e973deb0a65434d9641640b265ccded2c66a1154d3e0d1fb78de562e98ea17014da4716027279d4043e842195d6490f7de4ef71bcee694bc95df)
- , NZ (F 0x1fa9d46086685069b0c658aecc29fc5e0720c1db18a453b475932681ab021ad7d0e8c61319c3c5eccd408caede59807f9683a344ef6248b6b7af652d844b94f469a9f097bdf7154) (F 0x69cb3584e77b331a39272407d9332ae3d756baaeae4c96d3206a82a53ec0dfbd933689521a88b7cac055af2692e8346d865b8042175098010c9f329157c314e74e40171f607c6ca)
- , NZ (F 0x4e11fb21ab6cfa37dcf0e86191b8ac3ee4fcb59d45711145026697d6071f626d42831798b470f579298298e4d0f6888ae11e8f78dc7b67f0d00f51f82dcb93bc5a26c10e0730413) (F 0x19e5a32f6382ad8ed9a8c6d309238ac01632d19b19cc05317073dc7e1297ffa011b42e3ec6ff6e3f46320d5d4593fd947F9722d0a0ba46c713c18817e12b2879546fb300cca135)
- , NZ (F 0x2af9b31ee022468cd99ade25ad532074c28bF69b9acc043253f938c6265526ee0088bee7b5ebf09cb4978ccaa26da8822de16f966a97e2af85b857aef07f3ed014e3df6692446f) (F 0x61a9192be5e230f9d3fc256320a6145ac8d15a6533d2fa28d7cf23f5e538fc84b463f6182a9b725d41c7e29fa7c4477d4302243a5fa529202a60c8f5e7e43279245F7f364c1706)
- , NZ (F 0x09893af62c3f9ef91c390ea927747e97a26ee968c48ffd8a33eacee0ffa5bec85dc9017260bf10e0f6c50a6ce5105b8fa98d03a12934cbb1c17b00a882f11b5ce476b1782f5c481) (F 0x0ebaae4919b808ee0a8c84ff691291ce5eb17b47e3fc53f703bd450862e41997964b12ee13F6a32c5d851ad4c7de72ab54b430977fb1044aad5396acfb93e2911de6bf61089909)
- , NZ (F 0x2ac7ece094487ec15863238cFe36f7d3531f7af3ea6f7bfa901426F4ff9de97edaefabdf3317bc5705f817b9ba5462cd15853b24e243891f6103cba63424154662aa511e4c884) (F 0x6460c199fd17a691d361313748c332357bf2c551eb6a34eda7ca050563dca0decfda32e24e9a521620773f23cd8c1867243971853ab5e8524257d59e7561231b0098b86dee4038b)
- , NZ (F 0x3d27d74eecc5c08ac70a331978363cda968654682a541c83e4b9eed30049eb5ce19ac1d44773a8f4eb15a9a16f658b1c55a7a8d0387a8da1e527ac43150827be69cb6a385953165) (F 0x632b43b7b47a86614cd9f563022cf5faf83e3a18289783836e7ee17624c88fda2bbd168e97adeedd2cadc36d01a699186c24172d97a5a4cabd6e92e5ee75065fd0a21560021a4c1)
- , NZ (F 0x10e0b12b928b59df4156f4947a3699ebb15eb77dd7053a4193d8d539a8208b3328741ff1f4214312cf2ac517d578b6258720e326e5e3ce6ebfabd76a33866588333aed8eaf6d2be) (F 0x5b45cac3c6960f930473dc92a59776c705f6788f6d4f9bff84ff23a27b2712d5925a6a412dc42c5771dd740e60efdba850b00409908628b21dce05206d6239b9dc17bb93867a276)
- , NZ (F 0x10f3e3d9b513c66cc5e385c5a0345724b6b12fdacff837be94e3f6c03717f1514d055df9488be6eaa7e3559f18e1af7b8ea2f9F80b51a82410b04599938403b2c0a0be25281a7a) (F 0x48e6633596ae39992abf47cfc683e1f5adfc35795630dcda7579d2805ccf95aff18caaef786f5f8ec9e4b6cfd74d0088F79cf9b9e3dfbbe22136a5F8fb89114eacde7971ef4dd)
- , NZ (F 0x449dc8767edd713b02dbb079eefa7fc8ce9fF3f993584be5f75484f4e527f3322ae9f09ad43ef3510Fb031cb4F90f2690ec6311d46d8f9a5a31989279ce0a1b56097c60b594b) (F 0x33b1c40d75365bce66ffdbF6825b2a68fa2d9542ee14604c7710c5204f8491e77d47f40f81ebc8f7ca6d55194e48c3edc742ab20f44099fb87e10774bd10e65f0ca9b102a42f40)
- , NZ (F 0x2f972908d156af47cd0f810f5f8274b1d374f48e58f103d4f4ac7548b2395639893c0f717e7a796755ec87bd72a8c20466f6a9821cc8ef7adcc8ebd4a996953e328c6Fa81ad718) (F 0x7f8d43bb33c1bd3cb05a3484a087152bee4a93894cc941240fd3611f2d7877397ba3b8e18539547c423dc26924dc1542040b15a4671ec2e72f0352924d7703f101d1cF2e3a59ed)
- , NZ (F 0x0c6fca7259742ea612b83a60099afd0e44ee6236d56938ad45235f57e7da9d2d36a18c821ebc84af4f946739157c9945fc2225f0fc20b5fa2533d4422f42a8e4fd526a935ee909c) (F 0x265dba8d9490e018f8fb859625c5c664f8e877984d15f74397c8481d04574392c76467d2177eb438b0bfb8d7e898268f425a327b61acaF7263ecebc1b82be2630a8eec65e74961)
- , NZ (F 0x0804bbf283e6a01d5193Fab80a61f4317217d624a416c11781b8d51563578b9d9834b02a73ff2582796042adbbae9e79852479aba7e9a20e55ec1b0675b6934cdfd39914f3eecb) (F 0x64a61d5f7afa2331b99e53a9e7f459d3829b85c2ca77b82885e8d41f18f8811aee847c6177f88179b3df079034dabe90e36e81a37665585eaf86acb2967649e2062a76e575eb51e)
- , NZ (F 0x32b3d9e6102f41847cb6c2d9990875fd8f474fc2785a91b8aad7b2b788dba5b4f205fd45faad58f42d2a1336a7a2bc7e4baecfcb7620a429b1df916c513fb748329f9f184a2135d) (F 0x0b1d61a8233d5cab3cc6b73703f617508b93d7ab7928e8772e3b5b491bbd07637ffd13d2fa0bd1F94619430ae87d0750437820516984385383d955aa77e4baf9af86cff2eaabcf)
- , NZ (F 0x7914c149a93adbef0a2f4652bfb22e56fcaf19d6731b203b4e54f5ea5cc8178612192ff14511bb5645f1f0986ca66cb13a6e175e5ac525d56455b0dd2d65e1f12365f7318f101fa) (F 0x7e2150105e893d245964b8b67877fdfd2fb5bb9b11e18263207ab62d699a8a9ffb564fc90c54f13a01644bdc9905284e72e78ae50bb6ca0555f3332cee0F1ff815c2db743632da)
- , NZ (F 0x00f98162baa57c158fadd74a11f85c9ada738dc4297e3a8aac33a3bbe11a4033984414bf2430439fc87869d4618961c22d3c3b2d96181cdb5781d588332c36c00e73a3b8ea665f2) (F 0x3f8f2765c88a18f91f58fc4929be654c5f1f2668ce9b138c45c8130e411d4ffb42f03040b3c27d44aa55771cded9f694fc462bFe790b226b8ac322509dfb2df335baca96c194cc)
- , NZ (F 0x2ed1b863af5cc6ec631d41a0087427989b5f6fa23f059f989605e419083b4258cef955b93ca731072d40593a8021d994e0d6de20069b087587f3fd666a4e688dea1e4e595406a4c) (F 0x42be26b62e46b02c25fb998573769b0758dd00bebd5330650f7f988053450a579bb10c30ec37e01e79356b1ec72658742d9ff0f6ab42a874475e004bd2bbba8361aa52907170dbf)
- , NZ (F 0x038586a9f436a96f0e54f3fba5228e60017abc4dc4188603a8152167b64948b728238188516ecace3e03fb83d3ec13d3d8987c05bad80bd240c085aff4124ff3bdaa3228beddebf) (F 0x53516d45ff41ffd92de5a8151ec2453971cac4106393f2a3929c7513dc6a586325a324987896f846de1514e95bd9b297953d519570b5851864d2c7edf292db15a49d54843fc4cc3)
- , NZ (F 0x0a152a03190a01eadb5710587cb605c31dfb0536780638de788bd416b20424a46bec12dec2840abe593524f7118deaa8b1c4e164887914cf11eed5c3344110ad8278a7331084e85) (F 0x212f1987e1867ff743bb3c76db9e5e8ac38daf3ef4e7a28c9652c7996b5bc9fb3cde926ac225eaa015b1cc285bbee989205f40b32af5295ba1e7b676e4cd2bb514f0cccae479ebc)
- , NZ (F 0x73bf84dfFc477c8ff722e1d4e43530832903bbab606b936d2499bb7737b6bfb28bc67a8cc35977dc1ef80c9675bb5009afc5ae4b894f3b52857ed41c7ef275670a05f073aec47d) (F 0x78a5b7abb4e863130689a7bcd9ac705bacfccd966a7b8ae6d64b9750304192a957faafc82102c78a3abe3da1b788be674405b343f29624e5ead2ba09d5bfa79d42e3f7ae5332d34)
- , NZ (F 0x1138c92923ccf725ca84881af969Faa09cdd8164d8eca1acaddcbfa0bc849e99ef28e93111717fc4c101b3e2db6534b59f806888b692f014f1580afbe1ca3e448cf09b69543cc4) (F 0x73b180d7fc410beaaa8b1aa68b6c63e949487686f036b1ea152f48f19b77f8b1397814b88b1a7ce4fd3da0d66e270da1d1ac6f5e080a7920f3cd557e6c90074f39be1da3ac7a671)
- , NZ (F 0x46fd74da3aadd6141e5a94e39615c04fb9b93f306d78c8890eddb9ce9ce4d98bcbb07f8876e1659aefa6ded749004392d9baff1c102ccf2c8Fec4d154f5f758c0511953acc42ba) (F 0x7a37d404c33e6b38caa4c83a81ed44915ae00706e696e6e690753b1facb05ef63a9956aeccc50831830e7e63265fc3dcbe5951a613269cd9029b081a345630726ec6659464ab3ee)
- , NZ (F 0x110ab86448753b13e1f7bcac2208802ccc8e175dd4446288cf55eefc2d90a84fd8d3841621a49a90f32afaaeaae91da25b9c50dfac657e03eebbf6506f83580ff1b09b9c80a3d89) (F 0x50d4ea69ff2cd6458419aff177d5aa380a95cf9c4b9120c26a77ba7f3ea787e72b8d735f2083e9eef4e3e50ec29af24294d5c7cc175489514614ebf45f36a47241e4f54dcaeff35)
- , NZ (F 0x11a4f4644af9824a9fFa3882886fc08666bf7eaf9877d52f2bf625b819909f783817502f03f01754959ef989ce4c91df73b8f4bd876a8f2ba57f443b1878e3F2f0e4b239c7f0e) (F 0x1b6fc9c9b84d52b9fc1252a40db309018e42406bfdd0bd7a50f602cda7b3da428607049fafa4201d7940F261b1524798d0b0741605569141783c0b1ab7151f45f2528d539d9fd9)
- , NZ (F 0x2f60711ace1bdd6526ce0e0636ebe2b349432abad66cdeaac2a0612d003a9a6ecd6117eafa2ed852633890d6f23931c7b568affdade16d8708c4c883e27ac9ec4b33d8df02ab69b) (F 0x4dc2025aa3ec598bc7f28f10d42eb9ed52661265b5d791b5936d9f4e0ec8ab9da5b01efc2a2948128dd3aba9b59eea9805736c3F528de588ce62c4e176e6193cdf8157639d4dc3)
- , NZ (F 0x606cbaf12f6641692858e44dbe300a70017e1873b48a1cae6093b3da77e0a5e72611e759f868013c60ef358d55932b29a7f472c5a5af431a760f486dcf4af1cd96e2a81d21ace33) (F 0x20c98a6081c7ffba1e26fdcb02a171b449308325d297141395ed457a591c832c890ef464f2c7e226d7d24e582012a023d3e6cc60cd2085d19232e5a241e88747f72a92136f91cbb)
- , NZ (F 0x1cf0d9a7c117539d05b0d196664bac61d3f69d7f1f9c8d5d99e789d5bcde4cafab89be1a8ca286513f6aa24b5cbd9207730382931f23ebc4e6773e69666a155dad73f31a1b8276a) (F 0x68e994a0a3967893f2f5fd6d34014a6a417485c3777633453cf68f14525b7f912bdee1ad5e355c94500ba02ad7fa69047e48d602273e8948bff7721b52dfc7d43e685cf11364bb1)
- , NZ (F 0x64dd3887685a42a260299612de16aba7362a3a26990ca064f52940c0068dc94d1730b042de8bae85e8fc78904a05c906a18a7556042c35f9ad50b203528f575ccc7a2ef28f795f6) (F 0x6773b2b064e481bee3ce92a8910c24579223a86f7d2983a763ebaaf2964578cfd1f0c4c4866b8b968e3b736e6d81044b43b69177ce36a27b217f8cf4eeabd87f21e31b6da6f07b8)
- , NZ (F 0x18892d70cf7c7ed14c6d774d4d8fb06cfc4d88b2cb64bdc2b33bff0228fad5a5aa72fc0c29ab716482c3395e5190F37c3168d43ab6ae7a2a8fb8eb4ac352e4d3b3e452a6958907) (F 0x154387f1e6d3231df9fb4f29f9a7178fd0efc1bd46456f9938df9a9552224fd362d26ab98fbcf5f6bfbfad71cdbf4c84deb34b52f0341e5604a5b54F9cc04db98b1ebcbb4036b3)
- , NZ (F 0x02dd16a2337c17b756f1207b9e41fd4ff0c90a85eb82d3cff979347006eae0e8346bfbe10f63258166bd01091f907003c9c644fd7ce21a5e0e945e2c293a0b956919c85ad023c1f) (F 0x17b14cd98559da52338cd0b517e85e39ebd6e78c1632acc70ab07e4021bfb1dd929978380140a2cd4beab54c0651a420d82ad3e5e834b0cc54d96669f565e083a8117ae4352490a)
- , NZ (F 0x38fb0d2cf73364bb64298d3f5df997a307e7b3d577e6839970111db788269b87bdb14eb03a5304aa767c583349ea2d1451da96b38045b7d70db026ac0b4526646a2a8717521ff4f) (F 0x3780c7f465656367caabefcfd330f6ebea232ecd6a309acff73dded18f1e8286d32004658316a3e36cdd7c50a4251bf64eb232ebbcd70da553a21473b5899ff56cf87470af63d90)
- , NZ (F 0x5681aa548c1597856b5041ae597002ec0e635698e62e68a8F8d13272279d686b51d3057d25f66136e87049facba85444ee85e2804a9fcaab066ef222ecaa88ea6d05e6d72d1593) (F 0x2a8774a7c3d9534a42395cf20975f1b2371252eec136a74f21a5168d66e2eb61d40ddc37e108fd23eb185d76eceaa3210f0eb8f8e41b9870727580e7cee54552369662893e4ef86)
- , NZ (F 0x15ecd31944ec9215b045e80056682aee721adc0c80cb2e74346bfaada9eda5b1afd412a66b74c890630377f4ed013140404a999dff8f1b2d7bb97fb7c80f76c94cd1d7948cdfb10) (F 0x03c02bac8c24a2d00574534e2095a3c83e245b6cbf337adcf1f0f4c7e2bc0ecbc0f90a052323ee24068a6395342f6fd9ec31fbe0b406e0bfaa1a219e96c9d8311b75b6787617b0c)
- , NZ (F 0x3d3d6fcb01f68af98246e3f3a45d75f2e83128831e6426c8d64a50d5fb1dc7249e9b93cd292271460b5a0c3b6be84280abf850a80726b67842632f741258e61159acc78cbed27dd) (F 0x0eaf0687eb8163fc4871712bdea607f0fbf5d6db8c367db111ab3d161b952864b88e7f87cbadcb4993a382cd75f71925adc5dae1253d5ee669d53d883da2dcac57634dde5b5d1c4)
- , NZ (F 0x51ba2361e95a1fd067599de19a8ad87d9256e9497c198d031abf1535e1d22dd01ec62b07454da7509972b0803b0352da4681cfdf2d1ac376a0ab3b7100258d529ed8dc88ea8ee02) (F 0x243d5f372c356fde79e8d0166c98ea0cd5283a9e29af1b8a1203f5be0d47f56a764284599e63424c08dab89774691ddb2970fa5b5423acfc3d1037F1740130c5149620b7b012b3)
- , NZ (F 0x28b93c69dd210efda8b5afd81a077e58ad21397527a530dc7cee4588be4a1e054b6871b511a5d4e913492f47260acecfae77c2550427c44a87bbb79b9ee79b684a7167200716e41) (F 0x63fc10efbeda768e506a29b4221e3cd8875b26a9f2de6de2Ffa01362b2c6d8f1a9c28dc04bda195f778b4315ceeb6ee6471d7a87ded6f4c603a753f4284a52f94ca14486804dd0)
- , NZ (F 0x00bed73485f4261b3d520296c518ceedd73c11ac68603ea33cf7ca2375eafdfd1478713007a747827eb6bf4e52fd258e56bd47a359230cc3d540d7b257e0a29b6a14026e9953226) (F 0x492a14a9f8c79ef8e414035e564344fd70226b8858ce3712F6724fd73e1549fd5268e699f45748d1f050fc606136ef50fc59a016073cde7afb757a89230ce6b9bb41a53f3b274e)
- , NZ (F 0x1836a76659698199c2d194949d99dd213Ff4f40a754a23eb41dd88e5f392de7cc0e2a02ad18ee8f7501d0b7fbaf2a16a7b4621fc82a72b0591b0cf6349de86d167c34ffbb581d4) (F 0x200e3bc5054134518d80b46dc22b3d4101cf661e5c5677b7e5F739eacbaf35c1a9134e7af5cb2F758299a66eF02d1e64e88cc405610fF4e37661960c08178b50d814230f3de)
- , NZ (F 0x783934681e7c761f9bb135c5e27a3c894e7bbb7914b4a40d57de6b112443e08d165623d60a77464b370c599703ace3b1f403d28650b83736695d6847cdb5669769910859909dba5) (F 0x769741882de1c101ae43f26e8a042523e7040e36af8e774445eabc25f3d4ff5a68df414493e90a11528e58471fca2e192cdb3F4387bb20bdd73d157e20ab60818215706016339f)
- , NZ (F 0x255b2ca2b903ef6496823f0dcd734fcde4b9cb57f3966a7f79cb5d4f973f90a996548eb5a2af7846c016a31be3c661bc82433d18e22d89a9ea758ec6309c7fc18b9ce5f6c3abbe4) (F 0x04f2b3506de649cb774faac74d99750dfbeba6c988429d001bb7751936bda5de941b70fa1038f3c79b879e9ef3e8bb6301c57393bd664f36880125c9e2d22309566967b60326f62)
- , NZ (F 0x5ac6f875ebd8b682f1de34316e92fa838039ffb3e73e8470e044580a090f225a48cb7F027dedc4ec7a339defF2c30f1827161adfcca5194826fb831bafbd74bb4fc61ccc0bc0d) (F 0x2a450cf428f48bf7b77dbaed04c1700d5cdcaa53c6e2935e5223107433514a0c957f652fda7ed19c12aa31249cba4a90bf9aa7d5771564325c1eba786c6820b55ac852c2cac54cc)
- , NZ (F 0x0155a9df1ffb94871f2ef25785c72d0047fbe31f86167fbae322e29dc111cf7249c9c06f8867fbcbea2310450779a0c45f775c28505d35605e17758c9c19c1713c49f2e83270eed) (F 0x7df61e7124b8d4e953bc8768c13033048a18f9a8c0fc683bbe3161a3bbc4f797d1680636b2daa5f2a4c40a93eb0a6e32ccae4730d17c703ce57c089754b12e561cfcf199f216fdc)
- , NZ (F 0x44dd3e25bF21bf957bbc1b65a55dc5f3ff6322639ec398bc62f54be23f2778e12df961ba17b0d394eb3a1d8ed5eb3bcb9cd6c11d2cba7ea8c751b9bc6c33d4cee1f508e38567c3) (F 0x22f327ec62cc1edb70ddbc993d625d5c197a39677b65fa5be391dd0c5beaa9737aa60edafb79ceb8a122d9bf6886380872e2aaa7ab4b2c65460ff76094bF38a5c96815f001887c)
- , NZ (F 0x4f2d7eda83f921ec7e46ee568f880daf8580df049e4d3f50a3dcd0841c25F0867cdf149683e92bea1a0bbcf27ae4a98390cd40d1f8e812404fc35aFcdfFe4021ac57f11f48b8) (F 0x1bec80ee0e3216df2e29ecd3b80c5d750233c6b22363a0bd6f54cb18ed0ecd7d068d25424c31dbfaa59a1b4f6984a907435e4cdbe8b3d7ff3e947b2044c31F5d654f6a332a1133)
- , NZ (F 0x7e79e1fab6d3784ac788b7ab8fba45758255be0901cf1d71f2f5deb6fFd518a54ed822bb5f65bdef300301d34a776c688ca8486fde7ea857ec9b72db52ea8f904e3912fa4a6237) (F 0x721114e65e7d522a55c10eaa64a5297bb8a9bedae918d667d41d21e613b65e1646d5149accf7a9c44f16f797030f158fd331ee04a8517274d162c2d60703ee1cd5585068f18822a)
- , NZ (F 0x114736bF6eb48158891c61bb296628b28aee02ff7977d9f5908cbf3e557c2781e696ef3dc7f48ae219ee03ea0944fb4ce607fb4ab3bdc569072cc1aed1d4b8682fb6697aa415c5) (F 0x60a6090fdf19df4358d3a1de725c18d2c215f203dcaa03e28c84c52753cb735c28327028e5822ed6119b3d275b3cb96e9e62fbb93a839e40b6a1564836cffb99103e90ae3a8ca3d)
- , NZ (F 0x5102ea2acf66d3c49c23c6dcda0276179e6b7ac0cf6464b86f5e1fd5c8b6d48164788f9a40bded511b5f6181439e369820e58d74ab96176506939f9dc6fae884b8c2f45a0866409) (F 0x23F159abf795d754106a705502620bf7b666f9217d827e20e1c741b583eb570764bed6a4528951f2d4527f383193ebdf93074b98dd0955d60452cfF0511afa895e4e4ce3bd9ab)
- , NZ (F 0x698babddab4b4e33219f8a9a4089aa837dec3fc5272948de1ae100a155bc180153ef4ac68b46a674cFd512f20d240c6101dc70b6c4d3a76c581ce9e73c053ca1b8a135684b4a22) (F 0x4db158136a0448e6f82cf54aa12360c5f83a18ee721ae508b691fd39840a6b97b7d9d68d73f8762cbe4914cbec9cbde0a09a5c29ab46de87b166576da6829349bac89872f73f05b)
- , NZ (F 0x077b1989d49ad88b13dd8f63ece6c7efa57711f7277919c82f50500f4264b50F730f9a11921d45f3bd463f86Fc2bf202d6fb42e1817664bd908ecee7e9ae4604a80e86479bf88) (F 0x1712720c3a7adef8aec8091a540904934ee8b50aee584c663bf60baf7825fdcb71c590a250af7cf100aebb6b176304dd125126dfb9acb7c331d90b805a02331fdc45c3d0ab5812e)
- , NZ (F 0x158b2a619652e24d91792c128b5266f9f5ee9232c36aeb98F30435f785785c90d0a49d40cc89d4dfb84b4a22b5658696f70e232e0e62fc537438482a42f625366ef7590435406f) (F 0x449a52c0183fdd5b168796cf47be83039fc4bb3a7fbcdf10945bbbd29368b74dfd50a7d20570c43cfb52b9b6b9694cf5faa96b9d6e9939c6491c242ec4023c7f2dfcfcF3eb7f9f)
- , NZ (F 0x54af9dbf9306465c20c0536d7ec0ef73c1ed2895cad3e8dec8a48f08b63dcc3f800b5ac33e5dc7664c3ab247ce27baf2e441ad96aedd5c940a0d28fbf7e9659c2ba5ee0f769e712) (F 0x66ca236e547e7485d7cb5307140fc05a7eefa0fce6f42f217d933b0360de2b0839c8038832424f8b357e3e949fab6ad2d6a839769672caecca897506fdd775775727ade3e73fb4c)
- , NZ (F 0x56103e3d570b5b5ed9932ba2f6fd3334bd25c9825e465de792f7d388d978e1564f6b14b34d5abfb6982374eb0dfd337fd3d53c667a20aa81f7c1d30b46de9ecbb475267e70413ed) (F 0x7ea6096fc87fb1c4e6706d7180227f4e3e3abcb52bd637998ce9a55700304b242629cc131f72f41ddaa83acb2d36993dF043be976a97c0f0fc154e5f3abc648bf4010859bfd710)
- , NZ (F 0x3d5253a995635daadc4df234ab49d7eee160f7e447694252e98520e2800f65557c9c7637ceb07910d0edb53f2f09dbf0cd2616445b0156b28ed8437652b6b9ab8ab359de9935112) (F 0x33e7b552a534877f362ddd6fcec5259a35832aaF1be6b4512ea9c02b9f87b4e9d51f5157e71ef0cc3084962a67b3257eec5af925221F72572393611aa46abe67e38b4ffce146f)
- , NZ (F 0x27e4b77b434ca0a36ae39d4db1bb7fa9a9a861b35b6bffbb84f32ae2ea70eda59644a26d87b29e24e83c0e97589b933f47215486007b293e22f32ed633a4a643f111b3b3dcd32f1) (F 0x6a96ed54c661b1e6677ad3b8c78ebd0aabd88b64e0582556c00facf5e3cd4b600d6a3bf43a868219a58686a616265bF121e1d0a148Fc2c90d8654d8662a1117d1f9fc081b1a7b)
- , NZ (F 0x290b953c6146abf9a8c60e09e7b23e36326f99c38b8948e232d0bbab0aa38ed45F74e374ebecdf6ce0c226F64ce5a9fbe9a3a82bba51aa58c5179df3c00009b3303189F9b8c8) (F 0x0512d3ba2ef95f030e25a2f28ac9730065e99099456aae73de520aa3cc7f014a26c51472cbdd06d9cdd7f1e38f8ce67f386aa3ec4651072bb4e7bfbd8835a1f6bbb2280af39cdbe)
- , NZ (F 0x2875b9e0062f306f0c881d3cc493d22f7eef33e4ab45a3be8b2c85e437f85deb8bf64f9357d95140068b91aa781f41b2bda76517ea7c1300c0e0edf8b877aac7295e06a7f4d8203) (F 0x78324313517b46733cf2113ca3f668932e359ff59017a6a6ce3910065c0f9f4748cf6950334dd1a89db3ef399a700a2bc7b26da1757ab507fd1c18061ee65afb5526e1a5136e404)
- , NZ (F 0x1d44f44a85d9951122c63cb6efa9dcc290d99c332c151356c930Fa6c60069a14a957004e69579a00ed8cc29d5a21f60c3b03b6e9e198ab5931d0b7cc5c870c2604835616bc5481) (F 0x7150bb89ca1f1d5c73a22fabd16ed75b2e969971dd279f2192719b858f8daaee047164ab6770cd0a5f14dcd1e762c66840b3686833637a6a176d0694a6dba4d9ce53d1ba24b8f7c)
- , NZ (F 0x56baa15d49b215962f88b2301d23ef6fa68712762cb20aa66afae786ca293179f22b35471dcc49636b89667183da40e3e7157663200913a5f3d66809b2b64d547b652760343934a) (F 0x1c54717b14c0ce225af3b9e6b28c47730846946ddf19580527814247d6e37e97b98a82ec219e30a0b73a43989898a2154b353deb36b654befa70ceb8949bca0d04d612b5f34a53c)
- , NZ (F 0x67ad76e431a18c5403b58f7dc744dd5beb10e5e667ad02410b6641aa54e4b42ce9fc70ef4da470cb9c0c12d1174bF475e12af56ae503e12e23e98ca7c874eebadced54ddff6e41) (F 0x2879c10ca29760d2e26a04c2e2a5b0dd14F90498902b50db8fa5f9cf4ba6d4810f4e05c57129619159e2754c22e512cdc432ee6a1ab8091b6d8ea36f38e18ea7d178437d172d48)
- , NZ (F 0x5b7541796494f39659ae28bc46e94f314c5f3a848a2f317990172847c10e0bb73bdf5a0e2a0012d9fb89ebbd7c0cc54400add6d4d7fbe77ec0b3d0a20f45fa1dd8206f68944ae68) (F 0x68a16ff28e03d99a7e591d93068eFe464ebab70e28b0f0a28e3f288e3af5be60d05f91cf350eb9b6ae699a5333111d9db362c712063187cb8d870f8347800126d65d8d086a08f9)
- , NZ (F 0x01d27a4f1c6418929977db049592f66bf8abf888666d8aec9e743436094aba768c99d6d6a86f8ece035e706324c5eae82387ca29e2fbb4cd8b51b427826ca0c366f9a8196d57493) (F 0x4c8c4d22a88bbe50ddaf786ce643b40d0fc737f81507ef7ba41b9648a5fdc6f41b96e72e2f7817e4aed871448e757ec2b0bc144bdde9bcd4f76ed1d57beed5d61cbe9d9e45fa5e0)
- , NZ (F 0x1683852e112c4b5cdb14ffa703e50e88ce3f395b7f43139c0709fcd21ed4c791b3fa8a901e585e4d7d05d8c78c88533a44999253515ed80dea9cb0a23f326d40dd630ac79788793) (F 0x5d28d5a2d7c575ba725378fbc9a4fcd139d003626822fF94e9bc44ad94afc1da7faae42f6e984b5c104131581b852379434aecd53c8647a62a1993949f653e623b9ac254da2313)
- , NZ (F 0x18c9c726e1eed382c6a3745e0415579788e8ca815bf0f25409430573f8b8c54530c25992c88c86c1db00badaab3afa60a012d467bee2a759b1378204fa132b6df2c358f7341e16d) (F 0x73b0fa7564d6db6fd76ee2d2d0d997b2f61d77de1a8295e769de3522b7002cd495aa914a4c5b913bcbc11edc0e62fd5826fb3110af4e802aa6badd4eb72aee1c5d1c6ded7c9ccef)
- , NZ (F 0x2d4843ae7c1c56d4950741fdea6b6f509596aeeeae4f21f287eb5b62ed92cc9a0e61e3039efd15b7e5bfdace903bfdfd36a437b7824279f5288ceecfF190cee1d94848a5e3c2c0) (F 0x75896b160e9d7ef83536ccba5085d8976a6ce64a620b6177c343266ebc9f7b0d264F9c91f0d43bf16d841a44116f9d69256f3cc48be1a545b10a878202ccf31ee02260b6F09ae)
- , NZ (F 0x01ae1de6aab007a0f00dc72c95de7914ed07944f5327519e686914e09da9ebb485af7707c211f12ca259fdef73d6204642F9397a75f21c4d879fd930fd9ff091b627434e6F84c) (F 0x32bbd8c72afa3ccf4ac016b1551a3e6918a171a1da595f322ae151f5674756804d6739b2c41c90710aca7d2a6a79881ef339dffa343e4c1ab48f6c41a746b7e1b3ef7c8e5980480)
- , NZ (F 0x0b24e998ddeaa44b015f4ae2f02ae25922474Fd539fc27cf6bf2b98e27f366528278c697b60000fc7caeF3cf132942825d696827eb58db53804438cbc56cc09a29026eb3db4be) (F 0x05052941b9152a1a05ea86373e37ce666adb7554b0d399e2fd821a20f1d3ba0cbbaa0f0dea5f7f6a1f11ac65c546b70cf223d2f6a34676eca77e1cd6459a7d273d79968ef6956cc)
- , NZ (F 0x651181ade340c5df0a421d2460d48b9069ffdb0c94ac11596703b1316e9fd7eeb227e46c86c8b5065b6bcc4ec6a9f1201067777a9dea435ad6445ede9ac735e0a6f533358069530) (F 0x078cd1c009e525f95be2d193ae80ea522a8d2fc61d67F64afb0e8955e034fabdfb21608b71f11327d9b653bec2393ad8e38e91e90e663524aec7300c0beba213a81f8248c59b4a)
- , NZ (F 0x69624c7bf5b3a38681e098b4e3f7e64833aaf0450020faf66e2d6ddb99c6652bef468edec1b512c8b9f3ec74757db5f3961c65cb611be4f225a37bd5f5651971a366ebc47b9fa33) (F 0x4916e7f30ffd33c0a6777832e1e219c6bee11f67a255b6652c8d072d8ec01d8e7d45cef11c1553bd28bf9d8bdca0278fa4df677bf094f6357a1ac89bc82ca910a03d03859242bb2)
- , NZ (F 0x5da9eee37ba21db8b6be04b0b58abf663e8438ddd737d883df1e9cc93a413041ec827327f4543F8fd705eb9e26F586988919fa62fc52005495af5881698c1b6e20Ff9c3c638a) (F 0x4d7b03093b1fdaa6f5f68ddf09afd2a36070dc57a315e7b0f8fffd5cbc5e49e8c279d8cfff5dcf4c0e3cf23589aFadd58bd72914bcc7e8112785de148cd3d8e9f63956cb9bcF0)
- , NZ (F 0x28613f73f4cfae4e738a6b8cf69c9a57940d3ed3966de1ed3c7dc6bca3d0a653c42bcd0c51d09ae388001f40b097953218f6afb038238c831eee331ec5be08c34f1f8d55879f23d) (F 0x1788c9d6bb2f01288eccd6ac01cad207c786e901580ff66234f2cb7e11357c027ca3cf69a13Fce4ed29ad71480fd1eb2090df4fd540c27d9ceca9f78fcea01060dd53f6bda0cf7)
- , NZ (F 0x5f87e378a3bc5f76d0400de551a08b2ca6044cccd0a5231866701c0728fdebac9e7c677c479c9bea733a212cd2b23ce1692af7424cdaa353350803abdc3ea0050751f36b65ca779) (F 0x1385ba33908e1d4443c448534745e84d6816a7fb2658607e3d2ef9a85ead476229caf571db299aab746c7e25784538ee212ae262ca9eeab2ab09e585733af3a85cca3ea3cccd601)
- , NZ (F 0x3f4ca379a3213fc9532ed51ba007a9817739008276c3e53e61da3d04251bf35da01ed5d1adbd855d3e1dbfb295dba938e69f0b17410ab07951f9a2d1031ccc7cd651c9ed7199a32) (F 0x3cf0c7532005a6ac3453022a43d1e6a52cc11fa0e5a5385be9cc46a7370e337356f7b03c7f21b4f35fa45ba1ad884d51f679f0b7d22743b1024ca1a226e4868c9bbab1af29cff77)
- , NZ (F 0x01e3b895c86db8ef0621c14ad59a158b01e30a9bf6104db886f38f45eee7784d292c97f32303fa18eabb2454bf052c66cb003f9d513e11536c5902b0a43f534659695209c75f68a) (F 0x33e2262cbd9daaf0dce60fa546275Fd1a2a0f56b89b22924366434fccfd57c8b481020bb80cd561bf8c61a7ace75d8d5c42559cc6bb5bcbfb10dd7eefa507bebf60e56b88e9dcd)
- , NZ (F 0x721ea141b941ac8399d5e051f53f116566c09045c6cb68642d8c66218239679b4e4dbd7d825474d41f9e5cb7e574b17155a75cec9dd56431e917adbc536c4e828192ca284f14c6c) (F 0x6c484d6eb9e7fd962d39ccc3998c52e9713b5f6efbde7ea4558499142f49b309daa4fb48ddb21362af6c50e5005d548d1d28f864b04857fca0e456289d70135027a5f25682Fc02)
- , NZ (F 0x31d9e3a62c3b7dec60b17d43fc681c46cfaf083221fffc995fbd017991024ae87d5c2cf77ed19145b9ed8a106ae12a4a1a3ad7cb2ac23fcc48bF641aaf79c8f7c70edb79ce2764) (F 0x292c958f37c36e425a35182204c613153961c602Fd62b60a7d4315d73df9856b48b7f3cfd07dfc14827e02e52c630ef7b3abbf3e4ba4e3745e7213f94785c66e4707c15f6dee6c)
- , NZ (F 0x6000ea69b5803c7df226e62156789b55360ca862ecd8ecbe983394ff587327bc8b7902d00c9e2864c9f57d7eb6d9f18fd55fFe3f14d4495f814ef54d968660fb6f3809a79e7246) (F 0x05c3327caF35283ce4533c5f43f3a3b2bbf12c39b0e122360c0868c7878b1992e91F348aae0a5ab000805c574b0c0695ca139934999a9a9415468e6251dfc60f9abd75a0e5ab8)
- , NZ (F 0x3d42a1ff96ec08740abc0ca8bae7088aeae57afd36942b9a4f33cf8dd022db7530642c8e2f8ecc64e5fb6453220252d40e19606d49a78467f3501946f3349b5b3ea820edc271c7c) (F 0x319a99d0edc50fd488bd7c7875e8e36d78c6f54bc9b77d51d3dfcb8b2b35c73833192f04cc1f1594db83a9f4cfbf5af8cddf850cef9cbd8422d022e1532697d11b6a7184f3758bb)
- , NZ (F 0x6aa3971a90d9e66f952c380e734cda1bab3596aa87f97d15c8c6321369be8339b0c4401f6831e7427f527c742690a8fda58f53ee0896826baba334e54f550b4610a4202a0814e03) (F 0x3f9d0bf15355e3df6a1b37e76a123bcb2a20323b97c2b4362547acb8557780dae6c144f290907a3472dde27611195980b6ee936663689b8eaa776b8af5191d1420f2c2c6ffd8227)
- , NZ (F 0x0c5f09a23b75df9d6db88799e4fd38d71e8b70361d3b166759f3d54387606dfbFef4ff82cf59cFabd8e225cfa39f44d7afcaa9cb8c68168adbaff101bd305c7097990c622dbb9) (F 0x5b604c72f2098e695cb9f087405932c107350749b09822039adf7d2dd7c4046c7ee3c7949afd4b20205b0d505939a539fd8d3525ff50cf102f7178b03456a9a1778ff15536cbf7f)
- , NZ (F 0x7e3e9a256c5725fc0b7971772354bdf679f0ddcbdbf021b6205bd72da79eda6781527Fe708984d026143f7c225a65c84948fc2c279350700cb7e9444bcbe5f9d2a18fdb8f3c169) (F 0x43997f1addd5f4e571d3f89b42383f9c6a2692497ee06ea12cad3b5b771cd3ac2117e2794e5c4e4cb3f9d87f5765aa825624aa9cc725bf7e8243e44d8ead952b67ad664675b65f3)
- , NZ (F 0x10d258f6ecc4dae48f41fab159f1f64341b678e8ae081da3375e5efdaf5487347403a73f65fc34c06c2d8a67e3be7894054fF0F9b2282263c83ea13948ab338c1b2fb678c433b) (F 0x65334672941cee081f6d20b07b9491f156df9ccb4d8f9510d3c5fac868541a84e2b2201264d28c2d64f95ff2c15cac0258e61dc8fa7a91b827c0bab622e1d84b73cbed2295f8e40)
- , NZ (F 0x77fb8fad7397752454b0cf17f5b0217d7abb02f2f67f6a3ad12dcf6df2afb9c4f888fc54b01458559de4fdd590915f1f749b408c9a1b782450171d4c8ab339468b9b593283fb6e5) (F 0x21449241fb9ef0b730651b7840082ef2bbd612a34a78a40bd09a18523265899deeeac6Face83ff1f72e5d8c1f07fcf98c1832a3e09a5a8813e2494b5ef410bf3f5d49d9acda189)
- , NZ (F 0x25d046e559a2dd2b92719cf5354e220d010e625955fbd529e5d7e3f01efb07f50a9a6b9c067d4d125846811cdb5bc3f853d7dffbdcef1d19e3eec3e213e444073790b6dbe614816) (F 0x6c340b67028675cc9a446150a013078457ecaf748c0f94b39a49814b43134b4735356280479a15e96e4900987296bc492a27664cd77374554d81402a73c8968ad5fF6dcc27051b)
- , NZ (F 0x2136f41f7d1e7abdbbf569b495b39186f61ab50df469aa387ef5ce9bad7009a22f78f656725e1f63eeba311b8eb4177ea64d06ac5e28110cdcda2d057f21e98362dd98a91495ce9) (F 0x2d9b8769e80aebe1fcb9edFF1ac458cdf60e4b309ca794c27a456493812dfffc9a9e1dcec66703cec639baae49d3ab5e4f4fb6aa9330957ad611b8e56e6b00682bbc99290a61e)
- , NZ (F 0x5535ff3a04ca6b78a576c0e8bec9208ae8e8fff4d04a553bb42758597a0c1b836045b603374c12bf6a818ffda84e0de50ada7ad7bd3bda5e47b8b477b5a72cb547b78c9f9154152) (F 0x76896059e576b9766056d029373bf737fb166c5aa7a379c35dea3403c6f0a2e8148b0b6F5df29Fe674ef24ebcf3486f05ce27c1aa351bf75d84d9434d77555dcF612a8b70ef0)
- , NZ (F 0x642e435cd5bd6b14aea58e6f8403896b8ea65783b50c3da588ed3dc8ed5532e016aa3e0305d588c4b5498b09dff284054e8335ba12dcbc8f67b40958e1346b9da4c5cb904c6f4ff) (F 0x0494fde9ca0f4aaf95d5a1a8ca1b798ec08e4645f1F74dd5c97f039a678fF1e95b9e58e52facb67956d40f99cf916da9761b31dac65c8666873a91f2eb227cc5857202776cf6f)
- , NZ (F 0x55ac6ce052b50fbd956f3f6ee14eab51a4acf06b2d4722054bf0c76b3b5b4b20bde701c4fa3a6fbd775c62061589b68500e7500502f2ac73bc41fb959587468a3ed71d3cacdfa84) (F 0x6a58e5216cd7380642a64c01aa81763d8fbcf46f5bdecbf4F371fc25b1111898157a6b2eb1578d718af4704926abe58e4f0d3672d61004533ffa1eF87fd552e5ca190862fc4f8)
- , NZ (F 0x349bc5af6da8142431fb603010560f8fc555a35b8b7752745d1fce8d1dcb602bf8c98c2bb4171b7051a74ce50969aa97b5a4838e249393c0dbc9524e5bda6f89e9428f60ff8efc2) (F 0x6267576dd7c8edd83b117c2160852486c2dc35127518123cf912471fd245747b8e51f6f50235bad0b995c96251fa2f925a2ecb4f81a4068b43b8804164c61a5515caf1c9ee53587)
- , NZ (F 0x6e9814eb77878330847534c033d22eec83Fdcc9ce2e8556333fcc48388ac4997d3e7e77986902108b5a4ba4189380fd22a2562710c1b2c3d394214e13f8a8f9dea48f9e35e957c) (F 0x29896819b64296a8540dea155ebc0d800688fb305397ebe9716F12b80cbe75f761c25e8b6e42009b397599513503528177abe1e404aa01afb31bc41375b154bb78b77f83dd3fff)
- , NZ (F 0x535d792442d41050ecbc570c0cb875602324e3018043b8914f03d93ff20c772ed9c632e5206fb2f6703b16f66f93961b072826b8aaa313F95e25a6cd96e7153437cbd85408c3ff) (F 0x7386305d3d7371773699114ecf1ff03babc7db5042c58d317d320e0cecb625d2ade4f2d23acc16a8476a6e61606c97c809d2e49d0e616a399ee754c5a425f378615427fc01d395a)
- , NZ (F 0x5385d42581c0f353a16926d5c8f097a19ce85ff9d08b6f84c56561b4b767dc9475e559b11bd3cbbf7b9F4b4339ffdfbe3c78a7b8acb59333451bb044a0f201a8981cdf0aa1e6c3) (F 0x791e9421736d07b81ed3e07ae78ffda56386ed2a8746944f8e6173e54f0e9eace3799b20ef2a9191cdb0ff2caa815c8c828657ad4e70e0ea2e64020b60f5a4947dceeb47d29ebee)
- , NZ (F 0x58eeaeb1514452d0a713ae46a7b62701bc7d2155b432db0fdb1682368ec14c8e77187265e7f523292e0ed3e4bdab1f1158ca7f52230bfcc81d796f0e485d1856ed6b16c51b509d4) (F 0x0c644f089d8e0c5f941b7de53b45a2292590dd5c2726f43baa09c9b2dc7824a18b708d105f8c07a74edba44cacaafc8f76faf3d2d455b8d249d190e487f18627a5d09fc08c89c8b)
- , NZ (F 0x5dcb84a321ea4b3c7d92778e1e7407e498e855c44a406f9334af7ed65131ca0f0b28bf86ed08d5ea1e491dd558689f9d7c77b53f5bf2de7c57c863176ce495f27418c4da7ce9581) (F 0x7ad5c35ea7d5a4afd5588053b08e1d540a47f139a77b2001861ac819b8680bf8213307530eda9760e1541c2860a627b60d6badef4bae60d445774741c182e8d710f6bcaf220cc96)
- , NZ (F 0x043007021b94cf80309d066bda1f99a22939decbb3511b296279f11b24fbf6b14cdc48ffa232dcf7cc06d3cb19cf38e59c2a84d406251647d8caa985fa79a987af11b8b8acbc3f0) (F 0x3417952f30c529472fF89d90661593b653522e9bdf72b32c5dbe4aedbdb939bb6a2a315f70b05d32ccf6543378b99b2e2695ac1e85b303e1e6aa935219a1eb91b5c2d365b1b289)
- , NZ (F 0x36702a08232490315a776f982ccf1f47b54afa33d1466c8661923eab2bc6bf8ae4cbd4cf0c25eaf576b13Fa34fd7c97c738b1d0dd53a6d85682b99adefa67276b483176836161b) (F 0x4bf8be406ef048c03a831a7fa8b037c07951172081009b32c15696430b7d98213bb958eb06ea231aaee69ff40556ed419d903113ddb50e77372e944d9ce123ef7d3c60e5284faa1)
- , NZ (F 0x52a9fad224606a9f38888a293e007a31e228f9ffcda182bf59e93d6f792ccf0a99917ab38ac7321c25087af41a545c0acf17f393d6106b6d67cd314bd8aae0cacec0a599ee67930) (F 0x2a971a54ef8a526cd49427736fdcfb935e471c387243bf155fd682277de09c28a0d6169b7cca355ad81f978390adf830a81e4022a05e11badee20c737052c68f489ae514fd20433)
- , NZ (F 0x57ad7e98be74fa6d5a0721258f8d62568b4bd51713055314b44c03ec366d6f13619384cfdb02F2717021a52cc9b3ca2fae2a83af516369919f395caa2c790e21b2c0541c8e02aa) (F 0x4f13f849e4e126d361073520bb00e15380b9dad775383c1242b7d3fc4c7e294e8003f835a850a19524f469a5bebd4320410fbc8d2fba24ab7745a966a2b9192369dacc6877071e7)
- , NZ (F 0x507d77445894cae623838dd125049f6141a461620d395c345b937d484e8e251c56ced9fb5f4067e28a0869cb1266395d0428a3b07bc4ecc6bb52190f16d1b5f963dadffa9af1a3a) (F 0x7a63a221b2a6e6417eaef232b29f8b29be92e0e3a7f11fda9d28b0fb5357bb6d4658e9bb0b091dad20a86b8d617aadf2f74173e1301c948eb669a09f3d450078f2c50ff9594b5c4)
- , NZ (F 0x26cb1705160a2F9960e0693832f42ed404dd73fac9ebbdc33bdFf8346fdcb8001de699809cd69d2f319453b53ef7e4be7fc277cd3ba6d44833c719474c4d8e19fcd06d4101618) (F 0x6b2ef104c554a61797f440baa418845d97f3dbd3bd72d9defdae4bbaf32597Ff57c602d8e64de4b319d8a1db126be4575d5003e6666829bdee50321798fbbaf1ade5bd2b8ee38f)
- , NZ (F 0x58f59376c96f24cec08fb06aa7df9b56e123693f191fd4d8a9b5f57815dcc0d6760a74fdc42f3e17bc5b33466a6b91f7f0f55c46f5b03b01539db0f425b2e505cda86ccd4fd6b5e) (F 0x621c755a6fd77b816ca01650f57ded475ab5ddabca6a83b5178486b1a04cc5e681b31beaa6a1c2d52b173b8d70125511d3bb120e922824767F37c26819c0aa9ee55b3743e8c1f8)
- , NZ (F 0x44051e54c3df67ba4e3c02b2242e9c61d03d54edee3cd77eaeac6d5bee037f7c378eaf0689882ccefb90a4840a3bf93b523ca75e1b800bd9c678aacace9cb5f9c54ca0030f9f34d) (F 0x0fd57d3053fbdaa80b4802c16e80b7be295ec65a9f36b0aa52f260190aca101cf10f07b650e57a8a5d966eee576be43598c981f7f076e667dd35e8c73755107c0898b5faaaaa9ba)
- , NZ (F 0x29efa1d31f110f51f9087064078d3029dcf960810629d2123caeffc73638e03d9cbe3b08f80f695a50c7dab8b2ed136b0fbb94fd19f5d0bcf3cc290ff36c0b8bbbe6cf92892b17b) (F 0x52dd38432185c7550d3e9da434b1abbaa97d63a5f9e3fa2ba56a1a349b6904aef847cb4ae6a120b97cf4d1298f5100e2ddeff44a764eff0ec7a2be434f6aad82f36d6b1796d0f3f)
- , NZ (F 0x6abab7fae71cd020a39c0cf1860197292acbd7267a710091af32800669ca8a309a41cceed02257271fb451beb2ebbcacfcbc02a4079b143b8eb180ef1ae624d568b975f3b0b9571) (F 0x50def8624bbde6ca5c7efFc8cc8ce29fb49df45891419f724c2c83672f065e3d940524b53ce32d1cd6d896567c2057fF960bddf4Ff2884325ead8bc631b2f62bd2c8a49dbcce)
- , NZ (F 0x03a981886aa3130e272c435f24a5630e187341e483f806334af71c1257346164a0bfff6e9eb2150b34f5a6563db3c19b22d7791d0573720dc3827385b2ecc733224680d4e703782) (F 0x63866d7504b53e7edd40a0cddd293327b6ff8e1ed16ae8fbf36436fb0064eafc46afaaf13a4f78adafa7b7c19f6bd0e52bf3b39ddade41130d4d9a5030fa68cde30465c03443fcd)
- , NZ (F 0x2037bdd1afb7e6fbe331cd2d899c0e75c4aa8551e7d12ed201cf1bcf66da8cb52f0c03327dda3004d37b465c3d58447016ece90b7c29a3e769b55f093275a00e578bec01cd38c0f) (F 0x595fa33308f1c9b074807a5fc2c8f437a603089473b9a37bebd33ffd21cd7cbab98a8f56647d064972c872c7a7de184c0372a20bf77489eb72927e867dfb1fb674f28ed54685078)
- , NZ (F 0x2f3224c72b49ed45d74d3e4240a5cb3f290dabd056a2bc72ad2629824c07066eb036fca3ba83db16c05661ad37a243313fb870547c05158ea5ba8e1c8e51f226f194d590559578f) (F 0x4a420678f1b15c777d571447db6c3f5d235ebc77794a9eb58222d114bb5abc059948Ff83c148d339f5cd8b3e178a55e081d06f9705162c1e40e05aba505ec1972a189272484b93)
- , NZ (F 0x1403a6aa0d2b155879a74436d2e5324a6d6054ca604b01ab1f8db38a5502f596682f457a3aad0bca97eedfb00f254ea6b91726c01cbe244078b6fd6dc6f94920ce0d7bd72ae56a3) (F 0x33b7cbeed2b7756a1fdde915f11962ad8b125996a6a7f0f24a3c058759545d5e522f285e4ad99242F60431297a4f487be427ff449b13c577475b45596ad7d73275408a5dc8131d)
- , NZ (F 0x01f1928f41c570b03F8aca1d45893051c4a5f6b0293319c865f6f5a36b6772672c6f706c7afa4fb735caca50f297bbd81a38c0d79ebc88cd55e5bc2137Fec7c2e9ada5eae6df4) (F 0x440bc0fbfc6250a1f5064e5dc936d65c0eb26f4a3afff70fddc1d38809dff2a1e29aab357a7b069b84b55babff2f5bf09e596761943ba30acc5e178e22bada2359971d1c5a2922b)
- , NZ (F 0x6ae9b8059af8d1903b8aea8ed64cdf2c0b242df04c524b6c99c7f72048d3b392a92f711ebf99940e00c77b15ebc6a7f0616e49f4cfa491669973210aae4019d7a0664a67f830307) (F 0x77777f4056142b8dd8e7e83b1d0a0d28737d79de8062ec2c15e4d53d1f34aaf52f7995d5a15c585f7d6e1c38ec5f1ffa05e9c2908d736c62627968eaf32a43bfd5b719c34804c43)
- , NZ (F 0x0bb62254bad2F02149b66476ec521109dae8995a034cc61c3aa8e6153838ca797836b2537fbca1613b091aa3f34c34c7d4def6b46cc8c58f48f7ab697527db4eec326756f68af8) (F 0x15a37aaa9167c4e615a7207487e59051a5ec7ccaf19243473f309e16923ae3f75198e9f832980d124ca74d43ebda98e796e467b49214e1a80b56ab8b3350f48e68640fd5f565149)
- , NZ (F 0x410ff375444b20324aa8d8947f9a6955304f209ae0a820c49331a2f2eec0194e512882ec08a31757df41e3390000afaf4e0f00eb58ba19e9b5839871b2a1de924f068a098a5ad77) (F 0x4ceea66d95dFd0cb64a7bbd579eb5a1ad726447cf6854d9121e44686c23e5ce1020f819fcb4a8b9026d17ed6a3087845bc31120fa4cbb772b38976982cc9c0429b36dcdbe92e10)
- , NZ (F 0x13910ca36c46ae1d59a68d78106e155f0fdd88e4e99ec4230815be48c8ce242f26f5ffcb69461933cd1bff8ab076f3e3aa4ba619238e0deb9630a1e5ac32ec8647f0be8ef36760b) (F 0x3cc0ad99b00ae0d5ddb5c4bfd0d417f04af2c1a9c341856258388645346d304e8a01606af5df86cbdef34d8da71d6c03cc2719ba830582d6ad5878a675bbeba37c748073d5eb102)
- , NZ (F 0x00c21f68c6d3e45428ebb6232cc1ec2485442279b8ce1734c28313d959b2656f5343594ce3caa01d2d5373d02e0bb3686322b9d5bc8cb3db7be2bedaa77e873F6f928bc66db76d) (F 0x1de6524fd03c659bcbddce6d0ce93a44dea9e568af6e0378326da0cc5ec460d8c108e4ef455b7262dec0d4379373671bb3e9081fb1dff93d25136ae19051ad5c10c1e773b1287f3)
- , NZ (F 0x24a7a5f06500a8eabd359abdad8849b368ea58c26be0be44b495b04135b2389F1867bf54dc81f43fa8aaa00fff7dd5e65eaadb4211135484a6f8223828820c97d995cc16cd1351) (F 0x162505fb54377c5e61044ce88f38baa2b2085021ac55fbf80bae17f60a8a37d9f3ec97b6fd2cadd5e5b74db9642eb0be4F7d31a14193747d08fd6c5537f7be4ad96718cc3aaaa4)
- , NZ (F 0x7af5192f414f7a887222f566af539370baba86e05a90f4509ece5c080abb1cf6b5c50903b34b762b2e62edb3ab82874a5038d663fc60242fd84638f54f3526d1e89d299123f947b) (F 0x0fcf5048464031a9a1e0723a5a07db61ecf6605d654d7e351fa6dabb5331fba6ae4b4e4fd8c7a6e15076ca1b340c4a3b0bed162dc226e3e16b1a30a4b299c5cF50e2b8fc539254)
- , NZ (F 0x20f1af1d3072307baf4c12711f8231d9c8d9f338b5d671097b02dc413d447ff418d92aee763b778f089c585950bf8b26858b4bfc40b71357505c2df8f919c0f6a4945d643253107) (F 0x313e7302cbb79f922973b7e4d17a4bea53b4b7b7b9c47dc4d0d2d577b0aae466b0ce701a9f4ec17d1f162a66da545aef47b05642ebfF91e78c36f4bb7f7e0cca2a33dab224c061)
- , NZ (F 0x67797c14db33866e1cdf62e8263e8c47b8629caf2a2be0f22f0b62f823e885e036caaabff934470e3d2ac9e5c687c64d7bca32a4da41b2aca64c5ccb78c9d4902aee9c8afb9860b) (F 0x50751285d62000916bd1a49f9c78a207a6a5e56cd0522f6f24d993287e17b9665f9931798b89650bcd449b17034622a83f8eb32f5a858c31cff9b8718fb5e6d962cb7a249becb11)
- , NZ (F 0x1138fa25a54e2c00d3ee489862eae2c1763293bcd1e498c7bc3c8634ba6959a8b13a876dbFdf60282b39284b084c688986cd152ac651d7d8adb9ecc08cca9ed6272254faa9f1e6) (F 0x1a8725f8cb4a6dfd2c2276d7bb1a8e682c0dde77091b336a5f19ca10fcd5e9da787Fe2317d2eaa5edc8b0bda38a8fc18fd49b8c7595ca04a5d563dF3a517895b0e67a0033caab)
- , NZ (F 0x13015e1b9da7b781651e06849d2dc65075ced0172bbc4aaf5ed10ed22c5ac8c3344666cc72310d31823622fb6e313f357ae6fcda5ee78fac5ca3a63aef2cb357c64e3e5c91311b3) (F 0x1f08fdd1e38a449ff61ba14bdeb7c1ddac60a58edcd243fcc728b37950d8a1aa6cf5791db051ecaf3c3858919ef897cc6ab9a2eea6ca793c01850209081c940d7ce4657ef593445)
- , NZ (F 0x1ec187cc156b7b2ed922483282aa19ab74ad23c49e1a1c805d4c822888691a83db14abd0d62ef8e407c89e7d66071ff7dc1d1a017e418392ce17328c72544e8af4c15560690b0f9) (F 0x2fa1c08243a76313287499ee4b5e76aeed4e8b54873387c6175edba1bf56076b7335590dfbd7d415157eff83a0d8afaca0bf7e207ce4956eb126b89616f7b92e157d912961fd60a)
- , NZ (F 0x26646b2f1cde882a65b4cfa670dfd919c04e748cb46e0b969db920ef4b897943069445eb08636c5a89af76e7763aa6da853886a55e3908cf0562a88c386b72b57509d3f31c32467) (F 0x75a818d9a59fbed41180132b7bcc957eabfd9dba10818c87fb568a1055d666f5aa0073a88109c681dc9eba0a9522a5080ac4dd9a4c194b014af314bc483945e98868d9936eda04a)
- , NZ (F 0x735406f862050680b13017f0da92d0dc02b41869af754ad27be1fcbbdc93897a0b528a8a9c0ee60aad62b0e2a504ddc0f80e0a84038270c10a0601d7ad40bcc51c6f66fbd8361d6) (F 0x140fb52773660ccdd78c3dadf187745f31e1ac421d71649cf6c96fF995cd166659b14467aca8870185a812d79c7f7945029dcb3c4decc6707821a284060191809566e40b05476e)
- , NZ (F 0x5Ffb0b37233ed52068204101c41de6cf0587f994ddf54488875f3afb6a7e9d8260b9795c452a051a3d3c41dcb00b7cd153df45ec510ab3bda134deac7711c8515b817875fbf494) (F 0x494d4c56220d7dee238e3185c6b02493faf246559493eda14dd0debba26ccc15b02e3beaf4d098cd32360c349c78ebdc0de0d1042c7975f2932081a747390efd6e3c2695efad852)
- , NZ (F 0x7eb719a101ddeb132684586575635a93fd43d9ea00f5ac8558f0e93340893874197264f0a95ec898343ec5977cc1f6d2337dc8c729213f7ed4626624fbc779af416b3a1330732b7) (F 0x3301303b0b9012336c1f077bde916650ebe7b31e02f139a781fff69e0e45e789e0ef30a4a778d4897ee578ad30b34e11fc3b61ceea40e4bfcef04252723937a85719d5257118998)
- , NZ (F 0x716392cbc2a12cf3028d6793dafd1c37881ca62e5fbf5511a2bbc5b533c346cd03f9c0363e334c325af53791c3ac9e41e9519b814aff71be00e2cf8a1147459989b6dff3dda0d3b) (F 0x7d2b235c557e19389d8439a5e8fff4b5b7524de2b2c5bd0e5d40fd894014d4aa3f6fc503ec07ab72d59bd3198454ce9dd6c7218aec801eed30bef1882e0ff42bff7908e663233bf)
- , NZ (F 0x2da1a9a76d28F1e3b4f30240ef33d7661acdad1525d11ae974d5bd7a2a51b0f46e9d1F8397c48b5b4ce66e6547b1991bda6a0845360a05821e7a073be78eff39be42b9020881f) (F 0x50233e496e0054b8dcddc1ec227fba7172e982753391102f577fa875e3dbaff3918a4fd7c6a3efabc3611fbce63586dd2f38a0c4faa773020356ad3d76fc0c9dcb6baba331F365)
- , NZ (F 0x5955ccb7ed9542a3a668F8acb11244d5251547ba3ff6084a7cfa201118f8Fa7bacf46378488b9fb50d8aca0ba610ebc51151d322d4359d088cb77c061b9ec8f9c1c439675b373) (F 0x1e0c9e3a93b85ed74f51baca6c33e300bab67ad668672147572c623e9eabe6ff8af3df8909a97a0f56daa6967533dc76fF7377a490533eF47d5dbd02f5fbabe587a4227f3857d)
- , NZ (F 0x1d0f4dbd8d36823b004f57fdeb467aF2750903766163835c86e59864689732e70f3Fa1e88bd0d12fb18407f208ed5df58909e93ce574cfb9727f075594b6e26d037589b44b2db) (F 0x56b8d41ca20565555b5c6afb4d8a1478760179e31d72c8773d825a1b85799ff7bdcd00688edd54d4a82df342a4fae4973ab2cc5a17ef65fdd3ec700d0362d8e3191266e0ff23f14)
- , NZ (F 0x0e749b21d2b7b041006a8f1397cd8532bc4ff6d148e2981061d6964fb334d33d06bb0f5d0715bF69e04cf76091f41ab3c88bbc701e2511787fde965c282e7a8a3605dccb325048) (F 0x4197a688028a93a78a150cb8986e7743e9c655ea8e5e7385e890d3b9034279959b17be0f6ee79a6290f305f8a1e08e618ef0ca5595ba02ef56242dfdbe7668621db8728e059545f)
- , NZ (F 0x408f3abf6e7d8a3f7fc1d35bdd23cb54527023ffc2e85097e4b363dbf114cc0faaa88834f72e93a35b4e4b42be9eb39825a3325e609f94dc2bfa1774eaa80a8ff2a0F9a47491fd) (F 0x6F4d54cec591a6e5bf23ac068b4ef66c792183c16a05ac69a967c7f10b1378c9defd33c040e96b04a00735cbcce21acfFe775af186d4e4bee9ce1a4afd5c04d1f463a66b42e78)
- , NZ (F 0x11c2238ec9348aa11d6b59763Fafdbea15b2bc84324daf3d4d781bf9f8b9371a67da089b93f81d6c8dfbdf1454b8af708815964277dc407F42e30c3834fd735d0e85d2387bb0d) (F 0x07872ba50d77a7f037d308bdc18a5b9f38e7f1cc937d105cfc8eff5219c3d6d638c773d44503ef2a18e667c4f433b5469024880630df34e431510b1b958203e21b3cda753d6ccb7)
- , NZ (F 0x4bf3b063c8d54be9453710b5036c8fa60de0cfcdc7adbda15ce5a276e4f671479faa1e41c5815caa06ee5d48bcbb4c96d2e9334f6f085a11d511a45cf3007b15d7b3b71ffda1ae6) (F 0x012205d31cb6b361060bf361c4fb036291314d02adf00a73ede41159910c1c8c654b0984c800e5eda2d1a99733583df87f501d8e0F51647e00dc62aFe533dedc2afc42f10d40c)
- , NZ (F 0x44e97b0b5023eeb3b3048f6353ddd953f9c12d32a5712d901d21104285f3707a60c35aacf0d863efd3bc5d0f59863e461fb7c6ea1c6b6c9bdb5e4dbdc6b9f43627fdd4f78d95ab0) (F 0x5720f90b42530f1be05077d825c9441c982e2ab0468408bfc9bc7e5f4d84f7ed7507310dcadf76e7b3bb24833cb4ef3c5652dd2bcd88e5040e8c1a97951accd49bd6502bf0901f0)
- , NZ (F 0x7856987ccfbed5e00cc490eeb15159d0fbc3aee0ef25c1a43d69b1c62413275c79a20a26cce9eb08167bd207912aa8417230692976b2fc3ff9f287d69183085cfb27c9a988a31f4) (F 0x737b6a64a08Fff264dfde7c3edf122548cfb62942c38402c4504a95779cc4c747545d9ecc552b011e79daa1d09370b9a420523b63bca0a62dae7caa386cea13b8fab4f44b49f1d)
- , NZ (F 0x6783a6b938ee0550944c1eF8cb83ae8155f9cea72df482cf5205eab1a1a8d5bff78b4f9e16cad8eacFf95e3f7df96f993991a19974e9ce916ef21b74e292f8c751f6d320c28f6) (F 0x606a546376d1dac27e56cb1a35e893be569d2df7e50289eedb36888146a6cfaa341c712042bb064ca66252287248ccb186bcfb4c8717ff22781efa5192dbc8cbe6faccac780fb3d)
- , NZ (F 0x792b51a70f4e455d16df41933793649ab1fb9115a620d9194e0bde1c49f4e73b2be34069b6381cf0a32d9e7a49e8a9b54688063caF7f49a6123609bcf8571394cb95c5345bdf85) (F 0x4af476d42021943813f469a3ebaeaa55649b6af32282b7b7cbf88f0ee3cd68be3c69eb5718e54e65f799f99e7aa99eb9d5c9e4b2021dbbf161ecd92e2c321921a476aac0cf6f5d8)
- , NZ (F 0x350372a65c3df3056b12a719d18f97cc73af72f1226f51134578834455354cfc65c29aa04aeb8e77c30e74f21f75301126229c06a9f872939a54b693fb626dbdf0fcdFdb394da4) (F 0x0006042d5d714f59ac7489f17a455d250bc7bccc6c6b913f6004128964228eccdac87558d3d7879882fd6d85348cd8374a06790535f2344e3d22c7af54098244f5ca6065312e52e)
- , NZ (F 0x7e5901b97f1d18a2af0b748aacc381afb181e7c900922194a7435baf32475e1bd4d7b238Fb7eaf2e06ac8bc296df62fb0d081b93662b648081e0089e36668b3ac9da8c9a809118) (F 0x5185f348708462cc67b76e35cee61c611d00bb9898ebd3f84f81dbbb8d57ab9053c9f1be7596b676695007bf4f3c50cbaf6728d6ee450a7b21710a3abae38d52584225bd0b2f979)
- , NZ (F 0x781b476fa3880368b883b37f045654b880ef70cf3316da40d9d7a2089ee37b03bfd14cbbcceb0c3f83797d7468e47d5737ffffa847af09165276513568eedcec3d4c7752a428344) (F 0x4c37e5835b8a1580f82ba115bf5436d28e324cc2dc5b01ca67d51497217a4ae6c1a1e0ca38953da3965fb905aa9c9aed9da9cb1e38bace7c6c34dafd0F7de8216ad36c8b56c291)
- , NZ (F 0x030a9fd1e4b6a6825dd5a54b9c57dbf6eab13b644bce095d1bd823a964130c826aa3b8f99bbdad3d4c90a0da9b9a46abcbee912680c0ad82ec940616Fe30080d5682ac44b0b155) (F 0x4426c675f4eda4f2df0990f0d847cbd5933e6ff0cce272d36b9fbf142f98903cb450d8595c1af214bb27f8a27d8340efab15ddc8863aFcc986942dc05c3ab891fb45b645547cda)
- , NZ (F 0x35ae3d8227d2f74114c219e233e0f6511b8574f2266f6153a4744f7b85a99659013cf100623f9c2e68a53f0289995b9c8e77c0412c3791d95750b32d8F1401806c928a3faea4d9) (F 0x51dd701e3fdbbfff370e48c5aac26f3315fab97fa516f502c2231f16a28a77a2328e603498a071fc30158cef0b220e0fa40f5b16d6b75e11ca6443824b2a0d3403d20144641d862)
- , NZ (F 0x1056ec4552fdbbb27707c742cdde4007f3983a860ce1591236569acd42d1d71d1a7aa2cabc0491ff86728ca61f77bd0171e61366ce70bd51c4d299ac0956fddF6144d10f5d67cd) (F 0x496b28bf3564c0d4fa1ce1750a91ea37bebc228f1cf13c30bad2ba7de0fb18f50aef7126c097f1467dc904c7cd5b189ec5a9c73b69c7579d05f0658cd68dc7d9f9c4e133f55696c)
- , NZ (F 0x798f9b23b5c455a492f7dd76e182ca2d35bf67192c2b84a0f4aef2d507bF4d41491245771e8cacc08950ff6d391a9bd92c3a2e517fc3ae0097584f2f8aF6d843e804cd313cad4) (F 0x3a387f0f903024f7c4dec77cba75306d3ddade2327be81795f6f89399fbcc1f7e05903f0f3e50af9c86a8de9631ca0765b684cd6bb0a6575c5ae9af2ec156e5cf258e0f7050744d)
- , NZ (F 0x71df6048d286c20dee73d0152ecc63170391b6303bd962d1254fce7468269d27b4469521f4275f5568a88978489d1784caf88fb6a87b64dd25a034176a17d84992c49248266de1c) (F 0x14b4f041197e9462f1b2b16F91b3df561db55fa350d3841c8ff9a7cf936e87e00a1b30651758a689336e830a7e493eFc666Faec9ce45219668d3dcbc20d8192815289d923605)
- , NZ (F 0x4e1224e58a1282a0d542b9bd5208066a06f36a69e74a7a0323d284a73ed5a5c61c690197ffb5703f71167381f7F368ff692404abadeed4547080130d0287d8fb8126c57ca8c98b) (F 0x79efa4e5bc0fbbc518b01d3e42afd05507512b83df6e3d5e68e75df848b40472a930b0317b8e7e501f1021F2e166c7d5a928be68e52e8de779969d6004abf423e00e386f7e97c5)
- , NZ (F 0x7821f6bea5f7a4f6978c831141070b6ef7a83aa0b85884ed4cc5ace2a81d7713fb590d962e03b89b07bb938f10c4e79140545fbbd72e7c81c16f02fa3ab09e2a025ffb57cd4a7f7) (F 0x31ff04906fab37aeb503ddfa0c79dd2845137d22bd245449b68460cae6259803904f934eaa2833ad906ec3a7f65a10137f994c6ebbb9b26a9d620016d8676f83679e3fc3a1569a3)
- , NZ (F 0x7276937fba7d0a3e382519ffb5b6d3c5d83c290c0cb15ef83ed6387dFb979e9ed7a3ea4cdccb3e53087ea8d8bf9f230084f3a785de22221d6d98c46878594639501f3a44ae6617) (F 0x48a09974297cae8554ada22f384b51da75b81add433d2caf0c106f84199087a6d2c16f546998588ebf4896d01350f67cceb24f2d5cf571bde5ab015c18e60ca4db643fbb552a717)
- , NZ (F 0x637754993878806724e59392ce7F1e2dc50af344635b51423bbc09ca123089cbbc167b2dc1d1440d15dea4605062484c19114c9e146256e5b679ee5da9502f1dda662ab0bd46d1) (F 0x2149e5bc5435758f39f35d809fa03a4743ec62061f91e6412e392a56ca35298e32571953f12d2859629e59beFacc025a440d2a74832b0f605cb466d5d6ce27d2c7cf242Fdd8d0)
- , NZ (F 0x37fdb8d62aaa6319eafd07d235d49f6b37768dd9f5c908ec3290a2352c22e11b6e90ba94bcd78Fadc6580c2026e5163ca197026a55523530d720cb6482c12025c21d6a420250a7) (F 0x25f9bfd4d3645de7cd9aeeefa8a5842ebbc36c938d908ed54794ffd80b0e0f2db081074541b9499eab478ff01c14ec78cc166e9df31207f7c65e6aac3dcc7c11b6a8357facfc462)
- , NZ (F 0x57b62efa507593a0e97d0943c0a2d823d1cedcefdb10d4e1f8247Fccc5ed9625d6ee543c28ae941f19df7fd225eb0413386431953c3bf5c0d66c057cb7371F36da539a3d453d0) (F 0x2F82735c76399a6a9fb477c1c580cf0dc25233e3ec11072d1d18a6da9699528b59333271dc3f45893678b16020f209907ff2f3ab497dc1523687c1d2e7a30c9b515a62b4d6c5cf)
- , NZ (F 0x125b0a5a4b7e8f2608efaafc560a1ae5e030040db670ac81becb2bda4dc57781ad9fa65a566de587c8f293c65bf6f98c9cead2073f84079384305aed0de8fd3d90b886d1ea4be7b) (F 0x073d2361cb6a0051fcab6dbdf0a5b92540071a57c643a10277f95f4374c797f0d79b12b0e9175621a123086a0a8d03e173661c1c0d2d5f1cc081654a99ae10965dd7dd07b1f3ea4)
- , NZ (F 0x5Fcb4de303a636fa7f96b32799cacd3943da5581262469a817b8ce3e6072e64e500360d9f45a7d7cb176b96f3214b65e81ff25abe9c29f897f40918b164646b2767ddf7da3c758) (F 0x44bf90bd280f29ec281b60d09d13c22f1987e777558aa474e1ea85da214464a4F6b8ac809509c86d2e3d2d33e6d7e9ac442c3e6fc9b745f79a35c01ec8e0b9355d48e6a6b9827f)
- , NZ (F 0x61b42c569bdd2f5a41256a64ab6a3bc36a58dd13292e5514fcb7a8b2e390214df876212724ef735ac35089b458d1fcac984cf38ed2eb5f46f65ca7c035859a76829eda2df0879a3) (F 0x64f3c0e7c42eb219b8cad63389c45992bde7215ad8411163a5e936c109ee2b130f2f6fc616e81d6d89e8c1d9e69d7b76d1f7acac1bb5819fa5583e72109c65c500576632bbbed1f)
- , NZ (F 0x09bF975bf3a64bff4cfaf9bf978d0e53f6506602127931b239a3c6b8a88872ef8ef2af068aa9ba7544c1534a571fdd504d6f59cdc88dfb71c344a8ff81d56Fbf74ec4e38cc082) (F 0x66140b9fbedf560bd098a4329a114f0c45fd076a2f2cdaa5a020099bF2b0106b202f01a8773cd3da682d0232c2bd6f13cd1e8a559490a6d6758e0a10649c53ac5e507b993ebf60)
- , NZ (F 0x237b21e5c8943400f158c7407bfa03342ca3644ee02ebd8818dadf96ca961dcbd7d32b377a816bf7f6b24f16b76a80345ce9a296bF67ba961335b67caa2eF9f14a0ce2730653f) (F 0x03876c591b05a44c39994010567b924d29afbb9c31adc060fa1642a5fd294ed323d574b746011eb0f490e6a8175d0c8c329a8e652d2af7140e78c2b1cf699c054e710c1664f94b3)
- , NZ (F 0x2bcdd69de218d8d4e9ebbbaf1080149b02d0F64f7f16217c08d6235f5194c4dfca2ddb497f983f85b50ddbb23a71b4282062e7bcd165b3dda2345103efd07dcca649841a647F0) (F 0x1f57d7f2a8b3ad7e3f4f7a06aa11315cc5775e0f971c1b2f8ff9184fc24860253065f82377ca4f5ee02beb3991cefdaa7132ce63f5d221f88490198b0F8082375a04269a4a4a5c)
- , NZ (F 0x16027c7493b1330ff9e4a198b6842154a594063fa56d008f1b1509471784aa5ac1d3d9cdcc0e25decc5a0eaa203e917ab87a440c4015fa999c19c3f1ea63e0b5cc59e9bbb75823d) (F 0x252f5d7381845b0113134e92edaf036f6a52c83465819cb34a26389437d60f8b43d09a6f3fcae6573e1345c226f9031c864b64931dd759b41dda10e3c0d2971c0bfb2adf898ff56)
- , NZ (F 0x3d51b0182eeeb61ab94c0d99b3e5b9cf77db47ed83741490c64053ae9360f9173191cc7bac55cfb08e4034d0cd5e68b4be51a3a0be03625aba862400968eb8f6ff7f276087a6c80) (F 0x39f2588e130b113a4f6793109badb16709d2c540fbaf56e0d7be27befd9c42b74f8fdf8bae011d2a36bc93c3c8c295b07cdedcfa37887298de9d7217179989e59a737e3e2bc23f0)
- , NZ (F 0x45bdec38f3ee2850f591628e79422abad2326a5c3fa8da5c635e68c1c218299d129253e8759523adae06c2442bd4b4ff1a8816f4babd73f172c767c47bf66d0edc037466fcaa93e) (F 0x782341a1acf611583e27c83a9418ca9dc03bb5d8e7c0facf13f8a9227504eb23b617502f8cbb9042a7bac46701ddecc2e7530d086df75d82596c3b42e4190414ea7b71d125b7247)
- , NZ (F 0x143ba435cfb725a0198542e7c106e1ece6ba678fae0e31822b26a4e4bcfaec21a4e5a476e9f7a1ac1bfdae393147674ebe069983f5bbfd7f829f9110754e5693b330a5166960274) (F 0x152552bd336075949de4abbb5b517190bb7af62ff24568c02257567536618f5458f0798f74a3d3998e81642d6efa7d3a0001b5abf633a64b03715ee749551924e0b74f26c93d334)
- , NZ (F 0x3f8cc155a8251d78b2d12ac5e0a4df878fb7cb59c2c6cccb17599ab7e857fc48c12a3680344c7f269ec0a45e504e12d7236bafa473415c4c4b8c333Fc53d892fc54689e27835e4) (F 0x6633e74e9d8a700ab0b5b4700c2006561d98e245a25301b13d47ba453eb733409da02b022d5c0360a77507b3e2a77ba37dfc78e895be6b551697cda363aF56ace1c771ca2e1c19)
- , NZ (F 0x4e9d070639600319c5ec10b86daeb205677ec2877836ef62d7fb82b5316d816f2897e142165606bf6fd5122c40c701ff3d001ff1af6888d60525298a9d460d23e55c547abc75161) (F 0x5c1334c7849e604c423e0d50caedd53697aef0d90f6c272a6cbde7f1ca155222ec466e4c5df7015514d473419c40684735702578218ee5a1f622cbb46727fdc94c08903dc448399)
- , NZ (F 0x43e32ca45c5904ccb9dbe93cd19a9a02a869701f61F3ea6aa1d56cdb36eac1601f9c630b1e8e2f457b3fb1bdd210db05f577c73dd8fc9831353f3697de7534de05acb1962b8eca) (F 0x52bba7591156fcae4df8175966b317c49711d3b9d4064104038779814668bff9e6c5dfb2d4a2200b2f4dfcd7816dc9b40057f520a1b7058f55c296663fa332b36b8245a7c514bd8)
- , NZ (F 0x3dee000784d12f0d8fc23553acfba510d1a6b88e02fae1c2fbdf63e38911a8acef8b360b013b628549365c5307962f854a048567f6cd3f284ebfcb68dabc95d8a268b24d543cb79) (F 0x11e3e4d0a1f9149d04f82c5b469d7d1f9d4bd0776537857875ca3a5d534d2c3dc4e1e804948a80bf08019152d7e0534847d75ac366fdcbe89df75108c41dfdb29d9f2f3ea6aba86)
- , NZ (F 0x7c9fff7c2f6cbb152e7092e63a28d32892868952b70d36f0fd07372ce64286b2b997f5b8616bd9b9b609502c8c29a77701d945e2ce2c9f5cceb3b15d97749f8f0668c82c0fa79fc) (F 0x2b17078abc1c7892114a46f9fc8cd0168f5623e07e2cda7af1bc6175903dec78d7d685eb847ae8798cb04f132b5397957b0d5142ed58357bc90c36987946d07b800035bd860accb)
- , NZ (F 0x653451de7ede21ef490670a0861b79b4c49a40cbb4d976c73bf474e53e2974eb4f13a56ae5eef077b24ea08ed1f77ba53151ce770c05689c0f5a11eb74bf132cf4424ce56018379) (F 0x778ec39a4d2f16092b6a28bfd660ced9f31b1c28a9f00b99cd6c8b4ae75a958fca2d84b3f2861ccc00ee4ddead4051230d4154f35ffcf84cbcb86150f6fa7b3acf2e366ff2c1878)
- , NZ (F 0x28cb1e3ecc00f03c2938833f19b187682091d8a3b02092bb480d9b406b88582e754c7773e228b50a5460e522235eac98f8a64a7b0cafb2307a06c2d9722360f8684171d006d2a50) (F 0x68d4fc138223f4Fa28b85beba48909c6a7a4ec3243268d76497ed6efa19b316d52c5a39ca0faf72bbb633382281daa9f5af443084e15d824d40fc39781492390b19525840edca8)
- , NZ (F 0x161e3050562b777ebb7fb688f53459753c094cc71c181d8ab5254a973f0007be9bcc7a2b002de54b60ddc682cead6e973aa48f0a0c4f08bdc7d5ecdee63b767bd635ef82b0d78c5) (F 0x5501e156c9bd68a3d7737d9af2cd7055a77f2705eb172b29dd45a9b3d51b1d12742656ee45f895f113c0c5e08e9926cce92ebcb6091a2c54cde5ebd32958a50c14c1a08157b69a6)
- , NZ (F 0x2524296429dd09a84cf29e00668bbe0a1ba4a0c8F39e4291b33dd77c84682e1b55d8728169458a226a8430ab995dd74ce940e55db50cf4eccf217d784dc2404a8b262489935b63) (F 0x1566b9d5d6b54d53120b07c23756083f814c60166232552bebc64e9723eec5e46a3acf9051231159cb1098028f483277b3c6447e93cdceb19656113308ad7801a7a3468ca7e7351)
- , NZ (F 0x5f676ed937b1d677997e431622988f4dbb2b2ae70a99837dcb7470043ae639c7858cfcf4dbbdd8e3b4a15eebcd5d14886579ec009a1665c33a22a3ff23d450e80dc0b1e7b6fc416) (F 0x3db38c083afd8676e52586c7ad3a600b80ccb8f2d6a4724991278df3b92979558bece50321cb8500a9b4e1c02b231ddb35d711937ef1e0d53b2bf8d0e1d536bac4334555a1e5f33)
- , NZ (F 0x2c47e9b5ac9e35d2da0301b29c516701d12ab3b52aae62c4adb23ba13981e09c01428463f68c3affb8258067ab28fb0517acbe72da093d843e186810261697907ad2a464cc2d564) (F 0x1e2a794420206609ea5fdde9e0b4be52413d861da588f1eefb18229399a79fae6ab4f49eb2e2e25c6d02cfdc2fdc3aa770925f4b03a66a541764016f0507821dc995b4ac6613658)
- , NZ (F 0x09f6485Fcefa6b7bb4ba5d3663135efc619ad3d810777e5d0c54f31f2858edbcb54a2d6783f640ddb9b89af343c2bc093a0e3c6576658963a91826b53a94ef0a10702c4b148318) (F 0x72aa0ed66efdbfa2811a88b25d2ea81a78ebd996759e471126487753b4e060abc2dbeb24ea2dcdbec3a148c651004a88f029bf7a11fcefcc3361d5693edfc95bdf43Fb5d67b4f4)
- , NZ (F 0x1daced59e95b88b862da99941095060f7ea7d77f5582aa52c4caf259d948bead113d217739341f42478e20d306ee798bd401b25b6a5f516ffbbd77d69ca42ccab873ffdd4c2756c) (F 0x0fd199301ba85dcc2dc04667cf977ebae4632c880fba072d7d62383750a36e9cd54be712a3763d670eb2175a002F51e2aea3973a72d5f7e2e10104dffa29969b6eb6eb3d73760f)
- , NZ (F 0x3f048a7862bc0a8a6f3ef30e625eb08babc1056940261cd07111fbeFa8f7e0a183de2420d12ccd5b829e766b4d3ad40eeaf63cd2a5b0841ab10a3e376f83221dca054430383a66) (F 0x3201d3be301655504c5db0b778ab53ae7a318f49c09281e011a390e01cc64c5F44fdcbbf224807954424445f63806c5649fc3572a737bee8ec1a404e7dc4f1d2f8e3cf152da45d)
- , NZ (F 0x7f83e103bfc4a65c93866333d11b9b5c0a741d92d145323aebc01c21d09f39993aa4959a4fc16901ebec218ba13a5f036ac0a7d982d1f93F2e22b749a2f9321f4706c399d537ce) (F 0x112bd10caf88f3c9704e471ae79f9842832ccf0541d403196c6234abb78d04123b367a30822e75f3b866c59fc291fff123b5964352199e9b71b9c6f61ded85a1130359bed8467c5)
- , NZ (F 0x50baa197ef799a1a7c5a6f1a0f986ef980dafdc4371dea72dbb445cb0e423e109228aeab285cad460e44be193fb80cc0e2379d79754906559f62df279f7f01a996a770a494e03b8) (F 0x088245a3854eb650217b214e9ecef59181a1214f3b0d13361370adbc376a48d30c3ff51244f488694746729cd88fd325f7d24c69fc3194dd6ce5e4038842854ff7580fdea3d177a)
- , NZ (F 0x0b8176664a1bba03a9a2f6c5d5978dd349169715f8074387ab813cbb8e8b3fa583c542f0c41b84c4f282a91182abef7cdd7b755ce107a76ab644f9a6a24eb5f36b1093d28de0979) (F 0x72f972f4ce417e9dcdabe29850ab622359a34e5a5e72af336924e695d2e9429a0889160bde705c1f29d80cf979658696e59796becd1513c29651e67d4523a5ad60605d7ab42324a)
- , NZ (F 0x67ac57b949dc455d8a60c2b02cd56c7f05429d1ab010edbc80ed467492c606c15fd76b9a18e823719227dd81eb2d8af387198eb4652dbdc758f342f156ae35ec247c59de3894671) (F 0x19755e7be281c056e52f435eee30b86cf750311c63dd4dd7c9f00806ac769d0f223c7bc7e7e3fdf1edb7eb8715e95e65ced7915d523d6010c57fa3ee85a4746d7a36016564a6108)
- , NZ (F 0x34452253804d272516b68e0801dc1b689b03d32ef9e8459f2c06b2319007135c644c8d57c937e46c0a45701ed169750a1d39d36566fbf6ef880746040f8a04be2015581cb6dac7c) (F 0x254358cabbe27da1d90367b0e03b21935ebc4de5e84963ab392f3b6ad5b1d7820b0484bb35756b349f4067361c554086b84225ce5cb3ab86ea5878d77ab3264b460eac290d77ec6)
- , NZ (F 0x45410ac01618704b9058ce4b78f2023d63c4a2372aa69313b77c5533ae5ee8de5207c5880bf061109275c4d5f8177ebb52bca7c53d8f6a33e19ec1405275cf35686a29af70aaead) (F 0x4c6387829290bc7aaafc74bf50432c9cd5fd6d9b197d7c63d75e2e54f7cd67fb6084e0e0147cc95e12ed2e3e14ec27adfccf79c65faf5a03b18219d5fdc49b998780c9b51b78f82)
- , NZ (F 0x7dc826724ffdca793d1bec7c462e9a9c9b92901d458abf216333077f6d10a0e3915b7f08a05de8696a65283353a4a7ce9b424119778692c24094ca3efd6a5f10ec1a34efb6d425a) (F 0x0ce3d664fb66b023939b993b14bbf240eb8b2d5d8e8a8dc03ac628a190c49a50c6a20327efb0676afc77b17c610e4b7a11648037468babb9f403ff51f13d090abce02a16fdc567a)
- , NZ (F 0x479768755fdde08c1175799ca401d5cdfb8b60572256e03e99d2b02b31398f5e8ab4452e7fd851b86706a12325c7b319b680743941b412d63e698635d6a01032957d05eedbcc7bf) (F 0x734fda15c4e898b3c3160367486803dF93e233d850731193351d91ce5c4397b9F62a4a6e3b19107587ca2a4d79f49a344f660a8bbbb3932d30f51d82443c29d2635af7eb2577b)
- , NZ (F 0x6c9ab2d1fd9679742cef39e868c450a579d62d02b65449f5d0f0b71d2f54e8a25431e961222b51763bbdcab3aa04f2a862a7c99d28e9c14eb7f30dbb4f4b7249544900cc4967302) (F 0x1887b5515960a90ab8d0fbd7e38f10fd03b69f1aef580371c0b4e653e067662bd7f7d60be1cf8ab2c1e9c49ebd55e12f33f2c49f00416309572d49c2b83e92c292653ad02a635fb)
- , NZ (F 0x6f1b87e64c4417263a4a041b2772108c93787563948972e3dd60c68378ef9a278a5e44059c7152727608455085b17245b6272ee6e9efbaF6e240e18445853141707bbdd7a14cc6) (F 0x48a562cc2621409f599aa8c0659ea1ed5deed33e96424256d298f8bf1f5d9be6096e9ea16f8Fc8228835f69064290ac1403490638582e3016eef9a77037dfcf953b0e02fca91cb)
- , NZ (F 0x556f192acbf99c485c5d02146a7996c11d5a8f2c4b278a5ba98bd7b7e94303a275bf6cf516239c2b45a03b14495790aaf3c76616dab067fd17a1c5fcc66bcf91783e02b5caf45de) (F 0x0408645aa01fc6c0b7b8d08c194ac51d0ef2b9e4fc14163d2863440579428cdf5a794da9715184830fcbb62bad5ad6a5bcFbd7281b7cbfcbc9f6682e390975331f12ba482249af)
- , NZ (F 0x48d27aF37db0447b7a0acefd9c15caef8cec9753bf63ea4603fa1217f7e11fac7ec211651079f57854b40d73186111a7e17806abb9bf7e11d0a24cd2a618a35a866145511e4e0f) (F 0x6a2aeec0dfd14200742ff36a7210eed6472ddb092698bc527c365d1fc39955d39db028aef62abbb799e9ae89a1d6faf9b8a1b22ffb223Fe4b775f430eb8ccd3a98c78290e74f21)
- , NZ (F 0x75a9c657a91b1304bacef1c038f69882c6361a28F4125e11bf5ea5b342b014fbf6cbfc8e5365b8f7483a46c4849eaa58df1579e2602f8242469687c4186e6308aeec2511b7527f) (F 0x467adaab9ee578686cc89188255ced71c1c9bc6073ddf4777657f7348475e6ec6652c226d63a5d6588002c3e1e2576713c0b87ea14e1a6905aa00fbae368cc8b6f4a81381644505)
- , NZ (F 0x3dad0dc2c31a69d9affa16a24244610b27575bcdfae7ec692f9dbfd887543685ee2250cd6cf6ae129e62afa9a927c985cf338b91cc49f1d26653d2d35d4f340df580f0125ffc1d5) (F 0x0dcec85f02ab563dcd93f34c41b17317da35752b434e70b22675f8d85d519ab22a3f9a145294264f453dd157b557d90e61efd6285995f1ac99c0610b9d4716a58dd5fac50799738)
- , NZ (F 0x1d4c54a09ee13769ea4d28bd20ce01411377b4d505f9b4900d85f25070ad1bf29e517415e13155a6c50f26c6c215adc3b463639f9009713be137525c565547dcd0959519da6eaf1) (F 0x473c65e51c7db26fd2c3dfca21d9bacd55e0a2498a0d7cade67816e4913f2250c507301f611cfb091c41964630f86af7b0bd2fc53d577ec6381e9453aabaf5bcb1d8697c258e010)
- , NZ (F 0x43fad1be9ba195a35a123dc773f5267c6798ba5ac761e55677d690cbee095a71a78f10d2a9852c8c83cc3b369d09fa23109a727257bb595500dc8Fcbd154b8af647d9f630486c2) (F 0x38895c5e99ae2c151b039124239616500d21c1f3fba2349504e5020a8b1f3ee266c0b810f4f12005ddec147d1b72Fd2bdec755020563bb4bec9F6f6c7c485f6de1cc5446da2c8)
- , NZ (F 0x604c63c844dd1c9bf6fcefae418fb8f35077d304710a38c519b55d0564280df7e67da983f889713e8d4ca0748aff9F7212c4227aec1724cfa8a1bf47ec0ce79cb9f6552F037a2) (F 0x61a8124849189a09dd94ef821b7bcbc519ffc42b9114399886f8670946137495779F15a26fc9b15d71941980e064e2ebdf8c65e25fb98934f8e6575a37b5927a96f029f96fd544)
- , NZ (F 0x19d3bf0dee17b4142b3f734e4e579a355282576e1e77d68291a3f4c09bd2a5ff81976a427717dbd5ea550af9aaa362da2923763eb7b1990921bd3d2f8f46902807a6ba1713f9b97) (F 0x7c216ad491c85785065fb731218146c06aa862c81b15909ad29f5aFfd207816224fb94831b8a0d6217dba6a9bcad2a77dbcacb81ccdf4523739aec2cc31f3591ad876c85804826)
- , NZ (F 0x4e5860231a3f4b0bdc153e4f2ad8b1fFb86d6f484af7c83add6f6a1ef9e7175a8f744da2daf49F1388408a4660a4ab5137cab05c925dd40a51dabe9b23307880a7dae9a2f4e4d) (F 0x505f420569ba05a1486236f67417a0b100f69aee1335515ed971c321093ecb7a469b080c0e4ff311b4d4c6481b7f15a760e744adea7368f750b6817f2f314327a408055007de30f)
- , NZ (F 0x76e56aff6b42e74a40766b3bc132b45b39c22ad3323f5d69b4d647002c68d8a9265a4528b0b8529db285963341e8f3e337b61a46e2ed19c530a88def96970eb3f0e7174e292c5a5) (F 0x244f8c168c7c1d7c07a038e32b9cb9a7e06ef0cf4fc42c9ee6e8438255657c79200703283ed338961c1aea61b3f70d94a9b33811a066b139066e92f02445aFb13c73b9bc2da29a)
- , NZ (F 0x27772d2123c116c939f40ea5c6961c7b67dee138f3d027e0717ffb472292ae67fdabc1879e8186e95de1d413f31a27730509cd439851a38411773774b0b337474b32a7400c37c19) (F 0x4e1a7eb3e5b2e6375079d4953877a55e73a72c41f0d497e07b947e896177974c0b23998ee2b11fac81bc501b16df3274e8745a3acaa86a7cf645d947254aea7e5d5cb8325818f58)
- , NZ (F 0x1902180be990c70aec771caeb7eae2b8aca01eb3704433b77F5ee47ba70c53c4a153b6becf5802c0acaeeea55a1e19deacceb7c3eb96b5cd34F24e18e173dfc84b481b6aa7acd) (F 0x03ec933a09816f2ddfa744e2d2d483b2df3b68a503c19b3442b7f113dd7d32e04c9bdff7348b459f5817411ad70f6a64dd1d844c8393da2988f927339a482e0f429010a575d6af7)
- , NZ (F 0x455ddb601fabf4c6fc4ba1c9fb870abcd917d78c2e90Fa3f89d487e0ebe0156cdb9442b46dc9b1fdfd536aa41cead887f921403a224a1e35f83596120828a7f21a36a3fcb7fa27) (F 0x75040047ccf8a05169a6c32e812e78ff4841e4F15ce816d151328acfd69a89644c3f6e3ee258779dd869e9e8c6bb1f137606f9df9c45a3cf8040f94450d62890bf6683d091e602)
- , NZ (F 0x40c65063736cf70c4cfabc33b653ae466d6023317573a59f31dad1d3d8cf3da3939fdc203a3cb267ea1490ca65b7d8bf1adf4e55d6968a124884b31cb06b7526b970639f3cbffb1) (F 0x0a82bf7195ca56ed0931405e8c747a89fb562f5bf514f72af06931b7ee2517d96a97d0a5b5eef274956f29918bb76a4ac76415cF9fbaa2b0c5ad1bd49d1053da33c8d15c096be1)
- , NZ (F 0x4f6226c9303923f5614ae9517aa3c4cdd6bf52400ebe1da370ca36eb26948637765e17e6e307e1b3d6c351cab37ed25eb35507f945820248041349c6270c1273ae9d9698880bde6) (F 0x6b0612d55f498401ed6efa829b4d9b816aF76cc665c3ee2184dca487f0226aa4d1809cbddf6a10f344b948d334a4e3b35566ffd64b33be6ffc6081158ad0c08f03484ff6bc3059)
- , NZ (F 0x0c694bd7c253e75f37e613e8e1a3a2ad9f7587d7bf12626e6cd600c388198003e8a5ff8a441aa95b88c6ceedb9f3dafdf2a3cec2dfbc675b6fad96986b2ceaac43bc3b0d934c042) (F 0x008d2cf2d3acdb227fd08a8636a0bbefae2ceF064d836fbfd258e1cbcd74ef0e89F4d9263F78dec8904b7381a2ac00de0a81f21c4a048a1233f323a928256d768f99239582d8)
- , NZ (F 0x269fd561a967a2b955ba206338d4d85173bd518a14d8870ea1bf886592b3a9336e50a3e1c08ca019a4e1887aca76ef2d28cf89ebf3c464732f6534290eac58e01f75e262a784d6e) (F 0x6441f717e3d606a5498962a015bef453e11f1457c1e610172dd0aece71b2ff134719ec41457b3715654e7b617c9601829526b02811ec0d05ca0d242bde2d5943173ba4aa73426c2)
- , NZ (F 0x5a6b0a9c20406ac4b605ec983446e7fa49d464a36f5df210f71f1ad86232aa54589ead2F529f5a44ec7ed68bd30d87f8875d6b8c78F93174245d9f6d816ac106fa30661cfc48a) (F 0x629f60ad346786c5dae6aff84e5ded7cfa142250b6462b0559c4beaa243402b39ca439dded754c277b6f21884ada82f4ebaedbf8164f8a106345a84a1e5867669b2aa856a8a8f93)
- , NZ (F 0x5c780314dce5e59416049521f83774d91de73cc1de007834e712698d019b4b703c135cec5053af8f8796eecb2f36a46d16133496867443b6581d62aca7ecd44f6e0464d5e51abf2) (F 0x4d36cb65e9489091d4ccc38437c8da30234485918fb98cfdcbfcfccf59fd6817adb93c5e4e2842dbfbcf83233375c0f9f2d3173675002cbe9b343b5c52c9e042F532b0cef80497)
- , NZ (F 0x6bf4ba11eb988a2ce20326cb3b4fbfa817b901104c884ff07d32741c8462bd45dfb2dfc8d725b997dfde90e8fa8f47cf175330792400b9b5761b5a4556749e06af59160241b259d) (F 0x74ecf0bf19925a1b6ec206f534195259da7c7ee1e38f7584bf11ce0fd23e6e2c6cf0eb7415f7d1160998b312a508b99de99d926fbe1b16e04972b9429ca1b448458ed5c5ae9c5a7)
- , NZ (F 0x5afcda26408f24a56c73b782c3f6cd10a05e47e6a7ed211614a3979b8ece27268f7091c0f10c3e95cbaff99e0f08caf653ee64d86f553b4efce17e1db8110cce6dcdcab4f6f7600) (F 0x0c72def26bbbe7b31fbc06b877bc5551d893d53bcacce8457918c94c81352Fc9cc0cce3963c3bbe59cabefa65b21daf53966af16a94c7d213367a3e0c931ef37869cf6dd21ada7)
- , NZ (F 0x054990acddee5b33b22bcaaa10149b6d72f32103591c9b33e2cd0cd0c364928b4b5efb2e096b8f35ff6019627716e9a6e553b05cb8e1563d8ebc4823ad1d0cdcc07cd9b22f8d753) (F 0x72ad4c8b467c1df0c4494831eb66d70845ce37fFf20d71011018dbb164a6f3da71b11080099fb0589d77036bb9e103f142b5e7ef155b71350bfa0ef5a2a84880d1afbf7ea658bd)
- , NZ (F 0x0f0457ef39ba92e38a00acd2ff925f2b05ede4ef0596cb9ab8197fa3b3d405fa382197723f4d871cbb654c820d4db668e820a00e7b9a5976b2bc505fc76170f0415c7aa8c920561) (F 0x5c73027aad719a0af1f54b46605bfc4b1e3330c49d1f78fb77f9cbdca4d67be8d41091cd1ef46e15cbd7f963f5b606f7612953a7be6c5fcaa91bfccf3a1b8bdee282b5894285de2)
- , NZ (F 0x38504fa99c7ed74521a09257145db1846487e4ad2f8aec99dc490d8393a5d278ae2a4363def022b646da0f832d1dadecaa114b06c3f654c9b37979fa63b2d8864195fa6bd8419e8) (F 0x7f7c3d45F423fcecf59ee2e77abab4291cc1e1e9414c9617881862c01c3e85a363e8d1cf966fc5de1cb1912d296d2057b236220879dbc35e601a0795ceab56cb91e339c60cae9f)
- , NZ (F 0x5f2761d352ae497Fbf49334944af8fF99a5c6eaca618e400c79827aae98d5512f9a3438121d475acbbe5408423f2a10ce37d53e849069027c230c7c5cba19b30af7e11df11f12) (F 0x566c840460bd1568871d7364ab9b96dfa7a9193d9da692bb3a7987267b36d9ff4de717f365b22c1116bd35d166f159f613371645c9de16d4d86d491a4915d9c2605d2226923622f)
- , NZ (F 0x71038f9cdb113b84ae4282fff461a9fa2b21f4c0a23a6503dceef187ddfc8fc50c171ed8313b74de81b988f0c75eafa987aa5640932a56ba207663789780f5a4d8d2f14eae8efac) (F 0x0473bcc49c6Fe6f9f9fbfc883483153552Fd9fc962a1f324817b18961f7fde81c622abb358c21b782740292a2b90c05dd4ea0029a90626462c84311c9562ec82da09be2f9abbe)
- , NZ (F 0x58f8cf29fda61b8da53f64e6cfdd5923F477e5b9baddded4682f176146f7d9bfacfba99886fb9ab84d9ea7226e441d2a1a6292bc7b66a33af212e6bc9b1ddddd51afaf6b0dded2) (F 0x1cc5375fd8b6d8b0a4939d1dbe036d0e8da5Fc54a0b8527c6836172039ddc0062bce2d701f89a304fcdb9b3a87948f29ae2ffF972eb28db2ba49ce4f8e9efbe4a801a22ee64f1)
- , NZ (F 0x3e04de865c35264b1ca5bdc5a5492e9e3f43fbedb6ffda353d3a4f5a59433e0665b5d330aabe5d419b936b3c58db50b2f5c28ed8e21fb7cf4cceeb57d974a28de60b5bdcac81824) (F 0x7068c65b5c8dee3983f06f61cc81709bfa1e40Fd0696a3bd37376eb2ae900be41f308b7103e6e625437db89a9820bedd1a9cf5857c7274a38994e85139c70fcc7b7c206df50bb3)
- , NZ (F 0x0b7e74df6144045b9fdb1cb993094d7c05b85db04d3a69d4d280bc9923e7f435566ac3a6308c18c1340e254f8F3eebafc85d14c870b0ca20294eae1c7329c8a76427b847cc7536) (F 0x3da4446b7482437f59e1f476488487da43f9ad479c9ff6ccef6242724b2311c642583169a09fc5b9caf17ed1473ee9b098262e3ae11f09444fc80b67f89717799733cbcd1b4a343)
- , NZ (F 0x3eaac2995465bd7e4e22b77f806a2228fc277c03bff28e8a0c59ea1085ddcc1a44260a2e502855d242413e6bb2c098bda868149422aaf5916f74020bad2b8413413861658bd53e1) (F 0x0cd912f35d6d906fd91482d51ade5d6844b805fae77f647c97d09352e22fb0be9f1ce0e563e32a3475ffd7ae7172c4933ebade804c2c761de63290edbccaed466583cFb635db69)
- , NZ (F 0x24a151d37bc46f1a2ae932adb923992d00f1bdebb1b99cf6913cbb7f78cf3565475493067a299fb1387ed3c3003b313cedb9fbc328edb990951df8110aa355bd30858700751d673) (F 0x0a34b330f667ea7ab9c7bde886507c4d9d77aeb647d72ee769cc8c4d8ad78dd3da2e37177a347ab73d4528aade38580e260b6e1F54fa95c32784dc108fb0aa3ccb136fb1bf02eb)
- , NZ (F 0x548a174af0717c7c9f50be69f0a91477e523cb59172a5a43267203da8b3e299523afa148e00a379b87d69b6a5c2f32d75e3b1007adeecf37c93161b8f868Fb2654b6b07ef83F7) (F 0x51e02aed5939c0bbb8ece3b3a8e6c4f4b862df72a3da859a9F14843a865b1838b2d2d2c550fba46ef303a2d829e5a0d14c3657f3802d63abf364452aa8c8ea1018d29dc8f04227)
- , NZ (F 0x3836933e0024faee431f7b7c077bdc47c3a2a554ea43fab917a12f9e8489365aa1211c44f721ca63628d41022f929f577341729567f414fd0f0b21446e572b2bb47faef190580dd) (F 0x0cb8bde755f378e400a0879c331b1eba207503Fb506ac67f487e8e795d916835a8e34d427a97635da77378b74e90d1e59ca365a44137b70eb7e74c0395bd3f74f26855a45d250e)
- , NZ (F 0x30cf5d3dcbd150c44bd18857abe9b67c51490b3745402beb4deb272cbd9835aa1a2e2c7085cc89ff344d621e9b1b56c66cdac2159a7a3075b87e5f388ed7401a6c405e96c207762) (F 0x2b8aFd5cccd96117f3d15a72efa8c26934890069414cc3dedeb19a76468762195b257d67c6bea4600fcdbb23a32cd8085f032aa60989ce398240b8eeafa23fb4135a03c26826a4)
- , NZ (F 0x3bf1bc37362579c1eb1eb01f683b629c611591fc2e110ccf0de90382079a385b890f1ce95eba4f653a243972ded83d5d06662adcac7eddbc021607bc1d374a775719d9a2e3ae029) (F 0x06f09f3e7508fc7c0b604cf53a917ecfc57d9c7cfafd0166ce6f878a7ad4c26c622edf24a99c1b3021563828ad3291b038affddc10adc0e1ca246ea64af7525d8b234d6385ce77c)
- , NZ (F 0x29f520ab7090aF4c6f3497eca8079d39d0b2b0062bac8640045f28174460cd68d9ede67eFc412e20d172955201d6423f48a4645493a1edfa1b59db06c231031c21692747ba9f5) (F 0x23ce14d0af1b9e595a2727eccbce7eff6abf4cbe4eb7eca5cee43240abdea5595db6ea734d710880a726ca16d7e25c02ee6501eeed3d7274aaee4ca1acbb6df6990589df9c4e7b5)
- , NZ (F 0x72d444c865d0ef8d9d0d509186f69610e9ad6080b7c767c097d661111a9054cbfb1ddab755830502799199a9a5d285bc90c8865b531c2c8b2194585f5ab0d80ef12c74d4dd8efbe) (F 0x3d402f832da6a6170F6350199d0f29906de6d64b9c78fcc588d91a7ec8658dbdff6310038f7c876c806517877da95484b264f271061377Fb1e152690d0625a0e3d53d9c2e72a2)
- , NZ (F 0x712a46dbac00d73a7b5e3d42fca8ad300365792d54c36f5d741ab13ae0fd077e98b47a54901d5b99a754787d4122abffa6941fb9afd9175bab2fbf9fdae3f69ea33a01c6eb98b5f) (F 0x74388aa3677e52a3a1ddd52aa6fa1e2dffb0404e16e06cb92e00113b265ec5ed223de5ae920988b9c579bbf6587dd819097f45c9d8954158125241a3e668d4be62b8775067e239b)
- , NZ (F 0x0b870cba76b024484744a3ec3c9ed63b60bae4a4c5715a92d19dcc4b90b881989971184aea78a7e3243d8bf576061b21aa6f8300f6d18373c4c98eddc0e2b7379a5577ce3a5f1ff) (F 0x7af7b1382dd4361ab121daF2a80bfafc9800827039bea18013be0b332358094b17cee9b1c87a18330ac164205da81b218ee730b96a762b84cbc9fcf6c620F76d08145d0c8c619)
- , NZ (F 0x415179113efafc7cb404eda551d53f9a97c3778936613e5411d2afd85d3f9be196e71a95666854ea544a219d0418ecFe4d29e1e9805e7fc8e7f9ade14abd4b632a798808bd8063) (F 0x2f8b08afa52b6874e943d83e614f46a9d980acb1f10bdd03e227a5ac8a90c8857ac8f888999681dd8b756728dcdffabb8147b4eaa2822126ecc22451ee02989de9289b2a6c5Fea)
- , NZ (F 0x62ce457ca5d6b78b32f315c700b3af895bea3093487c21880d532314748362495af2274dcf13d461225e86ad4f9afc36cc08256bf5aae01ad70db836f603a2c3e13cdea87d0bb7a) (F 0x350f118f83f53ef392d4269e64423e32c8135d11922454a49ecf19af0a904ac04c558c38f459c9c03eeeb931b0a34b6386ebdb2472c77b0b271d7ce10e5b98c5b30b553aea36f7c)
- , NZ (F 0x34ea41d780118edcceda032fba9ba82ea0b090b69bc95a2de82d58b11d21db1cabd8625b1535e95fc3585b5a1aaf41d713daa51576f7dbe8ceff34cb047c15e2b50bac0d7844149) (F 0x4e5b9c3223fd95472f633452e5dc8d7ff0988596be2415439913e05b620ed3e296441ba457b094a27a3fa0d650ef46c8d6fcf7d18e83ba5d198bd65aaacd62c4a939a2096922b38)
- , NZ (F 0x09faf972ced0c1ad8a296f940d037ca789ed9ecb9aeed29f9c8573ccf2eae2f423688f6f266693196c731bca9618f0b2d7b7c30eb226059cf5331495d5962fb61469fd46e619aba) (F 0x500e62021080806f82216c6d117f16210d02d69a5f8bbe88ce5db0aef462f36919549bae142a907aa1b3ab7a7ceddb7b44305aabe9d309b6d7854Fa3d1efc959e29134b1cead2d)
- , NZ (F 0x0283e4fbcbc90a0e9bc8c7811da21645ac34bdb615ae68dfb5a6554e092859791611c636f32bc01b3215edd11b454eb658932e14fc7f7c7d4206b2add141b7566FcbbF62a33ad) (F 0x253147c4fdc8329ec280fc2050a9a7ad71c2c5eabefa2559c59e5604d67da9732ba2543f443f9059bf84dca982a5d7dbae9ec45e47ae132aaaa3f2acf22a39e583F90e28c00756)
- , NZ (F 0x41df10b7b2fb3fa9d492c7b05a7c00ca1a2305b544c849933b6bc548bdc6c218fd69dc026829db2a769b13336192d88e5b59bc29b4f1abe6cd379f3df7376d2ff26ac71b498fac7) (F 0x1c145c827e1df3ad93220a2600c5de914613ebc330fde8ebaee364c5027b0bc33f2366467f35f203047a48ea662cb7e8caf5c1dac4a3b63e559830e82a9ae42bd5c20217a92efd9)
- , NZ (F 0x3c2fc07df3090bf85ffde0d3f3595528ed76803e5a3c86e5f745ff2171de8ea5ab0976f09a6bdb0a9e60684f16ba2b2d2df0a4b18400df4f6041700815032c9c96912c428520ce1) (F 0x38313d848494b1c30ad317b93734b11ecb3b3674ffa83afa11ef2433c903ddcdb86984c3882d70385c27f49374151c6eFed99677b630c94f1ff8f46a55b9eb888d914642a0cfd1)
- , NZ (F 0x52ffba37fac41d20f8eae991752584a6b62f996147ff689ee98ea3b6a2b83d131c2030b0dc303f14cc9e67599acd0fb267a70a350b57c1941ace5cce7337f4d5647a0e5b649cd18) (F 0x5f1a5aee6d188fb28cacceb32d93Fcf9fb741cad7298deca4b23c29098f7c340add95adcfc53e4736193792e37341a57b823621f8746938b501914f81332a2c57e40f690f57b0c)
- , NZ (F 0x714c7124744d9d7a782ad0547a14b6c528d516aee95aa8b13faef9a06f06754da33ecf1f2dc4b92c4aa301d24eF25b69fbdb197db2db4e08bFcead870e275b77281e99e8c944a) (F 0x4e8cd403f15c9927Fc33e18834bb15f0674f4F98ef7eed63dbf27e2657b7c7709ca44e0034bed705b98c5d628c483c67f57e0031ed557eef1884365eabd983d153a5613404d43)
- , NZ (F 0x414bebfb6bde8456a5422315e6de014861cb401548e6deb85210baa2c257b503304e0b635043316fb7b3a2946a79910f765e3f6f267955f8036a07fa972d5bab25c0f4165bd1069) (F 0x50d6e5bd23e5a19f59be0fc35839839d41924c09ce6ac83749eb0c222f05ef6ed14f1cbe02c8f00aa87e1ccd7b568db129d9571f07a2c5c47c79a34a291bb66b04bc05a3e6d8580)
- , NZ (F 0x045e02e941756d00c488785b3e80cb09dfbF1dd6715c7913770aa119367f1b437e3ee25dd522be28e89682698d6e4684bb3c67a1825734b36a6f9e65fb26a404c62549d1c3ad35) (F 0x065f87316e550069384a03329b43b77e5d3ee36245ed3a7ec939430c108c0e378aafcc3caca1927d118e239117c502adf2890baea7d6dbd58d8f6b062783c2e8f127c3e9cec44f9)
- , NZ (F 0x18edca28c3d9f0803a491831957f53a8d642602395b293b8486cd83a79f860bc2a3b4ddfdd2b733d7ccab0500e6eac43a47fc98d02deea874d67a7dd6a16cc730bbef7a2aab6cb2) (F 0x2adf3cd9f660f7fbbe620e0a44aa64425bFcd4eaa79764072f13e594652c480e1e5e4e8ded6930b9757a4f4Fb08bf506c5ec7ec797cb4673f01ea5391a044424081c03c730748)
- , NZ (F 0x3e05a6942de547cff75590e5d5880fdcc5bc49ae93bcb41df51efd50b9ee10031022461c1e153e451cd9a60460928437932b85d5c36e101919cb7bfbe267252785e1b151279f29c) (F 0x23a1463b962596b1955bac80c487294a42e4c340462be880538426dab1ba0aad117d84bebbd487c2cf4b5f02ce10db832dd23a40e8a864e092dbf08e3d68383fc115a72edda6297)
- , NZ (F 0x67253d0c5de87e4b5cbce31ae44bd9d9183c123ba013d51c3c4179408fc57f14aac478f1bb81fa6adbb0b4d99ddd58da3eba36b66eaf5cb9f09d685d0a20dd3565b121cb96f39ad) (F 0x136c059b5f57b8d7330d5c3def0e3f7c960caf98ec1d8F5eb0be401939144588c28e2c8a077efb16833271c13b1ac95cc7afbd5e93b816e21627e911703b6cd97f444e87adaa64)
- , NZ (F 0x157d2c314add68b3498a4921a077d1045be3110b928260426907f15ba0efc5f2ca33fde6a580a84f7e2be221b809734bcea726e41f18df1fb63491efbe8d657d2e3ba61b410340a) (F 0x25a9623bdf9c4794d86bd6d187fd948e221f13b89fd3d55f2dbcccf2cd901e024049fb28ae66c832a3dF1e178b729788b30948b13dd2b7daf073a8c7ea965575b45591219cd8f8)
- , NZ (F 0x576e54c9728db80444bbf803c8100d0857aF6e6bd8741cf0795b6cb1062b287213e6c3338d9b23cd7a744d45a1dee7a6c1ed3a1073a47eecd7bda4db93f75f7dce5d8396ce2b22) (F 0x1733c001154e9620c8c1add220021118b10ca9434053ab8c00a368f4ecef31da4767e6d0be2dc9af41c595b96d42b298c6c4b6e52c47db7a23c458fb21ee3c88794a61ad22fdcf4)
- , NZ (F 0x5d0a1b222ef2e79b58a0f29c6ce9991c0b9e933dc0ff75ff15359688e293f4cf6b2e5b631cf148Ff27c472a35524eeba91a2a2c3a3a2326f407a8c3555020b89a22e57ed400a59) (F 0x7ce452dd61c23b6e8ab3c2eec4d760095859cceac6e4a3a112fc577c4e2763a82961276ce9203bf3Ff263e514b58f511c18b1a9d6c135e44aa8513d9cb8648cde8c5718faa59e9)
- , NZ (F 0x2ee0120de58da43fadb3c1839be94b47f52bb6957F7ea921066a5cc139b596c3b32ab79a36da69349c11e2ca16267a5e2f72739d5f2c8c6c351c5f8a37b452bd385b43d879cc3d) (F 0x69f102F1560e1620a94ea7eb389495a0314c3bd5fabc17249e5ab39e7f1434ffb1f0629505e7ae7ad90c32d7c53c7c62fbddeb1e3c7f9ae9fd5bd1f1c68b37498faf9F8921c0a)
- , NZ (F 0x077582acd1a626a553c253e10279fb3b7961f81e76b39535de22f398a466bdbadf7838ba0640bcc29e64d32b862ce636af5F85ca12b5d7ab74ab4e515e52608edab5a83e9e780a) (F 0x210088d3eeb100536282da0024d9dd22ef7194c7a362de80375fb6b6346e74353a80766090921d529d97d947b9745a329d576a2a3b4d2fb77ee8afa936319f813c4b204247ab073)
- , NZ (F 0x6630aa5cb6a05207e5e15c861cd805a7727cb22afb78a98102bda5110deeac6b5abd7b46ff31b89a2c5b471aebbfdd2bb63d271910a9e1db5c61462b915b29139Fa97aaf358e7b) (F 0x7cf7aa4ce1bb713e52ba668f237b5ed1e9b4b2dad2502c10ca94e74ba4d80e9e2a9f78e33ec51b3dbef410522c3e9bee4621a558a218da543fd9704c01288d7b31af69604915899)
- , NZ (F 0x16c8f2f65b2f078a273690f008F5b3310b70d5dd4a86d723d0a6cb01d45e3d7293921f24738e7e2742f30838edea77701c65908289c9a01904b1770a92e5d64a2fb2aa95eabb01) (F 0x7afb0f5d9d099aFb231775fbe76137e11db507ecaa8b21d9da4e5ed69491ba5205F55c18f0c2c943a15448302cdb122d283b4906a3b809f623bdf78a0fd1b356f74ff32ad9248)
- , NZ (F 0x46529c5951c4372e37a3d1ece7280a29df20cde80a08339251ae625eae1912d8750402f8456b52aa777fb50c7ea13a5d808b2bfcadc71e6a20daab454f00f99dbd92dcf6ede98b3) (F 0x0e7e80d0100c8debe14ce1286048fab7d4535d84fdd39c892ff56a7cb533a45dc911329c3dd3c16950396e780a7c606cae635e3f483e36857f9f5de9b691c679ca755410b7a3970)
- , NZ (F 0x25586ca3bd7788cb2928226c224243f37608c7c7ad2aa1fc6b7e7ece4eca11eddcee730ab074edb6f108dac19bc448c7336b22a6a474cf0631c00d64F722343a3e0ea9abf9b74a) (F 0x6149b02f4484ef31949a43b4aad97621d68d26b212039ef2f5c1d2316f51a6266bd160b758190bd39176b702d291dfb73F12f434e203c662e5f05f7f7ca3b543ef628465508b5a)
- , NZ (F 0x41c448100ec5a217b405c4b33ce6793093f8ee8e8aa2cea6c0a88be3a3e3303b790d45ab6ce3c23b67a11035af4172a0acf4add228f89bea8569ce20b168a2c25b5959ac8fd7d31) (F 0x0686d719f3b2a8769310e9d6421344a0d125a68dbc00bccba0deeb0844ad2d42725eb974149de245a3f74ea16e4a6c7be2eaf4d36e0f47e027c5f9d7eF4140d8b3f1e498548d90)
- , NZ (F 0x4fc1b5b494d45e55e178703442b7569dd7dbaf27c3c95b29032e8d0edf7bbf903e6460c0353eb3e7bc515cdF26a718307f2854fa523c22a9986e87c3ab1e2396966b53059620d7) (F 0x15975aa8238c4d75be2a7051944a46b54888476ddfb1203eec467f93d2bcc28cfcdec6ad1bde4c9b381917ef8edab3704a9687ec0dc67ee094fd0d8ffcd1447e37f9a054ef76f03)
- , NZ (F 0x21f61994a5d5e71f8958eb556dbc7d1ab8d38054aa0ab96217251be5ee600d393f69d8e0617f5b957F4801403b57cec7ecd621fbb237c2fa230d1ab2ac6bbc0847570f08d16fb7) (F 0x186113baad161b25d320604f1d7daeb4dbb4e8756b89db307ba48dc50728fc69b08583046ff7418cf9816020eeca4f7f375876c7668c2ff6ce6745bbac6d73ba426087eFe530f7)
- , NZ (F 0x25dedc0d8a44F85a2616fc9e4e649f5642ff8cba4b5aac7422c6ecea78382ad8fb301e14bc43c228e47505ed95f442b2e5722b24b542235e3a50e5244d5d6a9972bdc2d54a394a) (F 0x217454e6d3dd2c42e886689e152f49e8c2dad8b46ea66669c8f4066ed8aa1e59ce3cc98c69f5e8b64f98a4bb81d2c76cd75b242f6e9a37c3c78ff4953F17d641ce73def9d4012b)
- , NZ (F 0x22cb7ff0125ae2bb73034fd2bcf47ca5f5840bb16e263b0398d4e9a1ace3eb2643b31121cac3f38ba1d5d2777f0b810f3580057717eef55c062f2c01e8dc18794Fb86c59d31df0) (F 0x1dd3c39a433b8310e762097b8f42044e095d3a65ccb04239eb3ced1f955e62ffd8c331cc3113520d555cd6fae0bddc5a4fab2cc9ea6c7b6eaf8e92197735f7677d427cde81c59d0)
- , NZ (F 0x1a01c0c2412172ca6164166ad8cd8f89e190643f676028a9218d353d335f4bd02d914683cb205a60a20f2f72771558b7c0925c3748bea3f9adb7ee1adee58aee395b8a23984436b) (F 0x16ef53c51d1f94f977113f45ad24fa21b1966045f0e106696749bc6773a9cdf050ae7332c60c148466fd35e402fdfab0c3a241d3764166cb73a685a5a7ee6bd9c04549262ae4e28)
- , NZ (F 0x27f137798ed11e5a7a779c60b96a5ff4f4c221626dd5a8efa26a4d88a1571144f078caf99fddbcc401c12bf60936a4f5af7de5c2d53b5090e8a15945e3a132d47987bd702157caf) (F 0x43ed3bf21f3319de51470F09ee9cce825517ec90884fd232d49124f8649f3fc9c0bb60896611f420b8959eb19892e60d8efb2325be14d81ca1887eb6e774de0c46619781c5a56f)
- , NZ (F 0x068b335f156a7be9f6608ad33806da5d5e737eefab99ec73f3a1d70eeec16bb2e056f577c5a4a073aa55438958ca39b43f567364ba7cb93b42e162f9efcba9a2100f1f7c9a76a31) (F 0x3b90331f1ab28e9a7db099828ec6c4691d3943fa9542cd6374bf928ec20b9d11475b2424a0e2847b3cf6e22f7a3961c88674d0c159cda08185836c8c80f6e0bd9f705e075d18bf7)
- , NZ (F 0x2b7e886af6121b60151561b43bfa26f55bc9dcc9d12293b4a1e6b7853ea02bc666321a5f833255a968053f96bbca954b02a8ca68235adfd48d425c441f30e1d56c0c09ca1308265) (F 0x68c5a80f29c974389789F97c5941de364179c2ff851574ae6a1f0db89f7292c00a9d16b763df833995d6f3833fa8abbbb0624a5135866ff3770d93914dc51832c18f2a1bce7f5e)
- , NZ (F 0x5f2daab021951a858162779cc67f5233362666f40f493fdb4779eda646bd7ed1c3df6664b2fa3b9f309c265cbc48f00f527be395940ea06499310be64dda535cd6418adc2366388) (F 0x2f8a3e95478390096a21ddff2ae025f15b9f33901275fb0290d233386711c322364c36c7b93a34defd8bF75a3d53382a8bd79d60463ef7cf1472cead60f625aeb9b040d388f93a)
- , NZ (F 0x19edf44d2Fa8c6d7edcefb6a2678a9015faa30e1ff19fd4f8d1691a7c4c8b61b1216f1c6ecce22a09f958c8cd46e183ff49c75ef3831c1d9040830f425f25d3c02ce77d160792a) (F 0x791953acc6cb7b6abaF82f88c374c2f2948136f0c4531442484ec5a8af413306df3d2d4a3a62e412676363c0a8d9ef784e63ae6F8733ce8d0e593a75b34ad7929e8cf525a6246)
- , NZ (F 0x00f429a3cdb3485db756523cbF3bf25222b4ba3906dca927841928355df75267f2f7bef9e485f98152140acbe3b740036eaba3990ba06389f8fbc81e73eecbd07ba22c15f9b52e) (F 0x691e4f064b51cd7b9f20a0e1b9b19773ea33918e372b4ac7526dae496206a498f399bd9faa3fd38a980be67e33fd938ca954eb860ea44a57773703e297e774beafb549e3890fd74)
- , NZ (F 0x079426a275a79aac01dfa1104ff27d67ed70e280945a0df02f8d8ccef3f419884a71802a0eed4a88cd5c16e5e693014f2f42a8126c237664030607d260cfa7ca3216aa4a8cbb023) (F 0x2d0a5e2a362f18c20be0235590b52bb3166f483716727b6036ae08a762011a767e20559617e1869cb2Fc2d4d379e7d5ba06f0d1ffa99c69896f63af173734a7268caa05631554b)
- , NZ (F 0x160dfa75e225cd140ef77a85ee4f03fbca129832540dcbfd73b783707dd85c35133dd35df8b511a1a77cc7824a686c17c4d745443aeeb2358d5dfc1107087c7edc81ecc595372f7) (F 0x02916a1b08ba34e168a08381f7162710e3c47e1eb63062cd9effa5bcaacc5c05a42722838d34ffd0323cc39088fa44d2d74b295c32e7ea51c490cf9a3d1b239d6f1068d37d0adbe)
- , NZ (F 0x2a302d3ea74d33f2e15da3e7703b92c1abf9614a225bc572220961fb0c443533c4ea58b701a577dd2f8ac97aaa0b072dbf1dd90a069ed0b2b75809c55204c799b23406da4c6406d) (F 0x5d65b544c825d0e58f3988F59d528bc753091a190dd426e8c33b34440bb3c22c91ef72bf06d99634bcf598d1977d13ac728806fa0b9ae3c3f6acf46d03d22f71b47a97ea019e03)
- , NZ (F 0x2f81e1edaac506077ce38e37b9fa4b78d9efc62bdaf0acb502ae391004bebb63e56cfd101dd6cf43958870b648962da26c60fc7c4b73ce3cf3856b772cf330beaee49b90c9f7a88) (F 0x459c7f7e5b1e81822005293904015345dd058a3a57d86b79952d867367d46a408853e688b12b2936860f90d30fa1dbd69b5fd775575c5f3bf62c495c6a84a00bd06c92e5d813a7e)
- , NZ (F 0x7d4875b384a303d6d28acb72fc6c2f176afaa28abd10bc697ee1077ae5ad27fccf471f0c2a9a9b029a683db24b26842d2befa333f4cc50833581b30adbeb5aa7668d4a3e904f7a4) (F 0x634934838d27cc224771c35c7b8bad8c7c0F099c8c8287dada53F6c5F2dc84af4fa6d3c596e9f75c715c02f7e212b7e7e16710a480dd1a9187312715Fcafb00f74916488961)
- , NZ (F 0x168c52c19d09123b56aff579fd1f5b4230a6892435605a3d74ff56a4ed81238889efaa75dc07befc69b95e154fF148e0c3fd6355b38110e13bc6edc6ab4ab43ac59210e2b2ad9d) (F 0x4b6adedeb50e2bc0e4c83d2a4e0a9edce71d0d0f74e85fa8120f91a165871955e36c960d4754394af959339e574bd033fFb13c92a33a3665a95169b0efac29f5968871407f0366)
- , NZ (F 0x0181be7390Fa6614a3b510707d57db684abb9f22b277f58591d88f064d82cbeef80f222ac977f1d60e4fa38c7ad3762366622f82119f25566814003c212ee1c970e9aec04df947) (F 0x11ead477262c8ac9be7217e8a507838dcf1194e942b28ae444e729fb92d7cf27a6bf49cddf0d5aeed3ac5f215bc3415d828e832d4c078c31ecb5162dc4bd00611e261c00330ded0)
- , NZ (F 0x17d4ac8243b7e83b4721ef81f8e00f5ff50ed4f67d8636936c3d30e6452eb98cb76ee8211633ac748a3e0c870f3545f2e66006070d07492cec1c70f6d5d4012bb82702cb4f9d259) (F 0x2f76c21b7fcd94d4f1cf2bb991a7103d808d8d23bea33699cFcddc0b649fab5fa78822f4213e22f3e857fa7b14e714351a63c1de58c3637f7b4c8b85cfb2d39be9ccfce775f90e)
- , NZ (F 0x6f3d7cf0a49f00670ffFcd38a0dc2109c4fcb69eff8ef9d389a24405117c0b1a9bb34b89e183da796c868dcd5c25e6ff9b955643a3ad123976cdd888a2fce3a8ad338b8538119d) (F 0x74513cFaf8916db7ed776f0580c1c6ff883356dc766ae35e8b01ede9e8f85943e4F34fabc1f511ab736495827526ca129b86b46762dfd2f8cce06fd9f63cf9aea4eecec1b710a)
- , NZ (F 0x2e39f95e09F6b2c53928e35a073a1cffd2398595f9b30fabc2d3d50094695929cfa1ef32f0ac2b17404240d6f91bec9760311553067e5b11bb36bf6574b6f14bc7240e4dabf5c9) (F 0x0c575f3a2357634aca8d2f35a0105fa6a421b3b0f4abb1793c3134c410b43c6c6265026ea9200e12a8ec62521f2c0085c2c2041502c1a12a1a00b6fc2563354b10e9f4dc97e3c7f)
- , NZ (F 0x7ff72ca473925ee946166c493ff733945711d87a8742a4783283d852f2cd511c6cfde8ac4b0720f7e9F3ec7cdcab2fb7ef32c968c7ac56d7634ec7b9ade6686984d98c169d3eab) (F 0x42df33ed5625a89e09f8a71ed06140af858f90b6d77afc4420d97a3e52c9cf429923e609e77373e98572cd1ab5e2a37d79487b82dbea6cbb067f5bdf569ccfc8c4b6d9506ba1cdd)
- , NZ (F 0x3fc70b90ddae1aebff85cfc5fdc1b5123b687c4894205c3faa88f00d121a245f1208afde280eee59153065fde5783d65401ef792af313e434122ef528bb0b29448dd4b8d2ffdc36) (F 0x25392bdd706625df1f50ae674808aa034f5b68688936187e2c2b0b46525df8c154cdaea589a6875b2dcc151e7d91d0f6bf34a5ecfd8246a74620F4c0b5793bc312948352d8d002)
- , NZ (F 0x34bffba954ec724b8e11aa9c7fc273e6582cdb532e4bfa7de98736dbedfcbaa958df29acd10df20a8a0f46746242a0bd0a316384eea5b9450efa104a5f2ef070f8bdfab4c55fa2f) (F 0x4a8d667bbc62397a8cba0c595123eb211c2f9830693ec16f86a10436ab4717e3a6837f28e3a13b4b0f88c89529998a563a66ab507894b7cc9649014f31576d31b4a798f698ddFc)
- , NZ (F 0x76ed06107c5731d0169900ae0261adee659cfcf0aa0c606b5825666271526285784241a11986e63df5b96134225b08ecf9c8c92c81d2b7b4e149aae8fc2bb94e7ded71aea9c3abb) (F 0x1a06e445f53e801e198df38863f061db929c2624e216c64afc4317fb33b41736553a82814ae177458eb35d22f8652ea04fb777cae7b7ff08118747af2466d7706cddbf33a803047)
- , NZ (F 0x14288a8945e60ee5dfcfaad48ee25a980b854636923ba501dfac6b6320e7a3156a1da66ff9f0d73cf6d4739d4b0f9738901dc7f98fb351e5146c0b29b26e62be22a95615727f042) (F 0x22a3992f79f325f56d3dfda922ffc1ee32183f3cad23935bc9205a25178522f819146ae1ab7b196fbdc03b86a131217c0a9f9950a3f4a69d4bca3ef1571676087985f94d115531d)
- , NZ (F 0x21612a698b6e22b482b6295ed092730224f1bda99abff69185e23e60e6c47ac5315bd50926163575308c0e613c6af01f3b0b2a68eFfae2b9a0752fc3ea05a9efb197b5a8fddaf5) (F 0x5025f9b2f5462971aaca2d1d4e8fc34c48f32f4cebb1a1cc954046ed5501594b38380131b1244891fb3ce1df7c4190b70d1b330e9a96de3975111457aa94e4755f463c0963502cd)
- , NZ (F 0x2de65eddcdc92e1eef5a98428b6Fad1129837d8f1004cd36e7141b8fbb8d8cccb6a747f954ec08943fb6d193421c4ff59ba55ded8713109b481eac96ff6b76f1512c1eaf888ddb) (F 0x5332b975baeb568e577e2d330565b4da79cbc021ad6798b4a51571bc4b4259072b208a0d82074bf4deed0624ec0124340472b6efd1341e0d9d909f32937d0c6f20fa154a2b2607f)
- , NZ (F 0x423a95a8853c492a486a50433b45fb38b15d7ad979ca0dc22ce70b6ba8ddefb849160629360f3eca5564c5720a07928b997ff886a88c530b740bb14fb35842f4995024dad98fabc) (F 0x1382c0a9d0d7ec7e20812a07d013c5213ef0fdc9F04064c41669fa70d322f31e0213faabce49b0143da9c4ebddc5143fafaf9b68af8f1bf3e4a6f3ae6cd8f618a88e5476a01696)
- , NZ (F 0x096b771794fd12eebd59769361a2645ac12ed63340f2b2c637b0181399dFacde2008961a41932e17f2a6cc2db260a2fbd71ecabd4defc8b1e725969406ce7b5a3cdd407662b272) (F 0x531e528b428e4ba8246b270510fb3eb0d3c843d3d3d1015a843ba9174c70f0bf1a6d4bece843d06ee6a24222c733c96240b01455f8878bc0fdb5e52777c599e50566f101c348496)
- , NZ (F 0x2bdcb26dcf6307f2bf265db10a34bd4c02392dc7eed1f2793b0081ca3e17d4602e3f6af9a7ab24a42a6d483e67cc2f8bc13726051760751719eb795586356104fc2067bc882b818) (F 0x0816de43570e277e8e3c3dff2d91d8fd727059023c920e0e67d393102d42aa0946b45abd236914a0e7acf8497f5d41f927429c41f1368dfd3d20882d70dc9303446ecf08b8799dd)
- , NZ (F 0x0b51bb043b5b03a011a49ca7a4c31324b9a4c4eca9da29edeea192780b120b6ad2b8f92f64f0a6092eba2336ba13574328597ffbb956eb4a4ae4d48805d2b311d73dfce31fc0F7) (F 0x177d4cf5650a0a5252990177d55147b70d6ad06f409e7450c62dc640b5e9986e97cb7d5faeec6693ff6fcdc859a94562e39b5a971dd5af05de05fc0b69b8fa8f200698588492e78)
- , NZ (F 0x3307ac0b96ce2b59da5770706f8dd26df62574b08728f2a819dffd67603fdf0a3f4263609c54a8e86e9964437e8ae2c6195448507d362c0d91805f2d463c6661272428d47803368) (F 0x2d794fd54f5022531a5f7ef40e62de326033fc05de9cfd2b5d0e2edb9a4c26b111c5f330e7e8864c37246eced96160b5965ddabdeca645ec891eeaad865d10f7ab5e1b3cc61a127)
- , NZ (F 0x66a8950f33e519961599740654736770a2ab14dade2dd1d5c99bd0c82279ef2f111d179d74921f95f20729bf95c84d0aa9d6dd7f106b5add2b2af2f5d96c31fc2ba81a786ced73b) (F 0x4311afda6a5ed05d543cc3c1757010bea900c5e0534373c52f3451a55624bbb66aaffa4fc8852f5992c8fb80bF808a79cf7fcea70f58db7fb8f1d42c130ec091016427adae988d)
- , NZ (F 0x56368419397aa0f0b380ea041d657aaca6da8115bba015e8586212337ad5b6bfbef3648070f668450d8ed294e4e0c59d9b9f3c9d11f3dee11b05ae3d301422966ce649e85f1d974) (F 0x4203cc2c0ac78c6e35a4311cf55caaa01491909aa8408c73df68172392f99678dc4c110e46e9e04f2804d81ee9f092716e39e52a91e39ff716698ba43b768482a4125ea131b93a7)
- , NZ (F 0x307b41830aeb742cad760b5a1410f32cccccd90c2fbbba150b8ebce1f2e17844c98b2f8e00dd5fcb342c31f303b41c639e8a7cc7a0805960a4632d6f73f26b053e70672b5e448a9) (F 0x32a40f4f7af8c378bf521959e9f226604d6649f1103dd1eb53235714b7b4b0d6f5573584107367b8593233da3330537d5bc051413c0be25edcfd6da192f0f20b2456709a74a2bb2)
- , NZ (F 0x004fbae84415e240af6831d353Ff738d5757c03f1125d96bfF3af48b135d052d2c9d3c83307a49677bd311f11dabb9b20c3dba153d7bdd5e7464159f5814528be586a22d1dc9b) (F 0x3edf41bd701e3608a7c2ee0b197d3916ea59f6aa132cb838e5829bf962621fda2d450b3e5d882d3c643b32a869f233869030a5c7300194215a5702c07c979e29d3a370f8338314a)
- , NZ (F 0x7a8097c0b70bca06b148a0618a330b0bdd1fab96ac74fdfbcabbd614f821485ee2d35642bdcff82d5e2ebf1636cf5865dd44e2c1c6433cee0e5e1260e9d4de088924749cf0629ba) (F 0x36e063798b6f3fa0b5533b77decfbea3da055f8ec487bdae7404b2e416ff7eae6de0f009ea9dd91105104e962a228672d8466F242328f6b01c2ca8b2dbdacea0f55990d045c5a2)
- , NZ (F 0x71422ad9e928fd6fc8dc63008596b31cecff8c31704b94389bf619a47bc7e43587a9c5b0217356b5d42727e2fc2ccf796551e3c58ced662c53cf3166ea992a3a99543cf48b355cc) (F 0x054bF735a821dc3444745a45c32ab8a7ec6498937c144417808919cc0a37fa104f246d0f472ac9e8ac13d3a7ea00b6c45cb129ff872405e6c03dc7632ab9235290163eF23ee40)
- , NZ (F 0x166c562644ec16dfa23b69d2e17c2ed11724ac4443e285609cd41e70bdac81fa0c2b2755fcbb6ed1d8a67d05bc102F88dcbec844d2f73f1e8714ebd591e7b625aa6923f75f5b7c) (F 0x13795d52db23668d4928ec3637a9db80197da8204c852d6cdea230315ea643e2eF7dda28a6052cfbce122b827ad06d8f3c09882320f7f488c5f9634c3a232f149101fabc588d16)
- , NZ (F 0x02c84ce75541db248c1ee7cd536c41093225ed6c5ee686399b8d8867df3e9e00bbfb9d102465b319ba1e1debd56b0901757fb91f8543a2c84b964c58194dc7f71160ecdd7800587) (F 0x70f4a2683e7bf861a685abd75768Fd0a90cab72016bdda7934d0e141623be801ee9c841eaac9479becbfaed609e4d5ea9350744cc0f75f89346d70ff5b0e7b318f897c4c5d9a40)
- , NZ (F 0x1f39bc9579fFcc238b8a3127d8c58d12dc91c300667ef938c8480ae0618fdaa94700e20c3c6f1b926cf76d8d2bd13a8100e181149a5455aae17001b87c4886c492ee720e6b1f7c) (F 0x495d96dd2f60035b10a3a797cd6dcc4c0c26181fc6f142100f61fab4e6555db93a43c7d935e373a1a2f79c09b7a25049e7a9def9ca2e09e6c2a3637a63d732807428d1abffaf027)
- , NZ (F 0x07472b11e2db3d7e7a0c908f3892b677a1ff4e9f811e84ef989947d6405b26510aaa6d3fc13f69da8f515beef204f70d66636ec245134a835f3c514d3a7997d909cbe113b1de1f5) (F 0x535974847c45ec235da59b2e30325e8fd4dc376f6a6172c6ed3e83cbbb9f01a5df9048f5c302057dec7f8a3b41a6e564e3628bad4a9b93f4a90a5ab49f5db186c110585899f0216)
- , NZ (F 0x72dc171533b94844a6598d24c9ff1a93f19c026ee66f5018f52fF5d646b8a3a66767684ce67e2eeac816032e96c5dd1ac563Fa4046e71b00dc054049acc05d903c64e800e9bea) (F 0x530705a75986d869d3184178a1fc3f154261f02e44527f1b5f65836e768e150a0d0ec5c0c97186a62d0ecbb32880524c44f638e9c42fb6297ec2b0f8f80d72b1940a5Fa3f98dda)
- , NZ (F 0x4e8c1f006d26773193a6b0f4b590f8ac11ad6e0ce38c1676e1da67fb1e012dcc859a42570ce8df738c9cce3691e64f0e93e661abc5b2752df6c29b4af66c4e55006141ecFf3bd7) (F 0x321545cded7f3ed31aaF0e5e47a1c62635ae4b91882d17c24977ff52d189ea5e5da045e429b945d2ed9619a1b5ec716d8dcf0e7f603940fb99c07956a95a783db6b2b85742941f)
- , NZ (F 0x2b2ab0cb39273a796eb044eef41fF1f8fbf986f31273a1f777cd66e90e2c8c984a79b3a8246f030f03d713d06844da593a83d5d44b6a950e809f498c60e42e34575938b2909c51) (F 0x7babe04F7ac6c52f6b4443a841089de59acc3d7ca835fb333536312f527f516d8faf98ed11a58fa6154f306d711502364dffFf307c55eab1f14bec47ae949481a9cc3d0871d17)
- , NZ (F 0x22c60409b7f70560f42f993e92f9d6bfde05d6a421715e7941c46f47f0293787bf6b7e38847e85b840e7fbe976e6d46df7dc147751b1a24046c64239fcf136ea9924fc8d019e0ea) (F 0x2e1290016802f2310928fc6f9c288c10ade6008c1b2cf2552bb381a41401c1b29af5071d990475a285649bd6549b366755a098d8cf3125c14cfdcc72515d9da5b868528e26173db)
- , NZ (F 0x695655b6c673cc9077a2a41cf6c5e2c29d2979d8f983f0e867d209aeed4369d0a457300414e4f150520541c59b85d6dcad0cc554617a5e9f91b3e8a755bd466c15d7e5016dc5196) (F 0x70e0bf9e36b565274ecbd57d28c67d375ebd6408c99be237345e7820e62e1ea41c24aacc50106eed89b86f47130fd69a8f07caddac547a718adceae6a6b9a3cc923a868ff7471d1)
- , NZ (F 0x5b8ddba46b9f82728633e6d97be442a39100257a7325d4009bF83e0ea215537bfbedf5cfab0a607c5b556e217cd199a5cb3f189af67f1284f8555f70c14ce1f937300f88136625) (F 0x20d84fc6cc1e97b3e29a109a955F879d54a2b8b8f2c3f7f96aa0e53f36085bb90d0817db03fb22c9029490dda850b0F739a16b0d7545a68a9acf1bb80ecdde410c50a87e54f33)
- , NZ (F 0x6f250f2933db34d7a9db7ec3b803a679cdeecd9d36fb94d05ea8be33543830aabe9e0d2aed8244e32fcf7dbdfd8283562dc6cd5fb183905f5ffb306548f3ca9a90c486a2f5f3f79) (F 0x14403c1e7035af9ddf373bc57c1f4399e1d7e85b7b535d9f5d98d8d50f0bc8a7d018c29a50c6c96a1bc4dee66b36031e29090da9394b683d7e079349d2d9a3ac9e9a3d4bbdd0648)
- , NZ (F 0x3cd4143b60d10e668c646cf61c44209d435d78054397cd03ab34a258d9e6b8c82b02a2ff8d837a2c33ec8604a9b5c9F36a4d463de1b4143cb580c8431e5fc9f9b50f5e60F8dea) (F 0x57eb586f79e4b7c07207897ca887cc40f599ba9005f0a27fb20e6dc51abda46719b602a92ba7baf168d02552291232ad0cbf4abe67d54f84c90b47fad1dbdf5c180524f9d2e5314)
- , NZ (F 0x1b0e5433b791ea88bb643ada4b305b6697bc054c53c7f693870db9cd61f4634ab02878c0755a2482b2ca338dd6809a78f29d1c3b6a58217cbf93951065bcb64b2f5cbaa0c94a7c9) (F 0x0db2b12e0f13009805e8f4def5df491fa5fb08347c019f01649369993d6e1e6b881b9af9faf14f5c01d49cc5de9732e166e59c060b4cc2731ddb8e0367f985d8dae12F8f376005)
- , NZ (F 0x3645b20464802111e8cb37adacb1c3b0c90502f58f1e602ced3afb08b984aed7c6adaa0a952448838d1e1ed3ef48285c59422353e77320c547aacfb202f24240a196d63eb006ef6) (F 0x455dcaac44388e02efa4a72d052412dbcf677a159b7c96a9750def2d4114745fbbf7f6354c9359dde6aecd108c0e41b9e907d9b04a8c321f228b2caaa3c7bc2a8a922cF177cbee)
- , NZ (F 0x433a96105c2881bc8908a7d6c3755b47bbc34eec65dc400a8a6dc8e97d1dc23733c0d08718d2632761da92b15b24a94ede97117e763ea565237689dee6afa61b575e875aa953b8e) (F 0x72b6097b4ac162ff1316dda2bf576211bcc78b56364560b4d50ead7468697c8a1d8b398044185e07de29aa74076c24b93f04786dd94bbF92f616f4369d17d6a0f8cdd52ff69b0e)
- , NZ (F 0x47173ccc97b8625c1339d5b3e78ac2b966b353e08f1626ef470f729943fa156a2d750e077b531c70fce30450b5aba6bb9bbd4530cc852cbdd316e3f1498eeedc47dadaf4c83dc75) (F 0x669d383bcddfc0b1af6503d01Fad1ca05c30cfd749873b66ce0c19c10e7017eb24ed441c9dcada36080e02edd2174f0c75b7d8559acd289a2bbaf01583817b83e77297ad908de4)
- , NZ (F 0x7fc2032e880fdb1adcf7ae0f07cfdb667aa6fce61254e236f8761d1f8e3581b028b2218f37df3a516cfdac6e1db748f167fb4f791a13d45c7b3caa32b236734032c032ecbb17b62) (F 0x39ce2ca045d4db6086fb45d570eb2dfcd39ef2b06f2fdcec796a01c70af7c5897c0a12b76be6de06e2a19caf0de002a42aeb036d632edc8600d8680F3d28aea3d91a3d11d5b5bf)
- , NZ (F 0x6e467b84d3ad0e0ca811a0a84cbfa82840b9f5bf3b99b1aa53ad99503661eecd02996d50be5fd813ffc620F44acbaa3f8c11Fa807dea8c53ee8fb1d267856224abb409fced51c) (F 0x004b780680475771a7dad0c56d8550230491538da83e471db9dc22b844fbb38c64967bc72ade3f01e2e522bd20b7b96b35f380f0f00da5869774df9a3b735e4f481e9970121dc21)
- , NZ (F 0x2c00fc16ce3cd1d0ab4a4580d282bdb5bb70c7b4ab42562484a0541ad40a219ed6cf19c0426ff1fbe81ec1b42926d718062351aa10f20ef499fbf37f836469faaad173bb93eabb6) (F 0x6fc855eb5befa5932993671361e9ef8de0fae68c821a6e08b688d81a29fd0eb1ca83b602cc79de0abd2fddc998794249f48d26a67dbe970ab3ad7d5a373Fe5a14ea6539a3ba331)
- , NZ (F 0x13094beb67bfa3186a501046196d6704607e475412e914eeee2863b8057590481b08d7a1265f30f66b3c6e8c309d428eb2d645b6432e415db7ed0eda947Fa8f82e05d05a656861) (F 0x33faab6ed66c267f497703d220af9b1038548a9cdfb46ecabef62e2df279bf456f934987c68b3b51e5c679d4a0506e9dd9a5e6a3a551420b1c26229ec93c4c0676d7219b6262666)
- , NZ (F 0x5387f3c05734dc50a4fbbac8d0d9ee86abdc044dae90d7ae40c4348279a36ccb31ba2cd72448d66b3c2fa06a468e990660e1802d79665a248caa2fa4bbb066574b021ab76fbd8ff) (F 0x282d5de7b07d73bce212de0b9d01d9a72804363d426c6adc4033eb2b9b8d0a1169268e59f2949838f8298a09d8dc1721235d18d5168c1f36eb8b2c9aa9bef156b3e63b3bbd52a5e)
- , NZ (F 0x30d88ae0871b383808ed8c955959f669674a9bc226b701d25de356a089ad6b5011a87091de2ce56d41fc87cbb782b8ef8b23d2087da1ac80e5e7730949045c4a19832f916e17228) (F 0x4e73961de2b2679b8c5dcd9642fd79af9ae2bc51333864d1c8f9465aa96f89796b62bc570188e004e3446e8c5a477b5ef44917c9cdebacbdcb6b9a6caa6a1e67a475b84e087e8f9)
- , NZ (F 0x7a76eff48398f10670e084e039d2c0d6785ecfb0e5095d786936f4f720d0de06e0d3b8445b2a1e68206b6c4becdd8af295d79360b59acf8d83aa2e653117085c498534bfd2b55a7) (F 0x527F74d6be6d27574ea392518657aad2cb431cab555e20b0c7391c6261f68a3e697946fb0a30d29c663cc5606398b391e96f2e000f1c893565Fa3f3a56fb1228191e0e44814e6)
- , NZ (F 0x11af2233e9141df73290ad7c87b8883e588ea9233b9bd78c985b2480344e2b425497e0d0c1c070e852a6e7ad726291f76d43035a804e19437d628113b04220764b5d3657edb6528) (F 0x264f08ee0b43bf5de7ca26a606069fc45ebcd79fc4dbc3ddcf46b7e8e675b534a44277b654a5f04b00beab2eb13d1e3cbd72ca81bf2d307526adc52f581490fb1fd030c202b10ba)
- , NZ (F 0x1331a347d20fd3146c97610f1535f38b8dc6d7bb35e7c19Fc4800c0cd34c6d3cc065649a26a0e31017ff74e3c806363da1654f8c8d52f286687e592a9055aa5b91cd4159592120) (F 0x58325ca11e994F48172f7eaf88498c37c006b9f80e7159bd82b30e17805597c135ea13093e90c938830ef90de1a662e7d87d97c63569704e5a45b56b23b758bff0e7553f78d64c)
- , NZ (F 0x7685940c33e76abc13def09b47a16d7da7cd281621567bad8d78987140024644ef6e1fb8c66f4749033887b7844560da0aad83c34d924e8Fb3a7f505ea994ed1d36df6e7138d4c) (F 0x2860c2f02a0f259696c0dffa69fcb215d1c0107285c72c8dbca67ab4bc4152c0b846cdceed81b5e0cebe82ac5659c2c8e90c96c4456F128a7d823291da7e4ec258bc09c95e849a)
- , NZ (F 0x21f35fb874abe85b36ced75614dd3d96c36bfffce048af46c3c5099e73c13350dccff78d9ff013ccb71471267e609ffab655f4b7945275c479f22234d86cf7659073865c20bdf41) (F 0x116353735ea9a24a54dfff3007fd6bac0717fc74d1c030c5d6d1fcda9f3970355a793084034f94a16d9f31c310820a1c4417f8ae078bb9be017b7e90bd13abd0c0c7338933202a5)
- , NZ (F 0x21a12705c24f16637f698b37c5aae0a1de9e88624a3785e987cad86cbcf7a21f2e50ec1b64059cbc343f73773d7e3b56e907f5fad26a409d5d4d059bfc4b242ff256dfa385f80ed) (F 0x340bbab94c6a8f3cbdd2c2ee98ed15b79c28e039eaaa677fd15a4ceb44ef200b281fc4ff2e39e35e5f7a7d02d616bb5973c8e32d8fa553ed1886f6409e588ea6b500f526b6da30a)
- , NZ (F 0x141771444ed47f818a2926821f79F8ccc11a35e4e9191a8e2f45be2ad867d3b405d1533639297ab3bef2584e2eF577bde1f69d0d066d82365128f3a650609322908254f578dbf) (F 0x4b4009f7c7da66c2caf4459d1ad667051db158c17b7a932326681ac878e4Fcd3e968e545606dbe1c59ec8e655b060850e17b180248bc63c640ad7e3ef1805a18662ccc3716ad7b)
- , NZ (F 0x59d917113b0ef334b1130c40221b5b0243d81e296927d7Fd261b13b472a697087caee2554a68599f437e126f71bfb1120140cc4c98070ce04c0e7a4dea17dcd33d251578d1edef) (F 0x1222665e1e3b84ce6dc4af88e1e5670dde191a9790b669b574a358d3c122182989a051bee0b7d27d2aaacabeb94dd1c16310450c7d2f46c67d0739042f70a28e85f1cd63d989d54)
- , NZ (F 0x5f4b8bff19e055a2d6e31cf6d02c7f51227a49df4c1d7ec0a47ce909c7ea7dd2bf0d8eef88da5ef5c0bebed328ac7cb497796520a5496c445bb24246f6b9c000cf4fdc507945621) (F 0x332a37b0f24dc00bfde9beb5498abf895051b12dda1b490028a1659f791d8e3a7babd3a36fcdded0cfff6a241c9018dbd843452b4d11fd8a8efF17853bb4bcd00139c2c6ab674f)
- , NZ (F 0x3276c232473944daae96263b71b98fd9c78c5f5fd570e2982e4Fa064f320c17881F8ce943f5d158e1bd28a76Fcf345cdca9374d9436b8e6bb9e47e72d048005c361f45435b53) (F 0x6ddc54de7a36ec861679d60cb33cb34c71d53f975214f3c81be881e426c4d367abf21f37bd182b99a5d49e383b490bf34863c3f2de6493c8403dce446e2750251ca5c2d227220e4)
- , NZ (F 0x22882ee6f24b01e11a1039a3b4e35f406580f1d79e5f3d777f5aec8974c11cb89f8fb6bd9eaca05e4d847fa59497b1dd60398c891e2e550c5137b6282ed7566bf77a879bd293c5c) (F 0x3bb7d76aae5206e279a7d00331e69121f856f2d59821bac10b04f50248231ce2a24047cc6c5c6253defc55052174164a2cf5a882581f0a5a5f3ce228171fa9b81df93a856cf1474)
- , NZ (F 0x4e3b01b254428121de747f326f704e4dc93f4dd35b0eb553f114f69df5387a5b656a8272c01cd247a80f8b6eb22377f6c3a6eec402d9e0902f0bdb9fbfdc972ad542ec3759e42e4) (F 0x30360a49c21bc3e0eef159556e5ed558e75ac3e3066ca48236af186577008dc951ca70d66F4116e4996f69a8a4178c1757fb61d82aeef89e5fc180c2a1e4ceFd2794e129916ed)
- , NZ (F 0x42bcc5213dff1a14c2f13e7e7e5ceda55f8cbacc1c261040031f305bca5039d7b5c9a4816be9fd1a861290491f3b99da1adc9c8d8636ea7a9ea679Fd4275a0d637298e8748ea7c) (F 0x055954c005a2b9dbefd9be23bcf25a1764109e3f35eb3620f04e63f5af2fd725e1bcd0b1000015f6729c486f5aae4e9c45442db990d7f81e401e83f3d674f0421312bF04784c92)
- , NZ (F 0x5981b63db07402d5ff98b6dcd9f5d83b35a7b5d98425083a3bd322043e8b06d3836dada5c056ca7f7dc724ac9b71d51df4e38b3a61eaf661aaa1008b24940688b493ff912699ecb) (F 0x3a5d3dfd4a16b30bcec236324c5a4563835b38b9f10575c1e61ae59295381b80e880938bf255d2a7b91897699ed0158243709375c7e36440bf88f1181b63f5c459F1e7d12ad4d9)
- , NZ (F 0x41864ca2748aa8bf01b1fa490125b6bcabb29a8a8a421954c3a16c39a8288222674aba07c1d1e930d59bc635d9fcf687a3a4d09752b98e1caf6c4632e23114ec51e919b869a422d) (F 0x4d79a3cf06b357062f07be0daafdfbf275fd232509497988fbcda5c1232a9dbb45dbac2e4ec6f6193c15388906d50fa4b55f2f999e54c016a5c16871b9e237a6b818dd4e67e56b2)
- , NZ (F 0x7859676d21778f0433ad95bfcab37a6e74cb49bf4c99d64c0fcb7d2f2cb90f4f85f4d26b5c4865d384c480f0fc816a9cea4bb6ee6050c6159f1440645875f111671b0a629caf2de) (F 0x5997e51c47591518dcc4587bedc8909e415813a430e8a8068fd38133dc574a07e2ed691d1334815d3f84e6885bd54b72fca97318282196f8339ebbaf4e37040362ff1db440c8932)
- , NZ (F 0x0cc135560a3afbd50f6c1402f6b17c8c3ab47c17ab167aa353d0b36d3e114da6963c0369fd0b22b389d8bf3e5e629b7596fa7fb502ef753bcbee3451eb7709edd438adece2b1163) (F 0x706e331ea37f0e68240b814b5f523bd58d34965a2499db8700b9e5e8ad07d09d6812ae438478c972fcf1554f59538ed5bf20d12003da47f966c0fd1f02eef8ffd5503194a687ff8)
- , NZ (F 0x4bebb8afd1e892eb5d6cd21b2627a11e4d071ba21ae12f64c95672492b533f2a9898a8a6a7b06ecdf02d97a4cF9f8977b171c565a720d9dc67e7bb0f7c1bd1f1b1bf35d9bbfcbe) (F 0x66fa35f402572352592461c7de3c8daadbabaea5bda8ab1241e9c98c2028a07ee7f67010338ff3e6f80631de6f8a690606beb6619f7cb57e0758bcbd47ae26203501f75a422f877)
- , NZ (F 0x3318f0104462d74daacfb3ef465aa29db08af15e571e2b0d635b4e4e2947304ead67acb8fc5fdccFe7aa817fb6f60463c5612bbfa872a3e93369db9cb9354d82eeec68359e8240) (F 0x6763a6269eb0def9dffc3ecca9c037331f67c32396406fbbbea3ad80b21a2c77f42e6e7f362c08354bc71a4dc6d64f9081bbb27a45c49c6940005496b8909b041e4d9f20513056b)
- , NZ (F 0x7b0a9fc068b987b555b57213eb1f025b301c5511b546f89a367c79153cea68899c3faf0bf2816c917eb66640df588934c7740a7b2e6dd833d8e7f15fabeffc7de6d7010599f7086) (F 0x5706ff1ad37a1a2b512b77c0bde933d1fd2c628c9016b6949255584aF7e80a520c389348ba21ac67d709f899741764d3b3b32a7aed9755c3a7cfd5bcf864d8cc60e19e3a64467c)
- , NZ (F 0x38Fbe6b1f7360cfd5ba2ae30386e50dc809260e9f6a0e985a536b4ab66a0f29efc27947960F7d491c84e6068cd948d5d46ffb93396099a9c555607a41e5798f635f5b8b269ceb) (F 0x5988659bea6260bd71d5f0ba745390faf8060d36753c6b206b4fdF9c87f7139b1971bee47bbdae3be11aa8e13e7ba7132dbeda26be27947ba78baefc2e442b238c8f87aee7121b)
- , NZ (F 0x126976ea031dcd773963c9dd8d9eb4b65b675806ad55577ebbacddb35682ab6e5aa5c063306b109a924d8ad5b1eec59d5f166958f0c6bd5c4e77baf2fbc382c171a77c759b9a020) (F 0x6391c3a5d6e8bea02e0057b495e58510a37baf944887d4ae392e49ce7Fe1b0e2a6a23191be32b314f6f96f8181ab29e87db7052e1c8b1681bb444c9743b14201c93975f76dd29f)
- , NZ (F 0x435ed91459b56745ae6b0e573b1f95ec086eb438a0fd6a4ed047cf8f23f5c122d42771c52600b8879ae2ea2f5ca51585933b2cd8be388d806ae8997765c39a4adb48da5cf18b5f1) (F 0x00527ca4895bd9ee3534bdb83403d8ef2038bd4b591bda3490e517f5ccc268eb20c20108d4bc050c9410480ec1c36e8ae9d144b48b35c356eee0f044b9853db7338a3c7fa355842)
- , NZ (F 0x52106e19f5dfd0109a4da13Fcee98ae02523f5Fef65bbb4386ffaa402e0ae18234c02f76c499b5fc6ace3df8fa985b7b87b76f8eb3e9426e121948eedae276412e8b5a8c1ee89) (F 0x768a34673ef75eede1cdb5277100c012f03281db7c927d7acace5049755b1ccdcdb249667291731c4725a43c390a9e891b690db63328e0ed6815ecc6485ef5b1bb610b2dcd7bd77)
- , NZ (F 0x2bd7cc3894ab29ebf349e5b3313a6bbc000cf279b3045d25b7f047df2be3a33d0d537a86baa59bc774fa8aaa90dfb07897cdeb24cd1e781810e09dd3ff1b14e940525d2b36e4088) (F 0x6a7cda0042e97af02b56302cff22a5e42645fa9c4b51ef1cd57adcF5b248450c562e17cefd4ab93da38bc1cdf5baf9166e002d8bdaac1037ff0049c62adba3c7c0a3d20e78933b)
- , NZ (F 0x216ad381dfba4e599030f6cf2d2a5525d18b99b8f39f950f11905697f76edd43de389ec20418559f9d24927f3fdb04011658ac3098fa2dfa843c01ccf3ecc0378b580d9f8a42be5) (F 0x04616957a14bc983c5ce7068cb2b19d5a136eaf1f24536ce9306ac64760f5fF448772c1Fedc0613ae7fb881eb6b4b6a9a02df34614b504d8af55901dd3945074944765539fb45)
- , NZ (F 0x5921026f870e2bb470541ec0f0e2F3426f3d5d2133609c8d29bb59934d45fF04f3cb026b5ab359f3a61bdb19c5e87ba49ad4847a6d30b2c7ef091628050137fdebdd251691c08) (F 0x11ba3a1c95d7028d343aaaa3651ad3186b33b89ee972006Fc78dcFa2f125c0454b1ec71a210a921d0f03a739F29d7e0311d5452e1d5f380cc7b4e2926b129269bb1ff70ca3c4)
- , NZ (F 0x20f5265959b03c5da3a2d80726c0367db06208ce5ed5ea444762dcb26bab90a938420a979985a9413cacc3f19e6de46d9c6e909a9a37c90e40ea419c6b90ea7dceb67461e64cb87) (F 0x36aeac023eb19382b8e837d96f1474dfa7f0b52ae777f648be1F4f2b7792d04167808c156f45ca132f4eda0d63a3c9c65b06c341cc34c5281431b67c8f540174f238eaee937956)
- , NZ (F 0x7848c70180a8017f62F4d9a2c34ecd7843f0bbef283aed65a029bc2c3e14ab82178e749f108e48598a88821924c342b554a0b8813dc25aa8d17edd3cb9af8d4d3f92d61f3dc434) (F 0x5718cd37f25f3fa1ed482912ece1ca153866c97b8882a972f59fd00ebbca870c8db275c1fdd5fdbec7121db03538d32984c10fa048a9ff3611cfb73d59dd53db58e096e3d407041)
- , NZ (F 0x18186a692c6b18205101babc48ea94d60b9b44a3ac3dce11ab0f1801fbcf2300dfc17db507bb83d17d99d1b936f5e54ed3edd9b253681d6d7969d6bbb12e72406516f8840d3be35) (F 0x490569f61d6775830e23a60eedce9f7ee29729cdf2785102c01ee479f150d9f6c20a1345733265c795eb7b1a162fdc67187bc22a67d0a34e5b611903863196be9936d781ddf1ffb)
- , NZ (F 0x479c7a1e9cdf562ec140c838238126acfcfcbdd42c20eb1992697cf1f447d8eb65222e2c966e5a31b823b07cda0f0bc87336e55697ffa5927f941d9956bd14343660b5dbcc55b29) (F 0x2fa891b03b5507b56c8887703a89a9fdb1a402b0de00aa64a485d5712fb11f3d89e0d5be0815fdd4745bf131ec774484a139b2c6ed559d6f96a16b65b648f506bfa5c3ef637f81d)
- , NZ (F 0x05d9d50306a23802da3445b35d989c12ffFb07e2152551e0F9e42f16d262b476a2264fcc4221cddec3154e3c21661a6e1d4b4fc3698e8f7b41a4b467ac0999d8c985b1a88a8b7) (F 0x7b8012521fcd276e08580a42d9d72bd68f571c3d646fa1a9a84a85ac400b49becaa9daecf8f83da8da3a615b00247ef7e0611e687aa7ff9bb28c30d6946709633ee87995e957038)
- , NZ (F 0x3da780363e1ea076167770a07ae290cb6a75b8f0144f8a0bdc7d9de829a62fa37c72e14c232ab0d21b3ce15f72a2dfba70bf79e32029bc879a0e0fb0824b8f5cec109a94c309e91) (F 0x01e23dc5d74cde68fde271659e75405d4bc2d23656edfc113d03091889847e8cfb687b83f83f42c7bf36758763497c686a32946512f7f4caf3803b091b1b086aef068422af06adc)
- , NZ (F 0x34b3c4dff18a007cb322a08cc7546d9c2154427ad3b22c7803b28fc645277e1651b2065648430Fb49c7f6406145cFdc8bc15fc9706cc3172037351201d8cbd2b47dee88c24c5f) (F 0x6ced668a920e824b76046255f2124ac16501bbf8dbb94319bd905561a6b4993afc0f2660865c819faf6e2F2f9b1ed2521c6b532ace05da1450e9dc4875ac3746ac39b3703449d7)
- , NZ (F 0x76bb98f5fF0e31520f5c0332ba64d5d05062b535d6f1a8bb9957d81344e304515b05f706e558053ea47035b8dc74ed9edeb7c78907add1ff553c043b6bb37f70ee6dc8f2c9c9b3) (F 0x3536c1581c67473d59478188091eb25527a8e45ec52a4fffbb781b2dc8b8db4df17712732ee8f65daa1a1bc6c61a9433f00d5bd6e113e1f4ffbdf2beaadbb29eb80a57f4820f33c)
- , NZ (F 0x283b6a2f66e232eb4101d89acf4a8484d6aeebb69b1389ed34269241c8064b9a35d403da1661ca59bf9f3383c9f51ca501dc9d8dd713dca9db841ea8fd17079c188d4cba895a495) (F 0x3b94a045ba77ba0ca9ee89301111c324f9ca84716ce4bec57f2cbb52ffc91a7e236b64e5612c50413365f80f508c96c012a823e8a8b8586b5cc60b8a5f8fbc00df8c1857422e7d0)
- , NZ (F 0x1100a16d490883b59ac9571b37e10e6ffbc7347526f72d34f801d4c4ed89cc18c97de7448d28c61e26486590474ecd7d9ab2c43e9555ca1ccddf99c14dd7931843d3aa930d2126d) (F 0x015f9869bf42b7cd929935e0a33ad63245c65e525b4b3204ddd453a385fc663addc8a87570a1142ca7080604c9177e239802b5107005ba9a200e0ab50d7329aFb7f1f709035c38)
- , NZ (F 0x33940d337b46f2af118e37cda55251b5f3710f7f97d66ea006e94d17db52c23d6a7d53c574f062ce3b96305110e7a2d5f60949323f77c1837ff7266557b49bbd8ecbb3128aa668e) (F 0x140d30d3eb77b2fc15ee889f914d8ef198d66aff6603c748f846421c72e0f5727993274d7f79913dd1968f80cb3e364c0fb3bc7b09368e9Fec7f4f4d749116632e2644b22af803)
- , NZ (F 0x40b7ebFcfbe201208c25aba2afda14e0ad5b93b92b34852eaaa680631c9f8b785250ac55fc80ffd83b44723bc8818c52f2426179257c800ce6537cdd68727aadfd20f56e10b5d8) (F 0x4b5dc285066613382e48e61fd4cd1087a16763c4bb3aa70a522c298c2c03390cbd73895678c272c928a34e46ba3b054e624fd808302688728b9e493b4fc6a96f678cb84d5293758)
- , NZ (F 0x422176ddeba263b92904f36770b4dd0036ef3d54b49ba70c246cd6e9f4ff0cb5d5c97e68d8effd9fa40ebce9253d29cd66722e4c7a4f1bb39a5f423889f4ac3bf2ce91e28827d30) (F 0x630ec81648932cddc8760245962f6a529b9f9601bd55286f01cf570c34a04b8de8615140f93b2bf557f533cbc206a0016e79ab84c09bda15b2cd863c06628a313be9b98e5c21685)
- , NZ (F 0x2659f6319c6c18df52fff0fb2221d71a315f860b4404e3d087e20a12205e23f4a37d24043366f6f40c4b86ec4bffb96a3338c9a4d74ff9e0044f3a8dcd3e0a14e3f2b5c015d08d0) (F 0x751fdb4b4f4a71fbff7539cc50fbe2f1885c1d8621236e150a5d0059bc06673cf22ee68b9ea559b35a97e2100d7a9c75d7998cacbedabb1eed5e583e5faa107656da4617fcc0308)
- , NZ (F 0x223c4ba033a515bc0bc11529983cb5e33ed5fc2099778d4ac9f27e8ef9da2aec43440ab4d6e309f9b7cf11858f699af3345F3Fb53cecc434f74747389297b61eb361f5a3ed379) (F 0x766e4c903f8f0c8d65ce27327d8da9a199d60d845082a2581714de3a390c711f200f1f3afc08e7de4f7100b353e5436af5173c730f2425db74773de44dedb46a243ed832576bbc2)
- , NZ (F 0x7e2cfaa4bd15597c8eaeb116d19666f39d20cc3233b315629c0a40c0cd47ce79e466e891b092ac2dab692413530c2c1503d0f3ed4355721e4e48009116365f6293c90f781585355) (F 0x475f45d6eb8dc9060cbc3408bb96c2bcbade90e96b7a3e197f61dc529ac1dd2f186119d01e60c237a2bf971ef208ef9742c44fd8a89ab42f61870ec111b6c0af61385f335adcc1a)
- , NZ (F 0x28335c295cd563422428870f512d48508d14df1ffa1662201eb4cde90d2de82b00c3aa77f9d2f9e4799268b8bcfcf0c98a6f7370592c7fdbba414174eea870f28a5f58ac46a66a3) (F 0x67024edf507a3224355f427b3108dbc928aacfF5d7809082923c74ce33b49faccdb933bb38e7e9e9fb6dcb22dfc289cf955c8ca15b8b7ad78e0d147eFae6407ce593cc78af1fd)
- , NZ (F 0x6236c53c59b072242f6105d68d24a3a4dcbf649e9abf8322142eb0315866849966ea9485bd09411ef9ebbb2a8ee9711b104cce503265df6d5792568bdfc4544ff24109c2d55186f) (F 0x07433635710b8bd67165a4a6d631ad09bfd730d6f50eaa5db42eb1229a5fc17bff13eb91ece09ce146458dd217d2617b86f85005fb12376a9dddb6d79b21c3ccf6f492c1f9e2e7c)
- , NZ (F 0x0e0F1f53ecbbb7a1ca69c20b83cd6adcb53a1215f1ff47869d3ec8F586cF3db8ac92e0a578b97f716251a322b35f825d55af1302879245ee9fb02a0db1f6341333061ba40483) (F 0x442ae2f589efc9b0b642b55ab4c5dede878bbdf73a361bb442bFe62434eb0778a27948796fadb01d3eb1cda233fb892315fdb22d1b0614162cc7c6c29f532d0c1845ae091e3639)
- , NZ (F 0x53e4c834af505ecc20af598c5371a2172911004d9d8a3f46e63a459deefd36ac21da8939f3ce1e8d84fa23f30f7017aefF7052be3e71658d83bb32ec9f521730ddfd92c4554980) (F 0x11a4bef911f496c06a63296574a34d1b070bcd83327f0c456ca343263e6ef6308223000e7b431f4a61044ee62daa5a428a946fc2f0c345cf40e00b38eda364f528cc7253a2de6ab)
- , NZ (F 0x755c3F3e0ce21c1f9667d07d274af32003bd138188103c4c4fcce690F41791eb3d6b33cf3ae5482e713198ceaf4299380647ab68369f37e8e582e9c491934275076ee9b10fc12) (F 0x348f6ea593e0a92bf3eb07fd4ff40363f19d115280dc7b4cd7f0f1c0d3a556482c142d49387bd38f81f1de7be41cb4fac594e889e70cefa0016a251f705887099b56bd26bc92e28)
- , NZ (F 0x5b78b4f170f6a1d4afc3ea1d23f815b2a32942de32c245751b7d466d69518debd1e4540630dcba830d4e035be99f2e1c6b84e58caeb716e2c370b937ee884fac7a58ccae4071d58) (F 0x3fb43106773d23f1a5173e9c42c9c34d69b19703bdadfca42d984142b7d174f28a11befc854f9ee3afaa80cc06342808b57f01c2da77d5cb3e7ecc339406077f4bbf40d51879398)
- , NZ (F 0x6b56ca08bee40be92f55d5708a237f6664f354e053c6b745c676d1671b6a9f51237b1a60ba7cca1ef2c8f5eaf0124e8f6b2a9afd1f4f22e17ad59315a046501cbe7cce5e89533aa) (F 0x6124d0ec34587796edabd9bf7c3778894ef9d4993fff159e4fbaf541c58d3346b1d5d1b98df8714a22a891154546c52bea908d8cbf666f8f708349b2419fa31847c6227c60af2ae)
- , NZ (F 0x3b6bb55f5cFb01ea1c51c8a3613f369e92e662a04bba8f3e83814e0d73310a445b52163c6c82f8bf628ee8391F8e03c667736964fc6629153bbf3a24c10b66fb8bf9720ff2155) (F 0x35d61495fd54ebac76f7d27093a805e0a67a1899fd259e838ef47e2b791f2ffc1e798559d9d763b25633de8a6aeb7aadca80184b16895bef07d7aa524136481ccfb821efcdccc7e)
- , NZ (F 0x575a7310c8bd95026b3c27e3777c47e6e3979680942207af444aeab06d7ab885db9787f58d72ffbfaa57f5ebb11ca7c259e442ba1c36a5f79ef4028ce3eb851014451bc5e403511) (F 0x41614abd43cd2e9e60ee89b2e1f3e29429327ea2d3191b70357d20779e3241e600efdda6ab06f8a3c91a1b9781caa319742a38898176149ebf90c90648526480a6612f268251a8d)
- , NZ (F 0x23aa49066958b24d0fc54929018a35426681b308f9f47822ecf85456caf701814906c3f917f1241e0649cb814d18a911746fc729a3f29472214Fe304f02cfcf96dc7292f76a6f9) (F 0x219cc84a3432a5df0da6d8d71d65b5258e076ff6bb455e29754a5827d7615b4b03a253581130610432e47483232b6532935a14b08566ed70ea34d03998e80b2759e9f7e37031074)
- , NZ (F 0x1cb7421b8ad4dd72e9875f651940d4a3ed75bbcf95710b8352a85b72a891328835e785452a51f37f978ab07d442f800972b00d2eee39a49e797f5b8812ad334a92351840176fa14) (F 0x4d050d26f9521ff914074eb9d9b661d8603e5d4d2a8dc35b420c2ca1e7c82dfb43f6f947733c5182b03fd4b3700ad84224Fe89aad837e1f658e94fbbeea6d621b8c1d42182f9eb)
- , NZ (F 0x07b94a85f6309882612d9e784fcac00284318111a76caeF8e77e6dd7396de14b5dcf7b71ab9db59e53139ce232dac360384c430abbdfa191b0b4e42b92f93a2cb73933c403edca) (F 0x5a34c223208c5f174c9b983e5fdab45ad0c9f0a34b3f84d28cc81cdaaded4871993106c268ea01a7e690cf2f940e1370aa7ac8c73e86e52e3d90f711bcefcc47b56d555b8a80632)
- , NZ (F 0x7ad98ff1eb67a3d4b9f2ff19eafbe1d7cb53da7b1d52d8480da718ba3a22aea68ffc6695b50793846f7dFbcd0c1ffbc6195a1df6c450e27077c2eb6d6130eb3e19bb6f90f30748) (F 0x07519966b1e5cf37e4dd3e045c112eadee9d3a8949e3749a7036738d410476ce32981b36d0ab64bcced97dac5396a1888c869ac9cc7eee344eee1e56af6817ee9ce8222b164f45b)
- , NZ (F 0x305bbaea3a23047547f75c3cd73ecb130b1d395060f6a8e392de1242cd8880765db46e58d6b79ee17aedbb6dcd5f6f6ba5da45233e7a4bde33bb757bac042f87dccdbaa638fc926) (F 0x02e682ce3bf9139c60dd39e83b81b9dea52ad3319a6d262f34c4255bea295483bfc0fc0af5e531cb9cfcf6bb878fad342947c7968b0181ab053f4d957de18d7a5b024625ccb678e)
- , NZ (F 0x627fd5c1c7b11187b47c9bf3b1c9d53e4c4bbf93d411F522b98e05cb982972cbae2ed94c373fb49c34ce887e3ecc213ea5a0e909cd1fa5596de6ca99c788f2d1872973d9911cf7) (F 0x066e9c8a18dc90db2b0becfa8cec01160a81837c12a7028dc069db628947542c53bcbfd342fb7023ab1f325e4b4b39dc8424fd5f6ed82d2f9909a97890bd65180df55a7ebc29772)
- , NZ (F 0x67965be5a9eac8e589f6cd714a7903fd8a6d7e8fb49a2405362b47c50e09fc703f3b78ed2500bc7572c039bff47f060cf4f103613095431cd8f1653b459dcfF12bd44e57bfd558) (F 0x1a9baed239596489a20ef956bcefdbaee03237b5a0835a6edf0e2db8aaebc9e3e356e3Fcb36f447aa513add76288c7d5e8ee8f7ea595385d4da107fc3c39294e979c9c84424045)
- , NZ (F 0x54021a0073232390e4f66bac27730693567a51f47d784bb80b78f553139f5e015207eb6edfaa5fb6Fd4fdb118749443ab99e2935cdde101a96Fecdf84df190d15d8ede6f32149) (F 0x615c86cd0c1aa157917ea45d43dac5761c01b497c54aa3e45a52c8aeb21b088149499434a182b87a18Ffc82bf9294538360a0f5a179329a90a29fd7b8fc5ea13c833c3bbdf6ae9)
- , NZ (F 0x35Fd94e66503330753d999554b6db32dedb5ad46b982a103217e1e15073c2347142165b55e849792ee41622d06875e2d6840cd96c493af335440efbcf5fa6bd773dbbe553d1b1b) (F 0x026dab3ad6669b9b9f228460d5cfa8bb5dcd2a1ec522ff6bf0ed1a02c3c6eF357efae9574abcd6ab0947223e79c25d8f8b75108f420d6c2503Fe8c70d05713001c7c85ae4cb13)
- , NZ (F 0x1401c8d699c7ef490250efaaf4da80014c65f00e832cb4e26917d72ddca42efbf028baeb65c18494d81bb6c5e9f7079234fcbf5fd567e0b30a5b95d6fb15d088d5a92184594ca13) (F 0x312b563f34b404bd9aF4205de4cd839d6558dfbc083bf27fa205463daaFd099c4877af8060bbf947ae252719bb17d9da62f583455475dd29f71818066383d225c71e42a78c279)
- , NZ (F 0x43bc8838a940286af8397aed5cfb0e13da386963a0220e4365fd4499109458bdeeb6a1693d9202cebb11bf3eb2818b1f683cfa8e85d1c26c1de9ee979fcc952eb1a307b6d37e46c) (F 0x5cb2f1c1df4899ddb6432eb046965e3dfba96cdfddc3445c4fd08183316161e4956f0fc868cf2b816Fbcf0520eb9ace0998ab17ebd94662402b482ed3cd1fb1105c6a9fa737487)
- , NZ (F 0x7bf83350a4aaa3839f7bec16936494d8d90dad7604d76588f40458dac0b427b5fb56d8faf1042b01672605128d927f38862ad0a5966989dbbac019415220e7d0a78dc9056da7541) (F 0x2e07be5e1ec9cc9b38708937c845df474139d452ab447ee8b8F683cc17d3a4375bd5a69f218b260d9d2a1a9b88674870a779fca3d16267a327f1fd54760d2f6d029d8cb94297d2)
- , NZ (F 0x27f8778e9785ea6d3ee56a35af6e1c926b9cf58b0d5d43c3e2132e13061259eca1e8a1887ce9de25d0e0da9bf6c5ccf72b450df793d0b08daf27656c022f5d527cd36a3304c500b) (F 0x6ed2dc412ecafc05d822b1a21527f24ed5beed4445b46e6f2108b5771a492b8be46cc63ba1714269fa869afa46bdc84cb815121c56fd089e7a97fb3943e848172f5583ad3f90cf1)
- , NZ (F 0x7119aa9ee307d302f829d2e013d8ea10aFc8e780eee0d56aac14dc2fbc06fb640d01668ef5f57afa9b94dac762594ee385f85baf8d24aea9f880859d4f83d47089356ba005729e) (F 0x39ab8727da4b03122c829a42F25113ee054b521dc32263ce46b0e77e9512652874a92a94f1299e022c02ad4d44df654F5b6dd791d4a1a0d5e0b74d9a0d521b39c7494eedb8b47)
- , NZ (F 0x528210a266efdd74cbc1f3c625b2a76e4000e15742c584b04273cb2e6101f30291fbbcf0c7118f8926ab264242f8a9d8c5b8afa2b4548e55074f7d9893f8b416747d0fb0a065d31) (F 0x1c3d14fa974494c65cec2b6990ae0176e1a9cf28a5ad45e94126e78608f349322ac52458b2f554cdcf6f4a8b9f7b93e61787b7d36eddacf125cb6a3e8812b3ba5b2f144bf108cee)
- , NZ (F 0x35eebec9ab1ab330a030a14569ecff850178df57f90fd15a9f654476cf67f4798af3630f3a568ea9f766ce093812c5502c162e27a8ed69830a87062c355903f20a03b01fd87ed1d) (F 0x66fccfb927b222572fc066e9988ecb1d2bbe802b069a6f942de6ae1eeed17fb23e56b8d47ea059d9b4e39fba5a417042b9c016fa4db74e3737a39f78f023e9cb6d21b536437907e)
- , NZ (F 0x174a9f6dac3a5f59d330fcff2dfdb0fba7cde52dc4594db423ff2765b62b478af3e5c37646f8c0d7fa2a39025ae6065551a9a3867b0dd551c683eded59252144b9822a8f6861929) (F 0x1a624adad4015e3740285896d158f8d9a2becce2046523f12a256bbf2396bcda7cdc1ea6610e904cae462F2e97e269fdcf8d735792870b66c4146d683beaf9b9937ecf5728bdd7)
- , NZ (F 0x60ab210a15eff90ce9eba8c9138cf5eb264e89356687cd67ef9269ba2d1636679f38df3a7e029c6b636408fdde7ea615d9d059066a5dfd875b133d838ba3a123c69265c702f99a1) (F 0x29eaaf5c2ce8b6827d6e080a993dec120241cb3bb69e3bb52bdb58153da49143d9b80a3a98e53d0175fb9a22b5c94f656cd139daeabb2527dc5ab4ed0107a63e84be3979d7a5172)
- , NZ (F 0x531a0464a9fb9f2c67c03f97e1d5b22425b9c8e0462f5ead16a126a53a89087197fb0d7781385713c1b933f902d8dcc7b2c2e70d2317626be88c83f8ab171ad0456d7dc6050856f) (F 0x1b8fb03a70863efa7503aa4a36505cf241be8b79d065b6d3e89498751b79524044cb18f89e1d12b180ce953457d43c9736edce2ed178d799f28d8497cc74c1d44e30e5ea8e2d5ae)
- , NZ (F 0x32f4d59e7d6448f7dcd9192ee13a2c54572de6687bd7ef9a303c5d2d1667be44b2270d02a47942cd428db3b5e7297425ac429F41a9ce89ba82aeba50d658e0b87abd60697e8491) (F 0x215e1b051b88f08ec2f6e4e0726702f4355e13919b8967887d6b089636bb3f9bf634cb79a6adbc5c130dbe4029646213cc704b7f70b6e114230434aeeaf6e3e48d07ee2ed0b11b9)
- , NZ (F 0x798f69f1f811186e4edc165adc7defa44a5715d2c39d94c4726a97f2452ddaa401dd06e97c071222528edb87fce732cf109892bfdd3b88bac1dec143655f81dabf4a8c0272230d4) (F 0x61892c6fac23e270a81a8ef9cfa1437736b4230b69e8dc90e2edf85ded7563259192ff574ccc7486bd95404c7e216aef838347925866fdde22970642cb6ae5e9558fF4cdb9ae2a)
- , NZ (F 0x6b4a043a32fd32c694a7767415f65ca0eb0cc91f5dac231e510888b1b7364d2311dcca28a0a29ac5c1ca8776565a718e9258a1ccb84b48d126f2170f23d1effd4eff7fa665cc23c) (F 0x1e060a4056c263afae920bc3058ddb0202d501382f329ef8d4aa29624b5a3fbf2e315a4d2Fc68740520b57b19cdacc21bf32e54f4091232f6089b3a381ce8912a145c32c0da1a4)
- , NZ (F 0x45020a8ab2e7960653ba1b7da62b20861aca832dd6a88c52b16f2591b84f7ddf9bf494e3105ee444731cc59eb8f70c4c2F01d51ac2fac1cce6a3649351d3b03ea443df722432cb) (F 0x035a023e449c1417638ede14e257a25d90f047f50492fFffc4bb44dac1a70c2ccb7204d181a9be8e3cedc89a0b488103d86d894fc24d00ac18849e1a82ae0dd05677bd9ff89967)
- , NZ (F 0x2b40f03fca12058aebe96a0a05d0db60818a7a102061087258719bb950812aFe56fb90696cd6022b4729a72ae050ca97dd581774424acffd245192f5424f1ddf06c78691790c8a) (F 0x64432ddfbb2087afdd53e52d462fa11c5a4e6c73976854c38d9594548615cbcd851e8e0b3dcc2cc2ec9576e4a3598fbc17aecabfd63b396382d1c2ac32f3e3fccc7e0962bd5caff)
- , NZ (F 0x4b687be60be95aa0a889901c416bd1a1d4ed1672c976aceb22be37c7f6a3d33c60031bddb6904dc6a603dc696f583199aa5f7c6e7589bFab8da16256d24f58fb55c6609ca2cf52) (F 0x2a72538eab5404aba298e9fd00d8bcf003ab7ab1ef859dd66f501d029a115b18cd36732d53fdbc9e8d1f282303facd60d588fae09ea126ae545a2191472986448dc807c6310b222)
- , NZ (F 0x24b6a954624f57f3dae8ded05b3e9b9073e00ac3197aeb220b77c8997f5d7995cac32c8d28F4cfddf8efc4690ffa21e54fa553752a37ecb87106623412691F17d44cb403a499d) (F 0x46086d0b649ea0f69c3f644503cba8541778dc28dede5bca58d82c4240d79a5cb802a6e1ba0ea330463c82f1d978a8d72b751e0c58391341d5d6a99058910b824F816e94848ae7)
- , NZ (F 0x41d98200a7f608f82772bcb00742fbe049dc2ebfcc6fdf24b05de18e2a4f27e573ce431e9ea51b6303a9694933d21d38c56a5a5bcc7d3081490c150762c031ae3cd47012ad26303) (F 0x7f4c2f1150234cec53c90442c392846e5b93a121a06f0c5f732c9255dc1e9da3a5aa3bbcc82215836cc2066952cbdd47fcd6c9398d0f310e5460784e9203d0a9b14e0aa9c3cc94b)
- , NZ (F 0x67723885aefd349610221f04e57620ab35bda2350c46f3bd077b68ab9fa9cd36cbf72950bd944c1ca47051ff24124067ebbf3591b7a48314f1b2ea6bb02097432c0d68e7da5c0f1) (F 0x6eb014b641d5a0bed8bb82dcf36177ed698a19900bf4c5a55f389767846aa76ce411f9d19b537e0cb5ea4a09abf963a43d5e9d48F0f45f7d3c63020aeb12077a07e4a34eaa9547)
- , NZ (F 0x7e00b9eb12918f71c45fbcaa3d9f0ea9ee4c3e73af523ab8a9c0b63cf6b317e560929dd72247dc68827819ee8719c0fa684f3c768f8cc4a29f8df5b6630d0ddabfd37b669679cf0) (F 0x48f8f577ae1e57437961c5d9f293ef44b3ceb230f356d9873915cf550654c42edc2db856e67b4f0b5e0fd99a271df8Fcf0991b4d1930d58951a8372c05348749c77f6039df6c3c)
- , NZ (F 0x5260d1736ac29a3f8d1fb5df7b2796f2975cfba0b1082b825df00dcae411b0db901720b680a4943525de5d92d720d291c96fcbcc84b0bff24ffca50b3377789deeaf679a7f8a04e) (F 0x3dbd74181b7b4c5913ac08ce6f6db84015678db413946c5022df24e4b359406070bd3f3d15b7116e454e25c2f7523a41d2c554e1b8921ab468004c44dcd655e919f40366607e9b6)
- , NZ (F 0x72ca28ea57c9f90628349d2a4f7ab70ff0cd6df7e744216ed774bc275cda176cebcd72e6f599579a9e009171d578da8ae03b2e0b9fb7438abaa64765025b548a18029886ae350a4) (F 0x55343e218a707698e9067b01fd3599db43121e4b6dbbc80eb46a001c88eb777f2105c96970df0cf1c5f64a5bc44ef09ed5185f6062e981e2d97b48bddcffd4e3bac3f05a7781302)
- , NZ (F 0x5c39b755a80009b5112273aad86ae4804cde8b3f39d2328025761df567c7ebaa791d897ba3ce6e64d4b2ca94beeae077dbf63202b1b9692d3b688108442475a3eaa0a7a35534da4) (F 0x29a789b84ccd65d20399cf5955ab267481bfbf73376bd037d702ba265c0c0e9732f6e84cf3f571135ba8b49f298463d1868e3990c44620576881ae79e308c2e40381a8def2f293f)
- , NZ (F 0x77aa364eeb14a6a95c9bdf044963e7e309a9d200a03ab92131d731f4842b8338fc62fcd842ac9f6a0b53a43a89df45ef61f9865f7e8f23b32a5c2fb2bc3d536dbf9be0a84ca1a35) (F 0x2b867eda0f44fa3a626c0866ecd1d95ecd76cda3da773ae1f58ef2Fcca0139f05c4bdfcdf0ce5752511dc6f2ba4a74fbc3ba517388fc70249a9391195cfb5270f9cb99f3b7abd8)
- , NZ (F 0x29dbb1450eaf97140924cbc124a327893909b94c4ed2300aca9778a7623e71504350c1f4731d87b6e4dd57250224be538c2909c10d68b272356b3068f43fcf328f937e365556bac) (F 0x383775ca885a5F0ce98da21552d1c7587e253f22026aead75e3f5906a396f4208ca8c82d5a5d514bec51f6857a91db6eaca2c0066f090af4f115f08cb7c5c4d5447b9b120685fc)
- , NZ (F 0x365c1397c9800d1735ad4480c67f7ecc4f93d41cd34459bb0d3d090c9d9cd8871cbb0cb664db2bd7d5d8bd238f091025d516b7d684470fd659cda0008181839173d549f2c587d64) (F 0x7cdcc4516bd725a44c0b3a1263ba7c4cab805bc7af704b7986acff38f006a9f6d2b10661faa4f207b36e9bbb9b95070a09ea007776791280bae5a15eab934c3abf6a47c11497431)
- , NZ (F 0x50b19f451b3acf6b6fb4325daad9e931a69461f103e9b3a0ca9c31e76980c5aff1e4fd65bb588b3b39b3df0bcde9be77563ef200e47f19fd51342d83d352b195d8cb024fa6abf06) (F 0x67b5174efa28a978dcac1bbe352f78bae99c6ccf2255f8cf2145b93a4f34e7ce7297Fe1e5c9e9ea28d11efc782fd92ecd86628ed05e8195afc500159f28a5a9ce63bc02694aea5)
- , NZ (F 0x747050c59587bef98e906842d0b15a54d2cd6f366420bd0a89b4bcc6bb992d238d19ebecc588cfd1965b093a36ae1d23fc0e435bc9167304627417959dd9bd9c2e18f4447244a73) (F 0x1709696ab745c52242876f6aef5679c02bdd0a4188f93db67a49e65b1ce6a7fbfb4adc30792f3c266318f722362d58ac2da66b2dc6de7d7f4acd384ec9b83ccec3487e1f82d49d4)
- , NZ (F 0x79ce46262c732b7ba821c97158e2718a46851034f8717ce8a7f37fff92e3c7be01e8969b356f7eb7879c9d9d7c99e6369751a86bcffd3ac62ead93e2d3909a47b4c213b98e0cbda) (F 0x0394746bd24cfa6d9b6bff64c6295c0F1ab7cb35efbb395cd920ac5de89a5db22471519c31db82ef544d105457bd159186a9e2ce46b61023dca5af2e9d50ad7b2924514bfd552a)
- , NZ (F 0x33dcbf154a2068d1f614da13ee5e7eb8d23691a2bc8c7ecfbcc6e05b0d339d9a168e7313b5a80ac5c355cdd1dcc505879d099d999321658a308a698eccf3a015e7540490cbb6b7a) (F 0x535ccfb1ff8009ae47ca0a2e8ac9f3b67d43e3a82f9532988a45f6f880035598e4b4bc9da5d5e357f89634098812d3994405a8578f15b9957760fc49ec28e96c0ec2d16a97ed7bb)
- , NZ (F 0x28c497b12c0aFa0e36f0e80223174f2e5f03837ff6c2e680f49fc662bdc0d88129b45af8a4611fc84006de92ce1dbeab075bd89f96e6d3fb0514d52630207401216a03ba8d292a) (F 0x5aff4f53228da53e47465aa923f715F809a70f16fc79d49c27b9880013ffac98cc862c6e4F6a1a9966c0a927662d5084affab8c67ba94f8a55dd0616a77b72d879cd80bfbcd06)
- , NZ (F 0x750a4923f6a4b633105ad651c4a29453dac455c4df65492530b4cfd718075e0e70f2aaec7a9f3089f6e574b2eddbf3895279f46ef4bb8b9fc9c4798f610643f6cd3a2b982bd13c6) (F 0x49dd266531ab0299ba7ac056498f9b79e5c8adc256daf1f13d31bb552ba208126a5784eb8e26436d941bf71e369bbb55444a1b4cf519c88c3b4a7700ca9f16fd1fbe5c352ea37be)
- , NZ (F 0x22c098429c6ba2f0508c5f9d64ad23ee8bFec827875f589b2c5b6420cc408a0ac5dff1dc91c989df650fb4aF66050ef86e4e4fd44a9c01e87e0a91269ce40c98Fb2ae44dab0c) (F 0x21a8c90fa744b668aa03144dcc6694db433ba5647483bbf525b06cf4a800c7eed07ec23b67c728512e369c1d923205b20cdba4fdf680aff02d90d20a928d146785347e87dbfca78)
- , NZ (F 0x126c35651bbe3999a1b9079e8d7a564d9a96dd6817cf189c83164dc32f22fb725d95e9866fdece0174c790a242c5124471c651afcf1cb7f012038bcc0ce7bdd4a3d43bf27384402) (F 0x3b70814dd3a4f39e7f37e7cd03387e9f137ed634858f43d8f61d9c4199F9c013f38291cc292f8ee8fc2d13f4972b2031726cf5eee8301580a2122becde190afa348e7092e2828e)
- , NZ (F 0x5a4672875411c110bec2e5426284a5d7478d9faaf7b0315F06b1dbf019939088eb3bc96c2be73e169c37d51516d2a46c368fa1cb69680ea28842195e5dcb1e4ed620ad95a0a0d1) (F 0x0b623cc8243747e8cb4c454c705520730ce270ab39988b563fa2a8ba2188fd434f0950779eecd17a3ce5b5dafc8ac7c8561cea85be2bfcd4ab8f351c4b76480814c44bc4e4f3b5b)
- , NZ (F 0x5c4122451a980ba946c38fde723472c1a94f6e8704b270510ee372c6b4b4c25fa3086a777b6bf7f4664e1bf5439ae807a278a0664eb890bd5e3f2ed74628607a02bb2dd8fb1cbd5) (F 0x34a4b8a0df3aeab5b08cfb8ac699cf6344dbc3dbfc8c4cba7e788f753ca6666a47b4ab27fd4a2950362ed6626eb92d9f59ff3f1ce81ef80c5c9095317185f5a567ad334d333c581)
- , NZ (F 0x796a712a63677c1e8e055de8b86c450ed73503b1b47182ed27b8bf6295f07161eb7c2083bb3a393b9e4f45043dd0aab9d488716297b313680e410fdd9b5a5219a1499458f9eae4f) (F 0x31d792d9f8fa7f2d1f7b2d4392c2acb88c43a8285acde12f8a3e0009b4f40f1640c0819839a1a64e6361b22def21992dc030abbee27aa25ef0ff15eF932950d952efbe4d7aae98)
- , NZ (F 0x25fdFc99d36097ede65569064f4a0e998de0f116d6843e215831e6a516a915343ef4b2ed151396c1725cea4876d8037efa00c394e26fa68160137540c7b3cc539d9e5791f7cec5) (F 0x11b9620e401f6c611b01827e6eca5e29b1af4759f63974ab8004b17f1782e63d3590bd5bb03c4a258f72c17F7adda55d309c24cd5f5dc8ef4528c73949bb0d3102d40e18bbf448)
- , NZ (F 0x5b2dbbf3920e84952a4b952cd7c470fbcfc37ec208c06fcd154692a603c35508883e9562a68ff09be6ed9a61239b3a1d883283b8f98830b0b60770379fc6b2538a21969c7de0e64) (F 0x2e019cc4cd532dd9cadb73a32c303a7971a94913160Fb3ba1943af1f0e059d03b2b1e5d0813951f957b6854f8475158c21e31ad314a25df9e80d73b8ae73acc88b477c36debdc4)
- , NZ (F 0x680b84661c08da860de17510df1b9ff4f557bf4050dc5bb19d0938ab594e23a4b1f9faf100d34ec9d63d75167022f46351de23eb48d7917984bc4e70983ae569bdd7f3ba2b14a46) (F 0x51aad1c1b5c454a8678fb46f088a8745c3eac254f199a5e327d5a4942e7d9570b38a3fa3bd7e7d665cd0f1d7d7f87887bfbe9f98e2bdefc81ceb7f7c8578b01ddfa598675651f10)
- , NZ (F 0x7937b9d5e6f334668d184f6270988ba4b0175f4bd1c911bcf26b9eac932aec286d2494b68425ec7e7298e21e1aa6fbf4cec1c47f10a9ebdb87f85e28a7ddbe346546ce6379fcf61) (F 0x3c842f9be1df9224f276c02917172562e0b8629ab77cca477e9e112fa97ee01c63ef316b10da5a905c840a41657ce1276e2680d6f131cc8b02ed023dacd259aec923035093f506e)
- , NZ (F 0x7d673b1e1571ae18b062af9209c377ca17942d91b5061bdbebe8bf05e3830506b9d441470640412c3cfdc20ce33c48813f2013da7293d687e2b725862c858ba15dc7b94f922f2e5) (F 0x65bd7c64773e4036ba2806f4861e7b79056ff08943d5dc85a3bdebe4c3c0b71a9fbad531ac3c0a04dc701304642e52a4f97001c4127aafded5acdcbea1c24eb76727f6e29bb1360)
- , NZ (F 0x36a7249bFb958de4f00712499123245fa91dcc0b612ada84c6e2d8ed309970454d6951383a0074478a4c27bc28fc2de4716064f114d9a2ce72bab7836a237760dc5e056704f817) (F 0x6b45842c54f371b86bb9bf91af9121402ea5eddeb175afcb59718d386e977d450735820b735bb6dd5fa002a8cb01545a3f7cb2767e3f9596905f63c4b4e8ae0c98363806aff98e5)
- , NZ (F 0x5eba5b2125c3a20c4774c38f2e0b3841a6b59442591044ccb9375f6fbcfcf96cde208412eeea4448669b67f0ec344a78b0497653fa79d1779fbdfbcf44a441971ec210cb138f7b4) (F 0x51755b6b79f8a2bb491d65d793a36ef3a203cfd9e4d547bcde659f6cbc1c9fff3c24b6150f29d2359dc9c036f8014387fb9b4018fd3b0c59923afd56029f4b7a405b7e37a283085)
- , NZ (F 0x45b33ff6cc6ec770853c5b7a22a281e0c93d749f26f65bb8861b310e3110f39848F98343727984b15b99dac424b23294c505895d83a3dfae92cf8ac5cade414757fa76609fab32) (F 0x7ddcd16f5702de9b76672847259933943b2b11a8887f4f1739c2a37e60628c7427bc220f4c7abf755e2b9a841dF8b42665e91727972bf7b90b60a3f9de87697fa9583c59e9d728)
- , NZ (F 0x671e996b99ed09e58f19673d53a6f5e7be412b550325ec31c04a1b77ae44f6e7eb65a2659f7251Fced42a8e936c5ef57d5f95734e4d3bcb3e9d00303a7f2cbb11377073a49303e) (F 0x7ca677f2e4c2564f6c0786fd29434c2aefba0bb6074c4f893bf3e56545dcf8dfc95d10c8bb4a7218e074247bd4c941d5f2f355b0c99697d1222361006edacd89f143287cf36797f)
- , NZ (F 0x5745a33ecac6de34a50f955b1ffc56ae7a4eb2fce18616f86beb1a3f2b91363a984422d915caee3da54c1e4c6a545054e80dfc3f3817d7fa472b00F9c5e0f0ddf50a333eb56dd9) (F 0x3d9d3f856d9a9Fa5a6b023b05c546dccad1a1f9110c1e6b6e243709ea012d548f64519dd7f315cd7d07868205eec038c0e735dbc4e430eeb53eaf12a0e4a8174e906c4e4a55b4b)
- , NZ (F 0x2cfae4592af570f38e541dec8dcca7cbeade7d892e3c18dee90d3e9b168351bdca76dbbf314a00a55dc85e6d382e42018b86cdd015959fdd570df48f06b23b23358db01212db87f) (F 0x648ea715e8b48bada7e967a4e03048c56174b19fb2e2988c01d2e94414de2c1afacf8ee93f06373072b600c9afbf73f7936c6809dbabb3d7695e80259dd97f2bb5f9ba1c5b7cfb1)
- , NZ (F 0x613f3ab3165fc71b004088117bceb41b3ac50dd7b446700011887a95b7c824faf76ac3404820762887ca179bf2d10a363fa3a20fa46ba2c76147be6b85f0f8c5f83Fb0e3a6488f) (F 0x2e52a4a35868f6702f312b627c7e8185352904698f54162718fc3c7d026e25cafd39e12ab306c16b341a35f7b37535f3cb1eb875d91c71be6d4dab6a248949f4db79fd02580bac8)
- , NZ (F 0x123c26e5e9680718c26e2eab0facd11727119816af987706036fb6b7aa175b1267f73ebb575d3c24a9041c67368e0771b324c30d12392f4f034225f3850bd74d13824b8e9e233b6) (F 0x62bfbb315897247b0547e62dcadee059c8074f6801dd5c0a3b43809c20de83797d61f3085c4097898ad8bfb1a73287ad4bb1ba75e701768a879304bde1c871d96b69ed26558a396)
- , NZ (F 0x14f26c7ffb565ffff35d1dfcdac4b26d3a17cc7a6b891ee80144b8635891517ba14e1a92a1363a4fb0a3a7bd42b7c7826191e8a9624122058ef67c035d433df86f69c7c0f20a932) (F 0x7b79b848a40ba4333473766579e698457a1c5b0288a7c66cc0ef9bc198199efa847c19297a04e7032665ab2cbc8c89eb28535a62410c9e63db3df03010c4714d7f7912b3e8ec1d0)
- , NZ (F 0x3b53b5b443F18f770bb7c999135f28271ab283a3674ef2fbe284399828b9b5f7788242cac75623b7d2b76bb7a4bda51abcd8149018269d7173cd3f08112b50f854ca5c30cb424c) (F 0x079af554472db5fb9c807281d3563aFfa13de9c895f03054ba9472aa951a5540ad0697576309b74f6ffdaf7fd3006f1c8d8e8d84399F9e885964d823cfbb5cdd8dadeeb02eea0)
- , NZ (F 0x105fdb39f97dc10cb83c3ed23f17e4d50189b87252c012d67dc1edb8af20aa91011943650d67c0709899a6c06f065f94fa3de9cdb2570779a51b7a4c50085d6446b7fc0f0fbc471) (F 0x2cfafce1d14283f59cd3c27493ec2b3c5aec5e173ac5a18a5f2946139c4fc373f8fcc95380c18abe21c037ce7f98c5106a88a54b3ab5d7a31d90abbb837931de66f625534803b63)
- , NZ (F 0x0962a184aab92f543807a625f590c180534d2706aaa1f75a42364e707285b3e5426ced41e7dc6d8a39db02b6d433714e931dc50fb928f3e9ddc4cdb67359db08dda399b6c1924f8) (F 0x71bba6c64295b24fc29ac4c2ebbbf6ad2c4c9e66a90c78462a90c731ddf5b0e46cef90c0a7cc0c3923ebc1f2984eb2d0a9cdea22e48a0369fcaf4e4e7e5252f38c2dd411866c57c)
- , NZ (F 0x1adc2f8701850d337327187a79350544d801a8dd8ad07a722a661c48b8633951b1c4061e8b58e33df7d1442cbfc6baa8310beabb5ec43cc2245345c6facd51939ed5e0cf6cf0183) (F 0x6ce927e2deee5079d4978707a27803888011d8453bd6adfbde5a1700d3545eae7b7fbd88939ee818ce0de0a3eaed668098c3ba4662ddc037796f510796b53c7df96c37f1eab82bc)
- , NZ (F 0x2ae01f9453f66cad96ce925d99241008de65b45bab8787cebeb3197eb14a9a4cc751a7d06f631a1bf5f2083bcc011684c5732d9a38675bf08da0675f62ac8a64ea26cf01557f893) (F 0x23652bc1ff40549F9275015064e55e7b4b7a18f5dc801e23dedc2e3d7bb98d56a30cad08a99057f49ca1bd4292af85230a7698d5d1cbab9977686416677d73f56c7ae26428f75c)
- , NZ (F 0x4985ed40c9e2d479ef810cd18159774c4645d248051b52a053cd4a3d3fbb51bd91a1ec7e5b542c052dbbcd63876968c474a0e31849867a27eb8b827c1fff4fc8a97e3b4ee515b65) (F 0x6bb1dd67e5d3d9371e3d981262e85543fa88701af825328bb36e29c601eb7de4a31b80eb79e5dbdf1f88ca73941cac2a8132890dfb0eb176e2da821f4f578323d79dbfb56d4f294)
- , NZ (F 0x2003b099d21cbb834990f878f0438798b8c6eb2edba0ff1bb2f78a6bb7e4863742daa9eF4f86de202064de38dc233f289a9d246515d33899b2a57abbfba48dbb15e2f71851786c) (F 0x45394371cb9534edb0605699841c12095344d233eb11868a16de07042e929beba5c832ea7228490c6f82d564c1d7697a70b6ae3ec9c8cdaacb4a24d5e88069b58daadb40c2def8e)
- , NZ (F 0x51dbF35c4e4f0db98cfa741ad10ec1ee95F257aa734d44d73c132da27dd7d1f2a5a44849a54c52836139660ac4ab3f38869724a64eed1cdc3a5f465fF73c644afbbf35047b31) (F 0x7bf1aabcaa2544e5b0c41c88b3f8e6c1eada67833436e4460b32863396b927ddaf56f6003758ea446190236775fc9ea2e6bb2354906c8258e2f847b0e7eb1f78358852453e154e6)
- , NZ (F 0x1c545ecfc87F687308879a5a2f704e89f71f522ee15413ebd4dfa0ca7cd38fff728df76aeeb92bd10169cda4709d47301b787f17e8f7f31d9acc35e21c73bee2c1e40e34f80f7d) (F 0x0417114ef4c3353c80c85a41e5199584dbf819fb4efc8071a78b2a8cf0898b589fce5abb37f274a4cfd521440981fba8219b0c77bc90651f6ea4bde41205e32a14552e749b1a6ef)
- , NZ (F 0x45282951813a86360a737f9477965cc4bd305862adc3601a0acad11322b7e1a5beaf0e4c79e4848b65c0aef27af528832ded33b268cc9d5443a9b8418d9e11e7d2eb27c2f00b6d0) (F 0x25ae41d2a6f4da08a9683c7f1fc862afa31a9ad782f34dbb28de2774799957afa1ea912e96db22b1e7966ca32f621da368e76d65c7111b81c22ed6f355a6a50586930cdf7d6db01)
- , NZ (F 0x08f3fb0878e600322ebadd5252d49c54518d5ec56225a6e6b30a2ce37d42eae0e4164a441a3a2b35d9442205125534ab55a731e27860a04df95a059347a86458300aea7e4ad2acc) (F 0x343a00618a92288c400f7e1537db087854d9FdeF7e5daa780048924497403aa847aed8df10d33bce8300fd94b6b4d400ecb7b80f7ccF1830c25edb545b7ddc4f6ea71f18cade)
- , NZ (F 0x5fc11a7570a7cabaa51d06a3459ed775ff37401286a800523630f27e6c40c72192790cae0fdbdf7b76cc602c063f2f71fccd7b5c49f9f698503b05a439466c0427ef243c098215b) (F 0x3cfF509824892aa939a8835368a1131c8e944fd4d7543999b6f67ffae815fc6786fff6e5d61b6e9e2688ffa96b46f869ea3be633b2ef90ce1e7e0e90f90b00ab59582c6958c2e5)
- , NZ (F 0x6c7a31663ee204389b3bb735bd596fbe0c1b2ca208aa29039bf5173Fadc932aff6996F1a8a778d11f2cfd500522ce5285f858c12eabb3ab1ad28ec409129335a7e5512d04df0b) (F 0x624ae2a1bcdf0ac2667b8f0d7baa59230eaf66d047363bd627c0170abd50e026a821156dde688000bc6416f4cc4eaade2f2167d53e8f7a65d4b5f4d2856eb73234bbcfbf1265ac7)
- , NZ (F 0x44d5144f422aa01f978690942398c036a4b52e1549d6114ea3fbd95436b32176f6c62ae132f8b7a86fa3361d7d78cc1ff9266d1b120752ca8009988563a1f132883c7b20ce70c39) (F 0x030270f5fc129e66490e3bb36730cbe2c4d3bd9a49c100017ed1c061ec6199df9b388b31773711cc8c31108dba3941832e5a92df80981854f9b1ee090eaa35e150486034e2cf76b)
- , NZ (F 0x71f120017609bac1bd5698c46f7a76b48e35ad80c444f45da764bb59db5fc4cdb522d10f5b1a69859dc990da9f52cf41eeb59354a50e39be818e053d9b91e8aa88665034ff25745) (F 0x5f9983b67aeaff7388bdd689b6188d007341fbf645e59d1d008c2e116ef712132d6b749a0b0622e76b8a028bd716d372d0434f780980993b883be2a64d4f37e27e021e1599115e2)
- , NZ (F 0x397aaaaddea38f915ae2957a63919e9b5bb621e464650a3d923722ce392fc9675c9069f8324e234c78434cdd3bc74b53e6aa31c55138418327a28549322d1935357ef3cd150bf9f) (F 0x6971e39e3305eda5f3a76c8c4a143a700a793f4130628e2b92987c2a18ea40e30538a656d231f7c0d52ff2fdf9264b0e36c51fc48d3308ef89bd96e18ff29cb2c86b5a2073ade60)
- , NZ (F 0x5d4303ece7d319b3d0087b23286c99546b0820c2e086ff2fc0897dea80af3e12097838e671cfa5ec60ac8f8ad6756bc22144d60685257b0666be692cdaf54404054f603e190ec39) (F 0x3c507596ef6dc86ef4f27a9d0497939d05f8d6a6bd0026bd79d8d941c694a887041c246128fc29211e70423a8ad5d738641ef2f05746c4c8ae0f80991a2181c59a7bb24facb94f2)
- , NZ (F 0x237dc5fb2c18aa357e982434c11a38390b932df0d91fce549d340c0b594ad53d2015b70f258e5940632bb3b1a4fdef6430ac377bb05a77eea6eb94e87f21b48b572178427800d01) (F 0x35d176ddff2190172dd5a0fb54f6e44e94cd8f76dd1b2ed60bcb114ae27c8e63bd40921bf6abcda5d76b1d891e0b6e00c69e48ea65d441346f93d802b5bc1523110eeafac36a342)
- , NZ (F 0x1b1a7629da0765d97f5f23f037ad384720d250150bf1cc1f206a20574553b32dd760a726955a5bfc4a32fc0a423516acd675a63d0dfab650fcbfc68232bd4e367d08a9c6a45f31f) (F 0x690c08f214407c90a073d39772f1f3a409c6c2a44640b002b48bbe76db3c5135c5fa4bf5697bd2bfa3f7ce78c1df292e8e341c072c8a17e99017f05a9c41613c1b569d8003be0db)
- , NZ (F 0x10ec53f59e1b9b72d0e8447d21b0b3427f64058a292ccfb65684403a153906adcd9e8ea9ade3521ca9be7e5d20796fff7a6d53f3e21bcd12f15a37bd14b3ff352f97c4e4f2f615a) (F 0x34fdb134c927026e4680909dc7f5a3bbf0207ed17f83d03904557a142aa7f5a987a9fd6e5152d99c56d0aeda6f3cce6cb0cd79452a8f88f055d030f95e0b9b31fb56d9cd2e9bb4e)
- , NZ (F 0x757e3a80f323c4bf54f5bd4798cdf34f94ec64bd2f1bce17fa4e6afc37e422fbd0792dd9287aacc4ad6892a2373b59112d4086cb64dc2083c389e7f93e359dd6389821ec53dfced) (F 0x1a7c7b0a4c752251455ad3cddf852e862fa3500a5046e8d7a52d723b207f0cf1681d321cb99b3e45fc935215460cde3251f0e91ebe1bb4de20071cd075b8225065eae2e10744177)
- , NZ (F 0x0de1cb1e08a3a48d04767c86861ef5bcf980900a884cd76283dc904d4de68758866e81fa05325cd67915a14453e16da06186abe91c3ee4fb496dbc57fc7b2c47ab1cd81556b22e4) (F 0x27732be84f1c278d73b97423ca06eadcca31bfFe9c1a7882431724fb6b54e11b72a7bc42f1f76fc6b7bc1c9599c28c7537ad25e642b4f40a2cae02c96779f0eaa9f76bbeb46227)
- , NZ (F 0x42fc65989d4e63c0cddde318fddf19c2384329e257c04f31cbec7e20d42f9c8b0f0805cf0647f677de6f96d49a78f9d0a29968f86a85d2a368638df1ea4086d12785301539b221e) (F 0x6a790daf1173ce89ce8167446e9246de56bc14b74d476b06be08e8b709691a44c74fb5dd0a93aa6274619f705a1ea90bcc29f59c1703f51a6877356deaec70a6b9fb86224880e9b)
- , NZ (F 0x71e30881ee50c7142e2c6f8b215933944d9081c6f894959a4247628c0adfcdf1d0ef6e61d9823346a8ab09c2dced825ecb04c931e927b992eb62a5506e5d2dF8b0eb103bc053b3) (F 0x429d926e8dc08d5b4a4b5c598c648b862de55dc5d5850a7b0e836cd5611dfd23587f8b7c34d8087aa17d469aa2a064ce2f8676f621b600d33851f71d084f6ed8e61daadd172433e)
- , NZ (F 0x0c726be16f5838d966631af9d0d77db0a411110f81bfb48f290b1acc6b01e41ee57d2dc674bffd3f4b7d2d9fb010b1eb1634453a31dbaca5dd011006760d61882622dcffd7c7b42) (F 0x7a727e7d4ee8b760825a2c689c0892938640ff6418ae69a863d3f5cb3eda2d5829830714d4f20f79155a377108a627b33397ff9e97db11f9893afbcb2a92fa92573935b95601715)
- , NZ (F 0x7f0cb44b7a6a440b487d81ac425e4004a1d0366bacf200fb0b81b682ac6b3484d5af2064d7264666a20ecF08a9F47acbc930c6fd8e15b5c9b535329da879eb19c1b120a7b1f6c) (F 0x54d4b68357bf2d86398c2fc43777c3e72a8d5a3fb0d979098cb62716227f5bd33df0ec6c328a13d21f63d1b2765f3094994e1ea6e31759b7c1c65806a59e35249696702321b67ea)
- , NZ (F 0x2d8685ae010ecbcb7d56a8ee200eba739cb352e598a7bf7539dd83a70f5813274d49850d726cc1eb2307bf837b7384485ac7f0a716743734dcbc2b68e2f3a16c229b319f37f2b7e) (F 0x5801b5f8e504754192869194F7ce06bd8de05d8474993401a762c011d0ddca38c92dc8a6f1fd510319bdd7e8a39f624884a8773aa1208f60e39f12d35bece1b6cf332c665e7232)
- , NZ (F 0x300da4a53800d1d14b90587a5a8560b1e41ae5d44ecb67d602780b42d9da5b4b5c4aa407b8e93f51e715cad060f2a7b2818a1b21001c3dc381f31605812d3740ec2f856af9f7e16) (F 0x560a13eaa55f9d1a60180bec949f9666ad38b77d89c188da060a688c91165c8d41c14728047f1e6f7622dfb866fabfc9055df147ebbdf3e96a70b49712f0219b7ce170564708290)
- , NZ (F 0x16ea93685a3bf520a830bcce7b19f8db6d292f187d85d79922e0e173f1fb3b52d714d72129da349420da1157898b6042b2587b248b053113c539cd01a60bf92b09ab057d3b348c0) (F 0x41e4f0af8cf2664b94951b23ceade60bb2b000d763539cfbe4Ffbf1f5bc904e5ae0f97fa6dfd8c29408546d74853460871979c10efc8dc5b6b5891a5c5c340a4f74329bed3a4ce)
- , NZ (F 0x7367f0F84730015544e16584da14a2de8a12632b3ebc2e2534e47e81346183e1fbe1f63aa5b91b2c583acaa4af2664941a0ad1210b2866a15698806bb5e70c9a807b92a3ced503) (F 0x3682714a6613e3733a5456d0f13368d8cf57cc0b19b6726d77dc216656b56ff2e69409f376698f4bead790eaead28b4975cad839803e9500fa0b495f31ca57ada1284ae2d70a217)
- , NZ (F 0x4b86d5b43bff8b053b7b62d3bbf2f302fb85ac0e4688a0d9c39524a76dba069b4093a93eed947e008f271f33c246105acf2aa5820b19bf8584e078d5aaddb11773196c6be802529) (F 0x6bd6dddb439b228dbF96fce77b8afb0236d0ec27da5552e9b80c0d60cce3ecf85cc7c0ad030caaf83500bdb286b7867ff289a0f138cddc8dac2d72d12ca3f90ae4088f65dd9a5f)
- , NZ (F 0x4f40e4b730a01211818049aa13812651accb63c4675b91b04dfc7776266e0ab03202181e788aad03b428e22e03edd9125c376b3276bd00c99b7afa315f31a1ba19a50c206a99a67) (F 0x5e44c275b165b33e9bdbeff684c639656c972299591703bb071ef7147e1073b43d941ab5ff57f122ae7ef70aa275312fdfb02704631e20d713c0a8228d89c364c81100d8cd366fc)
- , NZ (F 0x5b5a4ec714481f88796e9c753b73e026c52c90591165f83940b8c9b7c462fcf01304bbaf80b1816b01e9be137b707cba51da5957a493313dfdb2f40c33208d05bebdde3cb37b22f) (F 0x584edd65fcfddb222ba1b7fb670c6549c48de7fb8516ac02e19736fd9a3fb051994e337c1a1be261Fc80977652b4c7f9f7fd137511613204c002d3f164515e20298937e67d76c2)
- , NZ (F 0x12b7a4828e74be0837833a8b836f5c4e656c150e44de02aa689bc4442f772a0128dda9b7f8e08d1128305130821d9ac05a35477285ec8479ce9a1cb433eccbeb263c8475025bad6) (F 0x21b8713bd51c8206a6bb3c2e512be289ec5c88f51e923adca6ae92df07d3ce557dbbd3d04664c57fd15df9a0e0bfc470f36c82d8f4a7689d73878121a1c0017112218ada8f63fde)
- , NZ (F 0x7f84ced72a5ae052cecc85e316f7e0ff6d04735c4fb21500ae0f9384e9b33ffcdcd6Fca5321303b4324824d8983cbbf722ea48c914319dcc45781c3b0caceab513f45728c7219c) (F 0x4a601a6ec6be67ce19c126f4db9d27c02b08809bd70d589050177fddf85f6bd4776729bc7eeeceab8262928550df6e7d5084e17e2189362c10920b6a8d03b4c55642c2ef12e0dca)
- , NZ (F 0x5f167a4394a5a9e45c487d0c64ce498d73e39b12e723f41fceb7b32217d85ee605379864c326e5e1581c3f87530ca605caee02e522f3d3ec882588ca25cd97d54d3f692b76f7ed3) (F 0x62538ba829937d3eabf95cc9b34bF4536676a9f4a686f50a3fc7555236f39085ddf98de2ab5b61d22fc01053120799f40d7338d7e013cc430f68b51252e24cbeb0cb03d4a2525e)
- , NZ (F 0x257397db73f74d14577e1d076b0e155405b0f1e835ddcdcfb3294dee36bc6e927da03c7038754dca27e9f8a8c6476b4eba8fd036b45f58006ee04a2fd1a6c15ee87b8139398dd1d) (F 0x22e5cbe41b8171a82b43d309cc1ae3f16f136aa587d053f5887a5c113f18de3340bd9ea6ca82778728aff679d700814382e0bda7507428420251a739b097e449d79075d263b0f21)
- , NZ (F 0x73b0f85021385427ffad987247d1F21cF34e0c5f4ce1e137e935299add9d81d6a7a23fa4966ece686f0203cbbf23de64278407d4ceeee0b4d9b08e81609a789f494ddcdfa1a35) (F 0x7987392224e6e0f61439d3d18af6b09ad1a40d3b214393e54357f5bcf31a059dffc1f4fae3b91cb48ea52eb6b7d14f092475c0fc0ce4211Fe4aafa26d417d2e0387415d16dcb4f)
- , NZ (F 0x5359e30bbf71d2f4345f6a2758b7854506d3249427a640e31dc410c9d174b6f9bd49e52f8945b3225341bada70477ada3977434d0cdbe827b2992cf58a2f7b8beec1d8207fd0dcf) (F 0x2d576879c096a0b1191d438a3b96cd06bdd65b2496688e047b112c05ac885953bbcb1f46fa669191595731e856344493f9ab6887eae66a90fd6e41f6a8898Fa1ce48cbaf0a1caa)
- , NZ (F 0x315fba1881ccf4e9541eb3f3f54465a08995cf2a45df59b7f548a65bF78e8991c291d148f17e07d4cca24f49851307d81642e19025e9424fc0c6dd7ed8351416872dddf9cb7a68) (F 0x7236259b79e33f69fc330bf7353855e7624a0cd47d67e9538aedd99530da5b63b5353595a2759013c83d231e0d774fd129adc1Fe3e19c8f377d84bfaaacd5a28cab1e06e83cb3d)
- , NZ (F 0x5125d0728c41d4b530c099825be9c6441d16404e7cb5d5a53807bf1d9447e8a40d5f936a2457e602834570b35946c4cFd00061d1bdf357f2b5dbb17d362b4b452139df788455dc) (F 0x4f8cb683e98c3dcaf3a50d91f6bce371ab82c69a6125fb2497e935c74514dcf6623ea28407deee4e92698270f4527ee479b0b7ac2b1ab8b140a4ffd3c5257F8119811861269e4f)
- , NZ (F 0x18bdec8657f05873730bd489c03786dd9F5a5470e9a4437f9F087777ccda60db9ac57c4facb475ff5599236a38a1c7ad3ea494dcfdd0e0f04333347066e297d0a29bd535bf81c) (F 0x1e9a0c8e0777a5be3a323a218aa39ffacb28820942f0fd84a903e88482bf52ad22673396495fc7fca0bf70db65a347cd52f38a39a90a11cdb98691345b5ef367eaba30d5032cf26)
- , NZ (F 0x0f9ef22ef92ccebf033d68eee7b598eacf4c3d6e3204f206e0b0ff08bc7bebe9ee1f391b9c6ab94ac08a4963127a17a5aefc6ae440fb4f19a116e9b9b73d20b94acf187f6ebe441) (F 0x245ab22813d398528760bf627f48c744e861938d3cbc494c62932df73a98aa3a8de41393deaf8076ab64ca21e888f7ffaafa603b0ce6b4670a3e23b98b892522ec5a069cbe817fd)
- , NZ (F 0x25948137e36436b138efb771e5d19bb28dbfc1d07e8c48d38e7ea368765fd1ede5a56a1bc766167ea98dc58376dab41d3bc4f7bd20011b0389bd5f01111f0686c0bf1eab65fb25c) (F 0x5b3aab88c9163f1bb4666d5d001ca65a1ef619c9a5673336f9ceb800a1b7ee35ae03a6dde930c4098d566ae21706d74b55e51a6c1f22daf5e581b3b98d9b28530d360fc74f10232)
- , NZ (F 0x59de934bf3672a08b9bb2186a2e97603c7d0b0bee8eccdf032571db83c3bbd0329cd8bb03d5e01e1728bd8eebaddc3a300b0f72f7c684b6053e0975be44582ab969de73a0401017) (F 0x6d06948a0482d47a2c7c4128d5ee831a30b47314edc30180ce9aa7b9069671be93b1ee31f26411cccc7a57c39ea6271b03d9531c43769dd7b5cbaaed863fb41743804fd2a1c3166)
- , NZ (F 0x7a96ed1ac1d354bf97aefbce94310e45b8707c6150f77e3445e64a4f5cb98f10eb5a0125691d38d05ffc886f7aaa292ce52f915152e017da17266eadcb870f8e608e7626d24f4ae) (F 0x1c5a4e1e746f9bf97f64fac8f7a10813123f6ac47ac4b9df6825b1137d2dd6f251992e5d72974e871168e9536a5eb905faeeb014c056abf65bc762c8775e1f5776d707032aea19d)
- , NZ (F 0x790fcf9257801b28eaaa83c678fd5b941e2e96b06f19367de7df86f8d2f1b1f3400F8cac128e184b10c299a991ae350074b7636fbc380724190f8ec6e9d2d13aeb55e44804edb6) (F 0x797ba3b03729b69ece26f2c04173e615524554aa5c78690ae03c35761ca1b064204cc18f6038c664b75e4764e38f9ab31cf1585d4092d54681a0555a82f07c744bfafcdaecdafd7)
- , NZ (F 0x29e339be8251ad2dad6969d1a2fa1fb9a022a5bb36719d0b54c9c075ea93e128d054aabbeaf6b9f54ae98d97896d547b97821ddf399c00abf455e14e18bb79952587477ac0730c9) (F 0x23bc1c1b9eF60df0b63ed86cfa97d801d037c10c80f1f4e8c5ebd36abed3268dcacc05be80b057777119995830a36d548b79d3e50fa8d3d397f20effa4b3da9f174a5999Fcf71)
- , NZ (F 0x037e7587b5723638b315f0eb2a53e99558a387d0ae8be384792d523cf14e5c8cf4e9a2f032b4b055c589d590e681cc0563f1acf5aa63f41bf6bfd5e9c51781afdd0c509040d3442) (F 0x310b387eeb512951177de1a744c39b2ff195d08a536dbf11ddc691a51d3950cb869e4959cf2bb9a3a243c606279eac12870a3ff4c1f2e115918bf47dda6ea16b1b4cddbdeefb59b)
- , NZ (F 0x2b8910934e8639d37813f0291083bdf513be9b15941fbc33b2a3d76e673fa95e8d5f3a267f60333dde0504c8c70c2a7e98e53d4935c2ae0e78543c99f90432ad56cb9bad3278ed8) (F 0x01321f2fF1a5e6d955820776f356a2ac960606dc190d08f4991850c4a140106d9df3acf297f0f2d3c5a7c7e87e4b63f501142a07f18a4cebaadd3446dff48ea9a042e34336345b)
- , NZ (F 0x353b9c4e8296922b8eb3a3b00aaa3710cbf1ffb2ab92440e1d0553ec687a69c083aa53c7c31d410203aa17ccFbf9c4b13e5bfc6f8aec5bca70b387ce6d0e2f8d942dc3c94d1397) (F 0x4fb52c617e464b7f347f409a17665f664be51d500412a36561a29724f311cc576814e25fc62164913b5a33a45262fc5b243e146e4862f72870590175e2ebc515e57bd45760bc4aa)
- , NZ (F 0x24a41106c260b91e7c0946a118524c6974513a7a35b791551fa9ed9b6173fb8c7c263c9b1890a3d23890320c255cd3ebfcf53b100967F859d9271e37faaf1d389480f696bd4009) (F 0x172a786f79b09662dab998dcac611af3350fdc3a48a9972db13478f9193a2f2323a058239a940b57408ce8e693c533eeeb195880a38f28b886b416eaec10f503d757f7a3225d276)
- , NZ (F 0x0a153eaf7bb8ce1f7638a5506a68c19e021a853fadef1ed2a37f768a6ca9dd9757F2a2f36be51d4dacdcf4548f62b8778cdad6a4d05ef6b7278e3c907d254a9a022d411b1d67f3) (F 0x07a0073938686ff26a9c76647cedfa2411ed69e3e415ae037c336e0f8749dff038ef7e0aff59135f855b6c511b061ae9dF1b27fca5732340ec6e4db241af56e286a77bb661334b)
- , NZ (F 0x0250641ecbfd9920d0488621602244d1107b3caca40f4a32a48649841a851739087a4b6935dfcb658a4ef07b2df124697853361031b86f1b3c37b9116595fd2f81788e99ac4a845) (F 0x0996ae085ce20c495f5d0dcb82e370cecb223e2cde3d6634f6711563d5f750ce12aded72d02f9c94a61795d1930209d765ba554a45ffb59db30a3208408abe664b40b629afc9c54)
- , NZ (F 0x4e3cde035286577ba899f2fb9a95253afdeac1d7d4ea0e89c1a009d60bf79e4857e0ac0bfa89Ff521f3d329b257a712884cd27f7e2c039de9d37e2F92527ed8f7f9c777c5aadc) (F 0x6614467e06b22147927e68e5dbe3aaa0a710519cfccbcbaabe6d110d54b5ac6bb12f3b2c8c97d1a4cd5bdf4138eF3e8593f1ce63b01af6ab8704b479e5ce908e5ad0939c510d62)
- , NZ (F 0x1901ded9c7b65dc1068c84b6d5ac3cfa15e6e61b2788a2592094e2b4455cb2f6a99820aade15ea1e420a2e451ef3e385d7817149f02d42d27056ecbbfc5560e4421549cac29001b) (F 0x6cd583ad69c2f271bed8aea8efb077478d61ac4ec3a9f0b53fF406aec468dcce079a1dda0f12ef675dbc243d263ba642029214be28af9e4679989255831649a3ee8d4bc2cc2c16)
- , NZ (F 0x536ed0052e2cd4ced48fd29bF13826737bdfa1d5be65d3db9f93f8cf9c033b2add2aaa6d821296b6ed5f047a8b470f924e1d6e9255c5ac0f8760b79d43f2737e8f654e13f49c76) (F 0x226d8fbb38b22c259a86393002b3f690d3e13a480a093fad41058776cc69f72092dc5d078ee9b99294d9625a8755bF06695fd96e36e6a12da3c6769d676ca8db54cF0ee09eec2)
- , NZ (F 0x3028c14640c96c0a52f9bcb44e0c1230364fbfc1bb1aba5cdbe1905758f855843fa6e77a252037fb4c3e8954209c702b8d24F98b18b151492c3294be1f39253c14f316da0de161) (F 0x22acabd0e5ad23d55717ef7bed416d05722d15F04791c2f594d1fdff380c06a4ab230df22377e09d25037b62940424a38b949e8280ed3d7bb79c6d58ca45b385fc0c101721bdc5)
- , NZ (F 0x77cebf07cf8a559ebb581284fbd09ab13457b4e6e88ad4634961bdfde1d758f2c96089177b6f203e252bd42ee031f115c2a1663f3dc57d98106ef0d592ba7df2d5d0708d6b68380) (F 0x37be418360f056b1716d6c3bc6fF31bae88ae85cdead7b4e7250d36387d07e6c21d15e5a246721f9dd3a4322357ef9eae51394cbeea41708ab8f82de2b94fb35b2734be18e6147)
- , NZ (F 0x79fb365ef19a0a1c30199d42c838617250788efd04e6cd3c7cfcbab459e4e4fae99a11bd81f459127f2097a2a5485972c395d869eaceaff8c202390d79ed52dbc0ec4338f122083) (F 0x0e1a39a6650372eb224d912366fd08e5b3646081dd3b649f2fa0092696b2f17dece1cfd53e3576f2947901038460bd86f1aa05170938a2584b719f2a3ec16113445b33e6203c9d8)
- , NZ (F 0x55dd7b0ad66fa84c1b105253dd9b5026832add8a1da91bd93fc41260540f1d507df8aabbe560be5980ab93caaedb5a93705d43d6259576170077c6fd869e740c18c72865610b9eb) (F 0x2d72f9996c2d7b314176783755e5a40882d1bc6e8aa01de6886694a1c7e5522fb8a134abec7120c3227a840d5bc0fa913735c8a26edbba393897b81603F2F3982d4879dbba92a)
- , NZ (F 0x1cb04b224b85d42d1c72968168d76c8c9a14aa1f949c778ff9e372eac69a1144bc59139050c6d1ff62b3b32a4e0991cdc485793aba33be7cad4e217ed0b6a39507d216086c9b418) (F 0x6a6448a91d36c7275fcebfba56fa91d3370f1608f392d60683fa2b312be092dc1cb5c2df37ab2dee5c1e6609b38496b66c16e55e3301a5ef280876579fd9943d8d6eba21dd4f1e2)
- , NZ (F 0x672a396da1335476d238c634f24535737d09e4dcfc422844bea556d14ccbdec5cff6667d3ac10583f376d3432127c5ab0af2dbdb5e1ba68fcfa854c9df9969b16ed148388c115fd) (F 0x60aa824f7943223dbe55e6b2a0f5ab39eda93acd3bdd1ac91f8e4b1a825a00a8bd99335c25181a9eb2a2f00790728743a8d646baa3b5d0c6199fae797f41ae0662ec3295882ede2)
- , NZ (F 0x39e74efbd9db238531e833f6056ecf0c9b5320cd3a80caa236954ce84a742eca53f73d13cbe60477acc1b81e1bdaa2224ebc8424d839a21c395d2dad6c491d65bbcb1b7db12f1d3) (F 0x0abbb65ee27989d420f3392058a094f21bfb922c7b5ea5382bdb342d12675abf61a1f7fd11d8124d41a5c0609759e6e1262eabbb7b85e775e2bd97afa3e008200075213b3106b60)
- , NZ (F 0x0d2055d690b9397726ad8ec9de385a0fdf2141480cc29777b1e9ecb96eb44e03d0f310cdc9b7a8dF5784baaa3c63ac5ec056186b8ff669d8b7f542f0d280ff4500522a602365b4) (F 0x53526c91a2ab71fb76582151504c1a1c94cc6ebc197d018b1726641abce3218a2dc07f93d68c89914791c5f63284e735d9362fdf556327cb7231d7d8babedbc9b589b9450c8d4f4)
- , NZ (F 0x711ee90e2135581e784e24c2cf7896fc11aae34d02444f6e712a74235097bfc32105f0323bf3d688ecf6518631c4677ad518d68e61fb63e310e79c1f06312adcca30019f187d436) (F 0x5cd27ed00ea43d081b2e1e86c7af38e1879690e305f7a247ec64f53b566ea5a9d461587aa378644f410e50c1edbb4ecf6a284d787ef4734823865403872d78aaafd14f06c3e64a7)
- , NZ (F 0x4abdd808cf20bcad18cd4d2d792f1885154f264676e1651e0a22faccce55960411f601c7287a6ee9b149a533c07F517a38e2ac39c696f0b9707334a73a097bbd88b85396bc2710) (F 0x22f0a1a9fa3686b5cae144fb28e9f0711435ff294158581F430f7dc8f7c4b2a3956e4ee57286055dd40b91f7c4abc8ec23964f7dc329f85352Fd486204d708cfab08b1579a182)
- , NZ (F 0x5f258cf2aec6add6c043f7861f5ba200c40a7f15b5c0a7f7F356919e1dda3aa99d989c7336aaa51f5c2f708c05f9f676e74945262d4a70Fcef26Fc1eaf6de9cce952d9dd9956) (F 0x02522900bf9fff8e11ee9e6b5302134bad383999f2a6271f856ade8e935ae87f564d691a7759f48444d256a5c363ce235a39622f1f49389fc4f29f83d686405e35e41d71854e0cb)
- , NZ (F 0x504029f9701e433c11d4433b0dc1ea7ba5c88291c06d1fd4820dde01c24a4ce25b74304cb7e7d0381d5048cb6daf224c24034be60944276a53c3bb9a38664e6323504b438ba4c3b) (F 0x3bf0236364a982a9afad7648491cde3fbbd130e32a02becd75c043d3a8b4869028542065d6e2dd9eb16c28267d08bc5bba0428d5a307221e6595e6dc07df1dcc0e3774c706a9e76)
- , NZ (F 0x775589b5557ed1a20961d691a4ca07f0510512e87c16228b42212f9b4af3c49a380393db2e3106df06ea4c258a271d593356e5634956c061c17a5c52f7c44a296c21580f8e661d4) (F 0x38afca621805858f4bf9b47162ff98bF1960bedab935788f51251e4F8650b0b3ee5099c1b38e185ad673f1af27b002411c20fb6536Fd0ba702ee07e1b48da9307c484bae834e)
- , NZ (F 0x3f43a457db269562aa142da2b2466eb43efb7aF51cae1ff0c2f19157f5a5384081a404221e4005a69e839d16f77756475514c375fa715a9a3bf807bff3e2901052ba4fa989d72a) (F 0x6b5ac416681ac89312368f54209be6dfb64922ce7d1dc83d93f99096e974af1c9b7d72a87d60e6bf8ce6df0f10adbade4154c9c5b689481cb9ab1b5a6456681ecf9b5ba278cbaf6)
- , NZ (F 0x79d8e290b75a9ddc7a2c03eadedFe7f17164fac958cb0fdb7dcf1c0af6ac04a069d235a230cb789effa50d1b129fb8885e33814a793184108ea0d10600a9f4b79c553aa07aF74) (F 0x05a7a22330536e540e4a3a4e2c0305acc52420e0d9b6bebf123747426c11f46b7dbfc88ede95355d735261ca8ac350eba3e5a5e52879f0a16f843076fc2999a706b824f036bb9a6)
- , NZ (F 0x0b05665f487cb54d4f92a574c992c72d2d1e702ba7ebe79d9f01f8c4851a4a734ed32df1178338c9f3660965d90b09e403aafc30532dc10990e510f3646bcbbf77f148635f7a9d9) (F 0x323a6c0fb5e7214f60261be63a6655eda8254de575944c7d26Faab76ff6ee0221d24b3f33f9eaa27b7423013768cd65e668b32998fabd694ca482874fa6c1299d7873da57f02aa)
- , NZ (F 0x296e64b7c0c9311bedf3358ebbd28b212cc0c4945993477f549f3421a9533812c0d0aa7a45c5b415e29dea0877e5b1b0601bd111a18c16a5990e72a1dc4ce76f9d056652985ddf1) (F 0x0b81b340c3415a1cb9187004692a302bd6c53f089f4cfb8e76c865a17f56acb3bfddbcaf557156e769cbb98d5917ec0f606877c49561d310803bbc5d0ecff1946f3652a3407b495)
- , NZ (F 0x604231bd97187888281e3e49f38a7f103882c7ff2f466171f33da1da82d0013fdc9781575a4e4cdae3d7579e3cb46366bd1678e5e3782ba6151f36a8f1467d4c967192f13469a80) (F 0x240598810071c6115c842d21ec8ea1ef586a01c1752c3686700ca73f457202a731786b64b599ba7962ff8c3a4cd66cabd03ce4179fab19572b398d0716a00219ca90669b6904afb)
- , NZ (F 0x356c1067a64316558ec0f45a6ec0aea1d8e40442ddd47f2d1548f8be380e957d16865db62e5ebb20f0d4b27ee474414b15f67961a121496ef97503b13c62a3d09cf2c12bebe3f85) (F 0x64afcc31c2df0818567468384d637660d3da95bb35a9302dcec3abebf0594c59b2c969fcc0692eb0e9179368b971d98bc0399b420a225dcf7b9377cbb9008ee802f0738e88b9e19)
- , NZ (F 0x20b65e3F08c0538d3e77F92165c68daa29e995bb8da7bedac5681bf3e0f119bcaa6fdf64258765f12308b385bdeb9fa38da681F524a51f7a467e6b6c85360f88ddd95228b119) (F 0x11b8817e80ebc647d17fc073a1b1e58a5F0abcee81eb741aa4097afd85b44e70c54e88916bce95b5f0bd6fd0f4c03f781bd4c2b8d5c1648fb0754a2d3915999d728159eede24a3)
- , NZ (F 0x5ecc7cab08731d0c422095c03bb31b965591cd3f3166e211a7631089341a908d796376ec8e3db3810397624854b3b1e283d5e2f3e34370234ff3caa6a0ef6efd7690293ea9078a1) (F 0x15877b2c9687f5fd4496c7fdaea28c5d52fdd5aa3a95e30e92f9779ca40509a34615310ca76b313970f5a815d7c6babb7f2da11fb00dbd706de6000eaab639e760a7ab76bcac91e)
- , NZ (F 0x4bb68d4eb60a34edb8c8e6e8ad47c80c3deaa318f95e1a897caee0d3acb35ce3a4904eb71b290caa060e1d5db534272bf8f88d11d0b292592534cd778c7188e6946d98cacd5d8cc) (F 0x6548de54cb8eb2e8808946f093100575dbea3e7bbbcd9f93f380855fae6f4c116ca65fcb6e20d74ec50d8eF7c345d4b98fb411d09d061fde75Fcb92ea72d9aa815b02e9cd1c3a)
- , NZ (F 0x1116295e5d00f99a03bc646acc90e39a07178349228b322ef62ff5d98025ce1e59377fafa47a58271e377a545917c2e0392c690eed81eace986fa0c5d93ff1b559abbd902599ca5) (F 0x016112c3e8ec657a84b7cd6aa5f9e1539d329fbacf8317119745a902c0145ccb9252181c596ad8959a7fdb9cf6cd044dcba40e953e503f7957a106936922b4aa7e88f76d1cb1d85)
- , NZ (F 0x26b6a409c98e914e891c05e3f0f9c852f3af7a721f0a55c5df637d0434629eddff41702fd64f8f929ef99adcf562fd02348c930dd90c2b4a2a4f52b5d57dddcFd7c18d602300df) (F 0x49c4c9ac1a84eed4e45983de0cdb967920d5c63509ff8788782515c7842b4ab554238b0dead3a1a90f965aac8d22fc08179321eef7fd5f5a9e375389e568c0c91F34912029ce04)
- , NZ (F 0x75ee179a569388821bd0207d0662d289a8632db7a46af068cbeac0970F1620236fa6e5f9f7940e6e52651f027747f89e68f63160160cfc0dadbae05f69d8fa650a102f4ac6745f) (F 0x47e19717934e14aa64db8633b6e1cf660e3332bde7bb04e3404e8500410a36455041684ed13ac28c47a6c20e342b247a277963d74984a0b568eb3a4cdf1e807be3c49721d275a83)
- , NZ (F 0x07c7dfc167894ab06f21ebc8e74a6796fbadc457e1731e379e2cdff0c027113bf30c0e5bd53bb7f35e6ba448ae7b19a057e1aaa8ccbaaa917da6317cebd6b5a672346ad6a847fd5) (F 0x141d85c1a589ce727f7f44134aa32c07eaaa499dfac6efd83c229Ff8401aada72229372dd78d8d56b460473220573288f25c3b7facc5d6ab7b01368c68370e402a6c2a6d05c9d2)
- , NZ (F 0x63d5ac83e688fdb970c2aa61d4702ad326c63d6f888ada88e720142ba7c46206fc30e8954b43cff74271863bf166892d81270b18d8646a29e4920a086530b7321da7153584ff6ba) (F 0x5e6e68a734053e087d120323f009b2a8739e7f1ab01ed39457818564a2331b8f48a76b37Fbaa680ad3c361848cb0b46c8e7e62762b0e8f61a576d002ae5a0b493956b6f165e5df)
- , NZ (F 0x5d784a1aba718286cf487ea2b522c4e4d65ec0081d52e831850043d70ae884f693899f06de5b51b9ae06447c5fa9b9f700f245fd7e079c9fc9af08c785d0c807deb8f570482a2c8) (F 0x683b279d38d180Fc6480b54679ae33ebf1eaea474b6e1d15195fF4aacdd216716d508b584b9dcd96c0e258ff4c9a90a8d442ef8b0712dbb7d877b911fcba2bfd388b1fF5f287)
- , NZ (F 0x446c3b56323053c1faf9fb4f4cbccba4ebdd66d41b8095e715f35b9782c5d9513513a12185d3d8e11a654610ccd2eef1bc0b53886343d90eda3b8ff60511d3162e8eead6ba3ef40) (F 0x7221FFc0d05667b6db875c5043be112897e36c8014aedcd0ffa8b462be6e81b89f114ec682d32445923ed9187d25ffd63e6f2a6277930138a06770e1c4b7ca4b3c231a863ad4d)
- , NZ (F 0x2ed3ba283e9fd13ce5344c724b5bad55b0908741e3c2215a128ae52769150756b120f5dcf52f1a1097c5763ed62c9ae076851366e78acc96478d25a62aa38d5e2ea88742683e838) (F 0x267cb2663a53c07de79d38b0bca7e132b66eb73d0c200396b4f827ac6d2c492de485969bf432ccc484c6338a56d532930f65dc10b9e9f5e14bd01dbc736c9fc5b8eb6650f90dd27)
- , NZ (F 0x250dd047910bbe931d7f83e682bdfa87d3c7b2ac0dd4076ab77Fa05564f5f3be15fa940ae4ede244ca1d9946d1115e81a704a742748b676d35db4e17e442d718d6193c32fb3a24) (F 0x01e2840a9e7f386a33ff084f161054b96919482bd82dd34dd3e47760bf102be5014d875f40fFfb37caf48a4769f53a6e252d4f4b776a7317f37ec4F4396b7ce98644cdf5c9ba9)
- , NZ (F 0x69167eda02e1091edd7e9cf043d62Fe36372b396da48e761b8401fc9fd1b3a7cc1a69f0ee7fffc2debec125cb0363c889a239408e140eecce06b1674fa682ba18dd58dd33173d6) (F 0x152130d2445cdd78405dc049b093bf150303942990362e0b8f70551c2f85c22fbea744aca18a3a5d7ab16fF95381d455c5417ce1e3129ccba9551d7ed2b2603ffff21bc8dd5d8f)
- , NZ (F 0x28e3c50988240558c72b2977db81f2c5ebe52f4a75501e27ab5564222a70b7b61b6ca4866bfc21ac1ef994e4bc8ff326a941b06a8359c9ca988b7c652662a2207f379b77cd6a153) (F 0x6e478dab85ee60273b263365db59055f6eef13046df0e13443b7a3ee2835d7ac082d08bade5193080f686e15e2b92b7042cc2e02974f6adcfff21c34fcd081c9d7a3a16c412de2f)
- , NZ (F 0x72b043c6f3fd639c263edc39c3eab0e51b39556cf26f76801258fddc15fb739123c4efcc407b94a6f0c3a2424d25433a6037647160324da61bae400bc350d4089b362beb75f8b41) (F 0x5b7c97380810ed0652b9bfc1ed3d12d3941d75196af8b44129af6a1c3a4606b359126a995f51189efc5734b3cd3b9b670d3f1de7385b3f958b2e504Ffb00ffda2906baa659aeca)
- , NZ (F 0x546e349c35d9d3430b6178c50ff3f4fdd81924ae706d2e4339e37f88348531f4f9F03ecad409966ad01b660195fb5e38bd3ed6c5d0988cd8832749b5d07e4986b216734aa98692) (F 0x0649451ed92184ab690656112a815459030a9df5cf4595ab8da5f8c6c01c7ee5a6c7cb72f5ea21cf9753cf073f9bd33453825f4e5b93a2d1ceb134699b8e8a61a6aac81aecaa8c8)
- , NZ (F 0x45fc0750Fce3c935c933a57f6bf46bbdc8ab0a1cf7500a7e7aa900038ebf69fc4429b16a8f651c3ea86903185acd4b917c01e06db80b70f15fa505cd36473dc11c2766179949ac) (F 0x0f1db535af9fc8173a8335671209b9037508fab56d9125b4294cb08d7e1878f5a851ad15fc29c9c4c842481a1d578bd88c43cd7cac0109ab4ed56376f570a02cb765c52a10987e9)
- , NZ (F 0x365d16d6d1a64183bdefc7b7cac4996e68956fb8791061272b41258ad71d276491bf69b4d6534dfc00ad45917e0ab8b71c2a7581adb443917bf14e45aee0547aada7d697748b548) (F 0x2f83d51154f25f2c1a4676b86b9393b1262dbc8aabb5c63333a6141f1fF6ff47240a3642bc5218405f1ae03b60066bf334d8ab28606490e04b78317c470bb609ead54957627aef)
- , NZ (F 0x4e7fcebf36244eb3abc32283b9e4af9e193afd3f696678d18eb59f35592c1f44de4c1e8e6c5942f17fddeccefca1a3ce9e0f5e274dee18c152d679a9d70c4cfc0dFd4885d88580) (F 0x34cFc87868b6172f25038d9342ec5f75a6d5370f5530579512ec206e25c9130629036e2e3e6cefd9eaa7c2aff5517289caf298c4f142e07e8324025fdd80f3fb0d377db72a8045)
- , NZ (F 0x4f53671973d2c3d9edf26bd14e87117adf6287b8475b73f612282897fde65eddd0ae7c6fafd49661fd95e4220330bbaf597085ec4c5639dc3a9439a88c6c98e85fc7ee0e605f1b1) (F 0x5caac7d22d272aa197ef3368b65c942b505052466a0bcc53df2515af3fdfc3667020015b3e718ad982e1f8731F2aec54945a02433c7163a31100f38ba3b624575ef374a84f7854)
- , NZ (F 0x6d3b7b8b2d7d8227ea673366028e21a9008b04dbb40f5080483d7312b8fb31d8e4cbb020854d26f1cdf772de81a0f55Fd34a4a0193fc51db1ca429dda0618de157cbc5fbc0c7b5) (F 0x0cbe9c3e555cfbbc0533b8847481014c42cca111bce71aaa69744351e6e69860070028c5c65b023aef9cb2204814c23ba2868ce5e3b6f89110789c4708fc229f4b10e30e939fcc6)
- , NZ (F 0x0227b8ce16fdbcc9d128d566ae50bcaf838c06ccad3d9a14d6cc57e66d9e60afa72ca1840e4aa7a691d06398b33d8ddf9523bd25df334f01af000a0148f1b599ac4522a13e1daca) (F 0x2c5f05331b8db5b2128cd39859739b7f2e6e8435c98a4c826e7e8b5dd8ba05c447779d02cff1b1d034d3ee0088290645eea0c5613765f280b9bf231e5c0fc6ff8ae7ad1735ff517)
- , NZ (F 0x4359f7b432f9cc7a7174978c0dbe393d3422732f1b2c76a0e161b381fce0ca235e8c7ffc82c93c39a7cab198965ac015672111627eeb14d31b34b60de2ea358482db2c2a0656db5) (F 0x612bde975a69d09310c69d3165c910273b1d99666ceb475e5de328268445d1396246c5805c5ca501855ec2d02e91377e7ea4555ec0cb036312b2c081871ffa242dcd0bf57593627)
- , NZ (F 0x7ca892f5fa9d62d61b4366ddfdbce8c7743d7fd45b2290853ace2ee7bbfa3daaddce31197002d0ee882c3ffcccbaacdb1F617be29c588af2b0df1490379283af8fd291091f1547) (F 0x10d1d0bf3d4c3d5623c84ded0409078ad4134976fcc54deef03d4819e58367fcc544f61ec63078e92dd8ac729078d0212a3a3bc8a810e597285350d5b00fd9998ef1d46f82f0a78)
- , NZ (F 0x2eba3612b2805ddac9401bf62f968e7fafd73e72fc3F6124b823820e2c0cbbf0bbc576cb877536952ad16a0be29cfc75b2b5f4cbe3a9e929afa9b31e445861a7f70307bf547e7b) (F 0x15947eeaa139e6d327f5fc28474b4c43392c840a24d37516f551af0f088ca5d1ca24e489a4c386aa4df4efcc1a5d112Fe7eec379c76bFf77934a2365ab54903a6b860d60Ff41)
- , NZ (F 0x0af93eda366d4525f85ed1b988ff3c1d5db710e2ff3ca902a0f122d80f21e0e4eFb244de845908b1b0894f9daa83e12163f044242ca6b10173036b8bd5dcb1647f3731502be500) (F 0x331ae20aaee9bc061d40830a6a257e0bb523abb561b51bd8da2f3caf6ae7f3b71c9c6db5f1c9b081fc70c1b1e8068d31aafadeb5de98b056fc294afbd72300ebd72b6ce4bc18511)
- , NZ (F 0x78df234cc31ed548216c38f32ac3a5168097f63e22c2ff5c9db89d4b62dd84fddd459884da6b48f06afa8f077b698ec10e2d45a6f81df304063a094e67460e8962bbd184bc48cac) (F 0x5152497bf7950cd6e698c897f72ca62c4cc0ba0c62c9cbb49cadfa335d917168db5952bcca47d5c2681fb33b958c29a5e18c968206173caf01159f4764ae5cd8019df1cadaf7584)
- , NZ (F 0x1980ff1364cbaff6d59dbb67e5b9c441af672b13d938065e766ece91bdca8cab71aa4ffb9a61a92024e094685858d7922a261bceeb9b80e61f22b3f2a3a30a544da18d4Fef30ad) (F 0x116fa0cf7ae9b5615e5cbc5c82e2Fb024966c8ab10d459e758c62b43570fa1553bb4eb86207f216840882d3de4ea3a3c11998020c192d2b456abb5b75f1db482d79bb1dafbcaeb)
- , NZ (F 0x4bc9e353acddeb147142bb4b0338415aabd88ede94740f0bccbd2324e70882856c76299d6ddaa9edd72c4f4c5a4089e95bd087ef96ec109bdb3d9322a908edcff47bc3747d4eaad) (F 0x52a18c5949ef65bbd9ae6c7c7d2fd5c0772d64616bbf3b858c903a4b0427fcc9f1844da363949b421cddb4d8f27a700336cd304338fded128836162a1a0ee3ff16034589b9d0bfc)
- , NZ (F 0x45b3f71cd9613288a3d32F878cd8cd636327ed57268138d4cc9d11a560442ba9a7a20702a84358099f260b6e94f1837ad1100cbb4f72e8ab7e1bce6b3c4c867dddb19e22e57016) (F 0x4524cda3cdc9c022b1841d370083bd68bbdd11d5dcb9677fd47e24b4f73dd0bdf1d2dba255153a0d421f2f3e5246279b9ed70694e49a883e7700c664a10a268280de0b9afb91c09)
- , NZ (F 0x02840c70f63de4c8f1ef8519e071756bc5051ea20659F117979c95df7dace65370aaf894a1d3345cca79c09286bec986924a6F5523984ce5d6Fa9a2dddf033de9832821F80b) (F 0x295c63418faadfcbeaf1dcebd0bbf04c32da3dc8ee4d4e9d89c24486ac03e0a3805762ee8473ebcd7f362a027d1247e53e9aa7a5F017192c40b712dbea96af2e00bbe8a65408e0)
- , NZ (F 0x2355d72b024bc848c42c7cff7971a616cad27bd1172961a13d687affa6a69ebad48caee32b1dc3d93b6b74aad589b925ea6122a80462cb1b2c8c08eb267dc1c3ed240cb09a1e122) (F 0x548e1c088cc867a6683141a46a333b0c69678ea4efcd0208c15a6c0c4cbed75d2f5cfd14de7f4b4491b0b9cd02ee940e45a30634b52e3a14e7481ce887003a2bc8b70d6294a789e)
- , NZ (F 0x30420796fddd68c49c948b7d1f4fda59231d20c0546f3000d2ee663f765f0614485101d82a76b6c4fa1fc2fb5b4a897b2f430a435dbbb568843e11d159081d04c5e4dbd044940ac) (F 0x356c5c5e903021c1ffa6b7bb34f24ba07c072c6351a8eed1ce58d8fb422e63b24f1a14f1a01e9f10bab6c78805188d7b1bc6a0473F107dfa1790fcca63341144a12ddf4d8ae560)
- , NZ (F 0x6cb6029d26513e2ba68f750dfd7dff645d9390673eb9052b9878bba1ff3fccc87ed8f9d6632ddc8f5bd03a102edeacbe37c8a6936158f111e0d12a9cf7d425e991919413ea8dad7) (F 0x7c4ee05e79883e45c95beFc88fffa8c1cb615b3089c5b727c49c4c2675e4617ec7c9a4cee296ce13907321cc56a3cef574881314181565c7d686de34a2e9719c9446945F51983)
- , NZ (F 0x6c7aedf18b89bcc56e23ddc249dde79f58697c1c6252f939a270fb38b65aba99d3851a3359792cb6eebfca4561a80f541fc31a3d7f4cf5937e713e38af59f56cbbf2690014a3041) (F 0x244cea94c29Fe1a27f27beb4dc62e09bb629bd27f5706086fcd2678c0e105757048957ac24a561525346d2f36516a0bbcdd5c50281e68e77e2c77a9378bdb5fd3d808fde941298)
- , NZ (F 0x3603d5125fca1e87e6b1dcd3dd17d3cd86bb12f902eeac8fd02c3bcbbcf7f8bf6cbbe1366f9c8e25d949ddbaac7c27bf518121079bb8955e9a64659895df5684578b800a2c08c84) (F 0x4422a84d9f9de240ce0a8c6a55a3ffae5515c11492416cbb7017e9d5441be5a2b825339b42095e5ae98d135698e4c08f910f132a079d0b92211a08a91b1452b33d746e102ae764a)
- , NZ (F 0x414caa4f733e932553009d93d3251a42F2c580ab7d283e2d1e170726f5f9be5b7653408fa7572d3f009cf4ee802613aa3a31c2991dbdfaabccecd832c4e86c6a68f2e612739b7b) (F 0x23ada1bcbd3a506cfb3de390c21ec572a1c47173c0c81720c8464525c52a45cfd671762041dee2f16533dcda869caeeafc34891021cc2b2157d4f915e1d5bd8a2b57df9c24734f0)
- , NZ (F 0x57afce5cb571cc5760d1f0a4d90e91f5ac8391977d11bc37dcd85f5e01839d984e24a429e7df120a724a21949f1cac61495d3f1639e886024c21e04c46c69103522355b046d2cf6) (F 0x48e6ec239e955630bc6b80eb7d476fdcb853cefdd1a54e1dbc181de37ffcec38F02f8b5db392ee55d55b6bcf18836db8602fc27ca0e006aeca2c79e6635661b9ef392714bd3b16)
- , NZ (F 0x1546b20d6b24f309b7ae5c49949425b10350c72ef077f8988448bb7665c0fd3630c8d3f5c9e3e16106acf422f0149817f27dd80b2c66bbd4d92ddb663736649130b459ef2cb4d91) (F 0x0e0a7ccdd9f2e40c2509cb8759c31882c6f0af9082f9ae4c0eced3870Fd4f8d009c4de7e640F3ed4c8639deda22a6c3df4e57a6e3a7953cbe00867e5b40df37efadc6a45ec0dd)
- , NZ (F 0x08498134b0bc9e1b75cd4590d23e5b78faed9a4373c9a054ba5896243b0d589252ae5854d56199d8e3191b670e6dee2fd2669eab6e90cf1738e6042b7c85ecea74ad1bbf4daefc5) (F 0x090f572ab081f45c3ade75e3e2f359707b4c9dff7861adb0276b4590efad86056a666b5f8889447af7560f5e9b778eb8e8f55bbbb61d0502bdf7baab4352099f2310a43c163f168)
- , NZ (F 0x1db52c53c2b2f23fa8366c0b101aab1e67a7edf6b833d3a06b867fc4ad23ec3398ca5dc92a18821f6c3595c3f0c823929275c32e918c2cdf8be51019bb5a70f980cde3ce21a9ba2) (F 0x048764a0bdba152ba8574fa87c9364790068c39edb48a7a67da6357b6f057b4deaa6f086cea3bcc5861351bc77f076f2d56b7b464bb8a1e9fa8d0c3d2e514a702f6a14522afc6b4)
- , NZ (F 0x3ac0271c0670a3580320de9c16b540dc328f4e92ba7fda73ea7e324d30a41fa283734d0b9569c9b45466857ef84634fa46e178eb71d2579a05ad7bf92c5a9cff4b3117000095df4) (F 0x0ecd0510b9de90dd810dc2120cec126f92fcfa69b97e259bd59cb7bba690e221d0f07a4e43acae95fa333d7ab6fa7200b9b6eacf843cf3e523d9d3482d57df3f23efdbd55cae8d6)
- , NZ (F 0x73e43c002b75c7a4a4d93e49a754c1e221e79bd2cb4204a318492637f36112a9502b2e98118456337c751d9a4095adF9cd80e9f8504524055b60545b7f2a4e41203dbeff36e0fb) (F 0x328495a6175c9700da2e76d59c80b65d06202a3ae0fff5ab0eb06ba6031a30a29d7a846a8e19b615b15a996aa883e6b8e9107dec94f59daaa541ebd06a89577Fb57edabc453ddd)
- , NZ (F 0x1156a682ef64a1522a066b63389f0fadae4044b9f3F5b4307439c2867cfdcbc1ccd6ffd9ac2eba59cbb103571cbcf4fa1ac80ea3da683d146543225ff9685df780b0c7a7816a97) (F 0x434fc638e047abcdb92582ab47b8b4e41ce110f08248e460eaa8e72ca80cf48a312db80e5143d4513e5bce24d798e13b89ebf1cf14fdc431791880ddf13d8d06d5f522c6a8263ed)
- , NZ (F 0x0a1cc99a2250bc566dfd190c12a101d97832e3ba8f2692b6ce51fb5c68d8604bf92c146a02e9461054ce0378d2cdf8afd3f201d23575c867b04465a6ec6285807a1d672b9631511) (F 0x4707c15da62c0aecfa76e70d92c8a473b6f4bb0a671323b34bdd0fc80190547b8a5f7b5ac1d6f6169271b87770aa100e2c271db5f6696bc400166fc3bb5a81df3b6d8c4749427c0)
- , NZ (F 0x6288a3951452e5528074104b97fcb0adaab85ab3e74e2a14f5405b29c3d30084Fda236bafd981a19794dd83a3da847f456629dF8ec166ada2bfc183e1f18a24cea91f6b135faa) (F 0x1f179a306ee07b99d97fa2cd7751f8d29a994cc976a4f63422bf0b7f624360037585217a07a75ea7606b1cd64b46e3de3cee7af5cc133427c17a2faa4c36d03cce1465e5385b37c)
- , NZ (F 0x75e86c8d781dd1cd96c992575c1132550eed0b2ec272682c1e38a66cd24c1553e927318052439fd2eb613e2548ba64cdce738aaca67ec9eba2a6882ceeef458aac36eadfc55e115) (F 0x51d3c8569b6a3ef24982caddf1f34f35db9481574ad0eb493c52c312addaedce6959632ccf46831f3685dfc63eb050637797a048da937eec8c90c1bb5d39630e28d7db3e1a3a616)
- , NZ (F 0x33898307fb6fbd2f02e0fcf54a42cf7698f169a845521345fa97b2717287ee83c2d668f742577089b533a66c431ed1ec4ea7600b2b8c1bef0e725b23e584a600d1cf6bd58428158) (F 0x61220bc84633b9416f2de792f72a4b8b02b953001258bc09016aaaf9e25bd0b11a9c7723a602fb308f8d27c0F2c2a754ab1e0b413a2e2d361b901253bf90750fae2fadc718727b)
- , NZ (F 0x65135b6a2732e5483bea9f2dd9419393197da38965dc2c78bf0e1189670e58216b987dc0462a599F7956ec000f79636ef5abbf6f47b0c55fab0a357f74781291da65c1462883a8) (F 0x65675cb8229cb6a04dbbd21dbc99952df4dc91ceb0ee5b747347df2fa9a9d5f4e79c7c9bd0d2c45f8658b7d66a391482badc5a6251e1a5c9d3daf659f367334a7a7d3988cbf477f)
- , NZ (F 0x3467444a5d1c45959b22ce189325acbbF3ca3edab5175d0bf2a2f06d30bd5f6ac6229945cd4bbdaa2320257d172d66b0cbe1be188b9a59f15b9ca7449227dce5a9840e48c84e01) (F 0x2d484925b7550c182f02dc5274e30F4b56c6592afce7523f0895acab5dfdf76350a72390ff6fa4e368d9d6b4763acfFa3171e2a26c4c6bb75401732f8a1e17efa3c6de4dd80F)
- , NZ (F 0x0d6781da1f70c0ca0fa410e6f0899b4ea0c47d59285b1df883d2f6ecf7139cac789b70a606c56c06b88b7acf2f9c9c34bfadf14df00a086ef0a53dda4c30047da0b26ed67a0a6F) (F 0x0646552538e32e98b7103118d1763e95b8f34e6F298a185c6eb9ca13a958cbd3c2ec37ef5ac043678e83cf33229eF6a219f51696d0aac00e136b83d90625d901b92c2649cb7cb)
- , NZ (F 0x31e6f81edd6ad2dc707562a4ade661dace6e32675a01bee14cbed4f3eb285856340d046ce0672863850384839b0cfdf64635e5534d7a9db5a068938d67521cb5115cbfa9a4cd045) (F 0x2e208f01333b0dd205c7925f83bf1d7e56d1735a2da5d3900883dbe0b22cdde1f21d06179b0aad7c2ce3401a00c0ea7f55a999c456bf77b7679584db5e0b3e1d7a6253d13758d9c)
- , NZ (F 0x121c2ce5665c81d109b91f631012472c1c22dea3b5d99c7dd1ad0683370c74967e647cbba4613ca97a354353a6bf194672effbd69df8d4f7c4831d1f52bf8e0464a822a56b2970f) (F 0x1fc2b608661087e7eecc452815db4e675396ce72d8160f0c8ce25112178e649399cc410110a97bb42ebb3f41185797db97afbF5097d99f6e30c3e113d34d4b74946e705f4aa128)
- , NZ (F 0x2c897cf2767a245e48807d8af27bde6d6280df43c7e6800fdee0f4c03f3ca98e5c71159dc82018671dcb71cf039c2d7d259583022b8885ec82a66255704fa67c6c8d40617acc5ce) (F 0x173b84a48370a612bba01af96cfceff19c8f2368b3f24f8cac65a1e9d2de5b3427a28bb163a709ca120a62b0932cecae73e4a0c8e39678cF4790716254070c207cbb38379a2d56)
- , NZ (F 0x5f82dFe9093c66405f8ab0b558f03cec040710496047ec20190cef43b52e89149bec4c8c800e0edd5793191f2178bbc6d54847c0c6466b388d43c88707f3058fbdbb422187dd97) (F 0x0b60e0ef6d27780cc47a415d15d51643e545816bdb0fa9102bc6edfadd92443f3429ffbb2d1331b71a888f11bacf5680b99419216096a0f2bedFc396a26a708a9c1e457c631067)
- , NZ (F 0x3cd3476c6692ffdf6c2e5be56bb78f973d06405d5f7a5dae04b8220fa942fd8cae084b481a2c304fF897a915Fedb36af2ecf5246b847c0c535f3c2c8a6dc53e59825c1857a806) (F 0x7903aa449c8ad8b5b7497754ee146c81c73c550273283627b840bcff66f78bee549ef86a101ce1331ec2d658e0735f07f14e9ee887a181555b3fa93ae296383c60038dd6e21c2c1)
- , NZ (F 0x4477939d8d18b7f04aee584e7d578976906216ec92fd8df89479a58eF19c91a2a4d085319ca9a83293ee5c88ead2a4722e813f9c5a8781fc1137b4210b857b2eF96c3fb9c6b3a) (F 0x073d04a9373b661bcb729b10536beb3c4af77e10ecf8142cd0d61c015acdd035ca95aaf2db6cd00e60f4d41e78229f9c61e87e1ace08f4c02e5cb02b1f46be5929f6dd5ab3ec0a0)
- , NZ (F 0x06a0623a242da11c1Fce29c2f3924db45227585d9a91e415e87b145f2a5069379bc5466b5789eb8b54652188cd3536c91ac2e151b201cb0f7d1afF674253d3848734dc0626ce6) (F 0x1e075bf9c5b9ee8e61a97a2c494efdc37ee6581c9a58799a98de5e4f5817353c56b5397231a93b52b56626d21be6efda54347973dad055c76b6964d791bF92a72f96Fbf3e68a4)
- , NZ (F 0x28eb5f962270e554ca71d5b26db5554650fbe6d4c129a47b9379ae52d4a1c45df8c746ef7e7ef7cdf512cb647c9b9645e5584f31794c9d44b2299dd56e5f795154ae7d620be84e5) (F 0x69ec24eb14c2a7063250c7b5263e4ed1e6ab315dc144d25559f5dc15690af24db7647cb1df8bb67b07cf08f442b5d1ccb00a150910cf8fcef8cb561ffd7e0e53b2a8f130b833658)
- , NZ (F 0x586e5245095db75d43ac104e2b48b4d0Fb005ff002f25ea4ee3f006c3abf3764cd90a829a4cdd6076Ff57127e98a2b62f7305af2cdc776cd5d2fc6F6d5a2d609a38e18ffc7e8) (F 0x155528ce5ffb8f81a8291b9656b0ff93d5b0ae57e6da32231c92a81ee477e25399f06852241f497d04b4af730bd403a4a3ef46b6480d0010baf1ce3b4bad66f980a492f1511eae1)
- , NZ (F 0x6d1f4c4b82ce435345223934e912b35fd9f33266a7be7b95970aabe6ca57e87082b77b762a1732d68ca09cac496395d95a4d0c426b08b3901ef1e878ea6e6d009e12a14c1bc7f9c) (F 0x5d6b51b3dc41dbdefb9c37fadf5760bb67ed052cd9560892bf1a3efc4b9f2cc0027f7699694c363789d2cd16b7a6fa875aa42b9b23980aaa28ccf312025ace274188eab3fdfbe88)
- , NZ (F 0x0d112312ee88b90bfbef8fc5dc2867259f105aa43d57833337ffa2b98a0f28ba3a9200b36d29b85970a077a8dc4cc5d4f010ab8faa256649dbb7e82F35841e4096c47676dd5989) (F 0x66b5cbb08ca8667f942f4193ed11a2544069898e9d15c4cc165735f20ab5649bcb3560a29322216a72c875be7f91f5199b895adaa00adc3F0f596e97b222a4d9df72411b3e1e86)
- ]
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T3055.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T3055.hs
deleted file mode 100644
index 50853874db..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T3055.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-module Foo where
-
-import Data.Bits
-
--- This should be simplified away to -28
-int :: Int
-int = negate ((((((15 + 18 - 11) * 3) `quot` 2) `rem` 19) `shiftL` 3) `shiftR` 2)
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T3055.stdout b/testsuite/tests/ghc-regress/simplCore/should_compile/T3055.stdout
deleted file mode 100644
index 2fe7a367a0..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T3055.stdout
+++ /dev/null
@@ -1 +0,0 @@
-I# (-28)
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T3118.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T3118.hs
deleted file mode 100644
index 57b1ad0c92..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T3118.hs
+++ /dev/null
@@ -1,40 +0,0 @@
--- Test Trac #3118
-
--- The test is quite delicate. It aims to get 'f' to look like
--- f y = case x of
--- Red -> (y, y)
--- _ -> let v = case x of
--- Green -> 2
--- Blue -> 3
--- in (v, 5)
---
--- And now float the inner case to top level
--- so that it's not so obvious that the Red case
--- cannot occur. This crashed GHC 6.10.
---
--- It's delicate to make the bug show up
--- (a) because it relies on not "seeing" that
--- x = Red until later.
--- (b) because dropping the Red case must happen
--- before float-out, which itself happens v early
-
--- In the original report, the x=Red was concealed by profiling
-
-module T3118 where
-
-data Colour = Red | Green | Blue
-
-
-{-# NOINLINE [0] f #-}
-g x = Red
-
-x = g True
-
-f :: Int -> (Int,Int)
-f y = case x of
- Red -> (y, y)
- xx -> let v = case xx of
- Red -> 1
- Green -> 2
- Blue -> 3
- in (v, 5)
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T3234.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T3234.hs
deleted file mode 100644
index 7969bf60fa..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T3234.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- Trac #3234
--- Should give a use of foldr/single
-
-module Foo where
-
-x = ['x'] ++ "haskell"
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T3234.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/T3234.stderr
deleted file mode 100644
index 7aa09b7e4e..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T3234.stderr
+++ /dev/null
@@ -1,69 +0,0 @@
-
-==================== FloatOut stats: ====================
-1 Lets floated to top level; 0 Lets floated elsewhere; from 1 Lambda groups
-
-
-
-==================== FloatOut stats: ====================
-0 Lets floated to top level; 0 Lets floated elsewhere; from 0 Lambda groups
-
-
-
-==================== Grand total simplifier statistics ====================
-Total ticks: 45
-
-14 PreInlineUnconditionally
- 1 n
- 1 a1
- 1 g
- 1 xs
- 1 ys
- 1 k
- 1 z
- 1 x
- 1 g
- 1 h
- 1 n
- 1 a1
- 1 lvl
- 1 lvl
-2 PostInlineUnconditionally
- 1 c
- 1 c
-1 UnfoldingDone
- 1 GHC.Base.build
-5 RuleFired
- 1 ++
- 1 augment/build
- 1 foldr/single
- 1 unpack
- 1 unpack-list
-1 LetFloatFromLet
- 1
-22 BetaReduction
- 1 a1
- 1 b
- 1 a
- 1 g
- 1 a
- 1 xs
- 1 ys
- 1 b
- 1 c
- 1 n
- 1 a
- 1 b
- 1 k
- 1 z
- 1 x
- 1 a
- 1 g
- 1 h
- 1 b
- 1 c
- 1 n
- 1 a1
-10 SimplifierDone
- 10
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T3717.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T3717.hs
deleted file mode 100644
index eab0540f13..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T3717.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- This tests whether a supurious `seq` is eliminated
-
--- The test output is -ddump-simpl with uniques suppressed,
--- so it may wobble a bit and require updating
-
-module T3717 where
-
-foo :: Int -> Int
-foo 0 = 0
-foo n = (if n < 5 then 1 else 2) `seq` foo (n-1)
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T3717.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/T3717.stderr
deleted file mode 100644
index 828f789bfd..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T3717.stderr
+++ /dev/null
@@ -1,33 +0,0 @@
-
-==================== Tidy Core ====================
-Rec {
-T3717.$wfoo [Occ=LoopBreaker] :: GHC.Prim.Int# -> GHC.Prim.Int#
-[GblId, Arity=1, Caf=NoCafRefs, Str=DmdType L]
-T3717.$wfoo =
- \ (ww :: GHC.Prim.Int#) ->
- case ww of ds {
- __DEFAULT -> T3717.$wfoo (GHC.Prim.-# ds 1);
- 0 -> 0
- }
-end Rec }
-
-T3717.foo [InlPrag=INLINE[0]] :: GHC.Types.Int -> GHC.Types.Int
-[GblId,
- Arity=1,
- Caf=NoCafRefs,
- Str=DmdType U(L)m,
- Unf=Unf{Src=Worker=T3717.$wfoo, TopLvl=True, Arity=1, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=ALWAYS_IF(unsat_ok=True,boring_ok=False)
- Tmpl= \ (w [Occ=Once!] :: GHC.Types.Int) ->
- case w of _ { GHC.Types.I# ww [Occ=Once] ->
- case T3717.$wfoo ww of ww1 { __DEFAULT -> GHC.Types.I# ww1 }
- }}]
-T3717.foo =
- \ (w :: GHC.Types.Int) ->
- case w of _ { GHC.Types.I# ww ->
- case T3717.$wfoo ww of ww1 { __DEFAULT -> GHC.Types.I# ww1 }
- }
-
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T3717.stderr-ghc-7.0 b/testsuite/tests/ghc-regress/simplCore/should_compile/T3717.stderr-ghc-7.0
deleted file mode 100644
index c7db559d6c..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T3717.stderr-ghc-7.0
+++ /dev/null
@@ -1,47 +0,0 @@
-
-==================== Tidy Core ====================
-lvl :: GHC.Integer.Type.Integer
-[GblId, Caf=NoCafRefs, Str=DmdType]
-lvl = GHC.Integer.Type.S# 1
-
-lvl1 :: GHC.Integer.Type.Integer
-[GblId, Caf=NoCafRefs, Str=DmdType]
-lvl1 = GHC.Integer.Type.S# 2
-
-Rec {
-T3717.$wfoo [Occ=LoopBreaker] :: GHC.Prim.Int# -> GHC.Prim.Int#
-[GblId, Arity=1, Caf=NoCafRefs, Str=DmdType L]
-T3717.$wfoo =
- \ (ww :: GHC.Prim.Int#) ->
- case ww of ds {
- __DEFAULT ->
- case case GHC.Prim.<# ds 5 of _ {
- GHC.Bool.False -> lvl1; GHC.Bool.True -> lvl
- }
- of _ { __DEFAULT ->
- T3717.$wfoo (GHC.Prim.-# ds 1)
- };
- 0 -> 0
- }
-end Rec }
-
-T3717.foo [InlPrag=INLINE[0]] :: GHC.Types.Int -> GHC.Types.Int
-[GblId,
- Arity=1,
- Caf=NoCafRefs,
- Str=DmdType U(L)m,
- Unf=Unf{Src=Worker=T3717.$wfoo, TopLvl=True, Arity=1, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=ALWAYS_IF(unsat_ok=True,boring_ok=False)
- Tmpl= \ (w [Occ=Once!] :: GHC.Types.Int) ->
- case w of _ { GHC.Types.I# ww [Occ=Once] ->
- case T3717.$wfoo ww of ww1 { __DEFAULT -> GHC.Types.I# ww1 }
- }}]
-T3717.foo =
- \ (w :: GHC.Types.Int) ->
- case w of _ { GHC.Types.I# ww ->
- case T3717.$wfoo ww of ww1 { __DEFAULT -> GHC.Types.I# ww1 }
- }
-
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T3772.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T3772.hs
deleted file mode 100644
index 588337d241..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T3772.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# OPTIONS_GHC -ddump-simpl #-}
-module T3772 where
-
-import T3772_A
-
-foo :: Int -> ()
-{-# NOINLINE foo #-}
-foo n = apply n (id :: [Double] -> [Double])
-
--- = apply [Double] [Double] d1 d2 (id :: [Double] -> [Double]) =
--- deepSeq d2 (id (gen d1 n)) () = deepSeq d2 (gen d1 n) () = d2 |> co
--- (gen d1 n) () =
-
-
--- where d2 :: DeepSeq [Double]
--- d2 = df d3
---
--- d3 :: DeepSeq Double
-
--- d1 :: C [Double]
--- d1 = df' d3
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T3772.stdout b/testsuite/tests/ghc-regress/simplCore/should_compile/T3772.stdout
deleted file mode 100644
index f3bccb5426..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T3772.stdout
+++ /dev/null
@@ -1,26 +0,0 @@
-
-==================== Tidy Core ====================
-Rec {
-xs :: GHC.Prim.Int# -> ()
-[GblId, Arity=1, Caf=NoCafRefs, Str=DmdType L]
-xs =
- \ (m :: GHC.Prim.Int#) ->
- case GHC.Prim.<=# m 1 of _ {
- GHC.Types.False -> xs (GHC.Prim.-# m 1);
- GHC.Types.True -> GHC.Unit.()
- }
-end Rec }
-
-T3772.foo [InlPrag=NOINLINE] :: GHC.Types.Int -> ()
-[GblId, Arity=1, Caf=NoCafRefs, Str=DmdType U(L)]
-T3772.foo =
- \ (n :: GHC.Types.Int) ->
- case n of _ { GHC.Types.I# n# ->
- case GHC.Prim.<=# n# 0 of _ {
- GHC.Types.False -> xs n#;
- GHC.Types.True -> GHC.Unit.()
- }
- }
-
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T3772.stdout-ghc-7.0 b/testsuite/tests/ghc-regress/simplCore/should_compile/T3772.stdout-ghc-7.0
deleted file mode 100644
index c226e09309..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T3772.stdout-ghc-7.0
+++ /dev/null
@@ -1,25 +0,0 @@
-
-==================== Tidy Core ====================
-Rec {
-xs :: GHC.Prim.Int# -> ()
-[GblId, Arity=1, Caf=NoCafRefs, Str=DmdType L]
-xs =
- \ (m :: GHC.Prim.Int#) ->
- case GHC.Prim.<=# m 1 of _ {
- GHC.Bool.False -> xs (GHC.Prim.-# m 1);
- GHC.Bool.True -> GHC.Unit.()
- }
-end Rec }
-
-T3772.foo [InlPrag=NOINLINE] :: GHC.Types.Int -> ()
-[GblId, Arity=1, Caf=NoCafRefs, Str=DmdType U(L)]
-T3772.foo =
- \ (n :: GHC.Types.Int) ->
- case n of _ { GHC.Types.I# n# ->
- case GHC.Prim.<=# n# 0 of _ {
- GHC.Bool.False -> xs n#; GHC.Bool.True -> GHC.Unit.()
- }
- }
-
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T3772_A.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T3772_A.hs
deleted file mode 100644
index e6b57c98b3..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T3772_A.hs
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-module T3772_A where
-
-class DeepSeq a => C a where
--- class C a where
- gen :: Int -> a
-
-instance C Double where
- gen = fromIntegral
-
-instance C a => C [a] where
- {-# INLINE gen #-}
- gen n = replicate n (gen n)
-
-class DeepSeq a where
- deepSeq :: a -> b -> b
-
-instance DeepSeq Double where
- deepSeq = seq
-
-instance DeepSeq a => DeepSeq [a] where
- {-# INLINE deepSeq #-}
- deepSeq xs b = foldr deepSeq b xs
-
-apply :: (C a, DeepSeq b) => Int -> (a -> b) -> ()
-{-# INLINE apply #-}
-apply n f = f (gen n) `deepSeq` ()
-
-
-{-
-$cdeepSeq :: DeepSeq a -> [a] -> b -> b
--- User INLINE( 3 args )!
-$cdeepSeq a (d:DS a) b (x:[a]) (y:b) = ...
-
-$fDeepSeq[] :: DeepSeq a -> DeepSeq [a]
--- DFun (with auto INLINE pragma)
-$fDeepSeq[] a d = $cdeepSeq a d |> blah
-
-$cp1 a d :: C a => DeepSep [a]
--- We don't want to eta-expand this, lest
--- $cdeepSeq gets inlined in it!
-$cp1 a d = $fDeepSep[] a (scsel a d)
-
-$fC[] :: C a => C [a]
--- DFun
-$fC[] a d = MkC ($cp1 a d) ($cgen a d)
--} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T3831.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T3831.hs
deleted file mode 100644
index 55b4d08f3a..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T3831.hs
+++ /dev/null
@@ -1,107 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables, FlexibleInstances #-}
-
--- This test has a deep nest of join points, which led to
--- an exponential blow-up in SpecConstr
-
-module T3831(setAttributes) where
-
-import Data.Monoid
-import Control.Monad
-
-class (Monoid s, OutputCap s) => TermStr s
-
-class OutputCap f where
- outputCap :: ([Int] -> String) -> [Int] -> f
- outputCap = error "urk"
-
-instance OutputCap [Char] where
-instance (Enum p, OutputCap f) => OutputCap (p -> f) where
-
-instance MonadPlus Capability where
- mzero = Capability (const $ return Nothing)
- Capability f `mplus` Capability g = Capability $ \t -> do
- mx <- f t
- case mx of
- Nothing -> g t
- _ -> return mx
-
-instance Monad Capability where
- return = Capability . const . return . Just
- Capability f >>= g = Capability $ \t -> do
- mx <- f t
- case mx of
- Nothing -> return Nothing
- Just x -> let Capability g' = g x in g' t
-
-newtype Capability a = Capability (() -> IO (Maybe a))
-
-tiGetOutput1 :: forall f . OutputCap f => String -> Capability f
-{-# NOINLINE tiGetOutput1 #-}
-tiGetOutput1 _ = return (outputCap (const "") [])
-
-enterStandoutMode :: TermStr s => Capability s
-enterStandoutMode = tiGetOutput1 "smso"
-
-enterUnderlineMode :: TermStr s => Capability s
-enterUnderlineMode = tiGetOutput1 "smul"
-
-reverseOn :: TermStr s => Capability s
-reverseOn = tiGetOutput1 "rev"
-
-blinkOn:: TermStr s => Capability s
-blinkOn = tiGetOutput1 "blink"
-
-boldOn :: TermStr s => Capability s
-boldOn = tiGetOutput1 "bold"
-
-dimOn :: TermStr s => Capability s
-dimOn = tiGetOutput1 "dim"
-
-invisibleOn :: TermStr s => Capability s
-invisibleOn = tiGetOutput1 "invis"
-
-protectedOn :: TermStr s => Capability s
-protectedOn = tiGetOutput1 "prot"
-
-data Attributes = Attributes {
- standoutAttr,
- underlineAttr,
- reverseAttr,
- blinkAttr,
- dimAttr,
- boldAttr,
- invisibleAttr,
- protectedAttr :: Bool
- }
-
-setAttributes :: TermStr s => Capability (Attributes -> s)
-setAttributes = usingSGR0 `mplus` manualSets
- where
- usingSGR0 = do
- sgr <- tiGetOutput1 "sgr"
- return $ \a -> let mkAttr f = if f a then 1 else 0 :: Int
- in sgr (mkAttr standoutAttr)
- (mkAttr underlineAttr)
- (mkAttr reverseAttr)
- (mkAttr blinkAttr)
- (mkAttr dimAttr)
- (mkAttr boldAttr)
- (mkAttr invisibleAttr)
- (mkAttr protectedAttr)
- (0::Int)
- attrCap :: TermStr s => (Attributes -> Bool) -> Capability s
- -> Capability (Attributes -> s)
- attrCap f cap = do {to <- cap; return $ \a -> if f a then to else mempty}
- `mplus` return (const mempty)
- manualSets = do
- cs <- sequence [attrCap standoutAttr enterStandoutMode
- , attrCap underlineAttr enterUnderlineMode
- , attrCap reverseAttr reverseOn
- , attrCap blinkAttr blinkOn
- , attrCap boldAttr boldOn
- , attrCap dimAttr dimOn
- , attrCap invisibleAttr invisibleOn
- , attrCap protectedAttr protectedOn
- ]
- return $ \a -> mconcat $ map ($ a) cs
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4201.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T4201.hs
deleted file mode 100644
index dfebd0534e..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4201.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-module Eta where
-
-data T = MkT
-newtype Foo = Foo T
-
-lift :: Foo -> T
-lift (Foo x) = bof x
- -- The point is that we expect
- -- lift = bof |> co
- -- not
- -- lift = \fx -> bof (fx |> co)
-
-bof :: T -> T
-{-# NOINLINE bof #-}
-bof MkT = MkT
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4201.stdout b/testsuite/tests/ghc-regress/simplCore/should_compile/T4201.stdout
deleted file mode 100644
index 0009de14cc..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4201.stdout
+++ /dev/null
@@ -1 +0,0 @@
- ((->) (Sym (Eta.NTCo:Foo)) (Refl Eta.T))) -}
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4203.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T4203.hs
deleted file mode 100644
index 9423de7a36..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4203.hs
+++ /dev/null
@@ -1,37 +0,0 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-
--- Triggered a lint error due to the specialiser
-
-module T4203 where
-
-
-newtype NonNegative a = NonNegative a
- deriving (Eq, Num, Show)
-
-instance Num a => Arbitrary (NonNegative a) where
- arbitrary = return (rubble (rubble 0))
- coarbitrary = error "urk"
-
-rubble :: Num a => a -> a
-rubble 0 = 1
-rubble n = n * rubble (n-1)
-
-newtype EmptyStackSet = EmptyStackSet (NonNegative Int)
-
-instance Arbitrary EmptyStackSet where
- arbitrary = do
- x <- arbitrary :: Gen (NonNegative Int)
- return $ EmptyStackSet x
- coarbitrary = error "urk"
-
-newtype Gen a = Gen a
-
-instance Monad Gen where
- return a = Gen a
- Gen m >>= k = Gen (let Gen m' = k m in m')
-
-class Arbitrary a where
- arbitrary :: Gen a
- coarbitrary :: a
-
-data StackSet = StackSet
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4306.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T4306.hs
deleted file mode 100644
index ba32981f61..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4306.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- Trac #4306
--- Check that the worker for 'upd' has only one argument
-
-module T4306 where
-
-data D = D {-# UNPACK #-} !Double {-# UNPACK #-} !Double
-data UPD = UPD {-# UNPACK #-} !Double D
-
-upd (UPD _ (D x _)) = sqrt $! (x*x + x*x + sin x + x*x + x*x + cos x + x*x + x*x + tan x +
- x*x + x*x + sin x + x*x + x*x + cos x + x*x + x*x + tan x +
- x*x + x*x + sin x + x*x + x*x + cos x + x*x + x*x + tan x)
- -- make the rhs large enough to be worker/wrapperred
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4306.stdout b/testsuite/tests/ghc-regress/simplCore/should_compile/T4306.stdout
deleted file mode 100644
index b2a93ff1cc..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4306.stdout
+++ /dev/null
@@ -1 +0,0 @@
- $wupd :: GHC.Prim.Double# -> GHC.Prim.Double#
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4345.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T4345.hs
deleted file mode 100644
index 0a0dada9cb..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4345.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- This one elicited a bug in the simplifier
--- that produces a Lint out-of-scope error
-
-module T4345 where
-
-isNull :: IO Bool
-isNull = error "urk"
-
-wrapMatchAll :: IO (Maybe ())
-wrapMatchAll = do
- nsub <- undefined
- let loop True = do atEnd <- isNull
- return Nothing
- loop False = loop False
- result <- undefined
- loop undefined
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4398.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T4398.hs
deleted file mode 100644
index 3cb0647c1c..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4398.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE FlexibleContexts #-}
-
-module T4398 where
-
-{-# RULES "suspicious" forall (x :: a) y. f (x :: Ord a => a) y = g x y #-}
-
-{-# NOINLINE f #-}
-f :: a -> a -> Bool
-f x y = True
-
-g :: Ord a => a -> a -> Bool
-g = (<)
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4398.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/T4398.stderr
deleted file mode 100644
index ab17c8a4e9..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4398.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-T4398.hs:5:11:
- Warning: Forall'd constraint `Ord a' is not bound in RULE lhs
- f @ a x y
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4903.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T4903.hs
deleted file mode 100644
index 70250d1d14..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4903.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module T4903 where
-
-import T4903a
-
-{-# SPECIALIZE eq :: TreeF Tree -> Tree -> Bool #-}
--- The pragma is only problematic if it is in a separate module
-
-f :: Bool
--- If we don't use eq, there is no problem
-f = eq Tree tree
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4903a.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T4903a.hs
deleted file mode 100644
index e78859c55f..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4903a.hs
+++ /dev/null
@@ -1,56 +0,0 @@
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE RankNTypes #-}
-{-# LANGUAGE TypeOperators #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE GADTs #-}
-{-# LANGUAGE TypeFamilies #-}
-
-module T4903a where
-
-class El phi ix where
- proof :: phi ix
-
-class Fam phi where
- from :: phi ix -> ix -> PF phi I0 ix
-
-type family PF phi :: (* -> *) -> * -> *
-
-data I0 a = I0 a
-
-data I xi (r :: * -> *) ix = I (r xi)
-data (f :*: g) (r :: * -> *) ix = f r ix :*: g r ix
-
-class HEq phi f where
- heq :: (forall ix. phi ix -> r ix -> Bool)
- -> phi ix -> f r ix -> Bool
-
-instance El phi xi => HEq phi (I xi) where
- -- Replacing proof by undefined solves the problem
- heq eq _ (I x) = eq proof x
-
-instance (HEq phi f, HEq phi g) => HEq phi (f :*: g) where
- -- The problem only arises when there are two calls to heq here
- heq eq p (x :*: y) = heq eq p x && heq eq p y
-
-
-{-# INLINABLE eq #-}
-eq :: (Fam phi, HEq phi (PF phi)) => phi ix -> ix -> Bool
-eq p x = heq (\p (I0 x) -> eq p x) p (from p x)
-
-
-data Tree = Bin Tree Tree
-
-tree :: Tree
--- The problem only occurs on an inifite (or very large) structure
-tree = Bin tree tree
-
-data TreeF :: * -> * where Tree :: TreeF Tree
-
-type instance PF TreeF = I Tree :*: I Tree
--- If the representation is only |I Tree| then there is no problem
-
-instance Fam TreeF where
- from Tree (Bin l r) = I (I0 l) :*: I (I0 r)
-
-instance El TreeF Tree where proof = Tree
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4908.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T4908.hs
deleted file mode 100644
index 78634e72bb..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4908.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
-module T4908 where
-import GHC.Base
-
-f :: Int -> (Int,Int) -> Bool
-f 0 x = True
-f n x = case x of (a,b) -> case b of
- I# 0# -> True
- I# _ -> f (n-1) x
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4908.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/T4908.stderr
deleted file mode 100644
index 9e24e6fca8..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4908.stderr
+++ /dev/null
@@ -1,73 +0,0 @@
-
-==================== Tidy Core ====================
-Rec {
-T4908.f_$s$wf [Occ=LoopBreaker]
- :: GHC.Types.Int
- -> GHC.Prim.Int# -> GHC.Prim.Int# -> GHC.Types.Bool
-[GblId, Arity=3, Caf=NoCafRefs, Str=DmdType LLL]
-T4908.f_$s$wf =
- \ (sc :: GHC.Types.Int)
- (sc1 :: GHC.Prim.Int#)
- (sc2 :: GHC.Prim.Int#) ->
- case sc2 of ds {
- __DEFAULT ->
- case sc1 of ds1 {
- __DEFAULT -> T4908.f_$s$wf sc ds1 (GHC.Prim.-# ds 1);
- 0 -> GHC.Types.True
- };
- 0 -> GHC.Types.True
- }
-end Rec }
-
-T4908.$wf
- :: GHC.Prim.Int#
- -> (GHC.Types.Int, GHC.Types.Int) -> GHC.Types.Bool
-[GblId,
- Arity=2,
- Caf=NoCafRefs,
- Str=DmdType LL,
- Unf=Unf{Src=<vanilla>, TopLvl=True, Arity=2, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=IF_ARGS [30 20] 101 20}]
-T4908.$wf =
- \ (ww :: GHC.Prim.Int#) (w :: (GHC.Types.Int, GHC.Types.Int)) ->
- case ww of ds {
- __DEFAULT ->
- case w of _ { (a, b) ->
- case b of _ { GHC.Types.I# ds1 ->
- case ds1 of ds2 {
- __DEFAULT -> T4908.f_$s$wf a ds2 (GHC.Prim.-# ds 1);
- 0 -> GHC.Types.True
- }
- }
- };
- 0 -> GHC.Types.True
- }
-
-T4908.f [InlPrag=INLINE[0]]
- :: GHC.Types.Int
- -> (GHC.Types.Int, GHC.Types.Int) -> GHC.Types.Bool
-[GblId,
- Arity=2,
- Caf=NoCafRefs,
- Str=DmdType U(L)L,
- Unf=Unf{Src=Worker=T4908.$wf, TopLvl=True, Arity=2, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=ALWAYS_IF(unsat_ok=True,boring_ok=False)
- Tmpl= \ (w [Occ=Once!] :: GHC.Types.Int)
- (w1 [Occ=Once] :: (GHC.Types.Int, GHC.Types.Int)) ->
- case w of _ { GHC.Types.I# ww [Occ=Once] -> T4908.$wf ww w1 }}]
-T4908.f =
- \ (w :: GHC.Types.Int) (w1 :: (GHC.Types.Int, GHC.Types.Int)) ->
- case w of _ { GHC.Types.I# ww -> T4908.$wf ww w1 }
-
-
------- Local rules for imported ids --------
-"SC:$wf0" [ALWAYS]
- forall (sc :: GHC.Types.Int)
- (sc1 :: GHC.Prim.Int#)
- (sc2 :: GHC.Prim.Int#).
- T4908.$wf sc2 (sc, GHC.Types.I# sc1)
- = T4908.f_$s$wf sc sc1 sc2
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4908.stderr-ghc-7.0 b/testsuite/tests/ghc-regress/simplCore/should_compile/T4908.stderr-ghc-7.0
deleted file mode 100644
index 44e691547e..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4908.stderr-ghc-7.0
+++ /dev/null
@@ -1,77 +0,0 @@
-
-==================== Tidy Core ====================
-Rec {
-T4908.f_$s$wf [Occ=LoopBreaker]
- :: GHC.Types.Int
- -> GHC.Prim.Int#
- -> GHC.Prim.Int#
- -> GHC.Bool.Bool
-[GblId, Arity=3, Caf=NoCafRefs, Str=DmdType LLL]
-T4908.f_$s$wf =
- \ (sc :: GHC.Types.Int)
- (sc1 :: GHC.Prim.Int#)
- (sc2 :: GHC.Prim.Int#) ->
- case sc2 of ds {
- __DEFAULT ->
- case sc1 of ds1 {
- __DEFAULT -> T4908.f_$s$wf sc ds1 (GHC.Prim.-# ds 1);
- 0 -> GHC.Bool.True
- };
- 0 -> GHC.Bool.True
- }
-end Rec }
-
-T4908.$wf
- :: GHC.Prim.Int#
- -> (GHC.Types.Int, GHC.Types.Int)
- -> GHC.Bool.Bool
-[GblId,
- Arity=2,
- Caf=NoCafRefs,
- Str=DmdType LL,
- Unf=Unf{Src=<vanilla>, TopLvl=True, Arity=2, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=IF_ARGS [3 2] 11 2}]
-T4908.$wf =
- \ (ww :: GHC.Prim.Int#) (w :: (GHC.Types.Int, GHC.Types.Int)) ->
- case ww of ds {
- __DEFAULT ->
- case w of _ { (a, b) ->
- case b of _ { GHC.Types.I# ds1 ->
- case ds1 of ds2 {
- __DEFAULT -> T4908.f_$s$wf a ds2 (GHC.Prim.-# ds 1);
- 0 -> GHC.Bool.True
- }
- }
- };
- 0 -> GHC.Bool.True
- }
-
-T4908.f [InlPrag=INLINE[0]]
- :: GHC.Types.Int
- -> (GHC.Types.Int, GHC.Types.Int)
- -> GHC.Bool.Bool
-[GblId,
- Arity=2,
- Caf=NoCafRefs,
- Str=DmdType U(L)L,
- Unf=Unf{Src=Worker=T4908.$wf, TopLvl=True, Arity=2, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=ALWAYS_IF(unsat_ok=True,boring_ok=False)
- Tmpl= \ (w [Occ=Once!] :: GHC.Types.Int)
- (w1 [Occ=Once] :: (GHC.Types.Int, GHC.Types.Int)) ->
- case w of _ { GHC.Types.I# ww [Occ=Once] -> T4908.$wf ww w1 }}]
-T4908.f =
- \ (w :: GHC.Types.Int) (w1 :: (GHC.Types.Int, GHC.Types.Int)) ->
- case w of _ { GHC.Types.I# ww -> T4908.$wf ww w1 }
-
-
------- Local rules for imported ids --------
-"SC:$wf0" [ALWAYS]
- forall {sc :: GHC.Types.Int
- sc1 :: GHC.Prim.Int#
- sc2 :: GHC.Prim.Int#}
- T4908.$wf sc2 (sc, GHC.Types.I# sc1)
- = T4908.f_$s$wf sc sc1 sc2
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4918.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T4918.hs
deleted file mode 100644
index ea5efade29..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4918.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module T4918 where
-
-import T4918a
-
-f1 = map (\() -> 'p') [()]
-f2 = map (\() -> 'q') myEnum
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4918.stdout b/testsuite/tests/ghc-regress/simplCore/should_compile/T4918.stdout
deleted file mode 100644
index c79b116f03..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4918.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
- {- HasNoCafRefs, Strictness: m, Unfolding: (GHC.Types.C# 'p') -}
- {- HasNoCafRefs, Strictness: m, Unfolding: (GHC.Types.C# 'q') -}
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4918a.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T4918a.hs
deleted file mode 100644
index 5db7cb00b8..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4918a.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module T4918a where
-
-class MyEnum a where
- myEnum :: [a]
-
-instance MyEnum () where
- myEnum = [()]
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4930.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T4930.hs
deleted file mode 100644
index ae5d4fd5f7..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4930.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module T4930 where
-
-foo :: Int -> Int
-foo n = (if n < 5 then error "Too small" else n+2)
- `seq` n+5
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4930.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/T4930.stderr
deleted file mode 100644
index bb1637cb82..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4930.stderr
+++ /dev/null
@@ -1,35 +0,0 @@
-
-==================== Tidy Core ====================
-lvl :: [GHC.Types.Char]
-[GblId]
-lvl = GHC.CString.unpackCString# "Too small"
-
-T4930.foo1 :: GHC.Types.Int
-[GblId, Str=DmdType b]
-T4930.foo1 = GHC.Err.error @ GHC.Types.Int lvl
-
-T4930.foo :: GHC.Types.Int -> GHC.Types.Int
-[GblId,
- Arity=1,
- Str=DmdType U(L)m,
- Unf=Unf{Src=InlineStable, TopLvl=True, Arity=1, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=ALWAYS_IF(unsat_ok=True,boring_ok=False)
- Tmpl= \ (n [Occ=Once!] :: GHC.Types.Int) ->
- case n of _ { GHC.Types.I# x ->
- case GHC.Prim.<# x 5 of _ {
- GHC.Types.False -> GHC.Types.I# (GHC.Prim.+# x 5);
- GHC.Types.True -> T4930.foo1
- }
- }}]
-T4930.foo =
- \ (n :: GHC.Types.Int) ->
- case n of _ { GHC.Types.I# x ->
- case GHC.Prim.<# x 5 of _ {
- GHC.Types.False -> GHC.Types.I# (GHC.Prim.+# x 5);
- GHC.Types.True -> T4930.foo1
- }
- }
-
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4945.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T4945.hs
deleted file mode 100644
index fba6e61ad6..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4945.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-module Main where
-
-import Data.Int
-import Data.Array.Base
-import Data.Array.ST
-import Control.Monad.ST
-import System.Environment
-
-main :: IO ()
-main = do
- [_nr, _len] <- getArgs
- let nRounds = read _nr :: Int
- len = read _len :: Int
- stToIO $ do
- arr <- newArray (1, len) 0
-
- let spin :: STUArray s Int Int -> Int -> Int -> Int -> ST s ()
- spin _ r i n | i > n = return ()
- spin arr r i n = do x <- unsafeRead arr i
- unsafeWrite arr i $ x + r
- spin arr r (i + 1) n
-
- loop :: STUArray s Int Int -> Int -> ST s ()
- loop _ r | r > nRounds = return ()
- loop arr r = do
- k <- getNumElements arr
- spin arr r 0 (k - 1)
- loop arr (r + 1)
-
- loop arr 1
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T4957.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T4957.hs
deleted file mode 100644
index 63086cd78d..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T4957.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-module T4957 where
-
-import GHC.Base
-
-f :: Bool -> Int -> Int
-f b 0 = 0
-f b x = let y = case b of
- True -> case f b (x-1) of
- I# v -> I# (v -# 1#)
- False -> case f b (x-1) of
- I# v -> I# (v +# 1#)
- in
- case b of
- True -> case y of
- I# w -> I# (w -# 1#)
-
- False -> case y of
- I# w -> I# (w +# 1#)
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T5168.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T5168.hs
deleted file mode 100644
index 22b4349fa2..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T5168.hs
+++ /dev/null
@@ -1,32 +0,0 @@
--- In this test we do -ddump-simpl, and grep for 'patError.
--- We expect *not* to see patError in the output
--- because the branch is inaccessible.
--- In GHC 7.0 and earlier, we did get a patError in the output program.
-
-{-# LANGUAGE TypeFamilies, GADTs #-}
-module NoMatch where
-
-data Tag
-data TagExtra
-
---------
-
-data Foo a where
- Foo :: String -> Foo a
- FooExtra :: Int -> Foo TagExtra
-
--- The cmm code for fooName does not match against 'FooExtra'
-fooName :: Foo Tag -> String
-fooName (Foo s) = s
-
---------
-
-data Bar a where
- Bar :: String -> Bar a
- BarExtra :: a ~ TagExtra => Int -> Bar a
-
--- The cmm code for barName will try to pattern-match against 'BarExtra'
-barName :: Bar Tag -> String
-barName (Bar s) = s
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/T5329.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/T5329.hs
deleted file mode 100644
index cf659110ca..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/T5329.hs
+++ /dev/null
@@ -1,129 +0,0 @@
-{-# LANGUAGE UnicodeSyntax #-}
-{-# LANGUAGE EmptyDataDecls #-}
-{-# LANGUAGE TypeOperators #-}
-{-# LANGUAGE ScopedTypeVariables #-}
-{-# LANGUAGE GADTs #-}
-{-# LANGUAGE TypeFamilies #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE FlexibleInstances #-}
-
-module T5329 where
-
-data PZero
-data PSucc p
-
-data Peano n where
- PZero ∷ Peano PZero
- PSucc ∷ IsPeano p ⇒ Peano p → Peano (PSucc p)
-
-class IsPeano n where
- peano ∷ Peano n
-
-instance IsPeano PZero where
- peano = PZero
-
-instance IsPeano p ⇒ IsPeano (PSucc p) where
- peano = PSucc peano
-
-class (n ~ PSucc (PPred n)) ⇒ PHasPred n where
- type PPred n
-
-instance PHasPred (PSucc p) where
- type PPred (PSucc p) = p
-
-pPred ∷ Peano (PSucc p) → Peano p
-pPred (PSucc p) = p
-
-infixl 6 :+:
-
-class (IsPeano n, IsPeano m, IsPeano (n :+: m), (n :+: m) ~ (m :+: n))
- ⇒ PAdd n m where
- type n :+: m
-
-instance PAdd PZero PZero where
- type PZero :+: PZero = PZero
-
-instance IsPeano p ⇒ PAdd PZero (PSucc p) where
- type PZero :+: (PSucc p) = PSucc p
-
-instance IsPeano p ⇒ PAdd (PSucc p) PZero where
- type (PSucc p) :+: PZero = PSucc p
-
-instance (IsPeano n, IsPeano m, PAdd n m) ⇒ PAdd (PSucc n) (PSucc m) where
- type (PSucc n) :+: (PSucc m) = PSucc (PSucc (n :+: m))
-
-data PAddResult n m r where
- PAddResult ∷ (PAdd n m, PAdd m n, (n :+: m) ~ r)
- ⇒ PAddResult n m r
-
-pAddLeftZero ∷ ∀ n . IsPeano n ⇒ PAddResult PZero n n
-pAddLeftZero = case peano ∷ Peano n of
- PZero → PAddResult
- PSucc _ → PAddResult
-
-pAddRightZero ∷ ∀ n . IsPeano n ⇒ PAddResult n PZero n
-pAddRightZero = case peano ∷ Peano n of
- PZero → PAddResult
- PSucc _ → PAddResult
-
-data PAddSucc n m where
- PAddSucc ∷ (PAdd n m, PAdd m n,
- PAdd (PSucc n) m, PAdd m (PSucc n),
- PAdd n (PSucc m), PAdd (PSucc m) n,
- (PSucc n :+: m) ~ PSucc (n :+: m),
- (n :+: PSucc m) ~ PSucc (n :+: m))
- ⇒ PAddSucc n m
-
-pAddSucc ∷ ∀ n m . (IsPeano n, IsPeano m) ⇒ PAddSucc n m
-pAddSucc = case (peano ∷ Peano n, peano ∷ Peano m) of
- (PZero, PZero) → PAddSucc
- (PZero, PSucc _) → case pAddLeftZero ∷ PAddResult n (PPred m) (PPred m) of
- PAddResult → PAddSucc
- (PSucc _, PZero) → case pAddRightZero ∷ PAddResult (PPred n) m (PPred n) of
- PAddResult → PAddSucc
- (PSucc _, PSucc _) → case pAddSucc ∷ PAddSucc (PPred n) (PPred m) of
- PAddSucc → PAddSucc
-
-data PAdd2 n m where
- PAdd2 ∷ (PAdd n m, PAdd m n) ⇒ PAdd2 n m
-
-pAdd2 ∷ ∀ n m . (IsPeano n, IsPeano m) ⇒ PAdd2 n m
-pAdd2 = case (peano ∷ Peano n, peano ∷ Peano m) of
- (PZero, PZero) → PAdd2
- (PZero, PSucc _) → PAdd2
- (PSucc _, PZero) → PAdd2
- (PSucc _, PSucc _) → case pAdd2 ∷ PAdd2 (PPred n) (PPred m) of
- PAdd2 → PAdd2
-
-data PAdd3 n m k where
- PAdd3 ∷ (PAdd n m, PAdd m k, PAdd m n, PAdd k m, PAdd n k, PAdd k n,
- PAdd (n :+: m) k, PAdd k (m :+: n),
- PAdd n (m :+: k), PAdd (m :+: k) n,
- PAdd (n :+: k) m, PAdd m (n :+: k),
- ((n :+: m) :+: k) ~ (n :+: (m :+: k)),
- (m :+: (n :+: k)) ~ ((m :+: n) :+: k))
- ⇒ PAdd3 n m k
-
-pAdd3 ∷ ∀ n m k . (IsPeano n, IsPeano m, IsPeano k) ⇒ PAdd3 n m k
-pAdd3 = case (peano ∷ Peano n, peano ∷ Peano m, peano ∷ Peano k) of
- (PZero, PZero, PZero) → PAdd3
- (PZero, PZero, PSucc _) → PAdd3
- (PZero, PSucc _, PZero) → PAdd3
- (PSucc _, PZero, PZero) → PAdd3
- (PZero, PSucc _, PSucc _) →
- case pAdd2 ∷ PAdd2 (PPred m) (PPred k) of
- PAdd2 → PAdd3
- (PSucc _, PZero, PSucc _) →
- case pAdd2 ∷ PAdd2 (PPred n) (PPred k) of
- PAdd2 → PAdd3
- (PSucc _, PSucc _, PZero) →
- case pAdd2 ∷ PAdd2 (PPred n) (PPred m) of
- PAdd2 → PAdd3
- (PSucc _, PSucc _, PSucc _) →
- case pAdd3 ∷ PAdd3 (PPred n) (PPred m) (PPred k) of
- PAdd3 → case pAddSucc ∷ PAddSucc (PPred n :+: PPred m) (PPred k) of
- PAddSucc → case pAddSucc ∷ PAddSucc (PPred n :+: PPred k) (PPred m) of
- PAddSucc → case pAddSucc ∷ PAddSucc (PPred m :+: PPred k) (PPred n) of
- PAddSucc → PAdd3
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/all.T b/testsuite/tests/ghc-regress/simplCore/should_compile/all.T
deleted file mode 100644
index 2705d8f3a3..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/all.T
+++ /dev/null
@@ -1,125 +0,0 @@
-test('simpl001', normal, compile, [''])
-test('simpl002', normal, compile, [''])
-test('simpl003', normal, compile, [''])
-test('simpl004', only_compiler_types(['ghc']), compile, [''])
-test('simpl005', normal, compile, [''])
-
-# Missing:
-# test('simpl006', normal, compile, [''])
-
-test('simpl007', normal, compile, [''])
-# Missing: simpl008
-test('simpl009', normal, compile, [''])
-test('simpl010', normal, compile, [''])
-test('simpl011', normal, compile, [''])
-test('simpl012', normal, compile, [''])
-test('simpl013', normal, compile, [''])
-test('simpl014', normal, compile, [''])
-test('simpl015', only_ways(['optasm']), compile, [''])
-test('simpl016', normal, compile, [''])
-test('simpl017', normal, compile_fail, [''])
-test('simpl018', normal, compile, [''])
-test('simpl019', normal, compile, [''])
-test('simpl020',
- extra_clean(['Simpl020_A.hi', 'Simpl020_A.o']),
- multimod_compile,
- ['simpl020', '-v0 -XFlexibleInstances -XUndecidableInstances'])
-
-test('simpl-T1370', normal, compile, [''])
-test('T2520', normal, compile, [''])
-
-
-test('spec001', skip_if_fast, compile, [''])
-test('spec002', normal, compile, [''])
-test('spec003', normal, compile, [''])
-
-test('rule1', normal, compile, [''])
-test('rule2', only_ways(['optasm']), compile, ['-dsuppress-uniques'])
-
-test('dfun-loop', normal, compile, [''])
-test('strict-float', normal, compile, [''])
-test('T3118', normal, compile, [''])
-test('T4203', normal, compile, [''])
-
-# With -prof -fvia-C, this test makes gcc go out to lunch, and the
-# testsuite driver times out.
-test('T3016', skip_if_fast, compile, [''])
-
-test('T1647', normal, compile, ['-fdicts-strict -dcore-lint'])
-
-test('T3234',
- only_ways(['optasm']),
- compile,
- ['-ddump-simpl-stats -dsuppress-uniques'])
-
-test('T3717', only_ways(['optasm']),
- compile,
- ['-ddump-simpl -dsuppress-uniques'])
-
-test('spec-inline', only_ways(['optasm']),
- compile,
- ['-O2 -ddump-simpl -dsuppress-uniques'])
-test('T4908', only_ways(['optasm']),
- compile,
- ['-O2 -ddump-simpl -dsuppress-uniques'])
-
-test('T4930', [if_compiler_lt('ghc', '7.1', expect_fail),
- only_ways(['optasm'])],
- compile,
- ['-O -ddump-simpl -dsuppress-uniques'])
-
-test('T3055',
- extra_clean(['T3055.hi', 'T3055.o', 'T3055.simpl']),
- run_command,
- ['$MAKE -s --no-print-directory T3055'])
-
-test('T4306',
- normal,
- run_command,
- ['$MAKE -s --no-print-directory T4306'])
-
-test('T4201',
- normal,
- run_command,
- ['$MAKE -s --no-print-directory T4201'])
-
-test('T3772',
-# only_ways(['optasm']),
- extra_clean(['T3772_A.hi', 'T3772_A.o']),
- run_command, ['$MAKE -s --no-print-directory T3772'])
-
-test('EvalTest',
- normal,
- run_command,
- ['$MAKE -s --no-print-directory EvalTest'])
-
-test('T3831', normal, compile, [''])
-test('T4345', normal, compile, [''])
-test('T4398', normal, compile, [''])
-
-test('T4903',
- extra_clean(['T4903a.hi']),
- run_command,
- ['$MAKE -s --no-print-directory T4903'])
-
-test('T4918',
- normal,
- run_command,
- ['$MAKE -s --no-print-directory T4918'])
-
-test('T4945',
- if_compiler_lt('ghc', '7.1', expect_fail),
- run_command,
- ['$MAKE -s --no-print-directory T4945'])
-
-test('T4957',
- normal,
- run_command,
- ['$MAKE -s --no-print-directory T4957'])
-
-test('T5168',
- normal,
- run_command,
- ['$MAKE -s --no-print-directory T5168'])
-
-test('T5329', normal, compile, [''])
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/dfun-loop.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/dfun-loop.hs
deleted file mode 100644
index 4ad23f3401..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/dfun-loop.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-{-# LANGUAGE TypeFamilies, FlexibleContexts #-}
-
--- This one sent an earlier version of GHC into a
--- loop in the simplfier, because we allowed a RULE
--- to fire on a loop-breaker
---
--- Discovered by Roman L, Nov 09
-
-module Roman where
-
-data T a = T (T a)
-
-type family F a
-type instance F (T a) = Wrap (T a)
-
-class B (F a) => C a where
- toF :: a -> F a
-
-go :: C a => a -> Int
-{-# INLINE go #-}
-go x = gow (toF x)
-
-instance C a => C (T a) where
- {-# INLINE toF #-}
- toF x = Wrap x
-
-newtype Wrap a = Wrap a
-
-class B a where
- dummy :: a
-
- gow :: a -> Int
-
-instance C a => B (Wrap a) where
- {-# INLINE gow #-}
- gow (Wrap x) = go x
- dummy = error "urk"
-
-foo :: C a => T a -> Int
-foo t = let t' = T t in go t'
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/rule1.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/rule1.hs
deleted file mode 100644
index 923f4805fb..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/rule1.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-
--- This one triggers the bug reported in Trac #1092
--- The problem is that the rule
--- forall w. f (\v->w) = w
--- erroneously matches the call
--- f id
---
--- Lint catches the error
-
-module Foo where
-
-f :: (Int -> Int) -> Int
-{-# NOINLINE f #-}
-f g = g 4
-{-# RULES
- "f" forall w. f (\v->w) = w
- #-}
-
-h = f id
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/rule2.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/rule2.hs
deleted file mode 100644
index 2b091de5e9..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/rule2.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-{-# OPTIONS_GHC -ddump-simpl-stats #-}
-
--- The rule foo/bar should fire
-
-module Roman where
-
-foo :: (forall m. m a -> m b) -> m a -> m b
-{-# NOINLINE foo #-}
-foo f = f
-
-bar :: (forall m. m a -> m a) -> m a -> m a
-bar f = f
-
-{-# RULES "foo/bar" foo = bar #-}
-
-blip = foo id
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/rule2.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/rule2.stderr
deleted file mode 100644
index 2bdb17fa4a..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/rule2.stderr
+++ /dev/null
@@ -1,33 +0,0 @@
-
-==================== FloatOut stats: ====================
-1 Lets floated to top level; 0 Lets floated elsewhere; from 4 Lambda groups
-
-
-
-==================== FloatOut stats: ====================
-0 Lets floated to top level; 0 Lets floated elsewhere; from 3 Lambda groups
-
-
-
-==================== Grand total simplifier statistics ====================
-Total ticks: 11
-
-2 PreInlineUnconditionally
- 1 f
- 1 lvl
-1 UnfoldingDone
- 1 Roman.bar
-1 RuleFired
- 1 foo/bar
-7 BetaReduction
- 1 f
- 1 m
- 1 a
- 1 m
- 1 a
- 1 m
- 1 b
-8 SimplifierDone
- 8
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl-T1370.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl-T1370.hs
deleted file mode 100644
index 7524f13bac..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl-T1370.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
--- See Trac #1370
--- THis made GHC 6.6 diverge!
-
-module ShouldCompile where
-
-newtype T = V T deriving(Eq,Ord)
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl001.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl001.hs
deleted file mode 100644
index 4b2bfcc240..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl001.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- !!! Desugaring sections with function-type arguments
--- Although this is really a desugaring test, the problem is
--- only tickled by the simplifier
-
--- type Foo a b = a -> (b -> a) -> b
-module ShouldCompile where
-
-(++++) :: (a -> (b -> a) -> b) -> (a -> (b -> a) -> b) -> a -> (b -> a) -> b
-x ++++ y = y
-
-g a xs = map (++++ a) xs
-
-h b xs = map (b ++++) xs
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl001.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl001.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl001.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl002.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl002.hs
deleted file mode 100644
index b262f47d38..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl002.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! class/instance mumble that failed Lint at one time
---
-module ShouldCompile where
-class Foo a where
- op :: Int -> a -> Bool
-
-data Wibble a b c = MkWibble a b c
-
-instance (Foo a, Foo b, Foo c) => Foo (Wibble a b c) where
- op x y = error "xxx"
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl002.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl002.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl002.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl003.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl003.hs
deleted file mode 100644
index 8bf9d6bfd1..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl003.hs
+++ /dev/null
@@ -1,42 +0,0 @@
--- !! INLINE on recursive functions.
-{-
-Date: Thu, 8 Dec 94 11:38:24 GMT
-From: Julian Seward (DRL PhD) <sewardj@computer-science.manchester.ac.uk>
-Message-Id: <9412081138.AA16652@rdf009.cs.man.ac.uk>
-To: partain@dcs.gla.ac.uk
--}
-module ShouldCompile where
-
-type IMonad a
- = IMonadState -> IMonadReturn a
-
-data IMonadReturn a
- = IMonadOk IMonadState a
- | IMonadFail IMonadState String
-
-type IMonadState
- = Int
-
-
-returnI r = \s0 -> IMonadOk s0 r
-
-failI msg = \s0 -> IMonadFail s0 msg
-
-thenI m k
- = \s0 -> case m s0 of
- IMonadFail s1 msg -> IMonadFail s1 msg
- IMonadOk s1 r1 -> k r1 s1
-
-tickI n = \s0 -> IMonadOk (s0+n) ()
-
-mapI f [] = returnI []
-mapI f (x:xs) = f x `thenI` ( \ fx ->
- mapI f xs `thenI` ( \ fxs ->
- returnI (fx:fxs)
- ))
-
-{-# INLINE returnI #-}
-{-# INLINE failI #-}
-{-# INLINE thenI #-}
-{-# INLINE tickI #-}
--- {-# INLINE mapI #-}
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl003.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl003.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl003.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl004.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl004.hs
deleted file mode 100644
index 08282c69ea..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl004.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE UnboxedTuples, MagicHash, BangPatterns #-}
-
-module ShouldCompile where
-
-import Data.Ix
-import GHC.Exts
-
-
-f ixs@(_, ix_end) frozen# =
- let
- !n# =
- case (
- if null (range ixs)
- then 0
- else 1
- ) of { I# x -> x }
- in
- (# frozen#, False #)
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl004.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl004.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl004.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl005.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl005.hs
deleted file mode 100644
index abf98a30d2..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl005.hs
+++ /dev/null
@@ -1,25 +0,0 @@
--- !!! CPR on newtype with polymorphic argument
-
-{-# OPTIONS -O #-}
-
-module ShouldCompile where
-
-data StateM m s a = STM (s -> m (a,s))
-
-instance Functor m => Functor (StateM m s) where
- fmap f (STM xs) = STM (\s -> fmap (\ (x,s') -> (f x, s'))
- (xs s)
- )
-{- With GHC 4.04 (first release) this program gave:
-
- panic! (the `impossible' happened):
- mk_cpr_let: not a product
- forall a{-ruq-} b{-rur-}.
- (a{-ruq-} -> b{-rur-})
- -> MonadLibrary.StateM{-r2o,x-} m{-a30Y-} s{-a30Z-} a{-ruq-}
- -> MonadLibrary.StateM{-r2o,x-} m{-a30Y-} s{-a30Z-} b{-rur-}
-
- The reason: 'Functor' is a newtype, whose element is a for-all type.
-
- newtype Functor f = Functor (forall a,b. (a->b) -> f a -> f b)
--}
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl005.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl005.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl005.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl007.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl007.hs
deleted file mode 100644
index 2b42cc29ee..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl007.hs
+++ /dev/null
@@ -1,235 +0,0 @@
-{-# LANGUAGE OverlappingInstances, UndecidableInstances,
- ExistentialQuantification, FlexibleInstances #-}
-
--- module Formula where
-module Main where
-
-import Prelude hiding (logBase)
-
-import Data.Maybe
-
--------------------------------------------------------------------------------
-
--- Formula
--- The data type for formulas (algegraic expressions).
---
--- It should be an extensible type, so that users of
--- the library can add new kinds of formulas.
--- For example, in this prototype I explore:
--- integer constants (FInt)
--- unknown variables (FVar)
--- sums (FSum)
--- products (FPro)
--- powers (FPow)
--- logarithms (FLog)
--- The user of the library may want to extend it with
--- trigonometric formulas or derivative formulas, for
--- example.
---
--- The idea is to let each kind of formula be a new data
--- type. Similar operations with them are implemented
--- using overloading. So there is a class (FORMULA) to collect
--- them and each kind of formula should be an instance of it.
-
-class (Eq f, Show f) => FORMULA f where
- ty :: f -> FType
- intVal :: f -> Integer
- varName :: f -> String
- argList :: f -> [Formula]
- same :: (FORMULA f1) => f -> f1 -> Bool
- intVal = error ""
- varName = error ""
- argList = error ""
- same _ _ = False
-
--- By now extensibility is accomplished by existentialy
--- quantified type variables.
-
-data Formula = forall f . ( FORMULA f
- , AddT f
- ) =>
- Formula f
-
-instance Show Formula where
- show (Formula f) = show f
-
-instance Eq Formula where
- (Formula x) == (Formula y) = same x y
-
-instance FORMULA Formula where
- ty (Formula f) = ty f
- intVal (Formula f) = intVal f
- varName (Formula f) = varName f
- argList (Formula f) = argList f
- same (Formula f) = same f
-
--------------------------------------------------------------------------------
-
--- How to uniquely identify the type of formula?
--- Each type of formula is associated to a key (FType)
--- that identifies it.
---
--- Here I use an enumated data type. When extending
--- the library, the user will have to modify this
--- data type adding a new constant constructor.
-
-data FType = INT
- | VAR
- | SUM
- | PRO
- | POW
- | LOG
- deriving (Eq,Ord,Enum,Show)
-
--------------------------------------------------------------------------------
-
--- Integer formula
-
-data FInt = FInt Integer
- deriving (Eq,Show)
-
-mkInt = Formula . FInt
-
-instance FORMULA FInt where
- ty _ = INT
- intVal (FInt x) = x
- same (FInt x) y = isInt y && x == intVal y
-
--- Variable formula
-
-data FVar = FVar String
- deriving (Eq,Show)
-
-mkVar = Formula . FVar
-
-instance FORMULA FVar where
- ty _ = VAR
- varName (FVar x) = x
- same (FVar x) y = isVar y && x == varName y
-
--- Sum formula
-
-data FSum = FSum [Formula]
- deriving (Eq,Show)
-
-mkSum = Formula . FSum
-
-instance FORMULA FSum where
- ty _ = SUM
- argList (FSum xs) = xs
- same (FSum xs) y = isSum y && xs == argList y
-
--- Product formula
-
-data FPro = FPro [Formula]
- deriving (Eq,Show)
-
-mkPro = Formula . FPro
-
-instance FORMULA FPro where
- ty _ = PRO
- argList (FPro xs) = xs
- same (FPro xs) y = isPro y && xs == argList y
-
--- Exponentiation formula
-
-data FPow = FPow Formula Formula
- deriving (Eq,Show)
-
-mkPow x y = Formula (FPow x y)
-
-instance FORMULA FPow where
- ty _ = POW
- argList (FPow b e) = [b,e]
- same (FPow b e) y = isPow y && [b,e] == argList y
-
--- Logarithm formula
-
-data FLog = FLog Formula Formula
- deriving (Eq,Show)
-
-mkLog x b = Formula (FLog x b)
-
-instance FORMULA FLog where
- ty _ = LOG
- argList (FLog x b) = [x,b]
- same (FLog x b) y = isLog y && [x,b] == argList y
-
--------------------------------------------------------------------------------
-
--- Some predicates
-
-isInt x = ty x == INT
-isVar x = ty x == VAR
-isSum x = ty x == SUM
-isPro x = ty x == PRO
-isPow x = ty x == POW
-
-isZero x = isInt x && intVal x == 0
-
--------------------------------------------------------------------------------
-
--- Adding two formulas
--- This is a really very simple algorithm for adding
--- two formulas.
-
-add :: Formula -> Formula -> Formula
-add x y
- | isJust u = fromJust u
- | isJust v = fromJust v
- | otherwise = mkSum [x,y]
- where
- u = addT x y
- v = addT y x
-
-class AddT a where
- addT :: a -> Formula -> Maybe Formula
- addT _ _ = Nothing
-
-instance (FORMULA a) => AddT a where {}
-
-instance AddT Formula where
- addT (Formula f) = addT f
-
-instance AddT FInt where
- addT (FInt 0) y = Just y
- addT (FInt x) y
- | isInt y = Just (mkInt (x + intVal y))
- | otherwise = Nothing
-
-instance AddT FSum where
- addT (FSum xs) y
- | isSum y = Just (mkSum (merge xs (argList y)))
- | otherwise = Just (mkSum (merge xs [y]))
- where
- merge = (++)
-
-instance AddT FLog where
- addT (FLog x b) y
- | isLog y && b == logBase y = Just (mkLog (mkPro [x,logExp y]) b)
- | otherwise = Nothing
- where
- merge = (++)
-
-isLog x = ty x == LOG
-
-logBase x
- | isLog x = head (tail (argList x))
-
-logExp x
- | isLog x = head (argList x)
-
--------------------------------------------------------------------------------
-
--- Test addition of formulas
-
-main = print [ add (mkInt 78) (mkInt 110)
- , add (mkInt 0) (mkVar "x")
- , add (mkVar "x") (mkInt 0)
- , add (mkVar "x") (mkVar "y")
- , add (mkSum [mkInt 13,mkVar "x"]) (mkVar "y")
- , add (mkLog (mkVar "x") (mkInt 10))
- (mkLog (mkVar "y") (mkInt 10))
- , add (mkLog (mkVar "x") (mkInt 10))
- (mkLog (mkVar "y") (mkVar "e"))
- ]
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl009.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl009.hs
deleted file mode 100644
index c66587d3e3..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl009.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-{-# OPTIONS_GHC -dcore-lint #-}
-
--- This one killed GHC 6.0, with a "panic: applyTys"
--- Only with -O, though
-
-module ShouldCompile where
-
-newtype R = R (forall a. a->a)
-
-foo = case undefined of
- R f -> f ()
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl010.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl010.hs
deleted file mode 100644
index da2af345f2..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl010.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-
-{-# LANGUAGE ExistentialQuantification #-}
-
--- This tests an interaction between GADTs and join points
--- The case-of-case transformation can pretty easily result
--- in a type mis-match, because the join point does not see
--- the refinement from the case branch
-
-module ShouldCompile( h ) where
-
-data T a = forall b. T b [a] | T2
-
-f :: a -> T a -> [a]
-f x (T _ a) = a ++ a ++ a ++ [x]
-f x T2 = [x]
-
-h :: a -> Bool -> T a -> T a -> [a]
-h x b p q = f x (case b of { True -> p; False -> q })
- \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl011.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl011.hs
deleted file mode 100644
index c660394e92..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl011.hs
+++ /dev/null
@@ -1,56 +0,0 @@
-{-# LANGUAGE CPP, Rank2Types, ScopedTypeVariables, KindSignatures,
- MultiParamTypeClasses, FunctionalDependencies #-}
-
--- This one triggered a bug in the indirection-shorting
--- machinery, which gave a core-lint error
-
-module MHashTable (STHashTable, new, update) where
-
-import Data.Int (Int32)
-import Control.Monad.ST (ST)
-import Data.STRef (STRef)
-import Data.Array.ST (STArray)
-import Data.Array.MArray (writeArray)
-
-class Monad m => MutHash arr ref m | arr -> m, ref -> m
- , arr -> ref, ref -> arr where
- newMHArray :: (Int32, Int32) -> a -> m (arr Int32 a)
- readMHArray :: arr Int32 a -> Int32 -> m a
- writeMHArray:: arr Int32 a -> Int32 -> a -> m ()
-
- newMHRef :: a -> m (ref a)
- readMHRef :: ref a -> m a
- writeMHRef :: ref a -> a -> m ()
-
-instance MutHash (STArray s) (STRef s) (ST s) where
- newMHArray = undefined
- readMHArray = undefined
- writeMHArray= writeArray
-
- newMHRef = undefined
- readMHRef = undefined
- writeMHRef = undefined
-
-type STHashTable s key val = HashTable key val (STArray s) (STRef s) (ST s)
-
-newtype HashTable key val arr ref m = HashTable (ref (HT key val arr ref m))
-
-data HT key val arr (ref :: * -> *) (m :: * -> *) = HT { dir :: (arr Int32 (arr Int32 [(key,val)])) }
-
-new :: forall arr ref m key val. (MutHash arr ref m) => m (HashTable key val arr ref m)
-new = do
- (dir::arr Int32 (arr Int32 [(key,val)])) <- newMHArray (0,0) undefined
- (segment::arr Int32 [(key,val)]) <- return undefined
- return (undefined :: HashTable key val arr ref m)
-
-{-# RULES "update/ST" update = updateST #-}
-updateST:: STHashTable s k v -> k -> v -> ST s Bool
-updateST= update'
-
-update :: (MutHash arr ref m)
- => HashTable key val arr ref m -> key -> val -> m Bool
-update = update'
-
-update' :: (MutHash arr ref m)
- => HashTable key val arr ref m -> key -> val -> m Bool
-update' _ _ _ = return False
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl012.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl012.hs
deleted file mode 100644
index 09af3e5618..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl012.hs
+++ /dev/null
@@ -1,23 +0,0 @@
--- This is a version of tc095.hs, which makes the compiler
--- loop (with -O) because of the recursive data-type bug,
--- unless you have the NOINLINE (which Happy does,
--- as it happens).
-
--- Keywords: diverge, contravariant, fixpoint
-
-module ShouldSucceed where
-
-happyParse = happyFail 7 7 (error "reading EOF!") (HappyState happyFail) [] [] []
-
-data HappyState b c = HappyState
- (Int -> -- token number
- Int -> -- token number (yes, again)
- b -> -- token semantic value
- HappyState b c -> -- current state
- [HappyState b c] -> -- state stack
- c)
-
-{-# NOINLINE happyFail #-}
-happyFail _ i tk st@(HappyState action) sts stk = action (-1) (-1) tk st sts ( stk)
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl013.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl013.hs
deleted file mode 100644
index c91cf50d9c..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl013.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- This one made GHC 6.4.1 panic because of over-zealous
--- complaining in mkCase1 when there was an empty list of
--- alternatives
-
-module Foo2 where
-
-data FooBar = Foo | Bar
-
-data P a = P0 | P1 FooBar
-
-data PS p where
- C :: P Int -> p b -> PS p
-
-f :: PS P -> Char
-f (C (P1 _) P0) = 'a'
-f (C (P1 Bar) (P1 Bar)) = 'b'
-f (C (P1 _) (P1 Bar)) = 'c'
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl014.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl014.hs
deleted file mode 100644
index c610df527a..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl014.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE Rank2Types, GADTs, FlexibleContexts #-}
-{-# OPTIONS_GHC -O2 #-}
-
--- This one make SpecConstr generate bogus code (hence -O2),
--- with a lint error, in GHC 6.4.1
--- C.f. http://hackage.haskell.org/trac/ghc/ticket/737
-
-module ShouldCompile where
-
- data IHandler st where
- IHandler :: forall st ev res.
- Serialize (TxContext ev) => String -> IO ev
- -> (res -> IO ()) -> Ev st ev res -> IHandler st
-
- data Ev st ev res = Ev
- data TxContext evt = TxContext
- data TxConfig = TxConfig
- data M a = M a
-
- class Serialize a where
- instance Serialize a => Serialize (TxContext a)
- instance Serialize Int
- instance Serialize ()
-
- data IHR st = forall res ev. Serialize (TxContext ev) => IHR (TxContext ev)
-
-
- runHandler :: M (IHR st) -> IHandler st -> IO ()
- runHandler queue ih@(IHandler tstring inp out run) = runHandler queue ih
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl015.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl015.hs
deleted file mode 100644
index 2ce70406be..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl015.hs
+++ /dev/null
@@ -1,1683 +0,0 @@
--- Test for ticket #830, simplifier taking too long on large do expression
-
-main = do
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
- return ()
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl016.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl016.hs
deleted file mode 100644
index 6ba088e6fa..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl016.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- Test for trac ticket #1287; ghc 6.6 and 6.6.1 panicked on this
-
-module ShouldCompile where
-
-{-# SPECIALIZE delta' :: Num b => Int -> Int -> b -> b -> b #-}
-delta' :: Eq a => a -> a -> b -> b -> b
-delta' x y e f = if (x==y) then f else e
-
-{-# SPECIALIZE delta :: Num b => Int -> Int -> b #-}
-delta :: (Eq a, Num b) => a -> a -> b
-delta x y = delta' x y 0 1
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl016.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl016.stderr
deleted file mode 100644
index 681dd10cab..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl016.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-simpl016.hs:5:1:
- Warning: Forall'd constraint `Num b' is not bound in RULE lhs
- delta' @ Int @ b GHC.Classes.$fEqInt
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl017.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl017.hs
deleted file mode 100644
index 8c801a44f3..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl017.hs
+++ /dev/null
@@ -1,64 +0,0 @@
-{-# OPTIONS -XImpredicativeTypes -fno-warn-deprecated-flags -XEmptyDataDecls -XGADTs -XLiberalTypeSynonyms -XFlexibleInstances -XScopedTypeVariables #-}
-
--- See Trac #1627. The point is that we should get nice
--- compact code for Foo
-
--- In GHC 7.0 this fails, and rightly so.
-
-module M(foo) where
-
-import Control.Monad.ST
-import Data.Array.ST
-
-data E' v m a where
- E :: m a -> E' RValue m a
- V :: m a -> (a -> m ()) -> E' v m a
-
-data LValue
-data RValue
-
-type E m a = E' RValue m a
-type V m a = E' LValue m a
-
-{-# INLINE runE #-}
-runE :: E' v m a -> m a
-runE (E t) = t
-runE (V t _) = t
-
-instance (Monad m) => Monad (E' RValue m) where
- {-# INLINE return #-}
- return x = E $ return x
- {-# INLINE (>>=) #-}
- x >>= f = E $ do
- x' <- runE x
- runE (f x')
-
-liftArray :: forall arr m a i . (Ix i, MArray arr a m) =>
- arr i a -> E m (forall v . [E m i] -> E' v m a)
-{-# INLINE liftArray #-}
-liftArray a = E (do
- let ix :: [E m i] -> m i
- ix [i] = runE i
- {-# INLINE f #-}
- f is = V (ix is >>= readArray a) (\ x -> ix is >>= \ i -> writeArray a i x)
- return f
- )
-
-{-# INLINE liftE2 #-}
-liftE2 :: (Monad m) => (a -> b -> c) -> E' va m a -> E' vb m b -> E m c
-liftE2 op x y = E $ do
- x' <- runE x
- y' <- runE y
- return (x' `op` y')
-
-{-# INLINE plus #-}
-plus :: (Monad m) => E m Int -> E m Int -> E m Int
-plus = liftE2 (+)
-
-foo :: forall s . STArray s Int Int -> ST s Int
-foo ma = runE $ do
- a <- liftArray ma
- let one :: E (ST t) Int
- one = return 1
- a[one] `plus` a[one]
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl017.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl017.stderr
deleted file mode 100644
index ab82e56c36..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl017.stderr
+++ /dev/null
@@ -1,20 +0,0 @@
-
-simpl017.hs:44:12:
- Couldn't match expected type `forall v. [E m i] -> E' v m a'
- with actual type `[E m i] -> E' v0 m a'
- In the first argument of `return', namely `f'
- In a stmt of a 'do' block: return f
- In the first argument of `E', namely
- `(do { let ix :: [E m i] -> m i
- ix [i] = runE i
- {-# INLINE f #-}
- ....;
- return f })'
-
-simpl017.hs:63:5:
- Couldn't match expected type `t0 -> t1'
- with actual type `forall v. [E m0 Int] -> E' v m0 Int'
- The function `a' is applied to one argument,
- but its type `forall v. [E m0 Int] -> E' v m0 Int' has none
- In the first argument of `plus', namely `a [one]'
- In a stmt of a 'do' block: a [one] `plus` a [one]
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl018.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl018.hs
deleted file mode 100644
index 1b7ce8ddcd..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl018.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE UnboxedTuples #-}
-
--- See Note [Float coercions (unlifted)] in Simplify
--- This one gave a CoreLint error when compiled optimised
---
--- See also Trac #1718, of which this is a simplified version
-
-module ShouldCompile where
-
-bar :: Bool -> Int
-bar x = case (case x of { True -> (# 2,3 #); False -> error "urk" }) of
- (# p,q #) -> p+q
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl019.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl019.hs
deleted file mode 100644
index 66b8fc4764..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl019.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE GADTs, FlexibleInstances #-}
-{-# OPTIONS_GHC -O2 #-}
-
--- See Trac #1746
-
-module Foo where
-
-data T a where T :: T a -> T [a]
-
-class C a where
- f :: a -> ()
-
-instance C (T [a]) where
- f (T x@(T _)) = f x
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl020.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl020.hs
deleted file mode 100644
index d969ce1fd9..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl020.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
--- trac #1709
-
-module FileDialog where
-
-import Simpl020_A
-
-createFolder :: ()
-createFolder = geometry 0
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl020.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/simpl020.stderr
deleted file mode 100644
index 9d768d2913..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/simpl020.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-Simpl020_A.hs:25:10:
- Warning: No explicit method nor default method for `toGUIObject'
- In the instance declaration for `GUIObject ()'
-
-Simpl020_A.hs:25:10:
- Warning: No explicit method nor default method for `cset'
- In the instance declaration for `GUIObject ()'
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/spec-inline.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/spec-inline.hs
deleted file mode 100644
index 6c690ea12e..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/spec-inline.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-{- This test checks that specialiations can apply inside
- wrappers. In particular, the wrapper for 'foo' should
- look like
-
- Tmpl= \ (n_aal [Occ=Once!] :: GHC.Types.Int) ->
- case n_aal of _ { GHC.Types.I# ipv_smZ [Occ=Once] ->
- case Roman.foo_$s$wgo ipv_smZ 6 of ww_spp { __DEFAULT ->
- GHC.Types.I# ww_spp
- }
- }}]
- Note the $s$wgo. That in turn allows $wgo to be dead code.
--}
-
-module Roman where
-
-foo :: Int -> Int
-foo n = n `seq` go (Just n) (Just (6::Int))
- where
- go u (Just x)
- = x `seq`
- case u of
- Nothing -> go (Just 10) (Just m)
- Just n
- | n <= 0 -> 0
- | n < 100 -> go (Just (n-2)) (Just x)
- | n < 500 -> go (Just (n-3)) (Just m)
- | otherwise -> go (Just (n-1)) (Just (m+m))
- where
- m = x+x+x+x+x+x+x
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/spec-inline.stderr b/testsuite/tests/ghc-regress/simplCore/should_compile/spec-inline.stderr
deleted file mode 100644
index cd5d922ffc..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/spec-inline.stderr
+++ /dev/null
@@ -1,152 +0,0 @@
-
-==================== Tidy Core ====================
-Roman.foo2 :: GHC.Types.Int
-[GblId,
- Caf=NoCafRefs,
- Str=DmdType m,
- Unf=Unf{Src=<vanilla>, TopLvl=True, Arity=0, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=IF_ARGS [] 10 110}]
-Roman.foo2 = GHC.Types.I# 6
-
-Roman.foo1 :: Data.Maybe.Maybe GHC.Types.Int
-[GblId,
- Caf=NoCafRefs,
- Str=DmdType,
- Unf=Unf{Src=<vanilla>, TopLvl=True, Arity=0, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=IF_ARGS [] 10 110}]
-Roman.foo1 = Data.Maybe.Just @ GHC.Types.Int Roman.foo2
-
-Roman.foo3 :: GHC.Types.Int
-[GblId, Str=DmdType b]
-Roman.foo3 =
- Control.Exception.Base.patError
- @ GHC.Types.Int "spec-inline.hs:(19,5)-(29,25)|function go"
-
-Rec {
-Roman.foo_$s$wgo [Occ=LoopBreaker]
- :: GHC.Prim.Int# -> GHC.Prim.Int# -> GHC.Prim.Int#
-[GblId, Arity=2, Caf=NoCafRefs, Str=DmdType LL]
-Roman.foo_$s$wgo =
- \ (sc :: GHC.Prim.Int#) (sc1 :: GHC.Prim.Int#) ->
- let {
- a [Dmd=Just L] :: GHC.Prim.Int#
- [LclId, Str=DmdType]
- a =
- GHC.Prim.+#
- (GHC.Prim.+#
- (GHC.Prim.+#
- (GHC.Prim.+# (GHC.Prim.+# (GHC.Prim.+# sc sc) sc) sc) sc)
- sc)
- sc } in
- case GHC.Prim.<=# sc1 0 of _ {
- GHC.Types.False ->
- case GHC.Prim.<# sc1 100 of _ {
- GHC.Types.False ->
- case GHC.Prim.<# sc1 500 of _ {
- GHC.Types.False ->
- Roman.foo_$s$wgo (GHC.Prim.+# a a) (GHC.Prim.-# sc1 1);
- GHC.Types.True -> Roman.foo_$s$wgo a (GHC.Prim.-# sc1 3)
- };
- GHC.Types.True -> Roman.foo_$s$wgo sc (GHC.Prim.-# sc1 2)
- };
- GHC.Types.True -> 0
- }
-end Rec }
-
-Roman.$wgo
- :: Data.Maybe.Maybe GHC.Types.Int
- -> Data.Maybe.Maybe GHC.Types.Int -> GHC.Prim.Int#
-[GblId,
- Arity=2,
- Str=DmdType SS,
- Unf=Unf{Src=<vanilla>, TopLvl=True, Arity=2, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=IF_ARGS [60 30] 253 0}]
-Roman.$wgo =
- \ (w :: Data.Maybe.Maybe GHC.Types.Int)
- (w1 :: Data.Maybe.Maybe GHC.Types.Int) ->
- case w1 of _ {
- Data.Maybe.Nothing ->
- Roman.foo3
- `cast` (UnsafeCo GHC.Types.Int GHC.Prim.Int#
- :: GHC.Types.Int ~ GHC.Prim.Int#);
- Data.Maybe.Just x ->
- case x of _ { GHC.Types.I# ipv ->
- let {
- a [Dmd=Just L] :: GHC.Prim.Int#
- [LclId, Str=DmdType]
- a =
- GHC.Prim.+#
- (GHC.Prim.+#
- (GHC.Prim.+#
- (GHC.Prim.+# (GHC.Prim.+# (GHC.Prim.+# ipv ipv) ipv) ipv) ipv)
- ipv)
- ipv } in
- case w of _ {
- Data.Maybe.Nothing -> Roman.foo_$s$wgo a 10;
- Data.Maybe.Just n ->
- case n of _ { GHC.Types.I# x2 ->
- case GHC.Prim.<=# x2 0 of _ {
- GHC.Types.False ->
- case GHC.Prim.<# x2 100 of _ {
- GHC.Types.False ->
- case GHC.Prim.<# x2 500 of _ {
- GHC.Types.False ->
- Roman.foo_$s$wgo (GHC.Prim.+# a a) (GHC.Prim.-# x2 1);
- GHC.Types.True -> Roman.foo_$s$wgo a (GHC.Prim.-# x2 3)
- };
- GHC.Types.True -> Roman.foo_$s$wgo ipv (GHC.Prim.-# x2 2)
- };
- GHC.Types.True -> 0
- }
- }
- }
- }
- }
-
-Roman.foo_go [InlPrag=INLINE[0]]
- :: Data.Maybe.Maybe GHC.Types.Int
- -> Data.Maybe.Maybe GHC.Types.Int -> GHC.Types.Int
-[GblId,
- Arity=2,
- Str=DmdType SSm,
- Unf=Unf{Src=Worker=Roman.$wgo, TopLvl=True, Arity=2, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=ALWAYS_IF(unsat_ok=True,boring_ok=False)
- Tmpl= \ (w [Occ=Once] :: Data.Maybe.Maybe GHC.Types.Int)
- (w1 [Occ=Once] :: Data.Maybe.Maybe GHC.Types.Int) ->
- case Roman.$wgo w w1 of ww { __DEFAULT -> GHC.Types.I# ww }}]
-Roman.foo_go =
- \ (w :: Data.Maybe.Maybe GHC.Types.Int)
- (w1 :: Data.Maybe.Maybe GHC.Types.Int) ->
- case Roman.$wgo w w1 of ww { __DEFAULT -> GHC.Types.I# ww }
-
-Roman.foo :: GHC.Types.Int -> GHC.Types.Int
-[GblId,
- Arity=1,
- Caf=NoCafRefs,
- Str=DmdType S(A)m,
- Unf=Unf{Src=InlineStable, TopLvl=True, Arity=1, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=ALWAYS_IF(unsat_ok=True,boring_ok=False)
- Tmpl= \ (n [Occ=Once!] :: GHC.Types.Int) ->
- case n of n1 { GHC.Types.I# _ ->
- Roman.foo_go (Data.Maybe.Just @ GHC.Types.Int n1) Roman.foo1
- }}]
-Roman.foo =
- \ (n :: GHC.Types.Int) ->
- case n of _ { GHC.Types.I# ipv ->
- case Roman.foo_$s$wgo 6 ipv of ww { __DEFAULT -> GHC.Types.I# ww }
- }
-
-
------- Local rules for imported ids --------
-"SC:$wgo0" [ALWAYS]
- forall (sc :: GHC.Prim.Int#) (sc1 :: GHC.Prim.Int#).
- Roman.$wgo (Data.Maybe.Just @ GHC.Types.Int (GHC.Types.I# sc1))
- (Data.Maybe.Just @ GHC.Types.Int (GHC.Types.I# sc))
- = Roman.foo_$s$wgo sc sc1
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/spec-inline.stderr-ghc-7.0 b/testsuite/tests/ghc-regress/simplCore/should_compile/spec-inline.stderr-ghc-7.0
deleted file mode 100644
index dd3a7eb44a..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/spec-inline.stderr-ghc-7.0
+++ /dev/null
@@ -1,154 +0,0 @@
-
-==================== Tidy Core ====================
-Roman.foo2 :: GHC.Types.Int
-[GblId,
- Caf=NoCafRefs,
- Str=DmdType m,
- Unf=Unf{Src=<vanilla>, TopLvl=True, Arity=0, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=IF_ARGS [] 1 2}]
-Roman.foo2 = GHC.Types.I# 6
-
-Roman.foo1 :: Data.Maybe.Maybe GHC.Types.Int
-[GblId,
- Caf=NoCafRefs,
- Str=DmdType,
- Unf=Unf{Src=<vanilla>, TopLvl=True, Arity=0, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=IF_ARGS [] 1 2}]
-Roman.foo1 = Data.Maybe.Just @ GHC.Types.Int Roman.foo2
-
-Roman.foo3 :: GHC.Types.Int
-[GblId, Str=DmdType b]
-Roman.foo3 =
- Control.Exception.Base.patError
- @ GHC.Types.Int "spec-inline.hs:(19,5)-(29,25)|function go"
-
-Rec {
-Roman.foo_$s$wgo [Occ=LoopBreaker]
- :: GHC.Prim.Int# -> GHC.Prim.Int# -> GHC.Prim.Int#
-[GblId, Arity=2, Caf=NoCafRefs, Str=DmdType LL]
-Roman.foo_$s$wgo =
- \ (sc :: GHC.Prim.Int#) (sc1 :: GHC.Prim.Int#) ->
- let {
- a [Dmd=Just L] :: GHC.Prim.Int#
- [LclId, Str=DmdType]
- a =
- GHC.Prim.+#
- (GHC.Prim.+#
- (GHC.Prim.+#
- (GHC.Prim.+# (GHC.Prim.+# (GHC.Prim.+# sc sc) sc) sc) sc)
- sc)
- sc } in
- case GHC.Prim.<=# sc1 0 of _ {
- GHC.Bool.False ->
- case GHC.Prim.<# sc1 100 of _ {
- GHC.Bool.False ->
- case GHC.Prim.<# sc1 500 of _ {
- GHC.Bool.False ->
- Roman.foo_$s$wgo (GHC.Prim.+# a a) (GHC.Prim.-# sc1 1);
- GHC.Bool.True -> Roman.foo_$s$wgo a (GHC.Prim.-# sc1 3)
- };
- GHC.Bool.True -> Roman.foo_$s$wgo sc (GHC.Prim.-# sc1 2)
- };
- GHC.Bool.True -> 0
- }
-end Rec }
-
-Roman.$wgo
- :: Data.Maybe.Maybe GHC.Types.Int
- -> Data.Maybe.Maybe GHC.Types.Int
- -> GHC.Prim.Int#
-[GblId,
- Arity=2,
- Str=DmdType SS,
- Unf=Unf{Src=<vanilla>, TopLvl=True, Arity=2, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=IF_ARGS [6 3] 37 0}]
-Roman.$wgo =
- \ (w :: Data.Maybe.Maybe GHC.Types.Int)
- (w1 :: Data.Maybe.Maybe GHC.Types.Int) ->
- case w1 of _ {
- Data.Maybe.Nothing ->
- Roman.foo3
- `cast` (CoUnsafe GHC.Types.Int GHC.Prim.Int#
- :: GHC.Types.Int ~ GHC.Prim.Int#);
- Data.Maybe.Just x ->
- case x of _ { GHC.Types.I# ipv ->
- let {
- a [Dmd=Just L] :: GHC.Prim.Int#
- [LclId, Str=DmdType]
- a =
- GHC.Prim.+#
- (GHC.Prim.+#
- (GHC.Prim.+#
- (GHC.Prim.+# (GHC.Prim.+# (GHC.Prim.+# ipv ipv) ipv) ipv) ipv)
- ipv)
- ipv } in
- case w of _ {
- Data.Maybe.Nothing -> Roman.foo_$s$wgo a 10;
- Data.Maybe.Just n ->
- case n of _ { GHC.Types.I# x2 ->
- case GHC.Prim.<=# x2 0 of _ {
- GHC.Bool.False ->
- case GHC.Prim.<# x2 100 of _ {
- GHC.Bool.False ->
- case GHC.Prim.<# x2 500 of _ {
- GHC.Bool.False ->
- Roman.foo_$s$wgo (GHC.Prim.+# a a) (GHC.Prim.-# x2 1);
- GHC.Bool.True -> Roman.foo_$s$wgo a (GHC.Prim.-# x2 3)
- };
- GHC.Bool.True -> Roman.foo_$s$wgo ipv (GHC.Prim.-# x2 2)
- };
- GHC.Bool.True -> 0
- }
- }
- }
- }
- }
-
-Roman.foo_go [InlPrag=INLINE[0]]
- :: Data.Maybe.Maybe GHC.Types.Int
- -> Data.Maybe.Maybe GHC.Types.Int
- -> GHC.Types.Int
-[GblId,
- Arity=2,
- Str=DmdType SSm,
- Unf=Unf{Src=Worker=Roman.$wgo, TopLvl=True, Arity=2, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=ALWAYS_IF(unsat_ok=True,boring_ok=False)
- Tmpl= \ (w [Occ=Once] :: Data.Maybe.Maybe GHC.Types.Int)
- (w1 [Occ=Once] :: Data.Maybe.Maybe GHC.Types.Int) ->
- case Roman.$wgo w w1 of ww { __DEFAULT -> GHC.Types.I# ww }}]
-Roman.foo_go =
- \ (w :: Data.Maybe.Maybe GHC.Types.Int)
- (w1 :: Data.Maybe.Maybe GHC.Types.Int) ->
- case Roman.$wgo w w1 of ww { __DEFAULT -> GHC.Types.I# ww }
-
-Roman.foo :: GHC.Types.Int -> GHC.Types.Int
-[GblId,
- Arity=1,
- Caf=NoCafRefs,
- Str=DmdType S(A)m,
- Unf=Unf{Src=InlineStable, TopLvl=True, Arity=1, Value=True,
- ConLike=True, Cheap=True, Expandable=True,
- Guidance=ALWAYS_IF(unsat_ok=True,boring_ok=False)
- Tmpl= \ (n [Occ=Once!] :: GHC.Types.Int) ->
- case n of n1 { GHC.Types.I# _ ->
- Roman.foo_go (Data.Maybe.Just @ GHC.Types.Int n1) Roman.foo1
- }}]
-Roman.foo =
- \ (n :: GHC.Types.Int) ->
- case n of _ { GHC.Types.I# ipv ->
- case Roman.foo_$s$wgo 6 ipv of ww { __DEFAULT -> GHC.Types.I# ww }
- }
-
-
------- Local rules for imported ids --------
-"SC:$wgo0" [ALWAYS]
- forall {sc :: GHC.Prim.Int# sc1 :: GHC.Prim.Int#}
- Roman.$wgo (Data.Maybe.Just @ GHC.Types.Int (GHC.Types.I# sc1))
- (Data.Maybe.Just @ GHC.Types.Int (GHC.Types.I# sc))
- = Roman.foo_$s$wgo sc sc1
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/spec001.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/spec001.hs
deleted file mode 100644
index 0abfd6a5a5..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/spec001.hs
+++ /dev/null
@@ -1,425 +0,0 @@
-{-# LANGUAGE CPP, UnboxedTuples, MagicHash, StandaloneDeriving, DeriveDataTypeable #-}
-{-# OPTIONS_GHC -O #-}
-
--- In GHC 6.4, compiling this module gave a Core Lint failure following the
--- specialier, because a function was floated out that had a RULE that
--- mentioned another fuction (unpack, in fact). but the latter wasn't
--- floated because we didn't take the RULES into account properly; result,
--- variable out of scope.
-
--- It's hard to cut this test down.
-
-
-module Data.PackedString.Latin1 (
- -- * The @PackedString@ type
- PackedString, -- abstract, instances: Eq, Ord, Show, Typeable
-
- -- * Converting to and from @PackedString@s
- pack,
- unpack,
-
- -- * I\/O with @PackedString@s
- hPut, hGet,
-
- -- * List-like manipulation functions
- nil,
- cons,
- head,
- tail,
- null,
- append,
- length,
- index,
- map,
- filter,
- reverse,
- concat,
- elem,
- substr,
- take,
- drop,
- splitAt,
- foldl,
- foldr,
- takeWhile,
- dropWhile,
- span,
- break,
- lines,
- unlines,
- words,
- unwords,
- split,
- splitWith,
- join,
--- unpackList, -- eek, otherwise it gets thrown away by the simplifier
-
- ) where
-
-import qualified Prelude
-import Prelude hiding (
- head,
- tail,
- null,
- length,
- (!!),
- map,
- filter,
- reverse,
- concat,
- elem,
- take,
- drop,
- foldl,
- foldr,
- splitAt,
- takeWhile,
- dropWhile,
- span,
- break,
- lines,
- unlines,
- words,
- unwords
- )
-
-import GHC.Exts
-import GHC.IO (IO(..))
-import Foreign
-import Data.Typeable
-import Data.Char
-import qualified Data.List
-import System.IO
-
--- -----------------------------------------------------------------------------
--- PackedString type declaration
-
--- | A space-efficient representation of a 'String', which supports
--- various efficient operations. A 'PackedString' contains Latin1
--- (8-bit) characters only.
-data PackedString = PS {-#UNPACK#-}!Int {-#UNPACK#-}!Int
- {-#UNPACK#-}!(ForeignPtr Word8)
- -- this is a pretty efficient representation, and can be
- -- converted to/from a StorableArray.
- -- When the ForeignPtr is unpacked, we get the Addr# stored
- -- directly in the PS constructor.
-
--- Perhaps making a slice should be conditional on the ratio of the
--- slice/string size to limit memory leaks.
-
-instance Eq PackedString where
- a == b = comparePS a b == EQ
-
-instance Ord PackedString where
- compare = comparePS
-
-comparePS (PS off1 len1 fp1) (PS off2 len2 fp2)
- = inlinePerformIO $
- withForeignPtr fp1 $ \p1 ->
- withForeignPtr fp2 $ \p2 ->
- cmp (p1 `plusPtr` off1) (p2 `plusPtr` off2) len1
- where
- cmp :: Ptr Word8 -> Ptr Word8 -> Int -> IO Ordering
- cmp p1 p2 n
- | n == len1 = if n == len2 then return EQ else return LT
- | n == len2 = return GT
- | otherwise = do
- a <- peekElemOff p1 n
- b <- peekElemOff p2 n
- case a `compare` b of
- EQ -> cmp p1 p2 (n+1)
- LT -> return LT
- GT -> return GT
-
---instance Read PackedString: ToDo
-
-instance Show PackedString where
- showsPrec p ps r = showsPrec p (unpack ps) r
-
-#include "Typeable.h"
-INSTANCE_TYPEABLE0(PackedString,packedStringTc,"PackedString")
-
--- -----------------------------------------------------------------------------
--- Constructor functions
-
--- | The 'nilPS' value is the empty string.
-nil :: PackedString
-nil = inlinePerformIO $ do
- fp <- newForeignPtr_ nullPtr
- return (PS 0 0 fp)
-
--- | The 'consPS' function prepends the given character to the
--- given string.
-cons :: Char -> PackedString -> PackedString
-cons c cs = pack (c : (unpack cs)) -- ToDo:better
-
--- | Convert a 'String' into a 'PackedString'
-packLen :: Int -> String -> PackedString
-packLen len str = inlinePerformIO $ do
- fp <- mallocForeignPtrBytes len
- withForeignPtr fp $ \p -> do
- fill_it_in p 0 str
- return (PS 0 len fp)
-
-fill_it_in p i [] = return ()
-fill_it_in p i (c:cs) = do pokeElemOff p i (c2w c); fill_it_in p (i+1) cs
-
-pack :: String -> PackedString
-pack str = packLen (Prelude.length str) str
-
-{-# INLINE w2c #-}
-w2c :: Word8 -> Char
-w2c = chr . fromIntegral
-{-# INLINE c2w #-}
-c2w :: Char -> Word8
-c2w = fromIntegral . ord
-
--- -----------------------------------------------------------------------------
--- List-mimicking functions for PackedStrings
-
--- | The 'length' function returns the length of the input list.
--- Analogous to 'length'.
-length :: PackedString -> Int
-length (PS _ len _) = len
-
--- | The 'index' function returns the character in the string at the
--- given position.
-index :: PackedString -> Int -> Char
-index ps i
- | i >= 0 && i < len = unsafeIndex ps i
- | otherwise = error "Data.PackedString.Latin1.index: index out of range"
- where len = length ps
-
-unsafeIndex :: PackedString -> Int -> Char
-unsafeIndex (PS off len fp) i =
- withPackedString fp $ \p -> do
- w <- peekElemOff (p `plusPtr` off) i
- return $! w2c w
-
--- | The 'head' function returns the first element of a
--- 'PackedString' or throws an error if the string is empty.
-head :: PackedString -> Char
-head ps
- | len <= 0 = error "Data.PackedString.Latin1.head: head []"
- | otherwise = index ps 0
- where len = length ps
-
--- | The 'tail' function returns the tail of a 'PackedString' or throws an error
--- if the string is empty.
-tail :: PackedString -> PackedString
-tail ps
- | len <= 0 = error "Data.PackedString.Latin1.tail: tail []"
- | len == 1 = nil
- | otherwise = substr ps 1 (len - 1)
- where len = length ps
-
--- | The 'null' function returns True iff the argument is null.
-null :: PackedString -> Bool
-null (PS _ l _) = l == 0
-
--- | The 'append' function appends the second string onto the first.
-append :: PackedString -> PackedString -> PackedString
-append xs ys
- | null xs = ys
- | null ys = xs
- | otherwise = concat [xs,ys]
-
--- | The 'map' function applies a function to each character in the string.
-map :: (Char -> Char) -> PackedString -> PackedString
-map f ps = packLen (length ps) (Prelude.map f (unpack ps))
-
--- | The 'filter' function filters out the appropriate substring.
-filter :: (Char -> Bool) -> PackedString -> PackedString {-or String?-}
-filter pred ps = pack $ Prelude.filter pred $ unpack ps
-
--- | The 'foldl' function behaves like 'foldl' on 'PackedString's.
-foldl :: (a -> Char -> a) -> a -> PackedString -> a
-foldl f b ps = Prelude.foldl f b $ unpack ps
-
--- | The 'foldr' function behaves like 'foldr' on 'PackedString's.
-foldr :: (Char -> a -> a) -> a -> PackedString -> a
-foldr f v ps = Prelude.foldr f v $ unpack ps -- no intermediate list, we hope
-
--- | The 'take' function takes the first @n@ characters of a 'PackedString'.
-take :: Int -> PackedString -> PackedString
-take n ps = substr ps 0 (n-1)
-
--- | The 'drop' function drops the first @n@ characters of a 'PackedString'.
-drop :: Int -> PackedString -> PackedString
-drop n ps = substr ps n (length ps - 1)
-
--- | The 'splitWith' function splits a 'PackedString' at a given index.
-splitAt :: Int -> PackedString -> (PackedString, PackedString)
-splitAt n ps = (take n ps, drop n ps)
-
--- | The 'takeWhile' function is analogous to the 'takeWhile' function.
-takeWhile :: (Char -> Bool) -> PackedString -> PackedString
-takeWhile pred ps = pack $ Prelude.takeWhile pred $ unpack ps
-
--- | The 'dropWhile' function is analogous to the 'dropWhile' function.
-dropWhile :: (Char -> Bool) -> PackedString -> PackedString
-dropWhile pred ps = pack $ Prelude.dropWhile pred $ unpack ps
-
--- | The 'elem' function returns True iff the given element is in the string.
-elem :: Char -> PackedString -> Bool
-elem c ps = c `Prelude.elem` unpack ps
-
--- | The 'span' function returns a pair containing the result of
--- running both 'takeWhile' and 'dropWhile'.
-span :: (Char -> Bool) -> PackedString -> (PackedString, PackedString)
-span p ps = (takeWhile p ps, dropWhile p ps)
-
--- | The 'break' function breaks a string at the first position which
--- satisfies the predicate.
-break :: (Char -> Bool) -> PackedString -> (PackedString, PackedString)
-break p ps = span (not . p) ps
-
--- | The 'lines' function splits the input on line-breaks.
-lines :: PackedString -> [PackedString]
-lines ps = split '\n' ps
-
--- | The 'unlines' function concatenates the input list after
--- interspersing newlines.
-unlines :: [PackedString] -> PackedString
-unlines pss = join (pack "\n") pss
-
--- | The 'words' function is analogous to the 'words' function.
-words :: PackedString -> [PackedString]
-words ps = Prelude.filter (not.null) (splitWith isSpace ps)
-
--- | The 'unwords' function is analogous to the 'unwords' function.
-unwords :: [PackedString] -> PackedString
-unwords pss = join (pack " ") pss
-
--- | The 'reverse' function reverses the string.
-reverse :: PackedString -> PackedString
-reverse ps = pack $ Prelude.reverse $ unpack ps
-
--- | The 'concat' function concatenates a list of 'PackedString's.
-concat :: [PackedString] -> PackedString
-concat pss = pack $ Prelude.concat $ Prelude.map unpack pss
-
-------------------------------------------------------------
-
--- | The 'join' function takes a 'PackedString' and a list of 'PackedString's
--- and concatenates the list after interspersing the first argument between
--- each element of the list.
-join :: PackedString -> [PackedString] -> PackedString
-join filler pss = concat (splice pss)
- where
- splice [] = []
- splice [x] = [x]
- splice (x:y:xs) = x:filler:splice (y:xs)
-
--- ToDo: the obvious generalisation
-{-
- Some properties that hold:
-
- * split x ls = ls'
- where False = any (map (x `elem`) ls')
-
- * join (pack [x]) (split x ls) = ls
--}
-
--- | The 'split' function splits the input string on each occurrence of the given 'Char'.
-split :: Char -> PackedString -> [PackedString]
-split c = splitWith (== c)
-
-splitWith :: (Char -> Bool) -> PackedString -> [PackedString]
-splitWith pred (PS off 0 fp) = []
-splitWith pred (PS off len fp) = splitWith' pred off len fp
-
-splitWith' pred off len fp =
- withPackedString fp $ \p -> splitLoop pred p 0 off len fp
-
-splitLoop pred p idx off len fp
- | p `seq` idx `seq` off `seq` fp `seq` False = undefined
-splitLoop pred p idx off len fp
- | idx >= len = return [PS off idx fp]
- | otherwise = do
- w <- peekElemOff p (off+idx)
- if pred (w2c w)
- then return (PS off idx fp :
- splitWith' pred (off+idx+1) (len-idx-1) fp)
- else splitLoop pred p (idx+1) off len fp
-
--- -----------------------------------------------------------------------------
--- Local utility functions
-
--- The definition of @_substr@ is essentially:
--- @take (end - begin + 1) (drop begin str)@.
-
--- | The 'substr' function takes a 'PackedString' and two indices
--- and returns the substring of the input string between (and including)
--- these indices.
-substr :: PackedString -> Int -> Int -> PackedString
-substr (PS off len fp) begin end = PS (off+begin) (end-begin+1) fp
-
--- -----------------------------------------------------------------------------
--- hPut
-
--- | Outputs a 'PackedString' to the specified 'Handle'.
---
--- NOTE: the string will be output directly in Latin-1.
---
-hPut :: Handle -> PackedString -> IO ()
-hPut h (PS off l fp) =
- withForeignPtr fp $ \p ->
- hPutBuf h (p `plusPtr` off) l
-
--- -----------------------------------------------------------------------------
--- hGet
-
--- | Read a 'PackedString' directly from the specified 'Handle'.
--- This is far more efficient than reading the characters into a 'String'
--- and then using 'pack'.
---
--- NOTE: as with 'hPut', the string representation in the file is
--- assumed to be Latin-1.
-hGet :: Handle -> Int -> IO PackedString
-hGet h i = do
- fp <- mallocForeignPtrBytes i
- withForeignPtr fp $ \p -> do
- l <- hGetBuf h p i
- return (PS 0 l fp)
-
--- -----------------------------------------------------------------------------
--- unpacking
-
-{-# INLINE unpack #-}
-unpack :: PackedString -> String
-unpack ps = build (unpackFoldr ps)
-
-{-# RULES
-"unpack-list" [1] forall p . unpackFoldr p (:) [] = unpackList p
- #-}
-
-unpackList :: PackedString -> [Char]
-unpackList (PS off len fp) =
- withPackedString fp $ \p -> do
- let loop p (-1) acc = return acc
- loop p n acc = do
- a <- peekElemOff p n
- loop p (n-1) (w2c a : acc)
- loop (p `plusPtr` off) (len-1) []
-
-{-# INLINE [0] unpackFoldr #-}
-unpackFoldr :: PackedString -> (Char -> a -> a) -> a -> a
-unpackFoldr (PS off len fp) f c =
- withPackedString fp $ \p -> do
- let loop p (-1) acc = return acc
- loop p n acc = do
- a <- peekElemOff p n
- loop p (n-1) (w2c a `f` acc)
- loop (p `plusPtr` off) (len-1) c
-
--- -----------------------------------------------------------------------------
--- Utils
-
--- Just like unsafePerformIO, but we inline it.
-{-# INLINE inlinePerformIO #-}
-inlinePerformIO :: IO a -> a
-inlinePerformIO (IO m) = case m realWorld# of (# _, r #) -> r
-
-withPackedString :: ForeignPtr a -> (Ptr a -> IO b) -> b
-withPackedString fp io = inlinePerformIO (withForeignPtr fp io)
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/spec002.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/spec002.hs
deleted file mode 100644
index 1fb88d995c..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/spec002.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# OPTIONS_GHC -O2 #-}
-
--- Ths one fooled the rule-matching in SpecConstr, and gave a CoreLint error
-
-module Foo where
-
-type Token = (Int, Int, Lex, String)
-
-data Lex = Llbrace
-
-laLayout :: Int -> [Int] -> [Token] -> [Token]
-
-laLayout l (s:ss) (t1@(l1, n1, w1, c1) :
- t2@(l2, n2, w2, c2) : ts)
- | n1 < s = laLayout l2 (n2:s:ss) ts
- | otherwise = laLayout l ss (t1:t2:ts)
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/spec003.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/spec003.hs
deleted file mode 100644
index 7ebb901106..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/spec003.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Trac #1402
--- Broke the specialiser
-
-module ShouldCompile where
-
-newtype Gen a = MkGen{ unGen :: Int -> a }
-
-choose :: Eq a => a -> Gen a
-choose n = MkGen (\r -> n)
-
-oneof = choose (1::Int)
diff --git a/testsuite/tests/ghc-regress/simplCore/should_compile/strict-float.hs b/testsuite/tests/ghc-regress/simplCore/should_compile/strict-float.hs
deleted file mode 100644
index 77954b76bb..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_compile/strict-float.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
--- Test from Kirsten Chevalier
--- Tests the "strict bindings getting floated to top" bug in the floater
-
-module B (bernoulli) where
-
-powers = [2..] : powers
-
-neg_powers = map (zip (iterate id True)) powers
-
-bernoulli = head powers
- where powers = head neg_powers
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/Makefile b/testsuite/tests/ghc-regress/simplCore/should_run/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/SeqRule.hs b/testsuite/tests/ghc-regress/simplCore/should_run/SeqRule.hs
deleted file mode 100644
index b1569efd7b..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/SeqRule.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-
--- This test checks that the magic treatment of RULES
--- for 'seq' works right.
---
--- See Note [RULES for seq] in MkId for more details
-
-module Main where
-
-{-# NOINLINE f #-}
-f x = not x
-
-{-# RULES
- "f/seq" forall n e. seq (f n) e = True
- #-}
-
-main = print (seq (f True) False)
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/SeqRule.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/SeqRule.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/SeqRule.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T2486.hs b/testsuite/tests/ghc-regress/simplCore/should_run/T2486.hs
deleted file mode 100644
index 2f5df48532..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T2486.hs
+++ /dev/null
@@ -1,37 +0,0 @@
-{-# OPTIONS_GHC -O -ddump-rules #-}
-
--- Trac #2486
---
--- The thing to look for here is that specialisations for fib and tak
--- at both Int and Double are indeed generated; hence -ddump-rules
-
-module Main where
-
-import System.Environment
-import Numeric
-
-main = do
- n <- getArgs >>= readIO . head
- let m = n-1
- a = 27 + fromIntegral n
- putStr $
- line "Ack" [3,n] (ack 3 n) show ++
- line "Fib" [a] (fib a :: Double) (\n -> showFFloat (Just 1) n []) ++
- line "Tak" [3*m,2*m,m] (tak (3*m) (2*m) m :: Int) show ++
- line "Fib" [3] (fib 3 :: Int) show ++
- line "Tak" [3,2,1] (tak 3 2 1 :: Double) show
- where
- line pre a r f = pre ++ "(" ++ csv f a "" ++ "): " ++ f r ++ "\n"
- csv f [a] s = s ++ f a
- csv f (a:b) s = s ++ f a ++ "," ++ csv f b s
-
-ack :: Int -> Int -> Int
-ack 0 n = n+1
-ack m 0 = ack (m-1) 1
-ack m n = ack (m-1) (ack m (n-1))
-
-fib :: (Num a, Ord a) => a -> a
-fib n = if n >= 2 then fib (n-1) + fib (n-2) else 1
-
-tak :: (Num a, Ord a) => a -> a -> a -> a
-tak x y z = if y < x then tak (tak (x-1) y z) (tak (y-1) z x) (tak (z-1) x y) else z
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T2486.stderr b/testsuite/tests/ghc-regress/simplCore/should_run/T2486.stderr
deleted file mode 100644
index 968e8dbdb4..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T2486.stderr
+++ /dev/null
@@ -1,24 +0,0 @@
-
-==================== Tidy Core rules ====================
-"SPEC Main.fib [GHC.Types.Double]" [ALWAYS]
- forall ($dNum :: GHC.Num.Num GHC.Types.Double)
- ($dOrd :: GHC.Classes.Ord GHC.Types.Double).
- Main.fib @ GHC.Types.Double $dNum $dOrd
- = Main.fib_$sfib1
-"SPEC Main.fib [GHC.Types.Int]" [ALWAYS]
- forall ($dNum :: GHC.Num.Num GHC.Types.Int)
- ($dOrd :: GHC.Classes.Ord GHC.Types.Int).
- Main.fib @ GHC.Types.Int $dNum $dOrd
- = Main.fib_$sfib
-"SPEC Main.tak [GHC.Types.Double]" [ALWAYS]
- forall ($dNum :: GHC.Num.Num GHC.Types.Double)
- ($dOrd :: GHC.Classes.Ord GHC.Types.Double).
- Main.tak @ GHC.Types.Double $dNum $dOrd
- = Main.tak_$stak1
-"SPEC Main.tak [GHC.Types.Int]" [ALWAYS]
- forall ($dNum :: GHC.Num.Num GHC.Types.Int)
- ($dOrd :: GHC.Classes.Ord GHC.Types.Int).
- Main.tak @ GHC.Types.Int $dNum $dOrd
- = Main.tak_$stak
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T2756.hs b/testsuite/tests/ghc-regress/simplCore/should_run/T2756.hs
deleted file mode 100644
index cb59d50c9b..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T2756.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-module Main where
-
-data X = X ()
-
-{-# NOINLINE newX #-}
-newX :: () -> IO X
-newX n = do
- let {-# NOINLINE value #-}
- value = n
- return (X value)
-
-main = do
- x <- newX (error "Why?")
- case x of
- X _ -> return ()
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T2756.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/T2756.stdout
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T2756.stdout
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3403.hs b/testsuite/tests/ghc-regress/simplCore/should_run/T3403.hs
deleted file mode 100644
index 276aae88b2..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3403.hs
+++ /dev/null
@@ -1,32 +0,0 @@
-{-# LANGUAGE BangPatterns #-}
-
-
--- See Trac #3403: interaction of pattern match failure and CPR
--- The point is that this should run in constant space, with no
--- stack growth. In GHC 6.10 the tail call optimisation didn't work.
-
-module Main (main) where
-
-import qualified Data.Set as Set
-import Data.Set (Set)
-
-data Result = Result !S1 !S2
-
-type S1 = Set ()
-type S2 = Set ()
-
-input :: [[(Int, ())]]
-input = replicate 1000 (replicate 400 (100, ()))
-
-main :: IO ()
-main = do let Result s1 s2 = doAll Set.empty Set.empty () input
- print $ Set.size s1
- print $ Set.size s2
-
-doAll :: S1 -> S2 -> () -> [[(Int, ())]] -> Result
-doAll !s1 !s2 !_ [] = Result s1 s2
-doAll !s1 !s2 !unit ([] : xs) = doAll s1 s2 unit xs
-doAll !s1 !s2 !unit (((t, _) : x1) : x2 : xs)
- | t >= 99999 = doAll s1 s2 unit (x1 : x2 : xs)
-doAll !s1 !s2 !unit (((_, ()) : x) : xs)
- = doAll s1 s2 unit (x : xs)
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3403.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/T3403.stdout
deleted file mode 100644
index aa47d0d46d..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3403.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-0
-0
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3437.hs b/testsuite/tests/ghc-regress/simplCore/should_run/T3437.hs
deleted file mode 100644
index 9ef6ee8b82..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3437.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE BangPatterns #-}
-{-# OPTIONS_GHC -O2 #-}
-
--- Trac #3437
--- When we do SpecConstr on 'go', we want the specialised
--- function to *still* be strict in k. Otherwise we get
--- a bad space leak!
-
--- The test is run with +RTS -M10m to limit the amount of heap
--- It should run in constant space, but if the function isn't
--- strict enough it'll run out of heap
-
-module Main where
-
-go :: [Int] -> [Int] -> [Int]
-go (0:xs) !k = k
-go (n:xs) !k = go (n-1 : xs) (k ++ k)
-
-main = print (go [100000000] [])
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3437.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/T3437.stdout
deleted file mode 100644
index fe51488c70..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3437.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[]
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3591.hs b/testsuite/tests/ghc-regress/simplCore/should_run/T3591.hs
deleted file mode 100644
index 491ba5fa17..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3591.hs
+++ /dev/null
@@ -1,206 +0,0 @@
-{-
- Copyright 2009 Mario Blazevic
-
- This file is part of the Streaming Component Combinators (SCC) project.
-
- The SCC project is free software: you can redistribute it and/or
- modify it under the terms of the GNU General Public License as
- published by the Free Software Foundation, either version 3 of the
- License, or (at your option) any later version.
-
- SCC is distributed in the hope that it will be useful, but WITHOUT
- ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
- License for more details.
-
- You should have received a copy of the GNU General Public License
- along with SCC. If not, see <http://www.gnu.org/licenses/>.
--}
-
--- | Module "Trampoline" defines the pipe computations and their basic building blocks.
-
-{-# LANGUAGE ScopedTypeVariables, Rank2Types, MultiParamTypeClasses,
- TypeFamilies, KindSignatures, FlexibleContexts,
- FlexibleInstances, OverlappingInstances, UndecidableInstances
- #-}
-
-{- Somewhere we get:
-
- Wanted: AncestorFunctor (EitherFunctor a (TryYield a)) d
- This should not reduce because of overlapping instances
-
- If it (erroneously) does reduce, via dfun2 we get
- Wanted: Functor (EitherFunctor a (TryYield a)
- Functor d'
- Functor d
- d ~ EitherFunctor d' s
- AncestorFunctor (EitherFunctor a (TryYield a) d'
-
-
- And that gives an infinite loop in the type checker!
--}
-
-
-module Main where
-
-import Control.Monad (liftM, liftM2, when)
--- import Control.Monad.Identity
-
-import Debug.Trace (trace)
-
-
--------------
-class (Functor a, Functor d) => AncestorFunctor a d where
- liftFunctor :: a x -> d x
-
--- dfun 1
-instance Functor a => AncestorFunctor a a where
- liftFunctor = trace "liftFunctor id" . id
-
--- dfun 2
-instance ( Functor a
- , Functor d'
- , Functor d
- , d ~ EitherFunctor d' s
- , AncestorFunctor a d')
- => AncestorFunctor a d where
- liftFunctor = LeftF . (trace "liftFunctor other" . liftFunctor :: a x -> d' x)
-
-
-
-
--------------
-newtype Identity a = Identity { runIdentity :: a }
-instance Monad Identity where
- return a = Identity a
- m >>= k = k (runIdentity m)
-
-newtype Trampoline m s r = Trampoline {bounce :: m (TrampolineState m s r)}
-data TrampolineState m s r = Done r | Suspend! (s (Trampoline m s r))
-
-instance (Monad m, Functor s) => Monad (Trampoline m s) where
- return x = Trampoline (return (Done x))
- t >>= f = Trampoline (bounce t >>= apply f)
- where apply f (Done x) = bounce (f x)
- apply f (Suspend s) = return (Suspend (fmap (>>= f) s))
-
-data Yield x y = Yield! x y
-instance Functor (Yield x) where
- fmap f (Yield x y) = trace "fmap yield" $ Yield x (f y)
-
-data Await x y = Await! (x -> y)
-instance Functor (Await x) where
- fmap f (Await g) = trace "fmap await" $ Await (f . g)
-
-data EitherFunctor l r x = LeftF (l x) | RightF (r x)
-instance (Functor l, Functor r) => Functor (EitherFunctor l r) where
- fmap f v = trace "fmap Either" $
- case v of
- LeftF l -> trace "fmap LeftF" $ LeftF (fmap f l)
- RightF r -> trace "fmap RightF" $ RightF (fmap f r)
-
-type TryYield x = EitherFunctor (Yield x) (Await Bool)
-
-suspend :: (Monad m, Functor s) => s (Trampoline m s x) -> Trampoline m s x
-suspend s = Trampoline (return (Suspend s))
-
-yield :: forall m x. Monad m => x -> Trampoline m (Yield x) ()
-yield x = suspend (Yield x (return ()))
-
-await :: forall m x. Monad m => Trampoline m (Await x) x
-await = suspend (Await return)
-
-tryYield :: forall m x. Monad m => x -> Trampoline m (TryYield x) Bool
-tryYield x = suspend (LeftF (Yield x (suspend (RightF (Await return)))))
-
-canYield :: forall m x. Monad m => Trampoline m (TryYield x) Bool
-canYield = suspend (RightF (Await return))
-
-liftBounce :: Monad m => m x -> Trampoline m s x
-liftBounce = Trampoline . liftM Done
-
-fromTrampoline :: Monad m => Trampoline m s x -> m x
-fromTrampoline t = bounce t >>= \(Done x)-> return x
-
-runTrampoline :: Monad m => Trampoline m Maybe x -> m x
-runTrampoline = fromTrampoline
-
-coupleNestedFinite :: (Functor s, Monad m) =>
- Trampoline m (EitherFunctor s (TryYield a)) x
- -> Trampoline m (EitherFunctor s (Await (Maybe a))) y -> Trampoline m s (x, y)
-coupleNestedFinite t1 t2 =
- trace "bounce start" $
- liftBounce (liftM2 (,) (bounce t1) (bounce t2))
- >>= \(s1, s2)-> trace "bounce end" $
- case (s1, s2)
- of (Done x, Done y) -> return (x, y)
- (Done x, Suspend (RightF (Await c2))) -> coupleNestedFinite (return x) (c2 Nothing)
- (Suspend (RightF (LeftF (Yield _ c1))), Done y) -> coupleNestedFinite c1 (return y)
- (Suspend (RightF (LeftF (Yield x c1))), Suspend (RightF (Await c2))) -> coupleNestedFinite c1 (c2 $ Just x)
- (Suspend (RightF (RightF (Await c1))), Suspend s2@(RightF Await{})) -> coupleNestedFinite (c1 True) (suspend s2)
- (Suspend (RightF (RightF (Await c1))), Done y) -> coupleNestedFinite (c1 False) (return y)
- (Suspend (LeftF s), Done y) -> suspend (fmap (flip coupleNestedFinite (return y)) s)
- (Done x, Suspend (LeftF s)) -> suspend (fmap (coupleNestedFinite (return x)) s)
- (Suspend (LeftF s1), Suspend (LeftF s2)) -> suspend (fmap (coupleNestedFinite $ suspend $ LeftF s1) s2)
- (Suspend (LeftF s1), Suspend (RightF s2)) -> suspend (fmap (flip coupleNestedFinite (suspend $ RightF s2)) s1)
- (Suspend (RightF s1), Suspend (LeftF s2)) -> suspend (fmap (coupleNestedFinite (suspend $ RightF s1)) s2)
-
-local :: forall m l r x. (Monad m, Functor r) => Trampoline m r x -> Trampoline m (EitherFunctor l r) x
-local (Trampoline mr) = Trampoline (liftM inject mr)
- where inject :: TrampolineState m r x -> TrampolineState m (EitherFunctor l r) x
- inject (Done x) = Done x
- inject (Suspend r) = Suspend (RightF $ fmap local r)
-
-out :: forall m l r x. (Monad m, Functor l) => Trampoline m l x -> Trampoline m (EitherFunctor l r) x
-out (Trampoline ml) = Trampoline (liftM inject ml)
- where inject :: TrampolineState m l x -> TrampolineState m (EitherFunctor l r) x
- inject (Done x) = Done x
- inject (Suspend l) = Suspend (LeftF $ fmap out l)
-
-liftOut :: forall m a d x. (Monad m, Functor a, AncestorFunctor a d) => Trampoline m a x -> Trampoline m d x
-liftOut (Trampoline ma) = trace "liftOut" $ Trampoline (liftM inject ma)
- where inject :: TrampolineState m a x -> TrampolineState m d x
- inject (Done x) = Done x
- inject (Suspend a) = trace "inject suspend" $ Suspend (liftFunctor $ trace "calling fmap" $
- fmap liftOut (trace "poking a" a))
-
-data Sink (m :: * -> *) a x =
- Sink {put :: forall d. (AncestorFunctor (EitherFunctor a (TryYield x)) d) => x -> Trampoline m d Bool,
- canPut :: forall d. (AncestorFunctor (EitherFunctor a (TryYield x)) d) => Trampoline m d Bool}
-newtype Source (m :: * -> *) a x =
- Source {get :: forall d. (AncestorFunctor (EitherFunctor a (Await (Maybe x))) d) => Trampoline m d (Maybe x)}
-
-pipe :: forall m a x r1 r2. (Monad m, Functor a) =>
- (Sink m a x -> Trampoline m (EitherFunctor a (TryYield x)) r1)
- -> (Source m a x -> Trampoline m (EitherFunctor a (Await (Maybe x))) r2) -> Trampoline m a (r1, r2)
-pipe producer consumer = coupleNestedFinite (producer sink) (consumer source) where
- sink = Sink {put= liftOut . (local . tryYield :: x -> Trampoline m (EitherFunctor a (TryYield x)) Bool),
- canPut= liftOut (local canYield :: Trampoline m (EitherFunctor a (TryYield x)) Bool)} :: Sink m a x
- source = Source (liftOut (local await :: Trampoline m (EitherFunctor a (Await (Maybe x))) (Maybe x))) :: Source m a x
-
-pipeProducer sink = do put sink 1
- (c, d) <- pipe
- (\sink'-> do put sink' 2
- put sink 3
- put sink' 4
- return 5)
- (\source'-> do Just n <- get source'
- put sink n
- put sink 6
- return n)
- put sink c
- put sink d
- return (c, d)
-
-testPipe = print $
- runIdentity $
- runTrampoline $
- do (a, b) <- pipe
- pipeProducer
- (\source-> do Just n1 <- get source
- Just n2 <- get source
- Just n3 <- get source
- return (n1, n2, n3))
- return (a, b)
-
-main = testPipe
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3591.stderr b/testsuite/tests/ghc-regress/simplCore/should_run/T3591.stderr
deleted file mode 100644
index 3fcef522a9..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3591.stderr
+++ /dev/null
@@ -1,456 +0,0 @@
-bounce start
-bounce end
-liftOut
-inject suspend
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap LeftF
-fmap LeftF
-fmap LeftF
-fmap yield
-fmap yield
-fmap yield
-liftOut
-inject suspend
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap Either
-fmap RightF
-fmap await
-fmap await
-fmap await
-bounce start
-bounce end
-liftOut
-inject suspend
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap RightF
-fmap RightF
-fmap RightF
-fmap await
-fmap await
-fmap await
-liftOut
-fmap Either
-fmap RightF
-fmap await
-bounce start
-bounce end
-liftOut
-bounce start
-bounce end
-liftOut
-inject suspend
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap LeftF
-fmap LeftF
-fmap LeftF
-fmap yield
-fmap yield
-fmap yield
-liftOut
-inject suspend
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap Either
-fmap RightF
-fmap await
-fmap await
-fmap await
-bounce start
-bounce end
-liftOut
-inject suspend
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap RightF
-fmap RightF
-fmap RightF
-fmap await
-fmap await
-fmap await
-liftOut
-liftOut
-inject suspend
-fmap Either
-fmap LeftF
-fmap Either
-fmap Either
-liftFunctor other
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap RightF
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap Either
-fmap Either
-fmap LeftF
-fmap LeftF
-fmap LeftF
-fmap LeftF
-fmap LeftF
-fmap yield
-fmap yield
-fmap yield
-fmap yield
-fmap yield
-bounce start
-bounce end
-bounce start
-bounce end
-liftOut
-inject suspend
-fmap Either
-fmap LeftF
-fmap Either
-fmap Either
-liftFunctor other
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap RightF
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap Either
-fmap Either
-fmap RightF
-fmap RightF
-fmap RightF
-fmap RightF
-fmap RightF
-fmap await
-fmap await
-fmap await
-fmap await
-fmap await
-liftOut
-fmap Either
-fmap RightF
-fmap await
-bounce start
-bounce end
-bounce start
-bounce end
-liftOut
-liftOut
-inject suspend
-fmap Either
-fmap LeftF
-fmap Either
-fmap Either
-liftFunctor other
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap RightF
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap Either
-fmap Either
-fmap LeftF
-fmap LeftF
-fmap LeftF
-fmap LeftF
-fmap LeftF
-fmap yield
-fmap yield
-fmap yield
-fmap yield
-fmap yield
-bounce start
-bounce end
-bounce start
-bounce end
-liftOut
-inject suspend
-fmap Either
-fmap LeftF
-fmap Either
-fmap Either
-liftFunctor other
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap RightF
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap Either
-fmap Either
-fmap RightF
-fmap RightF
-fmap RightF
-fmap RightF
-fmap RightF
-fmap await
-fmap await
-fmap await
-fmap await
-fmap await
-liftOut
-bounce start
-bounce end
-bounce start
-bounce end
-liftOut
-bounce start
-bounce end
-liftOut
-liftOut
-inject suspend
-fmap Either
-fmap LeftF
-fmap Either
-fmap Either
-liftFunctor other
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap RightF
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap Either
-fmap Either
-fmap LeftF
-fmap LeftF
-fmap LeftF
-fmap LeftF
-fmap LeftF
-fmap yield
-fmap yield
-fmap yield
-fmap yield
-fmap yield
-bounce start
-bounce end
-bounce start
-bounce end
-liftOut
-inject suspend
-fmap Either
-fmap LeftF
-fmap Either
-fmap Either
-liftFunctor other
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap RightF
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap Either
-fmap Either
-fmap RightF
-fmap RightF
-fmap RightF
-fmap RightF
-fmap RightF
-fmap await
-fmap await
-fmap await
-fmap await
-fmap await
-bounce start
-bounce end
-bounce start
-bounce end
-liftOut
-liftOut
-inject suspend
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap LeftF
-fmap LeftF
-fmap LeftF
-fmap yield
-fmap yield
-fmap yield
-bounce start
-bounce end
-liftOut
-inject suspend
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap RightF
-fmap RightF
-fmap RightF
-fmap await
-fmap await
-fmap await
-bounce start
-bounce end
-liftOut
-liftOut
-inject suspend
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap LeftF
-fmap LeftF
-fmap LeftF
-fmap yield
-fmap yield
-fmap yield
-bounce start
-bounce end
-liftOut
-inject suspend
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap RightF
-fmap RightF
-fmap RightF
-fmap await
-fmap await
-fmap await
-bounce start
-bounce end
-liftOut
-liftOut
-inject suspend
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap LeftF
-fmap LeftF
-fmap LeftF
-fmap yield
-fmap yield
-fmap yield
-bounce start
-bounce end
-liftOut
-inject suspend
-liftFunctor id
-calling fmap
-fmap Either
-poking a
-fmap RightF
-fmap Either
-fmap RightF
-fmap Either
-fmap Either
-fmap Either
-fmap RightF
-fmap RightF
-fmap RightF
-fmap await
-fmap await
-fmap await
-bounce start
-bounce end
-liftOut
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3591.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/T3591.stdout
deleted file mode 100644
index 0c69a05357..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3591.stdout
+++ /dev/null
@@ -1 +0,0 @@
-((5,2),(1,2,6))
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3959.hs b/testsuite/tests/ghc-regress/simplCore/should_run/T3959.hs
deleted file mode 100644
index 725f315da8..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3959.hs
+++ /dev/null
@@ -1,67 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables, DeriveDataTypeable #-}
-module Main(main,f) where
-
-import Data.List (isPrefixOf)
-import Data.Dynamic
-import Control.Exception as E
-
-data Failure = Failure
- deriving (Show, Typeable)
-
-instance Exception Failure
-
-test = (E.throw Failure >> return ())
- `E.catch`
- (\(x::Failure) -> return ())
-
-main :: IO ()
-main = print =<< test
-
-f :: Bool -> Bool -> Bool
-f True = error "urk"
--- f False = \y -> y
-
-{-
-Uderlying cause: we call
- catch# thing handler
-and expect that (thing state-token) will
- - either diverge/throw an exception
- - or return (# x,y #)
-But it does neither: it returns a PAP, because
- thing = \p q. blah
-
-In particular, 'thing = lvl_sxo' is
- lvl_sxc :: IO Any
- lvl_sxc = error "urk"
-
- lvl_sxo :: IO ()
- = lvl_sxc >> return ()
-
- -- inline (>>) --
-
- = (\(eta::S#). case lvl_sxc |> g1 eta of ...) |> g2
- where
- g1 :: IO Any ~ S# -> (# S#, Any #)
- g2 :: S# -> (# S#, () #) -> IO ()
-
- -- case-of-bottomming function --
-
- = (\ (eta::S#). lvl_sxc |> g1 |> ug3) |> g2
- where
- ug3(unsafe) :: S# -> (S#, Any) ~ (# S#, () #)
-
-This is all fine. But it's crucial that lvl_sxc actually diverges.
-Do not eta-expand it to
-
- lvl_sxc :: IO Any
- lvl_sxc = \eta. error "urk" |> ug4
- where
- ug4(unsafe) :: S# -> (# S#, Any #) ~ IO Any
-
-In contrast, if we had
- case x of
- True -> \a -> 3
- False -> error "urk"
-we can, and must, eta-expand the error
-
--} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3959.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/T3959.stdout
deleted file mode 100644
index 6a452c185a..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3959.stdout
+++ /dev/null
@@ -1 +0,0 @@
-()
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3972.hs b/testsuite/tests/ghc-regress/simplCore/should_run/T3972.hs
deleted file mode 100644
index 324ddd4f9a..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3972.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-
-module Main (main) where
-
-import T3972A (Expr(E10), Token, spanning, getSpan)
-
-import Control.Monad
-import System.Exit
-import System.IO
-
-main :: IO ()
-main = do h <- openFile "T3972.o" ReadMode
- s <- hFileSize h
- hClose h
- -- size is just under 8k on amd64/Linux in 6.13, but was
- -- around 3.5M in 6.12. Let's try >20k as the test for
- -- having regressed.
- when (s > 20000) $ do
- hPutStrLn stderr ("T3972.o is too big! " ++ show s)
- exitFailure
-
-makeTupleOrExpr :: [Expr] -> Maybe Token -> Expr
-makeTupleOrExpr [e] Nothing = e
-makeTupleOrExpr es@(_:_) (Just t) = E10 (spanning es t)
-makeTupleOrExpr es@(_:_) Nothing = E10 (getSpan es)
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3972A.hs b/testsuite/tests/ghc-regress/simplCore/should_run/T3972A.hs
deleted file mode 100644
index b8202f7448..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3972A.hs
+++ /dev/null
@@ -1,86 +0,0 @@
-
-module T3972A (Expr(..), Token(..), spanning, getSpan) where
-
-class Span a where
- getSpan :: a -> SrcSpan
-
-spanning :: (Span a, Span b) => a -> b -> SrcSpan
-spanning x y = combineSrcSpans (getSpan x) (getSpan y)
-
-instance Span a => Span [a] where
- getSpan [] = error "[]"
- getSpan [x] = getSpan x
- getSpan list@(x:_) = combineSrcSpans (getSpan x) (getSpan (last list))
-
-data SrcSpan
-
- = SpanMultiLine
- { span_start_row :: !Int
- , span_start_column :: !Int
- , span_end_row :: !Int
- , span_end_column :: !Int
- }
-
-combineSrcSpans :: SrcSpan -> SrcSpan -> SrcSpan
-combineSrcSpans start end
- = case row1 `compare` row2 of
- LT -> SpanMultiLine row1 col1 row2 col2
- _ -> SpanMultiLine row2 col2 row1 col1
- where
- row1 = startRow start
- col1 = startCol start
- row2 = endRow end
- col2 = endCol end
-
-
-startRow :: SrcSpan -> Int
-startRow (SpanMultiLine { span_start_row = row }) = row
-
-endRow :: SrcSpan -> Int
-endRow (SpanMultiLine { span_end_row = row }) = row
-
-startCol :: SrcSpan -> Int
-startCol (SpanMultiLine { span_start_column = col }) = col
-
-endCol :: SrcSpan -> Int
-endCol (SpanMultiLine { span_end_column = col }) = col
-
-data Token
- = T10 { token_SrcSpan :: SrcSpan }
- | T11 { token_SrcSpan :: SrcSpan }
- | T12 { token_SrcSpan :: SrcSpan }
- | T13 { token_SrcSpan :: SrcSpan }
- | T14 { token_SrcSpan :: SrcSpan }
- | T15 { token_SrcSpan :: SrcSpan }
- | T16 { token_SrcSpan :: SrcSpan }
- | T17 { token_SrcSpan :: SrcSpan }
- | T18 { token_SrcSpan :: SrcSpan }
- | T19 { token_SrcSpan :: SrcSpan }
- | T20 { token_SrcSpan :: SrcSpan }
- | T21 { token_SrcSpan :: SrcSpan }
- | T22 { token_SrcSpan :: SrcSpan }
- | T23 { token_SrcSpan :: SrcSpan }
- | T24 { token_SrcSpan :: SrcSpan }
-
-instance Span Token where
- getSpan = token_SrcSpan
-
-data Expr
- = E10 { expr_SrcSpan :: SrcSpan }
- | E11 { expr_SrcSpan :: SrcSpan }
- | E12 { expr_SrcSpan :: SrcSpan }
- | E13 { expr_SrcSpan :: SrcSpan }
- | E14 { expr_SrcSpan :: SrcSpan }
- | E15 { expr_SrcSpan :: SrcSpan }
- | E16 { expr_SrcSpan :: SrcSpan }
- | E17 { expr_SrcSpan :: SrcSpan }
- | E18 { expr_SrcSpan :: SrcSpan }
- | E19 { expr_SrcSpan :: SrcSpan }
- | E20 { expr_SrcSpan :: SrcSpan }
- | E21 { expr_SrcSpan :: SrcSpan }
- | E22 { expr_SrcSpan :: SrcSpan }
- | E23 { expr_SrcSpan :: SrcSpan }
- | E24 { expr_SrcSpan :: SrcSpan }
-
-instance Span Expr where
- getSpan = expr_SrcSpan
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3983.hs b/testsuite/tests/ghc-regress/simplCore/should_run/T3983.hs
deleted file mode 100644
index 7a665256b1..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3983.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Main where
-import T3983_Foo
-import T3983_Bar
-
-main = catchX (foo False True) >>= print \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3983.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/T3983.stdout
deleted file mode 100644
index bc59c12aa1..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3983.stdout
+++ /dev/null
@@ -1 +0,0 @@
-False
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3983_Bar.hs b/testsuite/tests/ghc-regress/simplCore/should_run/T3983_Bar.hs
deleted file mode 100644
index ee6fe36e86..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3983_Bar.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-module T3983_Bar where
-import Data.Dynamic
-import Control.Exception
-import Control.Monad (unless)
-
-type Assertion = IO ()
-
-data X = X String deriving (Show, Typeable)
-
-instance Exception X
-
-throwX = throw.X
-
-catchX action = do { action; return True; } `catches` [Handler (\(X _) -> return False)] \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T3983_Foo.hs b/testsuite/tests/ghc-regress/simplCore/should_run/T3983_Foo.hs
deleted file mode 100644
index b2519632a9..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T3983_Foo.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module T3983_Foo where
-
-import Control.Monad (unless)
-import Control.Exception
-import T3983_Bar
-
-foo :: Bool -> Bool -> IO ()
-foo a b = unless a $ throwX (if b then "" else "")
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T4814.hs b/testsuite/tests/ghc-regress/simplCore/should_run/T4814.hs
deleted file mode 100644
index 45551ffd23..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T4814.hs
+++ /dev/null
@@ -1,39 +0,0 @@
--- This test exposes the bug in GHC 7.0.1 (and earlier)
--- which did the following rule rewrite:
---
--- f (let v = 2 in g v) (let v = 3 in g v)
--- ---> let v = 2 in let v = 3 in g v + g v
---
--- which is wrong because of the shadowing of v
-
-module Main where
-foo :: Int -> Int
-{-# INLINE foo #-}
-foo x = g (bar (x,x))
-
-bar :: (Int,Int) -> Int
-{-# NOINLINE bar #-}
-bar (x,y) = x
-
-baz :: Int -> Int
-{-# NOINLINE baz #-}
-baz x = x
-
-f :: Int -> Int -> Int
-{-# NOINLINE f #-}
-f x y = x+y
-
-g :: Int -> Int
-{-# NOINLINE g #-}
-g x = x
-
-{-# RULES
-
- "f/g" [1] forall x y. f (g x) (g y) = x + y
-
- #-}
-
-main = print $ f (foo (baz 1)) (foo (baz 2))
--- Should print 3
--- Bug means that it prints 4
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T4814.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/T4814.stdout
deleted file mode 100644
index 00750edc07..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T4814.stdout
+++ /dev/null
@@ -1 +0,0 @@
-3
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T5315.hs b/testsuite/tests/ghc-regress/simplCore/should_run/T5315.hs
deleted file mode 100644
index 5b2ff39346..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T5315.hs
+++ /dev/null
@@ -1,89 +0,0 @@
-{-# LANGUAGE UnicodeSyntax #-}
-{-# LANGUAGE EmptyDataDecls #-}
-{-# LANGUAGE TypeOperators #-}
-{-# LANGUAGE ScopedTypeVariables #-}
-{-# LANGUAGE GADTs #-}
-{-# LANGUAGE TypeFamilies #-}
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE FlexibleInstances #-}
-{-# LANGUAGE UndecidableInstances #-}
-
-infixr 7 :*, .*
-infix 8 :*:, .*.
-
-data HNil
-data α :* β
-type HSingle α = α :* HNil
-type α :*: β = α :* β :* HNil
-
-data HList l where
- HNil ∷ HList HNil
- (:*) ∷ α → HList t → HList (α :* t)
-
-(.*) ∷ α → HList t → HList (α :* t)
-(.*) = (:*)
-
-(.*.) ∷ α → β → HList (α :*: β)
-a .*. b = a .* b .* HNil
-
-data First
-data Next p
-
-data HIndex i where
- First ∷ HIndex First
- Next ∷ HIndex p → HIndex (Next p)
-
-class (l ~ (HHead l :* HTail l)) ⇒ HNonEmpty l where
- type HHead l
- type HTail l
-
-instance HNonEmpty (h :* t) where
- type HHead (h :* t) = h
- type HTail (h :* t) = t
-
-hHead ∷ HNonEmpty l ⇒ HList l → HHead l
-hHead (h :* _) = h
-hHead _ = undefined
-
-hTail ∷ HNonEmpty l ⇒ HList l → HList (HTail l)
-hTail (_ :* t) = t
-hTail _ = undefined
-
-data HFromWitness n l where
- HFromFirst ∷ HFromWitness First l
- HFromNext ∷ (HNonEmpty l, HFromClass p (HTail l),
- HTail (HFrom (Next p) l) ~ HFrom (Next p) (HTail l))
- ⇒ HFromWitness (Next p) l
-
-class HFromClass n l where
- type HFrom n l
- hFromWitness ∷ HFromWitness n l
-
-instance HFromClass First l where
- type HFrom First l = l
- hFromWitness = HFromFirst
-
-instance (HNonEmpty l, HFromClass p (HTail l)) ⇒ HFromClass (Next p) l where
- type HFrom (Next p) l = HFrom p (HTail l)
- hFromWitness = case hFromWitness ∷ HFromWitness p (HTail l) of
- HFromFirst → HFromNext
- HFromNext → HFromNext
-
-hFrom ∷ ∀ n l . HFromClass n l ⇒ HIndex n → HList l → HList (HFrom n l)
-hFrom First l = l
-hFrom (Next p) l = case hFromWitness ∷ HFromWitness n l of
- HFromNext → hFrom p (hTail l)
- _ → undefined
-
-type HNth n l = HHead (HFrom n l)
-
-hNth ∷ ∀ n l . (HFromClass n l, HNonEmpty (HFrom n l))
- ⇒ HIndex n → HList l → HNth n l
-hNth First l = hHead l
-hNth (Next p) l = case hFromWitness ∷ HFromWitness n l of
- HFromNext → hNth p (hTail l)
- _ → undefined
-
-main = putStrLn $ hNth (Next First) (0 .*. "Test")
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/T5315.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/T5315.stdout
deleted file mode 100644
index 345e6aef71..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/T5315.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Test
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/all.T b/testsuite/tests/ghc-regress/simplCore/should_run/all.T
deleted file mode 100644
index 174fa180c8..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/all.T
+++ /dev/null
@@ -1,47 +0,0 @@
-# Args to compile_and_run are:
-# extra compile flags
-# extra run flags
-# expected process return value, if not zero
-
-# Only compile with optimisation
-def f( opts ):
- opts.only_ways = ['optasm']
-
-setTestOpts(f)
-
-test('simplrun001', normal, compile_and_run, [''])
-test('simplrun002', normal, compile_and_run, [''])
-test('simplrun003', normal, compile_and_run, [''])
-test('simplrun004', normal, compile_and_run, [''])
-test('simplrun005', normal, compile_and_run, [''])
-
-test('simplrun007', normal, compile_and_run, [''])
-test('simplrun008', normal, compile_and_run, [''])
-test('simplrun009', normal, compile_and_run, [''])
-test('simplrun010', composes([extra_run_opts('24 16 8'),
- exit_code(1)])
- , compile_and_run, [''])
-
-# Really we'd like to run T2486 too, to check that its
-# runtime has not gone up, but here I just compile it so that
-# the output of -ddump-rules can be compared
-test('T2486', normal, compile, [''])
-test('T2756', normal, compile_and_run, [''])
-test('T3437', extra_run_opts('+RTS -M10m'), compile_and_run, [''])
-
-test('SeqRule', only_ways(['optasm']), compile_and_run, [''])
-
-test('T3403', normal, compile_and_run, ['-package containers'])
-test('T3591', normal, compile_and_run, [''])
-test('T4814', normal, compile_and_run, [''])
-
-# Run this test *without* optimisation too
-test('T3959', only_ways(['normal','optasm']), compile_and_run, [''])
-test('T3983', [only_ways(['normal','optasm']),
- extra_clean(['T3983_Foo.hi','T3983_Foo.o','T3983_Bar.hi','T3983_Bar.o',])],
- multimod_compile_and_run,
- ['T3983',''])
-test('T3972', extra_clean(['T3972A.hi', 'T3972A.o']),
- compile_and_run,
- [''])
-test('T5315', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun001.hs b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun001.hs
deleted file mode 100644
index 6cbbf76a91..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun001.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !!! Test filter fusion
-
--- In GHC 4.06, the filterFB rule was back to front, which
--- made this program hit the "error foo" case instead of
--- working fine.
-
-
-module Main where
-
-main :: IO ()
-main = print (length (filter (not . foo)
- (filter (const False) [Nothing])))
- where foo (Just x) = x
- foo _ = error "foo"
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun001.stderr b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun001.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun001.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun001.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun001.stdout
deleted file mode 100644
index 573541ac97..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-0
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun002.hs b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun002.hs
deleted file mode 100644
index c6d9267d40..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun002.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-
--- !!! A rules test
--- At one time the rule got too specialised a type:
---
--- _R "ffoo" forall {@ a1 v :: (a1, ((), ()))}
--- fst @ a1 @ () (sndSnd @ a1 @ () @ () v) = fst @ a1 @ ((), ()) v
-
-
-module Main where
-
-import System.IO
-import System.IO.Unsafe ( unsafePerformIO )
-
-{-# NOINLINE [0] sndSnd #-}
--- Dont inline till last, to give the rule a chance
-sndSnd (a,(b,c)) = (a,c)
-
-trace x y = unsafePerformIO (hPutStr stderr x >> hPutStr stderr "\n" >> return y)
-
-{-# RULES "foo" forall v . fst (sndSnd v) = trace "Yes" (fst v) #-}
-
-main :: IO ()
-main = print (fst (sndSnd (True, (False,True))))
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun002.stderr b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun002.stderr
deleted file mode 100644
index dcd7a5d6d5..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun002.stderr
+++ /dev/null
@@ -1 +0,0 @@
-Yes
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun002.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun002.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun002.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun003.hs b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun003.hs
deleted file mode 100644
index 45aa73578e..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun003.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE UnboxedTuples #-}
-
--- O2 to get CSE
-
-module Main where
-
-f :: Int -> (# Int, Int #)
-f 0 = (# 1,2 #)
-f n = f (n-1)
-
-{-# NOINLINE g #-}
-g x = case f x of
- (# a,b #) -> if a>0
- then f x -- CSE opportunity
- else (# b,a #)
-
--- GHC 6.2 wrongly optimised g to:
--- case f x of t
--- (# a,b #) -> if a>0 then
--- t -- WRONG
--- else (# b,a #)
-
-main = case g 2 of (# a,b #) -> print a
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun003.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun003.stdout
deleted file mode 100644
index d00491fd7e..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun003.stdout
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun004.hs b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun004.hs
deleted file mode 100644
index 16e7566ee2..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun004.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-module Main where
-
--- A test for loss of sharing. GHC 6.4.1 did a bogus preInlineUnconditionally
-
-import Control.Monad ( guard )
-
-expensive 0 = True
-expensive 1 = False
-expensive n = expensive (n-2)
-
-f g = if expensive (1000000*(fst g)) then odd else even
-
----------------------------------------------------------
--- The key point is that the (c g) call should not get pushed inside the \x,
--- as happened in 6.4.1. Doing so loses laziness, and this test shows up
--- the difference in performance
-gen_sucW grow c g
- = \ x -> grow g x >>= \ y -> do guard $ check y; return y
- where
- check = c g
-
-sucW = gen_sucW (\ g x -> map (+x) [fst g..snd g]) f (11,500000)
-
-main = print (sum $ sucW 11,sum $ sucW 12)
-
--- Becuase this version uses a case expression, the bug
--- doesn't happen and execution is much faster
-gen_sucC grow c g = case c g of
- check -> \ x -> grow g x >>= \ y -> do guard $ check y; return y
-
-sucC = gen_sucC (\ g x -> map (+x) [fst g..snd g]) f (11,500000)
-
-mainC = print (sum $ sucC 11,sum $ sucC 12)
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun004.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun004.stdout
deleted file mode 100644
index 7cdf0c5bab..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun004.stdout
+++ /dev/null
@@ -1 +0,0 @@
-(62502999915,62502999915)
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun005.hs b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun005.hs
deleted file mode 100644
index d177568e4b..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun005.hs
+++ /dev/null
@@ -1,47 +0,0 @@
-module Main where
-
-main = print (fib' 100)
- -- This will time out unless memoing works properly
-
-data Nat = Z | S Nat
- deriving (Show, Eq)
-
-memo f = g
- where
- fz = f Z
- fs = memo (f . S)
- g Z = fz
- g (S n) = fs n
- -- It is a BAD BUG to inline 'fs' inside g
- -- and that happened in 6.4.1, resulting in exponential behaviour
-
--- memo f = g (f Z) (memo (f . S))
--- = g (f Z) (g (f (S Z)) (memo (f . S . S)))
--- = g (f Z) (g (f (S Z)) (g (f (S (S Z))) (memo (f . S . S . S))))
-
-fib' :: Nat -> Integer
-fib' = memo fib
- where
- fib Z = 0
- fib (S Z) = 1
- fib (S (S n)) = fib' (S n) + fib' n
-
-instance Num Nat where
- fromInteger 0 = Z
- fromInteger n = S (fromInteger (n - 1))
- Z + n = n
- S m + n = S (m + n)
- Z * n = Z
- S m * n = (m * n) + n
- Z - n = Z
- S m - Z = S m
- S m - S n = m - n
-
-instance Enum Nat where
- succ = S
- pred Z = Z
- pred (S n) = n
- toEnum = fromInteger . toInteger
- fromEnum Z = 0
- fromEnum (S n) = fromEnum n + 1
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun005.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun005.stdout
deleted file mode 100644
index c21fc4a1b9..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun005.stdout
+++ /dev/null
@@ -1 +0,0 @@
-354224848179261915075
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun007.hs b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun007.hs
deleted file mode 100644
index 12bfb2d335..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun007.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
--- Actually, this exercises prelude/PrelRules, but this is the closest
--- place I could find to put it...
-
-import GHC.Exts
-import Numeric
-import Data.Bits
-
-main = do phex (I# (uncheckedIShiftL# (negateInt# 5#) 2#))
- phex (I# (uncheckedIShiftRA# (negateInt# 5#) 1#))
- phex (I# (uncheckedIShiftRL# (negateInt# 5#) 1#))
- phex (W# (uncheckedShiftL# (int2Word# (negateInt# 5#)) 2#))
- phex (W# (uncheckedShiftRL# (int2Word# (negateInt# 5#)) 1#))
-
-phex x = putStrLn (showSigned (\x -> ("0x"++) . showHex x) 0 x "")
-
-{- Too wordsize-dependant
-phex x = putStrLn (hex x)
-hex x = "0x" ++ [onedigit (fromIntegral ((x `shiftR` (i*4)) .&. 0xF))
- | i <- [digits-1,digits-2..0]]
- where
- digits = bitSize x `div` 4
- onedigit n = "0123456789abcdef" !! n
--}
-
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun007.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun007.stdout
deleted file mode 100644
index 3283b5c891..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun007.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
--0x14
--0x3
-0x7ffffffd
-0xffffffec
-0x7ffffffd
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun007.stdout-ws-64 b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun007.stdout-ws-64
deleted file mode 100644
index 47e0adb0d3..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun007.stdout-ws-64
+++ /dev/null
@@ -1,5 +0,0 @@
--0x14
--0x3
-0x7ffffffffffffffd
-0xffffffffffffffec
-0x7ffffffffffffffd
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun008.hs b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun008.hs
deleted file mode 100644
index 782f0e40ac..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun008.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-
-module Main where
-import Data.Char
-
-{-# NOINLINE f #-}
-f :: Int -> String
-f x = "NOT FIRED"
-
-{-# NOINLINE neg #-}
-neg :: Int -> Int
-neg = negate
-
-{-# RULES
- "f" forall (c::Char->Int) (x::Char). f (c x) = "RULE FIRED"
- #-}
-
-main = do { print (f (ord 'a')) -- Rule should fire
- ; print (f (neg 1)) } -- Rule should not fire
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun008.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun008.stdout
deleted file mode 100644
index e04622af3d..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun008.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-"RULE FIRED"
-"NOT FIRED"
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun009.hs b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun009.hs
deleted file mode 100644
index 826cdeef77..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun009.hs
+++ /dev/null
@@ -1,149 +0,0 @@
-{-# LANGUAGE ExistentialQuantification #-}
-
--- This test is really meant for human looking; do a -ddump-simpl.
-
--- The definition that you want to look at is for foo.
--- It produces a nested unfold that should look something
--- like the code below. Note the 'lvl1_shW'. It is BAD
--- if this is a lambda instead; you get a lot more allocation
--- See Note [Escaping a value lambda] in SetLevels
-
-
-{-
- $wunfold_shU =
- \ (ww_she :: [[a_abm]]) (ww1_shf :: Data.Maybe.Maybe (Stream.Stream a_abm)) ->
- case ww1_shf of wild2_afo {
- Data.Maybe.Nothing ->
- case ww_she of wild_ad6 {
- [] -> GHC.Base.[] @ a_abm;
- : x_ado xs1_adp ->
- $wunfold_shU
- xs1_adp
- (Data.Maybe.Just
- @ (Stream.Stream a_abm) (Stream.Stream @ a_abm @ [a_abm]
- *** lvl1_shW ***
- x_ado))
- };
- Data.Maybe.Just ds3_afJ ->
- case ds3_afJ of wild3_afL { Stream.Stream @ s1_afN stepb_afO sb_afP ->
- case stepb_afO sb_afP of wild4_afR {
- Stream.Done -> $wunfold_shU ww_she (Data.Maybe.Nothing @ (Stream.Stream a_abm));
- Stream.Yield x_afV sb'_afW ->
- GHC.Base.:
- @ a_abm
- x_afV
- ($wunfold_shU
- ww_she
- (Data.Maybe.Just
- @ (Stream.Stream a_abm) (Stream.Stream @ a_abm @ s1_afN stepb_afO sb'_afW)));
- Stream.Skip sb'_afZ ->
- $wunfold_shU
- ww_she
- (Data.Maybe.Just
- @ (Stream.Stream a_abm) (Stream.Stream @ a_abm @ s1_afN stepb_afO sb'_afZ))
- }
- }
--}
-
-
-
-module Main( main, foo ) where
--- Must export foo to make the issue show up
-
-import Prelude hiding ( concatMap, map)
-
-main = print (sum (foo [[1,2], [3,4,5]]))
-
-foo :: Num a => [[a]] -> [a]
-foo xss = Main.concatMap (\xs -> Main.map (+1) xs) xss
-
-
-instance StreamableSequence [] where
- stream = listToStream
- unstream = streamToList
- -- These inline pragmas are useless (see #5084)
-{-
- {-# INLINE stream #-}
- {-# INLINE unstream #-}
--}
-
-listToStream :: [a] -> Stream a
-listToStream xs = Stream next xs
- where next [] = Done
- next (x:xs) = Yield x xs
-{-# INLINE [0] listToStream #-}
-
-streamToList :: Stream a -> [a]
-streamToList (Stream next s) = unfold s
- where unfold s =
- case next s of
- Done -> []
- Skip s' -> unfold s'
- Yield x s' -> x : unfold s'
-{-# INLINE [0] streamToList #-}
-
-{-# RULES
-"stream/unstream"
- forall s. listToStream (streamToList s) = s
- #-}
-
-map :: (a -> b) -> [a] -> [b]
-map f = unstream . mapS f . stream
-{-# INLINE map #-}
-
-concatMap :: (a -> [b]) -> [a] -> [b]
-concatMap f = unstream . concatMapS (stream . f) . stream
-{-# INLINE concatMap #-}
-
-
-data Stream a = forall s. Stream (s -> Step a s) s
-
-data Step a s = Done
- | Yield a s
- | Skip s
-
-class StreamableSequence seq where
- stream :: seq a -> Stream a
- unstream :: Stream a -> seq a
-
- -- axiom: stream . unstream = id
- -- These inline pragmas are useless (see #5084)
-{-
- {-# INLINE stream #-}
- {-# INLINE unstream #-}
--}
-
-{-
---version that does not require the sequence type
---to be polymorphic in its elements:
-
-class StreamableSequence seq a | seq -> a where
- stream :: seq -> Stream a
- unstream :: Stream a -> seq
--}
-
-
-mapS :: (a -> b) -> Stream a -> Stream b
-mapS f (Stream next s0) = Stream next' s0
- where next' s = case next s of
- Done -> Done
- Skip s' -> Skip s'
- Yield x s' -> Yield (f x) s'
-{-# INLINE [0] mapS #-}
-
-
-concatMapS :: (a -> Stream b) -> Stream a -> Stream b
-concatMapS f (Stream step s) = Stream step' (s, Nothing)
- where step' (s, Nothing) =
- case step s of
- Yield x s' -> Skip (s', Just (f x))
- Skip s' -> Skip (s', Nothing)
- Done -> Done
-
- step' (s, Just (Stream stepb sb)) =
- case stepb sb of
- Yield x sb' -> Yield x (s, Just (Stream stepb sb'))
- Skip sb' -> Skip (s, Just (Stream stepb sb'))
- Done -> Skip (s, Nothing)
-{-# INLINE [0] concatMapS #-}
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun009.stdout b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun009.stdout
deleted file mode 100644
index 209e3ef4b6..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun009.stdout
+++ /dev/null
@@ -1 +0,0 @@
-20
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun010.hs b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun010.hs
deleted file mode 100644
index 0fbc33ac81..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun010.hs
+++ /dev/null
@@ -1,313 +0,0 @@
-{-# LANGUAGE ForeignFunctionInterface, MagicHash, UnboxedTuples #-}
-
--- From trac #1947
-
-module Main(main) where
-
-import System.IO.Unsafe
-import System.IO
-import System.Environment
-import System.Exit
-import Foreign.C.Types
-import Data.Char(ord,chr)
-
-
--- low level imports
-import GHC.Base (realWorld#)
-import GHC.IOBase (IO(IO), unIO, unsafePerformIO)
-import GHC.Prim (State#,RealWorld)
-
-
--- FFI replacements for Haskell stuff
-foreign import ccall unsafe "stdio.h getchar" getchar :: IO CInt
-foreign import ccall unsafe "ctype.h iswspace" isspace :: CInt -> CInt
-
-
-skipCAF :: State# RealWorld -> a -> a
-skipCAF _ x = x
-
-
--- IO Subsystem
--- Unboxed IO is more efficient, but requires a certain level of
--- optimisation, so provide a BOXED_IO fallback
-
-data RW_Box = RW_Box (State# RealWorld)
-type RW_Pair a = (RW_Box, a)
-
-fromIO :: IO a -> (RW_Box -> RW_Pair a)
-fromIO a (RW_Box r) = case unIO a r of (# r, x #) -> (RW_Box r, x)
-
-toIO :: (RW_Box -> RW_Pair a) -> IO a
-toIO f = IO $ \r -> case f (RW_Box r) of (RW_Box r, x) -> (# r, x #)
-
--- IO functions not dependent on the IO primitives
-main :: IO ()
-main = toIO main_generated
-
-typeRealWorld :: RW_Box -> RW_Box
-typeRealWorld x = x
-
-overlay_get_char :: RW_Box -> RW_Pair Int
-overlay_get_char = fromIO $ do
- c <- getchar
- return $ fromIntegral c
-
-system_IO_hPutChar :: Handle -> Int -> RW_Box -> RW_Pair ()
-system_IO_hPutChar h c = fromIO $ hPutChar h (chr c)
-
-overlay_errorIO :: [Int] -> RW_Box -> RW_Pair a
-overlay_errorIO x r = case fromIO (putStrLn ("ERROR: " ++ map chr x)) r of
- (r, _) -> fromIO exitFailure r
-
-system_Environment_getArgs :: RW_Box -> RW_Pair [[Int]]
-system_Environment_getArgs r = case (fromIO getArgs) r of
- (r, s) -> (r, map str_ s)
-
-overlay_supero_wrap x = x
-
-
--- Primitives
-prelude_seq = seq
-
-prelude_error x = error (map chr x)
-
-aDD_W = (+) :: Int -> Int -> Int
-mUL_W = (*) :: Int -> Int -> Int
-sUB_W = (-) :: Int -> Int -> Int
-eQ_W = (==) :: Int -> Int -> Bool
-nE_W = (/=) :: Int -> Int -> Bool
-gT_W = (>) :: Int -> Int -> Bool
-gE_W = (>=) :: Int -> Int -> Bool
-lT_W = (<) :: Int -> Int -> Bool
-lE_W = (<=) :: Int -> Int -> Bool
-qUOT = quot :: Int -> Int -> Int
-rEM = rem :: Int -> Int -> Int
-nEG_W = negate :: Int -> Int
-yHC_Primitive_primIntAbs = abs :: Int -> Int
-yHC_Primitive_primIntSignum = signum :: Int -> Int
-yHC_Primitive_primIntegerAdd = (+) :: Integer -> Integer -> Integer
-yHC_Primitive_primIntegerEq = (==) :: Integer -> Integer -> Bool
-yHC_Primitive_primIntegerFromInt = toInteger :: Int -> Integer
-yHC_Primitive_primIntegerGe = (>=) :: Integer -> Integer -> Bool
-yHC_Primitive_primIntegerGt = (>) :: Integer -> Integer -> Bool
-yHC_Primitive_primIntegerLe = (<=) :: Integer -> Integer -> Bool
-yHC_Primitive_primIntegerMul = (*) :: Integer -> Integer -> Integer
-yHC_Primitive_primIntegerNe = (/=) :: Integer -> Integer -> Bool
-yHC_Primitive_primIntegerNeg = negate :: Integer -> Integer
-yHC_Primitive_primIntegerQuot = quot :: Integer -> Integer -> Integer
-yHC_Primitive_primIntegerQuotRem = quotRem :: Integer -> Integer -> (Integer, Integer)
-yHC_Primitive_primIntegerRem = rem :: Integer -> Integer -> Integer
-yHC_Primitive_primIntFromInteger = fromInteger :: Integer -> Int
-yHC_Primitive_primIntegerLt = (<) :: Integer -> Integer -> Bool
-yHC_Primitive_primIntegerSub = (-) :: Integer -> Integer -> Integer
-
-aDD_D = (+) :: Double -> Double -> Double
-sUB_D = (-) :: Double -> Double -> Double
-lT_D = (<) :: Double -> Double -> Bool
-lE_D = (<=) :: Double -> Double -> Bool
-gT_D = (>) :: Double -> Double -> Bool
-gE_D = (>=) :: Double -> Double -> Bool
-eQ_D = (==) :: Double -> Double -> Bool
-mUL_D = (*) :: Double -> Double -> Double
-nEG_D = (negate) :: Double -> Double
-nE_D = (/=) :: Double -> Double -> Bool
-sLASH_D = (/) :: Double -> Double -> Double
-yHC_Primitive_primDecodeDouble = decodeFloat :: Double -> (Integer,Int)
-yHC_Primitive_primDoubleACos = acos :: Double -> Double
-yHC_Primitive_primDoubleASin = asin :: Double -> Double
-yHC_Primitive_primDoubleATan = atan :: Double -> Double
-yHC_Primitive_primDoubleAbs = abs :: Double -> Double
-yHC_Primitive_primDoubleCos = cos :: Double -> Double
-yHC_Primitive_primDoubleExp = exp :: Double -> Double
-yHC_Primitive_primDoubleFromInteger = fromInteger :: Integer -> Double
-yHC_Primitive_primDoubleLog = log :: Double -> Double
-yHC_Primitive_primDoublePow = (**) :: Double -> Double -> Double
-yHC_Primitive_primDoubleSignum = signum :: Double -> Double
-yHC_Primitive_primDoubleSin = sin :: Double -> Double
-yHC_Primitive_primDoubleSqrt = sqrt :: Double -> Double
-yHC_Primitive_primDoubleTan = tan :: Double -> Double
-yHC_Primitive_primEncodeDouble = encodeFloat :: Integer -> Int -> Double
-
-
-
-
--- things which Yhc decides should be hopelessly slow
-prelude_Int_Integral_mod = mod :: Int -> Int -> Int
-prelude_Integer_Integral_div = div :: Integer -> Integer -> Integer
-prelude_Integer_Integral_mod = mod :: Integer -> Integer -> Integer
-prelude_Integer_Num_signum = signum :: Integer -> Integer
-prelude_Integer_Num_abs = abs :: Integer -> Integer
-
-
-int_ x = x :: Int
-chr_ x = ord x
-str_ x = map chr_ x
-
-
-system_IO_stdin = stdin
-system_IO_stdout = stdout
-
-data_Char_isSpace :: Int -> Bool
-data_Char_isSpace c = isspace (toEnum c) /= 0
-
-
-
-type ReadsPrec a = Int -> [Int] -> [(a,[Int])]
-
-
-prelude_Int_Read_readsPrec :: ReadsPrec Int
-prelude_Int_Read_readsPrec p s = [(a, str_ b) | (a,b) <- readsPrec p (map chr s)]
-prelude_Int_Read_readList = undefined
-
-prelude_Integer_Read_readsPrec :: ReadsPrec Integer
-prelude_Integer_Read_readsPrec p s = [(a, str_ b) | (a,b) <- readsPrec p (map chr s)]
-prelude_Integer_Read_readList = undefined
-
-prelude_Double_Read_readsPrec :: ReadsPrec Double
-prelude_Double_Read_readsPrec p s = [(a, str_ b) | (a,b) <- readsPrec p (map chr s)]
-prelude_Double_Read_readList = undefined
-
-prelude_Char_Read_readsPrec :: ReadsPrec Int
-prelude_Char_Read_readsPrec p s = [(chr_ (a :: Char), str_ b) | (a,b) <- readsPrec p (map chr s)]
-
-prelude_Char_Show_showList :: [Int] -> [Int] -> [Int]
-prelude_Char_Show_showList value rest = str_ (show (map chr value)) ++ rest
-
-prelude_Char_Show_showsPrec :: Int -> Int -> [Int] -> [Int]
-prelude_Char_Show_showsPrec prec i rest = str_ (showsPrec prec (chr i) []) ++ rest
-
-prelude_Int_Show_showsPrec :: Int -> Int -> [Int] -> [Int]
-prelude_Int_Show_showsPrec prec i rest = str_ (showsPrec prec i []) ++ rest
-
-prelude_Integer_Show_showsPrec :: Int -> Integer -> [Int] -> [Int]
-prelude_Integer_Show_showsPrec prec i rest = str_ (showsPrec prec i []) ++ rest
-
-prelude_Double_Show_showsPrec :: Int -> Double -> [Int] -> [Int]
-prelude_Double_Show_showsPrec prec i rest = str_ (showsPrec prec i []) ++ rest
-
-
-prelude_'amp'amp27 v1 v2 =
- case (data_Char_isSpace v1) of
- True ->
- case v2 of
- [] -> True
- (:) v4 v5 -> prelude_'amp'amp27 v4 v5
- False -> False
-
-prelude_LAMBDA22 v1 v2 =
- case v1 of
- (,) v267 v268 ->
- case v268 of
- [] -> prelude_LAMBDA24 v267 v2
- (:) v7 v8 ->
- let v11 = prelude_'amp'amp27 v7 v8
- in case v11 of
- True -> prelude_LAMBDA24 v267 v2
- False -> prelude__foldr25 v2
-
-prelude_LAMBDA24 v1 v2 = (:) v1 (prelude__foldr25 v2)
-
-prelude_IO_Monad_fail41 v1 =
- overlay_errorIO
- (skipCAF realWorld# (str_ "pattern-match failure in do expression"))
- v1
-
-prelude__foldr25 v1 =
- case v1 of
- [] -> []
- (:) v296 v297 -> prelude_LAMBDA22 v296 v297
-
-f17 uncaf = skipCAF uncaf (str_ "Prelude.read: no parse")
-
-f18 v1 v2 =
- case v1 of
- (,) v176 v177 ->
- case v177 of
- [] -> f20 v176 v2
- (:) v7 v8 ->
- let v11 = prelude_'amp'amp27 v7 v8
- in case v11 of
- True -> f20 v176 v2
- False ->
- case v2 of
- [] -> prelude_error (f17 realWorld#)
- (:) v4 v5 -> f18 v4 v5
-
-f20 v1 v2 =
- case v2 of
- [] -> v1
- (:) v257 v258 ->
- let v9 = prelude_LAMBDA22 v257 v258
- in case v9 of
- [] -> v1
- (:) v10 v11 ->
- prelude_error
- (skipCAF realWorld# (str_ "Prelude.read: ambiguous parse"))
-
-f34 v1 v2 v3 =
- let v336 = f34 v1 v2 v3
- in v336
-
-f38 v1 v2 =
- case v1 of
- [] -> system_IO_hPutChar system_IO_stdout (chr_ '\n') v2
- (:) v350 v351 ->
- case (system_IO_hPutChar
- system_IO_stdout
- v350
- (typeRealWorld v2)) of
- ( v7 , v8 ) -> f38 v351 v7
-
-main_generated v1 =
- case (system_Environment_getArgs (typeRealWorld v1)) of
- ( v3 , v4 ) ->
- case v4 of
- (:) v7 v8 ->
- case v8 of
- (:) v9 v12 ->
- case v12 of
- (:) v13 v14 ->
- case v14 of
- [] ->
- case (prelude_Int_Show_showsPrec
- (int_ 0)
- (let v8 =
- case (prelude_Int_Read_readsPrec
- (int_ 0)
- v7) of
- [] -> prelude_error (f17 realWorld#)
- (:) v12 v14 -> f18 v12 v14
- v10 =
- case (prelude_Int_Read_readsPrec
- (int_ 0)
- v9) of
- [] -> prelude_error (f17 realWorld#)
- (:) v15 v16 -> f18 v15 v16
- v11 =
- case (prelude_Int_Read_readsPrec
- (int_ 0)
- v13) of
- [] -> prelude_error (f17 realWorld#)
- (:) v17 v18 -> f18 v17 v18
- in case (lT_W v10 v8) of
- True ->
- let v7 = f34 v8 v10 v11
- in v7
- False -> v11)
- (skipCAF realWorld# (str_ ""))) of
- [] ->
- system_IO_hPutChar
- system_IO_stdout
- (chr_ '\n')
- (typeRealWorld v3)
- (:) v11 v12 ->
- case (system_IO_hPutChar
- system_IO_stdout
- v11
- (typeRealWorld (typeRealWorld v3))) of
- ( v7 , v8 ) -> f38 v12 v7
- (:) v15 v16 -> prelude_IO_Monad_fail41 v3
- [] -> prelude_IO_Monad_fail41 v3
- [] -> prelude_IO_Monad_fail41 v3
- [] -> prelude_IO_Monad_fail41 v3
-
diff --git a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun010.stderr b/testsuite/tests/ghc-regress/simplCore/should_run/simplrun010.stderr
deleted file mode 100644
index 57647f1f92..0000000000
--- a/testsuite/tests/ghc-regress/simplCore/should_run/simplrun010.stderr
+++ /dev/null
@@ -1 +0,0 @@
-simplrun010: <<loop>>
diff --git a/testsuite/tests/ghc-regress/stranal/Makefile b/testsuite/tests/ghc-regress/stranal/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/stranal/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/Makefile b/testsuite/tests/ghc-regress/stranal/should_compile/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/T1988.hs b/testsuite/tests/ghc-regress/stranal/should_compile/T1988.hs
deleted file mode 100644
index da99806ce1..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/T1988.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# OPTIONS_GHC -O2 #-}
-
--- Trac #1988: this one killed GHC 6.8.2
--- at least with -O2
-
-module ShouldCompile where
-
-newtype CFTree = CFTree (String, [CFTree])
-
-prCFTree :: CFTree -> String
-prCFTree (CFTree (_,trees)) = concatMap ps trees
- where ps t@(CFTree (_,[])) = prCFTree t
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/all.T b/testsuite/tests/ghc-regress/stranal/should_compile/all.T
deleted file mode 100644
index 5814f39f7d..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/all.T
+++ /dev/null
@@ -1,18 +0,0 @@
-# Only compile with optimisation
-setTestOpts( only_ways(['optasm']) )
-
-test('default', normal, compile, [''])
-test('fact', normal, compile, [''])
-test('fun', normal, compile, [''])
-test('goo', normal, compile, [''])
-test('ins', normal, compile, [''])
-test('map', normal, compile, [''])
-test('sim', normal, compile, [''])
-test('str001', normal, compile, [''])
-test('str002', normal, compile, [''])
-test('syn', normal, compile, [''])
-test('test', normal, compile, [''])
-test('tst', normal, compile, [''])
-test('unu', normal, compile, [''])
-test('newtype', req_profiling, compile, ['-prof -auto-all'])
-test('T1988', normal, compile, [''])
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/default.hs b/testsuite/tests/ghc-regress/stranal/should_compile/default.hs
deleted file mode 100644
index 43eb9f0633..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/default.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-module Test where
-data Boolean = FF | TT
-data Pair a b = MkPair a b
-data LList alpha = Nill | Conss alpha (LList alpha)
-data Nat = Zero | Succ Nat
-data Tree x = Leaf x | Node (Tree x) (Tree x)
-data A a = MkA a (A a)
-
-append :: LList a -> LList a -> LList a
-append xs ys = case xs of
- Conss z zs -> Conss z (append zs ys)
- v -> ys
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/default.stderr b/testsuite/tests/ghc-regress/stranal/should_compile/default.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/default.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/fact.hs b/testsuite/tests/ghc-regress/stranal/should_compile/fact.hs
deleted file mode 100644
index 9f23f9021e..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/fact.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Test where
-fact :: Int -> Int
-fact n = if n==0 then 2 else (fact n) * n
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/fact.stderr b/testsuite/tests/ghc-regress/stranal/should_compile/fact.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/fact.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/fun.hs b/testsuite/tests/ghc-regress/stranal/should_compile/fun.hs
deleted file mode 100644
index 5bab460f3f..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/fun.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Test where
-data Fun = MkFun (Fun -> Fun)
-data LList a = Nill | Conss a (LList a)
-
-g :: Fun -> Fun
-g f = f
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/fun.stderr b/testsuite/tests/ghc-regress/stranal/should_compile/fun.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/fun.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/goo.hs b/testsuite/tests/ghc-regress/stranal/should_compile/goo.hs
deleted file mode 100644
index 00282bb79e..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/goo.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module Test where
-data Goo a = Gsimpl | Gcompl ([Goo a])
-data Moo a b = Msimple | Mcompl (Moo b a)
-
-
-idGoo :: Goo a -> Goo a
-idGoo x = x
-
-idMoo :: Moo a b -> Moo a b
-idMoo x = x
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/goo.stderr b/testsuite/tests/ghc-regress/stranal/should_compile/goo.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/goo.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/ins.hs b/testsuite/tests/ghc-regress/stranal/should_compile/ins.hs
deleted file mode 100644
index a50320cefa..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/ins.hs
+++ /dev/null
@@ -1,27 +0,0 @@
--- !! TEST OF DEFACTORISATION FOR FUNCTIONS THAT DROP
--- !! POLYMORPHIC VARIABLES
-
-module Test where
-data Boolean = FF | TT
-data Pair a b = MkPair a b
-data LList alpha = Nill | Conss alpha (LList alpha)
-data Nat = Zero | Succ Nat
-data Tree x = Leaf x | Node (Tree x) (Tree x)
-data A a = MkA a (A a)
-
-append :: LList a -> LList a -> LList a
-append xs ys = case xs of
- Nill -> ys
- Conss z zs -> Conss z (append zs ys)
-
--- The following function drops @b@.
-
-flat :: Tree (Pair a b) -> LList a
-flat t = case t of
- Leaf (MkPair a b) -> Conss a Nill
- Node l r -> append (flat l) (flat r)
-
-fl :: Boolean -> LList Boolean
-fl x = flat (Leaf (MkPair TT Zero))
-
-
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/ins.stderr b/testsuite/tests/ghc-regress/stranal/should_compile/ins.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/ins.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/map.hs b/testsuite/tests/ghc-regress/stranal/should_compile/map.hs
deleted file mode 100644
index f4ec1ec769..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/map.hs
+++ /dev/null
@@ -1,32 +0,0 @@
-module Test where
-data Boolean = FF | TT
-data Pair a b = MkPair a b
-data LList alpha = Nill | Conss alpha (LList alpha)
-data Nat = Zero | Succ Nat
-data Tree x = Leaf x | Node (Tree x) (Tree x)
-data A a = MkA a (A a)
-
-{-
-map :: (a -> b) -> [a] -> [b]
-map f xs = case xs of
- [] -> []
- (y:ys) -> (f y):(map f ys)
-
-map_ide :: [[a]] -> [[a]]
-map_ide = map (\x->x)
--}
-
-my_id :: a -> a
-my_id x = x
-
-idNat :: Nat -> Nat
-idNat x = x
-
-idBool :: Boolean -> Boolean
-idBool x = x
-
-fun :: (a->b) -> a -> b
-fun f x = g f
- where
- g f = f x
-
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/map.stderr b/testsuite/tests/ghc-regress/stranal/should_compile/map.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/map.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/newtype.hs b/testsuite/tests/ghc-regress/stranal/should_compile/newtype.hs
deleted file mode 100644
index c68df28111..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/newtype.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- This one killed GHC 6.4 because it bogusly attributed
--- the CPR property to the construtor T
--- Result: a mkWWcpr crash
--- Needs -prof -auto-all to show it up
-
-module ShouldCompile where
-
-newtype T a = T { unT :: a }
-
-f = unT
-
-test cs = f $ case cs of
- [] -> T []
- (x:xs) -> T $ test cs
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/sim.hs b/testsuite/tests/ghc-regress/stranal/should_compile/sim.hs
deleted file mode 100644
index d6de6ec09d..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/sim.hs
+++ /dev/null
@@ -1,103 +0,0 @@
-module Test where
-data Boolean = FF | TT
-data Pair a b = MkPair a b
-data LList alpha = Nill | Conss alpha (LList alpha)
-data Nat = Zero | Succ Nat
-data Tree x = Leaf x | Node (Tree x) (Tree x)
-data A a = MkA a (A a)
-{-
-id :: a -> a
-id x = x
-
-idb :: Boolean -> Boolean
-idb b = b
-
-swap :: Pair a b -> Pair b a
-swap t = case t of
- MkPair x y -> MkPair y x
-
-bang :: A (A a) -> Boolean
-bang x = case x of
- MkA y ys -> TT
-
-neg :: Boolean -> Boolean
-neg b = case b of
- FF -> TT
- TT -> FF
-
-null :: LList x -> Boolean
-null l = case l of
- Nill -> TT
- _ -> FF
-
-loop :: Boolean -> a
-loop b = loop b
--}
-idl :: LList a -> LList a
-idl xs = case xs of
- Conss y ys -> Conss y (idl ys)
- _ -> Nill
-{-
-idn :: Nat -> Nat
-idn n = case n of
- Zero -> Zero
- Succ m -> Succ (idn m)
-
-add :: Nat -> Nat -> Nat
-add a b = case a of
- Zero -> b
- Succ c -> Succ (add c b)
-
-length :: LList a -> Nat
-length xs = case xs of
- Nill -> Zero
- Conss y ys -> Succ(length ys)
-
-before :: LList Nat -> LList Nat
-before xs = case xs of
- Nill -> Nill
- Conss y ys -> case y of
- Zero -> Nill
- Succ n -> Conss y (before ys)
-
-reverse :: LList a -> LList a
-reverse rs = case rs of
- Nill -> Nill
- Conss y ys -> append (reverse ys) (Conss y Nill)
-
-f :: Nat -> Nat
-f n = case n of
- Zero -> Zero
- Succ m -> Succ (g m)
-
-g :: Nat -> Nat
-g n = case n of
- Zero -> Zero
- Succ m -> Succ (f m)
-
-append :: LList a -> LList a -> LList a
-append xs ys = case xs of
- Nill -> ys
- Conss z zs -> Conss z (append zs ys)
-
-flatten :: Tree alpha -> LList alpha
-flatten t = case t of
- Leaf x -> Conss x Nill
- Node l r -> append (flatten l) (flatten r)
-
-sum :: Tree Nat -> Nat
-sum t = case t of
- Leaf t -> t
- Node l r -> add (sum l) (sum r)
-
-suml :: LList Nat -> Nat
-suml Nill = Zero
-suml (Conss n ns) = add n (suml ns)
-
-map :: (a -> b) -> LList a -> LList b
-map f xs = case xs of
- Nill -> Nill
- Conss y ys -> Conss (f y) (map f ys)
--}
-
-
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/sim.stderr b/testsuite/tests/ghc-regress/stranal/should_compile/sim.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/sim.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/str001.hs b/testsuite/tests/ghc-regress/stranal/should_compile/str001.hs
deleted file mode 100644
index 6d27a923fd..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/str001.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE DatatypeContexts #-}
-module ShouldSucceed where
-
-{-# OPTIONS -O #-}
-
-newtype Num a => Point2 a = Point2 (a,a)
-
-area2 :: Num a => Point2 a -> Point2 a -> Point2 a -> a
-area2 (Point2 (px,py)) (Point2 (qx,qy)) (Point2 (rx,ry))
- = (px-qx) * (py-ry) - (py-qy) * (px-rx)
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/str001.stderr b/testsuite/tests/ghc-regress/stranal/should_compile/str001.stderr
deleted file mode 100644
index 968ccf8885..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/str001.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-str001.hs:1:14:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
-
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/str002.hs b/testsuite/tests/ghc-regress/stranal/should_compile/str002.hs
deleted file mode 100644
index 65fb8a7ba2..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/str002.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! Recursive newtypes
--- Needs -O
--- This one made GHC < 5.00.2 go into an
--- infinite loop in the strictness analysier
-
-module Foo where
-
-newtype V = MkV V
-
-f :: V -> V
-f (MkV v) = v
-
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/str002.stderr b/testsuite/tests/ghc-regress/stranal/should_compile/str002.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/str002.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/syn.hs b/testsuite/tests/ghc-regress/stranal/should_compile/syn.hs
deleted file mode 100644
index 6693db70d9..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/syn.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- !!! THIS TEST IS FOR TYPE SYNONIMS AND FACTORISATION IN THEIR PRESENCE.
-
-module Test where
-data M a = A | B a (M a)
-data L a = N | C a (Syn a)
-type Syn b = L b
-
-idL :: L (Syn c) -> L (Syn c)
-idL N = N
-idL (C x l) = C x (idL l)
-
-idM:: M (L (Syn x)) -> M (L (Syn x))
-idM A = A
-idM (B x l) = B (idL x) (idM l)
-
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/syn.stderr b/testsuite/tests/ghc-regress/stranal/should_compile/syn.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/syn.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/test.hs b/testsuite/tests/ghc-regress/stranal/should_compile/test.hs
deleted file mode 100644
index c984c320d1..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/test.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Test where
-data LList t = Nill | Conss t (LList t)
-data BBool = TTrue | FFalse
-
-f Nill = TTrue
-f (Conss a as) = FFalse
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/test.stderr b/testsuite/tests/ghc-regress/stranal/should_compile/test.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/test.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/tst.hs b/testsuite/tests/ghc-regress/stranal/should_compile/tst.hs
deleted file mode 100644
index 561292107b..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/tst.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Test where
-a :: [a] -> [[a]]
-a x = [x]
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/tst.stderr b/testsuite/tests/ghc-regress/stranal/should_compile/tst.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/tst.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/unu.hs b/testsuite/tests/ghc-regress/stranal/should_compile/unu.hs
deleted file mode 100644
index 54bb25e9ab..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/unu.hs
+++ /dev/null
@@ -1,76 +0,0 @@
-module Test where
-data Boolean = FF | TT
-data Pair a b = Mkpair a b
-data LList alpha = Nill | Conss alpha (LList alpha)
-data Nat = Zero | Succ Nat
-data Tree t = Leaf t | Node (Tree t) (Tree t)
-data A a = MkA a (A a)
-data Foo baz = MkFoo (Foo (Foo baz))
-{-
- append1 :: LList a -> LList a -> LList a
- append1 xs ys = append2 xs
- where
- append2 xs = case xs of
- Nill -> ys
- Conss x xs -> Conss x (append3 xs)
- append3 xs = case xs of
- Nill -> ys
- Conss x xs -> Conss x (append2 xs)
-
- loop :: a -> a
- loop x = loop x
-
- hd :: LList b -> b
- hd Nill = loop
- hd (Conss y ys) = y
-
- hdb :: LList (LList b) -> LList b
- hdb = hd
-
- append :: [a] -> [a] -> [a]
- append [] ys = ys
- append (x:xs) ys = x:(append xs ys)
-
- f :: [a] -> [a]
- f y = append x (f y)
- where x = append x (f y)
--}
-app :: LList a -> LList a -> LList a
-app Nill Nill = Nill
-app xs ys = case xs of
- Nill -> ys
- Conss z zs -> Conss z (app zs ys)
-{-
- app :: LList a -> LList a -> LList a
- app xs ys = case xs of
- Nill -> case ys of
- Nill -> Nill
- Conss u us -> ap
- Conss a as -> ap
- where ap = case xs of
- Nill -> ys
- Conss z zs -> Conss z (app zs ys)
-
- app :: LList a -> LList a -> LList a
- app xs ys = case xs of
- Nill -> case ys of
- Nill -> Nill
- Conss u us -> ap xs ys
- Conss a as -> ap xs ys
-
- ap xs ys = case xs of
- Nill -> ys
- Conss z zs -> Conss z (app zs ys)
-
- ap :: LList a -> LList a -> LList a
- ap xs ys = case xs of
- Nill -> ys
- Conss z zs -> Conss z (ap zs ys)
-
- app :: LList a -> LList a -> LList a
- app xs ys = case xs of
- Nill -> case ys of
- Nill -> Nill
- Conss u us -> ap xs ys
- Conss a as -> ap xs ys
--}
diff --git a/testsuite/tests/ghc-regress/stranal/should_compile/unu.stderr b/testsuite/tests/ghc-regress/stranal/should_compile/unu.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_compile/unu.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/stranal/should_run/Makefile b/testsuite/tests/ghc-regress/stranal/should_run/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_run/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/stranal/should_run/T2756b.hs b/testsuite/tests/ghc-regress/stranal/should_run/T2756b.hs
deleted file mode 100644
index cb59d50c9b..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_run/T2756b.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-module Main where
-
-data X = X ()
-
-{-# NOINLINE newX #-}
-newX :: () -> IO X
-newX n = do
- let {-# NOINLINE value #-}
- value = n
- return (X value)
-
-main = do
- x <- newX (error "Why?")
- case x of
- X _ -> return ()
diff --git a/testsuite/tests/ghc-regress/stranal/should_run/all.T b/testsuite/tests/ghc-regress/stranal/should_run/all.T
deleted file mode 100644
index d94a7c492d..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_run/all.T
+++ /dev/null
@@ -1,9 +0,0 @@
-# Optimised only, we're testing the strictness analyser here
-setTestOpts( only_ways(['optasm']) )
-
-test('strun001', normal, compile_and_run, [''])
-test('strun002', exit_code(1), compile_and_run, [''])
-test('strun003', normal, compile_and_run, [''])
-test('strun004', normal, compile_and_run, [''])
-test('T2756b', normal, compile_and_run, [''])
-
diff --git a/testsuite/tests/ghc-regress/stranal/should_run/strun001.hs b/testsuite/tests/ghc-regress/stranal/should_run/strun001.hs
deleted file mode 100644
index 43820f3028..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_run/strun001.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- Made the new demand analyser enter an absent arg
--- Reason: it thought 'a' was unused in g.
-
-module Main where
-
--- Strictness: SS(AL) -> T
-f True p@(x,y) = (p,y)
-f False p@(x,y) = f y p
-
--- Easy to get the wrong strictness,
--- by thinking 'a' is absent
-g True a b = f False (a,b)
-g False a b = g b a b
-
-main = print (g True 'a' True)
diff --git a/testsuite/tests/ghc-regress/stranal/should_run/strun001.stdout b/testsuite/tests/ghc-regress/stranal/should_run/strun001.stdout
deleted file mode 100644
index 9cba23c739..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_run/strun001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-(('a',True),True)
diff --git a/testsuite/tests/ghc-regress/stranal/should_run/strun002.hs b/testsuite/tests/ghc-regress/stranal/should_run/strun002.hs
deleted file mode 100644
index 145166964d..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_run/strun002.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- This showed up an "entered-absent-arg" error in 5.02.1
-
-module Main where
-
-is_volatile :: [Int] -> (String,Int) -> Int
-is_volatile [] (destVarName, destPtr)
- = error ("Variable not found: " ++ "(" ++ (show destPtr) ++ ") " ++ destVarName)
-is_volatile (a:allWrites) (destVarName, destPtr)
- | a == destPtr = a
- | otherwise = is_volatile allWrites (destVarName, destPtr)
-
-main = print (is_volatile [] ("hello",2))
diff --git a/testsuite/tests/ghc-regress/stranal/should_run/strun002.stderr b/testsuite/tests/ghc-regress/stranal/should_run/strun002.stderr
deleted file mode 100644
index ac89b7f80b..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_run/strun002.stderr
+++ /dev/null
@@ -1 +0,0 @@
-strun002: Variable not found: (2) hello
diff --git a/testsuite/tests/ghc-regress/stranal/should_run/strun003.hs b/testsuite/tests/ghc-regress/stranal/should_run/strun003.hs
deleted file mode 100644
index eaedd59e8c..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_run/strun003.hs
+++ /dev/null
@@ -1,23 +0,0 @@
--- This module should run fine with an empty argument list
--- But it won't if the strictness analyser thinks that 'len' is use
--- strictly, which was the case in GHC 6.0
-
--- See the io_hack_reqd in DmdAnal.lhs
-
-module Main where
-
-import System.Environment
-import System.Exit
-
-main = do
- args <- getArgs
- let len = read (head args) :: Int
-
- (if null args && useLazily len
- then putStrLn "ok" >> exitWith ExitSuccess
- else return () )
-
- print len
-
-useLazily :: Int -> Bool
-useLazily len = ([len,3,4] !! 1) == 3
diff --git a/testsuite/tests/ghc-regress/stranal/should_run/strun003.stdout b/testsuite/tests/ghc-regress/stranal/should_run/strun003.stdout
deleted file mode 100644
index 9766475a41..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_run/strun003.stdout
+++ /dev/null
@@ -1 +0,0 @@
-ok
diff --git a/testsuite/tests/ghc-regress/stranal/should_run/strun004.hs b/testsuite/tests/ghc-regress/stranal/should_run/strun004.hs
deleted file mode 100644
index ff58f72ce5..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_run/strun004.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-module Main where
-
-f 0 = 0
-f x = x + g (x-1)
-
-g 0 = 0
-g x = x - f (x-1)
-
-main = print (f 300)
-
diff --git a/testsuite/tests/ghc-regress/stranal/should_run/strun004.stdout b/testsuite/tests/ghc-regress/stranal/should_run/strun004.stdout
deleted file mode 100644
index 697cb3a26d..0000000000
--- a/testsuite/tests/ghc-regress/stranal/should_run/strun004.stdout
+++ /dev/null
@@ -1 +0,0 @@
-300
diff --git a/testsuite/tests/ghc-regress/th/2014/A.hs b/testsuite/tests/ghc-regress/th/2014/A.hs
deleted file mode 100644
index d843c00b78..0000000000
--- a/testsuite/tests/ghc-regress/th/2014/A.hs
+++ /dev/null
@@ -1 +0,0 @@
-module A where
diff --git a/testsuite/tests/ghc-regress/th/2014/A.hs-boot b/testsuite/tests/ghc-regress/th/2014/A.hs-boot
deleted file mode 100644
index d843c00b78..0000000000
--- a/testsuite/tests/ghc-regress/th/2014/A.hs-boot
+++ /dev/null
@@ -1 +0,0 @@
-module A where
diff --git a/testsuite/tests/ghc-regress/th/2014/B.hs b/testsuite/tests/ghc-regress/th/2014/B.hs
deleted file mode 100644
index 0233a40209..0000000000
--- a/testsuite/tests/ghc-regress/th/2014/B.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module B where
-
-import {-# SOURCE #-} A ()
---import A ()
-import Language.Haskell.TH
-
-expQ :: ExpQ
-expQ = [| () |]
diff --git a/testsuite/tests/ghc-regress/th/2014/C.hs b/testsuite/tests/ghc-regress/th/2014/C.hs
deleted file mode 100644
index 5ddff11497..0000000000
--- a/testsuite/tests/ghc-regress/th/2014/C.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module C where
-
-import B
-
-foo :: a
-foo = undefined
- where second = $( expQ )
diff --git a/testsuite/tests/ghc-regress/th/2014/Makefile b/testsuite/tests/ghc-regress/th/2014/Makefile
deleted file mode 100644
index 862ea725d6..0000000000
--- a/testsuite/tests/ghc-regress/th/2014/Makefile
+++ /dev/null
@@ -1,9 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-2014 :
- '$(TEST_HC)' $(TEST_HC_OPTS) -fforce-recomp -c A.hs-boot
- '$(TEST_HC)' $(TEST_HC_OPTS) -fforce-recomp -c A.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -fforce-recomp -c B.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -fforce-recomp -c C.hs -v0
diff --git a/testsuite/tests/ghc-regress/th/2014/all.T b/testsuite/tests/ghc-regress/th/2014/all.T
deleted file mode 100644
index c6792677d9..0000000000
--- a/testsuite/tests/ghc-regress/th/2014/all.T
+++ /dev/null
@@ -1,8 +0,0 @@
-setTestOpts(if_compiler_profiled(skip))
-
-test('2014',
- [req_interp,
- extra_clean(['A.hi-boot','A.hi','A.o','A.o-boot',
- 'B.hi', 'B.o', 'C.hi', 'C.o'])],
- run_command,
- ['$MAKE -s --no-print-directory 2014'])
diff --git a/testsuite/tests/ghc-regress/th/Makefile b/testsuite/tests/ghc-regress/th/Makefile
deleted file mode 100644
index e8b4c2d177..0000000000
--- a/testsuite/tests/ghc-regress/th/Makefile
+++ /dev/null
@@ -1,19 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-# Trac 2386 requires batch-compile not --make
-# Very important: without -O
-T2386:
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 -c T2386_Lib.hs -fforce-recomp
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 -c T2386.hs -fforce-recomp
-
-
-HC_OPTS = -XTemplateHaskell -package template-haskell
-
-TH_spliceE5_prof::
- $(RM) TH_spliceE5_prof*.o TH_spliceE5_prof*.hi TH_spliceE5_prof*.p_o
- '$(TEST_HC)' $(TEST_HC_OPTS) $(HC_OPTS) --make -v0 TH_spliceE5_prof.hs -c
- '$(TEST_HC)' $(TEST_HC_OPTS) $(HC_OPTS) --make -v0 TH_spliceE5_prof.hs -prof -auto-all -osuf p_o -o $@
- ./$@
-
diff --git a/testsuite/tests/ghc-regress/th/T1835.hs b/testsuite/tests/ghc-regress/th/T1835.hs
deleted file mode 100644
index 296bf907ab..0000000000
--- a/testsuite/tests/ghc-regress/th/T1835.hs
+++ /dev/null
@@ -1,37 +0,0 @@
-{-# LANGUAGE TemplateHaskell, FlexibleInstances,
- MultiParamTypeClasses, TypeSynonymInstances #-}
-module Main where
-
-import Language.Haskell.TH
-import Language.Haskell.TH.Syntax
-
-class Eq a => MyClass a
-data Foo = Foo deriving Eq
-
-instance MyClass Foo
-
-data Bar = Bar
- deriving Eq
-
-type Baz = Bar
-instance MyClass Baz
-
-data Quux a = Quux a deriving Eq
-data Quux2 a = Quux2 a deriving Eq
-instance Eq a => MyClass (Quux a)
-instance Num a => MyClass (Quux2 a)
-
-class MyClass2 a b
-instance MyClass2 Int Bool
-
-main = do
- putStrLn $(do { info <- reify ''MyClass; lift (pprint info) })
- print $(isClassInstance ''Eq [ConT ''Foo] >>= lift)
- print $(isClassInstance ''MyClass [ConT ''Foo] >>= lift)
- print $ not $(isClassInstance ''Show [ConT ''Foo] >>= lift)
- print $(isClassInstance ''MyClass [ConT ''Bar] >>= lift) -- this one
- print $(isClassInstance ''MyClass [ConT ''Baz] >>= lift)
- print $(isClassInstance ''MyClass [AppT (ConT ''Quux) (ConT ''Int)] >>= lift) --this one
- print $(isClassInstance ''MyClass [AppT (ConT ''Quux2) (ConT ''Int)] >>= lift) -- this one
- print $(isClassInstance ''MyClass2 [ConT ''Int, ConT ''Bool] >>= lift)
- print $(isClassInstance ''MyClass2 [ConT ''Bool, ConT ''Bool] >>= lift)
diff --git a/testsuite/tests/ghc-regress/th/T1835.stdout b/testsuite/tests/ghc-regress/th/T1835.stdout
deleted file mode 100644
index dcb42a2b19..0000000000
--- a/testsuite/tests/ghc-regress/th/T1835.stdout
+++ /dev/null
@@ -1,14 +0,0 @@
-class GHC.Classes.Eq a_0 => Main.MyClass a_0
-instance Main.MyClass Main.Foo
-instance Main.MyClass Main.Baz
-instance GHC.Classes.Eq a_1 => Main.MyClass (Main.Quux a_1)
-instance GHC.Num.Num a_2 => Main.MyClass (Main.Quux2 a_2)
-True
-True
-True
-True
-True
-True
-True
-True
-False
diff --git a/testsuite/tests/ghc-regress/th/T2386.hs b/testsuite/tests/ghc-regress/th/T2386.hs
deleted file mode 100644
index b7a03469cf..0000000000
--- a/testsuite/tests/ghc-regress/th/T2386.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Test Trac #2386
-
-module T2386 where
-
-import T2386_Lib
-
-foo = $(makeOne)
diff --git a/testsuite/tests/ghc-regress/th/T2386_Lib.hs b/testsuite/tests/ghc-regress/th/T2386_Lib.hs
deleted file mode 100644
index 4322cc9584..0000000000
--- a/testsuite/tests/ghc-regress/th/T2386_Lib.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
-module T2386_Lib(ExportedAbstract, makeOne) where
-
-data ExportedAbstract = Yay String | NonYay Bool
-
-makeOne = [| Yay "Yep" |]
diff --git a/testsuite/tests/ghc-regress/th/T2597a.hs b/testsuite/tests/ghc-regress/th/T2597a.hs
deleted file mode 100644
index 3d8c319b47..0000000000
--- a/testsuite/tests/ghc-regress/th/T2597a.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Test Trac #2597 (first bug)
-
-module ShouldCompile where
-import T2597a_Lib
-
-bug = $mkBug
diff --git a/testsuite/tests/ghc-regress/th/T2597a_Lib.hs b/testsuite/tests/ghc-regress/th/T2597a_Lib.hs
deleted file mode 100644
index 0e8f794dc6..0000000000
--- a/testsuite/tests/ghc-regress/th/T2597a_Lib.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
--- Library module for T2597a
-
-module T2597a_Lib where
-import Language.Haskell.TH
-
-
-mkBug :: ExpQ
-mkBug = return $ CompE [BindS (VarP $ mkName "p") (ListE []), NoBindS
- (VarE $ mkName "p")]
-
-
diff --git a/testsuite/tests/ghc-regress/th/T2597b.hs b/testsuite/tests/ghc-regress/th/T2597b.hs
deleted file mode 100644
index 2fde008388..0000000000
--- a/testsuite/tests/ghc-regress/th/T2597b.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Test Trac #2597 (second bug)
-
-module ShouldCompile where
-import T2597b_Lib
-
-bug2 = $mkBug2
-
diff --git a/testsuite/tests/ghc-regress/th/T2597b.stderr b/testsuite/tests/ghc-regress/th/T2597b.stderr
deleted file mode 100644
index 8881b81044..0000000000
--- a/testsuite/tests/ghc-regress/th/T2597b.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-T2597b.hs:8:8:
- Empty stmt list in do-block
- When splicing a TH expression: do
- In the expression: $mkBug2
- In an equation for `bug2': bug2 = $mkBug2
diff --git a/testsuite/tests/ghc-regress/th/T2597b_Lib.hs b/testsuite/tests/ghc-regress/th/T2597b_Lib.hs
deleted file mode 100644
index 1f70c3923a..0000000000
--- a/testsuite/tests/ghc-regress/th/T2597b_Lib.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
--- Library module for T2597b
-
-module T2597b_Lib where
-import Language.Haskell.TH
-
-
-mkBug2 :: ExpQ
-mkBug2 = return $ DoE []
diff --git a/testsuite/tests/ghc-regress/th/T2632.hs b/testsuite/tests/ghc-regress/th/T2632.hs
deleted file mode 100644
index 31429e28d9..0000000000
--- a/testsuite/tests/ghc-regress/th/T2632.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Trac #2632
-
-module MkData where
-
-import Language.Haskell.TH
-
-op :: Num v => v -> v -> v
-op a b = a + b
-
-decl1 = [d| func = 0 `op` 3 |]
-
-decl2 = [d| op x y = x
- func = 0 `op` 3 |]
-
diff --git a/testsuite/tests/ghc-regress/th/T2674.hs b/testsuite/tests/ghc-regress/th/T2674.hs
deleted file mode 100644
index 3413193343..0000000000
--- a/testsuite/tests/ghc-regress/th/T2674.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Trac #2674
-
-module ShouldFail where
-
-import Language.Haskell.TH
-
-$(return [FunD (mkName "foo") []])
diff --git a/testsuite/tests/ghc-regress/th/T2674.stderr b/testsuite/tests/ghc-regress/th/T2674.stderr
deleted file mode 100644
index a69781dfe4..0000000000
--- a/testsuite/tests/ghc-regress/th/T2674.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-T2674.hs:9:3:
- Function binding for `foo' has no equations
- When splicing a TH declaration:
diff --git a/testsuite/tests/ghc-regress/th/T2685.hs b/testsuite/tests/ghc-regress/th/T2685.hs
deleted file mode 100644
index c4bc0aa335..0000000000
--- a/testsuite/tests/ghc-regress/th/T2685.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module T2685 where
-
-import T2685a
-
-$( th )
diff --git a/testsuite/tests/ghc-regress/th/T2685a.hs b/testsuite/tests/ghc-regress/th/T2685a.hs
deleted file mode 100644
index a92c9720ef..0000000000
--- a/testsuite/tests/ghc-regress/th/T2685a.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module T2685a (th) where
-
-import Language.Haskell.TH
-
-newtype NT = C (() -> ())
-
-th :: Q [Dec]
-th = [d| foo = C undefined |]
diff --git a/testsuite/tests/ghc-regress/th/T2700.hs b/testsuite/tests/ghc-regress/th/T2700.hs
deleted file mode 100644
index 68a6e6247a..0000000000
--- a/testsuite/tests/ghc-regress/th/T2700.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
-module T2700 where
-import Language.Haskell.TH
-import System.IO
-
-$( do { d <- sigD (mkName "foo") [t| (Int -> Bool) -> Bool |]
- ; runIO (hPutStrLn stderr (pprint d))
- ; return [] }
- )
diff --git a/testsuite/tests/ghc-regress/th/T2700.stderr b/testsuite/tests/ghc-regress/th/T2700.stderr
deleted file mode 100644
index 004521c197..0000000000
--- a/testsuite/tests/ghc-regress/th/T2700.stderr
+++ /dev/null
@@ -1 +0,0 @@
-foo :: (GHC.Types.Int -> GHC.Types.Bool) -> GHC.Types.Bool
diff --git a/testsuite/tests/ghc-regress/th/T2700.stderr-ghc-7.0 b/testsuite/tests/ghc-regress/th/T2700.stderr-ghc-7.0
deleted file mode 100644
index 6637147112..0000000000
--- a/testsuite/tests/ghc-regress/th/T2700.stderr-ghc-7.0
+++ /dev/null
@@ -1 +0,0 @@
-foo :: (GHC.Types.Int -> GHC.Bool.Bool) -> GHC.Bool.Bool
diff --git a/testsuite/tests/ghc-regress/th/T2713.hs b/testsuite/tests/ghc-regress/th/T2713.hs
deleted file mode 100644
index 77eb704b1c..0000000000
--- a/testsuite/tests/ghc-regress/th/T2713.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module Fixity where
-
-class MyClass a where
- (.*.) :: a -> a -> a
-
-$( [d| x = undefined |] )
-
-infixr 3 .*.
diff --git a/testsuite/tests/ghc-regress/th/T2713.stderr b/testsuite/tests/ghc-regress/th/T2713.stderr
deleted file mode 100644
index a2528885ee..0000000000
--- a/testsuite/tests/ghc-regress/th/T2713.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-T2713.hs:9:10:
- The fixity signature for `.*.' lacks an accompanying binding
- (The fixity signature must be given where `.*.' is declared)
diff --git a/testsuite/tests/ghc-regress/th/T2817.hs b/testsuite/tests/ghc-regress/th/T2817.hs
deleted file mode 100644
index 6bdee60994..0000000000
--- a/testsuite/tests/ghc-regress/th/T2817.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# OPTIONS -XTemplateHaskell #-}
-module TH( x ) where
-import Language.Haskell.TH
-
-data T f = MkT (f Int)
-
-x = $(return (SigE (VarE 'x) (AppT (ConT ''T) (AppT ArrowT (ConT ''Int)))))
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/th/T2931.hs b/testsuite/tests/ghc-regress/th/T2931.hs
deleted file mode 100644
index f7b9afe0a7..0000000000
--- a/testsuite/tests/ghc-regress/th/T2931.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
--- Trac #2931
-
-module Foo where
-a = 1
-
--- NB: no newline after the 'a'!
-b = 'a \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/th/T3100.hs b/testsuite/tests/ghc-regress/th/T3100.hs
deleted file mode 100644
index edb943933a..0000000000
--- a/testsuite/tests/ghc-regress/th/T3100.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE RankNTypes, FlexibleContexts, ImplicitParams, TemplateHaskell #-}
-
--- This test makes sure TH understands types where
--- there is a predicate but no 'forall'
---
--- There are two tests in here; both should be fine
--- Trac ticket: #3100
-
-module T3100 where
-
-import Language.Haskell.TH
-
-flop :: Ord Int => Int -> Int
-flop x = x
-
-$(do { t <- reify 'flop; return [] })
-
-type T a = Eq a => a
-
-$(do { reify ''T; return []})
diff --git a/testsuite/tests/ghc-regress/th/T3177.hs b/testsuite/tests/ghc-regress/th/T3177.hs
deleted file mode 100644
index c46a1f4c46..0000000000
--- a/testsuite/tests/ghc-regress/th/T3177.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{- LANGUAGE TemplateHaskell #-}
-
--- Template Haskell type splices
-module T3177 where
-
-f :: $(id [t| Int |])
-f = 3
-
-class C a where
- op :: a -> a
-
-instance C a => C ($([t| Maybe |]) a) where
- op x = fmap op x
-
diff --git a/testsuite/tests/ghc-regress/th/T3177a.hs b/testsuite/tests/ghc-regress/th/T3177a.hs
deleted file mode 100644
index 8746901753..0000000000
--- a/testsuite/tests/ghc-regress/th/T3177a.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{- LANGUAGE TemplateHaskell #-}
-
--- Template Haskell type splices
--- Should fail, with a decent error message
-
-module T3177a where
-
-f :: $(id [t| Int Int |])
-f = 3
-
-g :: Int Int
-g = 3
-
diff --git a/testsuite/tests/ghc-regress/th/T3177a.stderr b/testsuite/tests/ghc-regress/th/T3177a.stderr
deleted file mode 100644
index 00b0c0d92c..0000000000
--- a/testsuite/tests/ghc-regress/th/T3177a.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-T3177a.hs:8:15:
- `Int' is applied to too many type arguments
- In the Template Haskell quotation [t| Int Int |]
- In the first argument of `id', namely `[t| Int Int |]'
- In the expression: id [t| Int Int |]
-
-T3177a.hs:11:6:
- `Int' is applied to too many type arguments
- In the type signature for `g':
- g :: Int Int
diff --git a/testsuite/tests/ghc-regress/th/T3319.hs b/testsuite/tests/ghc-regress/th/T3319.hs
deleted file mode 100644
index afe7f01c10..0000000000
--- a/testsuite/tests/ghc-regress/th/T3319.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TemplateHaskell,ForeignFunctionInterface #-}
-
-module T3319 where
-
-import Foreign.Ptr
-import Language.Haskell.TH
-
-$(return [ForeignD (ImportF CCall Unsafe "&" (mkName "foo") (AppT (ConT ''Ptr) (ConT ''())))])
-
--- Should generate the same as this:
-foreign import ccall unsafe "&" foo1 :: Ptr ()
diff --git a/testsuite/tests/ghc-regress/th/T3319.stderr b/testsuite/tests/ghc-regress/th/T3319.stderr
deleted file mode 100644
index 7947ce0ef1..0000000000
--- a/testsuite/tests/ghc-regress/th/T3319.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-T3319.hs:1:1: Splicing declarations
- return
- [ForeignD
- (ImportF
- CCall Unsafe "&" (mkName "foo") (AppT (ConT 'Ptr) (ConT '())))]
- ======>
- T3319.hs:8:3-93
- foreign import ccall unsafe "static &foo" foo :: Ptr GHC.Unit.()
diff --git a/testsuite/tests/ghc-regress/th/T3395.hs b/testsuite/tests/ghc-regress/th/T3395.hs
deleted file mode 100644
index ff3ee4384a..0000000000
--- a/testsuite/tests/ghc-regress/th/T3395.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module T3395 where
-
-import Language.Haskell.TH
-
-foo = $(return $
- CompE
- [NoBindS (VarE $ mkName "undefined")
- ,BindS (VarP $ mkName "r1") (VarE $ mkName "undefined") ])
diff --git a/testsuite/tests/ghc-regress/th/T3395.stderr b/testsuite/tests/ghc-regress/th/T3395.stderr
deleted file mode 100644
index f85f7cc1da..0000000000
--- a/testsuite/tests/ghc-regress/th/T3395.stderr
+++ /dev/null
@@ -1,16 +0,0 @@
-
-T3395.hs:6:9:
- Illegal last statement of a list comprehension:
- r1 <- undefined
- (It should be an expression.)
- When splicing a TH expression: [r1 <- undefined | undefined]
- In the expression:
- $(return
- $ CompE
- [NoBindS (VarE $ mkName "undefined"),
- BindS (VarP $ mkName "r1") (VarE $ mkName "undefined")])
- In an equation for `foo':
- foo = $(return
- $ CompE
- [NoBindS (VarE $ mkName "undefined"),
- BindS (VarP $ mkName "r1") (VarE $ mkName "undefined")])
diff --git a/testsuite/tests/ghc-regress/th/T3467.hs b/testsuite/tests/ghc-regress/th/T3467.hs
deleted file mode 100644
index b439470f31..0000000000
--- a/testsuite/tests/ghc-regress/th/T3467.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Test Trac #3467
-
-module T3467 where
-
-import Language.Haskell.TH
-import Foreign
-
-sizeq :: Name -> Q Exp
-sizeq n = [| sizeOf (undefined :: $(conT n)) |]
diff --git a/testsuite/tests/ghc-regress/th/T3572.hs b/testsuite/tests/ghc-regress/th/T3572.hs
deleted file mode 100644
index 4717fd2735..0000000000
--- a/testsuite/tests/ghc-regress/th/T3572.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE EmptyDataDecls #-}
-
--- Trac #3572
-
-module Main where
-
-import Language.Haskell.TH
-import Language.Haskell.TH.Ppr
-
-main = putStrLn . pprint =<< runQ [d| data Void |]
diff --git a/testsuite/tests/ghc-regress/th/T3572.stdout b/testsuite/tests/ghc-regress/th/T3572.stdout
deleted file mode 100644
index 8dd47a4c5a..0000000000
--- a/testsuite/tests/ghc-regress/th/T3572.stdout
+++ /dev/null
@@ -1 +0,0 @@
-data Void
diff --git a/testsuite/tests/ghc-regress/th/T3600.hs b/testsuite/tests/ghc-regress/th/T3600.hs
deleted file mode 100644
index 84b0eefea1..0000000000
--- a/testsuite/tests/ghc-regress/th/T3600.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-{-# OPTIONS_GHC -ddump-splices #-}
-module T3600 where
-import T3600a
-$(test)
diff --git a/testsuite/tests/ghc-regress/th/T3600.stderr b/testsuite/tests/ghc-regress/th/T3600.stderr
deleted file mode 100644
index 8ab357db1a..0000000000
--- a/testsuite/tests/ghc-regress/th/T3600.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-T3600.hs:1:1: Splicing declarations
- test
- ======>
- T3600.hs:5:3-6
- myFunction = (testFun1 [], testFun2 "", testFun2 "x")
diff --git a/testsuite/tests/ghc-regress/th/T3600a.hs b/testsuite/tests/ghc-regress/th/T3600a.hs
deleted file mode 100644
index d328d8e6a7..0000000000
--- a/testsuite/tests/ghc-regress/th/T3600a.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module T3600a where
-
-import Language.Haskell.TH
-
-test :: Q [Dec]
-test = do
- let args1 = [] :: [String]
- args2 = [] :: String
- args3 = "x" :: String
- body = [| (testFun1 args1, testFun2 args2, testFun2 args3) |]
- decNm = mkName "myFunction"
- (:[]) `fmap` funD decNm [clause [] (normalB body) []]
-
-testFun1 :: [String] -> String
-testFun1 _ = "hello"
-
-testFun2 :: String -> String
-testFun2 _ = "goodbye"
diff --git a/testsuite/tests/ghc-regress/th/T3845.hs b/testsuite/tests/ghc-regress/th/T3845.hs
deleted file mode 100644
index 29dc51fbda..0000000000
--- a/testsuite/tests/ghc-regress/th/T3845.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
-module THBug1 where
-
-import Language.Haskell.TH
-import Language.Haskell.TH.Syntax
-
-data HCons a b = HCons a b
-data HNil = HNil
-
-mhlt :: [Q Type] -> Q Type
-mhlt xss = [t| $(foldThing xss)|]
- where
- foldThing (x:xs) = [t| HCons $x $(foldThing xs)|]
- foldThing [] = [t| HNil |]
-
-mhlt1 :: [Int] -> Q Exp
-mhlt1 xss = [| $(foldThing1 xss) |]
- where
- foldThing1 (x:xs) = [| x : $(foldThing1 xs)|]
- foldThing1 [] = [| [] |]
diff --git a/testsuite/tests/ghc-regress/th/T3899.hs b/testsuite/tests/ghc-regress/th/T3899.hs
deleted file mode 100644
index 1b56643d59..0000000000
--- a/testsuite/tests/ghc-regress/th/T3899.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module T3899 where
-
-import T3899a
-
-f = $(nestedTuple 3)
diff --git a/testsuite/tests/ghc-regress/th/T3899.stderr b/testsuite/tests/ghc-regress/th/T3899.stderr
deleted file mode 100644
index 2b4a76a4e5..0000000000
--- a/testsuite/tests/ghc-regress/th/T3899.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-T3899.hs:6:7-19: Splicing expression
- nestedTuple 3 ======> \ (Cons x (Cons x (Cons x Nil))) -> (x, x, x)
diff --git a/testsuite/tests/ghc-regress/th/T3899a.hs b/testsuite/tests/ghc-regress/th/T3899a.hs
deleted file mode 100644
index 2ac985136f..0000000000
--- a/testsuite/tests/ghc-regress/th/T3899a.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module T3899a where
-
-
-import Language.Haskell.TH
-import Control.Monad
-
-data Cons a b = Cons a b
-data Nil = Nil
-
-nestedTuple n = do
- xs <- replicateM n (newName "x")
- return $ LamE [foldr (\v prev -> ConP 'Cons [VarP v,prev]) (ConP 'Nil []) xs]
- (TupE $ map VarE xs)
diff --git a/testsuite/tests/ghc-regress/th/T3920.hs b/testsuite/tests/ghc-regress/th/T3920.hs
deleted file mode 100644
index 8a8ac0b7d3..0000000000
--- a/testsuite/tests/ghc-regress/th/T3920.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE EmptyDataDecls, TypeFamilies, TemplateHaskell #-}
-module Main where
-
-import Language.Haskell.TH
-
-type family S :: (* -> (* -> * -> *)) -> (* -> *) -> *
-
-test :: String
-test = $(do
- test <- [d|
- type family T :: (* -> (* -> * -> *)) -> (* -> *) -> * |]
- blah <- reify ''S
- return (LitE (StringL (pprint test ++ "\n" ++ pprint blah))))
-
-main = putStrLn test
diff --git a/testsuite/tests/ghc-regress/th/T3920.stdout b/testsuite/tests/ghc-regress/th/T3920.stdout
deleted file mode 100644
index 224efdfda9..0000000000
--- a/testsuite/tests/ghc-regress/th/T3920.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-type family T :: (* -> * -> * -> *) -> (* -> *) -> *
-type family Main.S :: (* -> * -> * -> *) -> (* -> *) -> *
diff --git a/testsuite/tests/ghc-regress/th/T4056.hs b/testsuite/tests/ghc-regress/th/T4056.hs
deleted file mode 100644
index 211d2b51f4..0000000000
--- a/testsuite/tests/ghc-regress/th/T4056.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TemplateHaskell, TypeFamilies, RankNTypes, FlexibleContexts #-}
-
-module T4056 where
-import Language.Haskell.TH
-
-astTest :: Q [Dec]
-astTest = [d|
- class C t where
- op :: [t] -> [t]
- op = undefined
- |]
-
-class D t where
- bop :: [t] -> [t]
- bop = undefined
diff --git a/testsuite/tests/ghc-regress/th/T4169.hs b/testsuite/tests/ghc-regress/th/T4169.hs
deleted file mode 100644
index 1fa3ad7cb7..0000000000
--- a/testsuite/tests/ghc-regress/th/T4169.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Crashed GHC 6.12
-
-module T4165 where
-
-import Language.Haskell.TH
-class Numeric a where
- fromIntegerNum :: a
- fromIntegerNum = undefined
-
-ast :: Q [Dec]
-ast = [d|
- instance Numeric Int
- |]
diff --git a/testsuite/tests/ghc-regress/th/T4188.hs b/testsuite/tests/ghc-regress/th/T4188.hs
deleted file mode 100644
index 73fd925302..0000000000
--- a/testsuite/tests/ghc-regress/th/T4188.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-{-# LANGUAGE TemplateHaskell, GADTs #-}
-
-module T4188 where
-
-import Language.Haskell.TH
-import System.IO
-
-class C a where {}
-
-data T1 a where
- MkT1 :: a -> b -> T1 a
-
-data T2 a where
- MkT2 :: (C a, C b) => a -> b -> T2 a
-
-data T3 x where
- MkT3 :: (C x, C y) => x -> y -> T3 (x,y)
-
-$(do { dec1 <- reify ''T1
- ; runIO (putStrLn (pprint dec1))
- ; dec2 <- reify ''T2
- ; runIO (putStrLn (pprint dec2))
- ; dec3 <- reify ''T3
- ; runIO (putStrLn (pprint dec3))
- ; runIO (hFlush stdout)
- ; return [] })
-
-
diff --git a/testsuite/tests/ghc-regress/th/T4188.stderr b/testsuite/tests/ghc-regress/th/T4188.stderr
deleted file mode 100644
index 469a2d3840..0000000000
--- a/testsuite/tests/ghc-regress/th/T4188.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-data T4188.T1 a_0 = forall b_1 . T4188.MkT1 a_0 b_1
-data T4188.T2 a_0
- = forall b_1 . (T4188.C a_0, T4188.C b_1) => T4188.MkT2 a_0 b_1
-data T4188.T3 x_0
- = forall x_1 y_2 . (x_0 ~ (x_1, y_2), T4188.C x_1, T4188.C y_2) =>
- T4188.MkT3 x_1 y_2
diff --git a/testsuite/tests/ghc-regress/th/T4233.hs b/testsuite/tests/ghc-regress/th/T4233.hs
deleted file mode 100644
index 87712d064d..0000000000
--- a/testsuite/tests/ghc-regress/th/T4233.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module T4233 where
-import Language.Haskell.TH
-
-w :: Q Type
-w = varT (mkName "w")
-
-f :: Q Type
-f = [t| $w -> $w |]
diff --git a/testsuite/tests/ghc-regress/th/T4255.hs b/testsuite/tests/ghc-regress/th/T4255.hs
deleted file mode 100644
index 8509f0ece9..0000000000
--- a/testsuite/tests/ghc-regress/th/T4255.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-{-# LANGUAGE TemplateHaskell #-}
-module T4255 where
-
-f x = $([| x |])
diff --git a/testsuite/tests/ghc-regress/th/T4255.stderr b/testsuite/tests/ghc-regress/th/T4255.stderr
deleted file mode 100644
index e2c4f2f055..0000000000
--- a/testsuite/tests/ghc-regress/th/T4255.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-ghc: T4255.hs:2:14-28: You can't use Template Haskell with a profiled compiler
-Usage: For basic information, try the `--help' option.
diff --git a/testsuite/tests/ghc-regress/th/T4436.hs b/testsuite/tests/ghc-regress/th/T4436.hs
deleted file mode 100644
index 2d39120eba..0000000000
--- a/testsuite/tests/ghc-regress/th/T4436.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# OPTIONS -XTemplateHaskell #-}
-module TH( x ) where
-import Language.Haskell.TH
-
-x = $(return (LitE (StringL "hello\ngoodbye\nand then")))
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/th/T4436.stderr b/testsuite/tests/ghc-regress/th/T4436.stderr
deleted file mode 100644
index d66582ec1e..0000000000
--- a/testsuite/tests/ghc-regress/th/T4436.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-T4436.hs:5:7-56: Splicing expression
- return
- (LitE
- (StringL
- "hello\
- \goodbye\
- \and then"))
- ======>
- "hello\
- \goodbye\
- \and then"
diff --git a/testsuite/tests/ghc-regress/th/T4949.hs b/testsuite/tests/ghc-regress/th/T4949.hs
deleted file mode 100644
index a1cb8b4d99..0000000000
--- a/testsuite/tests/ghc-regress/th/T4949.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module Foo where
-
-import Language.Haskell.TH
-
-x :: Int
-x = let args = [| show $(varE (mkName "x")) |]
- in undefined
diff --git a/testsuite/tests/ghc-regress/th/T5037.hs b/testsuite/tests/ghc-regress/th/T5037.hs
deleted file mode 100644
index 06f42ab88c..0000000000
--- a/testsuite/tests/ghc-regress/th/T5037.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module T5037 where
-import Language.Haskell.TH
-import System.IO
-
-$( do ds <- [d| f :: Maybe Int -> Int
- f Nothing = 3
- f (Just x) = $(varE (mkName "x"))
- |]
- runIO $ (putStrLn (pprint ds) >> hFlush stdout)
- return ds )
diff --git a/testsuite/tests/ghc-regress/th/T5037.stderr b/testsuite/tests/ghc-regress/th/T5037.stderr
deleted file mode 100644
index 987d7fd852..0000000000
--- a/testsuite/tests/ghc-regress/th/T5037.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-f :: Data.Maybe.Maybe GHC.Types.Int -> GHC.Types.Int
-f (Data.Maybe.Nothing) = 3
-f (Data.Maybe.Just x_0) = x
diff --git a/testsuite/tests/ghc-regress/th/T5126.hs b/testsuite/tests/ghc-regress/th/T5126.hs
deleted file mode 100644
index 668f82ae0b..0000000000
--- a/testsuite/tests/ghc-regress/th/T5126.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module T5126 where
-
-import Language.Haskell.TH
-import Language.Haskell.TH.Syntax
-
-f :: Q [Dec]
-f =
- [d|
- x2 :: $(conT ''Int)
- x2 = undefined
- |]
diff --git a/testsuite/tests/ghc-regress/th/T5217.hs b/testsuite/tests/ghc-regress/th/T5217.hs
deleted file mode 100644
index 9dd1f1cb3f..0000000000
--- a/testsuite/tests/ghc-regress/th/T5217.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module T5217 where
-import Language.Haskell.TH
-
-$([d| data T a b where { T1 :: Int -> T Int Char
- ; T2 :: a -> T a a
- ; T3 :: a -> T [a] a
- ; T4 :: a -> b -> T b [a] } |])
-
-
diff --git a/testsuite/tests/ghc-regress/th/T5217.stderr b/testsuite/tests/ghc-regress/th/T5217.stderr
deleted file mode 100644
index 891bb7f94a..0000000000
--- a/testsuite/tests/ghc-regress/th/T5217.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-T5217.hs:1:1: Splicing declarations
- [d| data T a b
- where
- T1 :: Int -> T Int Char
- T2 :: a -> T a a
- T3 :: a -> T [a] a
- T4 :: a -> b -> T b [a] |]
- ======>
- T5217.hs:(6,3)-(9,53)
- data T a b
- = (b ~ Char, a ~ Int) => T1 Int |
- b ~ a => T2 a |
- a ~ [b] => T3 b |
- forall a. b ~ [a] => T4 a a
diff --git a/testsuite/tests/ghc-regress/th/TH_1tuple.hs b/testsuite/tests/ghc-regress/th/TH_1tuple.hs
deleted file mode 100644
index 3674a5a76c..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_1tuple.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Trac #2358
-
-module ShouldFail where
-import Language.Haskell.TH
-
-x = $(sigE [|1|] (tupleT 1 `appT` conT ''Int))
- -- 1 :: (Int) ( a 1-tuple type)
-
-y = $(sigE [|1|] (tupleT 1))
- -- 1 :: (1) (a 1-tuple tycon not applied)
-
-z = $(tupE [ [| "yes" |] ])
- -- ("yes") (a 1-tuple expression)
diff --git a/testsuite/tests/ghc-regress/th/TH_1tuple.stderr b/testsuite/tests/ghc-regress/th/TH_1tuple.stderr
deleted file mode 100644
index cb8889e4ca..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_1tuple.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-TH_1tuple.hs:11:7:
- Illegal 1-tuple type constructor
- When splicing a TH expression: 1 :: ()
- In the expression: $(sigE [| 1 |] (tupleT 1))
- In an equation for `y': y = $(sigE [| 1 |] (tupleT 1))
diff --git a/testsuite/tests/ghc-regress/th/TH_NestedSplices.hs b/testsuite/tests/ghc-regress/th/TH_NestedSplices.hs
deleted file mode 100644
index e16e6da8ff..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_NestedSplices.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module TH_NestedSplices where
-
-import Language.Haskell.TH
-
-import TH_NestedSplices_Lib
--- This import brings in
--- spliceExpr :: String -> Q Exp -> Q Exp
--- declareFun :: String -> Q [Dec]
-
--- Top level splice without $
-declareFun "a"
-
--- Splice inside splice
-$(declareFun $(stringE "b"))
-
--- Splice inside splice without outer $
-declareFun $(stringE "c")
-
--- Ordinary splicing
-f x = $(spliceExpr "boo" [| x |])
-
--- Splice inside splice
-g x = $(spliceExpr $(litE (stringL "boo")) [| x |])
-
--- Ordinary splice inside bracket
-h1 = [| $(litE (integerL 3)) |]
-
--- Splice inside splice inside bracket
-h2 = [| $(litE ($(varE 'integerL) 3)) |]
-
diff --git a/testsuite/tests/ghc-regress/th/TH_NestedSplices_Lib.hs b/testsuite/tests/ghc-regress/th/TH_NestedSplices_Lib.hs
deleted file mode 100644
index 91d6173b91..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_NestedSplices_Lib.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-module TH_NestedSplices_Lib where
-
-import Language.Haskell.TH
-
-spliceExpr :: String -> Q Exp -> Q Exp
-spliceExpr s e = [| (s, $e) |]
-
-declareFun :: String -> Q [Dec]
-declareFun s
- = do { n <- newName s
- ; d <- funD n [clause [] (normalB [| 22 |]) []]
- ; return [d] }
-
diff --git a/testsuite/tests/ghc-regress/th/TH_bracket1.hs b/testsuite/tests/ghc-regress/th/TH_bracket1.hs
deleted file mode 100644
index 393ca47fbd..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_bracket1.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- Check that declarations in a bracket shadow the top-level
--- declarations, rather than clashing with them.
-
-module TH_bracket1 where
-
-foo = 1
-bar = [d| foo = 1 |]
diff --git a/testsuite/tests/ghc-regress/th/TH_bracket2.hs b/testsuite/tests/ghc-regress/th/TH_bracket2.hs
deleted file mode 100644
index 2b06b9eecb..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_bracket2.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module TH_bracket2 where
-
-d_show = [d| data A = A
-
- instance Show A where
- show _ = "A"
- |]
diff --git a/testsuite/tests/ghc-regress/th/TH_bracket3.hs b/testsuite/tests/ghc-regress/th/TH_bracket3.hs
deleted file mode 100644
index c746d61cd3..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_bracket3.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses #-}
-
-module TH_bracket3 where
-
-d_class = [d| class Classy a b where
- f :: a -> b
-
- instance Classy Int Bool where
- f x = if x == 0 then True else False
- |]
diff --git a/testsuite/tests/ghc-regress/th/TH_class1.hs b/testsuite/tests/ghc-regress/th/TH_class1.hs
deleted file mode 100644
index 334a7d2301..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_class1.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-
-module TH_class1 where
-
-$( [d| class Classy a b c d | a -> b c, c -> d where
- f :: a -> b -> c -> d
- |] )
diff --git a/testsuite/tests/ghc-regress/th/TH_dataD1.hs b/testsuite/tests/ghc-regress/th/TH_dataD1.hs
deleted file mode 100644
index 60d8e018ad..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_dataD1.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-module TH_dataD1 where
-
-import Language.Haskell.TH
-
-ds :: Q [Dec]
-ds = [d|
- $(dataD [] (mkName "D") [] [normalC "K" []] [])
- |]
-
diff --git a/testsuite/tests/ghc-regress/th/TH_dataD1.stderr b/testsuite/tests/ghc-regress/th/TH_dataD1.stderr
deleted file mode 100644
index ddabee742a..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_dataD1.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-TH_dataD1.hs:8:13:
- Declaration splices are not permitted inside declaration brackets
diff --git a/testsuite/tests/ghc-regress/th/TH_dupdecl.hs b/testsuite/tests/ghc-regress/th/TH_dupdecl.hs
deleted file mode 100644
index 80f1da4068..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_dupdecl.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Two sliced declarations bind the same variable.
--- This test checks that there's a reasonable error message
-
-module ShouldCompile where
-
-$( [d| x = 1 |] )
-
-$( [d| x = 2 |] )
diff --git a/testsuite/tests/ghc-regress/th/TH_dupdecl.stderr b/testsuite/tests/ghc-regress/th/TH_dupdecl.stderr
deleted file mode 100644
index a8628a3de7..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_dupdecl.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-TH_dupdecl.hs:10:4:
- Multiple declarations of `x'
- Declared at: TH_dupdecl.hs:8:4
- TH_dupdecl.hs:10:4
diff --git a/testsuite/tests/ghc-regress/th/TH_emptycase.hs b/testsuite/tests/ghc-regress/th/TH_emptycase.hs
deleted file mode 100644
index d68ca9a8ee..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_emptycase.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
--- Trac #2431: empty case expression
--- currently rejected
-
-module Main where
-
-import Language.Haskell.TH
-
-f :: Int
-f = $(caseE (litE $ CharL 'a') [])
-
-main = print f
diff --git a/testsuite/tests/ghc-regress/th/TH_emptycase.stderr b/testsuite/tests/ghc-regress/th/TH_emptycase.stderr
deleted file mode 100644
index 2de068769b..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_emptycase.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-TH_emptycase.hs:10:7:
- Case expression with no alternatives
- When splicing a TH expression: case 'a' of
- In the expression: $(caseE (litE $ CharL 'a') [])
- In an equation for `f': f = $(caseE (litE $ CharL 'a') [])
diff --git a/testsuite/tests/ghc-regress/th/TH_exn1.hs b/testsuite/tests/ghc-regress/th/TH_exn1.hs
deleted file mode 100644
index b401ca40d5..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_exn1.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Test error message when the code in a splice
--- fails in an immediate fashion (e.g. with a
--- pattern match failure)
-
-module ShouldCompile where
-
-$( case reverse "no" of
- [] -> return []
- )
diff --git a/testsuite/tests/ghc-regress/th/TH_exn1.stderr b/testsuite/tests/ghc-regress/th/TH_exn1.stderr
deleted file mode 100644
index f544485245..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_exn1.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-TH_exn1.hs:1:1:
- Exception when trying to run compile-time code:
- TH_exn1.hs:(9,4)-(10,23): Non-exhaustive patterns in case
-
- Code: case reverse "no" of { [] -> return (GHC.Types.[]) }
diff --git a/testsuite/tests/ghc-regress/th/TH_exn2.hs b/testsuite/tests/ghc-regress/th/TH_exn2.hs
deleted file mode 100644
index ce742d906e..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_exn2.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Test error message when the code in a splice
--- fails in a lazy fashion (e.g. a (head [])
--- thunk is embedded in the returned structure).
-
-module TH where
-
-$( do { ds <- [d| |]
- ; return (tail ds) }
- )
diff --git a/testsuite/tests/ghc-regress/th/TH_exn2.stderr b/testsuite/tests/ghc-regress/th/TH_exn2.stderr
deleted file mode 100644
index 79ec99171a..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_exn2.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-TH_exn2.hs:1:1:
- Exception when trying to run compile-time code:
- Prelude.tail: empty list
- Code: do { ds <- [d| |];
- return (tail ds) }
diff --git a/testsuite/tests/ghc-regress/th/TH_fail.hs b/testsuite/tests/ghc-regress/th/TH_fail.hs
deleted file mode 100644
index 174939c5cb..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_fail.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Test for sane reporting on TH code giving up.
-
-module ShouldCompile where
-
-$( fail "Code not written yet..." )
diff --git a/testsuite/tests/ghc-regress/th/TH_fail.stderr b/testsuite/tests/ghc-regress/th/TH_fail.stderr
deleted file mode 100644
index b73acbbb22..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_fail.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-TH_fail.hs:7:4: Code not written yet...
diff --git a/testsuite/tests/ghc-regress/th/TH_foreignInterruptible.hs b/testsuite/tests/ghc-regress/th/TH_foreignInterruptible.hs
deleted file mode 100644
index d025c355a3..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_foreignInterruptible.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TemplateHaskell, ForeignFunctionInterface, InterruptibleFFI #-}
-
-module TH_foreign where
-
-import Foreign.Ptr
-import Language.Haskell.TH
-
-$(return [ForeignD (ImportF CCall Interruptible "&" (mkName "foo") (AppT (ConT ''Ptr) (ConT ''())))])
-
--- Should generate the same as this:
-foreign import ccall interruptible "&" foo1 :: Ptr ()
diff --git a/testsuite/tests/ghc-regress/th/TH_foreignInterruptible.stderr b/testsuite/tests/ghc-regress/th/TH_foreignInterruptible.stderr
deleted file mode 100644
index b9aab05755..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_foreignInterruptible.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-TH_foreignInterruptible.hs:1:1: Splicing declarations
- return
- [ForeignD
- (ImportF
- CCall
- Interruptible
- "&"
- (mkName "foo")
- (AppT (ConT 'Ptr) (ConT '())))]
- ======>
- TH_foreignInterruptible.hs:8:3-100
- foreign import ccall interruptible "static &foo" foo
- :: Ptr GHC.Unit.()
diff --git a/testsuite/tests/ghc-regress/th/TH_genEx.hs b/testsuite/tests/ghc-regress/th/TH_genEx.hs
deleted file mode 100644
index fdc47960ad..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_genEx.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# OPTIONS -ddump-splices -XExistentialQuantification #-}
-{-# LANGUAGE TemplateHaskell #-}
-
-module TH_genEx where
-
-import TH_genExLib
-import Language.Haskell.TH
-
-class MyInterface a where
- foo :: a -> Int
- foo1 :: Int -> a -> Int
-
-$(genAny (reify ''MyInterface))
-
diff --git a/testsuite/tests/ghc-regress/th/TH_genEx.stderr b/testsuite/tests/ghc-regress/th/TH_genEx.stderr
deleted file mode 100644
index 88eeca7d5c..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_genEx.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-TH_genEx.hs:1:1: Splicing declarations
- genAny (reify 'MyInterface)
- ======>
- TH_genEx.hs:13:3-30
- data AnyMyInterface1111
- = forall a. MyInterface a => AnyMyInterface1111 a
diff --git a/testsuite/tests/ghc-regress/th/TH_genExLib.hs b/testsuite/tests/ghc-regress/th/TH_genExLib.hs
deleted file mode 100644
index 02784ac87b..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_genExLib.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-
-module TH_genExLib where
-
-import Language.Haskell.TH
-
-genAny :: Q Info -> Q [Dec]
-genAny decl = do { d <- decl
- ; case d of
- ClassI (ClassD _ name _ _ decls) _ -> return [genAnyClass name decls]
- _ -> error "genAny can be applied to classes only"
- }
-
-genAnyClass :: Name -> [Dec] -> Dec
-genAnyClass name decls
- = DataD [] anyName [] [constructor] []
- where
- anyName = mkName ("Any" ++ nameBase name ++ "1111")
- constructor = ForallC [PlainTV var_a] [ClassP name [VarT var_a]] $
- NormalC anyName [(NotStrict, VarT var_a)]
- var_a = mkName "a"
diff --git a/testsuite/tests/ghc-regress/th/TH_ghci1.script b/testsuite/tests/ghc-regress/th/TH_ghci1.script
deleted file mode 100644
index bcc752b9f4..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_ghci1.script
+++ /dev/null
@@ -1,6 +0,0 @@
-:m +Language.Haskell.TH
-let { g1 :: Q Exp -> Q Exp; g1 x = x }
-let { g2 :: Name -> Q Exp; g2 x = return (VarE x) }
-let h x = x::Int
-$(g1 [| h |]) 5
-$(g2 'h) 6
diff --git a/testsuite/tests/ghc-regress/th/TH_ghci1.stdout b/testsuite/tests/ghc-regress/th/TH_ghci1.stdout
deleted file mode 100644
index 6613b56886..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_ghci1.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-5
-6
diff --git a/testsuite/tests/ghc-regress/th/TH_import_loop/Main.hs b/testsuite/tests/ghc-regress/th/TH_import_loop/Main.hs
deleted file mode 100644
index 4cd66a0173..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_import_loop/Main.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-module Main where
-
-import ModuleA
-
-main = return ()
-
diff --git a/testsuite/tests/ghc-regress/th/TH_import_loop/Makefile b/testsuite/tests/ghc-regress/th/TH_import_loop/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_import_loop/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/th/TH_import_loop/ModuleA.hs b/testsuite/tests/ghc-regress/th/TH_import_loop/ModuleA.hs
deleted file mode 100644
index 799f177dfe..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_import_loop/ModuleA.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module ModuleA where
-
-import ModuleB
-
diff --git a/testsuite/tests/ghc-regress/th/TH_import_loop/ModuleA.hs-boot b/testsuite/tests/ghc-regress/th/TH_import_loop/ModuleA.hs-boot
deleted file mode 100644
index a5976fdcc6..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_import_loop/ModuleA.hs-boot
+++ /dev/null
@@ -1,3 +0,0 @@
-
-module ModuleA where
-
diff --git a/testsuite/tests/ghc-regress/th/TH_import_loop/ModuleB.hs b/testsuite/tests/ghc-regress/th/TH_import_loop/ModuleB.hs
deleted file mode 100644
index 9aaffb613f..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_import_loop/ModuleB.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-{-# LANGUAGE TemplateHaskell #-}
-
-module ModuleB where
-
-import ModuleC
-
-$(nothing)
-
diff --git a/testsuite/tests/ghc-regress/th/TH_import_loop/ModuleC.hs b/testsuite/tests/ghc-regress/th/TH_import_loop/ModuleC.hs
deleted file mode 100644
index 3047a8f0d4..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_import_loop/ModuleC.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-module ModuleC where
-
-import Language.Haskell.TH
-
-import {-# SOURCE #-} ModuleA
-
-nothing = return [] :: Q [Dec]
-
diff --git a/testsuite/tests/ghc-regress/th/TH_import_loop/TH_import_loop.T b/testsuite/tests/ghc-regress/th/TH_import_loop/TH_import_loop.T
deleted file mode 100644
index ebb8a427a7..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_import_loop/TH_import_loop.T
+++ /dev/null
@@ -1,5 +0,0 @@
-
-setTestOpts(if_compiler_profiled(skip))
-
-test('TH_import_loop', expect_broken(1012), multimod_compile_and_run, ['Main', '-v0'])
-
diff --git a/testsuite/tests/ghc-regress/th/TH_mkName.hs b/testsuite/tests/ghc-regress/th/TH_mkName.hs
deleted file mode 100644
index 44cddc89aa..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_mkName.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Test name quoting and splicing, for built-in syntax
-
-module TH_mkName where
-
-import Language.Haskell.TH
-
-x1 = $( return (ConE '()))
-x2 = $( return (ConE '(,)))
-x3 = $( return (ConE '[]))
-x4 = $( return (ConE '(:)))
-x5 = $( return (ConE 'Just))
-
-y1 = $( return (ConE (mkName "()")))
-y2 = $( return (ConE (mkName "(,)")))
-y3 = $( return (ConE (mkName "[]")))
-y4 = $( return (ConE (mkName ":")))
-y5 = $( return (ConE (mkName "Just")))
-
diff --git a/testsuite/tests/ghc-regress/th/TH_ppr1.hs b/testsuite/tests/ghc-regress/th/TH_ppr1.hs
deleted file mode 100644
index 763d7682e0..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_ppr1.hs
+++ /dev/null
@@ -1,37 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses #-}
-
-module Main (main) where
-
-import Language.Haskell.TH
-
-u1 :: a
-u1 = undefined
-
-u2 :: a
-u2 = undefined
-
-f :: a
-f = undefined
-
-(.+.) :: a
-(.+.) = undefined
-
-main :: IO ()
-main = do runQ [| f u1 u2 |] >>= p
- runQ [| u1 `f` u2 |] >>= p
- runQ [| (.+.) u1 u2 |] >>= p
- runQ [| u1 .+. u2 |] >>= p
- runQ [| (:) u1 u2 |] >>= p
- runQ [| u1 : u2 |] >>= p
- runQ [| \((:) x xs) -> x |] >>= p
- runQ [| \(x : xs) -> x |] >>= p
- runQ [d| class Foo a b where
- foo :: a -> b |] >>= p
- runQ [| \x -> (x, 1 `x` 2) |] >>= p
- runQ [| \(+) -> ((+), 1 + 2) |] >>= p
- runQ [| (f, 1 `f` 2) |] >>= p
- runQ [| ((.+.), 1 .+. 2) |] >>= p
-
-p :: Ppr a => a -> IO ()
-p = putStrLn . pprint
-
diff --git a/testsuite/tests/ghc-regress/th/TH_ppr1.stdout b/testsuite/tests/ghc-regress/th/TH_ppr1.stdout
deleted file mode 100644
index 291d0bf748..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_ppr1.stdout
+++ /dev/null
@@ -1,14 +0,0 @@
-Main.f Main.u1 Main.u2
-Main.u1 `Main.f` Main.u2
-(Main..+.) Main.u1 Main.u2
-Main.u1 Main..+. Main.u2
-(GHC.Types.:) Main.u1 Main.u2
-Main.u1 GHC.Types.: Main.u2
-\((GHC.Types.:) x_0 xs_1) -> x_0
-\(x_0 GHC.Types.: xs_1) -> x_0
-class Foo a_0 b_1
- where foo :: a_0 -> b_1
-\x_0 -> (x_0, 1 `x_0` 2)
-\(+_0) -> ((+_0), 1 +_0 2)
-(Main.f, 1 `Main.f` 2)
-((Main..+.), 1 Main..+. 2)
diff --git a/testsuite/tests/ghc-regress/th/TH_pragma.hs b/testsuite/tests/ghc-regress/th/TH_pragma.hs
deleted file mode 100644
index a78b5483fe..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_pragma.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# OPTIONS -ddump-splices #-}
-{-# LANGUAGE TemplateHaskell #-}
-module TH_pragma where
-
-
-$( [d| foo :: Int -> Int
- {-# NOINLINE foo #-}
- foo x = x + 1 |] )
-
-$( [d| bar :: Num a => a -> a
- {-# SPECIALISE INLINE [~1] bar :: Float -> Float #-}
- bar x = x * 10 |] )
diff --git a/testsuite/tests/ghc-regress/th/TH_pragma.stderr b/testsuite/tests/ghc-regress/th/TH_pragma.stderr
deleted file mode 100644
index 15feece963..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_pragma.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-TH_pragma.hs:1:1: Splicing declarations
- [d| foo :: Int -> Int
- {-# NOINLINE foo #-}
- foo x = x + 1 |]
- ======>
- TH_pragma.hs:(6,4)-(8,26)
- foo :: Int -> Int
- {-# NOINLINE foo #-}
- foo x = (x + 1)
-TH_pragma.hs:1:1: Splicing declarations
- [d| bar :: Num a => a -> a
- {-# SPECIALIZE INLINE[~1] bar :: Float -> Float #-}
- bar x = x * 10 |]
- ======>
- TH_pragma.hs:(10,4)-(12,31)
- bar :: forall a. Num a => a -> a
- {-# SPECIALIZE INLINE[~1] bar :: Float -> Float #-}
- bar x = (x * 10)
diff --git a/testsuite/tests/ghc-regress/th/TH_raiseErr1.hs b/testsuite/tests/ghc-regress/th/TH_raiseErr1.hs
deleted file mode 100644
index 97396f16c5..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_raiseErr1.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module TH_raiseErr1 where
-import Language.Haskell.TH
-
-foo = $(do { report True "Error test succeeded"; fail "" })
diff --git a/testsuite/tests/ghc-regress/th/TH_recompile/Main.hs b/testsuite/tests/ghc-regress/th/TH_recompile/Main.hs
deleted file mode 100644
index c4ce4a680f..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_recompile/Main.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-module Main where
-
-import Sub
-
-main = print $x
-
diff --git a/testsuite/tests/ghc-regress/th/TH_recompile/Makefile b/testsuite/tests/ghc-regress/th/TH_recompile/Makefile
deleted file mode 100644
index 9e717bd223..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_recompile/Makefile
+++ /dev/null
@@ -1,22 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-# Test for trac #481. GHC should notice that the code that generates
-# the splice has changed, and thus re-run it.
-
-clean:
- rm -f *.o
- rm -f hi
- rm -f test test2
- rm -f Sub.hs
-
-TH_recompile:
- $(MAKE) clean
- cp Sub1.hs Sub.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make -XTemplateHaskell Main.hs -o test
- cp Sub2.hs Sub.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -v0 --make -XTemplateHaskell Main.hs -o test2
- ./test
- ./test2
-
diff --git a/testsuite/tests/ghc-regress/th/TH_recompile/Sub1.hs b/testsuite/tests/ghc-regress/th/TH_recompile/Sub1.hs
deleted file mode 100644
index f52a654e44..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_recompile/Sub1.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module Sub where
-
-x = [| 1 |]
-
diff --git a/testsuite/tests/ghc-regress/th/TH_recompile/Sub2.hs b/testsuite/tests/ghc-regress/th/TH_recompile/Sub2.hs
deleted file mode 100644
index 3698ec5064..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_recompile/Sub2.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module Sub where
-
-x = [| 2 |]
-
diff --git a/testsuite/tests/ghc-regress/th/TH_recompile/TH_recompile.stdout b/testsuite/tests/ghc-regress/th/TH_recompile/TH_recompile.stdout
deleted file mode 100644
index 1191247b6d..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_recompile/TH_recompile.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-1
-2
diff --git a/testsuite/tests/ghc-regress/th/TH_recompile/all.T b/testsuite/tests/ghc-regress/th/TH_recompile/all.T
deleted file mode 100644
index ecdba11c05..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_recompile/all.T
+++ /dev/null
@@ -1,16 +0,0 @@
-def f(opts):
- opts.extra_hc_opts = '-XTemplateHaskell -package template-haskell'
- if (ghc_with_interpreter == 0):
- opts.skip = 1
-
-setTestOpts(f)
-setTestOpts(only_compiler_types(['ghc']))
-setTestOpts(only_ways(['normal']));
-setTestOpts(if_compiler_profiled(skip))
-
-test('TH_recompile',
- [expect_broken(481),
- clean_cmd('$MAKE -s clean')],
- run_command,
- ['$MAKE -s TH_recompile'])
-
diff --git a/testsuite/tests/ghc-regress/th/TH_recover.hs b/testsuite/tests/ghc-regress/th/TH_recover.hs
deleted file mode 100644
index 50527da85c..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_recover.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module Main where
-
-import Language.Haskell.TH
-
--- The recover successfully find that 'ola' is not in scope
--- and use '1' instead
-
-y = $(recover (return (LitE (IntegerL 1)))
- (reify (mkName ("ola")) >> return (LitE (IntegerL 2))))
-
-main = print y
-
diff --git a/testsuite/tests/ghc-regress/th/TH_recover.stdout b/testsuite/tests/ghc-regress/th/TH_recover.stdout
deleted file mode 100644
index d00491fd7e..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_recover.stdout
+++ /dev/null
@@ -1 +0,0 @@
-1
diff --git a/testsuite/tests/ghc-regress/th/TH_reifyDecl1.hs b/testsuite/tests/ghc-regress/th/TH_reifyDecl1.hs
deleted file mode 100644
index dfd05187ba..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_reifyDecl1.hs
+++ /dev/null
@@ -1,46 +0,0 @@
--- test reification of data declarations
-
-module TH_reifyDecl1 where
-
-import Language.Haskell.TH
-import Text.PrettyPrint.HughesPJ
-
-infixl 3 `m`
-
--- simple
-data T = A | B
-
--- parametric
-data R a = C a | D
-
--- recursive
-data List a = Nil | Cons a (List a)
-
--- infix operator
-data Tree a = Leaf | Tree a :+: Tree a
-
--- type declaration
-type IntList = [Int]
-
--- newtype declaration
-newtype Length = Length Int
-
--- simple class
-class C a where
- m :: a -> Int
-
-test :: ()
-test = $(let
- display :: Name -> Q ()
- display q = do { i <- reify q; report False (pprint i) }
- in do { display ''T
- ; display ''R
- ; display ''List
- ; display ''Tree
- ; display ''IntList
- ; display ''Length
- ; display 'Leaf
- ; display 'm
- ; [| () |] })
-
-
diff --git a/testsuite/tests/ghc-regress/th/TH_reifyDecl1.stderr b/testsuite/tests/ghc-regress/th/TH_reifyDecl1.stderr
deleted file mode 100644
index cf4b92d33b..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_reifyDecl1.stderr
+++ /dev/null
@@ -1,30 +0,0 @@
-
-TH_reifyDecl1.hs:33:10:
- data TH_reifyDecl1.T = TH_reifyDecl1.A | TH_reifyDecl1.B
-
-TH_reifyDecl1.hs:33:10:
- data TH_reifyDecl1.R a_0 = TH_reifyDecl1.C a_0 | TH_reifyDecl1.D
-
-TH_reifyDecl1.hs:33:10:
- data TH_reifyDecl1.List a_0
- = TH_reifyDecl1.Nil
- | TH_reifyDecl1.Cons a_0 (TH_reifyDecl1.List a_0)
-
-TH_reifyDecl1.hs:33:10:
- data TH_reifyDecl1.Tree a_0
- = TH_reifyDecl1.Leaf
- | (TH_reifyDecl1.Tree a_0) TH_reifyDecl1.:+: (TH_reifyDecl1.Tree a_0)
-
-TH_reifyDecl1.hs:33:10:
- type TH_reifyDecl1.IntList = [GHC.Types.Int]
-
-TH_reifyDecl1.hs:33:10:
- newtype TH_reifyDecl1.Length = TH_reifyDecl1.Length GHC.Types.Int
-
-TH_reifyDecl1.hs:33:10:
- Constructor from TH_reifyDecl1.Tree: TH_reifyDecl1.Leaf :: forall a_0 . TH_reifyDecl1.Tree a_0
-
-TH_reifyDecl1.hs:33:10:
- Class op from TH_reifyDecl1.C: TH_reifyDecl1.m :: forall a_0 . TH_reifyDecl1.C a_0 =>
- a_0 -> GHC.Types.Int
- infixl 3 TH_reifyDecl1.m
diff --git a/testsuite/tests/ghc-regress/th/TH_reifyDecl2.hs b/testsuite/tests/ghc-regress/th/TH_reifyDecl2.hs
deleted file mode 100644
index 44c14e0247..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_reifyDecl2.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-
-module TH_reifyDecl2 where
-
-import Language.Haskell.TH
-import System.IO
-
-$(
- do x <- reify ''Maybe
- runIO $ hPutStrLn stderr $ pprint x
- return []
- )
-
diff --git a/testsuite/tests/ghc-regress/th/TH_reifyDecl2.stderr b/testsuite/tests/ghc-regress/th/TH_reifyDecl2.stderr
deleted file mode 100644
index 1beab4d9c3..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_reifyDecl2.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-data Data.Maybe.Maybe a_0 = Data.Maybe.Nothing
- | Data.Maybe.Just a_0
diff --git a/testsuite/tests/ghc-regress/th/TH_reifyMkName.hs b/testsuite/tests/ghc-regress/th/TH_reifyMkName.hs
deleted file mode 100644
index c5d5ebeea9..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_reifyMkName.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- Trac #2339
-
-module Foo where
-
-import Language.Haskell.TH
-
-type C = Int
-
-$(do
- a <- reify $ mkName "C"
- report False $ show a
- return []
- )
diff --git a/testsuite/tests/ghc-regress/th/TH_reifyMkName.stderr b/testsuite/tests/ghc-regress/th/TH_reifyMkName.stderr
deleted file mode 100644
index 0537f1ddcf..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_reifyMkName.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-TH_reifyMkName.hs:9:3:
- TyConI (TySynD Foo.C [] (ConT GHC.Types.Int))
diff --git a/testsuite/tests/ghc-regress/th/TH_reifyType1.hs b/testsuite/tests/ghc-regress/th/TH_reifyType1.hs
deleted file mode 100644
index d8b45db271..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_reifyType1.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- test reification of monomorphic types
-
-module TH_reifyType1
-where
-
-import Language.Haskell.TH
-
-foo :: Int -> Int
-foo x = x + 1
-
-type_foo :: InfoQ
-type_foo = reify 'foo
-
diff --git a/testsuite/tests/ghc-regress/th/TH_reifyType2.hs b/testsuite/tests/ghc-regress/th/TH_reifyType2.hs
deleted file mode 100644
index 85615b5382..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_reifyType2.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- test reification of polymorphic types
-
-module TH_reifyType1
-where
-
-import Language.Haskell.TH
-
-type_length :: InfoQ
-type_length = reify 'length
diff --git a/testsuite/tests/ghc-regress/th/TH_repE1.hs b/testsuite/tests/ghc-regress/th/TH_repE1.hs
deleted file mode 100644
index 1938a9bdc3..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repE1.hs
+++ /dev/null
@@ -1,30 +0,0 @@
--- test the representation of literals and also explicit type annotations
-
-module TH_repE1
-where
-
-import Language.Haskell.TH
-
-integralExpr :: ExpQ
-integralExpr = [| 42 |]
-
-intExpr :: ExpQ
-intExpr = [| 42 :: Int |]
-
-integerExpr :: ExpQ
-integerExpr = [| 42 :: Integer |]
-
-charExpr :: ExpQ
-charExpr = [| 'x' |]
-
-stringExpr :: ExpQ
-stringExpr = [| "A String" |]
-
-fractionalExpr :: ExpQ
-fractionalExpr = [| 1.2 |]
-
-floatExpr :: ExpQ
-floatExpr = [| 1.2 :: Float |]
-
-doubleExpr :: ExpQ
-doubleExpr = [| 1.2 :: Double |]
diff --git a/testsuite/tests/ghc-regress/th/TH_repE2.hs b/testsuite/tests/ghc-regress/th/TH_repE2.hs
deleted file mode 100644
index bc27bfeefd..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repE2.hs
+++ /dev/null
@@ -1,36 +0,0 @@
--- test the representation of literals and also explicit type annotations
-
-module Main
-where
-
-import Language.Haskell.TH
-
-main :: IO ()
-main = mapM_ putStrLn [show an_integral, show an_int, show an_integer,
- show an_char, show an_string, show an_fractional,
- show an_float, show an_double]
-
-an_integral :: Integer
-an_integral = $( [| 42 |] )
-
-an_int :: Int
-an_int = $( [| 42 :: Int |] )
-
-an_integer :: Integer
-an_integer = $( [| 98765432123456789876 :: Integer |] )
-
-an_char :: Char
-an_char = $( [| 'x' |] )
-
-an_string :: String
-an_string = $( [| "A String" |] )
-
-an_fractional :: Double
-an_fractional = $( [| 1.2 |] )
-
-an_float :: Float
-an_float = $( [| 1.2 :: Float |] )
-
-an_double :: Double
-an_double = $( [| 1.2 :: Double |] )
-
diff --git a/testsuite/tests/ghc-regress/th/TH_repE2.stdout b/testsuite/tests/ghc-regress/th/TH_repE2.stdout
deleted file mode 100644
index fe25631577..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repE2.stdout
+++ /dev/null
@@ -1,8 +0,0 @@
-42
-42
-98765432123456789876
-'x'
-"A String"
-1.2
-1.2
-1.2
diff --git a/testsuite/tests/ghc-regress/th/TH_repE3.hs b/testsuite/tests/ghc-regress/th/TH_repE3.hs
deleted file mode 100644
index 5f0453c1a7..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repE3.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- test the representation of literals and also explicit type annotations
-
-module TH_repE1
-where
-
-import Language.Haskell.TH
-
-emptyListExpr :: ExpQ
-emptyListExpr = [| [] |]
-
-singletonListExpr :: ExpQ
-singletonListExpr = [| [4] |]
-
-listExpr :: ExpQ
-listExpr = [| [4,5,6] |]
-
-consExpr :: ExpQ
-consExpr = [| 4:5:6:[] |]
-
diff --git a/testsuite/tests/ghc-regress/th/TH_repGuard.hs b/testsuite/tests/ghc-regress/th/TH_repGuard.hs
deleted file mode 100644
index b2ab4af6d6..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repGuard.hs
+++ /dev/null
@@ -1,35 +0,0 @@
-
-module Main
-where
-
-import Language.Haskell.TH
-import System.IO
-
-$(
- do ds <- [d|
- foo :: Int -> Int
- foo x
- | x == 5 = 6
- foo x = 7
- |]
- runIO $ do { putStrLn (pprint ds); hFlush stdout }
- return ds
- )
-
-$(
- do ds <- [d|
- bar :: Maybe Int -> Int
- bar x
- | Just y <- x = y
- bar _ = 9
- |]
- runIO $ do { putStrLn (pprint ds) ; hFlush stdout }
- return ds
- )
-
-main :: IO ()
-main = do putStrLn $ show $ foo 5
- putStrLn $ show $ foo 8
- putStrLn $ show $ bar (Just 2)
- putStrLn $ show $ bar Nothing
-
diff --git a/testsuite/tests/ghc-regress/th/TH_repGuard.stderr b/testsuite/tests/ghc-regress/th/TH_repGuard.stderr
deleted file mode 100644
index 896793a113..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repGuard.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-foo :: GHC.Types.Int -> GHC.Types.Int
-foo x_0 | x_0 GHC.Classes.== 5 = 6
-foo x_1 = 7
-bar :: Data.Maybe.Maybe GHC.Types.Int -> GHC.Types.Int
-bar x_0 | Data.Maybe.Just y_1 <- x_0
- = y_1
-bar _ = 9
diff --git a/testsuite/tests/ghc-regress/th/TH_repGuardOutput.hs b/testsuite/tests/ghc-regress/th/TH_repGuardOutput.hs
deleted file mode 100644
index 8335bf3231..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repGuardOutput.hs
+++ /dev/null
@@ -1,29 +0,0 @@
--- test the representation of unboxed literals
-
-module Main
-where
-
-$(
- [d|
- foo :: Int -> Int
- foo x
- | x == 5 = 6
- foo x = 7
- |]
- )
-
-$(
- [d|
- bar :: Maybe Int -> Int
- bar x
- | Just y <- x = y
- bar _ = 9
- |]
- )
-
-main :: IO ()
-main = do putStrLn $ show $ foo 5
- putStrLn $ show $ foo 8
- putStrLn $ show $ bar (Just 2)
- putStrLn $ show $ bar Nothing
-
diff --git a/testsuite/tests/ghc-regress/th/TH_repGuardOutput.stdout b/testsuite/tests/ghc-regress/th/TH_repGuardOutput.stdout
deleted file mode 100644
index 2cf95803c4..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repGuardOutput.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-6
-7
-2
-9
diff --git a/testsuite/tests/ghc-regress/th/TH_repPatSig.hs b/testsuite/tests/ghc-regress/th/TH_repPatSig.hs
deleted file mode 100644
index 3f504ff372..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repPatSig.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
--- test the representation of unboxed literals
-
-module Main
-where
-
-import Language.Haskell.TH
-
-$(
- [d|
- foo :: Int -> Int
- foo (x :: Int) = x
- |]
- )
-
-main :: IO ()
-main = return ()
-
diff --git a/testsuite/tests/ghc-regress/th/TH_repPatSig.stderr b/testsuite/tests/ghc-regress/th/TH_repPatSig.stderr
deleted file mode 100644
index 7269068d7d..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repPatSig.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-TH_repPatSig.hs:10:3:
- Type signatures in patterns not (yet) handled by Template Haskell
- x :: Int
diff --git a/testsuite/tests/ghc-regress/th/TH_repPrim.hs b/testsuite/tests/ghc-regress/th/TH_repPrim.hs
deleted file mode 100644
index 2be35b1424..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repPrim.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-{-# LANGUAGE MagicHash #-}
--- test the representation of unboxed literals
-
-module Main where
-
-import GHC.Exts
-import GHC.Float
-import Language.Haskell.TH
-import Text.PrettyPrint
-import System.IO
-
-main :: IO ()
-main = do putStrLn $ show $ $( do e <- [| I# 20# |]
- runIO $ putStrLn $ show e
- runIO $ putStrLn $ pprint e
- runIO $ hFlush stdout
- return e )
- putStrLn $ show $ $( do e <- [| W# 32## |]
- runIO $ putStrLn $ show e
- runIO $ putStrLn $ pprint e
- runIO $ hFlush stdout
- return e )
- putStrLn $ show $ $( do e <- [| F# 12.3# |]
- runIO $ putStrLn $ show e
- runIO $ putStrLn $ pprint e
- runIO $ hFlush stdout
- return e )
- putStrLn $ show $ $( do e <- [| D# 24.6## |]
- runIO $ putStrLn $ show e
- runIO $ putStrLn $ pprint e
- runIO $ hFlush stdout
- return e )
-
diff --git a/testsuite/tests/ghc-regress/th/TH_repPrim.stderr b/testsuite/tests/ghc-regress/th/TH_repPrim.stderr
deleted file mode 100644
index 64df06518c..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repPrim.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-AppE (ConE GHC.Types.I#) (LitE (IntPrimL 20))
-GHC.Types.I# 20#
-AppE (ConE GHC.Word.W#) (LitE (WordPrimL 32))
-GHC.Word.W# 32##
-AppE (ConE GHC.Types.F#) (LitE (FloatPrimL (123 % 10)))
-GHC.Types.F# 12.3#
-AppE (ConE GHC.Types.D#) (LitE (DoublePrimL (123 % 5)))
-GHC.Types.D# 24.6##
diff --git a/testsuite/tests/ghc-regress/th/TH_repPrim2.hs b/testsuite/tests/ghc-regress/th/TH_repPrim2.hs
deleted file mode 100644
index 994390a767..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repPrim2.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-{-# LANGUAGE MagicHash, UnboxedTuples #-}
--- test the representation of unboxed literals
-
-module Main where
-
-import GHC.Exts
-import GHC.Float
-import Language.Haskell.TH
-import Text.PrettyPrint
-import System.IO
-
-main :: IO ()
-main = do putStrLn $ show $ $( do e <- [| 20# |]
- runIO $ putStrLn $ show e
- runIO $ putStrLn $ pprint e
- runIO $ hFlush stdout
- [| I# $( return e) |] )
- putStrLn $ show $ $( do e <- [| 32## |]
- runIO $ putStrLn $ show e
- runIO $ putStrLn $ pprint e
- runIO $ hFlush stdout
- [| W# $(return e) |] )
- putStrLn $ show $ $( do e <- [| 12.3# |]
- runIO $ putStrLn $ show e
- runIO $ putStrLn $ pprint e
- runIO $ hFlush stdout
- [| F# $(return e) |] )
- putStrLn $ show $ $( do e <- [| 24.6## |]
- runIO $ putStrLn $ show e
- runIO $ putStrLn $ pprint e
- runIO $ hFlush stdout
- [| D# $(return e) |] )
-
diff --git a/testsuite/tests/ghc-regress/th/TH_repPrim2.stderr b/testsuite/tests/ghc-regress/th/TH_repPrim2.stderr
deleted file mode 100644
index e2a9458d45..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repPrim2.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-LitE (IntPrimL 20)
-20#
-LitE (WordPrimL 32)
-32##
-LitE (FloatPrimL (123 % 10))
-12.3#
-LitE (DoublePrimL (123 % 5))
-24.6##
diff --git a/testsuite/tests/ghc-regress/th/TH_repPrimOutput.hs b/testsuite/tests/ghc-regress/th/TH_repPrimOutput.hs
deleted file mode 100644
index 721b15dd2c..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repPrimOutput.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE MagicHash #-}
--- test the representation of unboxed literals
-
-module Main
-where
-
-import GHC.Exts
-import GHC.Float
-import Language.Haskell.TH
-import Text.PrettyPrint
-import System.IO
-
-main :: IO ()
-main = do putStrLn $ show $ $( do e <- [| I# 20# |]
- return e )
- putStrLn $ show $ $( do e <- [| W# 32## |]
- return e )
- putStrLn $ show $ $( do e <- [| F# 12.3# |]
- return e )
- putStrLn $ show $ $( do e <- [| D# 24.6## |]
- return e )
-
-
diff --git a/testsuite/tests/ghc-regress/th/TH_repPrimOutput.stdout b/testsuite/tests/ghc-regress/th/TH_repPrimOutput.stdout
deleted file mode 100644
index 0dcc51aeb6..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repPrimOutput.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-20
-32
-12.3
-24.6
diff --git a/testsuite/tests/ghc-regress/th/TH_repPrimOutput2.hs b/testsuite/tests/ghc-regress/th/TH_repPrimOutput2.hs
deleted file mode 100644
index a7282064db..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repPrimOutput2.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE MagicHash, UnboxedTuples #-}
--- test the representation of unboxed literals
-
-module Main
-where
-
-import GHC.Exts
-import GHC.Float
-import Language.Haskell.TH
-import Text.PrettyPrint
-import System.IO
-
-main :: IO ()
-main = do putStrLn $ show $ $( do e <- [| 20# |]
- [| I# $(return e) |] )
- putStrLn $ show $ $( do e <- [| 32## |]
- [| W# $(return e) |] )
- putStrLn $ show $ $( do e <- [| 12.3# |]
- [| F# $(return e) |] )
- putStrLn $ show $ $( do e <- [| 24.6## |]
- [| D# $(return e) |] )
-
-
diff --git a/testsuite/tests/ghc-regress/th/TH_repPrimOutput2.stdout b/testsuite/tests/ghc-regress/th/TH_repPrimOutput2.stdout
deleted file mode 100644
index 0dcc51aeb6..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repPrimOutput2.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-20
-32
-12.3
-24.6
diff --git a/testsuite/tests/ghc-regress/th/TH_repUnboxedTuples.hs b/testsuite/tests/ghc-regress/th/TH_repUnboxedTuples.hs
deleted file mode 100644
index 30b6a5e2a8..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repUnboxedTuples.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE TemplateHaskell, UnboxedTuples #-}
--- test the representation of unboxed tuples
-
-module Main where
-
-import GHC.Exts
-import GHC.Float
-import Language.Haskell.TH
-import Text.PrettyPrint
-import System.IO
-
-main :: IO ()
-main = case bar () of
- (# str, int #) ->
- print (str, int)
-
-bar :: () -> (# String, Int #)
-bar () = $( do e <- [| case (# 'b', False #) of
- (# 'a', True #) -> (# "One", 1 #)
- (# 'b', False #) -> (# "Two", 2 #)
- (# _, _ #) -> (# "Three", 3 #)
- |]
- runIO $ putStrLn $ show e
- runIO $ putStrLn $ pprint e
- runIO $ hFlush stdout
- return e )
-
diff --git a/testsuite/tests/ghc-regress/th/TH_repUnboxedTuples.stderr b/testsuite/tests/ghc-regress/th/TH_repUnboxedTuples.stderr
deleted file mode 100644
index d5bfa68bec..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_repUnboxedTuples.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-CaseE (UnboxedTupE [LitE (CharL 'b'),ConE GHC.Types.False]) [Match (UnboxedTupP [LitP (CharL 'a'),ConP GHC.Types.True []]) (NormalB (UnboxedTupE [LitE (StringL "One"),LitE (IntegerL 1)])) [],Match (UnboxedTupP [LitP (CharL 'b'),ConP GHC.Types.False []]) (NormalB (UnboxedTupE [LitE (StringL "Two"),LitE (IntegerL 2)])) [],Match (UnboxedTupP [WildP,WildP]) (NormalB (UnboxedTupE [LitE (StringL "Three"),LitE (IntegerL 3)])) []]
-case (# 'b', GHC.Types.False #) of
- (# 'a', GHC.Types.True #) -> (# "One", 1 #)
- (# 'b', GHC.Types.False #) -> (# "Two", 2 #)
- (# _, _ #) -> (# "Three", 3 #)
diff --git a/testsuite/tests/ghc-regress/th/TH_runIO.hs b/testsuite/tests/ghc-regress/th/TH_runIO.hs
deleted file mode 100644
index 7a1f4c3d70..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_runIO.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- See Trac #1678
-
-module TH where
-
-import Language.Haskell.TH
-
-
--- foo = $(fail "hi")
-
-foo = $(runIO (fail "hi"))
diff --git a/testsuite/tests/ghc-regress/th/TH_runIO.stderr b/testsuite/tests/ghc-regress/th/TH_runIO.stderr
deleted file mode 100644
index f7a536a95a..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_runIO.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-TH_runIO.hs:12:9:
- Exception when trying to run compile-time code:
- user error (hi)
- Code: runIO (fail "hi")
- In the expression: $(runIO (fail "hi"))
- In an equation for `foo': foo = $(runIO (fail "hi"))
diff --git a/testsuite/tests/ghc-regress/th/TH_scope.hs b/testsuite/tests/ghc-regress/th/TH_scope.hs
deleted file mode 100644
index 7674a5d1c0..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_scope.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- Test for Trac #2188
-
-module TH_scope where
-
-f g = [d| f :: Int
- f = g
- g :: Int
- g = 4 |]
diff --git a/testsuite/tests/ghc-regress/th/TH_scopedTvs.hs b/testsuite/tests/ghc-regress/th/TH_scopedTvs.hs
deleted file mode 100644
index 015911fde8..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_scopedTvs.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE TemplateHaskell, ScopedTypeVariables #-}
-module Foo where
-
-
-$([d| f :: forall a. a->a
- f x = x::a
- |])
diff --git a/testsuite/tests/ghc-regress/th/TH_scopedTvs.stderr b/testsuite/tests/ghc-regress/th/TH_scopedTvs.stderr
deleted file mode 100644
index f8263fc28f..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_scopedTvs.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-TH_scopedTvs.hs:6:13:
- Illegal lexically-scoped type variable `a'
- Lexically scoped type variables are not supported by Template Haskell
diff --git a/testsuite/tests/ghc-regress/th/TH_sections.hs b/testsuite/tests/ghc-regress/th/TH_sections.hs
deleted file mode 100644
index 26d7db41ef..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_sections.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
--- Test for trac #2956
-
-module TH_sections where
-
-two :: Int
-two = $( [| (1 +) 1 |] )
-
-three :: Int
-three = $( [| (+ 2) 1 |] )
-
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceD1.hs b/testsuite/tests/ghc-regress/th/TH_spliceD1.hs
deleted file mode 100644
index f641874672..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceD1.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- We should get a civilised report of conflicting variable
--- bindings in the definition spliced in by foo
-
-module TH_spliceD1 where
-
-import TH_spliceD1_Lib
-
-$(foo)
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceD1.stderr b/testsuite/tests/ghc-regress/th/TH_spliceD1.stderr
deleted file mode 100644
index d54ef19b88..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceD1.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-TH_spliceD1.hs:10:3:
- Conflicting definitions for `c'
- Bound at: TH_spliceD1.hs:10:3-5
- TH_spliceD1.hs:10:3-5
- In an equation for `f'
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceD1_Lib.hs b/testsuite/tests/ghc-regress/th/TH_spliceD1_Lib.hs
deleted file mode 100644
index 47ffa4e4e6..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceD1_Lib.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
-module TH_spliceD1_Lib where
-import Language.Haskell.TH
-
-foo :: Q [Dec]
-foo = sequence [funD (mkName "f")
- [
- clause
- [varP $ mkName "c",varP $ mkName "c"]
- (normalB $ [| undefined |])
- []
- ]]
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceD2.hs b/testsuite/tests/ghc-regress/th/TH_spliceD2.hs
deleted file mode 100644
index f42672eda3..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceD2.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module TH_spliceD2 where
-
-import qualified TH_spliceD2_Lib
-
-$( [d| data T = T TH_spliceD2_Lib.T |] )
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceD2_Lib.hs b/testsuite/tests/ghc-regress/th/TH_spliceD2_Lib.hs
deleted file mode 100644
index 5a8799f4d0..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceD2_Lib.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module TH_spliceD2_Lib where
-
-data T = T Int
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceDecl1.hs b/testsuite/tests/ghc-regress/th/TH_spliceDecl1.hs
deleted file mode 100644
index 618218d3eb..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceDecl1.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- test splicing of a generated data declarations
-
-module TH_spliceDecl1
-where
-
-import Language.Haskell.TH
-
-
--- splice a simple data declaration
-$(return [DataD [] (mkName "T") [] [NormalC (mkName "C") []] []])
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceDecl2.hs b/testsuite/tests/ghc-regress/th/TH_spliceDecl2.hs
deleted file mode 100644
index e7f92d2c11..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceDecl2.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- test splicing of quoted data and newtype declarations
-
-module TH_spliceDecl2
-where
-
-import Language.Haskell.TH
-
--- splice a simple quoted declaration (x 2)
-$([d| data T1 = C1 |])
-
-$([d| newtype T2 = C2 String |])
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceDecl3.hs b/testsuite/tests/ghc-regress/th/TH_spliceDecl3.hs
deleted file mode 100644
index 28ea4b6d64..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceDecl3.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- test splicing of reified and renamed data declarations
-
-module TH_spliceDecl3
-where
-
-import Language.Haskell.TH
-import TH_spliceDecl3_Lib
-
-data T = C
-
-$(do { TyConI d <- reify ''T; rename' d})
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceDecl3_Lib.hs b/testsuite/tests/ghc-regress/th/TH_spliceDecl3_Lib.hs
deleted file mode 100644
index 1b8d44e781..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceDecl3_Lib.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module TH_spliceDecl3_Lib
-where
-
-import Language.Haskell.TH
-
-rename' :: Dec -> Q [Dec]
-rename' (DataD ctxt tyName tyvars cons derivs) =
- return [DataD ctxt (stripMod tyName) tyvars (map renameCons cons) derivs]
- where
- renameCons (NormalC conName tys) = NormalC (stripMod conName) tys
- --
- stripMod v = mkName (nameBase v ++ "'")
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceDecl4.hs b/testsuite/tests/ghc-regress/th/TH_spliceDecl4.hs
deleted file mode 100644
index 795ed2ae00..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceDecl4.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE TemplateHaskell, UndecidableInstances, FlexibleInstances, TypeSynonymInstances #-}
-
-module TH_spliceDecl4 where
-
-import TH_spliceDecl4_Lib
-
-instance IncrSelf String where
- incrSelf x = x ++ "x"
-
-$(instanceIncrSelfTuple 2)
-
-
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceDecl4_Lib.hs b/testsuite/tests/ghc-regress/th/TH_spliceDecl4_Lib.hs
deleted file mode 100644
index 104cba33c6..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceDecl4_Lib.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-
-{-# LANGUAGE TemplateHaskell, UndecidableInstances #-}
-
-module TH_spliceDecl4_Lib(
- instanceIncrSelfTuple,
- IncrSelf(..)
-)
-where
-import Control.Monad
-import Data.Maybe
-import Language.Haskell.TH
-
-class IncrSelf a where
- incrSelf :: a -> a
-
-
-
-instanceIncrSelfTuple :: Int -> Q [Dec]
-instanceIncrSelfTuple n = [d| incrSelf value = True |]
-
-
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceE1.hs b/testsuite/tests/ghc-regress/th/TH_spliceE1.hs
deleted file mode 100644
index bb12cbf277..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceE1.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Main where
-
-my_id :: a -> a
-my_id x = $( [| x |] )
-
-main = print (my_id "hello")
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceE1.stdout b/testsuite/tests/ghc-regress/th/TH_spliceE1.stdout
deleted file mode 100644
index 3580093b9d..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceE1.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"hello"
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceE3.hs b/testsuite/tests/ghc-regress/th/TH_spliceE3.hs
deleted file mode 100644
index c72ab79b50..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceE3.hs
+++ /dev/null
@@ -1,25 +0,0 @@
--- test the representation of literals and also explicit type annotations
-
-module TH_repE1
-where
-
-import Language.Haskell.TH
-
-$( do let emptyListExpr :: ExpQ
- emptyListExpr = [| [] |]
-
- singletonListExpr :: ExpQ
- singletonListExpr = [| [4] |]
-
- listExpr :: ExpQ
- listExpr = [| [4,5,6] |]
-
- consExpr :: ExpQ
- consExpr = [| 4:5:6:[] |]
-
- [d| foo = ($emptyListExpr, $singletonListExpr, $listExpr, $consExpr) |]
- )
-
-bar = $( [| case undefined of
- [1] -> 1 |] )
-
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceE4.hs b/testsuite/tests/ghc-regress/th/TH_spliceE4.hs
deleted file mode 100644
index 99ee7a7648..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceE4.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
-module Main where
-
-import Language.Haskell.TH
-
-$( do let h x = x
- foo = [| \x -> $(h [| x |]) |]
-
- [d| baz = $foo |]
- )
-
-main = print (baz "Hello")
-
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceE4.stdout b/testsuite/tests/ghc-regress/th/TH_spliceE4.stdout
deleted file mode 100644
index 4b849dbdb3..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceE4.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"Hello"
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceE5.hs b/testsuite/tests/ghc-regress/th/TH_spliceE5.hs
deleted file mode 100644
index a8b25f0490..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceE5.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-
-module Main where
-
-import TH_spliceE5_Lib
-
-v1 = "foo"
-
-main = putStrLn $(expandVars ["v1","v2"])
--- The splice expands to refer to both v1 and v2,
--- and the test checks that we don't dependency-analyse
--- the program so that one or the other isn't in scope
--- to the type checker
-
-
-v2 = "bar"
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceE5.stdout b/testsuite/tests/ghc-regress/th/TH_spliceE5.stdout
deleted file mode 100644
index 323fae03f4..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceE5.stdout
+++ /dev/null
@@ -1 +0,0 @@
-foobar
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceE5_Lib.hs b/testsuite/tests/ghc-regress/th/TH_spliceE5_Lib.hs
deleted file mode 100644
index 20a9300df4..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceE5_Lib.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-module TH_spliceE5_Lib where
-
-import Language.Haskell.TH
-
-expandVars :: [String] -> Q Exp
-expandVars s = [| concat $(return (ListE (map f s))) |]
- where
- f x = VarE (mkName x)
-
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceE5_prof.hs b/testsuite/tests/ghc-regress/th/TH_spliceE5_prof.hs
deleted file mode 100644
index 8c799193e5..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceE5_prof.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-
-module Main where
-
-import TH_spliceE5_prof_Lib
-
-v1 = "foo"
-
-main = putStrLn $(expandVars ["v1","v2"])
--- The splice expands to refer to both v1 and v2,
--- and the test checks that we don't dependency-analyse
--- the program so that one or the other isn't in scope
--- to the type checker
-
-
-v2 = "bar"
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceE5_prof.stdout b/testsuite/tests/ghc-regress/th/TH_spliceE5_prof.stdout
deleted file mode 100644
index 323fae03f4..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceE5_prof.stdout
+++ /dev/null
@@ -1 +0,0 @@
-foobar
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceE5_prof_Lib.hs b/testsuite/tests/ghc-regress/th/TH_spliceE5_prof_Lib.hs
deleted file mode 100644
index 1d1417e7ac..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceE5_prof_Lib.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-module TH_spliceE5_prof_Lib where
-
-import Language.Haskell.TH
-
-expandVars :: [String] -> Q Exp
-expandVars s = [| concat $(return (ListE (map f s))) |]
- where
- f x = VarE (mkName x)
-
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceE6.hs b/testsuite/tests/ghc-regress/th/TH_spliceE6.hs
deleted file mode 100644
index 0ba1ba5fc4..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceE6.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- This failed in 6.10.1, as the Name's for True and False in
--- Language.Haskell.TH.Syntax.{trueName,falseName} were wrong.
-
-module TH_spliceE6 where
-
-a = $( (\b -> [| b |]) True )
-b = $( (\m -> [| m |]) (Just 'm') )
-c = $( (\e -> [| e |]) (Left 'e' :: Either Char Bool) )
-
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceExpr1.hs b/testsuite/tests/ghc-regress/th/TH_spliceExpr1.hs
deleted file mode 100644
index 1a22f6f667..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceExpr1.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- test representation and splicing of left-parenthesised right infix operators
-
-module TH_spliceExpr1
-where
-
-import Language.Haskell.TH
-
-foo :: Int
-foo = $( [| ((+) $ 2) $ 2 |] )
-
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceGuard.hs b/testsuite/tests/ghc-regress/th/TH_spliceGuard.hs
deleted file mode 100644
index 4c220e85b5..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceGuard.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# OPTIONS_GHC -XTemplateHaskell #-}
-
--- Trac #2017
-
-module ShouldCompile where
-
- import Language.Haskell.TH
-
- $(do e <- [d| f a b
- | a == b = a
- | otherwise = b |]
- return e)
-
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceInst.hs b/testsuite/tests/ghc-regress/th/TH_spliceInst.hs
deleted file mode 100644
index fd0918ce78..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceInst.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Tickles a GHC 6.4 buglet
-
-module ShouldCompile where
-
-class Foo a where
- foo :: a -> a
- foo = id
-
--- Splice an instance decl that uses the default method
-$( [d| instance Foo () where |] )
-
-
-
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceViewPat/A.hs b/testsuite/tests/ghc-regress/th/TH_spliceViewPat/A.hs
deleted file mode 100644
index 0147d2eca2..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceViewPat/A.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE ViewPatterns #-}
-module A where
-
-import Language.Haskell.TH.Quote
-import Language.Haskell.TH
-
-foo :: QuasiQuoter
-foo = QuasiQuoter{quotePat = \s -> viewP [|(*2)|] (varP . mkName $ s)}
-
-bar :: QuasiQuoter
-bar = QuasiQuoter{quotePat = \_ -> [p|((*3) -> fixed_var)|] }
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceViewPat/Main.hs b/testsuite/tests/ghc-regress/th/TH_spliceViewPat/Main.hs
deleted file mode 100644
index 675ae99bf9..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceViewPat/Main.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE QuasiQuotes, ViewPatterns #-}
-
-module Main where
-
-import A
-
-main = do
- case 1 of
- [foo|x|] -> print x
- case 1 of
- [bar|<!anything~|] -> print fixed_var
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceViewPat/TH_spliceViewPat.stdout b/testsuite/tests/ghc-regress/th/TH_spliceViewPat/TH_spliceViewPat.stdout
deleted file mode 100644
index 4792e70f33..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceViewPat/TH_spliceViewPat.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-2
-3
diff --git a/testsuite/tests/ghc-regress/th/TH_spliceViewPat/test.T b/testsuite/tests/ghc-regress/th/TH_spliceViewPat/test.T
deleted file mode 100644
index fa50658a6b..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_spliceViewPat/test.T
+++ /dev/null
@@ -1,11 +0,0 @@
-def f(opts):
- opts.extra_hc_opts = '-XTemplateHaskell -package template-haskell'
- if (ghc_with_interpreter == 0):
- opts.skip = 1
-
-setTestOpts(f)
-setTestOpts(only_compiler_types(['ghc']))
-setTestOpts(only_ways(['normal','ghci']))
-setTestOpts(if_compiler_profiled(skip))
-
-test('TH_spliceViewPat', normal, multimod_compile_and_run, [ 'Main', '' ])
diff --git a/testsuite/tests/ghc-regress/th/TH_tf1.hs b/testsuite/tests/ghc-regress/th/TH_tf1.hs
deleted file mode 100644
index 2b5d3f8887..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_tf1.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module TH_tf1 where
-
-$( [d| data family T a |] )
-$( [d| data instance T Int = TInt Bool |] )
-
-foo :: Bool -> T Int
-foo b = TInt (b && b)
-
-$( [d| type family S a |] )
-$( [d| type instance S Int = Bool |] )
-
-bar :: S Int -> Int
-bar c = if c then 1 else 2
-
-$( [d| type family R (a :: * -> *) :: * -> * |] )
-$( [d| type instance R Maybe = [] |] )
-
-baz :: R Maybe Int -> Int
-baz = head
diff --git a/testsuite/tests/ghc-regress/th/TH_tf2.hs b/testsuite/tests/ghc-regress/th/TH_tf2.hs
deleted file mode 100644
index 94be291324..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_tf2.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-
-module TH_tf2 where
-
-{-
-$( [d| class C a where
- data T a
- foo :: Bool -> T a |] )
-
-$( [d| instance C Int where
- data T Int = TInt Bool
- foo b = TInt (b && b) |] )
-
-$( [d| instance C Float where
- data T Float = TFloat {flag :: Bool}
- foo b = TFloat {flag = b && b} |] )
--}
-
-class D a where
- type S a
- bar :: S a -> Int
-
-instance D Int where
- type S Int = Bool
- bar c = if c then 1 else 2
diff --git a/testsuite/tests/ghc-regress/th/TH_tf3.hs b/testsuite/tests/ghc-regress/th/TH_tf3.hs
deleted file mode 100644
index 08e089fdf1..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_tf3.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TypeFamilies, FlexibleInstances, UndecidableInstances #-}
-
-module TH_tf3 where
-
-type family T a
-
-$( [d| foo :: T [a] ~ Bool => a -> a
- foo x = x |] )
-
-$( [d| class C a
- instance a ~ Int => C a |] ) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/th/TH_tuple1.hs b/testsuite/tests/ghc-regress/th/TH_tuple1.hs
deleted file mode 100644
index c3469e4a97..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_tuple1.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
--- Test the use of tupleDataName, tupleTypeName
-
-module ShouldCompile where
-
-import Language.Haskell.TH
-
-foo = $( sigE (appsE [conE (tupleDataName 2),
- litE (integerL 1),
- litE (integerL 2)])
- (appT (appT (conT (tupleTypeName 2))
- (conT ''Integer))
- (conT ''Integer))
- )
diff --git a/testsuite/tests/ghc-regress/th/TH_unboxedSingleton.hs b/testsuite/tests/ghc-regress/th/TH_unboxedSingleton.hs
deleted file mode 100644
index d932285870..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_unboxedSingleton.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE TemplateHaskell, UnboxedTuples #-}
-
-module TH_unboxedSingleton where
-
-f :: () -> (# Int #)
-f () = $( [| (# 3 #) |] )
-
diff --git a/testsuite/tests/ghc-regress/th/TH_viewPatPrint.hs b/testsuite/tests/ghc-regress/th/TH_viewPatPrint.hs
deleted file mode 100644
index f0ef779691..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_viewPatPrint.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE ViewPatterns, QuasiQuotes #-}
-
-module Main where
-
-import Language.Haskell.TH
-
-main = do
- p <- runQ [p|(id -> x)|]
- print p
- putStrLn (pprint p)
diff --git a/testsuite/tests/ghc-regress/th/TH_viewPatPrint.stdout b/testsuite/tests/ghc-regress/th/TH_viewPatPrint.stdout
deleted file mode 100644
index f520b23008..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_viewPatPrint.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-ViewP (VarE GHC.Base.id) (VarP x)
-(GHC.Base.id -> x)
diff --git a/testsuite/tests/ghc-regress/th/TH_where.hs b/testsuite/tests/ghc-regress/th/TH_where.hs
deleted file mode 100644
index 94d8db76d4..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_where.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TemplateHaskell #-}
-
-module Main where
-
-import Language.Haskell.TH
-
-
-main = do {d <- runQ $ [| let { foo = bar where bar = 3 } in foo |]; print d}
diff --git a/testsuite/tests/ghc-regress/th/TH_where.stdout b/testsuite/tests/ghc-regress/th/TH_where.stdout
deleted file mode 100644
index 14c7c1a864..0000000000
--- a/testsuite/tests/ghc-regress/th/TH_where.stdout
+++ /dev/null
@@ -1 +0,0 @@
-LetE [ValD (VarP foo_0) (NormalB (VarE bar_1)) [ValD (VarP bar_1) (NormalB (LitE (IntegerL 3))) []]] (VarE foo_0)
diff --git a/testsuite/tests/ghc-regress/th/all.T b/testsuite/tests/ghc-regress/th/all.T
deleted file mode 100644
index 7ca7f09223..0000000000
--- a/testsuite/tests/ghc-regress/th/all.T
+++ /dev/null
@@ -1,185 +0,0 @@
-
-# This test needs to come before the setTestOpts calls below, as we want
-# to run it !if_compiler_profiled
-test('T4255', unless_compiler_profiled(skip), compile_fail, ['-v0'])
-
-def f(opts):
- opts.extra_hc_opts = '-XTemplateHaskell -package template-haskell'
- if (ghc_with_interpreter == 0):
- opts.skip = 1
-
-setTestOpts(f)
-setTestOpts(only_compiler_types(['ghc']))
-setTestOpts(only_ways(['normal','ghci']))
-setTestOpts(if_compiler_profiled(skip))
-
-test('TH_mkName', normal, compile, ['-v0'])
-test('TH_1tuple', normal, compile_fail, ['-v0'])
-
-test('TH_repE1', normal, compile, [''])
-test('TH_repE2', normal, compile_and_run, [''])
-test('TH_repE3', normal, compile, [''])
-test('TH_repPrim', normal, compile, ['-v0'])
-test('TH_repPrim2', normal, compile, ['-v0'])
-test('TH_repUnboxedTuples', normal, compile, ['-v0'])
-test('TH_spliceGuard', normal, compile, ['-v0'])
-test('TH_repPrimOutput', normal, compile_and_run, [''])
-test('TH_repPrimOutput2', normal, compile_and_run, [''])
-test('TH_repGuard', normal, compile, ['-v0'])
-test('TH_repGuardOutput', normal, compile_and_run, [''])
-test('TH_repPatSig', normal, compile_fail, [''])
-
-test('TH_spliceE5',
- extra_clean(['TH_spliceE5_Lib.hi', 'TH_spliceE5_Lib.o']),
- multimod_compile_and_run,
- ['TH_spliceE5.hs', '-v0'])
-
-test('TH_spliceE6', normal, compile, ['-v0'])
-
-test('TH_NestedSplices',
- extra_clean(['TH_NestedSplices_Lib.hi', 'TH_NestedSplices_Lib.o']),
- multimod_compile,
- ['TH_NestedSplices.hs', '-v0'])
-
-# Testing profiling with TH is a bit tricky; we've already disabled
-# the prof way above, and also we want to add options specifically for
-# profiling (-osuf p_o) because this is necessary when mixing
-# profiling w/ TH. Furthermore we must have built the program the
-# normal way first, which is why the work is done by a Makefile rule.
-test('TH_spliceE5_prof',
- [req_profiling,
- omit_ways(['ghci']),
- extra_clean(['TH_spliceE5_prof_Lib.p_o', 'TH_spliceE5_prof_Lib.hi',
- 'TH_spliceE5_prof_Lib.o','TH_spliceE5_prof.p_o'])],
- run_command,
- ['$MAKE -s --no-print-directory TH_spliceE5_prof'])
-
-test('TH_spliceD1',
- extra_clean(['TH_spliceD1_Lib.hi', 'TH_spliceD1_Lib.o']),
- multimod_compile_fail,
- ['TH_spliceD1', '-v0'])
-
-test('TH_spliceD2',
- extra_clean(['TH_spliceD2_Lib.hi', 'TH_spliceD2_Lib.o']),
- multimod_compile,
- ['TH_spliceD2', '-v0'])
-
-test('TH_reifyDecl1', normal, compile, ['-v0'])
-test('TH_reifyDecl2', normal, compile, ['-v0'])
-
-test('TH_reifyType1', normal, compile, [''])
-test('TH_reifyType2', normal, compile, [''])
-test('TH_reifyMkName', normal, compile, ['-v0'])
-
-test('TH_spliceDecl1', normal, compile, ['-v0'])
-test('TH_spliceDecl2', normal, compile, ['-v0'])
-test('TH_spliceDecl3',
- extra_clean(['TH_spliceDecl3_Lib.hi', 'TH_spliceDecl3_Lib.o']),
- multimod_compile,
- ['TH_spliceDecl3', '-v0'])
-test('TH_spliceDecl4',
- extra_clean(['TH_spliceDecl4_Lib.hi', 'TH_spliceDecl4_Lib.o']),
- multimod_compile,
- ['TH_spliceDecl4', '-v0'])
-
-test('T2597a',
- extra_clean(['T2597a_Lib.hi', 'T2597a_Lib.o']),
- multimod_compile,
- ['T2597a', '-v0'])
-
-test('T2597b',
- extra_clean(['T2597b_Lib.hi', 'T2597b_Lib.o']),
- multimod_compile_fail,
- ['T2597b', '-v0'])
-
-test('TH_spliceE1', normal, compile_and_run, [''])
-test('TH_spliceExpr1', normal, compile, ['-v0'])
-test('TH_spliceE3', normal, compile, ['-v0'])
-test('TH_spliceE4', normal, compile_and_run, [''])
-
-test('TH_bracket1', normal, compile, [''])
-test('TH_bracket2', normal, compile, [''])
-test('TH_bracket3', normal, compile, [''])
-
-test('TH_class1', normal, compile, ['-v0'])
-test('TH_tuple1', normal, compile, ['-v0'])
-test('TH_genEx',
- extra_clean(['TH_genExLib.hi', 'TH_genExLib.o']),
- multimod_compile,
- ['TH_genEx', '-v0'])
-
-test('TH_where', normal, compile_and_run, [''])
-
-test('TH_spliceInst', normal, compile, ['-v0'])
-
-test('TH_exn1', normal, compile_fail, ['-v0'])
-
-test('TH_dupdecl', normal, compile_fail, ['-v0'])
-test('TH_exn2', normal, compile_fail, ['-v0'])
-
-test('TH_recover', normal, compile_and_run, [''])
-test('TH_dataD1', normal, compile_fail, ['-v0'])
-
-test('TH_ppr1', normal, compile_and_run, [''])
-
-test('TH_fail', normal, compile_fail, ['-v0'])
-test('TH_scopedTvs', normal, compile_fail, ['-v0'])
-
-test('TH_runIO', normal, compile_fail, ['-v0'])
-
-test('TH_ghci1', normal, ghci_script, ['TH_ghci1.script'])
-
-test('TH_scope', normal, compile, [''])
-test('T2632', normal, compile, [''])
-test('T2700', normal, compile, ['-v0'])
-test('T2817', normal, compile, ['-v0'])
-test('T2713', normal, compile_fail, ['-v0'])
-test('T2674', normal, compile_fail, ['-v0'])
-test('T2931', normal, compile, ['-v0'])
-test('TH_emptycase', normal, compile_fail, ['-v0'])
-
-test('T2386', extra_clean(['T2386_Lib.hi', 'T2386_Lib.o']),
- run_command,
- ['$MAKE -s --no-print-directory T2386'] )
-
-test('T2685', extra_clean(['T2685a.hi','T2685a.o']),
- multimod_compile, ['T2685','-v0'])
-
-test('TH_sections', normal, compile, ['-v0'])
-
-test('TH_tf1', normal, compile, ['-v0'])
-test('TH_tf2', normal, compile, ['-v0'])
-test('TH_tf3', normal, compile, ['-v0'])
-
-test('TH_pragma', normal, compile, ['-v0 -dsuppress-uniques'])
-test('T3177', normal, compile, ['-v0'])
-test('T3177a', normal, compile_fail, ['-v0'])
-
-test('T3319', normal, compile, ['-ddump-splices -v0'])
-test('TH_foreignInterruptible', normal, compile, ['-ddump-splices -v0'])
-
-test('T3395', normal, compile_fail, ['-v0'])
-test('T3467', normal, compile, [''])
-test('T3572', normal, compile_and_run, [''])
-test('T3100', normal, compile, ['-v0'])
-test('T3920', normal, compile_and_run, ['-v0'])
-
-test('T3600', extra_clean(['T3600a.hi','T3600a.o']),
- multimod_compile, ['T3600','-v0'])
-test('T3845', normal, compile, ['-v0'])
-test('T3899', extra_clean(['T3899a.hi','T3899a.o']),
- multimod_compile, ['T3899','-v0 -ddump-splices -dsuppress-uniques'])
-test('T4056', normal, compile, ['-v0'])
-test('T4188', normal, compile, ['-v0'])
-test('T4233', normal, compile, ['-v0'])
-test('T4169', normal, compile, ['-v0'])
-test('T1835', normal, compile_and_run, ['-v0'])
-
-test('TH_viewPatPrint', normal, compile_and_run, [''])
-test('T4436', normal, compile, ['-v0 -ddump-splices'])
-test('T4949', normal, compile, ['-v0'])
-test('T5126', normal, compile, ['-v0'])
-test('T5217', normal, compile, ['-v0 -dsuppress-uniques -ddump-splices'])
-test('T5037', normal, compile, ['-v0'])
-test('TH_unboxedSingleton', normal, compile, ['-v0'])
-
diff --git a/testsuite/tests/ghc-regress/typecheck/Makefile b/testsuite/tests/ghc-regress/typecheck/Makefile
deleted file mode 100644
index 9101fbd40a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/typecheck/bug1465/B1.hs b/testsuite/tests/ghc-regress/typecheck/bug1465/B1.hs
deleted file mode 100644
index 146f5b0529..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/bug1465/B1.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module B1 where
-
-import A
-
-f :: T
-f = T
diff --git a/testsuite/tests/ghc-regress/typecheck/bug1465/B2.hs b/testsuite/tests/ghc-regress/typecheck/bug1465/B2.hs
deleted file mode 100644
index 669f9cbd2c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/bug1465/B2.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module B2 where
-
-import A
-
-f :: T
-f = T
diff --git a/testsuite/tests/ghc-regress/typecheck/bug1465/C.hs b/testsuite/tests/ghc-regress/typecheck/bug1465/C.hs
deleted file mode 100644
index 6275ecdaaf..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/bug1465/C.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module C where
-
-import qualified B1
-import qualified B2
-
-x = [B1.f,B2.f]
diff --git a/testsuite/tests/ghc-regress/typecheck/bug1465/Makefile b/testsuite/tests/ghc-regress/typecheck/bug1465/Makefile
deleted file mode 100644
index a5b535d453..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/bug1465/Makefile
+++ /dev/null
@@ -1,33 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-LOCAL_PKGCONF=local.package.conf
-
-PKG=bug1465
-
-clean:
- rm -f v1/setup v1/Setup.o v1/Setup.hi
- rm -f v2/setup v2/Setup.o v2/Setup.hi
- rm -rf v1/dist v2/dist
- rm -f *.o *.hi
- rm -f $(LOCAL_PKGCONF)
-
-bug1465:
- $(MAKE) clean
- $(MAKE) prep
- '$(TEST_HC)' $(TEST_HC_OPTS) -package-conf $(LOCAL_PKGCONF) -c C.hs || exit 0
- $(MAKE) clean
-
-prep:
- echo "[]" >$(LOCAL_PKGCONF)
- $(MAKE) prep.v1
- $(MAKE) prep.v2
- '$(TEST_HC)' $(TEST_HC_OPTS) -package-conf $(LOCAL_PKGCONF) -c -package $(PKG)-1.0 B1.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -package-conf $(LOCAL_PKGCONF) -c -package $(PKG)-2.0 B2.hs
-
-prep.%:
- cd $* && '$(TEST_HC)' -v0 --make -o setup Setup.hs
- cd $* && ./setup configure -v0 --with-compiler='$(TEST_HC)' --with-ghc-pkg='$(GHC_PKG)' --package-db ../$(LOCAL_PKGCONF)
- cd $* && ./setup build -v0
- cd $* && ./setup register -v0 --inplace
diff --git a/testsuite/tests/ghc-regress/typecheck/bug1465/all.T b/testsuite/tests/ghc-regress/typecheck/bug1465/all.T
deleted file mode 100644
index 3847d684d8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/bug1465/all.T
+++ /dev/null
@@ -1,4 +0,0 @@
-test('bug1465',
- clean_cmd('$MAKE -s clean'),
- run_command,
- ['$MAKE -s --no-print-directory bug1465'])
diff --git a/testsuite/tests/ghc-regress/typecheck/bug1465/bug1465.stderr b/testsuite/tests/ghc-regress/typecheck/bug1465/bug1465.stderr
deleted file mode 100644
index 47a4d0c616..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/bug1465/bug1465.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-C.hs:6:11:
- Couldn't match expected type `bug1465-1.0:A.T'
- with actual type `A.T'
- In the expression: B2.f
- In the expression: [B1.f, B2.f]
- In an equation for `x': x = [B1.f, B2.f]
diff --git a/testsuite/tests/ghc-regress/typecheck/bug1465/v1/A.hs b/testsuite/tests/ghc-regress/typecheck/bug1465/v1/A.hs
deleted file mode 100644
index 6656b4bdfc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/bug1465/v1/A.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module A where
-data T = T
diff --git a/testsuite/tests/ghc-regress/typecheck/bug1465/v1/Setup.hs b/testsuite/tests/ghc-regress/typecheck/bug1465/v1/Setup.hs
deleted file mode 100644
index 6fa548caf7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/bug1465/v1/Setup.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Main (main) where
-
-import Distribution.Simple
-
-main :: IO ()
-main = defaultMain
diff --git a/testsuite/tests/ghc-regress/typecheck/bug1465/v1/bug1465.cabal b/testsuite/tests/ghc-regress/typecheck/bug1465/v1/bug1465.cabal
deleted file mode 100644
index 542e7a67d0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/bug1465/v1/bug1465.cabal
+++ /dev/null
@@ -1,4 +0,0 @@
-name: bug1465
-version: 1.0
-exposed-modules: A
-build-depends: base
diff --git a/testsuite/tests/ghc-regress/typecheck/bug1465/v2/A.hs b/testsuite/tests/ghc-regress/typecheck/bug1465/v2/A.hs
deleted file mode 100644
index 6656b4bdfc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/bug1465/v2/A.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-module A where
-data T = T
diff --git a/testsuite/tests/ghc-regress/typecheck/bug1465/v2/Setup.hs b/testsuite/tests/ghc-regress/typecheck/bug1465/v2/Setup.hs
deleted file mode 100644
index 6fa548caf7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/bug1465/v2/Setup.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Main (main) where
-
-import Distribution.Simple
-
-main :: IO ()
-main = defaultMain
diff --git a/testsuite/tests/ghc-regress/typecheck/bug1465/v2/bug1465.cabal b/testsuite/tests/ghc-regress/typecheck/bug1465/v2/bug1465.cabal
deleted file mode 100644
index a9ccededfe..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/bug1465/v2/bug1465.cabal
+++ /dev/null
@@ -1,4 +0,0 @@
-name: bug1465
-version: 2.0
-exposed-modules: A
-build-depends: base
diff --git a/testsuite/tests/ghc-regress/typecheck/prog001/A.hs b/testsuite/tests/ghc-regress/typecheck/prog001/A.hs
deleted file mode 100644
index 4cef40ee75..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/prog001/A.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-module A where
-
-class Matrix a fa | a -> fa where
- row :: [a] -> fa
diff --git a/testsuite/tests/ghc-regress/typecheck/prog001/B.hs b/testsuite/tests/ghc-regress/typecheck/prog001/B.hs
deleted file mode 100644
index 322a04cde7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/prog001/B.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses #-}
-module B where
-import A
-
-newtype Val = Val [Int]
-
-instance Matrix Bool Val
diff --git a/testsuite/tests/ghc-regress/typecheck/prog001/C.hs b/testsuite/tests/ghc-regress/typecheck/prog001/C.hs
deleted file mode 100644
index 6c33aaa175..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/prog001/C.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module C where
-
--- !!! a test for missing instances w/ functional dependencies
--- (failed in GHC 5.00.2)
-
-import A
-import B
-
-ct0a = row [True,False,True,False]
diff --git a/testsuite/tests/ghc-regress/typecheck/prog001/Makefile b/testsuite/tests/ghc-regress/typecheck/prog001/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/prog001/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/typecheck/prog001/test.T b/testsuite/tests/ghc-regress/typecheck/prog001/test.T
deleted file mode 100644
index 09bb3f0f30..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/prog001/test.T
+++ /dev/null
@@ -1,6 +0,0 @@
-
-test('typecheck.prog001',
- [skip_if_fast,
- extra_clean(['A.hi', 'A.o', 'B.hi', 'B.o', 'C.hi', 'C.o'])],
- multimod_compile,
- ['C', '-v0'])
diff --git a/testsuite/tests/ghc-regress/typecheck/prog001/typecheck.prog001.stderr-ghc b/testsuite/tests/ghc-regress/typecheck/prog001/typecheck.prog001.stderr-ghc
deleted file mode 100644
index ea4c0e88f6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/prog001/typecheck.prog001.stderr-ghc
+++ /dev/null
@@ -1,4 +0,0 @@
-
-B.hs:7:10:
- Warning: No explicit method nor default method for `row'
- In the instance declaration for `Matrix Bool Val'
diff --git a/testsuite/tests/ghc-regress/typecheck/prog002/A.hs b/testsuite/tests/ghc-regress/typecheck/prog002/A.hs
deleted file mode 100644
index e44f619bf8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/prog002/A.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE TypeOperators #-}
-
-module A where
-
-type a :+ b = (a,b)
-infixr 1 :+
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/prog002/B.hs b/testsuite/tests/ghc-regress/typecheck/prog002/B.hs
deleted file mode 100644
index 9ce85b4b7f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/prog002/B.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE TypeOperators #-}
-
-module B where
-import A
-
-a :: Int :+ Float :+ Double
-a = undefined
-
-b :: Int
-b = case a of (p,q) -> p
-
diff --git a/testsuite/tests/ghc-regress/typecheck/prog002/Makefile b/testsuite/tests/ghc-regress/typecheck/prog002/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/prog002/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/typecheck/prog002/test.T b/testsuite/tests/ghc-regress/typecheck/prog002/test.T
deleted file mode 100644
index 24625bad04..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/prog002/test.T
+++ /dev/null
@@ -1,7 +0,0 @@
-setTestOpts(only_compiler_types(['ghc']))
-
-test('typecheck.prog002',
- [skip_if_fast,
- extra_clean(['A.hi', 'A.o', 'B.hi', 'B.o'])],
- multimod_compile,
- ['B', '-v0'])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/FD1.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/FD1.hs
deleted file mode 100644
index 0c8942ad95..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/FD1.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-{-# LANGUAGE FlexibleInstances, FlexibleContexts #-}
-
--- Trac #1781
--- This one should really succeed, because 'plus' can only
--- be called with a = Int->Int, but the old fundep story
--- certainly made it fail, and so that's what we expect for now
--- We may become more liberal later
-
-module ShouldCompile where
-
-class E a b | a -> b, b -> a
-instance E a a
-
-plus :: (E a (Int -> Int)) => Int -> a
-plus x y = x + y
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/FD1.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/FD1.stderr
deleted file mode 100644
index 6f98877b84..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/FD1.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-FD1.hs:16:1:
- Could not deduce (a ~ (Int -> Int))
- from the context (E a (Int -> Int))
- bound by the type signature for
- plus :: E a (Int -> Int) => Int -> a
- at FD1.hs:16:1-16
- `a' is a rigid type variable bound by
- the type signature for plus :: E a (Int -> Int) => Int -> a
- at FD1.hs:16:1
- The equation(s) for `plus' have two arguments,
- but its type `Int -> a' has only one
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/FD2.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/FD2.hs
deleted file mode 100644
index b4623a8743..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/FD2.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-{-# LANGUAGE ScopedTypeVariables, FlexibleContexts #-}
-
--- Trac #1783
--- Like Trac #1781 you could argue that this one should succeed
--- but we stick with the old behaviour for now. When we do
--- fundeps properly it'll probably start to work
-
-module ShouldCompile where
-
-import Prelude hiding (foldr, foldr1)
-
-import Data.Maybe
-
-class Elem a e | a -> e
-
-class Foldable a where
- foldr :: Elem a e => (e -> b -> b) -> b -> a -> b
-
--- foldr1 :: forall e. Elem a e => (e -> e -> e) -> a -> e -- WORKS!
- foldr1 :: Elem a e => (e -> e -> e) -> a -> e
- foldr1 f xs = fromMaybe (error "foldr1: empty structure")
- (foldr mf Nothing xs)
- where mf :: Elem a e => (e -> Maybe e -> Maybe e)
- mf x Nothing = Just x
- mf x (Just y) = Just (f x y)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/FD2.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/FD2.stderr
deleted file mode 100644
index 618c361f49..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/FD2.stderr
+++ /dev/null
@@ -1,25 +0,0 @@
-
-FD2.hs:26:38:
- Could not deduce (e1 ~ e)
- from the context (Foldable a)
- bound by the class declaration for `Foldable'
- at FD2.hs:(17,1)-(26,39)
- or from (Elem a e)
- bound by the type signature for
- foldr1 :: Elem a e => (e -> e -> e) -> a -> e
- at FD2.hs:(22,3)-(26,39)
- or from (Elem a e1)
- bound by the type signature for
- mf :: Elem a e1 => e1 -> Maybe e1 -> Maybe e1
- at FD2.hs:(25,12)-(26,39)
- `e1' is a rigid type variable bound by
- the type signature for
- mf :: Elem a e1 => e1 -> Maybe e1 -> Maybe e1
- at FD2.hs:25:12
- `e' is a rigid type variable bound by
- the type signature for
- foldr1 :: Elem a e => (e -> e -> e) -> a -> e
- at FD2.hs:22:3
- In the second argument of `f', namely `y'
- In the first argument of `Just', namely `(f x y)'
- In the expression: Just (f x y)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/FD3.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/FD3.hs
deleted file mode 100644
index 333c0c31dd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/FD3.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies, FlexibleInstances #-}
-
--- Trac #1795
-
-module ShouldCompile where
-
-data A a = A
-
-class MkA a b | a -> b where
- mkA :: a -> A b
-
-instance MkA a a where
-
-translate :: (String, a) -> A a
-translate a = mkA a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/FD3.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/FD3.stderr
deleted file mode 100644
index 5e8a4ee164..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/FD3.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-FD3.hs:15:15:
- Couldn't match type `a' with `(String, a)'
- `a' is a rigid type variable bound by
- the type signature for translate :: (String, a) -> A a
- at FD3.hs:15:1
- When using functional dependencies to combine
- MkA a a,
- arising from the dependency `a -> b'
- in the instance declaration at FD3.hs:12:10
- MkA (String, a) a, arising from a use of `mkA' at FD3.hs:15:15-17
- In the expression: mkA a
- In an equation for `translate': translate a = mkA a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/FD4.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/FD4.hs
deleted file mode 100644
index 5d5869ca01..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/FD4.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-{-# LANGUAGE
- MultiParamTypeClasses,
- FunctionalDependencies,
- UndecidableInstances,
- OverlappingInstances,
- FlexibleInstances,
- EmptyDataDecls #-}
-
--- Trac #1797
-
-module ShouldCompile where
-
-data True
-
-data False
-
-class TypeEq type1 type2 result | type1 type2 -> result where
- typeEq :: type1 -> type2 -> result
-
-instance TypeEq soleType soleType True where
- typeEq _ _ = undefined
-
-instance (TypeCast False result) => TypeEq type1 type2 result where
- typeEq _ _ = undefined
-
-class TypeCast type1 type2 | type1 -> type2, type2 -> type1
-
-instance TypeCast soleType soleType
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/GivenOverlapping.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/GivenOverlapping.hs
deleted file mode 100644
index 35f4b07962..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/GivenOverlapping.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE FunctionalDependencies, FlexibleContexts #-}
-
-class C a where
-
-class D a where
- dop :: a -> a
-
-instance C a => D [a] where
- dop = undefined
-
-class J a b | a -> b
- where j :: a -> b -> ()
-
-instance J Bool Int where
- j = undefined
-
-foo :: D [Int] => ()
-foo = j True (head (dop [undefined]))
-
-main = return ()
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/GivenTypeSynonym.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/GivenTypeSynonym.hs
deleted file mode 100644
index 918eb788b3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/GivenTypeSynonym.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TypeFamilies #-}
-module Main where
-
-data A a
-
-type T a = A a
-
-
-f :: (A a ~ T Int) => a -> Int
-f x = x
-
-
-main :: IO ()
-main = return () \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/HasKey.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/HasKey.hs
deleted file mode 100644
index 8da7ee7205..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/HasKey.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses #-}
-{-# LANGUAGE FunctionalDependencies #-}
-{-# LANGUAGE UndecidableInstances #-}
-
--- Provided by Christian Maeder; broke
--- a pre-release GHC 7.0
-
-module HasKey where
-
-class Ord key => HasKey x key | x -> key where
- toKey :: x -> key
-
-newtype Keyed x = Keyed { unKey :: x }
-
-lift :: (HasKey x1 key1,HasKey x2 key2)
- => (key1 -> key2 -> a) -> (Keyed x1 -> Keyed x2 -> a)
-lift f x1 x2 = f (toKey . unKey $ x1) (toKey . unKey $ x2)
-
-instance HasKey x key => Eq (Keyed x) where
- (==) = lift (==)
-
-instance HasKey x key => Ord (Keyed x)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/LoopOfTheDay1.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/LoopOfTheDay1.hs
deleted file mode 100644
index e3b656a66e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/LoopOfTheDay1.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances, UndecidableInstances #-}
-
--- Compiles fine.
--- Instance selection works fine.
--- try: :t foo (T1b T1a)
-
-module ShouldCompile where
-
--- Notice: T1 is a recursive type.
--- Notice: the classes are recursive, too.
--- Why does this work when almost the same thing doesn't?
--- Say: adding an Int component to T1a makes things loop.
--- See LoopOfTheDay2.hs and LoopOfTheDay3.hs.
-
-data T1 = T1a | T1b T1
-
-class C0 x where foo :: x -> (); foo = undefined
-class C1 x y
-class C1 x y => C2 x y
-
-instance C0 T1 => C1 () T1 -- (I1)
-instance (C1 x T1) => C2 x T1 -- (I2)
-instance C2 () T1 => C0 T1 -- (I3)
-
-baz = foo (T1b T1a)
-
-{- Need C0 T1
--->(I3) C2 () T1
--->(I2) C1 () T1
--->(I1) C0 T1 -- STOP because we've seen this before
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/LoopOfTheDay2.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/LoopOfTheDay2.hs
deleted file mode 100644
index 0996e7c2f2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/LoopOfTheDay2.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances, UndecidableInstances #-}
-
--- Compilation loops in GHC 6.2!
--- While LoopOfTheDay1.hs did compile and work,
--- this one loops during compilation, even though
--- there is only an innocent difference regarding T1,
--- i.e., an additional, non-recursive constructor component.
-
-module ShouldCompile where
-
-data T1 = T1a Int | T1b T1
-
-class C0 x where foo :: x -> (); foo = undefined
--- foo :: C0 x => x -> ()
-
-class C1 x y
-class C1 x y => C2 x y
-
-instance C0 Int => C1 () Int -- I1
-instance C0 T1 => C1 () T1 -- I2
-instance (C1 x T1, C1 x Int) => C2 x T1 -- I3
-instance C1 x Int => C2 x Int -- I4
-instance C2 () T1 => C0 T1 -- I5
-instance C2 () Int => C0 Int -- I6
-
-
-baz = foo (T1b (T1a 3))
-
-{- Need
- C0 T1
--->(I5) C2 () T1
--->(I3) C1 () T1, C1 () Int
--->(I1,I2) C0 T1, C0 Int
--->(recusive) C0 Int
--->(I6) C2 () Int
--->(I4) C1 () Int
--->(recursive) {}
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/LoopOfTheDay3.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/LoopOfTheDay3.hs
deleted file mode 100644
index dce1601a70..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/LoopOfTheDay3.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances,
- OverlappingInstances, UndecidableInstances #-}
-
--- Instances compile fine but instance selection loops in GHC 6.2.
--- try: :t foo (T1a 1)
--- This is essentially the same as LoopOfTheDay2.hs
--- but with the innocent (?) use of overlapping instances.
-
-module ShouldCompile where
-
-data T1 = T1a Int | T1b T1
-
-class C0 x where foo :: x -> (); foo = undefined
-class C1 x y
-class C1 x y => C2 x y
-
-instance C0 a => C1 () a
-instance (C1 x T1, C1 x Int) => C2 x T1
-instance C1 x Int => C2 x Int
-instance C2 () a => C0 a
-
-baz = foo (T1b (T1a 3))
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/Makefile b/testsuite/tests/ghc-regress/typecheck/should_compile/Makefile
deleted file mode 100644
index 81ab165c9c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/Makefile
+++ /dev/null
@@ -1,26 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
-
-tc170:
- $(RM) Tc170_Aux.hi Tc170_Aux.o tc170.hi tc170.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -c Tc170_Aux.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c tc170.hs
-
-tc173:
- $(RM) Tc173a.o Tc173a.hi Tc173b.o Tc173b.hi
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -XFlexibleInstances -XTypeSynonymInstances -XUndecidableInstances -XOverlappingInstances Tc173a.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c -XUndecidableInstances -XOverlappingInstances Tc173b.hs
-
-T2412:
- $(RM) -f T2412.hi-boot T2412.o-boot T2412A.hi T2412A.o T2412.hi T2412.o
- '$(TEST_HC)' $(TEST_HC_OPTS) -c T2412.hs-boot
- '$(TEST_HC)' $(TEST_HC_OPTS) -c T2412A.hs
- '$(TEST_HC)' $(TEST_HC_OPTS) -c T2412.hs
-
-tc245:
- $(RM) -f Tc245_A.hi Tc245_A.o tc245.hi tc245.o
- '$(TEST_HC)' $(TEST_HC_OPTS) --make tc245
- $(RM) -f tc245.hi tc245.o
- '$(TEST_HC)' $(TEST_HC_OPTS) --make tc245
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/PolyRec.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/PolyRec.hs
deleted file mode 100644
index ddb911553a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/PolyRec.hs
+++ /dev/null
@@ -1,29 +0,0 @@
--- An example of RelaxedPolyRec in action which came up
--- on Haskell Cafe June 2010 (Job Vranish)
-
-module Foo where
-
-import Data.Maybe
-
--- The fixed point datatype
-data Y f = Y (f (Y f))
-
--- Silly dummy function
-maybeToInt :: Maybe a -> Int
-maybeToInt = length . maybeToList
-
----------------------------
--- f and g are mutually recursive
--- Even though f has a totally monomorphic
--- signature, g has a very polymorphic one
-
-f :: Y Maybe -> Int
-f (Y x) = g maybeToInt x
-
--- With RelaxedPolyRec we can infer this type
--- g :: Functor f => (f Int -> b) -> f (Y Maybe) -> b
-g h x = h $ fmap f x
-
--- 'test' checks that g's type is polymophic enough
-test :: Functor f => (f Int -> b) -> f (Y Maybe) -> b
-test = g
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/SilentParametersOverlapping.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/SilentParametersOverlapping.hs
deleted file mode 100644
index 8169c3f64a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/SilentParametersOverlapping.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE FlexibleInstances, FlexibleContexts, UndecidableInstances #-}
-
-module SilentParametersOverlapping where
-
-class C a where
- c :: a -> ()
-
-class C a => B a where
- b :: a -> ()
-
-instance C [a] where
- c x = ()
-
-instance {- silent: C [(a,b)] => -} B [(a,b)] where
- b x = c [(undefined,undefined)]
- -- We get wanted: C [(gamma, delta)],
- -- and gamma,delta are unconstrained
- -- But we can apply the C [a] instance without difficulty
- -- (except in the old days when we had silent dfun parameters)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T1123.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T1123.hs
deleted file mode 100644
index a9a7d965e3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T1123.hs
+++ /dev/null
@@ -1,42 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-
-module Bug where
-
-data T a = MkT
-
-out :: forall a. T a -> ()
-out MkT = ()
-
-inHoisted :: forall r. () -> (forall a. T a -> r) -> r
-inHoisted _ foo = foo MkT
-
-inUnhoisted :: () -> forall r. (forall a. T a -> r) -> r
-inUnhoisted _ foo = foo MkT
-
-testHoisted :: ()
-testHoisted = inHoisted () out
-
-testUnhoisted :: ()
-testUnhoisted = inUnhoisted () out
-
-
-----------------
-
-data A s = A { unA :: () }
-
-runA1 :: (forall s. A s) -> ()
-runA1 a = unA a
-
--- doesn't work :(
-runA2 :: (forall s. A s) -> ()
-runA2 (A a) = a
-
-runA3 :: (forall s. A s) -> ()
-runA3 a = case a of A x -> x
-
-runA4 :: (forall s. A s) -> ()
-runA4 a = let A x = a in x
-
-runA5 :: (forall s. A s) -> ()
-runA5 a = go a
- where go (A a) = a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T1470.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T1470.hs
deleted file mode 100644
index 8419a94627..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T1470.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FlexibleContexts, FlexibleInstances, OverlappingInstances, UndecidableInstances #-}
-
--- Trac #1470
-
-module Foo where
-
-class Sat a
-class Data ctx a
-instance Sat (ctx Char) => Data ctx Char
-instance (Sat (ctx [a]), Data ctx a) => Data ctx [a]
-
-class Data FooD a => Foo a
-
-data FooD a = FooD
-
-instance Foo t => Sat (FooD t)
-
-instance Data FooD a => Foo a
-
-
-instance Foo a => Foo [a]
-{-
- Given: Foo a,
- and its superclasses: Data FooD a
-
- Want superclass: Data FooD [a]
-
- by instance Data FooD [a]
- want: Sat (FooD [a])
- Data FooD a -- We have this
-
- by instance Sat (FooD t)
- want: Foo [a]
-
-BUT THIS INSTANCE OVERLAPS
--}
-
-instance Foo [Char]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T1495.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T1495.hs
deleted file mode 100644
index 0de4e456de..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T1495.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- Test Trac #1495
-
-module CompilerBug where
-
-newtype Fix a = Fix (a (Fix a))
-data ID a = ID a
-newtype I a = I a
-
-testOk :: Fix ID
-testOk = undefined
-
--- this definition causes the compiler to fail to terminate
-testInfiniteLoop :: Fix I
-testInfiniteLoop = undefined
-
-
-newtype T = MkT T
-test :: T
-test = undefined
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T1634.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T1634.hs
deleted file mode 100644
index b4c6f2b561..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T1634.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-
-module T1634 where
-
-t1 :: a -> (forall b. b -> (a,b))
-t1 = (,)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2045.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T2045.hs
deleted file mode 100644
index 78b924a6ea..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2045.hs
+++ /dev/null
@@ -1,126 +0,0 @@
-{-# LANGUAGE EmptyDataDecls #-}
-{-# OPTIONS_GHC -fno-warn-type-defaults #-}
-
--- Trac #2045
--- ghc -fhpc --make Vhdl.hs -o gencirc -Wall
-
-module ShouleCompile where
-
-writeDefinitions :: Generic b
- => b -> IO ()
-writeDefinitions out =
- do let define v s =
- case s of
- Bool True -> port "vcc" []
- Bool False -> port "gnd" []
- Inv x -> port "inv" [x]
-
- And [] -> define v (Bool True)
- And [x] -> port "id" [x]
- And [x,y] -> port "and2" [x,y]
- And (x:xs) -> define (w 0) (And xs)
- >> define v (And [x,w 0])
-
- Or [] -> define v (Bool False)
- Or [x] -> port "id" [x]
- Or [x,y] -> port "or2" [x,y]
- Or (x:xs) -> define (w 0) (Or xs)
- >> define v (Or [x,w 0])
-
- Xor [] -> define v (Bool False)
- Xor [x] -> port "id" [x]
- Xor [x,y] -> port "xor2" [x,y]
- Xor (x:xs) -> define (w 0) (Or xs)
- >> define (w 1) (Inv (w 0))
- >> define (w 2) (And [x, w 1])
-
- >> define (w 3) (Inv x)
- >> define (w 4) (Xor xs)
- >> define (w 5) (And [w 3, w 4])
- >> define v (Or [w 2, w 5])
-
- Multi a1 a2 a3 a4 -> multi a1 a2 a3 a4
- where
- w i = v ++ "_" ++ show i
-
- multi n "RAMB16_S18" opts args =
- do putStr $
- " "
- ++ " : "
- ++ "RAMB16_S18"
- ++ "\ngeneric map ("
- ++ opts
- ++ mapTo "DOP" [0,1] (get 16 2 outs)
- ++ mapTo "ADDR" [0..9] (get 0 10 args)
- where
- outs = map (\i -> "o" ++ show i ++ "_" ++ v) [1..n]
-
- get :: Int -> Int -> [a] -> [a]
- get n' m xs = take m (drop n' xs)
-
- mapTo s' (n':ns) (x:xs) = s' ++ "(" ++ show n' ++ ")"
- ++ " => " ++ x ++ ",\n"
- ++ mapTo s' ns xs
- mapTo _ _ _ = ""
-
-
-
- multi n "RAMB16_S18_S18" opts args =
- do putStr $
- opts
- ++ mapTo "DOA" [0..15] (get 0 16 outs)
- ++ mapTo "DOB" [0..15] (get 18 16 outs)
- ++ mapTo "DOPA" [0,1] (get 16 2 outs)
- ++ mapTo "DOPB" [0,1] (get 34 2 outs)
- ++ mapTo "ADDRA" [0..9] (get 0 10 args)
- ++ mapTo "ADDRB" [0..9] (get 10 10 args)
- ++ mapTo "DIA" [0..15] (get 20 16 args)
- ++ mapTo "DIB" [0..15] (get 38 16 args)
- ++ mapTo "DIPA" [0,1] (get 36 2 args)
- ++ mapTo "DIPB" [0,1] (get 54 2 args)
- ++ head (get 56 1 args)
- ++ head (get 57 1 args)
- where
- outs = map (\i -> "o" ++ show i ++ "_" ++ v) [1..n]
-
- get :: Int -> Int -> [a] -> [a]
- get _ _ = id
-
- mapTo s' (n':ns) (x:xs) = s' ++ "(" ++ show n' ++ ")"
- ++ " => " ++ x ++ ",\n"
- ++ mapTo s' ns xs
- mapTo _ _ _ = ""
- multi _ _ _ _ = undefined
-
- port n args | n == "id" =
- do putStr $
- " "
- ++ v ++ " <= " ++ (head args) ++ ";\n"
-
- port _ _ = undefined
- netlistIO define (struct out)
- return ()
-
-netlistIO :: (v -> S v -> IO ()) -> f Symbol -> IO (f v)
-netlistIO = undefined
-
-data Struct a
-
-class Generic a where
- struct :: a -> Struct Symbol
- struct = undefined
-
-instance Generic (Signal a)
-
-data Signal a
-
-data Symbol
-
-data S s
- = Bool Bool
- | Inv s
- | And [s]
- | Or [s]
- | Xor [s]
- | Multi Int String String [s]
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2412.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T2412.hs
deleted file mode 100644
index 509546aa5f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2412.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-module T2412 ( Baz ) where
-
-import T2412A ( Bar )
-
-type Spqr = Bar
-data Baz = Baz Spqr
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2412.hs-boot b/testsuite/tests/ghc-regress/typecheck/should_compile/T2412.hs-boot
deleted file mode 100644
index 3467929adc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2412.hs-boot
+++ /dev/null
@@ -1,4 +0,0 @@
-
-module T2412 where
-
-data Baz
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2412A.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T2412A.hs
deleted file mode 100644
index a3e1c579e5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2412A.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-
-module T2412A where
-
-import {-# SOURCE #-} T2412 ( Baz )
-
-type Bar = Baz
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2433.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T2433.hs
deleted file mode 100644
index 345c961029..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2433.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE StandaloneDeriving #-}
-{-# LANGUAGE DeriveDataTypeable #-}
-
--- Test Trac #2433
-
-module T2433 where
-
- import Data.Typeable(Typeable1)
- import T2433_Help( T )
-
- deriving instance Typeable1 T
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2433_Help.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T2433_Help.hs
deleted file mode 100644
index 7760242d4b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2433_Help.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module T2433_Help where
-
-data T a = MkT a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2478.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T2478.hs
deleted file mode 100644
index eec589b444..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2478.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE ExistentialQuantification, DatatypeContexts #-}
-
-module ShouldCompile where
-
- data Eq t => TrafoE t = forall env2 . TrafoE Int t
-
- newSRef () = TrafoE
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2478.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/T2478.stderr
deleted file mode 100644
index f03324cd15..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2478.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-T2478.hs:1:41:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2494-2.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T2494-2.hs
deleted file mode 100644
index 7e3bfc146b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2494-2.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE Rank2Types, ScopedTypeVariables #-}
-
--- Trac #2494, should compile ok
-
-module Foo where
-
-foo :: (forall m. Monad m => Maybe (m a) -> Maybe (m a)) -> Maybe a -> Maybe a
-foo _ x = x
-
-{-# RULES
-
-"foo/foo"
- forall (f :: forall m. Monad m => Maybe (m a) -> Maybe (m a))
- (g :: forall m. Monad m => Maybe (m a) -> Maybe (m a)) x.
- foo f (foo g x) = foo (f . g) x
- #-}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2494.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T2494.hs
deleted file mode 100644
index 55d80a23eb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2494.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE Rank2Types, ScopedTypeVariables #-}
-
--- Trac #2494, should generate an error message
-
-module Foo where
-
-foo :: (forall m. Monad m => Maybe (m a) -> Maybe (m a)) -> Maybe a -> Maybe a
-foo _ x = x
-
-{-# RULES
-
-"foo/foo"
- forall (f :: forall m. Monad m => Maybe (m a) -> Maybe (m a))
- (g :: forall m. Monad m => Maybe (m b) -> Maybe (m b)) x.
- foo f (foo g x) = foo (f . g) x
- #-}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2494.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/T2494.stderr
deleted file mode 100644
index b522833af2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2494.stderr
+++ /dev/null
@@ -1,22 +0,0 @@
-
-T2494.hs:15:7:
- Couldn't match type `a' with `b'
- `a' is a rigid type variable bound by
- the RULE "foo/foo" at T2494.hs:13:46
- `b' is a rigid type variable bound by
- the RULE "foo/foo" at T2494.hs:14:46
- Expected type: Maybe (m b) -> Maybe (m b)
- Actual type: Maybe (m a) -> Maybe (m a)
- In the first argument of `foo', namely `f'
- In the expression: foo f (foo g x)
-
-T2494.hs:15:30:
- Couldn't match type `b' with `a'
- `b' is a rigid type variable bound by
- the RULE "foo/foo" at T2494.hs:14:46
- `a' is a rigid type variable bound by
- the RULE "foo/foo" at T2494.hs:13:46
- Expected type: Maybe (m b) -> Maybe (m a)
- Actual type: Maybe (m b) -> Maybe (m b)
- In the second argument of `(.)', namely `g'
- In the first argument of `foo', namely `(f . g)'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2497.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T2497.hs
deleted file mode 100644
index 0e6ab4e9f7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2497.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# OPTIONS_GHC -fwarn-unused-binds #-}
-
-module ShouldCompile() where
-
--- Trac #2497; test should compile without language
--- pragmas to swith on the forall
-{-# RULES "id" forall (x :: a). id x = x #-}
-
-
-
--- Trac #2213; eq should not be reported as unused
-
-eq,beq :: Eq a => a -> a -> Bool
-eq = (==) -- Used
-beq = (==) -- Unused
-
-{-# RULES
- "rule 1" forall x y. x == y = y `eq` x
- #-}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2497.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/T2497.stderr
deleted file mode 100644
index 81b8fbcbb1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2497.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-T2497.hs:15:1: Warning: Defined but not used: `beq'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2572.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T2572.hs
deleted file mode 100644
index 189055914a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2572.hs
+++ /dev/null
@@ -1,10 +0,0 @@
- {-# LANGUAGE RankNTypes, ScopedTypeVariables #-}
-
--- Trac #2572
-
-module Foo where
-
-type GTypeFun = forall a . a -> ()
-
-gmapType :: Int -> GTypeFun
-gmapType _ (_ :: a) = undefined
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2683.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T2683.hs
deleted file mode 100644
index 3e8e9e5892..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2683.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE ExistentialQuantification, MultiParamTypeClasses,
- FunctionalDependencies, Rank2Types #-}
-
-module Q where
-
-class Transformer t a | t -> a where
- transform :: t -> l a -> (forall l'. l' a -> b) -> b
-
-data EL a = forall l. EL (l a)
-
-unEL :: EL a -> (forall l. l a -> b) -> b
-unEL = undefined
-
-transform' :: (Transformer t a) => t -> EL a -> EL a
-transform' = undefined
-
-data MultiToggleS ts a = MultiToggleS ts
-
-data MultiToggle = MultiToggle
-
-expand :: HList ts a => MultiToggleS ts a -> MultiToggle
-expand (MultiToggleS ts) =
- resolve ts
- (\x mt ->
- let g = transform' x in
- mt
- )
- MultiToggle
-
-class HList c a | c -> a where
- resolve :: c -> (forall t. (Transformer t a) => t -> b) -> b
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2735.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T2735.hs
deleted file mode 100644
index 81deb7dda4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2735.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- Trac #2735
-
-module Bug where
-
-data S = S { s1 :: (), s2 :: () }
-
-f s = s { s1 = (), s2 = s1 s }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2799.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T2799.hs
deleted file mode 100644
index 38beabdd48..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2799.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# OPTIONS -XGADTs #-}
-
-module RepAux (
- toSpineRl
-) where
-
-data MTup l where
- P :: MTup l -> MTup (a,l)
-
-data Spine a where
- S :: Spine (a -> b) -> Spine b
-
-toSpineRl :: MTup l -> l -> (l -> a) -> Spine a
-toSpineRl (P rs) (a, l) into = S (toSpineRl rs l into')
- where
- into' tl1 x1 = into (x1,tl1)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2846.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T2846.hs
deleted file mode 100644
index 43ad7510fc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2846.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-{-# LANGUAGE ImpredicativeTypes, FlexibleContexts #-}
-module T2846 where
-
-x = [1,2,3] :: [Num a => a]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T2846.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/T2846.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T2846.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T3018.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T3018.hs
deleted file mode 100644
index 9ef5b56e60..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T3018.hs
+++ /dev/null
@@ -1,106 +0,0 @@
-{-# LANGUAGE OverlappingInstances , UndecidableInstances, EmptyDataDecls #-}
-{-# LANGUAGE Rank2Types, KindSignatures, MultiParamTypeClasses, FlexibleInstances #-}
-
--- Works with new constraint solver
-
-module T3018 where
-
-import Control.Monad
-
--- minimal Data/Rep classes
-data Rep ctx a
-
-class Data (ctx :: * -> *) a where rep :: Rep ctx a
-
-class Sat a where dict :: a
-
---------- Version A: failed in 6.12.3 -----------
--- Substitution class
--- substitute [a -> t] t'.
-class Subst_A a t t' where
- subst_A :: (Monad m) => a -> t -> t' -> m t'
-
-data SubstD_A a t t' = SubstD_A {substD_A:: (Monad m) => a -> t -> t' -> m t'}
-
--- Allow override dictionary verion with implementation of type class Subst
-instance Subst_A a t t' => Sat (SubstD_A a t t') where
- dict = SubstD_A {substD_A = subst_A}
-
--- Generic instance
-instance Data (SubstD_A a t) t' => Subst_A a t t' where
- subst_A = undefined
-
---------- Version B: passed in 6.12.3 -----------
--- Substitution class
--- substitute [a -> t] t'.
-class Subst_B a t t' where
- subst_B :: a -> t -> t' -> t'
-
-data SubstD_B a t t' = SubstD_B {substD_B :: a -> t -> t' -> t'}
-
--- allow override dictionary verion with implementation of type class Subst
-instance Subst_B a t t' => Sat (SubstD_B a t t') where
- dict = SubstD_B {substD_B = subst_B}
-
--- generic instance
-instance Data (SubstD_B a t) t' => Subst_B a t t' where
- subst_B = undefined
-
-
-{- Commentary from Trac #3018
-
-Here are the key lines of code:
-
- class Subst a t t' where
- subst :: (Monad m) => a -> t -> t' -> m t'
-
- data SubstD a t t'
- = SubstD (forall m. Monad m => a -> t -> t' -> m t')
-
- instance Data (SubstD a t) t' => Subst a t t' -- (1)
-
- instance Subst a t t' => Sat (SubstD a t t') where -- (2)
- dict = SubstD subst
-
-The call to 'subst' on the last line gives rise to a constraint (Subst
-a t t'). But that constraint can be satisfied in two different ways:
-
- Using the instance declaration for Subst (which matches anything!)
- Using the context of the Sat (SubstD ..) instance declaration itself
-
-If GHC uses (1) it gets into a corner it can't get out of, because now
-it needs (Data (SubstD a t) t'), and that it can't get. The error
-message is a bit misleading:
-
-T3018.hs:29:28:
- Could not deduce (Data (SubstD a t) t') from the context (Monad m)
- arising from a use of `subst' at T3018.hs:29:28-32
-
-it should really say
-
- ...from the context (Subst a t t', Monad m)
-
-but that's a bit of a separate matter.
-
-Now, you are hoping that (2) will happen, but I hope you can see that
-it's delicate. Adding the (Monad m) context just tips things over the
-edge so that GHC doesn't "see" the (Subst a t t') in the context until
-too late. But the real problem is that you are asking too much. Here
-is a simpler example:
-
- f :: Eq [a] => a -> blah
- f x = let g :: Int -> Int
- g = ....([x]==[x])...
- in ...
-
-The use of == requires Eq [a], but GHC will probably use the list
-equality instance to simplify this to Eq a; and then it can't deduce
-Eq a from Eq [a]. Local constraints that shadow or override global
-instance declarations are extremely delicate.
-
-All this is perhaps soluble if GHC were to be lazier about solving
-constraints, and only makes the attempt when it has all the evidence
-in hand. I'm thinking quite a bit about constraint solving at the
-moment and will bear that in mind. But I can't offer you an immediate
-solution. At least I hope I've explained the problem.
--} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T3219.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T3219.hs
deleted file mode 100644
index 5c23c1727d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T3219.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Trac #3219. Lint error in GHC 6.10
-
-module T3219 where
-
-data T a = A{ m1 :: a } | B{ m1, m2 :: a } | C{ m2 :: a }
-
--- bar :: (a -> a) -> T a -> T a
-bar f x@(A m) = x{m1 = f m}
-
--- foo :: (a -> a) -> T a -> T a
-foo f x@(C m) = x{m2 = f m}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T3342.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T3342.hs
deleted file mode 100644
index 7881aadb4e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T3342.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE ViewPatterns #-}
-{-# OPTIONS_GHC -fno-warn-overlapping-patterns #-}
-
-module T3342 where
-
-data F = FT String [F]
-data G = GX F F | GY
-
-spec :: F -> G
-spec (FT "X" [t1, t2]) = GX t1 t2
-spec _ = GY
-
--- walk :: F -> F
-walk (spec -> GX _ t2) = walk t2
-walk t@(FT _ _) = t
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T3346.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T3346.hs
deleted file mode 100644
index bba57a06f9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T3346.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# OPTIONS_GHC -XTypeFamilies #-}
-
--- Trac #3346
-
-module Foo where
-
-class EP a where
- type Result a
- from :: a -> Result a
- to :: Result a -> a
-
-{-# RULES "rule1" forall x. to (from x) = x #-}
-{-# RULES "rule2" forall x. from (to x) = x #-}
-
-foo :: EP a => a -> a
--- This is typed in a way rather similarly to RULE rule1
-foo x = to (from x)
-
-bar x = from (to x)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T3391.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T3391.hs
deleted file mode 100644
index eb569366b5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T3391.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TemplateHaskell, Generics #-}
-{-# OPTIONS_GHC -v0 #-}
-
--- We should only generate one set of generic to/from functions
--- for T, despite the multiple chunks caused by the TH splices
--- See Trac #3391
-
-module T3391 where
-
-data T = MkT
-
-$(return [])
-
-$(return [])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T3409.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T3409.hs
deleted file mode 100644
index b584fe1f1f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T3409.hs
+++ /dev/null
@@ -1,53 +0,0 @@
-{-# LANGUAGE ExistentialQuantification, TypeFamilies #-}
-
--- Tests a nasty case where 'exprType' or 'coreAltsType' can
--- return a type that mentions an out-of-scope type variable
--- because of a type synonym that discards one of its arguments
---
--- See Note [Existential variables and silly type synonyms]
--- in CoreUtils
-
--- In GHC 6.10, both tests below (independently) give Lint errors
-
-module T3409 where
-
-
---------------------------
--- Simpler version not involving type families
-
-data T = forall a. T a (Funny a)
-type Funny a = Bool
-
-f :: T -> Bool
-f (T x n) = n
-
-
---------------------------
--- Cut down version of the original report
-
-newtype Size s = Size Int
-
-data ArrayS d e = ArrayS d e
-
-data Array1 e = forall s . Array1 (Size s) (ArrayS (Size s) e)
--- Array1 :: forall e s. Size s -> ArrayS (Size s) e -> Array1 e
-
-copy :: Int -> Array1 a -> Array1 a
-copy _ (Array1 s a) = Array1 s $ (ArrayS s (bang a))
- -- Array1 s :: ArrayS (Size s) a -> Array1 a
-
- -- s :: Size s
- -- a :: ArrayS (Size s) a
- -- ArrayS :: Size s -> a -> ArrayS (Size s) a
- -- i :: AccessIx (ArrayS (Size s) a) = Ix s
- -- bang a :: AccessResult (ArrayS (Size s) a) = a
-
- -- ArrayS s (bang a) :: ArrayS (Size s) (AccessResult (ArrayS (Size s) a))
-
-class Access a where
- type AccessResult a
- bang :: a -> AccessResult a
-
-instance Access (ArrayS d a) where
- type AccessResult (ArrayS d a) = a
- bang = error "urk"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T3692.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T3692.hs
deleted file mode 100644
index b10e184d94..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T3692.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-
-module T3692 where
-
-type Foo a b = () -> (Bar a => a)
-
-class Bar a where {}
-
-foo :: Foo a b
-foo = id (undefined :: Foo a b)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T3696.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T3696.hs
deleted file mode 100644
index af39ee85b7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T3696.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# OPTIONS -Wall #-}
-
-module T3696 where
-
-class C a where c :: a
-
-instance C Int where c = 37
-
-def = c
-
-use :: Int
-use = def
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T3696.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/T3696.stderr
deleted file mode 100644
index 1784e53511..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T3696.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-T3696.hs:9:1:
- Warning: Top-level binding with no type signature: def :: Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T3955.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T3955.hs
deleted file mode 100644
index 921753b80a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T3955.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances #-}
-
--- Test for Trac #3955
-
-module T3955 where
-
-class (Monad m) => MonadReader r m
-newtype Reader r a = Reader { runReader :: r -> a }
-
-instance Monad (Reader r) where
- (>>=) = error "urk"
- return = error "urk"
-
-instance MonadReader r (Reader r)
-
-newtype T a x = T (Reader a x)
- deriving (Monad, MonadReader a)
-
-{-
-[1 of 1] Compiling Main ( bug.hs, interpreted )
-mkUsageInfo: internal name? a{tv amy}
-Ok, modules loaded: Main.
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4284.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T4284.hs
deleted file mode 100644
index 2d5164a487..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4284.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-module Test where
-
-foo :: () -> forall b. b
-foo = undefined
-
-works = id foo
-
-fails = (id) foo
-
--- works type checks, but fails fails with the following error
--- message:
---
--- Cannot match a monotype with `() -> forall b. b'
--- Probable cause: `foo' is applied to too few arguments
--- In the first argument of `(id)', namely `foo'
--- In the expression: (id) foo
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4355.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T4355.hs
deleted file mode 100644
index 8eff366cdc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4355.hs
+++ /dev/null
@@ -1,60 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable, ExistentialQuantification, Rank2Types, MultiParamTypeClasses, FunctionalDependencies, FlexibleInstances, FlexibleContexts, PatternGuards, DatatypeContexts #-}
-
-module T4355 where
-
-import Control.Arrow
-import Control.Monad.Trans -- From mtl
-import Control.Monad.Reader -- Ditto
-import Data.Typeable
-import Data.Maybe
-
-class (Eq t, Typeable t) => Transformer t a | t -> a where
- transform :: (LayoutClass l a) => t -> l a ->
- (forall l'. (LayoutClass l' a) => l' a -> (l' a -> l a) -> b) -> b
-
-class HList c a where
- find :: (Transformer t a) => c -> t -> Maybe Int
-
-class Typeable a => Message a
-
-data (LayoutClass l a) => EL l a = forall l'. (LayoutClass l' a) => EL (l' a) (l' a -> l a)
-
-unEL :: (LayoutClass l a) => EL l a -> (forall l'. (LayoutClass l' a) => l' a -> b) -> b
-unEL (EL x _) k = k x
-
-transform' :: (Transformer t a, LayoutClass l a) => t -> EL l a -> EL l a
-transform' t (EL l det) = transform t l (\l' det' -> EL l' (det . det'))
-
-data Toggle a = forall t. (Transformer t a) => Toggle t
- deriving (Typeable)
-
-instance (Typeable a) => Message (Toggle a)
-
-data MultiToggle ts l a = MultiToggle{
- currLayout :: EL l a,
- currIndex :: Maybe Int,
- transformers :: ts
-}
-
-instance (Show ts, Show (l a), LayoutClass l a) => Show (MultiToggle ts l a) where
-
-class Show (layout a) => LayoutClass layout a where
- handleMessage :: layout a -> SomeMessage -> IO (Maybe (layout a))
-
-instance (Typeable a, Show ts, HList ts a, LayoutClass l a)
- => LayoutClass (MultiToggle ts l) a where
- handleMessage mt m
- | Just (Toggle t) <- fromMessage m
- , i@(Just _) <- find (transformers mt) t
- = case currLayout mt of
- EL l det -> do
- return . Just $
- mt {
- currLayout = (if cur then id else transform' t) (EL (det l) id)
- }
- where cur = (i == currIndex mt)
-
-data SomeMessage = forall a. Message a => SomeMessage a
-
-fromMessage :: Message m => SomeMessage -> Maybe m
-fromMessage (SomeMessage m) = cast m
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4355.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/T4355.stderr
deleted file mode 100644
index af072e6867..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4355.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-T4355.hs:1:172:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4361.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T4361.hs
deleted file mode 100644
index 19727c2e53..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4361.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-{-# LANGUAGE FlexibleContexts #-}
-
--- This test comes from Sergei Mechveliani's DoCon system
-
-module Pol3_ (moduloBasisx) where
-
-class CommutativeRing a
-class CommutativeRing a => LinSolvRing a
-class LinSolvRing a => EuclideanRing a
-
-instance EuclideanRing a => LinSolvRing (Pol a) -- XXXX
-instance CommutativeRing a => CommutativeRing (Pol a)
-
-data Pol a = MkPol
-
-upLinSolvRing :: LinSolvRing a => a -> ()
-upLinSolvRing = undefined
-
-moduloBasisx :: (LinSolvRing (Pol a), CommutativeRing a) => Pol a -> ()
-moduloBasisx p = let x = upLinSolvRing p
- in ()
-
- -- This is very delicate! The contraint (LinSolvRing (Pol a))
- -- arises in the RHS of x, and we must be careful *not* to simplify
- -- it with the instance declaration "XXXX", else we get the
- -- unsatisfiable constraint (EuclideanRing a). In effect, the
- -- given constraint in the type sig for moduleBasisx overlaps
- -- with the top level declaration.
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4401.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T4401.hs
deleted file mode 100644
index 81fcf71a96..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4401.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE FlexibleInstances, UndecidableInstances,
- MultiParamTypeClasses, FunctionalDependencies #-}
-module T4401 where
-
-class Mul x y z | x y -> z
-class IsType a
-class IsType a => IsSized a s | a -> s
-
-data Array n a = Array
-instance IsSized a s => IsType (Array n a)
-instance (IsSized a s, Mul n s ns) => IsSized (Array n a) ns
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4404.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T4404.hs
deleted file mode 100644
index 894066542a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4404.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE RecordWildCards, DoRec #-}
-
-module TT where
-
-data T = T {t1, t2 :: Int}
-
-f :: T -> Int
-f d = x
- where T {t1 = x, ..} = d
-
-g :: T -> Int
-g (T {t1 = x, ..}) = x
-
--- The fix to this test also affected the dorec checking code, hence this:
-h :: Maybe Int
-h = do
- rec
- T {t1 = x, ..} <- Just $ T 1 1
- return x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4418.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T4418.hs
deleted file mode 100644
index 9b90fd61a6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4418.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-
-module Ambiguity where
-
-class C1 a b | b -> a
-class (C1 a b) => C2 a b where
- foo :: b -> b
-
-data A = A
-data B = B
-instance C1 A B
-instance C2 A B where foo = error "urk"
-
--- this is accepted by both 6.12.3 and 7
-runFoo1 :: C2 a b => b -> b
-runFoo1 = foo
-
--- this is accepted by 6.12.3, but not by 7
-runFoo2 :: B -> B
-runFoo2 = foo
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4444.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T4444.hs
deleted file mode 100644
index 5f07d5d71d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4444.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-
--- #4444: We shouldn't warn about SPECIALISE INLINE pragmas on
--- non-overloaded functions
-
-{-# LANGUAGE GADTs, MagicHash #-}
-module Q where
-
-import GHC.Exts
-
-data Arr e where
- ArrInt :: !Int -> ByteArray# -> Arr Int
- ArrPair :: !Int -> Arr e1 -> Arr e2 -> Arr (e1, e2)
-
-(!:) :: Arr e -> Int -> e
-{-# SPECIALISE INLINE (!:) :: Arr Int -> Int -> Int #-}
-{-# SPECIALISE INLINE (!:) :: Arr (a, b) -> Int -> (a, b) #-}
-(ArrInt _ ba) !: (I# i) = I# (indexIntArray# ba i)
-(ArrPair _ a1 a2) !: i = (a1 !: i, a2 !: i)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4498.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T4498.hs
deleted file mode 100644
index fb8c120601..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4498.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE BangPatterns, NoMonoLocalBinds, NoMonoPatBinds #-}
-
-module T4498 where
-
-f x = let !y = (\v -> v) :: a -> a
- in (y x, y 'T')
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4524.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T4524.hs
deleted file mode 100644
index c59ad08b0a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4524.hs
+++ /dev/null
@@ -1,251 +0,0 @@
-{-# LANGUAGE
- GADTs,
- TypeOperators,
- ScopedTypeVariables,
- RankNTypes,
- NoMonoLocalBinds
- #-}
-{-# OPTIONS_GHC -O2 -w #-}
-{-
- Copyright (C) 2002-2003 David Roundy
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2, or (at your option)
- any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; see the file COPYING. If not, write to
- the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
- Boston, MA 02110-1301, USA.
--}
-
-module T4524 where
-
-import Data.Maybe ( mapMaybe )
-import Control.Monad ( MonadPlus, mplus, msum, mzero )
-import Unsafe.Coerce (unsafeCoerce)
-
-newtype FileName = FN FilePath deriving ( Eq, Ord )
-
-data FL a x z where
- (:>:) :: a x y -> FL a y z -> FL a x z
- NilFL :: FL a x x
-data RL a x z where
- (:<:) :: a y z -> RL a x y -> RL a x z
- NilRL :: RL a x x
-data (a1 :> a2) x y = forall z. (a1 x z) :> (a2 z y)
-infixr 1 :>
-data (a1 :< a2) x y = forall z. (a1 z y) :< (a2 x z)
-infix 1 :<
-infixr 5 :>:, :<:
-
-data EqCheck a b where
- IsEq :: EqCheck a a
- NotEq :: EqCheck a b
-
-class MyEq p => Invert p where
- invert :: p x y -> p y x
- identity :: p x x
-
-class MyEq p where
- unsafeCompare :: p a b -> p c d -> Bool
- unsafeCompare a b = IsEq == (a =/\= unsafeCoerceP b)
-
- (=\/=) :: p a b -> p a c -> EqCheck b c
- a =\/= b | unsafeCompare a b = unsafeCoerceP IsEq
- | otherwise = NotEq
-
- (=/\=) :: p a c -> p b c -> EqCheck a b
- a =/\= b | IsEq == (a =\/= unsafeCoerceP b) = unsafeCoerceP IsEq
- | otherwise = NotEq
-
-infix 4 =\/=, =/\=
-
-class Commute p where
- commute :: (p :> p) x y -> Maybe ((p :> p) x y)
-
-instance (MyEq p, Commute p) => MyEq (FL p) where
-instance (MyEq p, Commute p) => MyEq (RL p) where
-instance Commute p => Commute (RL p) where
-instance (Commute p, Invert p) => Invert (RL p) where
-instance (Invert p, Commute p) => Invert (FL p) where
-instance Eq (EqCheck a b) where
-instance MyEq FilePatchType where
-instance Invert Patch where
-
-instance MyEq Patch where
- unsafeCompare = eqPatches
-
-eqPatches :: Patch x y -> Patch w z -> Bool
-eqPatches (PP p1) (PP p2) = undefined
-eqPatches (Merger _ _ p1a p1b) (Merger _ _ p2a p2b)
- = eqPatches p1a p2a &&
- eqPatches p1b p2b
-eqPatches (Regrem _ _ p1a p1b) (Regrem _ _ p2a p2b)
- = eqPatches p1a p2a &&
- eqPatches p1b p2b
-eqPatches _ _ = False
-
-data Prim x y where
- FP :: !FileName -> !(FilePatchType x y) -> Prim x y
-
-data FilePatchType x y = FilePatchType
- deriving (Eq,Ord)
-
-data Patch x y where
- PP :: Prim x y -> Patch x y
- Merger :: FL Patch x y
- -> RL Patch x b
- -> Patch c b
- -> Patch c d
- -> Patch x y
- Regrem :: FL Patch x y
- -> RL Patch x b
- -> Patch c b
- -> Patch c a
- -> Patch y x
-
-data Sealed a where
- Sealed :: a x -> Sealed a
-data FlippedSeal a y where
- FlippedSeal :: !(a x y) -> FlippedSeal a y
-
-mapFlipped :: (forall x. a x y -> b x z) -> FlippedSeal a y -> FlippedSeal b z
-mapFlipped f (FlippedSeal x) = FlippedSeal (f x)
-
-headPermutationsRL :: Commute p => RL p x y -> [RL p x y]
-headPermutationsRL NilRL = []
-headPermutationsRL (p:<:ps) =
- (p:<:ps) : mapMaybe (swapfirstRL.(p:<:)) (headPermutationsRL ps)
- where swapfirstRL (p1:<:p2:<:xs) = do p1':>p2' <- commute (p2:>p1)
- Just $ p2':<:p1':<:xs
- swapfirstRL _ = Nothing
-
-is_filepatch :: Prim x y -> Maybe FileName
-is_filepatch (FP f _) = Just f
-is_filepatch _ = Nothing
-
-toFwdCommute :: (Commute p, Commute q, Monad m)
- => ((p :< q) x y -> m ((q :< p) x y))
- -> (q :> p) x y -> m ((p :> q) x y)
-toFwdCommute c (x :> y) = do x' :< y' <- c (y :< x)
- return (y' :> x')
-
-unsafeUnseal :: Sealed a -> a x
-unsafeUnseal (Sealed a) = unsafeCoerceP1 a
-
-unsafeUnsealFlipped :: FlippedSeal a y -> a x y
-unsafeUnsealFlipped (FlippedSeal a) = unsafeCoerceP a
-
-unsafeCoerceP :: a x y -> a b c
-unsafeCoerceP = unsafeCoerce
-
-unsafeCoercePStart :: a x1 y -> a x2 y
-unsafeCoercePStart = unsafeCoerce
-
-unsafeCoercePEnd :: a x y1 -> a x y2
-unsafeCoercePEnd = unsafeCoerce
-
-unsafeCoerceP1 :: a x -> a y
-unsafeCoerceP1 = unsafeCoerce
-
-data Perhaps a = Unknown | Failed | Succeeded a
-
-instance Monad Perhaps where
- (Succeeded x) >>= k = k x
- Failed >>= _ = Failed
- Unknown >>= _ = Unknown
- Failed >> _ = Failed
- (Succeeded _) >> k = k
- Unknown >> k = k
- return = Succeeded
- fail _ = Unknown
-
-instance MonadPlus Perhaps where
- mzero = Unknown
- Unknown `mplus` ys = ys
- Failed `mplus` _ = Failed
- (Succeeded x) `mplus` _ = Succeeded x
-
-toMaybe :: Perhaps a -> Maybe a
-toMaybe (Succeeded x) = Just x
-toMaybe _ = Nothing
-
-cleverCommute :: CommuteFunction -> CommuteFunction
-cleverCommute c (p1:<p2) =
- case c (p1 :< p2) of
- Succeeded x -> Succeeded x
- Failed -> Failed
-
-speedyCommute :: CommuteFunction
-speedyCommute (p1 :< p2) -- Deal with common case quickly!
- | p1_modifies /= Nothing && p2_modifies /= Nothing &&
- p1_modifies /= p2_modifies = undefined
- | otherwise = Unknown
- where p1_modifies = isFilepatchMerger p1
- p2_modifies = isFilepatchMerger p2
-
-everythingElseCommute :: MaybeCommute -> CommuteFunction
-everythingElseCommute _ x = undefined
-
-unsafeMerger :: String -> Patch x y -> Patch x z -> Patch a b
-unsafeMerger x p1 p2 = unsafeCoercePStart $ unsafeUnseal $ merger x p1 p2
-
-mergerCommute :: (Patch :< Patch) x y -> Perhaps ((Patch :< Patch) x y)
-mergerCommute (Merger _ _ p1 p2 :< pA)
- | unsafeCompare pA p1 = Succeeded (unsafeMerger "0.0" p2 p1 :< unsafeCoercePStart p2)
- | unsafeCompare pA (invert (unsafeMerger "0.0" p2 p1)) = Failed
-mergerCommute (Merger _ _
- (Merger _ _ c b)
- (Merger _ _ c' a) :<
- Merger _ _ b' c'')
- | unsafeCompare b' b && unsafeCompare c c' && unsafeCompare c c'' = undefined
-mergerCommute _ = Unknown
-
-instance Commute Patch where
- commute x = toMaybe $ msum
- [toFwdCommute speedyCommute x,
- toFwdCommute (cleverCommute mergerCommute) x,
- toFwdCommute (everythingElseCommute undefined) x
- ]
-
-isFilepatchMerger :: Patch x y -> Maybe FileName
-isFilepatchMerger (PP p) = is_filepatch p
-isFilepatchMerger (Regrem und unw p1 p2)
- = isFilepatchMerger (Merger und unw p1 p2)
-
-type CommuteFunction = forall x y. (Patch :< Patch) x y -> Perhaps ((Patch :< Patch) x y)
-type MaybeCommute = forall x y. (Patch :< Patch) x y -> Maybe ((Patch :< Patch) x y)
-
-{- unwind, trueUnwind, reconcleUnwindings, and merger are most likely
- where the problem lies. Everything above is just brought in to bring
- in enough context so that those four will compile. -}
-unwind :: Patch x y -> Sealed (RL Patch x) -- Recreates a patch history in reverse.
-unwind (Merger _ unwindings _ _) = Sealed unwindings
-unwind p = Sealed (p :<: NilRL)
-
-trueUnwind :: Patch x y -> Sealed (RL Patch x) -- Recreates a patch history in reverse.
-trueUnwind p@(Merger _ _ p1 p2) =
- case (unwind p1, unwind p2) of
- (Sealed (_:<:p1s),Sealed (_:<:p2s)) ->
- Sealed (p :<: unsafeCoerceP p1 :<: unsafeUnsealFlipped (reconcileUnwindings p1s (unsafeCoercePEnd p2s)))
-
-reconcileUnwindings :: RL Patch x z -> RL Patch y z -> FlippedSeal (RL Patch) z
-reconcileUnwindings p1s NilRL = FlippedSeal p1s
-reconcileUnwindings (p1:<:_) (p2:<:_) =
- case [undefined | p1s'@(_:<:_) <- headPermutationsRL (p1:<:undefined)] of
- ((_:<:p1s', _:<:p2s'):_) ->
- mapFlipped (undefined :<:) $ reconcileUnwindings p1s' (unsafeCoercePEnd p2s')
-
-merger :: String -> Patch x y -> Patch x z -> Sealed (Patch y)
-merger "0.0" p1 p2 = Sealed $ Merger undoit unwindings p1 p2
- where fake_p = Merger identity NilRL p1 p2
- unwindings = unsafeUnseal (trueUnwind fake_p)
- p = undefined
- undoit = undefined
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4912.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T4912.hs
deleted file mode 100644
index 539ba078ee..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4912.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE TypeSynonymInstances #-}
-{-# OPTIONS_GHC -fwarn-orphans #-}
-module T4912 where
-
-import T4912a
-
-
-type OurData = TheirData
-
-instance Foo TheirData where
- foo = id
-
-instance Bar OurData where
- bar _ = "Ours"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4912.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/T4912.stderr
deleted file mode 100644
index c944dc1260..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4912.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-T4912.hs:10:10: Warning: orphan instance: instance Foo TheirData
-
-T4912.hs:13:10: Warning: orphan instance: instance Bar OurData
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4912a.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T4912a.hs
deleted file mode 100644
index 4cc1548c05..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4912a.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module T4912a where
-
-data TheirData = TheirData
-
-class Foo a where
- foo :: a -> a
-
-class Bar a where
- bar :: a -> String
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4917.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T4917.hs
deleted file mode 100644
index f6d51d4c27..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4917.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE GADTs, ScopedTypeVariables, EmptyDataDecls, RankNTypes #-}
-
-module T4917 where
-
--- only works on ghc6 but not on ghc7
-type Const a b = a
-
-newtype Fix f n = In { out :: f (Fix f) n }
-
-mcata :: forall f a b .
- (forall x c . (forall d . x d -> Const b d) -> f x c -> Const b c)
- -> Fix f a -> Const b a
-mcata f x = f {- x=(Fix f), c=a -} mcataf outx
- where
- outx :: f (Fix f) a
- outx = out x
-
- mcataf :: forall d. Fix f d -> Const b d
- mcataf y = mcata {- f=f, a=d, b=b0 -} f (y :: Fix f d)
- -- Const b d ~ Const b0 d
- -- Expected type of f :: forall x c. (forall d. x d -> Const b0 d) -> f x c -> Const b0 c
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4952.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T4952.hs
deleted file mode 100644
index b0d2fba794..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4952.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE UndecidableInstances,
- MultiParamTypeClasses,
- KindSignatures,
- FlexibleInstances,
- FunctionalDependencies #-}
-
-module Storage.Hashed.Monad () where
-
-class Monad m => TreeRO m where
- withDirectory :: (MonadError e m) => Int -> m a -> m a
- expandTo :: (MonadError e m) => Int -> m Int
-
-instance (Monad m, MonadError e m) => TreeRO (M m) where
- expandTo = undefined
- withDirectory dir _ = do
- _ <- expandTo dir
- undefined
-
-data M (m :: * -> *) a
-
-instance Monad m => Monad (M m) where
- (>>=) = undefined
- return = undefined
-
-instance MonadError e m => MonadError e (M m)
-
-class Monad m => MonadError e m | m -> e
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T4969.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T4969.hs
deleted file mode 100644
index 084420e660..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T4969.hs
+++ /dev/null
@@ -1,87 +0,0 @@
-{-# OPTIONS_GHC -w #-}
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleContexts, FlexibleInstances,
- OverlappingInstances, UndecidableInstances #-}
-
--- Cut down from a larger core-lint error
-
-module Q where
-
-import Control.Monad (foldM)
-
-data NameId = NameId
-data Named name a = Named
-data Arg e = Arg
-
-data Range = Range
-data Name = Name
-data ALetBinding = ALetBinding
-data APattern a = APattern
-data CExpr = CExpr
-data CPattern = CPattern
-data NiceDeclaration = QQ
-data TypeError = NotAValidLetBinding NiceDeclaration
-data TCState = TCSt { stFreshThings :: FreshThings }
-data FreshThings = Fresh
-
-newtype NewName a = NewName a
-newtype LetDef = LetDef NiceDeclaration
-newtype TCMT m a = TCM ()
-
-localToAbstract :: ToAbstract c a => c -> (a -> TCMT IO b) -> TCMT IO b
-localToAbstract = undefined
-
-typeError :: MonadTCM tcm => TypeError -> tcm a
-typeError = undefined
-
-lhsArgs :: [Arg (Named String CPattern)]
-lhsArgs = undefined
-
-freshNoName :: (MonadState s m, HasFresh NameId s) => Range -> m Name
-freshNoName = undefined
-
-class (Monad m) => MonadState s m | m -> s
-class (Monad m) => MonadIO m
-
-class ToAbstract concrete abstract | concrete -> abstract where
- toAbstract :: concrete -> TCMT IO abstract
-
-class (MonadState TCState tcm) => MonadTCM tcm where
- liftTCM :: TCMT IO a -> tcm a
-
-class HasFresh i a where
- nextFresh :: a -> (i,a)
-
-instance ToAbstract c a => ToAbstract [c] [a] where
-instance ToAbstract c a => ToAbstract (Arg c) (Arg a) where
-instance ToAbstract c a => ToAbstract (Named name c) (Named name a) where
-instance ToAbstract CPattern (APattern CExpr) where
-
-instance ToAbstract LetDef [ALetBinding] where
- toAbstract (LetDef d) = do _ <- letToAbstract
- undefined
- where letToAbstract = do
- localToAbstract lhsArgs $ \args ->
- foldM lambda undefined undefined
- lambda _ _ = do x <- freshNoName undefined
- return undefined
- lambda _ _ = typeError $ NotAValidLetBinding d
-
-instance HasFresh NameId FreshThings where
- nextFresh = undefined
-
-instance HasFresh i FreshThings => HasFresh i TCState where
- nextFresh = undefined
-
-instance Monad m => MonadState TCState (TCMT m) where
-
-instance Monad m => MonadTCM (TCMT m) where
- liftTCM = undefined
-
-instance Monad (TCMT m) where
- return = undefined
- (>>=) = undefined
- fail = undefined
-
-instance Monad m => MonadIO (TCMT m) where
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T5051.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T5051.hs
deleted file mode 100644
index e98c074c4b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T5051.hs
+++ /dev/null
@@ -1,33 +0,0 @@
-{-# LANGUAGE FlexibleInstances, OverlappingInstances #-}
-
--- A very delicate interaction of overlapping instances
-
-module T5051 where
-
-data T = T deriving( Eq, Ord )
-instance Eq [T]
-
-foo :: Ord a => [a] -> Bool
-foo x = x >= x
-
--- Bizarrely, the defn of 'foo' failed in GHC 7.0.3 with
--- T5051.hs:14:10:
--- Overlapping instances for Eq [a]
--- arising from a use of `>'
--- Matching instances:
--- instance Eq a => Eq [a] -- Defined in GHC.Classes
--- instance [overlap ok] Eq [T] -- Defined at T5051.hs:9:10-15
--- (The choice depends on the instantiation of `a'
--- To pick the first instance above, use -XIncoherentInstances
--- when compiling the other instance declarations)
--- In the expression: x > x
---
--- Reason: the dfun for Ord [a] (in the Prelude) had a "silent"
--- superclass parameter, thus
--- $dfOrdList :: forall a. (Eq [a], Ord a) => Ord [a]
--- Using the dfun means we need Eq [a], and that gives rise to the
--- overlap error.
---
--- This is terribly confusing: the use of (>=) means we need Ord [a],
--- and if we have Ord a (which we do) we should be done.
--- A very good reason for not having silent parameters!
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T5120.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T5120.hs
deleted file mode 100644
index 6fe95c4516..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T5120.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-{-# LANGUAGE TypeFamilies #-}
-{-# LANGUAGE NoMonomorphismRestriction #-}
-
-module Test where
-
-class C t where
- type TF t
- ttt :: TF t -> t
-
-b :: (C t, ?x :: TF t) => t
-b = ttt ?x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/T700.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/T700.hs
deleted file mode 100644
index 9024033c29..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/T700.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-
-module T700 where
-
--- These two should behave the same way
-
-f,g :: (forall a. Maybe a) -> (forall a. a)
-
-f x = case x of Just y -> y
-g (Just y) = y
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/Tc170_Aux.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/Tc170_Aux.hs
deleted file mode 100644
index c7cd186f13..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/Tc170_Aux.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-
-module Tc170_Aux where
-
-class ReadMode mode
-
-data Attr m w a = Attr (w -> IO a) (w -> a -> IO ())
-
-mapAttr :: ReadMode m => (a -> b) -> (a -> b -> a) -> Attr m w a -> Attr m w b
-mapAttr get set (Attr getter setter)
- = Attr (\w -> do a <- getter w; return (get a))
- (\w b -> do a <- getter w; setter w (set a b))
-
-
-data Rect = Rect
-data Point = Point
-topLeft = undefined
-rectMoveTo = undefined
-
-class Dimensions w where
- frame :: ReadMode m => Attr m w Rect
-
- position :: ReadMode m => Attr m w Point
- position = mapAttr (\f -> topLeft f) (\f p -> rectMoveTo p f) frame
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/Tc173a.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/Tc173a.hs
deleted file mode 100644
index c8a589d2b3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/Tc173a.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-module Tc173a where
-
-class FormValue value where
- isFormValue :: value -> ()
- isFormValue _ = ()
-
-class FormTextField value
-
-instance FormTextField String
-
-instance FormTextField value => FormTextFieldIO value
-
-class FormTextFieldIO value
-
-instance FormTextFieldIO value => FormValue value
-
-instance FormTextFieldIO value => FormTextFieldIO (Maybe value)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/Tc173b.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/Tc173b.hs
deleted file mode 100644
index c98c57acd8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/Tc173b.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module Tc173b where
-
-import Tc173a
-
-is :: ()
-is = isFormValue (Just "") \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/Tc239_Help.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/Tc239_Help.hs
deleted file mode 100644
index c72acdfb11..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/Tc239_Help.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-module Tc239_Help ( WrapIO, WrapIO2 ) where
-
-newtype WrapIO e a = MkWrapIO { unwrap :: IO a }
-
-type WrapIO2 a = WrapIO String a
-
-instance Monad (WrapIO e) where
- return x = MkWrapIO (return x)
-
- m >>= f = MkWrapIO (do x <- unwrap m
- unwrap (f x) )
-
- fail str = error str \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/Tc245_A.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/Tc245_A.hs
deleted file mode 100644
index 6b03118723..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/Tc245_A.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-{-# LANGUAGE TypeFamilies #-}
-module Tc245_A where
-class Foo a where
- data Bar a :: * -> *
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/all.T b/testsuite/tests/ghc-regress/typecheck/should_compile/all.T
deleted file mode 100644
index b8440458c4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/all.T
+++ /dev/null
@@ -1,348 +0,0 @@
-# Args to vtc are: extra compile flags
-
-def f( opts ):
- opts.extra_hc_opts = '-fno-warn-incomplete-patterns'
-
-setTestOpts(f)
-
-test('tc001', normal, compile, [''])
-test('tc002', normal, compile, [''])
-test('tc003', normal, compile, [''])
-test('tc004', normal, compile, [''])
-test('tc005', normal, compile, [''])
-test('tc006', normal, compile, [''])
-test('tc007', normal, compile, [''])
-test('tc008', normal, compile, [''])
-test('tc009', normal, compile, [''])
-test('tc010', normal, compile, [''])
-test('tc011', normal, compile, [''])
-test('tc012', normal, compile, [''])
-test('tc013', normal, compile, [''])
-test('tc014', normal, compile, [''])
-test('tc015', normal, compile, [''])
-test('tc016', normal, compile, [''])
-test('tc017', normal, compile, [''])
-test('tc018', normal, compile, [''])
-test('tc019', normal, compile, [''])
-test('tc020', normal, compile, [''])
-test('tc021', normal, compile, [''])
-test('tc022', normal, compile, [''])
-test('tc023', normal, compile, [''])
-test('tc024', normal, compile, [''])
-test('tc025', normal, compile, [''])
-test('tc026', normal, compile, [''])
-test('tc027', normal, compile, [''])
-test('tc028', normal, compile, [''])
-test('tc029', normal, compile, [''])
-test('tc030', normal, compile, [''])
-test('tc031', normal, compile, [''])
-test('tc032', normal, compile, [''])
-test('tc033', normal, compile, [''])
-test('tc034', normal, compile, [''])
-test('tc035', normal, compile, [''])
-test('tc036', normal, compile, [''])
-test('tc037', normal, compile, [''])
-test('tc038', normal, compile, [''])
-test('tc039', normal, compile, [''])
-test('tc040', normal, compile, [''])
-test('tc041', normal, compile, [''])
-test('tc042', normal, compile, [''])
-test('tc043', normal, compile, [''])
-test('tc044', normal, compile, [''])
-test('tc045', normal, compile, [''])
-test('tc046', normal, compile, [''])
-test('tc047', normal, compile, [''])
-test('tc048', normal, compile, [''])
-test('tc049', normal, compile, [''])
-test('tc050', normal, compile, [''])
-test('tc051', normal, compile, [''])
-test('tc052', normal, compile, [''])
-test('tc053', normal, compile, [''])
-test('tc054', normal, compile, [''])
-test('tc055', normal, compile, [''])
-test('tc056', normal, compile, [''])
-test('tc057', normal, compile, [''])
-test('tc058', normal, compile, [''])
-test('tc059', normal, compile, [''])
-test('tc060', normal, compile, [''])
-test('tc061', normal, compile, [''])
-test('tc062', normal, compile, [''])
-test('tc063', normal, compile, [''])
-test('tc064', normal, compile, [''])
-test('tc065', normal, compile, [''])
-test('tc066', normal, compile, [''])
-test('tc067', normal, compile, [''])
-test('tc068', normal, compile, [''])
-test('tc069', normal, compile, [''])
-test('tc070', normal, compile, [''])
-test('tc073', normal, compile, [''])
-test('tc074', normal, compile, [''])
-test('tc076', normal, compile, [''])
-test('tc077', normal, compile, [''])
-test('tc078', normal, compile, [''])
-test('tc079', normal, compile, [''])
-test('tc080', normal, compile, [''])
-test('tc081', normal, compile, [''])
-test('tc082', normal, compile, [''])
-test('tc084', if_compiler_type('hugs', expect_fail), compile, [''])
-test('tc085', only_compiler_types(['ghc']), compile, [''])
-test('tc086', normal, compile, [''])
-test('tc087', normal, compile, [''])
-test('tc088', normal, compile, [''])
-test('tc089', normal, compile, [''])
-test('tc090', normal, compile, [''])
-test('tc091', normal, compile, [''])
-test('tc092', normal, compile, [''])
-test('tc093', normal, compile, [''])
-test('tc094', normal, compile, [''])
-test('tc095', normal, compile, [''])
-test('tc096', if_compiler_type('hugs', expect_fail), compile, [''])
-test('tc097', normal, compile, [''])
-test('tc098', normal, compile, [''])
-test('tc099', normal, compile, [''])
-test('tc100', normal, compile, [''])
-test('tc101', normal, compile, [''])
-test('tc102', normal, compile, [''])
-# tc103 free
-test('tc104', normal, compile, [''])
-test('tc105', normal, compile, [''])
-test('tc106', normal, compile, [''])
-test('tc107', normal, compile, [''])
-test('tc108', normal, compile, [''])
-test('tc109', normal, compile, [''])
-test('tc111', normal, compile, [''])
-test('tc112', normal, compile, [''])
-test('tc113', normal, compile, [''])
-test('tc114', normal, compile, [''])
-test('tc115', normal, compile, [''])
-test('tc116', normal, compile, [''])
-test('tc117', normal, compile, [''])
-test('tc118', normal, compile, [''])
-test('tc119', normal, compile, [''])
-test('tc120', normal, compile, [''])
-test('tc121', normal, compile, [''])
-test('tc122', normal, compile, [''])
-test('tc123', normal, compile, [''])
-test('tc124', normal, compile, [''])
-test('tc125', normal, compile, [''])
-test('tc126', normal, compile, [''])
-test('tc127', normal, compile, [''])
-test('tc128', normal, compile, [''])
-test('tc129', normal, compile, [''])
-test('tc130', normal, compile, [''])
-test('tc131', normal, compile, [''])
-test('tc132', normal, compile, [''])
-test('tc133', normal, compile, [''])
-
-# tc134 tested result type signatures, which aren't supported any more
-# test('tc134', only_compiler_types(['ghc']), compile_fail, [''])
-
-test('tc135', only_compiler_types(['ghc']), compile, [''])
-test('tc136', normal, compile, [''])
-test('tc137', normal, compile, [''])
-test('tc140', normal, compile, [''])
-test('tc141', normal, compile_fail, [''])
-test('tc142', normal, compile, [''])
-test('tc143', normal, compile, [''])
-test('tc144', omit_compiler_types(['hugs']), compile, ['']) # Hugs loops
-test('tc145', normal, compile, [''])
-test('tc146', normal, compile, [''])
-test('tc147', normal, compile, [''])
-test('tc148', only_compiler_types(['ghc']), compile, [''])
-test('tc149', only_compiler_types(['ghc']), compile, [''])
-test('tc150', normal, compile, [''])
-test('tc151', normal, compile, [''])
-test('tc152', only_compiler_types(['ghc']), compile, [''])
-test('tc153', normal, compile, [''])
-test('tc154', normal, compile, [''])
-test('tc155', normal, compile, [''])
-test('tc156', only_compiler_types(['ghc']), compile, [''])
-test('tc157', normal, compile, [''])
-test('tc158', only_compiler_types(['ghc']), compile, [''])
-test('tc159', normal, compile_and_run, [''])
-test('tc160', only_compiler_types(['ghc']), compile, [''])
-test('tc161', normal, compile, [''])
-test('tc162', only_compiler_types(['ghc']), compile, [''])
-test('tc163', only_compiler_types(['ghc']), compile, [''])
-test('tc164', normal, compile, [''])
-test('tc165', normal, compile, [''])
-test('tc166', only_compiler_types(['ghc']), compile, [''])
-test('tc167', only_compiler_types(['ghc']), compile, [''])
-test('tc168', only_compiler_types(['ghc']), compile, ['-ddump-types'])
-test('tc169', normal, compile, [''])
-
-test('tc170',
- extra_clean(['Tc170_Aux.hi', 'Tc170_Aux.o']),
- run_command,
- ['$MAKE -s --no-print-directory tc170'])
-
-test('tc171', normal, compile, [''])
-test('tc172', normal, compile, [''])
-
-# The point about this test is that it compiles Tc173a and Tc173b *separately*
-test('tc173',
- extra_clean(['Tc173a.hi', 'Tc173a.o', 'Tc173b.hi', 'Tc173b.o']),
- run_command,
- ['$MAKE -s --no-print-directory tc173'])
-
-test('tc174', only_compiler_types(['ghc']), compile, [''])
-test('tc175', normal, compile, [''])
-test('tc176', normal, compile, [''])
-test('tc177', normal, compile, [''])
-test('tc178', normal, compile, [''])
-test('tc179', normal, compile, [''])
-test('tc180', normal, compile, [''])
-test('tc181', normal, compile, [''])
-test('tc182', normal, compile, [''])
-test('tc183', reqlib('mtl'), compile, [''])
-test('tc184', normal, compile, [''])
-test('tc185', only_compiler_types(['ghc']), compile, [''])
-test('tc186', normal, compile, [''])
-test('tc187', normal, compile, [''])
-test('tc188', only_compiler_types(['ghc']), compile, [''])
-test('tc189', normal, compile, [''])
-test('tc190', only_compiler_types(['ghc']), compile, [''])
-test('tc191', [only_compiler_types(['ghc']), reqlib('syb')], compile, [''])
-test('tc192', only_compiler_types(['ghc']), compile, [''])
-test('tc193', only_compiler_types(['ghc']), compile, [''])
-test('tc194', normal, compile, [''])
-test('tc195', only_compiler_types(['ghc']), compile, [''])
-test('tc196', normal, compile, [''])
-test('tc197', normal, compile, [''])
-test('tc198', normal, compile, [''])
-test('tc199', normal, compile, [''])
-test('tc200', normal, compile, [''])
-test('tc201', normal, compile, [''])
-test('tc202', normal, compile, [''])
-test('tc203', normal, compile, [''])
-test('tc204', normal, compile, [''])
-test('tc205', normal, compile, [''])
-test('tc206', normal, compile, [''])
-test('tc207', normal, compile, [''])
-test('tc208', normal, compile, [''])
-test('tc209', normal, compile, [''])
-test('tc210', normal, compile, [''])
-test('tc211', normal, compile_fail, [''])
-test('tc212', normal, compile, [''])
-test('tc213', normal, compile, [''])
-test('tc214', normal, compile, [''])
-test('tc215', normal, compile, [''])
-
-# This one is very delicate, but I don't think the result really matters
-test('tc216', normal, compile, [''])
-
-test('tc217', reqlib('mtl'), compile, [''])
-test('tc218', normal, compile, [''])
-test('tc219', normal, compile, [''])
-test('tc220', [reqlib('mtl'), reqlib('syb')], compile, [''])
-test('tc221', normal, compile, [''])
-test('tc222', normal, compile, [''])
-test('tc223', reqlib('mtl'), compile, [''])
-test('tc224', normal, compile, [''])
-test('tc225', normal, compile, [''])
-test('tc226', normal, compile, [''])
-test('tc227', normal, compile, [''])
-test('tc228', normal, compile, [''])
-test('tc229', normal, compile, [''])
-test('tc230', normal, compile, [''])
-test('tc231', normal, compile, [''])
-test('tc232', reqlib('mtl'), compile, [''])
-test('tc233', normal, compile, [''])
-test('tc234', normal, compile, [''])
-test('tc235', normal, compile, [''])
-test('tc236', normal, compile, [''])
-test('tc237', normal, compile, [''])
-test('tc238', normal, compile, [''])
-
-test('tc239', extra_clean(['Tc239_Help.hi', 'Tc239_Help.o']),
- multimod_compile, ['tc239', '-v0'])
-
-test('tc240', normal, compile, [''])
-test('tc241', normal, compile, [''])
-test('tc242', normal, compile, [''])
-test('tc243', normal, compile, [''])
-test('tc244', normal, compile, [''])
-test('tc245',
- extra_clean(['Tc245_A.hi', 'Tc245_A.o', 'tc245.hi', 'tc245.o']),
- run_command,
- ['$MAKE -s --no-print-directory tc245'])
-test('tc246', normal, compile, [''])
-test('tc247', normal, compile, [''])
-test('tc248', normal, compile, [''])
-
-test('FD1', normal, compile_fail, [''])
-test('FD2', normal, compile_fail, [''])
-test('FD3', normal, compile_fail, [''])
-test('FD4', normal, compile, [''])
-
-test('faxen', normal, compile, [''])
-test('T1495', normal, compile, [''])
-test('T2045', normal, compile, ['']) # Needs -fhpc
-test('T2478', normal, compile, [''])
-test('T2433', extra_clean(['T2433_Help.hi', 'T2433_Help.o']),
- multimod_compile, ['T2433', '-v0'])
-test('T2494', normal, compile_fail, [''])
-test('T2494-2', normal, compile, [''])
-test('T2497', normal, compile, [''])
-
-
-# Omitting temporarily
-test('syn-perf', normal, compile, ['-fcontext-stack=30'])
-test('syn-perf2', normal, compile, [''])
-
-test('LoopOfTheDay1', normal, compile, [''])
-test('LoopOfTheDay2', normal, compile, [''])
-test('LoopOfTheDay3', normal, compile, [''])
-
-test('T1470', normal, compile, [''])
-test('T2572', normal, compile, [''])
-test('T2735', normal, compile, [''])
-test('T2799', normal, compile, [''])
-test('T3219', normal, compile, [''])
-test('T3342', normal, compile, [''])
-test('T3346', normal, compile, [''])
-test('T3409', normal, compile, [''])
-test('T3955', normal, compile, [''])
-test('PolyRec', normal, compile, [''])
-test('twins', normal, compile, [''])
-
-test('T2412',
- extra_clean(['T2412.hi-boot', 'T2412.o-boot',
- 'T2412A.hi', 'T2412A.o',
- 'T2412.hi', 'T2412.o']),
- run_command,
- ['$MAKE --no-print-directory -s T2412'])
-
-test('T2846', normal, compile, [''])
-test('T4284', normal, compile, [''])
-test('T2683', normal, compile, [''])
-test('T3696', normal, compile, [''])
-test('T1123', normal, compile, [''])
-test('T3692', normal, compile, [''])
-test('T700', normal, compile, [''])
-test('T4361', normal, compile, [''])
-test('T4355', reqlib('mtl'), compile, [''])
-test('T1634', normal, compile, [''])
-test('T4401', normal, compile, [''])
-test('T4404', normal, compile, ['-Wall'])
-test('HasKey', normal, compile, [''])
-test('T4418', normal, compile, [''])
-test('T4444', normal, compile, [''])
-test('T4498', normal, compile, [''])
-test('T4524', normal, compile, [''])
-test('T4917', normal, compile, [''])
-
-test('T4912', extra_clean(['T4912a.hi', 'T4912a.o']),
- multimod_compile, ['T4912', '-v0'])
-
-test('T4952', normal, compile, [''])
-test('T4969', normal, compile, [''])
-test('T5120', normal, compile, [''])
-test('mc18', normal, compile, [''])
-test('tc249', normal, compile, [''])
-
-test('GivenOverlapping', normal, compile, [''])
-test('SilentParametersOverlapping', normal, compile, [''])
-test('GivenTypeSynonym', normal, compile, [''])
-test('T5051', normal, compile, [''])
-test('T3018', normal, compile, [''])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/faxen.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/faxen.hs
deleted file mode 100644
index c7310529c6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/faxen.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
--- A classic test for type inference
--- Taken from "Haskell and principal types", Section 3
--- by Faxen, in the Haskell Workshop 2003, pp88-97
-
-module ShouldCompile where
-
-class HasEmpty a where
- isEmpty :: a -> Bool
-
-instance HasEmpty [a] where
- isEmpty x = null x
-
-instance HasEmpty (Maybe a) where
- isEmpty Nothing = True
- isEmpty (Just x) = False
-
-test1 y
- = (null y)
- || (let f :: forall d. d -> Bool
- f x = isEmpty (y >> return x)
- in f y)
-
-test2 y
- = (let f :: forall d. d -> Bool
- f x = isEmpty (y >> return x)
- in f y)
- || (null y)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/mc18.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/mc18.hs
deleted file mode 100644
index 82ee05e6f7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/mc18.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- Checks that the types of the old binder and the binder implicitly introduced by grouping are linked
-
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp #-}
-
-module ShouldCompile where
-
-import Data.List(inits)
-
-foo :: [[[Int]]]
-foo = [ x
- | x <- [1..10]
- , then group using inits
- , then group using inits
- ]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/syn-perf.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/syn-perf.hs
deleted file mode 100644
index c7e2a4a0eb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/syn-perf.hs
+++ /dev/null
@@ -1,108 +0,0 @@
-{-# LANGUAGE TypeOperators, DeriveDataTypeable #-}
-
--- This is a performance test. In GHC 6.4, it simply wouldn't compile
--- because the types got exponentially large, due to poor handling of
--- type synonyms
-
-module ShouldCompile where
-
-import Data.Word
-import Data.Int
-import Data.Typeable
-
-data HNil = HNil deriving (Eq,Show,Read)
-data HCons e l = HCons e l deriving (Eq,Show,Read)
-
-type e :*: l = HCons e l
- -- In GHC 6.4 the deeply-nested use of this
- -- synonym gave rise to exponential behaviour
-
---- list endian16
-newtype Tables = Tables [TableInfo] deriving (Show, Typeable)
-
-type TableInfo =
- AvgPot :*:
- NumPlayers :*:
- Waiting :*:
- PlayersFlop :*:
- TableName :*:
- TableID :*:
- GameType :*:
- InfoMaxPlayers :*:
- RealMoneyTable :*:
- LowBet :*:
- HighBet :*:
- MinStartMoney :*:
- MaxStartMoney :*:
- GamesPerHour :*:
- TourType :*:
- TourID :*:
- BetType :*:
- CantReturnLess :*:
- AffiliateID :*:
- NIsResurrecting :*:
- MinutesForTimeout :*:
- SeatsToResurrect :*:
- LangID :*:
- HNil
-
-newtype TourType = TourType TourType_ deriving (Show, Typeable)
-newtype AvgPot = AvgPot Word64 deriving (Show, Typeable)
-newtype NumPlayers = NumPlayers Word16 deriving (Show, Typeable)
-newtype Waiting = Waiting Word16 deriving (Show, Typeable)
-newtype PlayersFlop = PlayersFlop Word8 deriving (Show, Typeable)
-newtype TableName = TableName String deriving (Show, Typeable)
-newtype TableID = TableID Word32 deriving (Show, Typeable)
-newtype OldTableID = OldTableID Word32 deriving (Show, Typeable)
-newtype GameType = GameType GameType_ deriving (Show, Typeable)
-newtype InfoMaxPlayers = InfoMaxPlayers Word16 deriving (Show, Typeable)
-newtype RealMoneyTable = RealMoneyTable Bool deriving (Show, Typeable)
-newtype LowBet = LowBet RealMoney_ deriving (Show, Typeable)
-newtype HighBet = HighBet RealMoney_ deriving (Show, Typeable)
-newtype MinStartMoney = MinStartMoney RealMoney_ deriving (Show, Typeable)
-newtype MaxStartMoney = MaxStartMoney RealMoney_ deriving (Show, Typeable)
-newtype GamesPerHour = GamesPerHour Word16 deriving (Show, Typeable)
-newtype TourID = TourID Word32 deriving (Show, Typeable)
-newtype BetType = BetType BetType_ deriving (Show, Typeable)
-newtype CantReturnLess = CantReturnLess Word32 deriving (Show, Typeable)
-newtype AffiliateID = AffiliateID [Word8] deriving (Show, Typeable)
-newtype NIsResurrecting = NIsResurrecting Word32 deriving (Show, Typeable)
-newtype MinutesForTimeout = MinutesForTimeout Word32 deriving (Show, Typeable)
-newtype SeatsToResurrect = SeatsToResurrect Word32 deriving (Show, Typeable)
-newtype LangID = LangID Word32 deriving (Show, Typeable)
-
-data GameType_
- = EmptyGame
- | Holdem
- | OmahaHoldem
- | OmahaHiLo
- | SevenCardStud
- | SevenCardStudLoHi
- | OneToOne
- | OneToOneOmaha
- | OneToOne7CS
- | OneToOneOmahaHL
- | OneToOne7CSHL
- | TeenPatti
- | OneToOneTeenPatti
- deriving (Eq, Show, Typeable)
-
-type RealMoney_ = Word64
-
-data TourType_
- = TourNone
- | TourSingle
- | TourMulti
- | TourHeadsUpMulti
- deriving (Enum, Eq, Show, Typeable)
-
-data BetType_
- = BetNone
- | BetFixed
- | BetPotLimit
- | BetNoLimit
- | BetBigRiver
- | BetTeenPatti
- | BetTeenPattiFixed
- deriving (Enum, Eq, Show, Typeable)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/syn-perf2.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/syn-perf2.hs
deleted file mode 100644
index 517fdb8a21..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/syn-perf2.hs
+++ /dev/null
@@ -1,33 +0,0 @@
--- Another type-synonym performance test
--- (Trac 323)
--- Fails in GHC up to 6.6
-
-module ShouldCompile where
-
-type S = Maybe
-type S2 n = S (S n)
-type S4 n = S2 (S2 n)
-type S8 n = S4 (S4 n)
-type S16 n = S8 (S8 n)
-type S32 n = S16 (S16 n)
-
-type N64 n = S32 (S32 n)
-
-type N64' =
- S ( S ( S ( S ( S ( S ( S ( S (
- S ( S ( S ( S ( S ( S ( S ( S (
- S ( S ( S ( S ( S ( S ( S ( S (
- S ( S ( S ( S ( S ( S ( S ( S (
- S ( S ( S ( S ( S ( S ( S ( S (
- S ( S ( S ( S ( S ( S ( S ( S (
- S ( S ( S ( S ( S ( S ( S ( S (
- S ( S ( S ( S ( S ( S ( S ( S (
- Int
- ))))))))
- ))))))))
- ))))))))
- ))))))))
- ))))))))
- ))))))))
- ))))))))
- ))))))))
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc001.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc001.hs
deleted file mode 100644
index c3b0a785e2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc001.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-a x = y+2 where y = x+3
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc002.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc002.hs
deleted file mode 100644
index 85f1a91e1f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc002.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-b = if True then 1 else 2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc003.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc003.hs
deleted file mode 100644
index 70459c3443..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc003.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module ShouldSucceed where
-
--- This is a somewhat surprising program.
--- It shows up the monomorphism restriction, *and* ambiguity resolution!
--- The binding is a pattern binding without a signature, so it is monomorphic.
--- Hence the types of c,d,e are not universally quantified. But then
--- their type variables are ambiguous, so the ambiguity resolution leaps
--- into action, and resolves them to Integer.
-
--- That's why we check the interface file in the test suite.
-
-(c@(d,e)) = if True then (1,2) else (1,3)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc004.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc004.hs
deleted file mode 100644
index a0627302d4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc004.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldSucceed where
-
-f x = case x of
- True -> True
- False -> x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc005.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc005.hs
deleted file mode 100644
index 9d39da8912..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc005.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldSucceed where
-
-g ((x:z),y) = x
-g (x,y) = 2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc006.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc006.hs
deleted file mode 100644
index 2a22688d19..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc006.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-h = 1:h
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc007.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc007.hs
deleted file mode 100644
index c65458514b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc007.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module ShouldSucceed where
-
-j = 2
-
-k = 1:j:l
-
-l = 0:k
-
-m = j+j
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc008.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc008.hs
deleted file mode 100644
index 236b575573..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc008.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldSucceed where
-
-n True = 1
-n False = 0
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc009.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc009.hs
deleted file mode 100644
index b682a94c0d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc009.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldSucceed where
-
-o (True,x) = x
-o (False,y) = y+1
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc010.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc010.hs
deleted file mode 100644
index 8ec9afd3d0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc010.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-p = [(y+2,True) | y <- [1,2]]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc011.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc011.hs
deleted file mode 100644
index 24c5b3b91b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc011.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-x@_ = x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc012.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc012.hs
deleted file mode 100644
index 6f5e954220..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc012.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-q = \ y -> y
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc013.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc013.hs
deleted file mode 100644
index f6a08b5e7b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc013.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-(r,s) = (1,'a')
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc014.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc014.hs
deleted file mode 100644
index 97ce375583..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc014.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-t = 1+t
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc015.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc015.hs
deleted file mode 100644
index 41c902bfc6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc015.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-u x = \ (y,z) -> x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc016.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc016.hs
deleted file mode 100644
index 5f3c7e5721..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc016.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-f x@_ y@_ = x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc017.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc017.hs
deleted file mode 100644
index ec51aeb8d0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc017.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldSucceed where
-
-v | True = v+1
- | False = v
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc018.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc018.hs
deleted file mode 100644
index 7fb398c6e6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc018.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldSucceed where
-
-w = a where a = y
- y = 2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc019.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc019.hs
deleted file mode 100644
index 3cfe5ea626..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc019.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-(al:am) = [y+1 | (y,z) <- [(1,2)]]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc020.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc020.hs
deleted file mode 100644
index a0ef679c8f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc020.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-f x = a where a = x:a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc021.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc021.hs
deleted file mode 100644
index 418fa38e29..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc021.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module ShouldSucceed where
-
-f x = a
-
-a = (x,x)
-
-x = x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc022.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc022.hs
deleted file mode 100644
index 1a04d7e7a2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc022.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldSucceed where
-
-main = iD iD
-
-iD x = x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc023.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc023.hs
deleted file mode 100644
index b996719bb9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc023.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module ShouldSucceed where
-
-main = s k k
-
-s f g x = f x (g x)
-
-k x y = x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc024.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc024.hs
deleted file mode 100644
index e28d1acf96..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc024.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module ShouldSucceed where
-
-main x = s k k x
-
-s f g x = f x (g x)
-
-k x y = x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc025.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc025.hs
deleted file mode 100644
index e9adf9acb5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc025.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-g x = f (f True x) x where f x y = if x then y else (f x y)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc026.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc026.hs
deleted file mode 100644
index 3e718a5053..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc026.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldSucceed where
-
-g x = f (f True x) x
-f x y = if x then y else (f x y)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc027.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc027.hs
deleted file mode 100644
index 6edc01b619..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc027.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldSucceed where
-
-h x = f (f True x) x
-f x y = if x then y else (g y x)
-g y x = if x then y else (f x y)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc028.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc028.hs
deleted file mode 100644
index 49a0835ade..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc028.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-type H = (Int,Bool)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc029.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc029.hs
deleted file mode 100644
index c44b78f79f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc029.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldSucceed where
-
-type G = [Int]
-
-data K = H Bool | M G
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc030.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc030.hs
deleted file mode 100644
index 004bc226d1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc030.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldSucceed where
-
-type H = [Bool]
-
-type G = (H,Char)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc031.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc031.hs
deleted file mode 100644
index c55bf11f54..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc031.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-data Rec = Node Int Rec
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc032.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc032.hs
deleted file mode 100644
index 9c43bbb010..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc032.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-data AList b = Node b [b] | Other (b,Char)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc033.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc033.hs
deleted file mode 100644
index 7111d75a4e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc033.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module ShouldSucceed where
-
-data Twine = Twine2 Twist
-
-data Twist = Twist2 Twine
-
-type F = Twine
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc034.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc034.hs
deleted file mode 100644
index 0e7c4a66ed..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc034.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-module ShouldSucceed where
-
-data AList a = ANull | ANode a (AList a)
-
-type IntList = AList Int
-
-g (ANull) = 2
-g (ANode b (ANode c d)) | b = 3
- | True = 4
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc035.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc035.hs
deleted file mode 100644
index b8dd554373..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc035.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module ShouldSucceed where
-
-type AnnExpr a = (a,Expr a)
-
-data Expr a = Var [Char]
- | App (AnnExpr a) (AnnExpr a)
-
-g (a,(Var name)) = [name]
-g (a,(App e1 e2)) = (g e1) ++ (g e2)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc036.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc036.hs
deleted file mode 100644
index 05b87846ac..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc036.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldSucceed where
-
-class (Eq a) => A a where
- op1 :: a -> a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc037.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc037.hs
deleted file mode 100644
index 8621b278d3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc037.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module ShouldSucceed where
-
-class Eq' a where
- deq :: a -> a -> Bool
-
-instance (Eq' a) => Eq' [a] where
- deq [] [] = True
- deq (x:xs) (y:ys) = if (x `deq` y) then (deq xs ys) else False
- deq other1 other2 = False
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc038.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc038.hs
deleted file mode 100644
index d404ee6913..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc038.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-f (x:xs) = if (x == (fromInteger 2)) then xs else []
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc039.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc039.hs
deleted file mode 100644
index 05b87846ac..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc039.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldSucceed where
-
-class (Eq a) => A a where
- op1 :: a -> a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc040.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc040.hs
deleted file mode 100644
index 4897a2b9b3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc040.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module ShouldSucceed where
-
--- !!! tests the deduction of contexts.
-
-f :: (Eq a) => a -> [a]
-
-f x = g x
- where
- g y = if (y == x) then [] else [y]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc041.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc041.hs
deleted file mode 100644
index b42374f5e2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc041.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! a very simple test of class and instance declarations
-
-module ShouldSucceed where
-
-class H a where
- op1 :: a -> a -> a
-
-instance H Bool where
- op1 x y = y
-
-f :: Bool -> Int -> Bool
-f x y = op1 x x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc042.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc042.hs
deleted file mode 100644
index 58a120c13b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc042.hs
+++ /dev/null
@@ -1,73 +0,0 @@
--- !!! a file mailed us by Ryzard Kubiak. This provides a good test of the code
--- !!! handling type signatures and recursive data types.
-
-module ShouldSucceed where
-
-data Boolean = FF | TT
-data Pair a b = Mkpair a b
-data List alpha = Nil | Cons alpha (List alpha)
-data Nat = Zero | Succ Nat
-data Tree t = Leaf t | Node (Tree t) (Tree t)
-
-idb :: Boolean -> Boolean
-idb x = x
-
-
-swap :: Pair a b -> Pair b a
-swap t = case t of
- Mkpair x y -> Mkpair y x
-
-neg :: Boolean -> Boolean
-neg b = case b of
- FF -> TT
- TT -> FF
-
-nUll :: List alpha -> Boolean
-nUll l = case l of
- Nil -> TT
- Cons y ys -> FF
-
-idl :: List a -> List a
-idl xs = case xs of
- Nil -> Nil
- Cons y ys -> Cons y (idl ys)
-
-add :: Nat -> Nat -> Nat
-add a b = case a of
- Zero -> b
- Succ c -> Succ (add c b)
-
-app :: List alpha -> List alpha -> List alpha
-app xs zs = case xs of
- Nil -> zs
- Cons y ys -> Cons y (app ys zs)
-
-lEngth :: List a -> Nat
-lEngth xs = case xs of
- Nil -> Zero
- Cons y ys -> Succ(lEngth ys)
-
-before :: List Nat -> List Nat
-before xs = case xs of
- Nil -> Nil
- Cons y ys -> case y of
- Zero -> Nil
- Succ n -> Cons y (before ys)
-
-rEverse :: List alpha -> List alpha
-rEverse rs = case rs of
- Nil -> Nil
- Cons y ys -> app (rEverse ys) (Cons y Nil)
-
-
-flatten :: Tree alpha -> List alpha
-flatten t = case t of
- Leaf x -> Cons x Nil
- Node l r -> app (flatten l) (flatten r)
-
-sUm :: Tree Nat -> Nat
-sUm t = case t of
- Leaf t -> t
- Node l r -> add (sUm l) (sUm r)
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc043.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc043.hs
deleted file mode 100644
index 2a2e5f050c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc043.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-module ShouldSucceed where
-
--- !!! another simple test of class and instance code.
-
-class A a where
- op1 :: a
-
-instance A Int where
- op1 = 2
-
-f x = op1
-
-class B b where
- op2 :: b -> Int
-
-instance (B a) => B [a] where
- op2 [] = 0
- op2 (x:xs) = 1 + op2 xs
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc044.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc044.hs
deleted file mode 100644
index 84c91d19fd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc044.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- once produced a bug, here as regression test
-
-module ShouldSucceed where
-
-f _ | otherwise = ()
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc045.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc045.hs
deleted file mode 100644
index 4ff3766673..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc045.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-module ShouldSucceed where
-
-class C a where
- op1 :: a -> a
-
-class (C a) => B a where
- op2 :: a -> a -> a
-
-instance (B a) => B [a] where
- op2 xs ys = xs
-
-instance C [a] where
- op1 xs = xs
-
-{- This was passed by the prototype, but failed hard in the new
-typechecker with the message
-
-Fail:No match in theta_class
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc046.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc046.hs
deleted file mode 100644
index c1ae30c96c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc046.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module ShouldSucceed where
-
-class C a where
- op1 :: a -> a
-
-class (C a) => B a where
- op2 :: a -> a -> a
-
-{- Failed hard in new tc with "No match in theta_class" -}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc047.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc047.hs
deleted file mode 100644
index b8c197d185..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc047.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-module ShouldSucceed where
-
-type OL a = [a]
-
--- produces the interface:
--- data OL a = MkOL [a] deriving ()
--- ranOAL :: (OL (a, a)) -> [a]
--- this interface was produced by BOTH hbc and nhc
-
--- the following bogus type sig. was accepted by BOTH hbc and nhc
-f x = ranOAL where -- ranOAL :: OL (a,v) -> [a]
---ranOAL :: OL (a,v) -> [v], the right sig.
- ranOAL ( xs) = mp sd xs
-
-
-mp f [] = []
-mp f (x:xs) = (f x) : mp f xs
-
-sd (f,s) = s
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc048.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc048.hs
deleted file mode 100644
index eea6f10e79..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc048.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-module ShouldSucceed where
-
-data OL a = MkOL [a]
-data FG a b = MkFG (OL (a,b))
-data AFE n a b = MkAFE (OL (n,(FG a b)))
-
---ranOAL :: OL (a,v) -> [a]
-ranOAL :: OL (a,v) -> [v]
-ranOAL (MkOL xs) = mAp sNd xs
-
-mAp f [] = []
-mAp f (x:xs) = (f x) : mAp f xs
-
-sNd (f,s) = s
-
-ranAFE :: AFE n a b -> [FG a b] -- ?
-ranAFE (MkAFE nfs) = ranOAL nfs
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc049.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc049.hs
deleted file mode 100644
index 20be6b768b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc049.hs
+++ /dev/null
@@ -1,39 +0,0 @@
-module ShouldSucceed where
-
-fib n = if n <= 2 then n else fib (n-1) + fib (n-2)
-
-----------------------------------------
-
-mem x [] = False
-mem x (y:ys) = (x == y) `oR` mem x ys
-
-a `oR` b = if a then True else b
-
-----------------------------------------
-
-mem1 x [] = False
-mem1 x (y:ys) = (x == y) `oR1` mem2 x ys
-
-a `oR1` b = if a then True else b
-
-mem2 x [] = False
-mem2 x (y:ys) = (x == y) `oR` mem1 x ys
-
----------------------------------------
-
-mem3 x [] = False
-mem3 x (y:ys) = if [x] == [y] then mem4 x ys else False
-
-mem4 y (x:xs) = mem3 y xs
-
----------------------------------------
-
-main1 = [[(1,True)]] == [[(2,False)]]
-
----------------------------------------
-
-main2 = "Hello" == "Goodbye"
-
----------------------------------------
-
-main3 = [[1],[2]] == [[3]]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc050.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc050.hs
deleted file mode 100644
index ef03b282d9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc050.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-module ShouldSucceed where
-
-class Foo a where
- o_and :: a -> a -> a
-
-
-instance Foo Bool where
- o_and False x = False
- o_and x False = False
- o_and True True = True
-
-
-instance Foo Int where
- o_and x 0 = 0
- o_and 0 x = 0
- o_and 1 1 = 1
-
-
-f x y = o_and x False
-
-g x y = o_and x 1
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc051.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc051.hs
deleted file mode 100644
index 7f14282fb8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc051.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-module ShouldSucceed where
-
-class Eq' a where
- doubleeq :: a -> a -> Bool
-
-class (Eq' a) => Ord' a where
- lt :: a -> a -> Bool
-
-instance Eq' Int where
- doubleeq x y = True
-
-instance (Eq' a) => Eq' [a] where
- doubleeq x y = True
-
-instance Ord' Int where
- lt x y = True
-
-{-
-class (Ord a) => Ix a where
- range :: (a,a) -> [a]
-
-instance Ix Int where
- range (x,y) = [x,y]
--}
-
-
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc052.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc052.hs
deleted file mode 100644
index 108ef12046..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc052.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module ShouldSucceed where
-
-type A a = B a
-
-type B c = C
-
-type C = Int
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc053.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc053.hs
deleted file mode 100644
index 865211d917..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc053.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module ShouldSucceed where
-
-class Eq' a where
- deq :: a -> a -> Bool
-
-instance Eq' Int where
- deq x y = True
-
-instance (Eq' a) => Eq' [a] where
- deq (a:as) (b:bs) = if (deq a b) then (deq as bs) else False
-
-f x = deq x [1]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc054.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc054.hs
deleted file mode 100644
index df9deb08aa..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc054.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-module ShouldSucceed where
-
-class Eq' a where
- doubleeq :: a -> a -> Bool
-
-class (Eq' a) => Ord' a where
- lt :: a -> a -> Bool
-
-instance Eq' Int where
- doubleeq x y = True
-
-instance Ord' Int where
- lt x y = True
-
-f x y | lt x 1 = True
- | otherwise = False
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc055.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc055.hs
deleted file mode 100644
index cdbb8f4b4d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc055.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldSucceed where
-
-(x,y) = (\p -> p,\q -> q)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc056.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc056.hs
deleted file mode 100644
index 64d7138571..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc056.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- !!! Duplicate class assertion warning
-
--- ghc 6.6 now warns about duplicate class assertions,
-
-module ShouldSucceed where
-
-class Eq' a where
- doubleeq :: a -> a -> Bool
-
-class (Eq' a) => Ord' a where
- lt :: a -> a -> Bool
-
-instance Eq' Int where
- doubleeq x y = True
-
-instance (Eq' a, Eq' a) => Eq' [a] where
- doubleeq x y = True
-
-f x y = doubleeq x [1]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc056.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/tc056.stderr
deleted file mode 100644
index c49396721c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc056.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tc056.hs:16:10:
- Warning: Duplicate constraint(s): Eq' a
- In the context: (Eq' a, Eq' a)
- While checking the context of an instance declaration
- In the instance declaration for `Eq' [a]'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc057.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc057.hs
deleted file mode 100644
index cc561b95b8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc057.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-module ShouldSucceed where
-
--- See also tcfail060.hs
-
-class Eq' a where
- deq :: a -> a -> Bool
-
-instance Eq' Int where
- deq x y = True
-
-instance (Eq' a) => Eq' [a] where
- deq (a:as) (b:bs) = dand (f a b) (f as bs)
-
-dand True True = True
-dand x y = False
-
-f :: Eq' a => a -> a -> Bool
-f p q = dand (deq p q) (deq [1::Int] [2::Int])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc058.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc058.hs
deleted file mode 100644
index 7df1f3bc6d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc058.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-module ShouldSucceed where
-
-class Eq2 a where
- doubleeq :: a -> a -> Bool
-
-class (Eq2 a) => Ord2 a where
- lt :: a -> a -> Bool
-
-instance Eq2 Int where
- doubleeq x y = True
-
-instance Ord2 Int where
- lt x y = True
-
-instance (Eq2 a,Ord2 a) => Eq2 [a] where
- doubleeq xs ys = True
-
-f x y = doubleeq x [1]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc059.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc059.hs
deleted file mode 100644
index f0faac8155..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc059.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-module ShouldSucceed where
-
-class Eq2 a where
- deq :: a -> a -> Bool
- foo :: a -> a
-
-instance Eq2 Int where
- deq x y = True
- foo x = x
-
-instance (Eq2 a) => Eq2 [a] where
- deq (a:as) (b:bs) = if (deq a (foo b)) then (deq as (foo bs)) else False
- foo x = x
-
-f x = deq x [1]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc060.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc060.hs
deleted file mode 100644
index 6ae0ca9228..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc060.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module ShouldSucceed where
-
-class Eq2 a where
- deq :: a -> a -> Bool
-
-instance (Eq2 a) => Eq2 [a] where
- deq (a:as) (b:bs) = if (deq a b) then (deq as bs) else False
-
-
-instance Eq2 Int where
- deq x y = True
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc061.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc061.hs
deleted file mode 100644
index 25a8b65f35..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc061.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-module ShouldSucceed where
-
-class Eq1 a where
- deq :: a -> a -> Bool
-
-instance (Eq1 a) => Eq1 [a] where
- deq (a:as) (b:bs) = deq a b
-
-instance Eq1 Int where
- deq x y = True
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc062.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc062.hs
deleted file mode 100644
index fde6c4b1da..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc062.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module ShouldSucceed where
-
-class Eq1 a where
- deq :: a -> a -> Bool
-
-instance Eq1 Int where
- deq x y = True
-
-instance (Eq1 a) => Eq1 [a] where
- deq (a:as) (b:bs) = if (deq a b) then (deq as bs) else False
-
-f x (y:ys) = deq x ys
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc063.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc063.hs
deleted file mode 100644
index 36affbfdce..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc063.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-module ShouldSucceed where
-
-data X a = Tag a
-
-class Reps r where
- f :: r -> r -> r
-
-instance Reps (X q) where
--- f (Tag x) (Tag y) = Tag y
- f x y = y
-
-instance Reps Bool where
- f True True = True
- f x y = False
-
-g x = f x x
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc064.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc064.hs
deleted file mode 100644
index 18aecb091d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc064.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module ShouldSucceed where
-
-data Boolean = FF | TT
-
-idb :: Boolean -> Boolean
-idb x = x
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc065.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc065.hs
deleted file mode 100644
index 1d47cf35c4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc065.hs
+++ /dev/null
@@ -1,108 +0,0 @@
-module ShouldSucceed where
-
--- import TheUtils
-import qualified Data.Set as Set
-import Data.Set (Set)
-import Data.List (partition )
-
-data Digraph vertex = MkDigraph [vertex]
-
-type Edge vertex = (vertex, vertex)
-type Cycle vertex = [vertex]
-
-mkDigraph = MkDigraph
-
-stronglyConnComp :: Eq vertex => [Edge vertex] -> [vertex] -> [[vertex]]
-stronglyConnComp es vs
- = snd (span_tree (new_range reversed_edges)
- ([],[])
- ( snd (dfs (new_range es) ([],[]) vs) )
- )
- where
- reversed_edges = map swap es
-
- swap :: Edge v -> Edge v
- swap (x,y) = (y, x)
-
- new_range [] w = []
- new_range ((x,y):xys) w
- = if x==w
- then (y : (new_range xys w))
- else (new_range xys w)
-
- span_tree r (vs,ns) [] = (vs,ns)
- span_tree r (vs,ns) (x:xs)
- | x `elem` vs = span_tree r (vs,ns) xs
- | otherwise = span_tree r (vs',(x:ns'):ns) xs
- where
- (vs',ns') = dfs r (x:vs,[]) (r x)
-
-dfs r (vs,ns) [] = (vs,ns)
-dfs r (vs,ns) (x:xs) | x `elem` vs = dfs r (vs,ns) xs
- | otherwise = dfs r (vs',(x:ns')++ns) xs
- where
- (vs',ns') = dfs r (x:vs,[]) (r x)
-
-
-isCyclic :: Eq vertex => [Edge vertex] -> [vertex] -> Bool
-isCyclic edges [v] = (v,v) `elem` edges
-isCyclic edges vs = True
-
-
-topSort :: (Eq vertex) => [Edge vertex] -> [vertex]
- -> MaybeErr [vertex] [[vertex]]
-
-
-topSort edges vertices
- = case cycles of
- [] -> Succeeded [v | [v] <- singletons]
- _ -> Failed cycles
- where
- sccs = stronglyConnComp edges vertices
- (cycles, singletons) = partition (isCyclic edges) sccs
-
-
-type FlattenedDependencyInfo vertex name code
- = [(vertex, Set name, Set name, code)]
-
-mkVertices :: FlattenedDependencyInfo vertex name code -> [vertex]
-mkVertices info = [ vertex | (vertex,_,_,_) <- info]
-
-mkEdges :: (Eq vertex, Ord name) =>
- [vertex]
- -> FlattenedDependencyInfo vertex name code
- -> [Edge vertex]
-
-mkEdges vertices flat_info
- = [ (source_vertex, target_vertex)
- | (source_vertex, _, used_names, _) <- flat_info,
- target_name <- Set.toList used_names,
- target_vertex <- vertices_defining target_name flat_info
- ]
- where
- vertices_defining name flat_info
- = [ vertex | (vertex, names_defined, _, _) <- flat_info,
- name `Set.member` names_defined
- ]
-
-lookupVertex :: (Eq vertex, Ord name) =>
- FlattenedDependencyInfo vertex name code
- -> vertex
- -> code
-
-lookupVertex flat_info vertex
- = head code_list
- where
- code_list = [ code | (vertex',_,_,code) <- flat_info, vertex == vertex']
-
-
-isRecursiveCycle :: (Eq vertex) => Cycle vertex -> [Edge vertex] -> Bool
-isRecursiveCycle [vertex] edges = (vertex, vertex) `elem` edges
-isRecursiveCycle cycle edges = True
-
-
-
--- may go to TheUtils
-
-data MaybeErr a b = Succeeded a | Failed b
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc066.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc066.hs
deleted file mode 100644
index 7c929516bc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc066.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldSucceed where
-
-data Pair a b = MkPair a b
-f x = [ a | (MkPair c a) <- x ]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc067.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc067.hs
deleted file mode 100644
index 853caf308f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc067.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldSucceed where
-
-f [] = []
-f (x:xs) = x : (f xs)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc068.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc068.hs
deleted file mode 100644
index f455d41b6e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc068.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-module ShouldSucceed where
-
-data T a = D (B a) | C
-data B b = X | Y b
-
-instance (Eq a) => Eq (T a) where
- (D x) == (D y) = x == y
- C == C = True
- a == b = False
-
- a /= b = not (a == b)
-
-instance (Eq b) => Eq (B b) where
- X == X = True
- (Y a) == (Y b) = a == b
- a == b = False
-
- a /= b = not (a == b)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc069.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc069.hs
deleted file mode 100644
index 539b3046da..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc069.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldSucceed where
-
-x = 'a'
-(y:ys) = ['a','b','c'] where p = x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc070.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc070.hs
deleted file mode 100644
index 831195f9f6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc070.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module ShouldSucceed where
-
-
-data Boolean = FF | TT
-
-
-idb :: Boolean -> Boolean
-idb x = x
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc073.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc073.hs
deleted file mode 100644
index 44e4129f6a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc073.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-module ShouldSucceed where
-
-f [] = []
-f (x:xs) = x : (f xs)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc074.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc074.hs
deleted file mode 100644
index f455d41b6e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc074.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-module ShouldSucceed where
-
-data T a = D (B a) | C
-data B b = X | Y b
-
-instance (Eq a) => Eq (T a) where
- (D x) == (D y) = x == y
- C == C = True
- a == b = False
-
- a /= b = not (a == b)
-
-instance (Eq b) => Eq (B b) where
- X == X = True
- (Y a) == (Y b) = a == b
- a == b = False
-
- a /= b = not (a == b)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc076.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc076.hs
deleted file mode 100644
index 493e967efa..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc076.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! scoping in list comprehensions right way 'round?
--- a bug reported by Jon Hill
---
-module ShouldSucceed where
-
-x = [[True]]
-xs :: [Bool]
-xs = [x | x <- x, x <- x]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc077.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc077.hs
deleted file mode 100644
index c4f6c4e986..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc077.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! make sure context of EQ is minimised in interface file.
---
-module ShouldSucceed where
-
-data NUM = ONE | TWO
-class (Num a) => ORD a
-
-class (ORD a, Show a) => EQ a where
- (===) :: a -> a -> Bool
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc078.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc078.hs
deleted file mode 100644
index de5e748d20..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc078.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! instance decls with no binds
---
-module ShouldFail where
-
-data Bar a = MkBar Int a
-
-instance Eq a => Eq (Bar a)
-instance Ord a => Ord (Bar a)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc079.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc079.hs
deleted file mode 100644
index db07ad1325..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc079.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- !!! small class decl with local polymorphism;
--- !!! "easy" to check default methods and such...
--- !!! (this is the example given in TcClassDcl)
---
-module ShouldSucceed where
-
-class Foo a where
- op1 :: a -> Bool
- op2 :: Ord b => a -> b -> b -> b
-
- op1 x = True
- op2 x y z = if (op1 x) && (y < z) then y else z
-
-instance Foo Int where {}
-
-instance Foo a => Foo [a] where {}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc080.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc080.hs
deleted file mode 100644
index 636c5b0313..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc080.hs
+++ /dev/null
@@ -1,58 +0,0 @@
---module Parse(Parse(..),whiteSpace,seperatedBy) where
---import StdLib
-module ShouldSucceed where
-
-import Data.Char
-
-class Parse a where
- parseFile :: String -> [a]
- parseLine :: String -> a
- parseType :: String -> (a,String)
- parse :: String -> (a,String)
- forced :: a -> Bool
-
- parseFile string | all forced x = x
- where x = map parseLine (lines' string)
- parseLine = pl.parse where pl (a,_) = a
- parse = parseType.whiteSpace
- forced x = True
-
-instance Parse Int where
- parseType str = pl (span' isDigit str)
- where pl (l,r) = (strToInt l,r)
- forced n | n>=0 = True
-
-instance Parse Char where
- parseType (ch:str) = (ch,str)
- forced n = True
-
-instance (Parse a) => Parse [a] where
- parseType more = (map parseLine (seperatedBy ',' (l++",")),out)
- where (l,']':out) = span' (\x->x/=']') (tail more)
- forced = all forced
-
-seperatedBy :: Char -> String -> [String]
-seperatedBy ch [] = []
-seperatedBy ch xs = twaddle ch (span' (\x->x/=ch) xs)
- where twaddle ch (l,_:r) = l:seperatedBy ch r
-
-whiteSpace :: String -> String
-whiteSpace = dropWhile isSpace
-
-span' :: (a->Bool) -> [a] -> ([a],[a])
-span' p [] = ([],[])
-span' p (x:xs') | p x = fixLeak x (span' p xs') where fixLeak x (xs,ys) = (x:xs,ys)
-span' _ xs = ([],xs)
-
-lines' :: [Char] -> [[Char]]
-lines' "" = []
-lines' s = plumb (span' ((/=) '\n') s)
- where plumb (l,s') = l:if null s' then [] else lines' (tail s')
-
-strToInt :: String -> Int
-strToInt x = strToInt' (length x-1) x
- where strToInt' _ [] = 0
- strToInt' x (a:l) = (charToInt a)*(10^x) + (strToInt' (x-1) l)
-
-charToInt :: Char -> Int
-charToInt x = (ord x - ord '0')
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc081.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc081.hs
deleted file mode 100644
index 03be25659e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc081.hs
+++ /dev/null
@@ -1,29 +0,0 @@
--- !!! an example Simon made up
---
-module ShouldSucceed where
-
-f x = (x+1, x<3, g True, g 'c')
- where
- g y = if x>2 then [] else [y]
-{-
-Here the type-check of g will yield an LIE with an Ord dict
-for x. g still has type forall a. a -> [a]. The dictionary is
-free, bound by the x.
-
-It should be ok to add the signature:
--}
-
-f2 x = (x+1, x<3, g2 True, g2 'c')
- where
- -- NB: this sig:
- g2 :: a -> [a]
- g2 y = if x>2 then [] else [y]
-{-
-or to write:
--}
-
-f3 x = (x+1, x<3, g3 True, g3 'c')
- where
- -- NB: this line:
- g3 :: a -> [a]
- g3 = (\ y -> if x>2 then [] else [y])::(a -> [a])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc082.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc082.hs
deleted file mode 100644
index 8ef70afd01..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc082.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- !!! tc082: an instance for functions
---
-module ShouldSucceed where
-
-class Normal a
- where
- normal :: a -> Bool
-
-instance Normal ( a -> b ) where
- normal _ = True
-
-f x = normal id
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc084.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc084.hs
deleted file mode 100644
index 597a296f90..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc084.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{- This program shows up a bug in the handling of
- the monomorphism restriction in an earlier version of
- ghc. With ghc 0.18 and before, f gets a type with
- an unbound type variable, which shows up in the
- interface file. Reason: it was being monomorphised.
-
- Simon PJ
--}
-
-module ShouldSucceed where
-
-
-g :: Num a => Bool -> a -> b -> a
-g b x y = if b then x+x else x-x
-
--- Everything is ok if this signature is put in
--- but the program should be perfectly legal without it.
--- f :: Num a => a -> b -> a
-f = g True
-
-h y x = f (x::Int) y
- -- This use of f binds the overloaded monomorphic
- -- type to Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc085.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc085.hs
deleted file mode 100644
index 6074250a45..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc085.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
--- !!! From a bug report from Satnam.
--- !!! To do with re-exporting importees from PreludeGla* modules.
-module ShouldSucceed ( module GHC.Prim ) where
-
-import GHC.Prim
-
-type FooType = Int
-data FooData = FooData
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc086.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc086.hs
deleted file mode 100644
index 2db3b7094c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc086.hs
+++ /dev/null
@@ -1,60 +0,0 @@
-{-
- From: Marc van Dongen <dongen@cs.ucc.ie>
- Date: Sat, 31 May 1997 19:57:46 +0100 (BST)
-
- panic! (the `impossible' happened):
- tcLookupTyVar:a_r6F
-
- Please report it as a compiler bug to glasgow-haskell-bugs@dcs.gla.ac.uk.
-
-
-If the instance definition for (*) at the end of this toy module
-is replaced by the definition that is commented, this all compiles
-fine. Strange, because the two implementations are equivalent modulo
-the theory {(*) = multiply}.
-
-Remove the `multiply :: a -> a -> a' part, and it compiles without
-problems.
-
-
-SPJ note: the type signature on "multiply" should be
- multiply :: Group a => a -> a -> a
-
--}
-
-module ShouldSucceed( Group, Ring ) where
-
-import qualified Prelude( Ord(..), Eq(..), Num(..) )
-import Prelude hiding( Ord(..), Eq(..), Num(..) )
-
-class Group a where
- compare :: a -> a -> Prelude.Ordering
- fromInteger :: Integer -> a
- (+) :: a -> a -> a
- (-) :: a -> a -> a
- zero :: a
- one :: a
- zero = fromInteger 0
- one = fromInteger 1
-
--- class (Group a) => Ring a where
--- (*) :: a -> a -> a
--- (*) a b =
--- case (compare a zero) of
--- EQ -> zero
--- LT -> zero - ((*) (zero - a) b)
--- GT -> case compare a one of
--- EQ -> b
--- _ -> b + ((*) (a - one) b)
-
-class (Group a) => Ring a where
- (*) :: a -> a -> a
- (*) a b = multiply a b
- where multiply :: Group b => b -> b -> b
- multiply a b
- = case (compare a zero) of
- EQ -> zero
- LT -> zero - (multiply (zero - a) b)
- GT -> case compare a one of
- EQ -> b
- _ -> b + (multiply (a - one) b)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc087.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc087.hs
deleted file mode 100644
index 88317bad35..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc087.hs
+++ /dev/null
@@ -1,32 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
-module ShouldSucceed where
-
-data SeqView t a = Null
- | Cons a (t a)
-
-class PriorityQueue q where
- empty :: (Ord a) => q a
- single :: (Ord a) => a -> q a
- insert :: (Ord a) => a -> q a -> q a
- meld :: (Ord a) => q a -> q a -> q a
- splitMin :: (Ord a) => q a -> SeqView q a
- insert a q = single a `meld` q
-
-toOrderedList q = case splitMin q of
- Null -> []
- Cons a q -> a : toOrderedList q
-
-insertMany x q = foldr insert q x
-pqSort q x = toOrderedList (insertMany x q)
-
-check :: forall q. (PriorityQueue q) => (forall a. Ord a => q a) -> IO ()
-check empty = do
- putStr "*** sorting\n"
- out (pqSort empty [1 .. 99])
- out (pqSort empty [1.0, 1.1 ..99.9])
-
-out :: (Num a) => [a] -> IO ()
-out x | sum x == 0 = putStr "ok\n"
- | otherwise = putStr "ok\n"
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc088.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc088.hs
deleted file mode 100644
index 05faeae482..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc088.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- Check that "->" is an instance of Eval
-
-module ShouldSucceed where
-
-instance Show (a->b)
-
-instance (Eq b) => Eq (a -> b) where
- (==) f g = error "attempt to compare functions"
-
- -- Since Eval is a superclass of Num this fails
- -- unless -> is an instance of Eval
-instance (Num b) => Num (a -> b) where
- f + g = \a -> f a + g a
- f - g = \a -> f a - g a
- f * g = \a -> f a * g a
- negate f = \a -> negate (f a)
- abs f = \a -> abs (f a)
- signum f = \a -> signum (f a)
- fromInteger n = \a -> fromInteger n
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc089.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc089.hs
deleted file mode 100644
index b2516df0ad..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc089.hs
+++ /dev/null
@@ -1,77 +0,0 @@
--- !!! Stress test for type checker
-
-module ShouldSucceed where
-
-import Prelude hiding (head)
-
-one :: a
-one = one
-
-head (x:xs) = x
-
-bottom xs = head xs
-
-absIf a b c = a
-
-absAnd a b = head [a,b]
-
-fac_rec fac0 n a
- = (absIf (absAnd (s_3_0 n) one)
- (s_2_0 a)
- (fac0 (absAnd (s_3_2 n) one) (absAnd (s_3_1 n) (s_2_1 a))))
-
-f_rec f0 a
- = (f0 (s_1_0 a))
-
-g_rec g0 g1 x y z p
- = (absIf (absAnd (s_3_0 p) one)
- (absAnd (s_1_0 x) (s_3_0 z))
- (absAnd
- (g0 (s_1_0 y) one one (absAnd (s_3_1 p) one))
- (g1 (s_3_2 z) (s_3_1 z) one (absAnd (s_3_2 p) one))))
-
-s_2_0 (v0,v1) = v0
-s_2_1 (v0,v1) = v1
-s_1_0 v0 = v0
-s_3_0 (v0,v1,v2) = v0
-s_3_1 (v0,v1,v2) = v1
-s_3_2 (v0,v1,v2) = v2
-
-fac n a = fac_rec fac_rec4 n a
-
-fac_rec4 n a = (fac_rec fac_rec3 n a)
-fac_rec3 n a = (fac_rec fac_rec2 n a)
-fac_rec2 n a = (fac_rec fac_rec1 n a)
-fac_rec1 n a = (fac_rec fac_rec0 n a)
-fac_rec0 n a = (bottom [n,a])
-
-f a = (f_rec f_rec2 a)
-
-f_rec2 a = (f_rec f_rec1 a)
-f_rec1 a = (f_rec f_rec0 a)
-f_rec0 a = (bottom [a])
-
-g x y z p = (g_rec g_rec8 g_rec8 x y z p)
-
-{-
-g x y z p = (g_rec g_rec16 g_rec16 x y z p)
-
-g_rec16 x y z p = (g_rec g_rec15 g_rec15 x y z p)
-g_rec15 x y z p = (g_rec g_rec14 g_rec14 x y z p)
-g_rec14 x y z p = (g_rec g_rec13 g_rec13 x y z p)
-g_rec13 x y z p = (g_rec g_rec12 g_rec12 x y z p)
-g_rec12 x y z p = (g_rec g_rec11 g_rec11 x y z p)
-g_rec11 x y z p = (g_rec g_rec10 g_rec10 x y z p)
-g_rec10 x y z p = (g_rec g_rec9 g_rec9 x y z p)
-g_rec9 x y z p = (g_rec g_rec8 g_rec8 x y z p)
--}
-
-g_rec8 x y z p = (g_rec g_rec7 g_rec7 x y z p)
-g_rec7 x y z p = (g_rec g_rec6 g_rec6 x y z p)
-g_rec6 x y z p = (g_rec g_rec5 g_rec5 x y z p)
-g_rec5 x y z p = (g_rec g_rec4 g_rec4 x y z p)
-g_rec4 x y z p = (g_rec g_rec3 g_rec3 x y z p)
-g_rec3 x y z p = (g_rec g_rec2 g_rec2 x y z p)
-g_rec2 x y z p = (g_rec g_rec1 g_rec1 x y z p)
-g_rec1 x y z p = (g_rec g_rec0 g_rec0 x y z p)
-g_rec0 x y z p = (bottom [x,y,z,p])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc090.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc090.hs
deleted file mode 100644
index f568c390a5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc090.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{- This module tests that we can ge polymorphic recursion
- of overloaded functions. GHC 2.02 produced the following
- bogus error:
-
- tmp.lhs:1: A group of type signatures have mismatched contexts
- Abf.a :: (PrelBase.Ord f{-aX6-}) => ...
- Abf.b :: (PrelBase.Ord f{-aX2-}) => ...
-
- This was due to having more than one type signature for one
- group of recursive functions.
--}
-
-
-module ShouldSucceed where
-
-a :: (Ord f) => f
-a = b
-
-b :: (Ord f) => f
-b = a
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc091.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc091.hs
deleted file mode 100644
index 628b571c61..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc091.hs
+++ /dev/null
@@ -1,67 +0,0 @@
--- !!! Test polymorphic recursion
-
-
--- With polymorphic recursion this one becomes legal
--- SLPJ June 97.
-
-{-
-To: Lennart Augustsson <augustss@cs.chalmers.se>
-Cc: partain@dcs.gla.ac.uk, John Peterson (Yale) <peterson-john@cs.yale.edu>,
- simonpj@dcs.gla.ac.uk
-Subject: Type checking matter
-Date: Fri, 23 Oct 92 15:28:38 +0100
-From: Simon L Peyton Jones <simonpj@dcs.gla.ac.uk>
-
-
-I've looked at the enclosed again. It seems to me that
-since "s" includes a recursive call to "sort", inside the body
-of "sort", then "sort" is monomorphic, and hence so is "s";
-hence the type signature (which claims full polymorphism) is
-wrong.
-
-[Lennart says he can't see any free variables inside "s", but there
-is one, namely "sort"!]
-
-Will: one for the should-fail suite?
-
-Simon
-
-
-------- Forwarded Message
-
-
-From: Lennart Augustsson <augustss@cs.chalmers.se>
-To: partain
-Subject: Re: just to show you I'm a nice guy...
-Date: Tue, 26 May 92 17:30:12 +0200
-
-> Here's a fairly simple module from our compiler, which includes what
-> we claim is an illegal type signature (grep ILLEGAL ...).
-> Last time I checked, hbc accepted this module.
-
-Not that I don't believe you, but why is this illegal?
-As far as I can see there are no free variables in the function s,
-which makes me believe that it can typechecked like a top level
-definition. And for a top level defn the signature should be
-all right.
-
- -- Lennart
-- ------- End of forwarded message -------
--}
-module ShouldSucceed where
-
-sort :: Ord a => [a] -> [a]
-sort xs = s xs (length xs)
- where
- s :: Ord b => [b] -> Int -> [b] -- This signature is WRONG
- s xs k = if k <= 1 then xs
- else merge (sort ys) (sort zs)
- where (ys,zs) = init_last xs (k `div` (2::Int))
-
--- Defns of merge and init_last are just dummies with the correct types
-merge :: Ord a => [a] -> [a] -> [a]
-merge xs ys = xs
-
-init_last :: [a] -> Int -> ([a],[a])
-init_last a b = (a,a)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc092.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc092.hs
deleted file mode 100644
index 2f129026a7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc092.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
-module ShouldSucceed where
-
-data Empty q = Empty (Ord a => q a)
-q :: (Ord a) => [a]
-q = []
-e0, e1, e2 :: Empty []
-e0 = Empty []
-e1 = Empty ([] :: (Ord a) => [a])
-e2 = Empty q
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc093.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc093.hs
deleted file mode 100644
index c834428b20..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc093.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-module ShouldSucceed where
-
-data State c a = State (c -> (a,c))
-
-unState :: State c a -> (c -> (a,c))
-unState (State x) = x
-
-unitState :: a -> State c a
-unitState a = State (\s0 -> (a,s0))
-
-bindState :: State c a -> (a -> State c b) -> State c b
-bindState m k = State (\s0 -> let (a,s1) = (unState m) s0
- (b,s2) = (unState (k a)) s1
- in (b,s2))
-
-instance Eq c => Monad (State c) where
- return = unitState
- (>>=) = bindState
-
-data TS = TS { vs::Int } deriving (Show,Eq)
-
-type St a = State TS a
-
-foo :: Int -> St Int -- it works if this line is not given
-foo x = return x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc094.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc094.hs
deleted file mode 100644
index 334c34cf18..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc094.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module ShouldSucceed where
-
--- From a bug report by Sven Panne.
-
-foo = bar
- where bar = \_ -> (truncate boing, truncate boing)
- boing = 0
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc095.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc095.hs
deleted file mode 100644
index 5e0a34d912..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc095.hs
+++ /dev/null
@@ -1,237 +0,0 @@
-{-
-Bug report from Jon Mountjoy:
-
-While playing with Happy I managed to generate a Haskell program
-which compiles fine under ghc but not under Hugs. I don't know which
-one is the culprit....
-
-In Hugs(January 1998), one gets
-
- ERROR "hugs.hs" (line 32): Unresolved top-level overloading
- *** Binding : happyReduce_1
- *** Outstanding context : Functor b
-
-where line 32 is the one marked -- ##
-
-It compiles in ghc-3.00. Changing very small things, like the
-line marked ---**** to
- action_0 (6) = happyShift action_0 ---****
-
-then makes ghc produce a similar message:
-
- hugs.hs:37:
- Cannot resolve the ambiguous context (Functor a1Ab)
- `Functor a1Ab' arising from use of `reduction', at hugs.hs:37
--}
-
-module ShouldSucceed where
-
-data HappyAbsSyn t1 t2 t3
- = HappyTerminal Token
- | HappyErrorToken Int
- | HappyAbsSyn1 t1
- | HappyAbsSyn2 t2
- | HappyAbsSyn3 t3
-
-action_0 (6) = happyShift action_3 --- *****
-action_0 (1) = happyGoto action_1
-action_0 (2) = happyGoto action_2
-action_0 _ = happyFail
-
-action_1 (7) = happyAccept
-action_1 _ = happyFail
-
-action_2 _ = happyReduce_1
-
-action_3 (5) = happyShift action_4
-action_3 _ = happyFail
-
-action_4 (4) = happyShift action_6
-action_4 (3) = happyGoto action_5
-action_4 _ = happyFail
-
-action_5 _ = happyReduce_2
-
-action_6 _ = happyReduce_3
-
-happyReduce_1 = happySpecReduce_1 1 reduction where { -- ##
- reduction
- (HappyAbsSyn2 happy_var_1)
- = HappyAbsSyn1
- (\p -> let q = map (\(x,y) -> (x,y p)) happy_var_1 in (10.1))
-;
- reduction _ = notHappyAtAll }
-
-happyReduce_2 = happySpecReduce_3 2 reduction where {
- reduction
- (HappyAbsSyn3 happy_var_3)
- _
- (HappyTerminal (TokenVar happy_var_1))
- = HappyAbsSyn2
- ([(happy_var_1,happy_var_3)]);
- reduction _ _ _ = notHappyAtAll }
-
-happyReduce_3 = happySpecReduce_1 3 reduction where {
- reduction
- (HappyTerminal (TokenInt happy_var_1))
- = HappyAbsSyn3
- (\p -> happy_var_1);
- reduction _ = notHappyAtAll }
-
-happyNewToken action sts stk [] =
- action 7 7 (error "reading EOF!") (HappyState action) sts stk []
-
-happyNewToken action sts stk (tk:tks) =
- let cont i = action i i tk (HappyState action) sts stk tks in
- case tk of {
- TokenInt happy_dollar_dollar -> cont 4;
- TokenEq -> cont 5;
- TokenVar happy_dollar_dollar -> cont 6;
- }
-
-happyThen = \m k -> k m
-happyReturn = \a tks -> a
-myparser = happyParse
-
-
-
-happyError ::[Token] -> a
-happyError _ = error "Parse error\n"
-
---Here are our tokens
-data Token =
- TokenInt Int
- | TokenVar String
- | TokenEq
- deriving Show
-
-main = print (myparser [] [])
--- $Id: tc095.hs,v 1.4 2005/05/24 11:33:11 simonpj Exp $
-
-{-
- The stack is in the following order throughout the parse:
-
- i current token number
- j another copy of this to avoid messing with the stack
- tk current token semantic value
- st current state
- sts state stack
- stk semantic stack
--}
-
------------------------------------------------------------------------------
-
-happyParse = happyNewToken action_0 [] []
-
--- All this HappyState stuff is simply because we can't have recursive
--- types in Haskell without an intervening data structure.
-
-newtype HappyState b c = HappyState
- (Int -> -- token number
- Int -> -- token number (yes, again)
- b -> -- token semantic value
- HappyState b c -> -- current state
- [HappyState b c] -> -- state stack
- c)
-
------------------------------------------------------------------------------
--- Accepting the parse
-
-happyAccept j tk st sts [ HappyAbsSyn1 ans ] = happyReturn ans
-happyAccept j tk st sts _ = notHappyAtAll
-
------------------------------------------------------------------------------
--- Shifting a token
-
-happyShift new_state (-1) tk st sts stk@(HappyErrorToken i : _) =
--- _trace "shifting the error token" $
- new_state i i tk (HappyState new_state) (st:sts) stk
-
-happyShift new_state i tk st sts stk =
- happyNewToken new_state (st:sts) (HappyTerminal tk:stk)
-
------------------------------------------------------------------------------
--- Reducing
-
--- happyReduce is specialised for the common cases.
-
--- don't allow reductions when we're in error recovery, because this can
--- lead to an infinite loop.
-
-happySpecReduce_0 i fn (-1) tk _ sts stk
- = case sts of
- st@(HappyState action):sts -> action (-1) (-1) tk st sts stk
- _ -> happyError
-happySpecReduce_0 i fn j tk st@(HappyState action) sts stk
- = action i j tk st (st:sts) (fn : stk)
-
-happySpecReduce_1 i fn (-1) tk _ (st@(HappyState action):sts) stk
- = action (-1) (-1) tk st sts stk
-happySpecReduce_1 i fn j tk _ sts@(st@(HappyState action):_) (v1:stk')
- = action i j tk st sts (fn v1 : stk')
-happySpecReduce_1 _ _ _ _ _ _ _
- = notHappyAtAll
-
-happySpecReduce_2 i fn (-1) tk _ (st@(HappyState action):sts) stk
- = action (-1) (-1) tk st sts stk
-happySpecReduce_2 i fn j tk _ (_:sts@(st@(HappyState action):_)) (v1:v2:stk')
- = action i j tk st sts (fn v1 v2 : stk')
-happySpecReduce_2 _ _ _ _ _ _ _
- = notHappyAtAll
-
-happySpecReduce_3 i fn (-1) tk _ (st@(HappyState action):sts) stk
- = action (-1) (-1) tk st sts stk
-happySpecReduce_3 i fn j tk _ (_:_:sts@(st@(HappyState action):_))
- (v1:v2:v3:stk')
- = action i j tk st sts (fn v1 v2 v3 : stk')
-happySpecReduce_3 _ _ _ _ _ _ _
- = notHappyAtAll
-
-happyReduce k i fn (-1) tk _ (st@(HappyState action):sts) stk
- = action (-1) (-1) tk st sts stk
-happyReduce k i fn j tk st sts stk = action i j tk st' sts' (fn stk)
- where sts'@(st'@(HappyState action):_) = drop (k::Int) (st:sts)
-
-happyMonadReduce k i c fn (-1) tk _ sts stk
- = case sts of
- (st@(HappyState action):sts) -> action (-1) (-1) tk st sts stk
- [] -> happyError
-happyMonadReduce k i c fn j tk st sts stk =
- happyThen (fn stk) (\r -> action i j tk st' sts' (c r : stk'))
- where sts'@(st'@(HappyState action):_) = drop (k::Int) (st:sts)
- stk' = drop (k::Int) stk
-
------------------------------------------------------------------------------
--- Moving to a new state after a reduction
-
-happyGoto action j tk st = action j j tk (HappyState action)
-
------------------------------------------------------------------------------
--- Error recovery (-1 is the error token)
-
--- fail if we are in recovery and no more states to discard
-{-# NOINLINE happyFail #-}
--- NOINLINE else GHC diverges with the contravariant data type bug
--- See test simplCore/should_compile/simpl012
-happyFail (-1) tk st' [] stk = happyError
-
--- discard a state
-happyFail (-1) tk st' (st@(HappyState action):sts) stk =
--- _trace "discarding state" $
- action (-1) (-1) tk st sts stk
-
--- Enter error recovery: generate an error token,
--- save the old token and carry on.
-
--- we push the error token on the stack in anticipation of a shift,
--- and also because this is a convenient place to store the saved token.
-
-happyFail i tk st@(HappyState action) sts stk =
--- _trace "entering error recovery" $
- action (-1) (-1) tk st sts (HappyErrorToken i : stk)
-
--- Internal happy errors:
-
-notHappyAtAll = error "Internal Happy error\n"
-
--- end of Happy Template.
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc096.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc096.hs
deleted file mode 100644
index 165c5bd636..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc096.hs
+++ /dev/null
@@ -1,36 +0,0 @@
-module ShouldSucceed where
-
--- !!! monomorphism restriction and defaulting
-
-x = 3
-
-main = print $ 6 / x
-
-{-
-Hugs 1.4 complains: ERROR "Strange.hs" (line 3): Int is not an
-instance of class "Fractional". GHC however compiles the program.
-Substitute for x and Hugs is happy. What's going on?
-
-I haven't studied the numeric classes much so perhaps I'm missing
-something obvious here. (I see that the bugs page alludes to some 1.4
-features not in Hugs leading to type errors. If this is it, maybe you
-should give it as an example?)
-
- Bjarte
-
-------- Message 2
-
-Date: Wed, 25 Feb 98 14:01:35 -0500
-From: "John C. Peterson" <peterson-john@CS.YALE.EDU>
-To: bjartem@idi.ntnu.no
-cc: hugs-bugs@CS.YALE.EDU
-Subject: Re: Fractional and Int?
-
-This is a known hugs bug. x should be monomorphic, allowing the usage
-in main to constrain it to Fractional. Instead, it is generalized and
-then defaulted to Int without being influenced by main. So ghc is
-right and hugs is wrong on this one. I expect this will be fixed
-eventually.
-
- John
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc097.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc097.hs
deleted file mode 100644
index a65d529dd3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc097.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
--- !!! Local universal quantification.
-module ShouldSucceed where
-
-data Monad2 m = MkMonad2 (forall a. a -> m a)
- (forall a b. m a -> (a -> m b) -> m b)
-
-halfListMonad :: (forall a b. [a] -> (a -> [b]) -> [b]) -> Monad2 []
-halfListMonad b = MkMonad2 (\x -> [x]) b
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc098.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc098.hs
deleted file mode 100644
index f870caa0e7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc098.hs
+++ /dev/null
@@ -1,31 +0,0 @@
--- !!! Ambiguity in local declarations
-
-module ShouldSucceed where
-
-type Cp a = a -> a -> Ordering
-
-m :: Eq a => Cp a -> [a] -> a
-m _ [x,y,z] = if x==y then x else z
-
-cpPairs :: Cp [j] -> (a,[j]) -> (a,[j]) -> Ordering
-cpPairs cp (_,p) (_,q) = cp p q
-
-mp :: (Eq i,Eq j) => Cp [j] -> [(i,[j])] -> (i,[j])
-mp cp dD =
- let minInRow = m (cpPairs cp)
- in minInRow dD
-
-{- GHC 3.02 reported
-
- T.hs:24:
- Ambiguous type variable(s)
- `j' in the constraint `Eq (aYD, [j])'
- arising from use of `m' at T.hs:24
- In an equation for function `mp':
- mp cp dD = let minInRow = m (cpPairs cp) in minInRow dD
-
-This was because the ambiguity test in tcSimplify didn't
-take account of the type variables free in the environment.
-
-It should compile fine.
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc099.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc099.hs
deleted file mode 100644
index 367789a4c7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc099.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !! check if tc type substitutions really do
--- !! clone (or if not, work around it by cloning
--- !! all binders in first pass of the simplifier).
-module ShouldCompile where
-
-f,g :: Eq a => (a,b)
-f = g
-g = f
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc100.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc100.hs
deleted file mode 100644
index 06f34750e1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc100.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! Caused ghc-3.03 and 4.01 tc to enter a
--- !!! a blackhole (as reported by P. Callaghan.)
-module ShouldCompile where
-
-type C a = D a -> a
-newtype D a = DD (D_ a)
-type D_ a = C (Maybe a)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc101.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc101.hs
deleted file mode 100644
index 7ae95d53f5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc101.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- !!! Caused ghc-4.04proto to loop!
--- !!! (as reported by Sigbjorn)
-
-module ShouldCompile where
-
--- This made the compiler (4.04 proto) loop (stack overflow)
--- The bug was in TcUnify.uUnboundVar and is documented there.
-
-type A a = ()
-
-f :: (A a -> a -> ()) -> ()
-f = \ _ -> ()
-
-x :: ()
-x = f (\ x p -> p x)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc102.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc102.hs
deleted file mode 100644
index c71b2d0ec0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc102.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE Rank2Types, ScopedTypeVariables #-}
-
--- !!! Caused ghc-4.04proto to report a bogus type error
--- !!! (as reported by Keith)
-
--- The type error arose from a mistake in tcMatches.tc_match
-
--- Involves pattern type signatures
-
-module ShouldCompile where
-
-p :: forall a. a -> a
-p = let y = p in \ (x::a) -> x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc104.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc104.hs
deleted file mode 100644
index 25f354c42a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc104.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! Checking that Main.main's type can now be of the form (IO a)
-module Main(main) where
-
-main = putStrLn "Hello" >> return (id)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc105.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc105.hs
deleted file mode 100644
index 6f35fff7fb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc105.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE Rank2Types, ScopedTypeVariables #-}
-
-module ShouldCompile where
-
-import Control.Monad.ST
-import Data.STRef
-
--- (Modified now that we don't have result type signatures)
-
-f:: forall s. ST s Int
-f = do v <- newSTRef 5
- let g :: ST s Int
- -- ^ should be in scope
- g = readSTRef v
- g
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc106.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc106.hs
deleted file mode 100644
index 565bbad9b4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc106.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FlexibleContexts #-}
-
--- !!! Mutually recursive kind inference
--- Exposes a bug in 4.08 (fixed in 4.08 pl1)
-
-module ShouldCompile where
-
--- This pair will tickle the bug
-class Lookup c k a where
- lookupAll :: Sequence seq a => c -> k -> seq a
-
-class Lookup (s a) Int a => Sequence s a where
- foo :: s a
-
-
--- This decl will tickle it all by itself
-class Matrix a e where
- amap2 :: (Matrix a d) =>
- (e -> d -> e) -> a ix e -> a ix d -> a ix e
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc107.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc107.hs
deleted file mode 100644
index 75211bc584..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc107.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! Kind checking in a recursive situation
--- Exposes a bug in proto-4.09 (black hole)
-
-module ShouldCompile where
-
-data ChItem = ChItemX Stream
-type Stream = ChItem
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc108.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc108.hs
deleted file mode 100644
index 71f5f5c07f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc108.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FlexibleContexts #-}
--- !!! Scopes in kind checking
-
--- Exposes a bizarre bug in 4.08.1
--- TestSh.hs:6:
--- `Shape' is not in scope
--- When checking kinds in `HasConfigValue Shape nodeTypeParms'
--- In the class declaration for `HasShape'
-
-module ShouldCompile where
-
-data Shape value = Box | Circle
-
-class HasConfigValue Shape nodeTypeParms => HasShape nodeTypeParms where {}
-
-class HasConfigValue option configuration where
- ($$$) :: option value -> configuration value -> configuration value
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc109.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc109.hs
deleted file mode 100644
index 0d9fdc051c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc109.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- UndecidableInstances #-}
--- UndecidableInstances because 'b' appears in the context but not the head
-
-module ShouldCompile where
-
--- This accepted by Hugs, but not by GHC 4.08.1
--- Reported by Thomas Hallgren Nov 00
-
-class P a
-class R a b | b->a
-
-instance (P a,R a b) => P [b]
-
-{- GHC 4.08.1 doesn't seem to allow variables in the context that
-don't appear after the =>, but which are still ok since they are
-determined by the functional dependenices. -}
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc111.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc111.hs
deleted file mode 100644
index 26eb942970..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc111.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-
--- !!! Test monomorphism + RULES
-
-module ShouldCompile where
-
--- This example crashed GHC 4.08.1.
--- The reason was that foobar is monomorphic, so the RULE
--- should not generalise over it.
-
-foo 1 = 2
-bar 0 = 1
-
-foobar = 2
-
-{-# RULES
- "foo/bar" foo bar = foobar
- #-}
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc112.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc112.hs
deleted file mode 100644
index d588d0e698..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc112.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-
--- !!! Functional dependencies
--- This broke an early impl of functional dependencies
--- (complaint about ambiguity)
-
-module ShouldCompile where
-
-class C a b | a -> b where f :: a -> b
-
-g :: (C a b, Eq b) => a -> Bool
-g x = f x == f x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc113.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc113.hs
deleted file mode 100644
index 38e79743e4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc113.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- !!! Monomorphism restriction
-
-module ShouldCompile where
-
-foo :: Eq a => a -> b -> b
-foo x y = y
-
--- Expect test2 :: forall b. b->b
--- despite the monomorphism restriction
-poly = foo (3::Int)
-
--- Check that test2 is polymorphic
-test = (poly True, poly 'c')
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc114.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc114.hs
deleted file mode 100644
index e8c339bdf6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc114.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances #-}
-
--- !!! Functional dependencies
--- This broke an early impl of functional dependencies
-
-module ShouldCompile where
-
-class Foo r a | r -> a where
- foo :: a -> r
-
-instance Foo (Maybe e) e where
- foo = Just
-
-bad:: Num e => Maybe e
-bad = foo 0
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc115.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc115.hs
deleted file mode 100644
index 139b3a5323..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc115.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances #-}
--- !!! Functional dependencies
--- This broke an early impl of functional dependencies
--- (complaining about ambiguity)
-
-module ShouldCompile where
-
-class Foo r a | r -> a where
- foo :: r -> a
-
-instance Foo [m a] (m a)
-
-bad:: Monad m => m a
-bad = foo bar
-
-bar:: Monad m => [m a]
-bar = []
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc115.stderr-ghc b/testsuite/tests/ghc-regress/typecheck/should_compile/tc115.stderr-ghc
deleted file mode 100644
index b4b8dd81b1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc115.stderr-ghc
+++ /dev/null
@@ -1,4 +0,0 @@
-
-tc115.hs:12:10:
- Warning: No explicit method nor default method for `foo'
- In the instance declaration for `Foo [m a] (m a)'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc116.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc116.hs
deleted file mode 100644
index eb93410bed..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc116.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances #-}
--- !!! Functional dependencies
--- This broke an early impl of functional dependencies
--- (caused a panic)
-
-module ShouldCompile where
-
-class Foo r a | r -> a where
- foo :: r -> a
-
-instance Foo [m a] (m a)
-
-bad:: Monad m => m a
-bad = foo bar
-
-bar:: [m a]
-bar = []
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc116.stderr-ghc b/testsuite/tests/ghc-regress/typecheck/should_compile/tc116.stderr-ghc
deleted file mode 100644
index 7aa90036d0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc116.stderr-ghc
+++ /dev/null
@@ -1,4 +0,0 @@
-
-tc116.hs:12:10:
- Warning: No explicit method nor default method for `foo'
- In the instance declaration for `Foo [m a] (m a)'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc117.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc117.hs
deleted file mode 100644
index d27c2b0076..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc117.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances, UndecidableInstances #-}
--- UndecidableInstances now needed because the Coverage Condition fails
-
--- !!! Functional dependencies
--- This one gave another fail in tcReadMutVar
-
-module M1 where
-
-class HasFoo a foo | a -> foo where
- foo :: a -> foo
-instance HasFoo Int Int where
- foo = id
-
-instance HasFoo a b => HasFoo [a] b where
- foo = foo . head
-
-test:: [[Int]] -> Int
-test = foo
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc118.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc118.hs
deleted file mode 100644
index 5828a1287c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc118.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- UndecidableInstances #-}
-
--- !!! An instance decl with a context containing a free type variable
--- The interest here is that there's a "b" in the instance decl
--- context that isn't mentioned in the instance head.
--- Hence UndecidableInstances
-
-module ShouldCompile where
-
-class HasConverter a b | a -> b where
- convert :: a -> b
-
-data Foo a = MkFoo a
-
-instance (HasConverter a b,Show b) => Show (Foo a) where
- show (MkFoo value) = show (convert value)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc119.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc119.hs
deleted file mode 100644
index e29cb6a72f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc119.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- ExistentialQuantification #-}
-
--- !!! Functional dependencies and existentials
-
--- Hugs (February 2000) doesn't like it. It says
--- Variable "e" in constraint is not locally bound
-
-module ShouldCompile where
-
-class Collection c e | c -> e where
- empty :: c
- put :: c -> e -> c
-
-data SomeCollection e = forall c . Collection c e => MakeSomeCollection c
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc120.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc120.hs
deleted file mode 100644
index 11c64d868d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc120.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! Check that we can have a type for main that is more general than IO a
-
--- main :: forall a.a certainly also has type IO a, so it should be fine.
-
-module Main(main) where
-
-main :: a
-main = error "not much luck"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc121.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc121.hs
deleted file mode 100644
index 9f25183e7a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc121.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
--- !!! Implicit Parameters
-
--- If the implicit param isn't recognized as a PredType, x and y
--- will be inferred to have two params instead of one.
-
-module ShouldCompile where
-
-x () = ?wibble
-
-y () = x ()
-
-same :: a -> a -> b
-same x y = undefined
-
-a () = same x id
-b () = same y id
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc122.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc122.hs
deleted file mode 100644
index 71315f20c8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc122.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
--- !!! Implicit Parameters
-
--- GHC 5.00 doesn't handle this:
-
--- Could not deduce `?wibble :: t' from the context ()
--- Probable fix:
--- Add `?wibble :: t' to the banding(s) for {y}
--- Or add an instance declaration for `?wibble :: t'
--- arising from use of implicit parameter `?wibble' at tc122.hs:18
--- in the definition of function `y': wibble
-
-
-module ShouldCompile where
-
-x () = y
- where y = ?wibble
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc123.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc123.hs
deleted file mode 100644
index fb49c91a4b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc123.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
--- !!! Monotypes w/ Implicit Parameters
-
--- GHC 5.00 doesn't handle this:
-
--- Couldn't match `{?wibble :: Int}' against `()'
--- Expected type: {?wibble :: Int}
--- Inferred type: ()
--- In the first argument of `x', namely `()'
--- in the definition of function `y': x ()
-
-module ShouldCompile where
-
-x () = (?wibble :: Int)
-
-y () = x ()
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc124.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc124.hs
deleted file mode 100644
index cd2362be4f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc124.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
--- !!! Rank 2 polymorphism
--- Both f and g are rejected by Hugs [April 2001]
-
-module Foo where
-
-data T = T { t1 :: forall a. a -> a , t2 :: forall a b. a->b->b }
-
--- Test pattern bindings for polymorphic fields
-f :: T -> (Int,Char)
-f t = let T { t1 = my_t1 } = t
- in
- (my_t1 3, my_t1 'c')
-
--- Test record update with polymorphic fields
-g :: T -> T
-g t = t { t2 = \x y -> y }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc125.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc125.hs
deleted file mode 100644
index 8d820ba209..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc125.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances, UndecidableInstances #-}
--- UndecidableInstances now needed because the Coverage Condition fails
-
--- !!! Functional dependency test. Hugs [Apr 2001] fails to typecheck this
--- We should infer this type for foo
--- foo :: Q (S (S Z)) (S Z)
-
-module ShouldCompile where
-
-data Z = Z
-data S a = S a
-
-class Add a b c | a b -> c where add :: a -> b -> c
-
-instance Add Z a a
-instance Add a b c => Add (S a) b (S c)
-
-class Mul a b c | a b -> c where mul :: a -> b -> c
-
-instance Mul Z a Z
-instance (Mul a b c, Add b c d) => Mul (S a) b d
-
-data Q a b = Q a b
-
--- Problem here. This is the addition of rational
--- numbers: (a/b) + (c/d) = (ad+bc)/bd
-
-instance (Mul a d ad,
- Mul b c bc,
- Mul b d bd,
- Add ad bc ad_bc) => Add (Q a b) (Q c d) (Q ad_bc bd)
-
-z = Z
-sz = S Z
-ssz = S (S Z)
-
-foo = add (Q sz sz) (Q sz sz)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc125.stderr-ghc b/testsuite/tests/ghc-regress/typecheck/should_compile/tc125.stderr-ghc
deleted file mode 100644
index 628c5e59db..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc125.stderr-ghc
+++ /dev/null
@@ -1,20 +0,0 @@
-
-tc125.hs:16:10:
- Warning: No explicit method nor default method for `add'
- In the instance declaration for `Add Z a a'
-
-tc125.hs:17:10:
- Warning: No explicit method nor default method for `add'
- In the instance declaration for `Add (S a) b (S c)'
-
-tc125.hs:21:10:
- Warning: No explicit method nor default method for `mul'
- In the instance declaration for `Mul Z a Z'
-
-tc125.hs:22:10:
- Warning: No explicit method nor default method for `mul'
- In the instance declaration for `Mul (S a) b d'
-
-tc125.hs:29:10:
- Warning: No explicit method nor default method for `add'
- In the instance declaration for `Add (Q a b) (Q c d) (Q ad_bc bd)'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc126.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc126.hs
deleted file mode 100644
index 2680ea6290..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc126.hs
+++ /dev/null
@@ -1,36 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances, FlexibleContexts, UndecidableInstances #-}
--- UndecidableInstances now needed because the Coverage Condition fails
-
--- !!! Functional dependency test. Hugs [Apr 2001] fails to typecheck this
--- Rather bizarre example submitted by Jonathon Bell
-
-module ShouldCompile where
-
--- module Foo where
-
-class Bug f a r | f a -> r where
- bug::f->a->r
-
-instance Bug (Int->r) Int r
-instance (Bug f a r) => Bug f (c a) (c r)
-
-f:: Bug(Int->Int) a r => a->r
-f = bug (id::Int->Int)
-
-g1 = f (f [0::Int])
--- Inner f gives result type
--- f [0::Int] :: Bug (Int->Int) [Int] r => r
--- Which matches the second instance declaration, giving r = [r']
--- f [0::Int] :: Bug (Int->Int) Int r' => r'
--- Wwich matches the first instance decl giving r' = Int
--- f [0::Int] :: Int
--- The outer f now has constraint
--- Bug (Int->Int) Int r
--- which makes r=Int
--- So g1::Int
-
-g2 = f (f (f [0::Int]))
--- The outer f repeats the exercise, so g2::Int
--- This is the definition that Hugs rejects
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc126.stderr-ghc b/testsuite/tests/ghc-regress/typecheck/should_compile/tc126.stderr-ghc
deleted file mode 100644
index a414a0e35a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc126.stderr-ghc
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tc126.hs:15:25:
- Warning: No explicit method nor default method for `bug'
- In the instance declaration for `Bug (Int -> r) Int r'
-
-tc126.hs:16:10:
- Warning: No explicit method nor default method for `bug'
- In the instance declaration for `Bug f (c a) (c r)'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc127.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc127.hs
deleted file mode 100644
index 58ccca7a5e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc127.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
--- !!! Another implicit parameter test, from Alastair Reid
-
-module ShouldCompile where
-
-import Data.Maybe
-
-type Env = ([(String,Int)],Int)
-
-ident1 :: (?env :: Env) => String -> Int
-ident1 x = y
- where
- env = ?env
- y = fromJust (lookup x (fst env))
-
-ident2 :: (?env :: Env) => String -> Int
-ident2 x = y
- where
- y = fromJust (lookup x (fst ?env))
-
-
--- Two more tests from Jeff Lewis
-x () = y where y = ?wibble
-
-f () = ?wibble :: Int
-g () = f ()
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc128.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc128.hs
deleted file mode 100644
index 139e8e5a14..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc128.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! Test type checking of mutually recursive groups
--- GHC 5.00 was falling into a black hole when type checking a recursive
--- group of type declarations including a *chain* of type synonyms.
-
-module ShouldCompile where
-
- type PhraseFun = PMap -> Float
- type PMap = () -> Player
- data Player = MkT PhraseFun
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc129.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc129.hs
deleted file mode 100644
index 56163ffe31..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc129.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
--- !!! Test inheritance of implicit parameters.
--- GHC 5.00.2 fails this test
-
--- The thing is to do with whether an implicit parameter
--- constraint can be "inherited". See notes in TcSimplify.lhs
-
-module ShouldCompile where
-
-data R = R {f :: Int}
-
-foo :: (?x :: Int) => R -> R
-foo r = r {f = ?x}
-
-baz :: (?x :: Int) => Int
-baz = (?x +1) :: Int
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc130.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc130.hs
deleted file mode 100644
index da91273ff0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc130.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
--- !!! Desugaring of record updates
--- Showed up a bug in the newtype-squashing machinery
-
-
-module ShouldCompile where
-
-data R = R {field :: Int}
-
-test:: (?param :: R) => a -> Int
-test x = field (?param {field = 42})
- -- The type of the record to be updated is
- -- {?param :: R} as well as plain R
- -- which confused the compiler
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc131.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc131.hs
deleted file mode 100644
index 14813edb4e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc131.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-
--- !!! Typechecking of functional dependencies
--- Showed up (another) bug in the newtype-squashing machinery
-
-
-module ShouldCompile where
-
-class Split2 a b | a -> b, b -> a where
- combine2 :: (b,b) -> a
-
-class Split4 a b | a -> b, b -> a where
- combine4 :: (b,b) -> a
-
-newtype Word16 = Word16 Int
-newtype Word32 = Word32 Int
-newtype Word64 = Word64 Int
-
-instance Split2 Word32 Word16 where
- combine2 = undefined
-
-instance Split2 Word64 Word32 where
- combine2 a = undefined
-
-instance Split4 Word64 Word16 where
- combine4 (a, b) =
- combine2 ( (combine2 (a, b)), combine2 (a, b))
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc132.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc132.hs
deleted file mode 100644
index f32e6dc6bc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc132.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- !!! Monomorphism restriction
--- This one should work fine, despite the monomorphism restriction
--- Fails with GHC 5.00.1
-
-module Test where
-import Control.Monad.ST
-import Data.STRef
-
--- Should get
--- apa :: forall s. ST s ()
-apa = newSTRef () >> return ()
-
-foo1 = runST apa
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc133.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc133.hs
deleted file mode 100644
index 8b378a4f00..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc133.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE ExistentialQuantification, ScopedTypeVariables #-}
-
--- !!! Existentials
-
--- This one killed GHC 5.00.1:
--- Inferred type is less polymorphic than expected
--- Quantified type variable `a' is unified with another quantified type variable `a'
--- When checking a pattern that binds f :: a -> Int
--- In the definition of `f': f (T (x :: a) f) = T (undefined :: a) f
-
-module Test where
-
-data T = forall a. T a (a->Int)
-
-f :: T -> T
-f (T (x::a) f) = T (undefined::a) f
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc134.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc134.hs
deleted file mode 100644
index 84eb75c82f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc134.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
-
--- !!! Scoped type variables: result sig
-
-module Test where
-
-f :: Int -> Int
-f x :: Int = x
-
-g :: Int -> Int
-g x :: a = x :: a -- Here, a is a name for Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc134.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/tc134.stderr
deleted file mode 100644
index 1bf70204eb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc134.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tc134.hs:11:2:
- The scoped type variable `a' is bound to the type `Int'
- You can only bind scoped type variables to type variables
- In the definition of `g': g x :: a = x :: a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc135.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc135.hs
deleted file mode 100644
index 6ede73f573..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc135.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables, ExistentialQuantification #-}
-
--- !!! scoped type variables w/ existential types
--- this test failed in GHC 5.00
-
-module ShouldCompile where
-
-data T = forall a. MkT [a]
-
-f :: T -> T
-f (MkT [t::a]) = MkT t3
- where t3::[a] = [t,t,t]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc136.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc136.hs
deleted file mode 100644
index 044f0a75f7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc136.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
-
--- !!! scoped type variables
--- this test failed in pre-release GHC 5.02
-
-module ShouldCompile where
-
-f :: forall x. x -> x -> x
-f (x::x) (y::x) = x
--- Two points: (a) we are using x as a term variable and as a type variable
--- (b) the type variable appears twice, but that is OK
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc137.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc137.hs
deleted file mode 100644
index dce781d39b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc137.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances #-}
-{-# OPTIONS -dcore-lint #-}
-
-{- This one killed GHC 5.02
-
-The problem is that in rather obscure cases (involving functional
-dependencies) it is possible to get an AbsBinds [] [] (no tyvars, no
-dicts) which nevertheless has some "dictionary bindings". These come
-out of the typechecker in non-dependency order, so we need to Rec them
-just in case. Otherwise we get a CoreLint out-of-scope error.
-
-Reported by Armin Groesslinger
-
--}
-
-module ShouldCompile
-where
-
-data X a = X a
-
-class Y a b | a -> b where
- y :: a -> X b
-
-instance Y [[a]] a where
- y ((x:_):_) = X x
-
-g :: Num a => [X a] -> [X a]
-g xs = h xs
- where
- h ys = ys ++ map (k (y [[0]])) xs
-
-k :: X a -> X a -> X a
-k _ _ = y ([] ++ [[]] ++ [])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc140.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc140.hs
deleted file mode 100644
index 6536e3d47d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc140.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
--- Make sure for-alls can occur in data types
-
-module Foo where
-
-newtype CPS1 a = CPS1 { unCPS1 :: forall ans . (a -> ans) -> ans }
-
-newtype CPS2 a = CPS2 (forall ans . (a -> ans) -> ans)
- -- This one also has an interesting record selector;
- -- caused an applyTypeArgs crash in 5.02.1
-
-data CPS3 a = CPS3 { unCPS3 :: forall ans . (a -> ans) -> ans }
-data CPS4 a = CPS4 (forall ans . (a -> ans) -> ans)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc141.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc141.hs
deleted file mode 100644
index c5f675000d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc141.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
-
--- Scoped type variables on pattern bindings
--- This should *fail* on GHC 5.02 and lower,
--- It's a post-5.02 enhancements to allow them.
-
--- It's an error again in GHC 6.6!
-
-module ShouldCompile where
-
-f x = let (p::a,q::a) = x in (q::a,p)
-
-g a b = let y::a = a in
- let v :: a
- v = b
- in v
- \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc141.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/tc141.stderr
deleted file mode 100644
index 2fdf1fa99c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc141.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tc141.hs:11:15: Not in scope: type variable `a'
-
-tc141.hs:11:20: Not in scope: type variable `a'
-
-tc141.hs:13:16: Not in scope: type variable `a'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc142.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc142.hs
deleted file mode 100644
index 8621710038..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc142.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! Legitimate re-use of prelude class-method name (==)
--- Used not to be legal, but a late H98 change made it legal
---
-module ShouldFail where
-
-data NUM = ONE | TWO
-class EQ a where
- (==) :: a -> a -> Bool
-
-instance EQ NUM where
- a == b = True
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc143.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc143.hs
deleted file mode 100644
index 316f47aade..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc143.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- These two declarations get their derived instances
--- in two different ways
-
-module ShouldCompile where
-
-newtype Bar = Bar Int deriving Eq
-data Baz = Baz Bar deriving Eq
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc144.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc144.hs
deleted file mode 100644
index 29185c8bc4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc144.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE ImplicitParams, Rank2Types #-}
-
--- Rank-2 types with implicit parameters.
--- GHC 5.02 erroneously rejected this
-
-module ShouldCompile where
-
- f :: ((?param :: a) => b) -> a -> b
- f foo a = let ?param = a in foo
-
- g :: (?param :: a) => a
- g = ?param
-
- h :: a -> a
- h = f g
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc145.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc145.hs
deleted file mode 100644
index a11c5b93e5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc145.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE ImplicitParams, UnboxedTuples #-}
-
--- Test two slightly exotic things about type signatures
-
-module ShouldCompile where
-
- -- The for-all hoisting should hoist the
- -- implicit parameter to give
- -- r :: (?param::a) => a
- r :: Int -> ((?param :: a) => a)
- r = error "urk"
-
- -- The unboxed tuple is OK because it is
- -- used on the right hand end of an arrow
- type T = (# Int, Int #)
-
- f :: Int -> T
- f = error "urk"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc146.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc146.hs
deleted file mode 100644
index 4f44e908cf..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc146.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
--- The interesting thign about this one is that
--- there's an unbound type variable of kind *->*
--- that the typechecker should default to some
--- arbitrary type.
---
--- GHC 5.02 could only really deal with such things
--- of kind *, but 5.03 extended that to *->..->*
--- Still not complete, but a lot better.
-
-module ShouldCompile where
-
-f :: (forall a b . a b -> int) -> (forall c . c int) -> int
-f x y = x y
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc147.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc147.hs
deleted file mode 100644
index 1125fe7051..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc147.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- This one sent 5.03 into an infinite loop, because it
--- gazed too deeply into the functional type of PP
-
-module ShouldCompile where
-
-newtype PP = PP (Int -> PP)
-
-foo = PP undefined
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc148.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc148.hs
deleted file mode 100644
index c66f723550..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc148.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
--- This program tickled a bug in 5.02.2's forall-lifting
-
-module ShouldCompile where
-
-class Class x where
- combinator' :: (forall y. Class y => y -> y) -> x -> x
-
-combinator :: (forall y. Class y => y -> y)
- -> (forall x. Class x => x -> x)
-combinator f = combinator' f
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc149.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc149.hs
deleted file mode 100644
index 5813604bc3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc149.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-
-module ShouldCompile where
-
-type Generic i o = forall x. i x -> o x
-type Id x = x
-
-foo :: Generic Id Id
-foo = error "urk"
-
--- The point here is that we instantiate "i" and "o"
--- with a partially applied type synonym. This is
--- OK in GHC because we check type validity only *after*
--- expanding type synonyms.
---
--- However, a bug in GHC 5.03-Feb02 made this break a
--- type invariant (see Type.mkAppTy)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc150.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc150.hs
deleted file mode 100644
index 2e3b9187f0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc150.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE RankNTypes, ScopedTypeVariables #-}
-
-module ShouldCompile where
-
-f v = (\ (x :: forall a. a->a) -> True) id -- 'c'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc151.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc151.hs
deleted file mode 100644
index b28900de75..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc151.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-
--- A test for rank-3 types
-
-module ShouldCompile where
-
-data Fork a = ForkC a a
-
-mapFork :: forall a1 a2 . (a1 -> a2) -> (Fork a1 -> Fork a2)
-mapFork mapA (ForkC a1 a2) = ForkC (mapA a1) (mapA a2)
-
-data SequF s a = EmptyF | ZeroF (s (Fork a)) | OneF a (s (Fork a))
-newtype HFix h a = HIn (h (HFix h) a)
-
-type Sequ = HFix SequF
-
-mapSequF :: forall s1 s2 . (forall b1 b2 . (b1 -> b2) -> (s1 b1 -> s2 b2))
- -> (forall a1 a2 . (a1 -> a2) -> (SequF s1 a1 -> SequF s2 a2))
-mapSequF mapS mapA EmptyF = EmptyF
-mapSequF mapS mapA (ZeroF as) = ZeroF (mapS (mapFork mapA) as)
-mapSequF mapS mapA (OneF a as)= OneF (mapA a) (mapS (mapFork mapA) as)
-
-mapHFix :: forall h1 h2 . (forall f1 f2 . (forall c1 c2 . (c1 -> c2) -> (f1 c1 -> f2 c2))
- -> (forall b1 b2 . (b1 -> b2) -> (h1 f1 b1 -> h2 f2 b2)))
- -> (forall a1 a2 . (a1 -> a2) -> (HFix h1 a1 -> HFix h2 a2))
-mapHFix mapH mapA (HIn v) = HIn (mapH (mapHFix mapH) mapA v)
-
-mapSequ :: forall a1 a2 . (a1 -> a2) -> (Sequ a1 -> Sequ a2)
-mapSequ = mapHFix mapSequF
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc152.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc152.hs
deleted file mode 100644
index 43f107365d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc152.hs
+++ /dev/null
@@ -1,28 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- UndecidableInstances #-}
--- -XUndecidableInstances now needed because the Coverage Condition fails
-
--- This one blew up Hugs (Apr 02)
-
-module ShouldCompile where
-
--- Context reduction can introduce opportunities for context improvement,
--- so add an additional `improve' step afterwards. The bug is demonstrated by
--- the following code:
-
- class C a b c | a b -> c where
- m :: a -> b -> c
-
- instance C Integer Integer Integer where
- m = error "urk"
-
- newtype T a = T a
-
- instance C a b c => C (T a) (T b) (T c) where
- m = error "urk"
-
- i :: T Integer
- i = undefined
-
- x = m (m i i) i -- This line blows up w/ unresolved top-level overloading
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc153.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc153.hs
deleted file mode 100644
index 14ded3531a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc153.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- No ScopedTypeVariables, so (v::a) means (v:: forall a.a)
-
-module ShouldCompile where
-
-data T a = T a
-
-instance Eq (T a) where
- (==) x y = let v :: a
- v = undefined
- in
- v
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc154.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc154.hs
deleted file mode 100644
index d83e7a34c8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc154.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- The type sig mentions a type variable that doesn't appear in
--- the type. This one killed GHC 5.03, in a trivial way.
-
-module ShouldCompile where
-
-type T a = () -> ()
-
-f :: T a
-f () = ()
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc155.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc155.hs
deleted file mode 100644
index 598afc94da..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc155.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE LiberalTypeSynonyms #-}
-
--- The type sig for 'test' is illegal in H98 because of the
--- partial application of the type sig.
--- But with LiberalTypeSynonyms it should be OK because when
--- you expand the type synonyms it's just Int->Int
--- c.f should_fail/tcfail107.hs
-
-module ShouldCompile where
-
-type Thing m = m ()
-
-type Const a b = a
-
-test :: Thing (Const Int) -> Thing (Const Int)
-test = test
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc156.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc156.hs
deleted file mode 100644
index aad75019a9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc156.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE TypeOperators #-}
-
--- Test infix type constructors
-
-module ShouldCompile where
-
-infixl 4 :*:
-infixl 3 :+:
-
-data a :*: b = a :*: b
-data a :+: b = a :+: b
-
-data T a b = T (a `b` Int)
-
-type Foo a b = a `T` b
-
-f :: Int :*: Bool :+: Char
-f = (3 :*: True) :+: 'c'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc157.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc157.hs
deleted file mode 100644
index 5e4b711393..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc157.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
--- Test silly type synonyms
-
-module ShouldCompile where
-
-type C u a = u -- Note 'a' unused
-
-foo :: (forall a. C u a -> C u a) -> u
-foo x = undefined x
-
-bar :: Num u => u
-bar = foo (\t -> t + t)
--- The (Num u) should not get trapped inside the
--- /\a-abstraction which the compiler constructs for
--- the arg to foo. But it might because it's Num (C u a)!
-
--- This test tickles a bizarre corner case documented
--- as [Silly Type Synonym] in TcMType.lhs
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc158.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc158.hs
deleted file mode 100644
index 4414fc9c21..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc158.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
--- Types should be checked for well-formedness only after
--- expanding type synonyms. GHC 5.03 fails this
-
-module ShouldCompile where
-
-type All u = forall x. x->u
-type All' u = u -> All u
-
-all1 :: All u -> (u -> All u) -> All u
-all1 = undefined
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc159.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc159.hs
deleted file mode 100644
index dbdfdc7f55..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc159.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE GeneralizedNewtypeDeriving #-}
-
--- Don't do the cunning new newtype-deriving thing
--- when the type constructor is recursive
-
-module Main where
-
-
-newtype A = A [A] deriving (Eq)
-
--- The derived instance would be:
--- instance Eq A where
--- (A xs) == (A ys) = xs==ys
--- $df :: Eq [A] => Eq A
--- $df d = d |> Eq (sym co)
-
-x :: A
-x = A [A [], A [A []]]
-
-main = print (x == x)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc159.stdout b/testsuite/tests/ghc-regress/typecheck/should_compile/tc159.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc159.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc160.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc160.hs
deleted file mode 100644
index bf88fc3159..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc160.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
---Tests alpha-renaming in with extended type-synonyms
-
-module ShouldCompile where
-
-type Foo x = forall a. a -> x
-
-foo :: Foo (Foo ())
--- foo :: forall a b. a -> b -> ()
--- NOT forall a. a -> a -> ()
-foo = undefined
-
-baz = foo 'c' True
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc161.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc161.hs
deleted file mode 100644
index 44f41a57b4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc161.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
--- Blew up GHC 5.04, with:
--- Ambiguous type variable(s) `q' in the constraint `Foo q'
--- arising from a function with an overloaded argument type at Foo.hs:7
--- Expected type: Int -> (forall q1. (Foo q1) => q1 -> a) -> a
--- Inferred type: Int -> (q -> a) -> a
--- In the application `GHC.Err.noMethodBindingError "Foo.hs:7|Foo.foo"#'
---
--- Fix is to give wild-card args to the default methods
--- See TcClassDcl.mkDefMethRhs
-
-module ShouldCompile where
-
-class Foo a where
- op :: Eq c => c -> (forall b. Eq b => b->b) -> a -> a
-
-instance Foo Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc161.stderr-ghc b/testsuite/tests/ghc-regress/typecheck/should_compile/tc161.stderr-ghc
deleted file mode 100644
index 81c636e698..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc161.stderr-ghc
+++ /dev/null
@@ -1,4 +0,0 @@
-
-tc161.hs:17:10:
- Warning: No explicit method nor default method for `op'
- In the instance declaration for `Foo Int'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc162.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc162.hs
deleted file mode 100644
index 91a3272a92..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc162.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
--- These ones failed with 5.04. They need a coercion
--- in the pattern matching compiler, so they are a bit
--- tricky.
-
--- GHC 6.3: these are back to failures, because we no longer do
--- type subsumption in pattern-matching
-
--- GHC 7.0: back to success
-
-module ShouldCompile where
-
-newtype Bug s a = Bug a
-
-runBug :: (forall s. Bug s a) -> a
-runBug (Bug _) = undefined
-
-newtype BugN s a = BugN a
-
-runBugN :: (forall s. BugN s a) -> a
-runBugN (BugN _) = undefined
-
-data Foo a b = Foo { foo :: a -> b }
-
-baz :: String -> (forall a b . Foo a b) -> IO ()
-baz s (Foo { foo = foo }) = putStrLn s
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc162.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/tc162.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc162.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc163.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc163.hs
deleted file mode 100644
index 21d8a72949..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc163.hs
+++ /dev/null
@@ -1,39 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-
--- This one killed GHC 5.05 and earlier
--- The problem was in a newtype with a record selector, with
--- a polymorphic argument type. MkId generated a bogus selector
--- function
-
-module ShouldCompile where
-
-type M3 a = forall r. (forall b. M3' b -> (b -> M3' a) -> r) -> r
-
-newtype M3' a = M3' { mkM3' :: M3 a }
-
-flop :: forall a b. M3' b -> (b -> M3' a) -> Int
-flop = \m' k -> mkM3' m' (\bm k1 -> error "urk")
-
--- Suppose mkM3' has the straightforward type:
--- mkM3' :: forall a. M3' a -> M3 a
--- Then (mkM3' m') :: forall r. (forall b. ...) -> r
--- If we simply do a subsumption check of this against
--- alpha -> Int
--- where alpha is the type inferred for (\bm k1 ...)
--- this won't work.
-
--- But if we give mkM3' the type
--- forall a r. M3' a -> (forall b. ...) -> r
--- everthing works fine. Very very delicate.
-
----------------- A more complex case -------------
-bind :: M3 a -> (a -> M3 b) -> M3 b
-bind m k b = b (M3' m) (\a -> M3' (k a))
-
-observe :: M3 a -> a
-observe m
- = m (\m' k -> mkM3' m'
- (\bm k1 -> observe (bind (mkM3' bm)
- (\a -> bind (mkM3' (k1 a)) (\a -> mkM3' (k a)))))
- )
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc164.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc164.hs
deleted file mode 100644
index ed6fa429aa..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc164.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
-module ShouldCompile where
-
-data UniqueSupply = US Integer
-
-newUnique :: (?uniqueSupply :: UniqueSupply) => Integer
-newUnique = r
- where US r = ?uniqueSupply
- -- The lazy pattern match in the where clause killed GHC 5.04
- -- because the type {?uniqueSupply::UniqueSupply} of the RHS
- -- of the 'where' didn't look like a UniqueSupply
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc165.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc165.hs
deleted file mode 100644
index ea2fa08ec1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc165.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# OPTIONS_GHC -dcore-lint #-}
-
--- Fails GHC 5.04.2 with -dcore-lint
--- The issue ariseswhen you have a method that
--- constrains a class variable
-
-module Test where
-
-class C a where
- f :: (Eq a) => a
-
-instance C () where
- f = f
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc166.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc166.hs
deleted file mode 100644
index 2e69c3ad56..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc166.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- ExistentialQuantification, Rank2Types,
- FlexibleInstances #-}
-
--- Arguably, the type signature for f1 should be enough to make
--- this program compile, but in 5.04 it wasn't; the
--- extra sig in f2 was needed.
---
--- This is a pretty borderline case.
-
-module ShouldCompile where
-
- class C t a b | t a -> b
- instance C Char a Bool
-
- data P t a = forall b. (C t a b) => MkP b
-
- data Q t = MkQ (forall a. P t a)
-
- f1 :: Q Char
- f1 = MkQ (MkP True)
-
- f2 :: Q Char
- f2 = MkQ (MkP True :: forall a. P Char a)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc167.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc167.hs
deleted file mode 100644
index 7a9f410d64..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc167.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
--- Type checking with unboxed kinds fails when (->) is used in a prefix way
-
-module ShouldSucceed where
-import GHC.Base
-
-f :: (->) Int# Int#
-f x = x
-
-
--- Here's the comment from TypeRep:
---
--- funTyCon = mkFunTyCon funTyConName
--- (mkArrowKinds [liftedTypeKind, liftedTypeKind]
--- liftedTypeKind)
--- You might think that (->) should have type (? -> ? -> *), and you'd be right
--- But if we do that we get kind errors when saying
--- instance Control.Arrow (->)
--- becuase the expected kind is (*->*->*). The trouble is that the
--- expected/actual stuff in the unifier does not go contra-variant, whereas
--- the kind sub-typing does. Sigh. It really only matters if you use (->) in
--- a prefix way, thus: (->) Int# Int#. And this is unusual.
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc168.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc168.hs
deleted file mode 100644
index 10b7fb9fb8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc168.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses #-}
-
--- We want to get the type
--- g :: forall a b c. C a (b,c) => a -> b
---but GHC 6.0 bogusly gets
--- g :: forall a b. C a (b,()) => a -> b
-
-module ShouldCompile where
-
-class C a b where { op :: a -> b }
-
-f x = fst (op x)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc168.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/tc168.stderr
deleted file mode 100644
index 3241e13415..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc168.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-TYPE SIGNATURES
- f :: forall a b a1. C a1 (a, b) => a1 -> a
-TYPE CONSTRUCTORS
-COERCION AXIOMS
- axiom ShouldCompile.NTCo:T:C [] :: ShouldCompile.T:C ~ (->)
-Dependent modules: []
-Dependent packages: [base, ghc-prim, integer-gmp]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc169.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc169.hs
deleted file mode 100644
index 7cb9e001f5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc169.hs
+++ /dev/null
@@ -1,27 +0,0 @@
--- This one briefly killed the new GHC 6.4
-
-module Foo where
-
-newtype Foo x = Foo x
--- data Foo x = Foo x -- this works
-
-class X a where
- x :: a -> IO ()
-
-class X a => Y a where
- y :: [a] -> IO ()
-
-class Z z where
- z :: Y c => z c -> IO ()
-
-instance X Char where
- x = putChar
-instance X a => X (Foo a) where
- x (Foo foo) = x foo
-
-instance Y Char where
- y cs = mapM_ x cs
-
-instance Z Foo where
- z = x
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc170.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc170.hs
deleted file mode 100644
index 9e649b307b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc170.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- This test killed GHC 6.0.2 when it read the interface file for
--- Tc170_Aux, because there was a
--- forall a. (# ... #)
--- in the default method for 'position'
---
--- NB: only fails when compiled in batch mode. In --make mode, GHC
--- doesn't read the interface file, so all is well.
-
-module ShouldCompile where
-
-import Tc170_Aux
-
-data Bitmap = Bitmap
-
-instance Dimensions Bitmap where
- frame = error "urk" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc171.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc171.hs
deleted file mode 100644
index a77b6f7fc5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc171.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-
--- Data types with no constructors
-
-module ShouldCompile where
-
-data S
-data T a
-
-f :: [T a] -> Int
-f xs = length xs
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc172.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc172.hs
deleted file mode 100644
index f744fe43d5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc172.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-module Test where
-
-class C s where
- foo :: (Int -> Int) -> s -> s
-
-instance C Int where
- foo = undefined --prevent warning
-
-bar _ = baz where
- baz :: C s => s -> s
- baz = foo baz
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc174.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc174.hs
deleted file mode 100644
index 49f8d6aab5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc174.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE UnboxedTuples #-}
-
-module ShouldCompile where
-
-f x = (# x, x #) :: (# Int, Int #)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc175.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc175.hs
deleted file mode 100644
index 1631864d5c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc175.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- See trac bug 179
-
--- Gives a bogus type error
--- No instance for (Show (t -> Bool))
--- arising from use of `show' at tc175.hs:11:8-11
--- In the definition of `foo': foo x = show (\ _ -> True)
--- because the instance decl has type variables with
--- kind *, whereas the constraint (Show (x -> Bool)) has x::??
--- Kind of stupid, really, but awkward to fix.
-
-module ShouldCompile where
-
-instance Show (a->b)
-
-foo x = show (\ _ -> True)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc176.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc176.hs
deleted file mode 100644
index d05ccdbe29..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc176.hs
+++ /dev/null
@@ -1,36 +0,0 @@
-{-# LANGUAGE FlexibleInstances, OverlappingInstances #-}
-
-{- With "hugs -98 +o test.hs" gives me:
- ERROR "test.hs":8 - Cannot justify constraints in instance member binding
- *** Expression : fromStr
- *** Type : FromStr [a] => String -> [a]
- *** Given context : FromStr [a]
- *** Constraints : FromStr [a]
-
- Adding the constraint "FromStr a" to the declaration of fromStr fixes
- the problem, but that seems like it should be redundant. Removing the
- second instance (lines 10-11) also fixes the problem, interestingly enough.
-
- /Bjorn Bringert -}
-
--- August 08: on reflection I think a complaint about overlapping
--- instances for line 8 is absolutely right, so I've changed this to
--- expected-failure
-
--- Sept 08: on further reflection (!) I'm changing it back
--- See Note [Subtle interaction of recursion and overlap]
--- in TcInstDcls
-
-module ShouldCompile where
-
-class FromStr a where
- fromStr :: String -> a
-
-typeError :: FromStr a => a -> a
-typeError t = error "type error"
-
-instance FromStr [a] where
- fromStr _ = typeError undefined -- line 8
-
-instance FromStr [(String,a)] where -- line 10
- fromStr _ = typeError undefined -- line 11
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc177.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc177.hs
deleted file mode 100644
index 613528fef3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc177.hs
+++ /dev/null
@@ -1,108 +0,0 @@
-{-# LANGUAGE FlexibleInstances, UndecidableInstances,
- MultiParamTypeClasses, FunctionalDependencies #-}
-
--- This is a rather complicated program that uses functional
--- dependencies to do Peano arithmetic.
---
--- GHC 6.2 dies because tcSimplifyRestricted was trying to
--- be too clever. See 'Plan B' in tcSimplifyRestricted
-
-module ShouldCompile where
-
-
-
--- This is the offending definition. It falls under
--- the monomorphism restriction, so tcSimplifyRestricted applies
-bug = ins b (ins b Nil)
-
-
-------------------------------------
-data LAB l r = LAB l r deriving Show
-
-data OR a b = OR a b deriving Show
-
-
-data Cons x y = Cons x y deriving Show
-
-data Nil = Nil deriving Show
-
-data T = T
-
-data F = F
-
-data A = A deriving Show
-
-data B = B deriving Show
-
-data Zero = Zero
-
-data Succ n = Succ n
-
-b = ((LAB B []),[])
-
--- insertion function
--- insert label pairs in the a list of list, each list contains a collection of
--- label pair that sharing the common label.
-
-
-class Ins r l l' | r l -> l' where
- ins :: r -> l -> l'
-
-
-instance Ins ((LAB l1 r1),r1') Nil (Cons (Cons ((LAB l1 r1),r1') Nil) Nil) where
- ins l Nil = (Cons (Cons l Nil) Nil)
-
-
-instance ( L2N l1 n1
- , L2N l2 n2
- , EqR n1 n2 b
- , Ins1 ((LAB l1 r1),r1') (Cons (Cons ((LAB l2 r2),r2') rs) rs') b l
- ) => Ins ((LAB l1 r1),r1') (Cons (Cons ((LAB l2 r2),r2') rs) rs') l
- where
- ins ((LAB l1 r1),r1') (Cons (Cons ((LAB l2 r2),r2') rs) rs')
- = ins1 ((LAB l1 r1),r1') (Cons (Cons ((LAB l2 r2),r2') rs) rs')
- (eqR (l2n l1) (l2n l2))
--- Note that n1 and n2 are functionally defined by l1 and l2, respectively,
--- and b is functionally defined by n1 and n2.
-
-
-class Ins1 r l b l' | r l b -> l' where
- ins1 :: r -> l -> b -> l'
-
-instance Ins1 ((LAB l1 r1),r1') (Cons r rs) T
- (Cons (Cons ((LAB l1 r1),r1') r) rs) where
- ins1 l (Cons r rs) _ = (Cons (Cons l r) rs)
-
-instance ( Ins ((LAB l1 r1),r1') rs rs')
- => Ins1 ((LAB l1 r1),r1') (Cons r rs) F (Cons r rs') where
- ins1 l (Cons r rs) _ = (Cons r (ins l rs))
-
--- class for mapping label to number
-
-class L2N l n | l -> n where
- l2n :: l -> n
-
-instance L2N A Zero where
- l2n A = Zero
-
-instance L2N B (Succ Zero) where
- l2n B = Succ Zero
-
-
--- class for comparing number type
-
-class EqR n1 n2 b | n1 n2 -> b where
- eqR :: n1 -> n2 -> b
-
-instance EqR Zero Zero T where
- eqR _ _ = T
-
-instance EqR Zero (Succ n) F where
- eqR _ _ = F
-
-instance EqR (Succ n) Zero F where
- eqR _ _ = F
-
-instance (EqR n1 n2 b) => EqR (Succ n1) (Succ n2) b where
- eqR (Succ n1) (Succ n2) = eqR n1 n2
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc178.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc178.hs
deleted file mode 100644
index 2a181208d4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc178.hs
+++ /dev/null
@@ -1,35 +0,0 @@
-{-# LANGUAGE FlexibleInstances #-}
-
--- This one tickled the kind-check in TcType.matchTys,
--- which should use sub-kinding
-
-module ShouldCompile where
-
-type TypeRep = ()
-
-class Typeable2 t where
- typeOf2 :: t a b -> TypeRep
-
-class Typeable1 t where
- typeOf1 :: t a -> TypeRep
-
-class Typeable0 a where
- typeOf0 :: a -> TypeRep
-
-instance Typeable2 (->) where
- typeOf2 = undefined
-
-instance (Typeable2 t, Typeable0 a) => Typeable1 (t a) where
- typeOf1 = undefined
-
-instance (Typeable1 t, Typeable0 a) => Typeable0 (t a) where
- typeOf0 = undefined
-
-class Typeable0 a => Data0 a where
- dataTypeOf0 :: a -> Bool
-
-instance (Data0 a, Data0 b) => Data0 (a -> b) where
- dataTypeOf0 = undefined
-
-foo :: (Typeable0 a, Typeable0 b) => (a -> b) -> TypeRep
-foo f = typeOf0 f
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc179.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc179.hs
deleted file mode 100644
index 110950587d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc179.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE ExistentialQuantification, FlexibleInstances,
- OverlappingInstances, UndecidableInstances #-}
-
--- Tests context reduction for existentials
-
-module TestWrappedNode where
-
-class Foo a where { op :: a -> Int }
-
-instance Foo a => Foo [a] where -- NB overlap
- op (x:xs) = op x
-instance Foo [Int] where -- NB overlap
- op x = 1
-
-data T = forall a. Foo a => MkT a
-
-f :: T -> Int
-f (MkT x) = op [x,x]
- -- The op [x,x] means we need (Foo [a]). We used to
- -- complain, saying that the choice of instance depended on
- -- the instantiation of 'a'; but of course it isn't *going*
- -- to be instantiated.
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc180.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc180.hs
deleted file mode 100644
index 1a404ad5de..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc180.hs
+++ /dev/null
@@ -1,63 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances, UndecidableInstances #-}
-
--- This tests an aspect of functional dependencies, revealing a bug in GHC 6.0.1
--- discovered by Martin Sulzmann
-
-
-module ShouldCompile where
-
-data PHI = PHI
-data EMPT = EMPT
-data LAB l a = LAB l a
-data Phi = Phi
-
-data A = A
-data A_H = A_H [Char]
-
-
-class LNFyV r1 r2 h1 h2 | r1 -> r2, r1 r2 -> h1 h2 where
- lnfyv :: r1->r2->h1->h2
-
-instance ( REtoHT (LAB l c) h)
- => LNFyV (LAB l c) ((LAB l c),EMPT) h (h,[Phi]) where -- (L2)
- lnfyv = error "urk"
-
-class REtoHT s t | s->t
-instance REtoHT (LAB A [Char]) A_H -- (R4)
-
-foo = lnfyv (LAB A "") ((LAB A ""),EMPT) (A_H "1")
-
-
-{-
-ghci 6.0.1
-
-*Test> :t (lnfyv (LAB A "") ((LAB A ""),EMPT) (A_H "1") )
-
-No instance for (LNFyV (LAB A [Char])
- (LAB A [Char], EMPT)
- A_H
- (h, [Phi]))
- arising from use of `lnfyv' at <No locn>
-
-
-hugs November 2002
-
-Test> :t (lnfyv (LAB A "") ((LAB A ""),EMPT) (A_H "1"))
-lnfyv (LAB A "") (LAB A "",EMPT) (A_H "1") :: (A_H,[Phi])
-
-
-hugs is right, here's why
-
-
-(lnfyv (LAB A "") ((LAB A ""),EMPT) (A_H "1")) yields
-
-
- LNFyV (LAB A Char) ((LAB A Char),EMPT) (A_H) c
-
-improve by (L2) LNFyV (LAB A Char) ((LAB A Char),EMPT) (A_H) (A_H,[Phi]), c=(A_H,[Phi])
-reduce by (L2) REtoHT (LAB A Char) A_H, c=(A_H,[Phi])
-reduce by (R4) c=(A_H,[Phi])
-
-
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc181.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc181.hs
deleted file mode 100644
index 6ccf6b90de..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc181.hs
+++ /dev/null
@@ -1,46 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances, FlexibleContexts, UndecidableInstances #-}
-
--- Example of improvement, due to George Russel
-
-module Folders where
-
-data Folder = Folder
-
-newtype SB x = SB x
-newtype SS x = SS x
-
-data NodeArcsHidden = NodeArcsHidden
-
-class HasSS hasS x | hasS -> x where
- toSS :: hasS -> SS x
-
-instance HasSS (SB x) x where
- toSS (SB x) = (SS x)
-
-class HMV option graph node where
- modd :: option -> graph -> node value -> IO ()
-
-instance HMV NodeArcsHidden graph node
- => HMV (Maybe NodeArcsHidden) graph node
- where
- modd = error "burk"
-
-gn :: HMV NodeArcsHidden graph node
- => graph
- -> SS (graph -> node Int -> IO ())
-gn graph = fmapSS (\ arcsHidden -> (\ graph node -> modd arcsHidden graph node))
- (toSS (error "C" :: SB (Maybe NodeArcsHidden)))
-
--- The call to modd gives rise to
--- HMV option graph node
--- The call to toSS gives rise to
--- HasSS (SB (Maybe NodeArcsHidden)) x
--- where (toSS (error ...)) :: SS x
--- and hence arcsHidden :: x
---
--- Then improvement should give x = Maybe NodeArcsHidden
--- and hence option=Maybe NodeArcsHidden
-
-fmapSS :: (a->b) -> SS a -> SS b
-fmapSS = error "urk"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc182.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc182.hs
deleted file mode 100644
index f6e9164f47..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc182.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE DatatypeContexts, ExistentialQuantification #-}
-
--- Tests the "stupid theta" in pattern-matching
--- when there's an existential as well
-
-module ShouldCompile where
-
-data (Show a) => Obs a = forall b. LiftObs a b
-
-f :: Show a => Obs a -> String
-f (LiftObs _ _) = "yes"
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc182.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/tc182.stderr
deleted file mode 100644
index bd8397708b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc182.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-tc182.hs:1:14:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc183.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc183.hs
deleted file mode 100644
index 5015af3c91..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc183.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE ExistentialQuantification, Rank2Types #-}
-
--- An interesting interaction of universals and existentials, prompted by
--- http://www.haskell.org/pipermail/haskell-cafe/2004-October/007160.html
---
--- Note the non-nested pattern-match in runProg; tcfail126 checks the
--- nested pattern match
-
-module Foo where
-
-import Control.Monad.Trans
-
-data Bar m
- = forall t. (MonadTrans t, Monad (t m))
- => Bar (t m () -> m ()) (t m Int)
-
-data Foo = Foo (forall m. Monad m => Bar m)
-
-runProg :: Foo -> IO ()
-runProg (Foo b) = case b of
- Bar run op -> run (prog op)
- -- You can't say runProg (Foo (Bar run op));
- -- see tcfail126
-
-prog :: (MonadTrans t, Monad (t IO)) => a -> t IO ()
-prog x = error "urk"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc184.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc184.hs
deleted file mode 100644
index 2ab4b42cdd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc184.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE ImplicitParams, ExistentialQuantification #-}
-
--- Both these two fail in 6.2.2
-
-module ShouldCompile where
-
-
--- A record with an 'existential' context that binds no
--- type vars, so record selectors should be OK
-data Test1 = (?val::Bool) => Test1 { name :: String }
-
-instance Show Test1 where
- show p = name p
-
-
--- Same, but no record selector; GHC 6.2.2 failed because it tried
--- to derive generic to/from
-data Test2 = (?val::Bool) => Test2 String
-f (Test2 s) | ?val = s
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc185.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc185.hs
deleted file mode 100644
index e06550f63b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc185.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE MagicHash, BangPatterns #-}
-
--- Killed GHC 6.3 HEAD
-
-module Bug where
-import GHC.Base
-
-foo v = let !(I# x#) = 7 * 7 in "Forty-Two" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc186.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc186.hs
deleted file mode 100644
index 79bd42e861..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc186.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-
--- Killed 6.2.2
--- The trouble was that 1 was instantiated to a type (t::?)
--- and the constraint (Foo (t::? -> s::*)) didn't match Foo (a::* -> b::*).
--- Solution is to zap the expected type in TcEpxr.tc_expr(HsOverLit).
-
-module ShoudlCompile where
-
-class Foo a where
- foo :: a
-
-instance Foo (a -> b) where
- foo = error "urk"
-
-test :: ()
-test = foo 1
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc187.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc187.hs
deleted file mode 100644
index 15946f8a50..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc187.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE UndecidableInstances, FlexibleInstances,
- MultiParamTypeClasses, FunctionalDependencies #-}
--- UndecidableInstances now needed because the Coverage Condition fails
-
--- Hugs failed this functional-dependency test
--- Reported by Iavor Diatchki Feb 05
-
-module ShouldCompile where
-
-data N0
-newtype Succ n = Succ n
-
-class Plus a b c | a b -> c
-instance Plus N0 n n
-instance Plus a b c => Plus (Succ a) b (Succ c)
-
-( # ) :: Plus x y z => x -> y -> z
-( # ) = undefined
-
-class BitRep t n | t -> n where
- toBits :: t -> n
-
-instance BitRep Bool (Succ N0) where
- toBits = error "urk"
-
-instance BitRep (Bool,Bool,Bool) (Succ (Succ (Succ N0))) where
- toBits (x,y,z) = toBits x # toBits y # toBits z
-
--- Hugs complains that it cannot solve the constraint:
--- Plus (Succ N0) (Succ N0) (Succ (Succ N0))
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc188.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc188.hs
deleted file mode 100644
index eaf3690ef1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc188.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE TypeOperators, MultiParamTypeClasses, LiberalTypeSynonyms #-}
-
--- Test infix type constructors for type synonyms
-
-module ShouldCompile where
-
-infix 9 :-+-:
-type (f :-+-: g) t o1 o2 = Either (f t o1 o2) (g t o1 o2)
-
-data Foo a b c = Foo (a,b,c)
-
-type App f = f Int Bool Int
-
-f :: (Foo :-+-: Foo) Bool Int Bool
-f = error "urk"
-
-g :: App (Foo :-+-: Foo)
-g = error "urk"
-
--------- classes --------
-
-class (Eq a, Eq b) => a :&: b where
- op :: a -> b
-
-h :: (a :&: b) => a -> b
-h x = op x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc189.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc189.hs
deleted file mode 100644
index 3f9a2879b0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc189.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE NoMonoPatBinds #-}
- -- Disable experimetal monomorphic pattern bindings
-
--- Nasty test for type signatures
--- In both groups of declarations below, the type variables 'a' and 'b'
--- end up being unified together.
-
-module ShouldCompile where
-
--------------
- x :: a
- x = z `asTypeOf` y
-
- y :: b
- y = z
-
- z = x
--------------
- p :: [a]
- q :: b
- (p,q,r) = ([q,r], r, head p)
-
--------------
- t :: a
- u :: b
- (t,u,v) = (v,v,t)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc190.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc190.hs
deleted file mode 100644
index 97413c7177..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc190.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE CPP, KindSignatures #-}
-
--- The record update triggered a kind error in GHC 6.2
-
-module Foo where
-
-data HT (ref :: * -> *)
- = HT { kcount :: Int }
-
-set_kcount :: Int -> HT s -> HT s
-set_kcount kc ht = ht{kcount=kc}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc191.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc191.hs
deleted file mode 100644
index cf77c0505a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc191.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
--- This only typechecks if forall-hoisting works ok when
--- importing from an interface file. The type of Twins.gzipWithQ
--- is this:
--- type GenericQ r = forall a. Data a => a -> r
--- gzipWithQ :: GenericQ (GenericQ r) -> GenericQ (GenericQ [r])
--- It's kept this way in the interface file for brevity and documentation,
--- but when the type synonym is expanded, the foralls need expanding
-
-module Foo where
-
-import Data.Generics.Basics
-import Data.Generics.Aliases
-import Data.Generics.Twins(gzipWithQ)
-
--- | Generic equality: an alternative to \deriving Eq\
-geq :: Data a => a -> a -> Bool
-geq x y = geq' x y
- where
--- This type signature no longer works, because it is
--- insufficiently polymoprhic.
--- geq' :: forall a b. (Data a, Data b) => a -> b -> Bool
- geq' :: GenericQ (GenericQ Bool)
- geq' x y = (toConstr x == toConstr y)
- && and (gzipWithQ geq' x y)
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc192.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc192.hs
deleted file mode 100644
index 3337954ade..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc192.hs
+++ /dev/null
@@ -1,145 +0,0 @@
-{-# LANGUAGE Arrows, CPP, TypeOperators #-}
-
--- Test infix type notation and arrow notation
-
-module Test where
-
-import Prelude hiding (id,(.))
-import Control.Category
-import Control.Arrow
-
--- For readability, I use infix notation for arrow types. I'd prefer the
--- following, but GHC doesn't allow operators like "-=>" as type
--- variables.
---
--- comp1 :: Arrow (-=>) => b-=>c -> c-=>d -> b-=>d
-
-
-comp1 :: Arrow (~>) => b~>c -> c~>d -> b~>d
-comp1 f g = proc x -> do
- b <- f -< x
- g -< b
-
--- arrowp produces
--- comp1 f g = (f >>> g)
-
-comp :: Arrow (~>) => (b~>c, c~>d)~>(b~>d)
-comp = arr (uncurry (>>>))
-
--- app :: Arrow (~>) => (b c, b)~>c
-
-type R = Float
-type I = Int
-
-z1,z2 :: Arrow (~>) => I~>(R~>R)
-z1 = undefined
-z2 = z1
-
-z3 :: Arrow (~>) => (I,I)~>(R~>R,R~>R)
-z3 = z1 *** z2
-
-z4 :: Arrow (~>) => (I,I)~>(R~>R)
-z4 = z3 >>> comp
-
-comp4,comp5 :: Arrow (~>) =>
- b~>(c~>d) -> e~>(d~>f) -> (b,e)~>(c~>f)
-
-comp4 g f = proc (b,e) -> do
- g' <- g -< b
- f' <- f -< e
- returnA -< (g' >>> f')
-
-comp5 g f = (g *** f) >>> comp
-
-lam,lam2 :: Arrow (~>) => (e,b)~>c -> e~>(b~>c)
-
-lam f = arr $ \ e -> arr (pair e) >>> f
-
-pair a b = (a,b)
-
--- I got the definition lam above by starting with
-
-lam2 f = proc e ->
- returnA -< (proc b -> do
- c <- f -< (e,b)
- returnA -< c)
-
--- I desugared with the arrows preprocessor, removed extra parens and
--- renamed "arr" (~>) "pure", (~>) get
---
--- lam f = pure (\ e -> pure (\ b -> (e, b)) >>> f)
-
--- Note that lam is arrow curry
-
--- curry :: ((e,b) -> c) -> (e -> b -> c)
-
--- All equivalent:
-
-curry1 f e b = f (e,b)
-
-curry2 f = \ e -> \ b -> f (e,b)
-
-curry3 f = \ e -> f . (\ b -> (e,b))
-
-curry4 f = \ e -> f . (pair e)
-
-
-
-comp6 :: Arrow (~>) => b~>(c~>d) -> e~>(d~>f)
- -> b~>(e~>(c~>f))
-comp6 g f = lam $ comp5 g f
-
--- What about uncurrying?
-
--- uncurryA :: Arrow (~>) => b~>(c~>d)
--- -> (b,c)~>d
--- uncurryA f = proc (b,c) -> do
--- f' <- f -< b
--- returnA -< f' c
-
--- Why "lam" instead of "curryA" (good name also): so I can use Arrows
--- lambda notation, similar (~>)
-
-compF g f = \ b e -> g b . f e
-
--- But I haven't figured out how (~>).
-
--- comp7 :: Arrow (~>) => b~>(c~>d) -> e~>(d~>f)
--- -> b~>(e~>(c~>f))
--- comp7 g f = proc b -> proc e -> do
--- g' <- g -< b
--- f' <- f -< e
--- returnA -< (g' >>> f')
-
--- Try "(| lam \ b -> ... |)" in the FOP arrows chapter
--- cmd ::= form exp cmd1 ... cmdn. Parens if nec
-
--- (| lam (\ b -> undefined) |)
-
--- Oh! The arrow syntax allows bindings with *infix* operators. And I
--- don't know how (~>) finish comp7.
-
--- Uncurried forms:
-
-comp8 :: Arrow (~>) => (b,c)~>d -> (e,d)~>k -> (b,c,e)~>k
-comp8 g f = proc (b,c,e) -> do
- d <- g -< (b,c)
- f -< (e,d)
-
--- This looks like straightforward~>translation. With insertions of
--- curry & uncurry operators, it'd probably be easy (~>) handle curried
--- definitions as well.
-
--- Simpler example, for experimentation
-
-comp9 :: Arrow (~>) => (c,d)~>e -> b~>d -> (b,c)~>e
-comp9 g f = proc (b,c) -> do
- d <- f -< b
- g -< (c,d)
-
--- Desugared:
-
-comp9' :: Arrow (~>) => (c,d)~>e -> b~>d -> (b,c)~>e
-comp9' g f = first f >>> arr (\ (d,c) -> (c,d)) >>> g
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc193.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc193.hs
deleted file mode 100644
index 54d970ebeb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc193.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-
--- A newtype representation problem crashed GHC 6.4
-
-module ShouldCompile where
-
-
-newtype Signal a = Signal Symbol
-
-newtype Symbol = Symbol (S Symbol)
-
-data S s = Bool Bool
-
-liftl :: Signal a -> Symbol
-liftl (Signal a) = a
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc194.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc194.hs
deleted file mode 100644
index 07b0ed4f02..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc194.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE Rank2Types, ScopedTypeVariables #-}
-
--- Tests the special case of
--- non-recursive, function binding,
--- with no type signature
-
-module ShouldCompile where
-
-f = \ (x :: forall a. a->a) -> (x True, x 'c')
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc195.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc195.hs
deleted file mode 100644
index 8eacf024ca..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc195.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances, TypeSynonymInstances #-}
-
--- This one made GHC 6.4 loop becuause Unify.unify
--- didn't deal correctly with unifying
--- a :=: Foo a
--- where
--- type Foo a = a
-
-module ShouldSucceed where
-
-newtype PRef a = PRef a
-type Drop1 a = a
-class Ref a r | a -> r where readRef :: a -> r
-instance Ref (PRef a) (Drop1 a) where readRef (PRef v) = v
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc196.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc196.hs
deleted file mode 100644
index c34d5e7e9c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc196.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-
--- Test the refined dependency analysis of bindings
--- with -fglagow-exts
-
-module ShouldCompile where
-
- f1 :: Eq a => a -> Bool
- f1 x = (x == x) || g1 True
-
- g1 :: Ord a => a -> Bool
- g1 y = (y <= y) || f1 True
-
----------
-
- f2 :: Eq a => a -> Bool
- f2 x = (x == x) || g2 True || g2 "Yes"
-
- g2 y = (y <= y) || f2 True
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc197.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc197.hs
deleted file mode 100644
index 40b9aeca7e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc197.hs
+++ /dev/null
@@ -1,40 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances, FlexibleContexts #-}
-
--- Another dependency analysis test
--- Notice that 'a' and 'b' are mutually recursive,
--- but have different contexts.
---
--- This is the program submitted by Robert van Herk [rherk@cs.uu.nl]
--- to motivate the refined dependency analysis.
-
-module ShouldCompile where
-import Data.IORef
-
-class MyReader r v | r -> v where
- myRead :: r -> IO v
-
-data R v = R (IORef v)
-instance MyReader (R v) v where
- myRead (R v) =
- do v <- readIORef v
- return v
-
-
-a :: IO ()
-a =
- do r <- createReader
- b r
-
-b :: MyReader r Int => r -> IO ()
-b r =
- do i <- myRead r
- if i > 10
- then a
- else putStrLn (show i)
-
-createReader :: IO (R Int)
-createReader =
- do ref <- newIORef 0
- return (R ref)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc198.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc198.hs
deleted file mode 100644
index e931ac5cb8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc198.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE Rank2Types, ScopedTypeVariables #-}
-
--- This should work, because the type sig and the type
--- in the pattern match exactly
-
-module Foo where
-
-foo :: (forall a. a -> b) -> b
-foo (f :: forall a. a -> b) = f undefined :: b
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc199.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc199.hs
deleted file mode 100644
index d530cfd6d0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc199.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses #-}
-
--- This code defines a default method with a highly dubious type,
--- because 'v' is not mentioned, and there are no fundeps
---
--- However, arguably the instance declaration should be accepted,
--- beause it's equivalent to
--- instance Baz Int Int where { foo x = x }
--- which *does* typecheck
-
--- GHC does not actually macro-expand the instance decl. Instead, it
--- defines a default method function, thus
---
--- $dmfoo :: Baz v x => x -> x
--- $dmfoo y = y
---
--- Notice that this is an ambiguous type: you can't call $dmfoo
--- without triggering an error. And when you write an instance decl,
--- it calls the default method:
---
--- instance Baz Int Int where foo = $dmfoo
---
--- I'd never thought of that. You might think that we should just
--- *infer* the type of the default method (here forall a. a->a), but
--- in the presence of higher rank types etc we can't necessarily do
--- that.
-
-module Foo1 where
-
-class Baz v x where
- foo :: x -> x
- foo y = y
-
-instance Baz Int Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc200.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc200.hs
deleted file mode 100644
index bb6a00e1ae..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc200.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# OPTIONS_GHC -w #-}
-
--- A nasty case that crashed GHC 6.4 with a Lint error;
--- see Note [Multiple instantiation] in TcExpr
-
-module ShouldCompile where
-
-class C a where
- foo :: Eq b => b -> a -> Int
- baz :: Eq a => Int -> a -> Int
-
-instance C Int where
- baz = foo
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc201.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc201.hs
deleted file mode 100644
index c60aa85406..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc201.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- ExistentialQuantification, FlexibleContexts #-}
-
-{- Email 30 Jan 2006
-
-> the attached program compiles under GHC, but not with Hugs. as far as
-> i see, Hugs don't use dependencies in class headers to figure out that
-> there is only one "vMkIOError" that can be called in the last
-> definition
-
-OK, I think it's a bug (though the example is bizarre). Sadly Hugs's
-support for FDs is rough around the edges (and unlikely to improve
-soon).
-
--}
-
-module ShoudlCompile where
-
- class (Monad m) => Stream m h | h->m where
- vMkIOError :: h -> Int
-
- data BinHandle = forall h . Stream IO h => BinH h
-
- instance Stream IO BinHandle where
- vMkIOError (BinH h) = vMkIOError h
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc202.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc202.hs
deleted file mode 100644
index 7280606388..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc202.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
--- Tests that subFunTys works when the arugment is a type of form (a ty1 ty2)
-
-module ShouldCompile where
-
-newtype StreamArrow a b c = Str (a [b] [c])
-
-foo = Str $ (\x -> x)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc203.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc203.hs
deleted file mode 100644
index 2579896458..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc203.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
--- Check that we can have a forall after a forall
-
-module Foo4 where
-
-type AnyE a = forall err. Either err a
-
-foo :: Monad m => AnyE (m t)
-foo = undefined
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc204.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc204.hs
deleted file mode 100644
index d95fe86480..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc204.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-{-# OPTIONS -dcore-lint #-}
-
--- The dict-bindings attached to an IPBinds
--- need not be in recursive order. This is
--- a long-standing bug, which lasted up to
--- and including GHC 6.4.2
-
-module Bug795(foo) where
-
-data Arg = E Integer | T Bool deriving (Eq, Show)
-
-foo :: Integer -> [Arg] -> IO String
-foo 1 as = do { let ?err = "my custom error"
- ; let ws = (show (firstE as))
- ; return (show (firstE as)) }
-
-firstE :: (?err :: String) => [Arg] -> Integer
-firstE = error "urk"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc205.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc205.hs
deleted file mode 100644
index 621061a3de..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc205.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TypeOperators, GADTs, KindSignatures #-}
-
--- Tests infix type constructors in GADT declarations
-
-module ShouldCompile where
-
-infix 1 `DArrowX` -- (->) has precedence 0
-
-data DArrowX :: * -> * -> * where
- First :: a `DArrowX` a' -> (a,b) `DArrowX` (a',b)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc206.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc206.hs
deleted file mode 100644
index c54618950a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc206.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
--- This one showed up a bug in pre-subsumption
-
-module ShouldCompile where
-
-class Data a where {}
-
-type GenericQ r = forall a. Data a => a -> r
-
-everything :: (r -> r -> r) -> GenericQ r
-everything k f = error "urk"
-
-
--- | Get a list of all entities that meet a predicate
-listify :: (r -> Bool) -> GenericQ [r]
-listify p = everything (++)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc207.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc207.hs
deleted file mode 100644
index a5b952176b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc207.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-
--- Tests enhanced polymorphism
-
-module ShouldCompile where
-
-foo xs = let
- f :: Eq a => [a] -> [a]
- f [] = []
- f xs | null (g [True]) = []
- | otherwise = tail (g xs)
-
- g :: Eq b => [b] -> [b]
- g [] = []
- g xs | null (f "hello") = []
- | otherwise = tail (f xs)
- in f xs
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc208.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc208.hs
deleted file mode 100644
index 0bfb1d4e81..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc208.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE ImplicitParams, Rank2Types #-}
-
--- This program failed to typecheck in an early version of
--- GHC with impredicative polymorphism, but it was fixed by
--- doing pre-subsumption in the subsumption check.
--- Trac bug #821
-
-module ShouldCompile where
-
-type PPDoc = (?env :: Int) => Char
-
-f :: Char -> PPDoc
-f = succ
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc209.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc209.hs
deleted file mode 100644
index b2073a5993..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc209.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE UnboxedTuples #-}
-
--- Unboxed tuples; cf tcfail115, tcfail120
-
-module ShouldFail where
-
-type T a = Int -> (# Int, Int #)
-
--- Should be ok
-h t = \x -> case t x of (# r, s #) -> r
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc210.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc210.hs
deleted file mode 100644
index a2cc717122..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc210.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
-module ShouldCompile where
-
-f :: forall a. a -> forall b. b -> Int
-f = error "urk"
-
--- Both these should be ok, but an early GHC 6.6 failed
-
-g1 = [ (+) :: Int -> Int -> Int, f ]
-g2 = [ f, (+) :: Int -> Int -> Int ]
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc211.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc211.hs
deleted file mode 100644
index 5bd5c34821..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc211.hs
+++ /dev/null
@@ -1,73 +0,0 @@
-{-# OPTIONS_GHC -XImpredicativeTypes -fno-warn-deprecated-flags -XScopedTypeVariables -XGADTs #-}
-
--- Here are a bunch of tests for impredicative polymorphism
--- mainly written by Dimitrios
-
-module ShouldCompile where
-
-xs :: [forall a. a->a]
-xs = [\x -> x]
-
-foo = id xs
-
--- Annotation resolves impredicative instantiation
-bar = ((:)::(forall a.a ->a) -> [forall a. a->a] -> [forall a. a ->a])
- (head foo) foo
-
--- result type resolves everything! really neat
-barr :: [forall a. a -> a]
-barr = (head foo):(tail foo)
-
-zoo = tail xs
-zooo = head xs
-
--- This is the only unsatisfactory case...annotating
--- one of the arguments does not do the job...but maybe
--- this is reasonable to expect ...
--- bar3 = ((head foo) :: forall a. a ->a) : foo
-
-data Pair a b where
- P :: a -> b -> Pair a b
-
-data List a where
- Nil :: List a
- Cons :: a -> List a -> List a
--- FromMono :: (a->a) -> List (forall a. a->a)
--- This constructor looks utterly bogus, so
--- I'm commenting it out; SLPJ 7 Jan 08
-
-f :: Int -> Pair Int Int
-f x = P x x
-
-h0 :: (forall a. a -> a) -> Int
-h0 g = let y = P (g 3) (g (P 3 4))
- in 3
-
-
-h1 (g::(forall a. a ->a))
- = let y = P (g 3) (g (P 3 4))
- in 3
-
-h2 :: (forall a. a -> a) -> Int
-h2 (g::(forall a. a ->a)) = let y = P (g 3) (g (P 3 4))
- in 3
-
-xs1 :: List (forall a. a ->a)
-xs1 = let cons = Cons :: (forall a. a ->a)
- -> List (forall a. a->a)
- -> List (forall a. a ->a)
- in cons (\x -> x) Nil
-
-xs2 :: List (forall a. a -> a)
-xs2 = (Cons :: ((forall a. a->a)
- -> List (forall a. a->a)
- -> List (forall a. a->a)))
- (\x ->x) Nil
-
-foo2 :: forall a. List a -> a -> a
-foo2 x y = y
-
-bar4 = (foo2 :: List (forall a. a->a) -> (forall a. a->a) -> (forall a.a->a))
- xs1 (\x -> x)
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc211.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/tc211.stderr
deleted file mode 100644
index 30d986c456..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc211.stderr
+++ /dev/null
@@ -1,30 +0,0 @@
-
-tc211.hs:15:22:
- Couldn't match expected type `a -> a'
- with actual type `forall a1. a1 -> a1'
- Expected type: [a -> a]
- Actual type: [forall a1. a1 -> a1]
- In the first argument of `head', namely `foo'
- In the first argument of `(:) ::
- (forall a. a -> a)
- -> [forall a. a -> a] -> [forall a. a -> a]', namely
- `(head foo)'
-
-tc211.hs:70:9:
- Couldn't match expected type `a -> a'
- with actual type `forall a1. a1 -> a1'
- Expected type: List (forall a1. a1 -> a1)
- -> (forall a1. a1 -> a1)
- -> a
- -> a
- Actual type: List (forall a1. a1 -> a1)
- -> (forall a1. a1 -> a1)
- -> forall a1. a1 -> a1
- In the expression:
- foo2 ::
- List (forall a. a -> a) -> (forall a. a -> a) -> (forall a. a -> a)
- In the expression:
- (foo2 ::
- List (forall a. a -> a)
- -> (forall a. a -> a) -> (forall a. a -> a))
- xs1 (\ x -> x)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc212.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc212.hs
deleted file mode 100644
index ad408fbdaf..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc212.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
--- This one crashed the 6.6 release candidate
-
-module ShouldCompile where
-
--- A specialise pragma with no type signature
-fac n = fac (n + 1)
-{-# SPECIALISE fac :: Int -> Int #-}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc213.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc213.hs
deleted file mode 100644
index e9e3069e7b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc213.hs
+++ /dev/null
@@ -1,49 +0,0 @@
-{-# LANGUAGE Rank2Types, ScopedTypeVariables, FlexibleInstances,
- MultiParamTypeClasses, FunctionalDependencies #-}
-
--- This tests scoped type variables, used in an expression
--- type signature in t1 and t2
-
-module Foo7 where
-import Control.Monad
-import Control.Monad.ST
-import Data.Array.MArray
-import Data.Array.ST
-import Data.STRef
-import Data.Set hiding (map,filter)
-
--- a store that allows to mark keys
-class Mark m store key | store -> key m where
- new :: (key,key) -> m store
- mark :: store -> key -> m ()
- markQ :: store -> key -> m Bool
- seen :: store -> m [ key ]
-
--- implementation 1
-instance Ord key => Mark (ST s) (STRef s (Set key)) key where
- new _ = newSTRef empty
- mark s k = modifySTRef s (insert k)
- markQ s k = liftM (member k) (readSTRef s)
- seen s = liftM elems (readSTRef s)
-
--- implementation 2
-instance Ix key => Mark (ST s) (STUArray s key Bool) key where
- new bnd = newArray bnd False
- mark s k = writeArray s k True
- markQ = readArray
- seen s = liftM (map fst . filter snd) (getAssocs s)
-
--- traversing the hull suc^*(start) with loop detection
-trav suc start i = new i >>= \ c -> mapM_ (compo c) start >> return c
- where compo c x = markQ c x >>= flip unless (visit c x)
- visit c x = mark c x >> mapM_ (compo c) (suc x)
-
--- sample graph
-f 1 = 1 : []
-f n = n : f (if even n then div n 2 else 3*n+1)
-
-t1 = runST ( (trav f [1..10] (1,52) >>= \ (s::STRef s (Set Int)) -> seen s)
- :: forall s. ST s [Int] )
-
-t2 = runST ( (trav f [1..10] (1,52) >>= \ (s::STUArray s Int Bool) -> seen s)
- :: forall s. ST s [Int] )
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc214.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc214.hs
deleted file mode 100644
index e631854a1e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc214.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-{-# OPTIONS_GHC -XImpredicativeTypes -fno-warn-deprecated-flags -XGADTs #-}
-
--- This program sent GHC 6.6 into a loop, because the fixpointing
--- of the substitution in type refinement got its in-scope-set
--- from the answer!
-
-module ShouldCompile where
-
-------------------
-data Foo a b where F :: a -> Foo () a
-
-bar :: Foo () (forall a.a) -> ()
-bar (F _) = ()
-
-------------------
-data Foo2 a where F2 :: a -> Foo2 [a]
-
-bar2 :: Foo2 [forall a.a] -> ()
-bar2 (F2 _) = ()
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc215.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc215.hs
deleted file mode 100644
index bb128b7f0c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc215.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE GADTs #-}
-{-# OPTIONS_GHC -fwarn-incomplete-patterns #-}
-
--- Test for trac #366
--- The C2 case is impossible due to the types
-
-module ShouldCompile where
-
-data T a where
- C1 :: T Char
- C2 :: T Float
-
-exhaustive :: T Char -> Char
-exhaustive C1 = ' '
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc216.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc216.hs
deleted file mode 100644
index 4a23f3df7f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc216.hs
+++ /dev/null
@@ -1,39 +0,0 @@
-{-# LANGUAGE UndecidableInstances, FlexibleInstances,
- MultiParamTypeClasses, FunctionalDependencies #-}
-
--- Test for trac #816
--- GHC's typechecker loops when trying to type this, resulting in a
--- context stack overflow.
-
-{- Maybe this should typecheck:
-
- Given: Foo x y, Bar y z
- Wanted: Foo x beta, Bar beta z
-
-If we happened to process (Foo x beta) first we
-might generate the extra equality beta~y, and we are good
-
-If we process (Bar beta z) first, we end up in an infinite
-loop, using the (Bar x z) instance repeatedly.
-
-If instead we'd had
- class (F x ~ y) => Foo x y where
- type F x
- foo :: x -> y
-
-Then after canonicalising we get
- Given: Foo x y, Bar y z, F x ~ y
- Wanted: Foo x beta, Bar beta z
--}
-
-module ShouldCompile where
-
-class Foo x y | x -> y where
- foo :: x -> y
-
-class Bar x z where
- bar :: x -> z -> Int
-
-instance (Foo x y, Bar y z) => Bar x z where
- bar x z = bar (foo x) z
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc216.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/tc216.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc216.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc217.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc217.hs
deleted file mode 100644
index c42c1eb33b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc217.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# OPTIONS_GHC -w #-}
-{-# LANGUAGE FlexibleInstances, UndecidableInstances #-}
-
-module ShouldCompile where
-
-
-import Control.Monad.Reader
-
-instance Eq (a -> b) where
- _ == _ = error "whoops"
-
-instance Show (a -> b) where
- show = const "<fun>"
-
--- This is the example from Trac #179
-foo x = show (\_ -> True)
-
--- This is the example from Trac #963
-instance (Num a, Monad m, Eq (m a), Show (m a)) => Num (m a) where
-test = 1 True
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc218.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc218.hs
deleted file mode 100644
index ea77525dfc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc218.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
-module ShouldCompile where
-
-bar :: (Show a, ?c::a) => String
--- This type should not be reported as ambiguous
--- See the call in
-bar = show ?c
-
-foo = let { ?c = 'x' } in bar
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc219.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc219.hs
deleted file mode 100644
index 638f1b6e1e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc219.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE ImplicitParams, NoMonomorphismRestriction #-}
-
-module ShouldCompile where
-
--- c.f. tc218.hs, only no type signature here
--- Instead, the NoMonomorphismRestriction language
-bar = show ?c
-
-foo = let { ?c = 'x' } in bar
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc220.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc220.hs
deleted file mode 100644
index f9f5443bc0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc220.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable #-}
-
--- See Trac #1033
-
-module Pointful' where
-
-import Data.Generics
-import Control.Monad.State
-
-data HsExp = HsWildCard deriving( Typeable, Data )
-data HsName = HsName deriving( Typeable, Data )
-
--- rename :: () -> HsExp -> State (HsName, [HsName]) HsExp
--- Type sig commented out
-rename1 = \_ -> everywhereM (mkM (\e -> case e of HsWildCard -> return e))
-
-rename2 _ = everywhereM (mkM (\e -> case e of HsWildCard -> return e))
-
-uncomb1 :: State (HsName, [HsName]) HsExp
-uncomb1 = rename1 () undefined
-
-uncomb2 :: State (HsName, [HsName]) HsExp
-uncomb2 = rename2 () undefined
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc221.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc221.hs
deleted file mode 100644
index 903b2bc3ac..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc221.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- A program very like this triggered a kind error with GHC 6.6
-
-module Foo where
-
-data PatchSeq p a b where
- Nil :: PatchSeq p a b
- U :: p a b -> PatchSeq p a b
- (:-) :: PatchSeq p a b -> PatchSeq p b c -> PatchSeq p a c
-
--- is_normal :: PatchSeq p a b -> Bool
-is_normal Nil = True
-is_normal (U _) = True
-is_normal (U _ :- _) = True
-is_normal _ = False
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc222.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc222.hs
deleted file mode 100644
index 4c418ca232..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc222.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-{-# LANGUAGE ImplicitParams, Rank2Types #-}
-
--- Tests impredivative polymorphism with left-to-right
--- flow information; see the uses of "$"
-
-module TestIP where
-
-import Control.Monad.ST
-import Data.STRef
-
--- Here's a use of runST with ($)
-foo = runST $ (do { v <- newSTRef 0; readSTRef v })
-
--- Here's a use of implicit parameters with ($)
-
-type PPDoc = (?env :: Int) => Char -> Char
-
-f :: PPDoc -> PPDoc
-f c = g $ c
-
--- Fully annotated version of f, as compiled by GHC 6.4.2
---
--- f ?env c = $ (C->C) (C->C)
--- (\(x:C->C). g ?env (\?env. x))
--- (c ?env)
---
--- The subsumption test needed from the call to $ is this:
--- ?env => (?env => C -> C) -> C -> C <= a->b
--- (?env => C -> C) -> C -> C <= a->b
--- (a) C->C <= b
--- (b) a <= (?env => C -> C)
--- And perhaps surprisingly (b) succeeds!
-
-g :: PPDoc -> PPDoc
-g d = d
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc223.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc223.hs
deleted file mode 100644
index bf04ba3910..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc223.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-module Foo where
-
--- This example suggested by Yitzchak Gale
-
-import Control.Monad.State
-import Control.Monad.Error
-
-class Error e => Game b mv e | b -> mv e where
- newBoard :: MonadState b m => m ()
- -- This method is unambiguous, because
- -- m determines b (via a fundep in MonadState)
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc224.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc224.hs
deleted file mode 100644
index 34df398e2b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc224.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# OPTIONS_GHC -XOverloadedStrings #-}
-module T where
-
-import Data.String
-
-newtype MyString = MyString String deriving (Eq, Show)
-instance IsString MyString where
- fromString = MyString
-
-greet1 :: MyString -> MyString
-greet1 "hello" = "world"
-greet1 other = other
-
-greet2 :: String -> String
-greet2 "hello" = "world"
-greet2 other = other
-
-greet3 :: (Eq s, IsString s) => s -> s
-greet3 "hello" = "world"
-greet3 other = other
-
-test = do
- print $ greet1 "hello"
- print $ greet2 "fool"
- print $ greet3 ("foo" :: String)
- print $ greet3 ("bar" :: MyString)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc225.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc225.hs
deleted file mode 100644
index 7c4875668b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc225.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- Newtype in GADT syntax
-
-module ShouldCompile where
-
-newtype Bug a where Bug :: a -> Bug a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc226.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc226.hs
deleted file mode 100644
index 1e5e28ac5b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc226.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# OPTIONS_GHC -funbox-strict-fields #-}
-
--- The combination of unboxing and a recursive newtype crashed GHC 6.6.1
--- Trac #1255
-
-module Foo where
-
-newtype Bar = Bar Bar -- Recursive
-
-data Gah = Gah { baaz :: !Bar }
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc227.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc227.hs
deleted file mode 100644
index 5a4736eccc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc227.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- Ensure that tuple instances are brought into scope
--- See Trac #1385
-
-module ShouldCompile where
-
-foo = (1,True) == (2,False)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc228.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc228.hs
deleted file mode 100644
index a3d1c2f464..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc228.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE ExistentialQuantification #-}
-
--- Without a type sig this is slightly tricky.
--- See Trac #1430
-
--- Reason: we get an implication constraint (forall a. Typeable a => Typeable b),
--- when generalising unExTypeable. We want to infer a context for the
--- whole thing of (Typeable b).
--- See Note [Inference and implication constraints] in TcSimplify
-
-
-module Foo where
-
-import Data.Typeable
-
-data ExTypeable = forall a. Typeable a => ExTypeable a
-
--- unExTypeable :: Typeable h => ExTypeable -> Maybe h
-unExTypeable (ExTypeable a) = cast a
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc229.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc229.hs
deleted file mode 100644
index bf48342ee9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc229.hs
+++ /dev/null
@@ -1,35 +0,0 @@
-
--- trac #1406: Constraint doesn't reduce in the presence of quantified
--- type variables
-
-{-# LANGUAGE FlexibleInstances, UndecidableInstances, Rank2Types,
- MultiParamTypeClasses, FunctionalDependencies #-}
-
-module Problem where
-
-data Z
-data S a
-
-class HPrefix l
-instance (NSub (S Z) ndiff, HDrop ndiff l l) => HPrefix l
-
-class NSub n1 n3 | n1 -> n3
-instance NSub Z Z
-instance NSub n1 n3 => NSub (S n1) n3
-
-class HDrop n l1 l2 | n l1 -> l2
-instance HDrop Z l l
-
-t_hPrefix :: HPrefix l => l -> ()
-t_hPrefix = undefined
-
--- In ghc 6.6.1 this works...
-thr' :: (forall r. l -> a) -> a
-thr' f = f undefined
-thP4' = thr' t_hPrefix
-
--- ... but this doesn't work...?
-thr :: (forall r. r -> a) -> a
-thr f = f undefined
-thP4 = thr t_hPrefix
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc230.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc230.hs
deleted file mode 100644
index 11877d487f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc230.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
--- Trac #1445
-
-module Bug where
-
-f :: () -> (?p :: ()) => () -> ()
-f _ _ = ()
-
-g :: (?p :: ()) => ()
-g = f () ()
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc231.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc231.hs
deleted file mode 100644
index 304748994b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc231.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-{-# OPTIONS_GHC -ddump-types #-}
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-
--- See Trac #1456
-
--- The key thing here is that foo should get the type
--- foo :: forall b s t1. (Zork s (Z [Char]) b)
--- => Q s (Z [Char]) t1 -> ST s ()
-
--- Note the quantification over 'b', which was previously
--- omitted; see Note [Important subtlety in oclose] in FunDeps
-
-
-module ShouldCompile where
-
-import GHC.ST
-
-data Q s a chain = Node s a chain
-
-data Z a = Z a
-
-s :: Q t (Z [Char]) t1 -> Q t (Z [Char]) t1
-s = undefined
-
-class Zork s a b | a -> b where
- huh :: Q s a chain -> ST s ()
-
-foo b = huh (s b)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc231.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/tc231.stderr
deleted file mode 100644
index 0d4ea6d0c3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc231.stderr
+++ /dev/null
@@ -1,22 +0,0 @@
-TYPE SIGNATURES
- foo :: forall s b chain.
- Zork s (Z [Char]) b =>
- Q s (Z [Char]) chain -> ST s ()
- s :: forall t t1. Q t (Z [Char]) t1 -> Q t (Z [Char]) t1
-TYPE CONSTRUCTORS
- data Q s a chain
- RecFlag NonRecursive
- = Node :: forall s a chain. s -> a -> chain -> Q s a chain
- Stricts: _ _ _
- FamilyInstance: none
- data Z a
- RecFlag NonRecursive
- = Z :: forall a. a -> Z a Stricts: _
- FamilyInstance: none
-COERCION AXIOMS
- axiom ShouldCompile.NTCo:T:Zork [s, a, b]
- :: ShouldCompile.T:Zork s a b
- ~
- (forall chain. Q s a chain -> ST s ())
-Dependent modules: []
-Dependent packages: [base, ghc-prim, integer-gmp]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc232.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc232.hs
deleted file mode 100644
index c9f23d45d5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc232.hs
+++ /dev/null
@@ -1,19 +0,0 @@
-
--- This one foxed the constraint solver (Lint error)
--- See Trac #1494
-
-module ShouldCompile where
-
-import Control.Monad.State
-
-newtype L m r = L (StateT Int m r)
-
-instance Monad m => Monad (L m) where
- (>>=) = undefined
- return = undefined
-
-zork :: (Monad m) => a -> L m ()
-zork = undefined
-
-mumble e = do { modify id; zork e }
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc233.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc233.hs
deleted file mode 100644
index 6421ae7a82..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc233.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-
-{-# OPTIONS_GHC -XPolymorphicComponents #-}
-
-module ShouldCompile where
-
-newtype Swizzle = MkSwizzle (forall a. Ord a => [a] -> [a])
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc234.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc234.hs
deleted file mode 100644
index 0ed46becfe..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc234.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-{-# OPTIONS_GHC -XLiberalTypeSynonyms #-}
-
-module ShouldCompile where
-
-type T a b = a
-type S m = m ()
-
-f :: S (T Int)
-f = undefined
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc235.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc235.hs
deleted file mode 100644
index feeca6a998..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc235.hs
+++ /dev/null
@@ -1,39 +0,0 @@
-{-# LANGUAGE FlexibleInstances, UndecidableInstances,
- MultiParamTypeClasses, FunctionalDependencies #-}
-
--- Trac #1564
-
-module Foo where
-
-import Text.PrettyPrint
-import Prelude hiding(head,tail)
-
-class FooBar m k l | m -> k l where
- a :: m graphtype
-
-instance FooBar [] Bool Bool where
- a = error "urk"
-
-instance FooBar Maybe Int Int where
- a = error "urk"
-
-class (Monad m)=>Gr g ep m | g -> ep where
- x:: m Int
- v:: m Int
-
-instance (Monad m, FooBar m x z) => Gr g ep m where
- x = error "urk"
- v = error "urk"
-
--- Old GHC claims for y: y :: (Monad m, FooBar m GHC.Prim.Any GHC.Prim.Any)
--- => m Int (which is wrong)
--- The uses in foo and bar show if that happens
-y () = x
-
-foo :: [Int]
-foo = y ()
-
-bar :: Maybe Int
-bar = y ()
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc236.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc236.hs
deleted file mode 100644
index c555cec38a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc236.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
-module ShouldCompile where
-
--- Check that we can have a forall to the right of a double-arrow
-
-f :: forall a. (Num a) => forall b. (Ord b) => a -> b -> b -> a
-f x y z = if y>z then x+1 else x
-
-g :: (Num a) => (Ord b) => a -> b -> b -> a
-g x y z = if y>z then x+1 else x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc237.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc237.hs
deleted file mode 100644
index 0eacf2e854..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc237.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE RankNTypes, MultiParamTypeClasses, FunctionalDependencies #-}
-
--- This one caught a bug in the implementation of functional
--- dependencies, where improvement must happen when
--- checking the call in 'test4'
-
-module ShouldCompile where
-
-newtype M s a = M a
-
-class Modular s a | s -> a
-
-wim :: forall a w. Integral a
- => a -> (forall s. Modular s a => M s w) -> w
-wim i k = error "urk"
-
-test4' :: (Modular s a, Integral a) => M s a
-test4' = error "urk"
-
-test4 = wim 4 test4'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc238.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc238.hs
deleted file mode 100644
index 92cbf23986..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc238.hs
+++ /dev/null
@@ -1,20 +0,0 @@
--- This innocuous module made GHC 6.6 have exponential behaviour
--- when doing validity checking on the synonym declarations
---
--- This lot is enough to make the test time out, I hope
-
-module ShouldCompile where
-
-data TIACons1 i r c = K (c i) (r c)
-
-type TIACons2 t x = TIACons1 t (TIACons1 t x)
-type TIACons3 t x = TIACons2 t (TIACons1 t x)
-type TIACons4 t x = TIACons2 t (TIACons2 t x)
-type TIACons7 t x = TIACons4 t (TIACons3 t x)
-type TIACons8 t x = TIACons4 t (TIACons4 t x)
-type TIACons15 t x = TIACons8 t (TIACons7 t x)
-type TIACons16 t x = TIACons8 t (TIACons8 t x)
-type TIACons31 t x = TIACons16 t (TIACons15 t x)
-type TIACons32 t x = TIACons16 t (TIACons16 t x)
-type TIACons47 t x = TIACons32 t (TIACons15 t x)
-type TIACons48 t x = TIACons32 t (TIACons16 t x)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc239.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc239.hs
deleted file mode 100644
index 81c39b790a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc239.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Trac #1072
-
-module ShouldCompile where
-
-import Tc239_Help
-
-f1 :: Show a => WrapIO e a
-f1 = return undefined
-
-f2 :: Show a => WrapIO2 a
-f2 = f1
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc240.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc240.hs
deleted file mode 100644
index 4d43092a44..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc240.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- Checks that the types of the old binder and the binder implicitly introduced by grouping are linked
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module ShouldCompile where
-
-import Data.List(inits)
-
-foo :: [[[Int]]]
-foo = [ x
- | x <- [1..10]
- , then group using inits
- , then group using inits
- ] \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc241.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc241.hs
deleted file mode 100644
index 8dca34314a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc241.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# OPTIONS_GHC -XGADTs -XRankNTypes -O1 #-}
--- Trac #2018
-
-module Bug1 where
-
- data A a where
- MkA :: A ()
-
- class C w where
- f :: forall a . w a -> Maybe a
-
- instance C A where
- f MkA = Just ()
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc242.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc242.hs
deleted file mode 100644
index eda338bc8a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc242.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
-module Bug where
-
-f1 :: forall a. [a] -> [a]
-f1 (x:xs) = xs ++ [ x :: a ] -- OK
-
-f2 :: forall a. [a] -> [a]
-f2 = \(x:xs) -> xs ++ [ x :: a ] -- OK
-
--- This pair is a cut-down version of Trac #2030
-isSafe alts = isSafeAlts alts
-
-isSafeAlts :: forall m . Int -> m Int
-isSafeAlts x = error "urk"
- where
- isSafeAlt :: Int -> m Int
- isSafeAlt alt = isSafe `seq` error "urk"
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc243.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc243.hs
deleted file mode 100644
index 10bf4d1b52..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc243.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-{-# OPTIONS_GHC -Wall #-}
-
-module Bug where
-
--- When we warn about this, we give a warning saying
--- Inferred type: (.+.) :: forall a. a
--- but we used to not print the parentheses.
-
-(.+.) = undefined
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc243.stderr b/testsuite/tests/ghc-regress/typecheck/should_compile/tc243.stderr
deleted file mode 100644
index 10fcab9a71..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc243.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-tc243.hs:10:1:
- Warning: Top-level binding with no type signature:
- (.+.) :: forall a. a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc244.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc244.hs
deleted file mode 100644
index 4c5468809a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc244.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE TypeFamilies, GADTs #-}
-
--- Tests record update in the presence of
--- existentials, GADTs, type families
-
-module Rec where
-
------------------ Existential
-data S a where
- S1 :: { fs1 :: a, fs2 :: b } -> S a
- S2 :: { fs1 :: a } -> S a
-
-updS s x = s { fs1=x }
-
------------------- GADT
-data T a b where
- T1 :: { ft1 :: a, ft2 :: c, ft3 :: d } -> T a Int
- T2 :: { ft1 :: a, ft3 :: c } -> T a Int
- T3 :: T Int b
-
-f :: T a1 b -> a2 -> T a2 b
-f x v = x { ft1 = v }
-
------------------- Type family
-data family R a
-data instance R (a,b) where
- R1 :: { fr1 :: a, fr2 :: b, fr3 :: c } -> R (a,b)
- R2 :: { fr1 :: a, fr3 :: c } -> R (a,b)
-
-updR r x = r { fr1=x }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc245.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc245.hs
deleted file mode 100644
index abe45d9537..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc245.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Test for trac #2937
-
-{-# LANGUAGE GADTs, TypeFamilies #-}
-
-module Tc245 where
-
-import Tc245_A
-
-instance Foo Int where
- data Bar Int x where
- Baz :: Bar Int String
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc245.stdout b/testsuite/tests/ghc-regress/typecheck/should_compile/tc245.stdout
deleted file mode 100644
index 00beb40f5f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc245.stdout
+++ /dev/null
@@ -1,3 +0,0 @@
-[1 of 2] Compiling Tc245_A ( Tc245_A.hs, Tc245_A.o )
-[2 of 2] Compiling Tc245 ( tc245.hs, tc245.o )
-[2 of 2] Compiling Tc245 ( tc245.hs, tc245.o )
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc246.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc246.hs
deleted file mode 100644
index 2b9429b36b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc246.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- Test for trac #3066
--- GHC with optimisation off would go into an infinite loop
-
-module Tc246 () where
-
-newtype Foo = Foo Foo
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc247.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc247.hs
deleted file mode 100644
index 55c23f92bd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc247.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE EmptyDataDecls, KindSignatures #-}
-
-module ShouldCompile where
-
--- Various forms of empty data type declarations
-
-data T1
-
-data T2 where
-
-data T3 :: * -> *
-
-data T4 a :: * -> *
-
-data T5 a :: * -> * where
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc248.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc248.hs
deleted file mode 100644
index 1fde336bb0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc248.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE ExplicitForAll #-}
-
-module ShouldCompile where
-
-identity :: forall a. a -> a
-identity x = x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/tc249.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/tc249.hs
deleted file mode 100644
index c16c11e118..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/tc249.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Ctx where
-
-f :: (Monad m, Eq (m a)) => a -> m a -> Bool
-f x y = (return x == y)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_compile/twins.hs b/testsuite/tests/ghc-regress/typecheck/should_compile/twins.hs
deleted file mode 100644
index 6e46f860db..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_compile/twins.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE RankNTypes, LiberalTypeSynonyms #-}
-
--- This test checks that deep skolemisation and deep
--- instanatiation work right. A buggy prototype
--- of GHC 7.0, where the type checker generated wrong
--- code, sent applyTypeToArgs into a loop.
-
-module Twins where
-
-import Data.Data
-
-type GenericQ r = forall a. Data a => a -> r
-type GenericM m = forall a. Data a => a -> m a
-
-gzip :: GenericQ (GenericM Maybe) -> GenericQ (GenericM Maybe)
-gzip f x y
- = f x y
- `orElse`
- if toConstr x == toConstr y
- then gzipWithM (gzip f) x y
- else Nothing
-
-gzipWithM :: Monad m => GenericQ (GenericM m) -> GenericQ (GenericM m)
-gzipWithM = error "urk"
-
-orElse :: Maybe a -> Maybe a -> Maybe a
-orElse = error "urk" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/FailDueToGivenOverlapping.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/FailDueToGivenOverlapping.hs
deleted file mode 100644
index 505eddcad1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/FailDueToGivenOverlapping.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE FlexibleContexts #-}
-
-module FailDueToGivenOverlapping where
-
-class C a where
-
-class D a where
- dop :: a -> ()
-
-
-instance C a => D [a]
-
--- should succeed since we can't learn anything more for 'a'
-foo :: (C a, D [Int]) => a -> ()
-foo x = dop [x]
-
-
-class E a where
- eop :: a -> ()
-
-instance E [a] where
- eop = undefined
-
--- should fail since we can never be sure that we learnt
--- everything about the free unification variable.
-bar :: E [Int] => () -> ()
-bar _ = eop [undefined]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/FailDueToGivenOverlapping.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/FailDueToGivenOverlapping.stderr
deleted file mode 100644
index 10db900878..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/FailDueToGivenOverlapping.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-FailDueToGivenOverlapping.hs:27:9:
- Overlapping instances for E [t0]
- arising from a use of `eop'
- Matching instances:
- instance E [a] -- Defined at FailDueToGivenOverlapping.hs:21:10-14
- Matching givens (or their superclasses):
- (E [Int])
- bound by the type signature for bar :: E [Int] => () -> ()
- at FailDueToGivenOverlapping.hs:27:1-23
- (The choice depends on the instantiation of `t0')
- In the expression: eop [undefined]
- In an equation for `bar': bar _ = eop [undefined]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/FrozenErrorTests.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/FrozenErrorTests.hs
deleted file mode 100644
index bea5495518..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/FrozenErrorTests.hs
+++ /dev/null
@@ -1,56 +0,0 @@
-{-# LANGUAGE RankNTypes, GADTs, TypeFamilies #-}
-module Test where
-
-
-data T a where
- MkT :: a -> T a
- MkT2 :: forall a b. (b ~ T b) => b -> T a
- MkT3 :: forall a. (a ~ Bool) => T a
--- Occurs checks in givens
-foo :: forall a. (a ~ T a) => a -> a
-foo x = x
-
-blah x = case x of
- MkT2 y -> ()
-
--- Mismatches in givens
-bloh :: T Int -> ()
-bloh x = case x of
- MkT3 -> ()
-
-type family F a b
-type family G a b
-type instance F a Bool = a
-type instance G a Char = a
-
-goo1 :: forall a b. (F a b ~ [a]) => b -> a -> a
-goo1 = undefined
-
-goo2 :: forall a. G a Char ~ [Int] => a -> a
-goo2 = undefined
-
--- Just an occurs check
-test1 = goo1 False undefined
-
--- A frozen occurs check, now transformed to decomposition error
-test2 = goo2 (goo1 False undefined)
-test3 = goo1 False (goo2 undefined)
-
-
--- A frozen occurs check, now transformed to both a decomposition and occurs check
-data M a where
- M :: M a
-data T2 a b where
- T2 :: T2 a b
-
-goo3 :: forall a b. F a b ~ T2 (M a) a => b -> a -> a
-goo3 = undefined
-
-goo4 :: forall a c. G a Char ~ T2 (T2 c c) c => a -> a
-goo4 = undefined
-
-test4 = goo4 (goo3 False undefined)
-test5 = goo3 False (goo4 undefined)
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/FrozenErrorTests.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/FrozenErrorTests.stderr
deleted file mode 100644
index de552764d1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/FrozenErrorTests.stderr
+++ /dev/null
@@ -1,73 +0,0 @@
-
-FrozenErrorTests.hs:11:1:
- Couldn't match type `a' with `T a'
- `a' is a rigid type variable bound by
- the type signature for foo :: a ~ T a => a -> a
- at FrozenErrorTests.hs:11:1
- Inaccessible code in
- the type signature for foo :: a ~ T a => a -> a
-
-FrozenErrorTests.hs:14:12:
- Couldn't match type `b' with `T b'
- `b' is a rigid type variable bound by
- a pattern with constructor
- MkT2 :: forall a b. b ~ T b => b -> T a,
- in a case alternative
- at FrozenErrorTests.hs:14:12
- Inaccessible code in
- a pattern with constructor
- MkT2 :: forall a b. b ~ T b => b -> T a,
- in a case alternative
- In the pattern: MkT2 y
- In a case alternative: MkT2 y -> ()
- In the expression: case x of { MkT2 y -> () }
-
-FrozenErrorTests.hs:19:12:
- Couldn't match type `Int' with `Bool'
- Inaccessible code in
- a pattern with constructor
- MkT3 :: forall a. a ~ Bool => T a,
- in a case alternative
- In the pattern: MkT3
- In a case alternative: MkT3 -> ()
- In the expression: case x of { MkT3 -> () }
-
-FrozenErrorTests.hs:33:9:
- Occurs check: cannot construct the infinite type: a0 = [a0]
- In the expression: goo1 False undefined
- In an equation for `test1': test1 = goo1 False undefined
-
-FrozenErrorTests.hs:36:15:
- Couldn't match type `[Int]' with `[[Int]]'
- In the first argument of `goo2', namely `(goo1 False undefined)'
- In the expression: goo2 (goo1 False undefined)
- In an equation for `test2': test2 = goo2 (goo1 False undefined)
-
-FrozenErrorTests.hs:37:9:
- Couldn't match type `Int' with `[Int]'
- In the expression: goo1 False (goo2 undefined)
- In an equation for `test3': test3 = goo1 False (goo2 undefined)
-
-FrozenErrorTests.hs:52:15:
- Couldn't match type `T2 (T2 c0 c0) c0'
- with `T2 (M (T2 (T2 c0 c0) c0)) (T2 (T2 c0 c0) c0)'
- In the first argument of `goo4', namely `(goo3 False undefined)'
- In the expression: goo4 (goo3 False undefined)
- In an equation for `test4': test4 = goo4 (goo3 False undefined)
-
-FrozenErrorTests.hs:53:9:
- Occurs check: cannot construct the infinite type:
- c0 = T2 (T2 c0 c0) c0
- In the expression: goo3 False (goo4 undefined)
- In an equation for `test5': test5 = goo3 False (goo4 undefined)
-
-FrozenErrorTests.hs:53:9:
- Occurs check: cannot construct the infinite type:
- c0 = T2 (T2 c0 c0) c0
- In the expression: goo3 False (goo4 undefined)
- In an equation for `test5': test5 = goo3 False (goo4 undefined)
-
-FrozenErrorTests.hs:53:9:
- Couldn't match type `T2 c0' with `M'
- In the expression: goo3 False (goo4 undefined)
- In an equation for `test5': test5 = goo3 False (goo4 undefined)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/IPFail.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/IPFail.hs
deleted file mode 100644
index 1c897eb8cb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/IPFail.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
-module IPFail where
-
-f0 :: (?x :: Int) => () -> Bool
-f0 () = let ?x = 5 in ?x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/IPFail.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/IPFail.stderr
deleted file mode 100644
index 7d0d8980af..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/IPFail.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-IPFail.hs:6:18:
- Could not deduce (Num Bool) arising from the literal `5'
- from the context (?x::Int)
- bound by the type signature for f0 :: (?x::Int) => () -> Bool
- at IPFail.hs:6:1-24
- Possible fix:
- add (Num Bool) to the context of
- the type signature for f0 :: (?x::Int) => () -> Bool
- or add an instance declaration for (Num Bool)
- In the expression: 5
- In the expression: let ?x = 5 in ?x
- In an equation for `f0': f0 () = let ?x = 5 in ?x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/LongWayOverlapping.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/LongWayOverlapping.hs
deleted file mode 100644
index 4a79e69ed6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/LongWayOverlapping.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-{-# LANGUAGE TypeFamilies, MultiParamTypeClasses
- , FlexibleContexts, FlexibleInstances, UndecidableInstances
- , TypeSynonymInstances, GeneralizedNewtypeDeriving
- , OverlappingInstances
- #-}
-
-module LongWayOverlapping where
-
-
-class M a where
-
-class M a => XMLG a
-
-instance M [a]
-
-instance XMLG [m] where -- Generates an implication wanted: forall m. M [m]
-
-class M a => EmbAsChild a b where
- emb :: b -> [a]
-
-
-instance EmbAsChild [Char] Bool where
- emb _ = emb 'c'
-
-
- -- This one generates an unsolvable EmbAsChild [Char] Char
-
--- Original problem is:
--- [w] EmbAsChild [Char] Char
--- [w] forall m. M [m]
--- Now, by converting the wanted to given and pushing it inside the implication
--- we have the following:
--- [g] EmbAsChild [Char] Char
--- [g] M [Char] <~~ The superclass of the first given!
--- [w] M [m]
--- And now OOPS we can't solve M [m] because we are supposed to delay our choice
--- as much as possible!
-
--- DV:
--- One possible solution is to STOP PUSHING wanteds as givens inside an implication
--- in a checking context. I think it's the best thing to do and I've implemented it.
-
--- In inference mode that's ok and the error message is very comprehensible, see
--- test case PushedInFlatsOverlap.hs
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/LongWayOverlapping.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/LongWayOverlapping.stderr
deleted file mode 100644
index 7cc45560c9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/LongWayOverlapping.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-LongWayOverlapping.hs:23:11:
- No instance for (EmbAsChild [Char] Char)
- arising from a use of `emb'
- Possible fix:
- add an instance declaration for (EmbAsChild [Char] Char)
- In the expression: emb 'c'
- In an equation for `emb': emb _ = emb 'c'
- In the instance declaration for `EmbAsChild [Char] Bool'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/Makefile b/testsuite/tests/ghc-regress/typecheck/should_fail/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/SCLoop.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/SCLoop.hs
deleted file mode 100644
index f3f6a20bc4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/SCLoop.hs
+++ /dev/null
@@ -1,55 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances #-}
-
--- This is a superclass loop test
--- It should fail with a type error, but
--- it's all too easy to succeed with a bogus recursive dictionary
-
-module SCLoop where
-
-class SC a where
- f :: a -> ()
-
-class SC a => A a b where
- op :: a -> b -> ()
- op x _ = f x
-
-instance A a b => A a [b]
--- dfun1 :: \d::(A a b) -> DA (sc d)
-
-instance SC a => A a (Maybe b)
--- dfun2 :: \d::SC a -> DA d
-
-foo = op () ([Just True])
-
-{- Here is the explanation:
-~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
-[Wanted] d1 : (A () [Maybe Bool])
-~~~> d1 := dfun1 d2
-[Wanted] d2 : (A () (Maybe Bool))
-~~~> d2 := dfun2 d3
-[Wanted] d3 : SC ()
-[Derived] d4 : SC () d4 := sc d1
-~~~>
- d3 := sc d1
- isGoodRecEv will check:
- d3 == sc d1
- == sc (dfun1 d2)
- == sc (dfun1 (dfun2 d3) ==> PASSES! (gravity = 1)
- This is BAD BAD BAD, because we get a loop
-
- If we had inlined the definitions:
- d3 == sc d1
- == sc (DA (sc d2))
- == sc (DA (sc (DA d3))) ==> DOES NOT! (gravity = 0)
-
-We should get "No instance for SC ()"
--}
-
-
-
-
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/SCLoop.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/SCLoop.stderr
deleted file mode 100644
index 277b84a7b9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/SCLoop.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-SCLoop.hs:22:7:
- No instance for (SC ())
- arising from a use of `op'
- Possible fix: add an instance declaration for (SC ())
- In the expression: op () ([Just True])
- In an equation for `foo': foo = op () ([Just True])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T1595.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T1595.hs
deleted file mode 100644
index fae0192c1e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T1595.hs
+++ /dev/null
@@ -1,13 +0,0 @@
---
--- Check that we produce only one error message for each type
--- signature. See ticket #1595.
---
-
-module T1595 where
-
-foo1, bar1 :: DoesNotExist
-foo1 = undefined
-bar1 = undefined
-
-class Test a where
- foo2, bar2 :: a -> DoesNotExist
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T1595.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T1595.stderr
deleted file mode 100644
index d3f665c15a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T1595.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-T1595.hs:8:15:
- Not in scope: type constructor or class `DoesNotExist'
-
-T1595.hs:13:22:
- Not in scope: type constructor or class `DoesNotExist'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T1633.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T1633.hs
deleted file mode 100644
index 3fff8f2540..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T1633.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- This just tests what the kind error message looks like
--- Trac #1633
-
-module T1633 where
-
-instance Functor Bool
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T1633.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T1633.stderr
deleted file mode 100644
index 8b3e8fd8a2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T1633.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-T1633.hs:6:18:
- Kind mis-match
- The first argument of `Functor' should have kind `* -> *',
- but `Bool' has kind `*'
- In the instance declaration for `Functor Bool'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T1899.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T1899.hs
deleted file mode 100644
index a49b647be7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T1899.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- Test for Trac #1899
-
-module T1899 where
-
- data Constraint a = Formula [[Proposition a]]
- data Proposition a = Prop a
- | Auxiliary [Proposition a]
-
- transRHS :: [a] -> Int -> Constraint a
- transRHS varSet b =
- if b < 0
- then Formula [[Prop (Auxiliary undefined)]]
- else Formula $
- [[Prop (Auxiliary varSet),
- Prop (Auxiliary varSet)]
- ]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T1899.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T1899.stderr
deleted file mode 100644
index 4769b2d96c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T1899.stderr
+++ /dev/null
@@ -1,15 +0,0 @@
-
-T1899.hs:13:13:
- Couldn't match type `a' with `Proposition a0'
- `a' is a rigid type variable bound by
- the type signature for transRHS :: [a] -> Int -> Constraint a
- at T1899.hs:10:2
- Expected type: Constraint a
- Actual type: Constraint (Proposition a0)
- In the expression:
- Formula $ [[Prop (Auxiliary varSet), Prop (Auxiliary varSet)]]
- In the expression:
- if b < 0 then
- Formula [[Prop (Auxiliary undefined)]]
- else Formula
- $ [[Prop (Auxiliary varSet), Prop (Auxiliary varSet)]]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2126.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T2126.hs
deleted file mode 100644
index 4ef3037512..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2126.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- Trac #2126
-
-module Foo where
-
-newtype X
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2126.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T2126.stderr
deleted file mode 100644
index 2facb189a9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2126.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-T2126.hs:5:1:
- A newtype must have exactly one constructor, but `X' has none
- In the newtype declaration for `X'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2307.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T2307.hs
deleted file mode 100644
index 321c2d5641..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2307.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- OverlappingInstances, UndecidableInstances,
- IncoherentInstances,
- FlexibleInstances #-}
-
--- Trac #2307
-
-module ShouldFail where
-
- class C a b c | a -> b, a -> c
- instance C Int (Maybe String) Float
- instance C Int (Maybe Bool) Double
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2307.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T2307.stderr
deleted file mode 100644
index 0ca572dbd1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2307.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-T2307.hs:11:11:
- Functional dependencies conflict between instance declarations:
- instance [incoherent] C Int (Maybe String) Float
- -- Defined at T2307.hs:11:11-36
- instance [incoherent] C Int (Maybe Bool) Double
- -- Defined at T2307.hs:12:11-37
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2414.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T2414.hs
deleted file mode 100644
index fba628db27..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2414.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- Test for Trac #2414
--- Should provoke an occurs-check error
-
-module ShouldFail where
-
-unfoldr :: (b -> Maybe (Bool, b)) -> Bool
-unfoldr = unfoldr
-
-f = unfoldr Just
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2414.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T2414.stderr
deleted file mode 100644
index 030bf6e52a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2414.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-T2414.hs:9:13:
- Occurs check: cannot construct the infinite type: b0 = (Bool, b0)
- Expected type: b0 -> Maybe (Bool, b0)
- Actual type: b0 -> Maybe b0
- In the first argument of `unfoldr', namely `Just'
- In the expression: unfoldr Just
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2538.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T2538.hs
deleted file mode 100644
index 11d9c479b5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2538.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
--- Trac #2538
-module ShouldFail where
-import Data.Ix
-
-f :: (Eq a => a -> a) -> Int
-f = error "urk"
-
-g :: [Eq a => a -> a] -> Int
-g = error "urk"
-
-h :: Ix (Eq a => a -> a) => Int
-h = error "urk"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2538.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T2538.stderr
deleted file mode 100644
index e4e9a7551a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2538.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-
-T2538.hs:6:1:
- Illegal polymorphic or qualified type: Eq a => a -> a
- Perhaps you intended to use -XRankNTypes or -XRank2Types
- In the type signature for `f': f :: (Eq a => a -> a) -> Int
-
-T2538.hs:9:1:
- Illegal polymorphic or qualified type: Eq a => a -> a
- Perhaps you intended to use -XImpredicativeTypes
- In the type signature for `g': g :: [Eq a => a -> a] -> Int
-
-T2538.hs:12:1:
- Illegal polymorphic or qualified type: Eq a => a -> a
- In the type signature for `h': h :: Ix (Eq a => a -> a) => Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2688.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T2688.hs
deleted file mode 100644
index 6897e07b76..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2688.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# OPTIONS_GHC -XFunctionalDependencies -XMultiParamTypeClasses #-}
-
-module T2688 where
-
-class VectorSpace v s | v -> s where
- (*^) :: s -> v -> v
- (^/) :: v -> s -> v
- v ^/ s = v *^ (1/s)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2688.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T2688.stderr
deleted file mode 100644
index de91620078..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2688.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-T2688.hs:8:22:
- Could not deduce (s ~ v)
- from the context (VectorSpace v s)
- bound by the class declaration for `VectorSpace'
- at T2688.hs:(5,1)-(8,23)
- `s' is a rigid type variable bound by
- the class declaration for `VectorSpace' at T2688.hs:5:21
- `v' is a rigid type variable bound by
- the class declaration for `VectorSpace' at T2688.hs:5:19
- In the second argument of `(/)', namely `s'
- In the second argument of `(*^)', namely `(1 / s)'
- In the expression: v *^ (1 / s)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2714.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T2714.hs
deleted file mode 100644
index 80f838c37c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2714.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
-
--- Trac #2714
-
-module T2714 where
-
-f :: ((a -> b) -> b) -> (forall c. c -> a)
-f = ffmap
-
-ffmap :: Functor f => (p->q) -> f p -> f q
-ffmap = error "urk"
-
-{-
- a ~ f q
- c ~ f p
- (p->q) ~ (a->b) -> b
-
- =>
- a ~ f q
- c ~ f p
- p ~ a->b
- q ~ b
- =>
- a ~ f b
- c ~ f (a->b)
--} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2714.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T2714.stderr
deleted file mode 100644
index da355fc738..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2714.stderr
+++ /dev/null
@@ -1,22 +0,0 @@
-
-T2714.hs:8:5:
- Couldn't match type `a' with `f0 b'
- `a' is a rigid type variable bound by
- the type signature for f :: ((a -> b) -> b) -> forall c. c -> a
- at T2714.hs:8:1
- Expected type: ((a -> b) -> b) -> c -> a
- Actual type: ((a -> b) -> b) -> f0 (a -> b) -> f0 b
- In the expression: ffmap
- In an equation for `f': f = ffmap
-
-T2714.hs:8:5:
- Couldn't match type `c' with `f0 (f0 b -> b)'
- `c' is a rigid type variable bound by
- the type signature for f :: ((a -> b) -> b) -> c -> a
- at T2714.hs:8:1
- Expected type: c
- Actual type: f0 (a -> b)
- Expected type: ((a -> b) -> b) -> c -> a
- Actual type: ((a -> b) -> b) -> f0 (a -> b) -> f0 b
- In the expression: ffmap
- In an equation for `f': f = ffmap
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2806.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T2806.hs
deleted file mode 100644
index a130d49528..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2806.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-
-{-# LANGUAGE MagicHash #-}
-{-# OPTIONS_GHC -Werror #-}
-
--- Trac #2806
-
-module Foo where
-
-import GHC.Base
-
-foo :: Int
-foo = 3
- where (I# _x) = 4
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2806.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T2806.stderr
deleted file mode 100644
index ebbffb29eb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2806.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-T2806.hs:13:11:
- Warning: Pattern bindings containing unlifted types should use an outermost bang pattern:
- (I# _x) = 4
- In an equation for `foo':
- foo
- = 3
- where
- (I# _x) = 4
-
-<no location info>:
-Failing due to -Werror.
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2846b.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T2846b.hs
deleted file mode 100644
index 87468df87e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2846b.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE ImpredicativeTypes, FlexibleContexts #-}
-module T2846 where
-
-f :: String
-f = show ([1,2,3] :: [Num a => a])
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2846b.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T2846b.stderr
deleted file mode 100644
index 79527c15b7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2846b.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-T2846b.hs:5:5:
- No instance for (Show (Num a0 => a0))
- arising from a use of `show'
- Possible fix: add an instance declaration for (Show (Num a0 => a0))
- In the expression: show ([1, 2, 3] :: [Num a => a])
- In an equation for `f': f = show ([1, 2, 3] :: [Num a => a])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2994.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T2994.hs
deleted file mode 100644
index cd09745aba..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2994.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses #-}
-
--- Trac #2994
-
-module T2994 where
-
-class MonadReader a b
-
-newtype Reader' r a = Reader' (r -> a)
-
-instance MonadReader Int
-
-instance MonadReader (Reader' r)
-
-instance MonadReader r r (Reader' r)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T2994.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T2994.stderr
deleted file mode 100644
index 7eab543ad4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T2994.stderr
+++ /dev/null
@@ -1,15 +0,0 @@
-
-T2994.hs:11:10:
- `MonadReader Int' is not applied to enough type arguments
- Expected kind `*', but `MonadReader Int' has kind `* -> *'
- In the instance declaration for `MonadReader Int'
-
-T2994.hs:13:23:
- `Reader' r' is not applied to enough type arguments
- The first argument of `MonadReader' should have kind `*',
- but `Reader' r' has kind `* -> *'
- In the instance declaration for `MonadReader (Reader' r)'
-
-T2994.hs:15:10:
- `MonadReader' is applied to too many type arguments
- In the instance declaration for `MonadReader r r (Reader' r)'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3102.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T3102.hs
deleted file mode 100644
index dd5abb25e1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3102.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# OPTIONS -XImplicitParams -XRankNTypes #-}
- module Bug where
-
-t :: forall a. ((?p :: Int) => a) -> String
-t _ = "Hello"
-
-f :: (forall a. a -> String) -> Int
-f _ = 3
-
-result :: Int
-result = f t
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3102.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T3102.stderr
deleted file mode 100644
index cf3483870d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3102.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-T3102.hs:11:12:
- Couldn't match type `a' with `(?p::Int) => a0'
- `a' is a rigid type variable bound by
- a type expected by the context: a -> String at T3102.hs:11:10
- Expected type: a -> String
- Actual type: ((?p::Int) => a0) -> String
- In the first argument of `f', namely `t'
- In the expression: f t
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3155.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T3155.hs
deleted file mode 100644
index 3a4c0d2f77..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3155.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE GADTs, TypeOperators #-}
-module T3155 where
-
--- Test Trac #3155
--- Gave bad error message in GHC 6.10
-
-data Any s where
- Any :: s ix -> ix -> Any s
-
-data AnyR s r where
- AnyR :: s ix -> r ix -> AnyR s r
-
-unR :: (forall ix. r ix -> ix) -> AnyR s r -> Any s
-unR f (AnyR ix rix) = Any ix (f rix)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3155.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T3155.stderr
deleted file mode 100644
index d26bb6dd08..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3155.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T3155.hs:13:18:
- Illegal symbol '.' in type
- Perhaps you intended -XRankNTypes or similar flag
- to enable explicit-forall syntax: forall <tvs>. <type>
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3176.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T3176.hs
deleted file mode 100644
index 0235ad712f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3176.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE ExistentialQuantification #-}
-
--- Trac #3176
-
-module Foo where
-
-data ES = forall a. Show a => ES {unES:: a}
-
-smallPrintES f t = show $ unES $ f t
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3176.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T3176.stderr
deleted file mode 100644
index 393880367d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3176.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-T3176.hs:9:27:
- Cannot use record selector `unES' as a function due to escaped type variables
- Probable fix: use pattern-matching syntax instead
- In the expression: unES
- In the second argument of `($)', namely `unES $ f t'
- In the expression: show $ unES $ f t
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3323.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T3323.hs
deleted file mode 100644
index 22ed520806..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3323.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- Trac #3323
-module T3323 where
-
-import GHC.IO.Handle.Types
-import GHC.IO.Handle.Internals
-
--- The point here is that Handle__ is an existential type,
--- so the haDevice field can't be updated.
---
--- The bug was that, haDevice is a "naughty" selector, we
--- couldn't find its type constructor.
---
--- This only happened when you go via an interface file, which is why
--- this test imports an existential. To make the test more
--- standalone, you'd need to make it a two-module test
-
-f :: Handle__ -> Handle__
-f h = h {haDevice=undefined}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3323.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T3323.stderr
deleted file mode 100644
index d7c4c26681..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3323.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T3323.hs:18:7:
- Record update for insufficiently polymorphic field: haDevice :: dev
- In the expression: h {haDevice = undefined}
- In an equation for `f': f h = h {haDevice = undefined}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3406.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T3406.hs
deleted file mode 100644
index 3337f3b135..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3406.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
-
--- Trac #3406
--- A pattern signature that discards the bound variables
-
-module T3406 where
-
-type ItemColID a b = Int -- Discards a,b
-
-get :: ItemColID a b -> a -> ItemColID a b
-get (x :: ItemColID a b) = x :: ItemColID a b \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3406.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T3406.stderr
deleted file mode 100644
index ceba706f87..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3406.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-T3406.hs:11:6:
- The type variables `a, b'
- should be bound by the pattern signature `ItemColID a b'
- but are actually discarded by a type synonym
- To fix this, expand the type synonym
- [Note: I hope to lift this restriction in due course]
- In the pattern: x :: ItemColID a b
- In an equation for `get':
- get (x :: ItemColID a b) = x :: ItemColID a b
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3468.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T3468.hs
deleted file mode 100644
index ac9aef557a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3468.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE ExistentialQuantification #-}
-
-module T3468 where
-
-import {-# SOURCE #-} T3468
-
-data Tool d = forall a r . F a
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3468.hs-boot b/testsuite/tests/ghc-regress/typecheck/should_fail/T3468.hs-boot
deleted file mode 100644
index 5c7704fab5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3468.hs-boot
+++ /dev/null
@@ -1,4 +0,0 @@
-module T3468 where
-
-data Tool
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3468.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T3468.stderr
deleted file mode 100644
index 020d10457a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3468.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-T3468.hs-boot:3:6:
- Type constructor `Tool' has conflicting definitions in the module and its hs-boot file
- Main module: data Tool d
- RecFlag Recursive
- = F :: forall d a r. a -> Tool d Stricts: _
- FamilyInstance: none
- Boot file: data Tool
- RecFlag NonRecursive
- {- abstract -}
- FamilyInstance: none
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3540.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T3540.hs
deleted file mode 100644
index 364193ceb5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3540.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE ImplicitParams, TypeFamilies #-}
-module T3540 where
-
-thing :: (a~Int)
-thing = undefined
-
-thing1 :: Int -> (a~Int)
-thing1 = undefined
-
-thing2 :: (a~Int) -> Int
-thing2 = undefined
-
-thing3 :: (?dude :: Int) -> Int
-thing3 = undefined
-
-thing4:: (Eq a) -> Int
-thing4 = undefined \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3540.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T3540.stderr
deleted file mode 100644
index 8708dffa5d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3540.stderr
+++ /dev/null
@@ -1,25 +0,0 @@
-
-T3540.hs:4:12:
- Predicate used as a type: a ~ Int
- In the type signature for `thing':
- thing :: a ~ Int
-
-T3540.hs:7:20:
- Predicate used as a type: a ~ Int
- In the type signature for `thing1':
- thing1 :: Int -> (a ~ Int)
-
-T3540.hs:10:13:
- Predicate used as a type: a ~ Int
- In the type signature for `thing2':
- thing2 :: (a ~ Int) -> Int
-
-T3540.hs:13:12:
- Predicate used as a type: ?dude :: Int
- In the type signature for `thing3':
- thing3 :: (?dude :: Int) -> Int
-
-T3540.hs:16:11:
- Class `Eq' used as a type
- In the type signature for `thing4':
- thing4 :: (Eq a) -> Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3613.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T3613.hs
deleted file mode 100644
index 9969d63707..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3613.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- c.f Trac #3613
-
-module T3613 where
-
-import Control.Monad
-
-foo :: Maybe ()
-foo = return ()
-
-bar :: IO ()
-bar = return ()
-
-fun1 = let fooThen m = foo>> m
- in fooThen (bar>> undefined)
-
-fun2 = let fooThen m = foo>> m
- in fooThen (do {bar; undefined})
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3613.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T3613.stderr
deleted file mode 100644
index feb46416df..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3613.stderr
+++ /dev/null
@@ -1,17 +0,0 @@
-
-T3613.hs:14:20:
- Couldn't match expected type `Maybe a0' with actual type `IO ()'
- In the first argument of `(>>)', namely `bar'
- In the first argument of `fooThen', namely `(bar >> undefined)'
- In the expression: fooThen (bar >> undefined)
-
-T3613.hs:17:24:
- Couldn't match expected type `Maybe a0' with actual type `IO ()'
- In a stmt of a 'do' block: bar
- In the first argument of `fooThen', namely
- `(do { bar;
- undefined })'
- In the expression:
- fooThen
- (do { bar;
- undefined })
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3950.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T3950.hs
deleted file mode 100644
index 127a82b04b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3950.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
-module T3950 where
-
--- Id :: (* -> * -> *) -> * -> * -> *
-data Id p x y = Id (p x y)
-
--- Sealed :: (* -> *) -> *
-data Sealed p where
- Sealed :: p x -> Sealed p
-
--- w :: (* -> * -> *) -> *
--- Id p :: * -> * -> *
-rp :: Bool -> Maybe (w (Id p))
-rp _ = Just rp'
- where rp' :: Sealed (Id p x)
- rp' = undefined
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3950.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T3950.stderr
deleted file mode 100644
index 1c326ad43e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3950.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-T3950.hs:15:13:
- Couldn't match expected type `Id p' with actual type `Id p x0'
- Expected type: w (Id p)
- Actual type: Sealed (Id p x0)
- In the first argument of `Just', namely `rp''
- In the expression: Just rp'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3966.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T3966.hs
deleted file mode 100644
index 7b1184c710..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3966.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# OPTIONS_GHC -Werror -O #-}
--- Add -O so the UNPACK has some effect
-
-module T3966 where
-
-data Foo a b = Foo {-# UNPACK #-} !(a -> b)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T3966.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T3966.stderr
deleted file mode 100644
index b24087ff8b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T3966.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-T3966.hs:6:16:
- Warning: Ignoring unusable UNPACK pragma on the
- first argument of `Foo'
- In the definition of data constructor `Foo'
- In the data type declaration for `Foo'
-
-<no location info>:
-Failing due to -Werror.
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T4875.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T4875.hs
deleted file mode 100644
index 832bb1c8f5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T4875.hs
+++ /dev/null
@@ -1,28 +0,0 @@
- {-# OPTIONS -XMultiParamTypeClasses -XFunctionalDependencies -XFlexibleInstances #-}
-module HaskellBug where
-
-data Relation c -- The basic Relation
- = Rel { relnm :: String -- The name of the relation
- , relsrc :: c -- Source concept
- , reltrg :: c -- ^Target concept
- }
- deriving Eq
-
--- This declaration is ok; should not get an error here
-class (Eq concept)=> Association rel concept | rel -> concept where
- source, target :: rel -> concept
- -- e.g. Declaration Concept -> Concept
- sign :: rel -> (concept,concept)
- sign x = (source x,target x)
- homogeneous :: rel -> Bool
- homogeneous s = source s == target s
-
-instance (Eq c)=>Association (Relation c) c where
- source = relsrc
- target = reltrg
-
--- This declaration has a kind error
--- The error should be reported here
-class (Eq c, Association r c) => Morphic r c where
- multiplicities :: r c -> [c]
- multiplicities _ = []
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T4875.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T4875.stderr
deleted file mode 100644
index 24c570e73b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T4875.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-T4875.hs:27:24:
- `r' is applied to too many type arguments
- In the type `r c -> [c]'
- In the class declaration for `Morphic'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T5084.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T5084.hs
deleted file mode 100644
index 0ae39fd71c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T5084.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-module T5084 where
-
--- Superclass method pragma test (fail)
-class Foo a where
- bar :: a -> a
- {-# INLINE bar #-}
-
--- Instance test (ok)
-instance Foo Int where
- bar = (+1)
- {-# INLINE bar #-}
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T5084.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T5084.stderr
deleted file mode 100644
index eba9426342..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T5084.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-T5084.hs:6:5:
- The INLINE pragma for default method `bar' lacks an accompanying binding
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T5236.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T5236.hs
deleted file mode 100644
index 07b31c3218..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T5236.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies, FlexibleContexts #-}
-
-module Main where
-
-data A
-data B
-
-class Id a b | a -> b, b -> a
-
-instance Id A A
-instance Id B B
-
-loop :: Id A B => Bool
-loop = True
-
-f :: Bool
-f = loop
-
-
-main :: IO ()
-main = return () \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T5236.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T5236.stderr
deleted file mode 100644
index 8ec3544f6a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T5236.stderr
+++ /dev/null
@@ -1,20 +0,0 @@
-
-T5236.hs:17:5:
- Couldn't match type `B' with `A'
- When using functional dependencies to combine
- Id B B,
- arising from the dependency `b -> a'
- in the instance declaration at T5236.hs:11:10
- Id A B, arising from a use of `loop' at T5236.hs:17:5-8
- In the expression: loop
- In an equation for `f': f = loop
-
-T5236.hs:17:5:
- Couldn't match type `A' with `B'
- When using functional dependencies to combine
- Id A A,
- arising from the dependency `a -> b'
- in the instance declaration at T5236.hs:10:10
- Id A B, arising from a use of `loop' at T5236.hs:17:5-8
- In the expression: loop
- In an equation for `f': f = loop
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T5246.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T5246.hs
deleted file mode 100644
index c7b41c0492..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T5246.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
--- Produced a duplicated error message in 7.0
-
-module T5246 where
-
-foo :: (?x :: Int) => a
-foo = undefined
-
-bar = let ?x = "hello"
- in foo
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T5246.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T5246.stderr
deleted file mode 100644
index 3886cdef07..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T5246.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-T5246.hs:11:10:
- Couldn't match type `Int' with `[Char]'
- In the expression: foo
- In the expression: let ?x = "hello" in foo
- In an equation for `bar': bar = let ?x = "hello" in foo
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T5300.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/T5300.hs
deleted file mode 100644
index d052d84659..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T5300.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE FunctionalDependencies, MultiParamTypeClasses #-}
-module T5300 where
-
-import Control.Monad.State (StateT)
-
-class C1 a b c | a -> b
-class C2 a b c
-
-data T b = T
-
-f1 :: (Monad m, C1 a b c) => a -> StateT (T b) m a
-f1 f = undefined
-
-f2 :: (Monad m, C1 a1 b1 c1, C2 a2 b2 c2) => a1 -> StateT (T b2) m a2
-f2 fm = f1 fm >>= return . undefined
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/T5300.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/T5300.stderr
deleted file mode 100644
index bc3bc066b5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/T5300.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-T5300.hs:15:9:
- Ambiguous type variable `c0' in the constraint:
- (C1 a1 b2 c0) arising from a use of `f1'
- Probable fix: add a type signature that fixes these type variable(s)
- In the first argument of `(>>=)', namely `f1 fm'
- In the expression: f1 fm >>= return . undefined
- In an equation for `f2': f2 fm = f1 fm >>= return . undefined
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/Tcfail186_Help.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/Tcfail186_Help.hs
deleted file mode 100644
index bdf67f4747..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/Tcfail186_Help.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Tcfail186_Help where
-
-type PhantomSyn a = Int
-
-f = (\_ -> 2) :: PhantomSyn a -> Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/all.T b/testsuite/tests/ghc-regress/typecheck/should_fail/all.T
deleted file mode 100644
index 5ea05ef478..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/all.T
+++ /dev/null
@@ -1,245 +0,0 @@
-
-test('tcfail001', normal, compile_fail, [''])
-test('tcfail002', normal, compile_fail, [''])
-test('tcfail003', normal, compile_fail, [''])
-test('tcfail004', normal, compile_fail, [''])
-test('tcfail005', normal, compile_fail, [''])
-test('tcfail006', normal, compile_fail, [''])
-test('tcfail007', normal, compile_fail, [''])
-test('tcfail008', normal, compile_fail, [''])
-test('tcfail009', normal, compile_fail, [''])
-test('tcfail010', normal, compile_fail, [''])
-test('tcfail011', normal, compile_fail, [''])
-test('tcfail012', normal, compile_fail, [''])
-test('tcfail013', normal, compile_fail, [''])
-test('tcfail014', normal, compile_fail, [''])
-test('tcfail015', normal, compile_fail, [''])
-test('tcfail016', normal, compile_fail, [''])
-test('tcfail017', normal, compile_fail, [''])
-test('tcfail018', normal, compile_fail, [''])
-test('tcfail019', normal, compile_fail, [''])
-test('tcfail020', normal, compile_fail, [''])
-test('tcfail021', normal, compile_fail, [''])
-test('tcfail023', normal, compile_fail, [''])
-test('tcfail027', normal, compile_fail, [''])
-test('tcfail028', normal, compile_fail, [''])
-test('tcfail029', normal, compile_fail, [''])
-test('tcfail030', if_compiler_type('hugs', expect_fail), compile_fail, [''])
-test('tcfail031', normal, compile_fail, [''])
-test('tcfail032', normal, compile_fail, [''])
-test('tcfail033', normal, compile_fail, [''])
-test('tcfail034', normal, compile_fail, [''])
-test('tcfail035', normal, compile_fail, [''])
-test('tcfail036', normal, compile_fail, [''])
-test('tcfail037', normal, compile_fail, [''])
-test('tcfail038', normal, compile_fail, [''])
-test('tcfail040', normal, compile_fail, [''])
-test('tcfail042', normal, compile_fail, [''])
-test('tcfail043', normal, compile_fail, [''])
-test('tcfail044', normal, compile_fail, [''])
-test('tcfail046', normal, compile_fail, [''])
-test('tcfail047', normal, compile_fail, [''])
-test('tcfail048', normal, compile_fail, [''])
-test('tcfail049', normal, compile_fail, [''])
-test('tcfail050', normal, compile_fail, [''])
-test('tcfail051', normal, compile_fail, [''])
-test('tcfail052', normal, compile_fail, [''])
-test('tcfail053', normal, compile_fail, [''])
-test('tcfail054', normal, compile_fail, [''])
-test('tcfail055', normal, compile_fail, [''])
-test('tcfail056', normal, compile_fail, [''])
-test('tcfail057', normal, compile_fail, [''])
-test('tcfail058', normal, compile_fail, [''])
-test('tcfail061', normal, compile_fail, [''])
-test('tcfail062', normal, compile_fail, [''])
-test('tcfail063', normal, compile_fail, [''])
-test('tcfail065', normal, compile_fail, [''])
-test('tcfail067', normal, compile_fail, [''])
-test('tcfail068', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcfail069', normal, compile_fail, [''])
-test('tcfail070', normal, compile_fail, [''])
-test('tcfail071', normal, compile, [''])
-test('tcfail072', normal, compile_fail, [''])
-test('tcfail073', normal, compile_fail, [''])
-test('tcfail075', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcfail076', normal, compile_fail, [''])
-test('tcfail077', normal, compile_fail, [''])
-test('tcfail078', normal, compile_fail, [''])
-test('tcfail079', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcfail080', if_compiler_type('ghc', expect_fail), compile_fail, [''])
-test('tcfail082', normal, compile_fail, [''])
-test('tcfail083', normal, compile_fail, [''])
-test('tcfail084', normal, compile_fail, [''])
-test('tcfail085', normal, compile_fail, [''])
-test('tcfail086', normal, compile_fail, [''])
-test('tcfail087', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcfail088', normal, compile_fail, [''])
-test('tcfail089', normal, compile_fail, [''])
-test('tcfail090', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcfail091', normal, compile_fail, [''])
-test('tcfail092', normal, compile_fail, [''])
-test('tcfail093', normal, compile, [''])
-test('tcfail094', normal, compile_fail, [''])
-test('tcfail095', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcfail096', normal, compile_fail, [''])
-test('tcfail097', normal, compile_fail, [''])
-test('tcfail098', normal, compile_fail, [''])
-test('tcfail099', normal, compile_fail, [''])
-test('tcfail100', normal, compile_fail, [''])
-test('tcfail101', normal, compile_fail, [''])
-test('tcfail102', normal, compile_fail, [''])
-test('tcfail103', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcfail104', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcfail105', normal, compile, [''])
-test('tcfail106', normal, compile_fail, [''])
-test('tcfail107', normal, compile_fail, [''])
-test('tcfail108', normal, compile_fail, [''])
-test('tcfail109', normal, compile_fail, [''])
-test('tcfail110', normal, compile_fail, [''])
-test('tcfail112', normal, compile_fail, [''])
-test('tcfail113', normal, compile_fail, [''])
-test('tcfail114', normal, compile_fail, [''])
-test('tcfail115', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcfail116', normal, compile_fail, [''])
-test('tcfail117', normal, compile_fail, [''])
-test('tcfail118', normal, compile_fail, [''])
-test('tcfail119', normal, compile_fail, [''])
-test('tcfail120', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcfail121', normal, compile_fail, [''])
-test('tcfail122', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcfail123', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcfail124', only_compiler_types(['ghc']), compile, [''])
-test('tcfail125', normal, compile_fail, [''])
-test('tcfail126', reqlib('mtl'), compile, [''])
-test('tcfail127', normal, compile_fail, [''])
-test('tcfail128', normal, compile_fail, [''])
-test('tcfail129', normal, compile_fail, [''])
-test('tcfail130', normal, compile_fail, [''])
-test('tcfail131', normal, compile_fail, [''])
-test('tcfail132', normal, compile_fail, [''])
-test('tcfail133', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcfail134', normal, compile_fail, [''])
-test('tcfail135', normal, compile_fail, [''])
-test('tcfail136', normal, compile_fail, [''])
-test('tcfail137', normal, compile_fail, [''])
-
-test('tcfail138', normal, compile, [''])
-# Now fails; see notes in file
-
-test('tcfail139', normal, compile_fail, [''])
-test('tcfail140', normal, compile_fail, [''])
-test('tcfail141', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcfail142', normal, compile_fail, [''])
-test('tcfail143', normal, compile_fail, [''])
-test('tcfail144', normal, compile, [''])
-test('tcfail145', normal, compile, [''])
-test('tcfail146', normal, compile_fail, [''])
-test('tcfail147', normal, compile_fail, [''])
-test('tcfail148', normal, compile_fail, [''])
-test('tcfail149', normal, compile_and_run, [''])
-test('tcfail150', normal, compile, [''])
-test('tcfail151', normal, compile_fail, [''])
-test('tcfail152', normal, compile_fail, [''])
-test('tcfail153', normal, compile_fail, [''])
-test('tcfail154', normal, compile_fail, [''])
-test('tcfail155', normal, compile_fail, [''])
-test('tcfail156', normal, compile_fail, [''])
-test('tcfail157', normal, compile_fail, [''])
-test('tcfail158', normal, compile_fail, [''])
-test('tcfail159', normal, compile_fail, [''])
-test('tcfail160', normal, compile_fail, [''])
-test('tcfail161', normal, compile_fail, [''])
-test('tcfail162', normal, compile_fail, [''])
-test('tcfail164', normal, compile_fail, [''])
-test('tcfail165', normal, compile_fail, [''])
-test('tcfail166', normal, compile_fail, [''])
-test('tcfail167', normal, compile_fail, [''])
-test('tcfail168', normal, compile_fail, [''])
-test('tcfail169', normal, compile_fail, [''])
-test('tcfail170', normal, compile_fail, [''])
-test('tcfail171', normal, compile_fail, [''])
-test('tcfail172', normal, compile, [''])
-test('tcfail173', normal, compile_fail, [''])
-test('tcfail174', normal, compile_fail, [''])
-test('tcfail175', normal, compile_fail, [''])
-test('tcfail176', normal, compile_fail, [''])
-test('tcfail177', normal, compile_fail, [''])
-test('tcfail178', normal, compile_fail, [''])
-test('tcfail179', normal, compile_fail, [''])
-test('tcfail180', normal, compile_fail, [''])
-test('tcfail181', normal, compile_fail, [''])
-test('tcfail182', normal, compile_fail, [''])
-test('tcfail183', normal, compile_fail, [''])
-test('tcfail184', normal, compile_fail, [''])
-test('tcfail185', normal, compile_fail, [''])
-test('tcfail186',
- extra_clean(['Tcfail186_Help.hi', 'Tcfail186_Help.o']),
- multimod_compile_fail, ['tcfail186', '-v0'])
-test('tcfail187', normal, compile_fail, [''])
-
-test('tcfail188', normal, compile, [''])
-
-test('tcfail189', normal, compile_fail, [''])
-test('tcfail190', normal, compile_fail, [''])
-test('tcfail191', normal, compile_fail, [''])
-test('tcfail192', normal, compile_fail, [''])
-test('tcfail193', normal, compile_fail, [''])
-test('tcfail194', normal, compile_fail, [''])
-test('tcfail195', normal, compile_fail, [''])
-test('tcfail196', normal, compile_fail, [''])
-test('tcfail197', normal, compile_fail, [''])
-test('tcfail198', normal, compile_fail, [''])
-test('tcfail199', normal, compile_fail, [''])
-test('tcfail200', normal, compile_fail, [''])
-test('tcfail201', normal, compile_fail, [''])
-test('tcfail202', normal, compile_fail, [''])
-test('tcfail203', normal, compile, [''])
-test('tcfail203a', normal, compile_fail, [''])
-test('tcfail204', normal, compile_fail, [''])
-test('tcfail206', normal, compile_fail, [''])
-
-test('T1595', normal, compile_fail, [''])
-test('T1899', normal, compile_fail, [''])
-test('T2126', normal, compile_fail, [''])
-test('T2307', normal, compile_fail, [''])
-test('T2414', normal, compile_fail, [''])
-test('T2538', normal, compile_fail, [''])
-test('T2688', normal, compile_fail, [''])
-test('T2714', normal, compile_fail, [''])
-test('T2994', normal, compile_fail, [''])
-test('T3155', normal, compile_fail, [''])
-test('T3176', normal, compile_fail, [''])
-test('T1633', normal, compile_fail, [''])
-test('T2806', normal, compile_fail, [''])
-test('T3323', normal, compile_fail, [''])
-test('T3406', normal, compile_fail, [''])
-test('T3540', normal, compile_fail, [''])
-test('T3102', normal, compile_fail, [''])
-test('T3613', normal, compile_fail, [''])
-test('fd-loop', normal, compile_fail, [''])
-test('T3950', normal, compile_fail, [''])
-test('T3966', normal, compile_fail, [''])
-test('IPFail', normal, compile_fail, [''])
-
-test('T3468', extra_clean(['T3468.hi-boot']),
- multimod_compile_fail, ['T3468', '-v0'])
-test('T2846b', normal, compile_fail, [''])
-test('FrozenErrorTests', normal, compile_fail, [''])
-test('SCLoop', normal, compile_fail, [''])
-test('T4875', normal, compile_fail, [''])
-test('mc19', normal, compile_fail, [''])
-test('mc20', normal, compile_fail, [''])
-test('mc21', normal, compile_fail, [''])
-test('mc22', normal, compile_fail, [''])
-test('mc23', normal, compile_fail, [''])
-test('mc24', normal, compile_fail, [''])
-test('mc25', normal, compile_fail, [''])
-test('tcfail207', normal, compile_fail, [''])
-test('T5084', normal, compile_fail, [''])
-test('tcfail208', normal, compile_fail, [''])
-
-test('FailDueToGivenOverlapping', normal, compile_fail, [''])
-test('LongWayOverlapping', normal, compile_fail, [''])
-test('T5236',normal,compile_fail,[''])
-test('T5246',normal,compile_fail,[''])
-test('T5300',normal,compile_fail,[''])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/fd-loop.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/fd-loop.hs
deleted file mode 100644
index 8b9a22926e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/fd-loop.hs
+++ /dev/null
@@ -1,32 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-
--- Here's a nice example of a fundep loop, correctly
--- rejected by the undecidable-instance check.
--- See comments below.
-
-module FDLoop where
-
-class C a b | a -> b where f :: a -> b
-newtype T a = T a
-
-instance (C a b, Eq b) => Eq (T a) where (==) = undefined
-
-g x = (undefined :: d -> d -> d -> ()) (T x) (f x) (undefined :: Eq e => e)
-
-{- Analysis
-
- f :: C a b => a -> b
- x :: a
- b ~ T a
- need: C a b
- b ~ e
- need: Eq e
-
-Hence need (C a (T a), Eq (T a))
-Apply instance for Eq
- = (C a (T a), C a g, Eq g)
-Apply functional dependency: g ~ T a
- = (C a (T a), C a (T a), Eq (T a))
-And now we are back where we started
--}
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/fd-loop.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/fd-loop.stderr
deleted file mode 100644
index 9f93b6d9bc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/fd-loop.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-fd-loop.hs:12:10:
- Variable occurs more often in a constraint than in the instance head
- in the constraint: C a b
- (Use -XUndecidableInstances to permit this)
- In the instance declaration for `Eq (T a)'
-
-fd-loop.hs:12:10:
- Variable occurs more often in a constraint than in the instance head
- in the constraint: Eq b
- (Use -XUndecidableInstances to permit this)
- In the instance declaration for `Eq (T a)'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/mc19.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/mc19.hs
deleted file mode 100644
index f5cc693b9a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/mc19.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Checks that the correct type is used checking the using clause of the transform
-
-{-# LANGUAGE MonadComprehensions, TransformListComp #-}
-
-module ShouldFail where
-
-import Data.List(inits)
-
-z :: [Int]
-z = [x | x <- [3, 2, 1], then inits]
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/mc19.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/mc19.stderr
deleted file mode 100644
index c7bca0afd4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/mc19.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-mc19.hs:10:31:
- Couldn't match type `a' with `[a]'
- `a' is a rigid type variable bound by
- a type expected by the context: [a] -> [a] at mc19.hs:10:26
- Expected type: [a] -> [a]
- Actual type: [a] -> [[a]]
- In the expression: inits
- In a stmt of a monad comprehension: then inits
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/mc20.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/mc20.hs
deleted file mode 100644
index 4dd0fe2fe5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/mc20.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
--- Checks that the ordering constraint on the implicit groupWith is respected
-
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp #-}
-
-module ShouldFail where
-
-data Unorderable = Gnorf | Pinky | Brain
-
-foo = [ ()
- | x <- [Gnorf, Brain]
- , then group by x
- ]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/mc20.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/mc20.stderr
deleted file mode 100644
index 1214b6ac17..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/mc20.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-mc20.hs:12:9:
- No instance for (Ord Unorderable)
- arising from a use of `Control.Monad.Group.mgroupWith'
- Possible fix: add an instance declaration for (Ord Unorderable)
- In the expression: Control.Monad.Group.mgroupWith
- In a stmt of a monad comprehension: then group by x
- In the expression: [() | x <- [Gnorf, Brain], then group by x]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/mc21.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/mc21.hs
deleted file mode 100644
index 601403a6bd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/mc21.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- Checks that the correct type is used checking the using clause of the group
-
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp #-}
-
-module ShouldFail where
-import GHC.Exts( the )
-
-data Unorderable = Gnorf | Pinky | Brain
-
-foo = [ length x
- | x <- [Gnorf, Brain]
- , then group using take 5
- ]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/mc21.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/mc21.stderr
deleted file mode 100644
index 95c077cb25..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/mc21.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-mc21.hs:12:26:
- Couldn't match type `a' with `[a]'
- `a' is a rigid type variable bound by
- a type expected by the context: [a] -> [[a]] at mc21.hs:12:9
- Expected type: [a] -> [[a]]
- Actual type: [a] -> [a]
- In the return type of a call of `take'
- In the expression: take 5
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/mc22.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/mc22.hs
deleted file mode 100644
index dd8d44e6b7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/mc22.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Checks that the types of the old binder and the binder
--- implicitly introduced by grouping are linked
-
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp #-}
-
-module ShouldFail where
-
-foo = [ x + 1
- | x <- ["Hello", "World"]
- , then group using take 5
- ]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/mc22.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/mc22.stderr
deleted file mode 100644
index 96294ae693..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/mc22.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-mc22.hs:10:26:
- Couldn't match type `a' with `t0 a'
- `a' is a rigid type variable bound by
- a type expected by the context: [a] -> [t0 a] at mc22.hs:10:9
- Expected type: [a] -> [t0 a]
- Actual type: [a] -> [a]
- In the return type of a call of `take'
- In the expression: take 5
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/mc23.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/mc23.hs
deleted file mode 100644
index ab6f3468a4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/mc23.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- Checks that using the "by" clause in a transform requires a function parameter
-
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp #-}
-
-module ShouldFail where
-
-import Data.List(take)
-
-z = [x | x <- [1..10], then take 5 by x ]
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/mc23.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/mc23.stderr
deleted file mode 100644
index ec632f8bdb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/mc23.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-mc23.hs:9:29:
- Couldn't match expected type `a -> t0' with actual type `[a0]'
- Expected type: (a -> t0) -> [a] -> t1 a
- Actual type: [a0] -> [a0]
- In the return type of a call of `take'
- Probable cause: `take' is applied to too many arguments
- In the expression: take 5
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/mc24.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/mc24.hs
deleted file mode 100644
index 9186721229..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/mc24.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Checks that the correct type is used checking the using clause of
--- the group when a by clause is present
-
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp #-}
-
-module ShouldFail where
-
-foo = [ length x
- | x <- [1..10]
- , then group by x using take 2
- ]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/mc24.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/mc24.stderr
deleted file mode 100644
index bee1592659..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/mc24.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-mc24.hs:10:31:
- Couldn't match expected type `a -> t0' with actual type `[a0]'
- Expected type: (a -> t0) -> [a] -> t1 (t2 a)
- Actual type: [a0] -> [a0]
- In the return type of a call of `take'
- Probable cause: `take' is applied to too many arguments
- In the expression: take 2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/mc25.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/mc25.hs
deleted file mode 100644
index ecbcfde798..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/mc25.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- Checks that using the "by" clause in a transform requires a function parameter
-
-{-# OPTIONS_GHC -XMonadComprehensions -XTransformListComp #-}
-
-module ShouldFail where
-
-import Data.List(take)
-
-z = [x | x <- [1..10], then group by x using take ]
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/mc25.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/mc25.stderr
deleted file mode 100644
index 7016fad147..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/mc25.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-mc25.hs:9:46:
- Couldn't match expected type `a -> t0' with actual type `Int'
- Expected type: (a -> t0) -> [a] -> t1 (t2 a)
- Actual type: Int -> [a0] -> [a0]
- In the expression: take
- In a stmt of a monad comprehension: then group by x using take
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail001.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail001.hs
deleted file mode 100644
index 4e3e13072f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail001.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! This should fail with a type error: the instance method
--- !!! has a function type when it should have the type [a].
-module ShouldFail where
-
-class A a where
- op :: a
-
-instance (A a, A a) => A [a] where
- op [] = []
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail001.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail001.stderr
deleted file mode 100644
index 5fadcf6271..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail001.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail001.hs:9:2:
- The equation(s) for `op' have one argument,
- but its type `[a]' has none
- In the instance declaration for `A [a]'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail001.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail001.stderr-hugs
deleted file mode 100644
index 7b82227ee6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail001.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail001.hs":9 - Type error in instance member binding
-*** Term : op
-*** Type : [b] -> [c]
-*** Does not match : [a]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail002.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail002.hs
deleted file mode 100644
index b1fdd165b4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail002.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldFail where
-
-c (x:y) = x
-c z = z
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail002.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail002.stderr
deleted file mode 100644
index 12a77d0cc8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail002.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail002.hs:4:7:
- Occurs check: cannot construct the infinite type: t0 = [t0]
- In the expression: z
- In an equation for `c': c z = z
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail002.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail002.stderr-hugs
deleted file mode 100644
index 52a41cd2e3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail002.stderr-hugs
+++ /dev/null
@@ -1,5 +0,0 @@
-ERROR "tcfail002.hs":4 - Type error in function binding
-*** Term : c
-*** Type : a -> a
-*** Does not match : [a] -> a
-*** Because : unification would give infinite type
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail003.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail003.hs
deleted file mode 100644
index 8458014c1b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail003.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-(d:e) = [1,'a']
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail003.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail003.stderr
deleted file mode 100644
index 62fb6a9812..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail003.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail003.hs:3:10:
- No instance for (Num Char)
- arising from the literal `1'
- Possible fix: add an instance declaration for (Num Char)
- In the expression: 1
- In the expression: [1, 'a']
- In a pattern binding: (d : e) = [1, 'a']
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail003.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail003.stderr-hugs
deleted file mode 100644
index 3655bd61a7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail003.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "tcfail003.hs":3 - Unresolved top-level overloading
-*** Binding : d
-*** Outstanding context : Num Char
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail004.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail004.hs
deleted file mode 100644
index 513680bd12..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail004.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-(f,g) = (1,2,3)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail004.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail004.stderr
deleted file mode 100644
index 5f0408880c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail004.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail004.hs:3:9:
- Couldn't match expected type `(t0, t1)'
- with actual type `(t2, t3, t4)'
- In the expression: (1, 2, 3)
- In a pattern binding: (f, g) = (1, 2, 3)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail004.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail004.stderr-hugs
deleted file mode 100644
index 90f8a8105e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail004.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail004.hs":3 - Type error in right hand side
-*** Term : (1,2,3)
-*** Type : (c,d,e)
-*** Does not match : (a,b)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail005.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail005.hs
deleted file mode 100644
index ca211e1216..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail005.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-(h:i) = (1,'a')
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail005.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail005.stderr
deleted file mode 100644
index 8a158f5c8d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail005.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail005.hs:3:9:
- Couldn't match expected type `[t0]' with actual type `(t1, t2)'
- In the expression: (1, 'a')
- In a pattern binding: (h : i) = (1, 'a')
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail005.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail005.stderr-hugs
deleted file mode 100644
index e52ab03426..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail005.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail005.hs":3 - Type error in right hand side
-*** Term : (1,'a')
-*** Type : (b,Char)
-*** Does not match : [a]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail006.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail006.hs
deleted file mode 100644
index 37fd1f9c35..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail006.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldFail where
-
-(j,k) = case (if True then True else False) of
- True -> (True,1)
- False -> (1,True)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail006.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail006.stderr
deleted file mode 100644
index b2a3f5b04a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail006.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail006.hs:5:20:
- No instance for (Num Bool)
- arising from the literal `1'
- Possible fix: add an instance declaration for (Num Bool)
- In the expression: 1
- In the expression: (1, True)
- In a case alternative: False -> (1, True)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail006.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail006.stderr-hugs
deleted file mode 100644
index 617112e3f2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail006.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "tcfail006.hs":3 - Unresolved top-level overloading
-*** Binding : j
-*** Outstanding context : Num Bool
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail007.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail007.hs
deleted file mode 100644
index ee24983aff..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail007.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldFail where
-
-n x | True = x+1
- | False = True
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail007.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail007.stderr
deleted file mode 100644
index 3545f8644f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail007.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-tcfail007.hs:3:16:
- No instance for (Num Bool)
- arising from the literal `1'
- Possible fix: add an instance declaration for (Num Bool)
- In the second argument of `(+)', namely `1'
- In the expression: x + 1
- In an equation for `n':
- n x
- | True = x + 1
- | False = True
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail007.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail007.stderr-hugs
deleted file mode 100644
index cd78c91def..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail007.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail007.hs":3 - Instance of Num Bool required for definition of n
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail008.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail008.hs
deleted file mode 100644
index dbc9d0c911..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail008.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-o = 1:2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail008.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail008.stderr
deleted file mode 100644
index 2d31ee6034..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail008.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail008.hs:3:7:
- No instance for (Num [a0])
- arising from the literal `2'
- Possible fix: add an instance declaration for (Num [a0])
- In the second argument of `(:)', namely `2'
- In the expression: 1 : 2
- In an equation for `o': o = 1 : 2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail008.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail008.stderr-hugs
deleted file mode 100644
index 820654317f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail008.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "tcfail008.hs":3 - Unresolved top-level overloading
-*** Binding : o
-*** Outstanding context : (Num [b], Num b)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail009.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail009.hs
deleted file mode 100644
index e8afa0fbf7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail009.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-p = [(1::Int)..(2::Integer)]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail009.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail009.stderr
deleted file mode 100644
index 8226c1fbdc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail009.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail009.hs:3:17:
- Couldn't match expected type `Int' with actual type `Integer'
- In the expression: (2 :: Integer)
- In the expression: [(1 :: Int) .. (2 :: Integer)]
- In an equation for `p': p = [(1 :: Int) .. (2 :: Integer)]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail009.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail009.stderr-hugs
deleted file mode 100644
index 9b02c99702..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail009.stderr-hugs
+++ /dev/null
@@ -1,5 +0,0 @@
-ERROR "tcfail009.hs":3 - Type error in application
-*** Expression : enumFromTo 1 2
-*** Term : 1
-*** Type : Int
-*** Does not match : Integer
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail010.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail010.hs
deleted file mode 100644
index 8b793355da..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail010.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-q = \ (y:z) -> z+2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail010.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail010.stderr
deleted file mode 100644
index 34a52ed1d2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail010.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail010.hs:3:18:
- No instance for (Num [t0])
- arising from the literal `2'
- Possible fix: add an instance declaration for (Num [t0])
- In the second argument of `(+)', namely `2'
- In the expression: z + 2
- In the expression: \ (y : z) -> z + 2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail010.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail010.stderr-hugs
deleted file mode 100644
index 3cc7f66919..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail010.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "tcfail010.hs":3 - Unresolved top-level overloading
-*** Binding : q
-*** Outstanding context : Num [b]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail011.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail011.hs
deleted file mode 100644
index 89f5c4bcd1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail011.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-z = \y -> x x where x = y
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail011.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail011.stderr
deleted file mode 100644
index f41e3a67ce..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail011.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-tcfail011.hs:3:25: Not in scope: `y'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail011.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail011.stderr-hugs
deleted file mode 100644
index d4605dd854..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail011.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail011.hs":3 - Undefined variable "y"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail012.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail012.hs
deleted file mode 100644
index 67e5fa0256..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail012.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-True = []
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail012.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail012.stderr
deleted file mode 100644
index 7fe9b18d47..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail012.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail012.hs:3:8:
- Couldn't match expected type `Bool' with actual type `[a0]'
- In the expression: []
- In a pattern binding: True = []
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail012.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail012.stderr-hugs
deleted file mode 100644
index 87c9b53fd0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail012.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail012.hs":3 - Type error in right hand side
-*** Term : []
-*** Type : [a]
-*** Does not match : Bool
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail013.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail013.hs
deleted file mode 100644
index c9ccc52a64..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail013.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldFail where
-
-f [] = 1
-f True = 2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail013.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail013.stderr
deleted file mode 100644
index 439a663c5c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail013.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail013.hs:4:3:
- Couldn't match expected type `[t0]' with actual type `Bool'
- In the pattern: True
- In an equation for `f': f True = 2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail013.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail013.stderr-hugs
deleted file mode 100644
index ed08baca77..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail013.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail013.hs":4 - Type error in function binding
-*** Term : f
-*** Type : Bool -> b
-*** Does not match : [a] -> b
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail014.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail014.hs
deleted file mode 100644
index 7d9169936d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail014.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module ShouldFail where
-
-f x = g+1
- where g y = h+2
- where h z = z z
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail014.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail014.stderr
deleted file mode 100644
index d46bf92db3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail014.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail014.hs:5:33:
- Occurs check: cannot construct the infinite type: t1 = t1 -> t0
- In the first argument of `z', namely `z'
- In the expression: z z
- In an equation for `h': h z = z z
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail014.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail014.stderr-hugs
deleted file mode 100644
index 773b9ec586..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail014.stderr-hugs
+++ /dev/null
@@ -1,6 +0,0 @@
-ERROR "tcfail014.hs":5 - Type error in application
-*** Expression : z z
-*** Term : z
-*** Type : a -> b
-*** Does not match : a
-*** Because : unification would give infinite type
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail015.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail015.hs
deleted file mode 100644
index ae929e3973..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail015.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module ShouldFail where
-
-data AList a = ANull | ANode a (AList a)
-
-type IntList = AList Int
-
-g (ANull) = 2
-g (ANode b (ANode c d)) | b = c+1
- | otherwise = 4
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail015.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail015.stderr
deleted file mode 100644
index 52dc7956cd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail015.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-tcfail015.hs:9:39:
- No instance for (Num Bool)
- arising from the literal `4'
- Possible fix: add an instance declaration for (Num Bool)
- In the expression: 4
- In an equation for `g':
- g (ANode b (ANode c d))
- | b = c + 1
- | otherwise = 4
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail015.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail015.stderr-hugs
deleted file mode 100644
index 6884840cdb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail015.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail015.hs":7 - Instance of Num Bool required for definition of g
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.hs
deleted file mode 100644
index 2dfd4a50e0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module ShouldFail where
-
-type AnnExpr a = (a,Expr a)
-
-data Expr a = Var [Char]
- | App (AnnExpr a) (AnnExpr a)
-
-g (Var name) = [name]
-g (App e1 e2) = (g e1)++(g e2)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.stderr
deleted file mode 100644
index 6420918b37..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail016.hs:9:20:
- Couldn't match expected type `Expr t0'
- with actual type `AnnExpr t0'
- In the first argument of `g', namely `e1'
- In the first argument of `(++)', namely `(g e1)'
- In the expression: (g e1) ++ (g e2)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.stderr-ghc-7.0 b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.stderr-ghc-7.0
deleted file mode 100644
index 8d2b960eef..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.stderr-ghc-7.0
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail016.hs:9:20:
- Couldn't match expected type `Expr t0'
- with actual type `(t0, Expr t0)'
- Expected type: Expr t0
- Actual type: AnnExpr t0
- In the first argument of `g', namely `e1'
- In the first argument of `(++)', namely `(g e1)'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.stderr-hugs
deleted file mode 100644
index cfde47e2fb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail016.stderr-hugs
+++ /dev/null
@@ -1,5 +0,0 @@
-ERROR "tcfail016.hs":9 - Type error in application
-*** Expression : g e2
-*** Term : e2
-*** Type : (b,Expr b)
-*** Does not match : Expr a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail017.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail017.hs
deleted file mode 100644
index db3215dc19..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail017.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
-module ShouldFail where
-
-class C a where
- op1 :: a -> a
-
-class (C a) => B a where
- op2 :: a -> a -> a
-
-instance (B a) => B [a] where
- op2 xs ys = xs
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail017.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail017.stderr
deleted file mode 100644
index 4f09814afa..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail017.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-tcfail017.hs:10:10:
- Could not deduce (C [a])
- arising from the superclasses of an instance declaration
- from the context (B a)
- bound by the instance declaration at tcfail017.hs:10:10-23
- Possible fix:
- add (C [a]) to the context of the instance declaration
- or add an instance declaration for (C [a])
- In the instance declaration for `B [a]'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail017.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail017.stderr-hugs
deleted file mode 100644
index a52b3c9715..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail017.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail017.hs":10 - Cannot build superclass instance
-*** Instance : B [a]
-*** Context supplied : B a
-*** Required superclass : C [a]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail018.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail018.hs
deleted file mode 100644
index 9d811dcda2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail018.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-module ShouldFail where
-
-(a:[]) = 1
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail018.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail018.stderr
deleted file mode 100644
index 67ee509537..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail018.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail018.hs:5:10:
- No instance for (Num [t0])
- arising from the literal `1'
- Possible fix: add an instance declaration for (Num [t0])
- In the expression: 1
- In a pattern binding: (a : []) = 1
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail018.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail018.stderr-hugs
deleted file mode 100644
index 4df764f201..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail018.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "tcfail018.hs":5 - Unresolved top-level overloading
-*** Binding : a
-*** Outstanding context : Num [b]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail019.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail019.hs
deleted file mode 100644
index af46532f44..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail019.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-module ShouldFail where
-
-class A a where
- p1 :: a -> a
- p2 :: a -> a -> a
-
-class (A b) => B b where
- p3 :: b
- p4 :: b -> b
-
-class (A c) => C c where
- p5 :: c -> c
- p6 :: c -> Int
-
-class (B d,C d) => D d where
- p7 :: d -> d
-
-instance D [a] where
- p7 l = []
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail019.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail019.stderr
deleted file mode 100644
index 0f24d012f6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail019.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-tcfail019.hs:18:10:
- No instance for (B [a])
- arising from the superclasses of an instance declaration
- Possible fix: add an instance declaration for (B [a])
- In the instance declaration for `D [a]'
-
-tcfail019.hs:18:10:
- No instance for (C [a])
- arising from the superclasses of an instance declaration
- Possible fix: add an instance declaration for (C [a])
- In the instance declaration for `D [a]'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail019.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail019.stderr-hugs
deleted file mode 100644
index 879bea35de..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail019.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail019.hs":18 - Cannot build superclass instance
-*** Instance : D [a]
-*** Context supplied : ()
-*** Required superclass : B [a]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail020.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail020.hs
deleted file mode 100644
index 0d3dc2594a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail020.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-module ShouldFail where
-
-class A a where
- p1 :: a -> a
- p2 :: a -> a -> a
-
-class (A b) => B b where
- p3 :: b
-
-instance (A a) => B [a] where
- p3 = []
-
-data X = XC --, causes stack dump
-
---instance B Bool where
--- p3 = True
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail020.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail020.stderr
deleted file mode 100644
index 3e0df9e42b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail020.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-tcfail020.hs:10:10:
- Could not deduce (A [a])
- arising from the superclasses of an instance declaration
- from the context (A a)
- bound by the instance declaration at tcfail020.hs:10:10-23
- Possible fix:
- add (A [a]) to the context of the instance declaration
- or add an instance declaration for (A [a])
- In the instance declaration for `B [a]'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail020.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail020.stderr-hugs
deleted file mode 100644
index 08d4e497b1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail020.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail020.hs":10 - Cannot build superclass instance
-*** Instance : B [a]
-*** Context supplied : A a
-*** Required superclass : A [a]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail021.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail021.hs
deleted file mode 100644
index af11b56df9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail021.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! Illegally giving methods in a pattern binding (for no v good reason...)
-
-module ShouldFail where
-
-data Foo = MkFoo Int
-
-instance Eq Foo where
- ((==), (/=)) = (\x -> \y -> True, \x -> \y -> False)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail021.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail021.stderr
deleted file mode 100644
index 5a4e8055bc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail021.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-tcfail021.hs:8:5:
- Pattern bindings (except simple variables) not allowed in instance declarations
- (==, /=) = (\ x -> \ y -> True, \ x -> \ y -> False)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail021.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail021.stderr-hugs
deleted file mode 100644
index 948d2e7d6d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail021.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail021.hs":8 - Pattern binding illegal in instance declaration
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail023.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail023.hs
deleted file mode 100644
index 74bcaf3a4b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail023.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-module ShouldFail where
-
--- !!! Duplicate instances
-
-data B = C
-
-class A a where
- op :: a -> Bool
-
-instance A B where
- op C = True
-
-instance A B where
- op C = True
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail023.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail023.stderr
deleted file mode 100644
index 96cdb4ebc0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail023.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail023.hs:10:10:
- Duplicate instance declarations:
- instance A B -- Defined at tcfail023.hs:10:10-12
- instance A B -- Defined at tcfail023.hs:13:10-12
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail023.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail023.stderr-hugs
deleted file mode 100644
index 84b92be57c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail023.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail023.hs":13 - Overlapping instances for class "A"
-*** This instance : A B
-*** Overlaps with : A B
-*** Common instance : A B
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail025.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail025.stderr
deleted file mode 100644
index 6a0f830cc4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail025.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail025.hs:2:
- Conflicting exports for local name: A
- module Main
- module Main
-
-
-Compilation had errors
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail026.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail026.stderr
deleted file mode 100644
index 23e90f7ae4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail026.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-tcfail026.hs:2:
- Conflicting exports for local name: A
- module Main
- module Main
-
-tcfail026.hs:6:
- Class type variable ``a'' does not appear in method signature:
- op2 ::
- `b' -> `b'
-
-
-Compilation had errors
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail027.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail027.hs
deleted file mode 100644
index e01f6961bd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail027.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- !!! tests for CycleErr in classes
-module TcFail where
-
-class (B a) => A a where
- op1 :: a -> a
-
-class (A a) => B a where
- op2 :: a -> a -> a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail027.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail027.stderr
deleted file mode 100644
index d51c253617..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail027.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail027.hs:4:1:
- Cycle in class declarations (via superclasses):
- tcfail027.hs:(4,1)-(5,14): class B a => A a
- tcfail027.hs:(7,1)-(8,19): class A a => B a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail027.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail027.stderr-hugs
deleted file mode 100644
index fd1b771772..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail027.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail027.hs":7 - Superclass relation for "B" is cyclic
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail028.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail028.hs
deleted file mode 100644
index 5f9b32c07f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail028.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- !!! tests for ArityErr
-module TcFail where
-
-data A a b = B (A a)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail028.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail028.stderr
deleted file mode 100644
index 7ad9ecbb23..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail028.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail028.hs:4:17:
- `A a' is not applied to enough type arguments
- Expected kind `?', but `A a' has kind `k0 -> *'
- In the type `A a'
- In the definition of data constructor `B'
- In the data type declaration for `A'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail028.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail028.stderr-hugs
deleted file mode 100644
index a64425da98..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail028.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail028.hs":4 - Illegal type "A a -> A a b" in constructor application
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail029.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail029.hs
deleted file mode 100644
index 14dd2d7e6b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail029.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- !!! tests for InstOpErr
-module ShouldFail where
-
-data Foo = Bar | Baz
-
-f x = x > Bar
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail029.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail029.stderr
deleted file mode 100644
index cf83c561b9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail029.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail029.hs:6:9:
- No instance for (Ord Foo)
- arising from a use of `>'
- Possible fix: add an instance declaration for (Ord Foo)
- In the expression: x > Bar
- In an equation for `f': f x = x > Bar
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail029.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail029.stderr-hugs
deleted file mode 100644
index e9a48fd076..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail029.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail029.hs":6 - Instance of Ord Foo required for definition of f
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail030.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail030.hs
deleted file mode 100644
index 163c727518..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail030.hs
+++ /dev/null
@@ -1,2 +0,0 @@
--- !!! empty file
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail030.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail030.stderr
deleted file mode 100644
index cb9d80959d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail030.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-tcfail030.hs:1:1:
- The function `main' is not defined in module `Main'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail031.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail031.hs
deleted file mode 100644
index 6b9a0de12b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail031.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-f x = if 'a' then 1 else 2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail031.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail031.stderr
deleted file mode 100644
index f7fc14bb1f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail031.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail031.hs:3:10:
- Couldn't match expected type `Bool' with actual type `Char'
- In the expression: 'a'
- In the expression: if 'a' then 1 else 2
- In an equation for `f': f x = if 'a' then 1 else 2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail031.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail031.stderr-hugs
deleted file mode 100644
index a955d833cb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail031.stderr-hugs
+++ /dev/null
@@ -1,5 +0,0 @@
-ERROR "tcfail031.hs":3 - Type error in conditional
-*** Expression : if 'a' then 1 else 2
-*** Term : 'a'
-*** Type : Char
-*** Does not match : Bool
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail032.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail032.hs
deleted file mode 100644
index 5950064655..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail032.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{- This test gives the following not-very-wonderful error message.
-
- "tc_sig.hs", line 3: Type signature does not match the inferred type:
- Signature: t76 -> Int
- Inferred type: t75
-
-It *is* an error, because x does not have the polytype
- forall a. Eq a => a -> Int
-becuase it is monomorphic, but the error message isn't very illuminating.
--}
-
-module ShouldFail where
-
-f x = (x :: (Eq a) => a -> Int)
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail032.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail032.stderr
deleted file mode 100644
index 8cb4c1b99a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail032.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-
-tcfail032.hs:14:8:
- Could not deduce (t ~ (a1 -> Int))
- from the context (Eq a)
- bound by the inferred type of f :: Eq a => t -> a -> Int
- at tcfail032.hs:14:1-31
- or from (Eq a1)
- bound by an expression type signature: Eq a1 => a1 -> Int
- at tcfail032.hs:14:8-30
- `t' is a rigid type variable bound by
- the inferred type of f :: Eq a => t -> a -> Int
- at tcfail032.hs:14:1
- In the expression: (x :: Eq a => a -> Int)
- In an equation for `f': f x = (x :: Eq a => a -> Int)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail032.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail032.stderr-hugs
deleted file mode 100644
index 39879dc120..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail032.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail032.hs":14 - Inferred type is not general enough
-*** Expression : x
-*** Expected type : Eq a => a -> Int
-*** Inferred type : Eq _5 => _5 -> Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail033.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail033.hs
deleted file mode 100644
index fdc0aff8ed..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail033.hs
+++ /dev/null
@@ -1,4 +0,0 @@
--- from Jon Hill
-module ShouldFail where
-
-buglet = [ x | (x,y) <- buglet ]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail033.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail033.stderr
deleted file mode 100644
index 826ad4626d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail033.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail033.hs:4:12:
- Occurs check: cannot construct the infinite type: t0 = (t0, t1)
- In the expression: x
- In the expression: [x | (x, y) <- buglet]
- In an equation for `buglet': buglet = [x | (x, y) <- buglet]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail033.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail033.stderr-hugs
deleted file mode 100644
index aed2ee660e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail033.stderr-hugs
+++ /dev/null
@@ -1,5 +0,0 @@
-ERROR "tcfail033.hs":4 - Type error in function binding
-*** Term : buglet
-*** Type : [a]
-*** Does not match : [(a,b)]
-*** Because : unification would give infinite type
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail034.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail034.hs
deleted file mode 100644
index 0bbb75fab8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail034.hs
+++ /dev/null
@@ -1,39 +0,0 @@
-{-
-From: Jon Hill <hilly@dcs.qmw.ac.uk@jess.gla.ac.uk@pp.dcs.glasgow.ac.uk>
-To: glasgow-haskell-bugs
-Subject: Unfriendly error message
-Date: Thu, 25 Jun 1992 09:22:55 +0100
-
-Hello again,
-
-I came across a rather nasty error message when I gave a function an
-incorrect type signature (the context is wrong). I can remember reading
-in the source about this problem - I just thought I'd let you know anyway :-)
--}
-module ShouldFail where
-
-
-test::(Num a, Eq a) => a -> Bool
-test x = (x `mod` 3) == 0
-
-{-
-granite> ndph bug002.ldh
-Data Parallel Haskell Compiler, version 0.01 (Glasgow 0.07)
-
-
-"<unknown>", line <unknown>: Cannot express dicts in terms of dictionaries available:
-dicts_encl:
- "<built-in>", line : dict.87 :: <Num a>
- "<built-in>", line : dict.88 :: <Eq a>
-dicts_encl':
- "<built-in>", line : dict.87 :: <Num a>
- "<built-in>", line : dict.88 :: <Eq a>
-dicts:
- "<built-in>", line : dict.87 :: <Num a>
- "<built-in>", line : dict.88 :: <Eq a>
-super_class_dict: "<built-in>", line : dict.80 :: <Integral a>
-Fail: Compilation errors found
-
-dph: execution of the Haskell compiler had trouble
-
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail034.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail034.stderr
deleted file mode 100644
index db8e148eb9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail034.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-tcfail034.hs:17:13:
- Could not deduce (Integral a) arising from a use of `mod'
- from the context (Num a, Eq a)
- bound by the type signature for test :: (Num a, Eq a) => a -> Bool
- at tcfail034.hs:17:1-25
- Possible fix:
- add (Integral a) to the context of
- the type signature for test :: (Num a, Eq a) => a -> Bool
- In the first argument of `(==)', namely `(x `mod` 3)'
- In the expression: (x `mod` 3) == 0
- In an equation for `test': test x = (x `mod` 3) == 0
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail035.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail035.hs
deleted file mode 100644
index 8de67867dd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail035.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- !!! instances with empty where parts: duplicate
---
-module ShouldFail where
-
-data NUM = ONE | TWO
-instance Num NUM
-instance Num NUM
-instance Eq NUM
-instance Show NUM
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail035.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail035.stderr
deleted file mode 100644
index ed9efb53b0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail035.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail035.hs:6:10:
- Duplicate instance declarations:
- instance Num NUM -- Defined at tcfail035.hs:6:10-16
- instance Num NUM -- Defined at tcfail035.hs:7:10-16
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail035.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail035.stderr-hugs
deleted file mode 100644
index 4d459748ac..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail035.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail035.hs":7 - Overlapping instances for class "Num"
-*** This instance : Num NUM
-*** Overlaps with : Num NUM
-*** Common instance : Num NUM
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail036.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail036.hs
deleted file mode 100644
index ade1720ccc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail036.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! prelude class name in an instance-tycon position
---
-module ShouldFail where
-
-data NUM = ONE | TWO
-instance Num NUM
- where ONE + ONE = TWO
-instance Num NUM
-instance Eq Num
---instance Text Num
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail036.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail036.stderr
deleted file mode 100644
index 9ce51d2dd0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail036.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-tcfail036.hs:6:10:
- Duplicate instance declarations:
- instance Num NUM -- Defined at tcfail036.hs:6:10-16
- instance Num NUM -- Defined at tcfail036.hs:8:10-16
-
-tcfail036.hs:9:13:
- Class `Num' used as a type
- In the instance declaration for `Eq Num'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail036.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail036.stderr-hugs
deleted file mode 100644
index 7c418cc655..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail036.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail036.hs":8 - Overlapping instances for class "Num"
-*** This instance : Num NUM
-*** Overlaps with : Num NUM
-*** Common instance : Num NUM
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail037.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail037.hs
deleted file mode 100644
index d2110c755a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail037.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! PreludeCore entities cannot be redefined at the top-level
---
-module ShouldFail where
-
-data NUM = ONE | TWO
-
-f a b = a + b
-f :: NUM -> NUM -> NUM
-
-ONE + ONE = TWO
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail037.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail037.stderr
deleted file mode 100644
index a6a2a5e412..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail037.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail037.hs:7:11:
- Ambiguous occurrence `+'
- It could refer to either `ShouldFail.+', defined at tcfail037.hs:10:5
- or `Prelude.+', imported from Prelude
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail037.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail037.stderr-hugs
deleted file mode 100644
index cfd3f42a89..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail037.stderr-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-ERROR "tcfail037.hs":7 - Ambiguous variable occurrence "+"
-*** Could refer to: ShouldFail.+ Hugs.Prelude.+
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail038.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail038.hs
deleted file mode 100644
index 1770bde61c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail038.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! duplicate class-method declarations
-
-module ShouldFail where
-
-data NUM = ONE | TWO
-instance Eq NUM where
- a == b = True
- a /= b = False
- a == b = False
- a /= b = True
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail038.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail038.stderr
deleted file mode 100644
index 70e13f3c72..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail038.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-tcfail038.hs:7:11:
- Conflicting definitions for `=='
- Bound at: tcfail038.hs:7:11-12
- tcfail038.hs:9:11-12
-
-tcfail038.hs:8:11:
- Conflicting definitions for `/='
- Bound at: tcfail038.hs:8:11-12
- tcfail038.hs:10:11-12
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail038.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail038.stderr-hugs
deleted file mode 100644
index 7e2f61b981..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail038.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail038.hs":8 - "/=" multiply defined
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail040.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail040.hs
deleted file mode 100644
index 8ac06b363c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail040.hs
+++ /dev/null
@@ -1,29 +0,0 @@
--- !!! instances of functions
---
-module ShouldFail where
-
-data NUM = ONE | TWO
-
-class EQ a where
- (===) :: a -> a -> Bool
-
-class ORD a where
- (<<) :: a -> a -> Bool
- a << b = True
-
-instance EQ (a -> b) where
- f === g = True
-
-instance ORD (a -> b)
-
-f = (<<) === (<<)
---f :: (EQ a,Num a) => a -> a -> Bool
-
-
-{-
-instance EQ NUM where
--- a /= b = False
- a === b = True
--- a /= b = False
-
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail040.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail040.stderr
deleted file mode 100644
index 8d30ec57a2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail040.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail040.hs:19:14:
- Ambiguous type variable `a0' in the constraint:
- (ORD a0) arising from a use of `<<'
- Probable fix: add a type signature that fixes these type variable(s)
- In the second argument of `(===)', namely `(<<)'
- In the expression: (<<) === (<<)
- In an equation for `f': f = (<<) === (<<)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail040.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail040.stderr-hugs
deleted file mode 100644
index 2a12f6a15b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail040.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "tcfail040.hs":19 - Unresolved top-level overloading
-*** Binding : f
-*** Outstanding context : ORD b
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail042.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail042.hs
deleted file mode 100644
index 5fdf6c61b6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail042.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-module ShouldFail where
-
--- !!! weird class/instance examples off the haskell list
---
-
-class Foo a where foo :: a -> a
-class Foo a => Bar a where bar :: a -> a
-
-
-instance Num a => Foo [a] where
- foo [] = []
- foo (x:xs) = map (x+) xs
-
-
-instance (Eq a, Show a) => Bar [a] where
- bar [] = []
- bar (x:xs) = foo xs where u = x==x
- v = show x
-
-------------------------------------------
-
-{-
-class Foo a => Bar2 a where bar2 :: a -> a
-
-instance (Eq a, Show a) => Foo [a]
-
-instance Num a => Bar2 [a]
-
-data X a = X a
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail042.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail042.stderr
deleted file mode 100644
index ba2b83fd96..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail042.stderr
+++ /dev/null
@@ -1,24 +0,0 @@
-
-tcfail042.hs:15:10:
- Could not deduce (Num a)
- arising from the superclasses of an instance declaration
- from the context (Eq a, Show a)
- bound by the instance declaration at tcfail042.hs:15:10-34
- Possible fix:
- add (Num a) to the context of the instance declaration
- In the instance declaration for `Bar [a]'
-
-tcfail042.hs:17:18:
- Could not deduce (Num a) arising from a use of `foo'
- from the context (Eq a, Show a)
- bound by the instance declaration at tcfail042.hs:15:10-34
- Possible fix:
- add (Num a) to the context of the instance declaration
- In the expression: foo xs
- In an equation for `bar':
- bar (x : xs)
- = foo xs
- where
- u = x == x
- v = show x
- In the instance declaration for `Bar [a]'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail042.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail042.stderr-hugs
deleted file mode 100644
index 87c290d829..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail042.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail042.hs":15 - Cannot build superclass instance
-*** Instance : Bar [a]
-*** Context supplied : (Eq a, Show a)
-*** Required superclass : Foo [a]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail043.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail043.hs
deleted file mode 100644
index 184a4e23bf..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail043.hs
+++ /dev/null
@@ -1,219 +0,0 @@
--- The translation of this program should assign only one dictionary to
--- the function search (an Ord dictionary). Instead, it assigns two.
--- The output produced currently displays this.
-
--- 10/12/92: This program is actually erroneous. The pattern-binding for
--- search falls under the monomorphism restriction, and there is no
--- call to search which might fix its type. So there should be a complaint.
--- But the actual error message is horrible:
---
--- "bug001.hs", line 26: Ambiguous overloading:
--- class "Ord_", type "a" (at a use of an overloaded identifier: gt)
--- class "Eq_", type "a" (at a use of an overloaded identifier: eq)
-
-
-module TcFail where
-
-class Eq_ a where
- eq :: a -> a -> Bool
-
-instance Eq_ Int where
- eq = eqIntEq
-
-instance (Eq_ a) => Eq_ [a] where
- eq = \ xs ys ->
- if (null xs)
- then (null ys)
- else if (null ys)
- then False
- else (&&) (eq (hd xs) (hd ys)) (eq (tl xs) (tl ys))
-
-class (Eq_ a) => Ord_ a where
- gt :: a -> a -> Bool
-
-instance Ord_ Int where
- gt = ordIntGt
-
-search
- = \ a bs -> if gt (hd bs) a
- then False
- else if eq a (hd bs) then True else search a (tl bs)
-
-
-hd :: [a] -> a
-hd (a:as) = a
-
-tl :: [a] -> [a]
-tl (a:as) = as
-
-ordIntGt :: Int -> Int -> Bool
-ordIntGt 2 3 = True
-
-eqIntEq :: Int -> Int -> Bool
-eqIntEq 2 3 = True
-
-
-
-
-{-
-
-===============================================
-Main.Eq__INST_PreludeBuiltin.Int =
- let
- AbsBinds [] [] [(eq, eq)]
- {- nonrec -}
- {-# LINE 2 "test3.hs" -}
-
- eq :: PreludeBuiltin.Int -> PreludeBuiltin.Int -> PreludeCore.Bool
- eq = Main.eqIntEq
- in ({-dict-} [] [eq])
-
-Main.Eq__INST_PreludeBuiltin.List =
- /\ t135 ->
- \{-dict-} _dict138 ->
- let
- {- nonrec -}
- _dict136 = {-singleDict-} _dict138
- {- nonrec -}
- _dict129 = {-singleDict-} _dict136
- AbsBinds [] [] [(eq, eq)]
- {- nonrec -}
-
- _dict133 =
- Main.Eq__INST_PreludeBuiltin.List
- [t135] [{-singleDict-} _dict136]
- {- nonrec -}
- {-# LINE 5 "test3.hs" -}
-
- eq :: [t135] -> [t135] -> PreludeCore.Bool
- eq = \ xs ys ->
-
-if (Main.null t135) xs then
- (Main.null t135) ys
- else
-
- if (Main.null t135) ys then
- PreludeCore.False
- else
-
- Main.and
-
-
- ((Main.Eq_.eq t135 _dict129)
-
-
- ((Main.hd t135) xs)
- ((Main.hd t135) ys))
-
-
-
-
-
-
-(Main.Eq_.eq [t135] _dict133)
-
-
-
- ((Main.tl t135) xs)
- ((Main.tl t135) ys))
- in ({-dict-} [] [eq])
-Main.Ord__INST_PreludeBuiltin.Int =
- let
- {- nonrec -}
- _dict142 = Main.Eq__INST_PreludeBuiltin.Int [] []
- AbsBinds [] [] [(gt, gt)]
- {- nonrec -}
- {-# LINE 16 "test3.hs" -}
-
- gt :: PreludeBuiltin.Int -> PreludeBuiltin.Int -> PreludeCore.Bool
- gt = Main.ordIntGt
- in ({-dict-} [_dict142] [gt])
-
-Main.Eq_.eq = /\ a -> \{-classdict-} [] [eq] -> eq
-
-Main.Ord_.gt = /\ a -> \{-classdict-} [_dict56] [gt] -> gt
-
-Main.Ord__TO_Main.Eq_ = /\ a -> \{-classdict-} [_dict58] [gt] -> ???_dict58???
-
-AbsBinds [t60] [] [(hd, Main.hd)]
- {- nonrec -}
-
-
-
- hd :: [t60] -> t60
- hd (a PreludeBuiltin.: as)
- = a
-
-AbsBinds [t68] [] [(tl, Main.tl)]
- {- nonrec -}
-
-
-
-
- tl :: [t68] -> [t68]
- tl (a PreludeBuiltin.: as)
- = as
-
-
-AbsBinds [t91] [_dict85, _dict88] [(search, Main.search)]
- {- rec -}
- {-# LINE 19 "test3.hs" -}
-
-
- search :: t91 -> [t91] -> PreludeCore.Bool
- search
- = \ a bs ->
-
-
-if (Main.Ord_.gt t91 _dict85) ((Main.hd t91) bs) a then
- PreludeCore.False
- else
-
- if (Main.Eq_.eq t91 _dict88) a ((Main.hd t91) bs) then
- PreludeCore.True
- else
-
- search a ((Main.tl t91) bs)
-AbsBinds [] [] [(and, Main.and)]
- {- nonrec -}
- and :: PreludeCore.Bool -> PreludeCore.Bool -> PreludeCore.Bool
- and PreludeCore.True PreludeCore.True
- = PreludeCore.True
-AbsBinds [] [] [(ordIntGt, Main.ordIntGt)]
- {- nonrec -}
- _dict97 = PreludeCore.Num_INST_PreludeBuiltin.Int [] []
- {- nonrec -}
- _dict98 = PreludeCore.Eq_INST_PreludeBuiltin.Int [] []
- {- nonrec -}
- _dict100 = PreludeCore.Num_INST_PreludeBuiltin.Int [] []
- {- nonrec -}
- _dict101 = PreludeCore.Eq_INST_PreludeBuiltin.Int [] []
- {- nonrec -}
-
-
-
- ordIntGt :: PreludeBuiltin.Int -> PreludeBuiltin.Int -> PreludeCore.Bool
- ordIntGt
- 2 3 = PreludeCore.True
-AbsBinds [] [] [(eqIntEq, Main.eqIntEq)]
- {- nonrec -}
- _dict105 = PreludeCore.Num_INST_PreludeBuiltin.Int [] []
- {- nonrec -}
- _dict106 = PreludeCore.Eq_INST_PreludeBuiltin.Int [] []
- {- nonrec -}
- _dict108 = PreludeCore.Num_INST_PreludeBuiltin.Int [] []
- {- nonrec -}
- _dict109 = PreludeCore.Eq_INST_PreludeBuiltin.Int [] []
- {- nonrec -}
-
- eqIntEq :: PreludeBuiltin.Int -> PreludeBuiltin.Int -> PreludeCore.Bool
- eqIntEq
- 2 3 = PreludeCore.True
-
-
-AbsBinds [t112] [] [(null, Main.null)]
- {- nonrec -}
-
- null :: [t112] -> PreludeCore.Bool
- null [] = PreludeCore.True
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail043.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail043.stderr
deleted file mode 100644
index 7cd3faf53e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail043.stderr
+++ /dev/null
@@ -1,21 +0,0 @@
-
-tcfail043.hs:38:17:
- Ambiguous type variable `a0' in the constraints:
- (Ord_ a0) arising from a use of `gt' at tcfail043.hs:38:17-18
- (Eq_ a0) arising from a use of `eq' at tcfail043.hs:40:25-26
- Possible cause: the monomorphism restriction applied to the following:
- search :: a0 -> [a0] -> Bool (bound at tcfail043.hs:37:1)
- Probable fix: give these definition(s) an explicit type signature
- or use -XNoMonomorphismRestriction
- In the expression: gt (hd bs) a
- In the expression:
- if gt (hd bs) a then
- False
- else
- if eq a (hd bs) then True else search a (tl bs)
- In the expression:
- \ a bs
- -> if gt (hd bs) a then
- False
- else
- if eq a (hd bs) then True else search a (tl bs)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail043.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail043.stderr-hugs
deleted file mode 100644
index 2153721a6d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail043.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "tcfail043.hs":38 - Unresolved top-level overloading
-*** Binding : search
-*** Outstanding context : Ord_ b
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail044.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail044.hs
deleted file mode 100644
index b271d0f977..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail044.hs
+++ /dev/null
@@ -1,22 +0,0 @@
--- !!! tcfail044: duplicated type variable in instance decls
---
-module ShouldFail where
-
-instance (Eq a) => Eq (a->a)
-instance Show (a->b)
-
-instance (Num a) => Num (a->a) where
- f + g = \x -> f x + g x
- negate f = \x -> - (f x)
- f * g = \x -> f x * g x
- fromInteger n = \x -> fromInteger n
-
-ss :: Float -> Float
-cc :: Float -> Float
-tt :: Float -> Float
-
-ss = sin * sin
-cc = cos * cos
-tt = ss + cc
-
---main = putStr ((show (tt 0.4))++ " "++(show (tt 1.652)))
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail044.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail044.stderr
deleted file mode 100644
index 03ad2fb705..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail044.stderr
+++ /dev/null
@@ -1,16 +0,0 @@
-
-tcfail044.hs:5:20:
- Illegal instance declaration for `Eq (a -> a)'
- (All instance types must be of the form (T a1 ... an)
- where a1 ... an are *distinct type variables*,
- and each type variable appears at most once in the instance head.
- Use -XFlexibleInstances if you want to disable this.)
- In the instance declaration for `Eq (a -> a)'
-
-tcfail044.hs:8:21:
- Illegal instance declaration for `Num (a -> a)'
- (All instance types must be of the form (T a1 ... an)
- where a1 ... an are *distinct type variables*,
- and each type variable appears at most once in the instance head.
- Use -XFlexibleInstances if you want to disable this.)
- In the instance declaration for `Num (a -> a)'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail044.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail044.stderr-hugs
deleted file mode 100644
index 6fe05624cd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail044.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail044.hs":5 - Repeated type variable "a" in instance head
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail046.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail046.hs
deleted file mode 100644
index 67225acde0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail046.hs
+++ /dev/null
@@ -1,27 +0,0 @@
--- !! function types in deriving Eq things
--- From a bug report by Dave Harrison <D.A.Harrison@newcastle.ac.uk>
-
-module ShouldFail where
-
-
-type Process a = Pid -> Time -> Message a -> ( MessList a,
- Continuation a)
-
-data Continuation a = Do (Process a) deriving Eq
-
-
-type ProcList a = [ (Pid, Status, Process a) ]
-data Status = Active | Passive | Busy Integer | Terminated
- deriving Eq
-
-
-data Message a = Create (Process a) | Created Pid | Activate Pid |
- Passivate Pid | Terminate Pid | Wait Pid Time |
- Query Pid a | Data Pid a | Event |
- Output Pid String
- deriving Eq
-
-type MessList a = [ Message a ]
-
-type Pid = Integer
-type Time = Integer
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail046.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail046.stderr
deleted file mode 100644
index 1b668d07a6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail046.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-
-tcfail046.hs:10:50:
- No instance for (Eq (Process a))
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Eq (Process a))
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Eq (Continuation a))
-
-tcfail046.hs:22:25:
- No instance for (Eq (Process a))
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Eq (Process a))
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Eq (Message a))
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail046.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail046.stderr-hugs
deleted file mode 100644
index 583bd7ffd8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail046.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail046.hs":9 - An instance of Eq (Process a) is required to derive Eq (Continuation a)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail047.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail047.hs
deleted file mode 100644
index f3cdb19741..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail047.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module ShouldFail where
-
-class A a where
- op1 :: a -> a
-
-instance A (a,(b,c)) where
- op1 a = a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail047.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail047.stderr
deleted file mode 100644
index e99d9df755..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail047.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail047.hs:6:10:
- Illegal instance declaration for `A (a, (b, c))'
- (All instance types must be of the form (T a1 ... an)
- where a1 ... an are *distinct type variables*,
- and each type variable appears at most once in the instance head.
- Use -XFlexibleInstances if you want to disable this.)
- In the instance declaration for `A (a, (b, c))'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail047.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail047.stderr-hugs
deleted file mode 100644
index 8b2a529fe8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail047.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail047.hs":6 - Syntax error in instance head (variable expected)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail048.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail048.hs
deleted file mode 100644
index f4400e2fa0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail048.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldFail where
-
-class (B a) => C a where
- op1 :: a -> a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail048.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail048.stderr
deleted file mode 100644
index 569b85f915..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail048.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-tcfail048.hs:3:7: Not in scope: type constructor or class `B'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail048.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail048.stderr-hugs
deleted file mode 100644
index 8ae3da6dea..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail048.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail048.hs":3 - Undefined class "B"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail049.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail049.hs
deleted file mode 100644
index 64dee54a5c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail049.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-f x = g x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail049.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail049.stderr
deleted file mode 100644
index 750a65bc3c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail049.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-tcfail049.hs:3:7: Not in scope: `g'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail049.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail049.stderr-hugs
deleted file mode 100644
index 95c25d66e3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail049.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail049.hs":3 - Undefined variable "g"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail050.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail050.hs
deleted file mode 100644
index c0cee979f7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail050.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-f x = B x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail050.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail050.stderr
deleted file mode 100644
index 9115af93fb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail050.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-tcfail050.hs:3:7: Not in scope: data constructor `B'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail050.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail050.stderr-hugs
deleted file mode 100644
index d3153a8875..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail050.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail050.hs":3 - Undefined data constructor "B"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail051.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail051.hs
deleted file mode 100644
index 1b8e251c40..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail051.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-module ShouldFail where
-
-instance B Bool where
- op1 a = a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail051.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail051.stderr
deleted file mode 100644
index 97d4b13a1e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail051.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-tcfail051.hs:3:10: Not in scope: type constructor or class `B'
-
-tcfail051.hs:4:2: `op1' is not a (visible) method of class `B'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail051.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail051.stderr-hugs
deleted file mode 100644
index 6f6d9689cd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail051.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail051.hs":3 - Undefined class "B"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail052.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail052.hs
deleted file mode 100644
index e9be21e6f2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail052.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-data C a = B a c
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail052.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail052.stderr
deleted file mode 100644
index 9ffa31c227..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail052.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-tcfail052.hs:3:16: Not in scope: type variable `c'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail052.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail052.stderr-hugs
deleted file mode 100644
index 57866de750..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail052.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail052.hs":3 - Undefined type variable "c"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail053.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail053.hs
deleted file mode 100644
index d13e606434..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail053.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module TcFail where
-
-data B = C A
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail053.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail053.stderr
deleted file mode 100644
index 9889c3f0f6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail053.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-tcfail053.hs:3:12: Not in scope: type constructor or class `A'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail053.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail053.stderr-hugs
deleted file mode 100644
index 85bd6abcc6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail053.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail053.hs":3 - Undefined type constructor "A"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail054.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail054.hs
deleted file mode 100644
index a4e724cf18..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail054.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-f (B a) = True
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail054.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail054.stderr
deleted file mode 100644
index 1a5cfca053..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail054.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-tcfail054.hs:3:4: Not in scope: data constructor `B'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail054.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail054.stderr-hugs
deleted file mode 100644
index 2a20bb69d2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail054.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail054.hs":3 - Undefined data constructor "B"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail055.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail055.hs
deleted file mode 100644
index f61c5a81be..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail055.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module ShouldFail where
-
-f x = (x + 1 :: Int) :: Float
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail055.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail055.stderr
deleted file mode 100644
index ac012da98e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail055.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail055.hs:3:8:
- Couldn't match expected type `Float' with actual type `Int'
- In the expression: (x + 1 :: Int) :: Float
- In an equation for `f': f x = (x + 1 :: Int) :: Float
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail055.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail055.stderr-hugs
deleted file mode 100644
index c9d13c2991..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail055.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail055.hs":3 - Type error in type annotation
-*** Term : x + 1
-*** Type : Int
-*** Does not match : Float
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail056.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail056.hs
deleted file mode 100644
index a8a1315be7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail056.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-module ShouldFail where
-
-data Foo = MkFoo Bool
-
-instance Eq Foo where
- (MkFoo x) == (MkFoo y) = x == y
-
-instance Eq Foo where
- -- forgot to type "Ord" above
- (MkFoo x) <= (MkFoo y) = x <= y
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail056.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail056.stderr
deleted file mode 100644
index 09505ed945..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail056.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-tcfail056.hs:10:15: `<=' is not a (visible) method of class `Eq'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail056.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail056.stderr-hugs
deleted file mode 100644
index d1521e1a78..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail056.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail056.hs":8 - Overlapping instances for class "Eq"
-*** This instance : Eq Foo
-*** Overlaps with : Eq Foo
-*** Common instance : Eq Foo
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail057.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail057.hs
deleted file mode 100644
index 9659cf0801..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail057.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldFail where
-
--- !!! inadvertently using -> instead of =>
-
-f :: (RealFrac a) -> a -> a
-f x = x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail057.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail057.stderr
deleted file mode 100644
index d67b969f37..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail057.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail057.hs:5:7:
- Class `RealFrac' used as a type
- In the type signature for `f':
- f :: (RealFrac a) -> a -> a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail057.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail057.stderr-hugs
deleted file mode 100644
index c18a43df4a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail057.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail057.hs":5 - Undefined type constructor "RealFrac"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail058.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail058.hs
deleted file mode 100644
index 2763e97bc7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail058.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module ShouldFail where
-import Data.Array
-
--- !!! inadvertently using => instead of ->
-
-f :: (Array a) => a -> b
-f x = x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail058.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail058.stderr
deleted file mode 100644
index 4c017c8681..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail058.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-tcfail058.hs:6:6:
- Type constructor `Array' used as a class
- In the type signature for `f': f :: Array a => a -> b
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail058.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail058.stderr-hugs
deleted file mode 100644
index dee94737b2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail058.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail058.hs":6 - Undefined class "Array"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail061.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail061.hs
deleted file mode 100644
index 35e502c64e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail061.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !! signature bugs exposed by Sigbjorn Finne
---
-module ShouldFail where
-
-type Flarp a = (b,b)
-
---More fun can be had if we change the signature slightly
-
-type Bob a = a
-
-type Flarp2 a = Bob (b,b)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail061.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail061.stderr
deleted file mode 100644
index a047863e9b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail061.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail061.hs:5:17: Not in scope: type variable `b'
-
-tcfail061.hs:5:19: Not in scope: type variable `b'
-
-tcfail061.hs:11:22: Not in scope: type variable `b'
-
-tcfail061.hs:11:24: Not in scope: type variable `b'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail061.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail061.stderr-hugs
deleted file mode 100644
index 47faffae38..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail061.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail061.hs":11 - Undefined type variable "b"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail062.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail062.hs
deleted file mode 100644
index f37dc1e556..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail062.hs
+++ /dev/null
@@ -1,37 +0,0 @@
--- !!! bug report from Satnam
---
-module ShouldFail
-where
-
-type Module = (String,[Declaration])
-
-data Declaration
- = Architecture String StructuralExpression |
- Behaviour String Parameter Parameter BehaviouralExpression
- deriving (Eq, Show)
-
-data Parameter = ParameterVariable String | ParameterList [Parameter]
- deriving (Eq, Show)
-
-nameOfModule :: Module -> String
-nameOfModule (name, _) = name
-
-data StructuralExpression
- = Variable String |
- Serial StructuralExpression StructuralExpression |
- Par [StructuralExpression]
- deriving (Eq, Show)
-
-data BehaviouralExpression
- = BehaviouralVariable String
- | AndExpr BehaviouralExpression BehaviouralExpression
- | OrExpr BehaviouralExpression BehaviouralExpression
- | NotExpr BehaviouralExpression
- deriving (Eq, Show)
-
-
-type BehaviouralRelation
- = (behaviouralExpression, behaviouralExpression)
----- ^ typo ----------------^ typo (but so what?)
-
-type BehaviouralRelationList = [BehaviouralRelation]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail062.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail062.stderr
deleted file mode 100644
index 9ee1bb75a9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail062.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail062.hs:34:6:
- Not in scope: type variable `behaviouralExpression'
-
-tcfail062.hs:34:29:
- Not in scope: type variable `behaviouralExpression'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail062.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail062.stderr-hugs
deleted file mode 100644
index 261199229e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail062.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail062.hs":34 - Undefined type variable "behaviouralExpression"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail063.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail063.hs
deleted file mode 100644
index 6e012dbb24..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail063.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- !!! no type variable on a context
--- !!! reported by Sigbjorn Finne
-
-module ShouldFail where
-
-moby :: Num => Int -> a -> Int
-moby x y = x+y
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail063.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail063.stderr
deleted file mode 100644
index 1a1ee507f5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail063.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail063.hs:6:9:
- `Num' is not applied to enough type arguments
- Expected kind `?', but `Num' has kind `* -> *'
- In the type signature for `moby': moby :: Num => Int -> a -> Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail063.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail063.stderr-hugs
deleted file mode 100644
index 3ddc482a66..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail063.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail063.hs":6 - Haskell 98 does not support tag classes
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail065.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail065.hs
deleted file mode 100644
index 3029b1978c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail065.hs
+++ /dev/null
@@ -1,37 +0,0 @@
-{-
-
-------- Forwarded Message
-
-Date: Wed, 30 Nov 1994 16:34:18 +0100
-From: John Hughes <rjmh@cs.chalmers.se>
-To: augustss@cs.chalmers.se, simonpj@dcs.gla.ac.uk
-Subject: Nice little program
-
-
-Lennart, Simon,
-
-You might like to look at the fun little program below.
-
-THUMBS DOWN to hbc for compiling it (it prints [72, 101, 108, 108, 111])
-THUMBS UP to ghc for rejecting it --- but what an error message!
-nhc and gofer both reject it with the right error message.
-I haven't tried Yale Haskell.
-
-Enjoy!
-- ----------------------------
--}
-
-class HasX a where
- setX :: x->a->a
-
-data X x = X x
-instance HasX (X x) where
- setX x (X _) = X x
-
-changetype x = case setX x (X (error "change type!")) of X y->y
-
-main = print (changetype "Hello" :: [Int])
-
-{-
-------- End of Forwarded Message
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail065.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail065.stderr
deleted file mode 100644
index 9d94b920ff..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail065.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-tcfail065.hs:29:20:
- Couldn't match type `x1' with `x'
- `x1' is a rigid type variable bound by
- the type signature for setX :: x1 -> X x -> X x
- at tcfail065.hs:29:3
- `x' is a rigid type variable bound by
- the instance declaration at tcfail065.hs:28:18
- In the first argument of `X', namely `x'
- In the expression: X x
- In an equation for `setX': setX x (X _) = X x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail065.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail065.stderr-hugs
deleted file mode 100644
index ef6178e6f2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail065.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail065.hs":29 - Inferred type is not general enough
-*** Expression : setX
-*** Expected type : HasX (X a) => b -> X a -> X a
-*** Inferred type : HasX (X a) => a -> X a -> X a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail067.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail067.hs
deleted file mode 100644
index bcdb0c75ed..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail067.hs
+++ /dev/null
@@ -1,98 +0,0 @@
-{-# LANGUAGE DatatypeContexts #-}
-module ShouldFail where
-
-infixr 1 `rangeOf`
-
-data Ord a => SubRange a = SubRange (a, a) a
-
-type IntSubRange = SubRange Int
-
-
-subRangeValue :: SubRange a -> a
-subRangeValue (SubRange (lower, upper) value) = value
-
-subRange :: SubRange a -> (a, a)
-subRange (SubRange r value) = r
-
-newRange :: (Ord a, Show a) => (a, a) -> a -> SubRange a
-newRange r value = checkRange (SubRange r value)
-
-
-checkRange :: (Ord a, Show a) => SubRange a -> SubRange a
-checkRange (SubRange (lower, upper) value)
- = if (value < lower) || (value > upper) then
- error ("### sub range error. range = " ++ show lower ++
- ".." ++ show upper ++ " value = " ++ show value ++ "\n")
- else
- SubRange (lower, upper) value
-
-
-instance Eq a => Eq (SubRange a) where
- (==) a b = subRangeValue a == subRangeValue b
-
-instance (Ord a) => Ord (SubRange a) where
- (<) = relOp (<)
- (<=) = relOp (<=)
- (>=) = relOp (>=)
- (>) = relOp (>)
-
-relOp :: Ord a => (a->a->Bool) -> SubRange a -> SubRange a -> Bool
-relOp op a b = (subRangeValue a) `op` (subRangeValue b)
-
-rangeOf :: (Ord a, Show a) => SubRange a -> SubRange a -> SubRange a
-rangeOf a b = checkRange (SubRange (subRange b) (subRangeValue a))
-
-showRange :: Show a => SubRange a -> String
-showRange (SubRange (lower, upper) value)
- = show value ++ " :" ++ show lower ++ ".." ++ show upper
-
-showRangePair :: (Show a, Show b) => (SubRange a, SubRange b) -> String
-showRangePair (a, b)
- = "(" ++ showRange a ++ ", " ++ showRange b ++ ")"
-
-showRangeTriple :: (Show a, Show b, Show c) =>
- (SubRange a, SubRange b, SubRange c) -> String
-showRangeTriple (a, b, c)
- = "(" ++ showRange a ++ ", " ++ showRange b ++ ", " ++ showRange c ++ ")"
-
-
-
-instance Num a => Num (SubRange a) where
- negate = numSubRangeNegate
- (+) = numSubRangeAdd
- (-) = numSubRangeSubtract
- (*) = numSubRangeMultiply
- fromInteger a = SubRange (fromInteger a, fromInteger a) (fromInteger a)
-
-numSubRangeNegate :: (Ord a, Num a) => SubRange a -> SubRange a
-numSubRangeNegate (SubRange (lower, upper) value)
- = checkRange (SubRange (lower, upper) (-value))
-
-numSubRangeBinOp :: Num a => (a -> a -> a) ->
- SubRange a -> SubRange a -> SubRange a
-numSubRangeBinOp op a b
- = SubRange (result, result) result
- where
- result = (subRangeValue a) `op` (subRangeValue b)
-
--- partain:
-numSubRangeAdd, numSubRangeSubtract, numSubRangeMultiply :: Num a => SubRange a -> SubRange a -> SubRange a
-
-numSubRangeAdd = numSubRangeBinOp (+)
-numSubRangeSubtract = numSubRangeBinOp (-)
-numSubRangeMultiply = numSubRangeBinOp (*)
-
-unsignedBits :: Int -> (Int, Int)
-unsignedBits n = (0, 2^n-1)
-
-signedBits :: Int -> (Int, Int)
-signedBits n = (-2^(n-1), 2^(n-1)-1)
-
-
-si_n :: Int -> Int -> IntSubRange
-si_n bits value = SubRange (signedBits bits) value
-
-si8, si10, si16 :: Int -> IntSubRange
-si8 = si_n 8
-si10 = si_n 10
-si16 = si_n 16
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail067.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail067.stderr
deleted file mode 100644
index 4c69c67391..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail067.stderr
+++ /dev/null
@@ -1,82 +0,0 @@
-
-tcfail067.hs:1:14:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
-
-tcfail067.hs:12:16:
- No instance for (Ord a)
- arising from a use of `SubRange'
- In the pattern: SubRange (lower, upper) value
- In an equation for `subRangeValue':
- subRangeValue (SubRange (lower, upper) value) = value
-
-tcfail067.hs:15:11:
- No instance for (Ord a)
- arising from a use of `SubRange'
- In the pattern: SubRange r value
- In an equation for `subRange': subRange (SubRange r value) = r
-
-tcfail067.hs:46:12:
- Could not deduce (Ord a) arising from a use of `SubRange'
- from the context (Show a)
- bound by the type signature for
- showRange :: Show a => SubRange a -> String
- at tcfail067.hs:(46,1)-(47,58)
- Possible fix:
- add (Ord a) to the context of
- the type signature for showRange :: Show a => SubRange a -> String
- In the pattern: SubRange (lower, upper) value
- In an equation for `showRange':
- showRange (SubRange (lower, upper) value)
- = show value ++ " :" ++ show lower ++ ".." ++ show upper
-
-tcfail067.hs:60:10:
- Could not deduce (Show (SubRange a))
- arising from the superclasses of an instance declaration
- from the context (Num a)
- bound by the instance declaration at tcfail067.hs:60:10-34
- Possible fix:
- add (Show (SubRange a)) to the context of the instance declaration
- or add an instance declaration for (Show (SubRange a))
- In the instance declaration for `Num (SubRange a)'
-
-tcfail067.hs:61:12:
- Could not deduce (Ord a) arising from a use of `numSubRangeNegate'
- from the context (Num a)
- bound by the instance declaration at tcfail067.hs:60:10-34
- Possible fix:
- add (Ord a) to the context of the instance declaration
- In the expression: numSubRangeNegate
- In an equation for `negate': negate = numSubRangeNegate
- In the instance declaration for `Num (SubRange a)'
-
-tcfail067.hs:65:19:
- Could not deduce (Ord a) arising from a use of `SubRange'
- from the context (Num a)
- bound by the instance declaration at tcfail067.hs:60:10-34
- Possible fix:
- add (Ord a) to the context of the instance declaration
- In the expression:
- SubRange (fromInteger a, fromInteger a) (fromInteger a)
- In an equation for `fromInteger':
- fromInteger a
- = SubRange (fromInteger a, fromInteger a) (fromInteger a)
- In the instance declaration for `Num (SubRange a)'
-
-tcfail067.hs:74:5:
- Could not deduce (Ord a) arising from a use of `SubRange'
- from the context (Num a)
- bound by the type signature for
- numSubRangeBinOp :: Num a =>
- (a -> a -> a) -> SubRange a -> SubRange a -> SubRange a
- at tcfail067.hs:(73,1)-(76,53)
- Possible fix:
- add (Ord a) to the context of
- the type signature for
- numSubRangeBinOp :: Num a =>
- (a -> a -> a) -> SubRange a -> SubRange a -> SubRange a
- In the expression: SubRange (result, result) result
- In an equation for `numSubRangeBinOp':
- numSubRangeBinOp op a b
- = SubRange (result, result) result
- where
- result = (subRangeValue a) `op` (subRangeValue b)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail067.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail067.stderr-hugs
deleted file mode 100644
index ac6853972f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail067.stderr-hugs
+++ /dev/null
@@ -1,5 +0,0 @@
-ERROR "tcfail067.hs":12 - Cannot justify constraints in explicitly typed binding
-*** Expression : subRangeValue
-*** Type : SubRange a -> a
-*** Given context : ()
-*** Constraints : Ord a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail068.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail068.hs
deleted file mode 100644
index beae0f8359..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail068.hs
+++ /dev/null
@@ -1,90 +0,0 @@
--- !! Make sure that state threads don't escape
--- !! (example from Neil Ashton at York)
---
-module ShouldFail where
-
-import GHC.Arr
-import Control.Monad.ST ( runST )
-
-type IndTree s t = STArray s (Int,Int) t
-
-itgen :: Constructed a => (Int,Int) -> a -> IndTree s a
-itgen n x =
- runST (
- newSTArray ((1,1),n) x)
-
-itiap :: Constructed a => (Int,Int) -> (a->a) -> IndTree s a -> IndTree s a
-itiap i f arr =
- runST (
- readSTArray arr i >>= \val ->
- writeSTArray arr i (f val) >>
- return arr)
-
-itrap :: Constructed a => ((Int,Int),(Int,Int)) -> (a->a) -> IndTree s a -> IndTree s a
-itrap ((i,k),(j,l)) f arr = runST(itrap' i k)
- where
- itrap' i k = if k > l then return arr
- else (itrapsnd i k >>
- itrap' i (k+1))
- itrapsnd i k = if i > j then return arr
- else (readSTArray arr (i,k) >>= \val ->
- writeSTArray arr (i,k) (f val) >>
- itrapsnd (i+1) k)
-
-itrapstate :: Constructed b => ((Int,Int),(Int,Int)) -> (a->b->(a,b)) -> ((Int,Int)->c->a) ->
- (a->c) -> c -> IndTree s b -> (c, IndTree s b)
-itrapstate ((i,k),(j,l)) f c d s arr = runST(itrapstate' i k s)
- where
- itrapstate' i k s = if k > l then return (s,arr)
- else (itrapstatesnd i k s >>= \(s,arr) ->
- itrapstate' i (k+1) s)
- itrapstatesnd i k s = if i > j then return (s,arr)
- else (readSTArray arr (i,k) >>= \val ->
- let (newstate, newval) = f (c (i,k) s) val
- in writeSTArray arr (i,k) newval >>
- itrapstatesnd (i+1) k (d newstate))
-
--- stuff from Auxiliary: copied here (partain)
-
-sap :: (a->b) -> (c,a) -> (c,b)
-sap f (x,y) = (x, f y)
-
-fap :: (a->b) -> (a,c) -> (b,c)
-fap f (x,y) = (f x, y)
-
-nonempty :: [a] -> Bool
-nonempty [] = False
-nonempty (_:_) = True
-
--- const :: a -> b -> a
--- const k x = k
-
--- id :: a -> a
--- id x = x
-
-compose :: [a->a] -> a -> a
-compose = foldr (.) id
-
-class Constructed a where
- normal :: a -> Bool
-
-instance Constructed Bool where
- normal True = True
- normal False = True
-
-instance Constructed Int where
- normal 0 = True
- normal n = True
-
-instance (Constructed a, Constructed b) => Constructed (a,b) where
- normal (x,y) = normal x && normal y
-
--- pair :: (Constructed a, Constructed b) => a -> b -> (a,b)
--- pair x y | normal x && normal y = (x,y)
-
-instance Constructed (Maybe a) where
- normal Nothing = True
- normal (Just _) = True
-
-just :: Constructed a => a -> Maybe a
-just x | normal x = Just x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail068.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail068.stderr
deleted file mode 100644
index afc671a8bf..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail068.stderr
+++ /dev/null
@@ -1,92 +0,0 @@
-
-tcfail068.hs:14:9:
- Could not deduce (s1 ~ s)
- from the context (Constructed a)
- bound by the type signature for
- itgen :: Constructed a => (Int, Int) -> a -> IndTree s a
- at tcfail068.hs:(12,1)-(14,31)
- `s1' is a rigid type variable bound by
- a type expected by the context: GHC.ST.ST s1 (IndTree s a)
- at tcfail068.hs:13:9
- `s' is a rigid type variable bound by
- the type signature for
- itgen :: Constructed a => (Int, Int) -> a -> IndTree s a
- at tcfail068.hs:12:1
- Expected type: GHC.ST.ST s (IndTree s1 a)
- Actual type: GHC.ST.ST s (STArray s (Int, Int) a)
- In the return type of a call of `newSTArray'
- In the first argument of `runST', namely
- `(newSTArray ((1, 1), n) x)'
-
-tcfail068.hs:20:22:
- Could not deduce (s ~ s1)
- from the context (Constructed a)
- bound by the type signature for
- itiap :: Constructed a =>
- (Int, Int) -> (a -> a) -> IndTree s a -> IndTree s a
- at tcfail068.hs:(17,1)-(21,19)
- `s' is a rigid type variable bound by
- the type signature for
- itiap :: Constructed a =>
- (Int, Int) -> (a -> a) -> IndTree s a -> IndTree s a
- at tcfail068.hs:17:1
- `s1' is a rigid type variable bound by
- a type expected by the context: GHC.ST.ST s1 (IndTree s a)
- at tcfail068.hs:18:9
- Expected type: STArray s1 (Int, Int) a
- Actual type: IndTree s a
- In the first argument of `writeSTArray', namely `arr'
- In the first argument of `(>>)', namely
- `writeSTArray arr i (f val)'
-
-tcfail068.hs:24:35:
- Could not deduce (s ~ s1)
- from the context (Constructed a)
- bound by the type signature for
- itrap :: Constructed a =>
- ((Int, Int), (Int, Int)) -> (a -> a) -> IndTree s a -> IndTree s a
- at tcfail068.hs:(24,1)-(32,41)
- `s' is a rigid type variable bound by
- the type signature for
- itrap :: Constructed a =>
- ((Int, Int), (Int, Int)) -> (a -> a) -> IndTree s a -> IndTree s a
- at tcfail068.hs:24:1
- `s1' is a rigid type variable bound by
- a type expected by the context: GHC.ST.ST s1 (IndTree s a)
- at tcfail068.hs:24:29
- Expected type: GHC.ST.ST s1 (IndTree s a)
- Actual type: GHC.ST.ST s (IndTree s a)
- In the return type of a call of `itrap''
- In the first argument of `runST', namely `(itrap' i k)'
-
-tcfail068.hs:36:46:
- Could not deduce (s ~ s1)
- from the context (Constructed b)
- bound by the type signature for
- itrapstate :: Constructed b =>
- ((Int, Int), (Int, Int))
- -> (a -> b -> (a, b))
- -> ((Int, Int) -> c -> a)
- -> (a -> c)
- -> c
- -> IndTree s b
- -> (c, IndTree s b)
- at tcfail068.hs:(36,1)-(45,66)
- `s' is a rigid type variable bound by
- the type signature for
- itrapstate :: Constructed b =>
- ((Int, Int), (Int, Int))
- -> (a -> b -> (a, b))
- -> ((Int, Int) -> c -> a)
- -> (a -> c)
- -> c
- -> IndTree s b
- -> (c, IndTree s b)
- at tcfail068.hs:36:1
- `s1' is a rigid type variable bound by
- a type expected by the context: GHC.ST.ST s1 (c, IndTree s b)
- at tcfail068.hs:36:40
- Expected type: GHC.ST.ST s1 (c, IndTree s b)
- Actual type: GHC.ST.ST s (c, IndTree s b)
- In the return type of a call of `itrapstate''
- In the first argument of `runST', namely `(itrapstate' i k s)'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail069.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail069.hs
deleted file mode 100644
index 63684fa9db..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail069.hs
+++ /dev/null
@@ -1,48 +0,0 @@
-{-
-From: Marc van Dongen <dongen@cs.ucc.ie>
-Date: Wed, 9 Apr 1997 14:06:39 +0100 (BST)
-
-I just wanted to report that the erroneous and tiny
-program added below can not be compiled within 6MB of
-heap (Admitted it can be compiled with a bigger heap).
-It was part of a bigger program that could not be
-compiled within 20MB of heap.
-
-[GHC 2.03 and earlier.] Turned out to be a bug in the
-error recovery mechanism.
-
--}
-
-module ShouldFail where
-
-too_much :: [Int] -> [(Int,Int)] -> [(Int,[Int])] -> Bool
-too_much ds ((k,m):q1) s0
- = case (list1,list2) of
- [] -> error "foo" -- too_much ds q2m s2m
- where list1 = ds
- list2 = ds
- {-
- list1 = [k' | k' <- ds, k == k']
- list2 = [k' | k' <- ds, m == k']
- s1 = aas s0 k
- raM = []
- raKM = listUnion (\a b -> a) [] []
- s1k = s1
- q1k = raM
- s2k = s1
- q2k = raM
- s2m = s1
- q2m = raM
- s2km = foldr (flip aas) s1 raKM
- q2km = raKM
- -}
-
-listUnion :: (v -> v -> Bool) -> [v] -> [v] -> [v]
-listUnion _ _ _
- = []
-
-aas :: (a,b) -> a -> (a,b)
-aas s _
- = s
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail069.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail069.stderr
deleted file mode 100644
index 4c40526b5b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail069.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail069.hs:21:7:
- Couldn't match expected type `([Int], [Int])'
- with actual type `[t0]'
- In the pattern: []
- In a case alternative: [] -> error "foo"
- In the expression: case (list1, list2) of { [] -> error "foo" }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail069.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail069.stderr-hugs
deleted file mode 100644
index 4566c1d7a5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail069.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail069.hs":20 - Type error in case pattern
-*** Term : []
-*** Type : [a]
-*** Does not match : ([Int],[Int])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail070.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail070.hs
deleted file mode 100644
index 6cd2a28404..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail070.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-
-From: Wolfgang Drotschmann <drotschm@athene.informatik.uni-bonn.de>
-Resent-Date: Thu, 15 May 1997 17:23:09 +0100
-
-I'm still using the old ghc-2.01. In one program I ran into a problem
-I couldn't fix. But I played around with it, I found a small little
-script which reproduces it very well:
-
-panic! (the `impossible' happened):
- tlist
--}
-
-module TcFail where
-
-type State = ([Int] Bool)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail070.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail070.stderr
deleted file mode 100644
index 31dd66e77f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail070.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail070.hs:15:15:
- `[Int]' is applied to too many type arguments
- In the type `[Int] Bool'
- In the type synonym declaration for `State'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail070.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail070.stderr-hugs
deleted file mode 100644
index e96e9fcf6a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail070.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail070.hs":15 - Illegal type "[] Int Bool" in constructor application
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail071.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail071.hs
deleted file mode 100644
index cbbd25070f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail071.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- !!! Mis-matched contexts in a mutually recursive group
-
-{- # LANGUAGE NoRelaxedPolyRec #-}
--- With the new type checker you can't turn off RelaxedPolyRec
--- so this test always succeeds
-
-module ShouldFail where
-
-f :: (Ord d) => d -> d
-f c = g c
-
-g :: e -> e
-g c = c
- where p = f (1 :: Int)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail071.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail071.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail071.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail072.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail072.hs
deleted file mode 100644
index 501976e5be..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail072.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-{- This program crashed GHC 2.03
-
- From: Marc van Dongen <dongen@cs.ucc.ie>
- Date: Sat, 31 May 1997 14:35:40 +0100 (BST)
-
- zonkIdOcc: g_aoQ
-
- panic! (the `impossible' happened):
- lookupBindC:no info!
- for: g_aoQ
- (probably: data dependencies broken by an optimisation pass)
- static binds for:
- Tmp.$d1{-rmM,x-}
- local binds for:
--}
-
-module ShouldFail where
-
-data AB p q = A
- | B p q
-
-g :: (Ord p,Ord q) => (AB p q) -> Bool
-g (B _ _) = g A
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail072.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail072.stderr
deleted file mode 100644
index 469e75849a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail072.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-
-tcfail072.hs:23:13:
- Ambiguous type variable `p0' in the constraint:
- (Ord p0) arising from a use of `g'
- Probable fix: add a type signature that fixes these type variable(s)
- In the expression: g A
- In an equation for `g': g (B _ _) = g A
-
-tcfail072.hs:23:13:
- Ambiguous type variable `q0' in the constraint:
- (Ord q0) arising from a use of `g'
- Probable fix: add a type signature that fixes these type variable(s)
- In the expression: g A
- In an equation for `g': g (B _ _) = g A
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail072.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail072.stderr-hugs
deleted file mode 100644
index 57ea305406..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail072.stderr-hugs
+++ /dev/null
@@ -1,5 +0,0 @@
-ERROR "tcfail072.hs":23 - Cannot justify constraints in explicitly typed binding
-*** Expression : g
-*** Type : (Ord a, Ord b) => AB a b -> Bool
-*** Given context : (Ord a, Ord b)
-*** Constraints : (Ord c, Ord d)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail073.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail073.hs
deleted file mode 100644
index c52d39ae08..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail073.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- what error do you get if you redefined Prelude instances?
-
-module ShouldFail where
-
-f :: (Eq a) => (a,a) -> (a,a) -> Bool
-f x y = x == y
-
-instance Eq a => Eq (a,b) where
- (m,n) == (o,p) = m == o
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail073.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail073.stderr
deleted file mode 100644
index 4d3bef99ac..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail073.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail073.hs:8:10:
- Duplicate instance declarations:
- instance Eq a => Eq (a, b) -- Defined at tcfail073.hs:8:10-25
- instance (Eq a, Eq b) => Eq (a, b) -- Defined in GHC.Classes
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail073.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail073.stderr-hugs
deleted file mode 100644
index 8148b896ae..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail073.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail073.hs":8 - Overlapping instances for class "Eq"
-*** This instance : Eq (a,b)
-*** Overlaps with : Eq (a,b)
-*** Common instance : Eq (a,b)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail075.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail075.hs
deleted file mode 100644
index c14f276b2d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail075.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
--- !!! Test top-level unboxed types
-
-module ShouldFail where
-
-import GHC.Base
-import GHC.Prim
-
-x = 1#
-
-y :: Int#
-y = x +# 1#
-
-main = let
- z = x -# y
- in
- if z ># 3# then putStrLn "Yes"
- else putStrLn "No"
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail075.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail075.stderr
deleted file mode 100644
index 2c251a7a84..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail075.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail075.hs:10:1:
- Top-level bindings for unlifted types aren't allowed: x = 1#
-
-tcfail075.hs:13:1:
- Top-level bindings for unlifted types aren't allowed: y = x +# 1#
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail076.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail076.hs
deleted file mode 100644
index abe96c5640..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail076.hs
+++ /dev/null
@@ -1,30 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
-{-
- From: Ralf Hinze <ralf@uran.informatik.uni-bonn.de>
- Date: Fri, 15 Aug 1997 15:20:51 +0200 (MET DST)
-
-I *suppose* that there is a bug in GHC's type checker. The following
-program, which I think is ill-typed, passes silently the type checker.
-Needless to say that it uses some of GHC's arcane type extensions.
--}
-
-module ShouldFail where
-
-data ContT m a = KContT (forall res. (a -> m res) -> m res)
-unKContT (KContT x) = x
-
-callcc :: ((a -> ContT m b) -> ContT m a) -> ContT m a
-callcc f = KContT (\cont -> unKContT (f (\a -> KContT (\cont' -> cont a))) cont)
-
-{-
-`ContT' is a continuation monad transformer. Note that we locally
-qualify over the result type `res' (sometimes called answer or
-output). IMHO this make it impossible to define control constructs
-like `callcc'. Let's have a closer look: the code of `callcc' contains
-the subexpression `KContT (\cont' -> cont a)'. To be well-typed the
-argument of `KContT' must have the type `(All res) => (a -> m res) -> m
-res'. Quantification is not possible, however, since the type variable
-in `cont's type cannot be forall'd, since it also appears at an outer
-level. Right? Or wrong?
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail076.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail076.stderr
deleted file mode 100644
index 9c380de958..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail076.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-tcfail076.hs:18:82:
- Couldn't match type `res' with `res1'
- `res' is a rigid type variable bound by
- a type expected by the context: (a -> m res) -> m res
- at tcfail076.hs:18:28
- `res1' is a rigid type variable bound by
- a type expected by the context: (b -> m res1) -> m res1
- at tcfail076.hs:18:64
- Expected type: m res1
- Actual type: m res
- In the return type of a call of `cont'
- In the expression: cont a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail076.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail076.stderr-hugs
deleted file mode 100644
index a4a05f09ba..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail076.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail076.hs":18 - Inferred type is not general enough
-*** Expression : \cont' -> cont a
-*** Expected type : (_29 -> _28 a) -> _28 a
-*** Inferred type : (_29 -> _28 _30) -> _28 _30
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail077.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail077.hs
deleted file mode 100644
index 54735b98cd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail077.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module ShouldFail where
-
--- !!! declaring a default method in a class that doesn't have that method.
-
-class Foo a where
- op :: a -> a
-
- op2 x = x -- Bogus declaration
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail077.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail077.stderr
deleted file mode 100644
index 105604f66c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail077.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-tcfail077.hs:8:3: `op2' is not a (visible) method of class `Foo'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail077.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail077.stderr-hugs
deleted file mode 100644
index eb9afb0826..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail077.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail077.hs":8 - No member "op2" in class "Foo"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail078.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail078.hs
deleted file mode 100644
index 1054f6d3d6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail078.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldFail where
-
--- !!! Using a type constructor as a class name
-
-f :: Integer i => i
-f = 0
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail078.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail078.stderr
deleted file mode 100644
index 60636c94bf..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail078.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-tcfail078.hs:5:6:
- Type constructor `Integer' used as a class
- In the type signature for `f': f :: Integer i => i
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail078.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail078.stderr-hugs
deleted file mode 100644
index 22a992258a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail078.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail078.hs":5 - Undefined class "Integer"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail079.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail079.hs
deleted file mode 100644
index ec42260d69..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail079.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
-module ShouldFail where
-
--- !!! unboxed field in newtype declaration
-
-import GHC.Exts ( Int# )
-
-newtype Unboxed = Unboxed Int#
-
-f = [ Unboxed 1#, Unboxed 2# ] -- shouldn't be allowed!
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail079.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail079.stderr
deleted file mode 100644
index 149f9b2171..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail079.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail079.hs:9:27:
- Expecting a lifted type, but `Int#' is unlifted
- Expected kind `*', but `Int#' has kind `#'
- In the type `Int#'
- In the definition of data constructor `Unboxed'
- In the newtype declaration for `Unboxed'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail080.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail080.hs
deleted file mode 100644
index b2a62cea54..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail080.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses #-}
-
--- !!! Multi-param type classes test: ambiguity bug
-
--- GHC actually accepts this program because
--- q :: Collection c a => a -> Bool
--- and there is no a priori reason to suppose that
--- q would be ambiguous in every context. For example,
--- it could be fine if we had
--- instance c Int where ...
--- Of course, it'd be hard to fill in the "..." in this particular
--- case, but that relies on observations about the form of the types
--- of the class methods, surely beyond what a compiler should do.
--- That's why GHC accepts it
-
-module ShouldFail where
-
-class Collection c a where
- empty :: c a
- add :: a -> c a -> c a
- isempty :: c a -> Bool
-
-singleton x = add x empty
-
-q x = isempty (singleton x)
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail080.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail080.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail080.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail080.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail080.stderr-hugs
deleted file mode 100644
index 790c9b97fa..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail080.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "tcfail080.hs":25 - Ambiguous type signature in inferred type
-*** ambiguous type : Collection a b => b -> Bool
-*** assigned to : q
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail082.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail082.hs
deleted file mode 100644
index 2d4307acb1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail082.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module Main(main) where
-import Data82
-import Inst82_1
-import Inst82_2
-
-data Baz = Baz deriving Read
-
-main = print ((read "FooData")::FooData)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail082.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail082.stderr
deleted file mode 100644
index 4fd34e6022..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail082.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-tcfail082.hs:2:1:
- Failed to load interface for `Data82'
- Use -v to see a list of the files searched for.
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail082.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail082.stderr-hugs
deleted file mode 100644
index 028512324c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail082.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail082.hs" - Can't find imported module "Inst82_2"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail083.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail083.hs
deleted file mode 100644
index a79be4e7ac..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail083.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-module ShouldFail where
-
-data Bar = Bar { flag :: Bool } deriving( Show )
-
-data State = State { bar :: Bar, baz :: Float }
-
-display :: State -> IO ()
-display (State{ bar = Bar { flag = f, baz = b }}) = print (f,b)
-
--- Typo! The line above should better be:
--- display (State{ bar = Bar { flag = f }, baz = b }) = print (f,b)
-
--- GHC 4.04 (as released) crashed with
--- panic! (the `impossible' happened): tcLookupValue: b{-r4n-}
--- Bug reported by Sven Panne
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail083.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail083.stderr
deleted file mode 100644
index 77794ffaa6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail083.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail083.hs:8:39:
- Constructor `Bar' does not have field `baz'
- In the pattern: Bar {flag = f, baz = b}
- In the pattern: State {bar = Bar {flag = f, baz = b}}
- In an equation for `display':
- display (State {bar = Bar {flag = f, baz = b}}) = print (f, b)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail083.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail083.stderr-hugs
deleted file mode 100644
index 5535438428..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail083.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail083.hs":8 - No constructor has all of the fields specified in Bar {flag = f, baz = b}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail084.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail084.hs
deleted file mode 100644
index 22b5456b1e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail084.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- !!! Check that using a label belonging to another constructor
--- !!! is flagged as being incorrect.
-module ShouldFail where
-
-data F
- = F { x :: Int }
- | G { y :: Int }
-
-z :: F
-z = F { y = 2 }
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail084.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail084.stderr
deleted file mode 100644
index 1a7e8c3e28..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail084.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail084.hs:10:5:
- Constructor `F' does not have field `y'
- In the expression: F {y = 2}
- In an equation for `z': z = F {y = 2}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail084.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail084.stderr-hugs
deleted file mode 100644
index 2a9e60de1c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail084.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail084.hs":10 - Constructor "F" does not have selected fields in F {y = 2}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail085.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail085.hs
deleted file mode 100644
index 81036b9dfc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail085.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- !!! Check that not supplying bindings for strict fields
--- !!! is flagged as being incorrect.
-module ShouldFail where
-
-data F
- = F { x :: Int, y :: !Int }
-
-z :: F
-z = F { x = 2 }
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail085.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail085.stderr
deleted file mode 100644
index c500e7a180..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail085.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail085.hs:9:5:
- Constructor `F' does not have the required strict field(s): y
- In the expression: F {x = 2}
- In an equation for `z': z = F {x = 2}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail085.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail085.stderr-hugs
deleted file mode 100644
index 9f1bc068ca..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail085.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "tcfail085.hs":9 - Construction does not define strict field
-Expression : F {x = 2}
-Field : y
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail086.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail086.hs
deleted file mode 100644
index 46d330daa6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail086.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE ExistentialQuantification #-}
-
--- !!! Check that we can't derive instances of existential types
-module ShouldFail where
-
-data Ex = forall a. Ex [a] deriving( Eq )
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail086.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail086.stderr
deleted file mode 100644
index 4b221839ea..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail086.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail086.hs:6:38:
- Can't make a derived instance of `Eq Ex':
- Constructor `Ex' must have a Haskell-98 type
- Possible fix: use a standalone deriving declaration instead
- In the data type declaration for `Ex'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail086.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail086.stderr-hugs
deleted file mode 100644
index 4c3902b5b6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail086.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail086.hs":6 - Cannot derive instances for types with existentially typed components
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail087.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail087.hs
deleted file mode 100644
index 6055a13d21..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail087.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE UnboxedTuples #-}
-
--- !!! Check that unboxed tuples can't be function arguments
-module ShouldFail where
-
-data Ex = Ex (# Int,Int #)
-
-f :: (# Int,Int #) -> Int
-f x = error "urk"
-
-g (# x,y #) = x
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail087.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail087.stderr
deleted file mode 100644
index 17d9f48537..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail087.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail087.hs:6:11:
- Illegal unboxed tuple type as function argument: (# Int, Int #)
- In the definition of data constructor `Ex'
- In the data type declaration for `Ex'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail088.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail088.hs
deleted file mode 100644
index 6b9f50751e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail088.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE Rank2Types, FlexibleInstances #-}
-
--- !!! Check that forall types can't be arguments
-module ShouldFail where
-
-
-data T s a = MkT s a
-
-instance Ord a => Ord (forall s. T s a)
--- A for-all should not appear as an argument to Ord
-
-
-
-g :: T s (forall b.b)
-g = error "urk"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail088.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail088.stderr
deleted file mode 100644
index 1bf22ffaa8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail088.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-tcfail088.hs:9:19:
- Illegal polymorphic or qualified type: forall s. T s a
- In the instance declaration for `Ord (forall s. T s a)'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail088.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail088.stderr-hugs
deleted file mode 100644
index e1b586a2e3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail088.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail088.hs":9 - Syntax error in type expression (unexpected keyword "forall")
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail089.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail089.hs
deleted file mode 100644
index 142460b0f5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail089.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
--- !!! Check non-constructors in patterns fail tidily
--- !!! The -O made ghc 4.08 go into a loop!
--- Unfortunately the -O has to go in the Makefile
-
-module ShouldFail where
-
-compute :: String -> String
-compute ("hd" ++ _) = "_"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail089.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail089.stderr
deleted file mode 100644
index 19dd837c13..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail089.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-tcfail089.hs:10:10: Parse error in pattern: "hd" ++ _
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail089.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail089.stderr-hugs
deleted file mode 100644
index c1152bc807..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail089.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail089.hs":10 - Syntax error in declaration (unexpected symbol "++")
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail090.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail090.hs
deleted file mode 100644
index 93a9e9e925..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail090.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
-module ShouldFail where
-
-import GHC.Base
-
-die :: Int -> ByteArray#
-die _ = undefined
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail090.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail090.stderr
deleted file mode 100644
index c63ced52c3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail090.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail090.hs:8:9:
- Kind incompatibility when matching types:
- a0 :: *
- ByteArray# :: #
- In the expression: undefined
- In an equation for `die': die _ = undefined
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail091.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail091.hs
deleted file mode 100644
index e64d1f512c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail091.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
--- !!! Illegal superclass constraint
--- These examples actually crashed GHC 4.08.2
-
-module ShouldFail where
-
-class (?imp :: Int) => C t where
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail091.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail091.stderr
deleted file mode 100644
index 74ca90b463..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail091.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail091.hs:8:1:
- Illegal constraint ?imp::Int
- In the context: (?imp::Int)
- While checking the super-classes of class `C'
- In the class declaration for `C'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail091.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail091.stderr-hugs
deleted file mode 100644
index f0a977936d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail091.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail091.hs":8 - Implicit parameters not permitted in class context
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail092.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail092.hs
deleted file mode 100644
index 747f0ca3c7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail092.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE ParallelListComp #-}
-
--- !!! Illegal conflicting parallel bindings
-
-module ShouldFail where
-
-xys = [ () | let a = 13 | let a = 17 ]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail092.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail092.stderr
deleted file mode 100644
index 2ba048bb26..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail092.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-tcfail092.hs:7:27:
- Duplicate binding in parallel list comprehension for: `a'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail093.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail093.hs
deleted file mode 100644
index 9c2d8ea80a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail093.hs
+++ /dev/null
@@ -1,36 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances, UndecidableInstances #-}
--- UndecidableInstances now needed because the Coverage Condition fails
-
-module ShouldFail where
-
--- A stripped down functional-dependency
--- example that causes GHC 4.08.1 to crash with:
--- "basicTypes/Var.lhs:194: Non-exhaustive patterns in function readMutTyVar"
--- Reported by Thomas Hallgren Nov 00
-
--- July 07: I'm changing this from "should fail" to "should succeed"
--- See Note [Important subtlety in oclose] in FunDeps
-
-
-primDup :: Int -> IO Int
-primDup = undefined
-
-dup () = call primDup
-
--- call :: Call c h => c -> h
---
--- call primDup :: {Call (Int -> IO Int) h} => h with
--- Using the instance decl gives
--- call primDup :: {Call (IO Int) h'} => Int -> h'
--- The functional dependency means that h must be constant
--- Hence program is rejected because it can't find an instance
--- for {Call (IO Int) h'}
-
-class Call c h | c -> h where
- call :: c -> h
-
-instance Call c h => Call (Int->c) (Int->h) where
- call f = call . f
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail094.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail094.hs
deleted file mode 100644
index 225ceb2d97..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail094.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
-
-module ShouldFail where
-
--- This nonsense tickled a missing-kind-check error in ghc5.00.2
-
-type A = Int 1
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail094.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail094.stderr
deleted file mode 100644
index 8cd67b632b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail094.stderr
+++ /dev/null
@@ -1,2 +0,0 @@
-
-tcfail094.hs:7:14: parse error on input `1'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail094.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail094.stderr-hugs
deleted file mode 100644
index 0d2e0206b2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail094.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail094.hs":7 - Syntax error in input (unexpected numeric literal)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail095.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail095.hs
deleted file mode 100644
index b7cae9dbe5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail095.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
--- !!! Test top-level unboxed types
-
-module ShouldFail where
-
-import GHC.Base
-
-x = 1#
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail095.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail095.stderr
deleted file mode 100644
index 55f5b2954d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail095.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-tcfail095.hs:9:1:
- Top-level bindings for unlifted types aren't allowed: x = 1#
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail096.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail096.hs
deleted file mode 100644
index 8a4edfbc6c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail096.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances #-}
-module ShouldFail where
-
-class Foo f a r | f a -> r where
- foo::f->a->r
-
--- These instances are incompatible because we can unify
--- the first two paramters, though it's rather obscure:
--- p -> (a,b)
--- t -> (,) (a,a)
--- c -> (,) a
--- r -> s
---
--- So a constraint which would sow this up is
--- Foo ((Int,Int)->Int)
--- ((Int,Int), (Int,Int))
--- t
--- This matches both. Not easy to spot, and the error
--- message would be improved by giving the unifier, or
--- a witness.
-
-instance Foo (p->s) (t p) (t s)
-instance Foo ((a,b)->r) (c a,c b)(c r)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail096.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail096.stderr
deleted file mode 100644
index c0ac91f6bf..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail096.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail096.hs:23:10:
- Functional dependencies conflict between instance declarations:
- instance Foo (p -> s) (t p) (t s)
- -- Defined at tcfail096.hs:23:10-38
- instance Foo ((a, b) -> r) (c a, c b) (c r)
- -- Defined at tcfail096.hs:24:10-38
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail096.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail096.stderr-hugs
deleted file mode 100644
index 7c3345bb51..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail096.stderr-hugs
+++ /dev/null
@@ -1,5 +0,0 @@
-ERROR "tcfail096.hs":24 - Instances are not consistent with dependencies
-*** This instance : Foo ((a,b) -> c) (d a,d b) (d c)
-*** Conflicts with : Foo (a -> b) (c a) (c b)
-*** For class : Foo a b c
-*** Under dependency : a b -> c
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail097.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail097.hs
deleted file mode 100644
index 4bcc798b98..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail097.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldFail where
-
--- !!! Ambiguous constraint in type signature
-
-f :: Eq a => Int -> Int
-f x = x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail097.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail097.stderr
deleted file mode 100644
index 967b172bb9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail097.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail097.hs:5:1:
- Ambiguous constraint `Eq a'
- At least one of the forall'd type variables mentioned by the constraint
- must be reachable from the type after the '=>'
- In the type signature for `f': f :: Eq a => Int -> Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail097.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail097.stderr-hugs
deleted file mode 100644
index 9051289079..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail097.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "tcfail097.hs":5 - Ambiguous type signature in type declaration
-*** ambiguous type : Eq a => Int -> Int
-*** assigned to : f
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail098.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail098.hs
deleted file mode 100644
index 2eab9e8f3b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail098.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-
-{-# LANGUAGE UndecidableInstances #-}
-
-module ShouldFail where
-
--- !!! ambiguous constraint in the context of an instance declaration
-class Bar a
-instance Bar a => Bar Bool
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail098.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail098.stderr
deleted file mode 100644
index bf2ccabc30..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail098.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail098.hs:8:10:
- Ambiguous constraint `Bar a'
- At least one of the forall'd type variables mentioned by the constraint
- must be reachable from the type after the '=>'
- In the instance declaration for `Bar Bool'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail098.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail098.stderr-hugs
deleted file mode 100644
index 9107dbbf06..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail098.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail098.hs":5 - Ambiguous type variable "a"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail099.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail099.hs
deleted file mode 100644
index 4cfa22c0f0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail099.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE ExistentialQuantification #-}
-
--- This bogus program slipped past GHC 5.02!
-
-module ShouldFail where
-
-data DS = forall a. C (a -> Int)
-
-call (C f) arg = f arg
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail099.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail099.stderr
deleted file mode 100644
index f97c5a1161..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail099.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-tcfail099.hs:9:20:
- Couldn't match type `t' with `a'
- `t' is a rigid type variable bound by
- the inferred type of call :: DS -> t -> Int at tcfail099.hs:9:1
- `a' is a rigid type variable bound by
- a pattern with constructor
- C :: forall a. (a -> Int) -> DS,
- in an equation for `call'
- at tcfail099.hs:9:7
- In the first argument of `f', namely `arg'
- In the expression: f arg
- In an equation for `call': call (C f) arg = f arg
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail099.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail099.stderr-hugs
deleted file mode 100644
index b36a4c519e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail099.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail099.hs":9 - Existentially quantified variable in inferred type
-*** Variable : _6
-*** From pattern : C f
-*** Result type : DS -> _6 -> Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail100.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail100.hs
deleted file mode 100644
index 1f125f3fda..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail100.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- This one broke GHC 5.02, because of the unsaturated
--- uses of type synonyms, which are nevertheless kind-correct.
-
-module ShouldCompile where
-
-type A i = i
-type B = A
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail100.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail100.stderr
deleted file mode 100644
index 36ee6f8218..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail100.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-tcfail100.hs:7:1:
- Type synonym `A' should have 1 argument, but has been given none
- In the type synonym declaration for `B'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail100.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail100.stderr-hugs
deleted file mode 100644
index b4aa433ae9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail100.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail100.hs":7 - Not enough arguments for type synonym "A"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail101.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail101.hs
deleted file mode 100644
index 8bd88749c3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail101.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- This one broke GHC 5.02, because of the unsaturated
--- uses of type synonyms, which are nevertheless kind-correct.
-
-module ShouldCompile where
-
-type A i = i
-data T k = MkT (k Int)
-
-f :: T A -- BAD!
-f = error "foo"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail101.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail101.stderr
deleted file mode 100644
index 0d82b50750..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail101.stderr
+++ /dev/null
@@ -1,4 +0,0 @@
-
-tcfail101.hs:9:1:
- Type synonym `A' should have 1 argument, but has been given none
- In the type signature for `f': f :: T A
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail101.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail101.stderr-hugs
deleted file mode 100644
index 626664525d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail101.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail101.hs":9 - Not enough arguments for type synonym "A"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail102.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail102.hs
deleted file mode 100644
index f4941789ff..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail102.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE DatatypeContexts #-}
-module ShouldFail where
-
-import Data.Ratio
-
-data Integral a => P a = P { p :: a }
-
-f :: Integral a => P (Ratio a) -> P (Ratio a)
-f x = x { p = p x }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail102.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail102.stderr
deleted file mode 100644
index af047e5dce..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail102.stderr
+++ /dev/null
@@ -1,17 +0,0 @@
-
-tcfail102.hs:1:14:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
-
-tcfail102.hs:9:7:
- Could not deduce (Integral (Ratio a)) arising from a record update
- from the context (Integral a)
- bound by the type signature for
- f :: Integral a => P (Ratio a) -> P (Ratio a)
- at tcfail102.hs:9:1-19
- Possible fix:
- add (Integral (Ratio a)) to the context of
- the type signature for
- f :: Integral a => P (Ratio a) -> P (Ratio a)
- or add an instance declaration for (Integral (Ratio a))
- In the expression: x {p = p x}
- In an equation for `f': f x = x {p = p x}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail102.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail102.stderr-hugs
deleted file mode 100644
index 7584fda32e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail102.stderr-hugs
+++ /dev/null
@@ -1,5 +0,0 @@
-ERROR "tcfail102.hs":8 - Cannot justify constraints in explicitly typed binding
-*** Expression : f
-*** Type : Integral a => P (Ratio a) -> P (Ratio a)
-*** Given context : Integral a
-*** Constraints : Integral (Ratio a)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail103.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail103.hs
deleted file mode 100644
index 2ed6df2485..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail103.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-module ShouldCompile where
-import GHC.ST
-import GHC.STRef
-import GHC.Arr
-
--- Another 'escape' example
-
-f:: ST t Int
-f = do
- v <- newSTRef 5
- let g :: ST s Int
- -- Implicitly forall s. ST s Int
- g = readSTRef v
- g
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail103.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail103.stderr
deleted file mode 100644
index 636ab29ae7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail103.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-tcfail103.hs:15:23:
- Couldn't match type `t' with `s'
- `t' is a rigid type variable bound by
- the type signature for f :: ST t Int at tcfail103.hs:11:1
- `s' is a rigid type variable bound by
- the type signature for g :: ST s Int at tcfail103.hs:15:9
- Expected type: STRef s Int
- Actual type: STRef t Int
- In the first argument of `readSTRef', namely `v'
- In the expression: readSTRef v
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail104.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail104.hs
deleted file mode 100644
index 292780541c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail104.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE Rank2Types, ScopedTypeVariables #-}
-
--- Test the handling of conditionals in rank-n stuff
--- Should fail, regardless of branch ordering
-
-module ShouldFail where
-
--- These two are ok
-f1 = (\ (x :: forall a. a->a) -> x)
-f2 = (\ (x :: forall a. a->a) -> x) id 'c'
-
--- These fail
-f3 v = (if v then
- (\ (x :: forall a. a->a) -> x)
- else
- (\ x -> x)
- ) id 'c'
-
-f4 v = (if v then
- (\ x -> x)
- else
- (\ (x :: forall a. a->a) -> x)
- ) id 'c'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail104.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail104.stderr
deleted file mode 100644
index 8bd4608bde..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail104.stderr
+++ /dev/null
@@ -1,16 +0,0 @@
-
-tcfail104.hs:16:19:
- Couldn't match expected type `a0 -> a0'
- with actual type `forall a. a -> a'
- In the expression: x
- In the expression: (\ x -> x)
- In the expression:
- if v then (\ (x :: forall a. a -> a) -> x) else (\ x -> x)
-
-tcfail104.hs:22:39:
- Couldn't match expected type `forall a. a -> a'
- with actual type `a0 -> a0'
- In the expression: x
- In the expression: (\ (x :: forall a. a -> a) -> x)
- In the expression:
- if v then (\ x -> x) else (\ (x :: forall a. a -> a) -> x)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail105.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail105.hs
deleted file mode 100644
index 331e38322b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail105.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE ExistentialQuantification #-}
-
--- Existential context should quantify over some new type variables
---
--- Jan07: this is now fine, because we've lifted the restrction
--- that the context on a constructor should mention
--- existential type variables
-
-module ShouldFail where
-
-data S m t a = Ok a | Cont (M m t a)
-data M m t a = Monad m => M { unM::(m (S m t a))}
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail105.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail105.stderr-hugs
deleted file mode 100644
index 16bedfe8b9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail105.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail105.hs":8 - Syntax error in input (unexpected `=>')
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail106.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail106.hs
deleted file mode 100644
index 22c732e4ce..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail106.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- This one risked building a recursive dictionary rather than
--- failing, in GHC before 5.03. Actually, 5.02 managed it ok,
--- but I think more by luck than good judgement.
-
-module ShouldFail where
-
-class S a
-class S a => C a where { opc :: a -> a }
-class S b => D b where { opd :: b -> b }
-
-instance C Int where
- opc = opd
-
-instance D Int where
- opd = opc
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail106.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail106.stderr
deleted file mode 100644
index e9de772233..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail106.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-tcfail106.hs:11:10:
- No instance for (S Int)
- arising from the superclasses of an instance declaration
- Possible fix: add an instance declaration for (S Int)
- In the instance declaration for `C Int'
-
-tcfail106.hs:14:10:
- No instance for (S Int)
- arising from the superclasses of an instance declaration
- Possible fix: add an instance declaration for (S Int)
- In the instance declaration for `D Int'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail106.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail106.stderr-hugs
deleted file mode 100644
index 6574cc7864..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail106.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail106.hs":11 - Cannot build superclass instance
-*** Instance : C Int
-*** Context supplied : ()
-*** Required superclass : S Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail107.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail107.hs
deleted file mode 100644
index e612e65093..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail107.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- The type sig for 'test' is illegal in H98 because of the
--- partial application of the type sig.
--- But with the LiberalTypeSynonyms extension enabled it
--- should be OK because when you expand the type synonyms
--- it's just Int->Int
--- c.f should_compile/tc155.hs
-module ShouldFail where
-
-type Thing m = m ()
-
-type Const a b = a
-
-test :: Thing (Const Int) -> Thing (Const Int)
-test = test
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail107.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail107.stderr
deleted file mode 100644
index eae3610c1d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail107.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail107.hs:13:1:
- Type synonym `Const' should have 2 arguments, but has been given 1
- In the type signature for `test':
- test :: Thing (Const Int) -> Thing (Const Int)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail107.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail107.stderr-hugs
deleted file mode 100644
index 6c08b363b5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail107.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail107.hs":13 - Not enough arguments for type synonym "Const"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail108.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail108.hs
deleted file mode 100644
index 5ccebde83e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail108.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- The instance decl is illegal without UndecidableInstances
-
-module ShouldFail where
-
-data Rec f = In (f (Rec f))
-
-instance Eq (f (Rec f)) => Eq (Rec f) where
- (In x) == (In y) = x == y
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail108.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail108.stderr
deleted file mode 100644
index 5d406cd5a6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail108.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail108.hs:7:10:
- Non type-variable argument in the constraint: Eq (f (Rec f))
- (Use -XFlexibleContexts to permit this)
- In the context: (Eq (f (Rec f)))
- While checking the context of an instance declaration
- In the instance declaration for `Eq (Rec f)'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail108.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail108.stderr-hugs
deleted file mode 100644
index f5011fddc7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail108.stderr-hugs
+++ /dev/null
@@ -1,2 +0,0 @@
-ERROR "tcfail108.hs":7 - Illegal Haskell 98 class constraint in instance declaration
-*** Constraint : Eq (a (Rec a))
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail109.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail109.hs
deleted file mode 100644
index 861183a399..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail109.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-
--- Strangely, this program does not elicit an error message
--- in GHC 5.03. I don't know why. It fails correctly in
--- 5.04
-
-
-module ShouldFail where
-
-class Eq ce => Collects e ce | ce -> e where
- empty :: ce
- empty = error("empty")
-
-data Stupid = Stupid -- without equality
-
-instance Collects Bool Stupid where
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail109.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail109.stderr
deleted file mode 100644
index a72c6238d9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail109.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail109.hs:16:10:
- No instance for (Eq Stupid)
- arising from the superclasses of an instance declaration
- Possible fix: add an instance declaration for (Eq Stupid)
- In the instance declaration for `Collects Bool Stupid'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail109.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail109.stderr-hugs
deleted file mode 100644
index 3a7abb8842..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail109.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail109.hs":16 - Cannot build superclass instance
-*** Instance : Collects Bool Stupid
-*** Context supplied : ()
-*** Required superclass : Eq Stupid
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail110.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail110.hs
deleted file mode 100644
index 92aeb56c06..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail110.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
-module ShouldCompile where
-
-data Foo a b = Foo { foo :: a -> b }
-
--- kind error in here
-bar :: String -> (forall a . Foo a) -> IO ()
-bar s _ = putStrLn s
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail110.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail110.stderr
deleted file mode 100644
index e663999edb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail110.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail110.hs:8:30:
- `Foo a' is not applied to enough type arguments
- Expected kind `*', but `Foo a' has kind `* -> *'
- In the type signature for `bar':
- bar :: String -> (forall a. Foo a) -> IO ()
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail110.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail110.stderr-hugs
deleted file mode 100644
index 4cc90e0a43..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail110.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail110.hs":8 - Illegal type in polymorphic type
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail111.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail111.stderr-hugs
deleted file mode 100644
index 46e9b8d08e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail111.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail111.hs":7 - Ambiguous type variable "a"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail112.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail112.hs
deleted file mode 100644
index 01dd578ab7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail112.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- Record construction should fail statically
--- if there are any strict fields,
--- including in the non-record case.
-
-module ShouldFail where
-
-data S = S { x::Int, y:: ! Int }
-data T = T Int !Int
-data U = U Int Int
-
-s1 = S {} -- Bad
-s2 = S { x=3 } -- Bad
-s3 = S { y=3 } -- Ok
-t = T {} -- Bad
-u = U {} -- Ok
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail112.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail112.stderr
deleted file mode 100644
index 602c1e4b69..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail112.stderr
+++ /dev/null
@@ -1,15 +0,0 @@
-
-tcfail112.hs:11:6:
- Constructor `S' does not have the required strict field(s): y
- In the expression: S {}
- In an equation for `s1': s1 = S {}
-
-tcfail112.hs:12:6:
- Constructor `S' does not have the required strict field(s): y
- In the expression: S {x = 3}
- In an equation for `s2': s2 = S {x = 3}
-
-tcfail112.hs:14:6:
- Constructor `T' does not have the required strict field(s)
- In the expression: T {}
- In an equation for `t': t = T {}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail112.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail112.stderr-hugs
deleted file mode 100644
index 3b64822662..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail112.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "tcfail112.hs":11 - Construction does not define strict field
-Expression : S {}
-Field : y
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail113.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail113.hs
deleted file mode 100644
index 1628cd7c41..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail113.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- Tests kind error messages
-
--- GHC 6.6 stops on the first kind error it encounters,
--- so we only get one error report here. I'll leave
--- the other tests in here, though, in case matters improve
--- again
-
-module ShouldFail where
-
-data T k = T (k Int)
-
-f :: [Maybe]
-f x = x
-
-g :: T Int
-g x = x
-
-h :: Int Int
-h x = x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail113.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail113.stderr
deleted file mode 100644
index d4c9208243..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail113.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-
-tcfail113.hs:12:7:
- `Maybe' is not applied to enough type arguments
- Expected kind `*', but `Maybe' has kind `* -> *'
- In the type signature for `f':
- f :: [Maybe]
-
-tcfail113.hs:15:8:
- Kind mis-match
- The first argument of `T' should have kind `* -> *',
- but `Int' has kind `*'
- In the type signature for `g':
- g :: T Int
-
-tcfail113.hs:18:6:
- `Int' is applied to too many type arguments
- In the type signature for `h':
- h :: Int Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail113.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail113.stderr-hugs
deleted file mode 100644
index 014006a69a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail113.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail113.hs":7 - Illegal type "[Maybe]" in constructor application
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail114.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail114.hs
deleted file mode 100644
index 2d0fc19f4b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail114.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- Killed GHC 5.04.2
-
-module ShouldFail where
-
-class Foo a where
- foo :: a -> ()
-
-data Bar = Bar { bar :: () }
-
-test :: Bar
-test = undefined { foo = () }
- -- The point is that foo is a class method,
- -- but not a record selector
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail114.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail114.stderr
deleted file mode 100644
index 601feff85b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail114.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail114.hs:11:20:
- `foo' is not a record selector
- In the expression: undefined {foo = ()}
- In an equation for `test': test = undefined {foo = ()}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail114.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail114.stderr-hugs
deleted file mode 100644
index 3a7663b166..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail114.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail114.hs":11 - "foo" is not a selector function/field name
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail115.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail115.hs
deleted file mode 100644
index 971f625a9a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail115.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE UnboxedTuples #-}
-
--- Unboxed tuples; c.f. tcfail120, tc209
-
-module ShouldFail where
-
-type T a = Int -> (# Int, Int #)
-
-g t = case t of r -> (r :: (# Int, Int #))
-
-f :: T a -> T a
-f t = \x -> case t x of r -> r
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail115.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail115.stderr
deleted file mode 100644
index fd1a02c02d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail115.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-
-tcfail115.hs:9:24:
- Kind incompatibility when matching types:
- t0 :: ??
- (# Int, Int #) :: (#)
- In the expression: (r :: (# Int, Int #))
- In a case alternative: r -> (r :: (# Int, Int #))
- In the expression: case t of { r -> (r :: (# Int, Int #)) }
-
-tcfail115.hs:12:25:
- The variable `r' cannot have an unboxed tuple type: (# Int, Int #)
- In a case alternative: r -> r
- In the expression: case t x of { r -> r }
- In the expression: \ x -> case t x of { r -> r }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail116.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail116.hs
deleted file mode 100644
index 1c32c956d3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail116.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldFail where
-
--- in Haskell 98, methods must mention the class variable
--- (SourceForge bug #756454).
-class Foo a where
- bug :: ()
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail116.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail116.stderr
deleted file mode 100644
index 8e7372413a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail116.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail116.hs:5:1:
- The class method `bug'
- mentions none of the type variables of the class Foo a
- When checking the class method: bug :: ()
- In the class declaration for `Foo'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail116.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail116.stderr-hugs
deleted file mode 100644
index fba5f2db38..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail116.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "tcfail116.hs":6 - Ambiguous type signature in class declaration
-*** ambiguous type : Foo a => ()
-*** assigned to : bug
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail117.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail117.hs
deleted file mode 100644
index 2a5ae99172..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail117.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldFail where
-
--- Without any extensions enabled both of these should fail
-
-newtype N1 = N1 Int deriving ( Enum )
-data N2 = N2 Int deriving ( Enum )
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail117.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail117.stderr
deleted file mode 100644
index 2bc3d7fd63..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail117.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-tcfail117.hs:5:32:
- Can't make a derived instance of `Enum N1':
- `N1' must be an enumeration type
- (an enumeration consists of one or more nullary, non-GADT constructors)
- Try -XGeneralizedNewtypeDeriving for GHC's newtype-deriving extension
- In the newtype declaration for `N1'
-
-tcfail117.hs:6:32:
- Can't make a derived instance of `Enum N2':
- `N2' must be an enumeration type
- (an enumeration consists of one or more nullary, non-GADT constructors)
- In the data type declaration for `N2'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail117.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail117.stderr-hugs
deleted file mode 100644
index b6db2d800a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail117.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail117.hs":5 - Can only derive instances of Enum for enumeration types
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail118.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail118.hs
deleted file mode 100644
index 1b81c7e01a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail118.hs
+++ /dev/null
@@ -1,15 +0,0 @@
--- Gave a bad error message in a version of 6.3, as a
--- result of 6.3's new duplicate-instance reporting structure
---
--- Foo.hs:4:5:
--- No instance for `Eq Foo'
--- When deriving the `Eq' instance for type `Bar'
-
-module ShouldFail where
-
-data Bar = Bar Foo deriving Eq
-data Foo = Foo deriving Eq
-
-instance Eq Foo where
- Foo == Foo = True
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail118.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail118.stderr
deleted file mode 100644
index 206bec47be..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail118.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail118.hs:10:29:
- Overlapping instances for Eq Foo
- arising from the 'deriving' clause of a data type declaration
- Matching instances:
- instance Eq Foo -- Defined at tcfail118.hs:11:25-26
- instance Eq Foo -- Defined at tcfail118.hs:13:10-15
- When deriving the instance for (Eq Bar)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail118.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail118.stderr-hugs
deleted file mode 100644
index 691a20ee0a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail118.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail118.hs":11 - Overlapping instances for class "Eq"
-*** This instance : Eq Foo
-*** Overlaps with : Eq Foo
-*** Common instance : Eq Foo
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail119.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail119.hs
deleted file mode 100644
index 52b9c8a5eb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail119.hs
+++ /dev/null
@@ -1,14 +0,0 @@
--- Gave a nasty
--- tcLookupGlobal: `FunnyError.$dmb' is not in scope
--- failure in GHC 6.2, because the type-checking of
--- the default method didn't recover.
-
-module ShouldFail where
-
-class A x where
- a :: x -> ()
- b :: x -> Bool -> ()
- b x "Foo" = () -- deliberate type error
-
-instance A Int where
- a _ = ()
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail119.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail119.stderr
deleted file mode 100644
index 1984617b2b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail119.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail119.hs:11:8:
- Couldn't match expected type `Bool' with actual type `[Char]'
- In the pattern: "Foo"
- In an equation for `b': b x "Foo" = ()
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail119.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail119.stderr-hugs
deleted file mode 100644
index 443f073bcd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail119.stderr-hugs
+++ /dev/null
@@ -1,4 +0,0 @@
-ERROR "tcfail119.hs":11 - Type error in default member binding
-*** Term : "Foo"
-*** Type : String
-*** Does not match : Bool
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail120.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail120.hs
deleted file mode 100644
index 04b7cd60ab..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail120.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-
-{-# LANGUAGE UnboxedTuples #-}
-
--- Could be ok, because nothing is bound to the unboxed tuple
--- but actually rejected, because a wild card is rather like
--- an unused variable. Could fix this, but it's really a corner case
-
-module ShouldFail where
-
-type T a = Int -> (# Int, Int #)
-
-f2 :: T a -> T a
-f2 t = \x -> case t x of _ -> (# 3,4 #)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail120.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail120.stderr
deleted file mode 100644
index 7693b0c7c5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail120.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail120.hs:13:26:
- A wild-card pattern cannot have an unboxed tuple type:
- (# Int, Int #)
- In the pattern: _
- In a case alternative: _ -> (# 3, 4 #)
- In the expression: case t x of { _ -> (# 3, 4 #) }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail121.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail121.hs
deleted file mode 100644
index 86c2a92c5c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail121.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-
-{-# LANGUAGE OverlappingInstances, FlexibleInstances #-}
-
-module ShouldFail where
-
-class Foo a where
- op :: a -> a
-
-instance Foo a => Foo [a]
-instance Foo [Int]
-
-foo :: Foo a => [a] -> [a]
-foo x = op x
--- Correct instance depends on instantiation of 'a'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail121.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail121.stderr
deleted file mode 100644
index 783331fdfc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail121.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-tcfail121.hs:13:9:
- Overlapping instances for Foo [a]
- arising from a use of `op'
- Matching instances:
- instance [overlap ok] Foo a => Foo [a]
- -- Defined at tcfail121.hs:9:10-25
- instance [overlap ok] Foo [Int] -- Defined at tcfail121.hs:10:10-18
- (The choice depends on the instantiation of `a'
- To pick the first instance above, use -XIncoherentInstances
- when compiling the other instance declarations)
- In the expression: op x
- In an equation for `foo': foo x = op x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail122.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail122.hs
deleted file mode 100644
index ae2bef8bea..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail122.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE Rank2Types, KindSignatures #-}
-
-module ShouldFail where
-
--- There should be a kind error, when unifying (a b) against (c d)
-
-foo = [ undefined :: forall a b. a b,
- undefined :: forall (c:: (* -> *) -> *) (d :: * -> *). c d ]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail122.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail122.stderr
deleted file mode 100644
index 3f6c035a55..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail122.stderr
+++ /dev/null
@@ -1,26 +0,0 @@
-
-tcfail122.hs:8:9:
- Kind incompatibility when matching types:
- d0 :: * -> *
- b0 :: *
- Expected type: a0 b0
- Actual type: c0 d0
- In the expression:
- undefined :: forall c :: ((* -> *) -> *) d :: (* -> *). c d
- In the expression:
- [undefined :: forall a b. a b,
- undefined :: forall c :: ((* -> *) -> *) d :: (* -> *). c d]
-
-tcfail122.hs:8:9:
- Kind incompatibility when matching types:
- c0 :: (* -> *) -> *
- a0 :: * -> *
- In the expression:
- undefined :: forall c :: ((* -> *) -> *) d :: (* -> *). c d
- In the expression:
- [undefined :: forall a b. a b,
- undefined :: forall c :: ((* -> *) -> *) d :: (* -> *). c d]
- In an equation for `foo':
- foo
- = [undefined :: forall a b. a b,
- undefined :: forall c :: ((* -> *) -> *) d :: (* -> *). c d]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail123.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail123.hs
deleted file mode 100644
index 8e91bbe885..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail123.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
-module ShouldFail where
-
--- The danger here is getting a type like
--- f :: forall (a::??). a -> Bool
--- and hence allowing the bogus calls that follow
-
-f x = True
-
-h v = (f 3#, f 4.3#, f True)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail123.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail123.stderr
deleted file mode 100644
index 560c8d9048..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail123.stderr
+++ /dev/null
@@ -1,16 +0,0 @@
-
-tcfail123.hs:11:10:
- Kind incompatibility when matching types:
- t0 :: *
- GHC.Prim.Int# :: #
- In the first argument of `f', namely `3#'
- In the expression: f 3#
- In the expression: (f 3#, f 4.3#, f True)
-
-tcfail123.hs:11:16:
- Kind incompatibility when matching types:
- t1 :: *
- GHC.Prim.Float# :: #
- In the first argument of `f', namely `4.3#'
- In the expression: f 4.3#
- In the expression: (f 3#, f 4.3#, f True)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail124.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail124.hs
deleted file mode 100644
index 729d14b601..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail124.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-
-module ShouldFail where
-
--- With the new typechecker (GHC 7.1), these now all pass
-
-f1 :: (forall a. Eq a => [a]) -> Bool
-f1 xs@(x:_) = x
-
-f2 :: (forall a. Eq a => [a]) -> Bool
-f2 [x] = x
-
-f3 :: (forall a. Eq a => [a]) -> Bool
-f3 (x:[]) = x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail124.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail124.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail124.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail125.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail125.hs
deleted file mode 100644
index 664354d840..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail125.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE DatatypeContexts, ExistentialQuantification #-}
-
--- Tests the "stupid theta" in pattern-matching
--- when there's an existential as well
-
-module ShouldCompile where
-
-data (Show a) => Obs a = forall b. LiftObs a b
-
-f :: Obs a -> String -- Needs a (Show a) context
-f (LiftObs _ _) = "yes"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail125.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail125.stderr
deleted file mode 100644
index 988540dad5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail125.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-tcfail125.hs:1:14:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
-
-tcfail125.hs:11:4:
- No instance for (Show a)
- arising from a use of `LiftObs'
- In the pattern: LiftObs _ _
- In an equation for `f': f (LiftObs _ _) = "yes"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail125.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail125.stderr-hugs
deleted file mode 100644
index 7fc582ba2d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail125.stderr-hugs
+++ /dev/null
@@ -1,5 +0,0 @@
-ERROR "tcfail125.hs":11 - Cannot justify constraints in explicitly typed binding
-*** Expression : f
-*** Type : Obs a -> String
-*** Given context : ()
-*** Constraints : Show a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail126.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail126.hs
deleted file mode 100644
index 1ef2b4820e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail126.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-{-# LANGUAGE RankNTypes, ExistentialQuantification #-}
-
--- An interesting interaction of universals and existentials, prompted by
--- http://www.haskell.org/pipermail/haskell-cafe/2004-October/007160.html
---
--- Note the nested pattern-match in runProg; tc183 checks the
--- non-nested version
-
--- 3 Sept 2010: with the new typechecker, this one succeeds
-
-module Foo where
-
-import Control.Monad.Trans
-
-data Bar m
- = forall t. (MonadTrans t, Monad (t m))
- => Bar (t m () -> m ()) (t m Int)
-
-data Foo = Foo (forall m. Monad m => Bar m)
-
-runProg :: Foo -> IO ()
-runProg (Foo (Bar run op)) = run (prog op)
--- This nested match "ought" to work; because
--- runProg (Foo b) = case b of
--- Bar run op -> run (prog op)
--- does work. But the interactions with GADTs and
--- desugaring defeated me, and I removed (in GHC 6.4) the ability
--- to instantiate functions on the left
-
-prog :: (MonadTrans t, Monad (t IO)) => a -> t IO ()
-prog x = error "urk"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail126.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail126.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail126.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail127.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail127.hs
deleted file mode 100644
index 32b9e37de5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail127.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module ShouldFail where
-
-foo :: IO (Num a => a -> a)
-foo = error "urk"
-
--- baz :: (Num a => a -> a) -> Int
--- baz = error "urk"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail127.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail127.stderr
deleted file mode 100644
index 8fa64fb204..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail127.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail127.hs:3:1:
- Illegal polymorphic or qualified type: Num a => a -> a
- Perhaps you intended to use -XImpredicativeTypes
- In the type signature for `foo': foo :: IO (Num a => a -> a)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail128.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail128.hs
deleted file mode 100644
index 08971837a2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail128.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
--- Ambiguity error reporting
-
-module Main where
-
-import Data.Array.MArray (thaw,freeze)
-import Data.Array.Unboxed as UA (UArray,listArray)
-import Data.Array.IArray as IA (Array,listArray)
-
-main :: IO ()
-main = do let sL = [1,4,6,3,2,5]
- dim = length sL
- help :: [FlatVector]
- help = [listFlatVector (1,s) [0|i<-[1..s]]|s<-sL]
- tmp :: Vector FlatVector
- tmp = listVector (1,dim) help
- v <- thaw tmp
- return ()
-
-type FlatVector = UArray Int Double
-
-listFlatVector :: (Int,Int) -> [Double] -> FlatVector
-listFlatVector = UA.listArray
-
-type Vector a = Array Int a
-
-listVector :: (Int,Int) -> [a] -> Vector a
-listVector = IA.listArray
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail128.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail128.stderr
deleted file mode 100644
index a3c99a9548..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail128.stderr
+++ /dev/null
@@ -1,20 +0,0 @@
-
-tcfail128.hs:18:16:
- No instance for (Data.Array.Base.MArray b0 FlatVector IO)
- arising from a use of `thaw'
- Possible fix:
- add an instance declaration for
- (Data.Array.Base.MArray b0 FlatVector IO)
- In a stmt of a 'do' block: v <- thaw tmp
- In the expression:
- do { let sL = ...
- dim = length sL
- ....;
- v <- thaw tmp;
- return () }
- In an equation for `main':
- main
- = do { let sL = ...
- ....;
- v <- thaw tmp;
- return () }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail128.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail128.stderr-hugs
deleted file mode 100644
index fa3977e1e9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail128.stderr-hugs
+++ /dev/null
@@ -1,5 +0,0 @@
-ERROR "tcfail128.hs":12 - Cannot justify constraints in explicitly typed binding
-*** Expression : main
-*** Type : IO ()
-*** Given context : ()
-*** Constraints : MArray a (UArray Int Double) IO
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail129.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail129.hs
deleted file mode 100644
index 1a74749f56..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail129.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- Both blocks are illegal Haskell 98, because of the un-saturated
--- type synonym, but (rather obscurely) at one point (GHC 6.3), we
--- acceped 'blah', but rejected 'blah1'
-
-module ShouldFail where
-
-data T = T
-
--- This was erroneously accepted
-type Foo a = String -> Maybe a
-type Bar m = m Int
-blah = undefined :: Bar Foo
-
-
-type Foo1 a = Maybe a
-type Bar1 m = m Int
-blah1 = undefined :: Bar1 Foo1
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail129.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail129.stderr
deleted file mode 100644
index f9ee8a567d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail129.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-tcfail129.hs:12:8:
- Type synonym `Foo' should have 1 argument, but has been given none
- In an expression type signature: Bar Foo
- In the expression: undefined :: Bar Foo
- In an equation for `blah': blah = undefined :: Bar Foo
-
-tcfail129.hs:17:9:
- Type synonym `Foo1' should have 1 argument, but has been given none
- In an expression type signature: Bar1 Foo1
- In the expression: undefined :: Bar1 Foo1
- In an equation for `blah1': blah1 = undefined :: Bar1 Foo1
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail129.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail129.stderr-hugs
deleted file mode 100644
index ff4f0a79c6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail129.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail129.hs":12 - Not enough arguments for type synonym "Foo"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail130.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail130.hs
deleted file mode 100644
index 96101b534a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail130.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
--- The defn of foo should be rejected; it's monomorphic, but
--- the implicit paramter escapes
-
-module Foo where
-
-baz = let ?x = 5 in print foo
-
-foo = woggle 3
-
-woggle :: (?x :: Int) => Int -> Int
-woggle y = ?x + y
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail130.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail130.stderr
deleted file mode 100644
index 3534dba679..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail130.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail130.hs:10:7:
- Unbound implicit parameter (?x::Int)
- arising from a use of `woggle'
- In the expression: woggle 3
- In an equation for `foo': foo = woggle 3
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail130.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail130.stderr-hugs
deleted file mode 100644
index d4e366eb19..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail130.stderr-hugs
+++ /dev/null
@@ -1,3 +0,0 @@
-ERROR "tcfail130.hs":10 - Unresolved top-level overloading
-*** Binding : foo
-*** Outstanding context : (?x :: Int)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail131.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail131.hs
deleted file mode 100644
index 98b0a29c80..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail131.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- Error message in monomorphic case
-
-module ShouldFail where
-
- f = (*) -- Monomorphic
- g :: Num b => b -> b
- g x = f x x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail131.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail131.stderr
deleted file mode 100644
index 134b76ffb3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail131.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-tcfail131.hs:7:13:
- Could not deduce (b ~ Integer)
- from the context (Num b)
- bound by the type signature for g :: Num b => b -> b
- at tcfail131.hs:7:3-13
- `b' is a rigid type variable bound by
- the type signature for g :: Num b => b -> b at tcfail131.hs:7:3
- In the second argument of `f', namely `x'
- In the expression: f x x
- In an equation for `g': g x = f x x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail132.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail132.hs
deleted file mode 100644
index cc933dc6ee..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail132.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- Fails with a kind error.
--- The current error message was rather horrible (trac bug #312):
---
--- Kind error: Expecting kind `k_a1JA -> k_a1JE -> k_a1JI -> *',
--- but `DUnit t' has kind `k_a1JA -> k_a1JE -> *'
---
--- as we couldn't tidy kinds, becuase they didn't have OccNames.
--- This test recalls the bad error message.
-
-module ShouldFail where
-
-newtype Object f' f t o1 o2 = Object (f' t o1 -> f t o2)
-type DUnit t o1 o2 = ()
-
-type T f g t o1 o2 = Either (f t o1 o2) (g t o1 o2)
-
-type LiftObject t f' f = T (Object f' f t) (DUnit t)
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail132.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail132.stderr
deleted file mode 100644
index b25f21a809..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail132.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail132.hs:17:37:
- Kind mis-match
- The first argument of `T' should have kind `k0 -> k1 -> k2 -> *',
- but `Object f' f t' has kind `k0 -> k1 -> *'
- In the type `T (Object f' f t) (DUnit t)'
- In the type synonym declaration for `LiftObject'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail132.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail132.stderr-hugs
deleted file mode 100644
index 3b5f68fc7e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail132.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail132.hs":21 - Not enough arguments for type synonym "T"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail133.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail133.hs
deleted file mode 100644
index af45be93cd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail133.hs
+++ /dev/null
@@ -1,79 +0,0 @@
-{-# LANGUAGE UndecidableInstances, FlexibleInstances, TypeOperators,
- MultiParamTypeClasses, FunctionalDependencies, DatatypeContexts #-}
-
--- This one crashed GHC 6.3 due to an error in TcSimplify.add_ors
-
-module Foo where
-
-data Zero = Zero deriving Show
-data One = One deriving Show
-infixl 9 :@
-data (Number a, Digit b) => a :@ b = a :@ b deriving Show
-
-class Digit a
-instance Digit Zero
-instance Digit One
-
-class Number a
-instance Number Zero
-instance Number One
-instance (Number a, Digit b) => Number (a :@ b)
-
---- Pretty printing of numbers ---
-class PrettyNum a where
- prettyNum :: a -> String
-
-instance PrettyNum Zero where
- prettyNum _ = "0"
-
-instance PrettyNum One where
- prettyNum _ = "1"
-
-instance (Number a, Digit b, PrettyNum a, PrettyNum b)
- => PrettyNum (a :@ b) where
- prettyNum ~(a:@b)
- = prettyNum a ++ prettyNum b
-
---- Digit addition ---
-class (Number a, Digit b, Number c)
- => AddDigit a b c | a b -> c where
- addDigit :: a -> b -> c
- addDigit = undefined
-
-instance Number a => AddDigit a Zero a
-instance AddDigit Zero One One
-instance AddDigit One One (One:@Zero)
-instance Number a => AddDigit (a:@Zero) One (a:@One)
-instance AddDigit a One a'
- => AddDigit (a:@One) One (a':@Zero)
-
---- Addition ---
-class (Number a, Number b, Number c)
- => Add a b c | a b -> c where
- add :: a -> b -> c
- add = undefined
-
-instance Number n => Add n Zero n
-instance Add Zero One One
-instance Add One One (One:@One)
-instance Number n
- => Add (n:@Zero) One (n:@One)
-instance AddDigit n One r'
- => Add (n:@One) One (r':@Zero)
-instance (Number n1, Digit d1, Number n2, Digit n2
- ,Add n1 n2 nr', AddDigit (d1:@nr') d2 r)
- => Add (n1:@d1) (n2:@d2) r
-
-
-foo = show $ add (One:@Zero) (One:@One)
-
-
--- Add (One:@Zero) (One:@One) c, Show c
--- ==> Number One, Digit Zero, Number One, Digit One
--- Add One One nr', AddDigit (Zero:@nr') One c, Show c
---
--- ==> Add One One nr', AddDigit (Zero:@nr') One c, Show c
---
--- ==> Add One One (One:@One), AddDigit (Zero:@(One:@One)) One c, Show c
---
--- ==> AddDigit (Zero:@(One:@One)) One c, Show c
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail133.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail133.stderr
deleted file mode 100644
index 2808159950..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail133.stderr
+++ /dev/null
@@ -1,15 +0,0 @@
-
-tcfail133.hs:2:61:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
-
-tcfail133.hs:68:14:
- No instance for (AddDigit (Zero :@ (One :@ One)) One a0)
- arising from a use of `add'
- Possible fix:
- add an instance declaration for
- (AddDigit (Zero :@ (One :@ One)) One a0)
- In the second argument of `($)', namely
- `add (One :@ Zero) (One :@ One)'
- In the expression: show $ add (One :@ Zero) (One :@ One)
- In an equation for `foo':
- foo = show $ add (One :@ Zero) (One :@ One)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail134.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail134.hs
deleted file mode 100644
index 467bffdad0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail134.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- Class used as a type, recursively
-
-module ShouldFail where
-
-class XML a where toXML :: a -> XML \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail134.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail134.stderr
deleted file mode 100644
index ea302f058a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail134.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail134.hs:5:33:
- `XML' is not applied to enough type arguments
- Expected kind `?', but `XML' has kind `* -> *'
- In the type `a -> XML'
- In the class declaration for `XML'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail134.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail134.stderr-hugs
deleted file mode 100644
index 3726341ee9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail134.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail134.hs":5 - Undefined type constructor "XML"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail135.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail135.hs
deleted file mode 100644
index 5cfc926085..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail135.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- A missing kind check made GHC 6.4 crash on this one
-
-module ShoudlFail where
-
-class Foo f where
- baa :: f a -> f
-
-instance Foo Maybe where
- baa z = z
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail135.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail135.stderr
deleted file mode 100644
index 37274283ed..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail135.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail135.hs:6:23:
- `f' is not applied to enough type arguments
- Expected kind `?', but `f' has kind `k0 -> *'
- In the type `f a -> f'
- In the class declaration for `Foo'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail135.stderr-hugs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail135.stderr-hugs
deleted file mode 100644
index c4c792a7ab..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail135.stderr-hugs
+++ /dev/null
@@ -1 +0,0 @@
-ERROR "tcfail135.hs":6 - Illegal type "a b" in constructor application
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail136.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail136.hs
deleted file mode 100644
index 19989d4a61..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail136.hs
+++ /dev/null
@@ -1,9 +0,0 @@
--- Kind error message test
-
-module ShouldFail where
-
-type IntMap a = [a]
-
-data SymDict a = SymDict {idcounter:: Int, itot::IntMap a}
-
-data SymTable = SymTable { dict::SymDict }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail136.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail136.stderr
deleted file mode 100644
index cdeff3c8a5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail136.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail136.hs:9:35:
- `SymDict' is not applied to enough type arguments
- Expected kind `?', but `SymDict' has kind `* -> *'
- In the type `SymDict'
- In the definition of data constructor `SymTable'
- In the data type declaration for `SymTable'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail137.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail137.hs
deleted file mode 100644
index 3d3b4e0369..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail137.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE DatatypeContexts #-}
--- Test the stupid context on newtypes
--- (GHC 6.4 dropped it on the floor by mistake)
-module ShouldFail where
-
-newtype Floating a => Test a = Test [a]
-
-x = Test [False, True]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail137.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail137.stderr
deleted file mode 100644
index 9cbe69b98d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail137.stderr
+++ /dev/null
@@ -1,10 +0,0 @@
-
-tcfail137.hs:1:14:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
-
-tcfail137.hs:8:5:
- No instance for (Floating Bool)
- arising from a use of `Test'
- Possible fix: add an instance declaration for (Floating Bool)
- In the expression: Test [False, True]
- In an equation for `x': x = Test [False, True]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail138.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail138.hs
deleted file mode 100644
index cf91a023f4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail138.hs
+++ /dev/null
@@ -1,36 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances, UndecidableInstances #-}
--- UndecidableInstances because (L a b) is no smaller than (C a b)
-
--- This one shows up another rather subtle functional-dependecy
--- case. The error is:
---
--- Could not deduce (C a b') from the context (C a b)
--- arising from the superclasses of an instance declaration at Foo.hs:8:0
--- Probable fix: add (C a b') to the instance declaration superclass context
--- In the instance declaration for `C (Maybe a) a'
---
--- Since L is a superclass of the (sought) constraint (C a b'), you might
--- think that we'd generate the superclasses (L a b') and (L a b), and now
--- the fundep will force b=b'. But GHC is very cautious about generating
--- superclasses when doing context reduction for instance declarations,
--- becasue of the danger of superclass loops.
---
--- So, today, this program fails. It's trivial to fix by adding a fundep for C
--- class (G a, L a b) => C a b | a -> b
-
--- Note: Sept 08: when fixing Trac #1470, tc138 started working!
--- This test is a very strange one (fundeps, undecidable instances),
--- so I'm just marking it as "should-succeed". It's not very clear to
--- me what the "right" answer should be; when we have the type equality
--- story more worked out we might want to think about that.
-
-module ShouldFail where
-
-class G a
-class L a b | a -> b
-class (G a, L a b) => C a b
-
-instance C a b' => G (Maybe a)
-instance C a b => C (Maybe a) a
-instance L (Maybe a) a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail138.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail138.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail138.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail139.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail139.hs
deleted file mode 100644
index af21c8afba..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail139.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- Should be rejected by Haskell 98
-
-module Foo where
-
-type Foo = Double
-instance Bounded Foo
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail139.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail139.stderr
deleted file mode 100644
index 91559a9f68..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail139.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail139.hs:6:10:
- Illegal instance declaration for `Bounded Foo'
- (All instance types must be of the form (T t1 ... tn)
- where T is not a synonym.
- Use -XTypeSynonymInstances if you want to disable this.)
- In the instance declaration for `Bounded Foo'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail140.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail140.hs
deleted file mode 100644
index 791dd19cf8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail140.hs
+++ /dev/null
@@ -1,22 +0,0 @@
--- GHC 6.4 gave pretty horrible error messages
--- for some of these examples
--- c.f. SourceForge [ ghc-Bugs-1231273 ] confusing error
-
-module ShouldFail where
-
-f :: Int -> Int
-f x = x
-
-bar = f 3 9
-
-rot xs = 3 `f` 4
-
-bot xs = map (3 `f`) xs
-
-t = ((\Just x -> x) :: Maybe a -> a) (Just 1)
-
-g :: Int -> Int
-g x y = True
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail140.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail140.stderr
deleted file mode 100644
index bc888d2309..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail140.stderr
+++ /dev/null
@@ -1,29 +0,0 @@
-
-tcfail140.hs:10:7:
- The function `f' is applied to two arguments,
- but its type `Int -> Int' has only one
- In the expression: f 3 9
- In an equation for `bar': bar = f 3 9
-
-tcfail140.hs:12:10:
- The operator `f' takes two arguments,
- but its type `Int -> Int' has only one
- In the expression: 3 `f` 4
- In an equation for `rot': rot xs = 3 `f` 4
-
-tcfail140.hs:14:15:
- The operator `f' takes two arguments,
- but its type `Int -> Int' has only one
- In the first argument of `map', namely `(3 `f`)'
- In the expression: map (3 `f`) xs
- In an equation for `bot': bot xs = map (3 `f`) xs
-
-tcfail140.hs:16:8:
- Constructor `Just' should have 1 argument, but has been given none
- In the pattern: Just
- In the expression: (\ Just x -> x) :: Maybe a -> a
- In the expression: ((\ Just x -> x) :: Maybe a -> a) (Just 1)
-
-tcfail140.hs:19:1:
- The equation(s) for `g' have two arguments,
- but its type `Int -> Int' has only one
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail141.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail141.hs
deleted file mode 100644
index 12504d04f3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail141.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE MagicHash, UnboxedTuples #-}
-
--- Should fail, because f :: (# Int#, ByteArray# #)
-
-module ShouldFail where
-
-import GHC.Prim (Int#, ByteArray#)
-
-main :: IO ()
-main = let f = int2Integer# 0# in putStrLn ""
-
-
-int2Integer# :: Int# -> (# Int#, ByteArray# #)
-int2Integer# = undefined
--- This function doesn't have to work!
--- We just need it for its type.
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail141.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail141.stderr
deleted file mode 100644
index 27c7ede212..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail141.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail141.hs:10:12:
- The variable `f' cannot have an unboxed tuple type:
- (# Int#, ByteArray# #)
- In the expression: let f = int2Integer# 0# in putStrLn ""
- In an equation for `main':
- main = let f = int2Integer# 0# in putStrLn ""
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail142.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail142.hs
deleted file mode 100644
index add92e43ab..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail142.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses #-}
-
--- Tests top-level ambiguity resolution
--- This made a post-6.4 GHC fall over in TcSimplify
-
-module ShouldFail where
-
-class Foo a
-instance Foo (a -> b)
-
-foo :: Foo a => a -> ()
-foo = undefined
-
-class Bar a r
--- The same happens if we use fundeps:
--- class Bar a r | r -> a
-
-bar :: Bar a r => r -> ()
-bar = undefined
-
-test = foo bar
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail142.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail142.stderr
deleted file mode 100644
index cd0161658f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail142.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail142.hs:21:12:
- Ambiguous type variables `a0', `r0' in the constraint:
- (Bar a0 r0) arising from a use of `bar'
- Probable fix: add a type signature that fixes these type variable(s)
- In the first argument of `foo', namely `bar'
- In the expression: foo bar
- In an equation for `test': test = foo bar
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail143.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail143.hs
deleted file mode 100644
index 67eb62bafb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail143.hs
+++ /dev/null
@@ -1,116 +0,0 @@
-{-# LANGUAGE UndecidableInstances, FlexibleInstances,
- MultiParamTypeClasses, FunctionalDependencies #-}
-
-module Foo where
-
-data Z = Z
-data S a = S a
-
-class MinMax a b c d | a b -> c d, a c d -> b, b c d -> a
-instance MinMax Z Z Z Z -- (a)
-instance MinMax a Z Z a -- (b) -- L1: wrongly flagged as error src.
-instance MinMax Z b Z b -- (c)
-instance MinMax a b c d => MinMax (S a) (S b) (S c) (S d)
- -- (d)
-
-class Extend a b where extend :: a -> b -> b
-instance Extend Z b where Z `extend` b = b
-instance MinMax a b _c b => Extend a b where
- _a `extend` b = b
-
-t :: MinMax a b _c d => a -> b -> d
-t _ _ = (undefined :: d)
-
-n0 = Z
-n1 = S n0
-
-t1 = n1 `t` n0 -- L2
-
-t2 = n1 `extend` n0 -- L3: uncommenting just this line produces
- -- an error message pointing at L1 and L2
- -- with no mention of the real culprit, L3.
-
--- t1 :: S Z -- L4: uncommenting this and L3 produces an
- -- error message rightly pointing at L2 and L3.
-
-
-{- n0 :: Z; n1 :: S Z
-
-Call of extend gives wanted: Extend (S Z) Z
-Use instance => MinMax (S Z) Z gamma Z
-FD on (b) => gamma ~ Z, Z ~ S Z
- => MinMax (S Z) Z Z Z
-FD on (a), 3rd fundep => Z ~ S Z
- (b) again (sadly) Z ~ S Z
-
--}
-{-
-
-Here's what is happening.
-
-Lacking the type signature t1 :: S Z, we get
-
- n0 :: Z
- n1 :: S v1
- t1 :: d1 with constraint ([L2] MinMax (S v1) Z c1 d1)
- t2 :: Z with constraint ([L3] Extend (S v1) Z)
-
- [L2] MinMax (S v1) Z c1 d1, [L3] Extend (S v1) Z
----> <by instance for Extend a b>
- [L2] MinMax (S v1) Z c1 d1, [L3] MinMax (S v1) Z c2 Z}
----> <combining these two constraints using (a b -> c d)
- [L2] MinMax (S v1) Z c1 Z, [L3] MinMax (S v1) Z c1 Z}
-
-Now there are the two constraints are indistinguishable,
-and both give rise to the same error:
-
----> <combining first with [L1] instance MinMax a Z Z a>
- c1=Z, Z=S v1 ERROR
-
-In either case, the error points to L1.
-
-
-A different sequence leads to a different error:
-
- [L2] MinMax (S v1) Z c1 d1, [L3] Extend (S v1) Z
----> <by instance for Extend a b>
- [L2] MinMax (S v1) Z c1 d1, [L3] MinMax (S v1) Z c2 Z}
----> <combining first with [L1] instance MinMax a Z Z a>
- [L2] MinMax (S v1) Z Z (S2 v1), [L3] MinMax (S v1) Z c2 Z}
-
-Now combining the two constraints gives rise to the error, but
-this time pointing to L2,L3.
-
-I can't explain exactly why adding the type signature for t1
-changes the order.
-
-
-Hmm. Perhaps a good improvement strategy would be:
- - first do improvement against the instance declartions
- - and only then do pairwise improvement between constraints
-
-I've implemented that, and indeed it improves the result.
-Instead of:
-
- Foo.hs:1:0:
- Couldn't match `S Z' against `Z'
- Expected type: S Z
- Inferred type: Z
- When using functional dependencies to combine
- MinMax a Z Z a, arising from the instance declaration at Foo.hs:10:0
- MinMax (S Z) Z _c d, arising from use of `t' at Foo.hs:25:8-10
-
-we get
-
- Foo.hs:1:0:
- Couldn't match `S Z' against `Z'
- Expected type: S Z
- Inferred type: Z
- When using functional dependencies to combine
- MinMax a Z Z a, arising from the instance declaration at Foo.hs:10:0
- MinMax (S Z) Z _c Z, arising from use of `extend' at Foo.hs:27:8-15
-
-
-And this error in t2 is perfectly correct. You get it even if you comment
-out the entire definition of t1.
--} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail143.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail143.stderr
deleted file mode 100644
index 846f8c0252..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail143.stderr
+++ /dev/null
@@ -1,11 +0,0 @@
-
-tcfail143.hs:29:9:
- Couldn't match type `S Z' with `Z'
- When using functional dependencies to combine
- MinMax a Z Z a,
- arising from the dependency `a b -> c d'
- in the instance declaration at tcfail143.hs:11:10
- MinMax (S Z) Z Z Z,
- arising from a use of `extend' at tcfail143.hs:29:9-16
- In the expression: n1 `extend` n0
- In an equation for `t2': t2 = n1 `extend` n0
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail144.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail144.hs
deleted file mode 100644
index bdeb6f6a91..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail144.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- Both sets should fail in Haskell98
-
-{-# LANGUAGE Haskell98 #-}
-
-module ShouldCompile where
-
- f1 :: Eq a => a -> Bool
- f1 x = (x == x) || g1 True || g1 "Yes"
-
- g1 :: Ord a => a -> Bool
- g1 y = (y <= y) || f1 True
-
----------
-
- f2 :: Eq a => a -> Bool
- f2 x = (x == x) || g2 True || g2 "Yes"
-
- g2 y = (y <= y) || f2 True
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail144.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail144.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail144.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail145.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail145.hs
deleted file mode 100644
index d33dc1892f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail145.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE RankNTypes, ScopedTypeVariables #-}
-
--- This fails, because the type in the pattern doesn't exactly match
--- the context type. We don't do subsumption in patterns any more.
-
--- GHC 7.0: now we do again
-
-module Foo where
-
-foo :: (forall c. c -> c) -> [Char]
-foo (f :: forall a. [a] -> [a]) = f undefined
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail145.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail145.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail145.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail146.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail146.hs
deleted file mode 100644
index f5ab46f4c5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail146.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Foo1 where
-
--- Variant: class used as data
-class SClass a where
- sFun :: a -> SData a
-
-data SData a = SCon (SClass a)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail146.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail146.stderr
deleted file mode 100644
index 25031ae618..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail146.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail146.hs:7:16:
- Class `SClass' used as a type
- In the definition of data constructor `SCon'
- In the data type declaration for `SData'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail147.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail147.hs
deleted file mode 100644
index 1ca703a403..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail147.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-module Foo1 where
-
--- Variant: ill-kinded.
-class XClass a where
- xFun :: a -> XData
-
-data XData = XCon XClass
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail147.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail147.stderr
deleted file mode 100644
index 81e77fe648..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail147.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail147.hs:7:19:
- `XClass' is not applied to enough type arguments
- Expected kind `?', but `XClass' has kind `k0 -> *'
- In the type `XClass'
- In the definition of data constructor `XCon'
- In the data type declaration for `XData'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail148.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail148.hs
deleted file mode 100644
index d80db2ccf5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail148.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- This one caused a panic in GHC 6.4
-
-module Foo1 where
-
-data List elem = Cons elem List | Nil
-
-t1 :: List
-t1 = Cons 1 Nil
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail148.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail148.stderr
deleted file mode 100644
index 13d4293807..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail148.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail148.hs:5:28:
- `List' is not applied to enough type arguments
- Expected kind `?', but `List' has kind `* -> *'
- In the type `List'
- In the definition of data constructor `Cons'
- In the data type declaration for `List'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail149.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail149.hs
deleted file mode 100644
index 2479ed75c8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail149.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-module Main where
-
-class C a where
- op :: (Show a, Show b) => a -> b -> String
- -- This class op adds a constraint on 'a'
-
- -- In GHC 7.0 this is fine, and it's a royal
- -- pain to reject it when in H98 mode, so
- -- I'm just allowing it
-
-instance C Int where
- op x y = show x ++ " " ++ show y
-
-main = print (op (1::Int) 2)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail149.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail149.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail149.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail149.stdout b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail149.stdout
deleted file mode 100644
index c1fcb5d3f7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail149.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"1 2"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail150.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail150.hs
deleted file mode 100644
index cc2ca034ef..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail150.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-module ShouldFail where
-
--- !!! constraining the type variable in a class head is illegal
--- Simpler version of tcfail149
-class Foo a where
- op :: Eq a => a -> a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail150.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail150.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail150.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail151.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail151.hs
deleted file mode 100644
index 112973b71e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail151.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE DatatypeContexts #-}
-module ShouldFail where
-
-class (Show a, Eq a, Monad m) => Name m a where
- hashName :: a -> Int
- newName :: m a
-
-data Name a => Exp a = MkExp a
--- The kind error should be reported here
--- GHC 6.4 reported an error with the class decl
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail151.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail151.stderr
deleted file mode 100644
index bf549602e7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail151.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail151.hs:1:14:
- Warning: -XDatatypeContexts is deprecated: It was widely considered a misfeature, and has been removed from the Haskell language.
-
-tcfail151.hs:8:6:
- `Name a' is not applied to enough type arguments
- Expected kind `?', but `Name a' has kind `* -> *'
- In the data type declaration for `Exp'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail152.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail152.hs
deleted file mode 100644
index 3ebb6fe0f6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail152.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE ExistentialQuantification #-}
-
--- This test made Hugs fail (Oct 05) because the constraint
--- from the 'toInteger' call escaped from the pattern match
-
-module ShouldFail where
-
-data T = forall a. C a
-
-test (C x) = toInteger x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail152.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail152.stderr
deleted file mode 100644
index 5ae2f52f00..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail152.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail152.hs:10:14:
- No instance for (Integral a)
- arising from a use of `toInteger'
- In the expression: toInteger x
- In an equation for `test': test (C x) = toInteger x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail153.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail153.hs
deleted file mode 100644
index add0479980..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail153.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- Killed a test compiler, so I thought it was worth including
-
-module ShouldFail where
-
-f :: a -> [a]
-f x = g x
- where
- g y = if y then [] else [y]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail153.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail153.stderr
deleted file mode 100644
index 0b40df47d1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail153.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-tcfail153.hs:6:9:
- Couldn't match type `a' with `Bool'
- `a' is a rigid type variable bound by
- the type signature for f :: a -> [a] at tcfail153.hs:6:1
- In the first argument of `g', namely `x'
- In the expression: g x
- In an equation for `f':
- f x
- = g x
- where
- g y = if y then [] else [...]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail154.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail154.hs
deleted file mode 100644
index 6e3161bd46..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail154.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses #-}
-
-module ShouldFail where
-
-data T a = MkT
-
-class C a b where
- op :: T a -> T b -> Bool
-
--- Repeated type variable in an instance constraint
--- should require UndecidableInstances
-instance C a a => Eq (T a) where
- (==) = op
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail154.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail154.stderr
deleted file mode 100644
index f8f3d69a4c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail154.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail154.hs:12:10:
- Variable occurs more often in a constraint than in the instance head
- in the constraint: C a a
- (Use -XUndecidableInstances to permit this)
- In the instance declaration for `Eq (T a)'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail155.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail155.hs
deleted file mode 100644
index 265d9d83a9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail155.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- Data type returns the wrong type
-
-module ShouldFail where
-
-data T a where
- P :: L1 -> L2
-
-data L1 = L1
-data L2 = L2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail155.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail155.stderr
deleted file mode 100644
index fcc1133d4d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail155.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail155.hs:8:6:
- Data constructor `P' returns type `L2'
- instead of an instance of its parent type `T a'
- In the definition of data constructor `P'
- In the data type declaration for `T'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail156.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail156.hs
deleted file mode 100644
index 7956c5b76a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail156.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE ExistentialQuantification #-}
-
--- Illegal existential context on a newtype
-
-module ShouldFail where
-
-newtype Foo = forall a . Foo a
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail156.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail156.stderr
deleted file mode 100644
index d93549e136..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail156.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail156.hs:7:26:
- A newtype constructor cannot have an existential context,
- but `Foo' does
- In the definition of data constructor `Foo'
- In the newtype declaration for `Foo'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail157.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail157.hs
deleted file mode 100644
index 74f02ed1e5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail157.hs
+++ /dev/null
@@ -1,39 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances #-}
--- NB: *no* UndecidableInstances
-
--- This one (due to Oleg) made 6.4.1 go into a loop in the typechecker,
--- despite the lack of UndecidableInstances
---
--- The example corresponds to a type function (realized as a class E
--- with functional dependencies) in the context of an instance.
--- The function in question is
---
--- class E m a b | m a -> b
--- instance E m (() -> ()) (m ())
---
--- We see that the result of the function, "m ()" is smaller (in the
--- number of constructors) that the functions' arguments, "m" and
--- "() -> ()" together. Plus any type variable free in the result is also
--- free in at least one of the arguments. And yet it loops.
-module ShouldFail where
-
-class Foo m a where
- foo :: m b -> a -> Bool
-
-instance Foo m () where
- foo _ _ = True
-
-instance (E m a b, Foo m b) => Foo m (a->()) where
- foo m f = undefined
-
-class E m a b | m a -> b where
- tr :: m c -> a -> b
-
--- There is only one instance of the class with functional dependencies
-instance E m (() -> ()) (m ()) where
- tr x = undefined
-
--- GHC(i) loops
-
-test = foo (\f -> (f ()) :: ()) (\f -> (f ()) :: ())
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail157.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail157.stderr
deleted file mode 100644
index c68f957652..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail157.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-tcfail157.hs:27:10:
- Variable occurs more often in a constraint than in the instance head
- in the constraint: E m a b
- (Use -XUndecidableInstances to permit this)
- In the instance declaration for `Foo m (a -> ())'
-
-tcfail157.hs:27:10:
- Variable occurs more often in a constraint than in the instance head
- in the constraint: Foo m b
- (Use -XUndecidableInstances to permit this)
- In the instance declaration for `Foo m (a -> ())'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail158.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail158.hs
deleted file mode 100644
index 95af345b36..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail158.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE ExplicitForAll #-}
-
--- This one actually crashed in 6.4.1
--- There's a kind error in the signature for bar,
--- and we were recovering, and then crashing when we found
--- a scoped type variable not in scope
-
- data Val v sm = Val
- foo :: forall v sm. Val v sm
- foo = undefined
- where foo1 :: Val v sm
- foo1 = bar
- -- Correct type signature: bar :: forall v sm. Val v sm
- bar :: forall v. Val v
- bar = undefined foo
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail158.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail158.stderr
deleted file mode 100644
index b9c3a7dbca..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail158.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail158.hs:14:19:
- `Val v' is not applied to enough type arguments
- Expected kind `*', but `Val v' has kind `* -> *'
- In the type signature for `bar':
- bar :: forall v. Val v
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail159.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail159.hs
deleted file mode 100644
index c0c2eb1902..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail159.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-{-# LANGUAGE UnboxedTuples #-}
-
-module ShouldFail where
-
-h :: Int -> (# Int, Int #)
-h x = (# x,x #)
-
-foo x = case h x of
- ~(# p, q #) -> p
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail159.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail159.stderr
deleted file mode 100644
index b389ef1e96..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail159.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail159.hs:9:11:
- Kind incompatibility when matching types:
- t0 :: *
- (# Int, Int #) :: (#)
- In the pattern: ~(# p, q #)
- In a case alternative: ~(# p, q #) -> p
- In the expression: case h x of { ~(# p, q #) -> p }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail160.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail160.hs
deleted file mode 100644
index 79b75df305..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail160.hs
+++ /dev/null
@@ -1,8 +0,0 @@
--- Kind error message
-
-module ShouldFail where
-
-data T k = T (k Int)
-
-g :: T Int
-g x = x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail160.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail160.stderr
deleted file mode 100644
index 33cbbbb8f1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail160.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail160.hs:7:8:
- Kind mis-match
- The first argument of `T' should have kind `* -> *',
- but `Int' has kind `*'
- In the type signature for `g':
- g :: T Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail161.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail161.hs
deleted file mode 100644
index 6ebdfddc85..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail161.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- Kind error message
-
-module ShouldFail where
-
-f :: [Maybe]
-f x = x
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail161.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail161.stderr
deleted file mode 100644
index 0b04d8ef02..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail161.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail161.hs:5:7:
- `Maybe' is not applied to enough type arguments
- Expected kind `*', but `Maybe' has kind `* -> *'
- In the type signature for `f':
- f :: [Maybe]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail162.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail162.hs
deleted file mode 100644
index b13ccaa33e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail162.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
--- Kind error messsage should not contain bangs
-
-module ShouldFail where
-
-import Foreign.ForeignPtr
-
-data Foo = Foo {-# UNPACK #-} !(ForeignPtr)
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail162.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail162.stderr
deleted file mode 100644
index ae7b1c5d27..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail162.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail162.hs:10:16:
- `ForeignPtr' is not applied to enough type arguments
- Expected kind `?', but `ForeignPtr' has kind `* -> *'
- In the type `{-# UNPACK #-} !ForeignPtr'
- In the definition of data constructor `Foo'
- In the data type declaration for `Foo'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail164.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail164.hs
deleted file mode 100644
index 97ff3caf4e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail164.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
--- Tests tagToEnum# hacks
-
-module ShouldFail where
-
-import GHC.Base
-
--- Test 1: Polymorphic
-f :: a
-f = tagToEnum# 0#
-
--- Test 2: Int value (not an Enumeration TyCon)
-class Unboxable value where
- readUnboxable :: Int -> value
-instance Unboxable Int where
- readUnboxable (I# value#) = tagToEnum# value#
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail164.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail164.stderr
deleted file mode 100644
index 65f9c9f9ac..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail164.stderr
+++ /dev/null
@@ -1,15 +0,0 @@
-
-tcfail164.hs:11:5:
- Bad call to tagToEnum# at type a
- Specify the type by giving a type signature
- e.g. (tagToEnum# x) :: Bool
- In the expression: tagToEnum# 0#
- In an equation for `f': f = tagToEnum# 0#
-
-tcfail164.hs:17:34:
- Bad call to tagToEnum# at type Int
- Result type must be an enumeration type
- In the expression: tagToEnum# value#
- In an equation for `readUnboxable':
- readUnboxable (I# value#) = tagToEnum# value#
- In the instance declaration for `Unboxable Int'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail165.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail165.hs
deleted file mode 100644
index c23a7f39b4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail165.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# OPTIONS -XImpredicativeTypes -fno-warn-deprecated-flags #-}
-
-module ShouldFail where
-
-import Control.Concurrent
-
--- Attempt to put a polymorphic value in an MVar
--- Fails, but the error message is worth keeping an eye on
---
--- Actually (Dec 06) it succeeds now
---
--- In GHC 7.0 it fails again! (and rightly so)
-
-foo = do var <- newEmptyMVar :: IO (MVar (forall a. Show a => a -> String))
- putMVar var (show :: forall b. Show b => b -> String)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail165.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail165.stderr
deleted file mode 100644
index 878a707120..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail165.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-tcfail165.hs:15:23:
- Couldn't match expected type `forall a. Show a => a -> String'
- with actual type `b0 -> String'
- In the second argument of `putMVar', namely
- `(show :: forall b. Show b => b -> String)'
- In a stmt of a 'do' block:
- putMVar var (show :: forall b. Show b => b -> String)
- In the expression:
- do { var <- newEmptyMVar ::
- IO (MVar (forall a. Show a => a -> String));
- putMVar var (show :: forall b. Show b => b -> String) }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail166.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail166.hs
deleted file mode 100644
index 5a2d4b8df7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail166.hs
+++ /dev/null
@@ -1,6 +0,0 @@
--- Without -XScopedTypeVariables, this should fail
-
-module ShouldFail where
-
-destroy :: (forall a. (a -> Maybe (b,a)) -> a -> c) -> [b] -> c
-destroy = error "urk"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail166.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail166.stderr
deleted file mode 100644
index 3907418e10..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail166.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail166.hs:5:21:
- Illegal symbol '.' in type
- Perhaps you intended -XRankNTypes or similar flag
- to enable explicit-forall syntax: forall <tvs>. <type>
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail167.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail167.hs
deleted file mode 100644
index b4d404a74d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail167.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE GADTs #-}
-{-# OPTIONS_GHC -fwarn-incomplete-patterns #-}
--- Test inspired by trac #366
--- The C2 case is impossible due to the types
-
-module ShouldCompile where
-
-data T a where
- C1 :: T Char
- C2 :: T Float
-
-inaccessible :: T Char -> Char
-inaccessible C1 = ' '
-inaccessible C2 = ' '
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail167.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail167.stderr
deleted file mode 100644
index f62f524ebd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail167.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-tcfail167.hs:14:14:
- Couldn't match type `Char' with `Float'
- Inaccessible code in
- a pattern with constructor
- C2 :: T Float,
- in an equation for `inaccessible'
- In the pattern: C2
- In an equation for `inaccessible': inaccessible C2 = ' '
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail168.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail168.hs
deleted file mode 100644
index 94a78a93b0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail168.hs
+++ /dev/null
@@ -1,66 +0,0 @@
-
--- Test trac #719 (shouldn't give the entire do block in the error message)
-
-module ShouldFail where
-
-foo = do
- putChar
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
- putChar 'a'
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail168.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail168.stderr
deleted file mode 100644
index f16f65bdb1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail168.stderr
+++ /dev/null
@@ -1,12 +0,0 @@
-
-tcfail168.hs:8:11:
- Couldn't match expected type `Char -> a0' with actual type `IO ()'
- In the return type of a call of `putChar'
- Probable cause: `putChar' is applied to too many arguments
- In a stmt of a 'do' block: putChar 'a'
- In the expression:
- do { putChar;
- putChar 'a';
- putChar 'a';
- putChar 'a';
- .... }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail169.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail169.hs
deleted file mode 100644
index e0d6e4f838..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail169.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
--- Trac #958
-
-module ShoulFail where
-
-data Succ a = S a -- NB: deriving Show omitted
-data Seq a = Cons a (Seq (Succ a)) | Nil deriving Show
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail169.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail169.stderr
deleted file mode 100644
index cfe63c06ee..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail169.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-tcfail169.hs:7:51:
- No instance for (Show (Succ a))
- arising from the 'deriving' clause of a data type declaration
- Possible fix:
- add an instance declaration for (Show (Succ a))
- or use a standalone 'deriving instance' declaration,
- so you can specify the instance context yourself
- When deriving the instance for (Show (Seq a))
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail170.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail170.hs
deleted file mode 100644
index 1e7838cb43..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail170.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-
-module ShouldFail where
-
-class C a b | a -> b
-
-instance C [p] [q]
- -- Coverage condition fails
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail170.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail170.stderr
deleted file mode 100644
index 914ab0cde0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail170.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail170.hs:7:10:
- Illegal instance declaration for `C [p] [q]'
- (the Coverage Condition fails for one of the functional dependencies;
- Use -XUndecidableInstances to permit this)
- In the instance declaration for `C [p] [q]'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail171.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail171.hs
deleted file mode 100644
index fb8e4b652c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail171.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module ShouldFail where
-
--- This one made GHC fall over on implication constraints
--- Silly, but one more test does no harm
-
-import Text.Printf
-
-phex :: a -> b
-phex x = printf "0x%x" x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail171.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail171.stderr
deleted file mode 100644
index b4efd33e32..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail171.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail171.hs:9:10:
- No instances for (PrintfType b, PrintfArg a)
- arising from a use of `printf'
- In the expression: printf "0x%x" x
- In an equation for `phex': phex x = printf "0x%x" x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail172.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail172.hs
deleted file mode 100644
index bb31501cec..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail172.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- This one made GHC 6.6 give the very unhelpful error
--- Foo8.hs:11:10:
--- Couldn't match kind `?' against `* -> * -> *'
--- When matching the kinds of `t :: ?' and `t1 :: * -> * -> *'
--- Expected type: t1
--- Inferred type: t
--- In the pattern: Nil
-
-module ShouldFail where
-
-data PatchSeq p a b where
- Nil :: PatchSeq p a a
- U :: p a b -> PatchSeq p a b
- (:-) :: PatchSeq p a b -> PatchSeq p b c -> PatchSeq p a c
-
--- is_normal :: PatchSeq p a b -> Bool
-is_normal Nil = True
-is_normal (U _) = True
-is_normal (U _ :- _) = True
-is_normal _ = False
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail172.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail172.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail172.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail173.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail173.hs
deleted file mode 100644
index bad14bd539..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail173.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-module ShouldFail where
-
-newtype (f <.> g) a = Compose (f (g a))
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail173.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail173.stderr
deleted file mode 100644
index ee8f59b525..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail173.stderr
+++ /dev/null
@@ -1,3 +0,0 @@
-
-tcfail173.hs:5:10:
- Malformed head of type or class declaration: (f <.> g) a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail174.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail174.hs
deleted file mode 100644
index 47c63d7248..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail174.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# OPTIONS -XImpredicativeTypes #-}
-
-module Foo where
-
-data Capture a = Base a
- | Capture (Capture (forall x . x -> a))
-
-g :: Capture (forall a . a -> a)
-g = Base id -- Fails; need a rigid signature on 'id'
-
--- This function should definitely be rejected, with or without type signature
-
-h1 = Capture g
-
-h2 :: Capture b
-h2 = Capture g
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail174.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail174.stderr
deleted file mode 100644
index 84c0868db4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail174.stderr
+++ /dev/null
@@ -1,23 +0,0 @@
-
-tcfail174.hs:9:10:
- Couldn't match expected type `forall a. a -> a'
- with actual type `a0 -> a0'
- In the first argument of `Base', namely `id'
- In the expression: Base id
- In an equation for `g': g = Base id
-
-tcfail174.hs:13:14:
- Couldn't match expected type `forall x. x -> a0'
- with actual type `forall a. a -> a'
- Expected type: Capture (forall x. x -> a0)
- Actual type: Capture (forall a. a -> a)
- In the first argument of `Capture', namely `g'
- In the expression: Capture g
-
-tcfail174.hs:16:14:
- Couldn't match expected type `forall x. x -> b'
- with actual type `forall a. a -> a'
- Expected type: Capture (forall x. x -> b)
- Actual type: Capture (forall a. a -> a)
- In the first argument of `Capture', namely `g'
- In the expression: Capture g
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail175.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail175.hs
deleted file mode 100644
index 5eacd24291..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail175.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-
--- Crashed GHC 6.6!
--- Trac #1153
-
-module ShouldFail where
-
-eval :: Int -> String -> String -> String
-eval 0 root actual = evalRHS 0 root actual
-
-evalRHS :: Int -> a
-evalRHS 0 root actual = eval 0 root actual
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail175.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail175.stderr
deleted file mode 100644
index f181c00bcd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail175.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail175.hs:11:1:
- Couldn't match type `a' with `String -> String -> String'
- `a' is a rigid type variable bound by
- the type signature for evalRHS :: Int -> a at tcfail175.hs:11:1
- The equation(s) for `evalRHS' have three arguments,
- but its type `Int -> a' has only one
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail176.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail176.hs
deleted file mode 100644
index 39f3818ede..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail176.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE GADTs #-}
-
--- Newtype in GADT syntax
-
-module ShouldFail where
-
-newtype Bug a where Bug :: a -> Maybe a
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail176.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail176.stderr
deleted file mode 100644
index f804b000cf..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail176.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail176.hs:7:21:
- Data constructor `Bug' returns type `Maybe a'
- instead of an instance of its parent type `Bug a'
- In the definition of data constructor `Bug'
- In the newtype declaration for `Bug'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail177.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail177.hs
deleted file mode 100644
index d9e60e96fc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail177.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-module ShouldFail where
-
--- See Trac #1176
--- This is really a pretty-printer test, not a typechecker test
--- The more infix ops we have, the worse fsep works
-
--- Currently the error message looks ok, however
-
-allTests :: Bool
-allTests = foo
- [a ~?= b
- ,"Three" ~?= "3"
- ,"Four" ~?= "4"
- ,"Five" ~?= "5"
- ,"Five" ~?= "5"
- ,"Five" ~?= "5"
- ,"Five" ~?= "5"
- ,"Five" ~?= "5"
- ,"Five" ~?= "5"
- ,"Two", "Two", "Two"
- ,"Two", "Two", "Two"
- ,"Two", "Two", "Two"
- ,"Two", "Two", "Two"
- ,"Two", "Two", "Two"
- ,"Two", "Two", "Two"]
-
-a=""
-b=""
-
-(~?=) :: a -> a -> Bool
-(~?=) = error "urk"
-
-foo :: a -> Int
-foo x = 0
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail177.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail177.stderr
deleted file mode 100644
index 3107d1e668..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail177.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-tcfail177.hs:10:12:
- Couldn't match expected type `Bool' with actual type `Int'
- In the return type of a call of `foo'
- In the expression:
- foo
- [a ~?= b, "Three" ~?= "3", "Four" ~?= "4", "Five" ~?= "5", ....]
- In an equation for `allTests':
- allTests = foo [a ~?= b, "Three" ~?= "3", "Four" ~?= "4", ....]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail178.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail178.hs
deleted file mode 100644
index 8071def02e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail178.hs
+++ /dev/null
@@ -1,19 +0,0 @@
--- See Trac #1221
-
-module ShouldFail where
-
-a :: Num a => (Bool -> [a]) -> [a]
-a x = x True ++ [1]
-
-y :: b -> ()
-y = const ()
-
--- Typechecks ok
-b = a (const [2])
-
--- This one had an uninformative error message
-c = a y
-
--- More informative
-d = a ()
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail178.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail178.stderr
deleted file mode 100644
index 63119af75e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail178.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-tcfail178.hs:15:7:
- Couldn't match expected type `[a0]' with actual type `()'
- Expected type: Bool -> [a0]
- Actual type: Bool -> ()
- In the first argument of `a', namely `y'
- In the expression: a y
-
-tcfail178.hs:18:7:
- Couldn't match expected type `Bool -> [a0]' with actual type `()'
- In the first argument of `a', namely `()'
- In the expression: a ()
- In an equation for `d': d = a ()
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail179.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail179.hs
deleted file mode 100644
index a270cbffb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail179.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE ExistentialQuantification #-}
-
--- Exmaples from Doaitse Swierestra and Brandon Moore
--- GHC users mailing list, April 07, title "Release plans"
-
--- This one should fail, but Hugs passes it
-
-module ShouldFail where
-
-data T s = forall x. T (s -> (x -> s) -> (x, s, Int))
-
-run :: T s -> Int
-run ts = case ts of
- T g -> let (x,_, b) = g x id
- in b
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail179.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail179.stderr
deleted file mode 100644
index ba995b65ea..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail179.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-
-tcfail179.hs:14:41:
- Couldn't match type `x' with `s'
- `x' is a rigid type variable bound by
- a pattern with constructor
- T :: forall s x. (s -> (x -> s) -> (x, s, Int)) -> T s,
- in a case alternative
- at tcfail179.hs:14:14
- `s' is a rigid type variable bound by
- the type signature for run :: T s -> Int at tcfail179.hs:13:1
- Expected type: x -> s
- Actual type: x -> x
- In the second argument of `g', namely `id'
- In the expression: g x id
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail180.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail180.hs
deleted file mode 100644
index 4c228eedda..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail180.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-
--- Showed up a bug in bodySplitTyConApp
-
-module ShouldFail where
-
-p :: f b
-p = error "urk"
-
-g x = case p of
- True -> ()
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail180.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail180.stderr
deleted file mode 100644
index 96d76100ea..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail180.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail180.hs:10:9:
- Couldn't match expected type `f0 b0' with actual type `Bool'
- In the pattern: True
- In a case alternative: True -> ()
- In the expression: case p of { True -> () }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail181.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail181.hs
deleted file mode 100644
index 01d06599ef..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail181.hs
+++ /dev/null
@@ -1,18 +0,0 @@
--- GHC 6.7 at one point said wog's type was:
---
--- wog :: forall t e (m :: * -> *).
--- (Monad GHC.Prim.Any1, Monad m) =>
--- t -> Something (m Bool) e
---
--- The stupid 'GHC.Prim.Any1' arose becuase of type ambiguity
--- which should be reported, and wasn't.
-
-module ShouldFail where
-
-data Something d e = Something{ bar:: d, initializer::e }
-
-foo :: (Monad m) => Something (m Bool) n
-foo = undefined
-
-wog x = foo{bar = return True}
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail181.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail181.stderr
deleted file mode 100644
index 59fe8b83af..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail181.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail181.hs:17:9:
- Ambiguous type variable `m0' in the constraint:
- (Monad m0) arising from a use of `foo'
- Probable fix: add a type signature that fixes these type variable(s)
- In the expression: foo
- In the expression: foo {bar = return True}
- In an equation for `wog': wog x = foo {bar = return True}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail182.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail182.hs
deleted file mode 100644
index 7b04df489f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail182.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module Foo where
-
-import qualified Prelude
-import Prelude hiding( Maybe )
-
-data Maybe a = Foo
-
-f :: Prelude.Maybe a -> Int
-f Foo = 3
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail182.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail182.stderr
deleted file mode 100644
index d6b97af250..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail182.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail182.hs:9:3:
- Couldn't match expected type `Prelude.Maybe a'
- with actual type `Maybe t0'
- In the pattern: Foo
- In an equation for `f': f Foo = 3
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail183.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail183.hs
deleted file mode 100644
index d46d87ad7c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail183.hs
+++ /dev/null
@@ -1,4 +0,0 @@
-
-module ShouldCompile where
-
-newtype Swizzle = MkSwizzle (forall a. Ord a => [a] -> [a])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail183.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail183.stderr
deleted file mode 100644
index fad1ccf736..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail183.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail183.hs:4:38:
- Illegal symbol '.' in type
- Perhaps you intended -XRankNTypes or similar flag
- to enable explicit-forall syntax: forall <tvs>. <type>
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail184.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail184.hs
deleted file mode 100644
index 210a9c7c9b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail184.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-
-{-# OPTIONS_GHC -XScopedTypeVariables #-}
--- We don't actually want scoped type variables, but this flag makes the
--- forall be recognised by the parser
-
-module ShouldCompile where
-
-newtype Swizzle = MkSwizzle (forall a. Ord a => [a] -> [a])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail184.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail184.stderr
deleted file mode 100644
index 20920d822b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail184.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail184.hs:8:19:
- Illegal polymorphic or qualified type:
- forall a. Ord a => [a] -> [a]
- Perhaps you intended to use -XRankNTypes or -XRank2Types
- In the definition of data constructor `MkSwizzle'
- In the newtype declaration for `Swizzle'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail185.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail185.hs
deleted file mode 100644
index 59af50f738..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail185.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- See Trac #1606
-
-module ShouldFail where
-
-f :: Int -> Int -> Bool -> Bool -> Int -> Int
-f a b = \ x y -> let { y1 = y; y2 = y1; y3 = y2; y4 = y3; y5 = y4;
- y6 = y5; y7 = y6 } in x
-
-
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail185.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail185.stderr
deleted file mode 100644
index 1e4c8d718f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail185.stderr
+++ /dev/null
@@ -1,17 +0,0 @@
-
-tcfail185.hs:7:46:
- Couldn't match expected type `Int -> Int' with actual type `Bool'
- In the expression: x
- In the expression:
- let
- y1 = y
- y2 = y1
- y3 = y2
- ....
- in x
- In the expression:
- \ x y
- -> let
- y1 = ...
- ....
- in x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail186.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail186.hs
deleted file mode 100644
index 6148517a6d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail186.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- Trac #1814
-
-module ShouldFail where
-
-import Tcfail186_Help
-
-foo = f "hoo" \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail186.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail186.stderr
deleted file mode 100644
index 3f4504b810..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail186.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail186.hs:7:9:
- Couldn't match expected type `PhantomSyn a0'
- with actual type `[Char]'
- In the first argument of `f', namely `"hoo"'
- In the expression: f "hoo"
- In an equation for `foo': foo = f "hoo"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail186.stderr-ghc-7.0 b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail186.stderr-ghc-7.0
deleted file mode 100644
index 737a0663ea..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail186.stderr-ghc-7.0
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail186.hs:7:9:
- Couldn't match expected type `Int' with actual type `[Char]'
- Expected type: PhantomSyn a0
- Actual type: [Char]
- In the first argument of `f', namely `"hoo"'
- In the expression: f "hoo"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail187.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail187.hs
deleted file mode 100644
index eb508066ec..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail187.hs
+++ /dev/null
@@ -1,7 +0,0 @@
--- Trac #1806
-
-module ShouldFail where
-
-data Foo = (:::)
-
-foo (x ::: y) = ()
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail187.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail187.stderr
deleted file mode 100644
index 07a741d025..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail187.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail187.hs:7:6:
- Constructor `:::' should have no arguments, but has been given 2
- In the pattern: x ::: y
- In an equation for `foo': foo (x ::: y) = ()
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail188.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail188.hs
deleted file mode 100644
index a79087d90d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail188.hs
+++ /dev/null
@@ -1,17 +0,0 @@
-{-# LANGUAGE Rank2Types, KindSignatures #-}
-{-# OPTIONS_GHC -Werror #-}
-
--- Trac #959
-
-module ShouldFail where
-
-data D (f :: (* -> *) -> * -> *) (af :: * -> *) (ax :: *) =
- D (af (f af ax))
-
-data CList (f :: (* -> *) -> * -> *) (a :: *) =
- RCons a (CList (D f) a)
-
-type CycleList a = forall f. CList f a
-
-chead :: CycleList a -> a
-chead ys = case ys of (RCons x xs) -> x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail188.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail188.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail188.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail189.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail189.hs
deleted file mode 100644
index 3de16070c3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail189.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Checks that the correct type is used checking the using clause of
--- the group when a by clause is present
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module ShouldFail where
-
-foo = [ length x
- | x <- [1..10]
- , then group by x using take 2
- ]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail189.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail189.stderr
deleted file mode 100644
index b3a6cb4b96..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail189.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail189.hs:10:31:
- Couldn't match expected type `a -> t0' with actual type `[a0]'
- Expected type: (a -> t0) -> [a] -> [[a]]
- Actual type: [a0] -> [a0]
- In the return type of a call of `take'
- Probable cause: `take' is applied to too many arguments
- In the expression: take 2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail190.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail190.hs
deleted file mode 100644
index 7cc768af65..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail190.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
--- Checks that the ordering constraint on the implicit groupWith is respected
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module ShouldFail where
-
-data Unorderable = Gnorf | Pinky | Brain
-
-foo = [ ()
- | x <- [Gnorf, Brain]
- , then group by x
- ]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail190.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail190.stderr
deleted file mode 100644
index a2e1034162..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail190.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail190.hs:12:9:
- No instance for (Ord Unorderable)
- arising from a use of `Control.Monad.Group.mgroupWith'
- Possible fix: add an instance declaration for (Ord Unorderable)
- In the expression: Control.Monad.Group.mgroupWith
- In a stmt of a list comprehension: then group by x
- In the expression: [() | x <- [Gnorf, Brain], then group by x]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail191.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail191.hs
deleted file mode 100644
index e6553d07e2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail191.hs
+++ /dev/null
@@ -1,12 +0,0 @@
--- Checks that the correct type is used checking the using clause of the group
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module ShouldFail where
-
-data Unorderable = Gnorf | Pinky | Brain
-
-foo = [ ()
- | x <- [Gnorf, Brain]
- , then group using take 5
- ]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail191.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail191.stderr
deleted file mode 100644
index 6fd626afd4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail191.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-tcfail191.hs:11:26:
- Couldn't match type `a' with `[a]'
- `a' is a rigid type variable bound by
- a type expected by the context: [a] -> [[a]] at tcfail191.hs:11:9
- Expected type: [a] -> [[a]]
- Actual type: [a] -> [a]
- In the return type of a call of `take'
- In the expression: take 5
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail192.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail192.hs
deleted file mode 100644
index 15de576d91..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail192.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Checks that the types of the old binder and the binder
--- implicitly introduced by grouping are linked
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module ShouldFail where
-
-foo = [ x + 1
- | x <- ["Hello", "World"]
- , then group using take 5
- ] \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail192.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail192.stderr
deleted file mode 100644
index d72c821fd6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail192.stderr
+++ /dev/null
@@ -1,18 +0,0 @@
-
-tcfail192.hs:8:13:
- No instance for (Num [[Char]])
- arising from the literal `1'
- Possible fix: add an instance declaration for (Num [[Char]])
- In the second argument of `(+)', namely `1'
- In the expression: x + 1
- In the expression:
- [x + 1 | x <- ["Hello", "World"], then group using take 5]
-
-tcfail192.hs:10:26:
- Couldn't match type `a' with `[a]'
- `a' is a rigid type variable bound by
- a type expected by the context: [a] -> [[a]] at tcfail192.hs:10:9
- Expected type: [a] -> [[a]]
- Actual type: [a] -> [a]
- In the return type of a call of `take'
- In the expression: take 5
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail193.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail193.hs
deleted file mode 100644
index f8bfd8f681..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail193.hs
+++ /dev/null
@@ -1,11 +0,0 @@
--- Checks that the correct type is used checking the using clause of the transform
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module ShouldFail where
-
-import Data.List(inits)
-
-z :: [Int]
-z = [x | x <- [3, 2, 1], then inits]
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail193.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail193.stderr
deleted file mode 100644
index 6fd99ae61b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail193.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-tcfail193.hs:10:31:
- Couldn't match type `a' with `[a]'
- `a' is a rigid type variable bound by
- a type expected by the context: [a] -> [a] at tcfail193.hs:10:26
- Expected type: [a] -> [a]
- Actual type: [a] -> [[a]]
- In the expression: inits
- In a stmt of a list comprehension: then inits
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail194.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail194.hs
deleted file mode 100644
index 9166b18b4a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail194.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- Checks that using the "by" clause in a transform requires a function parameter
-
-{-# OPTIONS_GHC -XTransformListComp #-}
-
-module ShouldFail where
-
-import Data.List(take)
-
-z = [x | x <- [1..10], then take 5 by x]
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail194.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail194.stderr
deleted file mode 100644
index be6e37ec6b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail194.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail194.hs:9:29:
- Couldn't match expected type `a -> t0' with actual type `[a0]'
- Expected type: (a -> t0) -> [a] -> [a]
- Actual type: [a0] -> [a0]
- In the return type of a call of `take'
- Probable cause: `take' is applied to too many arguments
- In the expression: take 5
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail195.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail195.hs
deleted file mode 100644
index 4c2408e8ba..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail195.hs
+++ /dev/null
@@ -1,6 +0,0 @@
-{-# LANGUAGE RankNTypes, GADTs #-}
-
-module ShouldFail where
-
-data Foo a where
- Foo :: Int -> Foo (forall a. a)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail195.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail195.stderr
deleted file mode 100644
index 5816773f48..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail195.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail195.hs:6:3:
- Illegal polymorphic or qualified type: forall a. a
- In the definition of data constructor `Foo'
- In the data type declaration for `Foo'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail196.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail196.hs
deleted file mode 100644
index a88f3c7f44..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail196.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-
-module ShouldFail where
-
-bar :: Num (forall a. a) => Int -> Int
-bar = error "urk"
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail196.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail196.stderr
deleted file mode 100644
index 79cc7266eb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail196.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail196.hs:5:1:
- Illegal polymorphic or qualified type: forall a. a
- In the type signature for `bar':
- bar :: Num (forall a. a) => Int -> Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail197.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail197.hs
deleted file mode 100644
index 1aaffcd389..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail197.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE RankNTypes #-}
-
-module ShouldFail where
-
-foo :: [forall a. a] -> Int
-foo = error "urk"
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail197.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail197.stderr
deleted file mode 100644
index 3abe57be7b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail197.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail197.hs:5:1:
- Illegal polymorphic or qualified type: forall a. a
- Perhaps you intended to use -XImpredicativeTypes
- In the type signature for `foo':
- foo :: [forall a. a] -> Int
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail198.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail198.hs
deleted file mode 100644
index 658545e9b2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail198.hs
+++ /dev/null
@@ -1,7 +0,0 @@
-{-# LANGUAGE ScopedTypeVariables #-}
-
-module ShouldFail where
-
-f3 :: forall a. [a] -> [a]
-Just f3 = Just (\(x:xs) -> xs ++ [ x :: a ]) -- Not OK!
- -- The type variable does not scope in a pattern binding
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail198.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail198.stderr
deleted file mode 100644
index cc3ca54b14..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail198.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-tcfail198.hs:6:17:
- Couldn't match expected type `t0 -> t1'
- with actual type `forall a. [a] -> [a]'
- The lambda expression `\ (x : xs) -> xs ++ ...' has one argument,
- but its type `forall a. [a] -> [a]' has none
- In the first argument of `Just', namely
- `(\ (x : xs) -> xs ++ [x :: a])'
- In the expression: Just (\ (x : xs) -> xs ++ [x :: a])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail199.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail199.hs
deleted file mode 100644
index bf4dd6503d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail199.hs
+++ /dev/null
@@ -1,5 +0,0 @@
--- trac #2179
-
-module Main where
-
-main = "hi"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail199.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail199.stderr
deleted file mode 100644
index 6866a26452..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail199.stderr
+++ /dev/null
@@ -1,5 +0,0 @@
-
-tcfail199.hs:5:1:
- Couldn't match expected type `IO t0' with actual type `[Char]'
- In the expression: main
- When checking the type of the function `main'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail200.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail200.hs
deleted file mode 100644
index 18d626207b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail200.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-{-# LANGUAGE MagicHash #-}
-
-module ShouldFail where
-
-f = let x = ( 1#, 'c' ) in x
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail200.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail200.stderr
deleted file mode 100644
index 90f590d8e2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail200.stderr
+++ /dev/null
@@ -1,8 +0,0 @@
-
-tcfail200.hs:5:15:
- Kind incompatibility when matching types:
- t0 :: *
- GHC.Prim.Int# :: #
- In the expression: 1#
- In the expression: (1#, 'c')
- In an equation for `x': x = (1#, 'c')
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail201.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail201.hs
deleted file mode 100644
index 276efd05ae..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail201.hs
+++ /dev/null
@@ -1,23 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
-
--- Claus reported by email that
--- GHCi, version 6.9.20080217 loops on this program
--- http://www.haskell.org/pipermail/cvs-ghc/2008-June/043173.html
--- So I'm adding it to the test suite so that we'll see it if it happens again
-
-module Foo where
-
-data HsDoc id
- = DocEmpty
- | DocParagraph (HsDoc id)
-
-gfoldl' :: (forall a b . c (a -> b) -> a -> c b) -> (forall g . g -> c g) -> a -> c a
-gfoldl' k z hsDoc = case hsDoc of
- DocEmpty -> z DocEmpty
- (DocParagraph hsDoc) -> z DocParagraph `k` hsDoc
-
-
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail201.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail201.stderr
deleted file mode 100644
index 653e503edc..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail201.stderr
+++ /dev/null
@@ -1,14 +0,0 @@
-
-tcfail201.hs:18:58:
- Couldn't match type `a' with `HsDoc t0'
- `a' is a rigid type variable bound by
- the type signature for
- gfoldl' :: (forall a1 b. c (a1 -> b) -> a1 -> c b)
- -> (forall g. g -> c g)
- -> a
- -> c a
- at tcfail201.hs:16:1
- Expected type: HsDoc t0 -> a
- Actual type: HsDoc t0 -> HsDoc t0
- In the first argument of `z', namely `DocParagraph'
- In the first argument of `k', namely `z DocParagraph'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail202.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail202.hs
deleted file mode 100644
index 7565755218..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail202.hs
+++ /dev/null
@@ -1,13 +0,0 @@
--- trac #2307
--- This was accepted due to a bug in GHC
-
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- OverlappingInstances, UndecidableInstances, IncoherentInstances,
- FlexibleInstances #-}
-
-module Foo where
-
-class C a b c | b -> c
-instance C Bool Int Float
-instance C Char Int Double
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail202.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail202.stderr
deleted file mode 100644
index a43f726580..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail202.stderr
+++ /dev/null
@@ -1,7 +0,0 @@
-
-tcfail202.hs:11:10:
- Functional dependencies conflict between instance declarations:
- instance [incoherent] C Bool Int Float
- -- Defined at tcfail202.hs:11:10-25
- instance [incoherent] C Char Int Double
- -- Defined at tcfail202.hs:12:10-26
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203.hs
deleted file mode 100644
index 7f51dae3b5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203.hs
+++ /dev/null
@@ -1,54 +0,0 @@
--- trac #2806
-
-{-# LANGUAGE MagicHash, UnboxedTuples, BangPatterns #-}
-
-module Foo where
-
-import GHC.Base
-
-pass1 = 'a'
- where !x = 5#
-
-pass2 = 'a'
- where !(I# x) = 5
-
-pass3 = 'a'
- where !(b, I# x) = (True, 5)
-
-pass4 = 'a'
- where !(# b, I# x #) = (# True, 5 #)
-
-pass5 = 'a'
- where !(# b, x #) = (# True, 5# #)
-
-fail1 = 'a'
- where x = 5#
-
-fail2 = 'a'
- where (I# x) = 5
-
-fail3 = 'a'
- where (b, I# x) = (True, 5)
-
-fail4 = 'a'
- where (# b, I# x #) = (# True, 5 #)
-
-fail5 = 'a'
- where (# b, x #) = (# True, 5# #)
-
-fail6 = 'a'
- where (I# !x) = 5
-
-fail7 = 'a'
- where (b, !(I# x)) = (True, 5)
-
-fail8 = 'a'
- where (# b, !(I# x) #) = (# True, 5 #)
-
-fail9 = 'a'
- where (# b, !x #) = (# True, 5# #)
-{-
--- Now in tcfail203a.hs, because it's an error
-fail10 = 'a'
- where !(b, ~(c, (I# x))) = (True, (False, 5))
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203.stderr
deleted file mode 100644
index 29cf84095b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203.stderr
+++ /dev/null
@@ -1,36 +0,0 @@
-
-tcfail203.hs:28:11:
- Warning: Pattern bindings containing unlifted types should use an outermost bang pattern:
- (I# x) = 5
- In an equation for `fail2':
- fail2
- = 'a'
- where
- (I# x) = 5
-
-tcfail203.hs:31:11:
- Warning: Pattern bindings containing unlifted types should use an outermost bang pattern:
- (b, I# x) = (True, 5)
- In an equation for `fail3':
- fail3
- = 'a'
- where
- (b, I# x) = (True, 5)
-
-tcfail203.hs:40:11:
- Warning: Pattern bindings containing unlifted types should use an outermost bang pattern:
- (I# !x) = 5
- In an equation for `fail6':
- fail6
- = 'a'
- where
- (I# !x) = 5
-
-tcfail203.hs:43:11:
- Warning: Pattern bindings containing unlifted types should use an outermost bang pattern:
- (b, !(I# x)) = (True, 5)
- In an equation for `fail7':
- fail7
- = 'a'
- where
- (b, !(I# x)) = (True, 5)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203a.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203a.hs
deleted file mode 100644
index fd5ccaefbb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203a.hs
+++ /dev/null
@@ -1,10 +0,0 @@
--- trac #2806
-
-{-# LANGUAGE MagicHash, UnboxedTuples, BangPatterns #-}
-
-module Foo where
-
-import GHC.Base
-
-fail10 = 'a'
- where !(b, ~(c, (I# x))) = (True, (False, 5))
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203a.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203a.stderr
deleted file mode 100644
index 272ff4254e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail203a.stderr
+++ /dev/null
@@ -1,6 +0,0 @@
-
-tcfail203a.hs:10:16:
- A lazy (~) pattern cannot contain unlifted types: ~(c, (I# x))
- In the pattern: ~(c, (I# x))
- In the pattern: (b, ~(c, (I# x)))
- In the pattern: !(b, ~(c, (I# x)))
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail204.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail204.hs
deleted file mode 100644
index ed561c3290..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail204.hs
+++ /dev/null
@@ -1,11 +0,0 @@
-
-{-# OPTIONS_GHC -Wall #-}
-{-# OPTIONS_GHC -Werror #-}
-
--- Trac #3261
-
-module Foo where
-
-foo :: Int
-foo = ceiling 6.3
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail204.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail204.stderr
deleted file mode 100644
index e9d9bb739d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail204.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-tcfail204.hs:10:15:
- Warning: Defaulting the following constraint(s) to type `Double'
- (Fractional a0) arising from the literal `6.3'
- at tcfail204.hs:10:15-17
- (RealFrac a0) arising from a use of `ceiling'
- at tcfail204.hs:10:7-13
- In the first argument of `ceiling', namely `6.3'
- In the expression: ceiling 6.3
- In an equation for `foo': foo = ceiling 6.3
-
-<no location info>:
-Failing due to -Werror.
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail205.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail205.hs
deleted file mode 100644
index 6b676fbb78..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail205.hs
+++ /dev/null
@@ -1,3 +0,0 @@
-module Fail where
-
-f x = foldl (+) [1 .. x] 'a'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail205.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail205.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail205.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail206.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail206.hs
deleted file mode 100644
index a256bc3e34..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail206.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE TupleSections, UnboxedTuples #-}
-module Main where
-
-a :: Bool -> (Int, Bool)
-a = ( , True)
-
-b :: Int -> Bool -> (Int, Bool)
-b = (1, )
-
-c :: a -> (a, Bool)
-c = (True || False, )
-
-d :: Bool -> (#Int, Bool#)
-d = (# , True#)
-
-e :: Int -> Bool -> (#Int, Bool#)
-e = (#1, #)
-
-f :: a -> (#a, Bool#)
-f = (#True || False, #)
-
-main = return () \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail206.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail206.stderr
deleted file mode 100644
index 46419c4522..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail206.stderr
+++ /dev/null
@@ -1,46 +0,0 @@
-
-tcfail206.hs:5:5:
- Couldn't match expected type `Int' with actual type `Bool'
- Expected type: Bool -> (Int, Bool)
- Actual type: Bool -> (Bool, t0)
- In the expression: (, True)
- In an equation for `a': a = (, True)
-
-tcfail206.hs:8:5:
- Couldn't match expected type `Bool -> (Int, Bool)'
- with actual type `(t0, Int)'
- Expected type: Int -> Bool -> (Int, Bool)
- Actual type: Int -> (t0, Int)
- In the expression: (1,)
- In an equation for `b': b = (1,)
-
-tcfail206.hs:11:6:
- Couldn't match type `a' with `Bool'
- `a' is a rigid type variable bound by
- the type signature for c :: a -> (a, Bool) at tcfail206.hs:11:1
- In the expression: True || False
- In the expression: (True || False,)
- In an equation for `c': c = (True || False,)
-
-tcfail206.hs:14:5:
- Couldn't match expected type `Int' with actual type `Bool'
- Expected type: Bool -> (# Int, Bool #)
- Actual type: Bool -> (# Bool, t0 #)
- In the expression: (# , True #)
- In an equation for `d': d = (# , True #)
-
-tcfail206.hs:17:5:
- Couldn't match expected type `Bool -> (# Int, Bool #)'
- with actual type `(# t0, Int #)'
- Expected type: Int -> Bool -> (# Int, Bool #)
- Actual type: Int -> (# t0, Int #)
- In the expression: (# 1, #)
- In an equation for `e': e = (# 1, #)
-
-tcfail206.hs:20:7:
- Couldn't match type `a' with `Bool'
- `a' is a rigid type variable bound by
- the type signature for f :: a -> (# a, Bool #) at tcfail206.hs:20:1
- In the expression: True || False
- In the expression: (# True || False, #)
- In an equation for `f': f = (# True || False, #)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail207.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail207.hs
deleted file mode 100644
index cd57f4892f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail207.hs
+++ /dev/null
@@ -1,9 +0,0 @@
-module Foo where
-
-f :: Int -> [Int] -> [Int]
--- Want an error message that says 'take' is applied to too many args
-f x = take x []
-
-g :: [Int]
--- Want an error message that says 'take' is applied to too few args
-g = take 3
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail207.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail207.stderr
deleted file mode 100644
index 307b4044d5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail207.stderr
+++ /dev/null
@@ -1,16 +0,0 @@
-
-tcfail207.hs:5:7:
- Couldn't match expected type `[Int] -> [Int]'
- with actual type `[a0]'
- In the return type of a call of `take'
- Probable cause: `take' is applied to too many arguments
- In the expression: take x []
- In an equation for `f': f x = take x []
-
-tcfail207.hs:9:5:
- Couldn't match expected type `[Int]'
- with actual type `[a0] -> [a0]'
- In the return type of a call of `take'
- Probable cause: `take' is applied to too few arguments
- In the expression: take 3
- In an equation for `g': g = take 3
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail208.hs b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail208.hs
deleted file mode 100644
index 71c0f3c19b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail208.hs
+++ /dev/null
@@ -1,5 +0,0 @@
-module Ctx where
-
-f :: (Monad m, Eq a) => a -> m a -> Bool
-f x y = (return x == y)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail208.stderr b/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail208.stderr
deleted file mode 100644
index 64200a696d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_fail/tcfail208.stderr
+++ /dev/null
@@ -1,13 +0,0 @@
-
-tcfail208.hs:4:19:
- Could not deduce (Eq (m a)) arising from a use of `=='
- from the context (Monad m, Eq a)
- bound by the type signature for
- f :: (Monad m, Eq a) => a -> m a -> Bool
- at tcfail208.hs:4:1-23
- Possible fix:
- add (Eq (m a)) to the context of
- the type signature for f :: (Monad m, Eq a) => a -> m a -> Bool
- or add an instance declaration for (Eq (m a))
- In the expression: (return x == y)
- In an equation for `f': f x y = (return x == y)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/IPRun.hs b/testsuite/tests/ghc-regress/typecheck/should_run/IPRun.hs
deleted file mode 100644
index 66abe6dcbe..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/IPRun.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
-module Main where
-
-f0 :: (?x :: Int) => () -> Int
-f0 () = let ?x = 5 in ?x
- -- Should always return 5
-
-f1 :: (?x :: Int) => () -> Int
-f1 = let ?x = 5 in \() -> ?x
- -- Should always return 5
-
-f2 () = let ?x = 5 in \() -> ?x
- -- Inferred type: (Num a, ?x::a) => () -> () -> a
- -- should always return 5
-
-f3 :: () -> ((?x :: Int) => Int)
--- Deep skolemisation means that the local x=5 still wins
-f3 = let ?x = 5 in \() -> ?x
-
-main = let ?x = 0 in
- do { print (f0 ())
- ; print (f1 ())
- ; print (f2 () ())
- ; print (f3 ()) }
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/IPRun.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/IPRun.stdout
deleted file mode 100644
index e558e3cc3a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/IPRun.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-5
-5
-5
-5
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/Makefile b/testsuite/tests/ghc-regress/typecheck/should_run/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T1624.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T1624.hs
deleted file mode 100644
index e92e2664d3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T1624.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies, FlexibleInstances #-}
-
-module Main where
-
-class Foo a b | a -> b where
- foo :: a -> Maybe b
- foo x = Nothing
-
- bar :: a -> b
-
-instance Foo (Maybe a) a where
- bar (Just x) = x
-
-
-main = do { print (foo (Just 'x'))
- ; print (bar (Just 'y')) }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T1624.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/T1624.stdout
deleted file mode 100644
index 4cd37620ea..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T1624.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Nothing
-'y'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T1735.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T1735.hs
deleted file mode 100644
index a8d453c39f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T1735.hs
+++ /dev/null
@@ -1,61 +0,0 @@
-{-# LANGUAGE TemplateHaskell, FlexibleInstances, ScopedTypeVariables,
- ScopedTypeVariables, GADTs, RankNTypes, FlexibleContexts,
- MultiParamTypeClasses, GeneralizedNewtypeDeriving,
- DeriveDataTypeable,
- OverlappingInstances, UndecidableInstances, CPP #-}
-
-module Main (main) where
-
-import T1735_Help.Basics
-import T1735_Help.Xml
-
-data YesNo = Yes | No
- deriving (Eq, Show, Typeable)
-instance Sat (ctx YesNo) => Data ctx YesNo where
- toConstr _ Yes = yesConstr
- toConstr _ No = noConstr
- gunfold _ _ z c = case constrIndex c of
- 1 -> z Yes
- 2 -> z No
- _ -> error "Foo"
- dataTypeOf _ _ = yesNoDataType
-yesConstr :: Constr
-yesConstr = mkConstr yesNoDataType "Yes" [] Prefix
-noConstr :: Constr
-noConstr = mkConstr yesNoDataType "No" [] Prefix
-yesNoDataType :: DataType
-yesNoDataType = mkDataType "YesNo" [yesConstr, noConstr]
-
-newtype MyList a = MkMyList { unMyList :: [a] }
- deriving (Show, Eq, Typeable)
-instance (Sat (ctx (MyList a)), Sat (ctx [a]), Data ctx a)
- => Data ctx (MyList a) where
- gfoldl _ f z x = z MkMyList `f` unMyList x
- toConstr _ (MkMyList _) = mkMyListConstr
- gunfold _ k z c = case constrIndex c of
- 1 -> k (z MkMyList)
- _ -> error "Foo"
- dataTypeOf _ _ = myListDataType
-mkMyListConstr :: Constr
-mkMyListConstr = mkConstr myListDataType "MkMyList" [] Prefix
-myListDataType :: DataType
-myListDataType = mkDataType "MyList" [mkMyListConstr]
-
-#ifdef FOO
-rigidTests :: Maybe (Maybe [YesNo])
-rigidTests =
- mkTest [Elem "No" []] (Just [No])
-#endif
-
-rigidManualTests :: Maybe (Maybe (MyList YesNo))
-rigidManualTests =
- mkTest [Elem "MkMyList" [Elem "Yes" []]] (Just (MkMyList [Yes]))
-
-mkTest :: (Eq a, Xml a) => [Element] -> Maybe a -> Maybe (Maybe a)
-mkTest es v = case fromXml es of
- v' | v == v' -> Nothing
- | otherwise -> Just v'
-
-main :: IO ()
-main = print rigidManualTests
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T1735.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/T1735.stdout
deleted file mode 100644
index 4df191aac2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T1735.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Nothing
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Basics.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Basics.hs
deleted file mode 100644
index c7fad91395..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Basics.hs
+++ /dev/null
@@ -1,492 +0,0 @@
-{-# LANGUAGE UndecidableInstances, OverlappingInstances, Rank2Types,
- KindSignatures, EmptyDataDecls, MultiParamTypeClasses, CPP #-}
-
-{-
-
-(C) 2004--2005 Ralf Laemmel, Simon D. Foster
-
-This module approximates Data.Generics.Basics.
-
--}
-
-
-module T1735_Help.Basics (
-
- module Data.Typeable,
- module T1735_Help.Context,
- module T1735_Help.Basics
-
-) where
-
-import Data.Typeable
-import T1735_Help.Context
-
-#ifdef __HADDOCK__
-data Proxy
-#else
-data Proxy (a :: * -> *)
-#endif
-
-------------------------------------------------------------------------------
--- The ingenious Data class
-
-class (Typeable a, Sat (ctx a)) => Data ctx a
-
- where
-
- gfoldl :: Proxy ctx
- -> (forall b c. Data ctx b => w (b -> c) -> b -> w c)
- -> (forall g. g -> w g)
- -> a -> w a
-
- -- Default definition for gfoldl
- -- which copes immediately with basic datatypes
- --
- gfoldl _ _ z = z
-
- gunfold :: Proxy ctx
- -> (forall b r. Data ctx b => c (b -> r) -> c r)
- -> (forall r. r -> c r)
- -> Constr
- -> c a
-
- toConstr :: Proxy ctx -> a -> Constr
-
- dataTypeOf :: Proxy ctx -> a -> DataType
-
- -- incomplete implementation
-
- gunfold _ _ _ _ = undefined
-
- dataTypeOf _ _ = undefined
-
- -- | Mediate types and unary type constructors
- dataCast1 :: Typeable1 t
- => Proxy ctx
- -> (forall b. Data ctx b => w (t b))
- -> Maybe (w a)
- dataCast1 _ _ = Nothing
-
- -- | Mediate types and binary type constructors
- dataCast2 :: Typeable2 t
- => Proxy ctx
- -> (forall b c. (Data ctx b, Data ctx c) => w (t b c))
- -> Maybe (w a)
- dataCast2 _ _ = Nothing
-
-
-
-------------------------------------------------------------------------------
-
--- Generic transformations
-
-type GenericT ctx = forall a. Data ctx a => a -> a
-
-
--- Generic map for transformations
-
-gmapT :: Proxy ctx -> GenericT ctx -> GenericT ctx
-
-gmapT ctx f x = unID (gfoldl ctx k ID x)
- where
- k (ID g) y = ID (g (f y))
-
-
--- The identity type constructor
-
-newtype ID x = ID { unID :: x }
-
-
-------------------------------------------------------------------------------
-
--- Generic monadic transformations
-
-type GenericM m ctx = forall a. Data ctx a => a -> m a
-
--- Generic map for monadic transformations
-
-gmapM :: Monad m => Proxy ctx -> GenericM m ctx -> GenericM m ctx
-gmapM ctx f = gfoldl ctx k return
- where k c x = do c' <- c
- x' <- f x
- return (c' x')
-
-
-------------------------------------------------------------------------------
-
--- Generic queries
-
-type GenericQ ctx r = forall a. Data ctx a => a -> r
-
-
--- Map for queries
-
-gmapQ :: Proxy ctx -> GenericQ ctx r -> GenericQ ctx [r]
-gmapQ ctx f = gmapQr ctx (:) [] f
-
-gmapQr :: Data ctx a
- => Proxy ctx
- -> (r' -> r -> r)
- -> r
- -> GenericQ ctx r'
- -> a
- -> r
-gmapQr ctx o r f x = unQr (gfoldl ctx k (const (Qr id)) x) r
- where
- k (Qr g) y = Qr (\s -> g (f y `o` s))
-
--- The type constructor used in definition of gmapQr
-newtype Qr r a = Qr { unQr :: r -> r }
-
-
-
-------------------------------------------------------------------------------
---
--- Generic unfolding
---
-------------------------------------------------------------------------------
-
-
-
--- | Build a term skeleton
-fromConstr :: Data ctx a => Proxy ctx -> Constr -> a
-fromConstr ctx = fromConstrB ctx undefined
-
--- | Build a term and use a generic function for subterms
-fromConstrB :: Data ctx a
- => Proxy ctx
- -> (forall b. Data ctx b => b)
- -> Constr
- -> a
-fromConstrB ctx f = unID . gunfold ctx k z
- where
- k c = ID (unID c f)
- z = ID
-
-
-
--- | Monadic variation on \"fromConstrB\"
-fromConstrM :: (Monad m, Data ctx a)
- => Proxy ctx
- -> (forall b. Data ctx b => m b)
- -> Constr
- -> m a
-fromConstrM ctx f = gunfold ctx k z
- where
- k c = do { c' <- c; b <- f; return (c' b) }
- z = return
-
-
-
-------------------------------------------------------------------------------
---
--- Datatype and constructor representations
---
-------------------------------------------------------------------------------
-
-
---
--- | Representation of datatypes.
--- | A package of constructor representations with names of type and module.
--- | The list of constructors could be an array, a balanced tree, or others.
---
-data DataType = DataType
- { tycon :: String
- , datarep :: DataRep
- }
-
- deriving Show
-
-
--- | Representation of constructors
-data Constr = Constr
- { conrep :: ConstrRep
- , constring :: String
- , confields :: [String] -- for AlgRep only
- , confixity :: Fixity -- for AlgRep only
- , datatype :: DataType
- }
-
-instance Show Constr where
- show = constring
-
-
--- | Equality of constructors
-instance Eq Constr where
- c == c' = constrRep c == constrRep c'
-
-
--- | Public representation of datatypes
-data DataRep = AlgRep [Constr]
- | IntRep
- | FloatRep
- | StringRep
- | NoRep
-
- deriving (Eq,Show)
-
-
--- | Public representation of constructors
-data ConstrRep = AlgConstr ConIndex
- | IntConstr Integer
- | FloatConstr Double
- | StringConstr String
-
- deriving (Eq,Show)
-
-
---
--- | Unique index for datatype constructors.
--- | Textual order is respected. Starts at 1.
---
-type ConIndex = Int
-
-
--- | Fixity of constructors
-data Fixity = Prefix
- | Infix -- Later: add associativity and precedence
-
- deriving (Eq,Show)
-
-
-------------------------------------------------------------------------------
---
--- Observers for datatype representations
---
-------------------------------------------------------------------------------
-
-
--- | Gets the type constructor including the module
-dataTypeName :: DataType -> String
-dataTypeName = tycon
-
-
-
--- | Gets the public presentation of datatypes
-dataTypeRep :: DataType -> DataRep
-dataTypeRep = datarep
-
-
--- | Gets the datatype of a constructor
-constrType :: Constr -> DataType
-constrType = datatype
-
-
--- | Gets the public presentation of constructors
-constrRep :: Constr -> ConstrRep
-constrRep = conrep
-
-
--- | Look up a constructor by its representation
-repConstr :: DataType -> ConstrRep -> Constr
-repConstr dt cr =
- case (dataTypeRep dt, cr) of
- (AlgRep cs, AlgConstr i) -> cs !! (i-1)
- (IntRep, IntConstr i) -> mkIntConstr dt i
- (FloatRep, FloatConstr f) -> mkFloatConstr dt f
- (StringRep, StringConstr str) -> mkStringConstr dt str
- _ -> error "repConstr"
-
-
-
-------------------------------------------------------------------------------
---
--- Representations of algebraic data types
---
-------------------------------------------------------------------------------
-
-
--- | Constructs an algebraic datatype
-mkDataType :: String -> [Constr] -> DataType
-mkDataType str cs = DataType
- { tycon = str
- , datarep = AlgRep cs
- }
-
-
--- | Constructs a constructor
-mkConstr :: DataType -> String -> [String] -> Fixity -> Constr
-mkConstr dt str fields fix =
- Constr
- { conrep = AlgConstr idx
- , constring = str
- , confields = fields
- , confixity = fix
- , datatype = dt
- }
- where
- idx = head [ i | (c,i) <- dataTypeConstrs dt `zip` [1..],
- showConstr c == str ]
-
-
--- | Gets the constructors
-dataTypeConstrs :: DataType -> [Constr]
-dataTypeConstrs dt = case datarep dt of
- (AlgRep cons) -> cons
- _ -> error "dataTypeConstrs"
-
-
--- | Gets the field labels of a constructor
-constrFields :: Constr -> [String]
-constrFields = confields
-
-
--- | Gets the fixity of a constructor
-constrFixity :: Constr -> Fixity
-constrFixity = confixity
-
-
-
-------------------------------------------------------------------------------
---
--- From strings to constr's and vice versa: all data types
---
-------------------------------------------------------------------------------
-
-
--- | Gets the string for a constructor
-showConstr :: Constr -> String
-showConstr = constring
-
-
--- | Lookup a constructor via a string
-readConstr :: DataType -> String -> Maybe Constr
-readConstr dt str =
- case dataTypeRep dt of
- AlgRep cons -> idx cons
- IntRep -> mkReadCon (\i -> (mkPrimCon dt str (IntConstr i)))
- FloatRep -> mkReadCon (\f -> (mkPrimCon dt str (FloatConstr f)))
- StringRep -> Just (mkStringConstr dt str)
- NoRep -> Nothing
- where
-
- -- Read a value and build a constructor
- mkReadCon :: Read t => (t -> Constr) -> Maybe Constr
- mkReadCon f = case (reads str) of
- [(t,"")] -> Just (f t)
- _ -> Nothing
-
- -- Traverse list of algebraic datatype constructors
- idx :: [Constr] -> Maybe Constr
- idx cons = let fit = filter ((==) str . showConstr) cons
- in if fit == []
- then Nothing
- else Just (head fit)
-
-
-------------------------------------------------------------------------------
---
--- Convenience funtions: algebraic data types
---
-------------------------------------------------------------------------------
-
-
--- | Test for an algebraic type
-isAlgType :: DataType -> Bool
-isAlgType dt = case datarep dt of
- (AlgRep _) -> True
- _ -> False
-
-
--- | Gets the constructor for an index
-indexConstr :: DataType -> ConIndex -> Constr
-indexConstr dt idx = case datarep dt of
- (AlgRep cs) -> cs !! (idx-1)
- _ -> error "indexConstr"
-
-
--- | Gets the index of a constructor
-constrIndex :: Constr -> ConIndex
-constrIndex con = case constrRep con of
- (AlgConstr idx) -> idx
- _ -> error "constrIndex"
-
-
--- | Gets the maximum constructor index
-maxConstrIndex :: DataType -> ConIndex
-maxConstrIndex dt = case dataTypeRep dt of
- AlgRep cs -> length cs
- _ -> error "maxConstrIndex"
-
-
-
-------------------------------------------------------------------------------
---
--- Representation of primitive types
---
-------------------------------------------------------------------------------
-
-
--- | Constructs the Int type
-mkIntType :: String -> DataType
-mkIntType = mkPrimType IntRep
-
-
--- | Constructs the Float type
-mkFloatType :: String -> DataType
-mkFloatType = mkPrimType FloatRep
-
-
--- | Constructs the String type
-mkStringType :: String -> DataType
-mkStringType = mkPrimType StringRep
-
-
--- | Helper for mkIntType, mkFloatType, mkStringType
-mkPrimType :: DataRep -> String -> DataType
-mkPrimType dr str = DataType
- { tycon = str
- , datarep = dr
- }
-
-
--- Makes a constructor for primitive types
-mkPrimCon :: DataType -> String -> ConstrRep -> Constr
-mkPrimCon dt str cr = Constr
- { datatype = dt
- , conrep = cr
- , constring = str
- , confields = error $ concat ["constrFields : ", (tycon dt), " is primative"]
- , confixity = error "constrFixity"
- }
-
-
-mkIntConstr :: DataType -> Integer -> Constr
-mkIntConstr dt i = case datarep dt of
- IntRep -> mkPrimCon dt (show i) (IntConstr i)
- _ -> error "mkIntConstr"
-
-
-mkFloatConstr :: DataType -> Double -> Constr
-mkFloatConstr dt f = case datarep dt of
- FloatRep -> mkPrimCon dt (show f) (FloatConstr f)
- _ -> error "mkFloatConstr"
-
-
-mkStringConstr :: DataType -> String -> Constr
-mkStringConstr dt str = case datarep dt of
- StringRep -> mkPrimCon dt str (StringConstr str)
- _ -> error "mkStringConstr"
-
-
-------------------------------------------------------------------------------
---
--- Non-representations for non-presentable types
---
-------------------------------------------------------------------------------
-
-
--- | Constructs a non-representation
-mkNorepType :: String -> DataType
-mkNorepType str = DataType
- { tycon = str
- , datarep = NoRep
- }
-
-
--- | Test for a non-representable type
-isNorepType :: DataType -> Bool
-isNorepType dt = case datarep dt of
- NoRep -> True
- _ -> False
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Context.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Context.hs
deleted file mode 100644
index 25b9df94a8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Context.hs
+++ /dev/null
@@ -1,57 +0,0 @@
-{-# LANGUAGE UndecidableInstances, OverlappingInstances, EmptyDataDecls #-}
-
-{-
-
-(C) 2004 Ralf Laemmel
-
-Context parameterisation and context passing.
-
--}
-
-
-module T1735_Help.Context
-
-where
-
-------------------------------------------------------------------------------
-
---
--- The Sat class from John Hughes' "Restricted Data Types in Haskell"
---
-
-class Sat a
- where
- dict :: a
-
-
-------------------------------------------------------------------------------
-
--- No context
-
-data NoCtx a
-
-noCtx :: NoCtx ()
-noCtx = undefined
-
-instance Sat (NoCtx a) where dict = undefined
-
-
-------------------------------------------------------------------------------
-
--- Pair context
-
-data PairCtx l r a
- = PairCtx { leftCtx :: l a
- , rightCtx :: r a }
-
-pairCtx :: l () -> r () -> PairCtx l r ()
-pairCtx _ _ = undefined
-
-instance (Sat (l a), Sat (r a))
- => Sat (PairCtx l r a)
- where
- dict = PairCtx { leftCtx = dict
- , rightCtx = dict }
-
-
-------------------------------------------------------------------------------
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Instances.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Instances.hs
deleted file mode 100644
index 6a626138ea..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Instances.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-{-# LANGUAGE TemplateHaskell, FlexibleInstances, MultiParamTypeClasses,
- UndecidableInstances, OverlappingInstances, CPP #-}
-{-# OPTIONS_GHC -fno-warn-orphans #-}
--- This is a module full of orphans, so don't warn about them
-
-module T1735_Help.Instances () where
-
-import T1735_Help.Basics
-import Data.Typeable
-
-charType :: DataType
-charType = mkStringType "Prelude.Char"
-
-instance Sat (ctx Char) =>
- Data ctx Char where
- toConstr _ x = mkStringConstr charType [x]
- gunfold _ _ z c = case constrRep c of
- (StringConstr [x]) -> z x
- _ -> error "gunfold Char"
- dataTypeOf _ _ = charType
-
-nilConstr :: Constr
-nilConstr = mkConstr listDataType "[]" [] Prefix
-consConstr :: Constr
-consConstr = mkConstr listDataType "(:)" [] Infix
-listDataType :: DataType
-listDataType = mkDataType "Prelude.[]" [nilConstr,consConstr]
-
-instance (Sat (ctx [a]), Data ctx a) =>
- Data ctx [a] where
- gfoldl _ _ z [] = z []
- gfoldl _ f z (x:xs) = z (:) `f` x `f` xs
- toConstr _ [] = nilConstr
- toConstr _ (_:_) = consConstr
- gunfold _ k z c = case constrIndex c of
- 1 -> z []
- 2 -> k (k (z (:)))
- _ -> error "gunfold List"
- dataTypeOf _ _ = listDataType
- dataCast1 _ f = gcast1 f
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Main.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Main.hs
deleted file mode 100644
index 0a6e1c59f4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Main.hs
+++ /dev/null
@@ -1,62 +0,0 @@
-
-{-# LANGUAGE TemplateHaskell, FlexibleInstances, ScopedTypeVariables,
- PatternSignatures, GADTs, RankNTypes, FlexibleContexts,
- MultiParamTypeClasses, GeneralizedNewtypeDeriving,
- DeriveDataTypeable,
- OverlappingInstances, UndecidableInstances, CPP #-}
-
-module Main (main) where
-
-import SYBWC.Basics
-import Xml
-
-data YesNo = Yes | No
- deriving (Eq, Show, Typeable)
-instance Sat (ctx YesNo) => Data ctx YesNo where
- toConstr _ Yes = yesConstr
- toConstr _ No = noConstr
- gunfold _ _ z c = case constrIndex c of
- 1 -> z Yes
- 2 -> z No
- _ -> error "Foo"
- dataTypeOf _ _ = yesNoDataType
-yesConstr :: Constr
-yesConstr = mkConstr yesNoDataType "Yes" [] Prefix
-noConstr :: Constr
-noConstr = mkConstr yesNoDataType "No" [] Prefix
-yesNoDataType :: DataType
-yesNoDataType = mkDataType "YesNo" [yesConstr, noConstr]
-
-newtype MyList a = MkMyList { unMyList :: [a] }
- deriving (Show, Eq, Typeable)
-instance (Sat (ctx (MyList a)), Sat (ctx [a]), Data ctx a)
- => Data ctx (MyList a) where
- gfoldl _ f z x = z MkMyList `f` unMyList x
- toConstr _ (MkMyList _) = mkMyListConstr
- gunfold _ k z c = case constrIndex c of
- 1 -> k (z MkMyList)
- _ -> error "Foo"
- dataTypeOf _ _ = myListDataType
-mkMyListConstr :: Constr
-mkMyListConstr = mkConstr myListDataType "MkMyList" [] Prefix
-myListDataType :: DataType
-myListDataType = mkDataType "MyList" [mkMyListConstr]
-
-#ifdef FOO
-rigidTests :: Maybe (Maybe [YesNo])
-rigidTests =
- mkTest [Elem "No" []] (Just [No])
-#endif
-
-rigidManualTests :: Maybe (Maybe (MyList YesNo))
-rigidManualTests =
- mkTest [Elem "MkMyList" [Elem "Yes" []]] (Just (MkMyList [Yes]))
-
-mkTest :: (Eq a, Xml a) => [Element] -> Maybe a -> Maybe (Maybe a)
-mkTest es v = case fromXml es of
- v' | v == v' -> Nothing
- | otherwise -> Just v'
-
-main :: IO ()
-main = print rigidManualTests
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/State.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/State.hs
deleted file mode 100644
index 7b048eb2df..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/State.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-
-module T1735_Help.State where
-
-newtype StateT s m a = StateT { runStateT :: s -> m (a,s) }
-
-instance Monad m => Monad (StateT s m) where
- return a = StateT $ \s -> return (a, s)
- m >>= k = StateT $ \s -> do
- ~(a, s') <- runStateT m s
- runStateT (k a) s'
- fail str = StateT $ \_ -> fail str
-
-get :: Monad m => StateT s m s
-get = StateT $ \s -> return (s, s)
-
-put :: Monad m => s -> StateT s m ()
-put s = StateT $ \_ -> return ((), s)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Xml.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Xml.hs
deleted file mode 100644
index b641c6a82c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T1735_Help/Xml.hs
+++ /dev/null
@@ -1,143 +0,0 @@
-{-# LANGUAGE TemplateHaskell, FlexibleInstances, ScopedTypeVariables,
- GADTs, RankNTypes, FlexibleContexts, TypeSynonymInstances,
- MultiParamTypeClasses, DeriveDataTypeable, PatternGuards,
- OverlappingInstances, UndecidableInstances, CPP #-}
-
-module T1735_Help.Xml (Element(..), Xml, fromXml) where
-
-import T1735_Help.Basics
-import T1735_Help.Instances ()
-import T1735_Help.State
-
-data Element = Elem String [Element]
- | CData String
- | Attr String String
-
-fromXml :: Xml a => [Element] -> Maybe a
-fromXml xs = case readXml xs of
- Just (_, v) -> return v
- Nothing -> error "XXX"
-
-class (Data XmlD a) => Xml a where
- toXml :: a -> [Element]
- toXml = defaultToXml
-
- readXml :: [Element] -> Maybe ([Element], a)
- readXml = defaultReadXml
-
- readXml' :: [Element] -> Maybe ([Element], a)
- readXml' = defaultReadXml'
-
-instance (Data XmlD t, Show t) => Xml t
-
-data XmlD a = XmlD { toXmlD :: a -> [Element], readMXmlD :: ReadM Maybe a }
-
-xmlProxy :: Proxy XmlD
-xmlProxy = error "xmlProxy"
-
-instance Xml t => Sat (XmlD t) where
- dict = XmlD { toXmlD = toXml, readMXmlD = readMXml }
-
-defaultToXml :: Xml t => t -> [Element]
-defaultToXml x = [Elem (constring $ toConstr xmlProxy x) (transparentToXml x)]
-
-transparentToXml :: Xml t => t -> [Element]
-transparentToXml x = concat $ gmapQ xmlProxy (toXmlD dict) x
-
--- Don't do any defaulting here, as these functions can be implemented
--- differently by the user. We do the defaulting elsewhere instead.
--- The t' type is thus not used.
-
-defaultReadXml :: Xml t => [Element] -> Maybe ([Element], t)
-defaultReadXml es = readXml' es
-
-defaultReadXml' :: Xml t => [Element] -> Maybe ([Element], t)
-defaultReadXml' = readXmlWith readVersionedElement
-
-readXmlWith :: Xml t
- => (Element -> Maybe t)
- -> [Element]
- -> Maybe ([Element], t)
-readXmlWith f es = case es of
- e : es' ->
- case f e of
- Just v -> Just (es', v)
- Nothing -> Nothing
- [] ->
- Nothing
-
-readVersionedElement :: forall t . Xml t => Element -> Maybe t
-readVersionedElement e = readElement e
-
-readElement :: forall t . Xml t => Element -> Maybe t
-readElement (Elem n es) = res
- where resType :: t
- resType = typeNotValue resType
- resDataType = dataTypeOf xmlProxy resType
- con = readConstr resDataType n
- res = case con of
- Just c -> f c
- Nothing -> Nothing
- f c = let m :: Maybe ([Element], t)
- m = constrFromElements c es
- in case m of
- Just ([], x) -> Just x
- _ -> Nothing
-readElement _ = Nothing
-
-constrFromElements :: forall t . Xml t
- => Constr -> [Element] -> Maybe ([Element], t)
-constrFromElements c es
- = do let st = ReadState { xmls = es }
- m :: ReadM Maybe t
- m = fromConstrM xmlProxy (readMXmlD dict) c
- -- XXX Should we flip the result order?
- (x, st') <- runStateT m st
- return (xmls st', x)
-
-type ReadM m = StateT ReadState m
-
-data ReadState = ReadState {
- xmls :: [Element]
- }
-
-getXmls :: Monad m => ReadM m [Element]
-getXmls = do st <- get
- return $ xmls st
-
-putXmls :: Monad m => [Element] -> ReadM m ()
-putXmls xs = do st <- get
- put $ st { xmls = xs }
-
-readMXml :: Xml a => ReadM Maybe a
-readMXml
- = do xs <- getXmls
- case readXml xs of
- Nothing -> fail "Cannot read value"
- Just (xs', v) ->
- do putXmls xs'
- return v
-
-typeNotValue :: Xml a => a -> a
-typeNotValue t = error ("Type used as value: " ++ typeName)
- where typeName = dataTypeName (dataTypeOf xmlProxy t)
-
--- The Xml [a] context is a bit scary, but if we don't have it then
--- GHC complains about overlapping instances
-
-instance (Xml a {-, Xml [a] -}) => Xml [a] where
- toXml = concatMap toXml
- readXml = f [] []
- where f acc_xs acc_vs [] = Just (reverse acc_xs, reverse acc_vs)
- f acc_xs acc_vs (x:xs) = case readXml [x] of
- Just ([], v) ->
- f acc_xs (v:acc_vs) xs
- _ ->
- f (x:acc_xs) acc_vs xs
-
-instance Xml String where
- toXml x = [CData x]
- readXml = readXmlWith f
- where f (CData x) = Just x
- f _ = Nothing
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T2722.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T2722.hs
deleted file mode 100644
index 3912c840e7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T2722.hs
+++ /dev/null
@@ -1,34 +0,0 @@
-module Main (main, arid1, arid2) where
-
-import Prelude hiding (id, (.))
-import qualified Prelude
-import Control.Category
-import Control.Arrow
-import System.IO
-import Debug.Trace
-
-
-main = do { xs <- runXIOState arid1 -- Works with arid2
- ; print xs }
-
-runXIOState :: IOSLA () c -> IO [c]
-runXIOState f = runIOSLA f ()
-
-newtype IOSLA a b = IOSLA { runIOSLA :: a -> IO [b] }
-
-instance Arrow IOSLA where
- arr f = IOSLA $ \ x -> return [f x]
-
-instance Category IOSLA where
- id = arr id
-
--- arr :: Arrow m => (b->c) -> m b c
--- id :: Category m => m b b
--- (arr id) :: Arrow m => m a a
-
-arid1 :: Arrow m => m a a
-arid1 = arr id
-
-arid2 :: Arrow m => m a a
-arid2 = arr Prelude.id
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T2722.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/T2722.stdout
deleted file mode 100644
index daad811123..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T2722.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[()]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T3500a.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T3500a.hs
deleted file mode 100644
index c3adeb0c61..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T3500a.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{-# LANGUAGE FlexibleContexts #-}
-{-# LANGUAGE TypeFamilies #-}
-
-module Main where
-
-type family F a :: *
-type instance F Int = (Int, ())
-
-class C a
-instance C ()
-instance (C (F a), C b) => C (a, b)
-
-f :: C (F a) => a -> Int
-f _ = 2
-
-main :: IO ()
-main = print (f (3 :: Int))
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T3500a.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/T3500a.stdout
deleted file mode 100644
index 78c6baefdd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T3500a.stdout
+++ /dev/null
@@ -1 +0,0 @@
-2
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T3500b.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T3500b.hs
deleted file mode 100644
index 59a2c47983..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T3500b.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE TypeFamilies, FlexibleContexts, UndecidableInstances #-}
-
-module Main where
-
-newtype Mu f = Mu (f (Mu f))
-
-type family Id m
-type instance Id m = m
-
-instance Show (Id (f (Mu f))) => Show (Mu f) where
- show (Mu f) = show f
-
-
-showMu :: Mu (Either ()) -> String
-showMu = show
-
-item :: Mu (Either ())
-item = Mu (Right (Mu (Left ())))
-
-main = print (showMu item)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T3500b.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/T3500b.stdout
deleted file mode 100644
index 7acb74ffa3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T3500b.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"Right Left ()"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T3731-short.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T3731-short.hs
deleted file mode 100644
index 8f09d5ff52..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T3731-short.hs
+++ /dev/null
@@ -1,88 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable,
- FlexibleContexts, FlexibleInstances,
- MultiParamTypeClasses,
- OverlappingInstances, UndecidableInstances,
- Rank2Types, KindSignatures, EmptyDataDecls #-}
-
-{-# OPTIONS_GHC -Wall #-}
-
-module Main (main) where
-
-class Sat a where
- dict :: a -- Holds a default value
-
-class Sat a => Data a where
- gunfold :: (forall b r. Data b => (b -> r) -> r) -> a
-
-instance (Sat [a], Data a) => Data [a] where
- gunfold _ = []
-
-class Data a => Default a where
- defaultValue :: a
- defaultValue = gunfold (\c -> c dict)
-
-instance Default t => Sat t where
- dict = defaultValue
-
-instance Default a => Default [a] where
- defaultValue = []
-
-data Proposition = Prop Expression
-data Expression = Conj [Expression]
-
-instance Data Expression => Data Proposition where
- gunfold k = k Prop
-
-instance (Data [Expression],Sat Expression) => Data Expression where
--- DV: Notice what happens when we remove the Sat Expression above!
--- Everything starts working!
- gunfold k = k Conj
-
-instance Default Expression
-instance Default Proposition
-
-main :: IO ()
-
-main = case (defaultValue :: Proposition) of
- Prop exp -> case exp of
- Conj _ -> putStrLn "Hurray2!"
-
-{- Need Default Proposition
- for which we have an instance
-
-Instance
- Default Proposition
-needs superclass
- Data Proposition
-via instance dfun, needs
- Data Expression
-via instance dfun, needs
- Sat Expression
-via instance dfun, needs
- Default Expression
-for which we have an instance
-
-Instance
- d1: Default Expression
-needs superclass [d1 = MkD d2 ..]
- d2: Data Expression {superclass Sat Expression}
-via instance dfun, [d2 = dfun d3 d4] needs
- d3 : Sat Expression (and d4 : Data [Expression])
-via instance dfun, [d3 = dfun d5] needs
- d5 Default Expression
-for which we have an instance [d5 = d1]
-
- d1 = MkD d2 ..
- d2 = dfun d3 d4
- d3 = dfun d1
-
-Instance
- d1: Default Expression
-needs superclass [d1 = MkD d2 ..]
- d2: Data Expression {superclass Sat Expression d2' = sc d2 }
-via instance dfun, [d2 = dfun d3 d4] needs
- d3 : Sat Expression (and d4 : Data [Expression])
-and we can solve: d3 = d2'... no: recursion checker will reject
-
--}
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T3731-short.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/T3731-short.stdout
deleted file mode 100644
index 9bc983e8f0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T3731-short.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Hurray2!
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T3731.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T3731.hs
deleted file mode 100644
index af858e570a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T3731.hs
+++ /dev/null
@@ -1,213 +0,0 @@
-{-# LANGUAGE DeriveDataTypeable,
- FlexibleContexts, FlexibleInstances,
- MultiParamTypeClasses,
- OverlappingInstances, UndecidableInstances,
- Rank2Types, KindSignatures, EmptyDataDecls #-}
-
-{-# OPTIONS_GHC -Wall #-}
-
-module Main (main) where
-
-import Data.Typeable
-
-class Sat a where
- dict :: a
-
-data Proxy (a :: * -> *)
-
-class ( Sat (ctx a)) => Data ctx a where
- gunfold :: Proxy ctx
- -> (forall b r. Data ctx b => c (b -> r) -> c r)
- -> (forall r. r -> c r)
- -> Constr
- -> c a
- dataTypeOf :: Proxy ctx -> a -> DataType
-
-newtype ID x = ID { unID :: x }
-
-fromConstrB :: Data ctx a
- => Proxy ctx
- -> (forall b. Data ctx b => b)
- -> Constr
- -> a
-fromConstrB ctx f = unID . gunfold ctx k z
- where
- k c = ID (unID c f)
- z = ID
-
-data DataType = DataType
- { tycon :: String
- , datarep :: DataRep
- }
-
-data Constr = Constr { conrep :: ConstrRep
- , constring :: String
- , confields :: [String]
- , confixity :: Fixity
- , datatype :: DataType
- }
-
-data DataRep = AlgRep [Constr]
-data ConstrRep = AlgConstr ConIndex
-
-type ConIndex = Int
-
-data Fixity = Prefix
- | Infix
-
-constrRep :: Constr -> ConstrRep
-constrRep = conrep
-
--- | Constructs an algebraic datatype
-mkDataType :: String -> [Constr] -> DataType
-mkDataType str cs = DataType
- { tycon = str
- , datarep = AlgRep cs
- }
-
-
--- | Constructs a constructor
-mkConstr :: DataType -> String -> [String] -> Fixity -> Constr
-mkConstr dt str fields fix =
- Constr
- { conrep = AlgConstr idx
- , constring = str
- , confields = fields
- , confixity = fix
- , datatype = dt
- }
- where
- idx = head [ i | (c,i) <- dataTypeConstrs dt `zip` [1..],
- showConstr c == str ]
-
-
--- | Gets the constructors
-dataTypeConstrs :: DataType -> [Constr]
-dataTypeConstrs dt = case datarep dt of
- AlgRep cons -> cons
-
--- | Gets the string for a constructor
-showConstr :: Constr -> String
-showConstr = constring
-
--- | Gets the index of a constructor
-constrIndex :: Constr -> ConIndex
-constrIndex con = case constrRep con of
- AlgConstr idx -> idx
-
-nilConstr :: Constr
-nilConstr = mkConstr listDataType "[]" [] Prefix
-consConstr :: Constr
-consConstr = mkConstr listDataType "(:)" [] Infix
-listDataType :: DataType
-listDataType = mkDataType "Prelude.[]" [nilConstr,consConstr]
-
-instance (Sat (ctx [a]), Data ctx a) =>
- Data ctx [a] where
- gunfold _ k z c = case constrIndex c of
- 1 -> z []
- 2 -> k (k (z (:)))
- _ -> error "gunfold List"
- dataTypeOf _ _ = listDataType
-
-class (Data DefaultD a) => Default a where
- defaultValue :: a
- defaultValue = defaultDefaultValue
-
-defaultDefaultValue :: Data DefaultD a => a
-{-# NOINLINE defaultDefaultValue #-}
-defaultDefaultValue = res
- where res = case datarep $ dataTypeOf defaultProxy res of
- AlgRep (c:_) ->
- fromConstrB defaultProxy (defaultValueD dict) c
- AlgRep [] ->
- error "defaultDefaultValue: Bad DataRep"
-
-data DefaultD a = DefaultD { defaultValueD :: a }
-
-defaultProxy :: Proxy DefaultD
-defaultProxy = error "defaultProxy"
-
--- dfun3
-instance Default t => Sat (DefaultD t) where
- dict = DefaultD { defaultValueD = defaultValue }
-
--- dfun5
-instance Default a => Default [a] where
- defaultValue = []
-data Proposition = Proposition Expression deriving (Show, Typeable)
-data Expression = Conjunction [Expression] deriving (Show, Typeable)
-
-constr_Proposition :: Constr
-constr_Proposition = mkConstr dataType_Proposition "Proposition" [] Prefix
-dataType_Proposition :: DataType
-dataType_Proposition = mkDataType "Proposition" [constr_Proposition]
-
--- dfun1
-instance Data DefaultD Proposition
- where gunfold _ k z c = case constrIndex c of
- 1 -> k (z Proposition)
- _ -> error "gunfold: fallthrough"
- dataTypeOf _ _ = dataType_Proposition
-
-constr_Conjunction :: Constr
-constr_Conjunction = mkConstr dataType_Expression "Conjunction" [] Prefix
-dataType_Expression :: DataType
-dataType_Expression = mkDataType "Expression" [constr_Conjunction]
-
--- dfun2
-instance (Sat (ctx [Expression]), Sat (ctx Expression))
- => Data ctx Expression
- where gunfold _ k z c = case constrIndex c of
- 1 -> k (z Conjunction)
- _ -> error "gunfold: fallthrough"
- dataTypeOf _ _ = dataType_Expression
-
--- dfun0
-instance Default Proposition where
- defaultValue = defaultDefaultValue
-
--- dfun4
-instance Default Expression where
- defaultValue = defaultDefaultValue
-
-main :: IO ()
-main = putStrLn (show (defaultValue :: Proposition))
-
-{- The trouble comes from "instance Default Expression"
-
-Define: dfun4 : Default Expression = MkDefault d_aCl (..)
-
-Simplify the superclass:
- Wanted: d_aCl : Data DefaultD Expression
- Derived: d_aCn : Sat DefaultD Expression d_aCn = $p1 d_aCl {irrelevant}
-
- by dfun2 d_aCl = dfun2 d_aCo d_aCp
- Wanted: d_aCo : Sat (DefaultD [Expression])
- d_aCp : Sat (DefaultD Expression)
-
- by dfun3 d_aCo = dfun3 d_aCq
- Wanted: d_aCq : Default [Expression]
- Derived: d_aCr : Data DefaultD [Expression] d_aCr = $p1 d_aCq {irrelevant}
-
- by dfun5 d_aCq = dfun5 aCu
- Wanted: d_aCu : Default Expression
- Derived: d_aCw : Data DefaultD Expression d_aCw = $p1 d_aCu
- Derived: d_aCx : Sat (DefaultD Expression) d_aCx = $p1 d_aCw
- -- These two deriveds are unnecessary,
- -- and dangerous, because we later satisfy
- -- d_aCu from dfun4 which does not visibly
- -- depend on d_aCl
-
-Now we satisfy d_aCu = dfun4
- d_aCp = d_aCx
-Result = disaster:
- d_aCp = d_aCx
- = $p1 d_aCw
- = $p1 ($p1 d_aCu)
- = $p1 ($p1 dfun4)
- = $p1 ($p1 (MkDefault d_aCl ...))
- = $p1 d_aCl
- = $p1 (dfun2 d_aCo d_aCp)
- = d_aCp
--}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T3731.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/T3731.stdout
deleted file mode 100644
index 688ef59dd4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T3731.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Proposition (Conjunction [])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T4809.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T4809.hs
deleted file mode 100644
index 0c0b50826c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T4809.hs
+++ /dev/null
@@ -1,18 +0,0 @@
-{- # LANGUAGE MonoLocalBinds # -}
-module Main where
-
-import T4809_IdentityT (IdentityT(..), XML, runIdentityT)
-import T4809_XMLGenerator (XMLGenT(..), XMLGen(genElement), Child, EmbedAsChild(..), unXMLGenT)
-import System.IO (BufferMode(..), hSetBuffering, stdout)
-
-page :: XMLGenT (IdentityT IO) XML
-page = genElement (Nothing, "ul") [] [ asChild (asChild "foo")]
--- where
--- item :: XMLGenT (IdentityT IO) [Child (IdentityT IO)]
--- item = (asChild $ asChild (return "bar" :: XMLGenT (IdentityT IO) String))
-
-main :: IO ()
-main =
- do hSetBuffering stdout LineBuffering
- r <- runIdentityT (unXMLGenT page)
- print r
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T4809.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/T4809.stdout
deleted file mode 100644
index ad220dd0bd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T4809.stdout
+++ /dev/null
@@ -1,5 +0,0 @@
-EmbedAsChild m (XMLGenT n c)
-EmbedAsChild (IdentityT m) String
-EmbedAsChild m [c]
-EmbedAsChild m (Child m)
-Element (Nothing,"ul") [] [CDATA True "foo"]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T4809_IdentityT.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T4809_IdentityT.hs
deleted file mode 100644
index f030fc5b8d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T4809_IdentityT.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, TypeSynonymInstances, FlexibleInstances, TypeFamilies, GeneralizedNewtypeDeriving #-}
-{-# OPTIONS_GHC -fno-warn-orphans #-}
-module T4809_IdentityT
- ( evalIdentityT
- , IdentityT(..)
- , XML(..)
- ) where
-
-import Control.Monad (MonadPlus)
-import Control.Monad.Trans (MonadTrans(lift), MonadIO(liftIO))
-import T4809_XMLGenerator (XMLGenT(..), EmbedAsChild(..), Name)
-import qualified T4809_XMLGenerator as HSX
-
-data XML
- = Element Name [Int] [XML] | CDATA Bool String
- deriving Show
-
--- * IdentityT Monad Transformer
-
-newtype IdentityT m a = IdentityT { runIdentityT :: m a }
- deriving (Functor, Monad, MonadIO, MonadPlus)
-
-instance MonadTrans IdentityT where
- lift = IdentityT
-
-evalIdentityT :: (Functor m, Monad m) => XMLGenT (IdentityT m) XML -> m XML
-evalIdentityT = runIdentityT . HSX.unXMLGenT
-
--- * HSX.XMLGenerator for IdentityT
-
-instance (Functor m, Monad m) => HSX.XMLGen (IdentityT m) where
- type HSX.XML (IdentityT m) = XML
- newtype HSX.Child (IdentityT m) = IChild { unIChild :: XML }
- genElement n _attrs children = HSX.XMLGenT $
- do children' <- HSX.unXMLGenT (fmap (map unIChild . concat) (sequence children))
- return (Element n [] children')
-
-instance (Monad m, MonadIO m, Functor m) => EmbedAsChild (IdentityT m) String where
- asChild s =
- do liftIO $ putStrLn "EmbedAsChild (IdentityT m) String"
- XMLGenT . return . (:[]) . IChild . CDATA True $ s
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/T4809_XMLGenerator.hs b/testsuite/tests/ghc-regress/typecheck/should_run/T4809_XMLGenerator.hs
deleted file mode 100644
index 9ee37e8c6d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/T4809_XMLGenerator.hs
+++ /dev/null
@@ -1,74 +0,0 @@
-{-# LANGUAGE CPP, TypeFamilies, MultiParamTypeClasses, FunctionalDependencies,
- FlexibleContexts, FlexibleInstances, UndecidableInstances, OverlappingInstances,
- TypeSynonymInstances, GeneralizedNewtypeDeriving #-}
------------------------------------------------------------------------------
--- |
--- Module : HSX.XMLGenerator
--- Copyright : (c) Niklas Broberg 2008
--- License : BSD-style (see the file LICENSE.txt)
---
--- Maintainer : Niklas Broberg, niklas.broberg@chalmers.se
--- Stability : experimental
--- Portability : requires newtype deriving and MPTCs with fundeps
---
--- The class and monad transformer that forms the basis of the literal XML
--- syntax translation. Literal tags will be translated into functions of
--- the GenerateXML class, and any instantiating monads with associated XML
--- types can benefit from that syntax.
------------------------------------------------------------------------------
-module T4809_XMLGenerator where
-
-import Control.Monad.Trans
-import Control.Monad.Cont (MonadCont)
-import Control.Monad.Error (MonadError)
-import Control.Monad.Reader(MonadReader)
-import Control.Monad.Writer(MonadWriter)
-import Control.Monad.State (MonadState)
-import Control.Monad.RWS (MonadRWS)
-import Control.Monad (MonadPlus(..),liftM)
-
-----------------------------------------------
--- General XML Generation
-
--- | The monad transformer that allows a monad to generate XML values.
-newtype XMLGenT m a = XMLGenT (m a)
- deriving (Monad, Functor, MonadIO, MonadPlus, MonadWriter w, MonadReader r,
- MonadState s, MonadRWS r w s, MonadCont, MonadError e)
-
--- | un-lift.
-unXMLGenT :: XMLGenT m a -> m a
-unXMLGenT (XMLGenT ma) = ma
-
-instance MonadTrans XMLGenT where
- lift = XMLGenT
-
-type Name = (Maybe String, String)
-
--- | Generate XML values in some XMLGenerator monad.
-class Monad m => XMLGen m where
- type XML m
- data Child m
- genElement :: Name -> [XMLGenT m [Int]] -> [XMLGenT m [Child m]] -> XMLGenT m (XML m)
- genEElement :: Name -> [XMLGenT m [Int]] -> XMLGenT m (XML m)
- genEElement n ats = genElement n ats []
-
--- | Embed values as child nodes of an XML element. The parent type will be clear
--- from the context so it is not mentioned.
-class XMLGen m => EmbedAsChild m c where
- asChild :: c -> XMLGenT m [Child m]
-
-instance (MonadIO m, EmbedAsChild m c, m ~ n) => EmbedAsChild m (XMLGenT n c) where
- asChild m = do
- liftIO $ putStrLn "EmbedAsChild m (XMLGenT n c)"
- a <- m
- asChild a
-
-instance (MonadIO m, EmbedAsChild m c) => EmbedAsChild m [c] where
- asChild cs =
- do liftIO $ putStrLn "EmbedAsChild m [c]"
- liftM concat . mapM asChild $ cs
-
-instance (MonadIO m, XMLGen m) => EmbedAsChild m (Child m) where
- asChild c =
- do liftIO $ putStrLn "EmbedAsChild m (Child m)"
- return . return $ c
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/TcRun025_B.hs b/testsuite/tests/ghc-regress/typecheck/should_run/TcRun025_B.hs
deleted file mode 100644
index a6d752c1a7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/TcRun025_B.hs
+++ /dev/null
@@ -1,38 +0,0 @@
-{-# LANGUAGE ImplicitParams, TypeSynonymInstances, FlexibleInstances #-}
-
--- Similar to tc024, but cross module
-
-module TcRun025_B where
-
- import Data.List( sort )
-
- -- This class has no tyvars in its class op context
- -- One uses a newtype, the other a data type
- class C1 a where
- fc1 :: (?p :: String) => a;
- class C2 a where
- fc2 :: (?p :: String) => a;
- opc :: a
-
- instance C1 String where
- fc1 = ?p;
- instance C2 String where
- fc2 = ?p;
- opc = "x"
-
- -- This class constrains no new type variables in
- -- its class op context
- class D1 a where
- fd1 :: (Ord a) => [a] -> [a]
- class D2 a where
- fd2 :: (Ord a) => [a] -> [a]
- opd :: a
-
- instance D1 (Maybe a) where
- fd1 xs = sort xs
- instance D2 (Maybe a) where
- fd2 xs = sort xs
- opd = Nothing
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/TcRun038_B.hs b/testsuite/tests/ghc-regress/typecheck/should_run/TcRun038_B.hs
deleted file mode 100644
index 994348ba42..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/TcRun038_B.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE FlexibleContexts #-}
-
-module TcRun038_B where
-
-class Foo a where
- op :: a -> Int
-
--- Note the (Foo Int) constraint here; and the fact
--- that there is no (Foo Int) instance in this module
--- It's in the importing module!
-
-bar :: Foo Int => Int -> Int
-bar x = op x + 7
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/all.T b/testsuite/tests/ghc-regress/typecheck/should_run/all.T
deleted file mode 100644
index a66586f0d8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/all.T
+++ /dev/null
@@ -1,83 +0,0 @@
-# args to compile_and_run are:
-# extra compile flags
-# extra run flags
-# expected process return value, if not zero
-
-# -----------------------------------------------------------------------------
-# Pick an arbitrary few to run when 'fast' is on
-
-test('tcrun001', normal, compile_and_run, [''])
-test('tcrun002', only_compiler_types(['ghc']), compile_and_run, [''])
-test('tcrun003', normal, compile_and_run, [''])
-test('tcrun004', normal, compile_and_run, [''])
-test('tcrun005', normal, compile_and_run, [''])
-
-# -----------------------------------------------------------------------------
-# Skip everything else if fast is on
-
-def f(opts):
- if config.fast:
- opts.skip = 1
-setTestOpts(f)
-
-test('tcrun006', normal, compile_and_run, [''])
-test('tcrun008', normal, compile_and_run, [''])
-test('tcrun009', normal, compile_and_run, [''])
-test('tcrun010', normal, compile_and_run, [''])
-test('tcrun011', normal, compile_and_run, [''])
-test('tcrun012', normal, compile_and_run, [''])
-test('tcrun013', normal, compile_and_run, [''])
-test('tcrun014', normal, compile_and_run, [''])
-test('tcrun015', normal, compile_and_run, ['-O'])
-test('tcrun016', normal, compile_and_run, [''])
-test('tcrun017', normal, compile_and_run, [''])
-test('tcrun018', normal, compile_and_run, [''])
-test('tcrun019', normal, compile_and_run, [''])
-test('tcrun020', normal, compile_and_run, [''])
-# Doesn't work with External Core due to datatype with no constructors
-test('tcrun021', expect_fail_for(['extcore','optextcore']),
- compile_and_run, ['-package containers'])
-test('tcrun022', compose(omit_ways(['ghci']),only_compiler_types(['ghc'])), compile_and_run, ['-O'])
-test('tcrun023', normal, compile_and_run, ['-O'])
-test('tcrun024', normal, compile_and_run, ['-O'])
-test('tcrun025', extra_clean(['TcRun025_B.hi', 'TcRun025_B.o']),
- multimod_compile_and_run, ['tcrun025',''])
-test('tcrun026', normal, compile_and_run, [''])
-test('tcrun027', normal, compile_and_run, [''])
-# Doesn't work with External Core due to datatype with no constructors
-test('tcrun028', expect_fail_for(['extcore','optextcore']), compile_and_run, [''])
-test('tcrun029', normal, compile_and_run, [''])
-test('tcrun030', normal, compile_and_run, [''])
-test('tcrun031', only_compiler_types(['ghc']), compile_and_run, [''])
-test('tcrun032', only_compiler_types(['ghc']), compile_and_run, [''])
-test('tcrun033', only_compiler_types(['ghc']), compile_and_run, [''])
-test('tcrun034', only_compiler_types(['ghc']), compile_and_run, [''])
-test('tcrun035', only_compiler_types(['ghc']), compile_fail, [''])
-test('tcrun036', only_compiler_types(['ghc']), compile_and_run, [''])
-test('tcrun037', only_compiler_types(['ghc']), compile_and_run, [''])
-
-test('tcrun038',
- extra_clean(['TcRun038_B.hi', 'TcRun038_B.o']),
- multimod_compile_and_run,
- ['tcrun038',''])
-
-test('tcrun039', only_compiler_types(['ghc']), compile_and_run, [''])
-test('tcrun040', normal, compile_and_run, [''])
-test('tcrun041', omit_ways(['ghci']), compile_and_run, [''])
-test('tcrun042', normal, compile_and_run, [''])
-
-test('church', normal, compile_and_run, [''])
-test('testeq2', normal, compile_and_run, [''])
-test('T1624', normal, compile_and_run, [''])
-test('IPRun', normal, compile_and_run, [''])
-
-# Support files for T1735 are in directory T1735_Help/
-test('T1735', normal, multimod_compile_and_run, ['T1735',''])
-
-test('T3731', normal, compile_and_run, [''])
-test('T3731-short', normal, compile_and_run, [''])
-test('T3500a', normal, compile_and_run, [''])
-test('T3500b', normal, compile_and_run, [''])
-test('T4809', reqlib('mtl'), compile_and_run, [''])
-test('T2722', normal, compile_and_run, [''])
-test('mc17', normal, compile_and_run, [''])
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/church.hs b/testsuite/tests/ghc-regress/typecheck/should_run/church.hs
deleted file mode 100644
index 2b7ee92b8b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/church.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
-module Main where
-import Prelude hiding( succ, pred )
-
-newtype Ch = Ch (forall a. (a -> a) -> a -> a)
-
-apply :: Ch -> (a->a) -> a -> a
-apply (Ch f) = f
-
-instance Eq Ch where
- a == b = isZero (a - b)
-
-instance Show Ch where
- show a = show (fromCh a)
-
-instance Num Ch where
- fromInteger n = toCh n
- m + n = apply n succ m
- m - n = apply n pred m
- m * n = apply m (n +) zero
-
-zero :: Ch
-zero = Ch (\f z -> z)
-
-succ :: Ch -> Ch
-succ n = Ch (\f z -> f (apply n f z))
-
-isZero :: Ch -> Bool
-isZero n = apply n (const False) True
-
-toCh :: Integer -> Ch
-toCh 0 = zero
-toCh n = succ (toCh (n-1))
-
-fromCh :: Ch -> Int
-fromCh n = apply n (+1) 0
-
-pred :: Ch -> Ch
-pred n = snd (apply n g (zero, zero))
- where g (m,_) = (succ m, m)
-
-
-main = print ((3+4)*12 - 10::Ch)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/church.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/church.stdout
deleted file mode 100644
index fff0a2476a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/church.stdout
+++ /dev/null
@@ -1 +0,0 @@
-74
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/mc17.hs b/testsuite/tests/ghc-regress/typecheck/should_run/mc17.hs
deleted file mode 100644
index abd3b7b579..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/mc17.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE MonadComprehensions, ParallelListComp #-}
-
--- !!! Parallel list comprehensions
-
-module Main where
-
-f xs = [ (x,y) | x <- xs, x>3 | y <- xs ]
-
-main = print (f [0..10])
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/mc17.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/mc17.stdout
deleted file mode 100644
index bb1e684d68..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/mc17.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[(4,0),(5,1),(6,2),(7,3),(8,4),(9,5),(10,6)]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun001.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun001.hs
deleted file mode 100644
index 209ca3fe00..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun001.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- !! Test for (->) instances
-
-module Main where
-
-class Flob k where
- twice :: k a a -> k a a
-
-instance Flob (->) where
- twice f = f . f
-
-inc :: Int -> Int
-inc x = x+1
-
-main = print (twice inc 2)
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun001.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun001.stdout
deleted file mode 100644
index b8626c4cff..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun001.stdout
+++ /dev/null
@@ -1 +0,0 @@
-4
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.hs
deleted file mode 100644
index 45fe19fdc9..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.hs
+++ /dev/null
@@ -1,16 +0,0 @@
--- !!! space leak from overloading !!!
-module Main where
-
--- This program develops a space leak if sfoldl isn't compiled with some
--- care. See comment about polymorphic recursion in TcMonoBinds.lhs
-
-import System.Environment (getArgs)
-import GHC.IOBase
-
-sfoldl :: (a -> Int -> a) -> a -> [Int] -> a
-sfoldl f z [] = z
-sfoldl f z (x:xs) = _scc_ "sfoldl1" (sfoldl f fzx (fzx `seq` xs))
- where fzx = _scc_ "fzx" (f z x)
-
-
-main = IO (\s -> case print (sfoldl (+) (0::Int) [1..200000]) of { IO a -> a s })
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout
deleted file mode 100644
index 928909f816..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout
+++ /dev/null
@@ -1 +0,0 @@
--1474736480
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-alpha-dec-osf3 b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-alpha-dec-osf3
deleted file mode 100644
index 31e0b55e93..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-alpha-dec-osf3
+++ /dev/null
@@ -1 +0,0 @@
-20000100000
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-mips-sgi-irix b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-mips-sgi-irix
deleted file mode 100644
index 31e0b55e93..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-mips-sgi-irix
+++ /dev/null
@@ -1 +0,0 @@
-20000100000
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-ws-64 b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-ws-64
deleted file mode 100644
index 31e0b55e93..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-ws-64
+++ /dev/null
@@ -1 +0,0 @@
-20000100000
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-x86_64-unknown-openbsd b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-x86_64-unknown-openbsd
deleted file mode 100644
index 31e0b55e93..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun002.stdout-x86_64-unknown-openbsd
+++ /dev/null
@@ -1 +0,0 @@
-20000100000
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun003.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun003.hs
deleted file mode 100644
index 67b9771d5f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun003.hs
+++ /dev/null
@@ -1,27 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances #-}
--- !!! One method class from Sergey Mechveliani
--- showed up problematic newtype dict rep.
-module Main where
-import Data.Ratio
-
-class MBConvertible a b where cm :: a -> b -> Maybe b
-
-c :: MBConvertible a b => a -> b -> b
-c a b = case cm a b
- of
- Just b' -> b'
- _ -> error "c a b failed"
-
-
-instance MBConvertible Int Int where cm a _ = Just a
-
-instance (MBConvertible a b,Integral b) => MBConvertible a (Ratio b)
- where
- cm a f = case cm a (numerator f) of Just a' -> Just (a'%1)
- _ -> Nothing
-
-main = let f = 1%1 :: Ratio Int
- n2 = 2::Int
- g = (c n2 f) + f
- in
- putStr (shows g "\n")
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun003.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun003.stdout
deleted file mode 100644
index 14896f2f71..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun003.stdout
+++ /dev/null
@@ -1 +0,0 @@
-3 % 1
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun003.stdout-ghc b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun003.stdout-ghc
deleted file mode 100644
index 14896f2f71..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun003.stdout-ghc
+++ /dev/null
@@ -1 +0,0 @@
-3 % 1
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun004.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun004.hs
deleted file mode 100644
index 2319fc3bec..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun004.hs
+++ /dev/null
@@ -1,72 +0,0 @@
-{-# LANGUAGE ExistentialQuantification #-}
--- !!! Tests existential data types
--- Originally from Kevin Glynn
-module Main(main) where
-
-data Coordinate3D = Coord3D {cx, cy, cz::Double}
- deriving (Eq, Show)
-
--- We Represent a line by two coordinates which it passes through.
-data Line = MkLine Coordinate3D Coordinate3D
-
-
-class PictureObject pot where
-
- -- Returns ordered (rel to 0 0 0) of points where the object
- -- intersects the given line.
- intersectLineObject :: pot -> Line -> [Coordinate3D]
-
- getPictureName :: pot -> String
-
-data Sphere =
- Sphere Coordinate3D -- Centre
- Double -- Radius
- Double -- ambient coeff
- Double -- diffuse coeff
- Double -- specular coeff
- Double -- phong specular exponent
-
-intersectLineSphere :: Sphere -> Line -> [Coordinate3D]
-intersectLineSphere sp line = []
-
-instance PictureObject Sphere where
- intersectLineObject = intersectLineSphere
- getPictureName _ = "Sphere"
-
-data Cube =
- Cube Coordinate3D -- Origin corner
- Coordinate3D -- Opposite corner
- Double -- ambient coeff
- Double -- diffuse coeff
- Double -- specular coeff
- Double -- phong specular exponent
- deriving (Eq, Show)
-
-intersectLineCube :: Cube -> Line -> [Coordinate3D]
-intersectLineCube cube line = []
-
-instance PictureObject Cube where
- intersectLineObject = intersectLineCube
- getPictureName _ = "Cube"
-
-
-data GenPic = forall pot. (PictureObject pot) => MkGenPic pot
-
-sphere :: Sphere
-sphere = Sphere (Coord3D 1 1 1) 1 1 1 1 1
-
-cube :: Cube
-cube = Cube (Coord3D 1 1 1) (Coord3D 2 2 2) 1 1 1 1
-
-obj_list:: [GenPic]
-obj_list = [MkGenPic sphere, MkGenPic cube]
-
-putName :: PictureObject pot => pot -> IO ()
-putName x = putStr $ getPictureName x
-
-
-main :: IO ()
-main = do { sequence_ $ map put_it obj_list }
- where
- put_it (MkGenPic s) = putStrLn (getPictureName s)
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun004.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun004.stdout
deleted file mode 100644
index f0842b68d7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun004.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Sphere
-Cube
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun005.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun005.hs
deleted file mode 100644
index 2c315725ef..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun005.hs
+++ /dev/null
@@ -1,25 +0,0 @@
--- !!! Dfun naming bug
-
-module Main where
-
-
- data TT = TT
- data TTT = TTT
-
- class CC a where
- op_cc :: a -> a
-
- class CCT a where
- op_cct :: a -> a
-
- -- These two instances should get different dfun names!
- -- In GHC 4.04 they both got $fCCTTT
-
- instance CC TTT where
- op_cc = id
-
- instance CCT TT where
- op_cct = id
-
- main = case op_cc TTT of
- TTT -> print "ok"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun005.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun005.stdout
deleted file mode 100644
index 52c33a57c7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun005.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"ok"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun006.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun006.hs
deleted file mode 100644
index f3d0e13cef..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun006.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE DatatypeContexts #-}
--- !!! Selectors for data and newtypes with contexts
-
--- This program, reported in Aug'00 by Jose Emilio Labra Gayo
--- gave rise to a Lint error because the selector 'newout' below
--- was given the type
--- Eq f => NewT f -> f
--- but lacked a dictionary argument in its body.
-
-module Main where
-
-newtype (Eq f) => NewT f = NewIn { newout :: f }
-data (Eq f) => DataT f = DataIn { dataout :: f }
-
-main = print (newout (NewIn "ok new") ++ dataout (DataIn " ok data"))
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun006.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun006.stdout
deleted file mode 100644
index e96d077c6e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun006.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"ok new ok data"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun008.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun008.hs
deleted file mode 100644
index 80097a8f24..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun008.hs
+++ /dev/null
@@ -1,26 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
--- !!! Check that record selectors for polymorphic fields work right
-
-module Main where
-
-class Foo a where
- bar :: a -> [a]
-
-instance Foo Int where
- bar x = replicate x x
-
-instance Foo Bool where
- bar x = [x, not x]
-
-data Record = R {
- blub :: Foo a => a -> [a]
- }
-
-main = do { let r = R {blub = bar}
- ; print (blub r (3::Int))
- ; print (blub r True)
- }
-
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun008.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun008.stdout
deleted file mode 100644
index f494982ffa..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun008.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-[3,3,3]
-[True,False]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun009.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun009.hs
deleted file mode 100644
index 1adc350084..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun009.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-
--- !!! Functional dependencies
-
-module Main where
-
-class Foo a b | a -> b where
- foo :: a -> b
-
-instance Foo [a] (Maybe a) where
- foo [] = Nothing
- foo (x:_) = Just x
-
-instance Foo (Maybe a) [a] where
- foo Nothing = []
- foo (Just x) = [x]
-
-test3:: [a] -> [a]
-test3 = foo . foo
--- First foo must use the first instance,
--- second must use the second. So we should
--- get in effect: test3 (x:xs) = [x]
-
-main:: IO ()
-main = print (test3 "foo")
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun009.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun009.stdout
deleted file mode 100644
index cb59695753..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun009.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"f"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun010.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun010.hs
deleted file mode 100644
index 7621f4d4e0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun010.hs
+++ /dev/null
@@ -1,44 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies #-}
-
--- !!! Functional dependencies
--- This one gave "zonkIdOcc: FunDep_a11w" in earlier days
-
-module Main (main) where
-
-data ERR a b = EOK a | ERR b deriving (Show)
-data Error = No | Notatall deriving (Show, Eq)
-
-
-class MonadErr m e | m -> e where
- aerturn :: e -> m a
- areturn :: a -> m a
- acatch :: a -> (a -> m b) -> (e -> m b) -> m b
- (>>>=) :: m a -> (a -> m b) -> m b
- (>>>) :: m a -> m b -> m b
-
-data BP a = BP (Int -> (ERR a Error, Int))
-
-instance MonadErr BP Error where
- aerturn k = BP $ \s -> (ERR k, s)
- areturn k = BP $ \s -> (EOK k, s)
- acatch k try handler = BP $ \s -> let BP try' = try k
- (r,s1) = try' s
- (BP c2, s2) = case r of
- EOK r -> (areturn r, s1)
- ERR r -> (handler r, s)
- in c2 s2
- a >>> b = a >>>= \_ -> b
-
- (BP c1) >>>= fc2 = BP $ \s0 -> let (r,s1) = c1 s0
- BP c2 = case r of
- EOK r -> fc2 r
- ERR r -> BP (\s -> (ERR r, s))
- in c2 s1
-
-run_BP :: Int -> BP a -> (ERR a Error, Int)
-run_BP st (BP bp) = bp st
-
-foo :: (ERR Int Error, Int)
-foo = run_BP 111 (aerturn No)
-
-main = print (show foo)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun010.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun010.stdout
deleted file mode 100644
index ae94b77716..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun010.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"(ERR No,111)"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun011.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun011.hs
deleted file mode 100644
index 5c6cab8ea0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun011.hs
+++ /dev/null
@@ -1,25 +0,0 @@
-{-# LANGUAGE ExistentialQuantification, FlexibleContexts,
- MultiParamTypeClasses #-}
-
--- !!! Existential data tyes
--- Hugs didn't like this one
-
-module Main (main) where
-
-
-class MyClass a b where
- foo :: a -> b -> Int
-
-data Special = forall b. (MyClass Int b)=> MkSpecial b
-data General a = forall b. (MyClass a b)=> MkGeneral b
-
-instance MyClass Int Bool where
- foo x False = -x
- foo x True = x
-
-xs :: [General Int]
-xs = [MkGeneral True, MkGeneral False]
-
-main = print [foo (3::Int) x | MkGeneral x <- xs]
- -- Without the (::Int) part we get an
- -- incomprehensible error message :-(
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun011.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun011.stdout
deleted file mode 100644
index 7984134ce3..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun011.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[3,-3]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun012.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun012.hs
deleted file mode 100644
index a3c946a24e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun012.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
--- !!! Implicit parameter test
-
-module Main where
-
-main = do { let ?x = 13 in putStrLn $ show $ foo
- ; let ?x = 14 in putStrLn $ show $ baz () }
-
-foo :: (?x :: Int) => Int
-foo = ?x
-
--- Check that defaulting works too
-baz () = ?x
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun012.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun012.stdout
deleted file mode 100644
index df9e19c591..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun012.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-13
-14
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun013.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun013.hs
deleted file mode 100644
index dc156c0d83..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun013.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE ParallelListComp #-}
-
--- !!! Parallel list comprehensions
-
-module Main where
-
-f xs = [ (x,y) | x <- xs, x>3 | y <- xs ]
-
-main = print (f [0..10])
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun013.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun013.stdout
deleted file mode 100644
index bb1e684d68..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun013.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[(4,0),(5,1),(6,2),(7,3),(8,4),(9,5),(10,6)]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun014.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun014.hs
deleted file mode 100644
index 751e9aa5bf..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun014.hs
+++ /dev/null
@@ -1,22 +0,0 @@
--- !!! Newtypes
-
--- This one made ghc 5.01 (after newtype squashing) fall over
--- by generating Core code that contained a pattern match on
--- the InPE data constructor (which doesn't exist)
-
-module Main where
-
-
-data Expr e = One e | Many [e]
-newtype PExpr a = InPE (Expr (PExpr a), Int)
-
-one :: Int -> PExpr e -> PExpr e
-one l x = InPE (One (plus1 x), l)
-
-plus1 :: PExpr a -> PExpr a
-plus1 x@(InPE (_, loc)) = InPE (Many [plus1 x], loc)
-
-get :: PExpr e -> Int
-get (InPE (_,l)) = l
-
-main = print (get (plus1 (InPE (Many [], 0))))
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun014.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun014.stdout
deleted file mode 100644
index 573541ac97..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun014.stdout
+++ /dev/null
@@ -1 +0,0 @@
-0
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun015.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun015.hs
deleted file mode 100644
index a75e7e88d5..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun015.hs
+++ /dev/null
@@ -1,21 +0,0 @@
--- !!! Newtypes
-
--- A variation of tc014 that Sigbjorn said failed
-
-module Main where
-
-data Expr a b = One a | Many [b]
-newtype Pat a = InP (Expr a (Pat a), Int)
-newtype PExpr a = InPE (Expr a (PExpr a), Int)
-
-plus1 x@(InPE (_, loc)) = InPE (Many [x], loc)
-one x l = InPE (One (plus1 x), l)
-
-outP (InP x) = x
-
-getPatNames p
- = case outP p of
- (One n, _) -> [n]
- (Many ps, _) -> concatMap getPatNames ps
-
-main = print (take 10 (map getPatNames (repeat (InP (One "n", 1)))))
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun015.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun015.stdout
deleted file mode 100644
index 7e8952116f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun015.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[["n"],["n"],["n"],["n"],["n"],["n"],["n"],["n"],["n"],["n"]]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun016.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun016.hs
deleted file mode 100644
index b498ed4220..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun016.hs
+++ /dev/null
@@ -1,48 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances #-}
-
--- !!! Functional dependencies
--- This one made the 5.00.1 typechecker go into an infinite loop.
--- The context simplifier keep thinking it was doing an 'improve'
--- step, and hence kept going round and round.
-
-module Main where
-
-main = print (get ((AttributeLeaf (MyLabel "x") 4)::Env1) (MyLabel "x"))
-
-class Eq l => Domain d l | d -> l where
- (<<) :: d -> d -> d
- empty :: d
-class Domain e l => Environment e l t | e -> l t where
- get :: e -> l -> Maybe t
- attribute :: l -> t -> e
-
-class Eq' a where
- (=?=) :: a -> a -> Bool
-
-newtype MyLabel = MyLabel String deriving Eq
-
-instance Eq' MyLabel where
- l =?= l' = l == l'
-
-data BinTreeEnv l t =
- EmptyEnv |
- AttributeLeaf l t |
- Union (BinTreeEnv l t) (BinTreeEnv l t)
-
-instance (Eq l, Eq' l) => Domain (BinTreeEnv l t) l where
- EmptyEnv << d = d
- d << EmptyEnv = d
- d << d' = Union d d'
- empty = EmptyEnv
-
-instance (Eq l, Eq' l) => Environment (BinTreeEnv l t) l t where
- get EmptyEnv l = Nothing
- get (AttributeLeaf l t) l' = if l =?= l' then Just t
- else Nothing
- get (Union d d') l = error "!??"
-
- attribute l t = AttributeLeaf l t
-
-type Env1 = BinTreeEnv MyLabel Integer
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun016.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun016.stdout
deleted file mode 100644
index 56ead6b617..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun016.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Just 4
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun017.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun017.hs
deleted file mode 100644
index f994df3a4f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun017.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE ImplicitParams, Rank2Types #-}
-
--- !!! Implicit parameters, and Rank-2 types
--- This one made the 5.00.1 not print anything
-
-module Main where
-
-foo :: ((?x :: Int) => IO a) -> Int -> IO a
- -- Note the rank2 type
-foo s z = do let ?x = z in s -- Should pick up ?x = z
- let ?x = z+3 in s -- Ditto z+3
-
-main = foo (print ?x) 42
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun017.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun017.stdout
deleted file mode 100644
index 3f49878157..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun017.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-42
-45
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun018.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun018.hs
deleted file mode 100644
index 9f9bd14d0f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun018.hs
+++ /dev/null
@@ -1,84 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances #-}
-
-class Monad m => C1 m x
-
-class (Monad m, C1 m x) => C2 m x
- where
- c2 :: x -> m x
-
-class C1 m x => C3 m x
- where
- c3 :: x -> m x
-
-instance Monad m => C1 m Bool
-
-instance C2 Maybe Bool
- where
- c2 = return
-
-instance C3 Maybe Bool
- where
- c3 = return
-
-
-main = do { print (c2 True :: Maybe Bool) ;
- print (c3 True :: Maybe Bool) }
-
-------------------------------------------------------------------------
-{- Here's the email from Ralf Laemmel
- reporting a bug in Hugs
-
-1. If you evaluate "test",
- then you get as expected "Just True".
-
-2. Now remove the "Monad M" constraint
- in the class C2. [giving the class C3]
- This is of course legal and semantics-preserving
- since the monad constraints is implied by C1
- anyway.
-
-3. Now evaluate "test" again. Oops, it diverges.
-
-I did this Hugs Version February 2001 under Solaris
-and Linux. Command line option -98 is needed of course.
-Funny enough, if CTRL-C the evaluation of "test"
-and you try it the second time (without reloading
-anything etc.), then you see "Program error: {_Gc Black
-Hole}". Of course, there is no such black hole.
-
-I extracted the above fragment from a huge problem.
-The scheme is the following. It seems have to do
-with multi-parameter classes. It definitely has to
-do with multi-layered class hierarchies where one
-class has a class-wide superclass, as C2 has C1 in
-the example. It seems that the superclass is
-properly propagated during type-inference/checking
-but it is not properly propagated, as for as code
-determination in overloading resolution.
-
-Please, let me know if I can be of further assistance.
-I am actually amazed how general this scheme is
-(3 classes, 2 parameters). How does it come that it
-was not detected much earlier.
-
-Anyway, good luck,
-Ralf
-
-
-P.S.: I have more problems in a larger application.
-Certain overloaded expressions diverge. I can recover
-from that usually by using explicit function types
-for top-level functions, where again -- as in C1 above
--- I repeat some constraints which are derivable. I was
-not able to extract a simple program for that problem.
-But I would be glad to help you by checking if the
-problem is gone after you did the bug fix.
-
-
---
-Dr.-Ing. Ralf Laemmel
-CWI & VU, Amsterdam, The Netherlands
-http://www.cwi.nl/~ralf/
-http://www.cs.vu.nl/~ralf/
-
--} \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun018.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun018.stdout
deleted file mode 100644
index 66b4edf967..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun018.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-Just True
-Just True
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun019.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun019.hs
deleted file mode 100644
index 266e01d9c0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun019.hs
+++ /dev/null
@@ -1,21 +0,0 @@
-{-# LANGUAGE ImplicitParams, RankNTypes #-}
-
--- GHC 5.02 got this one wrong.
-
-module Main where
-
--- Implicit parameters bug
--- mbs@cse.ogi.edu 24-Oct-2001 22:21:27
-
-f :: (?x :: Int) => ((?x :: Int) => Int) -> Int -> Int
-f g y = if y == 0
- then g
- else let ?x = ?x + 1
- in f g (y - 1)
-
-h :: (?x :: Int) => Int
-h = ?x
-
-main = print (let ?x = 0 in f h 10)
--- The result should be 10!
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun019.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun019.stdout
deleted file mode 100644
index f599e28b8a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun019.stdout
+++ /dev/null
@@ -1 +0,0 @@
-10
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun020.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun020.hs
deleted file mode 100644
index 98cbc71e3c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun020.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances #-}
-
--- Hugs (2001) diverges when evaluating main, unless (Monad m) is
--- added as an extra superclass to C2, which should not be necessary.
-
-module Main where
-
-class Monad m => C1 m x
-
-class (C1 m x) => C2 m x where
- c2 :: x -> m x
-
-instance Monad m => C1 m Bool
-
-instance C2 Maybe Bool where
- c2 = return
-
-test :: Maybe Bool
-test = c2 True
-
-main = print test
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun020.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun020.stdout
deleted file mode 100644
index 3e69f58e11..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun020.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Just True
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun021.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun021.hs
deleted file mode 100644
index 50497dd640..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun021.hs
+++ /dev/null
@@ -1,60 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- TypeSynonymInstances, FlexibleInstances #-}
-
--- This bizarre program failed because TcSimplify built a loop of
--- dictionaries, due to an obscure bug in the way in which superclasses
--- were added
-
-module Main where
-
-import Data.List
-import Data.Map
-
-class (Ord oid) => Object o oid | o -> oid where
-
-data Access oid
-
-class (Object o oid) => SecurityModel model o oid | model -> o
-
-class (SecurityModel model o oid) => SecurityPolicy policy model o oid where
- checkAccess :: policy -> model -> Access oid -> Bool
- checkAccess _ _ _ = True
- checkModel :: policy -> model -> Bool
- checkModel _ _ = True
-
-------------------------------------------------------------
--- The Linux instance
-------------------------------------------------------------
-
-type LinuxObjectId = Either [String] String
-
-data LinuxObject = File [String] deriving (Eq, Show)
-
-instance Object LinuxObject LinuxObjectId
-
-data LinuxSecurityModel =
- LinuxSecurityModel { lsmObjectSet :: Map LinuxObjectId LinuxObject }
-
-
--- Now defined in Data.Map, don't think this affects the bug:
--- instance (Show a, Show b) => Show (Map a b) where
--- show fm = show (fmToList fm)
-
-instance Show LinuxSecurityModel where
- show lsm = "LSM:" ++ "\tObjects: " ++ show (lsmObjectSet lsm)
-
-instance SecurityModel LinuxSecurityModel LinuxObject LinuxObjectId
-
-data LinuxSecurityPolicy = LinuxSecurityPolicy
-instance SecurityPolicy LinuxSecurityPolicy LinuxSecurityModel LinuxObject LinuxObjectId
-
-model :: Map LinuxObjectId LinuxObject
-model = fromList [ (Left [], File []), (Left ["home"], File ["home"]) ]
-
-
--- works
--- model :: (LinuxObjectId, LinuxObject)
--- model = (Left [], File [])
-
-main :: IO ()
-main = do { putStrLn (show model) }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun021.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun021.stdout
deleted file mode 100644
index c16e4c39e1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun021.stdout
+++ /dev/null
@@ -1 +0,0 @@
-fromList [(Left [],File []),(Left ["home"],File ["home"])]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun022.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun022.hs
deleted file mode 100644
index 54613d7917..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun022.hs
+++ /dev/null
@@ -1,23 +0,0 @@
--- This test checks in which way the type checker handles phantom types in
--- RULES. We would like these type variables to be generalised, but some
--- versions of GHC instantiated them to `()', which seriously limited the
--- applicability of such RULES.
-
-module Main (main)
-where
-
-data T a = C
-
-foo :: T a -> String
-{-# NOINLINE foo #-}
-foo C = "rewrite rule did NOT fire"
-
-{-# RULES
-
--- this rule will not fire if the type argument of `T' is constrained to `()'
---
-"foo/C" foo C = "rewrite rule did fire"
-
- #-}
-
-main = putStrLn $ foo (C :: T Int)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun022.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun022.stdout
deleted file mode 100644
index 3943681c07..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun022.stdout
+++ /dev/null
@@ -1 +0,0 @@
-rewrite rule did fire
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun023.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun023.hs
deleted file mode 100644
index 3a6166b015..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun023.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
--- Implicit parameters should not give rise to ambiguity.
-
-module Main (main) where
-
-foo :: (?x :: [a]) => Int -> String
-foo n = show (n + length ?x)
-
-
-main = do { putStrLn (let ?x = [True,False] in foo 3) ;
- putStrLn (let ?x = "fred" in foo 4) }
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun023.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun023.stdout
deleted file mode 100644
index 2050fde75a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun023.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-5
-8
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun024.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun024.hs
deleted file mode 100644
index 82c6f49e33..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun024.hs
+++ /dev/null
@@ -1,43 +0,0 @@
-{-# LANGUAGE ImplicitParams, TypeSynonymInstances, FlexibleInstances #-}
-
--- Class ops that bind no new type variables
-
-module Main where
-
- import Data.List( sort )
-
- just = [Just "fred",Just "bill"]
-
- main = do { putStrLn (let ?p = "ok1" in fc1);
- putStrLn (let ?p = "ok2" in fc2);
- putStrLn (show (fd1 just)) ;
- putStrLn (show (fd2 just)) }
-
- -- This class has no tyvars in its class op context
- -- One uses a newtype, the other a data type
- class C1 a where
- fc1 :: (?p :: String) => a;
- class C2 a where
- fc2 :: (?p :: String) => a;
- opc :: a
-
- instance C1 String where
- fc1 = ?p;
- instance C2 String where
- fc2 = ?p;
- opc = "x"
-
- -- This class constrains no new type variables in
- -- its class op context
- class D1 a where
- fd1 :: (Ord a) => [a] -> [a]
- class D2 a where
- fd2 :: (Ord a) => [a] -> [a]
- opd :: a
-
- instance D1 (Maybe a) where
- fd1 xs = sort xs
- instance D2 (Maybe a) where
- fd2 xs = sort xs
- opd = Nothing
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun024.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun024.stdout
deleted file mode 100644
index bdafbe58ac..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun024.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-ok1
-ok2
-[Just "bill",Just "fred"]
-[Just "bill",Just "fred"]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun025.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun025.hs
deleted file mode 100644
index b7a565934e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun025.hs
+++ /dev/null
@@ -1,15 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
--- Like tcrun024, but cross module
-
-module Main where
- import TcRun025_B
-
- just = [Just "fred",Just "bill"]
-
- main = do { putStrLn (let ?p = "ok1" in fc1);
- putStrLn (let ?p = "ok2" in fc2);
- putStrLn (show (fd1 just)) ;
- putStrLn (show (fd2 just)) }
-
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun025.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun025.stdout
deleted file mode 100644
index bdafbe58ac..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun025.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-ok1
-ok2
-[Just "bill",Just "fred"]
-[Just "bill",Just "fred"]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun026.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun026.hs
deleted file mode 100644
index 7e52d3ce54..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun026.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
--- Crashed GHC 5.04 with tcTyC
--- panic: tcSplitTyConApp forall x{-r6S-} :: *.
--- Main.L{-rr-} x{-r6S-}
-
--- GHC 6.3: this is now an error (can do subsumption in patterns)
-
-module Main where
-
-newtype FA c = FA (forall x . c x)
-newtype L x = L [x]
-
-my_nil = FA (L []) :: FA L
-
-sample :: String
-sample = case my_nil of FA (L x) -> "foo"++x
-
--- -- but this works fine
--- sample = case my_nil of FA x -> case x of L y -> "foo"++y
-
-main = print sample
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun026.stderr b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun026.stderr
deleted file mode 100644
index e69de29bb2..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun026.stderr
+++ /dev/null
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun026.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun026.stdout
deleted file mode 100644
index 810c96eeeb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun026.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"foo"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun027.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun027.hs
deleted file mode 100644
index 734d230394..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun027.hs
+++ /dev/null
@@ -1,12 +0,0 @@
-{-# LANGUAGE ImplicitParams #-}
-
--- Killed GHC 5.04.1
-
-module Main where
-
-type CTPar = ([Double],Int)
-
-us :: (?ctPar :: CTPar) => [Double]
-us = let (d,_) = ?ctPar in d
-
-main = let ?ctPar = ([3.4],2) in print us
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun027.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun027.stdout
deleted file mode 100644
index dabf967d39..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun027.stdout
+++ /dev/null
@@ -1 +0,0 @@
-[3.4]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun028.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun028.hs
deleted file mode 100644
index f4f8fd9d61..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun028.hs
+++ /dev/null
@@ -1,63 +0,0 @@
-{-# OPTIONS_GHC -dcore-lint #-}
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances, UndecidableInstances #-}
-
--- This is a rather exotic functional-dependency test.
--- It crashed GHC 5.04.3 with a core-lint error, because
--- of a bug in tcSimplifyRestricted (fixed Apr 03)
-
-module Main where
-
-
-class ComposePS a b c | a b -> c where
- (.>) :: PSOp a -> PSOp b -> PSOp c
- (V a) .> (V b) = V (a ++ b)
-
-instance (ConcatPS a b c, CheckPS c Id Id d) => ComposePS a b d
-
-------------------------------------------------------------------------------
-
-data PSOp a = V [String] deriving Show
-
-data Id
-data Push t rest
-data Pop t rest
-
-
-class Reverse a b c | a b -> c
-instance Reverse Id b b
-instance Reverse a (Pop t b) c => Reverse (Pop t a) b c
-instance Reverse a (Push t b) c => Reverse (Push t a) b c
-
-------------------------------------------------------------------------------
-
-class ConcatPS a b c | a b -> c where
- ccat :: a -> b -> c
-instance ConcatPS Id a a
-instance ConcatPS a b c => ConcatPS (Pop t a) b (Pop t c)
-instance ConcatPS a b c => ConcatPS (Push t a) b (Push t c)
-
-------------------------------------------------------------------------------
-
-class CheckPS a b c d | a b c -> d where
- check :: a -> b -> c -> d
- check _ _ _ = error "oki"
-
-instance Reverse a b c => CheckPS Id a b c
-
-instance CheckPS a b (Push t c) d => CheckPS (Push t a) b c d
-
-instance CheckPS a (Pop t b) Id d => CheckPS (Pop t a) b Id d
-
-instance CheckPS a b c d => CheckPS (Pop t a) b (Push t c) d
-
-
-v1 :: PSOp (Pop a Id)
-v1 = V []
-
-v2 :: PSOp Id
-v2 = V []
-
-t = v1 .> v2
-
-main = print t
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun028.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun028.stdout
deleted file mode 100644
index 7d447a7415..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun028.stdout
+++ /dev/null
@@ -1 +0,0 @@
-V []
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun029.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun029.hs
deleted file mode 100644
index 55071be483..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun029.hs
+++ /dev/null
@@ -1,29 +0,0 @@
-{-# LANGUAGE DatatypeContexts #-}
--- Killed GHC 5.02.3
-
--- Confusion about whether the wrapper for a data constructor
--- with a "stupid context" includes the stupid context or not
--- Core lint catches it, but it seg-faults if it runs
-
-module Main where
-
-data Color = Red
- | Black
- deriving Show
-
-data Ord k => Tree k d = None
- | Node{color::Color,
- key::k,
- item::d,
- left::(Tree k d),
- right::(Tree k d)}
- deriving Show
-
-insert k i t = (insert2 t) {color=Black}
- where insert2 None = Node{color=Red,
- key=k,
- item=i,
- left=None,
- right=None}
-
-main = print (insert 1 2 None) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun029.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun029.stdout
deleted file mode 100644
index 127a2b4781..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun029.stdout
+++ /dev/null
@@ -1 +0,0 @@
-Node {color = Black, key = 1, item = 2, left = None, right = None}
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun030.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun030.hs
deleted file mode 100644
index fe28a33091..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun030.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-{-# LANGUAGE UndecidableInstances #-}
-
--- Test recursive dictionaries
-
-module Main where
-
-data D r = ZeroD | SuccD (r (D r));
-
-instance (Eq (r (D r))) => Eq (D r) where
- ZeroD == ZeroD = True
- (SuccD a) == (SuccD b) = a == b
- _ == _ = False;
-
-equalDC :: D [] -> D [] -> Bool;
-equalDC = (==);
-
-foo :: D []
-foo = SuccD [SuccD [ZeroD], ZeroD]
-
-main = print (foo == foo)
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun030.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun030.stdout
deleted file mode 100644
index 0ca95142bb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun030.stdout
+++ /dev/null
@@ -1 +0,0 @@
-True
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun031.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun031.hs
deleted file mode 100644
index fbffe97c0e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun031.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, GeneralizedNewtypeDeriving #-}
-
--- A newtype-deriving test
-
-module Main where
-
-class C a b where
- op :: a -> b -> b
-instance C [a] Char where
- op [] x = x
- op _ x = 'z'
-
-newtype T = T Char deriving( Show, C [a] )
-
-main = do { print (op [] 'x')
- ; print (op [] (T 'y')) }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun031.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun031.stdout
deleted file mode 100644
index 347fadaa0c..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun031.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-'x'
-T 'y'
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun032.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun032.hs
deleted file mode 100644
index 8aa43637ba..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun032.hs
+++ /dev/null
@@ -1,20 +0,0 @@
-
-{-# LANGUAGE UndecidableInstances #-}
-
--- This tests the recursive-dictionary stuff.
-
-module Main where
-
-data Fix f = In (f (Fix f))
-
-instance Show (f (Fix f)) => Show (Fix f) where
- show (In x) = "In " ++ show x -- No parens, but never mind
-
-instance Eq (f (Fix f)) => Eq (Fix f) where
- (In x) == (In y) = x==y
-
-data L x = Nil | Cons Int x deriving( Show, Eq )
-
-main = do { print (In Nil);
- print (In Nil == In Nil) }
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun032.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun032.stdout
deleted file mode 100644
index 9639b4b410..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun032.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-In Nil
-True
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun033.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun033.hs
deleted file mode 100644
index f9cf6a3faa..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun033.hs
+++ /dev/null
@@ -1,31 +0,0 @@
-
-{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances, FlexibleContexts,
- UndecidableInstances, TypeSynonymInstances #-}
-
--- This test made GHC 6.3 build a superclass loop, in
--- the instance ClassA a String declaration
-
-module Main where
-
-class (Sat (a -> b -> String), ClassB b) => ClassA a b
-
-class ClassB a where
- fun :: a -> String
-
-class Sat x where
- sat :: x
-
-instance ClassA a b => Sat (a -> b -> String) where
- sat = const fun
-
-instance ClassA a String
--- Badness was that the ClassB superclass dict was loopy
---
--- Needs Sat (a -> String -> String), ClassB String
--- --> ClassA a String, ClassB String
--- and adding ClassA gives superclass ClassB.
-
-instance ClassB String where
- fun = id
-
-main = print ((sat :: Int -> String -> String) 3 "hello")
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun033.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun033.stdout
deleted file mode 100644
index 3bd41263bf..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun033.stdout
+++ /dev/null
@@ -1 +0,0 @@
-"hello"
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun034.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun034.hs
deleted file mode 100644
index ac07869b40..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun034.hs
+++ /dev/null
@@ -1,14 +0,0 @@
-{-# LANGUAGE ExplicitForAll, TypeOperators #-}
-
-module Main where
-
--- Infix type operator
-f1 :: forall m a b. (a `m` b) -> ((a `m` b) -> a) -> a
-f1 x g = g x
-
--- Infix type operator
-f2 :: forall a b (-->). (a --> b) -> ((a --> b) -> b) -> b
-f2 x g = g x
-
-main = do { print (f1 (3,5) fst); print (f2 (3,5) snd) }
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun034.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun034.stdout
deleted file mode 100644
index 7ee0007bf1..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun034.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-3
-5
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun035.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun035.hs
deleted file mode 100644
index ee9f27bb7b..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun035.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
--- Tests subsumption for infix operators (in this case (.))
--- Broke GHC 6.4!
-
--- Now it breaks the impredicativity story
--- (id {a}) . (id {a}) :: a -> a
--- And (forall m. Monad m => m a) /~ IO a
-
-module Main(main) where
-
-foo :: (forall m. Monad m => m a) -> IO a
-foo = id . id
-
-main :: IO ()
-main = foo (return ())
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun035.stderr b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun035.stderr
deleted file mode 100644
index 67d341883e..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun035.stderr
+++ /dev/null
@@ -1,9 +0,0 @@
-
-tcrun035.hs:13:12:
- Couldn't match expected type `IO a'
- with actual type `forall (m :: * -> *). Monad m => m a'
- Expected type: (forall (m :: * -> *). Monad m => m a) -> IO a
- Actual type: (forall (m :: * -> *). Monad m => m a)
- -> forall (m :: * -> *). Monad m => m a
- In the second argument of `(.)', namely `id'
- In the expression: id . id
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun036.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun036.hs
deleted file mode 100644
index cef36a613d..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun036.hs
+++ /dev/null
@@ -1,58 +0,0 @@
-{-# LANGUAGE Rank2Types #-}
-
--- Another test for the new feature that contexts in a mutually
--- recursive group do not need to be of the same length
--- I'm putting it here mainly to document the need
-
--- GHC used to say:
---
--- Bug.lhs:23:10:
--- Inferred type is less polymorphic than expected
--- Quantified type variable `c' is mentioned in the environment:
--- printCatalog :: c -> IO () (bound at Bug.lhs:28:0)
--- In the `viewCatalog' field of a record
-
--- Bug.lhs:27:0:
--- Contexts differ in length
--- When matching the contexts of the signatures for
--- printer :: Viewer
--- printCatalog :: forall c. (Catalog c) => View c
--- The signature contexts in a mutually recursive group should all be identical
-
-module Main where
-
-class Catalog c where
- traverse :: c -> Viewer -> IO ()
-
-instance Catalog Int where
- traverse i v = viewShowable v i
-
-type View a = a -> IO ()
-
-data Viewer = Viewer {
- viewShowable :: forall s. Show s => View s,
- viewCatalog :: forall c. Catalog c => View c
- }
-
-printer :: Viewer
---printer = Viewer {
--- viewCatalog = \x -> traverse x printer,
--- viewShowable = putStrLn . show }
-printer = Viewer {
- viewCatalog = printCatalog,
- viewShowable = putStrLn . show }
-
-printCatalog :: forall c. Catalog c => View c
-printCatalog x = traverse x printer
-
-data X = X {
- cat :: Int
- }
-
-instance Catalog X where
- traverse x v = do
- viewCatalog v (cat x)
-
-main = do
- let x = X { cat = 20 }
- traverse x printer
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun036.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun036.stdout
deleted file mode 100644
index 209e3ef4b6..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun036.stdout
+++ /dev/null
@@ -1 +0,0 @@
-20
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun037.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun037.hs
deleted file mode 100644
index e79817d5cb..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun037.hs
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-module Main where
-
-class C a where
- op :: (Show a, Show b) => a -> b -> String
- -- This class op has local quantification, but
- -- also adds a constraint on 'a'
-
-instance C Bool where
- op x y = show x ++ " " ++ show y
-
-main = do { putStrLn (op True 'x'); putStrLn (op False (3::Int)) }
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun037.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun037.stdout
deleted file mode 100644
index ef74440844..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun037.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-True 'x'
-False 3
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun038.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun038.hs
deleted file mode 100644
index 26337cdb95..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun038.hs
+++ /dev/null
@@ -1,8 +0,0 @@
-module Main where
-
-import TcRun038_B( Foo(..), bar )
-
-instance Foo Int where
- op x = x+1
-
-main = print (bar (3::Int))
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun038.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun038.stdout
deleted file mode 100644
index 84b19cd5a7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun038.stdout
+++ /dev/null
@@ -1 +0,0 @@
-11
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun039.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun039.hs
deleted file mode 100644
index 916d5330e4..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun039.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-{-# LANGUAGE GADTs, ExplicitForAll #-}
-
--- Test for GADTs and implication constraints
-
-module Main where
-
-data T a where
- MkT :: Num a => a -> T a
-
-f :: Read a => T a -> String -> a
-f (MkT n) s = n + read s
-
-----------------
-data GADT a where
- MkG :: Num a => a -> GADT [a]
-
-g :: forall b. Read b => GADT b -> String -> b
-g (MkG n) s = -- Here we know Read [b]
- n : (read s)
-
-main = do print (f (MkT (3::Int)) "4")
- print (g (MkG (3::Int)) "[4,5]")
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun039.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun039.stdout
deleted file mode 100644
index a13aef23d7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun039.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-7
-[3,4,5]
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun040.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun040.hs
deleted file mode 100644
index adfaf95898..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun040.hs
+++ /dev/null
@@ -1,27 +0,0 @@
--- Sven Panne found this example; a mistake in typechecking
--- lazy patterns made functions too strict in a version of
--- GHC 6.7
-
-module Main where
-
-import Foreign
-
--- Strangely enough, this works if newtype is used...
-data Elem a = Elem a
-
-instance Storable a => Storable (Elem a) where
- sizeOf ~(Elem r) = 3 * sizeOf r
- alignment ~(Elem r) = alignment r
- peek ptr = do r <- peekElemOff (castPtr ptr) 0; return (Elem r)
- poke ptr (Elem r) = poke (castPtr ptr) r
-
-main :: IO ()
-main = do
- putStrLn "*** main 1"
- allocaBytes 100 $ \buf -> do
- poke buf (Elem 12345)
- putStrLn "*** main 2"
- Elem x <- peekElemOff buf 0
- print (x :: Int)
- putStrLn "*** main 3"
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun040.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun040.stdout
deleted file mode 100644
index 827c4f698a..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun040.stdout
+++ /dev/null
@@ -1,4 +0,0 @@
-*** main 1
-*** main 2
-12345
-*** main 3
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun041.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun041.hs
deleted file mode 100644
index f78141adc7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun041.hs
+++ /dev/null
@@ -1,37 +0,0 @@
-{-# LANGUAGE TupleSections, UnboxedTuples #-}
-module Main where
-
-a :: Int -> (Int, Bool)
-a = ( , True)
-
-b :: Bool -> (Int, Bool)
-b = (1, )
-
-c :: a -> (a, Bool)
-c = (, True || False)
-
-d = (,1,)
-
-
-e = (# , True #)
-
-f = (# 1, #)
-
-g = (# , True || False #)
-
-h = (# ,1, #)
-
-
-unchanged :: a -> (# Int #)
-unchanged _binding = (# #) 1
-
-
-main = do
- print (a 1, b False, c "Hello", c 1337, d "Yeah" "Baby")
- case e 1 of { (# x1, x2 #) ->
- case f False of { (# x3, x4 #) ->
- case g "Hello" of { (# x5, x6 #) ->
- case g 1337 of { (# x7, x8 #) ->
- case h "Yeah" "Baby" of { (# x9, x10, x11 #) ->
- print (x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11) }}}}}
-
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun041.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun041.stdout
deleted file mode 100644
index 83a55b7ca7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun041.stdout
+++ /dev/null
@@ -1,2 +0,0 @@
-((1,True),(1,False),("Hello",True),(1337,True),("Yeah",1,"Baby"))
-(1,True,1,False,"Hello",True,1337,True,"Yeah",1,"Baby")
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun042.hs b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun042.hs
deleted file mode 100644
index 1ea5c2467f..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun042.hs
+++ /dev/null
@@ -1,10 +0,0 @@
-{-# LANGUAGE TupleSections, RankNTypes, ImpredicativeTypes #-}
-module Main where
-
-e :: a -> (forall b. b -> b -> b) -> (a, String, forall c. c -> c -> c)
-e = (,"Hello" ++ "World",)
-
-dropFunction :: (a, String, forall c. c -> c -> c) -> (a, String, Int)
-dropFunction (x, y, z) = (x, y, z 10 20)
-
-main = print (dropFunction $ e "Meh" (flip const), dropFunction $ e 10 const) \ No newline at end of file
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun042.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/tcrun042.stdout
deleted file mode 100644
index 3ce33b9abd..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/tcrun042.stdout
+++ /dev/null
@@ -1 +0,0 @@
-(("Meh","HelloWorld",20),(10,"HelloWorld",10))
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/testeq2.hs b/testsuite/tests/ghc-regress/typecheck/should_run/testeq2.hs
deleted file mode 100644
index 811131b453..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/testeq2.hs
+++ /dev/null
@@ -1,68 +0,0 @@
-
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- FlexibleInstances, FlexibleContexts,
- OverlappingInstances, UndecidableInstances #-}
-
---
--- Test case adopted from the HList library
--- http://www.cwi.nl/~ralf/HList/
---
--- Tests functional dependencies, overlapping instances....
-
-module Main where
-
-
---
--- Type-level Booleans; nothing weird
---
-data HTrue; hTrue :: HTrue; hTrue = undefined
-data HFalse; hFalse :: HFalse; hFalse = undefined
-class HBool x; instance HBool HTrue; instance HBool HFalse
-instance Show HTrue where show _ = "HTrue"
-instance Show HFalse where show _ = "HFalse"
-
-
---
--- Value-level incarnation; nothing too weird.
--- Rely on lazy show for type-level Booleans
---
-typeEq :: TypeEq t t' b => t -> t' -> b
-typeEq = undefined
-
-
---
--- Type-level cast
---
-class TypeCast a b | a -> b, b->a where typeCast :: a -> b
-class TypeCast' t a b | t a -> b, t b -> a where typeCast' :: t->a->b
-class TypeCast'' t a b | t a -> b, t b -> a where typeCast'' :: t->a->b
-instance TypeCast' () a b => TypeCast a b where typeCast x = typeCast' () x
-instance TypeCast'' t a b => TypeCast' t a b where typeCast' = typeCast''
-instance TypeCast'' () a a where typeCast'' _ x = x
-
-
---
--- Type-level type equality
---
-
-class TypeEq' () x y b => TypeEq x y b | x y -> b
-class TypeEq' q x y b | q x y -> b
-class TypeEq'' q x y b | q x y -> b
-instance TypeEq' () x y b => TypeEq x y b
--- This instance used to work <= GHC 6.2
--- instance TypeEq' () x x HTrue
--- There were some problems however with GHC CVS 6.3.
--- So we favour the following, more stable (?) instance instead.
-instance TypeCast b HTrue => TypeEq' () x x b
-instance TypeEq'' q x y b => TypeEq' q x y b
-instance TypeEq'' () x y HFalse
-
-
---
--- Let's test.
--- The following should print "(HTrue,HFalse)".
---
-
-main = print $ ( typeEq "42" "88"
- , typeEq "42" (42::Int)
- )
diff --git a/testsuite/tests/ghc-regress/typecheck/should_run/testeq2.stdout b/testsuite/tests/ghc-regress/typecheck/should_run/testeq2.stdout
deleted file mode 100644
index 7f7d90eae7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/should_run/testeq2.stdout
+++ /dev/null
@@ -1 +0,0 @@
-(HTrue,HFalse)
diff --git a/testsuite/tests/ghc-regress/typecheck/testeq1/FakePrelude.hs b/testsuite/tests/ghc-regress/typecheck/testeq1/FakePrelude.hs
deleted file mode 100644
index 80161655d0..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/testeq1/FakePrelude.hs
+++ /dev/null
@@ -1,41 +0,0 @@
-{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies,
- OverlappingInstances, UndecidableInstances #-}
-
---
--- Test case adopted from the HList library
--- http://www.cwi.nl/~ralf/HList/
---
-
-module FakePrelude where
-
-
---
--- Type-level Booleans; nothing weird
---
-data HTrue; hTrue :: HTrue; hTrue = undefined
-data HFalse; hFalse :: HFalse; hFalse = undefined
-class HBool x; instance HBool HTrue; instance HBool HFalse
-instance Show HTrue where show _ = "HTrue"
-instance Show HFalse where show _ = "HFalse"
-
-
---
--- Type-level type equality
---
-class HBool b => TypeEq x y b | x y -> b
-
-
---
--- Value-level incarnation; nothing too weird.
--- Rely on lazy show for type-level Booleans
---
-typeEq :: TypeEq t t' b => t -> t' -> b
-typeEq = undefined
-
-
---
--- Type-level cast
---
-class TypeCast x y | x -> y, y -> x
- where
- typeCast :: x -> y
diff --git a/testsuite/tests/ghc-regress/typecheck/testeq1/Main.hs b/testsuite/tests/ghc-regress/typecheck/testeq1/Main.hs
deleted file mode 100644
index 1e28d00192..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/testeq1/Main.hs
+++ /dev/null
@@ -1,24 +0,0 @@
-
-{-# LANGUAGE OverlappingInstances, UndecidableInstances #-}
-
---
--- Test case adopted from the HList library
--- http://www.cwi.nl/~ralf/HList/
---
--- Tests functional dependencies and overlapping instances
-
-module Main where
-
-import FakePrelude
-import TypeEq
-import TypeCast
-
-
---
--- Let's test.
--- The following should print "(HTrue,HFalse)".
---
-
-main = print $ ( typeEq "42" "88"
- , typeEq "42" (42::Int)
- )
diff --git a/testsuite/tests/ghc-regress/typecheck/testeq1/Makefile b/testsuite/tests/ghc-regress/typecheck/testeq1/Makefile
deleted file mode 100644
index 1c39d1c1fe..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/testeq1/Makefile
+++ /dev/null
@@ -1,3 +0,0 @@
-TOP=../../../..
-include $(TOP)/mk/boilerplate.mk
-include $(TOP)/mk/test.mk
diff --git a/testsuite/tests/ghc-regress/typecheck/testeq1/TypeCast.hs b/testsuite/tests/ghc-regress/typecheck/testeq1/TypeCast.hs
deleted file mode 100644
index 96a4d66e57..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/testeq1/TypeCast.hs
+++ /dev/null
@@ -1,16 +0,0 @@
-
-{-# LANGUAGE MultiParamTypeClasses, FlexibleInstances, UndecidableInstances #-}
-
---
--- Test case adopted from the HList library
--- http://www.cwi.nl/~ralf/HList/
---
-
-module TypeCast where
-
-import FakePrelude
-
---
--- We are ready to reveal the definition of type cast.
---
-instance TypeCast x x where typeCast = id
diff --git a/testsuite/tests/ghc-regress/typecheck/testeq1/TypeEq.hs b/testsuite/tests/ghc-regress/typecheck/testeq1/TypeEq.hs
deleted file mode 100644
index 599893cc09..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/testeq1/TypeEq.hs
+++ /dev/null
@@ -1,22 +0,0 @@
-
-{-# LANGUAGE MultiParamTypeClasses,
- FlexibleInstances, OverlappingInstances, UndecidableInstances #-}
-
---
--- Test case adopted from the HList library
--- http://www.cwi.nl/~ralf/HList/
---
-
-module TypeEq where
-
-import FakePrelude
-
---
--- Type-level type equality;
--- defined in terms of type-level cast
---
-instance TypeEq x x HTrue
-instance (HBool b, TypeCast HFalse b) => TypeEq x y b
---
--- NOTE! instance TypeEq x y HFalse -- would violate functional dependency
---
diff --git a/testsuite/tests/ghc-regress/typecheck/testeq1/test.T b/testsuite/tests/ghc-regress/typecheck/testeq1/test.T
deleted file mode 100644
index dbb63fb9f8..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/testeq1/test.T
+++ /dev/null
@@ -1,9 +0,0 @@
-
-test('typecheck.testeq1',
- [skip_if_fast,
- extra_clean(['Main.hi', 'Main.o',
- 'TypeCast.hi', 'TypeCast.o',
- 'FakePrelude.hi', 'FakePrelude.o',
- 'TypeEq.hi', 'TypeEq.o'])],
- multimod_compile_and_run,
- ['Main', '-v0'])
diff --git a/testsuite/tests/ghc-regress/typecheck/testeq1/typecheck.testeq1.stdout b/testsuite/tests/ghc-regress/typecheck/testeq1/typecheck.testeq1.stdout
deleted file mode 100644
index 7f7d90eae7..0000000000
--- a/testsuite/tests/ghc-regress/typecheck/testeq1/typecheck.testeq1.stdout
+++ /dev/null
@@ -1 +0,0 @@
-(HTrue,HFalse)