summaryrefslogtreecommitdiffstats
path: root/testsuite/tests/basic/stringmatch.ml
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/tests/basic/stringmatch.ml')
-rw-r--r--testsuite/tests/basic/stringmatch.ml738
1 files changed, 738 insertions, 0 deletions
diff --git a/testsuite/tests/basic/stringmatch.ml b/testsuite/tests/basic/stringmatch.ml
new file mode 100644
index 000000000..e1f4bdb47
--- /dev/null
+++ b/testsuite/tests/basic/stringmatch.ml
@@ -0,0 +1,738 @@
+(* Empty string oddities *)
+
+let rec tst01 s = match s with
+| "" -> 0
+| _ -> 1
+
+let () =
+ assert (tst01 "" = 0) ;
+ assert (tst01 "\000\000\000\003" = 1) ;
+ assert (tst01 "\000\000\000\000\000\000\000\007" = 1) ;
+ ()
+
+(* A few when clauses *)
+
+let tst02 s =
+ let len = String.length s in
+ match s with
+ | "" when len < 0 -> assert false
+ | "" -> 1
+ | _ when len = 0 -> assert false
+ | "A" -> 2
+ | _ -> 3
+
+let () =
+ assert (tst02 "" = 1) ;
+ assert (tst02 "A" = 2) ;
+ assert (tst02 "B" = 3) ;
+ assert (tst02 "\000\000\000\000\000\000\000\007" = 3) ;
+ assert (tst02 "\000\000\000\003" = 3) ;
+ ()
+
+(* Keword reckognition *)
+
+let s00 = "get_const"
+let t00 = "set_congt"
+let s01 = "get_var"
+let t01 = "gat_ver"
+let s02 = "get_env"
+let t02 = "get_env"
+let s03 = "get_meth"
+let t03 = "met_geth"
+let s04 = "set_var"
+let t04 = "sev_tar"
+let s05 = "app_const"
+let t05 = "ppa_const"
+let s06 = "app_var"
+let t06 = "app_var"
+let s07 = "app_env"
+let t07 = "epp_anv"
+let s08 = "app_meth"
+let t08 = "atp_meph"
+let s09 = "app_const_const"
+let t09 = "app_const_const"
+let s10 = "app_const_var"
+let t10 = "atp_consp_var"
+let s11 = "app_const_env"
+let t11 = "app_constne_v"
+let s12 = "app_const_meth"
+let t12 = "spp_conat_meth"
+let s13 = "app_var_const"
+let t13 = "app_va_rconst"
+let s14 = "app_env_const"
+let t14 = "app_env_const"
+let s15 = "app_meth_const"
+let t15 = "app_teth_consm"
+let s16 = "meth_app_const"
+let t16 = "math_epp_const"
+let s17 = "meth_app_var"
+let t17 = "meth_app_var"
+let s18 = "meth_app_env"
+let t18 = "eeth_app_mnv"
+let s19 = "meth_app_meth"
+let t19 = "meth_apt_meph"
+let s20 = "send_const"
+let t20 = "tend_conss"
+let s21 = "send_var"
+let t21 = "serd_van"
+let s22 = "send_env"
+let t22 = "sen_denv"
+let s23 = "send_meth"
+let t23 = "tend_mesh"
+
+let tst03 s = match s with
+| "get_const" -> 0
+| "get_var" -> 1
+| "get_env" -> 2
+| "get_meth" -> 3
+| "set_var" -> 4
+| "app_const" -> 5
+| "app_var" -> 6
+| "app_env" -> 7
+| "app_meth" -> 8
+| "app_const_const" -> 9
+| "app_const_var" -> 10
+| "app_const_env" -> 11
+| "app_const_meth" -> 12
+| "app_var_const" -> 13
+| "app_env_const" -> 14
+| "app_meth_const" -> 15
+| "meth_app_const" -> 16
+| "meth_app_var" -> 17
+| "meth_app_env" -> 18
+| "meth_app_meth" -> 19
+| "send_const" -> 20
+| "send_var" -> 21
+| "send_env" -> 22
+| "send_meth" -> 23
+| _ -> -1
+
+let () =
+ assert (tst03 s00 = 0) ;
+ assert (tst03 t00 = -1) ;
+ assert (tst03 s01 = 1) ;
+ assert (tst03 t01 = -1) ;
+ assert (tst03 s02 = 2) ;
+ assert (tst03 t02 = 2) ;
+ assert (tst03 s03 = 3) ;
+ assert (tst03 t03 = -1) ;
+ assert (tst03 s04 = 4) ;
+ assert (tst03 t04 = -1) ;
+ assert (tst03 s05 = 5) ;
+ assert (tst03 t05 = -1) ;
+ assert (tst03 s06 = 6) ;
+ assert (tst03 t06 = 6) ;
+ assert (tst03 s07 = 7) ;
+ assert (tst03 t07 = -1) ;
+ assert (tst03 s08 = 8) ;
+ assert (tst03 t08 = -1) ;
+ assert (tst03 s09 = 9) ;
+ assert (tst03 t09 = 9) ;
+ assert (tst03 s10 = 10) ;
+ assert (tst03 t10 = -1) ;
+ assert (tst03 s11 = 11) ;
+ assert (tst03 t11 = -1) ;
+ assert (tst03 s12 = 12) ;
+ assert (tst03 t12 = -1) ;
+ assert (tst03 s13 = 13) ;
+ assert (tst03 t13 = -1) ;
+ assert (tst03 s14 = 14) ;
+ assert (tst03 t14 = 14) ;
+ assert (tst03 s15 = 15) ;
+ assert (tst03 t15 = -1) ;
+ assert (tst03 s16 = 16) ;
+ assert (tst03 t16 = -1) ;
+ assert (tst03 s17 = 17) ;
+ assert (tst03 t17 = 17) ;
+ assert (tst03 s18 = 18) ;
+ assert (tst03 t18 = -1) ;
+ assert (tst03 s19 = 19) ;
+ assert (tst03 t19 = -1) ;
+ assert (tst03 s20 = 20) ;
+ assert (tst03 t20 = -1) ;
+ assert (tst03 s21 = 21) ;
+ assert (tst03 t21 = -1) ;
+ assert (tst03 s22 = 22) ;
+ assert (tst03 t22 = -1) ;
+ assert (tst03 s23 = 23) ;
+ assert (tst03 t23 = -1) ;
+ ()
+
+(* Activate the test first column first heuristics *)
+
+let s00 = "AAAAAAAA"
+let s01 = "AAAAAAAAAAAAAAAA"
+let s02 = "AAAAAAAAAAAAAAAAAAAAAAAA"
+let s03 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let s04 = "BBBBBBBB"
+let s05 = "BBBBBBBBBBBBBBBB"
+let s06 = "BBBBBBBBBBBBBBBBBBBBBBBB"
+let s07 = "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+let s08 = "CCCCCCCC"
+let s09 = "CCCCCCCCCCCCCCCC"
+let s10 = "CCCCCCCCCCCCCCCCCCCCCCCC"
+let s11 = "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC"
+
+let tst04 s = match s with
+| "AAAAAAAA" -> 0
+| "AAAAAAAAAAAAAAAA" -> 1
+| "AAAAAAAAAAAAAAAAAAAAAAAA" -> 2
+| "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" -> 3
+| "BBBBBBBB" -> 4
+| "BBBBBBBBBBBBBBBB" -> 5
+| "BBBBBBBBBBBBBBBBBBBBBBBB" -> 6
+| "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB" -> 7
+| "CCCCCCCC" -> 8
+| "CCCCCCCCCCCCCCCC" -> 9
+| "CCCCCCCCCCCCCCCCCCCCCCCC" -> 10
+| "CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC" -> 11
+| _ -> -1
+
+let () =
+ assert (tst04 s00 = 0) ;
+ assert (tst04 s01 = 1) ;
+ assert (tst04 s02 = 2) ;
+ assert (tst04 s03 = 3) ;
+ assert (tst04 s04 = 4) ;
+ assert (tst04 s05 = 5) ;
+ assert (tst04 s06 = 6) ;
+ assert (tst04 s07 = 7) ;
+ assert (tst04 s08 = 8) ;
+ assert (tst04 s09 = 9) ;
+ assert (tst04 s10 = 10) ;
+ assert (tst04 s11 = 11) ;
+ assert (tst04 "" = -1) ;
+ assert (tst04 "DDD" = -1) ;
+ assert (tst04 "DDDDDDD" = -1) ;
+ assert (tst04 "AAADDDD" = -1) ;
+ assert (tst04 "AAAAAAADDDDDDDD" = -1) ;
+ assert (tst04 "AAAAAAADDDD" = -1) ;
+ assert (tst04 "AAAAAAAAAAAAAAADDDD" = -1) ;
+ ()
+
+(* Similar *)
+
+let s00 = "AAA"
+let s01 = "AAAA"
+let s02 = "AAAAA"
+let s03 = "AAAAAA"
+let s04 = "AAAAAAA"
+let s05 = "AAAAAAAAAAAA"
+let s06 = "AAAAAAAAAAAAAAAA"
+let s07 = "AAAAAAAAAAAAAAAAAAAA"
+let s08 = "BBB"
+let s09 = "BBBB"
+let s10 = "BBBBB"
+let s11 = "BBBBBB"
+let s12 = "BBBBBBB"
+
+let tst05 s = match s with
+| "AAA" -> 0
+| "AAAA" -> 1
+| "AAAAA" -> 2
+| "AAAAAA" -> 3
+| "AAAAAAA" -> 4
+| "AAAAAAAAAAAA" -> 5
+| "AAAAAAAAAAAAAAAA" -> 6
+| "AAAAAAAAAAAAAAAAAAAA" -> 7
+| "BBB" -> 8
+| "BBBB" -> 9
+| "BBBBB" -> 10
+| "BBBBBB" -> 11
+| "BBBBBBB" -> 12
+| _ -> -1
+
+let () =
+ assert (tst05 s00 = 0) ;
+ assert (tst05 s01 = 1) ;
+ assert (tst05 s02 = 2) ;
+ assert (tst05 s03 = 3) ;
+ assert (tst05 s04 = 4) ;
+ assert (tst05 s05 = 5) ;
+ assert (tst05 s06 = 6) ;
+ assert (tst05 s07 = 7) ;
+ assert (tst05 s08 = 8) ;
+ assert (tst05 s09 = 9) ;
+ assert (tst05 s10 = 10) ;
+ assert (tst05 s11 = 11) ;
+ assert (tst05 s12 = 12) ;
+ assert (tst05 "" = -1) ;
+ assert (tst05 "AAD" = -1) ;
+ assert (tst05 "AAAD" = -1) ;
+ assert (tst05 "AAAAAAD" = -1) ;
+ assert (tst05 "AAAAAAAD" = -1) ;
+ assert (tst05 "BBD" = -1) ;
+ assert (tst05 "BBBD" = -1) ;
+ assert (tst05 "BBBBBBD" = -1) ;
+ assert (tst05 "BBBBBBBD" = -1) ;
+ ()
+
+(* Big test *)
+
+let s00 = "and"
+let t00 = "nad"
+let s01 = "as"
+let t01 = "sa"
+let s02 = "assert"
+let t02 = "asesrt"
+let s03 = "begin"
+let t03 = "negib"
+let s04 = "class"
+let t04 = "lcass"
+let s05 = "constraint"
+let t05 = "constiarnt"
+let s06 = "do"
+let t06 = "od"
+let s07 = "done"
+let t07 = "eond"
+let s08 = "downto"
+let t08 = "dowtno"
+let s09 = "else"
+let t09 = "lese"
+let s10 = "end"
+let t10 = "edn"
+let s11 = "exception"
+let t11 = "exception"
+let s12 = "external"
+let t12 = "external"
+let s13 = "false"
+let t13 = "fslae"
+let s14 = "for"
+let t14 = "ofr"
+let s15 = "fun"
+let t15 = "fnu"
+let s16 = "function"
+let t16 = "function"
+let s17 = "functor"
+let t17 = "ounctfr"
+let s18 = "if"
+let t18 = "fi"
+let s19 = "in"
+let t19 = "in"
+let s20 = "include"
+let t20 = "inculde"
+let s21 = "inherit"
+let t21 = "iehnrit"
+let s22 = "initializer"
+let t22 = "enitializir"
+let s23 = "lazy"
+let t23 = "zaly"
+let s24 = "let"
+let t24 = "elt"
+let s25 = "match"
+let t25 = "match"
+let s26 = "method"
+let t26 = "methdo"
+let s27 = "module"
+let t27 = "modelu"
+let s28 = "mutable"
+let t28 = "butamle"
+let s29 = "new"
+let t29 = "wen"
+let s30 = "object"
+let t30 = "objcet"
+let s31 = "of"
+let t31 = "of"
+let s32 = "open"
+let t32 = "epon"
+let s33 = "or"
+let t33 = "ro"
+let s34 = "private"
+let t34 = "privaet"
+let s35 = "rec"
+let t35 = "rec"
+let s36 = "sig"
+let t36 = "gis"
+let s37 = "struct"
+let t37 = "scrutt"
+let s38 = "then"
+let t38 = "hten"
+let s39 = "to"
+let t39 = "to"
+let s40 = "true"
+let t40 = "teur"
+let s41 = "try"
+let t41 = "try"
+let s42 = "type"
+let t42 = "pyte"
+let s43 = "val"
+let t43 = "val"
+let s44 = "virtual"
+let t44 = "vritual"
+let s45 = "when"
+let t45 = "whne"
+let s46 = "while"
+let t46 = "wlihe"
+let s47 = "with"
+let t47 = "iwth"
+let s48 = "mod"
+let t48 = "mod"
+let s49 = "land"
+let t49 = "alnd"
+let s50 = "lor"
+let t50 = "rol"
+let s51 = "lxor"
+let t51 = "lxor"
+let s52 = "lsl"
+let t52 = "lsl"
+let s53 = "lsr"
+let t53 = "lsr"
+let s54 = "asr"
+let t54 = "sar"
+let s55 = "A"
+let t55 = "A"
+let s56 = "AA"
+let t56 = "AA"
+let s57 = "AAA"
+let t57 = "AAA"
+let s58 = "AAAA"
+let t58 = "AAAA"
+let s59 = "AAAAA"
+let t59 = "AAAAA"
+let s60 = "AAAAAA"
+let t60 = "AAAAAA"
+let s61 = "AAAAAAA"
+let t61 = "AAAAAAA"
+let s62 = "AAAAAAAA"
+let t62 = "AAAAAAAA"
+let s63 = "AAAAAAAAA"
+let t63 = "AAAAAAAAA"
+let s64 = "AAAAAAAAAA"
+let t64 = "AAAAAAAAAA"
+let s65 = "AAAAAAAAAAA"
+let t65 = "AAAAAAAAAAA"
+let s66 = "AAAAAAAAAAAA"
+let t66 = "AAAAAAAAAAAA"
+let s67 = "AAAAAAAAAAAAA"
+let t67 = "AAAAAAAAAAAAA"
+let s68 = "AAAAAAAAAAAAAA"
+let t68 = "AAAAAAAAAAAAAA"
+let s69 = "AAAAAAAAAAAAAAA"
+let t69 = "AAAAAAAAAAAAAAA"
+let s70 = "AAAAAAAAAAAAAAAA"
+let t70 = "AAAAAAAAAAAAAAAA"
+let s71 = "AAAAAAAAAAAAAAAAA"
+let t71 = "AAAAAAAAAAAAAAAAA"
+let s72 = "AAAAAAAAAAAAAAAAAA"
+let t72 = "AAAAAAAAAAAAAAAAAA"
+let s73 = "AAAAAAAAAAAAAAAAAAA"
+let t73 = "AAAAAAAAAAAAAAAAAAA"
+let s74 = "AAAAAAAAAAAAAAAAAAAA"
+let t74 = "AAAAAAAAAAAAAAAAAAAA"
+let s75 = "AAAAAAAAAAAAAAAAAAAAA"
+let t75 = "AAAAAAAAAAAAAAAAAAAAA"
+let s76 = "AAAAAAAAAAAAAAAAAAAAAA"
+let t76 = "AAAAAAAAAAAAAAAAAAAAAA"
+let s77 = "AAAAAAAAAAAAAAAAAAAAAAA"
+let t77 = "AAAAAAAAAAAAAAAAAAAAAAA"
+let s78 = "AAAAAAAAAAAAAAAAAAAAAAAA"
+let t78 = "AAAAAAAAAAAAAAAAAAAAAAAA"
+let s79 = "AAAAAAAAAAAAAAAAAAAAAAAAA"
+let t79 = "AAAAAAAAAAAAAAAAAAAAAAAAA"
+let s80 = "AAAAAAAAAAAAAAAAAAAAAAAAAA"
+let t80 = "AAAAAAAAAAAAAAAAAAAAAAAAAA"
+let s81 = "AAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let t81 = "AAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let s82 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let t82 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let s83 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let t83 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let s84 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let t84 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let s85 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let t85 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let s86 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let t86 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let s87 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let t87 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let s88 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let t88 = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
+let s89 = "BBBBBBBBBBBBBBB"
+let t89 = "BBBBBBBBBBBBBBB"
+let s90 = "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+let t90 = "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+let s91 = "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+let t91 = "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
+
+let tst06 s = match s with
+| "and" -> 0
+| "as" -> 1
+| "assert" -> 2
+| "begin" -> 3
+| "class" -> 4
+| "constraint" -> 5
+| "do" -> 6
+| "done" -> 7
+| "downto" -> 8
+| "else" -> 9
+| "end" -> 10
+| "exception" -> 11
+| "external" -> 12
+| "false" -> 13
+| "for" -> 14
+| "fun" -> 15
+| "function" -> 16
+| "functor" -> 17
+| "if" -> 18
+| "in" -> 19
+| "include" -> 20
+| "inherit" -> 21
+| "initializer" -> 22
+| "lazy" -> 23
+| "let" -> 24
+| "match" -> 25
+| "method" -> 26
+| "module" -> 27
+| "mutable" -> 28
+| "new" -> 29
+| "object" -> 30
+| "of" -> 31
+| "open" -> 32
+| "or" -> 33
+| "private" -> 34
+| "rec" -> 35
+| "sig" -> 36
+| "struct" -> 37
+| "then" -> 38
+| "to" -> 39
+| "true" -> 40
+| "try" -> 41
+| "type" -> 42
+| "val" -> 43
+| "virtual" -> 44
+| "when" -> 45
+| "while" -> 46
+| "with" -> 47
+| "mod" -> 48
+| "land" -> 49
+| "lor" -> 50
+| "lxor" -> 51
+| "lsl" -> 52
+| "lsr" -> 53
+| "asr" -> 54
+| "A" -> 55
+| "AA" -> 56
+| "AAA" -> 57
+| "AAAA" -> 58
+| "AAAAA" -> 59
+| "AAAAAA" -> 60
+| "AAAAAAA" -> 61
+| "AAAAAAAA" -> 62
+| "AAAAAAAAA" -> 63
+| "AAAAAAAAAA" -> 64
+| "AAAAAAAAAAA" -> 65
+| "AAAAAAAAAAAA" -> 66
+| "AAAAAAAAAAAAA" -> 67
+| "AAAAAAAAAAAAAA" -> 68
+| "AAAAAAAAAAAAAAA" -> 69
+| "AAAAAAAAAAAAAAAA" -> 70
+| "AAAAAAAAAAAAAAAAA" -> 71
+| "AAAAAAAAAAAAAAAAAA" -> 72
+| "AAAAAAAAAAAAAAAAAAA" -> 73
+| "AAAAAAAAAAAAAAAAAAAA" -> 74
+| "AAAAAAAAAAAAAAAAAAAAA" -> 75
+| "AAAAAAAAAAAAAAAAAAAAAA" -> 76
+| "AAAAAAAAAAAAAAAAAAAAAAA" -> 77
+| "AAAAAAAAAAAAAAAAAAAAAAAA" -> 78
+| "AAAAAAAAAAAAAAAAAAAAAAAAA" -> 79
+| "AAAAAAAAAAAAAAAAAAAAAAAAAA" -> 80
+| "AAAAAAAAAAAAAAAAAAAAAAAAAAA" -> 81
+| "AAAAAAAAAAAAAAAAAAAAAAAAAAAA" -> 82
+| "AAAAAAAAAAAAAAAAAAAAAAAAAAAAA" -> 83
+| "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" -> 84
+| "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" -> 85
+| "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" -> 86
+| "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" -> 87
+| "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" -> 88
+| "BBBBBBBBBBBBBBB" -> 89
+| "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB" -> 90
+| "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB" -> 91
+| _ -> -1
+
+let () =
+ assert (tst06 s00 = 0) ;
+ assert (tst06 t00 = -1) ;
+ assert (tst06 s01 = 1) ;
+ assert (tst06 t01 = -1) ;
+ assert (tst06 s02 = 2) ;
+ assert (tst06 t02 = -1) ;
+ assert (tst06 s03 = 3) ;
+ assert (tst06 t03 = -1) ;
+ assert (tst06 s04 = 4) ;
+ assert (tst06 t04 = -1) ;
+ assert (tst06 s05 = 5) ;
+ assert (tst06 t05 = -1) ;
+ assert (tst06 s06 = 6) ;
+ assert (tst06 t06 = -1) ;
+ assert (tst06 s07 = 7) ;
+ assert (tst06 t07 = -1) ;
+ assert (tst06 s08 = 8) ;
+ assert (tst06 t08 = -1) ;
+ assert (tst06 s09 = 9) ;
+ assert (tst06 t09 = -1) ;
+ assert (tst06 s10 = 10) ;
+ assert (tst06 t10 = -1) ;
+ assert (tst06 s11 = 11) ;
+ assert (tst06 t11 = 11) ;
+ assert (tst06 s12 = 12) ;
+ assert (tst06 t12 = 12) ;
+ assert (tst06 s13 = 13) ;
+ assert (tst06 t13 = -1) ;
+ assert (tst06 s14 = 14) ;
+ assert (tst06 t14 = -1) ;
+ assert (tst06 s15 = 15) ;
+ assert (tst06 t15 = -1) ;
+ assert (tst06 s16 = 16) ;
+ assert (tst06 t16 = 16) ;
+ assert (tst06 s17 = 17) ;
+ assert (tst06 t17 = -1) ;
+ assert (tst06 s18 = 18) ;
+ assert (tst06 t18 = -1) ;
+ assert (tst06 s19 = 19) ;
+ assert (tst06 t19 = 19) ;
+ assert (tst06 s20 = 20) ;
+ assert (tst06 t20 = -1) ;
+ assert (tst06 s21 = 21) ;
+ assert (tst06 t21 = -1) ;
+ assert (tst06 s22 = 22) ;
+ assert (tst06 t22 = -1) ;
+ assert (tst06 s23 = 23) ;
+ assert (tst06 t23 = -1) ;
+ assert (tst06 s24 = 24) ;
+ assert (tst06 t24 = -1) ;
+ assert (tst06 s25 = 25) ;
+ assert (tst06 t25 = 25) ;
+ assert (tst06 s26 = 26) ;
+ assert (tst06 t26 = -1) ;
+ assert (tst06 s27 = 27) ;
+ assert (tst06 t27 = -1) ;
+ assert (tst06 s28 = 28) ;
+ assert (tst06 t28 = -1) ;
+ assert (tst06 s29 = 29) ;
+ assert (tst06 t29 = -1) ;
+ assert (tst06 s30 = 30) ;
+ assert (tst06 t30 = -1) ;
+ assert (tst06 s31 = 31) ;
+ assert (tst06 t31 = 31) ;
+ assert (tst06 s32 = 32) ;
+ assert (tst06 t32 = -1) ;
+ assert (tst06 s33 = 33) ;
+ assert (tst06 t33 = -1) ;
+ assert (tst06 s34 = 34) ;
+ assert (tst06 t34 = -1) ;
+ assert (tst06 s35 = 35) ;
+ assert (tst06 t35 = 35) ;
+ assert (tst06 s36 = 36) ;
+ assert (tst06 t36 = -1) ;
+ assert (tst06 s37 = 37) ;
+ assert (tst06 t37 = -1) ;
+ assert (tst06 s38 = 38) ;
+ assert (tst06 t38 = -1) ;
+ assert (tst06 s39 = 39) ;
+ assert (tst06 t39 = 39) ;
+ assert (tst06 s40 = 40) ;
+ assert (tst06 t40 = -1) ;
+ assert (tst06 s41 = 41) ;
+ assert (tst06 t41 = 41) ;
+ assert (tst06 s42 = 42) ;
+ assert (tst06 t42 = -1) ;
+ assert (tst06 s43 = 43) ;
+ assert (tst06 t43 = 43) ;
+ assert (tst06 s44 = 44) ;
+ assert (tst06 t44 = -1) ;
+ assert (tst06 s45 = 45) ;
+ assert (tst06 t45 = -1) ;
+ assert (tst06 s46 = 46) ;
+ assert (tst06 t46 = -1) ;
+ assert (tst06 s47 = 47) ;
+ assert (tst06 t47 = -1) ;
+ assert (tst06 s48 = 48) ;
+ assert (tst06 t48 = 48) ;
+ assert (tst06 s49 = 49) ;
+ assert (tst06 t49 = -1) ;
+ assert (tst06 s50 = 50) ;
+ assert (tst06 t50 = -1) ;
+ assert (tst06 s51 = 51) ;
+ assert (tst06 t51 = 51) ;
+ assert (tst06 s52 = 52) ;
+ assert (tst06 t52 = 52) ;
+ assert (tst06 s53 = 53) ;
+ assert (tst06 t53 = 53) ;
+ assert (tst06 s54 = 54) ;
+ assert (tst06 t54 = -1) ;
+ assert (tst06 s55 = 55) ;
+ assert (tst06 t55 = 55) ;
+ assert (tst06 s56 = 56) ;
+ assert (tst06 t56 = 56) ;
+ assert (tst06 s57 = 57) ;
+ assert (tst06 t57 = 57) ;
+ assert (tst06 s58 = 58) ;
+ assert (tst06 t58 = 58) ;
+ assert (tst06 s59 = 59) ;
+ assert (tst06 t59 = 59) ;
+ assert (tst06 s60 = 60) ;
+ assert (tst06 t60 = 60) ;
+ assert (tst06 s61 = 61) ;
+ assert (tst06 t61 = 61) ;
+ assert (tst06 s62 = 62) ;
+ assert (tst06 t62 = 62) ;
+ assert (tst06 s63 = 63) ;
+ assert (tst06 t63 = 63) ;
+ assert (tst06 s64 = 64) ;
+ assert (tst06 t64 = 64) ;
+ assert (tst06 s65 = 65) ;
+ assert (tst06 t65 = 65) ;
+ assert (tst06 s66 = 66) ;
+ assert (tst06 t66 = 66) ;
+ assert (tst06 s67 = 67) ;
+ assert (tst06 t67 = 67) ;
+ assert (tst06 s68 = 68) ;
+ assert (tst06 t68 = 68) ;
+ assert (tst06 s69 = 69) ;
+ assert (tst06 t69 = 69) ;
+ assert (tst06 s70 = 70) ;
+ assert (tst06 t70 = 70) ;
+ assert (tst06 s71 = 71) ;
+ assert (tst06 t71 = 71) ;
+ assert (tst06 s72 = 72) ;
+ assert (tst06 t72 = 72) ;
+ assert (tst06 s73 = 73) ;
+ assert (tst06 t73 = 73) ;
+ assert (tst06 s74 = 74) ;
+ assert (tst06 t74 = 74) ;
+ assert (tst06 s75 = 75) ;
+ assert (tst06 t75 = 75) ;
+ assert (tst06 s76 = 76) ;
+ assert (tst06 t76 = 76) ;
+ assert (tst06 s77 = 77) ;
+ assert (tst06 t77 = 77) ;
+ assert (tst06 s78 = 78) ;
+ assert (tst06 t78 = 78) ;
+ assert (tst06 s79 = 79) ;
+ assert (tst06 t79 = 79) ;
+ assert (tst06 s80 = 80) ;
+ assert (tst06 t80 = 80) ;
+ assert (tst06 s81 = 81) ;
+ assert (tst06 t81 = 81) ;
+ assert (tst06 s82 = 82) ;
+ assert (tst06 t82 = 82) ;
+ assert (tst06 s83 = 83) ;
+ assert (tst06 t83 = 83) ;
+ assert (tst06 s84 = 84) ;
+ assert (tst06 t84 = 84) ;
+ assert (tst06 s85 = 85) ;
+ assert (tst06 t85 = 85) ;
+ assert (tst06 s86 = 86) ;
+ assert (tst06 t86 = 86) ;
+ assert (tst06 s87 = 87) ;
+ assert (tst06 t87 = 87) ;
+ assert (tst06 s88 = 88) ;
+ assert (tst06 t88 = 88) ;
+ assert (tst06 s89 = 89) ;
+ assert (tst06 t89 = 89) ;
+ assert (tst06 s90 = 90) ;
+ assert (tst06 t90 = 90) ;
+ assert (tst06 s91 = 91) ;
+ assert (tst06 t91 = 91) ;
+ assert (tst06 "" = -1) ;
+ ()